@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/jakarta-LDIbaomQNQcsA88c7O9yZ4KMCoOg4IA6-91aHEjcWuA_qU7NSg.ttf) format("truetype")}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/jakarta-LDIbaomQNQcsA88c7O9yZ4KMCoOg4IA6-91aHEjcWuA_m07NSg.ttf) format("truetype")}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/jakarta-LDIbaomQNQcsA88c7O9yZ4KMCoOg4IA6-91aHEjcWuA_d0nNSg.ttf) format("truetype")}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/jakarta-LDIbaomQNQcsA88c7O9yZ4KMCoOg4IA6-91aHEjcWuA_TknNSg.ttf) format("truetype")}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/jakarta-LDIbaomQNQcsA88c7O9yZ4KMCoOg4IA6-91aHEjcWuA_KUnNSg.ttf) format("truetype")}:root{color-scheme:light;--ink:#0e2c3d;--muted:#4a5568;--paper:#f8f9fa;--card:#ffffff;--line:#dce5e7;--line-focus:#c3d2d7;--accent:#0e2c3d;--accent-hover:#205c3b;--accent-light:#edf7f4;--accent-border:#b8ded4;--warning:#d97706;--warning-bg:#fffbeb;--warning-border:#fde68a;--success:#205c3b;--success-bg:#edf7f4;--success-border:#b8ded4;--danger:#dc2626;--danger-bg:#fef2f2;--danger-border:#fecaca;--font-body:"Plus Jakarta Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-mono:var(--font-body);--brand-primary:#0E2C3D;--brand-secondary:#205C3B;--brand-accent:#00A88F;--brand-dark:#0A192F}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--font-body);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}main{width:min(1040px,calc(100% - 2rem));margin:0 auto;padding:2.5rem 0 4rem}.landing{max-width:760px;padding-top:5rem}.narrow{width:min(440px,calc(100% - 2rem));padding-top:4rem}.workspace{width:min(1200px,calc(100% - 2rem));padding-top:2rem}h1,h2,h3,h4,h5{color:var(--ink);letter-spacing:-.02em}.section-title{font-size:clamp(1.4rem,3vw,1.85rem);margin:.2rem 0 .5rem;font-weight:800;line-height:1.2}.primary-link,button{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;border:1px solid transparent;border-radius:8px;background:var(--accent);color:white;padding:.65rem 1rem;font:inherit;font-size:.88rem;font-weight:600;text-decoration:none;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,box-shadow .15s ease}.primary-link:hover,button:hover:not(:disabled){background:var(--accent-hover)}button:disabled{cursor:not-allowed;opacity:.5}.secondary{background:white;color:var(--ink);border:1px solid var(--line)}.secondary:hover:not(:disabled){background:#eef3f4;border-color:#c3d2d7;color:var(--ink)}.danger{background:var(--danger-bg);color:var(--danger);border:1px solid var(--danger-border)}.danger:hover:not(:disabled){background:#fee2e2;border-color:#fca5a5;color:#b91c1c}.compact-btn{padding:.45rem .75rem;font-size:.82rem;align-self:center;white-space:nowrap}.panel{padding:1.5rem;border:1px solid var(--line);border-radius:14px;background:var(--card);box-shadow:0 1px 3px rgba(15,23,42,.04)}.panel h2{margin-top:0;margin-bottom:.4rem;font-size:1.2rem;font-weight:700}.subpanel-title{margin:0 0 .35rem;font-size:1rem;font-weight:700;color:var(--ink)}.card{background:#ffffff;background-color:#ffffff;border:1px solid var(--line);border-radius:12px;color:var(--ink);box-shadow:0 4px 6px -1px rgba(15,23,42,.08),0 2px 4px -2px rgba(15,23,42,.04)}.modal-backdrop{position:fixed;inset:0;background:rgba(15,23,42,.65);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem;overflow-y:auto}.modal-dialog{background:#ffffff;background-color:#ffffff;border:1px solid var(--line);border-radius:12px;box-shadow:0 20px 25px -5px rgba(0,0,0,.2),0 10px 10px -5px rgba(0,0,0,.08);width:min(600px,100%);color:var(--ink);display:flex;flex-direction:column;overflow:hidden;animation:modalFadeIn .18s ease-out}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.97) translateY(4px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-header{border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.modal-body,.modal-header{padding:1.25rem 1.5rem;background:#ffffff}.modal-body{overflow-y:auto}.modal-footer{padding:1rem 1.5rem;border-top:1px solid var(--line);background:#f8f9fa;display:flex;align-items:center;justify-content:flex-end;gap:.5rem}.form-stack,label{display:grid;grid-gap:.45rem;gap:.45rem}.form-stack{gap:.95rem}label{color:var(--ink);font-size:.86rem;font-weight:600}input,select,textarea{min-width:0;border:1px solid var(--line);border-radius:8px;background:white;padding:.65rem .85rem;color:var(--ink);font:inherit;font-size:.92rem;transition:border-color .15s ease,box-shadow .15s ease}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(17,94,89,.12)}textarea{min-height:6rem;resize:vertical}.field-hint{font-weight:400;font-size:.78rem;line-height:1.35}.field-hint,.muted,.session small,.session span{color:var(--muted)}.error,.success{border-radius:8px;padding:.75rem 1rem;font-size:.88rem;font-weight:500;line-height:1.45}.error{background:var(--danger-bg);border:1px solid var(--danger-border);color:#991b1b}.success{background:var(--success-bg);border:1px solid var(--success-border);color:#205c3b}.inline-warning{display:inline-block;padding:.35rem .65rem;border-radius:6px;background:var(--warning-bg);border:1px solid var(--warning-border);color:#92400e;font-size:.8rem;font-weight:600}.privacy-banner{margin:0 0 1rem;padding:.65rem .95rem;border-radius:8px;background:#edf7f4;border:1px solid #b8ded4;color:#205c3b;font-size:.84rem;font-weight:500}.account,.actions,.topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem}.topbar{flex-wrap:wrap;padding-bottom:1.25rem;margin-bottom:1.5rem;border-bottom:1px solid var(--line)}.topbar-brand{gap:.75rem}.topbar-brand,.topbar-logo{display:flex;align-items:center}.topbar-logo{width:2.25rem;height:2.25rem;border-radius:8px;background:var(--accent);color:white;justify-content:center;font-weight:800;font-size:.95rem}.topbar-title-group{display:grid;grid-gap:.1rem;gap:.1rem}.eyebrow-row{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap}.facility-header-pill{padding:.2rem .6rem;border-radius:9999px;background:var(--accent-light);border:1px solid var(--accent-border);color:var(--accent);font-size:.8rem;font-weight:600}.facility-header-pill,.facility-top-switcher{display:inline-flex;align-items:center;gap:.35rem}.facility-top-switcher{padding:.15rem .5rem;border-radius:8px;background:white;border:1px solid var(--line);box-shadow:0 1px 2px rgba(15,23,42,.04)}.facility-top-icon{font-size:.85rem}.facility-top-select{border:none;background:transparent;padding:.15rem .35rem;font-size:.82rem;font-weight:700;color:var(--accent);cursor:pointer;outline:none}.facility-top-select:focus{box-shadow:none}.account{flex-wrap:wrap;justify-content:flex-end;gap:.65rem}.nav-links{display:flex;align-items:center;gap:.25rem;flex-wrap:wrap}.nav-link{display:inline-block;padding:.45rem .75rem;border-radius:7px;color:var(--muted);text-decoration:none;font-size:.86rem;font-weight:600;border:1px solid transparent;transition:all .15s ease}.nav-link:hover{background:#eef3f4;color:var(--ink)}.nav-link.active{background:var(--accent-light);color:var(--accent);border-color:var(--accent-border)}.nav-dropdown-wrapper{position:relative;display:inline-block}.nav-dropdown-btn{display:inline-flex;align-items:center;gap:.35rem;padding:.45rem .75rem;border-radius:7px;color:var(--muted);font-size:.86rem;font-weight:600;border:1px solid transparent;background:transparent;cursor:pointer;transition:all .15s ease;font-family:inherit}.nav-dropdown-btn:hover{background:#eef3f4;color:var(--ink)}.nav-dropdown-btn.active{background:var(--accent-light);color:var(--accent);border-color:var(--accent-border)}@keyframes navDropdownFade{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.nav-dropdown-menu{position:absolute;top:calc(100% + 4px);left:0;min-width:220px;background:#ffffff;border:1px solid var(--line);border-radius:8px;box-shadow:0 4px 14px rgba(0,0,0,.08);padding:.4rem;display:flex;flex-direction:column;gap:.2rem;z-index:1000;animation:navDropdownFade .15s ease-out}.nav-dropdown-menu:before{content:"";position:absolute;top:-12px;left:0;right:0;height:12px;background:transparent}.nav-dropdown-item{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border-radius:6px;font-size:.84rem;font-weight:500;color:#0e2c3d;text-decoration:none;transition:all .12s ease}.nav-dropdown-item:hover{background:#f8f9fa;color:var(--accent)}.nav-dropdown-item.active{background:var(--accent-light);color:var(--accent);font-weight:700}.lang-switch{display:inline-flex;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:white}.lang-btn{border:0;border-radius:0;background:transparent;color:var(--muted);padding:.35rem .6rem;font-size:.8rem;font-weight:700}.lang-btn.active{background:var(--accent);color:white}.user-badge{display:inline-flex;align-items:center;gap:.45rem;padding:.35rem .65rem;border-radius:8px;background:white;border:1px solid var(--line);font-size:.84rem;color:var(--ink)}.admin-pill{padding:.15rem .45rem;background:var(--accent);color:white;font-size:.7rem;text-transform:uppercase;letter-spacing:.04em}.admin-pill,.status-pill{border-radius:999px;font-weight:700}.status-pill{display:inline-flex;align-items:center;padding:.2rem .55rem;font-size:.74rem;white-space:nowrap}.status-pill.published{background:var(--success-bg);border:1px solid var(--success-border);color:var(--success)}.status-pill.pending{background:var(--warning-bg);border:1px solid var(--warning-border);color:var(--warning)}.status-pill.inactive{background:#eef3f4;border:1px solid var(--line);color:var(--muted)}.summary-box{display:grid;grid-gap:.65rem;gap:.65rem;padding:1.15rem 1.25rem;margin:.85rem 0 1rem;border:1px solid var(--line);border-radius:12px;background:white;box-shadow:0 1px 2px rgba(15,23,42,.04)}.summary-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-wrap:wrap}.summary-primary-value{font-family:var(--font-mono);font-size:1.75rem;font-weight:800;color:var(--ink);line-height:1.2}.summary-primary-value span{font-family:inherit;font-size:.95rem;font-weight:500;color:var(--muted)}.summary-meta{display:flex;flex-wrap:wrap;gap:.5rem 1.25rem;font-size:.84rem;color:var(--muted)}.summary-reason{margin:0;padding:.5rem .75rem;border-radius:8px;background:var(--paper);border:1px solid var(--line);font-size:.86rem;color:var(--ink)}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));grid-gap:.65rem;gap:.65rem}.metric-item{display:grid;grid-gap:.25rem;gap:.25rem;padding:.75rem .85rem;border:1px solid var(--line);border-radius:10px;background:var(--paper)}.metric-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}.metric-item strong{font-family:var(--font-mono);font-size:1.1rem;font-weight:700;color:var(--ink)}.primary-pax-field{padding:1.1rem 1.25rem;border:2px solid var(--accent);border-radius:12px;background:var(--accent-light);font-size:.98rem;font-weight:700}.primary-pax-field input{font-family:var(--font-mono);font-size:1.25rem;font-weight:700}.optional-details{border:1px solid var(--line);border-radius:10px;background:white}.optional-details h3{margin:0;padding:.85rem 1rem;font-size:.95rem;border-bottom:1px solid var(--line)}.optional-details-body{padding:1rem}.active-session-banner{padding:1rem 1.25rem;border-radius:10px;background:white;border:1px solid var(--line);border-left:4px solid var(--accent);margin-bottom:1.25rem}.active-session-row{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;flex-wrap:wrap;margin-top:.25rem}.active-session-row h2{margin:0;font-size:1.2rem;font-weight:800}.session-create-card{padding:1rem 1.15rem;margin-bottom:1rem;border:1px solid var(--line);border-radius:12px;background:var(--paper)}.field-summary{display:grid;grid-gap:.2rem;gap:.2rem;padding:.65rem .85rem;border:1px solid var(--line);border-radius:8px;background:white}.field-summary-label{font-size:.75rem;font-weight:600;text-transform:uppercase;color:var(--muted)}.date-field-group{display:grid;grid-gap:.45rem;gap:.45rem}.date-picker-row{display:grid;grid-template-columns:1fr auto;grid-gap:.5rem;gap:.5rem;align-items:stretch}.date-display-btn{display:flex;align-items:center;gap:.5rem;padding:.65rem .85rem;border:1px solid var(--line);border-radius:8px;background:white;color:var(--ink);font-weight:600;text-align:left;cursor:pointer;min-height:42px;box-sizing:border-box;transition:border-color .15s ease,background-color .15s ease}.date-display-btn:hover{border-color:var(--accent);background:var(--accent-light)}.date-display-text{font-size:.92rem;color:var(--ink);font-weight:600}.date-display-action{font-size:.78rem;color:var(--accent);font-weight:700;white-space:nowrap;margin-left:auto}.date-picker-action-wrap{position:relative;display:inline-flex;align-items:stretch}.date-picker-action-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.65rem .95rem;border:1px solid var(--accent);border-radius:8px;background:var(--accent-light);color:var(--accent);font-weight:700;font-size:.85rem;white-space:nowrap;cursor:pointer;min-height:42px;box-sizing:border-box;transition:all .15s ease}.date-picker-action-btn:hover{background:var(--accent);color:white}.date-picker-action-btn-icon{font-size:.95rem;line-height:1}.date-native-input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;border:0;padding:0;margin:0;z-index:2}.quick-date-bar{display:flex;flex-wrap:wrap;gap:.35rem}.chip-btn{padding:.35rem .7rem;border:1px solid var(--line);border-radius:999px;background:white;color:var(--muted);font-size:.78rem;font-weight:600}.chip-btn.active,.chip-btn:hover{border-color:var(--accent);color:var(--accent)}.chip-btn.active{background:var(--accent-light)}.time-grid{grid-template-columns:1fr 1fr}.session-list,.time-grid{display:grid;grid-gap:.65rem;gap:.65rem}.session{display:grid;grid-gap:.35rem;gap:.35rem;width:100%;padding:.85rem 1rem;background:white;color:var(--ink);border:1px solid var(--line);border-radius:10px;text-align:left;transition:all .15s ease}.session.needs-menu{border-left:4px solid var(--warning)}.session.has-menu{border-left:4px solid var(--accent)}.session.active{border-color:var(--accent);background:var(--accent-light);box-shadow:0 0 0 1px var(--accent)}.session-top-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-wrap:wrap}.rating-card{container-type:inline-size;border:1px solid var(--line);border-radius:12px;padding:1rem 1.15rem;background:white;min-width:0;max-width:100%;box-shadow:0 1px 2px rgba(15,23,42,.03)}.rating-card legend{font-size:.95rem;font-weight:700;color:var(--ink);padding:0 .4rem;max-width:calc(100% - .8rem);line-height:1.35}.rating-card:disabled{opacity:.6;background:var(--paper)}.rating-segmented-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:.45rem;gap:.45rem;margin-top:.65rem;width:100%}@container (min-width: 540px){.rating-segmented-grid{grid-template-columns:repeat(6,1fr)}}.rating-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:56px;min-width:0;padding:.45rem .3rem;border:1px solid var(--line);border-radius:9px;background:white;color:var(--ink);font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .15s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none;touch-action:manipulation}.rating-btn span:first-child{line-height:1}.rating-btn:hover:not(:disabled){border-color:var(--accent);background:var(--accent-light);color:var(--accent)}.rating-btn.active{border-color:var(--accent);background:var(--accent);color:white;box-shadow:0 2px 4px rgba(17,94,89,.25)}.rating-btn-caption{font-size:.65rem;font-weight:600;margin-top:.2rem;color:var(--muted);line-height:1.15;text-align:center;max-width:100%;overflow-wrap:break-word;word-break:normal;-webkit-hyphens:auto;hyphens:auto}.rating-btn.active .rating-btn-caption{color:#d8eee7}.record{display:grid;grid-gap:.35rem;gap:.35rem;padding:.85rem 0;border-bottom:1px solid var(--line)}.record:last-child{border-bottom:0}.record-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-wrap:wrap}.record strong{font-size:.92rem;color:var(--ink)}.record small,.record span{color:var(--muted);font-size:.82rem}.history-block{margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--line)}.review-tabs{display:flex;flex-wrap:wrap;gap:.4rem;margin:.75rem 0 1rem;padding-bottom:.75rem;border-bottom:1px solid var(--line)}.review-section{margin-top:1rem}.review-section h3{margin:0 0 .35rem;font-size:1rem;font-weight:700}.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:12px;background:white}.data-table{width:100%;border-collapse:collapse;font-size:.9rem}.data-table td,.data-table th{padding:.85rem 1rem;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}.data-table tbody tr:last-child td{border-bottom:0}.data-table th{background:var(--paper);color:var(--muted);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.data-table tbody tr:hover{background:#fbfcfd}.data-table tbody tr.row-inactive{background:#fafafa;color:var(--muted)}.columns{display:grid;grid-template-columns:minmax(310px,.82fr) minmax(420px,1.18fr);grid-gap:1.25rem;gap:1.25rem;margin-top:1.5rem;align-items:start}.editor-header{align-items:center;gap:.75rem;margin-bottom:.5rem}.editor-header h2{margin:0;font-size:1.2rem;font-weight:800}.component-card{display:grid;grid-gap:.55rem;gap:.55rem;padding:.9rem 1rem;border:1px solid var(--line);border-radius:12px;background:white}.component-step-badge{display:inline-flex;align-items:center;justify-content:center;width:1.45rem;height:1.45rem;border-radius:50%;background:var(--accent);color:white;font-size:.76rem;font-weight:700}.subgroup-pill{margin-left:auto;padding:.2rem .55rem;border-radius:999px;background:var(--accent-light);border:1px solid var(--accent-border);color:var(--accent);font-size:.74rem;font-weight:600}.assessment-workspace{display:grid;grid-gap:1rem;gap:1rem}.assessment-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-gap:.85rem;gap:.85rem}.menu-summary{display:grid;grid-gap:.25rem;gap:.25rem;padding:.85rem 1.1rem;border-left:3px solid var(--accent);background:var(--accent-light);border-radius:0 8px 8px 0;color:var(--ink)}.menu-summary strong{font-size:.88rem;color:var(--accent)}.menu-summary span{color:var(--ink);font-size:.86rem;font-weight:500}@media (max-width:768px){.columns,.date-picker-row,.metrics-grid,.quantity-inputs-grid,.time-grid{grid-template-columns:1fr}.rating-segmented-grid{grid-template-columns:repeat(3,1fr)}.date-picker-action-btn,.date-picker-action-wrap{width:100%;justify-content:center}.date-native-input{width:100%}.account,.topbar{align-items:flex-start;justify-content:flex-start}.subgroup-pill{margin-left:0}.compact-btn{align-self:flex-start}}.hero{max-width:720px}.eyebrow,.label{color:var(--accent);font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}h1{margin:.5rem 0 .85rem;font-size:clamp(2rem,5vw,3.25rem);letter-spacing:-.03em;line-height:1.1}.lede{color:var(--muted);font-size:clamp(1rem,1.8vw,1.15rem);line-height:1.6}.session-selector-card{display:grid;grid-gap:.75rem;gap:.75rem;padding:1.15rem 1.25rem;border:1px solid var(--line);border-radius:12px;background:white;box-shadow:0 1px 2px rgba(15,23,42,.04)}.session-card-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding-bottom:.45rem;border-bottom:1px solid var(--line)}.session-card-header h3{margin:0;font-size:.95rem;font-weight:700;color:var(--ink)}.badge-step{display:inline-flex;align-items:center;padding:.2rem .55rem;border-radius:6px;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.badge-step.forecast{background:var(--accent-light);border:1px solid var(--accent-border);color:var(--accent)}.badge-step.operations{background:#eef3f4;border:1px solid #c3d2d7;color:var(--slate)}.session-pills-row{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;margin-top:.65rem;padding-top:.65rem;border-top:1px solid var(--line)}.session-pill{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .65rem;border-radius:999px;font-size:.78rem;font-weight:600;background:var(--paper);border:1px solid var(--line);color:var(--ink)}.session-pill.highlight{background:var(--accent-light);border-color:var(--accent-border);color:var(--accent);font-weight:700}.session-pill.recorded{background:var(--success-bg);border-color:var(--success-border);color:var(--success)}.session-pill.pending{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning)}.pillar-panel{position:relative}.pillar-header{margin-bottom:.25rem}.pillar-header h2{margin:0}.pillar-badge{gap:.35rem;padding:.22rem .65rem;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em}.home-welcome-card{padding:1.25rem 1.5rem;margin-bottom:1.5rem;border:1px solid var(--line);border-radius:12px;background:white;box-shadow:0 1px 2px rgba(15,23,42,.04)}.home-welcome-card h2{margin:.25rem 0 .35rem;font-size:1.35rem;font-weight:800;color:var(--ink)}.portal-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-gap:1.15rem;gap:1.15rem}.portal-card{display:flex;flex-direction:column;justify-content:space-between;padding:1.25rem 1.35rem;border:1px solid var(--line);border-radius:12px;background:white;text-decoration:none;color:var(--ink);transition:all .15s ease;box-shadow:0 1px 2px rgba(15,23,42,.04)}.portal-card:hover{border-color:var(--accent);box-shadow:0 4px 14px rgba(17,94,89,.1);transform:translateY(-2px)}.portal-card-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.75rem}.portal-card h3{margin:0 0 .45rem;font-size:1.15rem;font-weight:700;color:var(--ink)}.portal-card p{margin:0 0 1.25rem;font-size:.88rem;color:var(--muted);line-height:1.5;flex-grow:1}.portal-card-footer{display:flex;align-items:center;justify-content:space-between;padding-top:.75rem;border-top:1px solid var(--line)}.portal-card-action{font-size:.88rem;font-weight:700;color:var(--accent);display:inline-flex;align-items:center;gap:.35rem;transition:gap .15s ease}.portal-card:hover .portal-card-action{gap:.6rem}.menu-mgmt-nav{justify-content:space-between;flex-wrap:wrap;gap:.75rem 1rem;margin-bottom:1.25rem;padding:.45rem .65rem;background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:0 1px 3px rgba(15,23,42,.04)}.menu-mgmt-nav,.menu-mgmt-tabs{display:flex;align-items:center}.menu-mgmt-tabs{gap:.35rem;overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}.menu-mgmt-tab{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem .95rem;border-radius:8px;font-size:.88rem;font-weight:600;text-decoration:none;color:var(--muted);border:1px solid transparent;background:transparent;white-space:nowrap;transition:all .15s ease}.menu-mgmt-tab:hover{color:var(--ink);background:#eef3f4}.menu-mgmt-tab.active{color:var(--accent);background:var(--accent-light);border-color:var(--accent-border);font-weight:700;box-shadow:0 1px 2px rgba(17,94,89,.08)}.menu-mgmt-actions{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.menu-mgmt-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .8rem;font-size:.82rem;font-weight:600;border-radius:7px;border:1px solid var(--line);background:white;color:var(--ink);cursor:pointer;text-decoration:none;transition:all .15s ease;line-height:1.2}.menu-mgmt-btn:hover:not(:disabled){background:#f8f9fa;border-color:#c3d2d7;color:var(--accent)}.menu-mgmt-btn:disabled{opacity:.6;cursor:not-allowed}.menu-mgmt-btn-link{color:var(--accent)}.menu-mgmt-badge{display:inline-flex;align-items:center;font-size:.78rem;font-weight:600;padding:.25rem .6rem;border-radius:6px;background:var(--success-bg);color:var(--success);border:1px solid var(--success-border)}.menu-catalog-hint{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.5rem;padding:.5rem .75rem;background:#f8f9fa;border:1px dashed var(--line);border-radius:8px;font-size:.82rem;margin-top:.5rem}.menu-catalog-link{color:var(--accent);font-weight:600;text-decoration:none;display:inline-flex;align-items:center;gap:.25rem}.menu-catalog-link:hover{text-decoration:underline}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.spin-icon{display:inline-block;animation:spin .8s linear infinite}.observation-session-selector{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-gap:1.25rem;gap:1.25rem;align-items:start;margin-bottom:1.25rem;padding:1.25rem 1.5rem;background:var(--card);border:1px solid var(--line);border-radius:14px;box-shadow:0 1px 3px rgba(15,23,42,.04)}.observation-date-col,.observation-session-col{display:flex;flex-direction:column;gap:.45rem}.session-selection-badge{display:inline-flex;align-items:center;gap:.35rem;font-size:.82rem;font-weight:600;color:var(--accent);background:var(--accent-light);border:1px solid var(--accent-border);padding:.3rem .65rem;border-radius:6px;margin-top:.25rem;width:-moz-fit-content;width:fit-content}.observation-table-card{margin-top:1.25rem;padding:1.25rem 1.5rem;background:var(--card);border:1px solid var(--line);border-radius:14px;box-shadow:0 1px 3px rgba(15,23,42,.04)}.observation-table-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem;flex-wrap:wrap}.observation-table-title-group{display:flex;align-items:baseline;gap:.65rem;flex-wrap:wrap}.blinded-chip{display:inline-flex;align-items:center;gap:.4rem;font-size:.78rem;font-weight:600;color:var(--warning);background:var(--warning-bg);border:1px solid var(--warning-border);padding:.35rem .75rem;border-radius:8px}.blinded-icon{font-size:.9rem}.observation-table-scroll-container{overflow-x:auto;max-width:100%;border:1px solid var(--line);border-radius:10px;background:white;-webkit-overflow-scrolling:touch}.observation-matrix-table{width:100%;border-collapse:separate;border-spacing:0;min-width:660px;font-size:.88rem}.observation-matrix-table thead th{background:#f8f9fa;color:var(--ink);font-weight:700;font-size:.82rem;padding:.75rem .85rem;border-bottom:1px solid var(--line);border-right:1px solid var(--line);text-align:center;white-space:nowrap}.observation-matrix-table tbody td:last-child,.observation-matrix-table thead th:last-child{border-right:none}.observation-matrix-table tbody td{padding:.75rem .85rem;border-bottom:1px solid var(--line);border-right:1px solid var(--line);vertical-align:middle;text-align:center}.observation-matrix-table tbody tr:last-child td{border-bottom:none}.observation-matrix-table tbody tr:hover td{background:#fafafa}.observation-matrix-table .sticky-col{position:-webkit-sticky;position:sticky;left:0;z-index:2;background:white;text-align:left;min-width:200px;max-width:280px;box-shadow:2px 0 4px rgba(15,23,42,.04)}.observation-matrix-table thead th.sticky-col{background:#f8f9fa;z-index:3}.observation-matrix-table tbody tr:hover td.sticky-col{background:#f8f9fa}.component-tag{display:inline-block;font-size:.72rem;font-weight:700;color:var(--accent);background:var(--accent-light);padding:.15rem .45rem;border-radius:4px;margin-bottom:.25rem;border:1px solid var(--accent-border)}.dish-name{display:block;font-size:.92rem;color:var(--ink);font-weight:700;line-height:1.3}.col-stat{min-width:90px}.col-observer{min-width:95px}.obs-label{display:block;font-weight:700}.obs-name{display:block;font-size:.74rem;color:var(--muted);font-weight:500;margin-top:.15rem}.stat-highlight{font-size:1.05rem;font-weight:800;color:var(--accent);font-family:var(--font-body)}.stat-secondary{font-size:.92rem;font-weight:600;color:var(--muted);font-family:var(--font-body)}.count-pill{display:inline-flex;align-items:center;gap:.25rem;font-weight:700;font-size:.88rem;color:var(--ink)}.na-tag{font-size:.75rem;color:var(--muted);font-weight:500}.cell-muted{color:var(--muted);font-weight:600;font-size:1rem}.cell-missing{color:#667787;font-size:1.1rem;font-weight:500}.cell-blinded{font-size:.95rem;opacity:.6}.badge-rating-score{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:8px;font-weight:800;font-size:.95rem;box-shadow:0 1px 2px rgba(0,0,0,.05);transition:transform .1s ease}.badge-rating-score.score-1{background:#fee2e2;color:#991b1b;border:1px solid #fecaca}.badge-rating-score.score-2{background:#ffedd5;color:#9a3412;border:1px solid #fed7aa}.badge-rating-score.score-3{background:#fef3c7;color:#92400e;border:1px solid #fde68a}.badge-rating-score.score-4{background:#d8eee7;color:#0e2c3d;border:1px solid #b8ded4}.badge-rating-score.score-5{background:#edf7f4;color:#205c3b;border:1px solid #b8ded4}.badge-rating-na{display:inline-flex;align-items:center;justify-content:center;padding:0 .5rem;height:34px;border-radius:8px;font-weight:700;font-size:.8rem;background:#eef3f4;color:#4a5568;border:1px solid #c3d2d7}.overall-eval-card{margin-top:1.25rem;padding:1.25rem 1.5rem;border:1px solid var(--line);border-radius:14px;background:var(--card);box-shadow:0 1px 3px rgba(15,23,42,.04)}.overall-eval-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem;padding-bottom:.65rem;border-bottom:1px solid var(--line);flex-wrap:wrap}.overall-eval-header h4{margin:0;font-size:1.05rem;font-weight:700;color:var(--ink)}.overall-eval-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:1rem;gap:1rem}.overall-eval-metric{padding:1rem 1.15rem;background:var(--paper);border:1px solid var(--line);border-radius:10px;display:flex;flex-direction:column;gap:.35rem}.overall-eval-metric.highlight{background:var(--accent-light);border-color:var(--accent-border)}.overall-eval-metric .metric-label{font-size:.78rem;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.03em}.overall-eval-metric.highlight .metric-label{color:var(--accent)}.overall-eval-metric .metric-value{font-size:1.35rem;font-weight:800;color:var(--ink);letter-spacing:-.02em}.overall-eval-metric.highlight .metric-value{color:var(--accent)}.date-picker-action-wrap:focus-within .date-picker-action-btn{outline:2px solid var(--accent);outline-offset:2px;border-color:var(--accent)}.chip-btn:focus-visible,.date-display-btn:focus-visible,.menu-mgmt-btn:focus-visible,.menu-mgmt-tab:focus-visible,.rating-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.menu-mgmt-btn-accent{background:var(--accent-light);color:var(--accent);border-color:var(--accent-border);font-weight:600}.menu-mgmt-btn-accent:hover:not(:disabled){background:var(--accent);color:white;border-color:var(--accent)}.editor-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap}.editor-title-wrap{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.adu-fetch-trigger-btn{background:white;color:var(--accent);border:1.5px solid var(--accent);border-radius:8px;font-weight:600;padding:.45rem .85rem;font-size:.84rem;display:inline-flex;align-items:center;gap:.4rem;cursor:pointer;transition:all .15s ease}.adu-fetch-trigger-btn:hover:not(:disabled){background:var(--accent-light);border-color:var(--accent-hover);color:var(--accent-hover)}.editor-toolbar{justify-content:space-between;padding-bottom:.5rem;border-bottom:1px solid var(--line);margin-bottom:.75rem}.editor-toolbar,.editor-toolbar-meta{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.adu-fetch-compact-btn{background:var(--accent-light);color:var(--accent);border:1px solid var(--accent-border);border-radius:6px;font-size:.82rem;font-weight:600;padding:.35rem .75rem;display:inline-flex;align-items:center;gap:.35rem;cursor:pointer;transition:all .15s ease}.adu-fetch-compact-btn:hover:not(:disabled){background:var(--accent);color:white;border-color:var(--accent)}.adu-modal-backdrop{position:fixed;inset:0;background:rgba(15,23,42,.55);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:1.5rem 1rem;overflow-y:auto}.adu-modal-dialog{background:var(--card);border:1px solid var(--line);border-radius:12px;width:min(1080px,96vw);max-height:calc(100vh - 3rem);display:flex;flex-direction:column;box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04);overflow:hidden;animation:aduModalFadeIn .18s ease-out}@keyframes aduModalFadeIn{0%{opacity:0;transform:scale(.97) translateY(4px)}to{opacity:1;transform:scale(1) translateY(0)}}.adu-modal-header{padding:1.25rem 1.5rem;border-bottom:1px solid var(--line);display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;background:var(--paper)}.adu-modal-title{font-size:1.2rem;font-weight:800;color:var(--ink);margin:0;letter-spacing:-.02em}.adu-modal-subtitle{font-size:.85rem;color:var(--muted);margin:.25rem 0 0;line-height:1.4}.adu-modal-close{background:transparent;color:var(--muted);border:1px solid var(--line);border-radius:6px;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;font-size:1.1rem;padding:0;cursor:pointer;transition:all .15s ease}.adu-modal-close:hover:not(:disabled){background:#eef3f4;color:var(--ink);border-color:#c3d2d7}.adu-modal-body{padding:1.25rem 1.5rem;overflow-y:auto;display:flex;flex-direction:column;gap:1.15rem}.adu-backend-notice-box{background:#edf7f4;border:1px solid #b8ded4;border-left:4px solid var(--accent);border-radius:8px;padding:.85rem 1rem;display:flex;flex-direction:column;gap:.45rem}.adu-backend-notice-header{display:flex;align-items:center;gap:.45rem;color:var(--accent);font-size:.88rem}.adu-backend-notice-icon{font-size:.82rem;display:inline-flex;align-items:center;justify-content:center;width:1.2rem;height:1.2rem;border-radius:50%;background:var(--accent);color:white;font-weight:700;line-height:1}.adu-backend-notice-text{margin:0;font-size:.84rem;line-height:1.45;color:var(--body)}.adu-backend-notice-meta{display:flex;flex-wrap:wrap;gap:.85rem;font-size:.78rem;color:var(--muted);margin-top:.15rem;padding-top:.35rem;border-top:1px dashed #d8eee7}.adu-backend-notice-meta code{font-family:var(--font-body);background:white;padding:.1rem .3rem;border-radius:4px;border:1px solid #d8eee7;color:var(--ink)}.adu-session-bar{display:flex;gap:.75rem;align-items:flex-end;background:var(--paper);border:1px solid var(--line);padding:.75rem 1rem;border-radius:8px}.adu-session-select-wrap{display:flex;flex-direction:column;gap:.35rem;flex:1 1;min-width:240px}.adu-session-label{font-size:.78rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.adu-session-select{width:100%;padding:.55rem .75rem;border:1px solid var(--line);border-radius:6px;background:white;color:var(--ink);font:inherit;font-size:.88rem}.adu-session-select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-light)}.adu-refresh-btn{white-space:nowrap;padding:.55rem .85rem;font-size:.85rem;display:inline-flex;align-items:center;gap:.35rem}.adu-meta-chips{display:flex;flex-wrap:wrap;gap:.5rem;font-size:.82rem}.adu-meta-chip{background:#eef3f4;border:1px solid var(--line);border-radius:6px;padding:.3rem .6rem;color:var(--ink);display:inline-flex;align-items:center;gap:.3rem}.adu-source-link{color:var(--accent);text-decoration:underline;text-underline-offset:2px}.adu-status-box{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:2rem 1rem;background:var(--paper);border:1px dashed var(--line);border-radius:8px;color:var(--muted);font-size:.92rem}.adu-error-box{margin:0;padding:.75rem 1rem;border-radius:8px}.adu-dishes-section{display:flex;flex-direction:column;gap:.65rem}.adu-dishes-heading{font-size:.95rem;font-weight:700;color:var(--ink);margin:0}.adu-dishes-table{border:1px solid var(--line);border-radius:8px;overflow:hidden;background:white}.adu-table-head{padding:.75rem 1rem;background:var(--paper);font-size:.78rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;align-items:center}.adu-dish-row,.adu-table-head{display:grid;grid-template-columns:65px minmax(200px,1.2fr) minmax(270px,1.5fr) minmax(240px,1.3fr);border-bottom:1px solid var(--line);grid-gap:1rem;gap:1rem}.adu-dish-row{padding:.85rem 1rem;align-items:start;transition:background-color .15s ease}.adu-dish-row:last-child{border-bottom:none}.adu-dish-row:hover{background:#fbfcfe}.adu-row-duplicate{background:var(--danger-bg)}.adu-col-pos{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding-top:.2rem}.adu-component-label{font-size:.7rem;color:var(--muted);font-weight:600;text-align:center;line-height:1.1}.adu-col-source{display:flex;flex-direction:column;gap:.4rem;min-width:0}.adu-source-name{font-size:.95rem;font-weight:600;color:var(--ink);line-height:1.35;word-break:break-word}.adu-source-badge-wrap{display:flex;align-items:center;flex-wrap:wrap;gap:.35rem}.adu-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.22rem .55rem;border-radius:9999px;font-size:.76rem;font-weight:700;white-space:nowrap}.adu-badge-exact{background:var(--success-bg);color:var(--success);border:1px solid var(--success-border)}.adu-badge-new{background:#edf7f4;color:#205c3b;border:1px solid #b8ded4}.adu-badge-candidate{background:var(--warning-bg);color:var(--warning);border:1px solid var(--warning-border)}.adu-badge-unmatched{background:var(--danger-bg);color:var(--danger);border:1px solid var(--danger-border)}.adu-col-catalog,.adu-col-subgroup{display:flex;flex-direction:column;gap:.35rem;min-width:0}.adu-confirm-candidate-btn{font-size:.78rem;padding:.25rem .55rem;color:#205c3b;border-color:#205c3b;font-weight:600;display:inline-flex;align-items:center;gap:.35rem;background:#edf7f4;border-radius:6px;width:-moz-fit-content;width:fit-content;margin-bottom:.25rem}.adu-catalog-sublink{display:flex;justify-content:flex-end;padding-top:.15rem}.adu-catalog-sublink a{font-size:.74rem;color:var(--accent);text-decoration:underline}.adu-subgroup-meta{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap;padding-top:.15rem}.adu-component-pill{display:inline-flex;align-items:center;padding:.12rem .45rem;border-radius:9999px;background:#f8f9fa;color:#4a5568;border:1px solid #dce5e7;font-weight:500;font-size:.74rem}.adu-mobile-field-label{display:none}.adu-select{width:100%;padding:.5rem .65rem;border:1px solid var(--line);border-radius:6px;background:white;color:var(--ink);font:inherit;font-size:.86rem;transition:border-color .15s ease,box-shadow .15s ease}.adu-select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-light)}.adu-select-unselected{border-color:var(--warning);background:var(--warning-bg)}.adu-select-error{border-color:var(--danger);background:var(--danger-bg)}.adu-catalog-notice{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;font-size:.82rem;padding-top:.25rem}.adu-existing-card{background:var(--warning-bg);border:1px solid var(--warning-border);border-radius:8px;padding:1rem;display:flex;flex-direction:column;gap:.75rem}.adu-existing-card-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-wrap:wrap}.adu-existing-title-group{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.adu-diff-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:.85rem;gap:.85rem}.adu-diff-box{background:white;border:1px solid var(--line);border-radius:6px;padding:.75rem}.adu-diff-box-title{font-size:.78rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;display:block;margin-bottom:.5rem}.adu-diff-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem;font-size:.84rem}.adu-diff-list li{display:flex;align-items:center;gap:.4rem}.diff-badge{background:#eef3f4;color:var(--muted);font-size:.7rem;font-weight:700;padding:.15rem .35rem;border-radius:4px}.diff-name{color:var(--ink);font-weight:500}.adu-confirm-group{display:flex;flex-direction:column;gap:.65rem;background:var(--paper);border:1px solid var(--line);border-radius:8px;padding:.85rem 1rem}.adu-confirm-item{display:flex;align-items:flex-start;gap:.6rem;font-size:.86rem;color:var(--ink);cursor:pointer;line-height:1.4}.adu-confirm-item input[type=checkbox]{width:1.15rem;height:1.15rem;margin-top:.1rem;accent-color:var(--accent);cursor:pointer}.adu-validation-msg{font-size:.84rem;margin:0}.adu-modal-footer{padding:1rem 1.5rem;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:flex-end;gap:.75rem;background:var(--paper)}@media (max-width:860px){.adu-table-head{display:none}.adu-dish-row{display:flex;flex-direction:column;gap:.75rem;padding:1rem;border-bottom:2px solid var(--line);background:white}.adu-col-pos{flex-direction:row;justify-content:flex-start;align-items:center;gap:.5rem;padding-top:0}.adu-col-catalog,.adu-col-source,.adu-col-subgroup{width:100%}.adu-mobile-field-label{display:block;font-size:.74rem;font-weight:700;text-transform:uppercase;color:var(--muted);letter-spacing:.04em;margin-bottom:.25rem}.adu-diff-grid{grid-template-columns:1fr}.adu-session-bar{flex-direction:column;align-items:stretch}}.pillar-panel{transition:transform .15s ease,box-shadow .15s ease}.pillar-panel.forecast-card{background:#edf7f4;border:1px solid #b8ded4}.pillar-panel.operations-card{background:#f8f9fa;border:1px solid #c3d2d7}.pillar-panel.plate-waste-card{background:#f0f6f7;border:1px solid #c3dce1}.pillar-panel.observations-card{background:#faf5ff;border:1px solid #e9d5ff}.pillar-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;margin-bottom:.75rem;padding-bottom:.65rem;border-bottom:1px solid rgba(15,23,42,.08)}.pillar-title-group{display:flex;align-items:center;gap:.5rem}.pillar-step-tag{display:inline-flex;align-items:center;justify-content:center;width:1.65rem;height:1.65rem;border-radius:6px;background:var(--ink);color:white;font-size:.85rem;font-weight:800;flex-shrink:0}.pillar-header-badges{gap:.5rem;flex-wrap:wrap}.pillar-badge,.pillar-header-badges{display:inline-flex;align-items:center}.pillar-badge{padding:.25rem .65rem;border-radius:999px;font-size:.76rem;font-weight:700;letter-spacing:.02em}.pillar-badge.forecast{background:#d8eee7;color:#0e2c3d;border:1px solid #b8ded4}.pillar-badge.operations{background:#e3eff1;color:#0e2c3d;border:1px solid #c3dce1}.pillar-badge.plate-waste{background:#fef3c7;color:#92400e;border:1px solid #fde68a}.pillar-badge.observations{background:#ede9fe;color:#5b21b6;border:1px solid #ddd6fe}.status-pill.verified{background:#edf7f4;border:1px solid #b8ded4;color:#205c3b}.status-pill.rejected{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.status-pill.unrecorded{background:#eef3f4;border:1px solid #c3d2d7;color:#4a5568}.cafeteria-header-bar{display:flex;align-items:center;gap:.85rem;margin-bottom:1.25rem;padding:.85rem 1.25rem;background:white;border:1.5px solid var(--line);border-radius:12px;box-shadow:0 1px 3px rgba(15,23,42,.04);flex-wrap:wrap}.cafeteria-badge{padding:.3rem .7rem;border-radius:6px;background:var(--accent);color:white;font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;display:inline-flex;align-items:center;gap:.35rem}.cafeteria-name{margin:0;font-size:1.25rem;font-weight:800;color:var(--ink);letter-spacing:-.01em}.cafeteria-switch-hint{font-size:.82rem;color:var(--muted);margin-left:auto}.live-derived-preview{display:flex;align-items:center;gap:.65rem;margin-top:.65rem;padding:.75rem 1rem;border-radius:8px;background:#f0f6f7;border:1.5px solid #7dd3fc;font-size:.9rem;color:#0e2c3d;flex-wrap:wrap}.live-derived-label{font-weight:700}.live-derived-value{font-size:1.15rem;font-weight:800;color:#0e2c3d;font-family:var(--font-mono)}.audit-trail-disclosure{margin-top:1.5rem;border:1px solid var(--line);border-radius:12px;background:white;overflow:hidden;box-shadow:0 1px 3px rgba(15,23,42,.03)}.audit-trail-summary{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;background:var(--paper);border-bottom:1px solid transparent;transition:background .15s ease;gap:1rem;flex-wrap:wrap}.audit-trail-disclosure[open] .audit-trail-summary{border-bottom:1px solid var(--line)}.audit-trail-summary:hover{background:#eef3f4}.audit-trail-summary-text{display:flex;align-items:center;gap:.6rem}.audit-trail-summary-text h2{margin:0;font-size:1.05rem;font-weight:700;color:var(--ink)}.audit-trail-icon{font-size:1.15rem}.audit-trail-hint{font-size:.82rem;color:var(--muted)}.audit-trail-content{padding:1.25rem}.audit-trail-inline{margin-top:1rem;border:1px dashed var(--line);border-radius:8px;padding:.5rem .85rem;background:rgba(255,255,255,.7)}.audit-trail-inline-summary{cursor:pointer;font-size:.84rem;font-weight:600;color:var(--muted);-webkit-user-select:none;-moz-user-select:none;user-select:none;padding:.25rem 0}.audit-trail-inline-summary:hover{color:var(--ink)}.overall-waste-rating-card{border-color:#ddd6fe!important;background:#faf5ff!important}.overall-backend-notice-badge{margin:.35rem 0 .75rem}.overall-backend-notice-badge .badge-chip{font-size:.76rem;padding:.3rem .65rem;border-radius:6px;background:#f5f3ff;color:#6d28d9;border:1px solid #ddd6fe;font-weight:600;display:inline-block}.home-facility-banner{display:flex;align-items:center;gap:1.15rem;padding:1.15rem 1.35rem;margin-bottom:1.25rem;background:linear-gradient(135deg,#edf7f4,#edf7f4);border:1.5px solid #b8ded4;border-radius:14px;box-shadow:0 1px 3px rgba(15,23,42,.04)}.facility-banner-badge{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:12px;background:white;border:1px solid #b8ded4;font-size:1.6rem;flex-shrink:0;box-shadow:0 1px 2px rgba(17,94,89,.08)}.facility-banner-text{display:flex;flex-direction:column;gap:.2rem}.facility-banner-eyebrow{font-size:.76rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#205c3b}.facility-banner-title{margin:0;font-size:1.25rem;font-weight:800;color:#0e2c3d;letter-spacing:-.01em}.facility-banner-subtitle{margin:0;font-size:.85rem;color:#4a5568}.welcome-meta-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.35rem}.welcome-role-tag{font-size:.78rem;font-weight:700;padding:.25rem .65rem;border-radius:9999px;background:#eef3f4;color:#0e2c3d;border:1px solid #c3d2d7}.portal-card-link{text-decoration:none;color:inherit;display:block}.portal-card-link.is-locked,.portal-card-link.is-pending{cursor:default}.portal-card-inner{display:flex;flex-direction:column;justify-content:space-between;height:100%;min-height:200px;padding:1.25rem 1.35rem;border:1px solid var(--line);border-radius:14px;transition:all .2s cubic-bezier(.16,1,.3,1);box-shadow:0 1px 3px rgba(15,23,42,.04);box-sizing:border-box}.portal-card-link:not(.is-locked):not(.is-pending):hover .portal-card-inner{border-color:var(--accent);box-shadow:0 6px 18px rgba(17,94,89,.12);transform:translateY(-2px)}.portal-card-disabled{opacity:.68}.portal-icon-wrap{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:10px;background:white;border:1px solid rgba(0,0,0,.06);font-size:1.3rem;box-shadow:0 1px 2px rgba(0,0,0,.04)}.portal-card-body{margin:.9rem 0;flex-grow:1}.portal-card-title{margin:0 0 .4rem;font-size:1.12rem;font-weight:700;color:var(--ink)}.portal-card-description{margin:0;font-size:.86rem;color:var(--muted);line-height:1.48}.portal-status-badge{font-size:.8rem;font-weight:700;padding:.3rem .65rem;border-radius:6px;display:inline-flex;align-items:center;gap:.3rem}.portal-status-badge.pending{background:#fff7ed;color:#9a3412;border:1px solid #fed7aa}.portal-status-badge.locked{background:#eef3f4;color:#4a5568;border:1px solid #dce5e7}.cockpit-page{max-width:1240px}.cockpit-hero-card{display:flex;align-items:flex-start;justify-content:space-between;gap:1.5rem;padding:1.5rem 1.75rem;margin-bottom:1.25rem;background:white;border:1px solid var(--line);border-radius:14px;box-shadow:0 1px 3px rgba(15,23,42,.04);flex-wrap:wrap}.cockpit-hero-left{display:flex;flex-direction:column;gap:.35rem}.back-link{font-size:.84rem;font-weight:600;color:var(--muted);text-decoration:none;margin-bottom:.25rem;display:inline-flex;align-items:center;transition:color .15s ease}.back-link:hover{color:var(--accent)}.cockpit-badge-row{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.cockpit-pill{color:#205c3b;background:#d8eee7;border:1px solid #b8ded4;border-radius:9999px}.cockpit-facility-pill,.cockpit-pill{font-size:.78rem;font-weight:700;padding:.25rem .65rem}.cockpit-facility-pill{color:#0e2c3d;background:#eef3f4;border:1px solid #c3d2d7;border-radius:9999px}.cockpit-title{margin:.2rem 0 0;font-size:1.65rem;font-weight:800;color:var(--ink);letter-spacing:-.02em}.cockpit-subtitle{margin:0;font-size:.92rem;color:var(--muted);max-width:640px}.refresh-btn{font-weight:700;padding:.55rem .95rem}.cockpit-filter-panel{display:flex;align-items:flex-end;gap:1.25rem;padding:1.15rem 1.35rem;margin-bottom:1.5rem;background:#f8f9fa;border:1px solid var(--line);border-radius:12px;flex-wrap:wrap}.filter-group{display:flex;flex-direction:column;gap:.35rem}.filter-group label,.filter-label{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.select-input{padding:0 .85rem;font-size:.88rem;font-weight:600;color:var(--ink);min-width:200px}.button-segmented,.select-input{height:40px;border:1px solid var(--line);border-radius:8px;background:white}.button-segmented{display:inline-flex;overflow:hidden}.segmented-btn{border:0;border-radius:0;background:transparent;color:var(--muted);padding:0 .85rem;font-size:.84rem;font-weight:700;cursor:pointer;transition:all .15s ease;white-space:nowrap;border-right:1px solid var(--line)}.segmented-btn:last-child{border-right:none}.segmented-btn:hover:not(.active){background:#eef3f4;color:var(--ink)}.segmented-btn.active{background:var(--accent);color:white}.date-pickers-group{display:flex;flex-direction:row;align-items:flex-end;gap:.75rem}.date-field{display:flex;flex-direction:column;gap:.35rem}.cockpit-date-picker-wrap{position:relative;display:inline-flex}.cockpit-date-display-btn{height:40px;padding:0 .85rem;border:1px solid var(--line);border-radius:8px;background:white;color:var(--ink);font-size:.86rem;font-weight:700;cursor:pointer;white-space:nowrap;transition:all .15s ease}.cockpit-date-display-btn:hover{border-color:var(--accent);background:var(--accent-light);color:var(--accent)}.cockpit-kpis-section{margin-bottom:1.5rem}.kpis-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.85rem;flex-wrap:wrap}.section-subtitle{margin:0;font-size:1.18rem;font-weight:800;color:var(--ink);letter-spacing:-.01em}.kpis-range-badge{font-size:.82rem;font-weight:700;color:var(--muted);background:white;padding:.3rem .65rem;border-radius:8px;border:1px solid var(--line)}.kpis-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));grid-gap:1rem;gap:1rem}.kpi-card{display:flex;flex-direction:column;justify-content:space-between;padding:1.15rem 1.25rem;background:white;border:1px solid var(--line);border-radius:12px;box-shadow:0 1px 3px rgba(15,23,42,.03);transition:border-color .15s ease}.kpi-card:hover{border-color:#c3d2d7}.kpi-card.kpi-highlight-violet{background:linear-gradient(135deg,#faf5ff,#f5f3ff);border-color:#ddd6fe}.kpi-label-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.kpi-label{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}.scientific-pill{font-size:.7rem;font-weight:800;color:#6d28d9;background:#ede9fe;padding:.15rem .45rem;border-radius:4px;border:1px solid #ddd6fe}.kpi-value-row{display:flex;align-items:baseline;gap:.45rem;margin:.65rem 0 .35rem}.kpi-value{font-family:var(--font-mono);font-size:1.75rem;font-weight:800;color:var(--ink);line-height:1.1}.kpi-value.highlight-value{color:#6d28d9}.kpi-unit{font-size:.85rem;font-weight:600;color:var(--muted)}.kpi-subtext{font-size:.78rem;color:#4a5568;margin-top:.2rem}.cockpit-notice-banner{display:flex;align-items:flex-start;gap:.85rem;padding:1rem 1.25rem;margin-bottom:1.75rem;background:#f8f9fa;border:1px solid #dce5e7;border-left:4px solid var(--accent);border-radius:10px}.notice-icon{font-size:1.25rem;line-height:1.2}.notice-content strong{display:block;font-size:.86rem;color:var(--ink);margin-bottom:.2rem}.notice-content p{margin:0;font-size:.82rem;color:var(--muted);line-height:1.45}.cockpit-charts-section{margin-bottom:2rem}.cockpit-charts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(520px,1fr));grid-gap:1.5rem;gap:1.5rem;margin-top:1rem}@media (max-width:640px){.cockpit-charts-grid{grid-template-columns:1fr}}.chart-card{padding:1.35rem 1.5rem;background:white;border:1px solid var(--line);border-radius:14px;box-shadow:0 1px 3px rgba(15,23,42,.04);display:flex;flex-direction:column}.chart-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.25rem;padding-bottom:.75rem;border-bottom:1px solid var(--line)}.chart-title{margin:0 0 .25rem;font-size:1.08rem;font-weight:800;color:var(--ink)}.chart-subtitle{margin:0;font-size:.82rem;color:var(--muted);line-height:1.4}.chart-granularity-pill{font-size:.72rem;font-weight:800;color:#0e2c3d;background:#eef3f4;border:1px solid #c3d2d7;padding:.2rem .55rem;border-radius:6px;letter-spacing:.04em;white-space:nowrap}.cockpit-chart-container{position:relative;width:100%}.cockpit-svg-chart{width:100%;height:auto;display:block;overflow:visible}.chart-axis-tick{font-family:var(--font-mono);font-size:11px;fill:#4a5568;font-weight:500}.chart-axis-unit-label{font-size:11px;font-weight:700;fill:#4a5568;letter-spacing:.02em}.chart-ref-label{font-weight:700;fill:#00a88f}.chart-ref-label,.chart-x-tick{font-family:var(--font-mono);font-size:10px}.chart-x-tick{fill:#4a5568;font-weight:600;transition:fill .15s ease}.chart-x-tick.active{fill:var(--accent);font-weight:800}.chart-empty-msg{padding:2.5rem 1rem;text-align:center;color:var(--muted);font-size:.88rem;font-style:italic}.chart-tooltip-panel{margin-top:.85rem;padding:.75rem 1rem;background:#f8f9fa;border:1px solid #dce5e7;border-radius:10px;animation:fadeIn .15s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}.tooltip-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.45rem;padding-bottom:.35rem;border-bottom:1px solid #dce5e7}.tooltip-header strong{font-size:.86rem;color:var(--ink)}.tooltip-date{font-size:.78rem;font-family:var(--font-mono);color:var(--muted)}.tooltip-body{display:flex;flex-direction:column;gap:.25rem}.tooltip-metric{display:flex;align-items:center;justify-content:space-between;font-size:.82rem;color:var(--ink)}.tooltip-metric.highlight{font-weight:700;font-size:.88rem}.tooltip-metric.warning{color:#b45309}.tooltip-metric strong{font-family:var(--font-mono)}.tooltip-formula-hint{font-size:.75rem;color:#4a5568;font-style:italic;margin-top:.2rem}.tooltip-empty{margin:0;font-size:.82rem;color:#667787;font-style:italic}.component-ratings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:1rem;gap:1rem}.component-rating-card{padding:1rem 1.15rem;border:1px solid #dce5e7;border-radius:12px;background:#f8f9fa;display:flex;flex-direction:column;gap:.75rem}.component-card-top{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.component-role-pill{font-size:.78rem;font-weight:800;color:var(--ink)}.observation-count-pill{font-size:.72rem;font-weight:700;font-family:var(--font-mono);color:var(--muted);background:white;padding:.15rem .45rem;border-radius:4px;border:1px solid var(--line)}.component-score-display{display:flex;align-items:baseline;gap:.5rem}.mean-score-num{font-family:var(--font-mono);font-size:1.85rem;font-weight:800;line-height:1}.score-desc-wrap{display:flex;flex-direction:column;gap:.2rem}.score-scale-hint{font-size:.75rem;color:var(--muted)}.score-eval-tag{font-size:.7rem;font-weight:800;padding:.15rem .45rem;border-radius:4px;white-space:nowrap}.rating-bar-track{height:6px;background:#dce5e7;border-radius:9999px;overflow:hidden}.rating-bar-fill{height:100%;border-radius:9999px;transition:width .3s ease}.rating-dist-row{display:flex;align-items:center;gap:.45rem;font-size:.75rem}.dist-star-col{width:26px;font-family:var(--font-mono);font-weight:700;color:var(--muted)}.dist-bar-track{flex-grow:1;height:5px;background:#dce5e7;border-radius:9999px;overflow:hidden}.dist-bar-fill{height:100%;background:var(--accent);border-radius:9999px}.dist-count-col{width:20px;text-align:right;font-family:var(--font-mono);color:var(--muted);font-size:.72rem}.na-dist-pill{font-size:.74rem;color:var(--muted);background:white;padding:.25rem .5rem;border-radius:6px;border:1px solid var(--line);text-align:center}.component-scientific-caution{font-size:.74rem;color:#667787;font-style:italic;margin-top:.25rem}.cockpit-backend-notice{display:flex;align-items:flex-start;gap:1rem;padding:1.15rem 1.35rem;margin-top:1.5rem;background:white;border:1.5px dashed #c3d2d7;border-radius:12px}.backend-notice-icon{font-size:1.35rem;line-height:1.2}.backend-notice-text{display:flex;flex-direction:column;gap:.3rem}.backend-notice-title{margin:0;font-size:.92rem;font-weight:800;color:var(--ink)}.backend-notice-desc{margin:0;font-size:.84rem;color:var(--muted);line-height:1.45}.backend-notice-code{display:inline-block;margin-top:.35rem;padding:.45rem .75rem;background:#eef3f4;border:1px solid #dce5e7;border-radius:6px;font-family:var(--font-mono);font-size:.78rem;color:#0e2c3d;word-break:break-all}.ml-predictions-page{max-width:1240px}.ml-hero-card{display:flex;align-items:flex-start;justify-content:space-between;gap:1.5rem;padding:1.5rem 1.75rem;margin-bottom:1.25rem;background:white;border:1px solid var(--line);border-radius:14px;box-shadow:0 1px 3px rgba(15,23,42,.04);flex-wrap:wrap}.ml-hero-left{display:flex;flex-direction:column;gap:.35rem}.ml-badge-row{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.ml-pill{color:#6d28d9;background:#ede9fe;border:1px solid #ddd6fe;border-radius:9999px}.ml-facility-pill,.ml-pill{font-size:.78rem;font-weight:700;padding:.25rem .65rem}.ml-facility-pill{color:#0e2c3d;background:#eef3f4;border:1px solid #c3d2d7;border-radius:9999px}.ml-title{margin:.2rem 0 0;font-size:1.65rem;font-weight:800;color:var(--ink);letter-spacing:-.02em}.ml-subtitle{margin:0;font-size:.92rem;color:var(--muted);max-width:680px}.target-variable-banner{display:flex;align-items:flex-start;gap:1rem;padding:1.15rem 1.35rem;margin-bottom:1.25rem;background:linear-gradient(135deg,#edf7f4,#ede9fe);border:1.5px solid #b8ded4;border-left:5px solid var(--accent);border-radius:12px;box-shadow:0 1px 3px rgba(15,23,42,.04)}.target-variable-icon{font-size:1.65rem;line-height:1.1;flex-shrink:0}.target-variable-title{margin:0 0 .3rem;font-size:1.05rem;font-weight:800;color:#0e2c3d}.target-variable-desc{margin:0;font-size:.88rem;color:#0e2c3d;line-height:1.48}.ml-controls-panel{display:flex;align-items:flex-end;gap:1.25rem;padding:1.15rem 1.35rem;margin-bottom:1.5rem;background:#f8f9fa;border:1px solid var(--line);border-radius:12px;flex-wrap:wrap}.ml-date-picker-wrap{position:relative;display:inline-flex}.ml-date-display-btn{height:40px;padding:0 .95rem;border:1px solid var(--line);border-radius:8px;background:white;color:var(--ink);font-size:.88rem;font-weight:700;cursor:pointer;white-space:nowrap;transition:all .15s ease}.ml-date-display-btn:hover{border-color:var(--accent);background:var(--accent-light);color:var(--accent)}.ml-status-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));grid-gap:1.25rem;gap:1.25rem;margin-bottom:1.75rem}.ml-status-card{padding:1.35rem 1.5rem;background:white;border:1px solid var(--line);border-radius:14px;box-shadow:0 1px 3px rgba(15,23,42,.04);flex-direction:column}.ml-status-card,.ml-status-header{display:flex;justify-content:space-between}.ml-status-header{align-items:center;gap:.75rem;margin-bottom:1rem}.card-heading{margin:0;font-size:1.1rem;font-weight:800;color:var(--ink)}.status-badge-pill{font-size:.78rem;font-weight:800;padding:.3rem .65rem;border-radius:6px;white-space:nowrap}.status-badge-pill.insufficient_data{background:#fef3c7;color:#92400e;border:1px solid #fde68a}.status-badge-pill.ready_for_training{background:#d8eee7;color:#205c3b;border:1px solid #b8ded4}.status-badge-pill.collecting_data{background:#e3eff1;color:#0e2c3d;border:1px solid #c3dce1}.status-meta-row{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem;font-size:.88rem}.status-meta-label{color:var(--muted);font-weight:600}.status-meta-value{font-family:var(--font-mono);color:var(--ink)}.status-notice-box{display:flex;align-items:flex-start;gap:.6rem;padding:.75rem .95rem;background:#f8f9fa;border:1px solid #dce5e7;border-radius:8px}.status-notice-icon{font-size:1.1rem;line-height:1.2}.status-notice-text{margin:0;font-size:.84rem;color:#4a5568;line-height:1.45}.readiness-percentage-badge{font-family:var(--font-mono);font-size:.85rem;font-weight:800;color:#205c3b;background:#edf7f4;border:1px solid #b8ded4;padding:.25rem .6rem;border-radius:6px}.readiness-progress-wrap{width:100%;height:8px;background:#dce5e7;border-radius:9999px;overflow:hidden;margin-bottom:.85rem}.readiness-progress-fill{height:100%;background:linear-gradient(90deg,#0e2c3d,#00a88f);border-radius:9999px;transition:width .4s ease}.readiness-metrics-row{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;margin-bottom:.5rem}.readiness-metric{display:flex;align-items:baseline;gap:.45rem}.metric-number{font-family:var(--font-mono);font-size:1.35rem;font-weight:800;color:var(--ink)}.threshold-pill{font-size:.74rem;color:var(--muted);font-weight:600}.readiness-explanation{margin:0;font-size:.82rem;color:var(--muted);line-height:1.45}.ml-prediction-display-section{margin-bottom:2rem}.section-header-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.85rem;flex-wrap:wrap}.session-info-badge{font-size:.84rem;font-weight:700;color:var(--muted);background:white;padding:.35rem .75rem;border:1px solid var(--line);border-radius:8px}.prediction-main-card{padding:1.5rem 1.75rem;background:white;border:1px solid var(--line);border-radius:14px;box-shadow:0 1px 4px rgba(15,23,42,.04)}.prediction-target-column{margin-bottom:1.15rem;padding-bottom:.85rem;border-bottom:1px solid var(--line)}.target-label{font-size:1.15rem;font-weight:800;color:var(--ink);display:block}.target-sublabel{font-size:.82rem;color:#205c3b;font-weight:600}.prediction-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:1.25rem;gap:1.25rem}.pred-kpi-item{display:flex;flex-direction:column;justify-content:space-between;padding:1.15rem 1.25rem;background:#f8f9fa;border:1px solid #dce5e7;border-radius:12px}.pred-kpi-item.model-pred-item{background:linear-gradient(135deg,#edf7f4,#faf5ff);border-color:#b8ded4}.pred-kpi-label{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.pred-kpi-value-row{display:flex;align-items:baseline;gap:.45rem;margin:.5rem 0 .35rem}.pred-kpi-value{font-family:var(--font-mono);font-size:1.95rem;font-weight:800;color:var(--ink);line-height:1.1}.pred-kpi-unit{font-size:.85rem;font-weight:600;color:var(--muted)}.untrained-model-alert{margin-top:.35rem}.alert-badge{font-size:.78rem;font-weight:800;color:#9a3412;background:#fff7ed;border:1px solid #fed7aa;padding:.25rem .55rem;border-radius:6px;display:inline-block}.alert-subtext{margin:.4rem 0 0;font-size:.76rem;color:#4a5568;line-height:1.4}.pred-kpi-note{font-size:.78rem;color:#4a5568}.error-breakdown{display:flex;align-items:center;justify-content:space-between;font-size:.82rem;color:var(--ink);margin-top:.45rem}.error-breakdown strong{font-family:var(--font-mono)}.ml-feature-groups-section{margin-bottom:2rem}.section-header-col{margin-bottom:1rem}.section-desc{margin:.25rem 0 0;font-size:.86rem;color:var(--muted)}.feature-groups-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));grid-gap:1.15rem;gap:1.15rem;margin-bottom:1rem}.feature-card{padding:1.15rem 1.25rem;background:white;border:1px solid var(--line);border-radius:12px;box-shadow:0 1px 3px rgba(15,23,42,.03);display:flex;flex-direction:column;gap:.85rem}.feature-card-header{display:flex;align-items:center;gap:.5rem;padding-bottom:.65rem;border-bottom:1px solid var(--line)}.feature-card-icon{font-size:1.25rem}.feature-card-title{margin:0;font-size:.98rem;font-weight:700;color:var(--ink)}.feature-card-body{display:flex;flex-direction:column;gap:.45rem}.feature-prop-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem;font-size:.82rem;color:var(--ink)}.feature-prop-row span{color:var(--muted)}.feature-prop-row strong{font-size:.84rem}.feature-empty-note{margin:0;font-size:.82rem;color:#667787;font-style:italic;padding:.5rem 0}.safe-badge{font-size:.72rem;font-weight:800;color:#205c3b;background:#edf7f4;border:1px solid #b8ded4;padding:.15rem .45rem;border-radius:4px}.leakage-caution-box{display:flex;align-items:flex-start;gap:.85rem;padding:.95rem 1.25rem;background:#fffbeb;border:1px solid #fde68a;border-radius:10px}.caution-icon{font-size:1.25rem;line-height:1.2}.leakage-caution-box strong{display:block;font-size:.86rem;color:#92400e;margin-bottom:.2rem}.leakage-caution-box p{margin:0;font-size:.82rem;color:#78350f;line-height:1.45}.ml-benchmark-section{margin-bottom:2rem}.benchmark-table-wrapper{overflow-x:auto;border:1px solid var(--line);border-radius:12px;background:white;box-shadow:0 1px 3px rgba(15,23,42,.03)}.benchmark-table{width:100%;border-collapse:collapse;font-size:.86rem;text-align:left}.benchmark-table th{padding:.75rem 1rem;background:#f8f9fa;color:var(--muted);font-weight:700;font-size:.78rem;text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid var(--line);white-space:nowrap}.benchmark-table td{padding:.75rem 1rem;border-bottom:1px solid #eef3f4;vertical-align:middle}.family-tag{font-size:.78rem;color:#4a5568}.status-pill.uncomputed{color:#4a5568;background:#eef3f4;border:1px solid #c3d2d7;border-radius:4px}.split-tag,.status-pill.uncomputed{font-size:.74rem;font-weight:700;padding:.2rem .5rem}.split-tag{color:#205c3b;background:#edf7f4;border:1px solid #b8ded4;border-radius:4px}.metric-cell{font-family:var(--font-mono);font-weight:700;color:var(--ink);text-align:right}.benchmark-notice-box{display:flex;align-items:flex-start;gap:.65rem;margin-top:.75rem;padding:.85rem 1rem;background:#f8f9fa;border:1px solid #dce5e7;border-radius:8px}.benchmark-notice-box p{margin:0;font-size:.82rem;color:#4a5568;line-height:1.45}.ml-history-section{margin-bottom:2rem}.history-table-wrapper{overflow-x:auto;border:1px solid var(--line);border-radius:12px;background:white;box-shadow:0 1px 3px rgba(15,23,42,.03)}.history-table{width:100%;border-collapse:collapse;font-size:.86rem;text-align:left}.history-table th{padding:.75rem 1rem;background:#f8f9fa;color:var(--muted);font-weight:700;font-size:.78rem;text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid var(--line);white-space:nowrap}.history-table td{padding:.75rem 1rem;border-bottom:1px solid #eef3f4;vertical-align:middle}.future-row{background:#fafaf9}.future-tag{font-size:.7rem;font-weight:800;color:#d97706;background:#fef3c7;padding:.15rem .4rem;border-radius:4px;margin-left:.45rem}.ml-backend-contract-section{padding:1.35rem 1.5rem;background:white;border:1.5px dashed #c3d2d7;border-radius:14px;margin-top:2rem}.backend-contract-header{display:flex;align-items:flex-start;gap:.85rem;margin-bottom:1.25rem}.contract-icon{font-size:1.5rem;line-height:1.1}.contract-title{margin:0 0 .25rem;font-size:1.05rem;font-weight:800;color:var(--ink)}.contract-desc{margin:0;font-size:.85rem;color:var(--muted);line-height:1.45}.contract-endpoints-list{display:flex;flex-direction:column;gap:.85rem}.contract-endpoint-item{display:flex;flex-direction:column;gap:.35rem;padding:.85rem 1rem;background:#f8f9fa;border:1px solid #dce5e7;border-radius:8px}.http-method{display:inline-block;align-self:flex-start;font-family:var(--font-mono);font-size:.72rem;font-weight:800;padding:.15rem .45rem;border-radius:4px}.http-method.get{background:#dbeafe;color:#1e40af}.http-method.post{background:#dcfce7;color:#205c3b}.endpoint-path{font-family:var(--font-mono);font-size:.84rem;font-weight:700;color:var(--ink)}.endpoint-desc{margin:0;font-size:.8rem;color:#4a5568;line-height:1.45}.approvals-container{display:flex;flex-direction:column;gap:1.25rem}.approvals-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1.5rem;background:white;padding:1.25rem 1.5rem;border-radius:12px;border:1px solid var(--line);box-shadow:0 1px 3px rgba(15,23,42,.04);flex-wrap:wrap}.approvals-title-group h2{margin:0 0 .25rem;font-size:1.35rem;font-weight:800;color:var(--ink)}.approvals-controls{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.filter-pill-group{display:inline-flex;background:#eef3f4;padding:.25rem;border-radius:8px;gap:.25rem}.filter-pill{padding:.35rem .75rem;font-size:.82rem;font-weight:600;border-radius:6px;border:none;background:transparent;color:#4a5568;cursor:pointer;transition:all .15s ease}.filter-pill.active{background:white;color:var(--accent);box-shadow:0 1px 2px rgba(15,23,42,.06)}.kind-select{padding:.4rem .75rem;font-size:.85rem;border:1px solid var(--line);border-radius:8px;background:white;color:var(--ink);font-weight:600}.refresh-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.4rem .85rem;font-size:.85rem}.approvals-table-card{background:white;border:1px solid var(--line);border-radius:12px;overflow:hidden;box-shadow:0 1px 3px rgba(15,23,42,.04)}.approvals-table{width:100%;border-collapse:collapse;font-size:.875rem}.approvals-table th{background:#f8f9fa;padding:.85rem 1rem;font-weight:700;color:#4a5568;border-bottom:1px solid var(--line);text-align:left}.approvals-table td{padding:.9rem 1rem;border-bottom:1px solid #eef3f4;vertical-align:middle}.approval-row:hover td{background:#f8f9fa}.col-submitter strong{display:block;color:var(--ink);font-size:.9rem}.code-sub{font-family:var(--font-mono);font-size:.72rem;color:var(--muted)}.session-cell{display:flex;flex-direction:column;gap:.15rem}.session-meal-type{font-size:.78rem;font-weight:600;color:var(--accent)}.session-facility{font-size:.75rem}.diff-cell-box{display:flex;flex-direction:column;gap:.25rem;font-size:.82rem}.diff-row{display:flex;align-items:center;gap:.4rem}.diff-label{color:var(--muted);font-size:.75rem;min-width:90px}.diff-prev{color:#4a5568}.diff-prev,.diff-prop{font-family:var(--font-mono)}.highlight-prop{color:var(--accent);background:#edf7f4;padding:.1rem .35rem;border-radius:4px}.diff-grid-box{display:flex;flex-direction:column;gap:.25rem;font-size:.78rem}.diff-property-item{display:flex;align-items:center;gap:.35rem}.diff-property-item.is-changed{background:#edf7f4;padding:.15rem .35rem;border-radius:4px}.property-name{color:#4a5568;font-weight:600}.property-old{color:#667787;text-decoration:line-through}.property-new{color:var(--accent);font-family:var(--font-mono)}.reason-quote{margin:0;font-style:italic;font-size:.82rem;color:#4a5568;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.col-time .time-val{font-size:.78rem;color:#4a5568;white-space:nowrap}.decision-cell{display:flex;flex-direction:column;gap:.2rem}.decider-info,.decider-note{font-size:.72rem}.action-buttons-group{display:inline-flex;gap:.4rem;justify-content:flex-end}.approve-action-btn{padding:.35rem .75rem;font-size:.8rem;font-weight:700;border-radius:6px;background:#205c3b;color:white;border:none;cursor:pointer;transition:background .15s ease}.approve-action-btn:hover{background:#0e2c3d}.reject-action-btn{padding:.35rem .75rem;font-size:.8rem;font-weight:700;border-radius:6px;background:white;color:#dc2626;border:1px solid #fca5a5;cursor:pointer;transition:all .15s ease}.reject-action-btn:hover{background:#fef2f2;border-color:#f87171}.decision-modal{max-width:480px}.decision-confirm-prompt{font-size:.95rem;color:var(--ink);margin-bottom:.85rem;line-height:1.45}.request-summary-snippet{background:#f8f9fa;border:1px solid #dce5e7;border-radius:8px;padding:.75rem 1rem;font-size:.85rem;display:flex;flex-direction:column;gap:.35rem}.decision-textarea{width:100%;padding:.6rem .75rem;border:1px solid var(--line);border-radius:8px;font-size:.875rem;font-family:inherit;resize:vertical}.approve-submit-btn{background:#205c3b}.approve-submit-btn:hover{background:#0e2c3d}.reject-submit-btn{background:#dc2626;color:white;border:none}.reject-submit-btn:hover{background:#b91c1c}.researcher-permissions-card{margin-top:1rem;padding:1rem 1.25rem;background:#f8f9fa;border:1px solid var(--line);border-radius:10px}.researcher-permissions-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:.35rem}.permissions-bulk-actions{display:flex;gap:.4rem}.permissions-checkbox-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));grid-gap:.65rem;gap:.65rem;margin-top:.85rem}.permission-checkbox-label{display:flex;align-items:flex-start;gap:.6rem;padding:.55rem .75rem;background:white;border:1px solid #dce5e7;border-radius:6px;cursor:pointer;transition:all .15s ease}.permission-checkbox-label:hover{border-color:#c3d2d7;background:#eef3f4}.permission-checkbox-label input[type=checkbox]{margin-top:.2rem;cursor:pointer}.permission-text{display:flex;flex-direction:column;gap:.15rem;font-size:.82rem}.permission-text strong{color:var(--ink);line-height:1.25}.permission-count-pill{display:inline-block;padding:.1rem .45rem;border-radius:4px;background:#ede9fe;color:#6d28d9;font-size:.72rem;font-weight:700;margin-left:.35rem}.localized-date-picker{position:relative;width:100%;height:42px;border:1px solid var(--line);border-radius:8px;background:white;overflow:hidden}.localized-date-picker:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px rgba(17,94,89,.12)}.localized-date-value{height:100%;padding:0 .85rem;display:flex;align-items:center;justify-content:space-between;color:var(--ink);font-size:.92rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.localized-date-picker input[type=date]{position:absolute;inset:0;width:100%;height:100%;margin:0;padding:0;border:0;opacity:0;cursor:pointer}.localized-date-picker input[type=date]:focus{box-shadow:none}@media (max-width:640px){.localized-date-picker{height:42px}}.weather-priority-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));grid-gap:1.25rem;gap:1.25rem;margin-bottom:1.5rem}.weather-card-meta{display:flex;justify-content:space-between;align-items:center;font-size:.72rem;color:var(--muted);margin-top:.5rem;margin-bottom:.75rem;padding:.35rem .6rem;background:#f8f9fa;border-radius:6px;border:1px solid #dce5e7;flex-wrap:wrap;gap:.35rem;min-width:0}.weather-secondary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(95px,1fr));grid-gap:.5rem;gap:.5rem;font-size:.75rem;margin-bottom:1rem}.weather-secondary-metric{padding:.5rem .6rem;background:#f8f9fa;border-radius:6px;border:1px solid #dce5e7;min-width:0;overflow:hidden}.weather-secondary-metric span{font-size:.72rem;color:#4a5568}.weather-secondary-metric span,.weather-secondary-metric strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.weather-secondary-metric strong{font-size:.95rem}.weather-technical-disclosure{margin-top:1.5rem;background:#ffffff;border:1px solid #dce5e7;border-radius:8px;overflow:hidden}.weather-technical-summary{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;cursor:pointer;background:#f8f9fa;border-bottom:1px solid transparent;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:background .15s ease}.weather-technical-disclosure[open] .weather-technical-summary{border-bottom-color:#dce5e7;background:#eef3f4}.weather-technical-summary:hover{background:#eef3f4}.weather-technical-summary::-webkit-details-marker{display:none}.weather-two-card-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:1.5rem;gap:1.5rem;margin-bottom:1.5rem}@media (max-width:900px){.weather-two-card-grid{grid-template-columns:1fr}}.weather-view-switcher{display:inline-flex;background:#eef3f4;padding:.25rem;border-radius:8px;gap:.25rem;margin-bottom:1.25rem}.weather-view-btn{border:none;background:transparent;padding:.4rem .85rem;border-radius:6px;font-size:.84rem;font-weight:600;color:#4a5568;cursor:pointer;transition:all .15s ease;font-family:inherit}.weather-view-btn:hover{color:var(--ink)}.weather-view-btn.active{background:#ffffff;color:#205c3b;box-shadow:0 1px 3px rgba(0,0,0,.08)}.weather-history-cta{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;background:#f8f9fa;border:1px solid #dce5e7;border-radius:10px;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem;transition:all .15s ease}.weather-history-cta:hover{border-color:#c3d2d7;background:#eef3f4}.weather-history-filter-card{padding:1.25rem}.weather-history-filter-card,.weather-table-container{background:#ffffff;border:1px solid #dce5e7;border-radius:10px;margin-bottom:1.5rem}.weather-table-container{overflow:hidden}.weather-source-bar{display:flex;align-items:center;justify-content:center;gap:.85rem;padding:.65rem 1.25rem;background:#f8f9fa;border:1px solid #dce5e7;border-radius:8px;font-size:.82rem;color:#4a5568;margin-bottom:1.25rem;flex-wrap:wrap;text-align:center}.survey-shell{min-height:100vh;background:var(--bg);padding:1.25rem 1rem 3rem;align-items:center}.survey-container,.survey-shell{display:flex;flex-direction:column}.survey-container{width:100%;max-width:580px;gap:1.25rem}.survey-header-card{padding:1.25rem 1.5rem}.survey-dish-card,.survey-header-card{background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:0 1px 3px rgba(15,23,42,.04)}.survey-dish-card{padding:1.25rem;display:flex;flex-direction:column;gap:.85rem;transition:border-color .15s ease,opacity .15s ease}.survey-dish-card.not-consumed{opacity:.65;background:#fbfcfd;border-color:#c3d2d7}.survey-rating-row{display:grid;grid-template-columns:repeat(5,1fr);grid-gap:.5rem;gap:.5rem}.survey-rating-btn{height:48px;border:1px solid var(--line);border-radius:8px;background:#ffffff;color:#0e2c3d;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none;font-family:inherit}.survey-rating-btn:hover:not(:disabled){border-color:#205c3b;background:#edf7f4}.survey-rating-btn.active{border-color:#f59e0b;background:#fefce8;color:#b45309;box-shadow:0 0 0 2px rgba(245,158,11,.2)}.survey-rating-btn:disabled{cursor:not-allowed;opacity:.35}.survey-star-icon{font-size:1.25rem;line-height:1}.survey-rating-num{font-size:.72rem;font-weight:700;margin-top:2px}.survey-submit-btn{width:100%;height:48px;background:#205c3b;color:#ffffff;border:none;border-radius:8px;font-size:1rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:background .15s ease,opacity .15s ease;font-family:inherit}.survey-submit-btn:hover:not(:disabled){background:#0e2c3d}.survey-submit-btn:disabled{opacity:.45;cursor:not-allowed}.survey-not-consumed-label{display:inline-flex;align-items:center;gap:.5rem;font-size:.82rem;color:#4a5568;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;padding:.35rem .65rem;border-radius:6px;background:#f8f9fa;border:1px solid #dce5e7;width:-moz-fit-content;width:fit-content}.survey-not-consumed-label:hover{background:#eef3f4;color:#0e2c3d}.survey-not-consumed-label input[type=checkbox]{width:16px;height:16px;accent-color:#205c3b;cursor:pointer}.survey-prototype-banner{background:#fefce8;border:1px solid #fef08a;border-left:4px solid #eab308;border-radius:8px;padding:.75rem 1rem;font-size:.8rem;color:#854d0e;line-height:1.45;display:flex;align-items:flex-start;gap:.6rem}.survey-consent-card{background:#f8f9fa;border:1px solid #dce5e7;border-radius:12px;padding:1rem 1.25rem;display:flex;flex-direction:column;gap:.75rem;font-size:.82rem;color:#4a5568;line-height:1.5}.survey-consent-label{display:flex;align-items:flex-start;gap:.65rem;font-size:.86rem;font-weight:600;color:#0e2c3d;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.survey-consent-label input[type=checkbox]{width:18px;height:18px;margin-top:2px;accent-color:#205c3b;cursor:pointer;flex-shrink:0}.survey-meta-badge{display:inline-flex;align-items:center;gap:.35rem;font-size:.8rem;font-weight:600;padding:.3rem .65rem;border-radius:6px;background:#edf7f4;color:#205c3b;border:1px solid #b8ded4}.survey-section-title{font-size:.92rem;font-weight:700;color:#4a5568;text-transform:uppercase;letter-spacing:.04em;margin:.5rem 0 .25rem}.survey-rating-feedback{font-size:.82rem;font-weight:600;color:#d97706;text-align:right;min-height:1.2rem}.survey-overall-card{background:#f8f9fa;border:2px solid #c3d2d7;border-radius:12px;padding:1.25rem;display:flex;flex-direction:column;gap:.85rem;box-shadow:0 1px 3px rgba(15,23,42,.04)}.survey-message-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:2.25rem 1.5rem;text-align:center;display:flex;flex-direction:column;align-items:center;gap:1rem;box-shadow:0 4px 6px -1px rgba(15,23,42,.05)}.survey-message-icon{width:60px;height:60px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;margin-bottom:.25rem}.survey-message-icon.success{background:#edf7f4;color:#205c3b;border:2px solid #b8ded4}.survey-message-icon.info{background:#f0f6f7;color:#0e2c3d;border:2px solid #c3dce1}.survey-message-icon.warning{background:#fffbeb;color:#d97706;border:2px solid #fde68a}.survey-message-icon.error{background:#fef2f2;color:#dc2626;border:2px solid #fecaca}.survey-secondary-btn{padding:.55rem 1.15rem;background:#ffffff;color:#4a5568;border:1px solid #c3d2d7;border-radius:8px;font-size:.86rem;font-weight:600;cursor:pointer;transition:all .15s ease;font-family:inherit}.survey-secondary-btn:hover{background:#eef3f4;color:#0e2c3d;border-color:#667787}.survey-skeleton-bar{background:linear-gradient(90deg,#eef3f4 25%,#dce5e7 50%,#eef3f4 75%);background-size:200% 100%;animation:surveyShimmer 1.5s infinite;border-radius:6px}@keyframes surveyShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.operations-tab-wrapper .columns{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr)}.operations-tab-wrapper .columns>*,.operations-tab-wrapper .panel{min-width:0}.operations-tab-wrapper input,.operations-tab-wrapper select,.operations-tab-wrapper textarea{max-width:100%;min-width:0;box-sizing:border-box}.operations-tab-wrapper .metrics-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,120px),1fr))}.operations-tab-wrapper .pillar-header,.operations-tab-wrapper .summary-header{flex-wrap:wrap}.operations-tab-wrapper .summary-primary-value{overflow-wrap:anywhere}.home-date-selector{display:grid;grid-gap:.4rem;gap:.4rem;max-width:240px;margin-bottom:1.5rem}@media (max-width:1000px){.operations-tab-wrapper .columns{grid-template-columns:minmax(0,1fr)}}body{font-weight:400}h1{font-weight:800}h2{font-weight:700}.subpanel-title,h3,h4{font-weight:600}button,input,select,svg text,table,textarea{font-family:var(--font-body)}.primary-link,button{font-weight:400}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--brand-accent);outline-offset:3px}::selection{background:#b8ded4;color:var(--brand-primary)}.topbar-title-group{display:flex;align-items:center;gap:1.25rem;min-width:0}.header-page-context{min-width:0;border-left:1px solid var(--line);padding-left:1.25rem}.brand-link{display:inline-flex;flex:0 0 auto;text-decoration:none;border-radius:10px}.brand-logo{display:block;width:208px;height:auto;max-width:100%}.header-brand-logo{border-radius:8px}.nav-home{display:inline-flex;align-items:center;gap:.45rem;padding:.5rem .85rem;border:1px solid var(--line);border-radius:9px;text-decoration:none;background:white;font-size:.86rem;font-weight:600;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease}.nav-home,.nav-home:hover{color:var(--brand-primary)}.nav-home:hover{background:var(--accent-light);border-color:var(--brand-accent)}.nav-home[aria-current=page]{background:var(--brand-primary);border-color:var(--brand-primary);color:white;box-shadow:0 2px 5px #0e2c3d18}.nav-home svg{width:16px;height:16px;flex:none}.login-page .topbar{border:0;margin-bottom:.75rem;justify-content:flex-end}.login-page .panel{padding:2rem;border-top:3px solid var(--brand-secondary)}.login-brand{display:flex;justify-content:center;margin:.25rem 0 2rem}.login-brand .brand-logo{width:320px;border-radius:8px}.login-page .section-title{color:var(--brand-primary)}.login-page .form-stack input:focus{border-color:var(--brand-accent)}@media (max-width:640px){.topbar-title-group{width:100%;flex-wrap:wrap;gap:.75rem}.header-page-context{border-left:0;padding-left:0;width:100%}.header-brand-logo{width:184px}.login-page .panel{padding:1.5rem}}.login-page .panel>.actions{margin-top:.85rem}.home-date-control{position:relative;display:flex;align-items:center;min-height:44px;padding:.65rem .9rem;border:1px solid var(--line);border-radius:9px;background:white;color:var(--ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.home-date-control>span{display:flex;width:100%;align-items:center;justify-content:space-between;pointer-events:none}.home-date-control input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.home-date-control input::-webkit-calendar-picker-indicator{position:absolute;inset:0;width:100%;height:100%;cursor:pointer}.home-date-control:focus-within{outline:3px solid var(--brand-accent);outline-offset:2px}.home-date-selector{max-width:320px}.home-date-shortcuts{display:flex;flex-wrap:wrap;gap:.4rem}.home-date-shortcuts .chip-btn{flex:1 1;padding:.45rem .55rem}.audit-assessment-dialog{width:min(1000px,calc(100vw - 2rem));max-height:85vh;overflow:auto;background:var(--card);border-radius:14px;padding:1.5rem}.audit-assessment-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem;margin-bottom:1rem}.audit-assessment-dialog .table-wrap{margin-top:1rem}.ordered-pax-scroll{width:100%;overflow-x:auto}.audit-date-range{display:flex;flex-wrap:wrap;gap:.75rem}.audit-date-field{width:265px;display:grid;grid-gap:.35rem;gap:.35rem}.audit-date-field>label{font-size:.78rem;font-weight:600}.audit-date-field .home-date-control{min-height:38px;font-size:.8rem;padding:.45rem .65rem}.audit-date-field .chip-btn{font-size:.75rem}.audit-export-bar{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin:.75rem 0;font-size:.8rem;color:var(--muted)}.audit-sheet-scroll{max-height:65vh;overflow:auto}.audit-sheet{font-size:.76rem!important;line-height:1.2;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.audit-sheet td,.audit-sheet th{padding:.35rem .5rem!important;border:1px solid var(--line);vertical-align:middle}.audit-sheet th{position:-webkit-sticky;position:sticky;top:0;background:#eef3f4;z-index:2;white-space:nowrap;font-size:.7rem;text-transform:none}.audit-sheet td:first-child,.audit-sheet th:first-child{position:-webkit-sticky;position:sticky;left:0;z-index:1;background:inherit;min-width:165px}.audit-sheet th:first-child{z-index:3;background:#eef3f4}.audit-sheet tbody tr:nth-child(2n){background:#f8f9fa!important}.audit-sheet tbody tr:hover{background:#edf7f4!important}.audit-sheet td:nth-child(n+3):nth-child(-n+6){text-align:right}.audit-sheet .compact-btn{font-size:.7rem;padding:.25rem .4rem}.audit-sheet td:first-child>div:first-child{font-size:.78rem}.audit-sheet td:first-child>div:last-child{max-width:220px;white-space:normal;font-size:.68rem!important}.audit-sheet td{white-space:nowrap}.audit-sheet td:first-child,.audit-sheet th:first-child{min-width:110px}.audit-sheet td:first-child>div:last-child{white-space:nowrap}.audit-missing-count{display:inline-block;background:#fef3c7;color:#92400e;border:1px solid #fde68a;padding:.15rem .4rem;border-radius:4px}