:root{color-scheme:dark;--bg:#000;--surface:#111;--surface2:#191919;--line:#303030;--text:#fff;--muted:#a7a7a7;--accent:#a447f5}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}a{color:inherit;text-decoration:none}[hidden]{display:none!important}
.auth-gate{min-height:100vh;display:grid;place-content:center;text-align:center;color:var(--muted)}.app-shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:225px;background:#050505;border-right:1px solid #202020;display:flex;flex-direction:column;padding:31px 18px;z-index:5}.brand{font-weight:850;letter-spacing:.2em;font-size:1.1rem;padding:0 13px}.sidebar-label,.eyebrow{font-size:.68rem;font-weight:800;letter-spacing:.15em;color:var(--muted)}.sidebar-label{margin:45px 13px 15px}.sidebar nav{display:grid;gap:5px}.nav-item{width:100%;text-align:left;background:transparent;border:0;color:var(--muted);padding:14px;border-radius:12px}.nav-item:hover,.nav-item.active{background:#202020;color:#fff}.sidebar-account{margin-top:auto;display:grid;gap:5px;padding:14px;border:1px solid var(--line);border-radius:13px;overflow:hidden}.sidebar-account strong,.sidebar-account small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-account small{font-size:.72rem;color:var(--muted)}.workspace{margin-left:225px}.topbar{height:72px;border-bottom:1px solid #202020;display:flex;align-items:center;gap:15px;padding:0 clamp(20px,3vw,44px);font-weight:650}.topbar-right{margin-left:auto;display:flex;align-items:center;gap:18px}.live-badge{display:inline-flex;align-items:center;gap:8px;color:#d6d6d6;font-size:.76rem}.live-badge i{width:7px;height:7px;border-radius:50%;background:#41d684}.quiet-button{color:#fff;background:transparent;border:0;text-decoration:underline;text-underline-offset:4px;padding:8px}.mobile-nav{display:none;background:transparent;color:#fff;border:0;font-size:1.2rem}.page{display:none;max-width:1540px;margin:auto;padding:42px clamp(20px,3vw,44px) 80px}.page.active{display:block}.page-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:28px}.page-heading h1{font-size:clamp(2.2rem,4vw,3.5rem);letter-spacing:-.06em;font-weight:650;line-height:1;margin:8px 0}.page-heading p:not(.eyebrow){color:var(--muted);margin:0}.period-control{display:flex;background:#171717;border:1px solid var(--line);border-radius:999px;padding:4px;white-space:nowrap}.period-control button{border:0;background:transparent;color:var(--muted);padding:9px 14px;border-radius:999px}.period-control button.active{background:#fff;color:#000}.card{background:var(--surface);border:1px solid var(--line);border-radius:20px}.hero-grid{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(250px,.8fr);gap:16px}.hero-card{min-height:330px;border-radius:22px;background:#fff;color:#000;padding:28px;display:flex;flex-direction:column}.hero-card>span,.collection-card>span,.metric>span{font-size:.7rem;font-weight:800;letter-spacing:.12em}.hero-card>strong{font-size:clamp(3rem,6vw,5rem);font-weight:650;letter-spacing:-.07em;line-height:1.15;margin-top:12px}.hero-card>small{color:#555}.sales-chart{margin-top:auto;display:flex;align-items:end;gap:7px;height:130px;padding-top:18px}.sales-chart .bar{flex:1;min-width:8px;max-width:60px;background:#111;border-radius:6px 6px 0 0;position:relative}.sales-chart .bar span{position:absolute;top:100%;left:50%;transform:translateX(-50%);font-size:.6rem;color:#555;margin-top:5px;white-space:nowrap}.sales-chart .empty{color:#555;align-self:center}.collection-card{padding:28px;display:flex;flex-direction:column}.collection-card>strong{font-size:clamp(2.2rem,3vw,3.2rem);font-weight:620;letter-spacing:-.05em;margin-top:17px}.collection-card>p{color:var(--muted);font-size:.86rem;line-height:1.5}.collection-lines{margin-top:auto;border-top:1px solid var(--line)}.collection-lines>div{display:flex;justify-content:space-between;gap:12px;padding-top:13px;color:var(--muted);font-size:.83rem}.collection-lines b{color:#fff}.metric-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:16px 0}.metric{padding:20px;min-height:104px}.metric>span{color:var(--muted)}.metric>strong{display:block;font-size:1.8rem;font-weight:620;letter-spacing:-.04em;margin-top:11px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.detail-card{padding:24px}.card-heading{display:flex;justify-content:space-between;align-items:start;gap:18px}.card-heading h2{margin:0;font-size:1.3rem;font-weight:650}.card-heading span,.card-heading p{color:var(--muted);font-size:.8rem;margin:3px 0}.list{margin-top:14px}.list-row{display:flex;align-items:center;gap:12px;padding:13px 0;border-top:1px solid #292929}.list-row .name{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.list-row .detail{color:var(--muted);font-size:.78rem}.list-row strong{white-space:nowrap}.fine-print{color:var(--muted);font-size:.77rem;line-height:1.5}.notice{background:#241c08;border:1px solid #5b4510;color:#f6d48a;border-radius:12px;padding:12px 14px;font-size:.83rem}.empty-state{color:var(--muted);padding:22px 0}.primary-button,.secondary-button{border-radius:11px;padding:12px 17px;font-weight:680}.primary-button{background:#fff;color:#000;border:1px solid #fff}.secondary-button{background:#202020;color:#fff;border:1px solid #555}.primary-button:hover{background:#e8e8e8}.secondary-button:hover{background:#2c2c2c}
.toolbar{display:flex;gap:14px;margin-bottom:20px}.toolbar label,.settings-card>label,.editor-fields label{display:grid;gap:8px;color:var(--muted);font-size:.8rem}.toolbar input,.toolbar select,.settings-card input:not([type=checkbox]),.settings-card select,.editor-fields input,.editor-fields select,.editor-fields textarea{width:100%;background:#151515;border:1px solid #454545;border-radius:10px;color:#fff;padding:11px 12px;outline:none}.toolbar input:focus,.toolbar select:focus,.settings-card input:focus,.editor-fields input:focus,.editor-fields select:focus,.editor-fields textarea:focus{border-color:#fff}.toolbar label:first-child{min-width:270px}.section-summary{color:var(--muted);font-size:.85rem;margin-bottom:14px}.item-list{display:grid;gap:10px}.item-card{display:flex;align-items:center;gap:15px;min-height:77px;padding:13px 17px;background:#111;border:1px solid var(--line);border-radius:15px}.item-card.selected{border-color:#aaa}.item-card .thumb{width:48px;height:48px;border-radius:10px;background:#242424;display:grid;place-items:center;flex:none;overflow:hidden;font-size:.75rem;color:#aaa}.item-card .thumb img{width:100%;height:100%;object-fit:cover}.item-card .item-main{display:grid;gap:4px;min-width:0;flex:1}.item-card .item-main strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:630}.item-card .item-main small{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.item-card .price{white-space:nowrap}.item-card button{background:transparent;border:1px solid #555;color:#fff;padding:8px 11px;border-radius:9px}.item-card button:hover{border-color:#fff}.item-card .disabled-tag{color:#aaa;font-size:.72rem}.nights-grid{display:grid;grid-template-columns:minmax(210px,.7fr) minmax(0,1.6fr);gap:16px}.night-detail{padding:22px;min-height:360px}.night-actions{display:flex;gap:10px;margin:18px 0}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.settings-card{padding:24px;display:grid;gap:20px;align-content:start}.settings-card h2{margin:0;font-weight:650}.settings-card label{margin:0}.settings-card .toggle-row{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:22px;padding:13px 0;border-top:1px solid var(--line);color:#fff}.toggle-row span{display:grid;gap:6px}.toggle-row small{color:var(--muted);line-height:1.4}.toggle-row input{width:22px;height:22px;accent-color:#fff;flex:none}.settings-save{grid-column:1/-1;display:flex;align-items:center;gap:18px;color:var(--muted);font-size:.85rem}.editor-dialog{width:min(520px,calc(100% - 24px));max-height:min(90vh,900px);overflow:auto;background:#151515;color:#fff;border:1px solid #555;border-radius:20px;padding:24px;box-shadow:0 20px 80px #000}.editor-dialog::backdrop{background:#000b}.dialog-heading{position:relative}.dialog-heading h2{margin:7px 0 20px;font-size:1.7rem}.dialog-heading button{position:absolute;right:0;top:0;background:transparent;color:#fff;border:0;font-size:1.6rem}.editor-fields{display:grid;gap:16px}.editor-fields textarea{min-height:86px;resize:vertical}.editor-fields .checkbox-field{display:flex;align-items:center;gap:10px;color:#fff}.editor-fields .checkbox-field input{width:19px;height:19px}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}.form-error{color:#ffb4b4;font-size:.82rem}.toast{position:fixed;right:20px;bottom:20px;z-index:20;background:#fff;color:#000;padding:13px 18px;border-radius:11px;box-shadow:0 18px 50px #0008;font-size:.84rem}
@media(max-width:1000px){.hero-grid,.detail-grid,.nights-grid{grid-template-columns:1fr}.metric-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.sidebar{transform:translateX(-100%);transition:transform .2s;width:250px;box-shadow:20px 0 60px #000}.sidebar.open{transform:none}.workspace{margin-left:0}.mobile-nav{display:block}.topbar{padding:0 18px}.page{padding:28px 18px 70px}.page-heading{align-items:start;flex-direction:column}.hero-card{min-height:290px}.metric-grid,.settings-grid{grid-template-columns:1fr}.settings-save{grid-column:1}.live-badge{display:none}.toolbar{flex-direction:column}.toolbar label:first-child{min-width:0}.item-card{gap:10px;padding:11px}.item-card .thumb{width:40px;height:40px}.item-card .price{font-size:.85rem}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}

/* Mirror the AVNT iPad Analytics and Sell screens while keeping web controls. */
.sidebar nav{margin-top:54px}
.topbar-right{gap:0}
.page-heading h1{font-weight:760;letter-spacing:-.045em}
.performance-grid{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(280px,.72fr);gap:16px;align-items:stretch}
.trend-hero{display:flex;flex-direction:column;min-height:350px;padding:26px 28px 20px;background:#4937c8;border:1px solid #685ade;border-radius:26px;color:#fff;overflow:hidden}
.trend-head{display:flex;justify-content:space-between;align-items:start;gap:18px}
.trend-head>div:first-child{display:grid;gap:7px;min-width:0}
.trend-eyebrow,.trend-total>span{font-size:.69rem;letter-spacing:.13em;font-weight:850;color:#c9c3fc}
.trend-head strong{font-size:clamp(3rem,5vw,4.5rem);line-height:1;font-weight:790;letter-spacing:-.06em;font-variant-numeric:tabular-nums}
.trend-head small,.trend-total small{color:#d0cafa;font-size:.84rem;font-weight:560}
.trend-total{display:grid;gap:5px;justify-items:end;text-align:right;min-width:135px}
.trend-total b{font-size:1.45rem;letter-spacing:-.04em;font-variant-numeric:tabular-nums}
.trend-chart{margin-top:auto;min-height:175px;display:flex;flex-direction:column;justify-content:end}
.trend-chart svg{display:block;width:100%;height:154px;overflow:visible}
.trend-grid-line{fill:none;stroke:#fff;stroke-opacity:.11;stroke-width:1}
.trend-area{fill:#fff;fill-opacity:.12}
.trend-line{fill:none;stroke:#fff;stroke-width:3;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round}
.trend-point{fill:#fff}
.trend-labels{display:flex;justify-content:space-between;gap:3px;margin-top:3px;color:#d4cffd;font-size:.65rem;font-weight:670}
.trend-labels span{white-space:nowrap}
.mix-panel{padding:22px 23px 20px;display:flex;flex-direction:column;background:linear-gradient(135deg,#171717,#111)}
.mix-panel .card-heading h2{font-size:1.25rem}
.mix-icon{font-size:1.9rem;line-height:1;color:#a447f5}
.mix-donut{width:min(190px,80%);aspect-ratio:1;margin:20px auto 14px;border-radius:50%;display:grid;place-items:center;position:relative}
.mix-donut:before{content:"";position:absolute;width:67%;aspect-ratio:1;border-radius:50%;background:#111}
.mix-donut>div{position:relative;z-index:1;display:grid;gap:3px;text-align:center;max-width:66%}
.mix-donut span{font-size:.65rem;letter-spacing:.13em;font-weight:800;color:var(--muted)}
.mix-donut strong{font-size:clamp(1rem,1.7vw,1.5rem);font-weight:800;letter-spacing:-.045em;overflow:hidden;text-overflow:ellipsis}
.mix-legend{display:grid;gap:9px;margin-top:auto}
.mix-legend-row{display:grid;grid-template-columns:9px minmax(0,1fr) auto;align-items:center;gap:9px;color:var(--muted);font-size:.76rem}
.mix-legend-row i{width:9px;height:9px;border-radius:3px}
.mix-legend-row strong{font-weight:760;color:#fff;font-variant-numeric:tabular-nums}
.mix-foot{border-top:1px solid #2a2a2a;display:grid;gap:6px;margin-top:16px;padding-top:10px}
.mix-foot span{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:.72rem}
.mix-foot b{color:#fff;font-variant-numeric:tabular-nums}
.performance-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin:16px 0}
.metric-card{min-height:96px;display:flex;align-items:center;gap:11px;padding:15px;background:linear-gradient(145deg,#191919,#111)}
.metric-card>div{min-width:0;display:grid;gap:3px}
.metric-card>div>span{color:#a9a9a9;font-size:.65rem;font-weight:850;letter-spacing:.08em;white-space:nowrap}
.metric-card strong{font-size:1.55rem;line-height:1.15;letter-spacing:-.05em;font-weight:780;font-variant-numeric:tabular-nums;white-space:nowrap}
.metric-card small{color:#838383;font-size:.65rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.metric-icon,.setup-icon{flex:none;display:grid;place-items:center;border-radius:12px;font-weight:900}
.metric-icon{width:40px;height:40px;font-size:1.1rem}
.purple{background:#352044;color:#b963fd}.blue{background:#182c50;color:#4787fa}.green{background:#123725;color:#30d886}.pink{background:#442238;color:#ff67a9}.amber{background:#3b2e17;color:#ffb83b}
.seller-panel{padding:22px 24px;background:linear-gradient(145deg,#151515,#101010)}
.seller-panel .card-heading p{margin-top:5px}
.seller-count{align-self:start;border-radius:999px;background:#291b36;padding:8px 12px;color:#b768f4!important;font-size:.73rem!important;font-weight:750}
.seller-list{display:grid;gap:15px;margin-top:19px}
.seller-row{display:grid;grid-template-columns:31px minmax(0,1fr) 95px;align-items:center;gap:13px}
.seller-rank{width:30px;height:30px;border-radius:9px;background:#292929;display:grid;place-items:center;color:#b6b6b6;font-size:.75rem;font-weight:800}
.seller-row:first-child .seller-rank{background:#fff;color:#111}
.seller-main{display:grid;gap:7px;min-width:0}
.seller-name-row{display:flex;justify-content:space-between;gap:10px;min-width:0}
.seller-name-row strong{font-size:.85rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.seller-name-row small{color:var(--muted);white-space:nowrap;font-size:.72rem}
.seller-track{height:6px;border-radius:999px;background:#282828;overflow:hidden}
.seller-fill{display:block;height:100%;background:linear-gradient(90deg,#a447f5,#2968df);border-radius:inherit}
.seller-amount{text-align:right;font-variant-numeric:tabular-nums;font-size:.88rem}
.recent-panel{padding:22px 24px;margin-top:16px}

/* The POS Sell screen uses edge-to-edge imagery with the name and price on top. */
.menu-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:16px;align-items:start}
.menu-tile{min-width:0;overflow:hidden;border:1px solid #303030;border-radius:18px;background:#111}
.menu-tile-main{position:relative;display:block;width:100%;height:220px;padding:0;border:0;background:#080808;color:#fff;text-align:left;overflow:hidden}
.menu-photo{position:absolute;inset:0;display:grid;place-items:center;background:radial-gradient(circle at 50% 42%,#222,#090909 75%);color:#5c5c5c}
.menu-photo svg{width:72px;height:72px}
.menu-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.menu-shade{position:absolute;inset:0;background:linear-gradient(180deg,#0009,transparent 34%,#0002 55%,#000d)}
.menu-tile-copy{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:space-between;padding:14px;gap:12px}
.menu-tile-copy strong{font-size:.93rem;font-weight:650;line-height:1.25;max-width:90%;text-shadow:0 1px 8px #000}
.menu-tile-copy>span{align-self:flex-end;font-size:.92rem;font-weight:700;font-variant-numeric:tabular-nums;text-shadow:0 1px 8px #000}
.menu-unavailable{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:#ffffffe6;color:#111;padding:7px 11px;border-radius:999px;font-size:.68rem;font-weight:850;letter-spacing:.07em}
.menu-tile.unavailable .menu-photo{filter:grayscale(1);opacity:.55}
.menu-tile-main:hover .menu-photo img{transform:scale(1.035)}
.menu-photo img{transition:transform .18s}
.menu-tile-footer{display:flex;align-items:center;gap:8px;padding:9px 10px;min-height:46px}
.menu-tile-footer>span{flex:1;min-width:0;color:#9a9a9a;font-size:.7rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.menu-tile-footer button{border:1px solid #444;border-radius:8px;background:#1c1c1c;color:#fff;padding:6px 9px;font-size:.69rem}
.menu-tile-footer button:hover{border-color:#aaa}

/* Setup on iPad is a grid of square, self-contained control tiles. */
.setup-heading{align-items:center}
.setup-venue{color:#858585;font-size:.82rem}
.setup-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(245px,1fr));gap:16px}
.setup-tile{min-height:265px;aspect-ratio:1/1;display:flex;flex-direction:column;align-items:stretch;gap:10px;padding:19px;background:#1a1a1a;border-radius:22px}
.setup-icon{width:42px;height:42px;font-size:1.12rem;margin-bottom:2px}
.setup-tile h2{margin:0;font-size:1.07rem;font-weight:690;letter-spacing:-.025em}
.setup-tile>p{color:var(--muted);font-size:.84rem;line-height:1.45;margin:0}
.setup-tile>small{color:#898989;font-size:.69rem;line-height:1.35}
.setup-tile label{display:grid;gap:7px;color:#c5c5c5;font-size:.73rem;margin-top:auto}
.setup-tile input:not([type=checkbox]),.setup-tile select{width:100%;min-height:40px;background:#101010;border:1px solid #444;border-radius:10px;color:#fff;padding:9px 11px;outline:none}
.setup-tile input:focus,.setup-tile select:focus{border-color:#a447f5}
.setup-tile input[readonly]{color:#aaa}
.setup-tile .setup-switch{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:10px;border-top:1px solid #333;color:#fff;font-size:.77rem}
.setup-switch input{width:22px;height:22px;accent-color:#a447f5;flex:none}
.setup-tile-bottom{display:grid;gap:7px;margin-top:auto}
.setup-tile-bottom strong{font-size:.8rem;color:#d4d4d4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.setup-link{background:none;border:0;color:#c38aff;padding:0;text-align:left;font-size:.8rem;font-weight:720}
.settings-save{grid-column:1/-1;margin-top:3px}

@media(max-width:1200px){.performance-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.performance-grid{grid-template-columns:minmax(0,1.5fr) minmax(260px,.8fr)}}
@media(max-width:930px){.performance-grid{grid-template-columns:1fr}.performance-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.mix-panel{min-height:300px}.mix-donut{width:170px}}
@media(max-width:720px){.sidebar nav{margin-top:42px}.performance-metrics{grid-template-columns:1fr 1fr}.metric-card{min-height:88px}.menu-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.menu-tile-main{height:180px}.setup-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.setup-tile{aspect-ratio:auto;min-height:245px}}
@media(max-width:540px){.trend-hero{padding:20px;min-height:330px}.trend-head{gap:9px}.trend-total{min-width:102px}.trend-total b{font-size:1.15rem}.trend-total small{font-size:.65rem}.trend-head strong{font-size:2.7rem}.performance-metrics{grid-template-columns:1fr}.metric-card{min-height:78px}.seller-row{grid-template-columns:28px minmax(0,1fr) 70px;gap:8px}.seller-name-row small{display:none}.seller-amount{font-size:.75rem}.setup-grid{grid-template-columns:1fr}.setup-tile{min-height:220px}.menu-tile-main{height:158px}.menu-tile-copy{padding:10px}.menu-tile-footer{flex-wrap:wrap}.menu-tile-footer>span{flex-basis:100%}}

/* History follows the iPad receipt gallery. */
.history-heading{align-items:center}
.history-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end}
.card-search{display:flex;align-items:center;gap:9px;min-width:208px;height:40px;padding:0 12px;border:1px solid #333;border-radius:11px;background:#191919;color:#999}
.card-search:focus-within{border-color:#a447f5}
.card-search input{width:100%;border:0;outline:0;background:transparent;color:#fff;font-size:.82rem}
.card-search input::placeholder{color:#858585}
.history-receipts{padding:22px 24px;margin-top:18px;background:#111}
.receipt-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:15px;margin-top:18px}
.history-more{display:block;margin:18px auto 0}
.receipt-card{min-width:0;display:flex;flex-direction:column;border-radius:13px;overflow:hidden;background:#f4f1ea;color:#121212}
.receipt-paper{color:#111;background:#f4f1ea;padding:18px;font-size:.78rem;line-height:1.45}
.receipt-paper.compact{flex:1;min-height:335px;display:flex;flex-direction:column}
.receipt-header,.receipt-meta,.receipt-line{display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.receipt-header>div{display:grid;gap:2px;min-width:0}
.receipt-header strong{font-size:.86rem;letter-spacing:.13em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.receipt-header small{font-size:.66rem;color:#666;font-weight:750;letter-spacing:.04em}
.paid-badge{align-self:start;background:#d7ecdf;color:#116a42;font-size:.62rem;letter-spacing:.12em;padding:5px 7px;border-radius:999px}
.paid-badge.refunded{background:#f2d8d9;color:#9a303d}
.receipt-meta{color:#696969;font-size:.69rem;margin-top:11px}
.receipt-rule{border-top:1px dashed #b7b5af;margin:12px 0}
.receipt-items{display:grid;gap:6px;min-height:42px}
.receipt-line>span{min-width:0;overflow-wrap:anywhere}
.receipt-line strong{white-space:nowrap;font-weight:600;font-variant-numeric:tabular-nums}
.receipt-more{color:#777;font-size:.69rem}
.receipt-totals{display:grid;gap:6px;margin-top:auto;padding-top:14px}
.receipt-line.prominent{padding-top:7px;font-size:.88rem;font-weight:900}
.receipt-line.prominent strong{font-size:1.3rem;font-weight:900}
.receipt-details{display:grid;gap:2px;color:#6c6c6c;font-size:.69rem}
.receipt-details strong{color:#242424}
.receipt-signature{display:grid;gap:4px;margin-top:12px;border-top:1px dashed #b7b5af;padding-top:10px}
.receipt-signature small{font-size:.58rem;font-weight:900;letter-spacing:.11em}
.receipt-signature svg{width:100%;height:56px;border-bottom:1px solid #777}
.receipt-signature p{font-size:.59rem;color:#777;margin:3px 0 0;line-height:1.35}
.receipt-view{width:calc(100% - 28px);margin:0 14px 14px;border:0;border-radius:8px;padding:10px;background:#111;color:#fff;font-size:.75rem;font-weight:800}
.receipt-dialog{width:min(480px,calc(100% - 24px));max-height:90vh;overflow:auto;background:#151515;color:#fff;border:1px solid #555;border-radius:18px;padding:20px;box-shadow:0 20px 80px #000}
.receipt-dialog::backdrop{background:#000c}
.receipt-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.receipt-dialog-head h2{margin:0;font-size:1.25rem}
.receipt-dialog-head button{border:0;background:transparent;color:#fff;font-size:1.7rem}
.receipt-dialog .receipt-paper{border-radius:10px}

/* Floor shares the POS fixture geometry and live occupied-check data. */
.floor-actions{display:flex;align-items:end;gap:10px}
.add-floor-label{display:grid;gap:5px;color:#999;font-size:.73rem}
.add-floor-label select{min-height:43px;min-width:132px;background:#1b1b1b;color:#fff;border:1px solid #555;border-radius:11px;padding:9px 11px}
.floor-summary{display:flex;gap:10px;margin:-6px 0 13px;color:#aaa;font-size:.75rem}
.floor-summary span{background:#161616;border:1px solid #333;padding:6px 10px;border-radius:999px}
.floor-canvas{height:clamp(420px,57vw,720px);position:relative;overflow:hidden;border:1px solid #343434;border-radius:24px;background-color:#1b1b1b;background-image:linear-gradient(#ffffff0b 1px,transparent 1px),linear-gradient(90deg,#ffffff0b 1px,transparent 1px);background-size:36px 36px}
.floor-empty{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px;color:#aaa}
.floor-empty>span{font-size:2.6rem;color:#a447f5}.floor-empty strong{color:#fff;font-size:1.3rem}.floor-empty p{margin:0}
.floor-item{position:absolute;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;transform:translate(-50%,-50%) rotate(var(--floor-rotation));border:1px solid #737373;border-radius:16px;background:#333;color:#fff;overflow:hidden;padding:5px;box-shadow:0 8px 20px #0005;touch-action:none;cursor:pointer}
.floor-item.table{border-radius:999px;background:#333057}.floor-item.booth{background:#3c2a3e}.floor-item.bar{background:#292c43}.floor-item.stage{background:#39312d}.floor-item.wall{background:#4c4c4c;border-radius:5px}
.floor-item.occupied{border-color:#c46bff;background:#48276b}.floor-item.selected{outline:3px solid #fff;outline-offset:3px}
.floor-item strong{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:clamp(.65rem,1.1vw,.9rem)}
.floor-kind-icon{font-size:clamp(.75rem,1.5vw,1.3rem);line-height:1}.floor-item.wall .floor-kind-icon{display:none}
.floor-check-badge{font-size:.63rem;color:#f1d6ff;white-space:nowrap}
.floor-inspector{margin-top:14px;padding:16px 18px}.floor-inspector-head{display:flex;align-items:center;justify-content:space-between}.floor-inspector p{color:#aaa;margin:8px 0}.floor-inspector small{color:#999}
.floor-inspector-controls{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:13px}.floor-inspector-controls input{background:#101010;border:1px solid #555;border-radius:9px;color:#fff;min-height:41px;padding:9px 11px}.floor-inspector-controls button{padding:9px 12px}
.destructive{color:#ff9ea9;border-color:#8a4149}.floor-warning{display:block;margin-top:9px;color:#e4ad6c!important}

/* Owner-managed staff and audited timesheet corrections. */
.clock-grid{display:grid;grid-template-columns:minmax(270px,.8fr) minmax(0,1.2fr);gap:16px;align-items:start}
.clock-panel{padding:22px 24px;min-height:280px}.clock-panel .card-heading{align-items:center}
.clock-staff,.clock-shifts{display:grid;gap:8px;margin-top:17px}
.clock-hint{color:#aaa;font-size:.77rem;line-height:1.45}
.clock-staff-row,.clock-shift-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px;background:#1d1d1d;border:1px solid #303030;border-radius:12px}
.clock-staff-row>div,.clock-shift-row>div{display:grid;gap:3px;min-width:0}.clock-staff-row strong,.clock-shift-row strong{font-size:.86rem}.clock-staff-row small,.clock-shift-row small{color:#999;font-size:.72rem}.clock-staff-row button,.clock-shift-row button{padding:8px 12px;font-size:.75rem}
.clock-unlock{margin-top:18px}.clock-unlock p{color:#aaa;font-size:.82rem;line-height:1.5}.clock-unlock form{display:grid;gap:12px;max-width:370px}.clock-unlock label,.clock-report-controls label{display:grid;gap:7px;color:#bbb;font-size:.76rem}.clock-unlock input,.clock-report-controls select{background:#101010;border:1px solid #555;border-radius:10px;color:#fff;padding:10px 11px}.clock-unlock button{justify-self:start}
.clock-report-controls{display:flex;align-items:end;justify-content:space-between;gap:10px;margin-top:18px}.clock-report-controls select{min-width:130px}.clock-report-controls button{padding:10px 13px}
.clock-shift-row{display:grid;grid-template-columns:minmax(100px,1fr) minmax(140px,1.2fr) 58px auto;font-size:.75rem}.clock-shift-row>div:nth-child(2){color:#ddd}.clock-shift-row b{text-align:right;white-space:nowrap}
.permission-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;border:1px solid #444;border-radius:11px;padding:12px}.permission-grid legend{color:#bbb;font-size:.8rem;padding:0 5px}.permission-grid .checkbox-field{font-size:.78rem}
.clock-shift-person{color:#fff;margin:0;font-weight:700}.clock-audit-note{color:#aaa;font-size:.7rem}

@media(max-width:1100px){.clock-grid{grid-template-columns:1fr}.clock-shift-row{grid-template-columns:minmax(100px,1fr) minmax(140px,1.4fr) 58px auto}#history>.page-heading,#floor>.page-heading,#clock>.page-heading{align-items:flex-start;flex-direction:column}.history-controls{justify-content:flex-start;width:100%}}
@media(max-width:800px){.history-controls{justify-content:flex-start}.floor-canvas{height:520px}.floor-item strong{font-size:.7rem}}
@media(max-width:540px){.history-receipts,.clock-panel{padding:16px}.history-controls{width:100%}.card-search{width:100%}.receipt-grid{grid-template-columns:1fr}.floor-actions{width:100%}.floor-canvas{height:450px}.floor-kind-icon{font-size:.8rem}.floor-item strong{font-size:.58rem}.floor-item .floor-check-badge{font-size:.53rem}.clock-shift-row{grid-template-columns:1fr auto}.clock-shift-row>div:nth-child(2){grid-column:1}.clock-shift-row>b{grid-column:2;grid-row:2}.clock-shift-row>button{grid-column:2;grid-row:1}.permission-grid{grid-template-columns:1fr 1fr}}
@media print{body *{visibility:hidden!important}#receiptDetail,#receiptDetail *{visibility:visible!important}#receiptDetail{position:absolute;left:0;top:0;width:100%}#receiptDetail .receipt-paper{background:#fff!important;color:#000!important;print-color-adjust:exact}}
/* Shared finished-item inventory */
.inventory-nav-alert{margin-left:auto;min-width:22px;border-radius:12px;padding:2px 6px;background:#a7671c;color:#fff;font-size:11px;text-align:center}
.inventory-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:24px}
.inventory-metrics article{padding:22px;display:grid;gap:14px}
.inventory-metrics span{font-size:11px;letter-spacing:.12em;color:#92929c}
.inventory-metrics strong{font-size:32px;font-weight:650}
.low-stock{color:#ffbf63}.sold-out{color:#ff828d}
.inventory-list{display:grid;gap:10px}.inventory-row{display:grid;grid-template-columns:64px minmax(130px,1fr) 80px minmax(140px,180px) auto;gap:20px;align-items:center;padding:18px;border:1px solid #242426;border-radius:17px;background:#0a0a0a}
.inventory-art{position:relative;display:grid;place-items:center;width:64px;height:64px;color:#696975;overflow:hidden;border-radius:12px;background:#111}
.inventory-art img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#0a0a0a}
.inventory-name,.inventory-count,.inventory-state{display:grid;gap:6px}.inventory-name small{text-transform:capitalize}.inventory-name small,.inventory-count span,.inventory-state small{font-size:12px;color:#8e8e98}
.inventory-name strong{font-weight:600}.inventory-count{text-align:right}.inventory-count b{font-size:27px;font-weight:600;font-variant-numeric:tabular-nums}.inventory-state strong{font-size:13px;font-weight:500}.inventory-history{margin-top:28px;padding:24px}
.inventory-change{display:grid;grid-template-columns:1fr auto 60px;gap:18px;align-items:center;padding:15px 0;border-top:1px solid #252528}.inventory-change>div{display:grid;gap:5px}.inventory-change small,.inventory-change time{color:#8e8e98;font-size:12px}.inventory-change b{text-align:right;font-variant-numeric:tabular-nums}
.inventory-editor-counts{display:grid;gap:18px}.inventory-editor-counts label{display:grid;gap:8px}.inventory-row .secondary-button{white-space:nowrap}.menu-stock-warning{position:absolute;left:14px;bottom:53px;padding:5px 8px;border-radius:7px;background:#33210cec;color:#ffbf63;font-size:11px;font-weight:650}
@media(max-width:1100px){.inventory-row{grid-template-columns:52px minmax(100px,1fr) 65px auto;gap:14px}.inventory-art{width:52px;height:52px}.inventory-state{grid-column:2/4;grid-row:2}.inventory-row>button{grid-column:4;grid-row:1/3}}
@media(max-width:600px){.inventory-metrics{gap:8px}.inventory-metrics article{padding:14px}.inventory-metrics span{font-size:9px;letter-spacing:.04em}.inventory-row{padding:14px;grid-template-columns:44px 1fr 65px}.inventory-art{width:44px;height:44px}.inventory-row>button{grid-column:1/4;grid-row:3}.inventory-state{grid-column:2/4;grid-row:2}.inventory-change{grid-template-columns:1fr 44px;gap:8px}.inventory-change time{grid-column:1;grid-row:2}.inventory-change b{grid-column:2;grid-row:1}.inventory-history{padding:18px}}
#coffeeModifiersTile[hidden]{display:none}
.coffee-modifier-list{display:grid;gap:14px;max-height:min(56vh,520px);overflow:auto;margin:18px 0}
.coffee-modifier-group{display:grid;gap:7px}
.coffee-modifier-group h3{font-size:.77rem;text-transform:uppercase;letter-spacing:.1em;color:#a7a7a7;margin:5px 0}
.coffee-modifier-row{display:flex;align-items:center;gap:12px;width:100%;text-align:left;background:#171717;color:#fff;border:1px solid #333;border-radius:12px;padding:12px 14px;cursor:pointer}
.coffee-modifier-row:hover{border-color:#a447f5}
.coffee-modifier-row span:first-child{flex:1;display:grid;gap:3px}
.coffee-modifier-row small{font-size:.7rem;color:#999}
.coffee-modifier-row em{font-style:normal;color:#c5c5c5;font-size:.78rem}

/* Payment readiness belongs above analytics, where a new owner lands. */
.payout-alert{display:flex;align-items:center;gap:16px;margin-bottom:26px;padding:18px 20px;background:#231a0b;border:1px solid #8b651f;border-radius:17px;color:#ffe4aa}
.payout-alert-icon{width:30px;height:30px;flex:none;display:grid;place-items:center;border-radius:50%;background:#f0b750;color:#201503;font-weight:850}
.payout-alert-copy{min-width:0;flex:1}
.payout-alert-copy strong{display:block;font-size:.93rem;font-weight:720}
.payout-alert-copy p{margin:4px 0 0;color:#d8c7a5;font-size:.79rem;line-height:1.5}
.payout-alert>a{display:inline-flex;align-items:center;justify-content:center;flex:none;padding:10px 14px;border-radius:10px;background:#f0b750;color:#201503;font-size:.79rem;font-weight:750;white-space:nowrap}
.payout-alert>a:hover{background:#ffd17d}
.payout-alert>a:focus-visible{outline:3px solid #fff;outline-offset:3px}
@media(max-width:700px){.payout-alert{align-items:flex-start;flex-wrap:wrap;padding:16px}.payout-alert-copy{flex-basis:calc(100% - 46px)}.payout-alert>a{margin-left:46px}}
