/* Adapter: role board, crew, calendar and financial report keep their structure. */
:root,:root[data-theme=dark]{
 --bg:var(--cos-bg);--paper:var(--cos-paper);--surface:var(--cos-surface);
 --ink:var(--cos-ink);--muted:var(--cos-muted);--line:var(--cos-line);--control:var(--cos-line);
 --accent:var(--cos-ink);--accent-soft:var(--cos-surface);--on-ink:var(--cos-paper);
 --ui-copy:16px;--ui-table:14px;--ui-label:14px;--ui-title:var(--cos-title);--ui-section:24px;
 --ui-line:1.6;--ui-radius:12px;--ui-control:44px;--ui-column-gap:32px;
}
body{background:var(--cos-bg);font-size:16px;line-height:1.6}
h1,h2,h3{font-weight:500;line-height:1.12;letter-spacing:-.025em;overflow-wrap:anywhere}
h1{font-size:var(--cos-title);letter-spacing:var(--cos-tracking)}h2{font-size:24px}h3{font-size:18px}
.board-header,.console-header,.board-nav,.sidebar,.workspace-links{background:var(--cos-paper);border-color:var(--cos-line)}
.board-header,.console-header{gap:20px}
.board-nav nav a,.sidebar .nav-button{font-size:16px;line-height:1.4;min-height:44px;border-radius:12px}
#content{max-width:var(--cos-max);margin-inline:auto;padding:40px 32px 64px}
#console-main{padding:0 32px 48px}
.workspace-heading{padding:28px 0 24px}.workspace-heading h1{font-size:var(--cos-title);font-weight:500;letter-spacing:var(--cos-tracking)}
.page-heading h1{font-size:var(--cos-display);font-weight:500;letter-spacing:var(--cos-tracking)}
.page-heading .muted,.workspace-heading .lede{font-size:16px;line-height:1.6}
.page-heading{margin-bottom:32px}.workspace-grid{gap:32px}.block{padding-block:28px}
.next-action{background:var(--cos-paper);border:1px solid var(--cos-line);border-radius:22px;box-shadow:var(--cos-shadow);padding:28px}
.next-action p,.block p,.context p,.enroll-intro{font-size:16px;line-height:1.6}
.caption,.eyebrow,.hint,.muted,.sidebar-footer,.demo-bar p{color:var(--cos-muted)}
.caption,.eyebrow,.hint,.sidebar-footer,.account :is(a,button),.demo-bar p{font-size:14px;line-height:1.6;letter-spacing:0}
button,.button,.board-button,.console-button,input,select,textarea{border-radius:12px}
button,.button,.board-button,.console-button{min-height:44px}
.primary,.button.primary,.primary-button,.ft-primary{background:var(--cos-ink);color:var(--cos-paper);border-color:var(--cos-ink)}
input,select,textarea{font-size:16px;line-height:1.5;background:var(--cos-paper);border-color:var(--cos-line)}
:where(th,td){font-size:14px;line-height:1.5}
:where(th){font-weight:500}
:where(.context,.inspector,.workspace-layout,.workspace-grid,#workspace,#content){min-width:0}
.calendar-grid,.table-wrap,.ft-sheet{background:var(--cos-paper);border-color:var(--cos-line)}
.ft-sheet{border-radius:16px}.ft-shell h1,.ft-heading h1{font-size:32px}
.ft-tabs button,.ft-sheet :is(th,td){font-size:14px}
.login-card,.login-shell,.auth-card{border-radius:22px;background:var(--cos-paper);box-shadow:var(--cos-shadow)}
.login-card h1,.login-shell h1{font-size:var(--cos-display);font-weight:500;line-height:1.12;letter-spacing:var(--cos-tracking)}
:where(a,button,input,select,textarea,summary):focus-visible{outline:1px solid var(--cos-muted);outline-offset:3px;box-shadow:none}
h1[tabindex="-1"]:focus,h2[tabindex="-1"]:focus{outline:none}
@media(min-width:1100px){.page-heading{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:12px 40px}.page-heading>.caption{grid-column:1/-1}.page-heading>h1{grid-column:1}.page-heading>.muted{grid-column:2;align-self:end;margin:0}.page-heading>:not(h1):not(.caption):not(.muted){grid-column:1/-1}}
@media(max-width:1000px){.workspace-grid{grid-template-columns:minmax(0,1fr)}.context{border-left:0;border-top:1px solid var(--cos-line);padding:24px 0 0}.next-action{padding:24px}}
@media(max-width:800px){#content{padding:28px 20px 48px}#console-main{padding-inline:20px}.board-nav nav a,.sidebar .nav-button{font-size:18px}.page-heading h1{font-size:var(--cos-display)}.next-action{border-radius:16px;padding:22px 20px}.workspace-heading{padding-top:24px}.board-header,.console-header{padding-inline:20px}}
@media(max-width:360px){#content,#console-main{padding-inline:16px}.board-header,.console-header{padding-inline:16px;gap:10px}.next-action{padding-inline:16px}.facts{gap:8px 12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body:has(.ft-sheet) h1{font-size:clamp(28px,3vw,36px);font-weight:500;letter-spacing:-.035em}
@media(max-width:600px){.ft-toolbar{flex-wrap:wrap;gap:10px 16px}.ft-toolbar h2{flex:0 0 100%;font-size:22px;overflow-wrap:normal;margin-bottom:0}.ft-toolbar #sheet-size{flex:1;min-width:0}.ft-toolbar .ft-arrows{margin-left:auto}}

/* Group boundaries in vertical menus; horizontal mobile navigation stays intact. */
@media(min-width:801px){#nav>a+a:is([href^="?tab=crew"],[href^="?tab=timesheet"],[href^="?tab=history"]),#navigation>.nav-button+.nav-button:is([data-view="team"],[data-view="timesheet"],[data-view="info"]){border-top:1px solid var(--cos-line);border-radius:0;margin-top:12px;padding-top:16px}}

/* Approved palette A. These surfaces do not encode payment approval. */
.board-nav nav a[aria-current=page],.sidebar .nav-button.active{background:var(--cos-accent-sage);color:var(--cos-ink)}
.context>section:first-child{background:var(--cos-accent-blue);padding:18px;border-radius:12px}

/* Stronger palette A coverage: same tokens, type scale and native layouts. */
.page-heading h1,.workspace-heading h1,.ft-title h1{
 text-decoration-line:underline;text-decoration-color:var(--cos-accent-blue);
 text-decoration-thickness:.24em;text-underline-offset:-.12em;text-decoration-skip-ink:none;
}
.block>h2,.rh-section>.section-heading,#workspace>article>.section-heading{
 text-decoration-line:underline;text-decoration-color:var(--cos-accent-blue);
 text-decoration-thickness:.3em;text-underline-offset:-.14em;text-decoration-skip-ink:none;
}
.next-action,.project-welcome{background:var(--cos-accent-sage);color:var(--cos-ink)}
.project-welcome{padding:20px;border-radius:var(--cos-radius-panel)}
@media(max-width:360px){.project-welcome{padding-inline:12px}}
.next-action :is(.caption,.muted),.project-welcome :is(.hint,.muted){color:var(--cos-ink)}
.next-action>h2,.project-welcome>.section-heading{text-decoration:none}
.rh-links>.button.outline,.context .board-button:not(.primary){background:var(--cos-accent-sage);color:var(--cos-ink);border-color:var(--cos-line)}
.rh-links>.button.outline:hover,.context .board-button:not(.primary):hover{background:var(--cos-accent-blue);color:var(--cos-ink)}
.sidebar .nav-button[aria-current=page]{background:var(--cos-accent-sage);color:var(--cos-ink)}

/* One visible project tool catalog on the board and in the console. */
.cos-product .project-nav-heading{font-size:13px;line-height:1.5;font-weight:500;color:var(--cos-muted);margin:14px 0 4px;padding:12px 10px 0;border-top:1px solid var(--cos-line)}
.cos-product .project-nav-heading:first-child{margin-top:0;padding-top:0;border-top:0}
.cos-product .project-nav-note{font-size:13px;line-height:1.5;color:var(--cos-muted);padding:0 10px}
.cos-product :is(#nav,#navigation)>.project-nav-heading+.nav-button{margin-top:0;padding-top:10px;border-top:0;border-radius:6px}
.cos-product .board-nav .account{flex:none;margin-top:auto}
@media(max-width:800px){.cos-product .board-nav .account{display:block;padding-top:16px}.cos-product .board-nav .account p{margin:4px 0 8px}.cos-product .board-nav .account>button{display:inline-flex}}

.cos-product :is(#nav,#navigation)>.nav-button+.nav-button{margin-top:0;padding-top:10px;border-top:0;border-radius:6px}
