:root{color-scheme:dark;--bg:#0b0e15;--surface:#10151f;--surface-2:#151b27;--surface-3:#1b2330;--border:#232b38;--border2:#2c3542;--text:#e9edf4;--muted:#8c98a8;--dim:#68778a;--cyan:#60d4d0;--cyan2:#28aeab;--green:#7bd8a7;--red:#e88b95;--yellow:#eabf79;--side:#0d111a;--radius:12px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",Arial,sans-serif;color:var(--text);background:var(--bg);font-size:13px;-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.hidden{display:none!important}::selection{background:#347d7a66}::-webkit-scrollbar{width:7px;height:7px}::-webkit-scrollbar-thumb{background:#394353;border-radius:9px}
.app-shell{display:flex;min-height:100vh}.sidebar{width:240px;background:var(--side);border-right:1px solid #1e2633;position:sticky;top:0;height:100vh;flex:none;display:flex;flex-direction:column;padding:29px 16px 16px;z-index:2}.brand{display:flex;align-items:center;gap:11px;margin:0 10px 49px}.brand-mark{width:35px;height:35px;background:#67d7d0;color:#081619;border-radius:10px;display:flex;align-items:center;justify-content:center;box-shadow:0 0 27px #4dd3ca22;font-size:29px;font-weight:800;line-height:1}.brand-mark span{transform:translateY(-2px)}.brand-title{font-weight:900;font-size:17px;letter-spacing:-.9px;white-space:nowrap}.brand-title span{color:var(--cyan)}.brand-sub{color:#647184;font-size:8px;letter-spacing:2.15px;margin-top:3px;font-weight:700}.workspace-label{font-size:10px;letter-spacing:1.7px;color:#616f83;font-weight:700;margin:0 13px 13px}.nav{display:grid;gap:5px}.nav-link{width:100%;display:flex;align-items:center;gap:13px;height:43px;border:0;background:transparent;color:#929fb0;text-align:left;border-radius:8px;padding:0 14px;font-weight:600;position:relative;transition:.16s}.nav-link:hover{background:#181f2b;color:var(--text)}.nav-link.active{color:#86e4dc;background:#1a3036}.nav-link.active:before{content:"";height:19px;width:3px;border-radius:2px;position:absolute;left:0;background:var(--cyan)}.nav-icon{display:inline-flex;width:18px;justify-content:center;font-size:20px;font-family:Arial}.nav-dot{width:5px;height:5px;border-radius:50%;background:#83e6de;margin-left:auto}.sidebar-bottom{margin-top:auto}.info-card{padding:16px 14px;background:linear-gradient(150deg,#19262e,#111a24);border:1px solid #24373e;border-radius:11px}.info-icon{font-size:24px;color:var(--cyan);margin-bottom:10px}.info-card b{font-size:12px}.info-card p{color:#8796a3;font-size:11px;line-height:1.8;margin:9px 0 15px}.info-foot{display:flex;align-items:center;gap:8px;border-top:1px solid #293942;padding-top:11px;color:#93a9ad;font-size:10px}.green-dot,.live-dot{width:6px;height:6px;border-radius:50%;display:inline-block;background:var(--green);box-shadow:0 0 0 3px #78d6a514}.side-footer{margin:23px 4px 0;display:flex;align-items:center;gap:10px}.avatar{background:#25343d;color:#a3d3cb;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:8px;font-size:11px;font-weight:800}.side-footer b{display:block;font-size:11px}.side-footer small{display:block;font-size:10px;color:#728194;margin-top:5px}.side-ellipsis{margin-left:auto;color:#7c8999;font-size:18px}
.main{min-width:0;flex:1}.topbar{height:72px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #1d2531;padding:0 40px}.breadcrumb{color:#79879a;font-size:12px}.breadcrumb span{margin:0 12px;color:#4f5c6c}.breadcrumb strong{color:#cfd7e1;font-weight:500}.top-actions{display:flex;gap:16px;align-items:center}.last-updated{color:#7f8d9f;font-size:11px}.live-status{display:flex;align-items:center;gap:8px;padding:7px 11px;border:1px solid #244238;border-radius:6px;color:#9ee3b8;background:#10231e;font-size:10px;font-weight:700}.live-status.offline{border-color:#51402c;color:#e0b675;background:#2c2117}.live-status.offline .live-dot{background:#e5bd72}.icon-button{background:none;border:1px solid #283140;border-radius:8px;color:#9faabb;padding:7px 11px;font-size:17px}.icon-button:hover{color:white}.content{max-width:1600px;padding:38px 40px 20px;margin:auto}.hero{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:32px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:750;color:#83d2ce;display:flex;align-items:center;gap:9px}.eyebrow-line{width:19px;height:1px;background:#68b5b5}.hero h1{font-size:clamp(29px,3vw,41px);line-height:1.28;letter-spacing:-1.3px;font-weight:800;margin:14px 0 12px}.hero h1 .accent{display:block;color:#c3e9e5}.accent-period{color:#6bd5ce}.hero-description{color:#8b98a9;font-size:12px;margin:0}.hero-side{display:flex;gap:20px;align-items:center;padding-bottom:4px}.hero-state{display:flex;gap:12px;align-items:center;border-right:1px solid #34404c;padding-right:21px}.pulse-ring{position:relative;width:21px;height:21px;border-radius:50%;border:1px solid #497f7d;display:inline-flex;align-items:center;justify-content:center}.pulse-ring:after{content:"";width:7px;height:7px;border-radius:50%;background:#68dbcf;box-shadow:0 0 15px #63d9cf80}.hero-state small{display:block;color:#69788a;font-size:10px}.hero-state strong{display:block;font-size:11px;margin-top:5px;font-weight:650}.primary-button{border:0;border-radius:8px;background:var(--cyan);color:#0d2526;font-weight:800;font-size:11px;height:41px;padding:0 16px;white-space:nowrap;box-shadow:0 0 23px #4dded212}.primary-button:hover{background:#82eae2}.primary-button span{margin-right:7px;font-size:16px}.notice{padding:12px 14px;background:#29241b;color:#dfb878;border:1px solid #504331;display:flex;align-items:center;gap:12px;border-radius:8px;margin-bottom:18px;font-size:11px;line-height:1.5}.notice-symbol{font-size:16px}.notice button{margin-left:auto;background:transparent;border:0;color:inherit;font-size:18px}.mode-bar{display:flex;align-items:center;justify-content:space-between;margin-bottom:17px;gap:12px}.mode-left{display:flex;align-items:center;gap:12px}.section-caption{color:#7e8b9c;font-size:10px;font-weight:700}.mode-switch{display:flex;align-items:center;background:#111722;border:1px solid #26303d;border-radius:8px;padding:3px}.mode-btn{background:none;border:0;color:#7e8b9b;font-size:10px;padding:7px 11px;border-radius:6px;font-weight:650}.mode-btn.active{background:#243a41;color:#8fe4da}.mode-hint{color:var(--yellow);font-size:10px}.right-mode{font-size:10px;color:#748396}.right-mode strong{color:#9aabba;font-weight:600}.separator{margin:0 3px}
.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:17px}.kpi-card,.skeleton-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:18px 19px 17px;min-height:137px;position:relative;overflow:hidden}.skeleton-card{background:linear-gradient(95deg,var(--surface),#17202b,var(--surface));background-size:300% 100%;animation:shine 1.7s infinite}@keyframes shine{to{background-position:-300% 0}}.kpi-head{display:flex;justify-content:space-between;align-items:center}.kpi-label{font-size:11px;color:#91a0b0}.kpi-icon{width:30px;height:30px;display:flex;align-items:center;justify-content:center;color:var(--cyan);background:#20353a;border-radius:8px;font-size:16px}.kpi-value{font-variant-numeric:tabular-nums;font-size:28px;line-height:1.1;margin-top:19px;font-weight:760;letter-spacing:-.6px}.kpi-desc{color:#748294;font-size:10px;margin-top:9px}.kpi-desc b{color:var(--green);font-weight:650}.kpi-progress{height:2px;position:absolute;bottom:0;left:0;width:55%;background:linear-gradient(90deg,transparent,var(--cyan));opacity:.8}
.insight-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(290px,.95fr);gap:17px;margin-bottom:17px}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);min-width:0}.trend-panel,.region-panel{padding:22px 22px 17px}.panel-header{display:flex;align-items:start;justify-content:space-between;gap:12px}.subheading{font-size:14px;font-weight:770;letter-spacing:-.1px}.tiny-separator{color:#566475;margin:0 5px;font-weight:400}.panel-sub{color:#718092;font-size:10px;margin-top:7px;line-height:1.5}.range-switch{display:flex;background:#161d28;padding:3px;border:1px solid #2b3441;border-radius:7px}.range-switch button{background:none;border:0;color:#7e8b9b;padding:6px 10px;font-size:10px;border-radius:5px;font-weight:750}.range-switch .selected{color:#b2eae5;background:#284044}.chart-stats{display:flex;align-items:baseline;margin-top:23px;gap:11px}.chart-stats strong{font-size:30px;letter-spacing:-.7px;font-weight:770;font-variant-numeric:tabular-nums}.chart-unit{color:#8a97a8;font-size:11px}.chart-delta{font-size:10px;font-weight:750}.chart-delta.positive{color:var(--green)}.chart-delta.negative{color:var(--red)}.chart-delta.muted{color:#6c7a8d}.line-chart{height:197px;width:100%;margin-top:8px;overflow:hidden}.line-chart svg{display:block;width:100%;height:100%}.empty-chart{display:flex;justify-content:center;align-items:center;height:100%;color:#7f8c9d;text-align:center;font-size:12px;line-height:1.8}.chart-footer{border-top:1px solid #222c38;padding-top:13px;display:flex;justify-content:space-between;gap:10px;color:#718092;font-size:10px}.legend-dot{width:7px;height:7px;background:var(--cyan);border-radius:50%;display:inline-block;margin-right:7px}.small-tag{background:#243039;border:1px solid #30434d;border-radius:5px;color:#9ac6c4;font-size:9px;white-space:nowrap;padding:5px 7px}.region-content{min-height:242px;margin-top:17px}.region-highlight{display:flex;align-items:end;justify-content:space-between;margin-bottom:17px}.region-highlight strong{font-size:29px;letter-spacing:-.6px}.region-highlight span{font-size:11px;color:#8795a5}.region-row{margin:11px 0 0}.region-head{display:flex;justify-content:space-between;align-items:center;gap:9px;margin-bottom:7px;font-size:11px}.region-country{display:flex;align-items:center;gap:10px;color:#b8c2cd}.flag-emoji{display:inline-block;min-width:19px;font-size:16px}.region-head b{font-weight:710;color:#d0d9e1;font-variant-numeric:tabular-nums}.region-track{height:5px;background:#222d39;border-radius:5px;overflow:hidden}.region-track>span{display:block;height:100%;border-radius:5px;background:linear-gradient(90deg,#328a8b,#6ad9cb)}.region-footer{border-top:1px solid #222c38;display:flex;align-items:start;gap:9px;padding-top:13px;color:#758597;font-size:10px;line-height:1.5}.info-text{color:var(--cyan);font-size:13px}.region-source{color:#63788a;font-size:9px;margin-top:14px}
.leaderboard-panel{overflow:hidden}.leader-top{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 23px 21px}.section-kicker{font-size:9px;letter-spacing:2px;font-weight:800;color:#6ac5c0;margin-bottom:8px}.leader-title{font-size:19px;font-weight:800;letter-spacing:-.4px;display:flex;align-items:center;gap:12px}.count-pill{font-weight:700;font-size:10px;color:#a1d5d0;background:#1f3439;border:1px solid #31535a;padding:5px 9px;border-radius:5px;letter-spacing:0}.leader-actions{display:flex;gap:9px}.ghost-button{height:36px;background:#171e29;border:1px solid #303a47;border-radius:7px;color:#9eacb9;padding:0 13px;font-size:10px;font-weight:700;white-space:nowrap}.ghost-button:hover{border-color:#507e80;color:#d6f5f1}.ghost-accent{color:#9fd5d0}.list-tools{border-top:1px solid #222a36;border-bottom:1px solid #27303d;padding:13px 23px;display:flex;justify-content:space-between;gap:15px;align-items:center}.tabs{display:flex;gap:5px}.tab{background:none;border:0;color:#8898a8;padding:9px 12px;font-size:11px;font-weight:650;border-radius:7px}.tab.active{background:#21323a;color:#a5e9e1}.filter-row{display:flex;gap:9px}.search-box{background:#151d27;border:1px solid #2a3441;border-radius:7px;display:flex;align-items:center;gap:8px;color:#8091a3;padding:0 11px;height:36px;width:208px}.search-box span{font-size:22px;line-height:1}.search-box input{min-width:0;width:100%;background:none;border:0;outline:0;color:#e0eaf0;font-size:11px}.search-box input::placeholder{color:#667688}select{height:36px;background:#151d27;border:1px solid #2a3441;border-radius:7px;color:#a9b6c3;padding:0 10px;font-size:10px;outline:none}select option{background:#131a24}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;text-align:left;font-variant-numeric:tabular-nums;white-space:nowrap}th{height:44px;border-bottom:1px solid #28313d;background:#141b25;font-size:9px;color:#68798d;font-weight:800;letter-spacing:.45px;padding:0 17px}td{height:63px;border-bottom:1px solid #202936;padding:0 17px;color:#a6b3c0;font-size:11px}tr:last-child td{border-bottom:0}tbody tr{cursor:pointer}tbody tr:hover{background:#17222b}.align-right{text-align:right}.rank-num{display:inline-flex;align-items:center;justify-content:center;min-width:25px;height:25px;border-radius:6px;background:#202937;color:#aebbc8;font-size:11px;font-weight:750}.rank-num.top3{background:#243b3e;color:#7ce4dc}.game-cell{display:flex;align-items:center;gap:12px;min-width:210px}.game-thumb{width:72px;height:36px;border-radius:5px;overflow:hidden;background:linear-gradient(115deg,#24404b,#323a55);flex:none;border:1px solid #33404a;display:flex;align-items:center;justify-content:center;color:#9bced1;font-size:10px;font-weight:700}.game-thumb img{width:100%;height:100%;object-fit:cover}.game-name{color:#e1e7ee;font-size:11px;font-weight:700;max-width:265px;overflow:hidden;text-overflow:ellipsis}.game-sub{color:#78899b;font-size:9px;margin-top:5px}.ccu-strong{color:#eaf0f7;font-size:12px;font-weight:770}.chg{font-size:10px;font-weight:780;display:inline-block;padding:5px 7px;border-radius:4px}.chg.pos{color:#88e0b2;background:#1c342f}.chg.neg{color:#e8a0a5;background:#34232d}.chg.neutral{color:#788a9f;background:#232c38}.region-chip{font-size:10px;color:#a9c7cc;border:1px solid #31444a;padding:6px 8px;border-radius:5px;background:#1b2b33;display:inline-block}.region-chip.unknown{background:transparent;color:#66788c;border-color:#27313e}.open-arrow{font-size:17px;color:#7a8b9d}.table-footer{display:flex;justify-content:space-between;padding:15px 22px;color:#728196;font-size:10px;background:#111721}.table-empty{text-align:center;color:#94a1b1;padding:48px}.page-footer{display:flex;justify-content:space-between;gap:15px;color:#67778b;font-size:10px;padding:20px 2px}.page-footer a{color:#9fc5c7}
.overlay,.modal-overlay{position:fixed;inset:0;z-index:30;display:flex;justify-content:flex-end}.overlay-screen{position:absolute;inset:0;background:#03060acc;backdrop-filter:blur(4px)}.drawer{z-index:1;position:relative;width:min(520px,100vw);height:100vh;background:#101720;border-left:1px solid #30404b;box-shadow:-25px 0 80px #0008;overflow:auto;padding:0 27px 35px;animation:slidein .18s ease-out}@keyframes slidein{from{transform:translateX(30px);opacity:.6}to{transform:translateX(0);opacity:1}}.drawer-toolbar{height:70px;border-bottom:1px solid #26323c;display:flex;align-items:center;justify-content:space-between}.drawer-label{color:#77c5bf;font-size:10px;letter-spacing:1.5px;font-weight:750}.close-btn{background:#1c2630;color:#9faebb;border:1px solid #34414e;border-radius:7px;width:31px;height:31px;font-size:23px;line-height:1}.close-btn:hover{color:white}.drawer-game{display:flex;align-items:center;gap:15px;margin:27px 0}.drawer-art{width:108px;height:63px;object-fit:cover;border-radius:8px;background:#263d49}.drawer-name{font-size:21px;font-weight:770;line-height:1.3}.drawer-appid{color:#718497;font-size:11px;margin-top:8px}.drawer-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:24px 0}.drawer-stat{background:#19212b;border:1px solid #2a3541;border-radius:8px;padding:13px}.drawer-stat small{color:#8090a1;font-size:10px}.drawer-stat strong{display:block;font-size:19px;margin-top:9px}.drawer-section-title{font-weight:750;font-size:14px;margin:28px 0 9px}.drawer-subtitle{color:#8797a7;font-size:11px;line-height:1.65}.drawer-chart{height:210px;margin-top:16px}.drawer-chart svg{height:100%;width:100%}.drawer-range{margin-top:14px;display:flex;gap:7px}.drawer-range button{background:#1c2830;border:1px solid #354350;color:#96a9b6;border-radius:6px;padding:7px 11px}.drawer-range button.selected{color:#88dfd8;border-color:#527f7e}.drawer-region-list{padding-bottom:15px}.drawer-region-row{display:flex;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid #26313b}.drawer-region-row span{width:140px;color:#acbcca}.drawer-region-row .region-track{flex:1}.drawer-region-row b{width:40px;text-align:right}.drawer-footnote{color:#8193a3;font-size:10px;line-height:1.8;margin-top:15px}.drawer-link{display:inline-flex;margin-top:15px;color:#93e0da;border:1px solid #325553;background:#1c3338;padding:11px 13px;border-radius:7px}.modal-overlay{justify-content:center;align-items:center}.settings-modal{z-index:1;width:min(600px,calc(100% - 28px));max-height:90vh;background:#131a24;border:1px solid #34404c;border-radius:14px;overflow:auto;box-shadow:0 20px 80px #000b}.modal-header{padding:25px;display:flex;justify-content:space-between;border-bottom:1px solid #2a3440}.modal-header h2{margin:0;font-size:20px}.settings-content{padding:23px 25px}.setting-row{display:flex;gap:14px;padding:13px 0 20px}.setting-icon{display:flex;justify-content:center;align-items:center;width:39px;height:39px;background:#203e40;color:#81e3dc;border-radius:9px;flex:none;font-size:22px}.setting-icon.secondary{background:#343126;color:#e7c88c}.setting-row b{font-size:13px}.setting-row p{color:#8998a8;font-size:11px;line-height:1.8;margin:9px 0}.setting-row small{color:#87c3b6}.setting-divider{border-top:1px solid #2a3440;margin:17px 0 20px}.settings-content h3{font-size:13px}.setting-help{font-size:11px;color:#8e9daf;line-height:1.8}.settings-input{width:100%;height:40px;border-radius:7px;padding:0 13px;color:#e4edf2;background:#1c2631;border:1px solid #374550;outline:none;margin:7px 0 15px}.settings-actions{display:flex;gap:9px;flex-wrap:wrap}.upload-button{border:1px solid #37625e;padding:0 14px;height:36px;display:flex;align-items:center;color:#90d8d0;background:#1a3335;border-radius:7px;cursor:pointer;font-size:10px;font-weight:700}.settings-response{color:#b6d5d0;font-size:10px;min-height:16px;line-height:1.8}
@media(max-width:1300px){.sidebar{width:215px}.topbar{padding:0 25px}.content{padding:30px 25px}.kpi-card{padding:16px 13px}.insight-grid{grid-template-columns:1.45fr 1fr}.game-thumb{width:55px}.game-cell{min-width:170px}}
@media(max-width:1050px){.sidebar{width:72px;padding:23px 10px}.brand{margin:0 8px 46px}.brand-title,.brand-sub,.workspace-label,.nav-link>span:not(.nav-icon),.nav-dot,.sidebar-bottom{display:none}.nav-link{justify-content:center;padding:0}.nav-icon{width:auto}.content{padding:25px 22px}.hero h1{font-size:32px}.insight-grid{grid-template-columns:1fr}.region-content{min-height:190px}.region-panel .region-content{display:grid;grid-template-columns:1fr 1fr;gap:0 15px}.region-highlight{grid-column:1/-1}}
@media(max-width:700px){.sidebar{display:none}.topbar{height:56px;padding:0 15px}.content{padding:23px 13px}.last-updated{display:none}.hero{display:block;margin-bottom:21px}.hero h1{font-size:30px;margin-bottom:9px}.hero-side{margin-top:20px;justify-content:space-between}.hero-state{padding-right:12px}.kpi-grid{grid-template-columns:repeat(2,1fr);gap:10px}.kpi-card{min-height:120px}.kpi-value{font-size:24px}.mode-bar{align-items:start}.mode-hint,.right-mode{display:none}.trend-panel,.region-panel{padding:17px}.leader-top{padding:18px;align-items:start}.leader-actions{display:none}.list-tools{padding:12px;align-items:stretch;flex-direction:column}.filter-row{width:100%}.search-box{width:100%}.tabs{gap:2px}.tab{padding:8px}.leader-title{font-size:16px}.chart-stats strong{font-size:24px}.region-panel .region-content{display:block}.page-footer{flex-direction:column;line-height:1.7}.drawer{padding:0 18px 25px}.drawer-kpis{gap:5px}.drawer-stat{padding:10px}.drawer-stat strong{font-size:15px}}
