:root{--bg: #f5f7fb;--panel: #ffffff;--line: #e7ebf2;--line-strong: #d8e0ec;--text: #202939;--muted: #758195;--subtle: #a3adbd;--blue: #2491f7;--blue-dark: #126dd6;--blue-soft: #eaf4ff;--green: #19c37d;--green-soft: #e9fbf3;--red: #ff4757;--red-soft: #fff0f1;--yellow: #ffd52f;--yellow-soft: #fff8dc;--cyan: #19d4e7;--indigo: #2337d8;--shadow: 0 16px 44px rgba(20, 34, 67, .08)}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;color:var(--text);background:var(--bg);font-family:Inter,PingFang SC,Microsoft YaHei,Arial,sans-serif;letter-spacing:0}button,input,select,textarea{font:inherit;letter-spacing:0}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid rgba(36,145,247,.38);outline-offset:2px}button:disabled{cursor:not-allowed;opacity:.46}.app-shell{display:flex;min-height:100vh;background:linear-gradient(180deg,rgba(255,255,255,.76),rgba(245,247,251,.98)),var(--bg)}.main-area{display:flex;flex:1;min-width:0;flex-direction:column}.sidebar{position:sticky;top:0;z-index:5;width:286px;height:100vh;overflow-y:auto;border-right:1px solid var(--line);background:rgba(255,255,255,.95);box-shadow:8px 0 32px #1422430f;transition:width .22s ease}.sidebar.collapsed{width:88px}.sidebar-brand{display:flex;min-height:178px;align-items:center;justify-content:center;flex-direction:column;gap:16px;padding:26px 22px;text-align:center}.sidebar.collapsed .sidebar-brand{min-height:104px;padding:18px}.brand-mark{display:inline-flex;width:58px;height:58px;flex:0 0 auto;align-items:center;justify-content:center;border-radius:8px;color:#fff;background:linear-gradient(135deg,#1388ff,#2f6dff);box-shadow:0 12px 22px #1f84ff3d}.sidebar-brand .brand-mark{width:72px;height:72px}.sidebar-brand h1{width:100%;margin:0;color:#5b6270;font-size:25px;font-weight:800;line-height:1.34}.nav-list{padding:0 10px 22px}.nav-group{padding:7px 0}.nav-title,.nav-item{display:flex;width:100%;min-height:50px;align-items:center;gap:12px;border:0;background:transparent;color:#5d6470;text-align:left}.nav-title{padding:0 14px;border-top:1px solid var(--line);color:#6d7582;font-weight:700}.nav-title svg:last-child{margin-left:auto;color:#b5bdc9}.nav-item{padding:0 16px 0 42px;border-radius:8px;font-size:15px;font-weight:650}.sidebar.collapsed .nav-item{justify-content:center;padding:0}.nav-item svg{color:#707885}.nav-item:hover{color:var(--blue-dark);background:#f3f8ff}.nav-item.active{color:var(--blue-dark);background:var(--blue-soft);box-shadow:inset 3px 0 0 var(--blue)}.nav-item.active svg{color:var(--blue)}.topbar{position:sticky;top:0;z-index:4;display:flex;min-height:76px;align-items:center;gap:18px;padding:0 24px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.92);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.breadcrumb{display:flex;min-width:0;flex:1;align-items:center;gap:10px;color:#8a93a3;font-size:15px;font-weight:650;white-space:nowrap}.breadcrumb strong{color:#4e5868}.top-actions{display:flex;align-items:center;gap:10px}.icon-button,.ghost-btn,.primary-btn,.toolbar-btn,.date-pill,.user-menu,.tiny-action{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:8px;border:1px solid var(--line-strong);background:#fff;color:#596274;text-decoration:none;line-height:1.2;transition:transform .15s ease,border-color .15s ease,background .15s ease,color .15s ease,box-shadow .15s ease}.icon-button{width:42px;height:42px;padding:0}.icon-button:hover,.ghost-btn:hover,.toolbar-btn:hover,.date-pill:hover,.user-menu:hover,.tiny-action:hover{transform:translateY(-1px);border-color:#bfd2ea;background:#f7fbff;box-shadow:0 8px 20px #14224312}.primary-btn{min-height:42px;padding:0 18px;border:1px solid var(--blue);color:#fff;background:linear-gradient(180deg,#45a7ff,var(--blue));font-weight:750;box-shadow:0 9px 20px #2491f73d}.primary-btn:hover{background:var(--blue-dark)}.primary-btn.small,.ghost-btn.small,.toolbar-btn{min-height:40px;padding:0 14px}.ghost-btn{min-height:40px;padding:0 14px;font-weight:700}.toolbar-btn{font-weight:700}.toolbar-btn.success{border-color:#a9e8cb;color:#11965f;background:var(--green-soft)}.toolbar-btn.danger{border-color:#ffc2ca;color:#e31b3a;background:var(--red-soft)}.toolbar-btn.primary{border-color:#9ccbff;color:var(--blue-dark);background:var(--blue-soft)}.user-menu{min-height:42px;padding:0 12px 0 8px;font-weight:700}.avatar{display:inline-grid;width:28px;height:28px;place-items:center;border-radius:50%;color:#fff;background:#8b96a8;font-size:13px}.page-stage{flex:1;min-width:0;padding:22px 24px 36px}.page-content{display:flex;flex-direction:column;gap:18px;max-width:1760px;margin:0 auto}.section-header{display:flex;align-items:center;justify-content:space-between;gap:16px}.section-header h2{margin:4px 0 0;color:#2d3543;font-size:24px;line-height:1.2}.section-kicker{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:13px;font-weight:750}.date-pill{position:relative;min-height:40px;padding:0 14px;font-weight:700;cursor:pointer;-webkit-user-select:none;user-select:none}.date-pill.active{border-color:#9ccbff;background:#f2f8ff;color:var(--blue-dark);box-shadow:0 8px 20px #2491f724}.date-picker{position:relative;display:inline-flex;z-index:20}.section-header{position:relative}.month-popover{position:absolute;top:calc(100% + 8px);right:0;z-index:30;width:284px;border:1px solid var(--line-strong);border-radius:8px;background:#fff;padding:12px;box-shadow:0 18px 45px #1c2a4729}.month-picker-header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;margin-bottom:10px}.month-picker-header button,.month-grid button{min-height:34px;border:1px solid var(--line);border-radius:8px;background:#fff;color:#586273;font-weight:750;cursor:pointer}.month-picker-header button:hover,.month-grid button:hover{border-color:#9ccbff;background:#f4f9ff;color:var(--blue-dark)}.month-picker-header strong{color:#2d3543}.month-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.month-grid button.active{border-color:var(--blue);color:#fff;background:var(--blue)}.range-popover{width:320px}.range-presets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.range-presets button{min-height:34px;border:1px solid var(--line);border-radius:8px;background:#fff;color:#586273;font-weight:750;cursor:pointer}.range-presets button:hover{border-color:#9ccbff;background:#f4f9ff;color:var(--blue-dark)}.range-presets button.active{border-color:var(--blue);color:#fff;background:var(--blue)}.range-custom{display:grid;gap:10px;border-top:1px solid var(--line);margin-top:12px;padding-top:12px}.range-custom label{display:grid;gap:6px;color:var(--muted);font-size:12px;font-weight:750}.range-custom .control{height:38px;min-height:38px}.range-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.range-actions button{min-height:34px;padding:0 14px}.range-hint{color:var(--muted);font-size:13px;font-weight:650;margin:0 0 10px}.metrics-grid{display:grid;grid-template-columns:repeat(3,minmax(240px,1fr));gap:14px}.metric-card{--metric-color: var(--blue);--metric-soft: var(--blue-soft);position:relative;display:grid;grid-template-columns:auto 1fr auto;min-height:122px;align-items:center;gap:16px;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:linear-gradient(135deg,var(--metric-soft),transparent 42%),var(--panel);box-shadow:0 14px 36px #14224312;padding:20px 20px 20px 22px;animation:metric-pop .58s cubic-bezier(.2,.8,.2,1) both;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.metric-card:nth-child(1){animation-delay:40ms}.metric-card:nth-child(2){animation-delay:.1s}.metric-card:nth-child(3){animation-delay:.16s}.metric-card:nth-child(4){animation-delay:.22s}.metric-card:nth-child(5){animation-delay:.28s}.metric-card:nth-child(6){animation-delay:.34s}.metric-card:before{position:absolute;inset:18px auto 18px 0;width:4px;border-radius:0 999px 999px 0;background:var(--metric-color);content:""}.metric-card:hover{transform:translateY(-2px);border-color:#2491f73d;box-shadow:0 18px 42px #1422431c}.metric-card.blue{--metric-color: var(--blue);--metric-soft: var(--blue-soft)}.metric-card.yellow{--metric-color: var(--yellow);--metric-soft: var(--yellow-soft)}.metric-card.green{--metric-color: var(--green);--metric-soft: var(--green-soft)}.metric-card.cyan{--metric-color: var(--cyan);--metric-soft: #e8fbfd}.metric-card.indigo{--metric-color: var(--indigo);--metric-soft: #eef0ff}.metric-card.red{--metric-color: var(--red);--metric-soft: var(--red-soft)}.metric-icon{display:inline-grid;width:46px;height:46px;place-items:center;border-radius:8px;color:var(--metric-color);background:var(--metric-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--metric-color) 16%,transparent);animation:icon-pulse .7s ease both;animation-delay:inherit}.metric-card p{margin:0 0 12px;color:var(--muted);font-weight:700}.metric-card strong{display:block;font-size:34px;line-height:1;letter-spacing:0;animation:number-rise .62s cubic-bezier(.2,.8,.2,1) both;animation-delay:inherit}.metric-card em{align-self:start;border-radius:999px;padding:5px 9px;color:color-mix(in srgb,var(--metric-color) 72%,#1c293a);background:var(--metric-soft);font-size:12px;font-style:normal;font-weight:800;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--metric-color) 14%,transparent)}.overview-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.chart-panel,.table-panel,.agreement-panel,.info-panel{border:1px solid var(--line);border-radius:8px;background:var(--panel);box-shadow:var(--shadow)}.chart-panel{min-height:354px;overflow:hidden;padding:22px 24px 20px;animation:panel-rise .6s ease both}.overview-layout .chart-panel:nth-child(1){animation-delay:.12s}.overview-layout .chart-panel:nth-child(2){animation-delay:.18s}.overview-layout .chart-panel:nth-child(3){animation-delay:.24s}.overview-layout .chart-panel:nth-child(4){animation-delay:.3s}.panel-title{display:flex;align-items:center;gap:10px}.panel-title span{width:6px;height:22px;border-radius:8px;background:var(--blue)}.panel-title strong{font-size:18px}.panel-title small{margin-left:auto;color:var(--muted);font-weight:650}.bar-chart{display:grid;height:250px;align-items:end;gap:clamp(8px,1.2vw,18px);overflow-x:auto;overflow-y:hidden;border-bottom:1px solid var(--line-strong);margin-top:26px;padding:0 10px;background:linear-gradient(to top,transparent 24%,rgba(150,160,175,.12) 24%,rgba(150,160,175,.12) 25%,transparent 25%),linear-gradient(to top,transparent 49%,rgba(150,160,175,.12) 49%,rgba(150,160,175,.12) 50%,transparent 50%),linear-gradient(to top,transparent 74%,rgba(150,160,175,.12) 74%,rgba(150,160,175,.12) 75%,transparent 75%)}.bar-item{display:grid;min-width:0;height:100%;grid-template-rows:1fr auto auto;justify-items:center;gap:6px;color:var(--muted)}.bar-track{display:flex;width:min(42px,70%);height:100%;align-items:end}.bar-track span{display:block;width:100%;min-height:8px;border-radius:4px 4px 0 0;transform-origin:bottom;animation:bar-grow .76s cubic-bezier(.18,.88,.24,1) both;animation-delay:var(--bar-delay, 0ms);box-shadow:0 10px 24px color-mix(in srgb,currentColor 16%,transparent)}.bar-item b{color:#4c5564;font-size:12px}.bar-item small{min-height:28px;font-size:12px;text-align:center;white-space:nowrap}.quick-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.info-panel{min-height:210px;padding:18px;animation:panel-rise .58s ease both}.quick-grid .info-panel:nth-child(1){animation-delay:.26s}.quick-grid .info-panel:nth-child(2){animation-delay:.34s}.info-title{display:flex;align-items:center;gap:10px;margin-bottom:18px;color:#4b5565}.split-stat{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:18px}.split-stat strong{font-size:30px}.split-stat span{color:var(--muted);font-weight:700}.progress-line{display:grid;gap:8px;margin-top:14px}.progress-line div{display:flex;justify-content:space-between;color:var(--muted);font-size:13px;font-weight:750}progress{width:100%;height:8px;overflow:hidden;border:0;border-radius:999px;background:#eaf0f7}progress::-webkit-progress-bar{background:#eaf0f7}progress::-webkit-progress-value{border-radius:999px;background:linear-gradient(90deg,#2f9cf4,#19c37d);animation:progress-fill .88s ease both}@keyframes metric-pop{0%{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes panel-rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes number-rise{0%{opacity:0;transform:translateY(8px) scale(.92)}70%{transform:translateY(0) scale(1.04)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes icon-pulse{0%{opacity:0;transform:scale(.72) rotate(-8deg)}65%{transform:scale(1.08) rotate(0)}to{opacity:1;transform:scale(1) rotate(0)}}@keyframes bar-grow{0%{opacity:.35;transform:scaleY(0)}to{opacity:1;transform:scaleY(1)}}@keyframes progress-fill{0%{transform:scaleX(0);transform-origin:left}to{transform:scaleX(1);transform-origin:left}}@media (prefers-reduced-motion: reduce){.metric-card,.metric-icon,.metric-card strong,.chart-panel,.bar-track span,.info-panel,progress::-webkit-progress-value{animation:none}}.todo-list{display:grid;gap:12px;margin:0;padding:0;list-style:none}.todo-list li{min-height:38px;border-radius:8px;background:#f5f8fc;padding:10px 12px;color:#586273;font-weight:700}.table-panel{overflow:hidden}.filter-bar{display:grid;grid-template-columns:repeat(4,minmax(180px,1fr));align-items:center;gap:12px;padding:18px 18px 12px}.toolbar{display:flex;align-items:center;gap:10px;padding:8px 18px 12px;flex-wrap:wrap}.filter-bar>.control,.filter-bar>.input-with-icon,.filter-bar>button{width:100%;height:48px;min-width:0}.filter-bar .input-with-icon input{width:100%;height:48px}.filter-bar>.control{min-height:48px}.filter-bar>button{min-height:48px}.result-count{margin-left:auto;color:var(--muted);font-size:13px;font-weight:750}.control,.input-with-icon input,.form-grid input,.form-grid select,.setting-field input,.setting-field select,.agreement-panel textarea{height:48px;min-height:48px;border:1px solid var(--line-strong);border-radius:8px;outline:none;background:#fff;color:#344054;padding:0 13px}.form-grid textarea{min-height:132px;border:1px solid var(--line-strong);border-radius:8px;outline:none;background:#fff;color:#344054;padding:12px 13px;line-height:1.55}.control:focus,.input-with-icon input:focus,.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus,.setting-field input:focus,.setting-field select:focus,.agreement-panel textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #2491f71f}.control{width:190px}select.control{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto;line-height:1.2}.input-with-icon{position:relative}.input-with-icon svg{position:absolute;top:50%;left:12px;color:var(--subtle);transform:translateY(-50%)}.input-with-icon input{width:210px;padding-left:38px}.table-scroll{overflow:auto;border-top:1px solid var(--line)}.data-table{width:100%;min-width:1180px;border-collapse:separate;border-spacing:0}.data-table th,.data-table td{border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:16px 18px;color:#596273;font-size:14px;text-align:left;vertical-align:middle;white-space:nowrap}.data-table th{position:sticky;top:0;z-index:1;min-height:56px;color:#5f6b7b;background:#aebfd7;font-weight:800}.data-table tbody tr:nth-child(2n) td{background:#f5f8fc}.data-table tbody tr:hover td{background:#eef6ff}.select-cell{width:54px;text-align:center!important}.select-cell input{width:18px;height:18px;accent-color:var(--blue)}.actions-col{width:260px}.actions-cell{width:260px;min-width:260px}.row-actions{display:flex;align-items:center;gap:8px;justify-content:flex-start;min-width:0;white-space:nowrap}.tiny-action{min-height:30px;padding:0 9px;font-size:12px;font-weight:800}.tiny-action.primary{border-color:#8fbdff;color:#1f66ff;background:#edf5ff}.tiny-action.danger{border-color:#ffb6c1;color:#e31b3a;background:#fff0f1}.tiny-action.success{border-color:#a7e8ca;color:#11965f;background:#e9fbf3}.badge{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:850}.badge:before{width:8px;height:8px;border-radius:50%;content:""}.badge.success{color:#0e8a56;background:var(--green-soft)}.badge.success:before{background:var(--green)}.badge.danger{color:#d80f2f;background:var(--red-soft)}.badge.danger:before{background:#e40024}.badge.warning{color:#9a6900;background:var(--yellow-soft)}.badge.warning:before{background:#f6b300}.badge.muted{color:#667085;background:#eef2f7}.badge.muted:before{background:#9aa5b4}.tag,.channel,.pay-dot{display:inline-flex;align-items:center;border-radius:999px;padding:5px 10px;background:#eef4ff;color:#1e63d6;font-size:12px;font-weight:800}.channel.wechat{color:#11965f;background:#e9fbf3}.channel.alipay{color:#1e63d6;background:#edf5ff}.pay-dot{color:#8a94a6;background:#f1f4f8}.pay-dot.on{color:#11965f;background:var(--green-soft)}.product-thumb{display:grid;width:92px;height:70px;place-items:center;border:1px solid var(--line);border-radius:8px;background:#f8fbff}.product-thumb img{max-width:78px;max-height:58px;object-fit:contain}.empty-cell{height:220px;text-align:center!important;color:var(--muted)}.empty-cell img{display:block;width:86px;height:70px;object-fit:contain;margin:0 auto 12px;opacity:.68}.pagination{display:flex;min-height:58px;align-items:center;justify-content:flex-end;gap:12px;border-top:1px solid var(--line);padding:0 18px;color:var(--muted);font-weight:750}.rotate-90{transform:rotate(90deg)}.rotate--90{transform:rotate(-90deg)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;display:grid;place-items:center;background:rgba(23,31,44,.35);padding:24px}.modal{width:min(720px,100%);max-height:calc(100vh - 48px);overflow:auto;border-radius:8px;background:#fff;box-shadow:0 24px 80px #11182747}.modal-header,.drawer-header{display:flex;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid var(--line);padding:18px 20px}.modal-header h3,.drawer-header h3{margin:0;font-size:18px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px;row-gap:18px;padding:20px}.form-grid label,.setting-field{display:grid;gap:8px;color:#546072;font-size:13px;font-weight:800}.form-grid label.wide{grid-column:1 / -1}.form-grid textarea{resize:vertical}.permission-tree-field{max-height:320px;overflow:auto;border:1px solid var(--line-strong);border-radius:8px;background:#fbfdff;padding:12px 14px}.permission-node{display:grid;gap:8px}.permission-node+.permission-node{margin-top:8px}.permission-children{display:grid;gap:8px;border-left:1px dashed #ccd8e8;margin-left:12px;padding-left:18px}.permission-check{display:inline-flex!important;width:fit-content;min-height:28px;align-items:center;gap:8px!important;color:#4f5b6d!important;font-size:13px!important;font-weight:780!important}.permission-check input{width:16px;height:16px;min-height:0;accent-color:var(--blue)}.permission-check.partial span{color:var(--blue-dark)}.permission-node.level-0>.permission-check{color:#233044!important;font-size:14px!important}.permission-node.level-0>.permission-check span{font-weight:850}.modal-actions,.editor-actions{display:flex;justify-content:flex-end;gap:10px;border-top:1px solid var(--line);padding:16px 20px}.drawer{position:fixed;top:0;right:0;z-index:20;width:min(470px,96vw);height:100vh;overflow-y:auto;border-left:1px solid var(--line);background:#fff;box-shadow:-18px 0 48px #14224329}.detail-list{display:grid;gap:10px;padding:18px}.detail-list div{display:grid;grid-template-columns:126px 1fr;gap:12px;align-items:start;border-bottom:1px solid var(--line);padding-bottom:10px}.detail-list span{color:var(--muted);font-size:13px;font-weight:760}.detail-list strong{color:#354052;font-size:14px;font-weight:760}.drawer-extra,.permission-preview{margin:0 18px 18px;border:1px solid var(--line);border-radius:8px;background:#f9fbfe;padding:16px}.drawer-extra h4,.permission-preview h4{margin:0 0 14px}.permission-preview div{display:flex;flex-wrap:wrap;gap:8px}.permission-preview span{border-radius:999px;background:#edf5ff;color:#1f66ff;padding:6px 10px;font-size:12px;font-weight:800}.mini-device{display:flex;align-items:center;gap:14px;margin-bottom:12px}.mini-device img{width:74px;height:58px;object-fit:contain;border-radius:8px;background:#eef6ff;padding:8px}.mini-device div{display:grid;gap:5px}.mini-device span{color:var(--muted);font-size:13px}.agreement-panel{overflow:hidden}.tab-strip{display:flex;gap:0;padding:18px 18px 0}.tab-strip button{min-width:142px;min-height:50px;border:0;background:#f0f1f3;color:#687386;font-weight:800}.tab-strip button.active{color:#fff;background:#312bff}.editor-layout{display:grid;grid-template-columns:minmax(320px,.8fr) minmax(420px,1.2fr);gap:16px;padding:18px}.agreement-panel textarea{width:100%;min-height:510px;padding:16px;resize:vertical;line-height:1.8}.agreement-preview{min-height:510px;overflow:auto;border:1px solid var(--line);border-radius:8px;padding:22px 26px;color:#4b5565;background:#fff;line-height:1.95}.agreement-preview p{margin:0 0 18px}.settings-grid{display:grid;grid-template-columns:repeat(3,minmax(220px,1fr));gap:16px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:var(--shadow);padding:20px}.login-page{display:grid;min-height:100vh;grid-template-columns:minmax(420px,1fr) minmax(360px,480px);gap:28px;align-items:center;background:linear-gradient(90deg,rgba(8,19,39,.78),rgba(15,55,92,.66)),url(../assets/bg_ic.jpg) center/cover no-repeat;padding:44px}.login-visual{display:grid;gap:24px;color:#fff}.login-visual h1{max-width:680px;margin:0;font-size:clamp(34px,5vw,62px);line-height:1.08}.login-visual p{max-width:680px;margin:12px 0 0;color:#ffffffc7;font-size:17px;line-height:1.8}.eyebrow{margin:0!important;color:#ffffffc7!important;font-size:13px!important;font-weight:850;text-transform:uppercase}.hero-orbit{display:grid;width:min(430px,70vw);aspect-ratio:1.45;place-items:center;border:1px solid rgba(255,255,255,.18);border-radius:8px;background:rgba(255,255,255,.08);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.hero-orbit img{width:72%;max-height:82%;object-fit:contain;filter:drop-shadow(0 20px 45px rgba(0,0,0,.28))}.login-panel{display:grid;gap:16px;border:1px solid rgba(255,255,255,.18);border-radius:8px;background:rgba(255,255,255,.96);box-shadow:0 24px 80px #00000040;padding:30px}.login-panel h2{margin:0;font-size:24px}.login-panel label{display:grid;gap:8px;color:#596274;font-weight:800}.login-panel input{height:48px;min-height:48px;border:1px solid var(--line-strong);border-radius:8px;padding:0 13px;outline:none}.login-panel input:focus{border-color:var(--blue);box-shadow:0 0 0 3px #2491f721}.captcha-row{display:grid;grid-template-columns:1fr 116px;gap:10px}.captcha-box{display:grid;min-height:48px;place-items:center;border:1px solid #bcd7ff;border-radius:8px;color:#1f66ff;background:#edf5ff;font-size:20px;font-weight:900}.form-error{margin:0;color:#e31b3a;font-size:13px;font-weight:800}.toast{position:fixed;right:24px;bottom:24px;z-index:60;display:inline-flex;align-items:center;gap:10px;border:1px solid #b5eaca;border-radius:8px;color:#0e8a56;background:#f0fff7;box-shadow:var(--shadow);padding:14px 18px;font-weight:800}@media (max-width: 1180px){.metrics-grid,.quick-grid,.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.overview-layout,.editor-layout{grid-template-columns:1fr}.filter-bar{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 1500px){.metrics-grid{grid-template-columns:repeat(2,minmax(260px,1fr))}}@media (max-width: 860px){.app-shell{display:block}.sidebar{position:fixed;left:0;transform:translate(-100%)}.sidebar.collapsed{transform:translate(0);width:260px}.topbar{padding:0 14px}.breadcrumb span,.top-actions .ghost-btn{display:none}.page-stage{padding:16px 12px 28px}.metrics-grid,.quick-grid,.settings-grid{grid-template-columns:1fr}.section-header{align-items:flex-start;flex-direction:column}.month-popover{right:auto;left:0}.filter-bar,.toolbar{align-items:stretch}.filter-bar{grid-template-columns:1fr}.toolbar{flex-direction:column}.control,.input-with-icon,.input-with-icon input,.primary-btn.small,.ghost-btn.small,.toolbar-btn{width:100%}.login-page{grid-template-columns:1fr;padding:22px}.login-visual{gap:14px}.login-panel{padding:22px}.form-grid{grid-template-columns:1fr}}
