/* A focused operations workspace, scoped to the Storekeeper role. */
.keeper-shell{--kp-ink:var(--ds-ink,#172b40);--kp-muted:var(--ds-muted,#64758a);--kp-line:var(--ds-border,#dfe6ee);--kp-paper:var(--ds-surface,#fff);--kp-soft:var(--ds-canvas,#f3f6fa);--kp-accent:var(--ds-accent,#d71920);color:var(--kp-ink);max-width:1500px;margin:auto;min-width:0}
html[data-theme=dark] .keeper-shell{--kp-ink:#e5edf2;--kp-muted:#a4b7c4;--kp-line:#304656;--kp-paper:#182e3d;--kp-soft:#132634;--kp-accent:#f08f88}
.keeper-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}.keeper-kicker{font-size:10px;letter-spacing:.17em;font-weight:800;color:var(--kp-accent)}.keeper-head h1{font-size:clamp(26px,3vw,40px);letter-spacing:-.045em;margin:7px 0}.keeper-head p,.keeper-muted{color:var(--kp-muted);margin:0;line-height:1.7}.keeper-head select{max-width:310px;width:100%;background:var(--kp-paper);color:var(--kp-ink);border:1px solid var(--kp-line);padding:12px;border-radius:10px}.keeper-tabs{display:flex;gap:6px;flex-wrap:wrap;border-bottom:1px solid var(--kp-line);padding-bottom:12px;margin-bottom:22px}.keeper-tabs button{border:0;background:transparent;color:var(--kp-muted);padding:11px 16px;border-radius:9px;font-weight:650}.keeper-tabs button[aria-current=page]{background:var(--kp-ink);color:var(--kp-paper)}.keeper-tabs button:focus-visible,.keeper-shell button:focus-visible{outline:3px solid var(--kp-accent);outline-offset:3px}
.keeper-hero{background:#173f35;color:#f4fbf6;border-radius:18px;padding:28px;display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center;margin-bottom:22px}.keeper-hero .keeper-kicker{color:#abd0ba}.keeper-hero h2{font-size:clamp(23px,2.5vw,32px);letter-spacing:-.035em;margin:8px 0}.keeper-hero p{color:#c2d9ce;max-width:620px;line-height:1.7;margin:0}.keeper-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:22px}.keeper-actions button{text-align:left;border:1px solid var(--kp-line);background:var(--kp-paper);padding:21px;border-radius:12px;color:var(--kp-ink);display:grid;grid-template-columns:40px 1fr auto;gap:12px;align-items:center}.keeper-action-icon{width:40px;height:40px;border-radius:10px;background:var(--kp-soft);color:var(--kp-accent);display:grid;place-items:center;font-size:22px}.keeper-actions strong,.keeper-actions small{display:block}.keeper-actions strong{font-size:15px}.keeper-actions small{color:var(--kp-muted);font-size:12px;margin-top:4px;line-height:1.5}
.keeper-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:22px}.keeper-metric{background:var(--kp-paper);border:1px solid var(--kp-line);border-radius:12px;padding:19px}.keeper-metric span{color:var(--kp-muted);font-size:12px}.keeper-metric b{display:block;font-size:30px;letter-spacing:-.04em;margin:9px 0}.keeper-metric small{font-size:11px;color:var(--kp-muted)}.keeper-columns{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(260px,1fr);gap:20px}.keeper-card{border:1px solid var(--kp-line);border-radius:14px;background:var(--kp-paper);padding:22px;margin-bottom:20px;min-width:0}.keeper-card h2{font-size:18px;margin:0 0 9px;letter-spacing:-.02em}.keeper-card header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px}.keeper-card p{color:var(--kp-muted);line-height:1.7}.keeper-card button,.keeper-toolbar button{border-radius:8px}.keeper-list-row{display:flex;gap:12px;align-items:center;justify-content:space-between;border-top:1px solid var(--kp-line);padding:14px 0}.keeper-list-row strong,.keeper-list-row small{display:block}.keeper-list-row small{color:var(--kp-muted);font-size:12px;margin-top:5px}.keeper-list-row b{white-space:nowrap;color:var(--kp-accent)}.keeper-table{overflow:auto}.keeper-table table{min-width:620px;width:100%;border-collapse:collapse}.keeper-table th{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--kp-muted);background:var(--kp-soft);white-space:nowrap}.keeper-table th,.keeper-table td{padding:14px 12px;border-bottom:1px solid var(--kp-line);text-align:left}.keeper-table td{font-size:13px}.keeper-table td strong{display:block}.keeper-table td small{display:block;color:var(--kp-muted);margin-top:5px}.keeper-table td .keeper-available{font-weight:800;color:var(--kp-accent)}.keeper-toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:16px}.keeper-toolbar input{flex:1;min-width:170px}.keeper-toolbar select{max-width:190px}.keeper-shell input,.keeper-shell select{background:var(--kp-paper);color:var(--kp-ink);border:1px solid var(--kp-line);border-radius:8px;padding:11px}.keeper-empty{text-align:center;padding:34px 15px;color:var(--kp-muted)}.keeper-empty strong{display:block;color:var(--kp-ink);margin-bottom:8px}.keeper-alert{border:1px solid #bb874b;background:var(--kp-paper);padding:16px;border-radius:10px;margin-bottom:18px}.keeper-footer{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:16px;flex-wrap:wrap;color:var(--kp-muted);font-size:12px}.keeper-footer div{display:flex;gap:8px}.keeper-count-input{width:100px}.keeper-receipt-context{padding:15px;background:var(--kp-soft);border-radius:9px;margin-bottom:16px}.keeper-shell .stock-sync-state{color:var(--kp-muted);font-size:11px}.keeper-store-label{display:block;font-size:11px;margin-bottom:6px;color:var(--kp-muted)}
@media(max-width:1000px){.keeper-columns{grid-template-columns:1fr}.keeper-actions{gap:9px}.keeper-actions button{padding:15px;grid-template-columns:32px 1fr}.keeper-actions button>span:last-child{display:none}}@media(max-width:650px){.keeper-head{align-items:stretch;flex-direction:column;gap:14px}.keeper-head select{max-width:none}.keeper-hero{padding:22px;grid-template-columns:1fr}.keeper-hero button{justify-self:start}.keeper-actions{grid-template-columns:1fr}.keeper-actions button{grid-template-columns:40px 1fr auto}.keeper-actions button>span:last-child{display:block}.keeper-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.keeper-metric{padding:15px}.keeper-card{padding:16px}.keeper-tabs{gap:3px}.keeper-tabs button{padding:9px 11px;font-size:12px}.keeper-table table{min-width:570px}.keeper-head h1{font-size:30px}}

/* Reuse the existing app presentation, without a separate role theme. */
.keeper-head{align-items:flex-start;margin-bottom:24px}.keeper-head h1{font-size:clamp(24px,2.4vw,32px);font-weight:650;letter-spacing:-.04em;line-height:1.2}.keeper-kicker{color:var(--kp-muted);font-weight:700;letter-spacing:.13em}.keeper-head p{font-size:12px}.keeper-tabs button{font:inherit;font-size:12px;font-weight:600;border:1px solid transparent;padding:9px 13px}.keeper-tabs button[aria-current=page]{background:var(--kp-soft);color:var(--kp-ink);border-color:var(--kp-line);box-shadow:inset 0 -2px var(--kp-accent)}.keeper-hero{background:var(--kp-paper);color:var(--kp-ink);border:1px solid var(--kp-line);border-left:3px solid var(--kp-accent);border-radius:14px;padding:22px;display:flex;justify-content:space-between}.keeper-hero .keeper-kicker{color:var(--kp-muted)}.keeper-hero h2{font-size:21px;font-weight:650;letter-spacing:-.03em}.keeper-hero p{color:var(--kp-muted);font-size:12px}.keeper-hero button{flex-shrink:0}.keeper-actions button{border-radius:14px;padding:18px;font:inherit}.keeper-action-icon{width:36px;height:36px;color:var(--kp-muted)}.keeper-actions strong{font-size:13px;font-weight:650}.keeper-actions small{font-size:11px}.keeper-metric{border-radius:14px;padding:20px}.keeper-metric b{font-size:29px;font-weight:700}.keeper-card h2{font-size:16px;font-weight:650}.keeper-card p{font-size:12px}.keeper-list-row strong{font-size:12px;font-weight:600}.keeper-list-row small{font-size:11px}.keeper-list-row b{font-size:12px;color:var(--kp-ink);font-weight:650}.keeper-table td{font-size:12px}.keeper-shell :is(button,input,select):focus-visible{outline:3px solid var(--ds-focus,#58738d);outline-offset:3px}.keeper-shell input,.keeper-shell select{font:inherit;font-size:12px}.keeper-shell .secondary,.keeper-shell .primary{border-radius:9px}.keeper-table td .keeper-available{color:var(--kp-ink)}
@media(max-width:650px){.keeper-hero{flex-direction:column;align-items:flex-start;padding:18px}.keeper-head h1{font-size:25px}}

/* Simplified work areas use the shared app tokens and controls. */
.keeper-context{display:grid;gap:5px;text-align:right;font-size:12px;flex-shrink:0}.keeper-context strong{font-weight:650}.keeper-context>span{color:var(--kp-muted)}.keeper-updatebar{margin:0 0 18px;min-height:40px}.keeper-updatebar>*{min-width:0}.keeper-updatebar .stock-sync-state{margin-left:auto}.keeper-workbar{display:flex;align-items:center;justify-content:space-between;gap:20px;background:var(--kp-paper);border:1px solid var(--kp-line);border-radius:14px;border-left:3px solid var(--kp-accent);padding:22px;margin-bottom:20px}.keeper-workbar h2{font-size:21px;font-weight:650;letter-spacing:-.025em;margin:7px 0}.keeper-workbar p{font-size:12px;color:var(--kp-muted);line-height:1.7;margin:0}.keeper-work-actions{display:flex;gap:9px;flex-wrap:wrap;flex-shrink:0}.keeper-metric-link{text-align:left;color:var(--kp-ink);font:inherit;cursor:pointer;transition:border-color .15s}.keeper-metric-link:hover{border-color:var(--ds-focus,#58738d)}.keeper-metric-link span{display:block}.keeper-metric-link small span{display:inline}.keeper-request-switch{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.keeper-request-switch button[aria-pressed=true]{box-shadow:inset 0 -2px var(--kp-accent)!important;color:var(--kp-ink)!important;border:1px solid var(--kp-line)!important}.keeper-site-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:12px;margin-top:16px}.keeper-site-card{display:flex;flex-direction:column;gap:10px;align-items:flex-start;text-align:left;padding:18px;border:1px solid var(--kp-line);border-radius:12px;background:var(--kp-paper);color:var(--kp-ink);font:inherit;min-width:0}.keeper-site-card strong{font-size:13px;line-height:1.6;font-weight:650;overflow-wrap:anywhere}.keeper-site-card small,.keeper-site-card>span:last-child{font-size:11px;color:var(--kp-muted)}.keeper-site-card>span:last-child{display:flex;justify-content:space-between;width:100%;gap:10px}.keeper-site-status{font-size:9px;letter-spacing:.06em;padding:4px 7px;border-radius:5px;background:var(--kp-soft);color:var(--kp-muted)}.keeper-site-card[aria-pressed=true]{border-color:var(--kp-accent)}.keeper-completed summary{cursor:pointer;font-size:14px;font-weight:650;line-height:1.7}.keeper-completed summary>span{display:block;font-weight:400;font-size:11px;color:var(--kp-muted);margin-top:5px}.keeper-site-details{scroll-margin-top:90px}.keeper-site-details h2{overflow-wrap:anywhere}.keeper-site-details .keeper-toolbar select{max-width:310px;width:100%}.keeper-site-details .tablewrap{max-width:100%;overflow:auto}
@media(max-width:750px){.keeper-workbar{align-items:flex-start;flex-direction:column;padding:18px}.keeper-context{text-align:left}.keeper-updatebar .stock-sync-state{margin-left:0}.keeper-work-actions{flex-shrink:1}.keeper-card header{align-items:flex-start;flex-wrap:wrap}.keeper-metric small{line-height:1.6;display:block}.keeper-site-details .keeper-toolbar select{max-width:100%}}

.keeper-supply-list{padding:12px 14px;background:var(--kp-soft);border:1px solid var(--kp-line);border-radius:9px;margin-bottom:16px;font-size:12px}.keeper-supply-list summary{cursor:pointer;font-weight:600}.keeper-supply-list li{line-height:1.8;overflow-wrap:anywhere}.keeper-supply-list p{margin:10px 0}

.keeper-served-sites{display:grid;gap:10px;margin:12px 0 0;padding-left:20px}.keeper-served-sites li{min-width:0;overflow-wrap:anywhere;line-height:1.6}.keeper-served-sites strong{font-weight:600}
