:root{--bg:#f7f9fc;--apricot:#ffd29d;--cool:#a0cfff;--primary:#2868d8;--primary-strong:#1f56b6;--primary-soft:#e8f0ff;--ink:#202c40;--muted:#5b6d85;--line:#202c401a;--line-strong:#202c402e;--ok:#16844a;--ok-soft:#e4f7ed;--warn:#a8620c;--warn-soft:#fdf1e0;--danger:#c0392f;--danger-soft:#fdecea;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--radius-surface:20px;--radius-surface-sm:18px;--radius-control:11px;--radius-pill:999px;--glass-nav:linear-gradient(145deg, #ffffff9e, #ffffff57);--glass-card:linear-gradient(145deg, #ffffffc7, #ffffff6b);--glass-modal:linear-gradient(145deg, #fffffff7, #ffffffed);--glass-line:#ffffffd1;--blur-sticky:blur(10px) saturate(120%);--solid-well:#fbfdff;--shadow-glass:inset 0 1px 0 #ffffffd6, 0 18px 48px #37537624;--shadow-soft:inset 0 1px 0 #fffc, 0 10px 28px #3753761a;--shadow-modal:inset 0 1px 0 #ffffffe6, 0 30px 80px #14285052;--control-fill:#ffffffdb;--focus-ring:0 0 0 3px #2868d847;--font:"PingFang SC", "Microsoft YaHei", Inter, system-ui, -apple-system, sans-serif}*{box-sizing:border-box}html,body{max-width:100%}html{background:var(--bg)}body{min-height:100vh;color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;background:0 0;margin:0;font-size:14px;line-height:1.55}body:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(70rem 45rem at -8% 6%,#ffd29d75,#0000 55%),radial-gradient(70rem 44rem at 108% 9%,#a0cfff80,#0000 58%);position:fixed;inset:0;transform:translateZ(0)}button,input,select,textarea{font:inherit;color:inherit}h1,h2,h3,p{margin:0}h1{letter-spacing:.01em;font-size:20px;font-weight:650}h2{font-size:15px;font-weight:650}:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:var(--radius-control)}::selection{background:#2868d829}.adminLayout{gap:var(--space-4);padding:var(--space-4);grid-template-columns:236px minmax(0,1fr);align-items:start;min-height:100vh;display:grid}.sidebar{top:var(--space-4);height:calc(100vh - var(--space-4) * 2);gap:var(--space-4);padding:var(--space-4);background:var(--glass-nav);border:1px solid var(--glass-line);box-shadow:var(--shadow-glass);border-radius:22px;flex-direction:column;display:flex;position:sticky;overflow:hidden auto}.brand{align-items:center;gap:var(--space-3);padding:var(--space-2);display:flex}.brandMark{background:linear-gradient(145deg, #3d7ce8, var(--primary-strong));color:#fff;border-radius:13px;flex:none;place-items:center;width:40px;height:40px;font-size:18px;font-weight:800;display:grid;box-shadow:0 8px 18px #2868d852}.brandText{min-width:0;font-size:15px;font-weight:650}.brandText small{color:var(--muted);margin-top:2px;font-size:11px;font-weight:500;display:block}.sidebarNav{gap:4px;display:grid}.sidebarNav a{align-items:center;gap:var(--space-3);padding:10px var(--space-3);border-radius:var(--radius-control);color:var(--ink);border:1px solid #0000;font-size:13.5px;text-decoration:none;transition:background-color .16s,border-color .16s;display:flex}.sidebarNav a b{border:1px solid var(--line);width:26px;height:26px;color:var(--primary);background:#ffffffb8;border-radius:9px;flex:none;place-items:center;font-size:12px;font-weight:650;display:grid}.sidebarNav a:hover{border-color:var(--glass-line);background:#fff9}.sidebarNav a.active{border-color:var(--glass-line);box-shadow:var(--shadow-soft);background:linear-gradient(145deg,#fffffff2,#ffffffc7);font-weight:650}.sidebarNav a.active b{background:var(--primary);color:#fff;border-color:#0000}.logout{min-height:40px;padding:10px var(--space-3);border-radius:var(--radius-control);border:1px solid var(--line-strong);background:var(--control-fill);color:var(--muted);cursor:pointer;margin-top:auto;font-size:13px}.logout:hover{color:var(--danger);border-color:#c0392f5c}.sidebarRole{padding:0 var(--space-3) var(--space-2);color:var(--ink);gap:2px;margin-top:auto;font-size:12.5px;display:grid}.sidebarRole small{color:var(--muted);font-size:11.5px}.sidebarRole+.logout{margin-top:0}.workspace{gap:var(--space-4);align-content:start;min-width:0;display:grid}.topbar{top:var(--space-4);z-index:5;justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-surface-sm);border:1px solid var(--glass-line);box-shadow:var(--shadow-glass);-webkit-backdrop-filter:var(--blur-sticky);backdrop-filter:var(--blur-sticky);background:linear-gradient(145deg,#ffffffdb,#ffffffb3);display:flex;position:sticky}.topbar div{min-width:0}.topbar p{color:var(--muted);margin-top:2px;font-size:12.5px}.envBadge{padding:6px var(--space-3);border-radius:var(--radius-pill);background:var(--primary-soft);color:var(--primary-strong);border:1px solid #2868d824;flex:none;font-size:12px}.content{gap:var(--space-4);min-width:0;display:grid}.card,.panel,.tableCard,.detailCard,.metricCard,.conversionCard,.userCard{border-radius:var(--radius-surface-sm);background:var(--glass-card);border:1px solid var(--glass-line);box-shadow:var(--shadow-soft)}.panel,.detailCard{padding:var(--space-4);gap:var(--space-3);display:grid}.sectionTitle{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.sectionTitle p,.panel>p,.detailCard>p{color:var(--muted);margin-top:3px;font-size:12.5px}.hint{color:var(--muted);font-size:12.5px}.well{padding:var(--space-3);border-radius:var(--radius-control);border:1px solid var(--line);background:var(--solid-well);color:#43506a;white-space:pre-wrap;word-break:break-word;max-height:420px;margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px;line-height:1.6;overflow:auto}.metricGrid{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(168px,1fr));display:grid}.metricCard{padding:var(--space-4);align-content:start;gap:6px;display:grid}.metricCard span{color:var(--muted);font-size:12.5px}.metricCard strong{letter-spacing:-.01em;font-size:26px;font-weight:650}.metricCard i{color:var(--muted);font-size:11.5px;font-style:normal}.conversionCard{padding:var(--space-4);gap:var(--space-3);display:grid}.conversionHeading{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.conversionHeading p{color:var(--muted);margin-top:3px;font-size:12.5px}.conversionLink{color:var(--primary-strong);flex:none;font-weight:650;text-decoration:none}.conversionLink:hover{text-underline-offset:3px;text-decoration:underline}.conversionMetrics{border:1px solid var(--line);border-radius:var(--radius-control);background:var(--solid-well);grid-template-columns:repeat(4,minmax(0,1fr));margin:0;display:grid}.conversionMetrics>div{min-width:0;padding:var(--space-3)}.conversionMetrics>div+div{border-left:1px solid var(--line)}.conversionMetrics dt{color:var(--muted);font-size:12px}.conversionMetrics dd{margin:3px 0 0;font-size:19px;font-weight:650}.toolbar{align-items:center;gap:var(--space-2);padding:var(--space-2);border-radius:var(--radius-surface-sm);background:var(--glass-nav);border:1px solid var(--glass-line);box-shadow:var(--shadow-soft);flex-wrap:wrap;display:flex}.toolbar.plain{box-shadow:none;background:0 0;border:0;padding:0}input,select,textarea{min-height:38px;padding:8px var(--space-3);border-radius:var(--radius-control);border:1px solid var(--line-strong);background:var(--control-fill);transition:border-color .16s,box-shadow .16s}input::placeholder,textarea::placeholder{color:#93a1b5}input:focus,select:focus,textarea:focus{border-color:var(--primary);box-shadow:var(--focus-ring);outline:none}input:disabled{color:#9aa7ba;background:#f0f4fae6}.searchField{flex:240px;min-width:0}.searchInput{width:100%}.costInput{text-align:right;font-variant-numeric:tabular-nums;width:6.5rem}.segmented{border-radius:var(--radius-control);border:1px solid var(--line);background:#f0f4fadb;gap:2px;padding:3px;display:flex}.segmented button{min-height:32px;padding:6px var(--space-3);color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;font-size:12.5px}.segmented button[aria-pressed=true]{color:var(--primary-strong);background:#fff;font-weight:650;box-shadow:0 3px 10px #1b39661f}.chipRow{flex-wrap:wrap;gap:6px;display:flex}.chip{min-height:32px;padding:6px var(--space-3);border-radius:var(--radius-pill);border:1px solid var(--line-strong);background:var(--control-fill);color:var(--muted);cursor:pointer;align-items:center;gap:6px;font-size:12.5px;transition:border-color .16s,background-color .16s,color .16s;display:inline-flex}.chip:hover{border-color:#2868d866}.chip[aria-pressed=true]{background:var(--primary-soft);color:var(--primary-strong);border-color:#2868d86b;font-weight:650}.chip .count{color:var(--muted);font-variant-numeric:tabular-nums}.chip[aria-pressed=true] .count{color:var(--primary-strong)}.primary,.ghost,.iconButton{border-radius:var(--radius-control);cursor:pointer;min-height:38px;transition:background-color .16s,border-color .16s,color .16s}.primary{padding:9px var(--space-4);background:linear-gradient(145deg, #3a78e0, var(--primary));color:#fff;border:1px solid #0000;font-weight:650}.primary:hover:not(:disabled){background:linear-gradient(145deg, #3370d8, var(--primary-strong))}.primary:disabled{cursor:not-allowed;background:#2868d857}.ghost{padding:9px var(--space-3);border:1px solid var(--line-strong);background:var(--control-fill);color:var(--ink)}.ghost:hover:not(:disabled){color:var(--primary-strong);border-color:#2868d86b}.iconButton{border:1px solid var(--line-strong);background:var(--control-fill);width:38px;color:var(--muted);flex:none;place-items:center;padding:0;font-size:15px;line-height:1;display:grid}.iconButton:hover{color:var(--primary-strong);border-color:#2868d86b}.iconButton.on{color:var(--warn);background:var(--warn-soft);border-color:#a8620c66}.wide{width:100%}.linkButton{color:var(--primary);cursor:pointer;background:0 0;border:0;padding:6px;text-decoration:underline}.switch{min-height:32px;padding:6px var(--space-3);border-radius:var(--radius-pill);border:1px solid var(--line-strong);color:var(--muted);cursor:pointer;background:#f0f4fae6;font-size:12.5px}.switch.on{background:var(--ok-soft);color:var(--ok);border-color:#16844a52;font-weight:650}.tableCard{overflow:auto}table{border-collapse:collapse;width:100%}th,td{padding:11px var(--space-4);text-align:left;border-bottom:1px solid var(--line);vertical-align:middle;font-size:13px}th{z-index:1;color:var(--muted);white-space:nowrap;background:#f8fbfff5;font-size:12px;font-weight:600;position:sticky;top:0}tbody tr:last-child td{border-bottom:0}tbody tr:hover td{background:#ffffff9e}td small{color:var(--muted);margin-top:3px;font-size:11.5px;display:block}td.num{font-variant-numeric:tabular-nums}.badge{padding:4px var(--space-2);border-radius:var(--radius-pill);background:var(--ok-soft);color:var(--ok);white-space:nowrap;font-size:12px;display:inline-block}.badge.off,.badge.disabled{background:var(--danger-soft);color:var(--danger)}.badge.neutral{color:var(--muted);background:#f0f4faf0}.badge.warn{background:var(--warn-soft);color:var(--warn)}.userGrid{gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.userCard{padding:var(--space-4);gap:var(--space-3);align-content:start;min-width:0;display:grid}.userCardHead{justify-content:space-between;align-items:flex-start;gap:var(--space-2);min-width:0;display:flex}.userCardHead>div{min-width:0}.userCardHead b{overflow-wrap:anywhere;font-size:14px;font-weight:650;display:block}.userCardHead small{color:var(--muted);overflow-wrap:anywhere;font-size:11.5px}.userMeta{gap:4px;margin:0;font-size:12.5px;display:grid}.userMeta>div{justify-content:space-between;gap:var(--space-2);min-width:0;display:flex}.userMeta dt{color:var(--muted);flex:none}.userMeta dd{text-align:right;overflow-wrap:anywhere;margin:0}.state{padding:var(--space-4);text-align:center;color:var(--muted);font-size:12.5px}.note{padding:var(--space-3);border-radius:var(--radius-control);border:1px solid var(--line);background:var(--solid-well);color:var(--muted);font-size:12.5px}.note b{color:var(--ink)}.notice{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-surface-sm);background:linear-gradient(145deg,#ffffffeb,#e8f0ffdb);border:1px solid #2868d838;flex-wrap:wrap;font-size:13px;display:flex}.notice.error{color:var(--danger);background:linear-gradient(145deg,#fffffff0,#fdeceae6);border-color:#c0392f4d}.emptyState{gap:var(--space-2);padding:var(--space-6) var(--space-4);border-radius:var(--radius-surface-sm);border:1px dashed var(--line-strong);text-align:center;background:#ffffff8f;justify-items:center;display:grid}.emptyState strong{font-size:14px;font-weight:650}.emptyState p{max-width:46ch;color:var(--muted);font-size:12.5px}.whoami{align-items:baseline;gap:var(--space-2);flex-wrap:wrap;min-width:0;display:flex}.whoami b{overflow-wrap:anywhere;font-size:14px}.dialogOverlay{width:min(560px, calc(100vw - var(--space-4) * 2));max-width:none;max-height:calc(100dvh - var(--space-4) * 2);border:1px solid var(--glass-line);border-radius:var(--radius-surface);background:var(--glass-modal);box-shadow:var(--shadow-modal);color:var(--ink);margin:auto;padding:0;overflow:auto}.dialogOverlay[open]{place-items:center;display:grid}.dialogOverlay::backdrop{background:#121e328c}.dialog{gap:var(--space-4);width:100%;padding:var(--space-6);display:grid}.dialog p{color:var(--muted);font-size:13px}.dialog footer{justify-content:flex-end;gap:var(--space-2);bottom:calc(var(--space-6) * -1);margin:0 calc(var(--space-6) * -1) calc(var(--space-6) * -1);padding:var(--space-3) var(--space-6) var(--space-4);background:var(--solid-well);border-top:1px solid var(--line);border-radius:0 0 var(--radius-surface) var(--radius-surface);flex-wrap:wrap;display:flex;position:sticky}.dialog footer button{min-height:40px;padding:9px var(--space-4);border-radius:var(--radius-control);cursor:pointer}.dialog footer button:not(.primary){border:1px solid var(--line-strong);background:var(--control-fill)}.dialog footer button:not(.primary):hover{color:var(--primary-strong);border-color:#2868d86b}.field{gap:6px;font-size:13px;font-weight:650;display:grid}.field input,.field select,.field textarea{width:100%;min-height:42px;font-weight:400}.field textarea{resize:vertical;min-height:104px}.field small{color:var(--muted);font-size:11.5px;font-weight:400}.field input[aria-invalid=true]{border-color:var(--danger)}.fieldError{color:var(--danger);align-items:baseline;gap:6px;font-size:12.5px;display:flex}.row{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.row.between{justify-content:space-between}.row.detailActions{justify-content:flex-end}.dialog .pickList{max-height:260px;overflow:auto}.pager{padding:var(--space-1) 0}.field.inlineField{min-width:150px;max-width:220px;font-size:12px}.field.inlineField select{min-height:36px}.crumbs{align-items:center;gap:var(--space-2);color:var(--muted);flex-wrap:wrap;font-size:12.5px;display:flex}.crumbs b{color:var(--ink)}.stack{gap:var(--space-2);display:grid}.grow{flex:auto;min-width:0}.nowrap{white-space:nowrap}.tabular{font-variant-numeric:tabular-nums}.visuallyHidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (max-width:1180px){.userGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:1024px){.adminLayout{grid-template-columns:72px minmax(0,1fr)}.sidebar{padding:var(--space-3) var(--space-2);align-items:center}.brand{padding:var(--space-2) 0}.brandText,.sidebarNav a span{display:none}.sidebarNav a{justify-content:center;padding:8px}.logout{width:100%;padding:var(--space-2) 0;font-size:0}.logout:before{content:"退";font-size:13px}}@media (max-width:768px){.userGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.toolbar{align-items:stretch}.searchField{flex-basis:100%}}@media (max-width:640px){.adminLayout{gap:var(--space-3);padding:var(--space-2);grid-template-columns:minmax(0,1fr)}.sidebar{align-items:center;gap:var(--space-3);height:auto;padding:var(--space-3);grid-template-columns:minmax(0,1fr) auto;display:grid;position:static;overflow:visible}.brand{grid-area:1/1;padding:0}.brandText,.sidebarNav a span{display:block}.sidebarNav{-webkit-overflow-scrolling:touch;scrollbar-width:thin;grid-area:2/1/auto/-1;grid-auto-columns:max-content;grid-auto-flow:column;gap:6px;padding-bottom:2px;overflow-x:auto}.sidebarNav a{padding:8px var(--space-3);justify-content:flex-start}.sidebarNav a b{width:22px;height:22px;font-size:11px}.sidebarNav a span{white-space:nowrap}.logout{width:auto;padding:8px var(--space-3);grid-area:1/2;justify-self:end;margin:0;font-size:13px}.logout:before{content:none}.topbar{padding:var(--space-3);flex-wrap:wrap;position:static}.envBadge{order:3}.content{gap:var(--space-3)}.userGrid,.metricGrid{grid-template-columns:minmax(0,1fr)}.conversionHeading{align-items:flex-start}.conversionMetrics{grid-template-columns:repeat(2,minmax(0,1fr))}.conversionMetrics>div+div{border-left:0}.conversionMetrics>div:nth-child(2n){border-left:1px solid var(--line)}.conversionMetrics>div:nth-child(n+3){border-top:1px solid var(--line)}.toolbar>*,.toolbar .segmented,.toolbar .chipRow{flex:100%}.segmented button{flex:1 1 0}.chip,.segmented button,.switch,.ghost,.primary,.iconButton{min-height:38px}.dialog{padding:var(--space-4)}.dialog footer{justify-content:stretch}.dialog footer button{flex:auto}}@media (max-width:420px){.topbar{gap:var(--space-2)}.envBadge{font-size:11px}.userCard,.metricCard{padding:var(--space-3)}}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.sidebar,.topbar,.toolbar,.loginCard,.card,.panel,.tableCard,.detailCard,.metricCard,.userCard,.dialogOverlay{background:#fff}}@media (prefers-reduced-transparency:reduce){.sidebar,.topbar,.toolbar,.loginCard,.card,.panel,.tableCard,.detailCard,.metricCard,.userCard,.dialogOverlay{background:#fff}.topbar,.dialogOverlay,.dialogOverlay::backdrop{-webkit-backdrop-filter:none;backdrop-filter:none}.dialogOverlay::backdrop{background:#121e3299}}@media (prefers-contrast:more){:root{--muted:#3d4c63;--line:#202c4052;--line-strong:#202c408c}.sidebar,.topbar,.toolbar,.loginCard,.card,.panel,.tableCard,.detailCard,.metricCard,.userCard,.dialogOverlay{border-color:var(--line-strong);background:#fff}.topbar,.dialogOverlay,.dialogOverlay::backdrop{-webkit-backdrop-filter:none;backdrop-filter:none}th,td,.field input,.field select,.field textarea,input,select,textarea,.chip,.switch,.ghost,.iconButton,.segmented{border-color:var(--line-strong)}.sidebarNav a.active{border-color:var(--primary)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.analyticsPage{gap:var(--space-4);min-width:0;display:grid}.analyticsToolbar,.analyticsPanel,.analyticsError,.analyticsEmpty,.analyticsLoading{border:1px solid var(--line);border-radius:var(--radius-surface-sm);background:#fff;box-shadow:0 8px 24px #37537614}.analyticsToolbar{gap:var(--space-3);padding:var(--space-4);grid-template-columns:repeat(4,minmax(130px,1fr));display:grid}.analyticsToolbar label,.analyticsEventFilter{color:var(--muted);gap:5px;font-size:12px;font-weight:650;display:grid}.analyticsToolbar select,.analyticsEventFilter select{border:1px solid var(--line-strong);border-radius:var(--radius-control);cursor:pointer;background:#fff;min-height:44px;padding:0 34px 0 12px}.analyticsKpis{gap:var(--space-2);grid-template-columns:repeat(6,minmax(112px,1fr));display:grid}.analyticsKpis>div{padding:var(--space-3);border:1px solid var(--line);background:#fff;border-radius:14px;box-shadow:0 5px 16px #3753760f}.analyticsKpis span{color:var(--muted);font-size:12px;display:block}.analyticsKpis strong{font-variant-numeric:tabular-nums;margin-top:5px;font-size:clamp(19px,2vw,25px);display:block}.analyticsPanel{gap:var(--space-4);padding:var(--space-4);min-width:0;display:grid}.analyticsPanel>header{justify-content:space-between;align-items:end;gap:var(--space-3);display:flex}.analyticsPanel header p{color:var(--muted);margin-top:2px;font-size:12.5px}.analyticsFunnel{border:1px solid var(--line);background:var(--line);border-radius:14px;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin:0;padding:0;list-style:none;display:grid;overflow:hidden}.analyticsFunnel li{padding:var(--space-4);background:linear-gradient(150deg,#fff,#f6f9ff);gap:5px;display:grid;position:relative}.analyticsFunnel li:not(:last-child):after{content:"";z-index:1;border-top:1px solid var(--primary);border-right:1px solid var(--primary);background:#f8faff;width:9px;height:9px;position:absolute;top:29px;right:-5px;transform:rotate(45deg)}.analyticsStep{color:#fff;background:var(--primary);border-radius:50%;place-items:center;width:24px;height:24px;font-size:11px;display:grid}.analyticsFunnel>li>strong{font-variant-numeric:tabular-nums;font-size:25px}.analyticsFunnel dl{gap:3px;margin:2px 0 0;display:grid}.analyticsFunnel dl div{color:var(--muted);justify-content:space-between;gap:8px;font-size:11.5px;display:flex}.analyticsFunnel dd{color:var(--ink);margin:0;font-weight:650}.analyticsTranslated{gap:0;display:inline-grid}.analyticsTranslated small{color:var(--muted);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:10.5px;font-weight:400}.analyticsLegend{gap:var(--space-3);color:var(--muted);font-size:12px;display:flex}.analyticsLegend span:before{content:"";background:var(--primary);border-radius:2px;width:8px;height:8px;margin-right:5px;display:inline-block}.analyticsLegend span+span:before{background:var(--ok)}.analyticsTrend{border-bottom:1px solid var(--line-strong);align-items:stretch;gap:clamp(3px,.8vw,10px);min-height:210px;padding:8px 4px 0;display:flex;overflow-x:auto}.analyticsTrendDay{text-align:center;flex:1 0 35px;grid-template-rows:150px auto auto;gap:3px;min-width:35px;font-size:10.5px;display:grid}.analyticsBars{justify-content:center;align-items:end;gap:3px;display:flex}.analyticsBars i{background:var(--primary);border-radius:3px 3px 0 0;width:min(12px,38%);min-height:2px;display:block}.analyticsBars .payments{background:var(--ok)}.analyticsTrendDay strong{font-variant-numeric:tabular-nums;font-size:10.5px}.analyticsTrendDay time{color:var(--muted)}.analyticsBreakdowns{gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.analyticsBreakdowns>div{min-width:0;padding:var(--space-3);border:1px solid var(--line);border-radius:12px}.analyticsBreakdowns h3{margin:0 0 8px;font-size:13px}.analyticsBreakdowns table{border-collapse:collapse;width:100%;font-size:12px}.analyticsBreakdowns th,.analyticsBreakdowns td{border-bottom:1px solid var(--line);text-align:right;padding:7px 5px}.analyticsBreakdowns th:first-child,.analyticsBreakdowns td:first-child{text-align:left}.analyticsTableScroll{border:1px solid var(--line);border-radius:12px;max-width:100%;overflow-x:auto}.analyticsEvents{border-collapse:collapse;width:100%;min-width:910px}.analyticsEvents th,.analyticsEvents td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:10px 12px}.analyticsEvents th{color:var(--muted);white-space:nowrap;background:#f6f8fc;font-size:11.5px}.analyticsEvents td{font-size:12px}.analyticsSubject{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.analyticsPagePath{text-overflow:ellipsis;white-space:nowrap;max-width:240px;color:var(--muted);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;display:inline-block;overflow:hidden}.analyticsTags{gap:10px;display:flex}.analyticsSafeFields{min-width:160px;color:var(--muted);gap:2px;display:grid}.analyticsPagination{justify-content:space-between;align-items:center;gap:var(--space-3);color:var(--muted);font-size:12px;display:flex}.analyticsPagination div{gap:var(--space-2);display:flex}.analyticsPagination button,.analyticsError button{min-height:44px;padding:0 var(--space-4);border:1px solid var(--line-strong);border-radius:var(--radius-control);cursor:pointer;background:#fff}.analyticsPagination button:disabled{cursor:not-allowed;opacity:.45}.analyticsError{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4);border-left:4px solid var(--danger);display:flex}.analyticsError p,.analyticsEmpty p{color:var(--muted);margin-top:3px}.analyticsError button{color:#fff;border-color:var(--primary);background:var(--primary)}.analyticsEmpty{padding:40px var(--space-4);text-align:center}.analyticsNoRows{padding:var(--space-4);color:var(--muted);text-align:center}.analyticsLoading{min-height:420px;padding:var(--space-4);color:var(--muted)}.analyticsLoading i{height:62px;margin-top:var(--space-3);background:linear-gradient(90deg,#f1f4f8,#f8fafc,#f1f4f8) 0 0/200% 100%;border-radius:12px;animation:1.8s ease-in-out infinite analyticsPulse;display:block}@keyframes analyticsPulse{to{background-position:-200% 0}}@media (max-width:1024px){.analyticsKpis{grid-template-columns:repeat(3,minmax(0,1fr))}.analyticsBreakdowns{grid-template-columns:minmax(0,1fr)}}@media (max-width:768px){.analyticsToolbar,.analyticsFunnel{grid-template-columns:repeat(2,minmax(0,1fr))}.analyticsFunnel li:after{display:none}.analyticsPanel>header{flex-direction:column;align-items:stretch}}@media (max-width:420px){.analyticsToolbar,.analyticsKpis,.analyticsFunnel{grid-template-columns:minmax(0,1fr)}.analyticsPanel{padding:var(--space-3)}.analyticsPagination{flex-direction:column;align-items:stretch}.analyticsPagination button{flex:1}}@media (prefers-reduced-motion:reduce){.analyticsLoading i{animation:none}}.changelogCell{max-width:240px}.changelogCell span{text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom;max-width:100%;display:inline-block;overflow:hidden}
.loginPage{align-items:center;gap:var(--space-6);min-height:100vh;padding:var(--space-6);grid-template-columns:minmax(0,1fr) min(420px,100%);display:grid}.loginBrand{gap:var(--space-3);padding:var(--space-4);justify-items:start;min-width:0;display:grid}.loginBrand .brandMark{border-radius:18px;width:56px;height:56px;font-size:24px}.loginBrand h1{letter-spacing:.01em;font-size:30px;font-weight:700}.loginBrand p{max-width:42ch;color:var(--muted);font-size:13.5px}.loginCard{gap:var(--space-4);padding:var(--space-6);border-radius:var(--radius-surface);background:var(--glass-card);border:1px solid var(--glass-line);box-shadow:var(--shadow-glass);display:grid}.loginCard>header h2{font-size:18px}.loginCard>header p{color:var(--muted);margin-top:3px;font-size:12.5px}.loginTabs{border-radius:var(--radius-control);border:1px solid var(--line);background:#f0f4fadb;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;padding:3px;display:grid}.loginTabs button{min-height:36px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:8px 6px;font-size:13px;transition:background-color .16s,color .16s}.loginTabs button[aria-selected=true]{color:var(--primary-strong);background:#fff;font-weight:650;box-shadow:0 3px 10px #1b39661f}.loginBody{min-height:296px}.fieldStack{gap:var(--space-4);display:grid}.fieldStack .primary{min-height:42px}.inputAction{border:1px solid var(--line-strong);border-radius:var(--radius-control);background:var(--control-fill);align-items:stretch;display:flex;overflow:hidden}.inputAction:focus-within{border-color:var(--primary);box-shadow:var(--focus-ring)}.inputAction input{background:0 0;border:0;border-radius:0;flex:auto;min-width:0;min-height:40px}.inputAction input:focus{box-shadow:none;outline:none}.inputAction button{padding:0 var(--space-3);border:0;border-left:1px solid var(--line);color:var(--primary);cursor:pointer;background:#ffffffb8;flex:none;font-size:13px}.inputAction button:disabled{color:#9aa7ba;cursor:not-allowed}.wechatLogin{gap:var(--space-2);text-align:center;padding-top:var(--space-2);justify-items:center;display:grid}.qrFrame{width:200px;height:200px;margin-bottom:var(--space-2);border:1px solid var(--line);border-radius:var(--radius-control);background:var(--solid-well);color:var(--muted);place-items:center;font-size:12.5px;display:grid;overflow:hidden}.qrFrame img{object-fit:contain;width:100%;height:100%;display:block}.wechatLogin strong{font-size:14px}.wechatLogin p{font-size:12.5px}@media (max-width:900px){.loginPage{padding:var(--space-4);grid-template-columns:minmax(0,1fr);justify-items:center}.loginBrand{text-align:center;padding:0 0 var(--space-2);justify-items:center}.loginBrand h1{font-size:24px}.loginCard{width:min(420px,100%);padding:var(--space-4)}}@media (max-width:420px){.loginPage{padding:var(--space-2)}.loginTabs button{padding:8px 2px;font-size:12px}.qrFrame{width:168px;height:168px}}
