:root{--bg: #060c16;--bg-subtle: #08101d;--panel: #0d1829;--panel-2: #122036;--panel-3: #182a45;--line: rgba(148, 185, 235, .12);--line-strong: rgba(148, 185, 235, .22);--line-bright: rgba(160, 200, 255, .38);--rim-light: inset 0 1px 0 rgba(255, 255, 255, .09);--rim-light-subtle: inset 0 1px 0 rgba(255, 255, 255, .05);--ink: #f0f5fc;--ink-2: #b0c2d8;--ink-3: #6e84a3;--ink-4: #485c77;--primary: #3b82f6;--primary-deep: #2563eb;--primary-hover: #60a5fa;--primary-soft: rgba(59, 130, 246, .14);--primary-ring: rgba(59, 130, 246, .35);--tank-bg: #03070e;--tank-line: rgba(148, 185, 235, .11);--tank-text: #e2eaf5;--tank-dim: #8ba2bf;--ok: #22c55e;--ok-soft: rgba(34, 197, 94, .12);--ok-line: rgba(34, 197, 94, .36);--warn: #f59e0b;--warn-soft: rgba(245, 158, 11, .12);--warn-line: rgba(245, 158, 11, .36);--danger: #ef4444;--danger-soft: rgba(239, 68, 68, .12);--risk: #f97316;--radius-lg: 20px;--radius: 14px;--radius-sm: 10px;--radius-xs: 6px;--shadow-1: 0 2px 4px rgba(0, 0, 0, .35), 0 8px 16px -4px rgba(0, 0, 0, .4);--shadow-2: 0 4px 8px rgba(0, 0, 0, .45), 0 20px 36px -10px rgba(0, 0, 0, .75);--shadow-glow: 0 0 20px rgba(59, 130, 246, .18);--ease: cubic-bezier(.16, 1, .3, 1);--dur-fast: .15s;--dur-mid: .28s;--fs-display: clamp(32px, 4.4vw, 50px);--fs-title: 22px;--fs-body: 14px;--fs-meta: 12px}*{box-sizing:border-box}html,body{overflow-x:clip}body{margin:0;background-color:var(--bg);background-image:radial-gradient(ellipse 70% 40% at 20% -10%,rgba(16,185,129,.07),transparent 60%),radial-gradient(ellipse 70% 45% at 80% -10%,rgba(168,85,247,.07),transparent 60%),radial-gradient(ellipse 85% 55% at 50% 15%,rgba(59,130,246,.08),transparent 75%),linear-gradient(to bottom,rgba(255,255,255,.015) 1px,transparent 1px),linear-gradient(to right,rgba(255,255,255,.015) 1px,transparent 1px);background-size:100% 100%,100% 100%,100% 100%,48px 48px,48px 48px;color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;font-size:var(--fs-body);line-height:1.65;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4{font-weight:600;margin:0;letter-spacing:-.01em;color:var(--ink)}button{font-family:inherit}::selection{background:var(--primary-ring);color:#fff}.hot-rank,.prob-num,.stat-chip b,.hud-chip b,.timeline-meta,.mix-bar,.dist-count,.faction-idx,.node-tag{font-variant-numeric:tabular-nums;letter-spacing:-.02em}@keyframes rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes scale-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.splash-overlay{transition-duration:1.1s,1.1s,.5s!important}.splash-card,.splash-card.is-center{transition-duration:.8s!important}.splash-badge{animation-duration:.9s!important}.splash-line .ch{transition-duration:.45s!important}.splash-caret{animation:splashCaretBlink .85s steps(2,start) infinite!important}}.app{max-width:1360px;margin:0 auto;padding:28px 32px 64px}.view-root{animation:fade-in var(--dur-mid) var(--ease)}.topbar-wrap{position:sticky;top:0;z-index:80;background:#060c16d1;backdrop-filter:blur(20px) saturate(1.4);-webkit-backdrop-filter:blur(20px) saturate(1.4);border-bottom:1px solid var(--line);box-shadow:0 4px 20px #0006;animation:fade-in .4s var(--ease)}.topbar{max-width:1360px;margin:0 auto;padding:14px 32px;display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{display:flex;align-items:center;gap:14px;min-width:0;border:0;padding:0;background:transparent;color:inherit;text-align:left;cursor:pointer;outline:none}.brand-mark{width:36px;height:36px;flex:none;filter:drop-shadow(0 2px 6px rgba(59,130,246,.25));transition:transform var(--dur-fast) var(--ease)}.brand:hover .brand-mark{transform:scale(1.04)}.brand h1{font-size:18px;font-weight:600;letter-spacing:-.01em;white-space:nowrap;line-height:1.2}.brand .sub{color:var(--ink-3);font-size:11.5px;margin-top:2px;white-space:nowrap;letter-spacing:.02em}.topbar-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.source-badge{display:inline-flex;align-items:center;gap:7px;font-size:11.5px;font-weight:500;padding:5px 12px;border-radius:999px;border:1px solid var(--line-strong);color:var(--ink-2);background:var(--panel-2);box-shadow:var(--rim-light-subtle);white-space:nowrap}.source-badge:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.9;flex:none}.source-badge.live{color:var(--ok);border-color:var(--ok-line);background:var(--ok-soft)}.source-badge.demo{color:var(--warn);border-color:var(--warn-line);background:var(--warn-soft)}.source-badge.cache{color:#94a3b8;border-color:#94a3b84d;background:#94a3b814}.backlink{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:500;color:var(--ink-2);cursor:pointer;background:var(--panel-2);border:1px solid var(--line-strong);box-shadow:var(--rim-light);border-radius:999px;padding:6px 14px;white-space:nowrap;transition:all var(--dur-fast) var(--ease)}.backlink:hover{color:#fff;border-color:var(--primary-hover);background:var(--panel-3)}.backlink:active{transform:translateY(1px)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line-strong);background:var(--panel-2);color:var(--ink);box-shadow:var(--rim-light),var(--shadow-1);border-radius:var(--radius-sm);padding:8px 18px;font-size:13px;font-weight:500;cursor:pointer;white-space:nowrap;transition:all var(--dur-fast) var(--ease)}.btn:hover{border-color:var(--primary-hover);color:#fff;background:var(--panel-3)}.btn:active{transform:translateY(1px)}.btn.primary{background:linear-gradient(180deg,#3b82f6,#2563eb);border-color:#60a5fa;color:#fff;box-shadow:0 1px 3px #0006,inset 0 1px #ffffff40,0 0 12px #2563eb4d}.btn.primary:hover{background:linear-gradient(180deg,#60a5fa,#3b82f6);border-color:#93c5fd;color:#fff;box-shadow:0 2px 6px #00000073,inset 0 1px #ffffff4d,0 0 16px #3b82f666}.btn:disabled{opacity:.42;cursor:not-allowed;transform:none!important;box-shadow:none!important}.btn:focus-visible,.backlink:focus-visible,.chip:focus-visible,.seg-btn:focus-visible,.oauth-btn:focus-visible,.hot-main:focus-visible,select:focus-visible,textarea:focus-visible{outline:none;box-shadow:0 0 0 3px var(--primary-ring)!important}.hero{padding:32px 0 12px}.hero .kicker{display:inline-flex;align-items:center;gap:10px;font-size:11px;letter-spacing:.16em;color:var(--primary-hover);font-weight:600;text-transform:uppercase;margin-bottom:16px;padding:4px 12px;background:#3b82f614;border:1px solid rgba(59,130,246,.2);border-radius:999px;box-shadow:var(--rim-light-subtle);animation:rise .5s var(--ease) backwards}.hero .kicker:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--primary-hover);box-shadow:0 0 6px var(--primary)}.hero h2{font-size:var(--fs-display);font-weight:700;line-height:1.24;letter-spacing:-.02em;color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.5);animation:rise .5s .08s var(--ease) backwards}.hero h2 .line-flora{display:inline-block;background:linear-gradient(135deg,#a7f3d0,#34d399,#60a5fa 70%,#c084fc);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.hero p{color:var(--ink-2);font-size:15px;line-height:1.75;margin:18px 0 0;max-width:48em;animation:rise .5s .16s var(--ease) backwards}.hero-caps{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:32px 0 6px;animation:fade-in .5s .22s var(--ease) backwards}.cap{display:flex;align-items:center;gap:14px;padding:16px 20px;background:var(--panel);border:1px solid var(--line);box-shadow:var(--rim-light),var(--shadow-1);border-radius:var(--radius);color:var(--ink-2);font-size:13.5px;font-weight:500;letter-spacing:.01em;transition:all var(--dur-fast) var(--ease)}.cap:hover{border-color:var(--line-bright);color:#fff;background:var(--panel-2);transform:translateY(-2px);box-shadow:var(--rim-light),var(--shadow-2)}.cap-icon-wrap{width:38px;height:38px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);flex:none;transition:all var(--dur-fast) var(--ease)}.cap-title{font-size:14.5px;font-weight:600;color:#fff;margin-bottom:2px}.cap-desc{font-size:12px;color:var(--ink-3)}.cap-flora .cap-icon-wrap{background:#10b9811f;border:1px solid rgba(16,185,129,.3);color:#34d399}.cap-flora:hover{border-color:#34d39973;box-shadow:0 4px 20px -4px #10b98140,var(--rim-light)}.cap-amber .cap-icon-wrap{background:#f59e0b1f;border:1px solid rgba(245,158,11,.3);color:#fbbf24}.cap-amber:hover{border-color:#fbbf2473;box-shadow:0 4px 20px -4px #f59e0b40,var(--rim-light)}.cap-gene .cap-icon-wrap{background:#a855f71f;border:1px solid rgba(168,85,247,.3);color:#c084fc}.cap-gene:hover{border-color:#c084fc73;box-shadow:0 4px 20px -4px #a855f740,var(--rim-light)}.search-shell{display:flex;align-items:center;gap:12px;margin:28px 0 16px;padding:8px 8px 8px 18px;background:var(--panel);border:1px solid var(--line-strong);border-radius:var(--radius);box-shadow:var(--rim-light),var(--shadow-2);transition:all var(--dur-fast) var(--ease);animation:rise .5s .28s var(--ease) backwards}.search-shell:focus-within{border-color:var(--primary-hover);background:var(--panel-2);box-shadow:0 0 0 3px var(--primary-ring),var(--shadow-2)}.search-shell .search-icon{color:var(--ink-3);transition:color var(--dur-fast) var(--ease)}.search-shell:focus-within .search-icon{color:var(--primary-hover)}.search-shell input{flex:1;min-width:0;border:none;background:transparent;padding:10px 0;font-size:14.5px;font-family:inherit;color:var(--ink)}.search-shell input::placeholder{color:var(--ink-4)}.search-shell input:focus{outline:none}.search-shell .btn{border-radius:var(--radius-sm);padding:10px 22px}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin:44px 0 18px;padding-bottom:12px;border-bottom:1px solid var(--line)}.section-head h3{font-size:20px;font-weight:600;color:#fff}.section-head .hint{font-size:12px;color:var(--ink-3);text-align:right}.hot-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(296px,1fr));gap:16px}.hot-card{display:flex;flex-direction:column;gap:12px;padding:18px 20px 16px;background:var(--panel);border:1px solid var(--line);box-shadow:var(--rim-light),var(--shadow-1);border-radius:var(--radius);transition:all var(--dur-fast) var(--ease);animation:rise .45s var(--ease) backwards;animation-delay:calc(min(var(--i, 0),12)*40ms + .08s)}.hot-card:hover{border-color:var(--line-bright);background:var(--panel-2);box-shadow:var(--rim-light),var(--shadow-2)}.hot-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.hot-rank{font-size:18px;font-weight:700;color:var(--ink-3);line-height:1;padding:3px 8px;background:#ffffff08;border-radius:6px}.hot-card:nth-child(-n+3) .hot-rank{color:var(--primary-hover);background:#3b82f61f;border:1px solid rgba(59,130,246,.25)}.ready-badge{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:600;color:#34d399;background:#10b9811f;border:1px solid rgba(16,185,129,.35);box-shadow:0 0 12px #10b9812e,var(--rim-light-subtle);padding:3px 10px;border-radius:999px;white-space:nowrap}.ready-badge:before{content:"";width:6px;height:6px;border-radius:50%;background:#34d399;box-shadow:0 0 6px #34d399}.hot-main{min-width:0;cursor:pointer;flex:1;outline:none}.hot-title{font-size:15px;font-weight:600;color:#f1f5f9;line-height:1.5;transition:color var(--dur-fast) var(--ease)}.hot-main:hover .hot-title,.hot-main:focus-visible .hot-title{color:var(--primary-hover)}.hot-summary{font-size:12.5px;color:var(--ink-2);line-height:1.6;margin-top:8px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.hot-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:4px;padding-top:10px;border-top:1px solid var(--line)}.hot-link{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--ink-3);text-decoration:none;transition:color var(--dur-fast) var(--ease)}.hot-link:hover{color:var(--ink-2);text-decoration:underline}.sk-head{grid-column:1 / -1;font-size:12px;color:var(--ink-3);padding:4px 0}.sk-card{display:flex;flex-direction:column;gap:12px;padding:18px 20px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);animation:fade-in .4s var(--ease) backwards}.sk-line{background:#ffffff0d;border-radius:4px;height:14px}.tank-layout{display:grid;grid-template-columns:minmax(0,1fr) 372px;gap:18px;align-items:start}@media (max-width: 1279px){.tank-layout{grid-template-columns:1fr}.panel{position:static}}.tank-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:12px}.tank-head .q{font-size:var(--fs-title);font-weight:500;line-height:1.4}.tank-stats{display:flex;gap:8px;margin-top:8px;flex-wrap:wrap}.stat-chip{font-size:12px;color:var(--ink-2);background:var(--panel-2);border:1px solid var(--line);border-radius:999px;padding:3px 11px}.stat-chip b{color:var(--primary);font-weight:500}.narrative{margin:0 0 14px;padding:12px 16px;border:1px solid var(--line);border-left:3px solid var(--primary);background:var(--panel-2);border-radius:0 var(--radius-sm) var(--radius-sm) 0;font-size:13.5px;color:var(--ink-2);animation:rise .4s .1s var(--ease) backwards}.tank-svg-wrap{position:relative;margin:18px 0 4px;border:1px solid var(--line-strong);border-radius:3px;overflow:hidden;background:var(--tank-bg);box-shadow:inset 0 0 0 1px #0006,0 18px 40px -24px #000000b3;animation:fade-in .5s var(--ease)}.tank-svg-wrap svg{display:block}.tank-frame{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.tank-frame i{position:absolute;width:15px;height:15px;border:0 solid rgba(148,178,216,.6)}.tank-frame i.tl{top:9px;left:9px;border-top-width:1.5px;border-left-width:1.5px}.tank-frame i.tr{top:9px;right:9px;border-top-width:1.5px;border-right-width:1.5px}.tank-frame i.bl{bottom:9px;left:9px;border-bottom-width:1.5px;border-left-width:1.5px}.tank-frame i.br{bottom:9px;right:9px;border-bottom-width:1.5px;border-right-width:1.5px}.hud{position:absolute;top:10px;left:10px;right:10px;display:flex;gap:6px;flex-wrap:wrap;pointer-events:none}.hud-chip{font-size:11px;color:var(--tank-text);background:#09121f8c;border:1px solid rgba(148,178,216,.2);border-radius:999px;padding:3px 10px}.hud-chip b{color:#9cc0f5;font-weight:500}.legend{position:absolute;left:0;right:0;bottom:0;display:flex;flex-wrap:wrap;gap:12px;padding:9px 16px;font-size:var(--fs-meta);color:var(--tank-dim);background:#09121f8c;border-top:1px solid rgba(148,178,216,.14)}.legend span{display:inline-flex;align-items:center;gap:5px}.legend i{width:9px;height:9px;border-radius:50%;display:inline-block;border:1px solid rgba(255,255,255,.35)}.legend .note{margin-left:auto;color:#8fa3bdcc}.legend .legend-title{color:var(--tank-text);font-weight:500}.node-g{cursor:pointer;transition:transform .12s ease}.node-g:hover{transform:translateY(-1px)}.node-g:hover circle.core{stroke-width:3}.node-g circle.core{transition:stroke-width .12s ease}.node-tag{pointer-events:none}.axis-note{font-size:12px;color:var(--ink-3);margin:0 0 4px}.detail-card{margin-top:14px;background:var(--panel-2);border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px;box-shadow:var(--shadow-1);animation:rise .32s var(--ease)}.detail-card .name{font-weight:500;color:var(--ink);font-size:14px}.detail-card p{margin:8px 0;font-size:13px;color:var(--ink-2)}.meta-line{font-size:12px;color:var(--ink-3)}.quote{padding:8px 12px;background:var(--bg);border-radius:var(--radius-xs);margin-bottom:6px;font-size:12.5px;color:var(--ink-2)}.panel{display:flex;flex-direction:column;gap:16px;position:sticky;top:92px}.segmented{display:flex;background:var(--panel);border:1px solid var(--line);box-shadow:var(--rim-light),var(--shadow-1);border-radius:var(--radius-sm);padding:4px;gap:4px}.seg-btn{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:9px 0;font-size:12.5px;font-weight:500;border:none;border-radius:7px;background:transparent;color:var(--ink-3);cursor:pointer;white-space:nowrap;transition:all var(--dur-fast) var(--ease)}.seg-btn svg{opacity:.75;transition:opacity var(--dur-fast) var(--ease)}.seg-btn:hover{color:var(--ink);background:#ffffff0a}.seg-btn.active{background:var(--panel-2);color:#fff;font-weight:600;box-shadow:var(--rim-light),0 2px 8px #00000059;border:1px solid var(--line-strong)}.seg-btn.active svg{opacity:1;color:var(--primary-hover)}.panel-card{background:var(--panel);border:1px solid var(--line);box-shadow:var(--rim-light),var(--shadow-1);border-radius:var(--radius);padding:20px}.panel-title{font-size:15.5px;font-weight:600;color:#fff;margin-bottom:14px;display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}.narrative-block{margin-top:0;border-color:#3b82f647;background:linear-gradient(180deg,#0d1829f2,#09111ef2);box-shadow:var(--rim-light),0 6px 24px #00000073}.narrative-block .panel-title{border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:14px}.faction{display:flex;gap:14px;padding:12px;margin-bottom:10px;background:#12203673;border:1px solid var(--line);border-radius:var(--radius-sm);box-shadow:var(--rim-light-subtle);transition:all var(--dur-fast) var(--ease)}.faction:hover{background:#122036b3;border-color:var(--line-strong)}.faction-theme-0 .faction-idx{color:var(--primary-hover);background:#3b82f61f;border:1px solid rgba(59,130,246,.25)}.faction-theme-0:hover{border-color:#3b82f666}.faction-theme-1 .faction-idx{color:#34d399;background:#10b9811f;border:1px solid rgba(16,185,129,.28)}.faction-theme-1:hover{border-color:#34d39966}.faction-theme-2 .faction-idx{color:#fbbf24;background:#f59e0b1f;border:1px solid rgba(245,158,11,.28)}.faction-theme-2:hover{border-color:#fbbf2466}.faction-theme-3 .faction-idx{color:#c084fc;background:#a855f71f;border:1px solid rgba(168,85,247,.28)}.faction-theme-3:hover{border-color:#c084fc66}.faction-idx{font-size:16px;font-weight:700;width:34px;height:34px;display:flex;align-items:center;justify-content:center;border-radius:8px;flex:none}.faction-body{min-width:0;flex:1}.faction-name{font-size:14px;font-weight:600;color:#fff;letter-spacing:-.01em}.faction-claim{font-size:13px;color:var(--ink-2);margin-top:5px;line-height:1.6;background:#03070e66;padding:6px 10px;border-radius:6px;border:1px solid rgba(255,255,255,.04)}.faction-persuasion{font-size:12px;color:var(--ink-3);margin-top:6px;display:flex;align-items:center;gap:6px}.faction-persuasion:before{content:"";width:4px;height:4px;border-radius:50%;background:var(--ink-3)}.faction-dominant{margin-top:14px;padding:12px 16px;background:#3b82f617;border:1px solid rgba(59,130,246,.3);border-left:4px solid var(--primary);border-radius:var(--radius-sm);box-shadow:var(--rim-light-subtle);font-size:13px;color:var(--ink);line-height:1.65}.faction-dominant .ev-label{display:inline-block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--primary-hover);background:#3b82f62e;padding:2px 8px;border-radius:4px;margin-right:8px;vertical-align:middle}.narrative-raw{font-size:13px;color:var(--ink-2);line-height:1.75;white-space:pre-wrap;background:#03070e80;padding:14px;border-radius:var(--radius-xs);border:1px solid var(--line)}.report-preview{width:100%;max-width:100%;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-sm);background:#03070e80;box-shadow:var(--rim-light-subtle)}.report-preview svg{display:block;width:100%;height:auto;max-width:100%}.badge-warn{font-size:11px;font-weight:500;padding:2px 10px;border-radius:999px;background:var(--warn-soft);color:var(--warn);border:1px solid var(--warn-line)}.badge-info{font-size:11px;font-weight:500;padding:2px 10px;border-radius:999px;background:var(--primary-soft);color:var(--primary-hover);border:1px solid var(--primary-ring)}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.field label{font-size:12px;color:var(--ink-3);font-weight:500}select{border:1px solid var(--line-strong);border-radius:var(--radius-xs);padding:9px 12px;font-family:inherit;font-size:13px;background:var(--panel-2);color:var(--ink);cursor:pointer;box-shadow:var(--rim-light-subtle);transition:all var(--dur-fast) var(--ease)}select:focus{outline:none;border-color:var(--primary-hover);box-shadow:0 0 0 3px var(--primary-ring)}.toggle-row{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:var(--ink-2);padding:10px 0;border-top:1px solid var(--line)}.switch{position:relative;width:40px;height:22px;flex:none;cursor:pointer}.switch input{opacity:0;width:0;height:0}.switch .track{position:absolute;top:0;right:0;bottom:0;left:0;background:#ffffff1f;border-radius:999px;transition:background var(--dur-fast) var(--ease)}.switch .knob{position:absolute;top:2.5px;left:2.5px;width:17px;height:17px;background:#f8fafc;border-radius:50%;transition:left .18s var(--ease);box-shadow:0 2px 4px #00000080}.switch input:checked+.track{background:var(--primary)}.switch input:checked~.knob{left:20.5px}.timeline-slider{width:100%;accent-color:var(--primary);cursor:pointer;height:6px;background:var(--panel-2);border-radius:3px}.timeline-meta{display:flex;justify-content:space-between;font-size:12px;color:var(--ink-3);margin-top:8px}.timeline-box{margin-top:14px;font-size:13px;color:var(--ink-2);padding:12px 14px;background:#03070e99;border-radius:var(--radius-xs);border:1px solid var(--line)}textarea{width:100%;min-height:130px;border:1px solid var(--line-strong);border-radius:var(--radius-xs);padding:12px 14px;font-family:inherit;font-size:13.5px;line-height:1.6;resize:vertical;background:var(--panel-2);color:var(--ink);box-shadow:var(--rim-light-subtle);transition:all var(--dur-fast) var(--ease)}textarea:focus{outline:none;border-color:var(--primary-hover);box-shadow:0 0 0 3px var(--primary-ring)}.chip-row{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.chip{font-size:12px;padding:5px 12px;border-radius:999px;border:1px solid var(--line-strong);color:var(--ink-2);background:var(--panel-2);box-shadow:var(--rim-light-subtle);cursor:pointer;transition:all var(--dur-fast) var(--ease)}.chip:hover{border-color:var(--primary-hover);color:#fff;background:var(--panel-3)}.chip:active{transform:scale(.96)}.gauge-row{display:flex;align-items:center;gap:16px;margin-bottom:12px}.prob-num{font-size:34px;font-weight:700;color:#fff;line-height:1}.prob-label{font-size:var(--fs-meta);color:var(--ink-3);margin-top:4px}.mix-bar{display:flex;height:24px;border-radius:8px;overflow:hidden;border:1px solid var(--line-strong);margin:10px 0 6px;font-size:11.5px;font-weight:600}.mix-bar span{display:flex;align-items:center;justify-content:center;white-space:nowrap}.mix-bar .seg-rule{background:var(--primary-soft);color:var(--primary-hover)}.verdict{font-size:14px;font-weight:500;color:#fff;margin-top:12px}.report-block{margin-top:14px}.report-block .bt{font-size:12.5px;color:var(--ink-3);margin-bottom:6px;font-weight:500}.report-list{margin:0;padding-left:18px;font-size:13px;color:var(--ink-2)}.report-list li{margin-bottom:6px}.report-list.strip{list-style:none;padding-left:0}.report-list.strip li{padding-left:12px;border-left:2px solid var(--risk);margin-bottom:8px;line-height:1.5}.report-list.strip.advice li{border-left-color:var(--primary-hover)}.err{display:flex;gap:10px;align-items:flex-start;padding:12px 16px;border:1px solid rgba(239,68,68,.4);background:#ef44441a;color:#fca5a5;border-radius:var(--radius-sm);font-size:13px;animation:rise .28s var(--ease)}.err svg{margin-top:2px;color:#ef4444}.toast{position:fixed;top:20px;right:24px;z-index:120;display:flex;align-items:center;gap:10px;max-width:min(420px,calc(100vw - 32px));padding:12px 16px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--panel-2);color:var(--ink);box-shadow:var(--shadow-2);font-size:13px;animation:rise .26s var(--ease)}.toast.is-ok{border-color:var(--ok-line);color:var(--ok)}.toast.is-err{border-color:#ef444466;color:#fca5a5}.toast.is-warn{border-color:var(--warn-line);color:var(--warn)}.toast-close{display:inline-flex;margin-left:6px;padding:2px;border:0;background:transparent;color:var(--ink-3);cursor:pointer}.toast-close:hover{color:#fff}.loading{color:var(--ink-3);font-size:13.5px;padding:40px 0;text-align:center;animation:fade-in .3s var(--ease)}.footer-note{margin-top:56px;padding-top:20px;border-top:1px solid var(--line);font-size:12px;color:var(--ink-3);text-align:center;line-height:1.8}.auth-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#03070ec7;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);display:flex;align-items:center;justify-content:center;padding:20px;animation:fade-in .2s var(--ease)}.auth-modal{width:100%;max-width:440px;background:var(--panel);border:1px solid var(--line-strong);box-shadow:var(--rim-light),var(--shadow-2);border-radius:var(--radius-lg);padding:28px;animation:scale-in .25s var(--ease)}.auth-modal-mark{width:40px;height:40px;border-radius:10px;background:#3b82f61f;border:1px solid rgba(59,130,246,.25);display:flex;align-items:center;justify-content:center;color:var(--primary-hover);margin-bottom:16px}.auth-modal h2{font-size:18px;margin-bottom:8px}.auth-modal p{font-size:13.5px;color:var(--ink-2);line-height:1.65;margin:0 0 20px}.auth-modal-actions{display:flex;justify-content:flex-end;gap:10px}.oauth-btn{padding:8px 16px;border:1px solid var(--primary);border-radius:var(--radius-sm);background:var(--primary);color:#fff;font-size:12.5px;font-weight:500;cursor:pointer;white-space:nowrap;box-shadow:0 1px 2px #0000004d;transition:all var(--dur-fast) var(--ease)}.oauth-btn:hover{background:var(--primary-deep)}.oauth-btn:active{transform:translateY(1px)}.splash-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 48%,#0d1b2efa,#060c16fc);backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px);pointer-events:none;opacity:1;transition:background 1.1s cubic-bezier(.16,1,.3,1),backdrop-filter 1.1s cubic-bezier(.16,1,.3,1),opacity .5s ease .6s}.splash-overlay.is-hidden{opacity:0}.splash-overlay.is-flying{background:transparent;backdrop-filter:blur(0px);-webkit-backdrop-filter:blur(0px)}.splash-card{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:900px;width:90%;padding:24px;opacity:0;transform:translateY(24px) scale(.96);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1);will-change:transform,opacity}.splash-card.is-center{opacity:1;transform:translateY(0) scale(1)}.splash-badge{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:700;letter-spacing:.24em;color:var(--primary-hover);padding:5px 16px;background:#3b82f61f;border:1px solid rgba(59,130,246,.3);border-radius:999px;margin-bottom:24px;box-shadow:0 0 20px #3b82f640;animation:splashBadgeRise .9s cubic-bezier(.16,1,.3,1) backwards}@keyframes splashBadgeRise{0%{opacity:0;transform:translateY(-12px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.splash-dot{width:6px;height:6px;border-radius:50%;background:var(--primary-hover);box-shadow:0 0 8px var(--primary)}.splash-title{display:flex;flex-direction:column;gap:16px;font-size:clamp(26px,4.2vw,42px);font-weight:700;line-height:1.36;letter-spacing:-.025em;color:#fff;text-shadow:0 4px 28px rgba(0,0,0,.8),0 0 50px rgba(59,130,246,.3)}.splash-line{display:block}.splash-line .ch{opacity:0;display:inline-block;transform:translateY(.35em);filter:blur(6px);transition:opacity .45s cubic-bezier(.16,1,.3,1),transform .45s cubic-bezier(.16,1,.3,1),filter .45s cubic-bezier(.16,1,.3,1)}.splash-line .ch.on{opacity:1;transform:translateY(0);filter:blur(0)}.splash-caret{display:inline-block;width:2px;height:.95em;margin-left:3px;vertical-align:-.12em;background:var(--primary-hover);box-shadow:0 0 10px #3b82f6b3;animation:splashCaretBlink .85s steps(2,start) infinite}.splash-line.line-2 .ch{color:#72aeff}.splash-line.line-2{background:linear-gradient(180deg,#93c5fd,#3b82f6);-webkit-background-clip:text;background-clip:text}@keyframes splashCaretBlink{0%,49%{opacity:1}50%,to{opacity:.15}}@media (max-width: 980px){.tank-view{grid-template-columns:1fr}.panel{position:static}}@media (max-width: 720px){.app{padding:20px 16px 40px}.topbar{padding:12px 16px}.hero-caps{grid-template-columns:1fr}.section-head{flex-direction:column;align-items:flex-start;gap:4px}.section-head .hint{text-align:left}}
