:root{font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,sans-serif;color:#25324a;background:#f5f7fb;font-synthesis:none;text-rendering:optimizeLegibility;--primary:#2563eb;--primary-dark:#1d4ed8;--ink:#17233a;--muted:#758096;--line:#e9edf4;--surface:#fff;--soft-blue:#edf3ff;--green:#128365;--amber:#a36b13;--danger:#c63542;--radius:14px}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}button{transition:background .16s,color .16s,box-shadow .16s}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #93b4ff;outline-offset:3px}input{width:100%;height:46px;border:1px solid #dce2ec;border-radius:8px;padding:0 13px;color:var(--ink);background:var(--surface);transition:border-color .15s}input:focus{border-color:var(--primary)}input::placeholder{color:#738096}input:disabled{background:#f4f6fa;color:#6b778c}h1,h2,h3,p{margin:0}svg{flex-shrink:0}label{display:block;font-size:14px;font-weight:500;margin:22px 0 9px}.muted{color:var(--muted)}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;border:1px solid transparent;border-radius:8px;padding:0 17px;font-size:14px;font-weight:500;white-space:nowrap}.primary{background:var(--primary);color:#fff;box-shadow:0 3px 6px #2563eb16}.primary:hover:not(:disabled){background:var(--primary-dark)}.secondary{background:#fff;border-color:#dce2ec;color:#47546b}.secondary:hover:not(:disabled){background:#f6f8fc}.icon-button{border:0;border-radius:7px;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;background:transparent;color:#7a879d}.icon-button:hover{background:#edf2fa;color:var(--primary)}.text-button{background:transparent;color:#718097;min-height:36px;padding:0 4px;font-size:13px}.text-button:hover{color:var(--primary)}.eyebrow{font-size:12px;font-weight:600;letter-spacing:2px;color:#8a96aa;margin-bottom:10px}.brand{display:flex;align-items:center;gap:12px}.brand-icon{display:flex;align-items:center;justify-content:center;height:42px;width:42px;background:var(--primary);color:#fff;border-radius:12px}.brand strong{display:block;font-size:19px;letter-spacing:1px;color:var(--ink)}.brand div>span{display:block;margin-top:4px;color:#8590a3;font-size:12px;letter-spacing:1px}.app-shell{min-height:100dvh;display:flex}.sidebar{width:238px;flex-shrink:0;position:fixed;inset:0 auto 0 0;background:var(--surface);border-right:1px solid var(--line);padding:33px 22px;display:flex;flex-direction:column;z-index:20}.sidebar .brand{margin:0 5px 48px}.nav-label{font-size:12px;letter-spacing:1.8px;color:#758196;padding:0 15px;margin-bottom:14px}.nav-item{display:flex;align-items:center;width:100%;gap:12px;height:46px;border:0;border-radius:8px;text-align:left;padding:0 15px;font-size:14px}.nav-item.active{background:var(--soft-blue);color:var(--primary);font-weight:600}.nav-active-dot{margin-left:auto;width:5px;height:5px;background:var(--primary);border-radius:50%}.sidebar-bottom{margin-top:auto}.sidebar-note{display:flex;gap:10px;align-items:center;padding:16px 12px;background:#f8faff;border:1px solid #edf1f8;border-radius:9px;color:#7c8ba2}.sidebar-note strong{font-size:12px;font-weight:500;color:#596981}.sidebar-note p{font-size:12px;margin-top:6px;color:#8793a6}.sidebar-copyright{font-size:12px;color:#798396;text-align:center;margin-top:21px;letter-spacing:1px}.workspace{margin-left:238px;min-width:0;flex:1;display:flex;flex-direction:column}.topbar{height:82px;background:#ffffffd9;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 38px}.breadcrumb{display:flex;align-items:center;gap:12px;font-size:12px;color:#8993a5}.breadcrumb strong{color:#526078;font-weight:500}.admin-menu{display:flex;align-items:center;gap:11px}.admin-avatar{height:34px;width:34px;background:#eef2fa;color:#5e75a4;border:1px solid #e4eaf6;border-radius:50%;display:grid;place-items:center;font-size:13px;font-weight:600}.admin-menu strong{font-size:12px;font-weight:500;display:block}.admin-menu div>span{font-size:12px;color:#8b96a7;display:block;margin-top:3px}.admin-divider{height:23px;width:1px;background:var(--line);margin-left:11px}.main-content{padding:35px 38px;flex:1;max-width:1650px;width:100%;margin:0 auto}.page-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.page-heading h1{font-size:27px;font-weight:650;letter-spacing:.5px;color:var(--ink);line-height:1.35}.page-heading p{font-size:13px;color:#6e7b91;margin-top:10px;line-height:1.7}.stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-bottom:28px}.stat-card{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:23px 25px;display:flex;justify-content:space-between;min-height:145px}.stat-title{font-size:12px;color:#7c879b}.stat-value{display:flex;align-items:baseline;font-size:32px;line-height:1.5;font-weight:600;letter-spacing:-1px;margin-top:5px;color:var(--ink);font-variant-numeric:tabular-nums}.stat-value small{font-size:12px;font-weight:400;color:#9aa5b6;margin-left:9px}.stat-card p{font-size:12px;color:#737f92;margin-top:3px}.stat-icon{width:43px;height:43px;border-radius:12px;display:grid;place-items:center;margin-top:5px}.stat-icon.blue{color:#4a79e4;background:#edf3ff}.stat-icon.green{color:#229879;background:#eaf8f3}.stat-icon.amber{color:#c79b43;background:#fcf5e6}.accounts-panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.panel-heading{display:flex;align-items:center;justify-content:space-between;padding:20px 25px 16px}.panel-title{display:flex;align-items:center;gap:9px}.panel-title h2{font-size:15px;font-weight:600}.count-badge{font-size:12px;min-width:21px;height:20px;display:grid;place-items:center;border-radius:5px;color:#7b8799;background:#f0f3f8}.table-toolbar{display:flex;align-items:center;justify-content:space-between;padding:0 25px 20px;gap:15px}.filter-tabs{display:flex;align-items:center;gap:4px;background:#f5f7fb;border-radius:7px;padding:4px}.filter-tabs button{border:0;background:transparent;color:#8b95a6;padding:7px 13px;border-radius:5px;white-space:nowrap;font-size:12px;min-height:32px}.filter-tabs button.selected{color:var(--primary);background:#fff;box-shadow:0 1px 4px #20324c0b}.search-field{position:relative;width:260px;max-width:100%}.search-field svg{position:absolute;left:11px;top:11px;color:#9aa5b7}.search-field input{height:38px;padding-left:36px;font-size:12px;border-color:#e5eaf1;background:#fdfdfe}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:12px;white-space:nowrap}thead{background:#f8fafd;color:#8490a2}th{height:45px;font-size:12px;font-weight:500;padding:0 20px;border-top:1px solid #eff2f7;border-bottom:1px solid #eff2f7}th:first-child,td:first-child{padding-left:26px}td{padding:22px 20px;border-bottom:1px solid #f0f3f7}tbody tr:hover{background:#fcfdff}.account-cell{display:flex;gap:12px;align-items:center}.account-avatar{width:36px;height:36px;border-radius:10px;background:#f0f4ff;color:#6586c7;display:grid;place-items:center;font-size:15px}.account-cell strong{display:block;font-size:12px;font-weight:500;color:#344258;max-width:180px;overflow:hidden;text-overflow:ellipsis}.account-cell div>span{display:block;color:#929bad;font-size:12px;margin-top:5px}.account-cell small{display:block;color:#929bad;font-size:12px;margin-top:4px}.membership{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:#8792a4;background:#f4f6fa;padding:4px 7px;border-radius:5px}.membership.svip,.membership.vip{background:#fbf3e4;color:#ab812f}.cell-subtext{display:block;font-size:12px;margin-top:7px;color:#8c98aa}.storage-label{font-size:12px;color:#5a6880}.storage-label span{color:#9ca6b4}meter{display:block;width:115px;height:6px;margin-top:9px;border:0;border-radius:4px;background:#edf1f7}meter::-webkit-meter-bar{height:5px;background:#edf1f7;border:0}meter::-webkit-meter-optimum-value{background:#7f9fe5;border-radius:4px}.dot{height:5px;width:5px;background:currentColor;border-radius:50%;display:inline-block}.status{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:#8290a5}.status.active{color:var(--green)}.status.expired{color:#c67b20}.date-cell{font-size:12px;color:#7f8b9d;font-variant-numeric:tabular-nums}.action-column{text-align:right;padding-right:26px}.row-action{display:inline-flex;align-items:center;gap:5px;border:0;background:transparent;color:#517bcc;font-size:12px;min-height:40px}.row-action:hover{color:var(--primary-dark)}.empty-state{min-height:285px;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:30px;text-align:center}.empty-art{width:75px;height:75px;display:grid;place-items:center;background:#f2f6ff;border:1px solid #e9effc;border-radius:22px;color:#8cabe3;position:relative;margin-bottom:19px}.empty-art>span{width:23px;height:23px;border:3px solid #fff;background:#7296df;color:#fff;display:grid;place-items:center;border-radius:50%;position:absolute;right:-4px;bottom:1px}.empty-state h3{font-size:14px;font-weight:500;color:#536178}.empty-state p{font-size:12px;line-height:1.8;color:#748096;margin:10px 0 20px}.empty-state .button{font-size:12px;min-height:36px;color:#587cc0;border-color:#dce6f7}.loading-state{color:var(--primary)}.table-footer{height:51px;display:flex;justify-content:space-between;align-items:center;padding:0 25px;border-top:1px solid #eef1f6;color:#727e90;font-size:12px}.table-footer>span:last-child{display:flex;align-items:center;gap:5px}.workspace-footer{display:flex;justify-content:space-between;padding:20px 38px 23px;font-size:12px;color:#a0a9b8}.banner{padding:12px 16px;border-radius:8px;font-size:13px;margin-bottom:20px;line-height:1.6}.banner.error,.form-error{background:#fff1f2;color:var(--danger)}.banner.success,.form-success{background:#edf9f3;color:var(--green)}.form-error,.form-success{padding:10px 12px;border-radius:7px;font-size:12px;line-height:1.7;margin-top:14px}.menu-toggle,.sidebar-scrim{display:none}.boot-loading{height:100dvh;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:16px;color:#6c82ac;font-size:13px}.spin{animation:rotate 1s linear infinite}@keyframes rotate{to{transform:rotate(360deg)}}.account-dialog{width:480px;max-width:calc(100vw - 32px);border:1px solid #e6ebf4;border-radius:17px;padding:0;color:var(--ink);box-shadow:0 20px 80px #182a522b;max-height:calc(100dvh - 40px);overflow:auto}.account-dialog::backdrop{background:#17234060;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.dialog-header{padding:24px 27px 21px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.dialog-kicker{font-size:12px;color:#97a1b3;letter-spacing:1px}.dialog-header h2{font-size:20px;margin-top:6px;font-weight:600}.dialog-body{padding:24px 27px 0}.login-steps{display:flex;align-items:center;justify-content:center;gap:15px;font-size:12px;margin-bottom:25px}.step{display:flex;align-items:center;gap:7px;color:#9ba6b8}.step b{height:21px;width:21px;border-radius:50%;background:#f0f3f8;display:grid;place-items:center;font-size:12px;font-weight:500}.step.active{color:var(--primary)}.step.active b{background:var(--soft-blue)}.step-divider{width:45px;height:1px;background:#e6ebf4}.account-intro{display:flex;gap:12px;align-items:center;background:#f7f9fe;border:1px solid #eef2fa;border-radius:9px;padding:15px}.phone-icon{color:#6d91d3}.account-intro strong{font-size:12px;font-weight:500}.account-intro p{font-size:12px;color:#8b98ac;margin-top:6px}.dialog-body label{font-size:12px}.phone-field{position:relative}.phone-field>span{position:absolute;left:13px;top:14px;font-size:13px;color:#67758e;border-right:1px solid var(--line);padding-right:12px}.phone-field input{padding-left:68px;font-size:13px}.code-field{display:flex;border:1px solid #dce2ec;border-radius:8px;overflow:hidden}.code-field:focus-within{border-color:var(--primary)}.code-field input{border:0;min-width:0;font-size:13px}.send-code{padding:0 14px;background:#fff;color:var(--primary);border:0;white-space:nowrap;font-size:12px}.send-code:hover:not(:disabled){background:#f4f7fe}.agreement{display:flex;align-items:flex-start;gap:8px;font-size:12px!important;line-height:1.8;color:#8a96aa;font-weight:400}.agreement input{width:14px;height:14px;flex-shrink:0;margin:3px 0 0;accent-color:var(--primary)}.agreement a{color:#567bbf}.privacy-note{display:flex;gap:7px;font-size:12px;line-height:1.7;color:#90a0b5;margin-top:20px;margin-bottom:24px}.dialog-footer{display:flex;gap:11px;justify-content:flex-end;border-top:1px solid var(--line);padding:20px 0}.dialog-footer .button{font-size:12px}.captcha-row{display:flex;align-items:center;gap:12px}.captcha-row img{width:110px;max-height:50px;object-fit:contain}.captcha-row input{min-width:0;font-size:12px}.login-page{display:grid;grid-template-columns:1fr 1fr;min-height:100dvh;background:#fff}.login-story{background:#edf3fc;padding:45px 55px;display:flex;flex-direction:column;position:relative;overflow:hidden}.story-content{max-width:450px;margin:auto;width:100%;padding:60px 0}.story-content .eyebrow{color:#6f8fc0;font-size:12px;margin-bottom:23px}.story-content h1{font-size:44px;line-height:1.45;font-weight:600;letter-spacing:1px;color:#233b61}.story-content p{font-size:14px;line-height:1.9;color:#8194b0;margin-top:22px}.story-graphic{height:200px;margin-top:35px;position:relative;max-width:320px}.graphic-cloud{position:absolute;left:130px;top:12px;height:90px;width:90px;display:grid;place-items:center;color:#8eade4;background:#ffffff85;border:1px solid #fff;border-radius:25px;transform:rotate(-9deg)}.graphic-card{position:absolute;display:flex;align-items:center;gap:16px;left:10px;top:83px;border:1px solid #fff;box-shadow:0 12px 45px #6a89b51a;border-radius:13px;background:#fff;padding:19px 21px;width:275px;color:#6baf99;transform:rotate(-4deg)}.mini-avatar{display:grid;place-items:center;color:#7b9bcf;background:#edf3fd;border-radius:11px;height:42px;width:42px}.graphic-line{display:block;background:#e7edf7;height:7px;border-radius:3px}.graphic-line.long{width:106px}.graphic-line.short{width:72px;margin-top:11px;background:#f1f4f9}.graphic-tag{display:flex;align-items:center;gap:7px;position:absolute;top:158px;left:130px;background:#f8fffb;padding:11px 15px;border:1px solid #e7f5ef;border-radius:8px;font-size:12px;color:#54a58a;box-shadow:0 5px 25px #8ca2bf15;transform:rotate(3deg)}.story-footer{font-size:12px;letter-spacing:1px;color:#a1aec2}.login-form-area{display:flex;align-items:center;justify-content:center;padding:50px 35px}.login-form-card{max-width:355px;width:100%}.login-badge{display:grid;place-items:center;height:48px;width:48px;border:1px solid #e7eefb;background:#f4f7ff;border-radius:13px;color:#5d82c5;margin-bottom:25px}.login-form-card h2{font-size:25px;letter-spacing:.5px;font-weight:600}.login-form-card>.muted{font-size:12px;margin-top:12px;margin-bottom:33px}.login-form-card label{font-size:12px;color:#5f6c82}.login-form-card input{font-size:13px;height:47px}.password-field{position:relative}.password-field input{padding-right:47px}.password-field .icon-button{position:absolute;right:4px;top:4px}.login-submit{width:100%;margin-top:28px;height:46px}.login-note{display:flex;justify-content:center;align-items:center;gap:7px;font-size:12px;color:#9aa7b8;margin-top:23px}.global-error{position:fixed;bottom:20px;right:20px;padding:14px;background:#fff1f2;color:var(--danger);border-radius:8px;font-size:12px}@media(min-width:1700px){.main-content{padding-top:45px}.stats-grid{gap:26px}.stat-card{padding:27px}.empty-state{min-height:340px}}@media(max-width:1150px){.sidebar{width:205px;padding:28px 15px}.workspace{margin-left:205px}.main-content{padding:28px 24px}.topbar{padding:0 24px}.stat-card{padding:20px}.table-toolbar{flex-wrap:wrap}.stats-grid{gap:12px}.login-story{padding:40px 35px}.story-content h1{font-size:36px}}@media(max-width:760px){.sidebar{transform:translate(-100%);transition:transform .2s;width:238px}.sidebar.open{transform:translate(0)}.sidebar-scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;border:0;background:#14223d50;z-index:19}.workspace{margin-left:0}.menu-toggle{display:inline-flex}.topbar{height:70px;padding:0 16px}.breadcrumb,.admin-menu{gap:7px}.admin-divider{margin-left:3px}.main-content{padding:25px 18px}.page-heading h1{font-size:24px}.page-heading p{font-size:12px;max-width:220px}.page-heading .button{font-size:12px;padding:0 12px}.stats-grid{gap:8px;margin-bottom:22px}.stat-card{padding:15px 12px;min-height:122px}.stat-title{font-size:12px}.stat-value{font-size:27px}.stat-card p{font-size:12px;line-height:1.6}.stat-icon{position:absolute;right:10px;top:8px;height:21px;width:21px;border-radius:6px;margin:0}.stat-icon svg{height:12px;width:12px}.stat-card:first-child .stat-title{padding-right:10px}.stat-title{display:block;margin-top:22px}.stat-value{line-height:1.35;margin-top:5px}.panel-heading{padding:16px}.table-toolbar{padding:0 16px 17px}.search-field,.filter-tabs{width:100%}.filter-tabs button{flex:1;min-height:36px}.table-footer{padding:0 16px;font-size:12px}.table-footer>span:last-child{max-width:185px}.workspace-footer{padding:18px;font-size:12px}.empty-state{min-height:270px}.login-page{grid-template-columns:1fr}.login-story{padding:25px;background:#edf3fc}.story-content,.story-footer{display:none}.login-form-area{padding:45px 25px 70px;align-items:flex-start}.login-form-card h2{font-size:24px}.login-page{display:flex;flex-direction:column}.login-form-area{flex:1}.account-dialog{max-width:calc(100vw - 24px)}.dialog-header{padding:20px}.dialog-body{padding:20px 20px 0}.button,.row-action,.icon-button{min-height:44px}.agreement{font-size:12px!important}.sidebar-note p{font-size:12px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.account-choices{border:0;padding:0;margin:24px 0}.account-choices legend{font-size:14px;font-weight:600}.account-choice{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:8px;padding:14px;margin:12px 0;cursor:pointer}.account-choice:has(input:checked){border-color:var(--primary);background:var(--soft-blue)}.account-choice input{width:16px;height:16px;accent-color:var(--primary)}
