:root{--navy:#111b31;--navy-2:#1b2946;--ink:#182238;--muted:#71809a;--line:#e8edf5;--bg:#f5f7fb;--white:#fff;--primary:#5b64ed;--primary-dark:#454dd5;--cyan:#2cbdd1;--red:#ff5d6c;--pink:#ef6fa8;--green:#24b77e;--shadow:0 14px 40px rgba(28,42,75,.08);font-family:Inter,"PingFang SC","Microsoft YaHei",system-ui,sans-serif;color:var(--ink);background:var(--bg);font-synthesis:none}
*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}input,select,textarea{outline:none}input:focus,select:focus,textarea:focus{border-color:#7a81ef!important;box-shadow:0 0 0 3px rgba(91,100,237,.12)}[hidden]{display:none!important}
.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(420px,1.08fr) minmax(400px,.92fr);background:#fff}.login-art{position:relative;overflow:hidden;padding:46px 58px;background:linear-gradient(145deg,#111a30,#1c2a49);color:#fff}.login-art:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:40px 40px;mask-image:linear-gradient(to bottom,black,transparent)}.orb{position:absolute;border-radius:50%;filter:blur(1px)}.orb-a{width:420px;height:420px;background:radial-gradient(circle,#5967f350,transparent 66%);right:-80px;top:-100px}.orb-b{width:300px;height:300px;background:radial-gradient(circle,#2cbdd13c,transparent 68%);left:-60px;bottom:-60px}.login-brand,.brand,.mobile-brand{display:flex;align-items:center;gap:13px;position:relative;z-index:1}.login-brand{font-size:22px;font-weight:760}.brand-mark{width:40px;height:40px;display:grid;place-items:center;border-radius:13px;color:#fff;background:linear-gradient(140deg,#777cff,#4e5be5);box-shadow:0 8px 20px #515fe650;font-size:25px;font-weight:700}.art-copy{position:relative;z-index:1;max-width:580px;margin:16vh auto 0}.eyebrow,.login-kicker{color:#6f77ef;font-size:11px;letter-spacing:.18em;font-weight:800}.art-copy .eyebrow{color:#79d3dd}.art-copy h1{font-size:clamp(39px,4vw,64px);line-height:1.18;margin:18px 0 22px;letter-spacing:-.04em}.art-copy p{font-size:17px;line-height:1.8;color:#b4c0d5;max-width:510px}.mini-funnel{display:flex;flex-direction:column;gap:7px;margin-top:55px;width:390px}.mini-funnel span{width:var(--w);height:44px;display:flex;align-items:center;justify-content:center;border:1px solid #8290ff4d;background:linear-gradient(90deg,#5d68ecbd,#2cbdd166);border-radius:8px;color:#eef1ff;font-size:13px}.login-panel{display:grid;place-items:center;padding:40px;background:linear-gradient(180deg,#fff,#fbfcff)}.login-card{width:min(410px,100%)}.mobile-brand{display:none}.login-card h2{font-size:34px;margin:12px 0 8px;letter-spacing:-.03em}.login-card>p{color:var(--muted);margin:0 0 35px}.login-card label,.dialog-card label{display:grid;gap:9px;font-size:13px;font-weight:700;margin:17px 0}.login-card input,.dialog-card input,.dialog-card select{height:50px;border:1px solid #dfe5ef;border-radius:11px;padding:0 15px;background:#fff;font-weight:500}.login-card small{display:block;text-align:center;color:#9aa5b6;margin-top:20px}.btn{border:0;border-radius:10px;min-height:42px;padding:0 18px;font-weight:720;display:inline-flex;gap:9px;align-items:center;justify-content:center;transition:.2s}.btn:hover{transform:translateY(-1px)}.btn-primary{background:linear-gradient(135deg,#6269f2,#5059de);color:#fff;box-shadow:0 8px 20px rgba(80,89,222,.22)}.btn-primary:hover{background:linear-gradient(135deg,#565fe8,#414acb)}.btn-wide{width:100%;height:52px;margin-top:7px;justify-content:space-between;padding:0 22px}.btn-quiet{background:#fff;border:1px solid #dfe5ef;color:#4c5b72}.btn-danger{color:#d83e53;background:#fff2f4;border:1px solid #ffd9de}.icon-btn{border:0;background:transparent;width:36px;height:36px;border-radius:9px;font-size:18px}.icon-btn:hover{background:rgba(255,255,255,.08)}
.app-shell{min-height:100vh}.sidebar{position:fixed;z-index:20;left:0;top:0;bottom:0;width:250px;padding:30px 18px 22px;background:linear-gradient(180deg,#131d33,#111a2e);color:#dbe5f7;display:flex;flex-direction:column}.sidebar .brand{padding:0 15px}.brand>div{display:grid}.brand b{font-size:19px;color:#fff}.brand small{font-size:10px;color:#8292b1;letter-spacing:.11em;margin-top:3px}.nav-label{font-size:11px;color:#697d9f;letter-spacing:.14em;padding:39px 18px 12px}.sidebar nav{display:grid;gap:7px}.nav-item{height:52px;border:0;border-radius:12px;background:transparent;color:#95a9ca;display:flex;align-items:center;gap:15px;padding:0 18px;font-size:15px;text-align:left}.nav-item:hover{background:#1a2945;color:#e8effc}.nav-item.active{background:linear-gradient(100deg,#293754,#26334f);color:#fff;box-shadow:inset 3px 0 0 #6f75f0}.nav-item .icon{font-size:19px;width:23px;text-align:center;color:#93b6e9}.sidebar-foot{margin-top:auto;border-top:1px solid #283650;padding:20px 8px 0;display:grid;grid-template-columns:38px 1fr 36px;align-items:center;gap:10px}.user-avatar{width:38px;height:38px;border-radius:12px;background:linear-gradient(145deg,#6d73f1,#27b8cb);display:grid;place-items:center;color:#fff;font-weight:800}.user-meta{display:grid;min-width:0}.user-meta b{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-meta small{font-size:10px;color:#8092af;margin-top:3px}.mobile-header{display:none}.main{margin-left:250px;padding:37px clamp(24px,3.2vw,52px) 70px;min-height:100vh}.page{display:none;max-width:1450px;margin:auto}.page.active{display:block}.page-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-end;margin:0 0 28px}.page-head h1{font-size:30px;letter-spacing:-.035em;margin:7px 0 5px}.page-head p{margin:0;color:var(--muted);font-size:14px}.filter-bar{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-bottom:21px}.segmented{display:flex;background:#e9edf6;border-radius:11px;padding:4px}.segmented button{border:0;background:transparent;color:#67758d;height:36px;padding:0 17px;border-radius:8px;font-size:13px;font-weight:700}.segmented button.active{background:#fff;color:#4c55da;box-shadow:0 3px 11px rgba(36,49,80,.1)}.date-filter{display:flex;align-items:center;gap:8px;color:#9aa4b3;font-size:12px}.date-filter input,.table-tools input,.table-tools select,.card-head select{height:38px;border:1px solid #e1e6ef;background:#fff;border-radius:9px;padding:0 10px}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:16px}.stat-card{background:#fff;border:1px solid #edf0f6;border-radius:15px;padding:20px 21px;box-shadow:0 4px 16px rgba(35,51,82,.035);display:grid;grid-template-columns:1fr 43px;gap:8px}.stat-card small{color:var(--muted);font-size:12px}.stat-card strong{font-size:28px;letter-spacing:-.03em;margin-top:8px}.stat-icon{grid-row:1/3;grid-column:2;width:43px;height:43px;border-radius:13px;display:grid;place-items:center;font-size:20px;background:var(--soft);color:var(--accent)}.stat-card em{font-size:10px;color:#9aa5b4;font-style:normal}.dashboard-grid,.entry-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.card{background:#fff;border:1px solid #e9edf4;border-radius:16px;box-shadow:0 5px 20px rgba(30,46,79,.045)}.funnel-card{padding:20px 22px}.card-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px}.card-head>div{display:grid;gap:5px}.card-head b{font-size:15px}.card-head small{font-size:11px;color:#8a96a9}.channel-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:8px}.channel-dot.red{background:var(--red)}.channel-dot.pink{background:var(--pink)}.rate-pill{font-size:11px;color:#168f64;background:#eaf9f3;border-radius:20px;padding:5px 9px}.funnel{display:grid;gap:8px}.funnel-step{position:relative;display:grid;grid-template-columns:minmax(85px,1fr) 70px 56px;align-items:center;gap:9px;min-height:42px}.funnel-bar{height:38px;width:var(--width);min-width:95px;border-radius:9px 6px 6px 9px;background:linear-gradient(90deg,var(--from),var(--to));display:flex;align-items:center;padding:0 13px;color:#fff;font-size:12px;font-weight:700;box-shadow:0 5px 14px color-mix(in srgb,var(--from) 18%,transparent)}.funnel-step strong{text-align:right;font-size:17px}.funnel-step small{text-align:right;color:#98a3b3;font-size:10px}.chart-card{padding:20px 22px}.line-chart{height:285px}.chart-svg{width:100%;height:100%;overflow:visible}.chart-grid{stroke:#edf0f5;stroke-width:1}.chart-label{fill:#98a3b4;font-size:10px}.chart-line{fill:none;stroke:#5b64ed;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.chart-area{fill:url(#areaGradient)}.chart-dot{fill:#fff;stroke:#5b64ed;stroke-width:2}.chart-value{fill:#4a5470;font-size:10px;font-weight:700}.chart-empty,.empty{height:220px;display:grid;place-items:center;color:#9aa5b5;font-size:13px}
.entry-context{padding:18px 22px;margin-bottom:16px;display:grid;grid-template-columns:220px 220px 1fr;align-items:end;gap:18px}.entry-context label,.note-field{display:grid;gap:7px;font-size:12px;font-weight:700}.entry-context input,.entry-context select,.field-grid input,.note-field textarea{border:1px solid #dfe5ee;border-radius:9px;background:#fff}.entry-context input,.entry-context select{height:43px;padding:0 12px}.entry-owner{justify-self:end;display:grid;text-align:right}.entry-owner span,.entry-owner small{color:#8995a7;font-size:10px}.entry-owner b{font-size:14px;margin:4px 0}.channel-form{padding:24px}.channel-title{display:flex;align-items:center;gap:12px;padding-bottom:19px;border-bottom:1px solid #edf0f5;margin-bottom:18px}.channel-logo{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;color:#fff;font-weight:900}.channel-logo.xhs{background:linear-gradient(145deg,#ff6875,#e94258)}.channel-logo.bili{background:linear-gradient(145deg,#ff86b9,#e95f9d)}.channel-title h2{font-size:17px;margin:0 0 3px}.channel-title p{font-size:11px;color:#909caf;margin:0}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field-grid label{position:relative;display:grid;gap:7px;font-size:11px;color:#5c6980;font-weight:700}.field-grid input{height:44px;padding:0 38px 0 12px;font-size:16px;font-weight:700}.field-grid small{position:absolute;right:12px;bottom:14px;color:#a0aaba;font-size:10px}.note-field{margin-top:12px}.note-field textarea{min-height:71px;padding:10px;resize:vertical;font-weight:500}.form-actions{display:flex;align-items:center;justify-content:flex-end;gap:20px;padding:8px 0}.form-actions span{font-size:11px;color:#8d98a9}.btn-save{height:48px;padding:0 25px}
.table-card{overflow:hidden}.table-tools{padding:16px 18px;border-bottom:1px solid var(--line);display:flex;gap:10px}.table-tools input{margin-left:auto;min-width:230px}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;white-space:nowrap}th{background:#fafbfc;color:#8995a8;font-size:10px;letter-spacing:.04em;text-align:left;padding:13px 16px;border-bottom:1px solid var(--line)}td{font-size:12px;padding:15px 16px;border-bottom:1px solid #f0f2f6;color:#4a5870}tr:last-child td{border-bottom:0}tbody tr:hover{background:#fafbff}.badge{display:inline-flex;align-items:center;border-radius:20px;padding:5px 9px;font-size:10px;font-weight:750}.badge.anhui{background:#eef0ff;color:#5962df}.badge.hunan{background:#eaf9f4;color:#1d9870}.badge.hubei{background:#fff2e7;color:#c9782c}.badge.xiaohongshu{background:#fff0f2;color:#e8495d}.badge.bilibili{background:#fff0f7;color:#d85491}.badge.active{background:#eaf9f3;color:#198c63}.badge.disabled{background:#f1f2f5;color:#8e98a6}.table-actions{display:flex;gap:6px}.table-actions button{border:1px solid #e2e6ee;background:#fff;border-radius:7px;padding:5px 8px;font-size:10px}.table-actions button:hover{border-color:#7178e9;color:#5159dc}.empty{height:150px}
.toast{position:fixed;z-index:100;left:50%;top:20px;transform:translate(-50%,-20px);opacity:0;pointer-events:none;background:#16223a;color:#fff;border-radius:10px;padding:11px 17px;box-shadow:0 10px 35px rgba(15,25,45,.25);font-size:13px;transition:.25s}.toast.show{opacity:1;transform:translate(-50%,0)}.toast.error{background:#c84155}dialog{border:0;padding:0;border-radius:16px;box-shadow:0 24px 80px rgba(19,29,52,.25);width:min(460px,calc(100% - 30px))}dialog::backdrop{background:rgba(15,24,42,.52);backdrop-filter:blur(3px)}.dialog-card{padding:25px}.dialog-head{display:flex;justify-content:space-between}.dialog-head h2{margin:6px 0 0}.dialog-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:22px}.log-detail{max-width:360px;overflow:hidden;text-overflow:ellipsis;color:#78859a}
@media(max-width:1100px){.stat-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid,.entry-grid{grid-template-columns:1fr}.entry-context{grid-template-columns:1fr 1fr}.entry-owner{display:none}}
@media(max-width:760px){.login-shell{display:block}.login-art{display:none}.login-panel{min-height:100vh;padding:28px 22px}.mobile-brand{display:flex;margin-bottom:58px;font-weight:800}.login-card h2{font-size:29px}.sidebar{transform:translateX(-100%);transition:.25s;width:260px;box-shadow:15px 0 45px rgba(14,24,43,.22)}.sidebar.open{transform:translateX(0)}.mobile-header{position:sticky;top:0;z-index:15;height:64px;padding:0 18px;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.mobile-header .brand-mark{width:34px;height:34px;border-radius:10px}.main{margin-left:0;padding:25px 16px 55px}.page-head{align-items:flex-start}.page-head .btn{font-size:0;width:42px;padding:0}.page-head .btn:before{content:"+";font-size:21px}.page-head h1{font-size:25px}.filter-bar{align-items:stretch;flex-direction:column}.segmented{overflow:auto}.segmented button{white-space:nowrap;flex:1;padding:0 12px}.date-filter{display:grid;grid-template-columns:1fr auto 1fr auto}.date-filter input{min-width:0}.stat-grid{grid-template-columns:1fr 1fr;gap:10px}.stat-card{padding:16px;grid-template-columns:1fr 34px}.stat-icon{width:34px;height:34px}.stat-card strong{font-size:23px}.funnel-card,.chart-card,.channel-form{padding:18px 16px}.funnel-step{grid-template-columns:minmax(80px,1fr) 52px 43px}.funnel-bar{font-size:11px;padding:0 9px}.line-chart{height:230px}.entry-context{grid-template-columns:1fr 1fr;padding:16px}.field-grid{grid-template-columns:1fr 1fr}.form-actions{position:sticky;bottom:10px;background:#fff;border:1px solid var(--line);border-radius:13px;padding:9px;box-shadow:var(--shadow)}.form-actions span{display:none}.form-actions .btn{width:100%}.table-tools{flex-wrap:wrap}.table-tools input{width:100%;min-width:0;margin-left:0}.card{border-radius:14px}}
@media(max-width:410px){.stat-grid{grid-template-columns:1fr}.field-grid{grid-template-columns:1fr}.entry-context{grid-template-columns:1fr}.page-head p{max-width:260px}.stat-card{grid-template-columns:1fr 43px}.stat-icon{width:43px;height:43px}}
.icon-sprite{position:absolute;width:0;height:0;overflow:hidden}.brand-mark svg,.nav-item svg,.stat-icon svg{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.brand-mark svg{width:24px;height:24px}.nav-item .icon{width:20px;height:20px;margin:0 2px;color:#93b6e9;flex:0 0 auto}.stat-icon svg{width:21px;height:21px}.settings-card{max-width:720px;padding:27px}.settings-user{display:flex;align-items:center;gap:13px;padding-bottom:22px;margin-bottom:22px;border-bottom:1px solid var(--line)}.settings-user>div:last-child{display:grid;gap:4px}.settings-user b{font-size:16px}.settings-user small{color:var(--muted);font-size:12px}.password-form{display:grid;gap:17px;max-width:460px}.password-form label{display:grid;gap:8px;font-size:12px;font-weight:700}.password-form input{height:47px;border:1px solid #dfe5ee;border-radius:10px;padding:0 13px}.password-tip{color:var(--muted);font-size:11px;line-height:1.6}.password-form .btn{justify-self:start;min-width:145px}
.range-tabs{display:flex;gap:4px;padding:4px;border-radius:11px;background:#e9edf6}.range-tabs button{height:36px;min-width:50px;padding:0 12px;border:0;border-radius:8px;background:transparent;color:#67758d;font-size:12px;font-weight:700}.range-tabs button.active{background:#fff;color:#4c55da;box-shadow:0 3px 11px rgba(36,49,80,.1)}.chart-head{align-items:flex-start}.chart-controls{display:flex;align-items:center;justify-content:flex-end;gap:14px;flex-wrap:wrap}.province-checks{display:flex;align-items:center;gap:13px}.province-checks label{display:flex;align-items:center;gap:5px;font-size:11px;color:#66758c;cursor:pointer;white-space:nowrap}.province-checks input{accent-color:#5b64ed}.legend-dot{display:inline-block;width:8px;height:8px;border-radius:50%;flex:0 0 auto}.anhui-line{background:#5b64ed}.hunan-line{background:#20a77b}.hubei-line{background:#ef7a45}.line-chart{position:relative;touch-action:manipulation}.province-chart-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:25px 2px 12px}.province-chart-heading>div{display:grid;gap:5px}.province-chart-heading b{font-size:16px}.province-chart-heading small{font-size:11px;color:#8a96a9}.province-chart-select{display:flex;align-items:center;gap:9px;color:#7e8a9d;font-size:11px;white-space:nowrap}.province-chart-select select{height:38px;min-width:120px;border:1px solid #e1e6ef;background:#fff;border-radius:9px;padding:0 30px 0 11px}.province-chart-title{display:flex;align-items:center;gap:9px;margin-bottom:8px}.province-chart-title b{font-size:14px}.province-chart-card{padding-top:17px}.province-line-chart{height:245px}.chart-series{fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.chart-series.anhui{stroke:#5b64ed}.chart-series.hunan{stroke:#20a77b}.chart-series.hubei{stroke:#ef7a45}.chart-point{fill:#fff;stroke-width:2}.chart-point.anhui{stroke:#5b64ed}.chart-point.hunan{stroke:#20a77b}.chart-point.hubei{stroke:#ef7a45}.chart-guide{stroke:#aeb8c8;stroke-width:1;stroke-dasharray:4 4}.chart-hit{fill:transparent;pointer-events:all;cursor:crosshair}.chart-tooltip{position:absolute;z-index:4;min-width:145px;padding:10px 12px;border-radius:10px;background:#172238;color:#fff;box-shadow:0 10px 28px rgba(17,28,49,.22);font-size:11px;line-height:1.7;pointer-events:none;transform:translate(-50%,-100%)}.chart-tooltip b{display:block;font-size:12px;margin-bottom:3px}.chart-tooltip-row{display:flex;justify-content:space-between;gap:18px}.chart-tooltip-row span:first-child{display:flex;align-items:center;gap:6px;color:#cbd5e6}.chart-tooltip-row i{width:7px;height:7px;border-radius:50%}.chart-tooltip[hidden]{display:none}.chart-guide-group[hidden]{display:none}
.diagnostic-card{margin-bottom:16px;padding-top:17px}.diagnostic-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:7px}.diagnostic-title{display:flex;align-items:center;gap:11px;flex:0 0 auto}.diagnostic-title>div{display:grid;gap:4px}.diagnostic-title b{font-size:14px}.diagnostic-title small{font-size:10px;color:#8a96a9}.diagnostic-badge{width:31px;height:31px;border-radius:9px;display:grid;place-items:center;color:#fff;font-size:11px;font-weight:800}.diagnostic-badge.xhs{background:linear-gradient(145deg,#ff6875,#e94258)}.diagnostic-badge.bili{background:linear-gradient(145deg,#ff86b9,#d75898)}.diagnostic-badge.rate{background:linear-gradient(145deg,#2bc18a,#178f68)}.metric-checks{display:flex;align-items:center;justify-content:flex-end;gap:9px 12px;flex-wrap:wrap}.metric-checks label{display:flex;align-items:center;gap:5px;white-space:nowrap;color:#66758c;font-size:10px;cursor:pointer}.metric-checks input{margin:0;accent-color:#5b64ed}.metric-checks i{width:7px;height:7px;border-radius:50%;background:var(--dot);display:inline-block}.diagnostic-chart{height:245px}
@media(max-width:760px){.range-tabs{overflow:auto}.range-tabs button{min-width:48px}.chart-head{align-items:stretch;flex-direction:column}.chart-controls{justify-content:flex-start;align-items:stretch;flex-direction:column}.chart-controls select{width:100%}.province-checks{justify-content:space-between}.province-chart-heading{align-items:stretch;flex-direction:column}.province-chart-select{justify-content:space-between}.province-chart-select select{flex:1}.diagnostic-head{flex-direction:column}.metric-checks{justify-content:flex-start}.diagnostic-title{width:100%}.diagnostic-chart{height:230px}.chart-tooltip{transform:translate(-50%,-105%)}}
