@font-face{font-family:bodyFont;src:url(../media/Gotham_Light-s.p.28ws3z2_hmbuh.otf)format("opentype");font-display:swap;font-weight:300}@font-face{font-family:bodyFont Fallback;src:local(Arial);ascent-override:71.09%;descent-override:17.77%;line-gap-override:17.77%;size-adjust:112.53%}.bodyfont_f79246db-module__vqTzUG__className{font-family:bodyFont,bodyFont Fallback;font-weight:300}.bodyfont_f79246db-module__vqTzUG__variable{--font-sans:"bodyFont", "bodyFont Fallback"}
@font-face{font-family:displayFont;src:url(../media/DomaineDisplay_Regular-s.p.1sq_-jw-4cqi5.otf)format("opentype");font-display:swap;font-weight:400}@font-face{font-family:displayFont Fallback;src:local(Arial);ascent-override:102.51%;descent-override:27.87%;line-gap-override:0.0%;size-adjust:100.47%}.displayfont_3dae756-module__74rptq__className{font-family:displayFont,displayFont Fallback;font-weight:400}.displayfont_3dae756-module__74rptq__variable{--font-display:"displayFont", "displayFont Fallback"}
@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e390973e931a41c5-s.0rgnxg2b64rzs.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/59b15b4bcd7b1eb5-s.2vemzm0itqzfy.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e532fa1b9921e1cd-s.3cb5lpr2l6xud.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2fe89d53234c61d4-s.1u30mmyq6lnsd.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/99e609270109b47d-s.p.40sczeszzbjw1.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/5e05ae5b48faa55e-s.1yd4_i3e35931.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/a7afbb44bec2bb18-s.1qc6dx89jd2qv.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/02263ebadd758ea4-s.29yke99gs9qpn.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/68757d6cddeff913-s.1i-sca43-qwng.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/effe91970fc4db64-s.p.0oace-s_gkfks.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono Fallback;src:local(Arial);ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.0%;size-adjust:134.59%}.ibm_plex_mono_1f3e9cd6-module__s_YsPq__className{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal}.ibm_plex_mono_1f3e9cd6-module__s_YsPq__variable{--font-mono:"IBM Plex Mono", "IBM Plex Mono Fallback"}
:root{--ink:#1c211d;--ink-soft:#43483f;--muted:#716b5f;--muted-strong:#908777;--surface:#f2ece1;--surface-alt:#e7dece;--paper:#fffcf7eb;--card:#fffbf5db;--line:#37302521;--line-strong:#37302538;--accent:#5d7867;--accent-dark:#35483d;--accent-soft:#c4ae7d;--nav-bg:#232520;--nav-bg-soft:#2d3029;--warning:#a45135;--caution:#96640f;--shadow:0 24px 60px #2a22191f}*{box-sizing:border-box;margin:0;padding:0}html,body{max-width:100vw;min-height:100%;overflow-x:hidden}html{background:#fcf8f2}.ptr-indicator{z-index:200;background:var(--card);border:1px solid var(--line);opacity:0;pointer-events:none;border-radius:999px;place-items:center;width:38px;height:38px;margin-left:-19px;display:grid;position:fixed;top:-46px;left:50%;box-shadow:0 8px 18px #14202b29}.ptr-spinner{border:2px solid #35483d40;border-top-color:var(--accent-dark);border-radius:999px;width:19px;height:19px}.ptr-indicator.is-ready .ptr-spinner{border:2px solid #5d786759;border-top-color:var(--accent)}.ptr-indicator.is-spinning .ptr-spinner{animation:.7s linear infinite ptr-spin}@keyframes ptr-spin{to{transform:rotate(360deg)}}body{color:var(--ink);background:radial-gradient(circle at top left, #5d78672e, transparent 28%), radial-gradient(circle at right 10%, #c4ae7d29, transparent 24%), linear-gradient(180deg, #fcf8f2 0%, var(--surface) 48%, #ebe1d2 100%);font-family:var(--font-sans), sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}code{font-family:var(--font-mono), monospace}h1,h2,h3,.brand h1,.page-header h2,.card h2,.card h3{font-family:var(--font-display), serif;letter-spacing:-.04em;font-weight:600;line-height:.95}.app-shell{flex-direction:column;min-height:100vh;display:flex}.topbar{z-index:40;color:#f5efe3;background:linear-gradient(#232520fa,#181a16fa),radial-gradient(circle at 100% 0,#c4ae7d1f,#0000 40%);border-bottom:1px solid #ffffff14;position:sticky;top:0}.topbar-inner{align-items:center;gap:1.5rem;width:100%;max-width:1600px;margin:0 auto;padding:.65rem 1.5rem;display:flex}.topbar-brand{flex-shrink:0;align-items:center;gap:.7rem;display:flex}.topbar-brand .brand-mark{width:2.4rem;height:2.4rem;font-size:.95rem}.topbar-logo{flex-shrink:0;display:block}.topbar-brand-text{line-height:1.05;display:grid}.topbar-brand-text .eyebrow{color:#c4ae7dd9;font-size:.58rem}.topbar-brand-text strong{font-family:var(--font-display), serif;letter-spacing:-.02em;font-size:1.05rem;font-weight:600}.topbar-nav{flex-wrap:wrap;align-items:center;gap:.25rem;display:flex}.topbar-link{color:#f5efe3b8;white-space:nowrap;border:1px solid #0000;border-radius:999px;padding:.45rem .9rem;font-size:.9rem;font-weight:600;transition:all .16s}.topbar-link:hover{color:#fff}.topbar-link.active{color:#fff;background:#c4ae7d29;border-color:#c4ae7d4d}.topbar-user{flex-shrink:0;align-items:center;gap:.9rem;margin-left:auto;display:flex}.topbar-user-meta{text-align:right;color:inherit;border-radius:.5rem;padding:.15rem .35rem;line-height:1.1;text-decoration:none;transition:background .15s;display:grid}.topbar-user-meta:hover,.topbar-user-meta.active{background:#5d78671f}.account-readonly{color:var(--ink);background:#ffffff73;border:1px solid #3730251a;border-radius:.7rem;margin:0;padding:.55rem .8rem}.topbar-user-meta strong{font-size:.9rem;font-weight:600}.topbar-user .button-ghost{color:#f5efe3d9;border-color:#ffffff2e}.topbar-user .button-ghost:hover{background:#ffffff0f}.sidebar{color:#f5efe3;background:linear-gradient(#232520fa,#181a16fa),radial-gradient(circle at 100% 0,#c4ae7d1f,#0000 30%);border-right:1px solid #ffffff14;flex-direction:column;gap:1.5rem;padding:2rem 1.4rem;transition:padding .18s;display:flex;position:relative}.sidebar.collapsed{padding-inline:.85rem}.sidebar-topbar{align-items:flex-start;gap:.9rem;display:flex}.brand-lockup{align-items:center;gap:.9rem;display:flex}.brand-mark{color:#f7f1e6;width:3rem;height:3rem;font-family:var(--font-display), serif;background:radial-gradient(circle at 30% 30%,#c4ae7d57,#0000 56%),linear-gradient(#5d786752,#ffffff05);border:1px solid #c4ae7d80;border-radius:999px;place-items:center;font-size:1.05rem;font-weight:700;display:grid;box-shadow:inset 0 1px #ffffff24}.brand-subtitle{color:#f5efe3a8;font-size:.94rem}.nav-toggle{z-index:20;color:#fff;background:#1f221deb;border-color:#ffffff24;border-radius:999px;justify-content:center;align-items:center;width:48px;min-width:48px;height:48px;min-height:48px;padding:0;display:inline-flex;position:absolute;top:18px;right:-24px;box-shadow:0 10px 24px #1414113d}.nav-toggle:hover{background:#31352ef5}.nav-toggle-icon{font-size:1.5rem;font-weight:700;line-height:1}.nav{flex-direction:column;gap:.5rem;display:flex}.nav-link{color:#f5efe3c7;white-space:nowrap;border:1px solid #0000;border-radius:1rem;padding:.85rem 1rem;transition:all .18s;overflow:hidden}.nav-link:hover,.nav-link.active{color:#fff;background:linear-gradient(90deg,#c4ae7d29,#ffffff05),#ffffff0a;border-color:#c4ae7d40}.nav-icon{letter-spacing:.12em;text-transform:uppercase;justify-content:center;align-items:center;width:100%;font-size:.78rem;font-weight:800;display:inline-flex}.sidebar-footer{border-top:1px solid #ffffff17;gap:.45rem;margin-top:auto;padding-top:1rem;display:grid}.sidebar-footer .muted{color:#f5efe39e}.main-panel{flex-direction:column;gap:1.1rem;width:100%;max-width:1600px;margin:0 auto;padding:1.5rem;display:flex}.page-header,.split,.button-row,.source-row{justify-content:space-between;align-items:center;gap:1rem;display:flex}.page-header{border-bottom:1px solid #37302514;padding-bottom:.4rem}.page-header h2{letter-spacing:0;margin-top:.15rem;font-size:clamp(1.45rem,2.1vw,2rem);line-height:1.08}.card h2,.card h3{letter-spacing:0;line-height:1.08}.eyebrow{letter-spacing:.2em;text-transform:uppercase;color:var(--accent);font-size:.74rem;font-weight:800}.muted{color:var(--muted)}.small{font-size:.9rem}.card,.metric-card,.chart-card{border:1px solid var(--line);background:var(--card);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--shadow)}.card{border-radius:1.1rem;padding:1.1rem 1.2rem}.metric-card{background:linear-gradient(#fffdf9f0,#f5ede0e6),radial-gradient(circle at 100% 0,#c4ae7d1f,#0000 34%);border-radius:1.35rem;gap:.55rem;padding:1.35rem;display:grid}.metric-card span{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:.76rem;font-weight:800}.metric-card strong{font-family:var(--font-display), serif;font-size:clamp(2.4rem,3vw,3.1rem);font-weight:600}.metrics-grid,.grid-two{gap:1rem;display:grid}.metrics-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-two{grid-template-columns:repeat(2,minmax(0,1fr))}.stack,.stack-lg,.form-card{gap:1rem;display:grid}.stack-lg{gap:1.5rem}.field{align-content:start;gap:.45rem;display:grid}.field span{color:var(--ink-soft);font-weight:700}.field input,.field select,.table input,.filter-control select{width:100%;color:var(--ink);background:#ffffffd1;border:1px solid #37302524;border-radius:.7rem;padding:.55rem .8rem}.field input:focus,.field select:focus,.filter-control select:focus{border-color:#5d786773;outline:none;box-shadow:0 0 0 4px #5d78671f}.role-help{color:var(--muted);margin:0;font-size:.82rem;line-height:1.35}.checkbox{align-items:center;gap:.75rem;display:flex}.button{background:linear-gradient(135deg, var(--accent-dark), var(--accent));color:#fffdf8;cursor:pointer;letter-spacing:.02em;border:1px solid #0000;border-radius:999px;padding:.62rem 1.15rem;font-weight:700;box-shadow:0 14px 24px #35483d2e}.button:hover{transform:translateY(-1px)}.button:disabled:hover{transform:none}.button:disabled{cursor:wait;opacity:.75}.button-secondary,.button-ghost{color:inherit;border-color:var(--line-strong);box-shadow:none;background:0 0}.button-secondary:hover,.button-ghost:hover{background:#3730250a}.button-danger{color:var(--warning);border-color:var(--warning);box-shadow:none;background:0 0}.button-danger:hover{background:var(--warning);color:#fffdf8}.button-danger-solid{background:var(--warning);color:#fffdf8;border-color:var(--warning);box-shadow:0 14px 24px #a4513533}.button-sm{box-shadow:none;padding:.4rem .85rem;font-size:.85rem}.table-wrap{overflow-x:auto}.table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:0}.table th,.table td{text-align:left;vertical-align:top;border-bottom:1px solid #3730251a;padding:.55rem .7rem}.table tbody td{font-weight:600}.table tbody td.muted{font-weight:400}.table th{text-transform:uppercase;letter-spacing:.12em;color:var(--muted);font-size:.76rem}.summary-total-col{background:#5d786714;font-weight:700}.summary-total-row td{background:#3730250f;border-top:2px solid #3730251f;font-weight:700}.summary-total-row .summary-total-col{background:#5d786729}.summary-total-label{color:var(--ink)}.report-table .comments-col{width:34%}.comments-cell{white-space:normal;overflow-wrap:anywhere;width:34%;line-height:1.45}.clamp-text{flex-direction:column;align-items:flex-start;gap:.2rem;display:flex}.clamp-text.is-clamped .clamp-body{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.clamp-toggle{cursor:pointer;color:var(--accent);background:0 0;border:none;padding:0;font-size:.8rem;font-weight:700}.clamp-toggle:hover{text-decoration:underline}@media print{.clamp-text.is-clamped .clamp-body{-webkit-line-clamp:unset;display:block;overflow:visible}.clamp-toggle{display:none}}.report-table .lead-row>td{color:var(--ink);border-bottom:none;padding-bottom:.35rem;font-weight:600}.report-table .lead-row.no-comment>td{border-bottom:1px solid #37302529;padding-bottom:.7rem}.report-table .comment-row>td{white-space:normal;overflow-wrap:anywhere;border-bottom:1px solid #37302529;padding:0 .7rem .8rem}.comment-note{color:var(--ink-soft);background:#5d78670f;border-left:3px solid #5d786780;border-radius:.55rem;padding:.5rem .8rem;font-weight:400;line-height:1.5}.comment-row-label{letter-spacing:.12em;text-transform:uppercase;color:var(--accent-dark);margin-bottom:.15rem;font-size:.6rem;font-weight:800;display:block}.card-head{justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:.55rem;display:flex}.count-badge{font-family:var(--font-display), serif;color:var(--ink);white-space:nowrap;align-items:baseline;gap:.45rem;font-size:1.2rem;font-weight:600;display:inline-flex}.count-badge-unit{font-family:var(--font-sans), sans-serif;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:.68rem;font-weight:500}.count-badge-sep{color:var(--muted);font-weight:400}.delta{font-family:var(--font-sans), sans-serif;white-space:nowrap;border-radius:999px;padding:.08rem .45rem;font-size:.72rem;font-weight:700}.delta-up{color:#2f6f4f;background:#2f6f4f21}.delta-down{color:#a8694a;background:#a8694a26}.delta-flat{color:var(--muted);background:#37302514}.summary-compare-col{white-space:nowrap;background:#c4ae7d1a}.sync-progress{border:1px solid var(--line);background:#5d786712;border-radius:.9rem;gap:.5rem;padding:.9rem 1rem;display:grid}.sync-progress-head{align-items:center;gap:.6rem;font-weight:600;display:flex}.sync-progress-bar{background:#3730251a;border-radius:999px;height:8px;overflow:hidden}.sync-progress-bar>div{background:linear-gradient(90deg, var(--accent-soft), var(--accent));border-radius:999px;height:100%;transition:width .4s}.spinner{border:2px solid #5d78674d;border-top-color:var(--accent);border-radius:999px;width:14px;height:14px;animation:.8s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.source-list{gap:.65rem;display:grid}.source-row{border-bottom:1px solid #3730251a;padding:.95rem 0}.sales-tiles{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.75rem;display:grid}@media screen and (max-width:1240px){.sales-tiles{grid-template-columns:repeat(4,minmax(0,1fr))}}@media screen and (max-width:700px){.sales-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}.sales-tile{border:1px solid var(--line);background:var(--card);border-radius:.9rem;gap:.1rem;padding:.7rem .95rem;display:grid;box-shadow:0 10px 26px #2a221912}.sales-tile .eyebrow{font-size:.62rem}.sales-tile strong{font-family:var(--font-display), serif;align-items:baseline;gap:.45rem;font-size:1.85rem;line-height:1.05;display:flex}html{scroll-behavior:smooth}section[id]{scroll-margin-top:5rem}.report-actions{align-items:center;gap:.9rem;display:flex}.weekly-page-header{grid-template-columns:1fr auto auto;grid-template-areas:"title date action";align-items:center;gap:.4rem 1rem;display:grid}.weekly-header-title{grid-area:title}.weekly-header-date{text-align:right;grid-area:date;justify-self:end;margin:0}.weekly-header-action{grid-area:action}.graphs-page-header{grid-template-columns:1fr auto;grid-template-areas:"title action";align-items:center;gap:.4rem 1rem;display:grid}.graphs-header-title{grid-area:title}.graphs-header-action{grid-area:action}.site-select-wrap{border:1px solid var(--line);background:var(--card);border-radius:.85rem;align-items:center;gap:.55rem;padding:.5rem .75rem;display:none}.site-select-wrap>span{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:.62rem;font-weight:800}.site-select{border:1px solid var(--line);background:var(--card);min-width:0;color:inherit;font:inherit;border-radius:.6rem;flex:1;padding:.5rem .7rem;font-weight:600}.label-short{display:none}.week-control-row .button .label-full,.week-control-row .button .label-short{font:inherit;letter-spacing:normal;text-transform:none;color:inherit}.site-tabs{border:1px solid var(--line);background:var(--card);border-radius:.85rem;flex-wrap:wrap;gap:.35rem;padding:.4rem;display:flex}.site-tab{min-height:38px;color:var(--muted);font:inherit;cursor:pointer;white-space:nowrap;background:#fffbf5b8;border:1px solid #3730251f;border-radius:.65rem;justify-content:center;align-items:center;padding:.45rem .85rem;font-size:.84rem;font-weight:700;line-height:1.1;text-decoration:none;transition:all .16s;display:inline-flex}.site-tab:hover{color:var(--ink);border-color:#5d786759}.site-tab.active{color:#fffdf8;background:linear-gradient(135deg, var(--accent-dark), var(--accent));border-color:#0000;box-shadow:0 8px 18px #35483d2e}.report-tabs{z-index:20;border:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffbf5eb;border-radius:999px;flex-wrap:wrap;gap:.3rem;width:fit-content;max-width:100%;padding:.35rem;display:flex;position:sticky;top:62px}.report-tab{color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:999px;padding:.4rem .95rem;font-size:.85rem;font-weight:600;transition:all .16s}.report-tab:hover{color:var(--ink)}.report-tab.active{color:#fffdf8;background:linear-gradient(135deg, var(--accent-dark), var(--accent));box-shadow:0 8px 18px #35483d33}.report-tabs-wrap{flex-direction:column;gap:1.1rem;display:flex}.report-tab-panel.is-hidden{display:none}.panel-stack{flex-direction:column;gap:1.1rem;display:flex}.print-only{display:none}.print-header{font-family:var(--font-display), serif;margin-bottom:1rem;font-size:1.1rem}@media print{.topbar,.report-tabs,.no-print{display:none!important}.main-panel{max-width:none!important;padding:0!important}body{background:#fff}.print-only,.report-tab-panel.is-hidden{display:block!important}.report-tabs-wrap{gap:1rem}.card,.chart-card,.sales-tile{break-inside:avoid;box-shadow:none!important}.sales-tiles{grid-template-columns:repeat(4,minmax(0,1fr))}a{color:inherit!important;text-decoration:none!important}@page{margin:14mm}}.graphs-filters{flex-wrap:wrap;align-items:end;gap:.55rem .8rem;display:flex}.graphs-filters label{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);gap:.25rem;font-size:.72rem;font-weight:700;display:grid}.graphs-filters select{border:1px solid var(--line);background:var(--card);color:inherit;font:inherit;border-radius:.6rem;padding:.5rem .7rem}.chart-section{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.chart-card{background:linear-gradient(#fffdf9f2,#f3ebdfe6),radial-gradient(circle at 100% 0,#5d78671f,#0000 34%);border-radius:1.1rem;gap:.85rem;padding:1rem 1.15rem;display:grid}.chart-card-wide{grid-column:1/-1}.chart-card-tall{flex-direction:column;grid-row:span 2;display:flex}.chart-card-tall .horizontal-bars{flex:auto;align-content:space-between;min-height:0}.graphs-month-field{flex:340px;min-width:260px}.graphs-filters .week-control-row .button{text-transform:none;letter-spacing:.02em;white-space:nowrap}.week-control-row .button:disabled{cursor:not-allowed;opacity:.38;border-color:var(--line)}.install-app{display:inline-flex;position:relative}.login-install{flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem .65rem;margin-top:1.1rem;display:flex}.install-help{z-index:60;border:1px solid var(--line);background:var(--card);text-align:left;width:max-content;max-width:min(320px,86vw);color:var(--ink);border-radius:.85rem;padding:.9rem 1rem 1rem;position:absolute;top:calc(100% + .5rem);right:0;box-shadow:0 18px 40px #14202b33}.install-help strong{margin-bottom:.5rem;padding-right:1.25rem;font-size:.95rem;display:block}.install-help ol{color:var(--muted);gap:.4rem;margin:0;padding-left:1.1rem;font-size:.85rem;line-height:1.45;display:grid}.install-help ol strong{font-size:inherit;color:var(--ink);margin:0;padding:0;display:inline}.install-help-close{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:.15rem .3rem;font-size:1.25rem;line-height:1;position:absolute;top:.3rem;right:.45rem}.install-help-close:hover{color:var(--ink)}@media (max-width:640px){.install-help{width:min(360px,92vw);max-width:92vw;position:fixed;inset:auto auto 1rem 50%;transform:translate(-50%)}}@media (max-width:960px){.chart-card-tall{grid-row:auto}}.chart-card-header{justify-content:space-between;align-items:start;gap:1rem;display:flex}.chart-card-header h3{margin-top:.15rem;font-size:1.35rem}.chart-comparison-key{color:var(--muted);flex-wrap:wrap;gap:.55rem 1rem;font-size:.78rem;font-weight:700;display:flex}.chart-comparison-key span{align-items:center;gap:.35rem;display:inline-flex}.chart-comparison-key i{border-radius:999px;width:.75rem;height:.75rem;display:inline-block}.chart-key-current{background:var(--accent)}.chart-key-compare{background:#37302552}.bar-chart{grid-template-columns:repeat(7,minmax(0,1fr));align-items:end;gap:.9rem;min-height:260px;display:grid}.bar-chart-column{justify-items:center;gap:.55rem;display:grid}.bar-chart-value{color:var(--ink);font-weight:700}.bar-chart-track{background:linear-gradient(#3730250f,#37302524);border-radius:999px;align-items:end;width:100%;height:190px;padding:.25rem;display:flex}.bar-chart-bar{background:linear-gradient(180deg, var(--accent-soft) 0%, var(--accent) 100%);border-radius:999px;width:100%;box-shadow:0 10px 20px #5d78672e}.bar-chart-label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:.78rem;font-weight:800}.donut-layout{grid-template-columns:minmax(120px,150px) 1fr;align-items:center;gap:1rem;display:grid}.donut-wrap{aspect-ratio:1;width:min(150px,100%);margin-inline:auto;position:relative}.donut-chart{width:100%;height:100%;transform:rotate(-90deg)}.donut-chart-base,.donut-chart-segment{fill:none;stroke-width:3.6px}.donut-chart-base{stroke:#37302514}.donut-chart-segment{stroke-linecap:butt}.donut-chart-center{text-align:center;place-content:center;display:grid;position:absolute;inset:0}.donut-chart-center strong{font-family:var(--font-display), serif;font-size:1.55rem}.donut-chart-center span{color:var(--muted)}.donut-chart-center small{color:var(--muted);justify-content:center;align-items:center;gap:.25rem;margin-top:.12rem;font-size:.68rem;display:flex}.donut-legend{gap:.45rem;display:grid}.donut-legend-row{grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:.7rem;display:grid}.donut-legend-row.has-comparison{grid-template-columns:auto minmax(0,1fr) auto auto auto}.donut-legend-swatch{border-radius:999px;width:.9rem;height:.9rem}.donut-legend-label{min-width:0;font-weight:600}.horizontal-bars{gap:.9rem;display:grid}.horizontal-bar-row{gap:.5rem;display:grid}.horizontal-bar-meta{justify-content:space-between;gap:1rem;font-weight:600;display:flex}.chart-value-stack{text-align:right;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.45rem;display:inline-flex}.chart-value-stack .small{align-items:center;gap:.3rem;display:inline-flex}.horizontal-bar-stack{gap:.24rem;display:grid}.horizontal-bar-track{background:#37302514;border-radius:999px;height:14px;overflow:hidden}.horizontal-bar-track-compare{background:#3730250d;height:8px}.horizontal-bar-fill{border-radius:999px;min-width:8px;height:100%}.horizontal-bar-fill-compare{background:#37302557}.horizontal-bar-fill.is-empty{min-width:0}.filter-bar{border:1px solid var(--line);background:var(--card);border-radius:.85rem;flex-wrap:wrap;align-items:end;gap:.6rem 1.1rem;padding:.6rem .9rem;display:flex}.filter-control{gap:.45rem;display:grid}.filter-control span{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:.62rem;font-weight:800}.filter-control-wide{flex:380px;min-width:0}.week-control-row{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.75rem;display:grid}.success-text{color:var(--accent-dark)}.error-text{color:var(--warning)}.note-alert,.note-caution{font-weight:700}.note-alert{color:var(--warning)}.note-caution{color:var(--caution)}.tile-open{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;align-items:baseline;gap:.45rem;padding:0;display:inline-flex}.tile-open-hint{border:1px solid var(--line-strong);color:var(--muted);font-family:var(--font-sans), sans-serif;letter-spacing:.1em;text-transform:uppercase;border-radius:999px;padding:.05rem .45rem;font-size:.62rem;font-weight:700;transition:background .15s,color .15s}.tile-open:hover .tile-open-hint,.tile-open:focus-visible .tile-open-hint{background:var(--accent-dark);border-color:var(--accent-dark);color:#fffdf8}.tile-open:focus-visible{outline:2px solid var(--accent-dark);outline-offset:3px;border-radius:.3rem}.attendance-group{gap:.6rem;display:grid}.attendance-group-head h3{margin:0;font-size:1rem}.attendance-group-head p{margin:.15rem 0 0}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){.tile-open-hint{transition:none}}.stats-list{gap:1rem;display:grid}.user-management{width:100%}.user-page-toolbar{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.user-toolbar-actions{align-items:center}.user-search input{width:15rem;max-width:100%;color:var(--ink);background:#ffffffd1;border:1px solid #37302524;border-radius:.7rem;padding:.55rem .8rem}.user-search input:focus{border-color:#5d786773;outline:none;box-shadow:0 0 0 4px #5d78671f}.user-table-wrap{overflow-x:auto}.user-table{table-layout:auto;min-width:0}.user-table th:last-child,.user-table td:last-child{white-space:nowrap;text-align:right;width:1%}.user-table td:last-child .button-row{flex-wrap:nowrap;justify-content:flex-end;gap:.35rem}.user-table td:last-child .button{white-space:nowrap}.user-table th:nth-child(2),.user-table td:nth-child(2),.user-table th:nth-child(4),.user-table td:nth-child(4),.user-table th:nth-child(5),.user-table td:nth-child(5){white-space:nowrap;width:1%}.user-table .status-stack{flex-wrap:nowrap}.user-table td:nth-child(5){color:var(--muted);font-size:.78rem;font-weight:500}.user-table td{vertical-align:middle}.user-table-primary{gap:.18rem;display:grid}.user-table-primary strong{font-size:.95rem}.user-table-primary span{color:var(--muted);font-size:.82rem;line-height:1.35}.user-table-primary .error-text{color:var(--warning);font-weight:700}.user-table-role{font-weight:800}.status-stack{flex-wrap:wrap;gap:.35rem;display:flex}.role-guide{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:.8rem;display:grid}.role-guide-item{background:#ffffff85;border:1px solid #3730251a;border-radius:.8rem;align-content:start;gap:.65rem;padding:.85rem;display:grid}.role-guide-item strong{font-size:1rem}.role-guide-item ul{color:var(--ink-soft);margin:0;padding-left:1.1rem;font-size:.88rem;line-height:1.45}.role-guide-item li+li{margin-top:.3rem}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#181c1770;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.modal-panel{background:var(--card);border:1px solid #37302529;border-radius:1rem;width:min(920px,100%);max-height:min(820px,100vh - 2rem);overflow:auto;box-shadow:0 30px 80px #181c1747}.modal-panel-wide{width:min(1180px,100%)}.modal-head,.modal-footer{justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.1rem;display:flex}.modal-head{border-bottom:1px solid #3730251a}.modal-head h2{margin-top:.15rem;line-height:1.08}.modal-body{gap:1rem;padding:1rem 1.1rem;display:grid}.modal-footer{background:#fffbf5d1;border-top:1px solid #3730251a;justify-content:flex-end}.modal-section{border-top:1px solid #3730251a;gap:.8rem;padding-top:1rem;display:grid}.modal-section-danger{background:#a451350d;border:1px solid #a4513559;border-radius:.8rem;margin-top:.4rem;padding:1rem}.modal-section-danger .eyebrow{color:var(--warning)}.modal-section-danger .button-row{justify-content:flex-end}.user-password-row{flex-wrap:wrap;align-items:end;gap:.75rem;display:flex}.table-pagination{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.table-pagination p{margin:0}.table-pagination-controls{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.table-pagination-pages{flex-wrap:wrap;gap:.3rem;display:flex}.table-pagination-page{text-align:center;min-width:2.4rem;padding-left:.6rem;padding-right:.6rem}.table-pagination-page.is-current{box-shadow:none}@media (max-width:620px){.table-pagination{justify-content:center}.table-pagination-controls{justify-content:center;width:100%}}.development-scope{gap:.65rem;display:grid}.development-checkboxes{border:1px solid var(--line);background:#ffffff80;border-radius:.8rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.5rem .85rem;padding:.7rem;display:grid}.checkbox-compact{gap:.5rem;font-size:.9rem}.status-pill{min-height:1.45rem;color:var(--accent-dark);text-transform:uppercase;letter-spacing:.08em;background:#5d786724;border-radius:999px;align-items:center;padding:.18rem .55rem;font-size:.72rem;font-weight:800;display:inline-flex}.status-pill-muted{color:var(--warning);background:#a451351f}.password-checklist{gap:.2rem;margin:.15rem 0 0;padding:0;font-size:.8rem;list-style:none;display:grid}.password-checklist li{color:var(--warning);align-items:center;gap:.45rem;display:flex}.password-checklist li.met{color:var(--accent-dark)}.password-checklist-mark{justify-content:center;width:1rem;font-weight:800;display:inline-flex}.checkbox-field{cursor:pointer;color:var(--ink);align-items:flex-start;gap:.55rem;font-size:.85rem;line-height:1.35;display:flex}.checkbox-field input{width:1.05rem;height:1.05rem;accent-color:var(--accent-dark);cursor:pointer;flex-shrink:0;margin-top:.15rem}.dev-toggle{cursor:pointer;align-items:center;gap:.5rem;font-size:.82rem;font-weight:700;display:inline-flex}.dev-toggle input{width:1.1rem;height:1.1rem;accent-color:var(--accent-dark);cursor:pointer}.dev-toggle input:disabled{cursor:progress;opacity:.6}.user-admin-actions{flex-wrap:wrap;justify-content:flex-start;align-items:flex-end}.reset-password-field{width:min(100%,260px)}.stats-inline{grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem;display:grid}.metric-chip{border:1px solid var(--line);background:#ffffffb8;border-radius:1rem;gap:.2rem;padding:.9rem 1rem;display:grid}.metric-chip span{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:.82rem}.metric-chip strong{font-size:1.7rem}.diagnostics-table .comments-col{width:28%}.stats-list div{gap:.2rem;display:grid}.login-page{background:#efe7d8;place-items:center;min-height:100vh;padding:1.5rem;display:grid}.login-card{border:1px solid var(--line);background:#fffcf7f0;border-radius:1rem;gap:1.5rem;width:min(100%,430px);padding:2rem;display:grid;box-shadow:0 20px 48px #2a22191f}.login-brand{gap:1.25rem;display:grid}.login-logo{width:178px;height:auto}.login-copy{gap:.45rem;display:grid}.login-card h1{font-family:var(--font-display), serif;letter-spacing:0;font-size:2.35rem;font-weight:600;line-height:1.08}.login-form{gap:1rem;display:grid}.login-forgot{justify-self:center;text-decoration:underline}.login-form .button{justify-content:center;align-items:center;width:100%;display:inline-flex}@media (max-width:1200px){.metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:960px){.app-shell,.login-page,.metrics-grid,.grid-two,.filter-bar,.stats-inline,.chart-section,.donut-layout{grid-template-columns:1fr}.sidebar{padding-bottom:1rem}.main-panel,.login-page{padding:1rem}.chart-card-header,.page-header,.split,.user-page-toolbar,.button-row{flex-direction:column;align-items:flex-start}.user-page-toolbar .button-row{flex-flow:wrap;align-items:stretch;width:100%}.user-page-toolbar .button-row .button{flex:1}.user-page-toolbar .button-row .user-search{flex:1 0 100%}.user-search input{width:100%}.modal-head,.modal-footer,.user-password-row{flex-direction:column;align-items:stretch}.reset-password-field{width:100%}.bar-chart{gap:.55rem}}@media (max-width:760px){.topbar-inner{flex-wrap:wrap;gap:.4rem .8rem;padding:.6rem 1rem}.topbar-brand{order:1}.topbar-user{order:2;gap:.55rem;margin-left:auto}.topbar-nav{flex-basis:100%;order:3}.topbar-link-hide-mobile,.topbar-install{display:none}.report-tabs{top:0}.site-tabs{display:none}.site-select-wrap{display:flex}.label-full{display:none}.label-short{display:inline}.graphs-filters{align-items:end;gap:.5rem}.graphs-month-field{flex:220px;min-width:0}.graphs-compare-field{flex:110px;min-width:0}.graphs-filters .week-control-row{gap:.4rem}.graphs-filters .button-sm{padding:.4rem .55rem}.weekly-page-header{grid-template-columns:1fr auto;grid-template-areas:"title action""date date"}.weekly-header-date{text-align:left;justify-self:start}.table-wrap{-webkit-overflow-scrolling:touch}.table:not(.stackable){table-layout:auto;width:auto;min-width:100%}.table:not(.stackable) th{white-space:nowrap}.table.stackable,.table.stackable tbody{width:100%;min-width:0;display:block}.table.stackable thead{display:none}.table.stackable tr{border:1px solid var(--line);background:#fffbf580;border-radius:.7rem;margin-bottom:.55rem;padding:.1rem .15rem;display:block}.table.stackable td{text-align:right;border:none;border-bottom:1px solid #3730250f;justify-content:space-between;align-items:baseline;gap:1rem;width:auto;padding:.38rem .8rem;display:flex}.user-table.stackable .user-table-role{text-align:right}.user-table.stackable .status-stack{flex-wrap:wrap;justify-content:flex-end}.user-table.stackable td{white-space:normal;width:auto}.table.stackable tr td:last-child{border-bottom:none}.table.stackable td:first-child{text-align:left;color:var(--ink);border-bottom:1px solid var(--line);justify-content:flex-start;padding-top:.55rem;padding-bottom:.45rem;font-size:1rem;font-weight:800}.table.stackable td:first-child:before{display:none}.table.stackable td:before{content:attr(data-label);text-align:left;white-space:nowrap;text-transform:none;color:var(--ink);opacity:.72;flex-shrink:0;font-size:.78rem;font-weight:700}.table.stackable td.is-empty-mobile{display:none}.table.stackable td[colspan],.table.stackable .comment-row td{text-align:left}.table.stackable td[colspan]:before,.table.stackable .comment-row td:before{display:none}.table.stackable.name-header tr{flex-wrap:wrap;align-items:baseline;display:flex}.table.stackable.name-header td{flex:0 0 100%}.table.stackable.name-header td:first-child,.table.stackable.name-header td:nth-child(2){color:var(--ink);border-bottom:1px solid var(--line);flex:0 0 50%;padding-top:.55rem;padding-bottom:.45rem;font-size:1rem;font-weight:800}.table.stackable.name-header td:nth-child(2){text-align:right;justify-content:flex-end}.table.stackable.name-header td:nth-child(2):before{display:none}.table.stackable.name-header td[colspan]{flex:0 0 100%}}
