:root{color-scheme:light;--bg:#fcf8fb;--text:#332939;--muted:#817784;--line:#eee5ed;--pink:#a95e96;--pinkdark:#854974;--soft:#f9edf6;--green:#287a60;--red:#b35161;font-family:system-ui,-apple-system,"Noto Sans TC","PingFang TC","Microsoft JhengHei",sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-size:14px}button,textarea,input{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:default}.wrap{max-width:1080px;margin:auto;padding:25px 20px 80px}header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:0 0 22px;gap:12px}.brand{font-weight:850;font-size:23px;letter-spacing:-.8px}.brand span{color:var(--pink)}.privacy{display:flex;align-items:center;gap:6px;color:#877a87;font-size:12px}.dot{width:7px;height:7px;background:#4fa57b;border-radius:50%}h1{font-size:32px;letter-spacing:-1px;margin:32px 0 7px}p.hint{color:var(--muted);margin:0 0 25px;line-height:1.7}.layout{display:grid;grid-template-columns:360px minmax(0,1fr);gap:22px;align-items:start}.paper{border:1px solid var(--line);background:#fff;border-radius:18px;box-shadow:0 5px 23px #4b2f4709;overflow:hidden}.pad{padding:21px}.sticky{position:sticky;top:20px}h2{font-size:18px;margin:0 0 10px}.small{font-size:12px;color:var(--muted);line-height:1.7}.textarea{resize:vertical;width:100%;min-height:330px;max-height:65vh;border:1px solid #e7dce7;background:#fffafd;color:var(--text);border-radius:12px;padding:13px;line-height:1.6;font-size:13px;outline:none}.textarea:focus,input:focus{border-color:#b786ae;outline:3px solid #f4e5f0}.actions{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap}.primary,.sub{border:1px solid transparent;border-radius:10px;padding:11px 13px;font-weight:750;transition:.15s}.primary{background:var(--pink);color:white;flex:1}.primary:hover{background:var(--pinkdark)}.sub{background:#fff;border-color:#e9dde7;color:#815775}.sub:hover{background:#fbf2f9}.row{display:flex;align-items:center;gap:10px;justify-content:space-between}.year{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:12px;margin-top:13px}.year input{width:80px;padding:7px;border:1px solid var(--line);border-radius:8px;background:white;color:var(--text)}.message{margin-top:12px;font-size:12px;line-height:1.65;color:#78677c}.message.ok{color:var(--green)}.message.warn{color:#a55b35}.message.err{color:var(--red)}.empty{padding:75px 15px;text-align:center;color:var(--muted);line-height:1.9}.empty .flower{font-size:38px;display:block;margin-bottom:7px}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:18px}.stat{background:#fff;border:1px solid var(--line);border-radius:13px;padding:15px 12px}.stat strong{display:block;font-size:25px;font-weight:850;letter-spacing:-1px;white-space:nowrap}.stat span{color:var(--muted);font-size:11px;display:block;margin-top:5px}.stat:first-child strong{color:#9b548b}.result-bar{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:2px 0 14px;flex-wrap:wrap}.result-bar h2{margin:0}.mutebtn{border:0;background:none;color:#9e658e;padding:7px 2px;font-size:12px;font-weight:700}.tabrow{display:flex;gap:6px;overflow-x:auto;margin:0 0 15px;padding:0 0 3px}.tab{border:1px solid var(--line);background:white;color:#766c7b;border-radius:9px;padding:9px 11px;white-space:nowrap;font-weight:650}.tab.active{background:var(--pink);border-color:var(--pink);color:#fff}.group{margin:0 0 13px}.group-head{background:#fff;border-bottom:1px solid var(--line);padding:17px 18px;display:flex;justify-content:space-between;gap:10px;align-items:center}.group-title{font-size:16px;font-weight:800;letter-spacing:-.3px}.group-place{color:var(--muted);font-size:11px;margin-top:5px}.group-total{text-align:right;font-weight:800;white-space:nowrap}.group-total small{color:var(--muted);display:block;font-size:11px;font-weight:500;margin-top:5px}.member{padding:13px 18px;border-bottom:1px solid #f4edf3}.member:last-child{border-bottom:0}.member-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.name{font-weight:800}.member-stat{font-weight:750;color:#98598c}.member-stat.zero{color:#b4aab4}.sessions{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 0}.session{font-size:11px;color:#6e5d6e;background:#faf5f9;padding:6px 8px;border-radius:7px;border:1px solid #f2e9f1}.session b{color:#905180}.session.lost{background:#faf8fa;color:#aaa1a8}.session.lost b{color:#aca5ac}.count{font-variant-numeric:tabular-nums}.details{background:#fff;margin:16px 0 0}.details>summary{cursor:pointer;color:#906288;font-weight:700;padding:14px 0;list-style-position:inside}.backup{margin-top:17px;border-top:1px solid var(--line);padding-top:15px}.backup summary{cursor:pointer;color:#867588;font-size:12px;font-weight:650}.backup-inner{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}.backup-inner .sub{font-size:12px}.footer{margin-top:18px;color:#a298a3;font-size:11px;line-height:1.8}.tbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:4px}.alert{border-radius:10px;padding:12px 13px;margin-bottom:14px;background:#fff6e8;color:#8c6437;font-size:12px;line-height:1.6}.summary-line{color:#706676;font-size:12px;margin:0 0 14px;line-height:1.8}.exporthint{color:#a18e9e;font-size:11px;margin-top:10px;line-height:1.65}
@media(max-width:830px){.layout{grid-template-columns:1fr}.sticky{position:static}.textarea{min-height:170px;max-height:38vh}.wrap{padding:19px 14px 65px}h1{font-size:27px;margin-top:24px}.pad{padding:17px}.empty{padding:35px 12px}.stats .stat strong{font-size:21px}}
@media(max-width:380px){.stats{gap:5px}.stat{padding:12px 7px}.stats .stat strong{font-size:19px}.group-head{padding:14px 12px}.member{padding:11px 12px}}

/* Minimal award-only schedule. */
.layout>*{min-width:0}
.textarea{max-width:100%}
@media(max-width:830px){.layout{grid-template-columns:minmax(0,1fr)}}
.stats{grid-template-columns:repeat(2,minmax(0,1fr))}
.stats .stat strong{font-size:24px}
.tally{margin:0 0 12px}
.sorts{display:flex;gap:3px;border:1px solid var(--line);background:#fff;padding:4px;border-radius:10px}
.sort{background:transparent;color:#786c7b;font-weight:750;font-size:12px;padding:8px 12px;border:0;border-radius:7px}
.sort.active{background:var(--pink);color:#fff}
.tab{min-width:115px;text-align:left;display:flex;flex-direction:column;gap:4px;padding:10px 13px}
.tab strong{font-size:13px}.tab small{font-size:11px;opacity:.85}
.slot-block{border-bottom:1px solid var(--line);padding:14px 18px}
.slot-block:last-child{border-bottom:0}
.slot-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:9px;color:#704e6e}
.slot-head strong{font-size:15px}
.slot-head span{font-size:12px;color:var(--muted)}
.slot-people{display:flex;flex-direction:column;gap:7px}
.person-line{display:grid;grid-template-columns:minmax(95px,1fr)auto;align-items:center;gap:2px 10px;padding:10px 13px;border:1px solid #f1e6ee;border-radius:10px;background:#fdf9fc}
.person-line .ticket-count{color:var(--pinkdark);font-weight:850;font-size:14px}
.person-line .perks{grid-column:1/-1;color:var(--muted);font-size:11px}
.clear-row{margin-top:14px;display:flex;align-items:center;justify-content:flex-end;gap:9px}
.danger{border:1px solid #ead2dc;background:#fff9fb;color:#a34362;padding:9px 12px;border-radius:10px;font-size:12px;font-weight:750}
.danger:hover{background:#ffeff3;border-color:#e5a9b8}
.danger:focus-visible{outline:3px solid #f0bbca;outline-offset:2px}
.member{border-bottom:1px solid var(--line)}
@media(max-width:830px){.tbar{align-items:center}.stats .stat strong{font-size:21px}}

/* All-event member tally, independent of selected activity date. */
.member-overview{margin:0 0 23px;padding:18px 19px}
.member-overview-heading{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:13px}
.member-overview-heading h2{margin:0;font-size:17px}
.member-overview-heading span{color:var(--muted);font-size:11px;white-space:nowrap}
.member-overview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(128px,1fr));gap:9px}
.member-total-item{background:#fcf9fb;border:1px solid #f0e6ef;padding:12px 13px;border-radius:11px;display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}
.member-total-item .person{min-width:0;overflow-wrap:anywhere;font-size:13px;font-weight:700;color:#45364b}
.member-total-item .amount{font-size:17px;font-weight:850;color:var(--pinkdark);white-space:nowrap;font-variant-numeric:tabular-nums}
.member-total-item .amount small{font-size:11px;font-weight:600;margin-left:2px;color:var(--muted)}
@media(max-width:440px){.member-overview{padding:15px 13px}.member-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.member-total-item{padding:11px 10px}.member-total-item .amount{font-size:16px}}
.brand .beta{font-size:11px;color:#a890a4;letter-spacing:0}

/* V2 schedule and history views. */
.records-app{margin-top:28px}
.records-app h1{margin-top:0}
.app-message{min-height:24px;margin:0 0 14px;color:var(--muted);font-size:13px}
.app-message.success{color:var(--green)}
.app-message.warning{color:#94632f}
.app-message.error{color:var(--red)}
.app-tabs{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:8px;margin:0 0 22px;border-bottom:1px solid var(--line);padding-bottom:10px}
.app-tab{min-height:46px;border:1px solid var(--line);border-radius:12px;background:#fff;color:#706676;font-weight:750}
.app-tab[aria-selected="true"]{background:var(--pink);border-color:var(--pink);color:#fff;box-shadow:0 4px 12px #a95e9625}
.app-tab:focus-visible,.ticket-card button:focus-visible,.recycle-card button:focus-visible{outline:3px solid #f0bbca;outline-offset:2px}
.app-panel{min-width:0}
.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:15px}
.panel-heading h2{margin:0;font-size:22px}
.panel-heading p{margin:5px 0 0;color:var(--muted);font-size:12px;line-height:1.6}
.page-summary{margin:0 0 13px;color:#786c7b;font-size:13px}
.ticket-list{display:grid;gap:12px}
.ticket-card{min-width:0;border:1px solid var(--line);border-radius:15px;background:#fff;padding:16px 18px;box-shadow:0 4px 18px #4b2f4708}
.ticket-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.ticket-card-title{margin:0;min-width:0;font-size:16px;line-height:1.45;overflow-wrap:anywhere}
.ticket-card-count{flex:none;color:var(--pinkdark);font-size:14px;white-space:nowrap}
.ticket-badges{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}
.ticket-badge{display:inline-flex;align-items:center;min-height:25px;border:1px solid #f0e6ef;border-radius:999px;background:#fcf8fb;padding:3px 9px;color:#776477;font-size:11px}
.ticket-details{border-top:1px solid #f3ecf2;margin-top:10px;padding-top:8px}
.ticket-details>summary{cursor:pointer;padding:6px 0;color:#805d7c;font-size:12px;font-weight:750}
.ticket-metadata{display:grid;grid-template-columns:110px minmax(0,1fr);gap:7px 10px;margin:11px 0 14px;font-size:12px;line-height:1.55}
.ticket-metadata dt{color:var(--muted)}
.ticket-metadata dd{margin:0;overflow-wrap:anywhere}
.ticket-editor{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.ticket-field{display:grid;align-content:start;gap:5px;min-width:0;color:#706676;font-size:11px;font-weight:700}
.ticket-field-label{line-height:1.4}
.ticket-date-confirmation{grid-column:1/-1;display:flex;align-items:center;gap:8px;min-height:28px;color:#706676;font-size:11px;font-weight:700}
.ticket-date-confirmation input{width:20px;min-height:20px;flex:none;margin:0;padding:0}
.ticket-input{width:100%;min-height:40px;border:1px solid #e7dce7;border-radius:9px;background:#fff;color:var(--text);padding:8px 10px;font:inherit;font-size:13px;font-weight:500;outline:none}
.ticket-input:focus{border-color:#b786ae;outline:3px solid #f4e5f0}
.ticket-notes{grid-column:1/-1;resize:vertical;min-height:66px;line-height:1.5}
.ticket-actions{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px;margin-top:2px}
.primary-button,.danger-button,.sub-button{min-height:42px;border:1px solid transparent;border-radius:10px;padding:9px 14px;font-size:12px;font-weight:750}
.primary-button{background:var(--pink);color:#fff}
.primary-button:hover{background:var(--pinkdark)}
.danger-button{border-color:#ead2dc;background:#fff9fb;color:#a34362}
.danger-button:hover{background:#ffeff3}
.sub-button{border-color:#e9dde7;background:#fff;color:#815775}
.history-filters{display:grid;grid-template-columns:minmax(180px,2fr) repeat(4,minmax(120px,1fr));gap:9px;margin:0 0 16px;padding:13px;border:1px solid var(--line);border-radius:13px;background:#fff}
.filter-field{display:grid;gap:5px;color:var(--muted);font-size:11px;font-weight:700}
.filter-field input,.filter-field select{width:100%;min-width:0;min-height:40px;border:1px solid #e7dce7;border-radius:9px;background:#fff;color:var(--text);padding:8px 9px;font:inherit;font-size:12px;outline:none}
.filter-field input:focus,.filter-field select:focus{border-color:#b786ae;outline:3px solid #f4e5f0}
.empty-state{display:grid;justify-items:center;gap:5px;border:1px dashed #e8dce7;border-radius:14px;background:#fff;padding:28px 18px;color:var(--muted);text-align:center;line-height:1.7}
.empty-state p{margin:0;font-size:13px}
.empty-flower{color:#bd82ad;font-size:25px}
.recycle-section{margin-top:28px;padding-top:18px;border-top:1px solid var(--line)}
.recycle-heading{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:12px}
.recycle-heading h2{margin:0;font-size:17px}
.recycle-list{display:grid;gap:8px}
.recycle-card{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #eee5ed;border-radius:12px;background:#fff;padding:12px 14px}
.recycle-card h3{margin:0;font-size:13px;line-height:1.5;overflow-wrap:anywhere}
.recycle-card p{margin:3px 0 0}
.legacy-tools{margin-top:32px;border:1px solid var(--line);border-radius:13px;background:#fff;padding:0 15px}
.legacy-tools>summary{cursor:pointer;padding:13px 0;color:#827586;font-size:12px;font-weight:700}
.legacy-note{margin:0 0 13px;color:var(--muted);font-size:11px;line-height:1.6}
.legacy-tools .layout{margin-bottom:14px}
.footer{margin-top:22px}
@media(max-width:800px){.history-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.history-filters .filter-field:first-child{grid-column:1/-1}}
@media(max-width:560px){
 .records-app{margin-top:22px}
 .records-app h1{font-size:26px}
 .app-tabs{position:sticky;top:0;z-index:5;background:var(--bg);padding:8px 0;margin-bottom:16px}
 .panel-heading h2{font-size:20px}
 .ticket-card{padding:13px 12px;border-radius:12px}
 .ticket-card-header{display:grid;gap:5px}
 .ticket-card-count{font-size:12px}
 .ticket-editor{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .history-filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px}
 .history-filters .filter-field:first-child{grid-column:1/-1}
 .recycle-card{align-items:flex-start;flex-direction:column}
 .recycle-card button{width:100%}
 .ticket-actions>*{flex:1 1 145px}
}
@media(max-width:360px){.ticket-metadata{grid-template-columns:88px minmax(0,1fr)}.ticket-badge{font-size:10px}.ticket-editor{grid-template-columns:1fr}}

/* Event-date statistics and member history. */
.statistics-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:0 0 16px;padding:13px;border:1px solid var(--line);border-radius:13px;background:#fff}
.statistics-filter-field{min-width:0}
.statistics-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:18px}
.statistics-card{display:grid;align-content:start;gap:6px;min-width:0;min-height:96px;border:1px solid var(--line);border-radius:13px;background:#fff;padding:14px}
.statistics-card-label{color:var(--muted);font-size:12px}
.statistics-card-value{color:var(--pinkdark);font-size:24px;letter-spacing:-.7px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.statistics-card-hint{color:var(--muted);font-size:10px;line-height:1.45}
.statistics-section{margin-top:18px;border:1px solid var(--line);border-radius:14px;background:#fff;padding:16px}
.statistics-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px}
.statistics-section-title{margin:0;font-size:16px}
.statistics-chart-controls{display:flex;gap:8px;flex-wrap:wrap}
.statistics-chart-controls .filter-field{min-width:130px}
.statistics-chart-svg{display:block;width:100%;height:auto;min-width:0;overflow:visible}
.statistics-grid-line{stroke:#eee5ed;stroke-width:1}
.statistics-axis-line{stroke:#cfc2ce;stroke-width:1}
.statistics-axis-label{fill:#817784;font-size:11px}
.statistics-chart-line{fill:none;stroke:#a95e96;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.statistics-chart-point{fill:#fff;stroke:#a95e96;stroke-width:2.5}
.statistics-empty-chart{fill:#817784;font-size:13px}
.statistics-chart-note{margin:7px 0 0;color:var(--muted);font-size:11px;text-align:right}
.statistics-table-scroll{max-width:100%;overflow-x:auto}
.statistics-table{width:100%;border-collapse:collapse;white-space:nowrap;font-size:12px}
.statistics-table th,.statistics-table td{padding:10px 9px;border-bottom:1px solid #f1eaf0;text-align:right}
.statistics-table th{color:var(--muted);font-size:11px;font-weight:700}
.statistics-table th:first-child,.statistics-table td:first-child{text-align:left}
.statistics-table tbody tr:last-child td{border-bottom:0}
.statistics-member-button{border:0;background:none;color:var(--pinkdark);padding:2px 0;font:inherit;font-weight:750;text-align:left}
.statistics-member-button:hover,.statistics-clear-member:hover{text-decoration:underline}
.statistics-clear-member{border:1px solid #e9dde7;border-radius:8px;background:#fff;color:#815775;padding:7px 10px;font-size:11px;font-weight:700}
.statistics-empty{margin:0;color:var(--muted);font-size:12px;line-height:1.6}
.statistics-member-detail{margin-top:15px;border-top:1px solid #f1eaf0;padding-top:13px}
.statistics-member-detail h4{margin:0 0 9px;font-size:14px}
.statistics-session-list{display:grid;gap:7px;margin:0;padding:0;list-style:none}
.statistics-session-list li{display:grid;gap:3px;border:1px solid #f1eaf0;border-radius:9px;background:#fcf9fb;padding:10px 11px;font-size:12px}
.statistics-session-list span{color:#706676}
.statistics-session-list small{color:#94632f}
@media(max-width:800px){.statistics-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.statistics-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.statistics-section{padding:13px}.statistics-section-heading{align-items:flex-start}.statistics-chart-controls{width:100%}.statistics-chart-controls .filter-field{flex:1;min-width:120px}.statistics-card{min-height:86px;padding:12px}.statistics-card-value{font-size:21px}}

/* Official sales availability is public read-only data, rendered as compact mobile cards. */
.sales-view{display:grid;gap:13px;min-width:0}
.sales-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:9px}
.sales-toolbar .filter-field{max-width:320px}
.sales-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:13px;border:1px solid var(--line);border-radius:13px;background:#fff}
.sales-view .filter-field{display:grid;gap:5px;min-width:0;color:var(--muted);font-size:11px}
.sales-view input,.sales-view select{width:100%;min-width:0;min-height:40px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--text);padding:8px 10px}
.sales-view input:focus,.sales-view select:focus{border-color:#b786ae;outline:3px solid #f4e5f0}
.sales-last-updated,.sales-status-message,.sales-round,.sales-results-heading{margin:0;color:var(--muted);font-size:12px;line-height:1.6}
.sales-status-message{padding:10px 12px;border-radius:10px;background:#fff}
.sales-state-unavailable{color:#a34362;background:#fff5f7}
.sales-state-stale{color:#8c5c19;background:#fff9eb}
.sales-round{font-weight:700;color:#805a78}
.sales-results-heading{font-weight:750;color:var(--text)}
.sales-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.sales-card{min-width:0;padding:13px;border:1px solid var(--line);border-radius:12px;background:#fff}
.sales-card h3{display:flex;align-items:center;justify-content:space-between;gap:9px;margin:0 0 8px;font-size:14px;line-height:1.45}
.sales-place,.sales-detail{margin:3px 0 0;color:var(--muted);font-size:11px;line-height:1.5;overflow-wrap:anywhere}
.sales-badge{flex:none;border-radius:999px;padding:4px 7px;background:#eef7f0;color:#347b53;font-size:10px;font-weight:750;white-space:nowrap}
.sales-badge-remaining_few{background:#fff5dd;color:#8a651b}
.sales-badge-sold_out{background:#f8e9ed;color:#9b4b60}
.sales-badge-unknown{background:#f0edf1;color:#746c77}
.sales-empty{grid-column:1/-1;margin:0;padding:22px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:12px}
.sales-more{grid-column:1/-1}
@media(max-width:700px){.sales-results{grid-template-columns:1fr}}
@media(max-width:560px){.sales-toolbar{grid-template-columns:minmax(0,1fr) auto}.sales-filters{grid-template-columns:1fr 1fr}.sales-filters .filter-field:nth-child(2){grid-column:1/-1}}

/* Import and data safety controls stay grouped under the dedicated data tab. */
.data-management{display:grid;gap:14px;min-width:0}
.data-section{min-width:0;padding:17px;border:1px solid var(--line);border-radius:14px;background:#fff}
.data-section h3{margin:0 0 6px;font-size:16px}
.data-note,.data-status,.data-empty{margin:0 0 11px;color:var(--muted);font-size:12px;line-height:1.65}
.data-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:10px 0}
.data-choice{display:flex;align-items:flex-start;gap:8px;margin:11px 0;color:var(--muted);font-size:12px;line-height:1.6}
.data-choice input{flex:none;margin-top:3px}
.import-view{display:grid;gap:10px}
.import-textarea{width:100%;min-height:155px;resize:vertical;border:1px solid var(--line);border-radius:11px;background:#fffafd;color:var(--text);padding:12px;line-height:1.55;font:inherit}
.import-textarea:focus{border-color:#b786ae;outline:3px solid #f4e5f0}
.import-controls{display:flex;align-items:end;gap:8px;flex-wrap:wrap}
.import-controls .filter-field{display:grid;gap:5px;min-width:min(100%,220px);color:var(--muted);font-size:11px}
.import-controls select{min-height:42px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--text);padding:8px}
.import-status{margin:0;color:var(--muted);font-size:12px;line-height:1.6}
.import-preview{display:grid;gap:8px;margin-top:5px}
.import-preview-heading{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap;border-top:1px solid #f1eaf0;padding-top:12px}
.import-preview-heading h3{margin:0;font-size:15px}
.import-preview-heading p,.import-summary{margin:0;color:var(--muted);font-size:11px}
.import-warning,.import-record-warning{margin:0;color:#9b5c28;background:#fff9ef;border-radius:8px;padding:8px 10px;font-size:11px;line-height:1.55;overflow-wrap:anywhere}
.import-record{display:flex;align-items:flex-start;gap:9px;padding:9px;border:1px solid #f1eaf0;border-radius:9px;background:#fff}
.import-record input,.import-candidate input{flex:none;margin:3px 0 0}
.import-record-body{display:grid;gap:3px;min-width:0;font-size:12px}
.import-record-body strong{font-weight:700;overflow-wrap:anywhere}
.import-record-body small{color:var(--muted);font-size:10px}
.import-record-body .import-record-warning{padding:5px 7px}
.import-record-invalid{border-color:#efd7c4;background:#fffaf5}
.import-candidates{display:grid;gap:7px;padding:11px;border:1px solid #eadfbf;border-radius:10px;background:#fffcf4}
.import-candidates h4,.import-candidates p{margin:0;font-size:11px;line-height:1.55}
.import-candidates p{color:var(--muted)}
.import-candidate{display:flex;align-items:flex-start;gap:8px;font-size:11px;line-height:1.5}
.import-preview-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:4px}
.source-link-list{display:grid;gap:8px}
.source-link-card{display:grid;gap:8px;padding:11px;border:1px solid #eadfbf;border-radius:10px;background:#fffcf4}
.source-link-confirmed{border-color:#d8e9df;background:#f7fcf8}
.source-link-description{margin:0;font-size:11px;line-height:1.6;overflow-wrap:anywhere}
.source-link-card select{min-height:38px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:7px;color:var(--text);font-size:11px}
.source-link-card .data-actions{margin:0}
@media(max-width:560px){.data-section{padding:13px}.data-actions>*{max-width:100%}.import-controls>*{flex:1}.import-preview-heading{align-items:flex-start}}

/* Pink Dream Edition — shared visual system and responsive shell. */
:root{
 color-scheme:light;
 --bg:#fff8fb;--surface:#fffdfd;--surface-soft:#fff4f8;--text:#443540;--muted:#786b76;
 --line:#f0dfe8;--pink:#f47da7;--pink-strong:#b44770;--pink-deep:#8a3658;--soft-pink:#ffe3ee;
 --sakura:#ffb6d2;--lavender:#ede5ff;--peach:#ffe5dc;--green:#276b53;--red:#9d3d59;
 --shadow:0 12px 34px #70435812;--shadow-soft:0 5px 18px #7043580d;--radius:20px;--radius-small:14px;
 --space-1:6px;--space-2:10px;--space-3:14px;--space-4:18px;--space-5:24px;--space-6:32px;
 font-family:system-ui,-apple-system,"Noto Sans TC","PingFang TC","Microsoft JhengHei",sans-serif
}
*{box-sizing:border-box}
html{min-width:320px;min-height:100%;background:var(--bg)}
body{min-height:100vh;margin:0;color:var(--text);font-size:14px;background:radial-gradient(ellipse at 6% 3%,#fff 0,transparent 33%),radial-gradient(ellipse at 97% 12%,#ffeaf2 0,transparent 31%),radial-gradient(ellipse at 88% 75%,#f3edff 0,transparent 27%),linear-gradient(145deg,#fff9fb 0%,#fff5f8 50%,#fffafb 100%);background-attachment:fixed}
body::before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;background-image:radial-gradient(circle at center,#fff9fc 0 2px,transparent 2.8px),radial-gradient(circle at center,#ffd5e4 0 1.5px,transparent 2.5px),radial-gradient(circle at center,#f1eaff 0 2px,transparent 3px);background-size:180px 180px,247px 247px,311px 311px;background-position:30px 40px,110px 55px,220px 170px;opacity:.56}
.wrap{position:relative;z-index:1;width:min(100%,1360px);max-width:1360px;margin:0 auto;padding:26px 34px 48px}
header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 34px;padding:0 0 18px;border-bottom:1px solid #eedce6}
.brand{display:flex;align-items:center;gap:7px;color:#493843;font-size:21px;font-weight:850;letter-spacing:-.6px}
.brand-mark{color:var(--pink-strong);font-size:24px}.brand>span:not(.brand-mark):not(.brand-caption){color:var(--pink-strong)}
.brand-caption{margin-left:5px;padding-left:11px;border-left:1px solid var(--line);color:var(--muted)!important;font-size:12px;font-weight:650;letter-spacing:0}
.privacy{display:flex;align-items:center;gap:8px;color:#655762;font-size:12px}.dot{width:8px;height:8px;border-radius:50%;background:#6fa58a;box-shadow:0 0 0 3px #e5f2e9}
.records-app{margin-top:0}.welcome-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 20px}
.welcome-kicker{color:var(--pink-deep);font-size:10px;font-weight:850;letter-spacing:1.8px}
.records-app h1{margin:5px 0 2px;color:#4b3845;font-size:32px;letter-spacing:-1.15px;line-height:1.2}
.hint{margin:0;color:var(--muted);font-size:13px;line-height:1.65}.welcome-sparkle{display:grid;place-items:center;width:54px;height:54px;border:1px solid #f7d9e5;border-radius:19px;background:linear-gradient(145deg,#fff,#ffe7f0);color:var(--pink-strong);font-size:31px;box-shadow:var(--shadow-soft)}
.app-message{min-height:22px;margin:0 0 13px;color:#695b66;font-size:12px}.app-message.success{color:var(--green)}.app-message.warning{color:#82551d}.app-message.error{color:var(--red)}
.app-tabs{display:flex;align-items:center;gap:6px;margin:0 0 27px;padding:6px;border:1px solid #f0e1e8;border-radius:17px;background:#fffdfedb;box-shadow:0 5px 18px #7043580b}
.app-tab{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;flex:1;border:0;border-radius:12px;background:transparent;color:#665963;font-size:13px;font-weight:750;transition:background-color .16s,color .16s,box-shadow .16s}
.app-tab:hover{background:#fff2f7;color:var(--pink-deep)}.app-tab[aria-selected="true"]{background:linear-gradient(135deg,#f47da7,#de6896);color:#fff;box-shadow:0 5px 14px #c65c8333}
.app-tab-icon{display:none;width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.app-tab:focus-visible,.ticket-card button:focus-visible,.recycle-card button:focus-visible,.app-tabs button:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #b74270;outline-offset:3px}
.app-panel{min-width:0}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:15px}.panel-heading h2{margin:0;font-size:22px}.panel-heading p{margin:5px 0 0;color:var(--muted);font-size:12px;line-height:1.6}
.ticket-list{display:grid;gap:9px}.ticket-card{min-width:0;padding:14px 16px;border:1px solid var(--line);border-radius:16px;background:#fffdfd;box-shadow:var(--shadow-soft)}
.ticket-card-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.ticket-card-title{min-width:0;margin:0;color:#4a3944;font-size:14px;line-height:1.45;overflow-wrap:anywhere}.ticket-card-count{flex:none;color:var(--pink-deep);font-size:13px;font-weight:850;white-space:nowrap}
.ticket-badges{display:flex;flex-wrap:wrap;gap:5px;margin:7px 0}.ticket-badge{display:inline-flex;align-items:center;min-height:23px;padding:3px 8px;border:1px solid #f2e1e9;border-radius:999px;background:#fff6fa;color:#65545f;font-size:10px}
.ticket-details{margin-top:8px;padding-top:6px;border-top:1px solid #f4e8ee}.ticket-details>summary{padding:5px 0;color:var(--pink-deep);font-size:11px;font-weight:750;cursor:pointer}
.ticket-metadata{display:grid;grid-template-columns:108px minmax(0,1fr);gap:6px 10px;margin:10px 0 13px;font-size:11px;line-height:1.5}.ticket-metadata dt{color:var(--muted)}.ticket-metadata dd{margin:0;overflow-wrap:anywhere}
.ticket-field{color:#62545e;font-size:10px}.ticket-input{min-height:40px;border-color:#ead8e2;border-radius:11px;background:#fff;color:var(--text)}.ticket-input:focus,.filter-field input:focus,.filter-field select:focus{border-color:var(--pink-strong);outline:3px solid #ffe3ee}
.primary-button,.primary{border-radius:12px;background:#b44770;color:#fff}.primary-button:hover,.primary:hover{background:#8a3658}.sub-button,.sub{border-color:#ead8e2;border-radius:12px;background:#fff;color:#694955}.sub-button:hover,.sub:hover{background:#fff1f6}.danger-button,.danger{border:1px solid #c87582;border-radius:12px;background:#fff4f5;color:#8c3349;font-weight:800}.danger-button:hover,.danger:hover{background:#fde4e8}
.history-filters,.statistics-filters{gap:10px;padding:15px;border:1px solid var(--line);border-radius:17px;background:#fffdfd;box-shadow:var(--shadow-soft)}
.filter-field{color:#665761;font-size:11px;font-weight:750}.filter-field input,.filter-field select,.sales-view input,.sales-view select{min-height:42px;border-color:#ead9e3;border-radius:11px;background:#fff;color:var(--text);font-size:12px}
.empty-state{border-color:#ecd9e4;border-radius:18px;background:#fffdfd;color:#756873}.empty-flower{color:var(--pink-strong)}
.schedule-days{display:grid;gap:12px}.schedule-day{overflow:hidden;border:1px solid var(--line);border-radius:17px;background:#fffdfd;box-shadow:var(--shadow-soft)}
.schedule-day-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 17px;cursor:pointer;list-style:none}.schedule-day-summary::-webkit-details-marker{display:none}.schedule-day-title{display:grid;gap:3px;min-width:0}.schedule-day-title strong{font-size:14px}.schedule-day-title small{color:var(--muted);font-size:11px}.schedule-day-count{color:var(--pink-deep);font-size:11px;font-weight:800;white-space:nowrap}.schedule-chevron{color:var(--pink-deep);transition:transform .18s}.schedule-day[open] .schedule-chevron{transform:rotate(180deg)}.schedule-day-tickets{padding:0 13px 13px}.page-summary{margin:0 0 13px;color:#655761;font-size:12px}
.recycle-section{margin-top:24px;padding-top:17px;border-top:1px solid var(--line)}.recycle-card{border-color:var(--line);border-radius:14px;background:#fffdfd}
.statistics-summary-grid{gap:11px}.statistics-card{min-height:103px;border-color:var(--line);border-radius:17px;background:linear-gradient(145deg,#fffefd,#fff3f8);box-shadow:var(--shadow-soft)}.statistics-card:nth-child(2n){background:linear-gradient(145deg,#fffefd,#f8f2ff)}.statistics-card-value{color:#9c3f68;font-size:27px}.statistics-section{border-color:var(--line);border-radius:18px;background:#fffdfd;box-shadow:var(--shadow-soft)}
.statistics-chart-line{stroke:#cf5f8a;stroke-width:3.2}.statistics-chart-point{stroke:#cf5f8a}.statistics-grid-line{stroke:#f1e4eb}.statistics-axis-line{stroke:#d9c8d3}.statistics-member-button{color:#913758}.statistics-table th,.statistics-table td{border-color:#f1e4eb}
.data-management{gap:11px}.data-section{overflow:hidden;min-width:0;padding:0;border-color:var(--line);border-radius:17px;background:#fffdfd;box-shadow:var(--shadow-soft)}.data-section-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:54px;padding:15px 18px;color:#4d3a46;font-size:14px;font-weight:800;cursor:pointer;list-style:none}.data-section-summary::-webkit-details-marker{display:none}.data-section-chevron{color:var(--pink-deep);transition:transform .18s}.data-section[open] .data-section-chevron{transform:rotate(180deg)}.data-section-content{padding:0 18px 17px;animation:soft-reveal .16s ease-out}.data-section-content .data-note{color:var(--muted)}.data-section:not([open]) .data-section-summary{background:linear-gradient(95deg,#fffdfd,#fff7fa)}
.data-note,.data-status,.data-empty{color:#655761}.import-textarea{border-color:#ead9e3;border-radius:13px;background:#fffafd;color:var(--text)}.import-textarea:focus{border-color:var(--pink-strong);outline:3px solid #ffe3ee}.source-link-card{border-color:#efdfc8;border-radius:13px}.source-link-confirmed{border-color:#d8e9df}.import-warning,.import-record-warning{color:#764416;background:#fff7e9}.data-section .danger-button,.data-section .danger{background:#fff4f5;color:#8c3349}
.legacy-tools{border-color:var(--line);border-radius:17px;background:#fffdfd}.legacy-tools>summary{color:#685561}.footer{color:#766974;font-size:11px}

/* Sales information uses a dense desktop dashboard and touch-first mobile rows. */
.sales-view{display:grid;grid-template-columns:minmax(250px,280px) minmax(0,1fr);grid-template-areas:"hero hero" "catalog catalog" "notice notice" "round round" "summary summary" "updated updated" "filters tools" "filters chips" "filters heading" "filters results";align-items:start;gap:12px 21px;min-width:0}
.sales-hero{grid-area:hero;position:relative;overflow:hidden;padding:21px 25px;border:1px solid #f3d7e2;border-radius:22px;background:linear-gradient(112deg,#fffdfd 0%,#ffedf4 52%,#f5efff 100%);box-shadow:var(--shadow-soft)}
.sales-hero::after{content:"";position:absolute;right:6%;top:-34px;width:112px;height:112px;border:1px solid #f4bfd2;border-radius:50%;box-shadow:0 0 0 15px #fff9fc88,0 0 0 32px #f8e9ff66;pointer-events:none}
.sales-eyebrow{color:#984361;font-size:9px;font-weight:850;letter-spacing:1.8px}.sales-hero-heading{display:flex;align-items:center;gap:10px;margin-top:4px}.sales-hero-heading h2{margin:0;color:#4b3944;font-size:25px;letter-spacing:-.6px}.sales-hero-flower{color:#bc527b;font-size:20px}.sales-hero-copy{margin:5px 0 0;color:#695762;font-size:12px;line-height:1.6}
.sales-catalog-bar{grid-area:catalog;display:flex;align-items:end;gap:10px}.sales-catalog-bar .filter-field{min-width:min(100%,320px)}.sales-refresh-button{min-width:105px}
.sales-status-message{grid-area:notice;margin:0;padding:10px 13px;border:1px solid #e9e0e8;border-radius:12px;background:#fffdfd;color:#655761;font-size:11px;line-height:1.55}
.sales-state-fresh{border-color:#dce9df;background:#f5fbf6;color:#285d45}.sales-state-stale{border-color:#ead8b9;background:#fff9ec;color:#76511e}.sales-state-unavailable{border-color:#eac5cf;background:#fff3f5;color:#8e344c}
.sales-round{grid-area:round;margin:0;color:#644456;font-size:11px;font-weight:750}.sales-summary{grid-area:summary;padding:14px 15px;border:1px solid var(--line);border-radius:18px;background:#fffdfd;box-shadow:var(--shadow-soft)}
.sales-summary-heading{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:11px}.sales-summary-heading h3{margin:0;color:#4d3b47;font-size:14px}.sales-summary-heading>span{color:#685a65;font-size:10px}
.sales-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.sales-summary-card{display:grid;gap:5px;min-width:0;padding:10px 12px;border:1px solid #f1e2e9;border-radius:13px;background:#fff8fb}.sales-summary-remaining_few{background:#fff8f2;border-color:#f2e1d2}.sales-summary-sold_out{background:#faf6f8}.sales-summary-unknown{background:#f8f6fc;border-color:#e8e1f1}.sales-summary-label{color:#62535d;font-size:10px;font-weight:750}.sales-summary-value{display:flex;align-items:baseline;gap:5px}.sales-summary-count{color:#913758;font-size:23px;line-height:1;font-variant-numeric:tabular-nums}.sales-summary-suffix{color:#655761;font-size:10px}
.sales-last-updated{grid-area:updated;margin:0 0 1px;color:#695c66;font-size:10px;line-height:1.5}
.sales-filter-panel{grid-area:filters;position:sticky;top:16px;min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:17px;background:#fffdfd;box-shadow:var(--shadow-soft)}.sales-filter-summary{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:14px 15px;color:#4d3a46;font-size:13px;font-weight:800;cursor:pointer;list-style:none}.sales-filter-summary::-webkit-details-marker{display:none}.sales-filter-toggle{color:#8a3658;font-size:10px}.sales-filter-fields{display:grid;grid-template-columns:1fr;gap:9px;padding:0 14px 13px}.sales-view .filter-field{display:grid;gap:5px;min-width:0;color:#665761;font-size:10px;font-weight:750}.sales-view input,.sales-view select{width:100%;min-width:0;min-height:40px;padding:7px 9px}.sales-quick-filters{display:flex;flex-wrap:wrap;gap:6px;padding:0 14px 14px}.sales-quick-filter{min-height:33px;padding:6px 9px;border:1px solid #eadde5;border-radius:999px;background:#fff;color:#665761;font-size:10px;font-weight:750}.sales-quick-filter[aria-pressed="true"]{border-color:#d77799;background:#ffe9f1;color:#7d2e50}.sales-filter-chips{grid-area:chips;display:flex;align-items:center;gap:6px;flex-wrap:wrap;min-width:0}.sales-filter-chips[hidden]{display:none}.sales-filter-chip{display:inline-flex;align-items:center;gap:7px;min-height:31px;padding:5px 10px;border:1px solid #efbfd1;border-radius:999px;background:#fff0f5;color:#79324f;font-size:10px;font-weight:750}.sales-chip-close{font-size:15px;line-height:1}.sales-clear-all,.sales-text-button{min-height:32px;padding:6px 9px;border:0;border-radius:9px;background:transparent;color:#8a3658;font-size:10px;font-weight:800}.sales-clear-all:hover,.sales-text-button:hover{background:#fff0f5}
.sales-tools{grid-area:tools;display:flex;align-items:end;justify-content:space-between;gap:10px;min-width:0;padding:10px 12px;border:1px solid var(--line);border-radius:14px;background:#fffdfd}.sales-tools>.filter-field{min-width:min(100%,220px);max-width:280px}.sales-accordion-actions{display:flex;align-items:center;gap:3px;flex-wrap:wrap;justify-content:flex-end}.sales-results-heading{grid-area:heading;margin:1px 0;color:#55454f;font-size:11px;font-weight:800}.sales-results{grid-area:results;display:grid;grid-template-columns:minmax(0,1fr);gap:9px;min-width:0}
.sales-date-accordion{min-width:0;overflow:hidden;border:1px solid #efdae4;border-radius:16px;background:#fffdfd;box-shadow:0 4px 14px #7043580b}.sales-date-summary{display:grid;grid-template-columns:minmax(170px,1fr) minmax(270px,auto) 18px;align-items:center;gap:12px;padding:13px 15px;cursor:pointer;list-style:none}.sales-date-summary::-webkit-details-marker{display:none}.sales-date-main{display:grid;gap:3px;min-width:0}.sales-date-title{color:#4c3945;font-size:12px;line-height:1.45;overflow-wrap:anywhere}.sales-chevron{color:#903d60;font-size:18px;line-height:1;transition:transform .18s}.sales-date-accordion[open]>.sales-date-summary .sales-chevron,.sales-member-accordion[open]>.sales-member-summary .sales-chevron{transform:rotate(180deg)}
.sales-date-metrics{display:flex;justify-content:flex-end;gap:9px;flex-wrap:wrap}.sales-metric{display:inline-flex;align-items:baseline;gap:4px;white-space:nowrap}.sales-metric-label{color:#655761;font-size:9px}.sales-metric strong{color:#4d3b47;font-size:11px;font-variant-numeric:tabular-nums}.sales-metric-available strong{color:#8c3659}.sales-metric-remaining_few strong{color:#87451d}.sales-metric-sold_out strong{color:#705b64}.sales-metric-unknown strong{color:#5c4b70}
.sales-date-content{padding:0 13px 14px;border-top:1px solid #f5e8ee;animation:soft-reveal .16s ease-out}.sales-product-group{padding:11px 0 8px;border-bottom:1px solid #f3e6ed}.sales-product-group:last-child{border-bottom:0}.sales-product-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 2px 7px}.sales-product-heading h4{margin:0;color:#624657;font-size:11px}.sales-product-count{color:#655761;font-size:9px;font-weight:750}.sales-distribution{display:block;width:100%;height:5px;margin:0 0 8px;overflow:visible;border-radius:99px;background:#f3edf1}.sales-distribution-available{fill:#d6799b}.sales-distribution-remaining_few{fill:#eea270}.sales-distribution-sold_out{fill:#cdb9c3}.sales-distribution-unknown{fill:#bcb0d7}
.sales-member-list{display:grid;gap:6px}.sales-member-accordion{min-width:0;overflow:hidden;border:1px solid #f0e3ea;border-radius:12px;background:#fff}.sales-member-summary{display:grid;grid-template-columns:minmax(100px,1fr) minmax(170px,auto) 13px;align-items:center;gap:8px;padding:10px 11px;cursor:pointer;list-style:none}.sales-member-summary::-webkit-details-marker{display:none}.sales-member-identity{display:flex;align-items:baseline;gap:8px;min-width:0}.sales-member-name{overflow-wrap:anywhere;color:#4a3945;font-size:12px}.sales-member-total{flex:none;color:#655761;font-size:9px}.sales-member-counts{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.sales-member-counts .sales-metric-label{display:none}.sales-member-counts .sales-metric strong{font-size:10px}.sales-member-content{padding:0 10px 10px;border-top:1px solid #f4e9ee;animation:soft-reveal .16s ease-out}.sales-part-list{display:grid;gap:5px;padding-top:8px}.sales-part-row{display:grid;grid-template-columns:minmax(100px,.7fr) minmax(125px,1fr) auto;align-items:center;gap:8px;min-width:0;padding:7px 9px;border:1px solid #f1e8ec;border-radius:9px;background:#fffdfd}.sales-part-name{color:#51434c;font-size:10px;font-weight:750}.sales-part-time{min-width:0;color:#70636d;font-size:9px;overflow-wrap:anywhere}.sales-badge{display:inline-flex;align-items:center;justify-content:center;min-height:24px;padding:4px 8px;border:1px solid transparent;border-radius:999px;font-size:9px;font-weight:800;white-space:nowrap}.sales-badge-available{border-color:#edc4d4;background:#ffe8f0;color:#7c2d50}.sales-badge-remaining_few{border-color:#f0c9ae;background:#ffede2;color:#78401d}.sales-badge-sold_out{border-color:#e5d7dd;background:#f3edf0;color:#69545f}.sales-badge-unknown{border-color:#ddd5eb;background:#f1edfa;color:#55466a}.sales-member-load-more{width:100%;margin-top:8px}.sales-empty{padding:26px 18px;border:1px dashed #e8cbd8;border-radius:16px;background:#fffafd;color:#655761;font-size:12px;line-height:1.6;text-align:center}.sales-more-parts{min-height:36px;border:0;background:transparent;color:#8a3658;font-size:10px;font-weight:800}
@keyframes soft-reveal{from{opacity:.55;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}

@media(min-width:1001px){.sales-filter-panel{grid-row:7 / span 4}}
@media(min-width:768px) and (max-width:1000px){.wrap{padding-right:24px;padding-left:24px}.sales-view{grid-template-columns:minmax(0,1fr);grid-template-areas:"hero" "catalog" "notice" "round" "summary" "updated" "tools" "chips" "heading" "filters" "results"}.sales-filter-panel{position:static}.sales-filter-fields{grid-template-columns:repeat(3,minmax(0,1fr))}.sales-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.sales-date-summary{grid-template-columns:minmax(160px,1fr) minmax(250px,auto) 18px}}
@media(max-width:900px){.wrap{width:100%;padding-left:22px;padding-right:22px}.app-tabs{margin-bottom:22px}.history-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.statistics-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.statistics-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){
 .wrap{padding:17px 15px calc(104px + env(safe-area-inset-bottom,0px))}header{margin-bottom:22px;padding-bottom:14px}.brand{font-size:19px}.brand-mark{font-size:21px}.privacy{font-size:10px}.records-app h1{font-size:27px}.welcome-heading{margin-bottom:15px}.welcome-sparkle{width:45px;height:45px;border-radius:16px;font-size:27px}
 .app-tabs{position:fixed;inset:auto 0 0;z-index:20;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:2px;margin:0;padding:7px 5px max(8px,env(safe-area-inset-bottom,0px));border:0;border-top:1px solid #ead8e2;border-radius:16px 16px 0 0;background:#fffdfdf5;box-shadow:0 -7px 24px #70435812}
 .app-tab{display:flex;flex-direction:column;gap:3px;min-width:0;min-height:54px;padding:5px 1px;border-radius:12px;color:#685964;font-size:9px;line-height:1.2;white-space:nowrap}.app-tab-icon{display:block;width:19px;height:19px}.app-tab[aria-selected="true"]{background:#ffe6ef;color:#87334f;box-shadow:none}
 .panel-heading{margin-bottom:12px}.panel-heading h2{font-size:19px}.ticket-card{padding:12px;border-radius:14px}.ticket-card-header{align-items:flex-start}.ticket-card-title{font-size:13px}.ticket-card-count{font-size:11px}.ticket-badges{gap:4px}.ticket-badge{font-size:9px}.ticket-editor{grid-template-columns:repeat(2,minmax(0,1fr))}.ticket-actions>*{flex:1 1 135px}.history-filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:11px}.history-filters .filter-field:first-child{grid-column:1/-1}.ticket-metadata{grid-template-columns:92px minmax(0,1fr)}.recycle-card{align-items:stretch;flex-direction:column}.recycle-card button{width:100%}
 .schedule-day-summary{padding:12px}.schedule-day-tickets{padding:0 9px 9px}.schedule-day-count{font-size:10px}.statistics-card{min-height:83px;padding:11px}.statistics-card-value{font-size:21px}.statistics-section{padding:13px}.statistics-chart-controls{width:100%}.statistics-chart-controls .filter-field{flex:1;min-width:120px}
 .sales-view{grid-template-columns:minmax(0,1fr);grid-template-areas:"hero" "catalog" "notice" "round" "summary" "updated" "filters" "chips" "tools" "heading" "results";gap:10px}.sales-hero{padding:17px 18px;border-radius:19px}.sales-hero::after{right:-8px;top:-35px;width:88px;height:88px}.sales-hero-heading h2{font-size:22px}.sales-hero-copy{max-width:34ch;font-size:11px}.sales-catalog-bar{align-items:end}.sales-catalog-bar .filter-field{flex:1;min-width:0}.sales-refresh-button{min-width:94px;padding:8px 10px;font-size:10px}.sales-summary{padding:12px}.sales-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.sales-summary-card{padding:9px 10px}.sales-summary-count{font-size:21px}.sales-summary-heading>span{font-size:9px}.sales-filter-panel{position:static}.sales-filter-summary{padding:12px 13px}.sales-filter-fields{grid-template-columns:repeat(2,minmax(0,1fr));padding-right:12px;padding-left:12px}.sales-filter-fields .filter-field:nth-child(3){grid-column:1/-1}.sales-quick-filters{padding:0 12px 12px}.sales-quick-filter{min-height:36px}.sales-tools{align-items:center;padding:8px 9px}.sales-tools>.filter-field{flex:1;min-width:120px;max-width:none}.sales-accordion-actions{gap:1px}.sales-text-button{padding:6px;font-size:9px}.sales-results-heading{font-size:10px}.sales-date-summary{grid-template-columns:minmax(0,1fr) 16px;gap:8px;padding:11px}.sales-date-main{grid-column:1/2}.sales-date-title{font-size:11px}.sales-date-metrics{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));justify-content:stretch;gap:6px 8px;padding-top:4px}.sales-metric-label{font-size:8px}.sales-metric strong{font-size:10px}.sales-date-content{padding:0 9px 10px}.sales-product-group{padding-top:9px}.sales-member-summary{grid-template-columns:minmax(0,1fr) 13px;padding:9px}.sales-member-identity{grid-column:1/2}.sales-member-counts{grid-column:1/2;justify-content:flex-start;gap:10px}.sales-member-summary>.sales-chevron{grid-column:2;grid-row:1/3}.sales-member-counts .sales-metric-label{display:inline}.sales-member-counts .sales-metric strong{font-size:9px}.sales-part-row{grid-template-columns:minmax(0,1fr) auto;gap:5px 8px;padding:8px}.sales-part-time{grid-column:1/2}.sales-part-row .sales-badge{grid-column:2;grid-row:1/3}.sales-badge{min-height:26px;font-size:9px}
 .data-section-summary{min-height:50px;padding:13px}.data-section-content{padding:0 13px 14px}.data-section{border-radius:15px}.data-actions>*{max-width:100%}.import-controls>*{flex:1}.import-preview-heading{align-items:flex-start}.legacy-tools{margin-top:26px}
}
@media(max-width:380px){.wrap{padding-right:12px;padding-left:12px}.brand-caption{font-size:10px;padding-left:8px}.privacy{gap:6px;font-size:9px}.app-tab{font-size:8px}.app-tab-icon{width:18px;height:18px}.sales-date-metrics{gap:5px 6px}.sales-filter-fields{gap:7px}.sales-summary-card{padding:8px}.sales-summary-count{font-size:19px}.sales-tools{gap:5px}.sales-text-button{font-size:8px}.schedule-day-count{white-space:normal;text-align:right}.statistics-card-label{font-size:10px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* Keep active tab and every sales status label readable against pastel surfaces. */
.app-tab[aria-selected="true"]{border:1px solid #e8b0c4;background:linear-gradient(135deg,#ffe6ef,#fbd8e5);color:#79304d;box-shadow:0 4px 12px #c65c8314}
.sales-member-counts .sales-metric-label{display:inline;font-size:8px}
.sales-member-counts .sales-metric strong{font-size:10px}
@media(max-width:767px){.sales-member-counts .sales-metric strong{font-size:9px}}
.sales-member-counts{display:block;color:#62535d;font-size:9px;line-height:1.5;text-align:right}
@media(max-width:767px){.sales-member-counts{text-align:left;font-size:8px}}
@media(max-width:767px){
 .records-app[data-active-tab="sales"]>.welcome-heading{display:none}
 .sales-summary-grid{grid-template-columns:repeat(4,minmax(60px,1fr));gap:5px;overflow-x:auto;padding-bottom:3px;overscroll-behavior-inline:contain;scrollbar-width:thin}
 .sales-summary-card{padding:7px 5px;gap:4px}.sales-summary-label{font-size:8px;white-space:nowrap}.sales-summary-count{font-size:16px}.sales-summary-suffix{font-size:8px}
}
@media(max-width:767px){
 .records-app[data-active-tab="sales"]>.app-message{display:none}
 .sales-hero{padding:12px 15px}
 .sales-tools>.filter-field{display:block;min-width:0}
 .sales-tools>.filter-field>span{display:none}
}
.sales-more-members{display:block;width:100%;min-height:38px;margin-top:9px;border:1px dashed #e8bdcf;border-radius:10px;background:#fff8fb;color:#79304d;font-size:10px;font-weight:800}
.sales-more-members:hover{border-style:solid;background:#fff0f5}

/* V2.1: compact desktop workspace and native-feeling touch navigation. */
.wrap{width:min(100%,1600px);max-width:1600px;padding:22px 30px 42px}
header{margin-bottom:20px;padding-bottom:15px}
.brand{font-size:20px}.brand-caption{display:none}
.app-layout{display:grid;grid-template-columns:202px minmax(0,1fr);align-items:start;gap:24px}
.records-app{min-width:0;margin:0}
.app-message{min-height:18px;margin-bottom:10px}
.app-tabs{position:sticky;top:20px;display:grid;grid-template-columns:1fr;gap:4px;margin:0;padding:8px;border:1px solid #f0e1e8;border-radius:19px;background:#fffdfde8;box-shadow:var(--shadow-soft)}
.app-tab{justify-content:flex-start;min-height:44px;flex:initial;padding:0 12px;border:1px solid transparent;border-radius:12px;color:#655762;font-size:12px;text-align:left}
.app-tab-icon{display:block;flex:none;width:18px;height:18px}
.app-tab[aria-selected="true"]{border-color:#f0c3d3;background:linear-gradient(135deg,#ffe9f1,#fff1f6);color:#79304d;box-shadow:none}
.app-tab-add:not([aria-selected="true"]){color:#9c3e64}
.panel-heading{margin-bottom:11px}.panel-heading h2{font-size:20px;letter-spacing:-.35px}.panel-heading p{margin-top:3px;font-size:11px}
#schedule-list .page-summary{margin-bottom:10px;font-size:11px}
.schedule-days{gap:9px}.schedule-day{border-radius:15px}.schedule-day-summary{padding:11px 14px}.schedule-day-title strong{font-size:13px}.schedule-day-tickets{padding:0 10px 10px}.schedule-day-tickets .ticket-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
.ticket-card{padding:11px 12px;border-radius:13px}.ticket-card-title{font-size:12px}.ticket-card-count{font-size:11px}.ticket-badges{margin:5px 0}.ticket-badge{min-height:20px;padding:2px 7px;font-size:9px}
.history-filters{grid-template-columns:minmax(180px,2fr) repeat(4,minmax(105px,1fr));gap:8px;margin-bottom:11px;padding:11px;border-radius:15px}
.history-date-list-root{display:grid;gap:9px}.history-date-group{overflow:hidden;border:1px solid #eedce6;border-radius:14px;background:#fffdfd;box-shadow:var(--shadow-soft)}
.history-date-summary{display:grid;grid-template-columns:minmax(0,1fr) auto 16px;align-items:center;gap:10px;padding:10px 13px;cursor:pointer;list-style:none}.history-date-summary::-webkit-details-marker{display:none}.history-date-summary>strong{font-size:13px}.history-date-summary>span:nth-child(2){color:#665762;font-size:10px;text-align:right}.history-date-chevron{color:#87334f;transition:transform .16s}.history-date-group[open] .history-date-chevron{transform:rotate(180deg)}
.history-date-list{gap:0;padding:0 10px 8px}.history-ticket-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:0 12px;padding:8px 3px;border:0;border-top:1px solid #f2e8ed;border-radius:0;background:transparent;box-shadow:none}.history-ticket-card .ticket-card-header{grid-column:1;grid-row:1}.history-ticket-card .ticket-card-title{font-size:11px}.history-ticket-card .ticket-card-count{font-size:10px}.history-ticket-card .ticket-badges,.history-ticket-card>p.small{display:none}.history-ticket-card .ticket-details{grid-column:2;grid-row:1;margin:0;padding:0;border:0}.history-ticket-card .ticket-details>summary{padding:4px;font-size:9px;white-space:nowrap}.history-ticket-card .ticket-metadata,.history-ticket-card .ticket-editor{grid-column:1/-1}.history-ticket-card.application-history-card .ticket-card-header{grid-column:1}.history-ticket-card.application-history-card .ticket-details{grid-column:2}.history-ticket-card.application-history-card .ticket-card-count{color:#6f5967}
.statistics-primary-filters{display:grid;grid-template-columns:minmax(150px,1.5fr) repeat(2,minmax(145px,1fr));align-items:end;gap:8px}
.statistics-filters{display:grid;gap:10px;padding:11px;border-radius:15px}.statistics-advanced-filters{border-top:1px solid #f1e5eb;padding-top:8px}.statistics-advanced-filters>summary,.statistics-advanced-results>summary{color:#803752;font-size:11px;font-weight:800;cursor:pointer;list-style:none}.statistics-advanced-filters>summary::-webkit-details-marker,.statistics-advanced-results>summary::-webkit-details-marker{display:none}.statistics-advanced-filters>summary::before,.statistics-advanced-results>summary::before{content:"＋";display:inline-block;margin-right:6px;color:#a2466c}.statistics-advanced-filters[open]>summary::before,.statistics-advanced-results[open]>summary::before{content:"－"}.statistics-advanced-fields{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:9px}
.statistics-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:10px 0}.statistics-card{min-height:72px;padding:10px 12px;border:1px solid #f1dfe8;border-radius:14px;background:linear-gradient(145deg,#fff,#fff7fa)}.statistics-card-label{font-size:10px}.statistics-card-value{margin-top:3px;font-size:22px}.statistics-card-hint{font-size:9px}
.statistics-section{margin-top:10px;padding:13px;border-radius:15px;box-shadow:var(--shadow-soft)}.statistics-section-heading{align-items:center;margin-bottom:9px}.statistics-section-title{font-size:14px}.statistics-section-note{color:#71636d;font-size:10px}.statistics-ranking-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 15px;margin:0;padding:0;list-style:none}.statistics-rank-row{display:grid;grid-template-columns:24px minmax(0,1fr) auto 52px;align-items:center;gap:7px;min-width:0;padding:6px 2px;border-bottom:1px solid #f4eaf0}.statistics-rank-number{color:#997384;font-size:10px;font-weight:800;text-align:center}.statistics-rank-main{display:grid;grid-template-columns:minmax(0,1fr);gap:4px;min-width:0}.statistics-member-button{justify-self:start;max-width:100%;overflow:hidden;padding:0;border:0;background:transparent;color:#593747;font-size:11px;font-weight:750;text-align:left;text-overflow:ellipsis;white-space:nowrap}.statistics-member-button:hover{text-decoration:underline}.statistics-rank-count{color:#7e3451;font-size:11px;font-variant-numeric:tabular-nums;white-space:nowrap}.statistics-rank-bar{display:block;height:4px;overflow:hidden;border-radius:99px;background:#f7eaf0}.statistics-rank-bar-fill{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#f3a7c1,#cf6a93)}
.statistics-compare-choice{display:flex;align-items:center;justify-content:flex-end;gap:4px;color:#6a5964;font-size:9px;white-space:nowrap}.statistics-compare-choice input{width:14px;height:14px;accent-color:#ae4b73}.statistics-member-detail{margin-top:10px;border-top:1px solid #f1e5eb;padding-top:8px}.statistics-member-detail>summary{color:#79304d;font-size:11px;font-weight:800;cursor:pointer}.statistics-session-list{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:8px}.statistics-session-list li{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:5px 8px;padding:7px 9px;font-size:10px}.statistics-session-list li span{text-align:right}
.statistics-chart-section .statistics-section-heading>.filter-field{min-width:150px}.statistics-chart-svg{display:block;width:100%;height:auto;max-height:300px;overflow:visible}.statistics-chart-line{fill:none;stroke-width:2.5}.statistics-line-rose{stroke:#c9507b}.statistics-line-plum{stroke:#80639e}.statistics-line-peach{stroke:#ce795d}.statistics-line-berry{stroke:#a64e82}.statistics-line-lilac{stroke:#8c88bd}.statistics-line-coral{stroke:#d26d68}.statistics-chart-point{fill:#fff;stroke-width:2;cursor:pointer}.statistics-point-rose{stroke:#c9507b}.statistics-point-plum{stroke:#80639e}.statistics-point-peach{stroke:#ce795d}.statistics-point-berry{stroke:#a64e82}.statistics-point-lilac{stroke:#8c88bd}.statistics-point-coral{stroke:#d26d68}.statistics-chart-point:focus{r:6;outline:none}.statistics-chart-legend{display:flex;flex-wrap:wrap;gap:6px 12px;margin-top:5px}.statistics-legend-item{display:flex;align-items:center;gap:5px;color:#655762;font-size:10px}.statistics-legend-swatch{width:14px;height:3px;border-radius:99px;background:#c9507b}.statistics-legend-plum .statistics-legend-swatch{background:#80639e}.statistics-legend-peach .statistics-legend-swatch{background:#ce795d}.statistics-legend-berry .statistics-legend-swatch{background:#a64e82}.statistics-legend-lilac .statistics-legend-swatch{background:#8c88bd}.statistics-legend-coral .statistics-legend-swatch{background:#d26d68}.statistics-chart-readout{min-height:18px;margin:7px 0 0;color:#665762;font-size:10px}.statistics-month-table{width:100%}.statistics-month-table th,.statistics-month-table td{padding:7px 9px;font-size:10px}.statistics-advanced-results{margin-top:9px;padding:10px 12px;border:1px solid #f0e2e9;border-radius:12px;background:#fffafd}.statistics-advanced-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 12px;margin-top:8px}.statistics-advanced-grid p{margin:0;color:#665762;font-size:10px;line-height:1.55}
.statistics-empty,.sales-member-search-empty{color:#6e606b;font-size:11px}
.import-one-step{max-width:900px;gap:11px;padding:16px;border:1px solid #efdce6;border-radius:18px;background:#fffdfde8;box-shadow:var(--shadow-soft)}.import-textarea{min-height:240px;padding:14px;border-color:#ead6e1;border-radius:14px;background:#fffafd;color:#443540;font-size:12px;line-height:1.65}.import-submit{justify-self:start;min-width:150px;min-height:46px;padding:10px 20px;border-radius:999px}.import-status{min-height:20px;color:#5e515b;font-size:12px}.import-partial-warning[hidden]{display:none}.import-partial-warning{border:1px solid #efd8b3;background:#fff8eb;color:#765320}.backup-import-view{padding:12px;border:1px solid #f0e2e9;border-radius:13px;background:#fffdfd}.data-section{padding:0;overflow:hidden;border-color:#eddee6;border-radius:15px;background:#fffdfd}.data-section-summary{display:flex;align-items:center;justify-content:space-between;min-height:50px;padding:13px 15px;color:#503d49;font-size:12px;font-weight:800;cursor:pointer;list-style:none}.data-section-summary::-webkit-details-marker{display:none}.data-section-chevron{color:#8a3658;transition:transform .16s}.data-section[open]>.data-section-summary .data-section-chevron{transform:rotate(180deg)}.data-section-content{padding:0 15px 15px}.data-section .data-section{margin-top:9px;border-radius:12px}.source-link-card{border-radius:12px;background:#fff9f3}.source-link-description{color:#594d55}

.sales-view{grid-template-columns:minmax(240px,280px) minmax(0,1fr);grid-template-areas:"hero hero" "catalog catalog" "notice notice" "round round" "summary summary" "updated updated" "filters chips" "filters tools" "filters heading" "filters results";align-items:start;gap:10px 18px}
.sales-hero{grid-area:hero;min-height:auto;padding:16px 19px;border:1px solid #f2d7e2;border-radius:18px;background:linear-gradient(115deg,#fffefd 0%,#fff0f5 68%,#f5efff 100%);box-shadow:var(--shadow-soft)}.sales-hero::after{width:94px;height:94px;opacity:.45}.sales-hero-heading h2{font-size:21px}.sales-hero-copy{font-size:11px}.sales-catalog-bar{grid-area:catalog;display:flex;align-items:end;gap:9px}.sales-catalog-bar>.filter-field{flex:1;max-width:400px}.sales-refresh-button{grid-area:refresh;min-height:41px;padding:8px 13px;border:1px solid #e9d6e1;border-radius:12px;background:#fff;color:#704653;font-size:11px;font-weight:800}.sales-status-message{grid-area:notice;min-height:0;padding:8px 11px;border:1px solid #f0e2e9;border-radius:11px;color:#5f515a;font-size:10px}.sales-round{grid-area:round;font-size:10px}.sales-summary{grid-area:summary;padding:10px 12px;border:1px solid #efdee6;border-radius:15px;background:#fffdfd;box-shadow:var(--shadow-soft)}.sales-summary-heading{margin-bottom:7px}.sales-summary-heading h3{font-size:12px}.sales-summary-heading>span{font-size:9px}.sales-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.sales-summary-card{grid-template-columns:1fr auto;align-items:center;gap:7px;padding:7px 10px;border-radius:11px}.sales-summary-label{font-size:10px}.sales-summary-count{font-size:18px}.sales-summary-suffix{font-size:9px}.sales-last-updated{grid-area:updated;font-size:10px}
.sales-filter-panel{grid-area:filters;position:sticky;top:16px;overflow:visible;border:1px solid #efdee6;border-radius:15px;background:#fffdfd;box-shadow:var(--shadow-soft)}.sales-filter-summary{padding:11px 12px;font-size:11px}.sales-filter-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding:0 11px 10px}.sales-filter-fields .filter-field{font-size:9px}.sales-view input,.sales-view select{min-height:38px;padding:6px 8px;font-size:10px}.sales-member-picker{display:grid;gap:7px;padding:9px 11px;border-top:1px solid #f1e5eb}.sales-member-picker-heading{display:grid;gap:7px}.sales-member-picker-heading strong{color:#594752;font-size:10px}.sales-member-picker-actions{display:flex;flex-wrap:wrap;gap:4px}.sales-picker-button{min-height:29px;padding:5px 8px;border:1px solid #efd7e1;border-radius:999px;background:#fff5f9;color:#79304d;font-size:9px;font-weight:750}.sales-picker-restore{background:#f4effb;border-color:#ded4ef;color:#55466a}.sales-member-picker>input{min-height:34px}.sales-member-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px;max-height:205px;overflow:auto;overscroll-behavior:contain}.sales-member-option{display:flex;align-items:center;gap:6px;min-width:0;padding:5px 4px;border-radius:7px;color:#51454d;font-size:10px}.sales-member-option:hover{background:#fff2f7}.sales-member-option input{flex:none;width:15px;height:15px;min-height:15px;margin:0;accent-color:#b44770}.sales-member-option span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sales-quick-filters{padding:0 11px 11px}.sales-quick-filter{min-height:30px;padding:5px 8px;font-size:9px}.sales-filter-chips{grid-area:chips;min-height:26px}.sales-filter-chip{min-height:27px;padding:4px 8px;font-size:9px}.sales-clear-all,.sales-text-button{min-height:28px;padding:4px 7px;font-size:9px}.sales-tools{grid-area:tools;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 9px;border:1px solid #efdee6;border-radius:12px;background:#fffdfd}.sales-tools>.filter-field{display:flex;align-items:center;gap:7px;min-width:0;max-width:290px;color:#655762;font-size:10px}.sales-tools>.filter-field select{min-height:34px}.sales-accordion-actions{display:flex;gap:3px;flex-wrap:wrap;justify-content:flex-end}.sales-results-heading{grid-area:heading;font-size:10px}.sales-results{grid-area:results;display:grid;grid-template-columns:1fr;gap:7px}.sales-date-accordion{overflow:hidden;border:1px solid #eddae4;border-radius:14px;background:#fffdfd;box-shadow:var(--shadow-soft)}.sales-date-summary{display:grid;grid-template-columns:minmax(150px,1fr) minmax(260px,auto) 15px;gap:10px;padding:10px 12px}.sales-date-summary::-webkit-details-marker{display:none}.sales-date-title{font-size:11px}.sales-date-metrics{display:flex;justify-content:flex-end;gap:7px;flex-wrap:wrap}.sales-metric-label{font-size:8px}.sales-metric strong{font-size:9px}.sales-chevron{color:#87334f;transition:transform .16s}.sales-date-accordion[open]>.sales-date-summary .sales-chevron,.sales-member-accordion[open]>.sales-member-summary .sales-chevron{transform:rotate(180deg)}.sales-date-content{padding:0 10px 10px;border-top:1px solid #f1e5eb}.sales-member-list{display:grid;gap:5px;padding-top:8px}.sales-member-accordion{overflow:hidden;border:1px solid #f1e4eb;border-radius:11px;background:#fff}.sales-member-summary{grid-template-columns:minmax(120px,.8fr) minmax(240px,1fr) 12px;gap:8px;padding:8px 10px}.sales-member-name{font-size:11px}.sales-member-total{font-size:9px}.sales-member-counts{display:flex;justify-content:flex-end;gap:7px;flex-wrap:wrap;font-size:8px}.sales-member-counts .sales-metric-label{display:inline;font-size:8px}.sales-member-counts .sales-metric strong{font-size:9px}.sales-member-content{padding:0 9px 9px;border-top:1px solid #f2e9ed}.sales-distribution{height:4px;margin:0 10px 2px}.sales-part-list{display:grid;gap:4px;padding-top:7px}.sales-part-row{display:grid;grid-template-columns:70px minmax(0,1fr) auto;align-items:center;gap:7px;padding:6px 8px;border:1px solid #f0e8ec;border-radius:9px;background:#fffdfd}.sales-part-name{font-size:10px}.sales-part-products{display:flex;flex-wrap:wrap;gap:5px}.sales-product-status{display:inline-flex;align-items:center;gap:5px;min-width:0;padding:2px 5px;border-radius:8px;background:#fff7fa}.sales-product-name{color:#594650;font-size:9px;overflow-wrap:anywhere}.sales-product-status .sales-badge{min-height:22px;padding:3px 7px;font-size:8px}.sales-part-time{grid-column:2/-1;color:#70636d;font-size:8px}.sales-more-parts{min-height:34px;border:0;background:transparent;color:#803752;font-size:10px;font-weight:800}.sales-more-members{min-height:34px;margin-top:7px;border:1px dashed #e8bdcf;border-radius:10px;background:#fff8fb;color:#79304d;font-size:10px;font-weight:800}.sales-empty{padding:22px 15px;border:1px dashed #e7cbd8;border-radius:14px;background:#fffafd;color:#655761;font-size:11px;line-height:1.6;text-align:center}

@media(min-width:768px) and (max-width:1050px){.wrap{padding:18px 19px 36px}.app-layout{grid-template-columns:170px minmax(0,1fr);gap:16px}.app-tabs{top:14px;padding:6px}.app-tab{min-height:42px;padding:0 9px;font-size:11px}.history-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.sales-view{grid-template-columns:minmax(0,1fr);grid-template-areas:"hero" "catalog" "notice" "round" "summary" "updated" "tools" "chips" "heading" "filters" "results"}.sales-filter-panel{position:static}.sales-filter-fields{grid-template-columns:repeat(4,minmax(0,1fr))}.sales-member-picker-heading{grid-template-columns:1fr auto;align-items:center}.sales-member-summary{grid-template-columns:minmax(120px,.7fr) minmax(260px,1fr) 12px}}
@media(max-width:767px){
 .wrap{width:100%;padding:13px 14px calc(93px + env(safe-area-inset-bottom,0px))}
 header{margin-bottom:13px;padding-bottom:11px}.brand{font-size:18px}.brand-mark{font-size:20px}.privacy{font-size:10px}
 .app-layout{display:block}.records-app{padding-bottom:10px}.app-message{min-height:16px;margin-bottom:8px;font-size:10px}
 .app-tabs{position:fixed;inset:auto 0 0;z-index:30;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:2px;margin:0;padding:6px 4px max(6px,env(safe-area-inset-bottom,0px));border:0;border-top:1px solid #ead8e2;border-radius:15px 15px 0 0;background:#fffdfdf7;box-shadow:0 -7px 24px #70435815;backdrop-filter:blur(12px)}
 .app-tab{display:flex;flex-direction:column;justify-content:center;gap:3px;min-width:0;min-height:53px;padding:4px 0;border:1px solid transparent;border-radius:11px;color:#61535d;font-size:8px;line-height:1.15;white-space:normal;text-align:center}.app-tab-icon{width:18px;height:18px}.app-tab[aria-selected="true"]{border-color:#efc3d3;background:#ffe9f1;color:#79304d;box-shadow:none}.app-tab-add:not([aria-selected="true"]){background:#f47da7;color:#fff}.app-tab-add[aria-selected="true"]{background:linear-gradient(135deg,#df6f98,#b44770);color:#fff;border-color:#b44770}
 .panel-heading{margin-bottom:9px}.panel-heading h2{font-size:18px}.panel-heading p{font-size:10px}
 .schedule-days{gap:8px}.schedule-day-summary{padding:10px}.schedule-day-tickets .ticket-list{grid-template-columns:1fr;gap:6px}.ticket-card{padding:10px;border-radius:12px}.ticket-card-title{font-size:11px}.ticket-card-count{font-size:10px}.ticket-badge{font-size:8px}.ticket-editor{grid-template-columns:repeat(2,minmax(0,1fr))}.ticket-actions>*{flex:1 1 125px}
 .history-filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding:9px}.history-filters .filter-field:first-child{grid-column:1/-1}.history-date-summary{grid-template-columns:minmax(0,1fr) auto 12px;gap:6px;padding:9px}.history-date-summary>strong{font-size:11px}.history-date-summary>span:nth-child(2){font-size:8px}.history-date-list{padding:0 8px 7px}.history-ticket-card{grid-template-columns:minmax(0,1fr) auto;gap:0 5px;padding:7px 1px}.history-ticket-card .ticket-card-title{font-size:10px}.history-ticket-card .ticket-card-count{font-size:9px}.history-ticket-card .ticket-details>summary{max-width:52px;overflow:hidden;font-size:8px;text-overflow:ellipsis}
 .statistics-primary-filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.statistics-primary-filters .filter-field:first-child{grid-column:1/-1}.statistics-advanced-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.statistics-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.statistics-card{min-height:67px;padding:9px 10px}.statistics-card-label{font-size:9px}.statistics-card-value{font-size:19px}.statistics-card-hint{font-size:8px}.statistics-ranking-list{grid-template-columns:1fr;gap:1px}.statistics-rank-row{grid-template-columns:22px minmax(0,1fr) auto 48px;gap:6px;padding:7px 0}.statistics-member-button{font-size:10px}.statistics-rank-count{font-size:10px}.statistics-compare-choice{font-size:8px}.statistics-compare-choice input{width:16px;height:16px}.statistics-section{padding:10px}.statistics-section-note{font-size:8px}.statistics-session-list{grid-template-columns:1fr}.statistics-chart-section .statistics-section-heading>.filter-field{min-width:120px}.statistics-chart-svg{min-height:225px}.statistics-month-table th,.statistics-month-table td{padding:7px 8px;font-size:9px}.statistics-advanced-grid{grid-template-columns:1fr}
 .import-one-step{gap:9px;padding:11px;border-radius:15px}.import-textarea{min-height:220px;padding:11px;border-radius:12px;font-size:11px}.import-submit{width:100%;min-height:47px}.import-status,.import-warning{font-size:10px}
 .data-section-summary{min-height:47px;padding:11px 12px;font-size:11px}.data-section-content{padding:0 12px 12px}.data-section{border-radius:13px}.data-actions>*{max-width:100%}.backup-import-view{padding:9px}
 .sales-view{grid-template-columns:minmax(0,1fr);grid-template-areas:"hero" "catalog" "notice" "round" "summary" "updated" "filters" "chips" "tools" "heading" "results";gap:8px}.sales-hero{padding:12px 14px;border-radius:16px}.sales-hero::after{right:-10px;top:-34px;width:80px;height:80px}.sales-hero-heading h2{font-size:18px}.sales-hero-copy{max-width:35ch;font-size:9px}.sales-catalog-bar{gap:7px}.sales-catalog-bar .filter-field{flex:1;min-width:0}.sales-catalog-bar .filter-field>span{font-size:9px}.sales-refresh-button{min-height:38px;padding:6px 9px;font-size:9px}.sales-summary{padding:8px}.sales-summary-heading{align-items:baseline;gap:5px;margin-bottom:6px}.sales-summary-heading h3{font-size:10px}.sales-summary-heading>span{font-size:7px}.sales-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;overflow:visible}.sales-summary-card{display:grid;grid-template-columns:1fr;justify-items:center;gap:3px;padding:6px 3px;border-radius:9px}.sales-summary-label{font-size:7px;white-space:nowrap}.sales-summary-count{font-size:14px}.sales-summary-suffix{font-size:7px}.sales-status-message{font-size:9px}.sales-last-updated,.sales-round{font-size:9px}.sales-filter-panel{position:static}.sales-filter-fields{grid-template-columns:repeat(2,minmax(0,1fr));padding:0 9px 8px}.sales-member-picker{padding:8px 9px}.sales-member-picker-heading{gap:6px}.sales-member-picker-actions{gap:3px}.sales-picker-button{min-height:29px;padding:5px 7px;font-size:8px}.sales-member-options{grid-template-columns:repeat(2,minmax(0,1fr));max-height:185px}.sales-member-option{font-size:9px}.sales-quick-filters{gap:4px;padding:0 9px 9px}.sales-quick-filter{flex:1 1 auto;min-height:31px;padding:5px 6px;font-size:8px}.sales-filter-chip{font-size:8px}.sales-tools{align-items:center;flex-wrap:wrap;padding:6px 7px}.sales-tools>.filter-field{flex:1;min-width:130px;max-width:none}.sales-tools>.filter-field>span{display:block;font-size:9px}.sales-tools>.filter-field select{min-height:34px}.sales-accordion-actions{gap:2px}.sales-text-button{padding:5px 6px;font-size:8px}.sales-results-heading{font-size:9px}.sales-date-summary{grid-template-columns:minmax(0,1fr) 13px;gap:5px;padding:9px}.sales-date-main{grid-column:1/-1}.sales-date-title{font-size:10px}.sales-date-metrics{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));justify-content:stretch;gap:5px 4px;padding-top:2px}.sales-metric-label{font-size:7px}.sales-metric strong{font-size:8px}.sales-date-summary>.sales-chevron{grid-column:2;grid-row:1}.sales-date-content{padding:0 7px 8px}.sales-member-summary{grid-template-columns:minmax(0,1fr) 12px;gap:4px 7px;padding:8px}.sales-member-identity{grid-column:1/2}.sales-member-counts{grid-column:1/2;justify-content:flex-start;gap:5px;flex-wrap:wrap;text-align:left}.sales-member-counts .sales-metric{gap:2px}.sales-member-counts .sales-metric-label{display:inline;font-size:7px}.sales-member-counts .sales-metric strong{font-size:8px}.sales-member-summary>.sales-chevron{grid-column:2;grid-row:1/3}.sales-member-content{padding:0 7px 7px}.sales-distribution{margin-right:8px;margin-left:8px}.sales-part-row{grid-template-columns:54px minmax(0,1fr);gap:5px;padding:6px}.sales-part-name{font-size:9px}.sales-product-status{gap:3px;padding:2px 3px}.sales-product-name{font-size:8px}.sales-product-status .sales-badge{min-height:20px;padding:2px 5px;font-size:7px}.sales-part-time{grid-column:1/-1}.sales-empty{padding:18px 11px;font-size:10px}
}
@media(max-width:360px){.wrap{padding-right:10px;padding-left:10px}.app-tab{font-size:7px}.app-tab-icon{width:17px;height:17px}.sales-summary-label{font-size:6px}.sales-summary-count{font-size:13px}.sales-date-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.statistics-rank-row{grid-template-columns:19px minmax(0,1fr) auto 42px;gap:4px}.sales-picker-button{font-size:7px}.sales-tools>.filter-field{min-width:110px}}
@media(max-width:767px){.app-tabs{left:0;right:auto;width:100vw} @supports(width:100dvw){.app-tabs{width:100dvw}}}

/* V2.1 owner corrections: compact cards, calm comparison controls and shared chevrons. */
.history-date-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:8px 11px 12px}
.history-ticket-card{display:block;padding:12px;border:1px solid #efdce5;border-radius:14px;background:linear-gradient(135deg,#fff,#fff9fc);box-shadow:0 2px 8px #70435808;min-width:0}
.history-ticket-card .ticket-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
.history-ticket-card .ticket-card-title{font-size:13px;line-height:1.5}
.history-ticket-card .ticket-card-count{font-size:12px;white-space:nowrap}
.ticket-card-date{margin:5px 0 8px;color:#85717e;font-size:11px;line-height:1.5}
.history-ticket-card .ticket-badges{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:8px}
.history-ticket-card .ticket-details{margin:8px 0 0;padding:7px 0 0;border-top:1px solid #f3e6ed}
.history-ticket-card .ticket-details>summary{max-width:none;padding:3px 0;font-size:11px;overflow:visible;text-overflow:clip;white-space:normal;color:#8b4e69}
.ticket-state-badge{background:#fce6ef;color:#943d63}
.statistics-compare-choice{display:flex;align-items:center;justify-content:flex-end;gap:7px;font-size:11px;white-space:nowrap;cursor:pointer}
.statistics-compare-choice input,.sales-member-option input{appearance:none;width:18px;height:18px;min-height:18px;border:1px solid #dcb7c8;border-radius:6px;background:#fff;cursor:pointer;flex:none;display:grid;place-content:center;padding:0}
.statistics-compare-choice input:checked,.sales-member-option input:checked{background:#b64f78;border-color:#b64f78}
.statistics-compare-choice input:checked:after,.sales-member-option input:checked:after{content:'';width:7px;height:4px;border:solid white;border-width:0 0 2px 2px;transform:translateY(-1px) rotate(-45deg)}
.statistics-rank-row{grid-template-columns:24px minmax(0,1fr) auto 86px;padding:9px 5px;gap:9px}
.statistics-ranking-list{gap:3px 16px}
.statistics-chart-svg{background:linear-gradient(180deg,#fffcfe,#fff);border-radius:12px;min-height:260px}
.statistics-chart-line{stroke-width:2.25;stroke-linejoin:round;stroke-linecap:round;fill:none}
.statistics-chart-point{stroke:#fff;stroke-width:1.8;cursor:crosshair;transition:r .12s}
.statistics-chart-point:hover,.statistics-chart-point:focus{r:5;stroke-width:2;outline:none}
.statistics-grid-line{stroke:#efe6ed;stroke-dasharray:3 5;stroke-width:1}
.statistics-axis-line{stroke:#dbcbd4;stroke-width:1}
.statistics-axis-label{font-size:10px;fill:#8c7a86;font-weight:500}
.statistics-chart-readout{min-height:34px;margin:8px 0 0;padding:8px 10px;border-radius:9px;background:#fff5fa;color:#805169;font-size:11px}
.statistics-chart-legend{display:flex;flex-wrap:wrap;gap:8px 16px;padding:5px 8px}
.statistics-legend-swatch{width:16px;height:3px;border-radius:2px}
.statistics-line-teal{stroke:#468d8a}.statistics-point-teal{fill:#468d8a}.statistics-legend-teal .statistics-legend-swatch{background:#468d8a}
.statistics-line-blue{stroke:#678eb3}.statistics-point-blue{fill:#678eb3}.statistics-legend-blue .statistics-legend-swatch{background:#678eb3}
.statistics-line-olive{stroke:#839356}.statistics-point-olive{fill:#839356}.statistics-legend-olive .statistics-legend-swatch{background:#839356}
.statistics-line-indigo{stroke:#686eaf}.statistics-point-indigo{fill:#686eaf}.statistics-legend-indigo .statistics-legend-swatch{background:#686eaf}
.statistics-line-cocoa{stroke:#a47d63}.statistics-point-cocoa{fill:#a47d63}.statistics-legend-cocoa .statistics-legend-swatch{background:#a47d63}
.statistics-line-slate{stroke:#707f96}.statistics-point-slate{fill:#707f96}.statistics-legend-slate .statistics-legend-swatch{background:#707f96}
.sales-chevron,.history-date-chevron,.schedule-chevron{font-size:0;display:inline-block;width:7px;height:7px;border:solid #ad6483;border-width:0 1.5px 1.5px 0;transform:rotate(45deg);justify-self:center;transition:transform .15s}
.sales-date-accordion[open]>.sales-date-summary .sales-chevron,.sales-member-accordion[open]>.sales-member-summary .sales-chevron,.history-date-group[open]>.history-date-summary .history-date-chevron,.schedule-day[open]>.schedule-day-summary .schedule-chevron{transform:rotate(225deg)}
.sales-tools{flex-wrap:wrap;gap:6px;background:transparent;border:0;padding:2px 0}
.sales-tools>.filter-field{flex:0 1 auto;max-width:180px;gap:5px}
.sales-tools>.filter-field select{min-height:32px;padding:4px 7px;font-size:11px}
.sales-accordion-actions{margin-left:auto}
.sales-date-summary{grid-template-columns:minmax(130px,1fr) auto 12px;padding:10px;gap:8px}
.sales-date-metrics{gap:5px 9px}
.sales-filter-summary{padding:9px 10px}
.sales-filter-fields{padding:0 9px 8px}
.sales-member-option{min-height:32px;font-size:11px}
.sales-view{grid-template-columns:230px minmax(0,1fr)}
@media(max-width:1050px){.sales-view{grid-template-columns:minmax(0,1fr)}}
@media(max-width:767px){
 .history-date-list{grid-template-columns:1fr;gap:8px;padding:8px}
 .history-ticket-card{padding:11px;border-radius:12px}.history-ticket-card .ticket-card-title{font-size:12px}.history-ticket-card .ticket-card-count{font-size:11px}
 .statistics-rank-row{grid-template-columns:20px minmax(0,1fr) auto 76px;gap:6px}.statistics-compare-choice{font-size:10px;gap:5px}
 .statistics-chart-svg{min-height:220px}.statistics-legend-item{font-size:10px}
 .sales-date-summary{grid-template-columns:minmax(0,1fr) 12px}.sales-date-metrics{display:flex;flex-wrap:wrap}.sales-tools>.filter-field{max-width:calc(50% - 5px);min-width:0;flex:1}
 .sales-tools>.filter-field>span{font-size:10px}.sales-accordion-actions{width:100%;justify-content:flex-end}.sales-member-options{max-height:190px}
}
.statistics-compare-choice input:disabled{opacity:.35;cursor:help}
.data-section-chevron{font-size:0;display:inline-block;width:7px;height:7px;border:solid #ad6483;border-width:0 1.5px 1.5px 0;transform:rotate(45deg)}
.data-section[open]>.data-section-summary .data-section-chevron{transform:rotate(225deg)}

/* Owner visual review: concise records and stable sales workspace. */
.legacy-tools[hidden]{display:none!important}
.schedule-day-summary{display:grid;grid-template-columns:minmax(0,1fr) auto 14px;align-items:center;gap:14px;min-height:76px;padding:12px 16px}
.schedule-day-title{display:grid;align-content:center;gap:3px;min-width:0}
.schedule-day-count{display:block;align-self:center;justify-self:end;white-space:nowrap;text-align:right;font-size:12px;line-height:1.4}
.schedule-day-summary .schedule-chevron{grid-column:3;align-self:center;justify-self:center}
.history-date-list-root{display:grid;gap:14px}
.history-date-group{border-radius:17px}
.history-date-summary{grid-template-columns:minmax(0,1fr) auto 14px;padding:12px 16px;gap:11px}
.history-date-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:10px 14px 14px}
.history-ticket-card,.history-ticket-card.application-history-card{display:flex;flex-direction:column;align-items:stretch;gap:3px;min-width:0;padding:13px 15px;border:1px solid #eedce5;border-radius:14px;background:#fffafd;box-shadow:0 3px 11px #70435807}
.history-ticket-card .ticket-card-header,.history-ticket-card.application-history-card .ticket-card-header{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0}
.history-ticket-card .ticket-card-title{min-width:0;color:#513d4b;font-size:13px;line-height:1.55;font-weight:750}
.history-ticket-card .ticket-card-count{flex:none;color:#983c60;font-size:13px;font-weight:800;white-space:nowrap}
.history-ticket-card .ticket-card-date{margin:1px 0 0;color:#85717e;font-size:11px;line-height:1.4}
.history-ticket-card .ticket-details{display:block;width:100%;margin:5px 0 0;padding:5px 0 0;border-top:1px solid #f3e7ed}
.history-ticket-card .ticket-details>summary{display:inline-flex;align-items:center;min-height:25px;max-width:none;padding:2px 3px;color:#8c4a69;font-size:10px;font-weight:700;white-space:nowrap}
.history-ticket-card .ticket-editor{margin-top:8px}
.history-ticket-card .ticket-badges,.history-ticket-card .ticket-metadata{display:none}
#history-panel .history-filters{align-items:end;gap:9px}
.statistics-advanced-filters{position:static;display:block;clear:both;min-width:0;align-self:start}
.statistics-advanced-filters>summary{display:inline-flex;align-items:center;position:static;min-height:30px;padding:5px 1px;line-height:1.4;white-space:nowrap}
.statistics-advanced-fields{clear:both}
.sales-view{display:grid;grid-template-columns:minmax(205px,220px) minmax(0,1fr);grid-template-areas:"hero hero" "catalog catalog" "notice notice" "round round" "updated updated" "summary summary" "filters workspace";grid-auto-rows:min-content;align-content:start;align-items:start;gap:10px 16px;min-width:0}
.sales-workspace{grid-area:workspace;display:flex;flex-direction:column;align-items:stretch;gap:10px;min-width:0;align-self:start}
.sales-filter-panel{grid-area:filters;align-self:start;position:sticky;top:16px;min-width:0}
.sales-summary{grid-area:summary;min-width:0}
.sales-summary[hidden],.sales-filter-chips[hidden]{display:none!important}
.sales-summary-title{margin:0 0 9px;color:#583e4e;font-size:12px}
.sales-selected-member-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:9px}
.sales-selected-member{display:flex;flex-direction:column;gap:8px;min-width:0;padding:11px 13px;border:1px solid #efdfeb;border-radius:12px;background:#fffafd}
.sales-selected-name{font-size:12px;color:#583e4e}
.sales-selected-counts{display:flex;flex-wrap:wrap;gap:6px}
.sales-part-count{display:inline-flex;align-items:baseline;gap:5px;border-radius:9px;padding:6px 9px;background:#f8f3f7;color:#685362;font-size:11px}
.sales-part-count small{font-size:9px}.sales-part-count strong{font-size:12px;font-variant-numeric:tabular-nums}
.sales-part-count-available{background:#f0f8f1;color:#366c4b}
.sales-part-count-remaining_few{background:#fff3e8;color:#84521c}
.sales-part-count-sold_out{background:#f5edf0;color:#735768}
.sales-part-count-mixed{background:#f1effb;color:#63517b}
.sales-filter-chips{display:flex;flex-wrap:wrap;gap:6px;min-height:0}
.sales-tools{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:9px;padding:9px 11px;min-width:0;border:1px solid #efdee6;border-radius:12px;background:#fffdfd}
.sales-tools>.filter-field{display:inline-flex;flex:0 1 auto;align-items:center;gap:7px;max-width:none;min-width:0;white-space:nowrap}
.sales-tools>.filter-field>span{white-space:nowrap;font-size:10px}
.sales-tools>.filter-field select{width:auto;min-width:110px;min-height:34px;font-size:11px}
.sales-accordion-actions{margin-left:auto;gap:3px}
.sales-results-heading{margin:0;min-height:0;font-size:10px}
.sales-results-heading:empty{display:none}
.sales-results{display:grid;grid-template-columns:minmax(0,1fr);gap:9px;min-width:0;align-content:start}
.sales-date-summary{grid-template-columns:minmax(0,1fr) auto 13px;align-items:center;gap:9px;padding:12px 14px}
.sales-date-title{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;overflow-wrap:normal;font-size:12px}
.sales-date-metrics{display:flex;justify-content:flex-end;gap:6px 11px;padding:0}
.sales-member-summary{grid-template-columns:minmax(0,1fr) minmax(0,auto) 13px;gap:8px}
.sales-member-counts{display:flex;justify-content:flex-end;gap:6px;text-align:right}
.sales-member-counts .sales-metric-label{display:inline}
.sales-member-options{grid-template-columns:minmax(0,1fr);max-height:270px}
.sales-member-picker-actions{gap:5px}
.sales-no-members{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:30px 16px}
.sales-no-members>strong{font-size:14px;color:#633c50}
.sales-no-members>p{margin:0}
.sales-no-members>button{min-height:36px;padding:7px 17px}
@media(max-width:1050px){
 .sales-view{grid-template-columns:minmax(0,1fr);grid-template-areas:"hero" "catalog" "notice" "round" "updated" "summary" "filters" "workspace"}
 .sales-filter-panel{position:static}
 .sales-member-options{grid-template-columns:repeat(2,minmax(0,1fr));max-height:210px}
}
@media(max-width:767px){
 .schedule-day-summary{grid-template-columns:minmax(0,1fr) auto 12px;min-height:67px;gap:8px;padding:10px 12px}
 .schedule-day-count{font-size:10px;white-space:nowrap}
 .history-date-list{grid-template-columns:minmax(0,1fr);gap:8px;padding:9px}
 .history-ticket-card,.history-ticket-card.application-history-card{padding:11px 12px}
 .history-ticket-card .ticket-card-title{font-size:12px}
 .history-ticket-card .ticket-card-count{font-size:12px}
 .history-ticket-card .ticket-details>summary{max-width:none;overflow:visible;font-size:10px}
 .sales-view{gap:9px}
 .sales-tools{display:flex;flex-wrap:wrap;gap:7px;padding:8px}
 .sales-tools>.filter-field{display:inline-flex;flex:1 1 125px;min-width:0;max-width:none;gap:5px}
 .sales-tools>.filter-field>span{display:inline;white-space:nowrap}
 .sales-tools>.filter-field select{min-width:0;flex:1}
 .sales-accordion-actions{width:100%;justify-content:flex-end;margin:0}
 .sales-date-summary{grid-template-columns:minmax(0,1fr) 13px;gap:7px;padding:10px 11px}
 .sales-date-main{grid-column:1;grid-row:1}
 .sales-date-title{font-size:11px}
 .sales-date-metrics{grid-column:1;grid-row:2;display:flex;flex-wrap:wrap;justify-content:flex-start;gap:5px 10px;padding-top:2px}
 .sales-date-summary>.sales-chevron{grid-column:2;grid-row:1/3}
 .sales-member-summary{grid-template-columns:minmax(0,1fr) 12px}
 .sales-member-counts{grid-column:1;grid-row:2;justify-content:flex-start}
 .sales-member-summary>.sales-chevron{grid-column:2;grid-row:1/3}
 .sales-selected-member-grid{grid-template-columns:minmax(0,1fr)}
 .sales-member-options{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* Owner review: ticket transfer, monthly itinerary, clean charts, five-tab navigation. */
.ticket-transfer-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:10px;margin-top:16px;padding:14px 0 0;border-top:1px solid #f0e2e9}
.ticket-transfer-heading{grid-column:1/-1;color:#854163;font-size:12px}
.ticket-transfer-form .ticket-field{min-width:0}
.ticket-transfer-form>.sub-button{grid-column:1/-1;justify-self:start;min-height:37px;padding:9px 18px;border:1px solid #e9bdd0;border-radius:12px;background:#fff0f5;color:#843758;font-weight:800}
.data-recycle-list{display:grid;gap:8px}
.data-recovery-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid #f0e2eb;border-radius:11px;background:#fff9fc;color:#51414d;font-size:12px}
.data-recovery-row .sub-button{flex:none;min-height:32px}
.statistics-chart-line{stroke-dasharray:none!important;stroke-width:2.25;stroke-linejoin:round;stroke-linecap:round}
.statistics-chart-point{opacity:0;pointer-events:visiblePainted;transition:opacity .12s}
.statistics-chart-point:focus,.statistics-chart-point:hover{opacity:1;outline:none}
.statistics-month-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}
.statistics-month-card{min-width:0;overflow:hidden;border:1px solid #efdde7;border-radius:15px;background:#fffafd}
.statistics-month-summary,.statistics-month-day-summary{display:grid;grid-template-columns:minmax(0,1fr) auto 13px;align-items:center;gap:10px;padding:13px 14px;cursor:pointer;list-style:none}
.statistics-month-summary::-webkit-details-marker,.statistics-month-day-summary::-webkit-details-marker{display:none}
.statistics-month-summary>strong{font-size:14px;color:#583c4d}
.statistics-month-summary>span:nth-child(2),.statistics-month-day-summary>span:nth-child(2){font-size:11px;color:#874261;white-space:nowrap}
.statistics-month-chevron{width:7px;height:7px;border:solid #a95e81;border-width:0 1.5px 1.5px 0;transform:rotate(45deg);transition:transform .16s}
.statistics-month-card[open]>.statistics-month-summary .statistics-month-chevron,.statistics-month-day[open]>.statistics-month-day-summary .statistics-month-chevron{transform:rotate(225deg)}
.statistics-month-days{display:grid;gap:6px;padding:3px 10px 12px}
.statistics-month-day{border:1px solid #eee0e8;border-radius:11px;background:#fff}
.statistics-month-day-summary{padding:10px 12px}
.statistics-month-day-summary>strong{color:#594756;font-size:12px}
.statistics-month-part-list{display:grid;gap:8px;padding:0 10px 10px}
.statistics-month-part{display:grid;gap:7px;padding:10px;border-top:1px solid #f3e9ed}
.statistics-month-part-heading{font-size:11px;color:#923b61}
.statistics-month-part-members{display:grid;gap:6px}
.statistics-month-person{display:flex;justify-content:space-between;gap:9px;padding:5px 8px;border-radius:8px;background:#fff6fa;font-size:11px;color:#594450}
.statistics-month-person>strong{flex:none;color:#8d3f60}
.statistics-session-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;list-style:none;margin:8px 0;padding:0}
.statistics-session-list li{display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:54px;padding:10px 12px;border:1px solid #f0dfe7;border-radius:11px;background:#fffafd}
.statistics-session-list li strong{font-size:11px;color:#573c4d;font-weight:750}
.statistics-session-list li span{color:#887282;font-size:10px}
@media(max-width:767px){
 .app-tabs{grid-template-columns:repeat(5,minmax(0,1fr))}
 .ticket-transfer-form{grid-template-columns:repeat(2,minmax(0,1fr))}
 .ticket-transfer-form .ticket-field:first-of-type{grid-column:1/-1}
 .statistics-month-cards,.statistics-session-list{grid-template-columns:minmax(0,1fr)}
 .statistics-month-summary>strong{font-size:12px}
 .statistics-month-summary>span:nth-child(2){font-size:10px}
 .data-recovery-row{flex-wrap:wrap}
}
@media(max-width:380px){
 .statistics-month-summary,.statistics-month-day-summary{gap:5px;padding:10px}
 .ticket-transfer-form{grid-template-columns:minmax(0,1fr)}
 .ticket-transfer-form .ticket-field:first-of-type{grid-column:auto}
}

.ticket-transfer-form [hidden]{display:none!important}
.ticket-transfer-note{grid-column:1/-1;color:#805367;font-size:11px;line-height:1.6}

/* owner-visual-fixes-20261014: vertical filters, single-column history, collapsed days. */
.statistics-filters{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:8px;
  min-width:0;
}
.statistics-primary-filters{
  display:grid;
  width:100%;
  min-width:0;
  grid-template-columns:minmax(0,1.15fr) repeat(2,minmax(0,1fr));
  align-items:end;
  gap:10px;
}
.statistics-primary-filters>.filter-field{min-width:0}
.statistics-advanced-filters{
  display:block;
  position:static;
  width:100%;
  min-width:0;
  padding-top:8px;
  margin:0;
  border-top:1px solid #f0e4eb;
}
.statistics-advanced-filters>summary{
  display:flex;
  width:max-content;
  max-width:100%;
  min-height:30px;
  margin-left:auto;
  padding:5px 9px;
  align-items:center;
  justify-content:flex-end;
  position:static;
  white-space:nowrap;
  border-radius:8px;
}
.statistics-advanced-fields{width:100%;min-width:0;clear:both}
.statistics-ranking-list,.statistics-month-cards,.statistics-session-list{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:8px;
}
.statistics-ranking-list{gap:3px}
.statistics-member-days{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;padding-top:10px}
.statistics-member-day{overflow:hidden;border:1px solid #f1dfe8;border-radius:12px;background:#fffafd}
.statistics-member-day-summary{display:grid;grid-template-columns:minmax(0,1fr) auto 12px;align-items:center;gap:10px;padding:11px 13px;list-style:none;cursor:pointer}
.statistics-member-day-summary::-webkit-details-marker{display:none}
.statistics-member-day-summary>strong{font-size:12px;color:#59404f}
.statistics-member-day-summary>span:nth-child(2){font-size:11px;font-weight:700;color:#a1486f}
.statistics-member-day[open]>.statistics-member-day-summary .statistics-month-chevron{transform:rotate(225deg)}
.statistics-member-part-list{display:grid;gap:6px;padding:0 12px 12px}
.statistics-member-part{display:flex;justify-content:space-between;gap:12px;padding:9px 11px;border-radius:9px;background:#fff;color:#58424f;font-size:11px}
.statistics-member-part strong{color:#97486d;font-size:11px}
@media(max-width:767px){
  .statistics-filters{display:flex;flex-direction:column}
  .statistics-primary-filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .statistics-primary-filters .filter-field:first-child{grid-column:1/-1}
  .statistics-ranking-list,.statistics-month-cards,.statistics-session-list{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:400px){
  .statistics-primary-filters{grid-template-columns:minmax(0,1fr)}
  .statistics-primary-filters .filter-field:first-child{grid-column:auto}
}

/* Keep every event's member tickets in one full-width vertical list. */
#schedule-list .ticket-list.schedule-day-tickets{display:grid;grid-template-columns:minmax(0,1fr);gap:9px}

/* Keep each member ranking row full-width at every screen size. */
.statistics-ranking-section .statistics-ranking-list{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:6px;
}
.statistics-ranking-section .statistics-rank-row{min-width:0}

/* Compact icon and brand name, shared by desktop and mobile. */
.brand{min-width:0;gap:7px}
.brand .brand-mark{flex:none;font-size:23px;line-height:1}
.brand .brand-kanji{color:var(--pink-strong,var(--pink));font-size:23px;font-weight:850;letter-spacing:.12em;white-space:nowrap}
.brand .brand-oshigoto{color:#945677;font-size:16px;font-weight:750;letter-spacing:.01em;white-space:nowrap}
@media(max-width:440px){.brand .brand-mark{font-size:21px}.brand .brand-kanji{font-size:21px}.brand .brand-oshigoto{font-size:14px}}



/* Ticketly V2.3 · planning hub. All data is local; controls are native. */
.lottery-view{display:grid;gap:16px;min-width:0}
.lottery-hero{padding:19px 22px;border:1px solid #f1dce7;border-radius:19px;background:linear-gradient(115deg,#fffafb,#fff1f7);box-shadow:0 3px 15px #70435809}
.lottery-hero h2{margin:6px 0 4px;color:#723850;font-size:24px}
.lottery-hero p{margin:0;color:#826877;font-size:12px;line-height:1.65}
.lottery-tools{display:flex;align-items:flex-end;flex-wrap:wrap;gap:12px}
.lottery-tools .filter-field{flex:1 1 220px;max-width:360px}
.lottery-status{margin:0;color:#7e6171;font-size:11px;overflow-wrap:anywhere}
.lottery-status.lottery-error{color:#a23e4c}
.lottery-columns{display:grid;grid-template-columns:minmax(220px,255px) minmax(0,1fr);align-items:start;gap:15px;min-width:0}
.lottery-workspace{display:grid;gap:15px;min-width:0}
.lottery-box{min-width:0;padding:17px;border:1px solid #f0dee8;border-radius:17px;background:#fffdfd;box-shadow:0 3px 13px #73425a08}
.lottery-box h3{margin:0 0 13px;color:#67364e;font-size:14px}
.lottery-box h4{margin:0}
.lottery-search{width:100%;min-height:39px;padding:8px 11px;border:1px solid #e8d4df;border-radius:10px;background:#fff;color:#58384a}
.lottery-actions{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin:10px 0}
.lottery-actions button{min-height:33px;font-size:11px;padding:6px 10px}
.lottery-actions [aria-pressed="true"]{background:#ffe5f0;border-color:#efa9c2;color:#7b3753}
.lottery-count{margin:8px 0;font-size:11px;color:#825f71}
.lottery-members{display:grid;gap:4px;max-height:460px;overflow-y:auto;overscroll-behavior:contain}
.lottery-member{display:flex;gap:7px;align-items:center;min-height:33px;padding:5px 6px;border-radius:9px;font-size:12px;color:#633d51;cursor:pointer}
.lottery-member:hover{background:#fff2f7}
.lottery-member input,.lottery-row input{accent-color:#d76e97;width:17px;height:17px;flex:none}
.lottery-member span{min-width:0;overflow-wrap:anywhere}
.lottery-member small{margin-left:auto;color:#a08997;font-size:9px;white-space:nowrap}
.lottery-picker>[data-lottery-action="more-members"]{margin-top:8px}
.lottery-box .filter-field{max-width:280px;margin-bottom:10px}
.lottery-box .filter-field select{min-height:36px}
.lottery-metrics{margin:0 0 13px;padding:10px 12px;border:1px solid #f0e0e9;border-radius:10px;background:#fff6f9;color:#773c57;font-size:11px;font-weight:700}
.lottery-rows{display:grid;gap:5px;max-height:720px;overflow-y:auto;overscroll-behavior:contain}
.lottery-date{margin:13px 0 2px!important;padding:10px 0 6px;border-bottom:1px solid #efdee7;color:#693d53;font-size:12px}
.lottery-date:first-child{margin-top:0!important}
.lottery-part{margin:7px 0 2px;color:#b54c79;font-size:11px;font-weight:750}
.lottery-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:9px 10px;border:1px solid #f1e4eb;border-radius:10px;background:#fffafd;cursor:pointer;min-width:0}
.lottery-row:has(input:checked){border-color:#efb7cb;background:#fff0f6}
.lottery-row:has(input:disabled){opacity:.65;cursor:not-allowed}
.lottery-row-label{display:flex;flex-direction:column;gap:3px;min-width:0;overflow-wrap:anywhere;color:#583a4b;font-size:12px}
.lottery-row-label small{color:#988291;font-size:10px}
.lottery-row-side{display:flex;flex-direction:column;align-items:end;gap:4px;max-width:180px;text-align:right}
.lottery-conflict{font-size:9px;color:#8a6071;overflow-wrap:anywhere}
.lottery-basket{display:grid;gap:7px;max-height:380px;overflow-y:auto}
.lottery-basket-row{display:flex;flex-wrap:wrap;align-items:center;gap:9px;padding:10px 11px;border:1px solid #f0e2ea;border-radius:11px;background:#fff8fb}
.lottery-basket-row>span{flex:1 1 175px;min-width:0;font-size:11px;color:#6a4558;overflow-wrap:anywhere}
.lottery-quantity{width:75px;min-height:34px;padding:5px 8px;border:1px solid #e8cad8;border-radius:9px;background:#fff;color:#58384a}
.lottery-basket-row button{min-height:32px;padding:5px 9px;font-size:10px}
.lottery-help{margin:8px 0 13px;font-size:11px;color:#8b7481;line-height:1.65}
.lottery-paste{width:100%;min-height:136px;max-height:380px}
.lottery-preview{display:grid;gap:5px;margin-top:10px;max-height:450px;overflow-y:auto}
.lottery-preview-row{margin:0;padding:8px 10px;border-radius:9px;background:#fcf4f8;color:#6d445a;font-size:11px;overflow-wrap:anywhere}
.lottery-warning{margin:0;color:#ad4455;font-size:11px}
.lottery-actions button[hidden],.lottery-view [hidden]{display:none!important}
.lottery-view button:focus-visible,.lottery-view input:focus-visible,.lottery-view select:focus-visible,.lottery-view textarea:focus-visible{outline:3px solid #a63b6a;outline-offset:2px}
@media(max-width:1100px){.lottery-columns{grid-template-columns:minmax(0,1fr)}.lottery-picker{position:static}.lottery-members{grid-template-columns:repeat(2,minmax(0,1fr));max-height:280px}}
@media(max-width:767px){
 .app-tabs{grid-template-columns:repeat(7,minmax(0,1fr))}
 .app-tab{font-size:8px}
 .app-tab-icon{width:17px;height:17px}
 .lottery-view{gap:11px}.lottery-hero{padding:16px}.lottery-hero h2{font-size:21px}
 .lottery-box{padding:12px}
 .lottery-members{grid-template-columns:repeat(2,minmax(0,1fr));max-height:210px}
 .lottery-row{grid-template-columns:auto minmax(0,1fr) auto;gap:7px;padding:8px}
 .lottery-row-side{max-width:108px}
 .lottery-basket-row>span{flex-basis:100%}
}
@media(max-width:380px){.app-tab{font-size:7px}.lottery-member{font-size:11px}.lottery-member small{font-size:8px}.lottery-row-side{max-width:88px}}


/* Ticketly 2026-10-14: date accordions + desktop 3-column decision table.
   Narrow screens use a single-part navigator instead of three squashed columns. */
.lottery-view{min-width:0;gap:12px;padding-bottom:10px}
.lottery-hero{padding:15px 18px}
.lottery-hero h2{font-size:21px}
.lottery-tools{gap:8px}
.lottery-tools .filter-field{max-width:340px}
.lottery-picker{padding:0}
.lottery-picker-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:49px;padding:12px 16px;cursor:pointer;color:#6f3d54;font-size:13px;list-style-position:inside}
.lottery-picker-summary strong{flex:1}
.lottery-picker-badge{margin-left:auto;padding:4px 10px;border-radius:999px;background:#ffedf5;color:#8e4967;font-size:11px;font-weight:750;white-space:nowrap}
.lottery-picker-body{padding:0 15px 14px;border-top:1px solid #f4e8ee}
.lottery-picker-body .lottery-search{margin-top:12px}
.lottery-members{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,170px),1fr));max-height:210px;gap:3px 7px}
.lottery-member{min-width:0}
.lottery-picker-body>[data-lottery-action="more-members"]{margin-top:8px}
.lottery-board{min-width:0;display:grid;gap:9px}
.lottery-board-heading{display:flex;justify-content:space-between;align-items:center;gap:10px}
.lottery-board-heading h3{margin:0;color:#6c3c53;font-size:15px}
.lottery-board .lottery-help{margin:0;font-size:11px}
.lottery-metrics{margin:0;padding:9px 12px}
.lottery-days{display:grid;gap:10px;min-width:0}
.lottery-day{min-width:0;border:1px solid #ebdce5;border-radius:15px;overflow:hidden;background:#fffdfd;box-shadow:0 3px 14px #63354e08}
.lottery-day-summary{display:flex;align-items:center;gap:10px;min-height:64px;padding:12px 16px;cursor:pointer;list-style-position:inside;background:linear-gradient(95deg,#fff9fc,#fff);color:#71435a}
.lottery-day[open]>.lottery-day-summary{border-bottom:1px solid #eee0e8;background:#fff3f8}
.lottery-day-title{display:flex;align-items:center;gap:7px;flex:1;min-width:0;font-size:15px}
.lottery-day-title strong{overflow-wrap:anywhere}
.lottery-day-counts{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px}
.lottery-day-counts small{padding:4px 8px;background:#f7eef3;border-radius:8px;color:#80546c;font-size:10px;white-space:nowrap}
.lottery-day-counts .lottery-count-available{background:#edf8ee;color:#357453}
.lottery-day-counts .lottery-count-draft{background:#ffdfed;color:#a83f6d}
.lottery-day-body{display:grid;gap:10px;padding:11px 12px 15px;min-width:0}
.lottery-desktop-column-headings{display:grid;grid-template-columns:1.1fr .96fr 1fr;gap:9px;padding:0 0 2px;color:#8a5c73;font-size:11px;text-align:left}
.lottery-desktop-column-headings strong{padding:0 9px}
.lottery-part-panel{min-width:0;display:grid;gap:7px;padding-bottom:12px;border-bottom:1px dashed #eedce5}
.lottery-part-panel:last-of-type{border-bottom:0;padding-bottom:0}
.lottery-part-heading{display:flex;align-items:center;gap:10px}
.lottery-part-heading h4{margin:0;color:#bb487a;font-size:13px}
.lottery-part-heading span{color:#917987;font-size:10px}
.lottery-triptych{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.96fr) minmax(0,1fr);gap:9px;align-items:stretch;min-width:0}
.lottery-column{display:flex;flex-direction:column;gap:6px;min-width:0;padding:10px;border:1px solid #f1e4eb;border-radius:12px;background:#fffafd}
.lottery-col-schedule{background:#fcf9ff}
.lottery-col-plan{background:#fff6fa}
.lottery-column-heading{display:flex;justify-content:space-between;gap:6px;align-items:center;margin-bottom:2px;color:#68435a;font-size:11px}
.lottery-column-heading small{color:#987989;font-size:10px;white-space:nowrap}
.lottery-column-empty{margin:7px 0;color:#a08a98;font-size:11px;line-height:1.5}
.lottery-row{display:flex;align-items:center;justify-content:space-between;gap:7px;padding:8px;border-radius:9px;background:#fff;border:1px solid #efe1e9;min-width:0;cursor:default}
.lottery-row:has(button:disabled){opacity:1;cursor:default}
.lottery-sale-item-info,.lottery-plan-info{display:flex;flex-direction:column;min-width:0;flex:1;gap:2px;color:#604256;font-size:11px}
.lottery-sale-item-info strong,.lottery-plan-info strong{overflow-wrap:anywhere}
.lottery-sale-item-info small,.lottery-plan-info small{font-size:9px;color:#977f91;overflow-wrap:anywhere}
.lottery-row>.sales-badge{flex:none;white-space:nowrap;font-size:9px;padding:4px 6px}
.lottery-qty-stepper{display:flex;align-items:center;justify-content:flex-end;gap:5px;flex:none}
.lottery-step{display:flex;align-items:center;justify-content:center;width:28px;height:28px;min-height:28px;padding:0;border:1px solid #ead0de;border-radius:9px;background:#fff;color:#8b4564;font-size:17px;line-height:1;cursor:pointer}
.lottery-step:disabled{cursor:not-allowed;opacity:.32}
.lottery-step-add:not(:disabled){background:#ffebf3;border-color:#efbad0;color:#b53f70;font-weight:750}
.lottery-step-number{min-width:15px;text-align:center;font-size:12px;font-weight:700;color:#714a5d;font-variant-numeric:tabular-nums}
.lottery-schedule-item{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 8px;padding:9px;border-radius:9px;background:#fff;border:1px solid #e9dfe9;color:#61475f;font-size:11px}
.lottery-schedule-item span{color:#7e6580;font-size:10px}
.lottery-schedule-item small{width:100%;color:#a0889a;font-size:9px}
.lottery-plan-row{display:flex;align-items:center;gap:8px;min-width:0;padding:9px;border:1px solid #f1dbe5;border-radius:9px;background:#fff}
.lottery-more-parts{justify-self:center}
.lottery-mobile-parts,.lottery-mobile-footer{display:none}
.lottery-basket-section{scroll-margin-top:18px}
.lottery-basket{max-height:460px}
@media(max-width:1180px) and (min-width:768px){
 .lottery-triptych,.lottery-desktop-column-headings{grid-template-columns:minmax(0,1fr) minmax(0,.93fr) minmax(0,.93fr);gap:6px}
 .lottery-column{padding:7px}
 .lottery-row{flex-wrap:wrap}
 .lottery-row>.lottery-qty-stepper{margin-left:auto}
}
@media(max-width:767px){
 .lottery-view{gap:10px;padding-bottom:65px}
 .lottery-hero{padding:13px 14px}
 .lottery-hero h2{font-size:20px}
 .lottery-hero p{font-size:11px}
 .lottery-tools{display:flex;align-items:end;gap:7px}
 .lottery-tools .filter-field{min-width:0;flex:1 1 145px}
 .lottery-tools button{flex:none;font-size:10px}
 .lottery-status{font-size:10px}
 .lottery-picker-summary{min-height:46px;padding:10px 12px;font-size:12px}
 .lottery-picker-body{padding:0 11px 12px}
 .lottery-members{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-height:240px;gap:3px}
 .lottery-member{padding:6px 4px;gap:5px}
 .lottery-member small{font-size:8px}
 .lottery-board-heading h3{font-size:14px}
 .lottery-metrics{font-size:10px}
 .lottery-day-summary{padding:11px 10px;min-height:68px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 7px}
 .lottery-day-title{font-size:13px}
 .lottery-day-counts{grid-column:1 / -1;justify-content:flex-start;gap:5px}
 .lottery-day-counts small{font-size:9px;padding:3px 6px}
 .lottery-day-body{padding:10px;gap:10px}
 .lottery-desktop-column-headings{display:none}
 .lottery-mobile-parts{display:flex;gap:7px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;padding:2px 1px 7px;scroll-snap-type:x proximity;max-width:100%}
 .lottery-part-pill{display:flex;align-items:center;justify-content:center;gap:4px;flex:0 0 auto;min-width:62px;min-height:39px;padding:7px 10px;border-radius:10px;border:1px solid #ebd4e1;background:#fff;color:#80536b;font-size:11px;font-weight:700;scroll-snap-align:start}
 .lottery-part-pill[aria-pressed="true"]{background:#ffe5f0;border-color:#eab0c9;color:#953e65}
 .lottery-part-pill small{border-radius:5px;padding:0 4px;background:#fff;color:#b14b77;font-size:9px}
 .lottery-part-panel{border:0;padding:0}
 .lottery-part-heading{padding:3px 0 1px}
 .lottery-triptych{display:grid;grid-template-columns:minmax(0,1fr);grid-template-areas:"schedule" "sales" "plan";gap:10px}
 .lottery-col-schedule{grid-area:schedule}
 .lottery-col-sales{grid-area:sales}
 .lottery-col-plan{grid-area:plan}
 .lottery-column{gap:7px;padding:11px;border-radius:12px}
 .lottery-column-heading{font-size:12px}
 .lottery-column-heading small{font-size:10px}
 .lottery-row{flex-wrap:nowrap;padding:9px;gap:7px}
 .lottery-row>.sales-badge{margin-left:auto}
 .lottery-sale-item-info,.lottery-plan-info{font-size:12px}
 .lottery-step{width:33px;height:33px;min-height:33px;font-size:18px}
 .lottery-qty-stepper{gap:5px}
 .lottery-mobile-footer{position:fixed;bottom:calc(68px + env(safe-area-inset-bottom,0px));left:12px;right:12px;z-index:25;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:52px;padding:8px 11px;border:1px solid #f1bfd2;border-radius:14px;background:#fff6faf5;backdrop-filter:blur(14px);box-shadow:0 8px 20px #67354e26}
 .lottery-mobile-footer-count{font-size:11px;font-weight:700;color:#744158}
 .lottery-mobile-footer-button{min-height:36px;padding:7px 12px;border:0;border-radius:10px;background:#dc79a0;color:#fff;font-size:11px;font-weight:750;white-space:nowrap}
 .lottery-basket-section{scroll-margin-top:16px}
}
@media(max-width:380px){
 .lottery-day-summary{padding:10px 8px}
 .lottery-day-body{padding:8px}
 .lottery-column{padding:8px}
 .lottery-row{padding:7px;gap:4px}
 .lottery-row>.sales-badge{font-size:8px;padding:3px 4px}
 .lottery-step{width:30px;height:30px;min-height:30px}
 .lottery-mobile-footer{left:7px;right:7px}
}

/* Lottery date picker matches the collapsible member picker with multi-select. */
.lottery-date-filters.lottery-date-picker{display:block;width:100%;min-width:0;padding:0}
.lottery-date-picker .lottery-picker-summary{min-height:49px;list-style-position:inside}
.lottery-date-options{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,180px),1fr));gap:4px 8px;max-height:280px;overflow-y:auto;overscroll-behavior:contain}
.lottery-date-option{min-width:0;min-height:38px;padding:7px 10px;border:1px solid #f3e6ec;border-radius:9px;background:#fffdfd}
.lottery-date-option:has(input:checked){border-color:#eab9cc;background:#fff0f6}
.lottery-date-option input{accent-color:#cf6892;flex:none;width:16px;height:16px}
.lottery-date-option span{min-width:0;color:#6c435b;font-size:12px;font-variant-numeric:tabular-nums;white-space:nowrap}
@media(max-width:767px){
 .lottery-date-picker .lottery-picker-summary{min-height:46px}
 .lottery-date-options{grid-template-columns:repeat(2,minmax(0,1fr));max-height:260px;gap:5px}
 .lottery-date-option{min-height:42px;padding:7px 6px}
 .lottery-date-option span{font-size:11px}
}
@media(max-width:380px){
 .lottery-date-option{gap:4px;padding:6px 4px}
 .lottery-date-option span{font-size:10px}
}

/* Remove placeholder text and retired administrative UI without deleting recovery code. */
.app-message:empty,.import-status:empty{display:none!important}
.data-management .data-section[hidden]{display:none!important}
@media(max-width:767px){.app-tabs{grid-template-columns:repeat(6,minmax(0,1fr))}}


/* Mobile form containment shared with desktop. */
.statistics-filters,.statistics-primary-filters,.statistics-primary-filters .filter-field{min-width:0;max-width:100%}
.statistics-primary-filters .filter-field input[type="date"]{
  display:block;box-sizing:border-box;width:100%;min-width:0;max-width:100%;max-inline-size:100%;
}
@media(max-width:767px){
  .app-tabs{grid-template-columns:repeat(6,minmax(0,1fr))}
  .statistics-primary-filters{grid-template-columns:minmax(0,1fr)}
  .statistics-primary-filters .filter-field:first-child{grid-column:auto}
  .statistics-primary-filters .filter-field{width:100%;min-width:0}
}


/* Six main navigation items must stay in one compact, equal-width mobile row. */
@media(max-width:767px){
  .app-tabs{
    display:grid;
    grid-template-columns:repeat(6,minmax(0,1fr));
    grid-template-rows:minmax(0,auto);
    grid-auto-flow:row;
    align-items:stretch;
    gap:1px;
    padding:5px 3px max(5px,env(safe-area-inset-bottom,0px));
  }
  .app-tabs>.app-tab{
    box-sizing:border-box;
    width:100%;
    min-width:0;
    min-height:49px;
    padding:3px 0;
    font-size:8px;
    line-height:1.15;
    border-radius:10px;
    overflow:hidden;
  }
  .app-tabs>.app-tab .app-tab-icon{width:17px;height:17px}
  .wrap{padding-bottom:calc(78px + env(safe-area-inset-bottom,0px))}
  header{margin-bottom:12px;padding-bottom:10px}
  .empty-state{padding:20px 12px;gap:4px}
  .empty-flower{font-size:22px}
  .empty-state p{font-size:12px;line-height:1.55}
}

/* iOS Safari: native date inputs have an intrinsic minimum width. A .filter-field
   is itself a grid; its implicit auto column must NOT grow to that minimum.
   Explicit minmax(0,1fr) tracks + a border-box date control constrain the
   actual input, not merely the outer statistics card. */
.statistics-primary-filters{
  min-width:0;
  max-width:100%;
  grid-auto-columns:minmax(0,1fr);
}
.statistics-primary-filters>.filter-field{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  width:100%;
  min-width:0;
  max-width:100%;
}
.statistics-primary-filters>.filter-field>span{min-width:0}
.statistics-primary-filters>.filter-field>input[type="date"]{
  display:block;
  box-sizing:border-box;
  -webkit-appearance:none;
  appearance:none;
  inline-size:100%;
  min-inline-size:0;
  max-inline-size:100%;
  margin:0;
  overflow:hidden;
}
.statistics-primary-filters input[type="date"]::-webkit-date-and-time-value{
  min-width:0;
  text-align:left;
}
@media(max-width:767px){
  .statistics-primary-filters{grid-template-columns:minmax(0,1fr)}
  .statistics-primary-filters>.filter-field{grid-column:auto}
  /* Contain any Safari native picker internals if it still reports an intrinsic size. */
  .statistics-primary-filters>.filter-field:has(>input[type="date"]){
    overflow:hidden;
  }
}


/* Desktop ranking: two genuine side-by-side member cards; mobile stays one.
   This later, scoped rule intentionally wins over the legacy full-width override. */
@media(min-width:900px){
  .statistics-ranking-section .statistics-ranking-list{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:5px 18px;
  }
}
@media(max-width:899px){
  .statistics-ranking-section .statistics-ranking-list{
    grid-template-columns:minmax(0,1fr);
  }
}
/* Three independent sales member cards in wide desktop layouts; keep phone as one. */
@media(min-width:1200px){
  .sales-date-content .sales-member-list,
  .sales-member-group .sales-member-list{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:8px;
  }
}
@media(max-width:1199px){
  .sales-date-content .sales-member-list,
  .sales-member-group .sales-member-list{
    grid-template-columns:minmax(0,1fr);
  }
}
/* The classification/sort bar belongs inside search filters, not a second card. */
.sales-filter-panel>.sales-tools{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  margin:0 11px 11px;
  padding:10px 0 0;
  border:0;
  border-top:1px solid #f1e5eb;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
.sales-filter-panel>.sales-tools .filter-field{flex:1 1 90px;min-width:0}
.sales-filter-panel>.sales-tools .filter-field select{width:100%;min-width:0}
@media(max-width:767px){
  .sales-filter-panel>.sales-tools{margin:0 9px 9px}
}
/* Keep the irreversible action visually separate from backup and restore. */
.data-danger-section{border-color:#e8c6d0!important}
.data-danger-section .data-section-summary{color:#8a3551}
.data-danger-section .danger-button{max-width:100%}


/* Owner-approved statistics: two compact member cards per row, everywhere.
   No ranking number or progress bar. Keep name detail and compare checkbox. */
.statistics-ranking-section .statistics-ranking-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px;
  margin:0;
  padding:0;
}
.statistics-ranking-section .statistics-rank-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  grid-template-rows:auto auto;
  align-items:center;
  gap:8px 5px;
  min-width:0;
  padding:12px;
  border:1px solid #efd9e5;
  border-radius:13px;
  background:#fffafd;
}
.statistics-ranking-section .statistics-member-button{
  grid-column:1;
  min-width:0;
  overflow:hidden;
  font-size:12px;
  line-height:1.4;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.statistics-ranking-section .statistics-rank-count{
  grid-column:2;
  justify-self:end;
  font-size:12px;
  color:#994064;
  white-space:nowrap;
}
.statistics-ranking-section .statistics-compare-choice{
  grid-column:1/-1;
  justify-content:flex-start;
  gap:7px;
  min-width:0;
  font-size:10px;
}
.statistics-ranking-section .statistics-compare-choice input{width:18px;height:18px;flex:none}
@media(max-width:767px){
  .statistics-ranking-section .statistics-ranking-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
  .statistics-ranking-section .statistics-rank-row{padding:10px 8px;gap:6px 3px}
  .statistics-ranking-section .statistics-member-button,
  .statistics-ranking-section .statistics-rank-count{font-size:11px}
  .statistics-ranking-section .statistics-compare-choice{font-size:9px;gap:5px}
  .statistics-ranking-section .statistics-compare-choice input{width:17px;height:17px}
}
@media(max-width:355px){
  .statistics-ranking-section .statistics-rank-row{padding:8px 6px}
  .statistics-ranking-section .statistics-member-button,
  .statistics-ranking-section .statistics-rank-count{font-size:10px}
}


/* Sales owner layout: controls are always stacked over date/member results,
   never sidebar-to-content. The first controls are classification/sorting. */
.sales-view{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  grid-template-areas:"hero" "catalog" "notice" "round" "summary" "updated" "controls" "workspace";
  gap:10px;
}
.sales-control-section{
  grid-area:controls;display:grid;gap:0;min-width:0;
  overflow:hidden;border:1px solid #edd9e5;border-radius:16px;
  background:#fffdfd;box-shadow:var(--shadow-soft);
}
.sales-control-section>.sales-tools{
  display:flex;flex-wrap:wrap;align-items:center;gap:10px;
  width:100%;min-width:0;padding:12px 14px;margin:0;
  border:0;border-bottom:1px solid #f1e5ec;border-radius:0;background:#fff9fc;
  box-shadow:none;
}
.sales-control-section>.sales-tools>.filter-field{display:flex;flex:0 1 auto;align-items:center;gap:8px;min-width:0;max-width:none}
.sales-control-section>.sales-tools>.filter-field select{width:auto;min-width:130px}
.sales-control-section>.sales-tools .sales-accordion-actions{margin-left:auto}
.sales-control-section>.sales-filter-panel{
  position:static;top:auto;align-self:stretch;grid-area:auto;
  min-width:0;width:100%;margin:0;padding:0;border:0;
  border-radius:0;background:transparent;box-shadow:none;
}
.sales-control-section>.sales-filter-panel>.sales-filter-summary{padding:11px 14px;font-size:12px}
.sales-control-section>.sales-filter-panel>.sales-filter-fields{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:0 14px 12px;gap:10px
}
.sales-control-section>.sales-filter-chips{margin:0;padding:0 14px 12px;min-width:0}
.sales-view>.sales-workspace{
  grid-area:workspace;width:100%;min-width:0;align-self:stretch;margin:0;
}
@media(max-width:767px){
  .sales-view{grid-template-columns:minmax(0,1fr);gap:9px}
  .sales-control-section>.sales-tools{gap:8px;padding:10px}
  .sales-control-section>.sales-tools>.filter-field{flex:1 1 130px;min-width:0}
  .sales-control-section>.sales-tools>.filter-field select{flex:1;min-width:0;width:100%}
  .sales-control-section>.sales-tools .sales-accordion-actions{width:100%;justify-content:flex-end}
  .sales-control-section>.sales-filter-panel>.sales-filter-fields{
    grid-template-columns:repeat(2,minmax(0,1fr));padding:0 10px 10px;gap:7px
  }
}


/* Ranking compact cards: four across desktop; card opens edit/details,
   while the checkbox remains an independent compare action. */
.statistics-ranking-section .statistics-ranking-list{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;
}
.statistics-ranking-section .statistics-rank-row{
  cursor:pointer;min-height:75px;padding:10px 9px;gap:6px 4px;
  transition:border-color .15s,background .15s,box-shadow .15s;
}
.statistics-ranking-section .statistics-rank-row:hover,
.statistics-ranking-section .statistics-rank-row:focus-visible{
  outline:0;border-color:#d88cab;background:#fff1f7;box-shadow:0 0 0 2px #f1d4e1;
}
.statistics-ranking-section .statistics-member-button{cursor:pointer;text-decoration:none}
.statistics-ranking-section .statistics-compare-choice{cursor:pointer}
@media(min-width:768px) and (max-width:1120px){
  .statistics-ranking-section .statistics-ranking-list{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:767px){
  .statistics-ranking-section .statistics-ranking-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
}

/* Native modal avoids scrolling to the bottom of a long ranking to edit tickets. */
.statistics-member-dialog{
  box-sizing:border-box;position:fixed;inset:0;max-width:min(740px,calc(100vw - 26px));
  width:min(740px,calc(100vw - 26px));max-height:min(86vh,920px);
  margin:auto;padding:16px;overflow:auto;overscroll-behavior:contain;
  border:1px solid #e9ccdb;border-radius:18px;background:#fffdfd;
  color:#503d49;box-shadow:0 20px 65px #57374b3b;
}
.statistics-member-dialog::backdrop{background:#40253286;backdrop-filter:blur(3px)}
.statistics-dialog-heading{position:sticky;top:-16px;z-index:2;display:flex;align-items:center;
  justify-content:space-between;gap:10px;padding:9px 1px 12px;
  background:#fffdfdf7;border-bottom:1px solid #f0e0e9}
.statistics-dialog-heading h3{margin:0;min-width:0;font-size:16px}
.statistics-dialog-close{border:1px solid #efcedd;border-radius:10px;background:#fff3f8;
  color:#803f5a;padding:8px 11px;font-size:11px;cursor:pointer;flex:none}
.statistics-dialog-help{font-size:11px;line-height:1.6;color:#795c6d}
.statistics-ticket-feedback{min-height:18px;margin:3px 0;color:#994060;font-size:11px}
.statistics-member-dialog .statistics-member-days{padding:0 0 8px;gap:8px}
.statistics-member-dialog .statistics-member-day{overflow:clip}
.statistics-ticket-record{
  display:grid;grid-template-columns:minmax(0,1fr) 96px auto;
  align-items:center;gap:9px;padding:12px;
  border-top:1px solid #f0e3eb;background:#fffefd;
}
.statistics-ticket-title{display:grid;min-width:0;gap:4px}
.statistics-ticket-title strong{font-size:11px;overflow-wrap:anywhere}
.statistics-ticket-title small{font-size:10px;color:#987b8a}
.statistics-ticket-quantity-label{display:grid;min-width:0;gap:4px;font-size:10px;color:#846577}
.statistics-ticket-quantity{box-sizing:border-box;width:100%;min-width:0;height:36px;padding:5px;
  border:1px solid #eccddd;border-radius:9px;background:white;color:#4d3c48;font-size:12px}
.statistics-ticket-actions{display:flex;flex-wrap:wrap;gap:6px}
.statistics-ticket-actions button{min-height:35px;padding:7px 10px;font-size:10px}
.statistics-ticket-empty{margin:8px 12px;color:#856b79;font-size:11px}
@media(max-width:767px){
  .statistics-member-dialog{max-height:calc(100dvh - 38px);max-width:calc(100vw - 18px);
    width:calc(100vw - 18px);padding:12px;border-radius:14px}
  .statistics-dialog-heading{top:-12px}
  .statistics-dialog-heading h3{font-size:14px}
  .statistics-ticket-record{grid-template-columns:minmax(0,1fr) 94px;gap:9px;padding:10px}
  .statistics-ticket-actions{grid-column:1/-1}
  .statistics-ticket-actions button{flex:1 1 110px}
}


/* vNext sale controls: classification, sorting and four filters share a single
   compact toolbar. Member choices are on-demand, rather than a 50-row wall. */
.sales-control-section>.sales-tools{
  display:flex;flex-wrap:wrap;align-items:end;gap:8px;
  padding:12px;box-sizing:border-box;
}
.sales-control-section>.sales-tools>.filter-field,
.sales-control-section>.sales-tools>.sales-filter-fields>.filter-field{
  flex:1 1 130px;display:grid;gap:5px;min-width:118px;
  max-width:none;font-size:10px;
}
.sales-control-section>.sales-tools>.sales-filter-fields{display:contents}
.sales-control-section>.sales-tools>.filter-field select,
.sales-control-section>.sales-tools>.sales-filter-fields>.filter-field select{
  width:100%;min-width:0;min-height:37px;
}
.sales-control-section>.sales-tools .sales-accordion-actions{
  flex:1 1 100%;display:flex;justify-content:flex-end;gap:10px;margin:0
}
.sales-control-section>.sales-filter-panel{border:0}
.sales-control-section>.sales-filter-panel>.sales-filter-summary{
  padding:8px 12px 5px;color:#784d60;font-size:11px;
}
.sales-member-picker{
  display:block;min-width:0;margin:3px 12px 8px;padding:0!important;
  border:1px solid #ead3df!important;border-radius:11px;background:#fffafd;
}
.sales-member-picker-heading{
  display:flex!important;flex-wrap:wrap;align-items:center;gap:8px;
  min-height:37px;padding:8px 11px;list-style:none;cursor:pointer;
}
.sales-member-picker-heading::-webkit-details-marker{display:none}
.sales-member-picker-heading .sales-member-picker-label{font-size:11px;color:#793e57;font-weight:750}
.sales-member-picker-heading strong{margin-left:auto;color:#a0637d;font-size:10px;font-weight:600}
.sales-member-picker-heading .sales-member-picker-chevron{color:#ae6281}
.sales-member-picker[open] .sales-member-picker-chevron{transform:rotate(180deg)}
.sales-member-picker-content{
  display:grid;gap:8px;padding:9px 11px 10px;border-top:1px solid #f1e3eb
}
.sales-member-picker-actions{display:flex;flex-wrap:wrap;gap:6px}
.sales-member-picker-content>input{width:100%;min-height:35px}
.sales-member-options{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));
  gap:3px;max-height:175px;overflow-y:auto;overscroll-behavior:contain
}
.sales-member-option{min-width:0}
.sales-quick-filters{padding:0 12px 9px;display:flex;flex-wrap:wrap;gap:5px}
@media(max-width:1000px){
  .sales-member-options{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:767px){
  .sales-control-section>.sales-tools{gap:7px;padding:9px}
  .sales-control-section>.sales-tools>.filter-field,
  .sales-control-section>.sales-tools>.sales-filter-fields>.filter-field{
    flex:1 1 calc(50% - 8px);min-width:0;
  }
  .sales-member-picker{margin:3px 9px 8px}
  .sales-member-options{grid-template-columns:repeat(2,minmax(0,1fr));max-height:170px}
}

/* Compact four-across member cards with no dead vertical space. The
   final selectors are scoped so earlier mobile/tablet rules cannot win. */
@media(min-width:1000px){
  .statistics-ranking-section .statistics-ranking-list{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
}
@media(min-width:768px) and (max-width:999px){
  .statistics-ranking-section .statistics-ranking-list{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}
@media(max-width:767px){
  .statistics-ranking-section .statistics-ranking-list{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
.statistics-ranking-section .statistics-rank-row{
  min-height:0;min-width:0;grid-template-rows:auto auto;
  padding:8px 9px;gap:4px 5px;
}
.statistics-ranking-section .statistics-member-button,
.statistics-ranking-section .statistics-rank-count{
  align-self:center;line-height:1.3;font-size:11px;
}
.statistics-ranking-section .statistics-compare-choice{
  min-height:23px;gap:6px;
}
.statistics-ranking-section .statistics-compare-choice input{
  width:16px;height:16px;flex:none
}
/* Prevent the system card styles from inflating the native edit modal. */
.statistics-member-dialog{
  max-height:min(84dvh,800px);
  contain:layout style;
}
.statistics-member-dialog .statistics-member-day-summary{padding:9px 12px}
.statistics-member-dialog .statistics-ticket-record{padding:8px 11px}
.statistics-member-dialog .statistics-ticket-actions button{white-space:nowrap}
