.am-module{max-width:1200px;margin:0 auto;display:flex;flex-direction:column;gap:20px;color:hsl(var(--foreground))}
.am-module h1{font-size:24px;font-weight:700}.am-module h2{font-size:18px;font-weight:650;margin-bottom:12px}.am-module h3{font-weight:600;margin-top:18px}
.am-heading{display:flex;justify-content:space-between;align-items:center;gap:16px}.am-muted{color:hsl(var(--muted-foreground));font-size:13px;margin:5px 0 12px}
.am-card{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:12px;padding:20px}
.am-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
.am-field{display:flex;flex-direction:column;gap:6px;font-size:13px;min-width:0}.am-field>span{font-weight:550}
.am-field input,.am-field select,.am-field textarea{width:100%;padding:9px 10px;border:1px solid hsl(var(--border));border-radius:7px;background:hsl(var(--background));color:inherit;min-height:38px}.am-field textarea{min-height:75px}
.am-field input:focus,.am-field select:focus,.am-field textarea:focus{outline:2px solid hsl(var(--primary));outline-offset:1px}
.am-filters{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end}.am-filters .am-field{flex:1;min-width:140px}
.am-button{padding:8px 12px;border:1px solid hsl(var(--border));border-radius:7px;font-size:13px;white-space:nowrap;cursor:pointer;background:hsl(var(--background));color:inherit;display:inline-block}.am-button:hover{background:hsl(var(--muted))}.am-button:disabled{opacity:.5;cursor:wait}
.am-primary{background:hsl(var(--primary));color:hsl(var(--primary-foreground));border-color:hsl(var(--primary))}.am-primary:hover{background:hsl(var(--primary));opacity:.9}
.am-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.am-table-wrap{overflow-x:auto}.am-module table{border-collapse:collapse;width:100%;font-size:13px}.am-module th{text-align:left;color:hsl(var(--muted-foreground));font-weight:550}.am-module td,.am-module th{padding:12px;border-bottom:1px solid hsl(var(--border));vertical-align:top}.am-module td .am-actions{margin:0}
.am-error{padding:12px;border:1px solid #e58b8b;background:#fff0f0;color:#9b1c1c;border-radius:8px;margin-bottom:10px}.am-link{color:hsl(var(--primary));text-decoration:underline}
.am-pos{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}.am-pos .am-field{font-size:11px}.am-pos .am-field:first-of-type{grid-column:1/-1}.am-pos .am-field input,.am-pos .am-field select{font-size:12px;padding:5px;min-height:30px}.am-pos .am-error{grid-column:1/-1}
.am-pos-ledger-controls{display:grid;gap:8px;margin-top:8px;padding-top:8px;border-top:1px solid hsl(var(--border));font-size:12px;max-height:34dvh;overflow-y:auto;overscroll-behavior:contain}.am-pos-ledger-controls .am-field{font-size:11px}.am-pos-ledger-controls input,.am-pos-ledger-controls select{padding:6px 8px;min-height:32px}.am-choice-row{display:grid;grid-template-columns:1fr 1fr;gap:6px}.am-pos-instruction{font-size:11px;color:hsl(var(--muted-foreground));margin:0}.am-pos-screen>div:last-child{min-height:0;max-height:calc(100dvh - 6rem)}.am-pos-screen>div:last-child>div:first-child{max-height:42dvh;overflow-y:auto;overscroll-behavior:contain}.am-pos-screen>div:last-child>div:last-child{flex:0 0 auto;max-height:48%;overflow-y:auto;overscroll-behavior:contain}.am-collect{display:grid;gap:12px;max-width:680px}.am-outstanding{padding:10px 12px;border-radius:7px;background:hsl(var(--muted));font-weight:650}
.am-module [data-testid="waiter-ledger"]{max-width:100%}.am-module [data-testid="customer-ledger"]{margin-top:18px}.am-module [data-testid="customer-ledger"] table{min-width:650px}
.dining-module{max-width:1440px}.dining-module .am-heading{align-items:center}.dining-module h1{font-size:30px;letter-spacing:-.04em}.am-eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:.17em;color:hsl(var(--primary));font-weight:750;margin:0 0 7px}.dining-filter{max-width:240px}.dining-table-count{font:600 11px ui-monospace,monospace;color:hsl(var(--muted-foreground));letter-spacing:.06em;text-transform:uppercase}.dining-table-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:10px}.dining-table{display:flex;flex-direction:column;align-items:flex-start;gap:6px;text-align:left;padding:14px;border:1px solid hsl(var(--border));border-radius:10px;background:hsl(var(--background));color:inherit;min-height:105px}.dining-table:not(:disabled){cursor:pointer}.dining-table-number{font-size:20px;font-weight:700;letter-spacing:-.03em}.dining-table-state{font-size:10px;text-transform:uppercase;letter-spacing:.11em;font-weight:700}.dining-table.available{border-top:3px solid #78917b}.dining-table.available .dining-table-state{color:#57715a}.dining-table.occupied{border-top:3px solid #c28b4e;background:linear-gradient(145deg,hsl(var(--card)),#f7eddf)}.dining-table.occupied .dining-table-state{color:#9a6427}.dining-table.awaiting-payment{border-top:3px solid #bb6658;background:linear-gradient(145deg,hsl(var(--card)),#f8e9e4)}.dining-table.awaiting-payment .dining-table-state{color:#99493d}.dining-table>span:last-child{font-size:11px;color:hsl(var(--muted-foreground))}.dining-list .am-heading{align-items:flex-end;margin-bottom:14px}.dining-list table{min-width:980px}.dining-list td{font-size:12px}.dining-empty{padding:30px 18px;border:1px dashed hsl(var(--border));border-radius:9px;text-align:center;background:hsl(var(--background))}.dining-empty strong{font-size:15px}.dining-empty p{font-size:12px;color:hsl(var(--muted-foreground));margin:6px 0 0}.dining-detail{border-top:3px solid hsl(var(--primary))}.dining-detail .am-heading{align-items:flex-start}.dining-summary{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0;padding:12px;border-radius:8px;background:hsl(var(--muted));font-size:13px}.dining-summary>*{padding-right:13px;border-right:1px solid hsl(var(--border))}.dining-summary>*:last-child{border:0}.dining-detail table{min-width:540px}.dining-qty{width:70px;padding:6px;border:1px solid hsl(var(--border));border-radius:6px;background:hsl(var(--background));color:inherit}.dining-add-item{display:grid;grid-template-columns:auto minmax(200px,1fr) auto;align-items:end;gap:10px;margin:14px 0}.dining-settlement{padding:16px;margin-top:14px;border:1px solid hsl(var(--border));border-radius:9px;background:hsl(var(--background))}.dining-settlement h3{margin:0 0 12px;font-size:14px}.dining-settlement .am-grid{margin-bottom:12px}.dining-credit{border-left:3px solid #a87840}.dining-cancel{display:flex;gap:10px;align-items:flex-end;margin-top:14px}.dining-cancel .am-field{flex:1}.am-danger{border-color:#bd7064;color:#984a41}.dining-audit{margin-top:14px;padding-top:12px;border-top:1px solid hsl(var(--border));font-size:12px}.dining-audit summary{cursor:pointer;font-weight:650}.dining-audit ul{padding-left:20px;color:hsl(var(--muted-foreground))}.am-success{color:#456b4b;background:#eaf2e9;border:1px solid #c9ddc8;padding:10px 12px;border-radius:8px}.am-skeleton{padding:18px;border-radius:8px;background:linear-gradient(90deg,hsl(var(--muted)),hsl(var(--card)),hsl(var(--muted)));color:hsl(var(--muted-foreground));animation:am-pulse 1.5s ease-in-out infinite}@keyframes am-pulse{50%{opacity:.55}}
.dining-history-categories{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 14px}
@media(max-width:640px){.am-heading{align-items:flex-start;flex-direction:column}.am-card{padding:14px}.am-grid{grid-template-columns:1fr}}
@media(max-width:767px){.am-pos-screen{height:auto!important;min-height:calc(100dvh - 5rem);overflow:visible!important;flex-direction:column}.am-pos-screen>div:first-child{min-height:42dvh;overflow:visible}.am-pos-screen>div:last-child{width:100%;max-height:72dvh;min-height:390px;flex-shrink:0}.am-pos-screen>div:last-child>div:first-child{max-height:38dvh}.am-pos-screen>div:last-child>div:last-child{max-height:42%;overflow-y:auto}.am-pos-ledger-controls{max-height:32dvh;grid-template-columns:1fr}.am-pos-ledger-controls .am-choice-row{grid-column:1}.am-pos-ledger-controls .am-grid{grid-template-columns:1fr}}
@media(max-width:767px){.dining-module .am-heading{align-items:flex-start}.dining-list .am-heading{align-items:flex-start}.dining-add-item{grid-template-columns:1fr}.dining-cancel{align-items:stretch;flex-direction:column}.dining-summary{gap:7px}.dining-summary>*{padding-right:8px;font-size:11px}.dining-table-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.sales-analytics{max-width:1480px;gap:18px}.sales-analytics .am-heading{align-items:flex-end}.sales-analytics .sa-kicker{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:hsl(var(--primary));font-weight:750;margin:0 0 6px}.sa-title{font-size:clamp(26px,3vw,38px)!important;letter-spacing:-.045em;margin:0}.sa-subtitle{max-width:640px;color:hsl(var(--muted-foreground));font-size:14px;line-height:1.55;margin:7px 0 0}.sa-actions{display:flex;gap:8px;flex-wrap:wrap}.sa-filterbar{display:grid;grid-template-columns:repeat(6,minmax(120px,1fr));gap:12px;align-items:end}.sa-filterbar .am-field{min-width:0}.sa-filterbar .am-field span{font-size:11px;color:hsl(var(--muted-foreground));text-transform:uppercase;letter-spacing:.07em}.sa-filterbar input,.sa-filterbar select{min-height:40px}.sa-zone{grid-column:span 2}.sa-refresh{height:40px}.sa-alert{padding:12px 14px;border:1px solid #d9ad67;background:#fff5df;color:#704b16;border-radius:9px;font-size:13px;line-height:1.5}.sa-metric-band{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.sa-metric{padding:16px;border:1px solid hsl(var(--border));border-radius:11px;background:hsl(var(--card));min-width:0}.sa-metric small{display:block;color:hsl(var(--muted-foreground));font-size:11px;letter-spacing:.07em;text-transform:uppercase}.sa-metric strong{display:block;margin-top:8px;font-size:clamp(18px,2vw,26px);letter-spacing:-.035em;line-height:1.1;overflow-wrap:anywhere}.sa-metric em{display:block;font-style:normal;font-size:11px;color:hsl(var(--muted-foreground));margin-top:6px}.sa-metric.featured{background:#edf4f1;border-color:#cfddd5}.sa-metric.warning{background:#fbf2e7;border-color:#ead6bb}.sa-section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px}.sa-section-head h2{margin:0 0 4px}.sa-section-head p{margin:0;color:hsl(var(--muted-foreground));font-size:12px}.sa-chart-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(300px,.9fr);gap:14px}.sa-chart-card{min-width:0}.sa-chart-card svg{display:block;width:100%;height:auto;overflow:visible}.sa-chart-card text{font-family:inherit;fill:hsl(var(--foreground));font-size:11px}.sa-chart-card .sa-axis{stroke:hsl(var(--border));stroke-width:1}.sa-chart-card .sa-bar{fill:#477d68}.sa-chart-card .sa-bar-secondary{fill:#d8a35e}.sa-chart-card .sa-bar-label{font-variant-numeric:tabular-nums}.sa-table{min-width:760px}.sa-table th button{border:0;background:none;color:inherit;font:inherit;cursor:pointer;padding:0}.sa-table td.numeric,.sa-table th.numeric{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.sa-table td:first-child{font-weight:600}.sa-rank-list{display:grid;gap:12px}.sa-rank-row{display:grid;grid-template-columns:minmax(110px,1fr) minmax(80px,2fr) auto;gap:10px;align-items:center;font-size:12px}.sa-rank-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sa-rank-track{height:10px;background:hsl(var(--muted));border-radius:2px;overflow:hidden}.sa-rank-fill{height:100%;background:#477d68;transform-origin:left}.sa-rank-row.least .sa-rank-fill{background:#d8a35e}.sa-rank-value{font-variant-numeric:tabular-nums;text-align:right}.sa-report-table{max-height:520px;overflow:auto}.sa-report-table thead{position:sticky;top:0;background:hsl(var(--card));z-index:1}.sa-status{display:inline-flex;padding:4px 8px;border-radius:20px;background:hsl(var(--muted));font-size:11px;font-weight:650}.sa-current-balance{border-left:3px solid #b77938}.sa-empty{padding:28px 18px;border:1px dashed hsl(var(--border));border-radius:10px;text-align:center;color:hsl(var(--muted-foreground));background:hsl(var(--background))}.sa-skeleton{height:68px;background:linear-gradient(90deg,hsl(var(--muted)),hsl(var(--card)),hsl(var(--muted)));background-size:200% 100%;animation:sa-shimmer 1.4s ease-in-out infinite;border-radius:9px}@keyframes sa-shimmer{to{background-position:-200% 0}}.sa-print-only{display:none}
@media(max-width:1050px){.sa-filterbar{grid-template-columns:repeat(3,minmax(0,1fr))}.sa-chart-grid{grid-template-columns:1fr}.sa-metric-band{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.sales-analytics .am-heading{align-items:flex-start;flex-direction:column}.sa-filterbar{grid-template-columns:repeat(2,minmax(0,1fr))}.sa-zone{grid-column:span 2}.sa-metric-band{gap:7px}.sa-metric{padding:12px}.sa-section-head{flex-direction:column}.sa-rank-row{grid-template-columns:minmax(88px,1fr) minmax(48px,1.2fr) auto;gap:6px}}
@media print{body *{visibility:hidden!important}.sales-analytics,.sales-analytics *{visibility:visible!important}.sales-analytics{position:absolute;inset:0;width:100%;max-width:none;color:#111!important}.sales-analytics .sa-actions,.sales-analytics .sa-filterbar,.sales-analytics button{display:none!important}.sales-analytics .am-card,.sales-analytics .sa-metric{break-inside:avoid;box-shadow:none!important}.sa-report-table{max-height:none;overflow:visible}.sa-report-table thead{position:static}.sales-analytics .sa-print-only{display:block}}