.ch-module,.ch-member-dialog{--ch-bg:#0e1721;--ch-border:#29394b;--ch-text:#deebf6;--ch-muted:#a6b9ca;--ch-accent:#40d8e7;color:var(--ch-text);font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;font-size:16px;line-height:1.65;color-scheme:dark}
.ch-module *,.ch-member-dialog *{box-sizing:border-box}
.ch-module{width:100%;max-width:1440px;margin:0 auto;min-width:0}
.ch-module [hidden],.ch-member-dialog [hidden],#userProfileSubcontent .ch-hidden{display:none!important}
.ch-entry-tabs{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}
.ch-entry-tabs button,.ch-module button,.ch-module select,.ch-module input,.ch-member-dialog button{font:inherit;color:inherit;min-height:44px;border:1px solid var(--ch-border,#29394b);background:#152331;border-radius:8px;padding:9px 16px;max-width:100%;min-width:0}
.ch-entry-tabs button{color:#deebf6;cursor:pointer}
.ch-entry-tabs button[aria-selected=true],.ch-module .ch-primary{background:#159eb2;color:#fff;border-color:#159eb2}
.ch-module button,.ch-member-dialog button{cursor:pointer}
.ch-module button:disabled,.ch-module select:disabled{opacity:.48;cursor:not-allowed}
.ch-module :focus-visible,.ch-entry-tabs :focus-visible,.ch-member-dialog :focus-visible{outline:2px solid #55e1ef;outline-offset:3px}
.ch-card{padding:24px;border-radius:12px;background:var(--ch-bg);margin-bottom:24px;min-width:0}
.dashboard-body .ch-module>header{display:block;text-align:left}
.dashboard-body .ch-member-dialog>header{display:flex;text-align:left;padding:0;margin-bottom:20px}
#analysisTab:has(#userProfileSubcontent.active #customerHabits:not([hidden]))>#unifiedCalendarSection,#analysisTab:has(#userProfileSubcontent.active #customerHabits:not([hidden]))>#analysisSubtabsSection{display:none!important}
.ch-module h2{font-size:28px;line-height:1.4;margin:0 0 8px;color:var(--ch-text)}
.ch-module h3,.ch-member-dialog h3{font-size:22px;line-height:1.5;margin:0 0 16px;color:var(--ch-text)}
.ch-module h4,.ch-member-dialog h4{font-size:17px;margin:20px 0 10px}
.ch-module p,.ch-member-dialog p{margin:8px 0}
.ch-muted{color:var(--ch-muted)}
.ch-note{color:var(--ch-muted);font-size:14px;line-height:1.7}
.ch-warning{color:#ecc35d}
.ch-controls{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;margin:16px 0 10px}
.ch-controls label{display:flex;flex-direction:column;gap:5px;font-size:14px;min-width:0}
.ch-controls input,.ch-controls select{font-size:16px}
.ch-controls label.ch-store{min-width:164px}
.ch-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.ch-kpis strong{display:block;color:var(--ch-accent);font-size:32px;font-weight:700;line-height:1.4;margin-top:8px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.ch-kpis span{color:var(--ch-muted)}
.ch-table-scroll{overflow-x:auto;max-width:100%;overscroll-behavior-x:contain}
.ch-table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums;font-size:15px;table-layout:auto}
.ch-table th,.ch-table td{padding:15px 12px;text-align:right;vertical-align:middle;border-bottom:1px solid #213040;white-space:nowrap}
.ch-table th{color:var(--ch-muted);font-weight:400;font-size:14px}
.ch-table th:first-child,.ch-table td:first-child{text-align:left;padding-left:0}
.ch-table td:last-child,.ch-table th:last-child{padding-right:0}
.ch-table tbody tr:last-child td{border-bottom:0}
.ch-table small{display:block;color:var(--ch-muted);font-size:12px;white-space:normal}
.ch-baseline-value{font-size:23px;font-weight:600;line-height:1.7;font-variant-numeric:tabular-nums}
.ch-inline-values{display:flex;flex-wrap:wrap;gap:6px 22px;margin:12px 0}
.ch-tabbar{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:12px}
.ch-tabbar button[aria-selected=true]{border-color:var(--ch-accent);color:var(--ch-accent);background:#112b34}
.ch-status{padding:24px;border:1px solid var(--ch-border);border-radius:12px;background:var(--ch-bg);margin-bottom:24px}
.ch-status[data-error=true]{border-color:#86414c;color:#ff9eb0}
.ch-pagination{display:flex;justify-content:flex-end;align-items:center;gap:12px;flex-wrap:wrap;margin-top:16px}
.ch-member-dialog{margin:auto;width:min(940px,calc(100vw - 32px));max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);padding:24px;border:1px solid var(--ch-border);border-radius:14px;background:#0e1721;overflow:auto}
.ch-member-dialog::backdrop{background:rgba(0,6,14,.8)}
.ch-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.ch-dialog-head h3{margin-bottom:4px}
.ch-dialog-head button{flex:none}
.ch-member-dialog .ch-table{font-size:14px}
.ch-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.ch-detail-grid>div{min-width:0}
.ch-preferences{list-style:none;margin:0;padding:0}
.ch-preferences li{padding:10px 0;border-bottom:1px solid #213040;overflow-wrap:anywhere}
.ch-preferences small{display:block;color:var(--ch-muted)}
.ch-module details>summary{cursor:pointer;min-height:44px;padding:8px 0;color:var(--ch-muted)}
.ch-module .ch-empty{padding:28px 12px;color:var(--ch-muted);text-align:center}
@media(max-width:1100px){.ch-card{padding:20px}.ch-baseline-value{font-size:20px}}
@media(max-width:700px){.ch-module{margin:0 auto;font-size:15px}.ch-card{padding:18px;margin-bottom:16px}.ch-module h2{font-size:23px}.ch-module h3{font-size:20px}.ch-kpis{grid-template-columns:1fr;gap:16px}.ch-kpis>div+div{border-top:1px solid #213040;padding-top:14px}.ch-kpis strong{font-size:28px}.ch-controls{gap:10px}.ch-controls label{flex:1 1 140px}.ch-controls label.ch-store{flex-basis:100%}.ch-controls button{flex:1 1 120px}.ch-controls input{width:100%}.ch-responsive-table thead{display:none}.ch-responsive-table,.ch-responsive-table tbody,.ch-responsive-table tr{display:block;width:100%}.ch-responsive-table tr{border-bottom:1px solid #29394b;padding:10px 0}.ch-responsive-table td,.ch-responsive-table td:first-child,.ch-responsive-table td:last-child{display:flex;gap:14px;justify-content:space-between;align-items:baseline;text-align:right;white-space:normal;padding:6px 0;border:0;overflow-wrap:anywhere}.ch-responsive-table td::before{content:attr(data-label);color:var(--ch-muted);text-align:left;flex:0 0 42%}.ch-responsive-table td>span{min-width:0}.ch-detail-grid{grid-template-columns:1fr}.ch-member-dialog{padding:18px}.ch-baseline-value{font-size:19px}.ch-pagination{justify-content:space-between}.ch-note{font-size:13px}}
/* Approved v2: chart-first member analysis, shared by both stores. */
.ch-module{container-type:inline-size}
.ch-title-row,.ch-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}
.ch-title-row>div,.ch-card-head>div{min-width:0}
.ch-eyebrow{font-size:12px;letter-spacing:2px;color:var(--ch-accent)}
.ch-module h3{font-size:20px;margin-bottom:4px}
.ch-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.ch-kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:14px}
.ch-kpis article{background:var(--ch-bg);padding:20px;border:1px solid #223140;border-radius:12px;min-width:0}
.ch-kpis strong{font-size:28px;letter-spacing:-.5px}
.ch-kpis span{font-size:14px}
.ch-card{border:1px solid #223140}
.ch-chart{width:100%;height:300px;min-width:0;overflow:hidden}
.ch-chart[data-chart=daily]{height:340px}
.ch-chart-summary{display:grid;gap:8px;margin:8px 0}
.ch-chart-summary>span{display:grid;grid-template-columns:8px minmax(0,1fr) auto auto;align-items:center;gap:8px;font-size:14px}
.ch-chart-summary i{display:block;width:8px;height:8px;border-radius:50%}
.ch-chart-summary b{font-weight:500;font-variant-numeric:tabular-nums}
.ch-chart-summary small{color:var(--ch-muted);min-width:48px;text-align:right}
.ch-definitions{margin:0 0 20px!important}
.ch-tabbar{margin:20px 0 0;padding-bottom:16px;border-bottom:1px solid #263648;gap:8px}
.ch-tabbar button{border:0;background:transparent;white-space:nowrap;font-size:15px;padding:10px 14px}
.ch-tabbar button[aria-pressed=true],.ch-toggle button[aria-pressed=true]{color:#59e6e2;background:#12383e}
.ch-toggle{display:flex;gap:4px;flex-wrap:wrap;padding:3px;border:1px solid #29394b;border-radius:9px}
.ch-toggle button{padding:7px 10px;min-height:44px;font-size:13px;border:0;white-space:nowrap;background:transparent}
.ch-header .ch-controls label{flex:1 1 145px}
.ch-header .ch-controls input,.ch-header .ch-controls select{width:100%}
.ch-header .ch-controls button{flex:0 1 84px}
.ch-module [data-panel=baseline] label{display:flex;flex-direction:column;max-width:420px;gap:8px}
.ch-baseline-tile{background:#152331;border-radius:10px;padding:18px;margin:10px 0;min-width:0;flex:1 1 160px}
.ch-baseline-tile span{display:block;color:var(--ch-muted);font-size:14px}
.ch-baseline-tile strong{font-size:25px;color:#50ddda}
.ch-baseline-tile small{font-size:12px;font-weight:400;color:var(--ch-muted)}
.ch-html-bar{display:grid;grid-template-columns:minmax(88px,1fr) minmax(60px,2fr) 70px;align-items:center;gap:12px;font-size:14px;margin:22px 0}
.ch-html-bar>div{background:#203044;border-radius:4px;height:18px;overflow:hidden}
.ch-html-bar i{display:block;background:#7e8ff4;height:100%;border-radius:4px}
.ch-html-bar b{text-align:right;font-weight:500}
.ch-module details>summary{font-weight:500;color:#d3e0ee}
.ch-module [data-results]>details{margin-top:20px}
@container(max-width:900px){.ch-grid{grid-template-columns:1fr}.ch-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.ch-kpis strong{font-size:26px}.ch-card-head{gap:8px}}
@media(max-width:700px){.ch-card{padding:16px}.ch-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.ch-kpis article{padding:14px 12px}.ch-kpis strong{font-size:23px}.ch-kpis span{font-size:12px}.ch-tabbar{gap:2px}.ch-tabbar button{padding:9px 7px;font-size:14px;flex:1}.ch-title-row{align-items:center;gap:8px}.ch-title-row>button{padding:8px 10px;font-size:13px}.ch-chart{height:270px}.ch-chart[data-chart=daily]{height:300px}.ch-chart-summary>span{font-size:12px;gap:6px}.ch-header .ch-controls label{flex:1 1 120px}.ch-header .ch-controls button{flex:1 1 100%}.ch-grid{gap:0}.ch-html-bar{gap:8px;grid-template-columns:100px minmax(40px,1fr) 58px;font-size:13px}.ch-card-head h3{font-size:18px}.ch-note{overflow-wrap:anywhere}}
.ch-pie-card{display:grid;grid-template-columns:minmax(155px,1fr) minmax(150px,1.2fr);column-gap:8px;align-items:center}
.ch-pie-card .ch-card-head,.ch-pie-card>[data-note]{grid-column:1/-1}
.ch-pie-card .ch-chart{height:220px}
.ch-pie-card .ch-chart-summary>span{grid-template-columns:8px minmax(0,1fr) auto;gap:6px}
.ch-pie-card .ch-chart-summary b{grid-column:2/4}
.ch-pie-card .ch-chart-summary>span>small{grid-column:3;grid-row:auto}
.ch-cohort-people{display:block!important;text-align:left!important;font-size:12px;color:#a6b9ca}
@container(max-width:1080px){.ch-pie-card{display:block}.ch-pie-card .ch-chart-summary>span{grid-template-columns:8px minmax(0,1fr) auto auto}.ch-pie-card .ch-chart-summary b{grid-column:auto}.ch-pie-card .ch-chart-summary>span>small{grid-column:auto}.ch-pie-card .ch-chart{height:250px}}
.ch-pie-card .ch-chart-summary>span{grid-template-columns:8px minmax(0,1fr) auto;row-gap:3px}
.ch-pie-card .ch-chart-summary>span>i{grid-column:1;grid-row:1}
.ch-pie-card .ch-chart-summary>span>span{grid-column:2;grid-row:1}
.ch-pie-card .ch-chart-summary>span>b{grid-column:2;grid-row:2}
.ch-pie-card .ch-chart-summary>span>small{grid-column:3;grid-row:1/3;align-self:center}
