/* Shared venue workspace: floor, service history and shift summary. */
.cabinet { --cab-radius:16px; padding:0 8px; }
.cab-top {display:flex;align-items:center;gap:24px;padding:6px 0 22px;border-bottom:1px solid var(--line);}
.cab-brand {display:flex;align-items:center;gap:7px;background:none;border:0;color:var(--txt);font-family:inherit;font-size:20px;font-weight:700;cursor:pointer;padding:0;}
.cab-brand>span:last-child {font-weight:400;color:var(--muted);}
.cab-logo {display:grid;place-items:center;width:34px;height:34px;margin-right:5px;border-radius:10px;background:var(--txt);color:var(--card);font-size:20px;font-weight:800;}
.cab-caption {color:var(--muted);font-size:13px;flex:1;}
.cab-top>.btn {margin-left:auto;}
.cab-nav {display:flex;gap:24px;overflow-x:auto;border-bottom:1px solid var(--line);margin-bottom:34px;}
.cab-nav button {flex-shrink:0;padding:18px 0 15px;background:none;border:0;border-bottom:3px solid transparent;color:var(--muted);font-family:inherit;font-size:14px;font-weight:600;cursor:pointer;}
.cab-nav button[aria-current] {border-bottom-color:var(--accent);color:var(--txt);}
.cab-main {line-height:1.5;}
.cab-main h1 {font-size:32px;letter-spacing:-1px;font-weight:750;margin:0 0 9px;}
.cab-main h2 {font-size:18px;margin:0 0 7px;letter-spacing:-.3px;}
.cab-main>h2 {margin:30px 0 14px;}
.cab-main>p {font-size:14px;color:var(--muted);max-width:850px;}
.cab-heading {display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:28px;}
.cab-heading p {margin:0;color:var(--muted);font-size:14px;}
.cab-eyebrow {display:block;font-size:10px;font-weight:750;letter-spacing:1.4px;color:var(--muted);margin-bottom:9px;}
.cab-count {font-size:13px;white-space:nowrap;color:var(--muted);border:1px solid var(--line);border-radius:30px;padding:9px 14px;background:var(--card);}
.cab-count b {color:var(--txt);}.cab-count span {margin:0 9px;}
.cab-columns {display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:22px;align-items:start;}
.cab-panel {background:var(--card);border:1px solid var(--line);border-radius:var(--cab-radius);padding:24px;margin-bottom:20px;}
.cab-section-head {display:flex;align-items:start;justify-content:space-between;gap:16px;margin-bottom:18px;}
.cab-section-head p {font-size:13px;line-height:1.55;margin:0;color:var(--muted);max-width:440px;}
.cab-tag {font-size:11px;padding:4px 9px;border-radius:7px;background:var(--track);white-space:nowrap;color:var(--muted);}
.cab-table-row {display:grid;grid-template-columns:32px minmax(0,1fr) minmax(0,1fr);gap:14px;align-items:center;padding:16px 0;border-top:1px solid var(--line);}
.cab-number {font-size:13px;font-weight:650;color:var(--muted);font-variant-numeric:tabular-nums;padding-top:20px;}
.cab-main input {font-family:inherit;font-size:14px;line-height:1.4;font-weight:400;min-height:44px;background:var(--bg);border-color:transparent;border-radius:9px;transition:border-color .15s,background .15s;}
.cab-main input:focus {outline:2px solid var(--accent);outline-offset:2px;background:var(--card);}
.cab-main input:disabled {opacity:.6;}
.cab-main label {font-size:11px;margin-bottom:6px;font-weight:500;}
.cab-footnote {font-size:11px;line-height:1.6;color:var(--muted);margin:10px 0 0;}
.cab-staff-row {display:flex;align-items:center;gap:12px;padding:16px 0;border-top:1px solid var(--line);}
.cab-avatar {width:36px;height:36px;flex-shrink:0;display:grid;place-items:center;border-radius:50%;background:var(--track);font-size:14px;font-weight:650;}
.cab-person {min-width:90px;flex:1;}.cab-person b {font-size:13px;display:block;}.cab-person span {font-size:10px;color:var(--muted);}
.cab-staff-input {width:48%;}.cab-save {display:flex;gap:20px;align-items:center;justify-content:space-between;margin:4px 0 24px;}
.cab-save p {margin:0;font-size:12px;color:var(--muted);}.cab-save button {flex-shrink:0;}
.cab-history {padding:22px;}.cab-history h2 {font-size:17px;}.cab-history-row {display:flex;justify-content:space-between;align-items:center;gap:10px;width:100%;padding:17px 0;border:0;border-top:1px solid var(--line);background:none;text-align:left;color:var(--txt);cursor:pointer;}
.cab-history-row b {display:block;font-size:13px;font-weight:650;}.cab-history-row small {display:block;font-size:11px;line-height:1.5;margin-top:5px;color:var(--muted);}.cab-history-row:hover b {color:var(--accent-ink);}
.cab-note {font-size:11px;color:var(--muted);margin-top:14px;padding-top:15px;border-top:1px solid var(--line);}.cab-note summary {cursor:pointer;}.cab-note p {line-height:1.7;}
.cab-empty {padding:24px 0;font-size:13px;color:var(--muted);}
.cab-metrics {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0;}.cab-metric {background:var(--card);border:1px solid var(--line);border-radius:14px;padding:20px;}.cab-metric span {display:block;font-size:12px;color:var(--muted);}.cab-metric b {display:block;font-size:30px;font-weight:700;letter-spacing:-1px;margin-top:12px;}
.cab-main>.field {max-width:230px;margin-top:24px;}.cab-event {padding:24px 24px 20px 28px;border-left:3px solid var(--accent);background:var(--card);border-radius:0 14px 14px 0;margin:18px 0;}.cab-event>b {font-size:16px;}.cab-event p {font-size:13px;margin:9px 0;color:var(--muted);}
.cab-main>details {background:var(--card);padding:15px 18px;border:1px solid var(--line);border-radius:10px;margin-bottom:8px;font-size:13px;}.cab-main>details summary {cursor:pointer;}
.cabinet button:focus-visible {outline:2px solid var(--accent);outline-offset:3px;}.sr-only {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;}
@media(min-width:1040px){.wrap:has(.cabinet){max-width:1160px;}}
@media(max-width:900px){.cab-columns{grid-template-columns:1fr;}.cab-history{margin-top:0;}.cabinet{padding:0;}}
@media(max-width:560px){.cab-top{gap:10px;}.cab-caption{display:none;}.cab-top>.btn{font-size:11px;padding:0 10px;}.cab-nav{gap:20px;margin-bottom:25px;}.cab-nav button{font-size:12px;}.cab-heading{display:block;}.cab-main h1{font-size:27px;}.cab-count{display:inline-block;margin-top:16px;}.cab-panel{padding:18px;}.cab-tag{display:none;}.cab-table-row{grid-template-columns:24px minmax(0,1fr);gap:9px 12px;}.cab-table-row>div:last-child{grid-column:2;}.cab-number{align-self:start;padding-top:29px;}.cab-staff-row{flex-wrap:wrap;}.cab-staff-input{width:100%;margin-left:48px;}.cab-save{flex-direction:column-reverse;align-items:stretch;gap:12px;}.cab-save p{text-align:center;}.cab-metrics{grid-template-columns:repeat(2,minmax(0,1fr));}.cab-metric{padding:15px;}.cab-metric b{font-size:26px;}}
