:root{--ink:#0b0907;--charcoal:#201a14;--saddle:#17110d;--cream:#f0e8d7;--ivory:#f4eee4;--orange:#f28b24;--rust:#85341e;--amber:#ffc476;--text:#29241e;--muted:#7c756a;--line:#e4ded4;--white:#fff;--green:#336549;--red:#ac4532;--radius:15px}*{box-sizing:border-box}body{margin:0;background:#f7f4ee;color:var(--text);font:14px/1.5 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}button{border:0;background:none;color:inherit}a{color:var(--rust)}h1,h2,h3,p{margin:0}h1{font-size:32px;line-height:1.2;letter-spacing:-1.1px;font-weight:650}h2{font-size:17px;letter-spacing:-.25px;font-weight:650}h3{font-size:14px;font-weight:650}small,.small{font-size:12px}.muted{color:var(--muted)}.eyebrow{font-size:10px;letter-spacing:1.7px;text-transform:uppercase;font-weight:700}.icon{width:18px;height:18px;vertical-align:middle;flex-shrink:0}.app{display:grid;grid-template-columns:238px 1fr;min-height:100vh}.sidebar{background:var(--ink);color:var(--cream);padding:35px 19px 20px;display:flex;flex-direction:column;position:fixed;inset:0 auto 0 0;width:238px;z-index:30;border-right:1px solid #2d241b}.brand{display:flex;align-items:center;gap:12px;padding:0 12px 30px}.brand-mark{width:37px;height:42px;display:grid;place-items:center;border:1px solid #684124;color:var(--orange);border-radius:9px}.brand-name{font:700 16px/1.2 Georgia,serif;letter-spacing:1.6px}.brand-sub{font-size:8px;letter-spacing:2.1px;color:#a79b87;margin-top:5px}.workspace{border:1px solid #352c23;border-radius:10px;padding:13px 12px;margin:0 5px 24px}.workspace .eyebrow{color:#ab9b85;font-size:8px}.workspace strong{display:block;margin-top:4px;font-size:13px;font-weight:500}.nav-group{font-size:9px;letter-spacing:1.5px;color:#877b69;margin:10px 16px}.nav-link{display:flex;align-items:center;gap:12px;text-align:left;width:100%;padding:12px 14px;border-radius:8px;margin-bottom:4px;color:#b4aa9b;font-size:13px}.nav-link:hover{background:#211b15;color:var(--cream)}.nav-link.active{background:#302217;color:#ffb66d}.nav-link.active:before{content:'';width:3px;height:19px;background:var(--orange);position:absolute;left:0;border-radius:0 3px 3px 0}.nav-bottom{margin-top:auto;padding-top:50px}.sidebar-status{margin:20px 8px 0;padding:16px 10px;border-top:1px solid #30291f;font-size:11px;color:#a89c8a}.status-dot{width:6px;height:6px;background:var(--orange);border-radius:50%;display:inline-block;margin-right:7px}.profile{display:flex;gap:10px;align-items:center;margin-top:17px}.avatar{height:33px;width:33px;display:grid;place-items:center;background:#332b23;border-radius:50%;font-size:11px;color:var(--amber)}.main{grid-column:2;min-width:0}.topbar{padding:20px 35px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:15px;background:#fbf9f5}.crumb{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:12px}.crumb b{color:var(--text);font-weight:500}.actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 15px;border-radius:8px;font-size:12px;line-height:1.4;font-weight:600;min-height:38px;white-space:nowrap}.btn-primary{background:var(--orange);color:#28180b;box-shadow:0 1px 1px #b36c2629}.btn-primary:hover{background:#e97e13}.btn-outline{background:#fff;border:1px solid var(--line)}.btn-dark{background:var(--charcoal);color:var(--cream)}.btn-quiet{color:var(--muted);border:1px solid transparent}.btn-danger{color:var(--red);background:#fff1ee}.btn-small{padding:7px 11px;min-height:32px;font-size:11px}.content{max-width:1600px;margin:auto;padding:30px 35px 45px}.page-title{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin:0 0 25px}.page-title p{margin-top:8px;color:var(--muted);font-size:12px}.page-title .eyebrow{color:var(--rust);margin-bottom:9px}.store-select{padding:10px 32px 10px 13px;border:1px solid var(--line);background:#fff;border-radius:8px;max-width:260px}.period-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 18px;flex-wrap:wrap}.segments{display:inline-flex;gap:3px;background:#eae5dc;padding:4px;border-radius:9px}.segments button{padding:8px 15px;font-size:11px;border-radius:6px;font-weight:600;color:var(--muted)}.segments button.active{background:#fff;box-shadow:0 1px 3px #0000000d;color:var(--text)}.date-control{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--muted)}.date-control input{background:#fff;border:1px solid var(--line);border-radius:7px;padding:8px 10px;font-size:12px;color:var(--text)}.tag{display:inline-flex;align-items:center;gap:6px;background:#eee9df;color:#75654f;border-radius:5px;padding:4px 7px;font-size:9px;font-weight:650;letter-spacing:.4px;white-space:nowrap}.tag.orange{background:#fbedda;color:#995512}.tag.green{background:#e9f1e8;color:#336549}.tag.red{background:#f8e8e3;color:#9d4635}.tag.dark{background:#352a1f;color:var(--amber)}.banner{padding:11px 14px;border:1px solid #ead9bd;background:#fbf3e7;border-radius:8px;display:flex;gap:10px;align-items:center;color:#78582f;font-size:11px;margin-bottom:20px}.banner .icon{width:15px;height:15px}.banner a,.banner button{font-weight:600;white-space:nowrap;margin-left:auto}.banner.error{background:#fff0ea;border-color:#edc9bd;color:var(--red)}.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:22px}.card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:21px 22px;min-width:0}.kpi{padding:20px 20px 17px}.kpi-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;color:var(--muted);font-size:11px}.kpi-top .icon{height:16px;width:16px;color:#ab9b84}.kpi-value{font-size:31px;font-weight:620;letter-spacing:-1.1px;font-variant-numeric:tabular-nums;line-height:1.1}.kpi-meta{display:flex;gap:7px;align-items:center;margin-top:13px;font-size:10px;min-height:18px}.up{color:var(--green)}.down{color:var(--red)}.mini-track{height:3px;background:#eee9df;margin-top:15px;border-radius:3px;overflow:hidden}.mini-track i{display:block;height:100%;background:#cebd9f}.kpi.featured{background:var(--saddle);border-color:var(--saddle);color:var(--cream)}.kpi.featured .kpi-top{color:#baa991}.kpi.featured .kpi-top .icon{color:var(--orange)}.kpi.featured .kpi-meta{color:#c8bba6}.kpi.featured .tag{background:#342b21;color:#efb778}.kpi.featured .mini-track{background:#36291e}.kpi.featured .mini-track i{background:var(--orange)}.grid-main{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(285px,1fr);gap:20px;margin-bottom:22px}.card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:23px}.card-head p{font-size:11px;color:var(--muted);margin-top:4px}.legend{display:flex;gap:15px;font-size:10px;color:var(--muted);align-items:center}.legend i{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:5px;background:var(--orange)}.legend i.pale{background:#c8bead}.trend{width:100%;height:210px;overflow:visible}.chart-foot{border-top:1px solid var(--line);margin-top:17px;padding-top:13px;display:flex;justify-content:space-between;font-size:11px;gap:12px;color:var(--muted)}.chart-foot strong{color:var(--text);font-weight:600}.mix-total{display:flex;align-items:baseline;gap:10px;margin-bottom:22px}.mix-total strong{font-size:26px;letter-spacing:-.8px}.mix-item{margin-bottom:17px}.mix-item header{display:flex;justify-content:space-between;font-size:12px}.mix-item header span{display:flex;align-items:center;gap:8px}.mix-dot{width:7px;height:7px;border-radius:2px;background:var(--orange)}.mix-item:nth-of-type(2) .mix-dot{background:#6b563e}.mix-item:nth-of-type(3) .mix-dot{background:#bb9a67}.mix-item:nth-of-type(4) .mix-dot{background:#d2c8b9}.mix-line{height:5px;background:#f0ece5;border-radius:3px;margin-top:8px;overflow:hidden}.mix-line i{display:block;height:100%;background:var(--orange);border-radius:3px}.mix-line.alcohol i{background:#6b563e}.mix-line.retail i{background:#bb9a67}.mix-line.advertising i{background:#d2c8b9}.reconcile{display:flex;gap:7px;align-items:center;padding-top:12px;border-top:1px solid var(--line);font-size:10px;color:var(--green)}.reconcile.bad{color:var(--red)}.table-card{padding:0;overflow:hidden;margin-bottom:22px}.table-card .card-head{padding:21px 22px 0;margin-bottom:17px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:12px}th{text-align:left;text-transform:uppercase;letter-spacing:.7px;font-size:9px;font-weight:650;color:var(--muted);background:#fcfbf8;padding:11px 21px;border-bottom:1px solid var(--line);white-space:nowrap}td{padding:12px 21px;border-bottom:1px solid #efebe5}tbody tr:last-child td{border-bottom:0}td.number,th.number{text-align:right;font-variant-numeric:tabular-nums}tbody tr:hover:not(.section-row){background:#fdfbf6}.section-row td{font-size:10px;font-weight:700;letter-spacing:.7px;text-transform:uppercase;background:#f2eee6;padding-top:10px;padding-bottom:10px;color:#6e5a43}.metric-name{font-weight:500}.table-card footer{padding:13px 21px;background:#fcfbf8;font-size:10px;color:var(--muted);display:flex;justify-content:space-between}.metric-emphasis{font-weight:700;background:#fbf5eb}.bottom-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.review-totals{display:flex;gap:22px;margin:16px 0}.review-totals strong{display:block;font-size:27px;letter-spacing:-.8px;line-height:1.2}.review-totals span{font-size:10px;color:var(--muted)}.checklist{list-style:none;margin:0;padding:0}.checklist li{display:flex;align-items:center;gap:9px;padding:8px 0;font-size:12px}.checklist .icon{width:15px;height:15px}.checklist .ok{color:var(--green)}.checklist .missing{color:#b0894a}.dining-row{display:flex;justify-content:space-between;align-items:center;padding:9px 0;font-size:12px;border-bottom:1px solid #f1ede6}.dining-row:last-child{border:0}.dining-row .small{margin-left:8px;color:var(--muted)}.section-intro{margin-bottom:20px}.section-intro p{color:var(--muted);font-size:12px;margin-top:6px}.form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.field{display:flex;flex-direction:column;gap:6px;font-size:11px;color:#6e6253}.field input,.field select,.field textarea{width:100%;border:1px solid #ddd6ca;border-radius:7px;background:#fff;padding:10px 12px;color:var(--text);min-width:0;font-size:13px}.field input:disabled,.field select:disabled{background:#f1eee8;color:#7a7165}.field textarea{resize:vertical;min-height:75px}.field .hint{font-size:10px;color:var(--muted);line-height:1.4}.form-section{margin:0 0 22px}.form-section .card-head{margin-bottom:19px}.form-actions{display:flex;gap:10px;justify-content:flex-end;padding-top:18px}.wide-2{grid-column:span 2}.wide-3{grid-column:1 / -1}.checkbox{display:flex;align-items:center;gap:8px;font-size:12px}.checkbox input{width:16px;height:16px;accent-color:var(--orange)}.edit-table input,.edit-table select{border:1px solid var(--line);border-radius:5px;padding:7px 8px;width:100%;min-width:80px;background:#fff;font-size:12px}.edit-table td{padding:8px 10px}.edit-table td:first-child{padding-left:20px;min-width:180px}.edit-table th{padding-left:10px;padding-right:10px}.edit-table th:first-child{padding-left:20px}.edit-table .num-input{max-width:115px;text-align:right}.add-row{display:flex;justify-content:flex-start;padding:11px 16px;border-top:1px solid var(--line)}.save-bar{position:sticky;bottom:12px;z-index:15;background:#201a14;color:var(--cream);padding:12px 17px;border-radius:10px;display:flex;align-items:center;justify-content:space-between;box-shadow:0 5px 20px #0002;font-size:12px}.stack{display:grid;gap:20px}.split{display:grid;grid-template-columns:1fr 1fr;gap:20px}.inline-note{padding:12px 14px;background:#f7f3eb;border-radius:7px;font-size:11px;color:#7c6c57;margin-top:14px}.ot-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:22px}.ot-summary .card strong{font-size:28px;display:block;margin:8px 0}.stars{color:#cc822b;letter-spacing:2px;font-size:13px}.reviews-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.review-card{padding:20px}.review-card header{display:flex;justify-content:space-between;gap:10px;align-items:center}.review-card p{margin:14px 0;font-size:13px;line-height:1.6;color:#5b5145}.review-card footer{display:flex;justify-content:space-between;font-size:11px;color:var(--muted)}.review-card select{border:1px solid var(--line);border-radius:5px;background:#fff;color:var(--muted);padding:3px 5px;font-size:10px}.toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:20px;flex-wrap:wrap}.search{padding:10px 13px;border:1px solid var(--line);border-radius:8px;background:white;min-width:220px;font-size:12px}.empty{text-align:center;padding:45px 20px;color:var(--muted)}.empty .icon{width:30px;height:30px;color:#b6a78f;margin-bottom:12px}.empty h3{color:var(--text);margin-bottom:8px}.modal-backdrop{position:fixed;inset:0;background:#0c0906a8;z-index:100;display:flex;align-items:center;justify-content:center;padding:24px;backdrop-filter:blur(3px)}.modal{background:#fbf9f5;border:1px solid #dcd3c6;border-radius:17px;max-width:1000px;width:100%;max-height:90vh;overflow:auto;box-shadow:0 30px 120px #0005}.modal-header{padding:23px 25px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:12px;align-items:center;position:sticky;top:0;background:#fbf9f5;z-index:2}.modal-header p{font-size:11px;color:var(--muted);margin-top:5px}.modal-body{padding:23px 25px}.modal-footer{display:flex;justify-content:flex-end;gap:9px;padding:18px 25px;border-top:1px solid var(--line)}.upload-area{border:1px dashed #cdbb9d;border-radius:12px;background:#fcfaf6;padding:32px;text-align:center;margin:18px 0;color:#79654b}.upload-area input{display:none}.upload-area label{cursor:pointer;display:block}.upload-area .icon{width:30px;height:30px;margin-bottom:9px}.upload-area p{font-size:11px;margin-top:5px}.toast{position:fixed;right:25px;bottom:25px;max-width:min(420px,calc(100vw - 40px));background:#201a14;color:#f0e8d7;padding:14px 20px;border-radius:10px;z-index:200;box-shadow:0 7px 25px #0003;font-size:12px}.toast.error{background:#85341e}.formula{font-family:ui-monospace,monospace;font-size:11px;line-height:1.7;background:#f4f0e8;border-radius:7px;padding:12px 14px;white-space:normal;margin-top:12px}.source-row{display:flex;gap:15px;align-items:flex-start;padding:18px 0;border-bottom:1px solid var(--line)}.source-row:last-child{border:0}.source-logo{width:42px;height:42px;background:#f3ece0;border-radius:10px;display:grid;place-items:center;font-weight:700;font-size:17px;color:#8c5724}.source-detail{flex:1}.source-detail p{margin:5px 0;font-size:12px;color:var(--muted)}.code{font-family:ui-monospace,monospace;font-size:11px;overflow-wrap:anywhere}.notice-list{padding-left:18px;font-size:12px;color:#765d37}.notice-list li{margin:5px 0}.danger-zone{border-color:#edc9bd}.footer-line{margin-top:26px;padding-top:18px;border-top:1px solid var(--line);display:flex;justify-content:space-between;color:#a19482;font-size:10px;gap:10px}.mobile-menu{display:none}.no-break{white-space:nowrap}.print-only{display:none}.audit-details{max-width:600px;overflow-wrap:anywhere;font-size:11px;color:var(--muted)}.text-link{color:var(--rust);font-size:11px;font-weight:600;padding:0}.loader{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
@media(min-width:1600px){.content{padding-top:40px}.kpi-value{font-size:35px}.trend{height:235px}}
@media(max-width:1150px){.app{grid-template-columns:205px 1fr}.sidebar{width:205px;padding-left:12px;padding-right:12px}.content{padding:25px 24px}.topbar{padding:17px 24px}.kpis{gap:10px}.kpi{padding:17px 15px}.kpi-value{font-size:25px}.grid-main{grid-template-columns:1.45fr 1fr;gap:15px}.card{padding:18px}.table-card{padding:0}.bottom-grid{gap:13px}.form-grid{grid-template-columns:repeat(2,1fr)}.wide-3{grid-column:1/-1}.form-grid .wide-2{grid-column:1/-1}.card-head .legend{gap:7px;flex-direction:column;align-items:flex-end}.ot-summary{gap:10px}}
@media(max-width:900px){.app{grid-template-columns:1fr}.sidebar{transform:translateX(-100%);transition:transform .2s;width:238px}.sidebar.open{transform:translateX(0)}.main{grid-column:1}.mobile-menu{display:inline-flex}.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-main{grid-template-columns:1.4fr 1fr}.bottom-grid{grid-template-columns:1fr 1fr}.bottom-grid .card:last-child{grid-column:1/-1}.split{grid-template-columns:1fr}.kpi-value{font-size:30px}}
@media(max-width:640px){h1{font-size:27px}.content{padding:23px 16px}.topbar{padding:13px 16px;gap:8px}.crumb{font-size:10px}.topbar .btn{padding:8px 10px}.topbar .btn .icon{width:15px}.topbar .btn span{display:none}.page-title{flex-direction:column;margin-bottom:18px}.page-title .store-select{max-width:none;width:100%;font-size:12px}.page-title>div:last-child{width:100%}.grid-main,.bottom-grid,.reviews-grid{grid-template-columns:1fr}.bottom-grid .card:last-child{grid-column:auto}.kpi{padding:16px}.kpi-value{font-size:27px}.kpi-meta{font-size:9px;flex-wrap:wrap;gap:4px}.kpi-top{font-size:10px}.period-bar{gap:11px}.date-control{width:100%;justify-content:space-between}.segments{width:100%;justify-content:space-around}.segments button{padding:8px 11px}.banner{font-size:10px;align-items:flex-start}.banner button{white-space:normal}.form-grid{grid-template-columns:1fr}.wide-2,.wide-3{grid-column:auto}.modal-backdrop{padding:10px}.modal-header,.modal-body,.modal-footer{padding:18px}.form-actions{flex-wrap:wrap}.ot-summary{grid-template-columns:1fr}.ot-summary .card{display:flex;align-items:center;justify-content:space-between;gap:10px}.ot-summary .card strong{font-size:25px}.save-bar{font-size:10px;gap:10px}.save-bar .btn{font-size:10px;padding:9px}.footer-line{flex-direction:column}.trend{height:185px}.card-head{margin-bottom:18px}.source-row{flex-wrap:wrap}.source-row .btn{margin-left:55px}td,th{padding-left:14px;padding-right:14px}.table-card .card-head{padding-left:17px;padding-right:17px}.kpi-top .icon{width:14px}.review-totals{gap:35px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print{@page{size:letter portrait;margin:12mm}body{background:white;color:black;font-size:10px}.sidebar,.topbar,.page-title .store-select,.period-bar,.banner,.actions,.no-print,.footer-line,.save-bar,.modal-backdrop,.toolbar{display:none!important}.app,.main{display:block}.content{padding:0;max-width:none}.print-only{display:block}.page-title{margin:0 0 12px}h1{font-size:23px}.card,.table-card{box-shadow:none;border:1px solid #ccc;border-radius:0;margin-bottom:12px}.kpis{gap:8px}.kpi{padding:10px}.kpi-value{font-size:21px}.kpi.featured{background:white;color:black;border-color:#ccc}.kpi.featured .kpi-top,.kpi.featured .kpi-meta{color:#333}.grid-main{grid-template-columns:1.5fr 1fr;gap:10px}.trend{height:145px}.table-card{overflow:visible}.table-wrap{overflow:visible}thead{display:table-header-group}tr{break-inside:avoid}th,td{padding:6px 8px;font-size:9px}th{font-size:8px}.section-row td{font-size:8px}h2{font-size:13px}.page-title p,.card-head p{font-size:9px}.bottom-grid{grid-template-columns:repeat(3,1fr);gap:10px}.card-head{margin-bottom:10px}.mix-item{margin-bottom:10px}.mix-total{margin-bottom:12px}.mix-total strong{font-size:19px}.card{padding:12px}.table-card{padding:0}.table-card .card-head{padding:12px 12px 0}.table-card footer{font-size:8px}.print-note{font-size:9px;margin-bottom:10px;color:#555}.btn{display:none!important}}
/* The printed document is a scorecard, not a screenshot of the navigation UI. */
@media print {
  #toast-root, #modal-root, .grid-main, .footer-line, .mini-track, .quarter-table .text-link svg { display:none !important; }
  .page-title { margin-bottom:10px !important; }
  .page-title h1 { font-size:18pt !important; }
  .kpis { grid-template-columns:repeat(4,minmax(0,1fr)) !important; gap:8px !important; margin:10px 0 12px !important; }
  .kpi { padding:10px !important; min-height:80px !important; }
  .kpi-value { font-size:17pt !important; margin:8px 0 !important; }
  .kpi-meta, .kpi-top { font-size:7pt !important; }
  .card-head { padding:10px 10px 7px !important; margin:0 !important; }
  .card-head h2 { font-size:11pt !important; }
  .card-head p, .card footer, .print-note { font-size:7pt !important; }
  .table-card { margin:12px 0 !important; }
  th, td { padding:5px 7px !important; font-size:8pt !important; }
  tr { break-inside:avoid; }
  thead { display:table-header-group; }
  .bottom-grid { display:grid !important; grid-template-columns:1fr 1fr !important; gap:10px !important; margin-top:10px !important; break-inside:avoid; }
  .bottom-grid > section:first-child { display:none !important; }
  .bottom-grid .card { padding:10px !important; }
  .bottom-grid .text-link { display:none !important; }
  .review-totals strong { font-size:20pt !important; }
  .dining-row { padding:7px 0 !important; font-size:8pt !important; }
}

@media print { .section-row { break-after:avoid; } .table-card h2 { break-after:avoid; } }

/* Complete Toast import. Keep the existing restaurant design and spacing. */
.toast-sync-panel{margin-bottom:22px}
.toast-options{display:flex;flex-wrap:wrap;gap:12px 28px;margin:20px 0}
.toast-store-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px}
.toast-store-state{background:#f8f4ed;border:1px solid #e9e1d5;border-radius:10px;padding:12px 14px;display:flex;flex-direction:column;gap:5px;overflow-wrap:anywhere}
.toast-store-state b{font-size:12px}.toast-store-state span{font-size:11px;color:#6d6255}
.sync-details{margin-top:18px;font-size:12px}.sync-details summary{cursor:pointer;font-weight:600}
.sync-details p{padding:8px 0;border-bottom:1px solid #eee5d9}
.toast-import-result{border-top:1px solid #e9e1d5;margin-top:20px;padding-top:16px}
.toast-import-result .actions{margin-top:12px}
@media(max-width:700px){.toast-store-grid{grid-template-columns:1fr}.toast-sync-panel .actions{align-items:stretch;flex-direction:column}.toast-sync-panel .btn{justify-content:center}.toast-options{flex-direction:column;align-items:flex-start}}
@media print{.toast-sync-panel{display:none}}

.automatic-panel{margin-bottom:24px}.automatic-panel table td{vertical-align:top}.automatic-panel .inline-note{line-height:1.55}@media(max-width:700px){.automatic-panel .actions{flex-direction:column;align-items:stretch}.automatic-panel .btn{justify-content:center}.automatic-panel .card-head{flex-wrap:wrap}}

/* Payroll document reading: same app design, one upload/review/save flow. */
.payroll-scan-card{margin:16px 0;padding:18px;overflow-wrap:anywhere}
.payroll-scan-card .card-head{flex-wrap:wrap;gap:12px;align-items:flex-start}
.payroll-scan-card h3{font-size:16px}
.payroll-read-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}
.payroll-read-metrics>div{background:#f8f4ed;border:1px solid #e9e1d5;border-radius:10px;padding:12px;min-width:0}
.payroll-read-metrics span{display:block;font-size:11px;color:#6d6255;margin-bottom:6px}
.payroll-read-metrics strong{font-size:20px;font-variant-numeric:tabular-nums}
.payroll-target{border-left:4px solid #f28b24;background:#fff7ed;padding:14px 16px;border-radius:8px;margin:16px 0}
.payroll-target h3{margin:5px 0}.payroll-target p{font-size:12px;line-height:1.6}
.payroll-categories{padding:14px;background:#f8f4ed;border-radius:10px;margin-top:18px}
.payroll-categories summary,.payroll-scan-card summary{font-weight:650;cursor:pointer;margin:10px 0}
.payroll-scan-card .table-wrap{margin:12px 0}.payroll-scan-card .scan-error{color:#a62819;font-size:13px;margin:12px 0;line-height:1.6}
.payroll-scan-card details{max-width:100%}.payroll-scan-card details details{overflow:auto}
.payroll-drop{margin-bottom:12px}.payroll-scan-summary{font-size:12px;line-height:1.6}
@media(max-width:650px){.payroll-read-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.payroll-read-metrics strong{font-size:18px}.payroll-scan-card{padding:12px}.payroll-scan-card .card-head{display:block}.payroll-scan-card .card-head .tag{margin-top:8px}.form-section>.card-head{flex-wrap:wrap;gap:10px}}
/* Payroll job assignment is always separate from the amount/tax calculation. */
.ot-hours-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0}
.ot-hour-card{padding:18px;display:flex;flex-direction:column;gap:9px;min-width:0}
.ot-hour-card strong{font-size:29px;line-height:1.15;font-variant-numeric:tabular-nums;color:var(--ink,#17110D)}
.ot-hour-card small{font-size:11px;line-height:1.5;color:#726653}
.ot-hour-card.needs-class{border-color:#d48a2f;background:#fff6e9}
.payroll-ot-section{margin:22px 0;padding:20px;background:#f9f4e9;border:1px solid #e9dcc6;border-radius:14px}
.job-classes-table{min-width:460px;width:100%}
.job-classes-table td:first-child{white-space:normal;min-width:120px;max-width:250px}
.job-classes-table select,select[data-map-kind="jobMap"]{min-height:44px;min-width:155px;padding:8px;border:1px solid #c7b99f;background:#fff;border-radius:7px;color:#201a14;font-size:14px}
.job-classes-table .job-unassigned td{background:#fff7eb}
.payroll-job-choices{margin-top:20px;border:1px solid #ddcba9;border-radius:10px;padding:15px}
.payroll-job-choices>summary{font-size:16px;font-weight:700;cursor:pointer;padding:8px 0}
.cogs-basis-readout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}
.cogs-basis-readout>div{padding:16px;background:#f8f3e8;border:1px solid #e7dac3;border-radius:10px;display:flex;flex-direction:column;gap:10px;font-size:14px}
@media(max-width:850px){.ot-hours-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cogs-basis-readout{grid-template-columns:1fr}.payroll-ot-section{padding:14px}.ot-hour-card{padding:14px}.ot-hour-card strong{font-size:25px}}
@media print{.payroll-ot-section .btn{display:none}.ot-hours-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
.modal-with-jobs{display:flex;flex-direction:column;overflow:hidden}
.modal-with-jobs .modal-header,.modal-with-jobs .modal-footer{flex-shrink:0;background:#fbf9f5}
.modal-with-jobs .modal-body{overflow:auto;min-height:0}
@media(max-width:550px){
 .job-classes-table,.job-classes-table tbody{display:block;min-width:0;width:100%}
 .job-classes-table thead{display:none}
 .job-classes-table tr{display:grid;grid-template-columns:minmax(0,1fr) 78px;gap:7px 12px;border-bottom:1px solid #e5d8c0;padding:12px}
 .job-classes-table tr.job-unassigned{background:#fff7eb}
 .job-classes-table td{padding:0;border:0;min-width:0;background:transparent!important}
 .job-classes-table td:first-child{grid-column:1 / -1;max-width:none;min-width:0;font-weight:600;white-space:normal}
 .job-classes-table select{width:100%;min-width:0}
 .job-classes-table td.number{align-self:center;text-align:right;font-size:15px}
 .job-classes-table td.number::before{content:'OT HOURS';display:block;font-size:9px;color:#796d58;letter-spacing:.04em;margin-bottom:2px}
}

/* 1.4: preserve the ink, saddle, cream and orange brand; prioritize work. */
:root{--muted:#696257}body{font-size:15px;line-height:1.55}h1{font-size:clamp(26px,2.4vw,35px);letter-spacing:-.9px}h2{font-size:19px}.small,small{font-size:13px}.hint{font-size:12px}.btn{min-height:44px;font-size:13px;padding:10px 15px}.btn-quiet:hover{background:#f0e9df}.card-head p,.page-title p{font-size:14px;line-height:1.6}.banner,.inline-note{font-size:13px;line-height:1.6}.tag{font-size:10px}.field{font-size:13px}.field input,.field select,.field textarea,.mapping-row select,.job-classes-table select{min-height:44px;font-size:15px}.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible,button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #ba5b08;outline-offset:3px}input[aria-invalid=true]{border-color:var(--red);background:#fff3ed}.content{padding-top:22px}.topbar{padding:14px 32px}.sidebar{overflow-y:auto}.nav-bottom{padding-top:24px}.nav-link{min-height:44px}.sidebar .nav-group{color:#b4a995}.skip-link{position:fixed;top:-80px;left:15px;z-index:200;background:var(--orange);padding:12px 18px;color:var(--ink)}.skip-link:focus{top:12px}.context-bar{display:flex;align-items:center;gap:20px;justify-content:space-between;padding:14px 18px;border:1px solid var(--line);border-radius:12px;background:#fffcf8;margin-bottom:28px}.context-restaurant{min-width:0;flex:1;max-width:340px}.context-bar .eyebrow{display:block;color:#77634b;font-size:10px;letter-spacing:1px;margin-bottom:4px}.context-restaurant select{background:transparent;border:0;font-size:15px;font-weight:650;min-height:38px;width:100%;max-width:100%;padding-right:12px;color:var(--text)}.week-controls{display:flex;align-items:center;gap:4px;flex-wrap:nowrap}.week-controls input{border:0;background:transparent;padding:7px 4px;min-height:38px;font-size:14px;max-width:155px;color:var(--text);font-weight:600}.week-controls .btn{min-width:34px;min-height:38px;font-size:23px;padding:0 8px}.week-end{font-size:14px;white-space:nowrap}.context-bar>.btn{font-size:12px}.context-week{flex-shrink:0}.save-indicator{display:inline-flex;gap:6px;align-items:center;font-size:11px;color:#426246}.save-indicator .icon{width:14px;height:14px}.save-warning{color:var(--red)}.topbar .save-indicator{max-width:210px;line-height:1.4}.workflow-callout{background:var(--saddle);color:var(--cream);padding:22px 26px;border-radius:14px;display:flex;align-items:center;justify-content:space-between;gap:24px;margin:0 0 24px}.workflow-callout .eyebrow{color:var(--amber);margin-bottom:6px;display:block}.workflow-callout h2{font-size:21px}.workflow-callout p{color:#c8baa5;font-size:13px;margin-top:6px}.workflow-callout .btn{flex-shrink:0}.location-overview{margin-bottom:24px}.location-overview .card-head{margin-bottom:12px}.location-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.location-item{display:flex;align-items:flex-start;flex-direction:column;text-align:left;min-width:0;border:1px solid var(--line);border-radius:9px;padding:14px;gap:9px;background:#fcfaf6}.location-item:hover,.location-item.selected{border-color:#d28b4c;background:#fff4e5}.location-item>span:first-child{font-size:13px;font-weight:650}.location-item small{display:block;font-size:11px;font-weight:400;color:var(--muted)}.location-item strong{font-size:22px;font-variant-numeric:tabular-nums;letter-spacing:-.7px}.location-status{font-size:11px;color:var(--muted)}.two-column{grid-template-columns:1fr 1fr}.close-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:0 0 24px}.close-step{display:flex;gap:10px;align-items:center;text-align:left;padding:13px 14px;border:1px solid var(--line);background:#fff;border-radius:10px;min-height:70px}.close-step.active{border-color:var(--orange);background:#fff2df;box-shadow:inset 0 -3px var(--orange)}.step-number{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#eee7dc;color:#776044;font-size:12px;flex-shrink:0}.active .step-number{background:var(--ink);color:var(--cream)}.close-step b{font-size:14px;display:block}.close-step small{display:block;font-size:11px;color:var(--muted)}.workflow-section{margin-bottom:20px;padding:26px}.workflow-section .card-head{margin-bottom:18px;flex-wrap:wrap}.summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:24px 0 20px;gap:16px;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.summary-value{min-width:0}.summary-value>span{display:block;font-size:12px;color:var(--muted);margin-bottom:6px}.summary-value strong{display:block;font-size:clamp(20px,1.85vw,26px);font-weight:650;letter-spacing:-.7px;font-variant-numeric:tabular-nums}.summary-value small{display:block;color:var(--muted)}.compact-summary{grid-template-columns:1fr 1fr}.workflow-details{border:1px solid var(--line);border-radius:9px;margin:18px 0 0;padding:0 16px;background:#fffcf7}.workflow-details>summary{padding:14px 0;cursor:pointer;font-weight:600;font-size:13px}.workflow-details[open]{padding-bottom:16px}.workflow-details .form-grid{margin-top:16px}.workflow-details .table-card{margin-top:16px}.workflow-sync-status{font-size:12px;color:var(--muted);padding:12px 0 0}.section-actions{margin:18px 0}.approval-line{border-top:1px solid var(--line);padding-top:18px;margin-top:22px}.checkbox{font-size:13px;line-height:1.6;align-items:flex-start;gap:10px}.checkbox input{width:18px;height:18px;margin-top:3px;flex-shrink:0;accent-color:#b75b0a}.review-step{display:flex;width:100%;align-items:center;text-align:left;gap:12px;border-bottom:1px solid var(--line);padding:16px 0}.review-step>span:first-of-type{flex:1}.review-step small{display:block;color:var(--muted);font-size:12px}.review-step>.icon{color:#98611f}.workflow-footer{position:sticky;bottom:12px;box-shadow:0 5px 20px #2f25131a;background:#fffcf8;border:1px solid var(--line);border-radius:12px;padding:14px 18px;z-index:12}.workflow-footer .save-indicator{font-size:12px}.workflow-footer .actions{flex-wrap:wrap}.advanced-return{margin-bottom:18px}.mapping-list{margin-top:14px}.mapping-row{display:flex;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid var(--line);padding:12px 0;font-size:14px}.mapping-row select{min-width:165px;background:white;border:1px solid var(--line);border-radius:7px;padding:6px}.job-filter{display:flex;align-items:flex-end;gap:12px;margin:18px 0}.job-filter .field{flex:1}.job-filter input,.job-filter select{width:100%}.job-filter-count{font-size:12px}.job-classes-table td{font-size:13px}.job-classes-table tbody tr[hidden]{display:none}.ot-hour-card strong{font-size:27px}.ot-hour-card small{font-size:11px}.mobile-bottom{display:none}.dialog-open{overflow:hidden}.modal{max-height:92dvh}.modal-body{overscroll-behavior:contain}.modal-foot{padding-bottom:calc(16px + env(safe-area-inset-bottom));flex-wrap:wrap}.modal-head h2{outline:none}.modal-foot .btn{min-height:44px}.table-wrap{overscroll-behavior-x:contain}.notice-list{font-size:13px}.cogs-basis-readout>div{font-size:13px}.payroll-target p,.payroll-scan-card .card-head p{font-size:13px}.payroll-read-metrics strong{font-size:22px}.banner{flex-wrap:wrap}.source-detail p{font-size:13px}.field input,.field textarea{scroll-margin-top:24px}.cost-inputs .field input{font-size:20px;font-weight:600;min-height:54px}.footer-line{font-size:10px}.modal-body details:not(.workflow-details)>summary{cursor:pointer;min-height:44px;padding:10px 0}.modal .job-filter{position:sticky;top:-1px;background:white;z-index:2;padding:12px 0}.payroll-ot-section{margin-top:20px}button[aria-current=page]{font-weight:650}
@media(min-width:1500px){.content{max-width:1510px}.workflow-section{padding:30px}.guided-content{max-width:1120px}}
@media(max-width:1150px){.location-grid{grid-template-columns:repeat(3,1fr)}.context-bar{gap:12px}.context-bar>.btn{display:none}.topbar .save-indicator{display:none}.close-step{padding:12px 10px}.summary-grid{grid-template-columns:repeat(2,1fr)}.app{grid-template-columns:218px 1fr}.sidebar{width:218px}.content{padding:22px}.topbar{padding:14px 22px}}
@media(max-width:850px){.app{display:block}.main{margin:0}.sidebar{width:252px;transform:translateX(-100%);transition:transform .15s}.sidebar.open{transform:translateX(0);box-shadow:0 0 0 100vmax #0006}.mobile-menu{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px}.topbar{padding:8px 14px}.topbar .actions .tag{display:none}.topbar .btn{padding:8px 12px}.topbar .btn span{display:none}.content{padding:18px 18px 100px}.context-bar{margin-bottom:24px}.mobile-bottom{display:grid;grid-template-columns:repeat(4,1fr);position:fixed;bottom:0;left:0;right:0;padding:6px 8px calc(6px + env(safe-area-inset-bottom));background:var(--ink);color:#bbae9a;z-index:25;border-top:1px solid #3b3025}.mobile-bottom button{display:flex;align-items:center;justify-content:center;gap:4px;flex-direction:column;min-height:49px;border-radius:8px;font-size:10px}.mobile-bottom button.active{color:var(--amber);background:#2d2117}.mobile-bottom .icon{height:20px;width:20px}.workflow-footer{bottom:calc(73px + env(safe-area-inset-bottom))}.dialog-open .mobile-bottom{display:none}.workflow-callout{padding:20px}.workflow-callout h2{font-size:20px}.location-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:600px){body{font-size:15px}.content{padding:16px 14px 100px}.context-bar{align-items:stretch;flex-direction:column;gap:10px;padding:12px 14px}.context-restaurant{max-width:none}.context-week{border-top:1px solid var(--line);padding-top:10px}.week-controls{justify-content:space-between}.week-controls input{font-size:15px}.week-controls .btn{min-width:36px}.context-bar .eyebrow{font-size:10px}.page-title{margin-bottom:18px}.page-title h1{font-size:28px}.page-title p{font-size:13px}.workflow-callout{display:block;padding:20px;margin-bottom:18px}.workflow-callout .btn{margin-top:16px;width:100%}.workflow-callout p{font-size:12px}.kpis{gap:10px}.kpi{padding:16px}.kpi-top{font-size:12px;gap:6px;margin-bottom:12px}.kpi-value{font-size:27px}.kpi-meta{font-size:11px;flex-wrap:wrap}.grid-main{display:block}.grid-main>.card{margin-bottom:16px}.trend{height:185px}.legend{font-size:10px;gap:8px}.location-grid{grid-template-columns:1fr 1fr}.location-item{padding:12px}.location-overview{padding:18px}.location-item strong{font-size:24px}.location-item>span:first-child{font-size:13px}.two-column{grid-template-columns:1fr}.close-steps{gap:6px;margin-bottom:18px}.close-step{flex-direction:column;gap:5px;text-align:center;min-height:80px;padding:10px 4px}.close-step b{font-size:12px}.close-step small{display:none}.step-number{width:26px;height:26px}.workflow-section{padding:18px 16px}.workflow-section h2{font-size:20px;line-height:1.3}.workflow-section .actions{gap:8px;align-items:stretch}.workflow-section .actions .btn{white-space:normal;flex:1}.workflow-section .card-head{gap:12px}.summary-grid{gap:16px 12px;margin:20px 0}.summary-value strong{font-size:24px;line-height:1.2}.summary-value>span{font-size:12px}.workflow-section .form-grid{grid-template-columns:1fr}.field input,.field textarea,.field select{font-size:16px}.workflow-details{padding:0 12px}.workflow-footer{padding:11px 12px;display:flex;flex-direction:column;gap:8px;align-items:stretch}.workflow-footer .actions{flex-wrap:nowrap;justify-content:space-between}.workflow-footer .btn{white-space:normal;padding:10px;font-size:12px}.workflow-footer .save-indicator{font-size:10px}.save-bar .actions .btn-primary{flex:1}.review-step{flex-wrap:wrap}.review-step .tag{font-size:9px}.ot-hours-grid{gap:8px}.ot-hour-card{padding:12px 10px}.ot-hour-card strong{font-size:26px}.ot-hour-card>span{font-size:11px}.ot-hour-card small{font-size:10px;line-height:1.4}.ot-hours-grid .card{border-radius:10px}.inline-note,.banner{font-size:12px;overflow-wrap:anywhere}.mapping-row{flex-direction:column;align-items:stretch;gap:6px}.mapping-row select{width:100%;font-size:16px}.modal-overlay{padding:0}.modal{max-height:100dvh;height:100dvh;border-radius:0;max-width:none;width:100vw}.modal-body{padding:16px;min-height:0}.modal-head{padding:16px}.modal-head h2{font-size:21px}.modal-foot{padding:12px 16px calc(12px + env(safe-area-inset-bottom));gap:8px}.modal-foot .btn{flex:1;white-space:normal}.job-filter{flex-wrap:wrap;gap:10px}.job-filter .field{min-width:42%}.job-filter input,.job-filter select{font-size:16px}.job-filter #job-filter-count{flex-basis:100%}.job-classes-table td{padding:12px 7px;font-size:13px}.job-classes-table select{font-size:15px;min-width:106px;max-width:138px}.payroll-scan-card{padding:14px}.payroll-scan-card h3{overflow-wrap:anywhere}.payroll-read-metrics{gap:10px}.payroll-read-metrics strong{font-size:23px}.payroll-read-metrics span{font-size:11px}.segments{width:100%;display:flex}.segments button{flex:1;padding:9px 8px;font-size:11px;min-height:44px}.footer-line{gap:10px;flex-wrap:wrap}.topbar .crumb{font-size:11px}.source-row{flex-wrap:wrap}.source-row>.btn{margin-left:auto}th{font-size:10px}td{font-size:13px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
@media print{.context-bar,.workflow-callout,.mobile-bottom,.save-indicator,.location-overview,.close-steps,.skip-link{display:none!important}.content{padding:0!important}.kpis{grid-template-columns:repeat(4,1fr)}.topbar{display:none!important}.bottom-grid{display:none}.page-title{margin-bottom:12px}body{font-size:11px}.card{box-shadow:none}}
/* Dialog footer and header use the same shell for every workflow. */
.modal{display:flex;flex-direction:column;overflow:hidden}.modal-body{flex:1;overflow-y:auto;padding:24px}.modal-header,.modal-footer{flex-shrink:0}.modal-header button{width:44px;height:44px;display:grid;place-items:center}.modal-header{position:relative}.modal-footer{background:#fbf9f5;min-height:74px}.dialog-open .skip-link{display:none}.sample-strip{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:4px 12px;background:#fff2de;border:1px solid #ecd8b8;border-radius:8px;margin-bottom:16px;font-size:12px;color:#855820}.sample-strip .btn{font-size:12px}.job-classes-table [hidden]{display:none!important}
@media(max-width:600px){.modal-backdrop{padding:0;align-items:stretch}.modal{border:0;max-height:100dvh;min-height:0}.modal-header,.modal-footer{padding:14px 16px}.modal-body{padding:16px}.modal-footer{padding-bottom:calc(14px + env(safe-area-inset-bottom));flex-wrap:wrap}.modal-footer .btn{min-height:44px;white-space:normal}.workflow-footer{position:static;margin-bottom:10px;box-shadow:none}.sample-strip{font-size:10px;line-height:1.4;gap:6px}.sample-strip .btn{font-size:11px;white-space:normal;max-width:150px}.context-bar{padding:10px 12px;gap:6px;margin-bottom:20px}.context-bar .eyebrow{font-size:9px}.context-restaurant select{min-height:32px}.context-week{padding-top:8px}.week-controls input{min-height:32px}.context-bar .week-controls .btn{min-height:32px}.modal .job-filter{top:0}.modal-body .ot-hour-card strong{font-size:25px}}
@media(max-width:600px){.modal .job-classes-table tbody tr:not([hidden]){display:grid;grid-template-columns:minmax(0,1fr) 74px;gap:7px;padding:12px 0}.modal .job-classes-table tbody td{width:auto!important;padding:0!important;border:0!important}.modal .job-classes-table tbody td:first-child{grid-column:1/-1;white-space:normal}.modal .job-classes-table tbody td:nth-child(2){grid-column:1}.modal .job-classes-table tbody td:nth-child(3){grid-column:2;text-align:right;align-self:center}.modal .job-classes-table select{max-width:none;width:100%;min-width:120px}.modal .job-classes-table tbody td:before{display:none!important}.modal .job-classes-table tbody tr[hidden]{display:none!important}.modal .job-classes-table thead{display:none}}

/* Three-action groups: one clear primary action, two secondary actions on mobile. */
@media(max-width:600px){.workflow-section>.actions:has(>.btn:nth-child(3)){display:grid;grid-template-columns:1fr 1fr}.workflow-section>.actions:has(>.btn:nth-child(3))>.btn-primary{grid-column:1/-1}}

/* All-store payroll policy: common readout in upload, guided close and labor. */
.payroll-exclusions{margin:22px 0;padding:20px;border:1px solid #dacdbb;border-radius:14px;background:#fffaf3}
.payroll-exclusions header{display:flex;gap:14px;justify-content:space-between;align-items:flex-start;margin-bottom:14px}
.payroll-exclusions h3{font-size:18px;margin:0 0 6px}.payroll-exclusions header p{font-size:13px;max-width:64ch;line-height:1.55}
.payroll-exclusions table{width:100%;font-size:13px}.payroll-exclusions td:not(:first-child),.payroll-exclusions th:not(:first-child){text-align:right;white-space:nowrap}
.payroll-exclusions td small{display:block;font-size:11px;color:#675a4b;line-height:1.6}.payroll-exclusions tfoot{background:#eee2d0}.payroll-exclusions tfoot th{text-align:left}
.payroll-exclusions>.small{margin:14px 0;line-height:1.6}.exclusion-bridge>div,.exclusion-tax-details p{display:flex;justify-content:space-between;gap:12px;font-size:13px;padding:7px 0;border-bottom:1px solid #e8dfd4}
.payroll-exclusions details{margin:14px 0}.exclusion-tax-details h4{margin:18px 0 4px}.payroll-exclusions .scan-error{font-size:13px;line-height:1.5;margin:12px 0}
@media(max-width:600px){.payroll-exclusions{padding:12px;margin:18px 0}.payroll-exclusions header{flex-direction:column}.payroll-exclusions table{font-size:11px;min-width:360px}.payroll-exclusions th,.payroll-exclusions td{padding:8px 6px}.payroll-exclusions th:first-child,.payroll-exclusions td:first-child{min-width:104px}.exclusion-bridge>div{font-size:12px}.payroll-exclusions .table-wrap{overflow-x:auto}}

@media(max-width:600px){
 .payroll-exclusions table{min-width:0}.payroll-exclusions thead{display:none}
 .payroll-exclusions tbody,.payroll-exclusions tfoot{display:block}.payroll-exclusions tr{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:10px 0;border-bottom:1px solid #e3d7c6;gap:3px}
 .payroll-exclusions td,.payroll-exclusions th{display:block;border:0;padding:4px 3px;min-width:0;text-align:left!important;white-space:normal!important}
 .payroll-exclusions td:first-child,.payroll-exclusions th:first-child{grid-column:1 / -1;min-width:0;font-size:13px}
 .payroll-exclusions td[data-label]::before{content:attr(data-label);display:block;font-weight:400;font-size:10px;color:#675a4b;margin-bottom:4px}
 .payroll-exclusions td[data-label]{font-size:12px;font-variant-numeric:tabular-nums}.payroll-exclusions tfoot tr{padding:12px 5px}
}

/* Current, owner-provided expected roster; does not change payroll amounts. */
.payroll-roster-note{margin:14px 0;padding:14px 16px;background:#F4EEE4;border:1px solid #e2d5bd;border-left:3px solid #F28B24;border-radius:8px;overflow-wrap:anywhere}
.payroll-roster-note>b{display:block;font-size:13px;color:#201A14}
.payroll-roster-note p{margin:7px 0;font-size:15px;font-weight:600;color:#201A14}
.payroll-roster-note small{display:block;font-size:12px;line-height:1.5;color:#675a4b}
.payroll-exclusions tr[data-expected="true"] td{background:#faf5ec}
.roster-review,.roster-additional{margin-bottom:14px}

/* 1.5 Owner operating view. Brand colors retained; semantic status uses text. */
:root{--muted:#675f53;--line:#ded6c9}
body{font-variant-numeric:tabular-nums}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.btn,.segments button,.nav-link{min-height:44px}.btn{font-size:13px}.tag{font-size:10px}.card-head p,.page-title p{font-size:13px}.eyebrow{font-size:11px}.sidebar{overflow-y:auto}.nav-bottom{padding-top:20px}.sidebar .nav-group{color:#b0a28e}.brand-sub{color:#c2b5a1}.content{max-width:1760px}.page-title h1{font-size:clamp(25px,2.2vw,35px)}.ops-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:14px 0 18px}.ops-readiness{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:12px 16px;background:#ece7dd;border:1px solid var(--line);border-radius:9px;margin-bottom:18px;font-size:12px;color:#544a3d}.ops-readiness span:first-child{display:flex;align-items:center;gap:8px}.ops-kpi-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:22px}.ops-kpi{padding:21px 22px;background:#fff;border:1px solid var(--line);border-radius:13px;display:flex;flex-direction:column;gap:8px;min-width:0;box-shadow:0 3px 12px #1f170704}.ops-kpi-label{display:flex;justify-content:space-between;align-items:center;gap:7px;font-size:13px;font-weight:650;min-height:23px}.ops-kpi>strong{font-size:clamp(26px,2.4vw,36px);font-weight:650;letter-spacing:-1.2px;line-height:1.3}.ops-kpi-sub{font-size:13px;font-weight:600}.ops-kpi small{font-size:12px;color:var(--muted);line-height:1.5}.ops-kpi-lead{background:var(--saddle);color:var(--cream);border-color:var(--saddle);box-shadow:inset 0 3px var(--orange)}.ops-kpi-lead small{color:#c9baa3}.ops-performance{display:inline-flex;align-items:center;font-size:10px;border-radius:5px;padding:4px 6px;background:#efebe5;color:#67594a;font-weight:650;white-space:nowrap}.ops-performance.above{background:#f9eae4;color:#8d3727}.ops-performance.within{background:#e9f0e8;color:#295e3d}.ops-performance.neutral{background:#edeae5;color:#61574a}.ops-status{display:inline-flex;gap:5px;align-items:center;font-size:11px;font-weight:650;white-space:nowrap;padding:5px 6px;border:1px solid #ddd3c5;border-radius:5px;background:#f8f4ed;color:#665440}.ops-status .icon{width:13px;height:13px}.ops-status.ready{color:#295e3d;border-color:#cddccb;background:#f0f5ee}.ops-comparison{margin-bottom:22px}.ops-comparison .card-head{margin-bottom:12px}.ops-comparison table{width:100%}.ops-comparison td,.ops-comparison th{padding:8px 9px;vertical-align:top}.ops-comparison th[scope=row]{min-width:160px}.ops-comparison th .btn{flex-direction:column;align-items:flex-start;gap:2px;text-align:left;white-space:normal;padding:8px 5px;color:var(--text)}.ops-comparison th .btn small{font-weight:400;color:var(--muted)}.ops-comparison .ops-cell{padding:7px 4px;display:flex;align-items:flex-start;flex-direction:column;gap:5px;min-height:58px;text-align:left;min-width:90px;border-radius:7px}.ops-cell b{font-weight:650;font-size:15px}.ops-cell small{font-size:11px;font-weight:400;color:var(--muted);white-space:normal}.ops-cell:hover{background:#f6f0e6}.ops-selected-row{background:#fcf9f4}.ops-period-coverage{display:block;font-size:11px;margin-top:6px;color:var(--muted)}.ops-comparison tfoot{background:#f2ece2;font-size:12px}.ops-comparison footer,.ops-gaps footer,.ops-attention footer{padding-top:12px;margin-top:12px;font-size:12px;color:var(--muted);border-top:1px solid var(--line)}.ops-sort{width:185px;flex:none}.ops-mobile-stores{display:none}.ops-two-column{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:20px;margin-bottom:22px}.ops-exception{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;border-top:1px solid var(--line);padding:15px 0}.ops-exception span,.ops-exception small{display:block;font-size:11px;color:var(--muted);margin-top:5px}.ops-exception strong{font-size:18px;color:#8d3727}.ops-quality-row{display:flex;justify-content:space-between;align-items:center;padding:12px 0;gap:8px;border-top:1px solid var(--line)}.ops-quality-row b{display:block;font-size:13px;margin-bottom:6px}.ops-quality-row b small{font-weight:400;color:var(--muted)}.ops-empty{padding:22px 6px;color:var(--muted)}.ops-empty b{color:var(--text);display:block}.ops-empty p{margin:8px 0 15px}.ops-payroll-bridge{margin-bottom:22px;border-top:3px solid #a38058}.ops-bridge-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}.ops-bridge-grid>div{padding:16px 15px;border:1px solid var(--line);background:#fcfaf6;display:flex;flex-direction:column;gap:8px}.ops-bridge-grid>div+div{border-left:0}.ops-bridge-grid>div:first-child{border-radius:8px 0 0 8px}.ops-bridge-grid>div:last-child{border-radius:0 8px 8px 0;background:var(--charcoal);color:var(--cream);border-color:var(--charcoal)}.ops-bridge-grid small{font-size:12px;font-weight:650}.ops-bridge-grid strong{font-size:24px;letter-spacing:-.7px}.ops-bridge-grid span{font-size:11px;color:var(--muted)}.ops-bridge-grid>div:last-child span{color:#d4c6b0}.ops-gaps{margin-bottom:22px}.ops-gap-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.ops-gap-grid article{padding:16px;border:1px solid var(--line);border-radius:9px;display:flex;flex-direction:column;gap:8px}.ops-gap-grid article>div{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap}.ops-gap-grid article>strong{font-size:25px;letter-spacing:-.7px}.ops-gap-grid article>p,.ops-gap-grid small{font-size:12px;color:var(--muted)}.ops-gap-grid .btn{margin-top:auto}.ops-target-tiles,.ops-target-nav{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.ops-target-tiles>button{flex:1 1 200px;display:flex;flex-direction:column;align-items:flex-start;gap:8px;text-align:left;border:1px solid var(--line);padding:15px;border-radius:8px}.ops-target-nav .btn{white-space:normal}.ops-action-preview{display:flex;justify-content:space-between;align-items:center;gap:10px;min-height:64px;width:100%;text-align:left;padding:12px 0;border-top:1px solid var(--line)}.ops-action-preview small{display:block;color:var(--muted);margin-top:5px}.ops-chart-picker{width:150px;flex:none}.ops-chart{width:100%;height:auto}.ops-chart text{font-size:11px;fill:#6b6154}.ops-grid-line{stroke:#e3dccf;stroke-dasharray:3 4}.ops-current-line{stroke:#ba5b0d;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.ops-chart-dot{fill:#ba5b0d}.ops-prior-line{stroke:#7a7061;stroke-width:1.8;stroke-dasharray:5 5}.ops-chart-legend{display:flex;gap:22px;font-size:12px;color:var(--muted);margin-bottom:10px}.ops-chart-legend span:before{content:'';display:inline-block;width:18px;height:2px;background:#ba5b0d;vertical-align:middle;margin-right:6px}.ops-chart-legend span+span:before{background:repeating-linear-gradient(90deg,#7a7061 0 5px,transparent 5px 8px)}.ops-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:22px}.ops-task{display:flex;flex-direction:column;gap:15px}.ops-task header{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}.ops-task p{font-size:13px;overflow-wrap:anywhere}.ops-task h2{font-size:21px}.ops-task-baseline{display:flex;align-items:baseline;gap:12px;border-bottom:1px solid var(--line);padding-bottom:12px}.ops-task-baseline b{font-size:26px}.ops-task-baseline span{font-size:12px;color:var(--muted)}.ops-task-meta{display:flex;justify-content:space-between;gap:10px;font-size:13px;font-weight:650}.ops-overdue{color:#973c29}.ops-task-outcome{display:flex;flex-direction:column;gap:7px;background:#f7f3ec;padding:14px;border-radius:8px;font-size:13px}.ops-task-outcome small{color:var(--muted);font-size:12px}.ops-task>.btn{margin-top:auto}.ops-gap-hero{padding:18px;text-align:center;background:#f7f1e6;border-radius:9px;margin-bottom:18px}.ops-gap-hero strong{display:block;font-size:38px;margin:12px 0 2px}.ops-gap-hero>span:last-child{display:block;font-size:13px}.ops-access-stores{border:1px solid var(--line);border-radius:8px;margin:20px 0;padding:15px;display:grid;grid-template-columns:1fr 1fr;gap:10px}.ops-access-stores legend{font-weight:650;padding:0 8px}.ops-access-list>div{display:flex;align-items:center;justify-content:space-between;padding:14px 0;border-top:1px solid var(--line);gap:10px}.ops-access-list small{display:block;color:var(--muted);font-size:12px;overflow-wrap:anywhere}.manager-shell{max-width:1100px;margin:0 auto;padding:25px 22px 80px}.manager-top{background:var(--ink);color:var(--cream);padding:18px 24px;display:flex;justify-content:space-between;align-items:center;gap:15px}.manager-top strong{font-family:Georgia,serif;letter-spacing:1px}.manager-top small{display:block;color:#cfbda3;font-size:11px;margin-top:4px}.manager-login{max-width:440px;margin:5vh auto;padding:28px}.manager-login h1{font-size:26px}.manager-login .field{margin-top:20px}.manager-login .checkbox{margin:20px 0}.manager-login .btn{width:100%}.manager-error{background:#f9eae4;color:#8d3727;padding:12px;border-radius:7px;margin:14px 0;font-size:13px}.manager-note{margin:14px 0;font-size:13px;color:var(--muted)}.manager-controls{display:flex;gap:12px;align-items:end;margin:22px 0}.manager-controls .field{flex:1}.manager-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:20px 0}.manager-metrics article{padding:16px}.manager-metrics strong{display:block;font-size:25px;margin-top:8px}.manager-task-form textarea{min-height:90px}.manager-task-form .field{margin:12px 0}.manager-task-form .btn{margin-top:12px;width:100%}
@media(min-width:1600px){.ops-kpi-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.ops-kpi-label{flex-direction:column;align-items:flex-start;min-height:45px}.ops-kpi>strong{font-size:32px}}
@media(max-width:1150px){.ops-two-column{grid-template-columns:1fr}.ops-gap-grid{grid-template-columns:1fr 1fr}.ops-bridge-grid{grid-template-columns:1fr 1fr;gap:10px}.ops-bridge-grid>div+div{border-left:1px solid var(--line)}.ops-bridge-grid>div{border-radius:8px!important}.ops-kpi-label{flex-wrap:wrap}}
@media(max-width:800px){.ops-toolbar{align-items:stretch;flex-direction:column}.ops-toolbar .actions{justify-content:flex-start}.ops-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.ops-kpi{padding:16px}.ops-kpi>strong{font-size:28px}.ops-kpi-label{font-size:12px;align-items:flex-start;flex-direction:column}.ops-comparison .card-head{flex-direction:column}.ops-desktop-table{display:none}.ops-mobile-stores{display:block}.ops-mobile-store{border-top:1px solid var(--line)}.ops-mobile-store>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:18px 0;cursor:pointer;list-style:none;min-height:70px}.ops-mobile-store>summary:after{content:'+';font-size:22px;color:#7a6750}.ops-mobile-store[open]>summary:after{content:'−'}.ops-mobile-store>summary span{display:flex;flex-direction:column;gap:5px;min-width:0}.ops-mobile-store>summary span:first-child{flex:1}.ops-mobile-store>summary b{font-size:14px}.ops-mobile-store>summary small{font-size:12px;color:var(--muted)}.ops-mobile-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;background:#faf6ef;padding:14px;border-radius:8px}.ops-mobile-stats>div{display:flex;flex-direction:column}.ops-mobile-stats>div>small{font-size:11px;color:var(--muted)}.ops-mobile-stats .ops-cell{width:100%}.ops-mobile-stats b{font-size:13px}.ops-action-grid{grid-template-columns:1fr}.ops-exception{grid-template-columns:minmax(0,1fr) auto}.ops-exception>.btn{grid-column:1/-1;justify-self:stretch}.ops-bridge-grid strong{font-size:23px}.ops-bridge-grid small{font-size:12px}.ops-readiness{flex-direction:column;align-items:flex-start}.ops-sort{width:100%}.ops-access-stores{grid-template-columns:1fr}.manager-controls{flex-wrap:wrap}.manager-controls .field{flex:1 1 100%}.manager-metrics{grid-template-columns:1fr 1fr}.manager-top{padding:16px}.manager-shell{padding:20px 14px 60px}.manager-login{margin:25px auto;padding:22px}.ops-comparison .ops-performance{font-size:10px}.ops-payroll-bridge .card-head{flex-wrap:wrap}.ops-chart-picker{max-width:145px}.ops-chart-legend{font-size:11px;gap:8px;flex-wrap:wrap}}
@media(max-width:380px){.ops-kpi>strong{font-size:25px}.ops-kpi{padding:13px}.ops-gap-grid,.ops-bridge-grid{grid-template-columns:1fr}.ops-toolbar .segments{width:100%}.ops-toolbar .segments button{flex:1;padding:8px}.ops-mobile-store>summary .ops-status{font-size:10px;white-space:normal}.ops-mobile-store>summary b{font-size:12px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media print{.ops-toolbar,.ops-actions,.manager-top .btn{display:none!important}.ops-desktop-table{display:block!important}.ops-mobile-stores{display:none!important}}

.ops-action-grid{align-items:start}.ops-cell-gap{font-variant-numeric:tabular-nums}

/* KPI reports: same brand, separate low-ink print surface. */
.report-controls{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin:18px 0}.report-controls .field{min-width:160px;flex:1}.report-controls .btn{min-height:44px}.report-controls select{width:100%}.report-approval{margin:12px 0}.report-approval summary{cursor:pointer;font-weight:700}.report-output{max-width:1120px;margin:20px auto}.kpi-report-sheet{background:#fff;color:#201a14;padding:28px 30px;margin:18px auto;border:1px solid #d8d0c2;border-radius:10px;box-shadow:0 4px 20px #201a1408;font:13px/1.35 Arial,Helvetica,sans-serif;overflow-wrap:anywhere}.kpi-report-header{display:flex;justify-content:space-between;gap:22px;border-bottom:3px solid #f28b24;padding-bottom:15px;margin-bottom:16px}.kpi-report-brand{font-size:16px;letter-spacing:2px;font-weight:800}.kpi-report-brand span{font-size:8px;letter-spacing:1.5px;display:block;margin-top:2px}.kpi-report-header h1{font-size:22px;line-height:1.15;margin:10px 0 5px;letter-spacing:-.4px}.kpi-report-header h1 span{font-size:15px;font-weight:500}.kpi-report-header p{font-size:12px;margin:0;color:#655c51}.kpi-report-period{text-align:right;min-width:205px;font-size:11px;display:flex;flex-direction:column;gap:5px;justify-content:center}.kpi-report-period strong{font-size:12px}.kpi-report-headline{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 20px;margin-bottom:18px;background:#17110d;color:#f4eee4;border-left:4px solid #f28b24;border-radius:5px}.kpi-report-headline span{display:block;font-size:9px;letter-spacing:1.5px;color:#ffc476;margin-bottom:5px}.kpi-report-headline strong{display:block;font-size:14px;max-width:480px}.kpi-report-headline small{display:block;font-size:10px;margin-top:6px;color:#d7cdbd}.kpi-report-headline>b{font-size:31px;white-space:nowrap;font-variant-numeric:tabular-nums}.kpi-report-table,.kpi-comparison-table{width:100%;border-collapse:collapse;table-layout:fixed;font:inherit}.kpi-report-table th,.kpi-report-table td,.kpi-comparison-table th,.kpi-comparison-table td{padding:6px 7px;border-bottom:1px solid #e7e1d7;text-align:right;vertical-align:middle;white-space:normal;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.kpi-report-table th:first-child,.kpi-comparison-table th:first-child{text-align:left}.kpi-report-table tbody th,.kpi-comparison-table tbody th{font-weight:500;letter-spacing:0;text-transform:none;color:#201a14}.kpi-report-table thead th,.kpi-comparison-table thead th{font-size:10px;font-weight:700;color:#6d5035;background:#f4eee4;text-transform:none;letter-spacing:0}.kpi-report-section th{background:#f5f1ea!important;color:#6b3c16!important;font-size:10px!important;font-weight:700!important;text-align:left!important;padding:7px!important;letter-spacing:.5px!important}.kpi-report-table .metric-col{width:42%}.kpi-report-table .actual-col{width:17%}.kpi-report-table .target-col{width:13%}.kpi-report-table .status-col{width:12%}.kpi-report-table .rank-col{width:16%}.kpi-report-value{font-weight:700}.kpi-report-status,.kpi-report-rank{font-size:10px}.kpi-report-status.met{color:#286045}.kpi-report-status.not-met{color:#8d321c;font-weight:700}.kpi-report-notes{font-size:10px;line-height:1.45;margin:14px 0 10px;padding:9px 11px;border-left:2px solid #c18b53;background:#fbf8f2}.kpi-report-footer{display:flex;justify-content:space-between;gap:14px;border-top:1px solid #d8d0c2;padding-top:8px;margin-top:10px;font-size:9px;color:#62594d}.kpi-comparison-table td b{display:block;font-size:14px}.kpi-comparison-table small{display:block;font-size:10px;margin-top:3px;line-height:1.3}.kpi-comparison-table thead th{font-size:12px}.kpi-supporting-sheet .kpi-report-table th{width:70%}.report-detail-toggle{margin-top:16px}.report-detail-toggle>summary{cursor:pointer;font-weight:700;padding:12px}#kpi-print-root{display:none}.manager-report-tools{margin:22px 0 10px}.manager-report-tools h2{margin-bottom:8px}.report-filter-note{font-size:12px;color:#746758}.kpi-report-output{overflow:visible;min-width:0}.report-policy-copy{max-width:850px;font-size:13px;line-height:1.6}.social-exclusion-detail{padding:12px;margin:12px 0;border:1px solid #d8d0c2;border-radius:7px}.social-exclusion-detail h4{margin:0 0 7px}
@media(max-width:700px){.kpi-report-sheet{padding:16px 12px;font-size:11px;margin:12px 0}.kpi-report-header{display:block}.kpi-report-period{text-align:left;min-width:0;margin-top:12px;gap:3px}.kpi-report-header h1{font-size:20px}.kpi-report-headline{padding:12px;gap:10px}.kpi-report-headline strong{font-size:12px}.kpi-report-headline>b{font-size:23px}.kpi-report-table th,.kpi-report-table td{padding:5px 3px;font-size:10px}.kpi-report-table .metric-col{width:37%}.kpi-report-table .actual-col{width:20%}.kpi-report-table .target-col{width:14%}.kpi-report-table .status-col{width:12%}.kpi-report-table .rank-col{width:17%}.kpi-report-table thead th{font-size:9px}.kpi-report-footer{display:block}.kpi-report-footer span{display:block;margin-top:4px}.kpi-comparison-sheet{overflow-x:auto}.kpi-comparison-table{min-width:650px}.report-controls .btn{flex:1}.report-controls{align-items:stretch}}
@page kpiStore{size:Letter portrait;margin:.4in .4in .45in}
@page kpiComparison{size:Letter landscape;margin:.4in .4in .45in}
@media print{
 body.kpi-report-print{background:#fff!important;padding:0!important;margin:0!important;color:#111!important}
 body.kpi-report-print>*:not(#kpi-print-root){display:none!important}
 body.kpi-report-print>#kpi-print-root{display:block!important;margin:0!important;padding:0!important;width:auto!important}
 #kpi-print-root .kpi-report-sheet{page:kpiStore;display:block!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:white!important;margin:0!important;padding:0!important;width:100%!important;max-width:none!important;font:10pt/1.22 Arial,Helvetica,sans-serif!important;break-before:page;page-break-before:always;break-inside:auto!important;overflow:visible!important}
 #kpi-print-root .kpi-report-sheet:first-child{break-before:auto;page-break-before:auto}
 #kpi-print-root .kpi-comparison-sheet{page:kpiComparison}
 #kpi-print-root .kpi-report-header{display:flex!important;break-inside:avoid;break-after:avoid;margin:0 0 10px;padding-bottom:9px;border-bottom:2px solid #9c5924}
 #kpi-print-root .kpi-report-header h1{font-size:17pt;margin:6px 0 4px}
 #kpi-print-root .kpi-report-header p{font-size:9pt}
 #kpi-print-root .kpi-report-brand{font-size:12pt}
 #kpi-print-root .kpi-report-brand span{font-size:7pt}
 #kpi-print-root .kpi-report-period{font-size:8pt;text-align:right;min-width:190px;margin:0}
 #kpi-print-root .kpi-report-period strong{font-size:9pt}
 #kpi-print-root .kpi-report-headline{background:#fff!important;color:#111!important;border:1px solid #b7aa98!important;border-left:3px solid #9c5924!important;border-radius:0;padding:9px 12px;margin:0 0 10px;break-inside:avoid;break-after:avoid}
 #kpi-print-root .kpi-report-headline strong{font-size:10pt;color:#111}
 #kpi-print-root .kpi-report-headline small{font-size:7.5pt;color:#4e4942}
 #kpi-print-root .kpi-report-headline span{font-size:7pt;color:#6e4a28}
 #kpi-print-root .kpi-report-headline>b{font-size:24pt;color:#111}
 #kpi-print-root table{display:table!important;table-layout:fixed!important;width:100%!important;min-width:0!important;break-inside:auto!important}
 #kpi-print-root thead{display:table-header-group!important}#kpi-print-root tbody{display:table-row-group!important}
 #kpi-print-root tr{display:table-row!important;break-inside:avoid!important;page-break-inside:avoid!important}
 #kpi-print-root th,#kpi-print-root td{display:table-cell!important;padding:3px 5px!important;font-size:9pt!important;white-space:normal!important;overflow-wrap:anywhere!important;line-height:1.2!important;background:#fff!important;color:#111!important}
 #kpi-print-root .kpi-report-section{break-after:avoid;page-break-after:avoid}
 #kpi-print-root .kpi-report-section th{font-size:8pt!important;font-weight:700!important;background:#f7f5f0!important;border-top:1px solid #ab8a64;padding:5px!important;color:#5c3f21!important}
 #kpi-print-root .kpi-report-status,#kpi-print-root .kpi-report-rank{font-size:8pt!important}
 #kpi-print-root .kpi-report-table .metric-col{width:42%}#kpi-print-root .kpi-report-table .actual-col{width:17%}#kpi-print-root .kpi-report-table .target-col{width:13%}#kpi-print-root .kpi-report-table .status-col{width:12%}#kpi-print-root .kpi-report-table .rank-col{width:16%}
 #kpi-print-root .kpi-report-notes{font-size:7.6pt;line-height:1.3;margin:8px 0;padding:5px 8px;background:#fff!important;break-inside:avoid}
 #kpi-print-root .kpi-report-footer{display:flex;font-size:7pt;margin-top:7px;padding-top:5px;break-inside:avoid}
 #kpi-print-root .kpi-comparison-table th,#kpi-print-root .kpi-comparison-table td{padding:3px 5px!important;font-size:9pt!important}
 #kpi-print-root .kpi-comparison-table td b{font-size:10pt;line-height:1.2}
 #kpi-print-root .kpi-comparison-table small{font-size:8pt;line-height:1.15;margin-top:2px}
 #kpi-print-root .btn,#kpi-print-root button{display:none!important}
}
/* Keep existing cost-gap cards readable when labels wrap on narrow phones. */
.ops-gap-grid article{min-width:0}.ops-gap-grid .btn{white-space:normal}
@media(max-width:600px){.ops-gap-grid{grid-template-columns:minmax(0,1fr)}}

/* Existing design tokens, additive combined reporting view only. */
.combined-source-note{border-left:4px solid var(--orange,#b86e32)}
.combined-source-table th:first-child{min-width:170px}.combined-source-table td{white-space:normal}
.combined-source-table .actions{flex-wrap:wrap}.combined-source-table tfoot{font-weight:700}
.combined-key-cards{margin:20px 0}.combined-key-cards .ops-kpi:last-child{background:var(--ink,#17110d);color:var(--cream,#f0e8d7)}
.combined-key-cards .ops-kpi:last-child .ops-kpi-label{color:inherit}
.combined-print-actions{margin:20px 0}.combined-cost-entry input,.combined-cost-entry select{min-height:44px}
@media(max-width:600px){.combined-source-table{min-width:620px}.combined-key-cards{grid-template-columns:1fr 1fr}.combined-key-cards .ops-kpi strong{font-size:23px}.context-restaurant strong{font-size:15px}}
@media print{.combined-formula,.combined-key-cards,.combined-source-note{display:none!important}}

/* Read-only payroll workplace reconciliation: existing brand/UI, no new inputs. */
.payroll-workplace-panel{margin:18px 0;min-width:0}.payroll-split-matrix{max-width:100%;overflow-x:auto}.payroll-split-matrix table{width:100%;table-layout:fixed;min-width:640px}.payroll-split-matrix th:first-child{width:35%;text-align:left}.payroll-split-matrix th,.payroll-split-matrix td{padding:9px 10px;vertical-align:top;overflow-wrap:anywhere}.payroll-split-matrix td{text-align:right;font-variant-numeric:tabular-nums}.payroll-split-total{font-weight:650;border-top:2px solid var(--line);background:var(--ivory)}.payroll-split-check{padding:11px 12px;border:1px solid var(--line);border-left:3px solid var(--orange);font-size:13px;line-height:1.5}.payroll-split-intro{font-size:13px;line-height:1.5}.payroll-split-bridge{margin:16px 0}.payroll-split-bridge table{width:100%;table-layout:fixed}.payroll-split-bridge th{width:72%;text-align:left;white-space:normal}.payroll-split-bridge td{text-align:right}.payroll-split-actions{flex-wrap:wrap;margin:15px 0}.payroll-split-actions button{white-space:normal;text-align:left}.payroll-split-jobs{margin-top:16px}.payroll-split-jobs h3{margin-top:18px}.payroll-split-jobs summary{cursor:pointer;min-height:44px}.payroll-split-jobs table{width:100%;min-width:440px}.payroll-split-jobs th:first-child{white-space:normal}.payroll-split-jobs small{display:block}.payroll-split-sheet h2{font-size:22px;margin:8px 0}.payroll-split-sheet .small{font-size:12px;line-height:1.5}
@media print{#kpi-print-root .payroll-split-sheet .payroll-split-matrix{overflow:visible}#kpi-print-root .payroll-split-sheet .table-wrap{overflow:visible!important}#kpi-print-root .payroll-split-sheet h2{font-size:17pt}#kpi-print-root .payroll-split-sheet h3{font-size:11pt}#kpi-print-root .payroll-split-sheet p{font-size:9pt;line-height:1.35}#kpi-print-root .payroll-split-sheet .payroll-split-matrix th:first-child{width:34%}#kpi-print-root .payroll-split-sheet .payroll-split-bridge{break-inside:avoid}#kpi-print-root .payroll-split-sheet .payroll-split-check{background:#fff!important;border:1px solid #b7aa98;padding:8px}#kpi-print-root .payroll-split-sheet .payroll-split-actions,#kpi-print-root .payroll-split-sheet .payroll-split-jobs{display:none!important}}
.payroll-split-matrix th,.payroll-split-bridge th,.payroll-split-jobs th{white-space:normal;text-transform:none;letter-spacing:0;font-size:12px}.payroll-split-matrix th:not(:first-child){text-align:right}.payroll-split-jobs .table-wrap{max-width:100%;overflow-x:auto}

/* Shared saving follows the existing brand, without altering report printing. */
.workspace-sync-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px;margin-bottom:20px;background:var(--ivory,#f4eee4);border:1px solid #d9ccba;border-radius:12px}
.workspace-sync-banner p{font-size:12px;margin:5px 0 0;line-height:1.5;overflow-wrap:anywhere}
.workspace-sync-banner.needs-attention{border-left:4px solid #b86122}
.workspace-sync-message{padding:12px 0;font-weight:600;line-height:1.5}
.workspace-tools{flex-wrap:wrap;margin:18px 0}
.workspace-history article{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid #d9ccba;font-size:12px}
.workspace-history p{margin:3px 0;font-size:12px}
.save-indicator{max-width:340px;white-space:normal}
@media(max-width:640px){.workspace-sync-banner,.workspace-history article{align-items:flex-start;flex-direction:column}.workspace-sync-banner .btn{width:100%}.save-indicator{max-width:190px;font-size:10px}.workspace-tools .btn{width:100%}}
@media print{.workspace-sync-banner,.workspace-tools{display:none!important}}

/* Attachment-only recovery: readable on phones without new visual branding. */
.original-recovery-list{margin:14px 0;overflow-wrap:anywhere}
.original-recovery-list>div{max-height:230px;overflow:auto;padding-right:8px}
.original-recovery-list p{margin:10px 0;padding-bottom:10px;border-bottom:1px solid var(--line,#e6ded1)}
.original-recovery-list small{color:var(--muted,#685e54)}
#recover-original-files{max-width:100%;box-sizing:border-box}
.workspace-sync-banner>.actions{flex-wrap:wrap;flex-shrink:0}
@media(max-width:600px){.workspace-sync-banner>.actions{width:100%;flex-shrink:1}.workspace-sync-banner>.actions .btn{flex:1;white-space:normal}.original-recovery-list>div{max-height:170px}}

/* Source-scorecard scope label: do not squeeze a nonnumeric headline. */
.kpi-report-sheet[data-source-component="true"] .kpi-report-headline>b{font-size:17px;white-space:normal;text-align:right;min-width:85px;max-width:140px;line-height:1.25}
@media print{#kpi-print-root .kpi-report-sheet[data-source-component="true"] .kpi-report-headline>b{font-size:12pt;white-space:normal}}
@media print{
 /* Two explanatory source-only rows fit without reducing the existing 9pt text. */
 #kpi-print-root .kpi-report-sheet[data-source-component="true"] .kpi-report-table th,
 #kpi-print-root .kpi-report-sheet[data-source-component="true"] .kpi-report-table td{padding:2px 5px!important}
 #kpi-print-root .kpi-report-sheet[data-source-component="true"] .kpi-report-section th{padding:4px 5px!important}
}

/* v1.8: additive controls and decision-focused report. Existing UI retained. */
.kpi-preference-strip{display:flex;justify-content:flex-end;align-items:center;gap:12px;margin:8px 0 20px;flex-wrap:wrap}
.kpi-name-choice{display:flex;gap:8px;align-items:center;font-size:12px;color:var(--muted,#706354)}
.kpi-name-choice select{min-height:40px;padding:8px 30px 8px 10px;border:1px solid #d9cebf;border-radius:7px;background:#fff;color:#241d15;font-size:12px}
.report-controls{grid-template-columns:minmax(215px,1.35fr) repeat(4,minmax(120px,1fr))}
.report-kind-field select{font-weight:600}
.target-navigation{display:flex;align-items:end;gap:16px;justify-content:space-between;margin:18px 0}
.target-navigation .field{flex:1;max-width:520px}.target-settings-panel{padding:24px;margin:18px 0}
.target-editor-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px 24px;margin:12px 0 28px}
.target-editor-field{display:flex;flex-direction:column;gap:7px;min-width:0;font-size:13px;font-weight:600}
.target-editor-field>span{min-height:36px;line-height:1.4}.target-editor-field>div{display:flex;align-items:center;border:1px solid #d6cbbb;border-radius:8px;background:#fff;overflow:hidden}
.target-editor-field input{width:100%;min-width:0;border:0;background:transparent;padding:12px;font-size:16px;outline-offset:-3px}.target-editor-field b{padding:0 12px;color:#796a55;font-size:13px}
.target-editor-field small{font-size:11px;color:#6c6256;line-height:1.45;font-weight:400}
.target-settings-panel .actions{margin-top:18px}.target-budget-table input{max-width:220px;width:100%;padding:10px;border:1px solid #d5cabd;border-radius:6px;font-size:15px}
.target-budget-table input:disabled{background:#eee9e1;color:#746e65}.label-reference{padding:22px;margin:20px 0}.label-reference summary{font-weight:700;cursor:pointer}.label-reference .btn{margin:12px 0}
.label-guide-table{width:100%;font-size:12px;border-collapse:collapse}.label-guide-table th,.label-guide-table td{text-align:left;padding:12px;border-bottom:1px solid #e9e1d6;vertical-align:top;line-height:1.45}.label-guide-table td{min-width:160px}.label-guide-table td:last-child{min-width:270px}
.quickbooks-panel{padding:24px;margin:18px 0}.quickbooks-panel p{line-height:1.6;font-size:13px}.quickbooks-panel code{overflow-wrap:anywhere}.quickbooks-panel .summary-grid>div{display:flex;flex-direction:column;gap:8px}.quickbooks-panel .summary-grid span{font-size:12px;color:#6c6256}.quickbooks-panel .summary-grid b{font-size:14px;overflow-wrap:anywhere}
.manager-performance-snapshot{color:#282119;padding:28px;max-width:1050px;margin:auto;background:#fff;font-variant-numeric:tabular-nums}
.manager-performance-snapshot .kpi-report-header{margin-bottom:12px}.manager-performance-snapshot h1{font-size:20px}
.snapshot-intro{display:flex;gap:12px;align-items:center;justify-content:space-between;margin:14px 0 18px}.snapshot-intro .eyebrow{font-size:12px;letter-spacing:.12em}.snapshot-intro p{font-size:13px;margin:5px 0 0;color:#736651}
.snapshot-completeness{font-size:11px;max-width:220px;text-align:right;background:#f4efe6;border-radius:6px;padding:8px 11px}
.snapshot-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.snapshot-kpi{border:1px solid #e1d7c8;border-top:3px solid #b7ab98;border-radius:8px;padding:14px;min-width:0;position:relative}
.snapshot-kpi h2{font-size:12px;line-height:1.35;margin:0 0 9px;font-weight:650;min-height:32px;color:#5c5040}
.snapshot-actual{display:block;font-size:27px;line-height:1.15;letter-spacing:-.02em;overflow-wrap:anywhere;margin:0 0 7px}
.snapshot-kpi[data-snapshot-metric=primeNPercent]{background:#fbf6ed;border-top-color:#e08327}
.snapshot-grade{display:block;font-size:11px;font-weight:700;margin-bottom:8px}.snapshot-good{border-top-color:#58745e}.snapshot-good .snapshot-grade{color:#3e6448}.snapshot-attention{border-top-color:#9d4930}.snapshot-attention .snapshot-grade{color:#923d28}
.snapshot-target,.snapshot-gap{font-size:11px;line-height:1.4;color:#665943}.snapshot-gap{margin-top:2px}
.snapshot-bullet{height:5px;background:#eee8de;position:relative;margin-top:11px;border-radius:5px}.snapshot-bullet i{display:block;height:5px;background:#84745e;border-radius:5px}.snapshot-good .snapshot-bullet i{background:#668069}.snapshot-attention .snapshot-bullet i{background:#a26148}.snapshot-bullet b{position:absolute;top:-3px;height:11px;width:2px;background:#241b11}
.snapshot-middle{display:grid;grid-template-columns:1.08fr 1fr;gap:18px;margin:18px 0}
.snapshot-panel{border:1px solid #e1d7c8;border-radius:8px;padding:16px;min-width:0}
.snapshot-panel h2,.snapshot-insights h2,.snapshot-actions>h2{font-size:13px;margin:0 0 7px;font-weight:750}
.snapshot-panel>p{font-size:10px;margin:0;color:#74634d}.snapshot-trend{width:100%;height:auto;display:block;margin-top:12px}
.snapshot-trend text{fill:#6c604f;font-family:inherit;font-size:9px}.snapshot-grid{stroke:#eae2d5;stroke-width:1;fill:none}
.snapshot-line-sales{stroke:#c87021;stroke-width:2.5;fill:none;stroke-linecap:round;stroke-linejoin:round}.snapshot-line-budget{stroke:#6f756a;stroke-width:1.5;fill:none;stroke-dasharray:5 4}.snapshot-trend circle.snapshot-line-sales{fill:#c87021}.snapshot-trend circle.snapshot-line-budget{fill:#fff;stroke-dasharray:none}
.snapshot-legend{display:flex;justify-content:center;gap:15px;font-size:10px}.snapshot-legend .sales{color:#a95a16}.snapshot-legend .budget{color:#60645a}
.snapshot-rank-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(90px,.9fr);gap:3px 10px;padding:7px 0;border-bottom:1px solid #eee6db;align-items:center}
.snapshot-rank-row>span{font-size:10px;line-height:1.3}.snapshot-rank-row>strong{font-size:11px;text-align:right}.snapshot-rank-row>small{grid-column:2;font-size:9px;color:#7e715e;text-align:right}.snapshot-rank-context{display:block;font-size:9px;line-height:1.3;margin-top:8px;color:#71634e}
.snapshot-insights{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:14px 16px;background:#f8f3eb;border-radius:7px;margin-bottom:16px}.snapshot-insights p{margin:0;font-size:11px;line-height:1.5}
.snapshot-actions>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.snapshot-actions section{position:relative;padding-left:27px}.snapshot-action-number{position:absolute;left:0;top:0;width:19px;height:19px;display:grid;place-items:center;border-radius:50%;background:#f5e5d0;color:#7e4616;font-size:10px;font-weight:750}.snapshot-actions h3{font-size:11px;margin:0 0 6px;line-height:1.4}.snapshot-actions p{margin:0;font-size:10px;line-height:1.5;color:#675a49}
.snapshot-disclosure{border-top:1px solid #e5dbcd;padding-top:10px;margin-top:15px}.snapshot-disclosure p{font-size:9px;line-height:1.45;margin:4px 0;color:#6f624d}.manager-performance-snapshot .kpi-report-footer{font-size:8px;margin-top:12px}
@media(max-width:1200px){.report-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.report-kind-field{grid-column:span 2}.target-editor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.target-editor-grid{grid-template-columns:1fr}.target-settings-panel,.quickbooks-panel{padding:16px}.target-navigation{display:block}.target-navigation .btn{margin-top:10px}.kpi-preference-strip{justify-content:space-between;gap:6px}.kpi-name-choice{flex-wrap:wrap}.kpi-name-choice select{max-width:185px}.report-controls{grid-template-columns:1fr}.report-kind-field{grid-column:auto}.manager-performance-snapshot{padding:14px}.snapshot-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.snapshot-kpi{padding:10px}.snapshot-actual{font-size:21px}.snapshot-kpi h2{font-size:10px;min-height:40px}.snapshot-target,.snapshot-gap{font-size:10px}.snapshot-middle,.snapshot-insights{grid-template-columns:1fr;gap:12px}.snapshot-actions>div{grid-template-columns:1fr;gap:12px}.snapshot-intro{align-items:start}.snapshot-completeness{font-size:9px}.snapshot-rank-row>span{font-size:11px}.snapshot-rank-row>strong{font-size:12px}.target-budget-table th,.target-budget-table td{padding:8px!important;font-size:11px}.target-budget-table input{font-size:14px}}
@media print{
 .kpi-preference-strip,.kpi-name-choice,.target-navigation{display:none!important}
 .manager-performance-snapshot{padding:0!important;width:100%!important;max-width:none!important;break-after:page;color:#1c1812!important;font-size:9pt;box-shadow:none!important}
 .manager-performance-snapshot:last-child{break-after:auto}.manager-performance-snapshot .kpi-report-header{margin:0 0 8pt;padding-bottom:7pt}.manager-performance-snapshot .kpi-report-header h1{font-size:15pt}.manager-performance-snapshot .kpi-report-header p{font-size:8pt}.manager-performance-snapshot .kpi-report-period{font-size:8pt}
 .snapshot-intro{margin:8pt 0 10pt}.snapshot-intro .eyebrow{font-size:9pt}.snapshot-intro p{font-size:8pt}.snapshot-completeness{font-size:8pt}
 .snapshot-kpis{grid-template-columns:repeat(3,minmax(0,1fr));gap:7pt}.snapshot-kpi{padding:8pt;border-radius:5pt;break-inside:avoid}.snapshot-kpi h2{font-size:8.5pt;min-height:24pt;margin-bottom:5pt}.snapshot-actual{font-size:20pt;margin-bottom:4pt}.snapshot-grade{font-size:8pt;margin-bottom:5pt}.snapshot-target,.snapshot-gap{font-size:8pt}.snapshot-bullet{margin-top:7pt}
 .snapshot-middle{grid-template-columns:1.08fr 1fr;gap:10pt;margin:10pt 0}.snapshot-panel{padding:9pt}.snapshot-panel h2,.snapshot-insights h2,.snapshot-actions>h2{font-size:9.5pt}.snapshot-panel>p{font-size:7.5pt}.snapshot-trend{margin-top:5pt;max-height:122pt}.snapshot-legend{font-size:7.5pt}.snapshot-rank-row{padding:5pt 0;gap:2pt 6pt}.snapshot-rank-row>span{font-size:7.5pt}.snapshot-rank-row>strong{font-size:8pt}.snapshot-rank-row>small,.snapshot-rank-context{font-size:7pt}
 .snapshot-insights{grid-template-columns:1fr 1fr;padding:9pt 11pt;margin-bottom:10pt;gap:12pt}.snapshot-insights p{font-size:8pt}.snapshot-actions>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:9pt}.snapshot-actions section{padding-left:19pt}.snapshot-actions h3{font-size:8pt}.snapshot-actions p{font-size:7.8pt}.snapshot-action-number{width:15pt;height:15pt;font-size:8pt}.snapshot-disclosure{margin-top:10pt;padding-top:6pt}.snapshot-disclosure p{font-size:7pt}.manager-performance-snapshot .kpi-report-footer{font-size:6.8pt;margin-top:7pt}
 .snapshot-kpi,.snapshot-panel,.snapshot-insights,.snapshot-actions{break-inside:avoid}.snapshot-kpi[data-snapshot-metric=primeNPercent]{background:#fff!important}
}
/* Snapshot-specific print sizing: compact spacing, not tiny KPI figures. */
@media print{
 #kpi-print-root .manager-performance-snapshot{font:9pt/1.22 Arial,Helvetica,sans-serif!important}
 #kpi-print-root .manager-performance-snapshot .kpi-report-header{margin-bottom:6pt;padding-bottom:6pt}
 #kpi-print-root .manager-performance-snapshot .kpi-report-header h1{font-size:15pt;margin:4pt 0 3pt}
 #kpi-print-root .manager-performance-snapshot .kpi-report-header p{font-size:8pt}
 #kpi-print-root .manager-performance-snapshot .snapshot-intro{margin:5pt 0 8pt}
 #kpi-print-root .manager-performance-snapshot .snapshot-intro p{display:none}
 #kpi-print-root .manager-performance-snapshot .snapshot-kpis{gap:6pt;break-inside:avoid}
 #kpi-print-root .manager-performance-snapshot .snapshot-kpi{padding:6pt}
 #kpi-print-root .manager-performance-snapshot .snapshot-kpi h2{font-size:8.5pt;min-height:19pt;margin-bottom:3pt;line-height:1.2}
 #kpi-print-root .manager-performance-snapshot .snapshot-actual{font-size:19pt;line-height:1.1;margin-bottom:3pt}
 #kpi-print-root .manager-performance-snapshot .snapshot-grade{font-size:8.5pt;line-height:1.2;margin-bottom:3pt}
 #kpi-print-root .manager-performance-snapshot .snapshot-target,#kpi-print-root .manager-performance-snapshot .snapshot-gap{font-size:8.5pt;line-height:1.2}
 #kpi-print-root .manager-performance-snapshot .snapshot-bullet{margin-top:6pt}
 #kpi-print-root .manager-performance-snapshot .snapshot-middle{break-inside:avoid;page-break-inside:avoid;margin:8pt 0;gap:8pt}
 #kpi-print-root .manager-performance-snapshot .snapshot-panel{padding:7pt;align-self:start}
 #kpi-print-root .manager-performance-snapshot .snapshot-trend{height:107pt;width:100%;max-height:107pt;break-inside:avoid}
 #kpi-print-root .manager-performance-snapshot .snapshot-rank-row{padding:4pt 0}
 #kpi-print-root .manager-performance-snapshot .snapshot-rank-row>span{font-size:8pt}
 #kpi-print-root .manager-performance-snapshot .snapshot-insights{margin-bottom:8pt;padding:7pt 9pt}
 #kpi-print-root .manager-performance-snapshot .snapshot-insights p{font-size:8.5pt;line-height:1.25}
 #kpi-print-root .manager-performance-snapshot .snapshot-actions h3{font-size:8.5pt;line-height:1.25}
 #kpi-print-root .manager-performance-snapshot .snapshot-actions p{font-size:8.5pt;line-height:1.25}
 #kpi-print-root .manager-performance-snapshot .snapshot-disclosure{margin-top:7pt;padding-top:4pt}
}
.snapshot-trend-print{display:none}
.snapshot-rank-row>strong small{font-size:9px;font-weight:400;color:#7e715e}
.snapshot-actions>div{grid-template-columns:repeat(var(--priority-count,3),minmax(0,1fr))}
@media(max-width:620px){.snapshot-actions>div{grid-template-columns:1fr}}
@media print{
 #kpi-print-root .snapshot-trend-screen{display:none!important}
 #kpi-print-root .snapshot-trend-print{display:block!important;object-fit:contain}
 #kpi-print-root .snapshot-rank-row>strong small{font-size:7.5pt;white-space:normal}
 #kpi-print-root .snapshot-actions>div{grid-template-columns:repeat(var(--priority-count,3),minmax(0,1fr))}
}
@media print{
 #kpi-print-root .manager-performance-snapshot .snapshot-middle{display:flex!important;align-items:flex-start}
 #kpi-print-root .manager-performance-snapshot .snapshot-middle>.snapshot-panel{width:calc(50% - 4pt);flex:0 0 calc(50% - 4pt)}
}
.snapshot-print-bars{padding:8pt 0 4pt}
.snapshot-print-bars>div{display:flex;align-items:center;gap:6pt;height:20pt;font:8pt/1.2 Arial,sans-serif}
.snapshot-print-bars>div>span:first-child{width:27pt;flex-shrink:0;color:#756853}
.snapshot-print-bars>div>strong{width:40pt;text-align:right;font-size:8pt;flex-shrink:0}
.snapshot-print-track{height:8pt;background:#f4f0e8;position:relative;flex:1}
.snapshot-print-track i{display:block;height:100%;background:#c67d37}
.snapshot-print-track b{display:block;height:13pt;width:1.5pt;background:#544733;position:absolute;top:-2.5pt}
.snapshot-print-track em{font-size:7pt;font-style:normal;position:absolute;top:-1pt}
@media print{#kpi-print-root .snapshot-print-bars{height:auto!important;max-height:none!important;page-break-inside:avoid}}

/* Price-aware scenarios: additive owner tool; existing KPI/print styles retained. */
.menu-price-profile{margin:20px 0}.menu-price-factors,.menu-price-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:15px 0}.menu-price-factors>div,.menu-price-summary>div{display:flex;flex-direction:column;gap:6px;background:#f8f5ee;border:1px solid #e5dfd4;padding:14px;border-radius:9px}.menu-price-factors strong,.menu-price-summary strong{font-size:24px;font-weight:700}.menu-price-factors span,.menu-price-summary span{font-size:12px;color:#605b51}.menu-price-summary{grid-template-columns:repeat(4,minmax(0,1fr))}.menu-price-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:16px 0}.menu-price-inputs{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:18px 0}.menu-price-inputs fieldset{margin:0;min-width:0;border:1px solid #ded8cb;border-radius:10px;padding:16px}.menu-price-inputs legend{font-weight:700;font-size:14px;padding:0 6px}.menu-price-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.menu-price-report header p{margin:7px 0}.menu-price-report h2{font-size:25px;margin:10px 0}.menu-price-report table th{text-align:left}.menu-price-report table td{text-align:right}.menu-price-report .table-wrap{width:100%;overflow:auto}.menu-price-report table{min-width:660px}#menu-price-result{margin:20px 0}.menu-price-inputs input,.menu-price-controls input,.menu-price-controls select{width:100%;min-width:0}#menu-price-plan-form .actions{flex-wrap:wrap}.menu-price-results th{white-space:normal!important}.menu-price-profile details{margin-top:12px}
@media(max-width:1100px){.menu-price-inputs{grid-template-columns:1fr}.menu-price-controls{grid-template-columns:1fr 1fr}.menu-price-summary{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.menu-price-factors{grid-template-columns:1fr 1fr}.menu-price-controls{grid-template-columns:1fr}.menu-price-fields{grid-template-columns:1fr}.menu-price-factors strong,.menu-price-summary strong{font-size:20px}.menu-price-profile,.menu-price-inputs fieldset{padding:14px}.menu-price-profile .card-head{flex-wrap:wrap}}
@media print{.menu-price-report{color:#201a14;background:#fff;font-size:10pt;line-height:1.3}.menu-price-report table{min-width:0!important;width:100%;table-layout:fixed;font-size:9pt}.menu-price-report th,.menu-price-report td{white-space:normal!important;padding:7px 5px!important;word-break:normal}.menu-price-report th:first-child{width:22%}.menu-price-report .menu-price-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.menu-price-report .menu-price-summary strong{font-size:17pt}.menu-price-report .menu-price-summary>div{background:#fff;padding:10px}.menu-price-report .inline-note{background:#fff;border:1px solid #ddd;color:#403c34;padding:10px}.menu-price-report .table-wrap{overflow:visible}.menu-price-report .small{font-size:9pt}.menu-price-report tr,.menu-price-report header,.menu-price-report .menu-price-summary{break-inside:avoid}.menu-price-report h2{font-size:21pt}.menu-price-report .eyebrow{font-size:9pt}}

/* v1.8.2 — Food & Alcohol Budget. Scoped to this workflow, not a redesign. */
.budget-heading h1{max-width:100%;letter-spacing:-.025em}.budget-heading p{max-width:760px}.budget-form{min-width:0}.budget-control-card{margin-top:18px;padding:24px}.budget-growth-control{display:grid;grid-template-columns:minmax(210px,300px) minmax(0,1fr);align-items:center;gap:26px}.budget-growth-control select{font-size:22px;font-weight:700;min-height:56px;border:2px solid #F28B24;border-radius:10px;background:#fffcf6;color:#201A14}.budget-growth-control p{margin:6px 0 0;line-height:1.6}.budget-auto-inputs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;border-top:1px solid #e5dfd4;padding-top:20px;margin-top:22px}.budget-auto-inputs>div{display:flex;flex-direction:column;gap:7px;min-width:0}.budget-auto-inputs small{font-size:12px;line-height:1.5;color:#655e52}.budget-source-strip{border-top:1px solid #e5dfd4;margin-top:20px;padding-top:16px}.budget-source-strip p{font-size:12px;line-height:1.55;overflow-wrap:anywhere;margin:0 0 10px}.budget-source-strip .actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.budget-source-strip #budget-fetch-status:empty{display:none}.budget-source-strip #budget-fetch-status{font-weight:600;color:#85341E}.budget-status{display:inline-block;border-radius:20px;padding:5px 11px;font-size:12px;font-weight:700;background:#f3eadb;color:#59432c}.budget-status.ready{background:#eef4e9;color:#344b27}.budget-status.needs-input{background:#fff1da;color:#714209}.budget-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:22px 0}.budget-total{min-width:0;padding:24px 20px;border:1px solid #e2dbce;border-radius:12px;background:#faf7f1;display:flex;flex-direction:column;gap:8px}.budget-total>span{font-weight:600;font-size:13px}.budget-total>strong{font-size:clamp(24px,2.4vw,37px);line-height:1.15;letter-spacing:-.035em;overflow-wrap:anywhere}.budget-total>small{font-size:11px;line-height:1.5;color:#625b50}.budget-total-primary{background:#201A14;border-color:#201A14;color:#F0E8D7}.budget-total-primary>strong{color:#FFC476}.budget-total-primary>small{color:#d3c7b5}.budget-math{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;gap:10px;align-items:center;padding:18px 0;border-top:1px solid #e4ded3;border-bottom:1px solid #e4ded3;margin-top:18px}.budget-math>div{display:flex;flex-direction:column;gap:8px;min-width:0}.budget-math span{font-size:11px;color:#625b50;line-height:1.4}.budget-math b{font-size:17px}.budget-net{padding:12px 0 16px}.budget-gaps{background:#fff7e9;border-left:3px solid #F28B24;border-radius:6px;padding:10px 14px}.budget-gaps p{font-size:12px;line-height:1.5;margin:5px 0}.budget-save-bar{padding:18px 20px;border:1px solid #d9cfc0;background:#F4EEE4;border-radius:12px;display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;margin:20px 0}.budget-save-bar>div:first-child{flex:1;min-width:200px}.budget-save-bar small{display:block;font-size:12px;line-height:1.5;margin-top:5px}.budget-save-bar .actions{display:flex;flex-wrap:wrap;gap:8px}.budget-details{margin:16px 0;padding:20px}.budget-details>summary{cursor:pointer;font-size:15px;font-weight:700;line-height:1.6}.budget-details>summary span{font-size:11px;font-weight:400;color:#675f54;margin-left:8px}.budget-details[open]>summary{margin-bottom:16px}.budget-details p{line-height:1.6}.budget-group-targets{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:18px 0}.budget-details input,.budget-details select{width:100%;min-width:0}.budget-formula{margin-top:15px;line-height:1.6}.budget-report .menu-price-results th:first-child{min-width:150px}.budget-report .menu-price-results td:last-child{color:#713f12}.budget-report header .small{margin-bottom:0}.budget-report .menu-price-results{font-size:12px}.budget-report .menu-price-results th,.budget-report .menu-price-results td{padding:12px 9px}.budget-report .menu-price-results td{font-variant-numeric:tabular-nums}
@media(max-width:1050px){.budget-group-targets{grid-template-columns:repeat(2,minmax(0,1fr))}.budget-total{padding:20px 15px}.budget-math{gap:8px}.budget-math b{font-size:15px}.budget-growth-control{grid-template-columns:minmax(180px,250px) minmax(0,1fr)}}
@media(max-width:650px){.budget-control-card,.budget-details{padding:16px}.budget-growth-control{grid-template-columns:1fr;gap:12px}.budget-auto-inputs{grid-template-columns:1fr;gap:15px}.budget-auto-inputs>div{border-bottom:1px solid #eee7dd;padding-bottom:12px}.budget-auto-inputs>div:last-child{border:0;padding-bottom:0}.budget-totals{grid-template-columns:1fr;gap:10px;margin:17px 0}.budget-total{padding:17px 18px;display:grid;grid-template-columns:1fr auto;gap:7px}.budget-total>strong{font-size:29px;grid-column:2;grid-row:1/3;align-self:center}.budget-total>small{grid-column:1}.budget-math{grid-template-columns:1fr 1fr;gap:16px;padding:15px 0}.budget-math>span{display:none}.budget-group-targets{grid-template-columns:1fr}.budget-save-bar{padding:16px}.budget-save-bar .actions{width:100%}.budget-save-bar .btn-primary{flex:1}.budget-details>summary span{display:block;margin-left:0}.budget-source-strip .btn{min-height:42px}.budget-report header h2{font-size:22px}.budget-form .card{min-width:0}}
@media print{.budget-report .budget-totals{grid-template-columns:repeat(3,1fr);gap:8px;margin:14px 0}.budget-report .budget-total{display:flex;padding:12px;break-inside:avoid}.budget-report .budget-total>strong{font-size:21pt}.budget-report .budget-total>span{font-size:9pt}.budget-report .budget-total>small{font-size:8pt}.budget-report .budget-math{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;padding:10px 0;gap:8px}.budget-report .budget-math>span{display:block}.budget-report .budget-math b{font-size:12pt}.budget-report .budget-status{font-size:8pt}.budget-report .budget-gaps{padding:5px 8px}.budget-report .budget-gaps p{font-size:8pt;margin:3px 0}.budget-report .budget-formula{font-size:8pt;line-height:1.3}.budget-report .budget-net{padding:8px 0}.budget-report .menu-price-results th:first-child{min-width:0}.budget-report .menu-price-results th,.budget-report .menu-price-results td{font-size:8pt;padding:6px 4px!important}.budget-report .budget-totals,.budget-report .budget-math{break-inside:avoid}}

.budget-source-details{border-top:1px solid var(--line);margin-top:18px;padding-top:14px}.budget-source-details>summary{cursor:pointer;font-weight:600;font-size:12px;line-height:1.6}.budget-source-details>summary span{font-weight:400;color:var(--muted);margin-left:10px;font-size:11px}.budget-source-details .budget-auto-inputs{border:0;padding-top:12px;margin-top:4px}@media(max-width:650px){.budget-source-details>summary span{display:block;margin-left:0}}

.budget-save-notice:empty{display:none}.budget-save-notice{font-size:12px;line-height:1.6;margin-top:12px;color:var(--green)}

/* Upcoming purchasing stays on the SAME weekly scorecard/snapshot. */
.report-purchase-budget{border:1px solid #d9c5a5;border-left:4px solid #f28b24;border-radius:6px;background:#fffaf2;padding:12px 15px;margin:0 0 14px;break-inside:avoid;page-break-inside:avoid;color:#201a14}
.report-purchase-title{display:flex;justify-content:space-between;align-items:start;gap:15px}.report-purchase-title>div:last-child{text-align:right}
.report-purchase-title span{font-size:8px;letter-spacing:1.1px;font-weight:700}.report-purchase-title h2{font-size:15px;margin:3px 0 0}.report-purchase-title strong{font-size:12px}.report-purchase-title small{display:block;font-size:9px;margin-top:3px}
.report-purchase-amounts{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:9px}.report-purchase-amounts>div{display:flex;justify-content:space-between;align-items:center;gap:10px}.report-purchase-amounts>div+div{border-left:1px solid #d9c5a5;padding-left:15px}.report-purchase-amounts span{font-size:12px;font-weight:700}.report-purchase-amounts small{display:block;font-size:9px;font-weight:400}.report-purchase-amounts strong{font-size:23px;font-variant-numeric:tabular-nums;white-space:nowrap}.report-purchase-basis{font-size:9px!important;line-height:1.3;margin:8px 0 0!important;color:#605443}
.report-purchase-controls{display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid var(--line);border-radius:8px;padding:14px}.report-purchase-controls p{margin:5px 0;font-size:12px}.report-purchase-controls .actions{flex-shrink:0}.report-purchase-comparison h2{font-size:13px}.report-purchase-comparison p{font-size:9px}
@media(max-width:620px){.report-purchase-title{display:block}.report-purchase-title>div:last-child{text-align:left;margin-top:6px}.report-purchase-amounts{grid-template-columns:1fr;gap:9px}.report-purchase-amounts>div+div{border-left:0;border-top:1px solid #d9c5a5;padding:9px 0 0}.report-purchase-controls{display:block}.report-purchase-controls .actions{margin-top:12px}.report-purchase-amounts strong{font-size:22px}}
@media print{
 #kpi-print-root .report-purchase-budget{padding:7pt 9pt;margin:0 0 7pt;border-radius:3pt;background:#fff!important;break-inside:avoid;page-break-inside:avoid}
 #kpi-print-root .report-purchase-title{display:flex}#kpi-print-root .report-purchase-title>div:last-child{text-align:right;margin-top:0}
 #kpi-print-root .report-purchase-title span{font-size:6.5pt}#kpi-print-root .report-purchase-title h2{font-size:10pt;margin:2pt 0 0}#kpi-print-root .report-purchase-title strong{font-size:9pt}#kpi-print-root .report-purchase-title small{font-size:7pt;margin-top:2pt}
 #kpi-print-root .report-purchase-amounts{display:grid;grid-template-columns:1fr 1fr;gap:10pt;margin-top:5pt}#kpi-print-root .report-purchase-amounts>div+div{border-top:0;border-left:1px solid #d9c5a5;padding:0 0 0 10pt}
 #kpi-print-root .report-purchase-amounts strong{font-size:16pt}#kpi-print-root .report-purchase-amounts span{font-size:9pt}#kpi-print-root .report-purchase-amounts small{font-size:7pt}#kpi-print-root .report-purchase-basis{font-size:7pt!important;margin-top:4pt!important;line-height:1.2}
 #kpi-print-root .kpi-report-sheet:has(.report-purchase-budget):not(.manager-performance-snapshot) .kpi-report-header{margin-bottom:7pt;padding-bottom:6pt}
 #kpi-print-root .kpi-report-sheet:has(.report-purchase-budget):not(.manager-performance-snapshot) .kpi-report-headline{padding:7pt 10pt;margin-bottom:7pt}
 #kpi-print-root .kpi-report-sheet:has(.report-purchase-budget):not(.manager-performance-snapshot) .kpi-report-table th,#kpi-print-root .kpi-report-sheet:has(.report-purchase-budget):not(.manager-performance-snapshot) .kpi-report-table td{padding:1px 5px!important}
 #kpi-print-root .kpi-report-sheet:has(.report-purchase-budget):not(.manager-performance-snapshot) .kpi-report-section th{padding:4px 5px!important}
 #kpi-print-root .manager-performance-snapshot:has(.report-purchase-budget) .snapshot-middle{margin:6pt 0}#kpi-print-root .manager-performance-snapshot:has(.report-purchase-budget) .snapshot-kpi{padding:5pt}
 #kpi-print-root .report-purchase-comparison{break-inside:avoid}#kpi-print-root .report-purchase-comparison h2{font-size:10pt}#kpi-print-root .report-purchase-comparison p{font-size:7pt}
}
@media print{
 #kpi-print-root .manager-performance-snapshot:has(.report-purchase-budget) .snapshot-kpi h2{min-height:14pt}
 #kpi-print-root .manager-performance-snapshot:has(.report-purchase-budget) .snapshot-print-bars{padding:4pt 0 3pt}
 #kpi-print-root .manager-performance-snapshot:has(.report-purchase-budget) .snapshot-print-bars>div{height:15pt}
 #kpi-print-root .manager-performance-snapshot:has(.report-purchase-budget) .snapshot-rank-row{padding:2.5pt 0}
 #kpi-print-root .manager-performance-snapshot:has(.report-purchase-budget) .snapshot-intro{margin:4pt 0 5pt}
 #kpi-print-root .manager-performance-snapshot:has(.report-purchase-budget) .snapshot-completeness{padding:5px 8px}
 #kpi-print-root .manager-performance-snapshot:has(.report-purchase-budget) .snapshot-disclosure{margin-top:5pt;padding-top:3pt}
}
@page kpiSnapshotBudget{size:Letter portrait;margin:.3in .4in .3in}
@media print{
 #kpi-print-root .manager-performance-snapshot:has(.report-purchase-budget){page:kpiSnapshotBudget}
 #kpi-print-root .manager-performance-snapshot:has(.report-purchase-budget) .snapshot-intro{margin:2pt 0 4pt}
 #kpi-print-root .manager-performance-snapshot:has(.report-purchase-budget) .snapshot-completeness{padding:2px 7px}
}
@media print{
 #kpi-print-root .manager-performance-snapshot:has(.report-purchase-budget) .report-purchase-budget{padding:5pt 9pt}
 #kpi-print-root .manager-performance-snapshot:has(.report-purchase-budget) .snapshot-insights{margin-bottom:5pt;padding:5pt 8pt}
 #kpi-print-root .manager-performance-snapshot:has(.report-purchase-budget) .snapshot-disclosure p{margin:2px 0}
 #kpi-print-root .manager-performance-snapshot:has(.report-purchase-budget) .kpi-report-footer{margin-top:3px;padding-top:3px}
 #kpi-print-root .manager-performance-snapshot:has(.report-purchase-budget) .snapshot-actions h3{margin-bottom:3px}
}

/* v1.8.5: one shared upcoming-week strip, without hiding existing purchasing. */
.report-purchase-budget.with-sales-budget .report-purchase-amounts{grid-template-columns:1.25fr 1fr 1fr}
.net-sales-budget-card{border-right:1px solid #d7cfc2}
.net-sales-budget-status{display:block;font-size:10px;font-weight:500;line-height:1.25;margin-top:3px}
.net-sales-budget-line{padding:12px;border:1px solid #d7cfc2;margin:8px 0}
.net-sales-budget-line strong{display:block;font-size:24px}
.net-sales-recap-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:18px 0}
.net-sales-recap-heading h2{margin:5px 0;font-size:24px}
.net-sales-recap-heading p{margin:4px 0;font-size:12px}
.net-sales-budget-recap .kpi-comparison-table{table-layout:fixed;width:100%}
.net-sales-budget-recap .kpi-comparison-table th:first-child{width:24%}
.net-sales-budget-recap td,.net-sales-budget-recap th{overflow-wrap:anywhere}
.net-sales-recap-total{background:#f4eee4;font-weight:700}
.net-sales-budget-details{margin-top:12px}.net-sales-budget-details summary{cursor:pointer;font-weight:700}
.net-sales-budget-details .table-wrap{margin-top:10px}
@media(max-width:600px){.report-purchase-budget.with-sales-budget .report-purchase-amounts{grid-template-columns:1fr 1fr}.report-purchase-amounts .net-sales-budget-card{grid-column:1/-1;border-right:0;border-bottom:1px solid #d7cfc2}.net-sales-recap-heading{display:block}.net-sales-budget-recap{overflow-x:auto}.net-sales-budget-recap .kpi-comparison-table{min-width:650px}}
@media print{.report-purchase-budget.with-sales-budget .report-purchase-amounts{grid-template-columns:1.25fr 1fr 1fr!important}.report-purchase-amounts .net-sales-budget-card{grid-column:auto!important;border-bottom:0}.net-sales-budget-status{font-size:6.5pt;margin-top:1pt}.net-sales-recap-sheet .kpi-comparison-table th,.net-sales-recap-sheet .kpi-comparison-table td{padding:9pt 5pt}.net-sales-recap-heading h2{font-size:19pt}.net-sales-budget-recap{overflow:visible}.net-sales-budget-recap .kpi-comparison-table{min-width:0}.net-sales-recap-sheet .kpi-report-notes{font-size:8pt;line-height:1.4}}

.report-purchase-budget.with-sales-budget .report-purchase-amounts>div{display:block}
.report-purchase-budget.with-sales-budget .report-purchase-amounts strong{display:block;margin-top:3px}
.report-purchase-budget.with-sales-budget .report-purchase-amounts span small{display:inline;font-size:9px;margin-left:3px}
.report-purchase-budget.with-sales-budget .net-sales-budget-card{border-right:0}
@media print{
 #kpi-print-root .report-purchase-budget.with-sales-budget{padding:5pt 8pt}
 #kpi-print-root .report-purchase-budget.with-sales-budget .report-purchase-amounts{margin-top:4pt}
 #kpi-print-root .report-purchase-budget.with-sales-budget .report-purchase-amounts>div{display:block}
 #kpi-print-root .report-purchase-budget.with-sales-budget .report-purchase-amounts span{font-size:8pt}
 #kpi-print-root .report-purchase-budget.with-sales-budget .report-purchase-amounts span small{display:block;font-size:6.5pt;margin-left:0;line-height:1.1}
 #kpi-print-root .report-purchase-budget.with-sales-budget .report-purchase-amounts strong{font-size:15pt;margin-top:1pt;line-height:1.1}
 #kpi-print-root .report-purchase-budget.with-sales-budget .net-sales-budget-status{font-size:6pt;line-height:1.1}
}
@page kpiStoreSalesBudget{size:Letter portrait;margin:.3in .4in .3in}
@media print{#kpi-print-root .kpi-report-sheet:has(.with-sales-budget):not(.manager-performance-snapshot){page:kpiStoreSalesBudget}}

@media screen and (max-width:620px){
 .report-purchase-budget.with-sales-budget .report-purchase-amounts{grid-template-columns:1fr}
 .report-purchase-budget.with-sales-budget .report-purchase-amounts>div{min-width:0}
 .report-purchase-budget.with-sales-budget .report-purchase-amounts strong{white-space:normal;overflow-wrap:anywhere}
}
@media print{
 #kpi-print-root .manager-performance-snapshot:has(.with-sales-budget) .snapshot-kpi{padding:4pt}
 #kpi-print-root .manager-performance-snapshot:has(.with-sales-budget) .snapshot-middle{margin:4pt 0}
 #kpi-print-root .manager-performance-snapshot:has(.with-sales-budget) .snapshot-rank-row{padding:2pt 0}
 #kpi-print-root .manager-performance-snapshot:has(.with-sales-budget) .snapshot-panel{padding:6pt}
}
@media print{
 #kpi-print-root .manager-performance-snapshot:has(.with-sales-budget) .snapshot-kpis{gap:4pt}
 #kpi-print-root .manager-performance-snapshot:has(.with-sales-budget) .snapshot-bullet{margin-top:3pt}
 #kpi-print-root .manager-performance-snapshot:has(.with-sales-budget) .kpi-report-header{padding-bottom:4pt;margin-bottom:4pt}
 #kpi-print-root .manager-performance-snapshot:has(.with-sales-budget) .snapshot-insights{margin-bottom:3pt}
}
@page kpiComparisonBudget{size:Letter landscape;margin:.3in .4in .3in}
@media print{#kpi-print-root .kpi-comparison-sheet:has(.report-purchase-comparison){page:kpiComparisonBudget}}

/* v1.8.6 connected planning and manager portal. Existing Western brand retained. */
.planning-summary{margin:24px 0}.planning-section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px}.planning-section-head h2{font-size:clamp(19px,2vw,25px);line-height:1.3;margin:7px 0}.planning-section-head p{font-size:13px;line-height:1.6;color:#64594c;margin:0}.planning-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.planning-card{display:flex;flex-direction:column;align-items:flex-start;gap:10px;min-width:0;padding:22px;margin:0;box-shadow:0 3px 16px #201a1406}.planning-card-label{font-size:13px;font-weight:700;color:#514537}.planning-amount{font-size:clamp(23px,2.15vw,33px);letter-spacing:-.8px;line-height:1.2;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.planning-state{font-size:11px;line-height:1.5;font-weight:700;padding:4px 8px;border-radius:5px;background:#f0e8d7;color:#514537}.planning-card p{font-size:12px;line-height:1.65;color:#64594c;margin:0}.planning-sales-target{border-top:3px solid #f28b24}.planning-badge{padding:9px 12px;border-radius:7px;color:#713016;background:#f9e6cf;font-size:11px;font-weight:700;line-height:1.5;flex-shrink:0}.planning-explanation{margin:14px 0;font-size:13px;line-height:1.7;color:#64594c}.planning-explanation summary{cursor:pointer;min-height:44px;display:flex;align-items:center;font-weight:600}.planning-explanation summary:before{content:'+';font-size:19px;margin-right:10px}.planning-explanation[open] summary:before{content:'−'}.planning-review{background:#fff3dd;border-left:3px solid #a45c1a;padding:14px 18px;border-radius:6px;margin:16px 0;font-size:13px;line-height:1.6}.planning-review p{margin:5px 0 0}.target-week-context{display:flex;flex-direction:column;gap:6px;font-size:13px;align-self:center}.target-week-context span,.target-week-context small{color:#64594c}.target-plan-actions{display:flex;gap:20px;align-items:center;justify-content:space-between;margin-bottom:22px}.target-plan-actions>div:first-child{max-width:760px}.target-plan-actions p{font-size:13px;line-height:1.65;margin:7px 0;color:#64594c}.target-plan-actions .actions{flex-wrap:wrap}.target-editor-panel{margin:16px 0}.target-editor-panel>summary{cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:14px;min-height:48px;list-style:none;font-size:18px;font-weight:700}.target-editor-panel>summary:after{content:'+';font-size:24px}.target-editor-panel[open]>summary:after{content:'−'}.target-editor-panel>summary small{margin-left:auto;font-size:12px;font-weight:500;color:#64594c}.target-editor-panel>p{font-size:13px;line-height:1.7}.target-field-group{border:0;border-top:1px solid var(--line);padding:20px 0;margin:20px 0 0;min-width:0}.target-field-group legend{font-size:14px;font-weight:700;padding-right:12px}.target-setting-status{color:#64594c}.target-access-link{display:flex;justify-content:space-between;gap:20px;margin:20px 0}.target-access-link p{font-size:13px;line-height:1.65}.target-access-link .actions{align-items:center;flex-shrink:0}
.manager-shell{max-width:1240px;padding:32px 28px 60px}.manager-top{position:relative}.manager-top #manager-user{display:flex;gap:14px;align-items:center;min-width:0}.manager-top #manager-user span{overflow-wrap:anywhere;font-size:13px}.manager-shell h1{line-height:1.2}.portal-welcome{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin:16px 0 30px}.portal-welcome h1{margin:9px 0 12px;font-size:clamp(29px,3vw,40px)}.portal-welcome p{font-size:14px;line-height:1.7;color:#64594c;max-width:560px}.portal-restaurant-control{min-width:0;max-width:100%}.portal-restaurant-control .field{min-width:225px}.portal-restaurant-name{display:block;padding:12px 15px;background:#ece5d8;border:1px solid var(--line);border-radius:8px;font-size:13px;font-weight:700;line-height:1.5}.portal-home-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.portal-home-tile{appearance:none;display:flex;flex-direction:column;align-items:flex-start;text-align:left;padding:27px;border:1px solid #ddd5c6;border-radius:13px;background:#fff;min-height:230px;min-width:0;font-family:inherit;line-height:1.5;color:#201a14;box-shadow:0 5px 18px #201a1405}.portal-kpi-tile{background:#201a14;color:#f4eee4;border-color:#201a14;cursor:pointer}.portal-kpi-tile:hover{border-color:#f28b24;box-shadow:0 6px 22px #201a1420}.portal-tile-index{font-size:12px;color:#736658;font-weight:700;letter-spacing:1px}.portal-kpi-tile .portal-tile-index{color:#ffc476}.portal-tile-title{font-size:25px;font-weight:700;letter-spacing:-.4px;margin:22px 0 7px}.portal-tile-copy{font-size:13px;max-width:270px;color:#706353}.portal-kpi-tile .portal-tile-copy{color:#d3c6b2}.portal-tile-action{margin-top:auto;padding-top:22px;font-size:12px;font-weight:700;color:#736658}.portal-kpi-tile .portal-tile-action{color:#ffc476;display:flex;justify-content:space-between;width:100%}.portal-coming-soon{background:#f3eee4;box-shadow:none;opacity:1;cursor:not-allowed}.portal-coming-soon .portal-tile-title{font-size:21px;color:#6d6153}.portal-privacy-note{font-size:12px;color:#706353;margin:24px 0;line-height:1.7}.portal-kpi-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.portal-kpi-toolbar .portal-restaurant-control{margin-right:auto}.portal-title{margin:28px 0 14px}.portal-title h1{margin:8px 0}.portal-title p{font-size:14px;color:#64594c}.portal-sync{font-size:12px;color:#64594c;line-height:1.65;padding:12px 16px;border:1px solid var(--line);border-radius:8px;background:#f2ecdf}.portal-history{font-size:13px;margin:12px 0;color:#64594c}.portal-history>summary{min-height:44px;cursor:pointer;line-height:44px;font-weight:600}.portal-history .manager-controls{align-items:flex-end}.portal-history p{line-height:1.6}.portal-weekly-results{margin:32px 0}.portal-attention{display:flex;flex-direction:column;gap:6px;padding:14px 18px;background:#ece5d8;border-left:3px solid #85341e;border-radius:6px;margin:15px 0;font-size:13px;line-height:1.6}.portal-attention span{color:#64594c}.portal-kpi-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.portal-kpi-card{display:flex;flex-direction:column;align-items:flex-start;gap:8px;min-width:0;margin:0;padding:22px}.portal-kpi-card>small:first-child{font-size:13px;font-weight:700;color:#514537}.portal-kpi-card>strong{font-size:29px;line-height:1.2;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.portal-target{font-size:12px;line-height:1.6;margin:0;color:#514537}.portal-result-state{font-size:11px;font-weight:700;background:#efe8db;color:#514537;padding:4px 8px;border-radius:5px}.needs-attention .portal-result-state{color:#7f321c;background:#f9e4d5}.on-target .portal-result-state{color:#36503b;background:#e6eee5}.portal-gap{font-size:12px;color:#64594c;line-height:1.5}.portal-basis{font-size:11px!important;line-height:1.6;color:#736658!important;font-weight:400!important}.portal-full-reports,.portal-action-panel{margin:18px 0;padding:20px}.portal-full-reports>summary,.portal-action-panel>summary{cursor:pointer;min-height:44px;display:flex;align-items:center;font-size:16px;font-weight:700;list-style:none;gap:10px}.portal-full-reports>summary:after,.portal-action-panel>summary:after{content:'+';margin-left:auto;font-size:22px}.portal-full-reports[open]>summary:after,.portal-action-panel[open]>summary:after{content:'−'}.portal-action-panel>summary span{font-size:12px;color:#736658;font-weight:500}.portal-action-panel h2{font-size:16px;margin-top:20px}.manager-report-output{max-width:100%;overflow-x:auto}.portal-loading p{line-height:1.7}.manager-shell input,.manager-shell select,.manager-shell button{min-height:44px}.manager-shell summary:focus-visible,.manager-shell button:focus-visible,.target-editor-panel summary:focus-visible,.planning-explanation summary:focus-visible{outline:3px solid #a7520f;outline-offset:4px}.manager-shell [hidden]{display:none!important}
@media(max-width:1050px){.planning-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.planning-amount{font-size:30px}.target-plan-actions,.target-access-link{flex-direction:column;align-items:stretch}}
@media(max-width:760px){.manager-shell{padding:22px 18px 40px}.portal-welcome{flex-direction:column;align-items:stretch;gap:16px}.portal-home-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.portal-home-tile{padding:22px;min-height:215px}.portal-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.planning-section-head{flex-direction:column;gap:8px}.planning-badge{max-width:100%;flex-shrink:1}.target-editor-panel>summary{flex-wrap:wrap}.target-editor-panel>summary small{margin-left:0}.target-editor-panel>summary:after{margin-left:auto}.portal-kpi-toolbar .portal-restaurant-control{order:3;width:100%}.manager-top #manager-user{gap:8px}.manager-top #manager-user span{max-width:120px}.target-navigation .field{width:100%}.target-week-context{align-self:flex-start}}
@media(max-width:420px){.manager-shell{padding:18px 14px 35px}.portal-home-grid{grid-template-columns:1fr}.portal-home-tile{min-height:165px;padding:20px}.portal-tile-title{margin:12px 0 5px}.portal-tile-action{padding-top:14px}.portal-coming-soon{min-height:126px}.portal-coming-soon .portal-tile-copy{display:none}.planning-grid,.portal-kpi-grid{grid-template-columns:1fr}.planning-card,.portal-kpi-card{padding:19px}.planning-amount{font-size:31px}.portal-full-reports,.portal-action-panel{padding:15px}.manager-top{padding:14px}.manager-top strong{font-size:19px}.manager-top small{font-size:8px}.manager-top #manager-user{flex-wrap:wrap;justify-content:flex-end}.portal-kpi-toolbar{gap:8px}.portal-kpi-toolbar .btn{font-size:12px;padding:10px}.portal-restaurant-control .field{min-width:0;width:100%}.target-plan-actions .actions{flex-direction:column;align-items:stretch}.target-field-group .target-editor-grid{grid-template-columns:1fr}}
@media print{.portal-kpi-toolbar,.portal-history,.portal-sync,.portal-home-grid,.portal-welcome,.portal-privacy-note{display:none!important}.planning-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.planning-card{padding:10px;break-inside:avoid}.planning-amount{font-size:17px}.planning-explanation{display:none}.planning-section-head h2{font-size:17px}}

/* v1.8.7: source coverage stays readable without horizontal table scrolling. */
.history-coverage{margin-top:24px}.history-coverage>p{margin:6px 0 12px}.history-coverage th{white-space:normal}.history-coverage details{margin-top:16px}.history-coverage details h4{margin:18px 0 8px}.history-coverage details p{overflow-wrap:anywhere;line-height:1.7}
@media(max-width:600px){.history-coverage .table-wrap{overflow:visible}.history-coverage table,.history-coverage tbody{display:block;width:100%}.history-coverage thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.history-coverage tbody tr{display:grid;grid-template-columns:minmax(0,1fr) 85px;gap:8px 12px;padding:14px 0;border-bottom:1px solid var(--line)}.history-coverage td{display:block;min-width:0;padding:0;border:0;overflow-wrap:anywhere}.history-coverage td:first-child{grid-column:1/-1;font-weight:650}.history-coverage td:nth-child(2):before,.history-coverage td:nth-child(3):before{display:block;font-size:10px;font-weight:600;color:var(--muted);margin-bottom:5px}.history-coverage td:nth-child(2):before{content:'Planning coverage'}.history-coverage td:nth-child(3):before{content:'Actual-week gaps'}}
/* Connected saving and owner-only record review use the existing brand tokens. */
.online-draft-note{margin:0 0 1rem;padding:.9rem;line-height:1.5}
.online-draft-note p{margin:.3rem 0}.record-conflict-review{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--line)}
.conflict-values{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;max-width:100%}
.conflict-values>div{min-width:0}.conflict-values pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:240px;overflow:auto;font-size:.75rem}
@media(max-width:600px){.conflict-values{grid-template-columns:1fr}.save-status{max-width:70vw;font-size:.75rem}.online-draft-note .btn{white-space:normal;text-align:left}}
.overtime-plan-note{display:block;font-size:.68rem;line-height:1.25;font-weight:400;margin-top:.15rem}
@media print{.overtime-plan-note{font-size:6.6pt}}

/* Keep confirmed saving visible on phones/tablets even when header tools collapse. */
.mobile-save-strip{display:none}
@media screen and (max-width:1150px){.mobile-save-strip{display:block;padding:8px 16px;background:var(--ivory,#f8f5ef);border-bottom:1px solid var(--line)}.mobile-save-strip .save-indicator{display:flex;max-width:none;font-size:11px;line-height:1.4}}

/* Preserve one-sheet weekly/cumulative scorecards with paid-hour OT notes.
   Reclaim row whitespace; keep the existing 9pt print type and all qualifications. */
@media print{
 #kpi-print-root .kpi-report-sheet:not(.manager-performance-snapshot):not(.kpi-comparison-sheet):not(:has(.report-purchase-budget)) .kpi-report-table tbody tr:not(.kpi-report-section)>th,
 #kpi-print-root .kpi-report-sheet:not(.manager-performance-snapshot):not(.kpi-comparison-sheet):not(:has(.report-purchase-budget)) .kpi-report-table tbody tr:not(.kpi-report-section)>td{padding:2.5px 5px!important}
}

/* Owner-only category decisions use the existing palette and layout. */
.planning-category-review{margin:18px 0;padding:22px;}
.planning-category-review h2{font-size:18px;margin:0 0 10px;}
.planning-category-store{margin-top:18px;}
.planning-category-form{border-top:1px solid var(--border,#ded6c8);padding:18px 0;}
.planning-category-form h4{margin:0 0 7px;overflow-wrap:anywhere;}
.planning-category-form .field{margin:10px 0;min-width:0;}
.planning-category-form input,.planning-category-form select{max-width:100%;}
.planning-category-form .table-wrap input{width:125px;min-width:90px;}
.planning-category-form p{overflow-wrap:anywhere;}
.planning-category-repair{margin-top:14px;padding-top:14px;border-top:1px solid var(--border,#ded6c8);}
.planning-category-split[hidden],.planning-category-error[hidden]{display:none!important;}
@media(max-width:600px){.planning-category-review{padding:16px;}.planning-category-form .form-grid{grid-template-columns:1fr;}.planning-category-form .btn{width:100%;white-space:normal;}}

/* The existing paid-hour detail can push budget scorecard notes onto a second
   sheet. Reclaim whitespace only; keep every metric, qualification and 9pt row. */
@media print{
 #kpi-print-root .kpi-report-sheet:has(.report-purchase-budget):not(.manager-performance-snapshot):not(.kpi-comparison-sheet) .kpi-report-header{margin-bottom:4pt;padding-bottom:4pt}
 #kpi-print-root .kpi-report-sheet:has(.report-purchase-budget):not(.manager-performance-snapshot):not(.kpi-comparison-sheet) .report-purchase-budget{padding:5pt 9pt;margin-bottom:4pt}
 #kpi-print-root .kpi-report-sheet:has(.report-purchase-budget):not(.manager-performance-snapshot):not(.kpi-comparison-sheet) .kpi-report-headline{padding:5pt 10pt;margin-bottom:4pt}
 #kpi-print-root .kpi-report-sheet:has(.report-purchase-budget):not(.manager-performance-snapshot):not(.kpi-comparison-sheet) .kpi-report-section th{padding:3px 5px!important}
 #kpi-print-root .kpi-report-sheet:has(.report-purchase-budget):not(.manager-performance-snapshot):not(.kpi-comparison-sheet) .kpi-report-notes{margin:5px 0;padding:3px 8px}
 #kpi-print-root .kpi-report-sheet:has(.report-purchase-budget):not(.manager-performance-snapshot):not(.kpi-comparison-sheet) .kpi-report-footer{margin-top:4px;padding-top:3px}
}
/* Exact source checks: same hospitality palette, no fake zero or silent retry. */
.history-source-row{padding:14px 0;border-top:1px solid var(--line, #d9d0c3);overflow-wrap:anywhere}
.history-source-row p{margin:5px 0 10px}.history-source-totals{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:12px 0}
.history-source-totals p{display:flex;flex-direction:column;gap:4px}.history-source-totals span{font-size:.8rem}.history-check{padding:8px 0}
.history-source-checks summary{font-weight:650;cursor:pointer}.planning-next-step{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.planning-next-step span,.planning-history-note{font-size:.85rem}
@media(max-width:700px){.history-source-totals{grid-template-columns:repeat(2,minmax(0,1fr))}.planning-next-step .btn{width:100%}.history-source-checks{min-width:0}}
@media print{.planning-next-step,.history-source-row{display:none!important}}
.history-coverage>.btn{max-width:100%;white-space:normal;line-height:1.35;text-align:center}

/* Transaction-bound refund review; existing palette and typography retained. */
.refund-review-list{display:grid;gap:18px;margin-top:18px}.refund-review-case{padding:16px;border:1px solid var(--line,#ded8cc);border-radius:12px;min-width:0}.refund-review-case fieldset{padding:0;border:0;margin:12px 0 0;min-width:0}.refund-total{display:flex;justify-content:space-between;gap:12px;align-items:center}.refund-total strong{font-size:1.35rem}.refund-confirm{display:flex;align-items:flex-start;gap:10px;font-size:.88rem;line-height:1.5;margin-top:12px}.refund-confirm input{flex:none;margin-top:4px}.refund-evidence{grid-column:1/-1}.refund-derived strong{font-size:1.1rem}.refund-review-case input,.refund-review-case select,.refund-review-case textarea{max-width:100%;box-sizing:border-box}.refund-review-case .hint{line-height:1.45}.refund-instructions{margin-top:12px}.history-source-row>[data-action="refund-review-open"]{margin:4px 0 12px}.refund-review-case p,.refund-review-case label{overflow-wrap:anywhere}@media(max-width:540px){.refund-review-case{padding:12px}.refund-review-case .form-grid{grid-template-columns:1fr}.refund-total{align-items:flex-start;flex-direction:column;gap:3px}}
/* Store-specific Food / Nonalcoholic sales; existing hospitality system. */
.planning-category-breakdown{border:1px solid var(--line,#d7cfc1);border-radius:12px;padding:16px;margin:16px 0;min-width:0}.planning-category-breakdown h3{margin:0 0 12px}.planning-category-breakdown table{width:100%;table-layout:fixed;border-collapse:collapse}.planning-category-breakdown th,.planning-category-breakdown td{padding:10px 8px;text-align:left;overflow-wrap:anywhere}.planning-category-breakdown p{font-size:.86rem;line-height:1.5}.report-food-na{border:1px solid #d7cfc1;margin:10px 0;padding:9px 12px;break-inside:avoid}.report-food-na>span{float:right;font-size:.75rem}.report-food-na table{width:100%;table-layout:fixed;border-collapse:collapse}.report-food-na td,.report-food-na th{padding:5px;text-align:right;font-size:.8rem}.report-food-na td:first-child,.report-food-na th:first-child{text-align:left}.report-food-na p{font-size:.72rem;line-height:1.3;margin:4px 0}.report-food-na>span,.report-food-na th{overflow-wrap:anywhere}
@media(max-width:600px){.planning-category-breakdown{padding:12px}.planning-category-breakdown th,.planning-category-breakdown td{font-size:.85rem;padding:8px 5px}.report-food-na>span{float:none;display:block;margin:4px 0}.report-food-na{padding:8px}.report-food-na table{min-width:0!important}.report-food-na th,.report-food-na td{font-size:.68rem;padding:5px 2px;overflow-wrap:anywhere}}
@media print{.report-food-na{margin:4pt 0;padding:4pt 6pt}.report-food-na th,.report-food-na td{font-size:7pt;padding:2pt}.report-food-na>span,.report-food-na p{font-size:6.8pt}.report-food-na>b{font-size:8pt}}
.planning-category-breakdown th,.planning-category-breakdown td{white-space:normal;letter-spacing:normal;line-height:1.45}.planning-category-breakdown th:first-child{width:38%;text-align:left}.planning-category-breakdown th:not(:first-child),.planning-category-breakdown td{text-align:right}
@media(max-width:540px){.planning-category-breakdown th,.planning-category-breakdown td{font-size:11px;padding:7px 3px;overflow-wrap:anywhere}.planning-category-breakdown table{min-width:0!important;width:100%}.report-food-na th,.report-food-na td{white-space:normal;letter-spacing:normal}}
/* DoorDash operational source page: existing cream/ink/orange brand, no ledger changes. */
.dq-upload-card,.dq-period,.dq-import-preview{margin-bottom:18px}.dq-file-label{display:flex;flex-wrap:wrap;align-items:center;gap:12px;font-weight:700;margin:14px 0}.dq-file-label input{max-width:100%;font-size:13px}.dq-mapping-grid,.dq-total-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:16px 0}.dq-total-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.dq-stat{background:#fff;border:1px solid var(--line,#e5dfd5);border-radius:12px;padding:18px;min-width:0}.dq-stat span{display:block;font-size:12px;color:#665e51}.dq-stat strong{display:block;font-size:27px;margin-top:8px;overflow-wrap:anywhere}.dq-period{display:flex;gap:18px;align-items:end;flex-wrap:wrap}.dq-period .field{max-width:280px}.dq-table-wrap{max-width:100%;overflow:auto}.dq-table-wrap table{min-width:760px}.dq-table-wrap th,.dq-table-wrap td{font-size:12px;white-space:normal}.dq-table-wrap small{display:block;font-size:10px;color:#665e51;margin-top:3px}.dq-store-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:18px}.dq-action{border-left:3px solid #f28b24;padding:9px 12px;background:#fff8ef;margin-bottom:12px}.dq-action p{margin:6px 0;font-size:14px;line-height:1.5}.dq-store-card summary{cursor:pointer;padding:14px 0;font-size:13px;font-weight:700}.dq-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.dq-details div{border-bottom:1px solid #e5dfd5;padding-bottom:7px}.dq-details dt{font-size:11px;color:#665e51}.dq-details dd{margin:5px 0;font-size:14px;font-weight:600}.dq-footnote{margin-top:20px}.dq-save-message{background:#edf6ed;padding:12px;border-radius:8px}.dq-report-missing p{color:#665e51}.report-delivery-quality{border:1px solid #d6ccbb;border-radius:7px;padding:10px 12px;margin:10px 0;break-inside:avoid;font-size:11px;line-height:1.35}.report-delivery-quality h2{font-size:13px;margin:0 0 7px}.report-delivery-quality h2 span{font-weight:400;font-size:10px;float:right}.dq-report-store{margin-top:5px}.dq-report-store>small{display:block}.dq-report-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px 9px;margin:6px 0}.report-delivery-quality p{margin:4px 0}.dq-report-disclosure{display:block;color:#665e51;margin-top:7px}.portal-delivery-quality{margin:18px 0}.portal-delivery-quality .report-delivery-quality{border:0;margin:0;padding:0}.dq-full-print .dq-table-wrap table{min-width:0;width:100%}
@media(max-width:760px){.dq-mapping-grid,.dq-store-grid{grid-template-columns:1fr}.dq-total-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dq-stat strong{font-size:23px}.dq-mapping-grid select{max-width:100%;width:100%}.report-delivery-quality h2 span{float:none;display:block;margin-top:4px}.dq-report-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.dq-details{grid-template-columns:1fr}.dq-store-card,.dq-import-preview{min-width:0}}
@media print{.report-delivery-quality{font-size:8pt;padding:5px 7px;margin:6px 0}.report-delivery-quality h2{font-size:9pt;margin-bottom:3px}.report-delivery-quality h2 span{font-size:8pt}.dq-report-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:2px 6px;margin:3px 0}.dq-report-disclosure,.report-delivery-quality small{font-size:7pt}.dq-full-print .dq-store-grid{display:block}.dq-full-print .dq-store-card{break-inside:avoid}.dq-full-print .card{box-shadow:none}.dq-full-print .dq-total-grid{grid-template-columns:repeat(4,1fr)}}

/* Compact, legible print addition. Full source details stay on Delivery quality. */
@media print{
 #kpi-print-root .report-delivery-quality{font-size:8pt;line-height:1.2;padding:4pt 5pt;margin:4pt 0}
 #kpi-print-root .report-delivery-quality .dq-report-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:2pt 6pt;margin:3pt 0}
 #kpi-print-root .report-delivery-quality .dq-report-disclosure{font-size:7pt;line-height:1.15;margin-top:3pt}
 #kpi-print-root .manager-performance-snapshot:has(.dq-report-single) .snapshot-kpi h2{min-height:17pt;margin-bottom:2pt}
 #kpi-print-root .manager-performance-snapshot:has(.dq-report-single) .snapshot-grade{margin-bottom:2pt}
 #kpi-print-root .manager-performance-snapshot:has(.dq-report-single) .snapshot-actual{font-size:18pt;margin-bottom:2pt}
 #kpi-print-root .manager-performance-snapshot:has(.dq-report-single) .snapshot-trend{height:87pt;max-height:87pt}
 #kpi-print-root .manager-performance-snapshot:has(.dq-report-single) .snapshot-panel{padding:4pt}
 #kpi-print-root .manager-performance-snapshot:has(.dq-report-single) .snapshot-disclosure{margin-top:4pt;padding-top:2pt}
}
/* v1.8.17: multi-file coverage and reported reasons, same app design system. */
.dq-file-coverage{margin:16px 0;padding:12px;border:1px solid var(--line,#e5dfd5);border-radius:10px;min-width:0}.dq-file-row{display:grid;grid-template-columns:140px minmax(0,1fr);gap:5px 12px;padding:8px 0;border-top:1px solid var(--line,#e5dfd5);font-size:12px}.dq-file-row span,.dq-file-row small{overflow-wrap:anywhere}.dq-file-row small{grid-column:2}.dq-reason-overview{margin:12px 0;padding:12px;background:var(--cream,#f9f5ee);border-radius:8px;overflow-wrap:anywhere}.dq-reason-overview h3{font-size:14px;margin:0 0 9px}.dq-reason-overview p{font-size:13px;line-height:1.5}.dq-coverage-chips{display:flex;gap:6px;flex-wrap:wrap}.dq-coverage-chip{font-size:10px;padding:5px 7px;border:1px solid var(--line,#d9d0c2);border-radius:5px;background:#fff}.dq-needs-review{color:#8c371b;background:#fff0e3}.dq-reason-section{padding:10px 0;border-bottom:1px solid var(--line,#e5dfd5)}.dq-reason-section h4{font-size:13px;margin:4px 0}.dq-reason-list{margin:8px 0}.dq-reason-list>div{padding:6px 0}.dq-reason-list dt{font-size:12px}.dq-reason-list dd{font-size:12px;font-weight:650;margin:4px 0}.dq-original-detail{margin:8px 6px 0 0;max-width:100%;white-space:normal}.dq-report-reasons{overflow-wrap:anywhere}
@media(max-width:600px){.dq-file-row{grid-template-columns:1fr}.dq-file-row small{grid-column:1}.dq-import-preview> .actions{flex-wrap:wrap}.dq-import-preview .card-head p{overflow-wrap:anywhere}.dq-coverage-chip{max-width:100%;overflow-wrap:anywhere}}
@media print{.dq-report-reasons{font-size:8pt;line-height:1.25}.dq-file-coverage{display:none}.dq-reason-overview{padding:5pt;margin:5pt 0}.dq-reason-overview p{font-size:8pt}.dq-coverage-chip{font-size:7pt}.dq-report-stats span{overflow-wrap:anywhere}}

/* Metric-specific comparison groups: source members are not combined ranks. */
.snapshot-member-rank{display:block;margin:2px 0;line-height:1.35}
/* v1.8.18: retain readable type while giving expanded unit labels room in print. */
@media print{
 #kpi-print-root .kpi-report-sheet:not(.manager-performance-snapshot) .kpi-report-notes{line-height:1.2;margin:4px 0;padding:3px 6px}
 #kpi-print-root .kpi-report-sheet:not(.manager-performance-snapshot) .kpi-report-footer{margin-top:3px;padding-top:3px}
 #kpi-print-root .manager-performance-snapshot:has(.with-sales-budget) .snapshot-panel{padding:4pt}
 #kpi-print-root .manager-performance-snapshot:has(.with-sales-budget) .snapshot-rank-row{padding:1.5pt 0}
 #kpi-print-root .manager-performance-snapshot:has(.with-sales-budget) .snapshot-member-rank{margin:0;line-height:1.25}
 #kpi-print-root .manager-performance-snapshot:has(.with-sales-budget) .snapshot-grade{margin-bottom:3pt}
 #kpi-print-root .manager-performance-snapshot:has(.with-sales-budget) .snapshot-actual{margin-bottom:2pt}
 #kpi-print-root .manager-performance-snapshot:has(.with-sales-budget) .snapshot-insights{padding:4pt 8pt}
 #kpi-print-root .manager-performance-snapshot:has(.with-sales-budget) .snapshot-disclosure{margin-top:3pt;padding-top:2pt}
}
@media print{
 #kpi-print-root .kpi-report-sheet:has(.with-sales-budget):not(.manager-performance-snapshot):not(.kpi-comparison-sheet) .kpi-report-header{padding-bottom:3pt;margin-bottom:3pt}
 #kpi-print-root .kpi-report-sheet:has(.with-sales-budget):not(.manager-performance-snapshot):not(.kpi-comparison-sheet) .kpi-report-headline{padding:3pt 10pt;margin-bottom:3pt}
 #kpi-print-root .manager-performance-snapshot:has(.with-sales-budget) .snapshot-kpi{padding:3pt 4pt}
 #kpi-print-root .manager-performance-snapshot:has(.with-sales-budget) .snapshot-rank-row{padding:1pt 0}
 #kpi-print-root .manager-performance-snapshot:has(.with-sales-budget) .snapshot-panel h2{margin-bottom:4px}
}

/* Weekly meeting organization. Existing brand, forms and print outputs retained. */
.meeting-board{padding:0;margin:0 0 28px;overflow:hidden}
.meeting-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding:22px 24px;background:var(--ivory)}
.meeting-head .eyebrow{color:var(--rust);margin-bottom:7px}.meeting-head h2{font-size:24px;letter-spacing:-.6px}.meeting-head p{font-size:12px;margin-top:10px;color:var(--text);line-height:1.7}
.meeting-total{min-width:140px;text-align:right}.meeting-total strong{display:block;font-size:32px;line-height:1.2;font-variant-numeric:tabular-nums}.meeting-total span{font-size:12px;color:var(--muted)}
.meeting-key,.meeting-save-note{font-size:12px;padding:12px 24px;line-height:1.5}.meeting-key{border-bottom:1px solid var(--line);color:var(--muted)}.meeting-save-note{background:#fff4e6;color:#704921}
.meeting-column-labels,.meeting-store-grid{display:grid;grid-template-columns:minmax(155px,1.35fr) repeat(5,minmax(86px,1fr)) minmax(158px,1.3fr);gap:12px;align-items:start}
.meeting-column-labels{padding:12px 24px;font-size:10px;text-transform:uppercase;letter-spacing:.6px;color:var(--muted);border-bottom:1px solid var(--line)}
.meeting-store{padding:18px 24px;border-bottom:1px solid var(--line)}.meeting-store:last-of-type{border-bottom:0}
.meeting-store-name h3{font-size:14px}.meeting-store-name p{font-size:12px;color:var(--muted);margin:2px 0 7px}.meeting-store-name small{display:block;font-size:10px;color:var(--muted);margin-top:4px}
.meeting-result{display:inline-block;font-size:11px;font-weight:700;border-radius:5px;padding:4px 7px}.meeting-result.ready{background:#e9f1e8;color:var(--green)}.meeting-result.pending{background:#fbedda;color:#79501f}
.meeting-stage{font-size:12px;line-height:1.5;display:block;overflow-wrap:anywhere}.meeting-stage.done{color:var(--green)}.meeting-stage.attention,.meeting-stage.missing{color:#79501f}.meeting-stage span{font-weight:800;margin-right:2px}
.meeting-next .btn{width:100%;white-space:normal;min-height:44px;font-size:12px;padding:8px}.meeting-next small{display:block;margin-top:6px;font-size:10px;color:var(--muted)}
.meeting-reason{font-size:12px;line-height:1.5;margin-top:12px;max-width:105ch;overflow-wrap:anywhere}.meeting-shared{font-size:11px;color:var(--muted);margin-top:6px}
.meeting-details{margin-top:10px;font-size:12px}.meeting-details>summary{cursor:pointer;color:var(--rust);font-weight:600;padding:5px 0;min-height:32px}.meeting-detail-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:12px 0}.meeting-detail-list section{border:1px solid var(--line);border-radius:8px;padding:14px;background:#fcfbf8;min-width:0}.meeting-detail-list section>div{display:flex;justify-content:space-between;flex-wrap:wrap;gap:6px}.meeting-detail-list ul,.meeting-notes ul{padding-left:18px;margin:10px 0;overflow-wrap:anywhere}.meeting-detail-list li,.meeting-notes li{margin:5px 0}.meeting-detail-list .btn{white-space:normal;min-height:40px}.meeting-notes{padding:14px;background:#f4f0e9;border-radius:8px;margin-bottom:12px}
.meeting-foot{display:block!important;padding:14px 24px!important;font-size:11px!important;background:#fcfbf8;color:var(--muted);line-height:1.6;overflow-wrap:anywhere}
.meeting-mobile-label{display:none}.meeting-performance-heading{margin:24px 0 16px}.meeting-performance-heading p{font-size:12px;color:var(--muted);margin-top:4px}.meeting-return{margin:0 0 12px}.meeting-return .btn{white-space:normal;text-align:left}
.meeting-report-note{display:flex;justify-content:space-between;align-items:center;gap:16px;border:1px solid var(--line);border-left:4px solid var(--orange);border-radius:8px;background:#fcfbf8;padding:14px 18px;margin-bottom:18px}.meeting-report-note p{font-size:12px;margin:6px 0}.meeting-report-note small{font-size:11px;color:var(--muted)}
@media(max-width:1280px){.meeting-column-labels{display:none}.meeting-store-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.meeting-store-name{grid-column:1/4}.meeting-next{grid-column:4/6;grid-row:1}.meeting-step{grid-row:2}.meeting-mobile-label{display:block;font-size:10px;color:var(--muted);margin-bottom:5px}.meeting-next small{text-align:right}}
@media(max-width:650px){.meeting-head{padding:18px 16px;flex-wrap:wrap;gap:14px}.meeting-head h2{font-size:22px}.meeting-total{min-width:0;text-align:left}.meeting-total strong{font-size:26px}.meeting-key,.meeting-save-note,.meeting-foot{padding:12px 16px!important}.meeting-store{padding:16px}.meeting-store-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.meeting-store-name{grid-column:1/-1}.meeting-next{grid-column:1/-1;grid-row:5}.meeting-step{grid-row:auto}.meeting-step:last-of-type{grid-column:1/-1}.meeting-next small{text-align:left}.meeting-stage{font-size:12px}.meeting-detail-list{grid-template-columns:1fr}.meeting-report-note{flex-direction:column;align-items:stretch}.meeting-details>.actions{align-items:stretch;flex-direction:column}.meeting-details>.actions .btn{white-space:normal}}
@media print{.meeting-board,.meeting-report-note,.meeting-return,.meeting-performance-heading{display:none!important}}

.meeting-foot summary{cursor:pointer;font-weight:600;padding:3px 0}.meeting-foot p{margin-top:8px}

/* v1.8.21 — daily delivery observations within the established design system */
.dq-daily{margin:16px 0;border-top:1px solid var(--border,#e5dac9);padding-top:12px}
.dq-daily h3,.dq-products h3{font-size:14px;margin:0 0 6px}.dq-daily-coverage,.dq-time-limitation,.dq-rating-note{font-size:12px;line-height:1.55;margin:6px 0}
.dq-time-limitation{padding:8px 10px;background:var(--surface-alt,#f7f2ea);border-left:3px solid #cf8b37;color:#493f32}
.dq-day-flags{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;margin:10px 0}.dq-day-flags>span{padding:7px 6px;border:1px solid #ded6cb;border-radius:5px;font-size:10px;line-height:1.45}.dq-day-flags b{display:block;font-size:10px;margin-top:3px}.dq-day-issue{background:#fff5e6}.dq-day-missing{background:#f0efec;color:#6c645b}.dq-day-clear{background:#f4f7f2}.dq-day-priorities p{font-size:12px;margin:5px 0;line-height:1.5}
.dq-daily-table table{min-width:750px}.dq-daily-table td,.dq-daily-table th{padding:9px;font-size:12px;vertical-align:top}.dq-daily-table small,.dq-products small{display:block;font-size:10px;color:#70665a}.dq-products{margin:14px 0}.dq-products>p{font-size:12px;line-height:1.5}.dq-products table{width:100%;min-width:420px}.dq-products th,.dq-products td{padding:7px 9px;font-size:12px;vertical-align:top}.dq-products-compact>p{font-size:11px}.dq-products-compact small{font-size:10px}
.dq-company-heading h1{font-size:24px;margin:5px 0}.dq-company-heading p{font-size:12px;margin:5px 0}.dq-company-overview{overflow:auto;margin:12px 0}.dq-company-overview table{width:100%;border-collapse:collapse;min-width:650px}.dq-company-overview th,.dq-company-overview td{font-size:11px;padding:8px;border-bottom:1px solid #ded6cb;text-align:left}.dq-company-stores{display:grid;grid-template-columns:1fr 1fr;gap:14px}.dq-company-store{border:1px solid #e3dbcf;padding:12px;border-radius:7px}.dq-company-store h2{font-size:15px;margin:0}.dq-company-store .dq-day-flags{grid-template-columns:repeat(4,minmax(0,1fr))}.dq-company-products{margin-top:16px}.dq-company-products>h2{font-size:17px}.dq-company-products>div{break-inside:avoid;border-top:1px solid #e3dbcf;padding-top:10px}.dq-partial-banner{line-height:1.6}
@media(max-width:760px){.dq-day-flags{grid-template-columns:repeat(4,minmax(0,1fr))}.dq-company-stores{grid-template-columns:1fr}.dq-daily-coverage,.dq-time-limitation,.dq-rating-note{font-size:12px}.dq-products .table-wrap{max-width:100%}}
@media print{.dq-daily,.dq-products-compact,.dq-company-store{break-inside:avoid}.dq-company-sheet{break-before:page;break-after:page}.dq-company-stores{display:block}.dq-company-store{margin-bottom:8mm}.dq-company-heading h1{font-size:19pt}.dq-company-overview{overflow:visible}.dq-company-overview table{min-width:0}.dq-company-overview th,.dq-company-overview td{padding:4px;font-size:8pt}.dq-daily-compact p,.dq-rating-note{font-size:8pt}.dq-day-flags>span,.dq-day-flags b{font-size:7pt}.dq-day-priorities p{font-size:8pt}.dq-time-limitation{padding:4px 7px}.dq-company-store .dq-day-flags{grid-template-columns:repeat(7,minmax(0,1fr))}.dq-products>details{display:none}}

.dq-store-grid.dq-daily-stores{grid-template-columns:1fr}.dq-daily-stores .dq-store-card{min-width:0}

/* Company briefing already identifies its purpose and the time limitation once. */
.dq-company-store .dq-daily>h3,.dq-company-store .dq-time-limitation{display:none}
.dq-company-store .dq-daily{margin-top:0}
.dq-company-store .dq-daily-coverage{margin-top:0}

/* Long source IDs remain readable in the owner refund dialog on a phone. */
.refund-source-id, .refund-source-id code{overflow-wrap:anywhere;word-break:break-word;white-space:normal;}


/* v1.8.25 — performance first; delivery second; upcoming budget third.
   Scoped to the manager snapshot. No financial/source or other report redesign. */
.snapshot-performance,.snapshot-delivery,.snapshot-upcoming{min-width:0}
.snapshot-year-comparison{border:1px solid #d6ccbb;border-radius:8px;margin:16px 0;padding:14px 16px;background:#fffdf9;break-inside:avoid}
.snapshot-year-comparison h2{font-size:15px;margin:0 0 8px;color:#2b241b}
.snapshot-comparison-dates{display:flex;flex-wrap:wrap;gap:4px 20px;font-size:11px;color:#685d4b;margin-bottom:10px;line-height:1.45}
.snapshot-volume-table{width:100%;table-layout:fixed;border-collapse:collapse;font-variant-numeric:tabular-nums}
.snapshot-volume-label{width:43%}
.snapshot-volume-table th,.snapshot-volume-table td{font-size:12px;padding:8px 6px;border-bottom:1px solid #e8e0d4;line-height:1.35;text-align:right;overflow-wrap:anywhere;vertical-align:middle}
.snapshot-volume-table th:first-child{text-align:left}.snapshot-volume-table thead th{font-size:10px;text-transform:uppercase;letter-spacing:.35px;color:#685d4b;background:#f5f0e6}
.snapshot-volume-table tbody tr:last-child th,.snapshot-volume-table tbody tr:last-child td{border-bottom:0}
.snapshot-volume-table .snapshot-not-applicable{text-align:center;color:#766951;font-weight:400}
.snapshot-comparison-warning,.snapshot-comparison-notes{font-size:10px;line-height:1.5;margin:9px 0 0;color:#6f624d}
.snapshot-comparison-warning{border-left:3px solid #c98935;padding-left:8px;color:#785123}
.snapshot-delivery{margin-top:20px}.snapshot-upcoming{margin-top:16px}
@media(max-width:620px){.snapshot-year-comparison{padding:12px 9px}.snapshot-year-comparison h2{font-size:14px}.snapshot-volume-label{width:38%}.snapshot-volume-table th,.snapshot-volume-table td{padding:7px 3px;font-size:11px}.snapshot-volume-table thead th{font-size:9px;letter-spacing:0}.snapshot-comparison-dates{display:block;font-size:10px}.snapshot-comparison-dates span{display:block;margin:3px 0}.snapshot-comparison-notes{font-size:10px}.snapshot-delivery{margin-top:16px}}
@media print{
 #kpi-print-root .manager-performance-snapshot .snapshot-year-comparison{margin:5pt 0;padding:5pt 8pt;break-inside:avoid}
 #kpi-print-root .manager-performance-snapshot .snapshot-year-comparison h2{font-size:10pt;margin-bottom:4pt;break-after:avoid}
 #kpi-print-root .manager-performance-snapshot .snapshot-comparison-dates{font-size:8pt;margin-bottom:4pt}
 #kpi-print-root .manager-performance-snapshot .snapshot-volume-table th,#kpi-print-root .manager-performance-snapshot .snapshot-volume-table td{font-size:8.5pt;padding:2.5pt 4pt}
 #kpi-print-root .manager-performance-snapshot .snapshot-volume-table thead th{font-size:8pt}
 #kpi-print-root .manager-performance-snapshot .snapshot-comparison-notes,#kpi-print-root .manager-performance-snapshot .snapshot-comparison-warning{font-size:7.5pt;line-height:1.25;margin-top:4pt}
 #kpi-print-root .manager-performance-snapshot .snapshot-delivery{margin-top:8pt}
 #kpi-print-root .manager-performance-snapshot .snapshot-upcoming{margin-top:6pt;break-inside:avoid}
}
.snapshot-volume-table th,.snapshot-volume-table td{white-space:normal}
.snapshot-volume-table tbody th{letter-spacing:0;text-transform:none;font-weight:500;color:#29241e;background:transparent}

@media print{
 #kpi-print-root .manager-performance-snapshot:has(.snapshot-year-comparison) .snapshot-intro{margin:4pt 0 5pt}
 #kpi-print-root .manager-performance-snapshot:has(.snapshot-year-comparison) .snapshot-middle{margin:5pt 0}
 #kpi-print-root .manager-performance-snapshot:has(.snapshot-year-comparison) .snapshot-disclosure{break-inside:avoid}
 #kpi-print-root .manager-performance-snapshot:has(.snapshot-year-comparison) .snapshot-disclosure p{margin:1pt 0}
}

/* v1.8.28: one save message, actionable exceptions, no repeat setup questions. */
.meeting-connection{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 24px;background:#fff4e6;border-bottom:1px solid var(--line);font-size:12px;line-height:1.5}
.meeting-connection b,.meeting-connection span{display:block}.meeting-connection .btn{min-height:44px;white-space:normal}.meeting-online-ok{display:block;padding:10px 24px 0;color:var(--green);font-size:12px;font-weight:600}
.meeting-automation{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 24px;border-bottom:1px solid var(--line);font-size:12px;line-height:1.5;color:var(--muted)}
.meeting-working-dot{width:9px;height:9px;flex:0 0 9px;border-radius:50%;background:var(--orange)}
.meeting-store-name .meeting-closed{color:var(--green);font-weight:600;margin-top:7px}.meeting-remaining{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:12px;font-size:11px}.meeting-remaining .btn{font-size:11px;min-height:40px;white-space:normal}
.meeting-store .meeting-result{line-height:1.5}.meeting-next .btn[disabled]{opacity:.75;cursor:wait}
@media(max-width:650px){.meeting-connection{padding:12px 16px;align-items:stretch;flex-direction:column}.meeting-automation{padding:12px 16px}.meeting-online-ok{padding:12px 16px 0}.meeting-remaining{align-items:stretch;flex-direction:column}.meeting-remaining .btn{text-align:left}}

.meeting-stage.note{color:var(--muted)}

/* Exact existing-input focus only; no layout redesign or persistent state. */
.meeting-exact-field{outline:2px solid var(--orange,#c17f32);outline-offset:5px;border-radius:6px;}
.snapshot-owner-actions{margin:12px 0;}.snapshot-owner-actions small{display:block;margin-top:7px;}
.snapshot-component-label{display:block;font-size:9px;font-weight:400;opacity:.7;}

.snapshot-owner-actions{min-width:0;max-width:100%;}.snapshot-owner-actions .actions{flex-wrap:wrap}.snapshot-owner-actions .btn{white-space:normal;max-width:100%;height:auto;min-height:40px;overflow-wrap:anywhere}.snapshot-kpi .snapshot-target{overflow-wrap:anywhere;white-space:normal}.snapshot-kpi{min-width:0}

/* Account Management extends the existing KPI components and palette. */
.account-layout{display:grid;grid-template-columns:minmax(260px,.85fr) minmax(0,1.6fr);gap:24px;margin:24px 0}.account-directory,.account-editor{padding:24px;min-width:0}.account-person{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:16px 10px;text-align:left;border:0;border-bottom:1px solid #e6ded1;background:transparent;color:inherit;cursor:pointer;border-radius:6px}.account-person.selected{background:#f0e8d7}.account-person small{display:block;line-height:1.6;color:#685e54}.account-person b{display:block}.account-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.account-fields{padding:0;border:0;min-width:0}.account-stores,.account-permissions{display:grid;gap:12px;border:1px solid #e6ded1;border-radius:12px;padding:18px;margin:20px 0;min-width:0}.account-stores legend,.account-permissions legend{font-weight:700;padding:0 8px}.account-fields .checkbox{display:flex;align-items:center;gap:10px;min-height:32px}.account-fields .checkbox input{flex-shrink:0;width:18px;height:18px}.account-secondary{margin:22px 0 0;border-top:1px solid #e6ded1;padding-top:20px}.account-history{margin-top:24px}.account-preview-banner{background:#f0e8d7;color:#201a14;display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:14px 22px;border-bottom:2px solid #8a613c}.account-preview-banner span{flex:1;font-size:13px;min-width:160px}.account-preview-banner .btn{min-height:44px}.account-toolbar .btn{min-height:44px}.account-editor fieldset:disabled{opacity:.75}.account-editor input,.account-editor select{max-width:100%}@media(max-width:860px){.account-layout{grid-template-columns:1fr}.account-directory{max-height:440px;overflow:auto}.account-editor .form-grid{grid-template-columns:1fr}.account-directory,.account-editor{padding:18px}.account-preview-banner{padding:12px}}


/* Manager Performance Snapshot: a quiet meeting agenda, on the existing report. */
.meeting-snapshot{--meeting-line:#e4ddd2;--meeting-muted:#71685c}.meeting-snapshot .snapshot-intro{margin:18px 0 22px}.meeting-snapshot .snapshot-intro .eyebrow{display:none}.meeting-snapshot .snapshot-intro p{font-size:12px;letter-spacing:.1px;color:var(--meeting-muted)}
.meeting-section{margin:26px 0}.meeting-heading{display:flex;align-items:center;gap:11px;font-size:18px!important;font-weight:650;margin:0 0 13px!important;letter-spacing:-.2px}.snapshot-meeting-step{font-size:11px;font-variant-numeric:tabular-nums;font-weight:700;color:#956231;letter-spacing:1px;border:1px solid #dfd1bf;border-radius:6px;padding:5px 6px;line-height:1}
.meeting-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.meeting-grid-two{grid-template-columns:repeat(2,minmax(0,1fr))}.meeting-metric{display:flex;flex-direction:column;align-items:flex-start;gap:7px;min-width:0;padding:18px 20px;border:1px solid var(--meeting-line);border-radius:10px;background:#fff}.meeting-metric h3{font-size:12px;line-height:1.4;margin:0;color:#5e554a;font-weight:600;letter-spacing:0}.meeting-value{font-size:30px;line-height:1.2;font-weight:650;letter-spacing:-.9px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;max-width:100%}.meeting-target{font-size:11px;color:var(--meeting-muted);line-height:1.4}.meeting-status{display:inline-flex;align-items:center;gap:5px;font-size:10px;line-height:1.35;font-weight:650;border-radius:5px;padding:4px 7px;white-space:normal;max-width:100%;margin-top:2px}.meeting-status:before{content:'●';font-size:7px;flex-shrink:0}.meeting-green{color:#315a39;background:#edf4ed}.meeting-yellow{color:#785c11;background:#fff5d9}.meeting-red{color:#913c2d;background:#faeee9}.meeting-neutral{color:#70675d;background:#f0ede7}.meeting-note{font-size:11px!important;line-height:1.5!important;color:var(--meeting-muted);margin:8px 0 0!important}.meeting-sales{display:grid;grid-template-columns:1.65fr 1fr;gap:14px}.meeting-growth{background:#f5f0e6;border:1px solid #e1d4c0;border-top:3px solid #c77324;border-radius:11px;padding:18px 20px}.meeting-growth .meeting-metric{padding:0;border:0;background:none}.meeting-growth .meeting-value{font-size:42px}.meeting-sales-context{display:flex;flex-wrap:wrap;gap:10px 24px;padding-top:14px;margin-top:10px;border-top:1px solid #e1d4c0;font-size:11px;color:#71685c}.meeting-sales-context b{color:#2d251e;font-weight:650;margin-left:6px;font-variant-numeric:tabular-nums}.meeting-labor{display:grid;grid-template-columns:1fr 2fr;gap:14px}.meeting-overtime{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--meeting-line);border-radius:10px;overflow:hidden;height:calc(100% - 26px)}.meeting-overtime .meeting-metric{border:0;border-radius:0;padding:16px 13px}.meeting-overtime .meeting-metric+.meeting-metric{border-left:1px solid var(--meeting-line)}.meeting-metric-small .meeting-value{font-size:24px}.snapshot-meeting-key{font-size:10px!important;line-height:1.7;color:var(--meeting-muted);margin:15px 0!important}.meeting-dot{background:none;margin-left:10px}.meeting-dot:first-child{margin-left:0}.meeting-snapshot .snapshot-supporting{margin:15px 0;padding:0;border:0;background:none}.snapshot-supporting>summary{cursor:pointer;min-height:44px;display:list-item;padding:12px 2px;font-size:12px;font-weight:600;line-height:1.5;color:#645442;border-bottom:1px solid var(--meeting-line)}.snapshot-supporting[open]>summary{margin-bottom:15px}.snapshot-supporting>summary:focus-visible,.meeting-action-detail>summary:focus-visible{outline:3px solid var(--orange);outline-offset:3px}.meeting-snapshot .snapshot-kpis{margin-top:16px}.meeting-action-detail{margin-top:8px}.meeting-action-detail summary{font-size:11px;cursor:pointer;color:#7a5a36}.meeting-snapshot .snapshot-actions{margin:25px 0}.meeting-snapshot .snapshot-actions h3{font-size:13px;line-height:1.5}.meeting-snapshot .snapshot-actions>div>section{box-shadow:none;border:1px solid var(--meeting-line);background:#f6f2e9}.meeting-snapshot .snapshot-disclosure{font-size:11px;line-height:1.6}.meeting-company-header h1{font-size:28px;margin:8px 0}.meeting-company-header small{color:var(--meeting-muted)}
.meeting-store-table{width:100%;table-layout:fixed;border:1px solid var(--meeting-line);border-radius:8px;border-collapse:separate;border-spacing:0}.meeting-store-table th,.meeting-store-table td{padding:12px 11px;border-bottom:1px solid var(--meeting-line);vertical-align:top;white-space:normal;overflow-wrap:anywhere;font-size:12px;text-align:left}.meeting-store-table thead th{font-size:10px;background:#f4efe5;text-transform:none;letter-spacing:0}.meeting-store-table th:first-child{width:26%}.meeting-store-table tbody th{font-weight:600;background:transparent;text-transform:none;letter-spacing:0}.meeting-store-table small{display:block;font-size:10px;line-height:1.5;color:var(--meeting-muted);font-weight:400;margin:5px 0}.meeting-store-table td>strong{font-size:20px;font-variant-numeric:tabular-nums;letter-spacing:-.5px}.meeting-store-table tr:last-child>*{border-bottom:0}
@media(max-width:700px){.meeting-sales{grid-template-columns:1fr}.meeting-labor{grid-template-columns:1fr}.meeting-grid{grid-template-columns:1fr}.meeting-grid-two{grid-template-columns:1fr 1fr}.meeting-metric{padding:15px}.meeting-growth{padding:18px}.meeting-growth .meeting-value{font-size:36px}.meeting-value{font-size:27px}.meeting-overtime .meeting-metric{padding:13px 9px}.meeting-overtime{height:auto}.meeting-metric-small .meeting-value{font-size:22px}.meeting-heading{font-size:17px!important}.meeting-store-table,.meeting-store-table tbody{display:block}.meeting-store-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.meeting-store-table tbody tr{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-bottom:1px solid var(--meeting-line);padding:8px}.meeting-store-table tbody th{grid-column:1/-1;width:auto!important;border:0;padding:6px}.meeting-store-table td{display:flex;flex-direction:column;align-items:flex-start;border:0;padding:8px 6px}.meeting-store-table td:before{content:attr(data-meeting-label);font-size:10px;line-height:1.4;color:var(--meeting-muted);margin-bottom:7px;min-height:28px}.meeting-store-table td>strong{font-size:19px}.meeting-store-table .meeting-status{font-size:9px;padding:3px}.meeting-store-table small{font-size:9px}.meeting-snapshot .snapshot-intro{align-items:flex-start;gap:8px;flex-wrap:wrap}.meeting-note{font-size:10px!important}}
@media print{
 #kpi-print-root .meeting-snapshot{padding:12pt!important;break-inside:auto!important}#kpi-print-root .meeting-snapshot .snapshot-performance{break-inside:auto!important}#kpi-print-root .meeting-snapshot .snapshot-intro{margin:5pt 0!important}#kpi-print-root .meeting-snapshot .snapshot-intro p{font-size:8pt}#kpi-print-root .meeting-section{margin:10pt 0;break-inside:avoid}#kpi-print-root .meeting-heading{font-size:11pt!important;margin-bottom:6pt!important}#kpi-print-root .snapshot-meeting-step{font-size:7pt;padding:3pt}#kpi-print-root .meeting-metric{padding:8pt;gap:3pt}#kpi-print-root .meeting-metric h3{font-size:8pt}#kpi-print-root .meeting-value{font-size:19pt}#kpi-print-root .meeting-growth .meeting-value{font-size:26pt}#kpi-print-root .meeting-growth{padding:9pt}#kpi-print-root .meeting-target,#kpi-print-root .meeting-status,#kpi-print-root .meeting-note{font-size:7pt!important}#kpi-print-root .meeting-sales-context{padding-top:6pt;margin-top:6pt;font-size:7pt}#kpi-print-root .meeting-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7pt}#kpi-print-root .meeting-grid-two{grid-template-columns:repeat(2,minmax(0,1fr))}#kpi-print-root .meeting-sales{grid-template-columns:1.65fr 1fr}#kpi-print-root .meeting-labor{grid-template-columns:1fr 2fr}#kpi-print-root .meeting-overtime .meeting-value{font-size:16pt}#kpi-print-root .meeting-overtime .meeting-metric{padding:7pt}#kpi-print-root .snapshot-meeting-key{font-size:7pt!important;margin:6pt 0!important}#kpi-print-root .meeting-snapshot .snapshot-supporting:not([open]){display:none!important}#kpi-print-root .meeting-action-detail:not([open]){display:none!important}#kpi-print-root .meeting-snapshot .snapshot-delivery:not(:has(.eight-trends,.eight-trend-unavailable,.snapshot-google-reviews)):has(details:not([open])){display:none!important}#kpi-print-root .meeting-status,#kpi-print-root .meeting-growth{-webkit-print-color-adjust:exact;print-color-adjust:exact}#kpi-print-root .meeting-store-table{display:table}#kpi-print-root .meeting-store-table thead{position:static;width:auto;height:auto;clip-path:none;display:table-header-group}#kpi-print-root .meeting-store-table tbody{display:table-row-group}#kpi-print-root .meeting-store-table tbody tr{display:table-row;break-inside:avoid}#kpi-print-root .meeting-store-table th,#kpi-print-root .meeting-store-table td{display:table-cell;padding:7pt}#kpi-print-root .meeting-store-table td:before{display:none}#kpi-print-root .meeting-store-table td>strong{font-size:13pt}
}

.meeting-reported-target{display:block;font-size:10px;line-height:1.5;margin-top:4px;color:var(--meeting-muted)}

@media(max-width:420px){.topbar .crumb{min-width:0;flex-wrap:wrap;gap:6px}.topbar .actions{flex-shrink:0}}

/* Snapshot category costs and productivity use the existing meeting cards. */
.meeting-sales-summary{display:grid;gap:12px;min-width:0}.meeting-labor-overtime{margin-top:12px}.meeting-labor-overtime .meeting-overtime{height:auto}
@media(max-width:700px){.meeting-store-table tbody tr{grid-template-columns:repeat(var(--meeting-mobile-columns,3),minmax(0,1fr))}}
@media print{#kpi-print-root .meeting-sales-summary{gap:7pt}#kpi-print-root .meeting-labor-overtime{margin-top:7pt}}

/* Target and tolerance pairs keep the owner editor compact and readable. */
.target-editor-field>.target-input-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px;border:0;border-radius:0;background:none;overflow:visible}
.target-input-pair label{display:block;font-size:11px;color:#64594c;min-width:0}
.target-input-unit{display:flex;align-items:center;border:1px solid #d6cbbb;border-radius:8px;background:#fff;overflow:hidden;margin-top:5px}
.target-input-unit b{padding:0 8px;font-size:11px;white-space:nowrap}
.target-editor-field .target-range-example{color:#4f573d;min-height:32px}
.target-tolerance-extra{display:grid;grid-template-columns:minmax(0,1fr) 2fr;gap:24px;margin:18px 0 28px;padding:18px;background:#f7f3eb;border-radius:10px}
.target-tolerance-extra p{font-size:13px;line-height:1.6;margin:0;align-self:center}
@media(max-width:620px){.target-tolerance-extra{grid-template-columns:1fr;gap:12px}.target-navigation{display:flex;flex-wrap:wrap}.target-navigation>.field{width:100%}.target-navigation .btn{white-space:normal}}

.target-other-settings{border-top:1px solid var(--line);padding:16px 0}.target-other-settings>summary{cursor:pointer;font-size:13px;font-weight:600}

/* Shared interaction refinements. Preserve report layouts and semantic status colors. */
body{-webkit-font-smoothing:antialiased}
.btn{border-radius:10px}
.card{border-color:var(--line)}
@media screen{
 :is(.manager-shell,.content) :is(input,select,textarea){scroll-margin-block:100px}
 :is(.manager-shell,.content) :is(button,a,input,select,textarea,summary):focus-visible{outline:3px solid var(--rust);outline-offset:3px}
 .manager-alert{gap:8px}
 .manager-shell .portal-home-tile{border-color:var(--line);border-radius:var(--radius)}
 .portal-tile-title{letter-spacing:-.035em}
}
@media screen and (max-width:640px){
 .content :is(input:not([type=checkbox]):not([type=radio]),select,textarea){font-size:16px;min-height:44px}
 .content :is(.btn,summary),.manager-shell summary{min-height:44px;align-content:center}
 .manager-shell :is(h1,h2),.content :is(h1,h2){overflow-wrap:break-word}
}

/* Native payroll bonus card: existing card, form and table primitives. */
.bonus-tracker-body{padding:0 24px 24px}.bonus-tracker-body td{vertical-align:top;min-width:170px}.bonus-tracker-body label{display:block;margin:8px 0}.bonus-tracker-body input:not([type=checkbox]),.bonus-tracker-body select,.bonus-tracker-body textarea{display:block;width:100%;max-width:260px}.bonus-tracker-body details{margin:16px 0}.bonus-tracker-body button{margin:6px 4px 6px 0}.bonus-tracker-body [data-bonus-review-form]{margin-top:20px}.payroll-bonus-message{padding:0 24px;color:var(--muted)}
.bonus-employee-table{table-layout:fixed}.bonus-employee-table th:first-child{width:20%}.bonus-employee-table th:nth-child(2){width:36%}.bonus-employee-table th:nth-child(3){width:20%}.bonus-tracker-body .field{font-size:13px}.bonus-tracker-body .field input,.bonus-tracker-body .field select,.bonus-tracker-body .field textarea{margin-top:5px}.bonus-tracker-body [data-bonus-rate] details{margin:10px 0}.bonus-tracker-body [data-bonus-rate] summary{font-weight:600;cursor:pointer}
@media(max-width:700px){.bonus-tracker-body{padding:0 16px 20px}.bonus-employee-table,.bonus-employee-table tbody,.bonus-employee-table tr,.bonus-employee-table td{display:block;width:100%;min-width:0}.bonus-employee-table thead{display:none}.bonus-employee-table tr{border:1px solid var(--line);border-radius:10px;margin:16px 0;padding:8px;background:#fff}.bonus-employee-table td{border:0;padding:10px}.bonus-employee-table td[data-label]::before{content:attr(data-label);display:block;text-transform:uppercase;letter-spacing:1px;font-size:10px;font-weight:700;color:var(--muted);margin-bottom:8px}.bonus-tracker-body input:not([type=checkbox]),.bonus-tracker-body select,.bonus-tracker-body textarea{max-width:none}.bonus-tracker-body .table-wrap{overflow:visible}}
/* Keep the exact-week navigation within the smallest owner phone viewport. */
@media(max-width:360px){.context-bar .week-controls{gap:2px}.context-bar .week-controls input{min-width:0;width:135px;max-width:135px}}

.exception-fingerprint,[aria-label="Owner comparison exception"] code{overflow-wrap:anywhere;word-break:break-word}
[aria-label="Owner comparison exception"] label{display:block;margin:12px 0}
[aria-label="Owner comparison exception"] select,[aria-label="Owner comparison exception"] textarea{max-width:100%;width:100%}

.owner-comparison-notice{border:2px solid #9b530d;background:#fff5e6;color:#4c2a09;padding:14px;margin:14px 0;break-inside:avoid;overflow-wrap:anywhere}.owner-comparison-notice h2{font-size:17px;margin:0 0 8px}.owner-comparison-notice p{font-size:12px;line-height:1.5;margin:6px 0}.owner-comparison-notice code{font-size:10px;word-break:break-all}@media print{.owner-comparison-notice{display:block!important;border:2px solid #333;background:#fff;color:#000;break-inside:avoid}.owner-comparison-notice p{font-size:9pt}}

/* Report provenance is a quiet source note; owner audit warnings retain their styling. */
.owner-comparison-basis{border:0;border-left:2px solid #d6d1c9;background:#faf9f6;color:#625b51;padding:8px 12px}.owner-comparison-basis h2{font-size:13px}.owner-comparison-basis p{font-size:11px;margin:4px 0}@media print{.owner-comparison-basis{border:0;border-left:1px solid #999;background:#fff;color:#444;padding:6px 10px}.owner-comparison-basis h2{font-size:10pt}.owner-comparison-basis p{font-size:8pt}}
/* Selected report trends support the current KPI figures. */
.eight-trends{margin-top:22px;padding-top:14px;border-top:1px solid #e7e2da;min-width:0}
.eight-trend-period{display:flex;justify-content:space-between;gap:12px;font-size:11px!important;line-height:1.5!important;color:#6a635b;margin:0 0 6px!important;font-weight:600;letter-spacing:.02em}
.eight-trend-period span{font-weight:400;letter-spacing:0}
.eight-trend{display:grid;grid-template-columns:minmax(130px,1fr) minmax(0,2.5fr);column-gap:24px;align-items:center;margin:0;padding:0;background:transparent;min-width:0;break-inside:avoid}
.eight-trend+.eight-trend{margin-top:14px;padding-top:12px;border-top:1px solid #e7e2da}
.eight-trend figcaption{grid-column:1;font-size:14px;font-weight:600;line-height:1.5;color:#514b43}
.eight-trend figcaption small{display:block;font-size:11px;font-weight:400;color:#6a635b;margin-top:4px}
.eight-trend svg{grid-column:2;grid-row:1 / span 2;display:block;width:100%;max-width:460px;height:auto;overflow:visible;justify-self:end}
.eight-trend svg text{font:11px sans-serif;fill:#625d56}.eight-trend-line{stroke:#75634f;stroke-width:1.7;fill:none}.eight-trend-grid{stroke:#e5e1da;stroke-width:.6;fill:none}.eight-trend-point{stroke:#75634f;stroke-width:1.5;fill:#75634f}.eight-trend-provisional{fill:white}.eight-trend-target{stroke:#4b4742;stroke-width:1.5;fill:none}
.eight-trend-summary,.eight-trend-unavailable{font-size:11px!important;line-height:1.6!important;color:#6a635b;margin:8px 0!important}.eight-trend-summary{grid-column:1;align-self:start}.eight-trend-unavailable{padding-top:12px;border-top:1px solid #e7e2da}
.eight-trend-values{grid-column:1 / -1;font-size:12px;color:#625d56}.eight-trend-values summary{padding:10px 0;cursor:pointer}.eight-trend-values summary:focus-visible{outline:2px solid #75634f;outline-offset:2px}.eight-trend-values table{width:100%;table-layout:fixed}.eight-trend-values th,.eight-trend-values td{padding:6px 4px;font-size:11px;overflow-wrap:anywhere;text-align:left}
@media(max-width:600px){.eight-trend{display:block}.eight-trend figcaption{font-size:13px;margin:8px 0 0}.eight-trend figcaption small{display:inline;margin-left:8px}.eight-trend svg{max-width:100%}.eight-trend-period{display:block}.eight-trend-period span{display:block;font-size:11px}.eight-trend-summary{margin:0!important}.eight-trends{margin-top:18px}}
@media print{
 #kpi-print-root .eight-trends{margin-top:9pt;padding-top:6pt;break-inside:avoid!important}
 #kpi-print-root .eight-trend{display:grid!important;grid-template-columns:1fr 2.5fr;gap:0 12pt;break-inside:avoid!important}
 #kpi-print-root .eight-trend svg{height:84pt!important;width:100%!important;max-height:none!important}
 #kpi-print-root .eight-trend svg text{font-size:14px}
 #kpi-print-root .eight-trend-date-secondary{display:none}
 #kpi-print-root .eight-trend figcaption{font-size:9pt;min-height:0}#kpi-print-root .eight-trend figcaption small{font-size:8pt}
 #kpi-print-root .eight-trend-period,#kpi-print-root .eight-trend-summary,#kpi-print-root .eight-trend-unavailable{font-size:8pt!important}
 #kpi-print-root .eight-trend-values{display:none}#kpi-print-root .meeting-section{break-inside:avoid!important}
 #kpi-print-root .meeting-snapshot .snapshot-delivery:has(.eight-trends),#kpi-print-root .meeting-snapshot .snapshot-delivery:has(.eight-trend-unavailable){display:block!important;break-inside:avoid!important}
 #kpi-print-root .meeting-metric,#kpi-print-root .meeting-growth{break-inside:avoid!important}
}

/* The cost key occupies the unused top of the existing SVG, above every point. */
.eight-trend-target-overflow{stroke:#4b4742;stroke-width:1.5;fill:none}
.eight-trend-overflow-values{grid-column:1 / -1;font-size:11px!important;line-height:1.5!important;color:#625d56;margin:4px 0!important;overflow-wrap:anywhere}
@media print{#kpi-print-root .eight-trend-overflow-values{font-size:8pt!important}}

/* Read-only weekly Google review summary in the shared manager snapshot. */
.snapshot-google-reviews{margin:0 0 10px;background:#fbf8f2}
.snapshot-google-review-header{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:8px}
.snapshot-google-review-period{font-size:9px;color:#74634d;text-align:right}
.snapshot-google-review-units{display:grid;grid-template-columns:repeat(auto-fit,minmax(225px,1fr));gap:8px}
.snapshot-google-review-location{min-width:0;border-top:1px solid #e1d7c8;padding-top:7px;break-inside:avoid}
.snapshot-google-review-location>header{display:flex;align-items:baseline;justify-content:space-between;gap:7px}
.snapshot-google-review-location h3{font-size:11px;line-height:1.3;margin:0;font-weight:700;color:#5c5040}
.snapshot-google-review-total{font-size:10px;font-weight:750;text-align:right;font-variant-numeric:tabular-nums}
.snapshot-google-review-stars{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;list-style:none;margin:8px 0 0;padding:0}
.snapshot-google-review-stars>div{min-width:0;text-align:center;background:#fff;border:1px solid #e7ddcf;border-radius:5px;padding:5px 3px}
.snapshot-google-review-stars dt{font-size:9px;line-height:1.25;color:#74634d}
.snapshot-google-review-stars dd{margin:2px 0 0;font-size:12px;font-weight:750;font-variant-numeric:tabular-nums}
.snapshot-google-review-note,.snapshot-google-review-footer{font-size:9px;line-height:1.4;margin:6px 0 0;color:#74634d}
.snapshot-google-review-footer{border-top:1px solid #e6ddcf;padding-top:6px}
.snapshot-google-review-empty{font-size:9px;line-height:1.4;color:#74634d}
@media(max-width:620px){.snapshot-google-review-units{grid-template-columns:1fr}.snapshot-google-review-stars{grid-template-columns:repeat(2,minmax(0,1fr))}.snapshot-google-review-location>header{align-items:flex-start}.snapshot-google-review-total{white-space:normal}}
@media print{
 .snapshot-google-reviews{margin:4pt 0;padding:6pt 8pt;break-inside:avoid;page-break-inside:avoid}
 .snapshot-google-review-units{grid-template-columns:repeat(2,minmax(0,1fr));gap:5pt}
 .snapshot-google-review-location{padding-top:4pt}
 .snapshot-google-review-stars{gap:3pt;margin-top:5pt}
 .snapshot-google-review-stars>div{padding:3pt 2pt}
 .snapshot-google-review-stars dt{font-size:7.5pt}
 .snapshot-google-review-stars dd{font-size:9pt}
 .snapshot-google-review-note,.snapshot-google-review-footer{font-size:7.5pt;margin-top:3pt;padding-top:3pt}
 .snapshot-google-review-period{font-size:7.5pt}
}
