/* Brand typography (2026-09-24): Montserrat for display text, Lato (Sun Tribe's official face) for body text and numbers. Files are public: the sign-in pages use them too. */
@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url(/static/fonts/montserrat-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:Montserrat;font-style:normal;font-weight:600;font-display:swap;src:url(/static/fonts/montserrat-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:Montserrat;font-style:normal;font-weight:700 800;font-display:swap;src:url(/static/fonts/montserrat-latin-700-normal.woff2) format("woff2")}
@font-face{font-family:Lato;font-style:normal;font-weight:400;font-display:swap;src:url(/static/fonts/Lato-Regular.ttf) format("truetype")}
@font-face{font-family:Lato;font-style:normal;font-weight:600 800;font-display:swap;src:url(/static/fonts/Lato-Bold.ttf) format("truetype")}
@font-face{font-family:Lato;font-style:italic;font-weight:400;font-display:swap;src:url(/static/fonts/Lato-Italic.ttf) format("truetype")}
:root{--font-display:Montserrat,"Segoe UI",system-ui,sans-serif;--font-body:Lato,"Segoe UI",system-ui,sans-serif}
:root{--brand-navy:#1b2a4a;--brand-orange:#e8873d;--surface:#fff;--surface-alt:#f2f4f8;--ink:#23334b;--muted:#61718a;--line:#d9e0ea;--paper:#f5f7fa;--forest:#1b2a4a;--theme-link:#225a9d;color-scheme:light}
:root[data-theme=dark]{--surface:#1c293e;--surface-alt:#24344b;--ink:#e5ebf4;--muted:#b1bfd2;--line:#40516a;--paper:#10192a;--forest:#c0d1eb;--theme-link:#a2cbff;color-scheme:dark}
body[data-product]{background:var(--paper);color:var(--ink)}
.product-header{background:var(--brand-navy)!important;border-bottom:2px solid var(--brand-orange);color:white}
.product-brand{gap:12px}.product-brand .epc-logo{display:block;width:126px;height:auto;background:white;border-radius:4px;padding:5px}.product-brand>strong{font-size:11px!important;letter-spacing:.6px;color:white}.product-brand>strong small{color:#c2cde0}
.product-theme-picker{font-size:11px;color:#d9e3f0;display:grid;gap:3px}.product-theme-picker select{width:85px;padding:6px;border:1px solid #8191a9;background:#253854;color:white;border-radius:5px;font:11px var(--font-body,"Segoe UI",sans-serif)}
.product-project-picker select{background:#253854;border-color:#8191a9}.product-project-picker>span,.product-nav small{color:#c5d3e8}.product-nav a[aria-current=page]{box-shadow:inset 0 -2px var(--brand-orange)}
[data-product] :is(.panel,.register-panel,.embedment-panel,.summary-card,.metrics article,dialog,.filters,.register-heading,.register-toolbar,.register-footer,.worksheet-toolbar,.sheet-tabs-bar,.formula-bar,.worksheet-status,.worksheet-scroll,.worksheet-frame,.record-empty){background:var(--surface);color:var(--ink);border-color:var(--line)}
[data-product] :is(input,select,textarea,button,.button){color:var(--ink);background-color:var(--surface);border-color:var(--line)}
[data-product] :is(input,select,textarea):focus{outline-color:var(--theme-link)}
[data-product] :is(.primary,button.primary,.auth-card button[type=submit]){background:var(--brand-navy);color:#fff;border-color:#6882a6}
[data-product] a:not(.product-header a){color:var(--theme-link)}
[data-product] :is(th,td){border-color:var(--line)}
[data-product] :is(th,.register-filters,.filter-summary,.register-panel thead,.register-panel tbody tr:nth-child(even),.scope-row .scope-icon){background:var(--surface-alt);color:var(--ink)}
[data-product] :is(.subtitle,.muted,small,.eyebrow,label,.pile-basis,.filter-summary){color:var(--muted)}
[data-product] :is(.product-snapshot,.product-samples){background:var(--surface-alt);color:var(--ink);border-color:var(--line)}
.product-practice{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:9px 28px;background:#fff0cf;color:#634711;border-bottom:1px solid #d5b16a;font:12px/1.5 var(--font-body,"Segoe UI",sans-serif)}.product-practice strong{margin-right:auto}.product-practice a,.product-practice button{color:inherit!important;font:inherit;padding:5px 9px}.product-practice[hidden]{display:none}
[data-theme=dark] [data-product] :is(.product-practice,.product-samples.active,.warning,#notice){background:#493820;color:#ffe1a1;border-color:#a7864b}
[data-theme=dark] [data-product] :is(.tag.good,.tag.green,.good){background:#184633;color:#9eeac4}
[data-theme=dark] [data-product] :is(.tag.warn,.tag.yellow){background:#514023;color:#ffdf99}
[data-theme=dark] [data-product] :is(.tag.bad,.tag.red,.error){background:#552b31;color:#ffc5c6}
[data-theme=dark] [data-product] :is(.tag,.tag.unknown){background:#33435a;color:#e0e8f4}
[data-theme=dark] [data-product] :is(.editing td,.entry-detail td){background:#243b54}
[data-theme=dark] [data-product] :is(.rail,.topbar,.intro,.sidebar,.info-panel,.legend,.cad-panel,.site-controls,.source-banner,.snapshot-tools,.quality-callout){background:var(--surface);color:var(--ink);border-color:var(--line)}
[data-theme=dark] [data-product]>.rail nav button{color:var(--muted)}
[data-theme=dark] [data-product]>.rail nav button.active{background:#334963;color:#fff}
[data-theme=dark] [data-product] .worksheet-scroll td{background-color:var(--surface)!important;color:var(--ink)!important}
[data-theme=dark] [data-product] .worksheet-scroll th{background-color:var(--surface-alt)!important;color:var(--ink)!important}
[data-theme=dark] [data-product] .worksheet-scroll td[data-error=true]{color:#ffc5c6!important}
[data-theme=dark] [data-product] .sheet-tabs :is(button,a){background:var(--surface);color:var(--ink)}
[data-theme=dark] [data-product] :is(.pile-tracking-controls>select,.pile-tracking-controls>button){background:var(--surface);color:var(--ink);border-color:var(--line)}
[data-theme=dark] [data-product] .pile-tracking-controls>p{color:var(--muted)}
.product-header .product-project-picker select,.product-header .product-theme-picker select{background:#253854!important;color:#fff!important}
.product-header .product-theme-picker{color:#d9e3f0}
[data-product] .work-tabs [aria-pressed=true]{background:var(--brand-navy);color:white;box-shadow:inset 0 -2px var(--brand-orange)}
[data-product] .register-heading{background:transparent}
[data-theme=dark] [data-product] td{background:var(--surface);color:var(--ink)}
[data-theme=dark] [data-product] tr:nth-child(even)>td{background:var(--surface-alt)}
[data-theme=dark] [data-product] tr:hover>td{background:#2b405a}
[data-theme=dark] [data-product] .edit-details td{background:#243b54!important}
[data-theme=dark] [data-product] .embedment-cell.green,[data-theme=dark] [data-product] .tag.good{background:#184633;color:#a7efd0}
[data-theme=dark] [data-product] .embedment-cell.yellow,[data-theme=dark] [data-product] .tag.warn{background:#514023;color:#ffdf99}
[data-theme=dark] [data-product] .embedment-cell.red{background:#552b31;color:#ffc5c6}
[data-theme=dark] [data-product] .embedment-cell.unknown{background:#33435a;color:#d6e1f0}
[data-theme=dark]{--yellow:#f1c768;--red:#ff9991}
[data-theme=dark] #workMessage{background:#263f50;color:#c9e9fa}
[data-theme=dark] [data-product] :is(.stage,#sitePlan){background:#182536}
[data-theme=dark] [data-product] :is(.selection,.legend,.view-tools,.orientation,#planTools button){background:var(--surface);color:var(--ink);border-color:var(--line)}
[data-theme=dark] [data-product] :is(.stage-heading,.stage-footer){background:#182536e8;padding:8px;border-radius:5px;color:var(--ink)}
[data-theme=dark] [data-product] .stage-heading span:not(.live-mark),[data-theme=dark] [data-product] .stage-footer span{color:var(--muted)}
[data-theme=dark] [data-product] .site-view-toggle{background:var(--surface-alt)}
[data-theme=dark] [data-product] .site-view-toggle button.active{background:#425d80;color:#fff}
[data-theme=dark] [data-product] :is(.workbook-toolbar,.workbook-frame,.worksheet-table){background:var(--surface);border-color:var(--line)}
[data-theme=dark] [data-product] :is(h1,#snapshotName,#worksheetValue,#worksheetFormula){color:var(--ink)}
[data-theme=dark] [data-product] :is(#snapshotDate,#sync,.workbook-heading p,.worksheet-footnote){color:var(--muted)}
[data-theme=dark] [data-product] .workbook-frame:not(.show-references) .worksheet-table thead td{background:var(--surface-alt)!important;color:var(--ink)!important}
[data-theme=dark] [data-product] :is(#worksheetAddress,.source-banner .pill){background:var(--surface-alt);color:var(--ink)}
[data-theme=dark] [data-product] .workbook-frame:not(.show-references) .worksheet-table td.summary-spacer{background:var(--surface-alt)!important}
[data-theme=dark] [data-product] .workbook-frame:not(.show-references) .worksheet-table td.cell-warning{background:#514023!important;color:#ffdf99!important}
@media(min-width:651px){[data-product=site] .layout{height:calc(100dvh - var(--product-header-height,72px) - var(--site-workbar-height,43px) - var(--sample-bar-height,0px) - var(--practice-bar-height,0px))}}
@media(max-width:850px){.product-brand>strong{display:none!important}.product-header{gap:10px}.product-context{gap:8px}.product-brand .epc-logo{width:105px}}
@media(max-width:650px){.product-theme-picker{font-size:11px}.product-theme-picker select{width:72px}.product-project-picker select{width:135px}.product-practice{padding:8px 12px}.product-practice strong{flex:1 1 100%}.product-header .product-context{flex-wrap:wrap}.product-brand .epc-logo{width:100px}}
.product-signout{display:flex;align-items:end}.product-signout button{background:#253854;color:#fff;border:1px solid #8191a9;border-radius:5px;padding:6px 10px;font:11px var(--font-body,"Segoe UI",sans-serif);cursor:pointer}.product-signout[hidden]{display:none}

/* Handoff T1 (2026-09-22): states the catch-all control rule above erases; every selector here outranks its (0,2,0). */
[data-product] .pile-item.selected{background:var(--surface-alt);border-left-color:var(--theme-link)}
[data-product] .sheet-tab[aria-selected=true]{background:var(--surface-alt);box-shadow:inset 0 -2px var(--theme-link)}
[data-product] :is(button,.button):not(.primary,.active,.selected,[aria-pressed=true],[aria-selected=true]):hover{background-color:var(--surface-alt)}
[data-product] :is(.primary,button.primary):hover{background:#24375f}
[data-product] .product-header .product-signout button{background:#253854;color:#fff;border-color:#8191a9}
[data-product] .product-header .product-signout button:hover{background:#2f4468}
/* Handoff T2 + T3: phone floors. 16px inputs stop iOS focus zoom; 44px is the tap target. Field input keeps its 24px measurement inputs. */
@media (max-width:900px),(pointer:coarse){
[data-product] :is(input:not([type=checkbox],[type=radio],[type=range]),select,textarea),[data-product] #siteEntry :is(input,select,textarea),[data-product] #rowBatchForm :is(input,select){font-size:16px}
[data-product] .measurement-row input{font-size:24px}
[data-product] :is(button,.button,select,input:not([type=checkbox],[type=radio],[type=range])){min-height:44px}
[data-product] #pileRows .cell-entry{min-height:44px}
[data-product] input:is([type=checkbox],[type=radio]){width:24px;height:24px}
[data-product=site] .site-workbar .scope-buttons button{min-height:44px}
}

/* Brand typography roles. Body, tables, inputs and figures: Lato. Header, headings, buttons, tabs and small uppercase labels: Montserrat, set a touch smaller and tighter than Segoe UI was because it runs wider. The Progress Tracker grid keeps its Calibri / Consolas workbook look (fieldops-workbook.css). */
body[data-product]{font-family:var(--font-body)}
[data-product] :is(input,select,textarea){font-family:var(--font-body)}
[data-product] :is(h1,h2,h3,legend,button,.button,.eyebrow,[role=tab],.product-header,.panel-heading,.section-title,.legend-heading,.control-label,.side-heading,.rail-label){font-family:var(--font-display)}
[data-product] :is(h1,h2,h3){letter-spacing:-.01em}
[data-product] :is(button,.button,[role=tab]){letter-spacing:-.005em}
[data-product] .eyebrow{letter-spacing:.08em}
[data-product] #registerTable .groups th,[data-product] .dash-kpis span,[data-product] .metrics span{font-family:var(--font-display)}
[data-product] table:not(.worksheet-table),[data-product] :is(.dash-kpis,.metrics) strong{font-family:var(--font-body);font-variant-numeric:tabular-nums}
[data-product] .product-header :is(select,option){font-family:var(--font-body)}
[data-product] .product-header .product-signout button{font-family:var(--font-display)}
.product-context>:is(.product-signout,.product-theme-picker){align-self:flex-end}.product-signout button{box-sizing:border-box;line-height:1.2;min-height:0;padding-top:7px;padding-bottom:7px}
/* Suggestion box (card #59): header button plus a pop-out form in the header's navy, in light and dark themes alike. */
.product-suggest{align-self:flex-end;display:flex}
[data-product] .product-header .product-suggest-toggle{box-sizing:border-box;padding:7px 10px;line-height:1.2;border:1px solid #8191a9;border-radius:5px;background:#253854;color:#fff;font:600 11px var(--font-display,"Segoe UI",sans-serif);cursor:pointer;white-space:nowrap}
[data-product] .product-header .product-suggest-toggle:hover,[data-product] .product-header .product-suggest-toggle[aria-expanded=true]{background:#2f4468;border-color:var(--brand-orange,#e8873d)}
.product-suggest-toggle:focus-visible{outline:2px solid var(--brand-orange,#e8873d);outline-offset:2px}
body.snapshot-demo .product-suggest{display:none}
[data-product] .product-suggest-pop{--caret:50%;position:fixed;z-index:1000;box-sizing:border-box;width:min(420px,calc(100vw - 32px));max-height:calc(100vh - 90px);overflow:visible;margin:0;padding:0;border:1px solid #5d6f8f;border-radius:14px;background:var(--brand-navy,#1b2a4a);color:#fff;box-shadow:0 18px 44px #0009,0 2px 6px #0006;font:13px/1.4 var(--font-display,"Segoe UI",sans-serif);text-align:left}
[data-product] .product-suggest-pop[hidden]{display:none}
[data-product] .product-suggest-pop .product-suggest-caret{position:absolute;top:-8px;left:var(--caret);width:14px;height:14px;margin-left:-7px;background:var(--brand-navy,#1b2a4a);border-top:1px solid #5d6f8f;border-left:1px solid #5d6f8f;transform:rotate(45deg)}
[data-product] .product-suggest-pop .product-suggest-body{display:grid;gap:16px;max-height:calc(100vh - 90px);overflow:auto;padding:20px 22px 16px;box-sizing:border-box}
[data-product] .product-suggest-pop fieldset{display:grid;gap:4px;margin:0;padding:0;border:0;min-width:0}
[data-product] .product-suggest-pop legend{margin:0 0 6px;padding:0;font-weight:700;font-size:13px;color:#fff}
[data-product] .product-suggest-pop fieldset label{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;text-align:left;font-size:13px;line-height:1.35;letter-spacing:0;text-transform:none;gap:10px;padding:5px 8px;margin:0 -8px;border-radius:6px;cursor:pointer;font-weight:500;color:#e6ecf5}
[data-product] .product-suggest-pop fieldset label:hover{background:#ffffff12}
[data-product] .product-suggest-pop input[type=checkbox]{appearance:none;flex:none;display:grid;place-content:center;width:18px;height:18px;margin:0;border:1.5px solid #aebbd0;border-radius:4px;background:#253854;cursor:pointer}
[data-product] .product-suggest-pop input[type=checkbox]::after{content:"";width:9px;height:5px;border:2px solid #fff;border-top:0;border-right:0;transform:translateY(-1px) rotate(-45deg) scale(0);transition:transform .1s}
[data-product] .product-suggest-pop input[type=checkbox]:checked{background:var(--brand-orange,#e8873d);border-color:var(--brand-orange,#e8873d)}
[data-product] .product-suggest-pop input[type=checkbox]:checked::after{transform:translateY(-1px) rotate(-45deg) scale(1)}
[data-product] .product-suggest-pop input[type=checkbox]:focus-visible{outline:2px solid var(--brand-orange,#e8873d);outline-offset:2px}
[data-product] .product-suggest-pop .product-suggest-note{display:grid;gap:6px;margin:0;font-size:13px;font-weight:700;color:#fff;text-align:left;letter-spacing:0;text-transform:none}
[data-product] .product-suggest-pop .product-suggest-note textarea{box-sizing:border-box;width:100%;min-height:130px;resize:vertical;padding:10px 12px;border:1px solid #6c7d99;border-radius:10px;background:#2a3d5c;color:#fff;font:14px/1.45 var(--font-body,"Segoe UI",sans-serif)}
[data-product] .product-suggest-pop .product-suggest-note textarea::placeholder{color:#93a3bd;opacity:1}
[data-product] .product-suggest-pop .product-suggest-note textarea:focus{outline:none;border-color:var(--brand-orange,#e8873d);box-shadow:0 0 0 2px #e8873d40}
[data-product] .product-suggest-pop .product-suggest-file{display:flex;align-items:center;gap:8px;padding:6px 6px 6px 10px;border:1px solid #6c7d99;border-radius:8px;background:#253854;font-size:12px;color:#e6ecf5}
[data-product] .product-suggest-pop .product-suggest-file[hidden],[data-product] .product-suggest-pop .product-suggest-error[hidden],[data-product] .product-suggest-pop .product-suggest-thanks[hidden]{display:none}
[data-product] .product-suggest-pop .product-suggest-file span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
[data-product] .product-suggest-pop .product-suggest-file button{flex:none;width:24px;height:24px;padding:0;border:0;border-radius:5px;background:transparent;color:#cfd9e8;font-size:18px;line-height:1;cursor:pointer}
[data-product] .product-suggest-pop .product-suggest-file button:hover{background:#ffffff1a;color:#fff}
[data-product] .product-suggest-pop .product-suggest-error{margin:0;padding:8px 10px;border-radius:8px;background:#5a1f2a;color:#ffd9de;font-size:12px}
[data-product] .product-suggest-pop .product-suggest-actions{display:flex;justify-content:space-between;gap:10px}
[data-product] .product-suggest-pop .product-suggest-actions button{box-sizing:border-box;min-width:112px;padding:8px 16px;border-radius:8px;font:600 13px var(--font-display,"Segoe UI",sans-serif);cursor:pointer}
[data-product] .product-suggest-pop .product-suggest-attach{border:1px solid #aebbd0;background:transparent;color:#fff}
[data-product] .product-suggest-pop .product-suggest-attach:hover{background:#ffffff14}
[data-product] .product-suggest-pop .product-suggest-submit{border:1px solid var(--brand-orange,#e8873d);background:var(--brand-orange,#e8873d);color:#1b2a4a}
[data-product] .product-suggest-pop .product-suggest-submit:hover{background:#f0995a}
[data-product] .product-suggest-pop .product-suggest-submit:disabled{opacity:.65;cursor:wait}
[data-product] .product-suggest-pop .product-suggest-actions button:focus-visible{outline:2px solid #fff;outline-offset:2px}
[data-product] .product-suggest-pop .product-suggest-hint{margin-top:-8px;font-size:11px;color:#93a3bd}
[data-product] .product-suggest-pop.sent .product-suggest-body{visibility:hidden}
[data-product] .product-suggest-pop .product-suggest-thanks{position:absolute;inset:0;display:grid;place-items:center;margin:0;font-size:26px;font-weight:700;color:#fff;outline:none}
