.dashboard-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.4rem}
.dashboard-heading h2{font-size:1.7rem;letter-spacing:-.04em;margin:0 0 .35rem}.dashboard-heading p{margin:0;color:var(--muted)}
.dashboard-status{margin:0 0 1rem;color:var(--muted);font-size:.82rem}.dashboard-status:empty{display:none}.dashboard-status.error{padding:.8rem 1rem;border-left:3px solid var(--red);background:#fff5f5;color:var(--red)}
.revenue-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin:0 0 1.25rem;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:var(--surface)}
.revenue-kpi{min-width:0;padding:1.15rem 1.1rem}.revenue-kpi+.revenue-kpi{border-left:1px solid var(--line)}.revenue-kpi dt{font-size:.79rem;color:var(--ink-soft);font-weight:600}.revenue-kpi dd{margin:0}.revenue-value{font-size:clamp(1.2rem,1.85vw,2rem);font-weight:720;letter-spacing:-.04em;white-space:nowrap;margin-top:.65rem!important;font-variant-numeric:tabular-nums}.revenue-caption{font-size:.73rem;color:var(--muted);margin-top:.35rem!important}
.dashboard-chart-grid{display:grid;grid-template-columns:minmax(0,2.25fr) minmax(260px,1fr);gap:1.25rem;margin-bottom:1.25rem}.dashboard-panel{min-width:0;padding:1.3rem;background:var(--surface);border:1px solid var(--line);border-radius:8px}.dashboard-panel h2{margin:0;font-size:1.05rem;letter-spacing:-.02em}.dashboard-panel-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.1rem}.dashboard-panel p{color:var(--muted);font-size:.76rem;margin:.35rem 0}.dashboard-chart-total{display:block;font-size:1.65rem;font-weight:700;letter-spacing:-.035em;margin-top:.55rem;font-variant-numeric:tabular-nums}.dashboard-period{display:flex;align-items:center;gap:.5rem;color:var(--muted);font-size:.75rem}.dashboard-period select{width:auto;min-height:36px;padding:.4rem 34px .4rem .6rem}
.revenue-chart{min-height:180px}.revenue-chart svg{display:block;width:100%;height:auto}.revenue-gridline{stroke:var(--line);stroke-width:1}.revenue-axis{fill:#5d6a75;font-family:inherit;font-size:11px}.revenue-bar{fill:#32789d}.revenue-bar.today{fill:#123e58}.dashboard-empty{color:var(--muted);font-size:.8rem;padding:1rem 0}.dashboard-data{margin-top:.8rem;padding-top:.7rem;border-top:1px solid var(--line-soft);font-size:.78rem}.dashboard-data summary{cursor:pointer;color:var(--brand);font-weight:600;min-height:28px}.dashboard-data td:not(:first-child),.dashboard-data th:not(:first-child){text-align:right}.dashboard-data .table-wrap{max-height:290px}
.revenue-methods{list-style:none;padding:0;margin:1.5rem 0 0}.revenue-method+.revenue-method{margin-top:1.3rem}.dashboard-line{display:flex;align-items:center;justify-content:space-between;gap:.75rem;font-size:.8rem}.dashboard-line strong{font-variant-numeric:tabular-nums;white-space:nowrap}.dashboard-track{height:8px;background:#eef1f4;margin:.6rem 0 .3rem;overflow:hidden}.dashboard-track span{display:block;height:100%;background:#32789d}.revenue-method small{font-size:.7rem;color:var(--muted)}
.dashboard-lower-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1.25rem}.capacity-item{padding:1.25rem 0}.capacity-item+.capacity-item{border-top:1px solid var(--line-soft)}.capacity-item h3{font-size:.9rem;margin:0}.capacity-item .dashboard-line:last-child span{color:var(--muted);font-size:.75rem}.capacity-track{height:12px;margin:.85rem 0}.capacity-track span{background:#748998}
.dashboard-task{display:flex;align-items:center;gap:.8rem;width:100%;border:0;border-bottom:1px solid var(--line-soft);border-radius:0;background:transparent;color:var(--ink);text-align:left;padding:.8rem .2rem}.dashboard-task:last-child{border-bottom:0}.dashboard-task:hover{background:#f2f6f8;color:var(--ink)}.dashboard-task b{min-width:2.4rem;font-size:1.35rem;font-weight:650;font-variant-numeric:tabular-nums}.dashboard-task strong{display:block;font-size:.8rem}.dashboard-task small{display:block;margin-top:.2rem;font-size:.71rem;color:var(--muted)}.dashboard-arrow{margin-left:auto;color:var(--muted)}.task-alert{color:var(--red)}
.dashboard-source{margin-top:1.1rem;color:var(--muted);font-size:.74rem;line-height:1.6}.dashboard-source p{margin:.35rem 0}.dashboard-source summary{cursor:pointer;color:var(--ink-soft)}
@media(max-width:680px){.dashboard-heading{flex-wrap:wrap}.dashboard-heading>button{margin-left:auto;white-space:nowrap}.revenue-axis{font-size:24px}.revenue-axis-unit{display:none}.revenue-chart{min-height:0}}
@media(max-width:1200px){.revenue-kpi{padding:1rem .7rem}.revenue-value{font-size:1.3rem}.dashboard-chart-grid{grid-template-columns:minmax(0,1fr)}.revenue-methods{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 2rem;margin-top:1rem}.revenue-method+.revenue-method{margin-top:0}}
@media(max-width:680px){.dashboard-heading h2{font-size:1.5rem}.revenue-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.revenue-kpi{padding:1rem}.revenue-kpi:nth-child(odd){border-left:0}.revenue-kpi:nth-child(n+3){border-top:1px solid var(--line)}.revenue-kpi:last-child{grid-column:1/-1}.revenue-value{font-size:1.6rem}.dashboard-panel{padding:1rem}.dashboard-lower-grid{grid-template-columns:minmax(0,1fr)}.dashboard-panel-header{flex-wrap:wrap}.dashboard-period{margin-left:auto}.revenue-methods{grid-template-columns:1fr}.dashboard-chart-total{font-size:1.4rem}.capacity-item .dashboard-line{flex-wrap:wrap}.dashboard-source{font-size:.72rem}}
.app-shell[data-access-mode="GUEST"] .dashboard-lower-grid{grid-template-columns:1fr}
.revenue-readout{display:flex;align-items:center;justify-content:space-between;gap:.75rem;min-height:44px;margin-bottom:.5rem;padding:.5rem .75rem;border-left:3px solid transparent;background:var(--surface);font-size:.82rem;color:var(--muted)}
.revenue-readout.has-selection{border-left-color:#32789d;background:#edf5fa;color:var(--ink)}
.revenue-readout-value{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.revenue-readout.has-selection .revenue-readout-value{font-size:1rem;color:var(--brand)}
.revenue-day{cursor:pointer;outline:none}.revenue-day-hit{fill:transparent;pointer-events:all}.revenue-day.is-selected .revenue-day-hit{fill:#32789d;fill-opacity:.09}.revenue-day.is-selected .revenue-bar{fill:#123e58;stroke:#123e58;stroke-width:1}
.revenue-day:focus-visible .revenue-day-hit{stroke:var(--brand);stroke-width:2;vector-effect:non-scaling-stroke}.revenue-day .revenue-bar{pointer-events:none}
#guest-registration{margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--line)}
#guest-registration summary{cursor:pointer;font-weight:650}
#guest-registration form{margin-top:1rem}
#guest-register-status{overflow-wrap:anywhere}
#guest-accounts-list td:first-child{overflow-wrap:anywhere;min-width:180px}
#guest-accounts-list td:last-child{white-space:nowrap}
#guest-accounts-list button+button{margin-left:.5rem}
[data-view-panel="guest-accounts"] .pagination{display:flex;align-items:center;gap:1rem;justify-content:space-between}
[data-view-panel="guest-accounts"] .pagination button{width:auto;flex:none}
[data-view-panel="guest-accounts"] .pagination span{flex:1;text-align:center}
#guest-sales-panel>label{max-width:20rem}

.revenue-average{color:var(--ink-soft);font-weight:600}.revenue-average-context{display:block;margin-top:.2rem;color:var(--muted);font-size:.68rem;font-weight:400}
