/* Hourly analytics — read-only, scoped styles and stable interaction surfaces. */
.sales-analysis-card{min-width:0;border:1px solid #c8b46630;border-radius:22px;background:linear-gradient(145deg,#30303f,#2a2a39);overflow:clip;align-self:start}.sa-content{padding:24px 24px 0;color:#f4f3fa;min-width:0}.sa-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.sa-heading h3{font-size:27px;font-weight:600;margin:5px 0 0;line-height:1.4}.sa-overline{font-size:10px;color:#b7b3a5}.sa-live{font-size:10px;display:flex;align-items:center;gap:6px;color:#b9b7c9;white-space:nowrap}.sa-live i{width:6px;height:6px;border-radius:50%;background:#70e000}.sa-tabs{display:flex;background:#23233180;border:1px solid #ffffff0b;border-radius:11px;padding:4px;gap:3px}.sa-tabs button{flex:1;border:0;border-radius:8px;background:transparent;color:#aeacbf;padding:10px 7px;font:inherit;font-size:11px;cursor:pointer;white-space:nowrap}.sa-tabs button[aria-selected=true]{background:#444052;color:#ffdc69;box-shadow:0 2px 7px #1112}.sa-tabs button:hover{color:#fff}.sa-content button:focus-visible,.sa-content select:focus-visible,.sa-svg [role=button]:focus-visible,.sa-records button:focus-visible{outline:2px solid #ffcf35;outline-offset:3px}.sa-summary{display:grid;grid-template-columns:1.12fr 1fr 1fr;gap:16px;padding:22px 0 18px}.sa-summary>div{display:flex;flex-direction:column;gap:7px;min-width:0}.sa-summary>div+div{border-right:1px solid #ffffff0b;padding-right:16px}.sa-summary>div>span:first-child{font-size:10px;color:#b3b0c2}.sa-summary strong{font-size:20px;font-weight:600;line-height:1.35}.sa-summary .sa-main-total>strong{font-size:30px}.sa-content strong small,.sa-content b small{font-size:10px;color:#b9b6c8;font-weight:400}.sa-summary small{font-size:9px;color:#aaa6b9}.sa-summary .time-readout{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px}.sa-summary .time-readout bdi{font-size:inherit}.sa-range{display:flex;flex-wrap:wrap;align-items:center;gap:5px;font-size:10px;color:#bcb9cc}.sa-range bdi{white-space:nowrap}.sa-range-dash{opacity:.5}.sa-no-data{font-size:12px!important;color:#aaa6b9}.sa-leader{display:flex;align-items:center;gap:9px;flex-wrap:wrap;background:#ffffff03;border-block:1px solid #ffffff08;padding:10px 0;font-size:11px}.sa-leader>span,.sa-leader small{font-size:10px;color:#aaa6b9}.sa-leader strong{display:flex;align-items:center;gap:6px;font-size:12px}.sa-leader i,.sa-legend i,.sa-branch-name i{width:7px;height:7px;flex-shrink:0;border-radius:50%;background:var(--branch-color)}.sa-leader b{font-weight:500}.sa-tools{display:flex;justify-content:space-between;align-items:center;margin:15px 0 9px;font-size:10px;color:#aaa6b9}.sa-tools button,.sa-back{border:0;background:none;color:#dac77e;font:inherit;cursor:pointer}.sa-legend{display:flex;gap:6px;flex-wrap:wrap}.sa-legend button{display:flex;align-items:center;gap:7px;background:#ffffff05;border:1px solid #ffffff10;border-radius:7px;color:#e6e4ef;font:inherit;font-size:11px;padding:7px 9px;cursor:pointer}.sa-legend button[aria-pressed=false]{color:#868294;border-style:dashed}.sa-legend button[aria-pressed=false] i{background:transparent;border:1px solid var(--branch-color)}.sa-legend button>span{color:#aaa6b9;font-size:10px}.sa-time-toolbar{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:10px;color:#bbb7c8;margin:18px 0 8px}.sa-time-toolbar small{font-size:9px;color:#8f8b9e}.sa-periods{display:flex;gap:3px;direction:ltr}.sa-periods button{font:inherit;font-size:10px;border:1px solid transparent;border-radius:6px;color:#aba7bb;background:#ffffff04;padding:6px 8px;cursor:pointer}.sa-periods button[aria-pressed=true]{border-color:#cdb57255;background:#cdb57212;color:#f2d789}.sa-chart-scroll{overflow-x:auto;overflow-y:hidden;direction:ltr;scrollbar-width:thin;scrollbar-color:#77708f55 transparent;max-width:100%;padding-bottom:3px}.sa-svg{display:block;width:auto;height:360px;max-height:none;overflow:visible;font-family:inherit}.sa-grid{stroke:#ffffff09;stroke-width:1}.sa-axis,.sa-axis-unit{font-size:10px;fill:#9390a4}.sa-hour-axis{font-size:11px;fill:#d4d0e1;font-variant-numeric:tabular-nums}.sa-hour-state{font-size:9px;fill:#9c97ad}.sa-band{fill:transparent;cursor:pointer}.sa-band.sa-selected{fill:#ffffff04}.sa-band.sa-current{fill:#8bb9ff08;stroke:#8bb9ff55;stroke-dasharray:3 4}.sa-band.sa-future{fill:#ffffff02;stroke:#ffffff08;stroke-dasharray:2 5}.sa-svg [role=button]{cursor:pointer}.sa-svg [role=button]:hover{filter:brightness(1.2);stroke:#fff;stroke-width:1.5}.sa-hour-picker{display:flex;gap:10px;align-items:center;justify-content:space-between;margin:8px 0 12px;font-size:10px;color:#aaa6b9}.sa-hour-picker label{display:flex;align-items:center;gap:8px;flex-shrink:0}.sa-hour-picker select{font:inherit;max-width:260px;background:#343343;color:#ddd9e9;border:1px solid #ffffff18;border-radius:7px;padding:7px 8px}.sa-hour-picker>span{font-size:9px}.sa-inspector{border:1px solid #ffffff0f;background:#21212d40;border-radius:12px;padding:14px}.sa-inspector>header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.sa-inspector header>div{display:flex;flex-direction:column;gap:6px}.sa-inspector header .sa-range{color:#e3dfef;font-size:11px}.sa-hour-total{align-items:flex-end}.sa-hour-total>small{font-size:9px;color:#9f9aae}.sa-hour-total>strong{font-size:16px;font-weight:600}.sa-hour-branches{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:7px}.sa-hour-branches button{display:flex;align-items:flex-start;flex-direction:column;gap:5px;background:#ffffff03;border:1px solid #ffffff08;border-radius:8px;text-align:right;padding:10px;font:inherit;color:#e1deec;cursor:pointer}.sa-hour-branches button:hover{background:#ffffff07;border-color:#ffffff22}.sa-hour-branches button:disabled{cursor:default;opacity:.6}.sa-branch-name{display:flex;gap:6px;align-items:center;font-size:11px}.sa-hour-branches strong{font-size:15px;font-weight:500}.sa-hour-branches small{font-size:9px;color:#a6a0b7}.sa-scope-note,.sa-rule{font-size:9px;line-height:1.9;color:#9691a6;margin:10px 0}.sa-rule{min-height:18px}.sa-footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #ffffff0c;margin:14px -24px 0;padding:13px 24px;font-size:9px;color:#9791a6}.sa-footer button{border:0;border-radius:7px;padding:7px 0;background:transparent;color:#d6c278;font:inherit;font-size:11px;display:flex;gap:12px;cursor:pointer}.sa-empty{padding:44px 16px;text-align:center;color:#b4aec4;font-size:12px}.sales-analysis-card .sa-heading,.sales-analysis-card .sa-summary{transition:none}
dialog.sales-modal{width:min(1400px,calc(100vw - 32px));max-width:1400px}.sales-modal .sa-expanded-scroll{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;padding-bottom:24px}.sales-modal #modalContent{height:90dvh}.sales-modal .sa-content{padding-bottom:12px}.sales-modal .sa-svg{max-height:none}.sa-expanded-table{padding:12px 24px}.sa-expanded-table h3{font-size:19px;margin:5px 0}.sa-expanded-table>p{font-size:11px;color:#a9a2b9}.sa-table-scroll{overflow-x:auto;scrollbar-width:thin}.sa-expanded-table table{width:100%;border-collapse:collapse;font-size:12px}.sa-expanded-table th,.sa-expanded-table td{padding:14px;text-align:right;white-space:nowrap;border-bottom:1px solid #ffffff0b}.sa-expanded-table th small{display:block;font-size:9px;color:#9690a7;margin-top:4px}.sa-expanded-table td button{font:inherit;background:none;border:0;color:#e5e0ef;cursor:pointer;padding:7px}.sa-expanded-table td button:disabled{color:#898297;cursor:default}.sa-expanded-table thead th{color:#beb6ce;font-weight:500}.sa-expanded-table tfoot{background:#ffffff04;font-weight:600}.sa-records{padding:24px}.sa-back{margin-bottom:18px}.sa-records>header{border:1px solid #ffffff13;border-radius:12px;padding:20px;display:flex;flex-direction:column;gap:8px;margin-bottom:18px}.sa-records h3{font-size:23px;margin:0}.sa-records>header>strong{font-size:27px}.sa-records p{font-size:11px;color:#b4adc5}.sa-record-list{display:grid;gap:12px}.sa-record-list article{border:1px solid #ffffff10;border-radius:12px;padding:18px;background:#ffffff02}.sa-record-list article>header{display:flex;align-items:center;gap:14px;font-size:13px}.sa-record-list article>header>strong{margin-right:auto}.sa-record-list article>header>span{font-size:11px;color:#b3abc4}.sa-record-list dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-bottom:0;font-size:11px}.sa-record-list dt{color:#9f96b2;margin-bottom:5px}.sa-record-list dd{margin:0}.sa-reason{padding:10px;border-radius:7px;background:#ff827810;color:#ff9e94!important}.sa-timeout{border-right:2px solid #ff9783}
@media(min-width:1100px){#homeCharts:has(.sales-analysis-card){grid-template-columns:minmax(0,2.5fr) minmax(260px,1fr)}}
@media(max-width:1100px){#homeCharts:has(.sales-analysis-card){grid-template-columns:1fr}.sa-svg{max-height:none}}
@media(max-width:600px){.sa-content{padding:18px 14px 0}.sa-heading{align-items:flex-start;gap:8px;margin-bottom:15px}.sa-heading h3{font-size:24px}.sa-live{flex-wrap:wrap;justify-content:flex-end;max-width:100px;white-space:normal;font-size:9px}.sa-overline{font-size:9px}.sa-tabs{flex-wrap:wrap}.sa-tabs button{flex:1 1 40%;padding:9px 5px;font-size:11px}.sa-summary{gap:12px;grid-template-columns:1fr 1fr;padding:18px 0 14px}.sa-summary .sa-main-total{grid-column:1/-1}.sa-summary .sa-main-total>strong{font-size:32px}.sa-summary>div+div{padding-right:0;border:0}.sa-summary>div:last-child{padding-right:12px;border-right:1px solid #ffffff0c}.sa-summary strong{font-size:20px}.sa-time-toolbar{align-items:flex-start;flex-direction:column}.sa-time-toolbar>span{font-size:10px}.sa-periods{width:100%}.sa-periods button{flex:1;min-height:34px}.sa-hour-picker{align-items:flex-start;flex-direction:column}.sa-hour-picker label{flex-wrap:wrap}.sa-hour-picker select{max-width:250px}.sa-inspector{padding:12px}.sa-hour-branches{grid-template-columns:repeat(auto-fit,minmax(110px,1fr))}.sa-footer{margin-inline:-14px;padding-inline:14px}.sa-rule{font-size:9px}.sa-leader{gap:7px}.sa-leader small{width:100%}.sa-chart-scroll{margin-inline:-4px}.sales-analysis-card{border-radius:16px}dialog.sales-modal{width:calc(100vw - 12px)}.sa-expanded-table,.sa-records{padding:14px}.sa-expanded-table th,.sa-expanded-table td{padding:10px}.sa-record-list dl{grid-template-columns:1fr 1fr}.sa-record-list article>header{flex-wrap:wrap;gap:8px}}
.sa-chart-frame{position:relative;min-width:0}.sa-tooltip{position:absolute;top:12px;left:62px;z-index:3;min-width:220px;max-width:300px;border:1px solid #ffffff24;border-radius:12px;padding:13px;background:#252432f5;box-shadow:0 12px 35px #10101955;pointer-events:none;font-size:11px}.sa-tooltip[hidden]{display:none}.sa-tooltip>small{display:block;color:#9f99b0;font-size:9px;margin:4px 0 8px}.sa-tooltip>div{display:flex;flex-wrap:wrap;align-items:center;gap:6px;justify-content:space-between;padding:5px 0}.sa-tooltip b{font-size:12px;font-weight:500}.sa-tooltip em{font-style:normal;color:#c9bc90;font-size:9px;width:100%}.sa-tooltip footer{border-top:1px solid #ffffff13;margin-top:6px;padding-top:8px}.sa-tooltip .time-readout{gap:4px}.sa-tooltip .time-readout small{font-size:8px}
@media(min-width:601px){.sales-analysis-card .sa-content{padding-top:18px}.sales-analysis-card .sa-heading{margin-bottom:12px}.sales-analysis-card .sa-heading h3{font-size:25px;line-height:1.2;margin-top:4px}.sales-analysis-card .sa-heading .sa-overline{line-height:1.4;display:block}.sales-analysis-card .sa-tabs button{padding-block:7px;line-height:1.5}.sales-analysis-card .sa-summary{padding:16px 0 12px;gap:12px}.sales-analysis-card .sa-summary>div{gap:5px}.sales-analysis-card .sa-main-total>strong{font-size:29px}.sales-analysis-card .sa-leader{padding-block:7px;line-height:1.5}.sales-analysis-card .sa-tools{margin:10px 0 6px;line-height:1.4}.sales-analysis-card .sa-legend button{padding-block:5px;line-height:1.4}.sales-analysis-card .sa-time-toolbar{margin:12px 0 6px}.sales-analysis-card .sa-svg{max-height:none}.sales-analysis-card .sa-hour-picker{margin:6px 0 8px}.sales-analysis-card .sa-inspector{padding:10px 12px}.sales-analysis-card .sa-inspector>header{margin-bottom:7px}.sales-analysis-card .sa-inspector header>div{gap:3px}.sales-analysis-card .sa-inspector strong{line-height:1.4}.sales-analysis-card .sa-hour-branches button{padding:7px 9px;gap:3px;line-height:1.4}.sales-analysis-card .sa-rule{line-height:1.6;margin:8px 0}.sales-analysis-card .sa-footer{margin-top:9px;padding-block:8px}}
.sa-chart-empty{position:absolute;top:40%;left:50%;transform:translateX(-50%);font-size:11px;color:#a29aae;background:#2b2a3970;padding:7px 12px;border-radius:7px;text-align:center;pointer-events:none}
.sa-daypart{font-size:12px;fill:#d7d2e4;font-weight:500}.sa-noon-divider{stroke:#b7a7da30;stroke-dasharray:3 5}.sa-hour-axis{font-size:12px;fill:#ece8f5;cursor:pointer}.sa-hour-axis:hover{fill:#ffe28a}.sa-hour-state{font-size:9px;fill:#aaa4ba}.sa-chart-caption{display:flex;justify-content:space-between;gap:12px;margin:16px 0 8px;color:#c2bccc;font-size:11px}.sa-chart-caption>span:last-child{color:#918b9f;font-size:10px}.sa-chart-hint{font-size:10px;color:#aca4b9;margin:8px 0 10px;line-height:1.7}.sa-chart-hint>span{color:#8d859c}.sales-analysis-card .sa-chart-scroll{width:100%;margin:0;padding-bottom:5px}.sales-analysis-card .sa-inspector{padding:10px 12px}.sales-analysis-card .sa-hour-branches button{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:5px;padding:8px 10px}.sales-analysis-card .sa-hour-branches button>small{flex-basis:100%;font-size:9px}.sales-analysis-card .sa-summary{padding-top:13px;padding-bottom:10px}.sales-analysis-card .sa-legend{gap:5px}.sales-analysis-card .sa-tools{margin-top:8px}.sa-tooltip{max-width:min(300px,calc(100% - 72px));min-width:min(220px,calc(100% - 72px))}
@media(max-width:600px){.sa-chart-caption{flex-direction:column;gap:3px}.sa-chart-hint>span{display:block}.sales-analysis-card .sa-hour-branches{grid-template-columns:1fr}.sales-analysis-card .sa-hour-branches button>small{flex-basis:auto}.sales-analysis-card .sa-summary .sa-main-total{flex-direction:row;flex-wrap:wrap;align-items:baseline;gap:4px 10px}.sales-analysis-card .sa-main-total>span{width:100%}.sales-analysis-card .sa-summary .sa-main-total>strong{font-size:30px}}
@media(min-width:1101px){#homeCharts:has(.sales-analysis-card){grid-template-columns:minmax(0,1fr) 250px}}
.sa-branch-toolbar{display:flex;flex-direction:row-reverse;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin:12px 0 14px}.sales-analysis-card .sa-branch-toolbar .sa-tools,.sa-branch-toolbar .sa-tools{margin:0;gap:12px}.sales-analysis-card .sa-hour-branches button>small{flex-basis:auto}.sales-analysis-card .sa-chart-hint{margin:3px 0 8px}.sa-chart-caption{display:none}@media(max-width:600px){.sa-branch-toolbar{align-items:flex-start;flex-direction:column;gap:8px}.sa-branch-toolbar .sa-tools{width:100%}}
.sa-hour-cell{cursor:pointer}.sa-hour-chip{fill:#ffffff04;stroke:#ffffff0c;stroke-width:1}.sa-hour-tick{stroke:#aaa4ba38;stroke-width:1}.sa-hour-cell .sa-hour-axis{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:10px;font-weight:500;font-variant-numeric:tabular-nums;letter-spacing:-.35px;fill:#c4bfd2;unicode-bidi:isolate}.sa-hour-cell:hover .sa-hour-chip{fill:#ffffff0c;stroke:#c8b46650}.sa-hour-cell:hover .sa-hour-axis{fill:#fff}.sa-hour-cell.is-selected .sa-hour-chip{fill:#ffca161c;stroke:#ffcf3566}.sa-hour-cell.is-selected .sa-hour-axis{fill:#ffda66;font-weight:600}.sa-hour-cell.is-future .sa-hour-axis{fill:#8e879e}.sa-hour-cell.is-current .sa-hour-tick{stroke:#a6bfff;stroke-width:2}.sa-hour-state{font-size:8px}.sa-svg{padding-bottom:4px}
.sa-hour-cell .sa-hour-axis{font-family:inherit;font-size:13px;font-weight:500;letter-spacing:0;pointer-events:none;user-select:none}.sa-svg .sa-hour-cell[role=button]:focus,.sa-svg .sa-hour-cell[role=button]:focus-visible{outline:none!important}.sa-hour-cell:focus-visible .sa-hour-chip{stroke:#b9ceff;stroke-width:2}.sa-hour-chip{pointer-events:none}.sa-hour-cell{outline:none;user-select:none;-webkit-tap-highlight-color:transparent}.sa-hour-cell.is-selected .sa-hour-chip{fill:#ffcc2026;stroke:#e7bc4a80}.sa-hour-cell.is-selected .sa-hour-axis{fill:#ffe181}
.sa-hour-chip{pointer-events:all}
@media(hover:none){.sa-tooltip{display:none!important}}
@media(prefers-reduced-motion:reduce){.sales-analysis-card *,.sales-modal *{scroll-behavior:auto!important;transition:none!important}}
