:root{--ink: #eaeff5;--slate: #ffffff;--slate-2: #f7f9fc;--slate-3: #edf1f7;--mist: #dde4ee;--mist-2: #c5cfde;--cyan: #2563eb;--cyan-2: #1d4ed8;--cyan-dim: rgba(37, 99, 235, .1);--moss: #059669;--moss-dim: rgba(5, 150, 105, .1);--moss-ink: #047857;--vermilion: #e11d48;--vermilion-dim: rgba(225, 29, 72, .1);--amber: #d97706;--amber-dim: rgba(217, 119, 6, .1);--amber-ink: #a1580a;--rice: #111827;--rice-2: #1f2937;--fog: #4b5563;--fog-2: #5f6975;--fog-3: #7c8698;--glow: rgba(37, 99, 235, .3);--glow-soft: rgba(37, 99, 235, .14);--glass-bg: rgba(255, 255, 255, .72);--glass-bg-strong: rgba(255, 255, 255, .86);--glass-border: rgba(255, 255, 255, .9);--glass-blur: blur(20px) saturate(180%);--font-sans: "Inter", "HarmonyOS Sans SC", "PingFang SC", "Microsoft YaHei UI", "Microsoft YaHei", system-ui, -apple-system, "Segoe UI", sans-serif;--font-serif: "Noto Serif SC", "Source Han Serif SC", "Songti SC", "SimSun", Georgia, serif;--font-mono: "JetBrains Mono", "Cascadia Mono", "SFMono-Regular", Consolas, ui-monospace, monospace;--fs-display: 3.5rem;--fs-h1: 2rem;--fs-h2: 1.5rem;--fs-h3: 1.125rem;--fs-body: .9375rem;--fs-cap: .75rem;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 24px;--sp-6: 32px;--sp-7: 48px;--sp-8: 72px;--sp-9: 104px;--r-1: 4px;--r-2: 6px;--r-3: 10px;--r-4: 14px;--r-xl: 24px;--sh-1: 0 1px 2px rgba(17, 24, 39, .04), 0 0 0 1px rgba(17, 24, 39, .03);--sh-2: 0 10px 28px -16px rgba(17, 24, 39, .2), 0 1px 2px rgba(17, 24, 39, .04);--sh-3: 0 28px 56px -30px rgba(17, 24, 39, .3), 0 2px 6px rgba(17, 24, 39, .05);--sh-glow: 0 0 0 1px rgba(37, 99, 235, .22), 0 8px 26px -12px rgba(37, 99, 235, .34);--ease: cubic-bezier(.22, .9, .28, 1);--dur-1: .16s;--dur-2: .28s;--dur-3: .62s;--nav-h: 60px;--rail-w: 236px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-size-adjust:100%;color-scheme:light}body{font-family:var(--font-sans);font-size:var(--fs-body);line-height:1.7;color:var(--rice);background:var(--ink);min-height:100vh;overflow-x:hidden}#root{min-height:100vh;display:flex;flex-direction:column}a{color:inherit;text-decoration:none}button{font-family:inherit;font-size:inherit;cursor:pointer;border:none;background:none;color:inherit;line-height:inherit}img{max-width:100%;display:block}ul,ol{list-style:none}input,select,textarea{font-family:inherit;font-size:inherit;color:inherit}table{border-collapse:collapse;width:100%}::selection{background:#2563eb2e;color:var(--rice)}:focus-visible{outline:2px solid var(--cyan);outline-offset:2px;border-radius:var(--r-1)}.container{width:min(1200px,92vw);margin-inline:auto}.container-wide{width:min(1480px,95vw);margin-inline:auto}.container-narrow{width:min(880px,92vw);margin-inline:auto}.page{flex:1;padding-bottom:var(--sp-8)}.page-pad{padding-top:var(--sp-7)}.workbench{display:grid;grid-template-columns:var(--rail-w) minmax(0,1fr);gap:0;width:min(1480px,95vw);margin-inline:auto;padding-top:var(--sp-6);align-items:start}.workbench-main{min-width:0;padding-left:var(--sp-7)}.ide-shell{display:grid;grid-template-columns:264px minmax(0,1fr) 320px;height:calc(100vh - var(--nav-h))}.t-display{font-size:var(--fs-display);line-height:1.14;font-weight:600;letter-spacing:-.02em;color:var(--rice)}.t-h1{font-size:var(--fs-h1);line-height:1.24;font-weight:600;letter-spacing:-.01em;color:var(--rice)}.t-h2{font-size:var(--fs-h2);line-height:1.3;font-weight:600;color:var(--rice)}.t-h3{font-size:var(--fs-h3);line-height:1.45;font-weight:600;color:var(--rice)}.t-body{font-size:var(--fs-body);line-height:1.75;color:var(--rice-2)}.t-cap{font-size:var(--fs-cap);line-height:1.6;color:var(--fog)}.t-lead{font-size:1.0625rem;line-height:1.8;color:var(--fog)}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.micro{font-family:var(--font-mono);font-size:.6875rem;letter-spacing:.16em;text-transform:uppercase;color:var(--fog);font-weight:500}.micro-bright{color:var(--cyan)}.sec-label{display:flex;align-items:center;gap:12px;font-family:var(--font-mono);font-size:.6875rem;letter-spacing:.16em;text-transform:uppercase;color:var(--fog);margin-bottom:var(--sp-4)}.sec-label:before{content:"";width:22px;height:1px;background:var(--cyan);flex:none;opacity:.8}.sec-head{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--sp-5);margin-bottom:var(--sp-5)}.rule{height:1px;background:var(--mist);border:0;width:100%}.rule-fade{height:1px;background:linear-gradient(90deg,var(--mist),transparent);border:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 18px;border-radius:var(--r-2);font-size:.875rem;font-weight:500;letter-spacing:.01em;border:1px solid transparent;white-space:nowrap;transition:background var(--dur-1) var(--ease),color var(--dur-1) var(--ease),border-color var(--dur-1) var(--ease),box-shadow var(--dur-2) var(--ease),opacity var(--dur-1) var(--ease)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-primary{background:var(--cyan);color:#fff;font-weight:600}.btn-primary:hover:not(:disabled){background:#3b82f6;box-shadow:0 0 24px -4px var(--glow)}.btn-amber{background:var(--amber);color:#422006;font-weight:600}.btn-amber:hover:not(:disabled){background:#f59e0b;box-shadow:0 0 24px -6px #d9770666}.btn-secondary{background:var(--slate-2);color:var(--rice);border-color:var(--mist-2)}.btn-secondary:hover:not(:disabled){border-color:var(--cyan);color:var(--cyan)}.btn-outline{background:transparent;color:var(--rice-2);border-color:var(--mist)}.btn-outline:hover:not(:disabled){border-color:var(--mist-2);color:var(--rice);background:var(--slate-2)}.btn-ghost{background:transparent;color:var(--fog);border-color:transparent;padding:7px 10px}.btn-ghost:hover:not(:disabled){background:var(--slate-2);color:var(--rice)}.btn-danger{background:transparent;color:var(--vermilion);border-color:#e11d4857}.btn-danger:hover:not(:disabled){background:var(--vermilion-dim)}.btn-sm{padding:6px 12px;font-size:.8125rem}.btn-lg{padding:14px 30px;font-size:.9375rem}.btn-block{width:100%}.btn-icon{padding:8px;width:34px;height:34px}.card{background:var(--slate);border:1px solid var(--mist);border-radius:var(--r-3)}.card-pad{padding:var(--sp-5)}.card-hover{transition:border-color var(--dur-2) var(--ease),background var(--dur-2) var(--ease),transform var(--dur-2) var(--ease)}.card-hover:hover{border-color:var(--mist-2);background:var(--slate-2);transform:translateY(-2px)}.card-flat{background:var(--slate-2);border:1px solid var(--mist);border-radius:var(--r-2)}.panel{background:var(--slate);border:1px solid var(--mist);border-radius:var(--r-3);overflow:hidden}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4);padding:14px 20px;border-bottom:1px solid var(--mist);background:var(--slate-2)}.panel-title{display:flex;align-items:center;gap:10px;font-size:.875rem;font-weight:600;color:var(--rice)}.panel-body{padding:20px}.panel-body:has(.tbl){overflow-x:auto}.panel-foot{padding:14px 20px;border-top:1px solid var(--mist);background:var(--slate-2)}.accent-l{border-left:2px solid var(--cyan);padding-left:14px}.tag{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border:1px solid var(--mist-2);border-radius:var(--r-1);font-family:var(--font-mono);font-size:.6875rem;letter-spacing:.04em;color:var(--fog);background:transparent;white-space:nowrap;line-height:1.5}.tag-cyan{border-color:#2563eb66;color:var(--cyan);background:var(--cyan-dim)}.tag-moss{border-color:#05966966;color:var(--moss-ink);background:var(--moss-dim)}.tag-ver{border-color:#e11d4866;color:var(--vermilion);background:var(--vermilion-dim)}.tag-amber{border-color:#d977066b;color:var(--amber-ink);background:var(--amber-dim)}.tag-solid{background:var(--rice);border-color:var(--rice);color:var(--ink);font-weight:600}.verdict{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:.6875rem;letter-spacing:.06em}.verdict:before{content:"";width:9px;height:9px;flex:none;border-radius:var(--r-1)}.verdict-ok{color:var(--moss-ink)}.verdict-ok:before{background:var(--moss);box-shadow:0 0 8px #05966980}.verdict-no{color:var(--vermilion)}.verdict-no:before{background:transparent;border:2px solid var(--vermilion)}.verdict-wait{color:var(--amber-ink)}.verdict-wait:before{background:var(--amber);transform:rotate(45deg)}.conf{display:inline-flex;gap:3px;align-items:center}.conf i{width:7px;height:8px;border-radius:1px;background:var(--mist-2);display:block}.conf i.on{background:var(--cyan)}.conf.low i.on{background:var(--amber)}.field{display:flex;align-items:center;gap:10px;background:var(--slate-3);border:1px solid var(--mist);border-radius:var(--r-2);padding:0 14px;transition:border-color var(--dur-1) var(--ease),box-shadow var(--dur-2) var(--ease)}.field:focus-within{border-color:var(--cyan);box-shadow:0 0 0 3px #2563eb17}.field input,.field textarea{flex:1;min-width:0;border:none;outline:none;background:transparent;color:var(--rice);padding:11px 0}.field input::placeholder,.field textarea::placeholder{color:var(--fog-3)}.field-icon{color:var(--fog);flex:none;display:flex}textarea.area{width:100%;background:var(--slate-3);border:1px solid var(--mist);border-radius:var(--r-2);padding:12px 14px;color:var(--rice);line-height:1.75;resize:vertical;outline:none;transition:border-color var(--dur-1) var(--ease),box-shadow var(--dur-2) var(--ease);font-family:inherit}textarea.area:focus{border-color:var(--cyan);box-shadow:0 0 0 3px #2563eb17}textarea.area::placeholder{color:var(--fog-3)}select.select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--slate-3);border:1px solid var(--mist);border-radius:var(--r-2);padding:9px 32px 9px 12px;color:var(--rice);outline:none;cursor:pointer;transition:border-color var(--dur-1) var(--ease);background-image:linear-gradient(45deg,transparent 50%,var(--fog) 50%),linear-gradient(135deg,var(--fog) 50%,transparent 50%);background-position:calc(100% - 16px) 50%,calc(100% - 11px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat}select.select:focus{border-color:var(--cyan)}select.select option{background:var(--slate);color:var(--rice)}.lbl{display:block;font-family:var(--font-mono);font-size:.6875rem;letter-spacing:.14em;text-transform:uppercase;color:var(--fog);margin-bottom:8px}.check{display:inline-flex;align-items:center;gap:9px;cursor:pointer;font-size:.875rem;color:var(--rice-2);-webkit-user-select:none;user-select:none}.check input{position:absolute;opacity:0;pointer-events:none}.check .box{width:15px;height:15px;border:1px solid var(--mist-2);border-radius:var(--r-1);flex:none;display:grid;place-items:center;transition:all var(--dur-1) var(--ease);background:var(--slate-3)}.check .box:after{content:"";width:7px;height:7px;background:transparent;border-radius:1px;transition:background var(--dur-1) var(--ease)}.check input:checked+.box{border-color:var(--cyan);background:#2563eb24}.check input:checked+.box:after{background:var(--cyan)}.check input:focus-visible+.box{outline:2px solid var(--cyan);outline-offset:2px}input[type=range].range{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:3px;background:var(--mist);border-radius:2px;outline:none;cursor:pointer}input[type=range].range::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:14px;height:14px;border-radius:var(--r-1);background:var(--cyan);border:2px solid var(--ink);box-shadow:0 0 10px -1px var(--glow);cursor:grab}.tabs{display:flex;gap:24px;border-bottom:1px solid var(--mist)}.tab{position:relative;padding:10px 0;font-size:.875rem;color:var(--fog);border-bottom:1px solid transparent;margin-bottom:-1px;transition:color var(--dur-1) var(--ease),border-color var(--dur-1) var(--ease);white-space:nowrap}.tab:hover{color:var(--rice-2)}.tab.active{color:var(--cyan);border-bottom-color:var(--cyan);font-weight:500}.tab .cnt{font-family:var(--font-mono);font-size:.6875rem;margin-left:6px;color:var(--fog)}.tab.active .cnt{color:var(--cyan)}.segmented{display:inline-flex;border:1px solid var(--mist);border-radius:var(--r-2);overflow:hidden;background:var(--slate-3)}.segmented button{padding:8px 16px;font-size:.8125rem;color:var(--fog);transition:all var(--dur-1) var(--ease);border-right:1px solid var(--mist)}.segmented button:last-child{border-right:none}.segmented button:hover{color:var(--rice)}.segmented button.on{background:var(--cyan);color:#fff;font-weight:600}.track{display:block;height:6px;background:var(--slate-3);border-radius:1px;overflow:hidden}.track-fill{display:block;height:100%;border-radius:1px;transition:width var(--dur-3) var(--ease)}.stateflow{display:flex;align-items:center;gap:0;overflow-x:auto}.stateflow-node{display:flex;align-items:center;gap:9px;padding:8px 0;white-space:nowrap}.stateflow-dot{width:9px;height:9px;border-radius:var(--r-1);border:1px solid var(--mist-2);flex:none;transition:all var(--dur-2) var(--ease)}.stateflow-node.done .stateflow-dot{background:var(--cyan);border-color:var(--cyan);box-shadow:0 0 9px -1px var(--glow)}.stateflow-node.now .stateflow-dot{background:var(--amber);border-color:var(--amber);box-shadow:0 0 10px -1px #d9770699;animation:breathe 2.2s var(--ease) infinite}.stateflow-name{font-family:var(--font-mono);font-size:.6875rem;letter-spacing:.08em;color:var(--fog-2)}.stateflow-node.done .stateflow-name,.stateflow-node.now .stateflow-name{color:var(--rice-2)}.stateflow-node.now .stateflow-name{color:var(--amber-ink)}.stateflow-link{width:34px;height:1px;background:var(--mist);margin:0 12px;flex:none}.stateflow-node.done+.stateflow-link{background:#2563eb80}.ai-flow{position:relative;isolation:isolate}.ai-flow:before{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border-radius:inherit;padding:1px;background:conic-gradient(from var(--flow-angle, 0deg),transparent 0%,rgba(37,99,235,.9) 12%,rgba(217,119,6,.7) 22%,transparent 34%,transparent 100%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;animation:flowSpin 2.4s linear infinite;pointer-events:none;z-index:2}.ai-done{animation:settle .62s var(--ease) both}@keyframes flowSpin{to{--flow-angle: 360deg}}@property --flow-angle{syntax: "<angle>"; initial-value: 0deg; inherits: false;}.shimmer{position:relative;overflow:hidden}.shimmer:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent,rgba(37,99,235,.07) 45%,rgba(37,99,235,.14) 50%,rgba(37,99,235,.07) 55%,transparent);animation:sweep 1.6s linear infinite;pointer-events:none}@keyframes sweep{0%{transform:translate(-100%)}to{transform:translate(100%)}}.ai-status{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:.6875rem;letter-spacing:.1em;text-transform:uppercase;color:var(--cyan)}.ai-status .dot{width:6px;height:6px;background:var(--cyan);border-radius:50%;box-shadow:0 0 8px var(--glow);animation:breathe 1.6s var(--ease) infinite}.sk{background:linear-gradient(90deg,var(--slate-3) 25%,var(--slate-2) 37%,var(--slate-3) 63%);background-size:400% 100%;animation:skShift 1.4s ease infinite;border-radius:var(--r-1)}@keyframes skShift{0%{background-position:100% 50%}to{background-position:0 50%}}@keyframes breathe{0%,to{opacity:1}50%{opacity:.3}}@keyframes settle{0%{box-shadow:0 0 0 0 var(--glow)}to{box-shadow:0 0 0 14px transparent}}.score-num{font-family:var(--font-mono);font-weight:700;letter-spacing:-.03em;line-height:1;font-variant-numeric:tabular-nums;color:var(--rice)}.score-num .unit{font-size:.34em;font-weight:400;color:var(--fog);margin-left:6px;letter-spacing:.06em}.tbl{width:100%;font-size:.875rem}.tbl th{text-align:left;font-family:var(--font-mono);font-size:.6875rem;letter-spacing:.12em;text-transform:uppercase;color:var(--fog);font-weight:500;padding:10px 14px;border-bottom:1px solid var(--mist);white-space:nowrap}.tbl td{padding:13px 14px;border-bottom:1px solid var(--mist);color:var(--rice-2);vertical-align:middle}.tbl tbody tr{transition:background var(--dur-1) var(--ease)}.tbl tbody tr:last-child td{border-bottom:none}.empty{padding:var(--sp-8) var(--sp-5);text-align:center;color:var(--fog)}.empty .glyph{font-family:var(--font-mono);font-size:1.75rem;color:var(--fog-3);margin-bottom:14px;letter-spacing:.2em}.note{display:flex;gap:11px;align-items:flex-start;padding:11px 15px;border-left:2px solid var(--amber);background:#d977060d;border-radius:0 var(--r-2) var(--r-2) 0;font-size:.8125rem;line-height:1.7;color:#b45309}.note-cyan{border-left-color:var(--cyan);background:#2563eb0d;color:#1d4ed8}.note-ver{border-left-color:var(--vermilion);background:#e11d480d;color:#be123c}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-baseline{align-items:baseline}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.flex-wrap{flex-wrap:wrap}.flex-1{flex:1;min-width:0}.flex-none{flex:none}.gap-1{gap:var(--sp-1)}.gap-2{gap:var(--sp-2)}.gap-3{gap:var(--sp-3)}.gap-4{gap:var(--sp-4)}.gap-5{gap:var(--sp-5)}.gap-6{gap:var(--sp-6)}.mt-1{margin-top:var(--sp-1)}.mt-2{margin-top:var(--sp-2)}.mt-3{margin-top:var(--sp-3)}.mt-4{margin-top:var(--sp-4)}.mt-5{margin-top:var(--sp-5)}.mt-6{margin-top:var(--sp-6)}.mt-7{margin-top:var(--sp-7)}.mb-2{margin-bottom:var(--sp-2)}.mb-3{margin-bottom:var(--sp-3)}.mb-4{margin-bottom:var(--sp-4)}.mb-5{margin-bottom:var(--sp-5)}.mb-6{margin-bottom:var(--sp-6)}.text-center{text-align:center}.text-right{text-align:right}.w-full{width:100%}.nowrap{white-space:nowrap}.muted{color:var(--fog)}.dim{color:var(--fog-2)}.cyan{color:var(--cyan)}.moss{color:var(--moss-ink)}.ver{color:var(--vermilion)}.amber{color:var(--amber-ink)}.relative{position:relative}.hidden{display:none}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scroll-y{overflow-y:auto}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--sp-5)}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-5)}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--sp-4)}.grid-auto{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:var(--sp-4)}.grid-seam{display:grid;gap:1px;background:var(--mist);border:1px solid var(--mist);border-radius:var(--r-3);overflow:hidden}.grid-seam>*{background:var(--slate);padding:20px}.grid-seam-2{grid-template-columns:repeat(2,1fr)}.grid-seam-3{grid-template-columns:repeat(3,1fr)}.grid-seam-4{grid-template-columns:repeat(4,1fr)}.metric-val{font-family:var(--font-mono);font-size:1.875rem;font-weight:700;line-height:1.1;color:var(--rice);letter-spacing:-.02em;font-variant-numeric:tabular-nums}.metric-lbl{font-family:var(--font-mono);font-size:.6875rem;letter-spacing:.14em;text-transform:uppercase;color:var(--fog);margin-top:8px}@keyframes fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes lightWipe{0%{clip-path:inset(0 100% 0 0);opacity:.4}to{clip-path:inset(0 0 0 0);opacity:1}}@keyframes popIn{0%{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:none}}@keyframes dashFlow{to{stroke-dashoffset:-40}}@keyframes riseBar{0%{transform:scaleY(0)}to{transform:scaleY(1)}}.anim-up{animation:fadeUp var(--dur-3) var(--ease) both}.anim-in{animation:fadeIn var(--dur-2) var(--ease) both}.anim-pop{animation:popIn var(--dur-2) var(--ease) both}.anim-wipe{animation:lightWipe .42s var(--ease) both}.d1{animation-delay:50ms}.d2{animation-delay:.1s}.d3{animation-delay:.15s}.d4{animation-delay:.2s}.d5{animation-delay:.25s}.d6{animation-delay:.3s}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--mist);border:3px solid var(--ink);border-radius:6px}::-webkit-scrollbar-thumb:hover{background:var(--mist-2)}@media (max-width: 1180px){.ide-shell{grid-template-columns:220px minmax(0,1fr)}.ide-shell .ide-right{display:none}}@media (max-width: 1080px){.workbench{grid-template-columns:1fr}.workbench-main{padding-left:0;margin-top:var(--sp-6)}.grid-4,.grid-seam-4,.grid-3,.grid-seam-3{grid-template-columns:repeat(2,1fr)}}@media (max-width: 760px){:root{--fs-display: 2.25rem;--fs-h1: 1.625rem;--fs-h2: 1.25rem}.grid-2,.grid-3,.grid-4,.grid-seam-2,.grid-seam-3,.grid-seam-4,.ide-shell{grid-template-columns:1fr}.ide-shell .ide-left{display:none}.tabs{gap:16px;overflow-x:auto}}@media (max-width: 640px){input,textarea,select{font-size:16px}}.navbar{position:sticky;top:0;z-index:60;background:var(--glass-bg-strong);-webkit-backdrop-filter:saturate(150%) blur(14px);backdrop-filter:saturate(150%) blur(14px);border-bottom:1px solid var(--mist)}.navbar-inner{height:var(--nav-h);display:flex;align-items:center;gap:var(--sp-5)}.brand{display:flex;align-items:center;gap:11px;flex:none}.brand-mark{color:var(--cyan);display:flex;align-items:center;filter:drop-shadow(0 0 8px var(--glow-soft))}.brand-text{display:flex;flex-direction:column;line-height:1.1}.brand-name{font-size:.9375rem;font-weight:600;letter-spacing:.02em;color:var(--rice)}.brand-sub{font-size:.5625rem;letter-spacing:.22em;color:var(--fog-2)}.nav-links{display:flex;gap:26px;margin-left:var(--sp-4);flex:1}.nav-link{position:relative;font-size:.875rem;color:var(--fog);padding:6px 0;transition:color var(--dur-1) var(--ease);white-space:nowrap}.nav-link:hover{color:var(--rice-2)}.nav-link.active{color:var(--cyan)}.nav-link.active:after{content:"";position:absolute;left:0;right:0;bottom:-19px;height:1px;background:var(--cyan);box-shadow:0 0 8px var(--glow)}.nav-actions{display:flex;align-items:center;gap:var(--sp-3);flex:none}.user-chip{display:inline-flex;align-items:center;gap:8px;padding:5px 12px 5px 8px;border:1px solid var(--mist);border-radius:var(--r-2);font-size:.8125rem;color:var(--rice-2);transition:border-color var(--dur-1) var(--ease)}.user-chip:hover{border-color:var(--mist-2)}.user-dot{width:7px;height:7px;border-radius:var(--r-1);flex:none}.user-dot.teacher{background:var(--cyan);box-shadow:0 0 8px var(--glow)}.user-dot.student{background:var(--amber);box-shadow:0 0 8px #d9770680}.user-meta{font-family:var(--font-mono);font-size:.625rem;color:var(--fog-2);letter-spacing:.04em}.nav-toggle{display:none;padding:7px;border:1px solid var(--mist);border-radius:var(--r-2);color:var(--fog)}.footer{border-top:1px solid var(--mist);background:var(--slate);margin-top:auto}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-5);padding:22px 0;flex-wrap:wrap}.footer-sep{width:1px;height:12px;background:var(--mist-2)}.page-head{padding:var(--sp-7) 0 var(--sp-5);border-bottom:1px solid var(--mist);margin-bottom:var(--sp-6)}.page-head-row{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--sp-5);flex-wrap:wrap}.crumb{display:flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:.6875rem;letter-spacing:.12em;text-transform:uppercase;color:var(--fog-2);margin-bottom:var(--sp-4)}.crumb a:hover{color:var(--cyan)}.crumb i{color:var(--mist-2);font-style:normal}.toolbar{display:flex;align-items:center;gap:var(--sp-3);flex-wrap:wrap}.rail{position:sticky;top:calc(var(--nav-h) + 24px);display:flex;flex-direction:column;gap:3px}.rail-title{font-family:var(--font-mono);font-size:.625rem;letter-spacing:.18em;text-transform:uppercase;color:var(--fog-2);padding:0 12px 10px}.rail-item{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:var(--r-2);font-size:.875rem;color:var(--fog);transition:all var(--dur-1) var(--ease);border-left:2px solid transparent}.rail-item:hover{background:var(--slate-2);color:var(--rice-2)}.rail-item.active{color:var(--cyan);background:#2563eb12;border-left-color:var(--cyan)}.rail-item .cnt{margin-left:auto;font-family:var(--font-mono);font-size:.6875rem;color:var(--fog-2)}.rail-hr{height:1px;background:var(--mist);margin:14px 12px}.entry-nav{position:fixed;top:40px;left:5vw;z-index:100;display:flex;align-items:center}.entry-nav .brand{gap:12px;color:var(--rice);text-shadow:0 4px 12px rgba(255,255,255,.8)}.entry-nav .brand-mark{color:var(--rice);filter:none}.entry-nav .brand-name{font-family:var(--font-serif);font-size:1.35rem;font-weight:900;letter-spacing:.05em}.entry-nav .brand-sub{font-family:var(--font-mono);font-size:.75rem;font-weight:700;letter-spacing:.12em;color:var(--cyan)}.entry-hero{position:relative;z-index:10;min-height:100vh;padding:160px 5vw 80px;display:flex;align-items:center;gap:40px}.entry-hero-text{flex:1 1 640px;min-width:0}.entry-title{margin-bottom:30px;font-family:var(--font-serif);font-size:clamp(2.8rem,4.7vw,5rem);font-weight:900;line-height:1.15;letter-spacing:-.03em;color:var(--rice)}.entry-title span{display:block}.entry-title-hl{font-style:italic;padding-right:.08em;margin-right:-.08em;background:linear-gradient(120deg,#2563eb,#9d174d);-webkit-background-clip:text;background-clip:text;color:transparent}.entry-desc{max-width:34em;font-size:1.15rem;font-weight:400;line-height:1.8;color:var(--fog)}.entry-actions{margin-top:40px;display:flex;align-items:center;gap:var(--sp-4);flex-wrap:wrap}.entry-btn{display:inline-flex;align-items:center;gap:10px;padding:16px 36px;border-radius:40px;background:var(--cyan);color:#fff;font-size:1.1rem;font-weight:600;text-decoration:none;box-shadow:0 15px 30px #2563eb4d;transition:transform var(--dur-2) var(--ease),box-shadow var(--dur-2) var(--ease),background var(--dur-1) var(--ease)}.entry-btn:hover{background:var(--cyan-2);transform:translateY(-3px);box-shadow:0 20px 40px #2563eb66}.entry-btn svg{transition:transform var(--dur-2) var(--ease)}.entry-btn:hover svg{transform:translate(3px)}.entry-visual{position:relative;flex:0 0 560px;min-width:0;height:650px;perspective:1200px;display:flex;justify-content:center;align-items:center}.entry-paper-scene{position:relative;width:500px;max-width:100%;height:100%;transform-style:preserve-3d}.entry-paper{position:absolute;top:5%;right:0;z-index:2;width:90%;height:auto;min-height:85%;display:flex;flex-direction:column;padding:40px 30px 40px 50px;background:#fff;border-radius:var(--r-1);box-shadow:0 25px 50px -12px #11182726,0 0 0 1px #1118270d;transform:rotateY(-8deg) rotateX(4deg);overflow:hidden;font-family:var(--font-serif)}.entry-paper:before{content:"";position:absolute;top:0;bottom:0;left:35px;width:1px;background:#e11d484d;border-right:1px solid rgba(225,29,72,.1)}.pp-secret{margin-bottom:12px;font-size:.6875rem;letter-spacing:.2em;color:var(--fog-3)}.pp-title{margin-bottom:18px;font-size:1.3rem;font-weight:900;letter-spacing:.05em;text-align:center;color:var(--rice)}.pp-meta{display:flex;justify-content:center;gap:18px;margin-bottom:20px;padding-bottom:12px;border-bottom:1px solid rgba(17,24,39,.1);font-size:.8125rem;color:var(--fog)}.pp-meta i{margin-left:4px;padding:0 9px 1px;border-bottom:1px solid var(--mist-2);font-style:normal;color:var(--rice)}.pp-qno{margin-bottom:8px;font-size:.875rem;font-weight:700;color:var(--rice)}.pp-question{margin-bottom:16px;font-size:.875rem;line-height:1.7;color:var(--rice)}.pp-answer{display:flex;flex-direction:column;gap:10px}.pp-line{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.pp-hand{font-family:var(--font-sans);font-style:italic;font-weight:500;font-size:.9375rem;line-height:1.7;color:#1e3a8a}.pp-red{margin-left:auto;font-family:var(--font-sans);font-size:.75rem;font-weight:700;white-space:nowrap;color:var(--vermilion)}.pp-red.is-ok{color:var(--moss-ink)}.pp-stamp{position:absolute;top:45px;right:20px;width:70px;height:70px;display:grid;place-items:center;border:3px solid var(--vermilion);border-radius:50%;color:var(--vermilion);font-family:var(--font-sans);font-size:2.5rem;font-weight:900;line-height:1;transform:rotate(-15deg);opacity:.85}.entry-glass{position:absolute;border:1px solid var(--glass-border);border-radius:16px;padding:20px 24px;background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);box-shadow:0 30px 60px #11182714,0 0 0 1px #ffffff80 inset}.entry-glass-a{top:15%;left:-10%;z-index:4;width:260px;transform:rotate(-4deg) translateZ(30px)}.entry-glass-b{bottom:6%;left:-5%;z-index:5;width:280px;transform:rotate(6deg) translateZ(60px)}.pg-head{display:flex;align-items:center;gap:8px;margin-bottom:10px;font-size:.85rem;font-weight:700}.pg-blue{color:var(--cyan)}.pg-red{color:var(--vermilion)}.pg-body{font-family:var(--font-serif);font-size:.95rem;font-weight:600;line-height:1.6;color:var(--rice)}.pg-body-sm{font-family:var(--font-sans);font-size:.875rem;font-weight:400;line-height:1.7;color:var(--fog)}.cyber-line{position:absolute;top:50%;right:-80px;width:100px;height:2px;background:linear-gradient(90deg,transparent,var(--cyan));opacity:.5}.entry-section{position:relative;z-index:10;padding:80px 5vw 120px}.entry-section-head{margin-bottom:60px;text-align:center}.entry-section-head h2{font-family:var(--font-serif);font-size:3rem;font-weight:900;letter-spacing:-.01em;color:var(--rice)}.entry-bento{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,minmax(300px,auto));gap:30px;max-width:1400px;margin-inline:auto}.entry-bento-item{position:relative;overflow:hidden;display:flex;flex-direction:column;padding:40px;border:1px solid var(--glass-border);border-radius:var(--r-xl);background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);box-shadow:0 18px 44px -26px #11182747,0 0 0 1px #11182708;transition:transform .4s var(--ease)}.entry-bento-item:hover{transform:translateY(-5px)}.entry-bento-item:after{content:"";position:absolute;right:-20px;bottom:-20px;width:150px;height:150px;border-radius:50%;pointer-events:none;background:radial-gradient(circle,rgba(37,99,235,.08) 0%,transparent 70%)}.bento-1{grid-column:span 2}.bento-2{grid-column:span 1;grid-row:span 2}.bento-3,.bento-4{grid-column:span 1}.bento-icon{margin-bottom:20px;font-family:var(--font-serif);font-size:2.5rem;font-weight:900;line-height:1;letter-spacing:-.02em;color:var(--cyan)}.bento-name{margin-bottom:15px;font-size:1.75rem;font-weight:700;letter-spacing:-.01em;color:var(--rice)}.bento-desc{font-size:1.05rem;line-height:1.6;color:var(--fog)}.bento-mono{margin-top:auto;padding:15px;border-radius:12px;background:#fff9;font-family:var(--font-mono);font-size:.9rem;line-height:1.9;color:var(--cyan)}.ring-wrap{position:relative;display:inline-grid;place-items:center}.ring-wrap canvas{position:absolute;top:0;right:0;bottom:0;left:0}.ring-breathe:before{content:"";position:absolute;top:12%;right:12%;bottom:12%;left:12%;border-radius:50%;background:radial-gradient(circle,rgba(37,99,235,.14),transparent 68%);animation:haloPulse 6s ease-in-out infinite}.ring-center{position:relative;z-index:2;text-align:center;padding:0 8%}.ring-num{font-size:clamp(1.4rem,2.8vw,2.25rem);white-space:nowrap;color:var(--rice)}.ring-label{font-family:var(--font-mono);font-size:.625rem;letter-spacing:.16em;text-transform:uppercase;color:var(--fog-2);margin-top:8px}.qcard{border:1px solid var(--mist);border-radius:var(--r-3);background:var(--slate);transition:border-color var(--dur-2) var(--ease)}.qcard:hover{border-color:var(--mist-2)}.qcard.locked{border-left:2px solid var(--amber)}.qcard.v-ok{border-left:2px solid var(--moss)}.qcard.v-bad{border-left:2px solid var(--vermilion)}.qcard-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4);padding:14px 18px;border-bottom:1px solid var(--mist);background:var(--slate-2);border-radius:var(--r-3) var(--r-3) 0 0;flex-wrap:wrap}.qcard-no{font-size:.9375rem;font-weight:700;color:var(--cyan);letter-spacing:.02em}.qcard-diff{display:inline-flex;gap:3px;align-items:center}.qcard-diff i{width:12px;height:3px;border-radius:1px;background:var(--mist-2);display:block}.qcard-diff i.on{background:var(--amber)}.qcard-body{padding:18px}.qcard-stem{font-size:1rem;line-height:1.85;color:var(--rice);white-space:pre-wrap;word-break:break-word}.qcard-options{margin-top:16px;display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.qcard-options.judge{grid-template-columns:repeat(2,minmax(0,200px))}.qopt{display:flex;align-items:center;gap:11px;padding:11px 14px;border:1px solid var(--mist);border-radius:var(--r-2);background:var(--slate-3);text-align:left;font-size:.875rem;color:var(--rice-2);transition:all var(--dur-1) var(--ease);line-height:1.6}.qopt.clickable{cursor:pointer}.qopt.clickable:hover{border-color:var(--mist-2);color:var(--rice)}.qopt-mark{width:22px;height:22px;flex:none;display:grid;place-items:center;border:1px solid var(--mist-2);border-radius:var(--r-1);font-size:.75rem;color:var(--fog)}.qopt-text{flex:1;min-width:0}.qopt-flag{flex:none}.qopt.picked{border-color:var(--cyan);background:#2563eb17;color:var(--rice)}.qopt.picked .qopt-mark{background:var(--cyan);border-color:var(--cyan);color:#fff;font-weight:700}.qopt.right{border-color:#0596698c}.qopt.right .qopt-mark{color:var(--moss);border-color:#05966980}.qopt.picked.right{background:#0596691c;border-color:var(--moss)}.qopt.picked.right .qopt-mark{background:var(--moss);border-color:var(--moss);color:#fff}.qcard-blank{margin-top:16px}.qcard-answer-line{display:flex;align-items:baseline;gap:12px;padding:12px 14px;border:1px dashed var(--mist-2);border-radius:var(--r-2);background:var(--slate-3)}.qcard-ansl{font-family:var(--font-mono);color:var(--rice)}.qcard-solution{margin-top:16px}.qcard-solution-foot{margin-top:10px;display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4);flex-wrap:wrap}.qcard-solution-read{border:1px solid var(--mist);border-radius:var(--r-2);background:var(--slate-3);padding:4px}.qcard-pre{font-family:var(--font-sans);font-size:.875rem;line-height:1.85;color:var(--rice-2);white-space:pre-wrap;word-break:break-word;padding:12px}.qcard-photo-inline img{width:100%;max-height:340px;object-fit:contain;border-radius:var(--r-1);background:#f6f7f9}.qcard-photo-edit{margin-bottom:12px}.qcard-photo-edit img{max-height:220px;border:1px solid var(--mist)}.qcard-ans{margin-top:16px;padding-top:14px;border-top:1px solid var(--mist);display:flex;flex-direction:column;gap:9px}.qcard-ans-row{display:grid;grid-template-columns:66px minmax(0,1fr);gap:12px;align-items:baseline}.qcard-ansv{color:var(--moss);font-size:.875rem}.qcard-analysis{font-size:.875rem;line-height:1.85;color:var(--fog)}.qcard-rubric{margin-top:16px;padding:13px 14px;border:1px dashed rgba(37,99,235,.28);border-radius:var(--r-2);background:#2563eb09}.qcard-rubric-head{display:flex;align-items:center;gap:10px;margin-bottom:10px}.qcard-rubric-items{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px}.qcard-rubric-chip{display:inline-flex;align-items:baseline;gap:6px;font-size:.8125rem;color:var(--rice-2)}.qcard-rubric-chip b{color:var(--cyan);font-size:.8125rem}.qcard-rubric-sep{display:none}.qcard-rubric-sum{margin-left:auto;font-size:.6875rem;color:var(--fog-2)}.mnote{display:flex;gap:0;align-items:stretch}.mnote-body{flex:1;min-width:0;padding:14px 16px;border:1px solid var(--mist);border-radius:var(--r-2) 0 0 var(--r-2);background:var(--slate);font-size:.875rem;line-height:1.85;color:var(--rice-2);white-space:pre-wrap;word-break:break-word}.mnote-gutter{width:194px;flex:none;border-left:1px solid var(--mist);border-top:1px solid var(--mist);border-right:1px solid var(--mist);border-bottom:1px solid var(--mist);border-radius:0 var(--r-2) var(--r-2) 0;background:var(--slate-3);padding:12px 13px;display:flex;flex-direction:column;gap:7px}.mnote-mark{display:flex;align-items:center;gap:7px;font-size:.6875rem;transform:rotate(-2deg);transform-origin:left center}.mnote-ref{letter-spacing:.06em;opacity:.8}.mnote-delta{margin-left:auto;font-weight:700}.mnote-text{position:relative;font-size:.75rem;line-height:1.75;transform:rotate(-2deg);transform-origin:left top;transition:transform var(--dur-2) var(--ease)}.mnote-text .mnote-underline{position:absolute;left:0;bottom:-3px;height:1px;width:0;transition:width var(--dur-3) var(--ease)}.mnote:hover .mnote-text .mnote-underline{width:100%}.mnote:hover .mnote-text{transform:rotate(0)}.gdiff{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.92fr);gap:88px;align-items:start}.gdiff-links{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;overflow:visible;z-index:1}.gdiff-link-path{transition:stroke-width var(--dur-1) var(--ease),opacity var(--dur-1) var(--ease)}.gdiff-links g.active .gdiff-link-path{animation:dashFlow 1.2s linear infinite}.gdiff-col{position:relative;z-index:2;min-width:0}.gdiff-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:12px;margin-bottom:4px;border-bottom:1px solid var(--mist);flex-wrap:wrap}.gdiff-steps{display:flex;flex-direction:column}.gdiff-step{display:grid;grid-template-columns:34px minmax(0,1fr) 44px;gap:12px;padding:14px 12px 14px 0;border-bottom:1px solid var(--mist);transition:background var(--dur-1) var(--ease);border-radius:var(--r-2)}.gdiff-step:last-child{border-bottom:none}.gdiff-step.active{background:#2563eb0d}.gdiff-step-no{display:flex;flex-direction:column;align-items:center;gap:7px;padding-top:2px}.gdiff-step-no .mono{font-size:.6875rem;color:var(--fog-2);letter-spacing:.06em}.gdiff-dot{width:9px;height:9px;border-radius:var(--r-1);flex:none}.gdiff-dot.ok{background:var(--moss);box-shadow:0 0 9px -1px #05966999}.gdiff-dot.bad{background:transparent;border:2px solid var(--vermilion);box-shadow:0 0 9px -1px #e11d4880}.gdiff-step-main{min-width:0}.gdiff-step-text{font-size:.875rem;line-height:1.85;color:var(--rice);white-space:pre-wrap;word-break:break-word}.gdiff-step-cmt{margin-top:6px;font-size:.75rem;line-height:1.7}.gdiff-step-cmt.moss{color:var(--moss-ink)}.gdiff-step-cmt.ver{color:var(--vermilion)}.gdiff-step-score{text-align:right;font-size:.875rem;font-weight:700;color:var(--fog);padding-top:2px}.gdiff-step.ok .gdiff-step-score{color:var(--moss)}.gdiff-step.bad .gdiff-step-score{color:var(--fog-2)}.gdiff-photo img{width:100%;border:1px solid var(--mist);border-radius:var(--r-2);background:#f6f7f9}.gdiff-rawnote{margin-top:10px;display:flex;gap:8px;font-size:.75rem;color:var(--fog-2);line-height:1.7}.gdiff-items{display:flex;flex-direction:column}.gdiff-item{padding:13px 14px;border:1px solid var(--mist);border-radius:var(--r-2);background:var(--slate);margin-bottom:9px;transition:all var(--dur-1) var(--ease)}.gdiff-item.ok{border-color:#05966952}.gdiff-item.bad{border-color:#e11d486b;background:#e11d4809}.gdiff-item.active{border-color:var(--cyan);background:#2563eb0f}.gdiff-item-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.gdiff-item-id{font-size:.625rem;letter-spacing:.1em;color:var(--fog-2)}.gdiff-item-desc{margin-top:7px;font-size:.8125rem;line-height:1.7;color:var(--rice-2)}.gdiff-item-quote{margin-top:7px;padding-left:10px;border-left:1px solid var(--mist-2);font-size:.75rem;line-height:1.65;color:var(--fog);font-style:italic}.gdiff-override{margin-top:12px;display:flex;flex-direction:column;gap:5px;padding:12px 14px;border:1px dashed rgba(217,119,6,.42);border-radius:var(--r-2);background:#d977060d;font-size:.75rem;line-height:1.7;color:var(--amber)}.heat{position:relative}.heat-scroll{overflow-x:auto;padding-bottom:4px}.heat-grid{display:grid;gap:3px;min-width:560px}.heat-corner{font-size:.625rem;color:var(--fog-2);padding:8px 4px;display:flex;align-items:flex-end;letter-spacing:.1em}.heat-corner-r{justify-content:center}.heat-qhead{display:flex;flex-direction:column;align-items:center;gap:3px;padding:6px 2px;border-radius:var(--r-1);cursor:pointer;transition:background var(--dur-1) var(--ease)}.heat-qhead:hover{background:var(--slate-2)}.heat-qno{font-size:.6875rem;color:var(--rice-2);font-weight:600}.heat-qtype{font-size:.5625rem;color:var(--fog-3)}.heat-name{display:flex;align-items:center;font-size:.8125rem;color:var(--rice-2);padding:0 10px 0 4px;min-height:34px}.heat-name.clickable{cursor:pointer}.heat-name.clickable:hover{color:var(--cyan)}.heat-cell{min-height:34px;border-radius:var(--r-1);display:grid;place-items:center;transition:outline-color var(--dur-1) var(--ease),transform var(--dur-1) var(--ease);outline:1px solid transparent;cursor:default}.heat-cell:hover{outline-color:var(--mist-2);transform:scale(1.06)}.heat-val{font-size:.6875rem;color:var(--rice);font-weight:500}.heat-total{display:grid;place-items:center;font-size:.8125rem;font-weight:700;color:var(--rice)}.heat-full{font-size:.625rem;font-weight:400;color:var(--fog-2);margin-left:1px}.heat-foot{opacity:.85}.heat-foot-lbl{font-family:var(--font-mono);font-size:.625rem;letter-spacing:.1em;color:var(--fog-2);text-transform:uppercase}.heat-tip{position:fixed;transform:translate(-50%,calc(-100% - 10px));background:#111827;border:1px solid var(--mist-2);border-radius:var(--r-2);box-shadow:var(--sh-3);padding:10px 12px;max-width:260px;z-index:80;pointer-events:none}.heat-tip-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;font-size:.8125rem;color:var(--rice)}.heat-tip-head .mono{font-size:.6875rem;color:var(--fog)}.heat-tip-mis{margin-top:5px;font-size:.6875rem;font-family:var(--font-mono);letter-spacing:.06em}.heat-tip-cmt{margin-top:6px;font-size:.75rem;line-height:1.65;color:var(--fog)}.rubric{border:1px solid var(--mist);border-radius:var(--r-3);background:var(--slate);overflow:hidden}.rubric-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;border-bottom:1px solid var(--mist);background:var(--slate-2)}.rubric-balance{display:flex;align-items:center;gap:8px;padding:10px 18px;font-size:.8125rem;border-bottom:1px solid var(--mist)}.rubric-balance.ok{color:var(--moss);background:#0596690d}.rubric-balance.bad{color:var(--amber);background:#d977060d;flex-wrap:wrap}.rubric-list{padding:10px 14px;display:flex;flex-direction:column;gap:8px}.rubric-row{display:grid;grid-template-columns:26px 52px minmax(0,1fr) 68px 34px;gap:10px;align-items:center}.rubric-idx{font-size:.6875rem;color:var(--fog-3)}.rubric-kind{font-family:var(--font-mono);font-size:.625rem;padding:5px 0;border-radius:var(--r-1);border:1px solid var(--mist-2);color:var(--fog);transition:all var(--dur-1) var(--ease)}.rubric-kind.gain{border-color:#2563eb66;color:var(--cyan);background:var(--cyan-dim)}.rubric-kind.deduct{border-color:#e11d4866;color:var(--vermilion);background:var(--vermilion-dim)}.rubric-desc,.rubric-pts{background:var(--slate-3);border:1px solid var(--mist);border-radius:var(--r-1);padding:8px 10px;outline:none;transition:border-color var(--dur-1) var(--ease);min-width:0}.rubric-desc{font-size:.8125rem}.rubric-desc:focus,.rubric-pts:focus{border-color:var(--cyan)}.rubric-pts{text-align:center;font-size:.8125rem;color:var(--cyan)}.rubric-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;border-top:1px solid var(--mist);background:var(--slate-2);flex-wrap:wrap}.sheet-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:#11182752;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:90;display:grid;place-items:center;padding:var(--sp-5);overflow-y:auto}.sheet{width:min(820px,100%);max-height:88vh;overflow-y:auto;background:var(--slate);border:1px solid var(--mist-2);border-radius:var(--r-4);box-shadow:var(--sh-3)}.ai-progress{display:flex;align-items:center;gap:14px;padding:11px 16px;border:1px solid rgba(37,99,235,.25);border-radius:var(--r-2);background:#2563eb0a;flex-wrap:wrap}.call-list{display:flex;flex-direction:column;gap:5px;margin-bottom:7px}.call-item{display:flex;align-items:center;gap:8px;font-size:.6875rem;color:var(--cyan)}.call-item.err{color:var(--vermilion)}.call-item .t-cap{color:var(--fog-2)}.diffbar-track{display:flex;height:6px;border-radius:1px;overflow:hidden;gap:1px}.diffbar-track span{display:block;transition:width var(--dur-3) var(--ease)}.diffbar-legend{display:flex;gap:16px;margin-top:9px}.diffbar-item{display:inline-flex;align-items:center;gap:6px;font-size:.75rem;color:var(--fog)}.diffbar-item i{width:8px;height:8px;border-radius:1px}.diffbar-item b{color:var(--rice-2)}.conf-wrap{display:inline-flex;align-items:center;gap:7px}.conf-num{font-size:.6875rem}.spin{animation:spin360 .9s linear infinite}@keyframes spin360{to{transform:rotate(360deg)}}.ask-fab-wrap{position:fixed;right:28px;bottom:28px;z-index:70;display:flex;flex-direction:column;align-items:flex-end;gap:10px}.ask-fab{position:relative;width:52px;height:52px;border-radius:var(--r-4);background:var(--slate);border:1px solid var(--mist-2);color:var(--cyan);display:grid;place-items:center;cursor:grab;touch-action:none;transition:transform var(--dur-2) var(--ease),box-shadow var(--dur-2) var(--ease)}.ask-fab:hover{transform:translateY(-2px);box-shadow:var(--sh-glow)}.ask-fab.on{color:var(--rice);box-shadow:var(--sh-glow)}.ask-fab:active{cursor:grabbing}.ask-fab-ring{position:absolute;top:-6px;right:-6px;bottom:-6px;left:-6px;border-radius:var(--r-4);border:1px solid rgba(37,99,235,.35);animation:breathe 3s var(--ease) infinite;pointer-events:none}.ask-idle{max-width:240px;padding:9px 13px;background:var(--slate);border:1px solid rgba(37,99,235,.3);border-radius:var(--r-2);font-size:.75rem;line-height:1.65;color:var(--rice-2);box-shadow:var(--sh-2);position:relative}.ask-idle:after{content:"";position:absolute;right:20px;bottom:-5px;width:8px;height:8px;background:var(--slate);border-right:1px solid rgba(37,99,235,.3);border-bottom:1px solid rgba(37,99,235,.3);transform:rotate(45deg)}.ask-panel{position:fixed;right:28px;bottom:92px;width:352px;max-height:min(600px,76vh);background:var(--slate);border:1px solid var(--mist-2);border-radius:var(--r-4);box-shadow:var(--sh-3);z-index:71;display:flex;flex-direction:column;overflow:hidden}.ask-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-bottom:1px solid var(--mist);background:var(--slate-2)}.ask-lamp{width:30px;height:30px;border-radius:var(--r-2);display:grid;place-items:center;background:#2563eb1f;color:var(--cyan);flex:none}.ask-name{font-size:.875rem;font-weight:600;color:var(--rice);line-height:1.2}.ask-sub{font-size:.5625rem;letter-spacing:.14em}.ask-body{flex:1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:12px;min-height:180px}.ask-turn{display:flex;flex-direction:column;gap:6px}.ask-turn.user{align-items:flex-end}.ask-bubble{max-width:92%;padding:10px 13px;border-radius:var(--r-2);font-size:.8125rem;line-height:1.75;color:var(--rice-2);background:var(--slate-3);border:1px solid var(--mist);white-space:pre-wrap;word-break:break-word}.ask-turn.assistant .ask-bubble{border-left:2px solid var(--cyan)}.ask-turn.user .ask-bubble{background:#2563eb1a;border-color:#2563eb47;color:var(--rice)}.ask-bubble.err{border-color:#e11d4866;background:var(--vermilion-dim);color:#be123c}.ask-bubble.thinking{display:inline-flex}.ask-calls{display:flex;flex-wrap:wrap;gap:6px}.ask-call{display:inline-flex;align-items:center;gap:4px;font-size:.625rem;color:var(--cyan);opacity:.8}.ask-quick{display:flex;gap:6px;padding:0 14px 10px;flex-wrap:wrap}.ask-chip{font-size:.6875rem;padding:5px 10px;border:1px solid var(--mist);border-radius:var(--r-1);color:var(--fog);transition:all var(--dur-1) var(--ease)}.ask-chip:hover:not(:disabled){border-color:var(--cyan);color:var(--cyan)}.ask-foot{display:flex;gap:8px;padding:12px 14px;border-top:1px solid var(--mist);background:var(--slate-2)}.ask-foot input{flex:1;min-width:0;background:var(--slate-3);border:1px solid var(--mist);border-radius:var(--r-2);padding:9px 12px;outline:none;font-size:.8125rem;transition:border-color var(--dur-1) var(--ease)}.ask-foot input:focus{border-color:var(--cyan)}.wizard{display:grid;grid-template-columns:322px minmax(0,1fr);gap:var(--sp-6);align-items:start}.wizard-side{position:sticky;top:calc(var(--nav-h) + 24px)}.wizard-steps{display:flex;gap:0;margin-bottom:var(--sp-5)}.wizard-step{flex:1;display:flex;flex-direction:column;gap:7px;position:relative}.wizard-step-bar{height:2px;background:var(--mist);transition:background var(--dur-2) var(--ease)}.wizard-step.done .wizard-step-bar{background:var(--cyan)}.wizard-step.now .wizard-step-bar{background:var(--amber)}.wizard-step-lbl{font-family:var(--font-mono);font-size:.625rem;letter-spacing:.1em;color:var(--fog-3)}.wizard-step.now .wizard-step-lbl{color:var(--amber-ink)}.wizard-step.done .wizard-step-lbl{color:var(--cyan)}.kp-picker{display:flex;flex-wrap:wrap;gap:7px;margin-top:9px}.kp-chip{font-size:.75rem;padding:5px 10px;border:1px solid var(--mist);border-radius:var(--r-1);color:var(--fog);transition:all var(--dur-1) var(--ease)}.kp-chip:hover{border-color:var(--mist-2);color:var(--rice-2)}.kp-chip.on{border-color:var(--cyan);color:var(--cyan);background:var(--cyan-dim)}.slider-row{display:grid;grid-template-columns:62px minmax(0,1fr) 34px;gap:10px;align-items:center;font-size:.8125rem;color:var(--fog);margin-bottom:9px}.slider-row b{font-family:var(--font-mono);color:var(--rice-2);text-align:right;font-size:.8125rem}.sub-row{display:grid;grid-template-columns:34px 116px minmax(0,1fr) 92px 116px 96px;gap:14px;align-items:center;padding:13px 16px;border-bottom:1px solid var(--mist);transition:background var(--dur-1) var(--ease);cursor:pointer}.sub-row:hover{background:var(--slate-2)}.sub-row:last-child{border-bottom:none}.sub-row-review{grid-template-columns:34px 116px minmax(0,1fr) 150px 120px}.sub-idx{font-family:var(--font-mono);font-size:.6875rem;color:var(--fog-3)}.sub-name{font-size:.875rem;color:var(--rice);display:flex;align-items:center;gap:8px}.sub-bar{display:flex;align-items:center;gap:10px}.sub-mis{font-family:var(--font-mono);font-size:.6875rem;color:var(--fog)}.asg-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--sp-5);padding:20px 22px;border:1px solid var(--mist);border-radius:var(--r-3);background:var(--slate);transition:all var(--dur-2) var(--ease);align-items:center}.asg-card:hover{border-color:var(--mist-2);background:var(--slate-2);transform:translateY(-2px)}.asg-meta{display:flex;gap:20px;flex-wrap:wrap;margin-top:10px}.asg-meta span{font-family:var(--font-mono);font-size:.6875rem;color:var(--fog)}.asg-meta b{color:var(--rice-2);font-weight:600}.take-shell{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:var(--sp-6);align-items:start}.take-nav{position:sticky;top:calc(var(--nav-h) + 24px)}.card-nav{display:grid;grid-template-columns:repeat(6,1fr);gap:6px}.card-nav button{aspect-ratio:1;display:grid;place-items:center;border:1px solid var(--mist);border-radius:var(--r-1);font-family:var(--font-mono);font-size:.75rem;color:var(--fog);transition:all var(--dur-1) var(--ease)}.card-nav button.done{border-color:#2563eb73;color:var(--cyan);background:var(--cyan-dim)}.card-nav button.miss{border-color:#d9770673;color:var(--amber)}.card-nav button:hover{border-color:var(--cyan)}.result-hero{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--sp-7);align-items:center;padding:var(--sp-7) 0;border-bottom:1px solid var(--mist)}.result-feedback{padding:20px 22px;border:1px solid rgba(37,99,235,.24);border-radius:var(--r-3);background:#2563eb0a}.result-feedback-title{display:flex;align-items:center;gap:9px;font-size:.875rem;font-weight:600;color:var(--cyan);margin-bottom:10px}.ide-left,.ide-right{border-right:1px solid var(--mist);background:var(--slate);overflow-y:auto}.ide-right{border-right:none;border-left:1px solid var(--mist)}.ide-panel{padding:16px}.ide-panel+.ide-panel{border-top:1px solid var(--mist)}.ide-mid{display:flex;flex-direction:column;min-width:0;background:var(--ink)}.ide-stream{flex:1;overflow-y:auto;padding:var(--sp-5) var(--sp-6);display:flex;flex-direction:column;gap:var(--sp-5)}.ide-input{border-top:1px solid var(--mist);padding:14px var(--sp-6) 18px;background:var(--slate)}.msg{display:flex;gap:12px;max-width:860px}.msg-avatar{width:28px;height:28px;border-radius:var(--r-2);display:grid;place-items:center;flex:none;font-family:var(--font-mono);font-size:.625rem}.msg.user .msg-avatar{background:#d9770624;color:var(--amber);border:1px solid rgba(217,119,6,.3)}.msg.assistant .msg-avatar{background:#2563eb1f;color:var(--cyan);border:1px solid rgba(37,99,235,.3)}.msg-body{flex:1;min-width:0}.msg-who{font-family:var(--font-mono);font-size:.625rem;letter-spacing:.1em;text-transform:uppercase;color:var(--fog-2);margin-bottom:6px}.msg-text{font-size:.9375rem;line-height:1.85;color:var(--rice-2);white-space:pre-wrap;word-break:break-word}.msg.user .msg-text{color:var(--rice)}.ctx-item{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:var(--r-2);font-size:.8125rem;color:var(--fog);cursor:pointer;transition:all var(--dur-1) var(--ease);border-left:2px solid transparent}.ctx-item:hover{background:var(--slate-2);color:var(--rice-2)}.ctx-item.on{color:var(--cyan);background:#2563eb12;border-left-color:var(--cyan)}.drill-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-5);padding:22px 24px;border:1px solid rgba(217,119,6,.28);border-radius:var(--r-3);background:#d977060a;flex-wrap:wrap}.drill-result{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:var(--r-2);margin-top:10px;font-size:.8125rem}.drill-result.ok{border:1px solid rgba(5,150,105,.34);background:#0596690f;color:var(--moss)}.drill-result.bad{border:1px solid rgba(225,29,72,.34);background:#e11d480d;color:var(--vermilion)}.tier-card{border:1px solid var(--mist);border-radius:var(--r-3);background:var(--slate);overflow:hidden}.tier-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 16px;border-bottom:1px solid var(--mist);background:var(--slate-2)}.tier-name{display:flex;align-items:center;gap:9px;font-size:.875rem;font-weight:600}.tier-list{padding:8px 10px;display:flex;flex-direction:column;gap:2px;max-height:340px;overflow-y:auto}.tier-row{display:grid;grid-template-columns:24px minmax(0,1fr) 52px;gap:10px;align-items:center;padding:9px 8px;border-radius:var(--r-2);transition:background var(--dur-1) var(--ease);cursor:pointer}.tier-row:hover{background:var(--slate-2)}.tier-idx{font-family:var(--font-mono);font-size:.625rem;color:var(--fog-3)}.tier-stu{min-width:0}.tier-stu-name{font-size:.8125rem;color:var(--rice)}.tier-stu-note{font-size:.6875rem;color:var(--fog);margin-top:2px}.tier-score{font-family:var(--font-mono);font-size:.875rem;font-weight:700;text-align:right}.stat-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--mist);border:1px solid var(--mist);border-radius:var(--r-3);overflow:hidden}.stat-cell{background:var(--slate);padding:18px 20px}.dist{display:flex;align-items:flex-end;gap:4px;height:88px}.dist-col{flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:6px;height:100%}.dist-bar{width:100%;background:linear-gradient(180deg,var(--cyan),rgba(37,99,235,.25));border-radius:1px 1px 0 0;min-height:2px;transform-origin:bottom;animation:riseBar var(--dur-3) var(--ease) both}.dist-lbl{font-family:var(--font-mono);font-size:.5625rem;color:var(--fog-3)}.mis-bars{display:flex;flex-direction:column;gap:14px}.mis-bar-row{display:grid;grid-template-columns:74px minmax(0,1fr) 42px;gap:12px;align-items:center}.mis-bar-name{font-size:.8125rem;color:var(--rice-2)}.mis-bar-track{height:6px;background:var(--slate-3);border-radius:1px;overflow:hidden}.mis-bar-fill{height:100%;border-radius:1px;transform-origin:left;animation:barGrow var(--dur-3) var(--ease) both}.mis-bar-cnt{font-family:var(--font-mono);font-size:.8125rem;color:var(--rice-2);text-align:right}.mis-bar-qs{grid-column:2 / -1;font-family:var(--font-mono);font-size:.625rem;color:var(--fog-2);margin-top:-6px}.parent-report{padding:26px 30px;border:1px solid var(--mist);border-radius:var(--r-3);background:var(--slate);font-size:.9375rem;line-height:2;color:var(--rice-2);white-space:pre-wrap;position:relative}.parent-report:before{content:"家长版 · 白话报告";position:absolute;top:-9px;left:22px;padding:0 8px;background:var(--ink);font-family:var(--font-mono);font-size:.625rem;letter-spacing:.14em;color:var(--amber)}#knowledge-universe{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;overflow:hidden;pointer-events:none;background:linear-gradient(135deg,#fdfbfb,#eaeff5 52%,#e4ebf3)}.ku{position:absolute;white-space:nowrap;font-weight:700;-webkit-user-select:none;user-select:none;opacity:.18;will-change:transform;animation:kuFloat linear infinite}.ku-math{color:#b45309;font-family:var(--font-mono)}.ku-poem{color:#4338ca;font-family:var(--font-serif)}.ku-chem{color:#047857;font-family:var(--font-sans)}.ku-phys{color:#2563eb;font-family:var(--font-mono)}.ku-hist{color:#9d174d;font-family:var(--font-serif)}.ku-geo{color:#0e7490;font-family:var(--font-sans)}.ku-titan{color:#111827;font-family:var(--font-serif);opacity:.05}@keyframes kuFloat{0%{transform:rotate(var(--rot, 0deg)) translateZ(0)}to{transform:rotate(var(--rot, 0deg)) translate3d(26px,-150px,0)}}.auth{position:relative;min-height:100vh;display:flex;flex-direction:column;overflow:hidden;background:var(--ink);padding:88px 0 clamp(20px,5vh,64px);margin-bottom:calc(var(--sp-8) * -1)}.auth-bg{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none}.auth-grid{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(to right,rgba(16,42,67,.055) 1px,transparent 1px),linear-gradient(to bottom,rgba(16,42,67,.055) 1px,transparent 1px);background-size:56px 56px;-webkit-mask-image:radial-gradient(124% 96% at 82% 4%,#000 0%,transparent 62%);mask-image:radial-gradient(124% 96% at 82% 4%,#000 0%,transparent 62%)}.auth-halo{position:absolute;left:24%;top:42%;width:640px;height:640px;border-radius:50%;background:radial-gradient(circle,#2563eb26,#2563eb00 68%);filter:blur(12px);opacity:.9}.auth-split{position:relative;z-index:4;width:min(1240px,92vw);margin:auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,452px);gap:clamp(28px,6vw,92px);align-items:center}.auth-visual{min-width:0}.auth-points{margin-top:clamp(14px,2.4vh,24px);border-top:1px solid var(--mist)}.auth-points li{display:grid;grid-template-columns:30px 64px minmax(0,1fr);align-items:baseline;gap:12px;padding:16px 0;border-bottom:1px solid var(--mist)}.auth-point-no{font-size:.6875rem;color:var(--fog-3)}.auth-point-role{display:inline-flex;align-items:center;gap:5px;font-size:.8125rem;color:var(--fog);white-space:nowrap}.auth-point-text{font-size:.9375rem;line-height:1.75;color:var(--rice-2)}.auth-note{margin-top:20px;display:inline-flex;align-items:center;gap:7px;font-size:.75rem;color:var(--fog-2)}.auth-flow{margin-top:24px;display:flex;align-items:center;flex-wrap:wrap;gap:9px;font-size:.8125rem;color:var(--rice-2)}.auth-flow-step{display:inline-flex;align-items:baseline;gap:5px}.auth-flow-no{font-size:.625rem;letter-spacing:.08em;color:var(--fog-3)}.auth-flow-arrow{color:var(--fog-3)}.auth-card{border:1px solid var(--mist);border-radius:var(--r-3);background:var(--slate);padding:clamp(20px,3vw,30px);box-shadow:var(--sh-2)}.auth-tabs{display:flex;gap:22px;border-bottom:1px solid var(--mist)}.auth-tabs button{padding:0 0 11px;margin-bottom:-1px;font-size:.9375rem;color:var(--fog);border-bottom:1px solid transparent;transition:color var(--dur-1) var(--ease),border-color var(--dur-1) var(--ease)}.auth-tabs button:hover{color:var(--rice-2)}.auth-tabs button.on{color:var(--cyan);border-bottom-color:var(--cyan);font-weight:500}.auth-rolehead{margin:20px 0 10px;font-size:.75rem;color:var(--fog-2)}.auth-role{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}.auth-role-card{display:grid;gap:3px;padding:13px 14px;text-align:left;border:1px solid var(--mist);border-radius:var(--r-2);background:var(--slate-3);transition:border-color var(--dur-1) var(--ease),background var(--dur-1) var(--ease),box-shadow var(--dur-1) var(--ease)}.auth-role-card:hover{border-color:var(--mist-2)}.auth-role-card.on{border-color:#2563eb80;background:#2563eb0f;box-shadow:0 0 0 3px #2563eb0f}.auth-role-icon{display:flex;color:var(--fog)}.auth-role-card.on .auth-role-icon{color:var(--cyan)}.auth-role-name{font-size:.875rem;font-weight:500;color:var(--rice)}.auth-role-card.on .auth-role-name{color:var(--cyan)}.auth-role-hint{font-size:.6875rem;color:var(--fog-2)}.auth-form{margin-top:18px;display:grid;grid-template-columns:minmax(0,1fr);gap:13px}.auth-row{display:grid;grid-template-columns:minmax(0,1fr);gap:6px;min-width:0}.auth-label{font-size:.75rem;color:var(--fog)}.auth-grid-2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:13px}.auth-err{display:flex;align-items:center;gap:7px;padding:9px 12px;border:1px solid rgba(225,29,72,.42);border-radius:var(--r-2);background:var(--vermilion-dim);color:var(--vermilion);font-size:.8125rem}.auth-form .btn-block{margin-top:4px}.auth-or{display:flex;align-items:center;gap:12px;margin:18px 0 12px;font-size:.75rem;color:var(--fog-3)}.auth-or:before,.auth-or:after{content:"";flex:1;height:1px;background:var(--mist)}.auth-tip{margin-top:12px;font-size:.6875rem;letter-spacing:.02em;color:var(--fog-2);text-align:center}.report-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:var(--sp-7);align-items:center;padding:26px 28px;border:1px solid var(--mist);border-radius:var(--r-3);background:var(--slate)}@media (max-width: 900px){.report-hero{grid-template-columns:1fr}}.take-root{min-height:100vh}.take-head{position:sticky;top:0;z-index:40;background:var(--glass-bg-strong);-webkit-backdrop-filter:saturate(150%) blur(14px);backdrop-filter:saturate(150%) blur(14px);border-bottom:1px solid var(--mist)}.take-head-inner{height:64px;display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4)}.take-body{padding:var(--sp-6) 0 var(--sp-8)}.take-wait{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--sp-7) var(--sp-5);position:relative}.take-wait:before{content:"";position:absolute;left:50%;top:40%;width:720px;height:720px;transform:translate(-50%,-50%);background:radial-gradient(circle,rgba(37,99,235,.1) 0%,transparent 62%);animation:haloPulse 6s ease-in-out infinite;pointer-events:none}.take-wait>*{position:relative}.drill-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4);margin-top:-1px;padding:10px 16px;border:1px solid var(--mist);border-top:none;border-radius:0 0 var(--r-3) var(--r-3);background:var(--slate-2);flex-wrap:wrap}.rq-card{border:1px solid var(--mist);border-radius:var(--r-3);background:var(--slate);overflow:hidden;transition:border-color var(--dur-2) var(--ease)}.rq-card.ok{border-left:2px solid var(--moss)}.rq-card.bad{border-left:2px solid var(--vermilion)}.rq-card.open{border-color:var(--mist-2)}.rq-head{width:100%;display:flex;align-items:center;gap:12px;padding:14px 18px;background:var(--slate-2);text-align:left;transition:background var(--dur-1) var(--ease)}.rq-head:hover{background:var(--slate-3)}.rq-stem{font-size:.875rem;color:var(--rice-2)}.rq-body{padding:18px;border-top:1px solid var(--mist)}.rq-feedback{padding:15px 17px;border:1px solid rgba(37,99,235,.22);border-radius:var(--r-2);background:#2563eb0a;margin-bottom:14px}.rq-rubric,.rq-answer{margin-top:12px;border:1px solid var(--mist);border-radius:var(--r-2);background:var(--slate-2);overflow:hidden}.rq-rubric summary,.rq-answer summary{display:flex;align-items:center;gap:8px;padding:11px 14px;font-size:.8125rem;color:var(--fog);cursor:pointer;list-style:none;transition:color var(--dur-1) var(--ease)}.rq-rubric summary::-webkit-details-marker,.rq-answer summary::-webkit-details-marker{display:none}.rq-rubric summary:hover,.rq-answer summary:hover{color:var(--cyan)}.rq-rubric[open] summary,.rq-answer[open] summary{border-bottom:1px solid var(--mist);color:var(--rice-2)}.rq-rubric-list{padding:10px 14px;display:flex;flex-direction:column;gap:6px}.rq-rubric-row{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--r-1);font-size:.8125rem;color:var(--fog);background:var(--slate-3)}.rq-rubric-row.ok{color:var(--moss)}.rq-rubric-row.bad{color:var(--vermilion);background:#e11d480f}.rq-answer .qcard-ans{padding:0 14px 14px}.mnote-step-label{display:flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:.625rem;letter-spacing:.1em;text-transform:uppercase;color:var(--fog-3);margin-bottom:6px}.mnote-step-text{font-size:.875rem;line-height:1.85;color:var(--rice);white-space:pre-wrap;word-break:break-word}@media (max-width: 1180px){.gdiff{grid-template-columns:1fr;gap:24px}.gdiff-links{display:none}.wizard{grid-template-columns:1fr}.wizard-side{position:static}.take-shell{grid-template-columns:1fr}.take-nav{position:static}}@media (max-width: 1080px){.stat-strip{grid-template-columns:repeat(2,1fr)}.sub-row{grid-template-columns:30px 100px minmax(0,1fr) 80px}.sub-row:not(.sub-row-review)>*:nth-child(5),.sub-row:not(.sub-row-review)>*:nth-child(6){display:none}.sub-row-review{grid-template-columns:28px 96px minmax(0,1fr) auto}.mnote{flex-direction:column}.mnote-gutter{width:100%;border-radius:0 0 var(--r-2) var(--r-2);border-left:1px solid var(--mist);border-top:none}.mnote-body{border-radius:var(--r-2) var(--r-2) 0 0}}@media (max-width: 860px){.nav-links{display:none}.nav-toggle{display:inline-flex}.qcard-options{grid-template-columns:1fr}.rubric-row{grid-template-columns:24px 46px minmax(0,1fr) 60px}.rubric-row>*:last-child{display:none}.ide-left{display:none}.ask-panel{right:12px;left:12px;width:auto;bottom:84px}.ask-fab-wrap{right:16px;bottom:16px}.result-hero{grid-template-columns:1fr;justify-items:center;text-align:center}.dist{height:64px}}@media (max-width: 640px){.user-meta{display:none}.navbar-inner{gap:var(--sp-3)}.stat-strip{grid-template-columns:1fr}.asg-card{grid-template-columns:minmax(0,1fr);gap:var(--sp-4)}.footer-inner{flex-direction:column;align-items:flex-start}}@media (max-width: 980px){.auth{padding-bottom:40px}.auth-split{grid-template-columns:minmax(0,1fr);gap:28px}.auth-visual{padding-top:0}.auth-card{max-width:520px}}@media (max-width: 640px){.auth-tip{text-align:left}.auth-grid-2,.auth-role{grid-template-columns:minmax(0,1fr)}.auth-points li{grid-template-columns:26px 58px minmax(0,1fr);gap:9px}}.take-head-bleed{width:100vw;margin-inline:calc(50% - 50vw)}.page{overflow-x:clip}@media (max-width: 1279px){.entry-hero{flex-direction:column;padding-top:140px;gap:var(--sp-6)}.entry-hero-text{flex:0 0 auto;width:100%;display:flex;flex-direction:column;align-items:center;text-align:center}.entry-visual{flex:none;width:100%;margin-top:40px}.entry-section-head{margin-bottom:40px}.entry-section-head h2{font-size:2.5rem}.entry-bento{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none;grid-auto-rows:auto;gap:24px}.bento-1{grid-column:span 2}.bento-2,.bento-3,.bento-4{grid-column:span 1;grid-row:auto}.bento-mono{margin-top:20px}}@media (max-width: 1024px){.entry-bento{grid-template-columns:1fr;gap:20px}.bento-1,.bento-2,.bento-3,.bento-4{grid-column:span 1;grid-row:auto;min-height:250px}}@media (max-width: 640px){.entry-nav{top:24px}.entry-hero{padding:118px 6vw 64px}.entry-title{font-size:clamp(2rem,8.4vw,2.5rem)}.entry-desc{font-size:1rem}.entry-btn{padding:14px 28px;font-size:1rem}.entry-visual{height:auto}.entry-paper-scene{width:100%;height:auto}.entry-paper{position:static;width:100%;min-height:0;height:auto;padding:26px 18px 26px 42px;transform:none}.entry-paper:before{left:28px}.pp-title{font-size:1.0625rem}.pp-meta{gap:10px;font-size:.6875rem}.pp-stamp{top:34px;right:12px;width:54px;height:54px;font-size:1.75rem}.entry-glass{position:static;width:100%;padding:16px 18px;transform:none;margin-top:12px}.cyber-line{display:none}.entry-section{padding:56px 6vw 80px}.entry-section-head h2{font-size:2rem}.entry-bento{gap:16px}.entry-bento-item{padding:28px 24px;min-height:0}.bento-icon{margin-bottom:14px;font-size:2rem}.bento-name{font-size:1.375rem}.bento-desc{font-size:.9375rem}.ku{opacity:.1}}.entry2{--e2-paper: #f4f1ea;--e2-ink: #1a1a17;--e2-grey: #8a877e;--e2-line: #e3dfd5;--e2-red: #d9432f;--e2-serif: "Noto Serif SC", "Songti SC", SimSun, serif;background:var(--e2-paper);color:var(--e2-ink);min-height:100vh}body:has(.entry2),body:has(.entry3){background:#f6fbff}body:has(.entry3) main.page{height:100vh;min-height:0;overflow:hidden}.e2-nav{display:flex;align-items:center;gap:40px;height:72px;padding:0 48px;border-bottom:1px solid var(--e2-line)}.e2-brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--e2-ink)}.e2-brand-mark{width:30px;height:30px;display:flex;align-items:center;justify-content:center;background:var(--e2-ink);color:var(--e2-paper);border-radius:2px}.e2-brand-name{font-family:var(--e2-serif);font-size:20px;font-weight:600;letter-spacing:.08em}.e2-nav-stages{display:flex;gap:32px;margin-left:auto}.e2-nav-stage{font-size:13px;color:var(--e2-ink);letter-spacing:.06em}.e2-nav-stage i{font-style:normal;font-size:11px;color:var(--e2-grey);margin-right:6px}.e2-login{font-size:13px;color:var(--e2-ink);text-decoration:none;border:1px solid var(--e2-ink);padding:7px 20px;border-radius:2px;transition:background .2s,color .2s}.e2-login:hover{background:var(--e2-ink);color:var(--e2-paper)}.e2-hero{display:grid;grid-template-columns:30% 44% 26%;min-height:660px;border-bottom:1px solid var(--e2-line)}.e2-col-text{padding:96px 48px 64px;border-right:1px solid var(--e2-line);display:flex;flex-direction:column;justify-content:center}.e2-caption{font-size:11px;letter-spacing:.22em;color:var(--e2-grey);margin:0 0 32px}.e2-title{font-family:var(--e2-serif);font-size:clamp(36px,3.4vw,54px);font-weight:600;line-height:1.55;letter-spacing:.02em;margin:0}.e2-title span{display:block}.e2-title em{font-style:normal;color:var(--e2-red)}.e2-sub{font-size:15px;color:var(--e2-grey);margin:28px 0 0;letter-spacing:.06em}.e2-actions{display:flex;align-items:center;gap:28px;margin-top:56px}.e2-btn{display:inline-flex;align-items:center;gap:10px;background:var(--e2-ink);color:var(--e2-paper);font-size:14px;letter-spacing:.08em;text-decoration:none;padding:15px 30px;border-radius:2px;transition:background .2s}.e2-btn:hover{background:#000}.e2-link{font-size:14px;color:var(--e2-ink);text-decoration:underline;text-underline-offset:5px;text-decoration-color:var(--e2-grey)}.e2-link:hover{text-decoration-color:var(--e2-ink)}.e2-col-photo{margin:0;padding:56px 44px;border-right:1px solid var(--e2-line);display:flex;align-items:center}.e2-photo-frame{position:relative;width:100%}.e2-photo-frame img{display:block;width:100%;border:1px solid var(--e2-line);box-shadow:0 24px 64px #1e190f24}.e2-tag{position:absolute;display:inline-flex;align-items:center;gap:7px;background:#fffefa;border:1px solid var(--e2-line);box-shadow:0 4px 16px #1e190f14;padding:7px 13px;font-size:12px;letter-spacing:.05em;color:var(--e2-ink);white-space:nowrap}.e2-tag i{width:6px;height:6px;border-radius:50%;background:var(--e2-red)}.e2-tag:after{content:"";position:absolute;left:100%;top:50%;width:30px;height:1px;background:var(--e2-red);opacity:.45}.e2-tag.is-right:after{left:auto;right:100%}.e2-col-list{padding:72px 40px;display:flex;flex-direction:column;justify-content:center}.e2-point{padding:30px 0;border-bottom:1px solid var(--e2-line)}.e2-point:last-child{border-bottom:none}.e2-point-head{display:flex;align-items:baseline;gap:14px}.e2-point-head i{font-style:normal;font-size:12px;color:var(--e2-red);letter-spacing:.1em}.e2-point-head h3{font-family:var(--e2-serif);font-size:24px;font-weight:600;margin:0;letter-spacing:.04em}.e2-point p{font-size:13px;color:var(--e2-grey);margin:10px 0 0 30px;letter-spacing:.04em}.e2-flow{display:flex;align-items:center;gap:22px;padding:22px 48px;border-bottom:1px solid var(--e2-line)}.e2-flow-item{font-size:14px;letter-spacing:.12em}.e2-flow-item.is-hot{color:var(--e2-red)}.e2-flow-arrow{color:var(--e2-grey);font-size:13px}.e2-flow-note{margin-left:auto;font-size:12px;color:var(--e2-grey);letter-spacing:.06em}.e2-section{padding:24px 48px 96px}.e2-row{display:grid;grid-template-columns:160px 300px 1fr;gap:40px;align-items:baseline;padding:44px 0;border-bottom:1px solid var(--e2-line)}.e2-row-no{font-size:14px;color:var(--e2-ink);letter-spacing:.08em}.e2-row-no i{font-style:normal;color:var(--e2-grey);font-size:12px}.e2-row-name{font-family:var(--e2-serif);font-size:28px;font-weight:600;margin:0;letter-spacing:.03em}.e2-row-desc{font-size:14px;line-height:2;color:#6b6860;margin:0;max-width:640px}@media (max-width: 1100px){.e2-nav-stages{display:none}.e2-login{margin-left:auto}.e2-hero{grid-template-columns:1fr;min-height:0}.e2-col-text,.e2-col-photo{border-right:none;border-bottom:1px solid var(--e2-line);padding:56px 32px}.e2-col-list{padding:32px}.e2-row{grid-template-columns:1fr;gap:12px}.e2-flow{flex-wrap:wrap;gap:14px}.e2-flow-note{margin-left:0;width:100%}}.entry3{--e3-blue: #2563eb;--e3-blue-2: #1d4ed8;--e3-ink: #0f172a;--e3-body: #475467;--e3-mute: #667085;position:relative;display:flex;flex-direction:column;min-height:100vh;overflow:hidden;background:radial-gradient(900px 460px at 74% -6%,#e4f0ff,#e4f0ff00 62%),radial-gradient(620px 420px at 8% 24%,#eef6ff,#eef6ff00 60%),linear-gradient(180deg,#f5faff,#fff 52%,#f6fbff)}.entry3:after{content:"";position:absolute;left:-10%;right:-10%;bottom:-40px;height:220px;background:radial-gradient(closest-side,rgba(37,99,235,.1),transparent 72%);pointer-events:none}.e3-nav{position:relative;z-index:3;display:flex;align-items:center;gap:32px;height:78px;padding:0 56px}.e3-brand{display:inline-flex;align-items:center;gap:9px;font-size:19px;font-weight:800;letter-spacing:-.01em;color:var(--e3-ink);text-decoration:none}.e3-logo{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border-radius:9px;color:#fff;background:linear-gradient(135deg,#3b82f6,#2563eb);box-shadow:0 6px 14px -6px #2563ebb3}.e3-nav-links{display:flex;align-items:center;gap:34px;margin:0 auto}.e3-nav-link{display:inline-flex;align-items:center;gap:4px;font-size:14px;color:var(--e3-body);cursor:default;transition:color .18s}.e3-nav-link:hover{color:var(--e3-ink)}.e3-nav-link i{font-style:normal;font-size:9px;color:#98a2b3}.e3-nav-actions{display:flex;align-items:center;gap:18px}.e3-login{font-size:14px;color:var(--e3-body);text-decoration:none}.e3-login:hover{color:var(--e3-ink)}.e3-signup{font-size:14px;font-weight:600;color:#fff;text-decoration:none;padding:9px 20px;border-radius:10px;background:linear-gradient(135deg,#3b82f6,#2563eb);box-shadow:0 8px 18px -10px #2563ebe6;transition:transform .18s,box-shadow .18s}.e3-signup:hover{transform:translateY(-1px);box-shadow:0 12px 22px -10px #2563ebf2}.e3-hero{position:relative;z-index:2;display:grid;grid-template-columns:minmax(400px,43%) 1fr;gap:20px;align-items:end;padding:4px 56px 36px;flex:1 1 auto;min-height:0}.e3-copy{align-self:center;padding-bottom:8px}.e3-title{position:relative;display:inline-block;margin:0;font-family:KaiTi,STKaiti,"Kaiti SC",var(--font-serif);font-size:clamp(64px,7vw,106px);font-weight:700;line-height:1.05;letter-spacing:-.005em;background:linear-gradient(118deg,#1e3a8a,#2563eb 56%,#3b82f6);-webkit-background-clip:text;background-clip:text;color:transparent}.e3-title-stroke{position:absolute;left:1%;bottom:-6px;width:98%;height:18px;fill:none;stroke:#2563eb;stroke-width:3.5;stroke-linecap:round;opacity:.42}.e3-slogan{margin:40px 0 0;font-size:clamp(22px,2.2vw,31px);font-weight:700;letter-spacing:.01em;color:var(--e3-ink)}.e3-slogan b{color:var(--e3-blue)}.e3-cta{display:inline-flex;align-items:center;gap:12px;margin-top:34px;padding:15px 30px;border-radius:12px;font-size:17px;font-weight:600;color:#fff;text-decoration:none;background:linear-gradient(120deg,#3b82f6,#2563eb 62%,#1d4ed8);box-shadow:0 16px 32px -14px #2563ebe6,inset 0 1px #ffffff4d;transition:transform .18s,box-shadow .18s}.e3-cta:hover{transform:translateY(-2px);box-shadow:0 22px 40px -16px #2563ebf2,inset 0 1px #ffffff52}.e3-cta-arrow{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:#ffffff38}.e3-features{display:flex;flex-wrap:wrap;gap:30px;margin:54px 0 0;padding:0;list-style:none}.e3-feature{display:flex;align-items:flex-start;gap:11px}.e3-feature-icon{width:34px;height:34px;flex:none;display:inline-flex;align-items:center;justify-content:center;border-radius:10px}.e3-feature-icon svg{width:19px;height:19px}.e3-feature.is-blue .e3-feature-icon{color:#2563eb;background:#e8f1ff}.e3-feature.is-green .e3-feature-icon{color:#059669;background:#e6f8f1}.e3-feature.is-violet .e3-feature-icon{color:#7c3aed;background:#f1eaff}.e3-feature-text{display:flex;flex-direction:column;gap:3px}.e3-feature-text b{font-size:14px;font-weight:700;color:var(--e3-ink)}.e3-feature-text i{font-style:normal;font-size:12px;color:var(--e3-mute)}.e3-scene{position:relative;width:100%;max-width:720px;margin:0 auto;min-height:690px;display:flex;align-items:flex-end;justify-content:center}.e3-robot{width:66%;max-width:548px;margin-bottom:2px;filter:drop-shadow(0 26px 40px rgba(37,99,235,.18));animation:e3-float 7s ease-in-out infinite}.e3-scene:after{content:"";position:absolute;bottom:6px;left:50%;transform:translate(-50%);width:46%;height:26px;border-radius:50%;background:radial-gradient(closest-side,rgba(30,64,175,.16),transparent 78%);pointer-events:none}@keyframes e3-float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.e3-card{position:absolute;padding:13px 15px;border-radius:16px;background:#ffffffed;border:1px solid rgba(255,255,255,.95);box-shadow:0 20px 44px -22px #10182852,0 0 0 1px #10182808;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-size:12px;color:var(--e3-ink)}.e3-card-head{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:600;color:#344054;margin-bottom:9px}.e3-card-ico{width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px}.e3-card-ico.is-blue{color:#2563eb;background:#e8f1ff}.e3-card-ico.is-violet{color:#7c3aed;background:#f1eaff}.e3-card-a{left:-14px;top:12%;width:178px}.e3-sub{display:flex;align-items:center;gap:7px;padding:3px 0}.e3-dot{width:7px;height:7px;border-radius:2px;flex:none}.e3-dot.is-blue{background:#3b82f6}.e3-dot.is-green{background:#10b981}.e3-dot.is-amber{background:#f59e0b}.e3-dot.is-violet{background:#8b5cf6}.e3-sub-name{width:26px;color:#475467}.e3-sub-bar{flex:1;height:4px;border-radius:2px;background:#edf1f7;overflow:hidden}.e3-sub-bar b{display:block;height:100%;border-radius:2px;background:linear-gradient(90deg,#60a5fa,#2563eb)}.e3-sub-num{font-variant-numeric:tabular-nums;color:#98a2b3;font-size:11px}.e3-card-b{left:-26px;bottom:13%;width:190px}.e3-spark{display:block;width:100%;height:54px;overflow:visible}.e3-spark-line{fill:none;stroke:#2563eb;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.e3-spark-fill{fill:url(#none);fill:#2563eb17}.e3-spark-axis{display:flex;justify-content:space-between;margin-top:6px;font-size:9px;color:#98a2b3}.e3-card-c{right:0;top:5%;width:296px}.e3-work{display:flex;gap:12px;align-items:stretch}.e3-work-lines{flex:1;font-size:11px;line-height:2;color:#344054;letter-spacing:.01em}.e3-work-lines em{font-style:normal;color:#e11d48;margin-left:4px}.e3-work-score{width:92px;flex:none;padding:8px 10px;border-radius:10px;background:#f4f8ff;text-align:center}.e3-work-score span{display:block;font-size:10px;color:#667085}.e3-work-score b{display:block;font-size:26px;line-height:1.2;color:#2563eb;font-variant-numeric:tabular-nums}.e3-work-score i{font-style:normal;font-size:10px;color:#059669}.e3-work-foot{margin-top:9px;padding-top:8px;border-top:1px solid #eef2f7;font-size:10px;color:#667085}.e3-card-d{right:0;bottom:24%;width:152px}.e3-ring{position:relative;width:72px;height:72px;margin:2px auto 6px}.e3-ring svg{width:100%;height:100%;transform:rotate(-90deg)}.e3-ring-track{fill:none;stroke:#eef2f7;stroke-width:7}.e3-ring-val{fill:none;stroke:#2563eb;stroke-width:7;stroke-linecap:round}.e3-ring-num{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;gap:1px}.e3-ring-num b{font-size:19px;color:var(--e3-ink);font-variant-numeric:tabular-nums}.e3-ring-num i{font-style:normal;font-size:9px;color:#667085;align-self:flex-end;margin-bottom:20px}.e3-perf{display:flex;flex-direction:column;gap:4px;margin:0;padding-top:6px;border-top:1px solid #eef2f7}.e3-perf>div{display:flex;justify-content:space-between;font-size:10px;color:#667085}.e3-perf dd{margin:0;color:#344054;font-weight:600}@media (max-width: 1180px){.e3-nav{padding:0 24px}.e3-nav-links{display:none}.e3-nav-actions{margin-left:auto}.e3-hero{grid-template-columns:1fr;min-height:0;padding:16px 24px 48px;gap:24px}.e3-features{gap:20px;margin-top:38px}.e3-scene{min-height:400px}.e3-robot{width:56%}.e3-card-a{left:0;width:158px}.e3-card-b{left:0;width:168px}.e3-card-c{right:0;width:250px}.e3-card-d{width:138px}}:root{--ink: #f2f6fc;--slate: #ffffff;--slate-2: #f7f9fd;--slate-3: #eff4fb;--mist: #e7edf6;--mist-2: #d5dfee;--cyan: #2f6bff;--cyan-2: #1d4fd8;--cyan-dim: rgba(47, 107, 255, .09);--rice: #101828;--rice-2: #1d2939;--fog: #4a5568;--fog-2: #5b6779;--fog-3: #8492a6;--r-1: 6px;--r-2: 8px;--r-3: 14px;--r-4: 18px;--sh-1: 0 1px 2px rgba(16, 24, 40, .04), 0 0 0 1px rgba(16, 24, 40, .02);--sh-2: 0 2px 4px -2px rgba(16, 24, 40, .06), 0 10px 24px -14px rgba(16, 24, 40, .14);--sh-3: 0 4px 8px -4px rgba(16, 24, 40, .06), 0 28px 56px -28px rgba(16, 24, 40, .2);--sh-glow: 0 0 0 1px rgba(47, 107, 255, .18), 0 10px 28px -14px rgba(47, 107, 255, .42);--nav-h: 64px;--rail-w: 236px}body{background:radial-gradient(1100px 520px at 82% -8%,#e8f1ff,#e8f1ff00 62%),radial-gradient(900px 480px at 4% 4%,#f3f7ff,#f3f7ff00 58%),#f4f7fc;background-attachment:fixed}.navbar{background:#ffffffd1;-webkit-backdrop-filter:saturate(180%) blur(18px);backdrop-filter:saturate(180%) blur(18px);border-bottom:1px solid rgba(16,24,40,.06)}.navbar-inner{height:64px}.brand{gap:10px}.brand-mark{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;color:#fff;background:linear-gradient(140deg,#4f8bff,#2f6bff 46%,#1d4fd8);box-shadow:0 6px 16px -8px #2f6bffe6;filter:none}.brand-name{font-size:.9375rem;font-weight:600;letter-spacing:.04em}.brand-sub{font-size:.5rem;letter-spacing:.2em;color:var(--fog-3)}.nav-links{gap:4px;margin-left:var(--sp-5)}.nav-link{padding:7px 13px;border-radius:8px;font-size:.875rem;color:var(--fog-2)}.nav-link:hover{color:var(--rice-2);background:var(--slate-3)}.nav-link.active{color:var(--cyan);background:var(--cyan-dim);font-weight:500}.nav-link.active:after{display:none}.user-chip{padding:5px 12px 5px 10px;border-radius:10px;border-color:var(--mist);background:#fff;box-shadow:var(--sh-1)}.user-chip:hover{border-color:var(--mist-2);box-shadow:var(--sh-2)}.user-dot{width:8px;height:8px;border-radius:3px}.card{border-radius:var(--r-3);border:1px solid rgba(16,24,40,.055);box-shadow:var(--sh-2)}.card-hover:hover{border-color:#2f6bff38;background:#fff;box-shadow:0 4px 8px -4px #10182812,0 18px 40px -22px #10182838;transform:translateY(-3px)}.card-flat{background:var(--slate-2);border-radius:var(--r-2);border-color:var(--mist);box-shadow:none}.panel{border-radius:var(--r-3);border:1px solid rgba(16,24,40,.055);box-shadow:var(--sh-2)}.panel-head{background:#fff;border-bottom:1px solid var(--mist);padding:15px 22px}.panel-body{padding:22px}.btn{border-radius:10px;padding:10px 18px;font-weight:500}.btn-primary{background:linear-gradient(140deg,#3f7dff,#2f6bff,#1d4fd8);box-shadow:0 8px 20px -10px #2f6bffcc}.btn-primary:hover:not(:disabled){background:linear-gradient(140deg,#4f8bff,#2f6bff,#1d4fd8);box-shadow:0 12px 26px -10px #2f6bffd9;transform:translateY(-1px)}.btn-secondary{background:#fff;border-color:var(--mist);box-shadow:var(--sh-1)}.btn-secondary:hover:not(:disabled){border-color:#2f6bff66;color:var(--cyan);background:#fff}.btn-outline{background:#fff;border-color:var(--mist)}.btn-outline:hover:not(:disabled){background:#fff;border-color:#2f6bff66;color:var(--cyan)}.btn-ghost:hover:not(:disabled){background:var(--slate-3)}.btn-sm{border-radius:9px}.tag{border-radius:6px;font-size:.6875rem;padding:3px 8px;border-color:var(--mist-2)}.tag-cyan{border-color:#2f6bff38;background:var(--cyan-dim);color:var(--cyan-2)}.tag-moss{border-color:#05966933}.tag-amber{border-color:#d9770638}.workbench{padding-top:26px;padding-bottom:56px;gap:26px;grid-template-columns:var(--rail-w) minmax(0,1fr);align-items:start}.rail{top:calc(var(--nav-h) + 22px);padding:16px 12px 12px;gap:2px;background:#fff;border:1px solid rgba(16,24,40,.055);border-radius:var(--r-3);box-shadow:var(--sh-2)}.rail-title{font-family:var(--font-sans);font-size:.6875rem;letter-spacing:.1em;font-weight:600;color:var(--fog-3);text-transform:none;padding:0 10px 8px}.rail-item{gap:9px;padding:9px 10px;border-radius:9px;border-left:0;font-size:.8438rem;color:var(--fog-2);font-weight:450}.rail-item:hover{background:var(--slate-3);color:var(--rice-2)}.rail-item.active{color:var(--cyan-2);background:var(--cyan-dim);border-left-color:transparent;font-weight:550}.rail-item .cnt{font-family:var(--font-mono);font-size:.6875rem;padding:1px 6px;border-radius:5px;background:var(--slate-3);color:var(--fog-2)}.rail-item.active .cnt{background:#2f6bff24;color:var(--cyan-2)}.rail-hr{background:var(--mist);margin:12px 6px}.rail-bot{position:relative;margin-top:14px;padding:12px 12px 12px 62px;border-radius:11px;background:linear-gradient(150deg,#f2f7ff,#e8f1ff);border:1px solid rgba(47,107,255,.12);min-height:62px;display:flex;flex-direction:column;justify-content:center}.rail-bot img{position:absolute;left:4px;bottom:0;width:56px;height:auto;filter:drop-shadow(0 6px 10px rgba(47,107,255,.18))}.rail-bot-t{font-size:.75rem;line-height:1.55;color:#1d3f7a}.rail-bot-t b{color:var(--cyan-2)}.page-head{padding:4px 0 20px;border-bottom:1px solid var(--mist);margin-bottom:22px}.page-head .sec-label{margin-bottom:8px}.sec-label{font-family:var(--font-sans);font-size:.6875rem;letter-spacing:.1em;font-weight:600;color:var(--fog-3);text-transform:none;margin-bottom:12px}.sec-label:before{width:3px;height:11px;border-radius:2px;background:linear-gradient(180deg,#4f8bff,#1d4fd8);opacity:1}.sec-head{margin-bottom:14px;align-items:center}.t-h1{font-size:1.875rem;font-weight:650;letter-spacing:-.015em}.t-lead{font-size:.9375rem;color:var(--fog)}.stat-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:26px}.stat-strip{gap:14px;background:transparent;border:0;border-radius:0;overflow:visible;margin-bottom:24px}.stat-cell{background:#fff;padding:17px 20px;border:1px solid rgba(16,24,40,.055);border-radius:var(--r-3);box-shadow:var(--sh-2)}.stat-cell .metric-val{font-family:var(--font-mono);font-size:1.625rem;font-weight:600;letter-spacing:-.02em;line-height:1.15;color:var(--rice);font-variant-numeric:tabular-nums}.stat-cell .metric-lbl{margin-top:5px;font-size:.8125rem;color:var(--fog-2)}.stat-card{position:relative;padding:18px 20px;background:#fff;border:1px solid rgba(16,24,40,.055);border-radius:var(--r-3);box-shadow:var(--sh-2);overflow:hidden}.stat-card-ico{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;margin-bottom:12px}.stat-card-ico.blue{background:var(--cyan-dim);color:var(--cyan)}.stat-card-ico.amber{background:var(--amber-dim);color:var(--amber-ink)}.stat-card-ico.moss{background:var(--moss-dim);color:var(--moss-ink)}.stat-card-val{font-family:var(--font-mono);font-size:1.75rem;line-height:1.1;font-weight:600;letter-spacing:-.02em;color:var(--rice);font-variant-numeric:tabular-nums}.stat-card-val small{font-size:.875rem;font-weight:500;color:var(--fog-3);margin-left:3px}.stat-card-lbl{margin-top:6px;font-size:.8125rem;color:var(--fog-2)}.stat-card-hint{margin-top:10px;padding-top:10px;border-top:1px dashed var(--mist);font-size:.75rem;color:var(--fog-3)}.asg-card{background:#fff;border:1px solid rgba(16,24,40,.055);border-radius:var(--r-3);box-shadow:var(--sh-2);padding:20px 22px;transition:box-shadow var(--dur-2) var(--ease),transform var(--dur-2) var(--ease),border-color var(--dur-2) var(--ease)}.asg-card:hover{border-color:#2f6bff38;box-shadow:0 4px 8px -4px #10182812,0 20px 44px -24px #1018283d;transform:translateY(-2px)}.asg-card .t-h3{font-size:1.0625rem;font-weight:600}.asg-meta{gap:18px;margin-top:10px;font-size:.8125rem;color:var(--fog-2)}.asg-meta b{font-family:var(--font-mono);color:var(--rice-2);font-weight:600}.prog{height:5px;border-radius:3px;background:var(--slate-3);overflow:hidden;margin-top:14px}.prog>i{display:block;height:100%;border-radius:3px;background:linear-gradient(90deg,#5b9bff,#2f6bff);transition:width var(--dur-2) var(--ease)}.prog.moss>i{background:linear-gradient(90deg,#34d399,#059669)}.prog.amber>i{background:linear-gradient(90deg,#fbbf24,#d97706)}.prog-row{display:flex;align-items:center;gap:12px;margin-top:14px}.prog-row .prog{flex:1;margin-top:0}.prog-txt{font-family:var(--font-mono);font-size:.75rem;color:var(--fog-2);white-space:nowrap;font-variant-numeric:tabular-nums}.tbl th{background:var(--slate-2);font-weight:600;color:var(--fog-2);font-size:.75rem;letter-spacing:.02em}.tbl td{border-bottom:1px solid var(--mist)}.tbl td.mono,.tbl td:last-child{white-space:nowrap}.print-toolbar-hint{flex:1 1 160px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.grid-2>*,.grid-3>*,.grid-4>*{min-width:0}.drill-head{background:#fff;border:1px solid rgba(16,24,40,.055);border-left:3px solid var(--amber);box-shadow:var(--sh-2)}.wizard-step-bar{height:3px;border-radius:2px;background:var(--slate-3)}.wizard-step.done .wizard-step-bar{background:#2f6bff73}.wizard-step.now .wizard-step-bar{background:linear-gradient(90deg,#5b9bff,#1d4fd8)}.wizard-step-lbl{font-family:var(--font-sans);font-size:.75rem;letter-spacing:.02em;color:var(--fog-3)}.wizard-step.now .wizard-step-lbl{color:var(--cyan-2);font-weight:600}.wizard-step.done .wizard-step-lbl{color:var(--fog-2)}.empty{padding:44px var(--sp-5)}.empty .glyph{margin-bottom:12px}.tbl tbody tr:hover{background:var(--slate-2)}.inp,.select,.textarea{border-radius:9px;border-color:var(--mist);background:#fff;box-shadow:inset 0 1px 2px #10182808}.inp:focus,.select:focus,.textarea:focus{border-color:#2f6bff8c;box-shadow:0 0 0 3px #2f6bff1f}.workbench-main{padding-left:0}.field{border-radius:10px;border-color:var(--mist);background:#fff}.field:focus-within{border-color:#2f6bff8c;box-shadow:0 0 0 3px #2f6bff1f}textarea.area{border-radius:10px;border-color:var(--mist);background:#fff}textarea.area:focus{border-color:#2f6bff8c;box-shadow:0 0 0 3px #2f6bff1f}.footer{border-top:1px solid var(--mist);background:transparent}@media (max-width: 1080px){.stat-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.stat-card{padding:15px 16px}.stat-card-val{font-size:1.5rem}}@media (max-width: 860px){.workbench{grid-template-columns:1fr;gap:18px}.rail{display:none}.stat-cards{grid-template-columns:1fr}}.kp-scroll{max-height:232px;overflow-y:auto;padding-right:4px;margin-right:-4px;scrollbar-width:thin;scrollbar-color:var(--mist-2) transparent;-webkit-mask-image:linear-gradient(to bottom,#000 calc(100% - 22px),transparent 100%);mask-image:linear-gradient(to bottom,#000 calc(100% - 22px),transparent 100%)}.kp-scroll::-webkit-scrollbar{width:6px}.kp-scroll::-webkit-scrollbar-thumb{background:var(--mist-2);border-radius:3px}.kp-scroll::-webkit-scrollbar-track{background:transparent}.create-empty{min-height:calc(100vh - 396px);display:grid;place-items:center;padding:48px 32px}.wizard-side .panel{border-radius:var(--r-3)}.tabs{gap:22px;border-bottom:1px solid var(--mist)}.tab{padding:9px 2px 11px;color:var(--fog-2);border-bottom-color:transparent}.tab.active{color:var(--cyan-2);font-weight:600;border-bottom-color:transparent}.tab.active:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;border-radius:2px;background:linear-gradient(90deg,#5b9bff,#1d4fd8)}.tab .cnt{padding:1px 6px;border-radius:5px;background:var(--slate-3);color:var(--fog-2)}.tab.active .cnt{background:var(--cyan-dim);color:var(--cyan-2)}.qopt{background:#fff;border-radius:10px;border-color:var(--mist)}.qopt.clickable:hover{border-color:#2f6bff73;background:#fff;box-shadow:var(--sh-1)}.qopt.picked{border-color:var(--cyan);background:var(--cyan-dim);box-shadow:0 0 0 1px #2f6bff2e}.qopt-mark{border-radius:6px}.card-nav button{border-radius:8px;background:#fff;color:var(--fog-2)}.card-nav button.done{border-color:#2f6bff4d;color:var(--cyan-2);background:var(--cyan-dim)}.card-nav button.miss{border-color:var(--mist);color:var(--fog-3);background:#fff}.card-nav button.miss:hover{border-color:var(--mist-2);color:var(--rice-2)}.auth-headline{font-size:clamp(34px,3.4vw,48px);line-height:1.18;font-weight:650;letter-spacing:-.02em;color:var(--rice);margin-top:2px}.auth-headline em{font-style:normal;background:linear-gradient(120deg,#3f7dff,#1d4fd8);-webkit-background-clip:text;background-clip:text;color:transparent}.auth-sub{margin-top:16px;max-width:30em;font-size:.9375rem;line-height:1.75;color:var(--fog)}:root{--sh-w: 234px;--sh-top: 54px;--s-bg: #f5f7fb;--s-ink: #0f1b2d;--s-ink-2: #33415a;--s-mute: #66758c;--s-mute-2: #8d9aae;--s-line: #e8edf6;--s-line-2: #f1f4fa;--s-blue: #2f6bff;--s-blue-2: #1d4fd8;--s-blue-dim: #eff4ff;--s-amber: #a8691a;--s-amber-dim: #fdf5e6;--s-moss: #0d7355;--s-moss-dim: #e9f6f0;--s-red: #b4322a}body{background:var(--s-bg)}.sh{min-height:100vh;background:var(--s-bg)}.sh-side{position:fixed;inset:0 auto 0 0;width:var(--sh-w);z-index:60;display:flex;flex-direction:column;padding:14px 12px 10px;background:#fff;border-right:1px solid var(--s-line)}.sh-body{margin-left:var(--sh-w);min-height:100vh;display:flex;flex-direction:column}.sh-main{flex:1;width:100%;max-width:1240px;margin:0 auto;padding:24px 28px 64px}.sh-brand{display:flex;align-items:center;gap:9px;padding:4px 8px 16px;text-decoration:none}.sh-mark{width:30px;height:30px;flex:none;border-radius:9px;display:grid;place-items:center;color:#fff;background:linear-gradient(140deg,#4f8bff,#2f6bff 52%,#1d4fd8);box-shadow:0 6px 14px -8px #2f6bfff2}.sh-brand-t b{display:block;font-size:14px;font-weight:620;letter-spacing:.02em;color:var(--s-ink);line-height:1.2}.sh-brand-t em{display:block;font-style:normal;font-family:var(--font-mono);font-size:8px;letter-spacing:.17em;color:#a4b0c2;margin-top:2px}.sh-nav{display:flex;flex-direction:column;gap:1px}.sh-nav-grow{flex:1;min-height:0;margin-top:18px}.sh-nav-lbl{display:flex;align-items:center;justify-content:space-between;padding:0 10px;margin-bottom:6px;font-size:10.5px;font-weight:600;letter-spacing:.09em;color:#a2aec0}.sh-nav-n{font-family:var(--font-mono);font-size:10px;color:#b3bdcc;letter-spacing:0}.sh-link{position:relative;display:flex;align-items:center;gap:9px;min-height:34px;padding:0 10px;border-radius:8px;font-size:13px;color:#45546c;text-decoration:none;transition:background .12s ease,color .12s ease}.sh-link svg{flex:none;color:#8b98ac}.sh-link:hover{background:#f4f7fc;color:var(--s-ink)}.sh-link:hover svg{color:#5d6b81}.sh-link.on{background:var(--s-blue-dim);color:var(--s-blue-2);font-weight:600}.sh-link.on svg{color:var(--s-blue)}.sh-link.on:before{content:"";position:absolute;left:-12px;top:6px;bottom:6px;width:3px;border-radius:0 3px 3px 0;background:var(--s-blue)}.sh-dot{width:6px;height:6px;border-radius:50%;background:#e0a03a;margin-left:auto;flex:none}.sh-asg{overflow-y:auto;min-height:0;padding-right:2px;scrollbar-width:thin;scrollbar-color:#e2e8f2 transparent}.sh-asg::-webkit-scrollbar{width:5px}.sh-asg::-webkit-scrollbar-thumb{background:#e2e8f2;border-radius:3px}.sh-link-sm{min-height:30px;font-size:12.5px;padding-left:12px}.sh-bullet{width:3px;height:3px;border-radius:50%;background:#c3ccdb;flex:none}.sh-link-sm.on .sh-bullet{background:var(--s-blue)}.sh-none{margin:4px 10px;font-size:11.5px;color:#a4b0c2}.sh-foot{margin-top:auto;padding-top:8px;border-top:1px solid var(--s-line)}.sh-user{display:flex;align-items:center;gap:9px;margin-top:6px;padding:7px 8px;border-radius:9px;text-decoration:none;color:inherit}.sh-user:hover{background:#f4f7fc}.sh-ava{width:28px;height:28px;flex:none;border-radius:8px;display:grid;place-items:center;background:#eef2f9;color:#3a5580;font-size:12.5px;font-weight:600}.sh-user-t{min-width:0;flex:1}.sh-user-t b{display:block;font-size:12.5px;font-weight:560;color:var(--s-ink);line-height:1.35}.sh-user-t em{display:block;font-style:normal;font-size:10.5px;color:#97a3b6;line-height:1.35}.sh-user svg{color:#c2cbd9}.sh-top{position:sticky;top:0;z-index:40;height:var(--sh-top);flex:none;display:flex;align-items:center;gap:10px;padding:0 28px;background:#f5f7fbe0;-webkit-backdrop-filter:saturate(160%) blur(12px);backdrop-filter:saturate(160%) blur(12px);border-bottom:1px solid rgba(232,237,246,.9)}.sh-crumb{display:flex;align-items:center;gap:7px;font-size:12.5px;color:#8d9aae;min-width:0}.sh-crumb-sep{color:#c8d1de}.sh-crumb .now{color:var(--s-ink-2);font-weight:550}.sh-top-r{margin-left:auto;display:flex;align-items:center;gap:10px}.sh-ask{display:inline-flex;align-items:center;gap:5px;height:28px;padding:0 10px;border-radius:7px;border:1px solid #dde7fa;background:#f5f9ff;font-size:12px;color:var(--s-blue-2);text-decoration:none;white-space:nowrap}.sh-ask:hover{background:#edf4ff;border-color:#c9dbff}.sh-top-sep{width:1px;height:16px;background:var(--s-line)}.sh-role{font-size:11.5px;color:#8d9aae;white-space:nowrap}.sh-burger{display:none;width:30px;height:30px;border:1px solid var(--s-line);background:#fff;border-radius:7px;place-items:center;color:var(--s-ink-2);cursor:pointer}.sh-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:55;border:0;background:#0f1b2d57;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.ph{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding-bottom:16px;margin-bottom:20px;border-bottom:1px solid var(--s-line)}.ph-lbl{font-size:10.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#a2aec0;margin-bottom:6px}.ph h1{margin:0;font-size:23px;line-height:1.3;font-weight:650;letter-spacing:-.012em;color:var(--s-ink)}.ph p{margin:6px 0 0;max-width:660px;font-size:13px;line-height:1.65;color:var(--s-mute)}.ph-actions{display:flex;align-items:center;gap:8px;flex:none;padding-bottom:2px}.ph-back{display:inline-flex;align-items:center;gap:4px;margin-bottom:8px;font-size:12px;color:#8d9aae;text-decoration:none}.ph-back:hover{color:var(--s-blue-2)}.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:#fff;border:1px solid var(--s-line);border-radius:12px;margin-bottom:18px;overflow:hidden}.kpi{padding:15px 18px 16px;border-left:1px solid var(--s-line-2);min-width:0}.kpi:first-child{border-left:0}.kpi-lbl{display:flex;align-items:center;gap:5px;font-size:11.5px;color:var(--s-mute-2);margin-bottom:7px;white-space:nowrap}.kpi-val{font-family:var(--font-mono);font-size:25px;font-weight:600;letter-spacing:-.03em;line-height:1;color:var(--s-ink)}.kpi-val small{font-size:12px;font-weight:500;color:#a4b0c2;margin-left:3px;letter-spacing:0}.kpi-hint{margin-top:7px;font-size:11px;color:#97a3b6;line-height:1.5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kpi.amber .kpi-val{color:var(--s-amber)}.kpi.amber .kpi-lbl{color:#b0842f}.pgrid{display:grid;grid-template-columns:minmax(0,1fr) 312px;gap:18px;align-items:start}.pstack{display:flex;flex-direction:column;gap:18px;min-width:0}.panel{background:#fff;border:1px solid var(--s-line);border-radius:12px;min-width:0}.panel-h{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 16px;border-bottom:1px solid var(--s-line-2)}.panel-h b{display:flex;align-items:center;gap:7px;font-size:13.5px;font-weight:620;color:var(--s-ink)}.panel-h em{font-style:normal;font-size:11.5px;color:#97a3b6}.panel-h a{font-size:12px;color:var(--s-blue-2);text-decoration:none;white-space:nowrap}.panel-b{padding:16px}.panel-b.flush{padding:0}.panel-f{padding:11px 16px;border-top:1px solid var(--s-line-2);background:#fbfcfe;border-radius:0 0 12px 12px;font-size:11.5px;color:#97a3b6;display:flex;align-items:center;justify-content:space-between;gap:10px}.asg-list{display:flex;flex-direction:column}.asg-row{display:grid;grid-template-columns:minmax(0,1fr) 132px 62px 18px;align-items:center;gap:16px;padding:14px 16px;border-top:1px solid var(--s-line-2);text-decoration:none;color:inherit;transition:background .12s ease}.asg-row:first-child{border-top:0}.asg-row:hover{background:#fafcff}.asg-row:hover .asg-go{color:var(--s-blue);transform:translate(2px)}.asg-t{display:flex;align-items:center;gap:8px;min-width:0}.asg-t b{font-size:13.5px;font-weight:600;color:var(--s-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.asg-code{font-family:var(--font-mono);font-size:10px;letter-spacing:.05em;color:#7a879b;background:#f2f5fa;border-radius:4px;padding:1px 5px;flex:none}.asg-m{display:flex;align-items:center;gap:10px;margin-top:5px;font-size:11.5px;color:#97a3b6;min-width:0;overflow:hidden;white-space:nowrap}.asg-m i{width:1px;height:9px;background:#e4eaf3;flex:none}.asg-m b{font-weight:500;color:#5a6a82}.asg-prog{min-width:0}.asg-prog .bar{height:4px;border-radius:2px;background:#eef2f9;overflow:hidden}.asg-prog .bar i{display:block;height:100%;border-radius:2px;background:#c9d6ea}.asg-prog.done .bar i{background:#3fbf95}.asg-prog span{display:block;margin-top:5px;font-family:var(--font-mono);font-size:10px;color:#a4b0c2}.asg-score{text-align:right}.asg-score b{display:block;font-family:var(--font-mono);font-size:15px;font-weight:600;color:var(--s-ink);letter-spacing:-.02em}.asg-score span{display:block;font-size:10px;color:#a4b0c2;margin-top:1px}.asg-go{color:#c8d1de;transition:color .12s ease,transform .12s ease}.st{display:inline-flex;align-items:center;gap:4px;height:19px;padding:0 6px;border-radius:4px;font-size:10.5px;font-weight:500;white-space:nowrap;flex:none}.st-blue{background:var(--s-blue-dim);color:var(--s-blue-2)}.st-amber{background:var(--s-amber-dim);color:var(--s-amber)}.st-moss{background:var(--s-moss-dim);color:var(--s-moss)}.st-gray{background:#f2f5fa;color:#6f7e94}.todo{display:flex;flex-direction:column}.todo-row{display:flex;gap:10px;padding:12px 16px;border-top:1px solid var(--s-line-2);text-decoration:none;color:inherit}.todo-row:first-child{border-top:0}.todo-row:hover{background:#fafcff}.todo-dot{width:5px;height:5px;border-radius:50%;background:#e0a03a;margin-top:7px;flex:none}.todo-t{min-width:0;flex:1}.todo-t b{display:block;font-size:12.5px;font-weight:550;color:var(--s-ink-2);line-height:1.5;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.todo-t span{display:block;margin-top:3px;font-size:11px;color:#97a3b6;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.todo-conf{font-family:var(--font-mono);font-size:10.5px;color:var(--s-amber);flex:none}.bot{display:flex;gap:12px;align-items:center;padding:16px 16px 16px 14px;background:linear-gradient(160deg,#f6faff,#ecf3ff);border:1px solid #dee9fb;border-radius:12px}.bot img{width:56px;flex:none;filter:drop-shadow(0 6px 10px rgba(47,107,255,.16))}.bot b{display:block;font-size:12.5px;font-weight:600;color:#16386e;line-height:1.5}.bot p{margin:4px 0 0;font-size:11.5px;line-height:1.6;color:#4f6a95}.bot a{display:inline-flex;align-items:center;gap:3px;margin-top:7px;font-size:11.5px;font-weight:550;color:var(--s-blue-2);text-decoration:none}.hr{height:1px;background:var(--s-line-2);margin:14px 0}.note{font-size:11.5px;line-height:1.7;color:var(--s-mute-2)}.empty2{display:flex;flex-direction:column;align-items:center;text-align:center;padding:44px 20px}.empty2 .e-ico{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:#f2f6fd;color:#7d90ad;margin-bottom:12px}.empty2 b{font-size:13.5px;font-weight:600;color:var(--s-ink-2)}.empty2 p{margin:6px 0 0;max-width:340px;font-size:12px;line-height:1.7;color:#97a3b6}.empty2 .mt-4{margin-top:14px}.sh .btn{height:32px;padding:0 12px;border-radius:8px;font-size:12.5px;font-weight:550;gap:6px}.sh .btn-sm{height:27px;padding:0 9px;font-size:11.5px;border-radius:7px}.sh .btn-primary{background:var(--s-blue);border-color:var(--s-blue);box-shadow:0 4px 12px -6px #2f6bffb3}.sh .btn-primary:hover{background:var(--s-blue-2);border-color:var(--s-blue-2)}.sh .btn-outline,.sh .btn-ghost{background:#fff;border:1px solid #dde5f0;color:var(--s-ink-2)}.sh .btn-outline:hover,.sh .btn-ghost:hover{border-color:#c9d6e8;background:#fafcff}@media (max-width: 1180px){.pgrid{grid-template-columns:minmax(0,1fr)}.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi:nth-child(3){border-left:0;border-top:1px solid var(--s-line-2)}.kpi:nth-child(4){border-top:1px solid var(--s-line-2)}}@media (max-width: 900px){.sh-side{transform:translate(-100%);transition:transform .22s cubic-bezier(.4,0,.2,1);box-shadow:12px 0 40px -20px #0f1b2d66}.sh-drawer-open .sh-side{transform:none}.sh-body{margin-left:0}.sh-burger{display:grid}.sh-top{padding:0 16px}.sh-main{padding:18px 16px 48px}.asg-row{grid-template-columns:minmax(0,1fr) 56px 16px;gap:12px}.asg-prog{display:none}}@media (max-width: 620px){.ph{flex-direction:column;align-items:flex-start;gap:12px}.kpis{grid-template-columns:minmax(0,1fr)}.kpi{border-left:0;border-top:1px solid var(--s-line-2)}.kpi:first-child{border-top:0}.asg-row{grid-template-columns:minmax(0,1fr) 16px}.asg-score{display:none}}@media print{.sh-side,.sh-top,.sh-scrim{display:none!important}.sh-body{margin-left:0}.sh-main{padding:0;max-width:none}}.feed{display:grid;grid-auto-flow:column;grid-template-rows:repeat(6,auto);grid-template-columns:repeat(2,minmax(0,1fr));column-gap:4px;padding:2px 8px 6px}.feed-row{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.3fr) 38px 56px 68px;align-items:center;gap:6px;padding:9px 8px;border-top:1px solid var(--s-line-2);text-decoration:none;color:inherit}@media (max-width: 1420px){.feed-row{grid-template-columns:minmax(0,1fr) 38px 56px 68px}.feed-asg{display:none}}@media (max-width: 1080px){.feed{grid-auto-flow:row;grid-template-rows:none;grid-template-columns:minmax(0,1fr)}}.feed-row:hover{background:#fafcff}.feed-row:first-child{border-top:0}.feed-who{display:flex;align-items:center;gap:8px;min-width:0}.feed-ava{width:22px;height:22px;border-radius:6px;display:grid;place-items:center;flex:none;background:#f1f5fb;color:#516988;font-size:10.5px;font-weight:600}.feed-who b{font-size:12.5px;font-weight:550;color:var(--s-ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.feed-asg{font-size:11.5px;color:#97a3b6;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.feed-score{font-family:var(--font-mono);font-size:13px;font-weight:600;color:var(--s-ink);text-align:right}.feed-score.dim{color:#b3bdcc}.feed-time{font-family:var(--font-mono);font-size:10.5px;color:#a4b0c2;text-align:right;white-space:nowrap}@media (max-width: 900px){.feed-row{grid-template-columns:minmax(0,1fr) 56px 76px}.feed-asg,.feed-time{display:none}}.wsteps{display:flex;align-items:center;margin-bottom:18px}.wstep{display:flex;align-items:center;gap:8px;font-size:12.5px;color:#93a0b4;white-space:nowrap}.wstep-n{width:21px;height:21px;flex:none;border-radius:50%;display:grid;place-items:center;font-family:var(--font-mono);font-size:10.5px;border:1px solid #dfe6f2;background:#fff;color:#9aa8bd}.wstep.done{color:#5b6a80;cursor:pointer}.wstep.done .wstep-n{background:#eef4ff;border-color:#c9daff;color:var(--s-blue-2)}.wstep.now{color:var(--s-ink);font-weight:600}.wstep.now .wstep-n{background:var(--s-blue);border-color:var(--s-blue);color:#fff;box-shadow:0 0 0 3px #2f6bff1f}.wstep-line{flex:1;height:1px;min-width:24px;margin:0 14px;background:#e8edf6}.wstep-line.on{background:#c9daff}.wiz{display:grid;grid-template-columns:304px minmax(0,1fr);gap:18px;align-items:start}.wiz-side{position:sticky;top:calc(var(--sh-top) + 14px);min-width:0}.wiz-main{min-width:0}.cfg{display:flex;flex-direction:column;max-height:calc(100vh - 250px);min-height:440px;background:#fff;border:1px solid var(--s-line);border-radius:12px;overflow:hidden}.cfg-scroll{flex:1;min-height:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#e2e8f2 transparent}.cfg-scroll::-webkit-scrollbar{width:5px}.cfg-scroll::-webkit-scrollbar-thumb{background:#e2e8f2;border-radius:3px}.cfg-sec{padding:13px 14px;border-top:1px solid var(--s-line-2)}.cfg-sec:first-child{border-top:0}.cfg-h{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:9px;font-size:11.5px;font-weight:600;color:#4a5a72}.cfg-h em{font-style:normal;font-weight:400;font-size:10.5px;color:#a4b0c2}.cfg-foot{flex:none;padding:11px 14px;border-top:1px solid var(--s-line);background:#fbfcfe}.cfg-foot .btn{width:100%;justify-content:center}.cfg-foot p{margin:7px 0 0;font-size:10.5px;line-height:1.5;color:#a4b0c2;text-align:center}.cfchips{display:flex;flex-wrap:wrap;gap:5px}.cfchip{height:25px;padding:0 8px;border-radius:6px;border:1px solid #e6ecf5;background:#fff;font-family:inherit;font-size:11.5px;color:#5b6a80;cursor:pointer;white-space:nowrap;transition:border-color .12s ease,background .12s ease,color .12s ease}.cfchip:hover{border-color:#c9dbff;color:var(--s-blue-2)}.cfchip.on{background:#eff4ff;border-color:#c9dbff;color:var(--s-blue-2);font-weight:600}.cfscroll{max-height:184px;overflow-y:auto;padding-right:2px;scrollbar-width:thin;scrollbar-color:#e2e8f2 transparent}.cfscroll::-webkit-scrollbar{width:5px}.cfscroll::-webkit-scrollbar-thumb{background:#e2e8f2;border-radius:3px}.cfgrp+.cfgrp{margin-top:10px}.cfgrp-t{font-size:10.5px;color:#a4b0c2;margin-bottom:5px}.stp{display:flex;align-items:center;justify-content:space-between;height:28px}.stp-l{font-size:12px;color:#4a5a72}.stp-c{display:flex;align-items:center;border:1px solid #e6ecf5;border-radius:6px;overflow:hidden;background:#fff}.stp-c button{width:22px;height:22px;border:0;background:transparent;color:#7d8ba1;font-size:13px;line-height:1;cursor:pointer;font-family:inherit}.stp-c button:hover:not(:disabled){background:#f2f6fe;color:var(--s-blue-2)}.stp-c button:disabled{color:#d5dde8;cursor:not-allowed}.stp-c b{width:24px;text-align:center;font-family:var(--font-mono);font-size:11.5px;font-weight:600;color:var(--s-ink)}.drow{display:flex;align-items:center;gap:8px;height:23px}.drow span{width:14px;flex:none;font-size:11px;color:#8b98ac}.drow input{flex:1;height:3px;accent-color:var(--s-blue)}.prv{background:#fff;border:1px solid var(--s-line);border-radius:12px;overflow:hidden}.prv-h{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 18px;border-bottom:1px solid var(--s-line-2)}.prv-h b{font-size:13.5px;font-weight:620;color:var(--s-ink)}.prv-h em{font-style:normal;font-size:11.5px;color:#97a3b6}.prv-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:26px;padding:22px 20px}.prv-k{font-size:10.5px;font-weight:600;letter-spacing:.08em;color:#a4b0c2;margin-bottom:10px}.prv-num{font-family:var(--font-mono);font-size:38px;font-weight:600;line-height:1;letter-spacing:-.04em;color:var(--s-ink)}.prv-num span{font-family:inherit;font-size:12px;font-weight:500;color:#9aa8bd;margin-left:4px;letter-spacing:0}.prv-sub{margin-top:7px;font-size:11.5px;color:#8b98ac}.prv-type{display:grid;grid-template-columns:40px minmax(0,1fr) 24px;align-items:center;gap:9px;margin-top:7px;font-size:11.5px;color:#5b6a80}.prv-type i{display:block;height:5px;border-radius:3px;background:#eff3fa;overflow:hidden}.prv-type i b{display:block;height:100%;border-radius:3px;background:#a9c4ff}.prv-type em{font-style:normal;font-family:var(--font-mono);font-size:10.5px;color:#a4b0c2;text-align:right}.prv-kp{display:flex;flex-wrap:wrap;gap:4px}.prv-kp span{font-size:11px;color:#5b6a80;background:#f4f7fc;border-radius:4px;padding:2px 6px}.prv-foot{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 18px;border-top:1px solid var(--s-line-2);background:#fbfcfe}.prv-foot p{margin:0;font-size:11.5px;color:#97a3b6}.qsk{background:#fff;border:1px solid var(--s-line);border-radius:12px;padding:16px 18px}.qsk i{display:block;height:10px;border-radius:4px;background:linear-gradient(90deg,#f0f4fb,#f8fafd)}.qbar{position:sticky;bottom:14px;display:flex;align-items:center;gap:10px;margin-top:14px;padding:9px 12px;border:1px solid var(--s-line);border-radius:10px;background:#fffffff0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 10px 30px -20px #0f1b2d73}.qbar-t{font-size:12px;color:#5b6a80;margin-right:auto}.qbar-t b{font-family:var(--font-mono);font-weight:600;color:var(--s-ink)}@media (max-width: 1080px){.wiz{grid-template-columns:minmax(0,1fr)}.wiz-side{position:static}.cfg{max-height:none}.prv-body{grid-template-columns:minmax(0,1fr);gap:20px}}.flowx{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;background:#fff;border:1px solid var(--s-line);border-radius:12px;margin-top:18px;overflow:hidden}.flowx-i{padding:15px 16px 16px;border-left:1px solid var(--s-line-2)}.flowx-i:first-child{border-left:0}.flowx-n{font-family:var(--font-mono);font-size:10px;color:#b3bdcc;letter-spacing:.08em}.flowx-i b{display:block;margin-top:6px;font-size:12.5px;font-weight:600;color:var(--s-ink-2)}.flowx-i p{margin:4px 0 0;font-size:11.5px;line-height:1.6;color:#97a3b6}@media (max-width: 720px){.flowx{grid-template-columns:minmax(0,1fr)}.flowx-i{border-left:0;border-top:1px solid var(--s-line-2)}}.ab-bar{display:grid;grid-template-columns:188px minmax(0,1fr);background:#fff;border:1px solid var(--s-line);border-radius:12px;overflow:hidden;margin-bottom:16px}.ab-code{padding:14px 16px;border-right:1px solid var(--s-line-2);background:#fbfcfe}.ab-code em{font-style:normal;display:block;font-size:10.5px;letter-spacing:.08em;color:#a4b0c2;margin-bottom:5px}.ab-code b{font-family:var(--font-mono);font-size:20px;font-weight:600;letter-spacing:.08em;color:var(--s-ink)}.ab-code button{margin-left:8px;border:0;background:none;color:var(--s-blue);cursor:pointer;padding:2px;vertical-align:middle}.ab-code span{display:block;margin-top:4px;font-size:10.5px;color:#a4b0c2}.ab-right{padding:13px 18px;display:flex;flex-direction:column;gap:10px;justify-content:center;min-width:0}.ab-nums{display:flex;align-items:center;gap:0;flex-wrap:wrap}.ab-num{min-width:0;padding:0 20px;border-left:1px solid var(--s-line-2)}.ab-num:first-child{padding-left:0;border-left:0}.ab-num b{font-family:var(--font-mono);font-size:17px;font-weight:600;color:var(--s-ink);letter-spacing:-.02em}.ab-num b small{font-size:11px;color:#a4b0c2;font-weight:500}.ab-num span{display:block;font-size:10.5px;color:#97a3b6;margin-top:2px}.ab-num.amber b{color:var(--s-amber)}.tbl2{display:flex;flex-direction:column}.tbl2-h,.tbl2-r{display:grid;grid-template-columns:minmax(0,1.15fr) 210px 122px 84px minmax(0,118px);align-items:center;gap:14px;padding:9px 16px}.tbl2-h{font-size:10.5px;font-weight:600;letter-spacing:.06em;color:#a4b0c2;background:#fbfcfe;border-bottom:1px solid var(--s-line-2);position:sticky;top:var(--sh-top);z-index:5}.panel:has(.tbl2){overflow:visible}.panel:has(.tbl2) .tbl2-h{border-top-left-radius:inherit;border-top-right-radius:inherit}.tbl2-r:last-of-type{border-bottom-left-radius:inherit;border-bottom-right-radius:inherit}.tbl2-r{border-bottom:1px solid var(--s-line-2);cursor:pointer;transition:background .12s ease}.tbl2-r:nth-child(2n){background:#fafbfd}.tbl2-r:hover{background:#f2f6fd}.tbl2-r.review{background:#fffcf4;box-shadow:inset 2px 0 #d9a13c}.tbl2-r.review:hover{background:#fdf8ea}.tbl2-r:last-child{border-bottom:0}.tbl2-who{display:flex;align-items:center;gap:9px;min-width:0}.tbl2-no{font-family:var(--font-mono);font-size:10.5px;color:#b3bdcc;width:16px;flex:none}.tbl2-ava{width:24px;height:24px;border-radius:7px;flex:none;display:grid;place-items:center;background:#f1f5fb;color:#516988;font-size:11px;font-weight:600}.tbl2-who b{font-size:12.5px;font-weight:550;color:var(--s-ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tbl2-score{display:flex;align-items:center;gap:9px;min-width:0}.tbl2-score b{font-family:var(--font-mono);font-size:13px;font-weight:600;color:var(--s-ink);white-space:nowrap}.tbl2-score b small{font-size:10.5px;color:#a4b0c2;font-weight:500}.tbl2-bar{flex:1;height:3px;border-radius:2px;background:#eef2f9;overflow:hidden;min-width:20px}.tbl2-bar i{display:block;height:100%;border-radius:2px}.tbl2-dim{font-size:11.5px;color:#a4b0c2}.tbl2-use{font-family:var(--font-mono);font-size:10.5px;color:#97a3b6;white-space:nowrap}.tbl2-act{display:flex;justify-content:flex-end;gap:6px}@media (hover: hover) and (min-width: 761px){.tbl2-r .tbl2-act .btn-outline{opacity:0;border-color:transparent;background:transparent;color:#8493a9;transition:opacity .12s ease}.tbl2-r:hover .tbl2-act .btn-outline,.tbl2-r .tbl2-act .btn-outline:focus-visible{opacity:1;border-color:var(--s-line-2);background:#fff;color:var(--s-ink-2)}}.tbl2-mis{font-size:10.5px;color:#8b6a2a;background:#fdf6e8;border-radius:4px;padding:1px 5px;white-space:nowrap}@media (max-width: 1100px){.tbl2-h,.tbl2-r{grid-template-columns:minmax(0,1.2fr) 150px 106px minmax(0,120px)}.tbl2-use{display:none}}@media (max-width: 760px){.ab-bar{grid-template-columns:minmax(0,1fr)}.ab-code{border-right:0;border-bottom:1px solid var(--s-line-2)}.tbl2-h{display:none}.tbl2-r{grid-template-columns:minmax(0,1fr) 90px;row-gap:8px;padding:12px 14px}.tbl2-score{grid-column:1}.tbl2-act{grid-column:2;grid-row:1}.tbl2-r>span:nth-child(3){display:none}}.rv-row{display:grid;grid-template-columns:168px minmax(0,1fr) 168px 132px;align-items:center;gap:14px;padding:12px 16px;border-bottom:1px solid var(--s-line-2)}.rv-row:last-child{border-bottom:0}.rv-who{display:flex;align-items:center;gap:8px;min-width:0}.rv-who b{display:block;font-size:12.5px;font-weight:550;color:var(--s-ink-2)}.rv-who em{display:block;font-style:normal;font-size:10.5px;color:#a4b0c2;margin-top:1px}.rv-txt{font-size:11.5px;line-height:1.6;color:#7a879b;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.rv-conf{min-width:0}.drill{border:1px solid var(--s-line);border-radius:10px;padding:13px 14px}.drill b{font-size:13px;font-weight:600;color:var(--s-ink)}.drill p{margin:6px 0 0;font-size:11.5px;line-height:1.65;color:#7a879b}.drill-qs{display:flex;flex-wrap:wrap;gap:5px;margin-top:9px}.drill-qs span{font-size:11px;color:#5b6a80;background:#f4f7fc;border-radius:4px;padding:2px 6px}@media (max-width: 960px){.rv-row{grid-template-columns:minmax(0,1fr) 132px;row-gap:8px}.rv-txt{grid-column:1 / -1;order:3}}.rep-hero{display:grid;grid-template-columns:272px minmax(0,1fr) 210px;background:#fff;border:1px solid var(--s-line);border-radius:12px;overflow:hidden;margin-bottom:18px}.rep-score{display:flex;align-items:center;gap:14px;padding:18px 18px 18px 20px;border-right:1px solid var(--s-line-2)}.rep-score-t em{display:block;font-style:normal;font-size:10.5px;letter-spacing:.06em;color:#a4b0c2}.rep-score-t b{display:block;font-family:var(--font-mono);font-size:20px;font-weight:600;color:var(--s-ink);letter-spacing:-.02em;margin-top:4px}.rep-score-t span{display:block;font-size:10.5px;color:#97a3b6;margin-top:3px}.rep-dist{padding:16px 20px 12px;min-width:0;border-right:1px solid var(--s-line-2)}.rep-k{font-size:10.5px;font-weight:600;letter-spacing:.06em;color:#a4b0c2;margin-bottom:8px}.rep-tiers{padding:16px 18px;display:flex;flex-direction:column;justify-content:center;gap:9px}.rep-tier{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px;color:#5b6a80}.rep-tier i{width:6px;height:6px;border-radius:2px;margin-right:7px;display:inline-block}.rep-tier b{font-family:var(--font-mono);font-size:13px;color:var(--s-ink)}.mbars{display:flex;flex-direction:column;gap:12px}.mbar{display:grid;grid-template-columns:64px minmax(0,1fr) 40px;align-items:center;gap:10px}.mbar span:first-child{font-size:12px;color:#4a5a72}.mbar-t{height:6px;border-radius:3px;background:#f1f4fa;overflow:hidden}.mbar-t i{display:block;height:100%;border-radius:3px}.mbar b{font-family:var(--font-mono);font-size:11px;font-weight:500;color:#8b98ac;text-align:right}.mbar-q{grid-column:2 / 4;font-size:10.5px;color:#a4b0c2;margin-top:-6px}.tier2{background:#fff;border:1px solid var(--s-line);border-radius:12px;overflow:hidden;display:flex;flex-direction:column}.tier2-h{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 14px;border-bottom:1px solid var(--s-line-2)}.tier2-h b{display:flex;align-items:center;gap:7px;font-size:13px;font-weight:620}.tier2-h b i{width:7px;height:7px;border-radius:2px}.tier2-h span{font-family:var(--font-mono);font-size:11px;color:#8b98ac}.tier2-h em{font-style:normal;font-size:11px;color:#97a3b6;padding:10px 14px 0;display:block}.tier2-note{font-size:11px;color:#97a3b6;padding:10px 14px 2px}.tier2-l{display:flex;flex-direction:column;padding-bottom:6px;max-height:320px;overflow-y:auto;-webkit-mask-image:linear-gradient(180deg,#000 calc(100% - 14px),transparent);mask-image:linear-gradient(180deg,#000 calc(100% - 14px),transparent)}.tier2-r{display:grid;grid-template-columns:18px minmax(0,1fr) 32px;align-items:center;gap:8px;padding:7px 14px;text-decoration:none;color:inherit}.tier2-r:hover{background:#fafcff}.tier2-no{font-family:var(--font-mono);font-size:9.5px;color:#b3bdcc}.tier2-n{font-size:12.5px;color:var(--s-ink-2)}.tier2-n em{display:block;font-style:normal;font-size:10px;color:#a4b0c2;margin-top:1px}.tier2-s{font-family:var(--font-mono);font-size:12.5px;font-weight:600;text-align:right}@media (max-width: 1180px){.rep-hero{grid-template-columns:minmax(0,1fr)}.rep-score,.rep-dist{border-right:0;border-bottom:1px solid var(--s-line-2)}}.pgrid2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;align-items:start}.tier-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:start}@media (max-width: 1080px){.pgrid2,.tier-grid{grid-template-columns:minmax(0,1fr)}}.code-card{background:#fff;border:1px solid var(--s-line);border-radius:12px;padding:16px}.code-card b{display:block;font-size:13px;font-weight:620;color:var(--s-ink)}.code-card p{margin:5px 0 12px;font-size:11.5px;line-height:1.6;color:#97a3b6}.code-in{display:flex;gap:6px}.code-in input{flex:1;min-width:0;height:38px;padding:0 12px;border:1px solid #dfe6f2;border-radius:8px;font-family:var(--font-mono);font-size:16px;letter-spacing:.22em;text-align:center;color:var(--s-ink);background:#fbfcfe;outline:none;text-transform:uppercase}.code-in input:focus{border-color:var(--s-blue);background:#fff;box-shadow:0 0 0 3px #2f6bff1a}.code-in input::placeholder{font-family:inherit;font-size:11.5px;letter-spacing:0;color:#b3bdcc}.code-hist{display:flex;flex-wrap:wrap;gap:5px;margin-top:10px}.code-hist button{height:22px;padding:0 7px;border-radius:5px;border:1px solid #e6ecf5;background:#fff;font-family:var(--font-mono);font-size:10.5px;color:#6f7e94;cursor:pointer}.code-hist button:hover{border-color:#c9dbff;color:var(--s-blue-2)}.stu-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:13px 16px;border-top:1px solid var(--s-line-2);text-decoration:none;color:inherit}.stu-row:first-child{border-top:0}.stu-row:hover{background:#fafcff}.stu-t{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0}.stu-t b{font-size:13.5px;font-weight:600;color:var(--s-ink)}.stu-m{display:flex;align-items:center;gap:10px;margin-top:5px;font-size:11.5px;color:#97a3b6}.stu-m i{width:1px;height:9px;background:#e4eaf3}.stu-r{display:flex;align-items:center;gap:10px}.stu-score{text-align:right}.stu-score b{font-family:var(--font-mono);font-size:17px;font-weight:600;color:var(--s-ink);letter-spacing:-.02em}.stu-score b small{font-size:10.5px;color:#a4b0c2;font-weight:500}.stu-score span{display:block;font-size:10px;color:#a4b0c2;margin-top:1px}.wb-row{display:grid;grid-template-columns:76px minmax(0,1fr) auto 74px 14px;align-items:center;gap:12px;padding:10px 16px;border-top:1px solid var(--s-line-2);text-decoration:none;color:inherit}.wb-row:first-child{border-top:0}.wb-row:hover{background:#fafcff}.wb-code{font-family:var(--font-mono);font-size:10px;color:#8b98ac;letter-spacing:.04em}.wb-stem{font-size:12px;color:var(--s-ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wb-score{font-family:var(--font-mono);font-size:11px;color:#8b98ac;text-align:right;white-space:nowrap}.code-in .btn{height:38px;padding:0 14px}.panel>.empty2{padding:30px 20px}.sh .container,.sh .container-wide{max-width:none;width:auto;margin:0;padding-left:0!important;padding-right:0!important;padding-top:0!important}.sh .stat-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-bottom:18px;background:#fff;border:1px solid var(--s-line);border-radius:12px;overflow:hidden}.sh .stat-cell{padding:14px 18px 15px;background:none;border:0;border-left:1px solid var(--s-line-2);border-radius:0;box-shadow:none}.sh .stat-cell:first-child{border-left:0}.sh .metric-val{font-family:var(--font-mono);font-size:24px;font-weight:600;line-height:1;letter-spacing:-.03em;color:var(--s-ink)}.sh .metric-lbl{margin-top:7px;font-size:11px;color:#97a3b6}.sh .tag-ver{background:#fdf1ef;color:#a2473c}@media (max-width: 900px){.sh .stat-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.sh .stat-cell:nth-child(3){border-left:0;border-top:1px solid var(--s-line-2)}.sh .stat-cell:nth-child(4){border-top:1px solid var(--s-line-2)}}@media (max-width: 900px){.wsteps{overflow-x:auto;padding-bottom:4px;scrollbar-width:none}.wsteps::-webkit-scrollbar{display:none}.wstep-line{min-width:18px;margin:0 8px}}.heat-wrap{overflow-x:auto;padding-bottom:4px}.panel-b.flush{overflow-x:auto}.sh-main:has(.ide-shell){max-width:none;padding:12px 20px}.sh .ide-shell{height:calc(100vh - var(--sh-top) - 24px);gap:12px}.learn{margin-bottom:18px}.learn-body{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(0,1fr);gap:0}.learn-col{padding:15px 18px 17px;min-width:0}.learn-col+.learn-col{border-left:1px solid var(--s-line-2)}.learn-k{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:12px;font-size:11.5px;font-weight:600;color:#4a5a72;letter-spacing:.02em}.learn-k span{font-weight:400;letter-spacing:0;color:#a4b0c2}.learn-empty{margin:0;padding:10px 0 4px;font-size:11.5px;line-height:1.8;color:#a4b0c2}.kpbars{display:flex;flex-direction:column;gap:9px}.kpbar{display:grid;grid-template-columns:122px minmax(0,1fr) 34px;align-items:center;gap:10px}.kpbar-n{font-size:11.5px;color:#4a5a72;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kpbar-t{height:5px;border-radius:3px;background:#f1f4fa;overflow:hidden}.kpbar-t i{display:block;height:100%;border-radius:3px}.kpbar-t i.moss{background:#2f9e77}.kpbar-t i.blue{background:#2f6bff}.kpbar-t i.amber{background:#d99a2b}.kpbar b{font-family:var(--font-mono);font-size:10.5px;font-weight:600;text-align:right}.kpbar b.moss{color:#0d7355}.kpbar b.blue{color:#1d4fd8}.kpbar b.amber{color:#a8691a}.trend-head{display:flex;align-items:baseline;gap:9px;margin-bottom:2px}.trend-head b{font-family:var(--font-mono);font-size:24px;font-weight:600;line-height:1;letter-spacing:-.03em;color:var(--s-ink)}.trend-head b small{font-size:11px;font-weight:500;color:#a4b0c2;margin-left:1px}.trend-head span{font-size:10.5px;color:#97a3b6}.trend-svg{display:block;width:100%;height:92px;overflow:visible}.trend-axis{font-family:var(--font-mono);font-size:8px;fill:#b3bdcc}@media (max-width: 1080px){.learn-body{grid-template-columns:minmax(0,1fr)}.learn-col+.learn-col{border-left:0;border-top:1px solid var(--s-line-2)}}.wbfilter{display:flex;flex-wrap:wrap;gap:5px;padding:10px 16px;border-bottom:1px solid var(--s-line-2)}.wbfilter button{height:24px;padding:0 8px;display:inline-flex;align-items:center;gap:5px;border:1px solid #e6ecf5;border-radius:6px;background:#fff;font-family:inherit;font-size:11px;color:#5b6a80;cursor:pointer}.wbfilter button:hover:not(:disabled){border-color:#c9dbff;color:var(--s-blue-2)}.wbfilter button.on{background:#eff4ff;border-color:#c9dbff;color:var(--s-blue-2);font-weight:600}.wbfilter button:disabled{color:#c3cbd8;cursor:default}.wbfilter em{font-style:normal;font-family:var(--font-mono);font-size:9.5px;opacity:.7}.wb-empty{margin:0;padding:20px 16px;text-align:center;font-size:11.5px;color:#a4b0c2}@media (max-width: 1200px){.ph-opt{width:34px;padding-left:0;padding-right:0;gap:0}.ph-opt span{display:none}}@media (max-width: 620px){.ph h1 .truncate{white-space:normal;overflow:visible}.ph-actions{gap:6px;max-width:100%}.ph-actions .btn{padding-left:12px;padding-right:12px}.ph-actions .ph-opt{padding-left:0;padding-right:0}}.dist{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));align-items:end;gap:3px;height:76px;padding-bottom:1px;border-bottom:1px solid var(--s-line-2)}.dist-col{display:flex;flex-direction:column;justify-content:flex-end;align-items:center;height:100%;gap:3px}.dist-col span{font-size:9.5px;line-height:1;color:#97a3b6;font-variant-numeric:tabular-nums}.dist-col i{display:block;width:100%;min-height:2px;border-radius:1.5px 1.5px 0 0;background:#b9cff5}.dist-col i.low{background:#e6c3bf}.dist-axis{display:flex;justify-content:space-between;margin-top:5px;font-size:10px;color:#a4b0c2}.dist-foot{display:flex;align-items:baseline;justify-content:space-between;margin-top:9px;font-size:11.5px;color:#7a879b}.dist-foot b{font-size:14px;font-weight:600;color:var(--s-ink)}.dist-foot a{font-size:11.5px;color:var(--s-blue-2);text-decoration:none}.aig-big{display:flex;align-items:baseline;gap:7px}.aig-big b{font-size:26px;font-weight:600;letter-spacing:-.02em;color:var(--s-ink);font-variant-numeric:tabular-nums}.aig-big span{font-size:11.5px;color:#8d9aae}.aig-split{display:flex;gap:14px;margin-top:10px;font-size:11.5px;color:#7a879b}.aig-split b{font-weight:600;color:var(--s-ink-2)}.aig-split b.amber{color:var(--s-amber)}.aig-bar{height:4px;margin-top:9px;border-radius:2px;background:#fdeee8;overflow:hidden}.aig-bar i{display:block;height:100%;border-radius:2px;background:#0d7355}.aig p{margin:9px 0 0;font-size:11px;line-height:1.7;color:#a4b0c2}.store-note{position:fixed;left:50%;bottom:18px;transform:translate(-50%);z-index:90;display:flex;align-items:center;gap:10px;max-width:min(640px,calc(100vw - 32px));padding:10px 12px 10px 16px;border-radius:var(--r-2, 10px);background:#2a1c10;color:#f4e3cd;border:1px solid rgba(217,119,6,.45);box-shadow:0 10px 30px #0f162459;font-size:13px;line-height:1.6;animation:store-in .25s ease}.store-note span{flex:1}.store-note .btn{flex:none;color:#f4e3cd;border-color:#f4e3cd66}@keyframes store-in{0%{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%)}}.newbar{display:flex;align-items:center;gap:12px;padding:12px 16px;margin-bottom:14px;border:1px solid rgba(176,118,26,.28);border-left:3px solid #b0761a;border-radius:10px;background:linear-gradient(90deg,#fdf8ee,#fffdfa 62%);animation:newbar-in .28s ease}.newbar-ico{display:grid;place-items:center;width:30px;height:30px;flex:none;border-radius:8px;background:#b0761a1f;color:#8a5c14}.newbar-main{flex:1;min-width:0}.newbar-main b{display:block;font-size:13.5px;font-weight:620;color:#6d4710}.newbar-main p{margin:3px 0 0;font-size:11.5px;line-height:1.6;color:#977644;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.newbar-act{display:flex;align-items:center;gap:6px;flex:none}@keyframes newbar-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.today{display:grid;grid-template-columns:minmax(0,1fr) 312px;gap:18px;align-items:start;margin-bottom:18px}.today-todo{min-width:0}.today-side{display:flex;flex-direction:column;gap:12px;min-width:0}.stu-row.is-new{background:linear-gradient(90deg,rgba(176,118,26,.045),transparent 42%);box-shadow:inset 3px 0 #c08a2e}.stu-row.is-new:hover{background:#fffbf3}.st-new{background:#b0761a24;color:#8a5c14;font-weight:600}@media (max-width: 1180px){.today{grid-template-columns:minmax(0,1fr)}}@media (max-width: 640px){.newbar{align-items:flex-start;flex-wrap:wrap;padding:11px 13px}.newbar-main p{white-space:normal}.newbar-act{width:100%;justify-content:flex-end}}.pp-page{--pp-ink: #111418;--pp-sub: #5b6472;--pp-line: #d6dbe4;--pp-hair: #e9ecf2;--pp-ser: "Songti SC", "SimSun", "Noto Serif SC", "Source Han Serif SC", Georgia, serif;--pp-sans: "PingFang SC", "Microsoft YaHei", "Hiragino Sans GB", system-ui, sans-serif;padding-bottom:60px}.pp-toolbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:12px;padding:10px 22px;background:#fffffff0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--s-line);flex-wrap:wrap}.pp-tabs{display:flex;padding:2px;background:#f2f5fa;border-radius:8px}.pp-tabs button{height:28px;padding:0 13px;border:0;border-radius:6px;background:transparent;font-family:inherit;font-size:12px;color:#5b6779;cursor:pointer;white-space:nowrap}.pp-tabs button:hover{color:#1d4fd8}.pp-tabs button.on{background:#fff;color:#0f1b2d;font-weight:600;box-shadow:0 1px 3px #0f1b2d1a}.pp-hint{font-size:11.5px;color:#97a3b6}.pp-setwrap{position:relative}.pp-pop{position:absolute;top:38px;right:0;z-index:30;width:280px;padding:14px;background:#fff;border:1px solid var(--s-line);border-radius:10px;box-shadow:0 18px 40px -22px #0f1b2d80;display:grid;gap:11px}.pp-pop label{display:block;font-size:11px;color:#66758c;margin-bottom:5px}.pp-pop input{width:100%;height:32px;padding:0 10px;border:1px solid #dfe6f2;border-radius:7px;font-family:inherit;font-size:12.5px;color:#0f1b2d;outline:none}.pp-pop input:focus{border-color:#2f6bff;box-shadow:0 0 0 3px #2f6bff1a}.pp-pop .row{display:flex;align-items:center;gap:8px;font-size:12px;color:#33415a}.pp-pop .row input{width:auto;height:auto}.pp-stage{display:flex;flex-direction:column;align-items:center;gap:22px;padding:26px 20px 0}.pp-sheet{width:794px;max-width:100%;background:#fff;color:var(--pp-ink);padding:46px 54px 40px;border:1px solid #e3e8f0;box-shadow:0 1px 2px #0f1b2d0f,0 18px 40px -28px #0f1b2d66;font-family:var(--pp-ser);font-size:13.5px;line-height:1.95}.pp-org{text-align:center;font-family:var(--pp-sans);font-size:11.5px;letter-spacing:.34em;color:var(--pp-sub);margin-bottom:10px}.pp-title{margin:0;text-align:center;font-family:var(--pp-sans);font-size:21px;font-weight:700;letter-spacing:.04em;line-height:1.4}.pp-sub{display:flex;justify-content:center;flex-wrap:wrap;gap:4px 16px;margin-top:7px;font-family:var(--pp-sans);font-size:11.5px;color:var(--pp-sub)}.pp-sub span+span:before{content:"·";margin-right:16px;color:#c2cad6}.pp-head-rule{height:0;border-top:1.6px solid var(--pp-ink);margin:14px 0 0}.pp-fill{display:flex;align-items:flex-end;gap:22px;margin-top:14px;font-family:var(--pp-sans);font-size:12px;color:#2b3442}.pp-fill>span{display:flex;align-items:flex-end;gap:6px;flex:1;white-space:nowrap}.pp-fill>span:last-child{flex:0 0 96px}.pp-fill em{flex:1;min-width:46px;height:13px;border-bottom:1px solid #8f9aab}.pp-keytag{margin-top:14px;display:inline-block;font-family:var(--pp-sans);font-size:11.5px;letter-spacing:.08em;color:#8a3b1e;border:1px solid #d8b9a5;padding:2px 9px}.pp-tips{margin:16px 0 2px;padding:10px 14px;border:1px solid var(--pp-hair);background:#fbfbf9;font-family:var(--pp-sans);font-size:11px;line-height:1.85;color:#6a7383}.pp-tips b{display:block;color:#3a4453;margin-bottom:3px;font-weight:600}.pp-tips ol{margin:0;padding-left:18px;list-style:decimal}.pp-tips li{display:list-item}.pp-sec{margin-top:22px}.pp-sec-h{margin:0 0 4px;font-family:var(--pp-sans);font-size:14px;font-weight:700;letter-spacing:.02em;line-height:1.7}.pp-sec-h em{font-style:normal;font-weight:400;font-size:12px;color:var(--pp-sub);letter-spacing:0}.pp-q{padding:9px 0 11px;break-inside:avoid;page-break-inside:avoid}.pp-q-line{display:flex;gap:8px;align-items:flex-start}.pp-q-no{flex:none;font-family:var(--pp-sans);font-size:13px;font-weight:600;min-width:22px;line-height:1.95}.pp-q-main{flex:1;min-width:0}.pp-stem{margin:0;font-size:13.5px;line-height:1.95;white-space:pre-wrap;word-break:break-word}.pp-pt{font-family:var(--pp-sans);font-size:11px;color:var(--pp-sub);margin-left:5px;white-space:nowrap}.pp-judge{font-family:var(--pp-sans);font-size:13px;letter-spacing:.1em}.pp-opts{display:grid;grid-template-columns:repeat(var(--cols, 2),minmax(0,1fr));gap:2px 20px;margin-top:4px}.pp-opt{font-size:13px;line-height:1.9;display:flex;gap:5px;min-width:0}.pp-opt b{font-family:var(--pp-sans);font-weight:600;flex:none}.pp-blanks{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:3px}.pp-blank{display:inline-block;width:150px;height:1em;border-bottom:1px solid #8f9aab;vertical-align:-2px}.pp-work{margin-top:8px;border:0;background-image:repeating-linear-gradient(to bottom,transparent 0,transparent 25px,#e2e6ee 25px,#e2e6ee 26px)}.pp-key{margin-top:8px;padding:9px 12px;border-left:2px solid #b8843f;background:#faf8f3;font-family:var(--pp-sans);font-size:11.5px;line-height:1.75;color:#3c4657;display:grid;gap:4px;break-inside:avoid}.pp-key b{color:#8a3b1e;margin-right:6px;font-weight:600}.pp-key ul{margin:0;padding-left:16px}.pp-end{margin-top:26px;padding-top:12px;border-top:1px solid var(--pp-line);text-align:center;font-family:var(--pp-sans);font-size:11px;color:#9aa4b3;letter-spacing:.1em}.pp-as-head{border-bottom:1.6px solid var(--pp-ink);padding-bottom:10px}.pp-as-title{margin:0;text-align:center;font-family:var(--pp-sans);font-size:19px;font-weight:700;letter-spacing:.3em}.pp-as-top{display:grid;grid-template-columns:minmax(0,1fr) 168px;gap:22px;margin-top:14px;align-items:stretch}.pp-as-info{display:grid;gap:9px;align-content:start;font-family:var(--pp-sans);font-size:12px;color:#2b3442}.pp-as-info>div{display:flex;align-items:flex-end;gap:6px}.pp-as-info em{flex:1;height:13px;border-bottom:1px solid #8f9aab}.pp-as-barcode{border:1px dashed #b6bfcc;display:grid;place-items:center;text-align:center;font-family:var(--pp-sans);font-size:10.5px;line-height:1.6;color:#9099a7;padding:8px}.pp-as-note{display:flex;gap:18px;align-items:flex-start;margin-top:14px;padding:9px 12px;border:1px solid var(--pp-hair);background:#fbfbf9;font-family:var(--pp-sans);font-size:10.5px;line-height:1.8;color:#6a7383}.pp-as-legend{flex:none;display:flex;align-items:center;gap:6px;white-space:nowrap}.pp-as-legend i{width:15px;height:15px;border:1px solid #7d8798;display:inline-grid;place-items:center;font-size:10px;font-style:normal;color:#3a4453;font-family:var(--pp-sans)}.pp-as-legend i.filled{background:#3a4453;color:#fff;border-color:#3a4453}.pp-as-sec{margin-top:22px}.pp-as-sec h2{margin:0 0 8px;font-family:var(--pp-sans);font-size:13px;font-weight:700}.pp-as-sec h2 em{font-style:normal;font-weight:400;font-size:11px;color:var(--pp-sub);margin-left:6px}.pp-bubs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 26px}.pp-bub-row{display:flex;align-items:center;gap:9px;font-family:var(--pp-sans);font-size:12px}.pp-bub-no{width:22px;flex:none;text-align:right;color:#4a5464}.pp-bub{width:21px;height:21px;flex:none;border:1px solid #7d8798;border-radius:2px;display:grid;place-items:center;font-size:11px;color:#3a4453}.pp-as-fills{display:grid;gap:10px}.pp-as-fill{display:flex;gap:8px;align-items:baseline;font-size:12.5px}.pp-as-fill span{font-family:var(--pp-sans);font-weight:600;flex:none;min-width:22px}.pp-as-fill i{flex:1;height:20px;border-bottom:1px solid #b6bfcc}.pp-as-sols{display:grid;gap:12px}.pp-as-sol{display:flex;gap:10px;break-inside:avoid}.pp-as-sol-no{flex:none;font-family:var(--pp-sans);font-size:12.5px;font-weight:600;padding-top:6px}.pp-as-box{flex:1;border:1px solid #c8d0db;border-radius:2px;background-image:repeating-linear-gradient(to bottom,transparent 0,transparent 25px,#eef1f6 25px,#eef1f6 26px)}@page{size:A4;margin:15mm 13mm}@media print{.sh-side,.sh-top,.no-print,.ask-fab-wrap,.ask-panel{display:none!important}html,body{background:#fff!important}.sh-body{margin:0!important}.sh-main,.sh-main:has(.pp-page){padding:0!important;max-width:none!important}.pp-page{padding:0}.pp-stage{padding:0;display:block}.pp-sheet{width:auto;max-width:none;border:0;box-shadow:none;padding:0;font-size:12.5px}.pp-q,.pp-key,.pp-as-sol,.pp-bub-row{break-inside:avoid;page-break-inside:avoid}.pp-sheet+.pp-sheet{break-before:page;page-break-before:always}.pp-sec-h,.pp-as-sec h2{break-after:avoid;page-break-after:avoid}.pp-tips,.pp-as-note{background:transparent!important}}@media (max-width: 860px){.pp-sheet{padding:28px 20px 26px;font-size:13px}.pp-fill{flex-wrap:wrap;gap:10px 14px}.pp-as-top,.pp-bubs{grid-template-columns:minmax(0,1fr)}.pp-toolbar{padding:9px 12px}.pp-hint{display:none}}@media (max-width: 620px){.pp-opts{grid-template-columns:minmax(0,1fr)!important}}@media print{.sh,.sh-body{background:#fff!important}}.qflag{display:inline-flex;align-items:center;gap:4px;height:26px;padding:0 9px;border:1px solid #e4eaf4;border-radius:6px;background:#fff;font-family:inherit;font-size:11.5px;color:#97a3b6;cursor:pointer;transition:border-color .13s ease,background .13s ease,color .13s ease}.qflag:hover{border-color:#e3cba2;color:#a8691a}.qflag.on{border-color:#e8cfa2;background:#fdf6e8;color:#8a6a2a;font-weight:600}.scard{display:flex;flex-direction:column;background:#fff;border:1px solid #e8edf6;border-radius:12px;overflow:hidden}.scard-h{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid #f1f4fa}.scard-h b{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:#0f1b2d}.scard-count{font-family:var(--font-mono);font-size:13px;font-weight:600;color:#0f1b2d}.scard-count em{font-style:normal;font-weight:400;color:#a4b0c2}.scard-tabs{display:flex;gap:4px;padding:8px 10px;border-bottom:1px solid #f1f4fa}.scard-tabs button{flex:1;height:26px;display:flex;align-items:center;justify-content:center;gap:4px;border:0;border-radius:6px;background:#f4f7fc;font-family:inherit;font-size:11.5px;color:#66758c;cursor:pointer}.scard-tabs button:hover{color:#1d4fd8}.scard-tabs button.on{background:#eff4ff;color:#1d4fd8;font-weight:600}.scard-tabs em{font-style:normal;font-family:var(--font-mono);font-size:10px;opacity:.72}.scard-body{padding:10px 12px 12px;max-height:48vh;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#e2e8f2 transparent}.scard-body::-webkit-scrollbar{width:5px}.scard-body::-webkit-scrollbar-thumb{background:#e2e8f2;border-radius:3px}.scard-grp+.scard-grp{margin-top:11px}.scard-grp-h{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:5px;font-size:10.5px;letter-spacing:.04em;color:#93a0b4}.scard-grp-h em{font-style:normal;font-family:var(--font-mono);letter-spacing:0}.scard-nums{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:5px}.scard-nums button{position:relative;aspect-ratio:1;display:grid;place-items:center;border:1px solid #e4eaf4;border-radius:5px;background:#fff;font-family:var(--font-mono);font-size:11px;color:#8b98ac;cursor:pointer;transition:border-color .12s ease,background .12s ease,color .12s ease}.scard-nums button:hover{border-color:#b9cdf5}.scard-nums button.done{border-color:#c9daff;background:#eff4ff;color:#1d4fd8;font-weight:600}.scard-nums button.miss{border-color:#f0dcbb;color:#a8691a}.scard-nums button.flag:after{content:"";position:absolute;top:-1px;right:-1px;border:5px solid transparent;border-top-color:#e0a03a;border-right-color:#e0a03a}.scard-empty{grid-column:1 / -1;margin:0;padding:16px 0;text-align:center;font-size:11.5px;color:#a4b0c2}.scard-foot{display:flex;flex-direction:column;gap:8px;padding:10px 12px 12px;border-top:1px solid #f1f4fa;background:#fbfcfe}.scard-legend{display:flex;gap:12px;font-size:10.5px;color:#8b98ac}.scard-legend span{display:flex;align-items:center;gap:4px}.scard-legend .dot{display:block;width:8px;height:8px;border-radius:2px}.scard-legend .dot.done{background:#c9daff}.scard-legend .dot.miss{background:#f6e3c4}.scard-legend .tri{display:block;width:0;height:0;border:4px solid transparent;border-top-color:#e0a03a;border-right-color:#e0a03a}.scard-jump{display:flex;align-items:center;justify-content:center;gap:3px;height:26px;border:1px dashed #d7e0ee;border-radius:6px;background:#fff;font-family:inherit;font-size:11.5px;color:#1d4fd8;cursor:pointer}.scard-jump:hover{border-color:#b9cdf5;background:#f7faff}.scard-time{margin:0;text-align:center;font-size:10.5px;color:#a4b0c2}.chk-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-bottom:16px;background:#eef2f9;border:1px solid #eef2f9;border-radius:8px;overflow:hidden}.chk-stats>div{padding:12px 14px;background:#fff}.chk-stats b{display:block;font-family:var(--font-mono);font-size:22px;font-weight:600;line-height:1;letter-spacing:-.02em;color:#0f1b2d}.chk-stats span{display:block;margin-top:5px;font-size:11px;color:#8b98ac}.chk-stats .warn b{color:#a8691a}.chk-sec+.chk-sec{margin-top:14px}.chk-h{margin-bottom:7px;font-size:11.5px;color:#66758c}.chk-nums{display:flex;flex-wrap:wrap;gap:6px}.chk-nums button{height:28px;padding:0 10px;border:1px solid #f0dcbb;border-radius:6px;background:#fdf8ef;font-family:inherit;font-size:11.5px;color:#8a6a2a;cursor:pointer}.chk-nums button:hover{border-color:#dda63f}.chk-nums.flag button{border-color:#e4eaf4;background:#f7f9fd;color:#5b6779}.chk-ok{display:flex;align-items:center;gap:7px;padding:12px 14px;border:1px solid #d9ecdf;border-radius:8px;background:#f4faf6;font-size:12.5px;color:#0d7355}.chk-tip{margin:16px 0 0;font-size:11.5px;line-height:1.7;color:#97a3b6}@media (max-width: 900px){.scard-body{max-height:none}.scard-nums{grid-template-columns:repeat(8,minmax(0,1fr))}}@media (max-width: 760px){.take-head-inner{height:auto;padding:10px 0;flex-wrap:wrap;gap:10px}.take-head-inner>div:first-child{width:100%}.take-head-inner>div:last-child{width:100%;justify-content:space-between;gap:8px}.take-head-inner .tag{white-space:nowrap}.take-head-inner .t-h3{font-size:14px}.take-shell{grid-template-columns:minmax(0,1fr)}.take-nav{position:static}.scard-nums{grid-template-columns:repeat(6,minmax(0,1fr))}}.desk-body{display:grid;grid-template-columns:minmax(0,1.3fr) 240px minmax(0,1fr)}.desk-col{display:flex;flex-direction:column;min-width:0;padding:15px 18px 17px}.desk-col+.desk-col{border-left:1px solid var(--s-line-2)}.desk-h{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:10px;font-size:11.5px;font-weight:600;color:#4a5a72;letter-spacing:.02em}.desk-h span{font-weight:400;letter-spacing:0;color:#a4b0c2}.desk-prog{height:4px;border-radius:2px;background:#f1f4fa;overflow:hidden;margin-bottom:4px}.desk-prog i{display:block;height:100%;border-radius:2px;background:var(--s-blue);transition:width .32s ease}.plan-list{max-height:170px;overflow-y:auto;margin:0 -4px;padding:0 4px;scrollbar-width:thin;scrollbar-color:#e2e8f2 transparent}.plan-row{display:flex;align-items:center;gap:8px;min-height:30px}.plan-chk{width:15px;height:15px;flex:none;padding:0;display:grid;place-items:center;border:1.5px solid #d3dcea;border-radius:4px;background:#fff;color:transparent;cursor:pointer;transition:all .12s ease}.plan-chk:hover{border-color:#9dbaff}.plan-chk.on{background:var(--s-blue);border-color:var(--s-blue);color:#fff}.plan-t{flex:1;min-width:0;font-size:12px;color:var(--s-ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plan-t.done{color:#a4b0c2;text-decoration:line-through}.plan-c{font-family:var(--font-mono);font-size:9px;color:#b3bdcc;flex:none}.plan-del{flex:none;width:18px;height:18px;padding:0;display:grid;place-items:center;border:0;background:none;color:#c3ccdb;cursor:pointer;opacity:0;transition:opacity .12s ease}.plan-row:hover .plan-del{opacity:1}.plan-del:hover{color:var(--s-red)}.plan-empty{margin:6px 0 2px;font-size:11.5px;line-height:1.8;color:#a4b0c2}.plan-sugg{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}.plan-sugg button{height:22px;padding:0 8px;border:1px dashed #dde5f0;border-radius:5px;background:#fff;font-family:inherit;font-size:10.5px;color:#66758c;cursor:pointer;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plan-sugg button:hover{border-color:#c9dbff;color:var(--s-blue-2)}.plan-add{display:flex;gap:6px;margin-top:9px}.plan-add input{flex:1;min-width:0;height:30px;padding:0 10px;border:1px solid #e2e8f2;border-radius:7px;background:#fbfcfe;font-family:inherit;font-size:11.5px;color:var(--s-ink);outline:none}.plan-add input:focus{border-color:var(--s-blue);background:#fff;box-shadow:0 0 0 3px #2f6bff14}.plan-add button{flex:none;height:30px;padding:0 11px;border:1px solid #dfe6f2;border-radius:7px;background:#fff;font-family:inherit;font-size:11.5px;color:#4a5a72;cursor:pointer}.plan-add button:hover{border-color:#c9dbff;color:var(--s-blue-2)}.focus{display:flex;flex-direction:column;align-items:center}.focus-dial{position:relative;width:108px;height:108px;margin:2px 0 12px;border-radius:50%;display:grid;place-items:center;transition:background .4s linear}.focus-dial:after{content:"";position:absolute;top:5px;right:5px;bottom:5px;left:5px;border-radius:50%;background:#fff}.focus-dial>*{position:relative;z-index:1;text-align:center}.focus-time{display:block;font-family:var(--font-mono);font-size:23px;font-weight:600;line-height:1.1;letter-spacing:-.03em;color:var(--s-ink)}.focus-time.low{color:var(--s-blue-2)}.focus-state{display:block;margin-top:3px;font-size:10px;color:#a4b0c2;letter-spacing:.04em}.focus-durs{display:flex;gap:4px;margin-bottom:10px}.focus-durs button{height:22px;padding:0 8px;border:1px solid #e6ecf5;border-radius:5px;background:#fff;font-family:var(--font-mono);font-size:10.5px;color:#66758c;cursor:pointer}.focus-durs button:hover:not(:disabled){border-color:#c9dbff;color:var(--s-blue-2)}.focus-durs button.on{background:var(--s-blue-dim);border-color:#c9dbff;color:var(--s-blue-2);font-weight:600}.focus-durs button:disabled{opacity:.5;cursor:default}.focus-btns{display:flex;gap:6px;width:100%}.focus-btns .btn{flex:1;padding-left:8px;padding-right:8px}.focus-stat{display:flex;gap:14px;margin-top:12px;padding-top:10px;border-top:1px solid var(--s-line-2);width:100%;justify-content:center}.desk-foot{display:flex;gap:14px;justify-content:center;width:100%;margin-top:auto;padding-top:11px;border-top:1px solid var(--s-line-2)}.desk-foot div{text-align:center;min-width:0}.desk-foot b{display:block;font-family:var(--font-mono);font-size:15px;font-weight:600;line-height:1.2;letter-spacing:-.02em;color:var(--s-ink)}.desk-foot span{display:block;margin-top:2px;font-size:10px;color:#a4b0c2;white-space:nowrap}.focus-stat div{text-align:center}.focus-stat b{display:block;font-family:var(--font-mono);font-size:14px;font-weight:600;color:var(--s-ink)}.focus-stat span{display:block;margin-top:2px;font-size:10px;color:#a4b0c2}.focus-tip{margin:9px 0 0;font-size:10.5px;line-height:1.7;color:#a4b0c2;text-align:center}.focus-done{margin:8px 0 0;padding:5px 9px;border-radius:6px;background:var(--s-moss-dim);font-size:10.5px;line-height:1.5;color:var(--s-moss);text-align:center}.cal-wrap{display:flex;align-items:flex-start;gap:12px}.cal-y{display:grid;grid-template-rows:repeat(7,16px);gap:5px;font-size:9px;line-height:16px;color:#b3bdcc;text-align:right}.cal-grid{display:grid;grid-template-rows:repeat(7,16px);grid-auto-flow:column;grid-auto-columns:16px;gap:5px}.cal-cell{width:16px;height:16px;border-radius:3px;background:#f2f5fa}.cal-cell.l1{background:#dbe7ff}.cal-cell.l2{background:#a9c4ff}.cal-cell.l3{background:#6494ff}.cal-cell.l4{background:#2f6bff}.cal-cell.future{background:transparent}.cal-cell.today{box-shadow:0 0 0 1.5px #0f1b2d59}.cal-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:11px;font-size:10.5px;color:#97a3b6}.cal-side{flex:1;min-width:0;display:flex;flex-direction:column;gap:7px;padding-top:1px}.cal-side-lbl{font-size:10.5px;color:#97a3b6}.cal-side-note{font-size:10px;line-height:1.6;color:#b3bdcc}.cal-lg{display:flex;align-items:center;gap:3px;font-size:9px;color:#b3bdcc}.cal-lg i{width:9px;height:9px;border-radius:2px;display:block}.cal-num{display:flex;gap:12px;margin-top:10px}.cal-num div{flex:1;padding:7px 9px;border:1px solid var(--s-line-2);border-radius:7px}.cal-num b{display:block;font-family:var(--font-mono);font-size:15px;font-weight:600;line-height:1.1;color:var(--s-ink)}.cal-num b small{font-size:9.5px;font-weight:500;color:#a4b0c2;margin-left:2px}.cal-num span{display:block;margin-top:3px;font-size:10px;color:#a4b0c2}@media (max-width: 1120px){.desk-body{grid-template-columns:minmax(0,1.15fr) 210px minmax(0,.95fr)}}@media (max-width: 720px){.desk-body{grid-template-columns:minmax(0,1fr)}.desk-col+.desk-col{border-left:0;border-top:1px solid var(--s-line-2)}.desk-col:nth-child(3){grid-column:auto}.cal-grid,.cal-y{grid-template-rows:repeat(7,15px)}.cal-grid{grid-auto-columns:15px;gap:5px}.cal-cell{width:15px;height:15px}.focus{max-width:260px;margin:0 auto}.plan-del{opacity:1}.plan-row{min-height:34px}}.desk{margin-bottom:18px}.quizcard{display:block;padding:14px 16px 13px;background:#fff;border:1px solid var(--s-line);border-radius:12px;text-decoration:none;color:inherit;transition:border-color .14s ease,box-shadow .14s ease}.quizcard:hover{border-color:#c9dbff;box-shadow:0 8px 20px -18px #2f6bffe6}.quizcard-h{display:flex;align-items:center;gap:8px}.quizcard-ico{width:24px;height:24px;flex:none;display:grid;place-items:center;border-radius:7px;background:var(--s-blue-dim);color:var(--s-blue)}.quizcard-h b{font-size:13px;font-weight:620;color:var(--s-ink)}.quizcard-h em{margin-left:auto;font-style:normal;font-size:10.5px;color:#a4b0c2}.quizcard-last{display:flex;align-items:baseline;gap:8px;margin-top:10px}.quizcard-last b{font-family:var(--font-mono);font-size:22px;font-weight:600;line-height:1;letter-spacing:-.03em;color:var(--s-blue-2)}.quizcard-last span{font-size:10.5px;color:#97a3b6}.quizcard p{margin:9px 0 0;font-size:11.5px;line-height:1.75;color:#97a3b6}.quizcard-go{display:inline-flex;align-items:center;gap:4px;margin-top:11px;font-size:11.5px;color:var(--s-blue-2)}.qmode{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.qmode-c{display:flex;flex-direction:column;padding:16px;background:#fff;border:1px solid var(--s-line);border-radius:12px}.qmode-ico{width:30px;height:30px;margin-bottom:10px;display:grid;place-items:center;border-radius:8px;background:var(--s-blue-dim);color:var(--s-blue)}.qmode-c b{font-size:14px;font-weight:620;color:var(--s-ink)}.qmode-c p{flex:1;margin:6px 0 0;font-size:11.5px;line-height:1.75;color:#8d9aae}.qmode-f{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:14px;padding-top:12px;border-top:1px solid var(--s-line-2)}.qmode-n{font-size:11px;color:#66758c;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.qmode-c.off{opacity:.55}.qstat{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:-15px -18px 0;padding:14px 18px;border-bottom:1px solid var(--s-line-2)}.qstat div{padding-left:14px;border-left:1px solid var(--s-line-2)}.qstat div:first-child{padding-left:0;border-left:0}.qstat b{display:block;font-family:var(--font-mono);font-size:20px;font-weight:600;line-height:1.1;letter-spacing:-.03em;color:var(--s-ink)}.qstat span{display:block;margin-top:4px;font-size:10.5px;color:#97a3b6}.qkp{display:flex;flex-wrap:wrap;gap:5px;margin-top:14px}.qkp-c{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 9px;border:1px solid #e6ecf5;border-radius:6px;font-size:11px;color:#5b6a80}.qkp-c em{font-style:normal;font-family:var(--font-mono);font-size:10px;color:#a8691a}.qkp-none{margin:0;font-size:11.5px;line-height:1.8;color:#a4b0c2}.qnone{margin:0;font-size:11.5px;line-height:1.9;color:#a4b0c2}.qz-pair{align-items:stretch}.qz-pair>.panel{display:flex;flex-direction:column}.qrec-empty{flex:1;display:flex;flex-direction:column;justify-content:space-between;gap:14px}.qrec-ghost{display:flex;flex-direction:column;gap:0;padding:4px 12px 10px;border:1px dashed #d9e1ee;border-radius:6px;background:#fbfcfe}.qrec-ghost>div{display:flex;align-items:center;gap:10px;padding:8px 0;border-top:1px solid #eef2f8;font-size:11px;color:#c3ccda}.qrec-ghost>div:first-child{border-top:0}.qrec-ghost>div span:nth-child(2){flex:1;color:#b3bdcc}.qrec-ghost b{font-weight:500;color:#c3ccda}.qrec-ghost em{padding-top:8px;font-style:normal;font-size:11px;text-align:center;color:#a4b0c2}.qhist{display:flex;align-items:center;gap:9px;padding:8px 16px;border-top:1px solid var(--s-line-2);font-size:11px;color:#66758c}.qhist:first-child{border-top:0}.qhist-d{font-family:var(--font-mono);font-size:10.5px;color:#8b98ac;flex:none}.qhist-m{flex:none}.qhist-n{font-family:var(--font-mono);font-size:10px;color:#a4b0c2}.qhist-t{font-family:var(--font-mono);font-size:10px;color:#b3bdcc}.qhist b{margin-left:auto;font-family:var(--font-mono);font-size:12px;font-weight:600}.qhist b.moss{color:var(--s-moss)}.qhist b.blue{color:var(--s-blue-2)}.qhist b.amber{color:var(--s-amber)}.qz-top{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin:-24px -28px 18px;padding:12px 28px;background:#fffffff0;border-bottom:1px solid var(--s-line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.qz-top-l{display:flex;align-items:center;gap:10px;min-width:0}.qz-top-l b{display:block;font-size:13.5px;font-weight:620;color:var(--s-ink)}.qz-top-l .micro{display:block;margin-top:2px}.qz-top-r{display:flex;align-items:center;gap:10px}.qz-clock{display:inline-flex;align-items:center;gap:5px;height:30px;padding:0 11px;border:1px solid #dfe6f2;border-radius:7px;background:#fff;font-family:var(--font-mono);font-size:13px;color:var(--s-ink-2)}.qz-clock.low{border-color:#f3cdc9;background:#fdf3f2;color:var(--s-red)}.qz-grid{display:grid;grid-template-columns:minmax(0,1fr) 216px;gap:18px;align-items:start}.qz-main{min-width:0}.qz-step{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-bottom:12px}.qz-step-n{font-family:var(--font-mono);font-size:22px;font-weight:600;line-height:1;letter-spacing:-.03em;color:var(--s-ink)}.qz-step-n em{font-style:normal;font-size:11px;font-weight:500;color:#b3bdcc}.qz-step-kp{font-size:11px;color:#66758c;padding:3px 8px;border-radius:5px;background:#f4f7fc}.qz-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px}.qz-nav-mid{font-size:11.5px;color:#97a3b6}.qz-note{display:flex;align-items:center;gap:6px;margin:14px 0 0;font-size:10.5px;color:#a4b0c2}.qz-side{position:sticky;top:74px}.qz-side-card{padding:14px;background:#fff;border:1px solid var(--s-line);border-radius:12px}.qz-side-h{font-size:11.5px;font-weight:600;color:#4a5a72;margin-bottom:10px}.qz-dots{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}.qz-dots button{height:28px;border-radius:6px;border:1px solid #e6ecf5;background:#fff;font-family:var(--font-mono);font-size:11px;color:#97a3b6;cursor:pointer}.qz-dots button.done{background:var(--s-blue-dim);border-color:#c9dbff;color:var(--s-blue-2)}.qz-dots button.miss{background:#fff}.qz-dots button.now{border-color:var(--s-blue);color:var(--s-blue);font-weight:600;box-shadow:0 0 0 2px #2f6bff1f}.qz-legend{display:flex;gap:10px;margin-top:10px;font-size:9.5px;color:#a4b0c2}.qz-legend span{display:inline-flex;align-items:center;gap:4px}.qz-legend .dot{width:7px;height:7px;border-radius:2px;display:block;background:#fff;border:1px solid #dde5f0}.qz-legend .dot.done{background:#dbe7ff;border-color:#c9dbff}.qz-legend .dot.now{background:#fff;border-color:var(--s-blue)}.qz-tbar{height:4px;margin-top:14px;border-radius:2px;background:#f1f4fa;overflow:hidden}.qz-tbar i{display:block;height:100%;border-radius:2px;background:var(--s-blue);transition:width .4s linear}.qz-tbar i.low{background:#d0463a}.qz-side-tip{margin:10px 0 0;font-size:10.5px;line-height:1.7;color:#a4b0c2}.qz-kps{display:flex;flex-direction:column;gap:1px}.qz-kps span{display:flex;align-items:baseline;justify-content:space-between;gap:8px;padding:4px 0;font-size:11px;color:var(--s-ink-2)}.qz-kps i{font-style:normal;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.qz-kps em{font-style:normal;font-family:var(--font-mono);font-size:10px;color:#a4b0c2;flex:none}.qz-list{margin-top:18px;background:#fff;border:1px solid var(--s-line);border-radius:12px;overflow:hidden}.qz-list-h{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:11px 14px;border-bottom:1px solid var(--s-line-2);font-size:11.5px;font-weight:600;color:#4a5a72}.qz-list-h span{font-size:10.5px;font-weight:400;color:#a4b0c2}.qz-li{display:grid;grid-template-columns:24px 48px minmax(0,1fr) 118px 38px;align-items:center;gap:10px;width:100%;padding:9px 14px;border:0;border-top:1px solid var(--s-line-2);background:none;font-family:inherit;text-align:left;cursor:pointer}.qz-list-h+.qz-li{border-top:0}.qz-li:hover{background:#fafcff}.qz-li.now{background:#f5f9ff}.qz-li-n{font-family:var(--font-mono);font-size:10px;color:#b3bdcc}.qz-li-type{font-size:10.5px;color:#8b98ac}.qz-li-stem{font-size:11.5px;color:var(--s-ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.qz-li-kp{font-size:10.5px;color:#a4b0c2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.qz-li-st{font-size:10px;color:#c3ccdb;text-align:right}.qz-li-st.done{color:var(--s-blue-2)}.qpool{display:grid;grid-template-columns:26px minmax(0,1fr) 130px auto;align-items:center;gap:10px;padding:9px 16px;border-top:1px solid var(--s-line-2);font-size:11.5px}.qpool:first-child{border-top:0}.qpool-n{font-family:var(--font-mono);font-size:10px;color:#b3bdcc}.qpool-stem{color:var(--s-ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.qpool-kp{font-size:10.5px;color:#97a3b6;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.qrep-hero{display:flex;align-items:center;gap:26px;padding:18px 22px;margin-bottom:18px;background:#fff;border:1px solid var(--s-line);border-radius:12px}.qrep-nums{flex:1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}.qrep-nums div{padding-left:20px;border-left:1px solid var(--s-line-2)}.qrep-nums div:first-child{padding-left:0;border-left:0}.qrep-nums b{display:block;font-family:var(--font-mono);font-size:24px;font-weight:600;line-height:1.1;letter-spacing:-.03em;color:var(--s-ink)}.qrep-nums b em{font-style:normal;font-size:11px;font-weight:500;color:#b3bdcc}.qrep-nums span{display:block;margin-top:5px;font-size:10.5px;color:#97a3b6}.qrep-nums b.moss{color:var(--s-moss)}.qrep-nums b.amber{color:var(--s-amber)}.qrep-body{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:18px;align-items:start}.qres{border-top:1px solid var(--s-line-2)}.qres:first-child{border-top:0}.qres-row{width:100%;display:grid;grid-template-columns:20px 24px minmax(0,1fr) 118px 52px 14px;align-items:center;gap:9px;padding:10px 16px;border:0;background:none;text-align:left;font-family:inherit;cursor:pointer}.qres-row:hover{background:#fafcff}.qres-mark{width:18px;height:18px;border-radius:50%;display:grid;place-items:center}.qres-mark.ok{background:var(--s-moss-dim);color:var(--s-moss)}.qres-mark.bad{background:#fdf1ef;color:var(--s-red)}.qres-no{font-size:10px;color:#b3bdcc}.qres-stem{font-size:12px;color:var(--s-ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.qres-kp{font-size:10.5px;color:#97a3b6;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.qres-sc{font-size:11px;color:#8b98ac;text-align:right}.qres-open{padding:0 16px 14px 59px}.qres-line{display:flex;align-items:baseline;gap:8px;margin-bottom:9px;font-size:11.5px}.qres-line .micro{flex:none}.qres-line b{font-weight:500;color:var(--s-ink-2);overflow-wrap:anywhere}.qres-line b.ok{color:var(--s-moss)}.qres-line b.bad{color:var(--s-red)}.qres-open .qcard{box-shadow:none;border-color:var(--s-line-2)}.qres-mis{margin:8px 0 0;font-size:10.5px;color:#a4b0c2}.qkps{display:flex;flex-direction:column;gap:9px}.qkps-row{display:grid;grid-template-columns:minmax(0,1fr) 62px 28px;align-items:center;gap:9px}.qkps-n{font-size:11.5px;color:#4a5a72;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.qkps-t{height:5px;border-radius:3px;background:#f1f4fa;overflow:hidden}.qkps-t i{display:block;height:100%;border-radius:3px;background:#2f6bff}.qkps-t i.moss{background:#2f9e77}.qkps-t i.amber{background:#d99a2b}.qkps-t i.red{background:#d0463a}.qkps-row b{font-family:var(--font-mono);font-size:10px;font-weight:600;text-align:right}.qkps-row b.moss{color:var(--s-moss)}.qkps-row b.amber{color:var(--s-amber)}.qkps-row b.red{color:var(--s-red)}.qrep-tip{margin:14px 0 0;padding-top:12px;border-top:1px solid var(--s-line-2);font-size:11px;line-height:1.85;color:#97a3b6}.qrep-btns{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap}.qsrc{display:flex;align-items:center;gap:8px;padding:5px 0;font-size:11.5px;color:var(--s-ink-2);min-width:0}@media (max-width: 1080px){.qmode,.qrep-body{grid-template-columns:minmax(0,1fr)}.qrep-hero{flex-wrap:wrap}}@media (max-width: 900px){.qz-grid{grid-template-columns:minmax(0,1fr)}.qz-side{position:static;order:-1}.qz-dots{grid-template-columns:repeat(10,minmax(0,1fr))}.qz-top{margin-left:-20px;margin-right:-20px;padding-left:20px;padding-right:20px}.qrep-nums{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 0}.qrep-nums div:nth-child(3){padding-left:0;border-left:0}.qres-row{grid-template-columns:20px 24px minmax(0,1fr) 52px 14px}.qres-kp{display:none}.qz-li{grid-template-columns:24px 48px minmax(0,1fr) 38px}.qz-li-kp{display:none}.qpool{grid-template-columns:22px minmax(0,1fr) auto}.qpool-kp{display:none}.qres-open{padding-left:20px}.qstat{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 0}.qstat div:nth-child(3){padding-left:0;border-left:0}}.rp-back{display:inline-flex;align-items:center;gap:4px;color:#66758c}.rp-back:hover{color:var(--s-blue)}.rp-sep{margin:0 6px;color:#c3cddd}.rp-syn{margin-left:8px;color:#a8691a}.rp-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:#fff;border:1px solid var(--s-line);border-radius:6px;overflow:hidden}.rp-kpis>div{padding:13px 18px 14px;min-width:0}.rp-kpis>div+div{border-left:1px solid var(--s-line-2)}.rp-kpis span{display:block;font-size:11.5px;color:#8d9aae;letter-spacing:.02em}.rp-kpis b{display:inline-block;margin-top:3px;font-family:var(--font-mono, ui-monospace, monospace);font-size:23px;font-weight:600;color:#0f1b2d;letter-spacing:-.01em}.rp-kpis b small{margin-left:2px;font-size:11.5px;font-weight:400;color:#8d9aae}.rp-kpis em{display:block;margin-top:1px;font-size:11px;font-style:normal;color:#a4b0c2}.rp-grid{display:grid;grid-template-columns:minmax(0,1fr) 296px;gap:16px;margin-top:16px;align-items:start}.rp-stage{padding:16px 18px 18px;min-width:0}.rp-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.rp-head b{font-size:13px;color:#0f1b2d}.rp-head span{font-size:11.5px;color:#a4b0c2}.rp-ribbon{position:relative;display:flex;gap:2px;height:46px;margin:12px 0 10px;padding:5px;background:#f7f9fd;border:1px solid var(--s-line-2);border-radius:5px;cursor:pointer;overflow:hidden;-webkit-user-select:none;user-select:none}.rp-seg{position:relative;height:100%;border-radius:2px;display:flex;align-items:center;justify-content:center;min-width:2px;transition:box-shadow .15s ease}.rp-seg i{font-size:10.5px;font-style:normal;font-family:var(--font-mono, ui-monospace, monospace);opacity:.75}.rp-seg.ok{background:#dfe9fb;color:#1d4fd8}.rp-seg.bad{background:#fbe4e1;color:#b4322a}.rp-seg.skip{background:#eef1f6;color:#939fb2;box-shadow:inset 0 0 0 1px #e1e7f0}.rp-seg.on{box-shadow:inset 0 0 0 1.5px currentColor;z-index:2}.rp-playhead{position:absolute;top:2px;bottom:2px;width:2px;margin-left:-1px;background:#0f1b2d;border-radius:1px;pointer-events:none;box-shadow:0 0 0 1px #ffffffd9}.rp-playhead:before{content:"";position:absolute;top:-1px;left:-3px;width:8px;height:8px;border-radius:50%;background:#0f1b2d}.rp-ctrl{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.rp-play{width:34px;height:34px;flex:none;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;border:0;background:var(--s-blue);color:#fff;cursor:pointer;transition:background .16s ease,transform .16s ease}.rp-play:hover{background:var(--s-blue-2)}.rp-play:active{transform:scale(.94)}.rp-clock{font-size:15px;color:#0f1b2d;letter-spacing:.02em}.rp-clock em{font-style:normal;font-size:12px;color:#a4b0c2}.rp-speeds{display:inline-flex;padding:2px;background:#f4f7fc;border-radius:4px}.rp-speeds button{padding:3px 8px;border:0;border-radius:3px;background:transparent;font-size:11.5px;color:#7a879b;cursor:pointer;font-family:inherit}.rp-speeds button.on{background:#fff;color:var(--s-blue);box-shadow:0 0 0 1px var(--s-line)}.rp-tip{margin-left:auto;font-size:11.5px;color:#a4b0c2}.rp-now{margin-top:14px;padding-top:13px;border-top:1px solid var(--s-line-2);min-height:112px}.rp-now-h{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.rp-no{font-size:19px;color:#c3cddd;letter-spacing:-.02em}.rp-now-h b{font-size:13px;color:#0f1b2d}.rp-chg{font-size:11px;color:#a8691a;background:#fdf5e6;padding:2px 7px;border-radius:3px}.rp-verdict{margin-left:auto;font-size:11.5px;color:#a4b0c2}.rp-verdict.ok{color:var(--s-moss)}.rp-verdict.bad{color:var(--s-red)}.rp-stem{margin:8px 0 0;font-size:13px;line-height:1.75;color:#33415a;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.rp-live{display:flex;align-items:center;gap:9px;margin-top:10px}.rp-live-lbl{font-size:11.5px;color:#8d9aae}.rp-live b{font-family:var(--font-mono, ui-monospace, monospace);font-size:15px;color:#1d4fd8}.rp-live b.bad{color:var(--s-red)}.rp-note{font-size:11.5px;color:#a4b0c2}.rp-feed{margin-top:14px;padding-top:12px;border-top:1px solid var(--s-line-2)}.rp-feed-h{font-size:11.5px;font-weight:600;color:#4a5a72;letter-spacing:.02em;margin-bottom:6px}.rp-feed-list{display:flex;flex-direction:column}.rp-feed-row{display:grid;grid-template-columns:52px 58px minmax(0,1fr);align-items:center;gap:8px;padding:5px 6px;border:0;border-radius:3px;background:transparent;text-align:left;font-size:12px;color:#66758c;cursor:pointer;font-family:inherit}.rp-feed-row:hover{background:#f7f9fd}.rp-feed-row .mono{color:#a4b0c2;font-size:11.5px}.rp-feed-v{justify-self:start;padding:1px 7px;border-radius:3px;background:#f1f4fa;color:#33415a;font-family:var(--font-mono, ui-monospace, monospace);font-size:11.5px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rp-feed-v.now{background:var(--s-blue-dim);color:var(--s-blue-2)}.rp-feed-empty{margin:4px 0 2px;font-size:12px;color:#a4b0c2}.rp-side{display:flex;flex-direction:column;gap:12px;min-width:0}.rp-card{background:#fff;border:1px solid var(--s-line);border-radius:6px;padding:14px 16px 15px}.rp-card-flat{background:#fbfcfe}.rp-card-h{display:flex;align-items:center;gap:6px;font-size:11.5px;font-weight:600;color:#4a5a72;letter-spacing:.02em;margin-bottom:6px}.rp-card-h svg{color:#8d9aae}.rp-big{display:block;font-family:var(--font-mono, ui-monospace, monospace);font-size:23px;font-weight:600;color:#0f1b2d;letter-spacing:-.01em;margin:2px 0 4px}.rp-big small{font-family:var(--font-sans, inherit);font-size:11px;font-weight:400;color:#a4b0c2}.rp-card p{margin:0;font-size:12px;line-height:1.75;color:#66758c}.rp-card p em{font-style:normal;color:#33415a;background:#f1f4fa;padding:0 4px;border-radius:2px}.rp-link{display:inline-flex;align-items:center;gap:4px;margin-top:9px;padding:0;border:0;background:none;font-family:inherit;font-size:11.5px;color:var(--s-blue);cursor:pointer}.rp-link:hover{color:var(--s-blue-2);text-decoration:underline}.rp-table{margin-top:16px}.rp-tbl{margin-top:-2px}.rp-tr{display:grid;grid-template-columns:48px 52px 74px 48px 48px minmax(0,1fr) 76px;align-items:center;gap:10px;width:100%;padding:9px 18px;border:0;border-top:1px solid var(--s-line-2);background:transparent;font-family:inherit;font-size:12.5px;color:#33415a;text-align:left;cursor:pointer}.rp-tr:not(.rp-th):hover{background:#f8fafd}.rp-tr.on{background:#f3f7ff;box-shadow:inset 2px 0 0 var(--s-blue)}.rp-th{font-size:11px;color:#8d9aae;background:#fafbfe;cursor:default;padding-top:8px;padding-bottom:8px}.rp-ans{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#66758c}.rp-res{font-family:var(--font-mono, ui-monospace, monospace);font-size:12px}.rp-res.ok{color:var(--s-moss)}.rp-res.bad{color:var(--s-red)}@media (max-width: 1180px){.rp-grid{grid-template-columns:minmax(0,1fr)}.rp-side{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 760px){.rp-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.rp-kpis>div:nth-child(3){border-left:0;border-top:1px solid var(--s-line-2)}.rp-kpis>div:nth-child(4){border-top:1px solid var(--s-line-2)}.rp-side{grid-template-columns:minmax(0,1fr)}.rp-stage{padding:14px 14px 16px}.rp-ribbon{height:40px}.rp-tip{display:none}.rp-tr{grid-template-columns:34px 44px 66px 46px minmax(0,1fr) 62px;gap:6px;padding:9px 12px}.rp-tr>span:nth-child(4){display:none}.rp-th>span:nth-child(4){display:none}.rp-no{font-size:16px}}.gr-tabs{display:flex;gap:4px;margin-bottom:16px;padding:4px;background:#fff;border:1px solid var(--s-line);border-radius:6px;width:fit-content}.gr-tabs button{display:inline-flex;align-items:center;gap:6px;padding:7px 13px;border:0;border-radius:4px;background:transparent;font-family:inherit;font-size:12.5px;color:#66758c;cursor:pointer}.gr-tabs button:hover{background:#f7f9fd}.gr-tabs button.on{background:var(--s-blue-dim);color:var(--s-blue-2)}.gr-fresh{display:flex;align-items:center;gap:10px;margin-bottom:14px;padding:11px 14px;background:#fbf6ea;border:1px solid #f0e2c4;border-radius:6px;font-size:12.5px;color:#7a5312}.gr-fresh b{font-weight:600}.gr-fresh span{color:#96703a;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gr-fresh button{margin-left:auto;border:0;background:none;color:#a9855a;cursor:pointer;padding:2px}.pc-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:16px;align-items:stretch}.pc-card{position:relative;display:flex;flex-direction:column;overflow:hidden;padding:24px 28px 26px;background:#fff;border:1px solid var(--s-line);border-radius:8px}.pc-watermark{position:absolute;right:14px;top:-14px;font-family:var(--font-mono, ui-monospace, monospace);font-size:104px;font-weight:600;letter-spacing:-.05em;color:#f4f7fc;-webkit-user-select:none;user-select:none;pointer-events:none}.pc-card>*:not(.pc-watermark){position:relative}.pc-eyebrow{display:flex;align-items:baseline;gap:10px;font-size:11.5px;letter-spacing:.08em;color:#8d9aae}.pc-eyebrow em{font-style:normal;letter-spacing:0;color:#a8691a}.pc-code{margin-top:18px;font-size:13px;letter-spacing:.34em;color:var(--s-blue)}.pc-name{margin:8px 0 10px;font-size:30px;font-weight:500;letter-spacing:-.01em;color:#0f1b2d}.pc-desc{margin:0;max-width:30em;font-size:13.5px;line-height:1.95;color:#4a5a72}.pc-traits{display:flex;gap:6px;flex-wrap:wrap;margin:14px 0 26px}.pc-traits span{padding:3px 9px;border-radius:3px;background:#f4f7fc;font-size:11.5px;color:#5a6a80}.pc-axes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 30px;margin-top:auto;padding-top:20px;border-top:1px solid var(--s-line-2)}.pc-axis-h{display:flex;align-items:baseline;justify-content:space-between;gap:8px;font-size:11px;color:#a4b0c2}.pc-axis-h b{font-size:12px;font-weight:600;color:#33415a;letter-spacing:.02em}.pc-axis-h b em{margin-left:5px;font-style:normal;font-weight:400;font-size:10.5px;color:#a4b0c2}.pc-axis-t{position:relative;height:6px;margin-top:8px;border-radius:3px;background:#e9eef7}.pc-axis-t:after{content:"";position:absolute;left:50%;top:-2px;bottom:-2px;width:1px;background:#d7dfec}.pc-axis-t i{display:block;height:100%;border-radius:3px;background:var(--s-blue);transition:width .5s ease}.pc-axis-t em{position:absolute;top:50%;width:10px;height:10px;border-radius:50%;background:#fff;border:2px solid var(--s-blue);transform:translate(-50%,-50%)}.pc-side{display:flex;flex-direction:column;gap:12px}.pc-note{padding:15px 18px 16px;background:#fff;border:1px solid var(--s-line);border-radius:6px}.pc-note-flat{background:#fbfcfe}.pc-note-h{display:flex;align-items:center;gap:6px;margin-bottom:7px;font-size:11.5px;font-weight:600;letter-spacing:.03em;color:#4a5a72}.pc-note-h svg{color:#8d9aae}.pc-note p{margin:0;font-size:12.5px;line-height:1.85;color:#66758c}.pc-partner{display:flex;align-items:baseline;gap:10px;margin:2px 0 8px}.pc-partner b{font-size:18px;letter-spacing:.12em;color:var(--s-blue)}.pc-partner span{font-size:13px;color:#33415a}.pc-how{margin:0 0 10px;padding:0;list-style:none}.pc-how li{position:relative;padding-left:11px;font-size:12px;line-height:1.95;color:#66758c}.pc-how li:before{content:"";position:absolute;left:2px;top:9px;width:3px;height:3px;border-radius:50%;background:#c3cddd}.pc-src{padding-top:9px;border-top:1px solid var(--s-line-2);font-size:11.5px!important;color:#a4b0c2!important}.tr-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:16px;align-items:start}.tr-hero{display:flex;gap:22px;padding:22px 26px 24px;background:#fff;border:1px solid;border-radius:8px}.tr-emblem{width:118px;height:130px;flex:none}.tr-hero-t{min-width:0;flex:1}.tr-lbl{font-size:11px;letter-spacing:.08em;color:#8d9aae}.tr-hero-t h2{margin:4px 0 2px;font-size:27px;font-weight:500;letter-spacing:.02em}.tr-hero-t>p{margin:0;font-size:12px;color:#8d9aae}.tr-score{display:flex;align-items:baseline;gap:8px;margin-top:14px}.tr-score>b{font-size:34px;font-weight:600;letter-spacing:-.02em;color:#0f1b2d;line-height:1}.tr-score>span{font-size:11.5px;color:#8d9aae}.tr-score em{margin-left:auto;font-style:normal;font-size:11.5px;color:#8d9aae}.tr-score em b{color:#33415a}.tr-prog{height:7px;margin-top:12px;border-radius:4px;background:#f1f4fa;overflow:hidden}.tr-prog i{display:block;height:100%;border-radius:4px;transition:width .5s ease}.tr-next{display:flex;justify-content:space-between;margin-top:5px;font-size:10.5px;color:#a4b0c2}.tr-parts{min-width:0}.tr-part-list{padding:4px 18px 2px}.tr-part{display:grid;grid-template-columns:76px minmax(0,1fr) 46px;align-items:center;gap:10px;padding:8px 0}.tr-part+.tr-part{border-top:1px solid var(--s-line-2)}.tr-part-l{font-size:12px;color:#4a5a72}.tr-part-t{height:5px;border-radius:3px;background:#f1f4fa;overflow:hidden}.tr-part-t i{display:block;height:100%;background:#a9c4ff;border-radius:3px}.tr-part b{font-size:12.5px;color:#0f1b2d;text-align:right}.tr-part em{grid-column:2 / -1;font-style:normal;font-size:10.5px;color:#a4b0c2;margin-top:-4px}.tr-rule{margin:6px 18px 16px;padding-top:10px;border-top:1px solid var(--s-line-2);font-size:11.5px;line-height:1.85;color:#a4b0c2}.tr-ladder{grid-column:1 / -1;padding-bottom:18px}.tr-steps{display:flex;justify-content:space-between;gap:4px;padding:16px 22px 4px;position:relative}.tr-steps:before{content:"";position:absolute;left:34px;right:34px;top:20px;height:1px;background:var(--s-line);z-index:0}.tr-step{position:relative;display:flex;flex-direction:column;align-items:center;gap:3px;min-width:0;flex:1}.tr-dot{width:9px;height:9px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1px var(--s-line);margin-bottom:2px;position:relative;z-index:1}.tr-step b{font-size:12px;font-weight:500;color:#8d9aae}.tr-step em{font-style:normal;font-size:10.5px;color:#b3bdcc}.tr-step.passed b{color:#66758c}.tr-step.on b{color:#0f1b2d;font-weight:600}.tr-step.on em{color:#66758c}.tr-record{grid-column:1 / -1}.tr-squares{display:flex;gap:4px;flex-wrap:wrap;padding:14px 18px 4px}.tr-sq{width:22px;height:22px;border-radius:3px;background:#f1f4fa}.tr-sq.a{background:#bfe3d4}.tr-sq.b{background:#c7d9fb}.tr-sq.c{background:#f6ddc0}.tr-list{padding:8px 18px 14px}.tr-list>div{display:flex;align-items:center;gap:12px;padding:7px 0;font-size:12px;color:#4a5a72}.tr-list>div+div{border-top:1px solid var(--s-line-2)}.tr-list-t{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tr-list em{font-style:normal;font-size:11px;color:#a4b0c2}.tr-empty{padding:4px 18px 18px;margin:0;font-size:12px;color:#a4b0c2}.ac-sum{display:flex;align-items:center;gap:18px;padding:15px 20px;margin-bottom:14px;background:#fff;border:1px solid var(--s-line);border-radius:6px}.ac-sum>div:first-child{display:flex;align-items:baseline;gap:6px;flex:none}.ac-sum b{font-size:26px;font-weight:600;color:#0f1b2d;line-height:1}.ac-sum b small{font-size:13px;font-weight:400;color:#a4b0c2}.ac-sum span{font-size:11.5px;color:#8d9aae}.ac-sum-bar{flex:1;min-width:90px;max-width:300px;height:5px;border-radius:3px;background:#f1f4fa;overflow:hidden}.ac-sum-bar i{display:block;height:100%;background:#a9c4ff;border-radius:3px}.ac-sum p{margin:0;flex:1;text-align:right;font-size:11.5px;color:#a4b0c2}.ac-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.ac-card{display:flex;align-items:flex-start;gap:11px;padding:14px 15px;background:#fff;border:1px solid var(--s-line);border-radius:6px;position:relative;min-width:0}.ac-ico{width:34px;height:34px;flex:none;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;background:#f4f7fc;color:#a4b0c2}.ac-card.done .ac-ico{background:var(--s-blue-dim);color:var(--s-blue)}.ac-card.done.gold .ac-ico{background:#fbf3e2;color:#a8791f}.ac-body{min-width:0;flex:1}.ac-h{display:flex;align-items:baseline;gap:8px}.ac-h b{font-size:12.5px;font-weight:600;color:#8d9aae;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ac-card.done .ac-h b{color:#0f1b2d}.ac-h em{font-style:normal;font-size:10.5px;color:#b3bdcc;margin-left:auto;flex:none}.ac-body p{margin:3px 0 0;font-size:11.5px;line-height:1.6;color:#a4b0c2}.ac-card.done .ac-body p{color:#7a879b}.ac-prog{display:flex;align-items:center;gap:7px;margin-top:7px}.ac-prog i{display:block;height:4px;border-radius:2px;background:#cfe0ff;min-width:2px}.ac-prog span{font-size:10.5px;color:#a4b0c2;flex:none}.ac-lock{position:absolute;top:12px;right:12px;width:5px;height:5px;border-radius:50%;background:#e6ebf3}@media (max-width: 1180px){.pc-grid,.tr-grid{grid-template-columns:minmax(0,1fr)}.tr-ladder,.tr-record{grid-column:auto}.ac-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 760px){.gr-tabs{width:100%;overflow-x:auto}.gr-tabs button{flex:none}.pc-card{padding:20px 18px 22px}.pc-name{font-size:25px}.pc-watermark{font-size:76px;top:-8px}.pc-axes{grid-template-columns:minmax(0,1fr);gap:14px}.tr-hero{flex-direction:column;gap:8px;align-items:flex-start}.tr-emblem{width:88px;height:98px}.tr-score em{margin-left:0;width:100%}.tr-steps{overflow-x:auto;padding-left:12px;padding-right:12px}.tr-steps:before{display:none}.tr-step{flex:none;min-width:54px}.ac-grid{grid-template-columns:minmax(0,1fr)}.ac-sum{flex-wrap:wrap;gap:10px}.ac-sum-bar{order:3;width:100%;max-width:none}.ac-sum p{order:4;width:100%}}.pstrip{display:grid;grid-template-columns:60px minmax(0,1fr) 300px;gap:22px;align-items:center;padding:15px 20px 16px;margin-bottom:18px;background:#fff;border:1px solid var(--s-line);border-radius:6px}.pstrip-code{display:grid;grid-template-columns:repeat(2,1fr);gap:3px;width:56px}.pstrip-code i{display:flex;align-items:center;justify-content:center;height:26px;border:1px solid #e4eaf4;border-radius:3px;background:#fbfcfe;font-family:var(--font-mono);font-style:normal;font-size:12px;color:#33415a}.pstrip-main{min-width:0}.pstrip-t{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.pstrip-t b{font-size:16px;font-weight:600;color:var(--s-ink)}.pstrip-t em{font-style:normal;font-size:10.5px;color:#a4b0c2}.pstrip-main p{margin:4px 0 0;font-size:12.5px;line-height:1.7;color:#66758c}.pstrip-traits{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.pstrip-traits span{padding:2px 8px;border-radius:3px;background:#f4f7fc;font-size:11px;color:#5a6b83}.pstrip-tip{margin:7px 0 0;font-size:11.5px;line-height:1.65;color:#8d9aae}.pstrip-tip b{font-weight:500;color:#66758c}.pstrip-axes{display:grid;grid-template-columns:minmax(0,1fr);gap:7px}.pstrip-axes>div{display:grid;grid-template-columns:26px minmax(0,1fr) 20px;align-items:center;gap:6px}.pstrip-axes span{font-size:10.5px;color:#a4b0c2}.pstrip-axes i{display:block;height:4px;border-radius:2px;background:#f1f4fa;overflow:hidden}.pstrip-axes i b{display:block;height:100%;background:#a9c4ff}.pstrip-axes em{font-style:normal;text-align:right;font-size:10.5px;color:#7a879b}@media (max-width: 900px){.pstrip{grid-template-columns:68px minmax(0,1fr)}.pstrip-axes{grid-column:1 / -1;grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 560px){.pstrip{grid-template-columns:minmax(0,1fr)}.pstrip-code{display:none}}.tr-board{grid-column:1 / -1;padding-bottom:4px}.trb-head,.trb-row{display:grid;grid-template-columns:52px minmax(0,1fr) 84px 96px 108px;align-items:center;gap:12px}.trb-head{padding:11px 20px 9px;font-size:11px;color:#97a3b6;border-bottom:1px solid #eef2f8}.trb-num{text-align:right}.trb-row{padding:9px 20px;font-size:13px;border-bottom:1px solid #f5f8fc}.trb-row:last-child{border-bottom:0}.trb-row.me{background:linear-gradient(90deg,rgba(47,107,255,.06),transparent 55%);box-shadow:inset 3px 0 #2f6bff}.trb-no{font-family:var(--font-mono);font-size:14px;color:#8d9aae;text-align:center}.trb-no.p1{color:#a8791f;font-weight:600}.trb-no.p2{color:#6f7d90;font-weight:600}.trb-no.p3{color:#9a6b45;font-weight:600}.trb-name{display:flex;align-items:center;gap:8px;min-width:0;font-weight:500;color:var(--s-ink, #1d2b45)}.trb-name em{flex:none;padding:1px 5px;border-radius:3px;font-style:normal;font-size:10px;background:#2f6bff1a;color:#2f6bff}.trb-name i{flex:none;font-style:normal;font-size:11px;color:#a3aec0}.trb-tier{justify-self:start;padding:2px 8px;border-radius:4px;font-size:11px;white-space:nowrap}.trb-foot{margin:0;padding:12px 20px 2px;font-size:12.5px;color:#6d7c92}.trb-foot b{font-family:var(--font-mono);color:#2f6bff}.trb-note{margin:0;padding:5px 20px 14px;font-size:11px;line-height:1.75;color:#9aa6b8}@media (max-width: 760px){.trb-head,.trb-row{grid-template-columns:34px minmax(0,1fr) 72px 74px;gap:8px;padding-left:14px;padding-right:14px}.trb-head span:last-child,.trb-row>span:last-child{display:none}.trb-name i{display:none}.trb-foot,.trb-note{padding-left:14px;padding-right:14px}}.trb-gap{padding:6px 20px;font-size:11px;color:#a9b4c6;text-align:center;border-bottom:1px dashed #eef2f8;background:#fcfdff}.rc-pick{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;padding:12px 18px;margin-bottom:0;background:#fff;border:1px solid var(--s-line);border-radius:6px}.rc-pick label{display:flex;align-items:center;gap:10px;min-width:0}.rc-pick label>span{font-size:11.5px;color:#8d9aae;flex:none}.rc-pick select{height:34px;max-width:420px;padding:0 10px;border:1px solid var(--s-line);border-radius:4px;background:#fff;font-family:inherit;font-size:12.5px;color:#33415a}.rc-pick-meta{display:flex;gap:26px}.rc-pick-meta>div{display:flex;flex-direction:column;gap:1px}.rc-pick-meta span{font-size:10.5px;color:#a4b0c2}.rc-pick-meta b{font-size:14px;font-weight:600;color:#0f1b2d}.rc-wrap{margin-top:16px;background:#fff;border:1px solid var(--s-line);border-radius:8px;box-shadow:0 1px 2px #0f1b2d0a,0 10px 28px -12px #0f1b2d1a;overflow:hidden}.rc-bar{display:flex;align-items:center;gap:14px;padding:11px 18px;border-bottom:1px solid var(--s-line-2);background:linear-gradient(180deg,#fff,#fbfcfe)}.rc-modes{display:inline-flex;gap:2px;padding:3px;background:#f1f4fa;border-radius:5px}.rc-modes button{padding:6px 13px;border:0;border-radius:4px;background:transparent;font-family:inherit;font-size:12.5px;color:#66758c;cursor:pointer;transition:color .15s,background .15s,box-shadow .15s}.rc-modes button:hover{color:#33415a}.rc-modes button.on{background:#fff;color:var(--s-blue-2);box-shadow:0 0 0 1px var(--s-line),0 1px 2px #0f1b2d0f}.rc-unit{font-size:11.5px;color:#a4b0c2}.rc-replay{margin-left:auto}.rc-cue{display:inline-flex;align-items:center;gap:6px;min-width:74px;margin-left:auto;padding:3px 9px;border-radius:3px;background:#f4f7fc;font-size:11.5px;font-weight:600;color:#66758c;transition:background .2s,color .2s}.rc-cue+.rc-replay{margin-left:0}.rc-cue i{width:6px;height:6px;border-radius:50%;background:#b8c2d1}.rc-cue.run{background:#eaf1ff;color:var(--s-blue-2)}.rc-cue.run i{background:var(--s-blue);animation:rcPulse .9s ease-in-out infinite}.rc-cue.done{background:#e9f5ef;color:#1c7a55}.rc-cue.done i{background:#1c7a55}@keyframes rcPulse{50%{transform:scale(1.6);opacity:.45}}.rc-board{position:relative;padding:8px 18px 16px}.rc-scale{display:grid;grid-template-columns:112px minmax(0,1fr) 66px;align-items:center;height:26px}.rc-scale>div{position:relative;height:100%}.rc-scale i{position:absolute;top:9px;transform:translate(-50%);font-style:normal;font-size:10.5px;color:#a4b0c2;white-space:nowrap}.rc-scale i:first-child{transform:none}.rc-scale i:last-child{transform:translate(-100%)}.rc-scale i.goal{color:#66758c;font-weight:600}.rc-grid{position:absolute;top:34px;bottom:16px;left:130px;right:84px;pointer-events:none}.rc-gl{position:absolute;top:0;bottom:0;width:1px;margin-left:-.5px;background:repeating-linear-gradient(180deg,#e6ecf5 0 3px,transparent 3px 7px)}.rc-gl.start{background:#cfd8e6}.rc-gl.goal{width:6px;margin-left:-3px;background-color:#fff;background-image:repeating-conic-gradient(#c9d3e2 0,#c9d3e2 25%,#fff 0,#fff 50%);background-size:6px 6px;border-radius:1px;opacity:.85}.rc-lane{display:grid;grid-template-columns:112px minmax(0,1fr) 66px;align-items:center;height:38px;border-radius:4px;transition:background .3s}.rc-lane:nth-child(odd){background:#fafcff}.rc-lane.me,.rc-lane.me:nth-child(odd){background:#f1f6ff;box-shadow:inset 2px 0 0 var(--s-blue)}.rc-who{display:flex;align-items:center;gap:7px;min-width:0;padding-left:8px}.rc-who em{width:18px;height:18px;flex:none;display:inline-flex;align-items:center;justify-content:center;border-radius:3px;font-style:normal;font-size:11px;color:#a4b0c2;transition:background .35s,color .35s}.rc-who b{min-width:0;font-size:12.5px;font-weight:400;color:#4a5a72;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rc-lane.me .rc-who b{font-weight:600;color:#0f1b2d}.rc-lane.m1 .rc-who em{background:#ecd9ae;color:#6f4a0f;font-weight:700}.rc-lane.m2 .rc-who em{background:#dfe5ef;color:#4f5e75;font-weight:700}.rc-lane.m3 .rc-who em{background:#efdfd0;color:#7a4a33;font-weight:700}.rc-track{position:relative;height:100%}.rc-inner{position:absolute;top:0;right:24px;bottom:0;left:24px}.rc-track:before{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:#e9eef6}.rc-scale .rc-track:before{display:none}.rc-fill{position:absolute;left:0;top:50%;height:3px;margin-top:-1.5px;border-radius:2px;background:#cfdcf3;background:linear-gradient(90deg,color-mix(in srgb,var(--c, #2f6bff) 0%,transparent),color-mix(in srgb,var(--c, #2f6bff) 38%,transparent));transition-property:width;transition-timing-function:cubic-bezier(.4,.02,.18,1)}.rc-runner{position:absolute;top:50%;transform:translate(-50%,calc(-50% - 3px));transition-property:left;transition-timing-function:cubic-bezier(.4,.02,.18,1);will-change:left;display:block;line-height:0}.rc-runner svg{display:block;height:31px;width:auto;transform-origin:50% 100%}.rc-runner:before{content:"";position:absolute;right:72%;top:56%;width:40px;height:2px;border-radius:1px;background:linear-gradient(90deg,transparent,var(--c, #2f6bff));opacity:0;transition:opacity .35s}.rc-runner.go:before{opacity:.38}.rc-runner.landed svg{animation:rcLand .5s cubic-bezier(.3,.7,.3,1)}@keyframes rcLand{0%{transform:scale(1)}28%{transform:scale(1.14,.86)}62%{transform:translateY(-3px) scale(.96,1.05)}to{transform:none}}.rc-val{text-align:right;padding-right:8px;font-size:13px;color:#33415a;opacity:.28;transform:translate(-4px);transition:opacity .35s,transform .35s}.rc-val.in{opacity:1;transform:none}.rc-val.me{color:var(--s-blue-2);font-weight:600}.rc-lane.m1 .rc-val{font-weight:700;color:#6f4a0f}.rn-fig{transform-box:fill-box;transform-origin:center bottom}.rn .rn-leg,.rn .rn-arm{transform-box:fill-box;transform-origin:top center}.rn.running .rn-leg.a{animation:rnLegA .4s infinite alternate ease-in-out}.rn.running .rn-leg.b,.rn.running .rn-arm.a{animation:rnLegB .4s infinite alternate ease-in-out}.rn.running .rn-arm.b{animation:rnLegA .4s infinite alternate ease-in-out}.rn.running .rn-fig{animation:rnBob .4s infinite alternate ease-in-out}@keyframes rnLegA{0%{transform:rotate(26deg)}to{transform:rotate(-26deg)}}@keyframes rnLegB{0%{transform:rotate(-26deg)}to{transform:rotate(26deg)}}@keyframes rnBob{0%{transform:translateY(0) rotate(4deg)}to{transform:translateY(-1.6px) rotate(4deg)}}@media (prefers-reduced-motion: reduce){.rn.running .rn-leg,.rn.running .rn-arm,.rn.running .rn-fig,.rc-runner.landed svg,.rc-cue.run i{animation:none}.rc-runner,.rc-fill,.rc-val,.rc-pod{transition-duration:.01ms!important;transition-delay:0s!important}}.rc-stage{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:end;gap:18px;padding:16px 20px 0;border-top:1px solid var(--s-line-2);background:linear-gradient(180deg,#fbfcfe,#f4f7fc);overflow:hidden}.rc-stage-l,.rc-stage-r{padding-bottom:16px;opacity:.4;transition:opacity .5s ease .2s}.rc-stage.on .rc-stage-l,.rc-stage.on .rc-stage-r{opacity:1}.rc-stage-h{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:#33415a}.rc-stage-h svg{color:#a8791f}.rc-stage-l p{margin:5px 0 0;font-size:11.5px;line-height:1.6;color:#8d9aae}.rc-stage-r{display:flex;justify-content:flex-end;gap:24px;text-align:right}.rc-stage-r>div{display:flex;flex-direction:column;gap:2px}.rc-stage-r b{font-size:20px;font-weight:600;line-height:1.1;color:#0f1b2d}.rc-stage-r span{font-size:11px;color:#8d9aae}.rc-podium{display:flex;align-items:flex-end;justify-content:center;gap:6px}.rc-pod{width:132px;display:flex;flex-direction:column;align-items:center;min-width:0;opacity:0;transform:translateY(46px);transition:opacity .45s ease,transform .7s cubic-bezier(.2,1.25,.35,1)}.rc-stage.on .rc-pod{opacity:1;transform:none}.rc-stage.on .rc-pod.p3{transition-delay:.05s}.rc-stage.on .rc-pod.p2{transition-delay:.3s}.rc-stage.on .rc-pod.p1{transition-delay:.58s}.rc-pod-run svg{display:block;height:40px;width:auto}.rc-pod b{max-width:100%;margin-top:3px;font-size:12.5px;font-weight:600;color:#33415a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rc-pod-v{margin-bottom:5px;font-size:12px;color:#66758c}.rc-step{width:100%;display:flex;align-items:center;justify-content:center;border-radius:3px 3px 0 0;font-size:15px;font-weight:700;background:#e3e9f3;color:#5b6a82}.rc-pod.p1 .rc-step{height:38px;background:#ecd9ae;color:#6f4a0f}.rc-pod.p2 .rc-step{height:28px}.rc-pod.p3 .rc-step{height:20px;background:#efdfd0;color:#7a4a33}.rc-pod.p1 b{color:#0f1b2d}.rc-notes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}.rc-notes>div{padding:14px 16px;background:#fff;border:1px solid var(--s-line);border-radius:6px}.rc-notes b{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:#33415a}.rc-notes b svg{color:#8d9aae}.rc-notes p{margin:6px 0 0;font-size:11.5px;line-height:1.8;color:#7a879b}.rc-empty{display:flex;flex-direction:column;align-items:center;gap:5px;padding:48px 20px;text-align:center;color:#a4b0c2}.rc-empty b{font-size:13px;font-weight:500;color:#4a5a72}.rc-empty p{margin:0;font-size:12px}.rc-more{padding:10px 0 2px 112px;font-size:11px;color:#a4b0c2}@media (max-width: 860px){.rc-scale,.rc-lane{grid-template-columns:92px minmax(0,1fr) 58px}.rc-grid{left:110px;right:76px}.rc-pick-meta{gap:18px}.rc-notes{grid-template-columns:minmax(0,1fr)}.rc-stage{grid-template-columns:minmax(0,1fr);gap:10px;padding-top:14px}.rc-stage-l{padding-bottom:0}.rc-stage-r{order:3;justify-content:center;padding:12px 0;border-top:1px solid var(--s-line-2)}}@media (max-width: 640px){.rc-pick{padding:12px 14px;gap:10px}.rc-pick label{width:100%}.rc-pick select{flex:1;max-width:none;min-width:0}.rc-pick-meta{width:100%;justify-content:space-between}.rc-bar{padding:10px 14px;flex-wrap:wrap;gap:8px}.rc-unit{display:none}.rc-board{padding:4px 12px 12px}.rc-scale,.rc-lane{grid-template-columns:74px minmax(0,1fr) 50px}.rc-grid{left:86px;right:62px}.rc-inner{top:0;right:14px;bottom:0;left:14px}.rc-lane{height:48px}.rc-who{padding-left:4px;gap:4px}.rc-who em{width:16px;font-size:10px}.rc-who b{font-size:11.5px}.rc-val{font-size:11.5px;padding-right:4px}.rc-pod{width:28%}.rc-scale i:nth-child(2),.rc-scale i:nth-child(4){display:none}}.km-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px;align-items:start}.km-canvas{position:relative;background:#fff;border:1px solid var(--s-line);border-radius:8px;overflow:hidden}.km-svg{display:block;width:100%;height:auto;touch-action:none;cursor:grab;-webkit-user-select:none;user-select:none}.km-svg:active{cursor:grabbing}.km-tools{position:absolute;top:12px;right:12px;z-index:2;display:flex;align-items:center;gap:2px;padding:3px;background:#fffffff0;border:1px solid var(--s-line);border-radius:5px}.km-tools button{width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:3px;background:transparent;color:#66758c;cursor:pointer}.km-tools button:hover{background:#f4f7fc;color:#33415a}.km-tools span{padding:0 7px 0 5px;font-size:10.5px;color:#a4b0c2}.km-cluster circle,.km-cluster ellipse{fill:#fcfdff;stroke:#e9eff8;stroke-width:1;stroke-dasharray:3 6}.km-cluster-lbl{font-size:13px;fill:#8d9aae;letter-spacing:.08em}.km-cluster-sub{font-size:10.5px;fill:#b3bdcc;letter-spacing:0}.km-edge{fill:none;stroke:#dbe5f4;stroke-width:1;transition:opacity .18s ease,stroke .18s ease}.km-edge.hot{stroke:#9dbdf0;stroke-width:1.4}.km-node{cursor:pointer}.km-halo{fill:#fff;opacity:.92;stroke:#edf2fa;stroke-width:1;transition:stroke .18s ease,stroke-width .18s ease}.km-node:hover .km-halo{stroke:#c9daf5}.km-node.on .km-halo{stroke:#8fb3ee;stroke-width:1.5}.km-dot{stroke-width:1.4;transition:fill .18s ease}.km-dot.good{fill:#e6efff;stroke:#4d7fe0}.km-dot.mid{fill:#fdf4e3;stroke:#bf8d3c}.km-dot.weak{fill:#fdeae6;stroke:#b4483c}.km-pct{font-family:var(--font-mono, ui-monospace, monospace);font-size:11px;fill:#7a879b}.km-lbl{font-size:12px;fill:#4a5a72;paint-order:stroke;stroke:#fff;stroke-width:3.4;stroke-linejoin:round}.km-node.on .km-lbl{fill:#0f1b2d;font-weight:600}.km-legend{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:10px 16px 12px;border-top:1px solid var(--s-line-2);font-size:11px;color:#8d9aae}.km-legend span{display:inline-flex;align-items:center;gap:5px}.km-legend i{width:8px;height:8px;border-radius:50%;border:1.4px solid}.km-legend i.good{background:#e6efff;border-color:#4d7fe0}.km-legend i.mid{background:#fdf4e3;border-color:#bf8d3c}.km-legend i.weak{background:#fdeae6;border-color:#b4483c}.km-legend em{margin-left:auto;font-style:normal;font-size:10.5px;color:#b3bdcc}.km-side{position:sticky;top:12px;min-width:0}.km-hint,.km-panel{background:#fff;border:1px solid var(--s-line);border-radius:6px;padding:16px 18px 18px}.km-hint-h{display:flex;align-items:center;gap:6px;margin:18px 0 8px;font-size:11.5px;font-weight:600;color:#4a5a72}.km-hint-h:first-child{margin-top:0}.km-hint-h svg{color:#8d9aae}.km-hint ul{margin:0;padding-left:15px;font-size:11.5px;line-height:1.95;color:#7a879b}.km-weak{display:flex;flex-direction:column}.km-weak button{display:flex;align-items:center;gap:8px;width:100%;padding:7px 0;border:0;border-top:1px solid var(--s-line-2);background:none;font-family:inherit;text-align:left;cursor:pointer}.km-weak button:hover b{color:var(--s-blue)}.km-weak b{flex:1;min-width:0;font-size:12px;font-weight:400;color:#33415a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.km-weak em{font-style:normal;font-size:11px;color:#8d9aae}.km-chip{width:7px;height:7px;flex:none;border-radius:50%}.km-chip.good{background:#4d7fe0}.km-chip.mid{background:#bf8d3c}.km-chip.weak{background:#b4483c}.km-panel-h{display:flex;align-items:center;gap:8px}.km-panel-h em{font-style:normal;font-size:11px;color:#8d9aae}.km-panel-h button{margin-left:auto;border:0;background:none;padding:2px;color:#a4b0c2;cursor:pointer}.km-panel h2{margin:8px 0 6px;font-size:19px;font-weight:500;color:#0f1b2d}.km-rate{display:flex;align-items:baseline;gap:9px}.km-rate b{font-size:30px;font-weight:600;letter-spacing:-.02em;color:#0f1b2d;line-height:1}.km-rate em{margin-left:auto;font-style:normal;font-size:11px;color:#a4b0c2}.km-tag{padding:2px 7px;border-radius:3px;font-size:10.5px}.km-tag.good{background:#e9f2ff;color:#1d4fd8}.km-tag.mid{background:#fdf4e3;color:#8a6412}.km-tag.weak{background:#fdeae6;color:#a8352b}.km-bar{height:5px;margin-top:9px;border-radius:3px;background:#f1f4fa;overflow:hidden}.km-bar i{display:block;height:100%;border-radius:3px}.km-bar i.good{background:#a9c4ff}.km-bar i.mid{background:#e6c58a}.km-bar i.weak{background:#e0a49c}.km-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:15px;padding-top:12px;border-top:1px solid var(--s-line-2)}.km-facts span{display:block;font-size:10.5px;color:#a4b0c2}.km-facts b{font-size:13px;font-weight:500;color:#33415a}.km-qh{margin:16px 0 2px;font-size:11.5px;font-weight:600;color:#4a5a72}.km-qs{max-height:232px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#e2e8f2 transparent}.km-q{display:grid;grid-template-columns:7px minmax(0,1fr) 44px;align-items:center;gap:8px;padding:7px 0;border-top:1px solid var(--s-line-2);font-size:11.5px;color:#66758c}.km-q:hover .km-q-stem{color:var(--s-blue)}.km-q-dot{width:6px;height:6px;border-radius:50%;background:#dbe3ee}.km-q-dot.ok{background:#8fc7b4}.km-q-stem{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.km-q em{font-style:normal;text-align:right;font-size:10.5px;color:#8d9aae}.km-none{margin:6px 0;font-size:11.5px;color:#a4b0c2}.km-actions{margin-top:14px;display:flex;gap:8px}@media (max-width: 1180px){.km-grid{grid-template-columns:minmax(0,1fr)}.km-side{position:static}}@media (max-width: 760px){.km-tools span{display:none}.km-legend{gap:10px;font-size:10.5px}.km-legend em{display:none}}.km-seg{display:inline-flex;padding:2px;border:1px solid var(--s-line);border-radius:5px;background:#fff}.km-seg button{padding:0 11px;height:26px;border:0;border-radius:3px;background:none;font-family:inherit;font-size:12px;color:#66758c;cursor:pointer}.km-seg button:hover{color:#33415a}.km-seg button.on{background:var(--s-blue-dim);color:var(--s-blue-2);font-weight:500}.km-dist{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.km-dist>div{padding:9px 10px;border:1px solid var(--s-line-2);border-radius:4px}.km-dist b{display:block;font-size:19px;font-weight:600;line-height:1.1;letter-spacing:-.01em}.km-dist b.good{color:#2f6bff}.km-dist b.mid{color:#a8691a}.km-dist b.weak{color:#b4322a}.km-dist span{font-size:10.5px;color:#a4b0c2}.km-stus{max-height:268px}.km-stu{display:grid;grid-template-columns:22px minmax(64px,1fr) auto;align-items:center;gap:9px;padding:6px 0;border-top:1px solid var(--s-line-2);font-size:12px;color:#33415a}.km-stu:hover .km-stu-name{color:var(--s-blue)}.km-stu-ava{width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:#f2f5fb;color:#7a879b;font-size:11px}.km-stu-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.km-stu em{font-style:normal;font-size:10.5px;color:#8d9aae;white-space:nowrap}.km-tip{margin:14px 0 0;padding-top:12px;border-top:1px solid var(--s-line-2);font-size:11px;line-height:1.75;color:#a4b0c2}.rep-next{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 22px}.rep-next-a{display:grid;grid-template-columns:30px minmax(0,1fr) 14px;align-items:center;gap:12px;padding:13px 15px;background:#fff;border:1px solid var(--s-line);border-radius:5px;color:#33415a;transition:border-color .16s ease,background .16s ease}.rep-next-a:hover{border-color:#d3e0f6;background:#fcfdff}.rep-next-ico{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border-radius:4px;background:var(--s-blue-dim);color:var(--s-blue-2)}.rep-next-a b{display:block;font-size:12.5px;font-weight:600;color:var(--s-ink)}.rep-next-a div span{display:block;margin-top:2px;font-size:11px;line-height:1.6;color:#8d9aae}.rep-next-a>svg{color:#b3bdcc}@media (max-width: 760px){.rep-next{grid-template-columns:minmax(0,1fr)}}.sh-main:has(.cw){max-width:none;padding:12px 20px}.cw{display:grid;grid-template-columns:268px minmax(0,1fr) 322px;gap:12px;height:calc(100vh - var(--sh-top) - 24px);height:calc(100dvh - var(--sh-top) - 24px);min-height:520px}.cw-eyebrow{font-size:.6875rem;letter-spacing:.08em;color:var(--fog-3);font-weight:500}.cw-left,.cw-main,.cw-right{background:var(--slate);border-radius:var(--r-3);box-shadow:var(--sh-1)}.cw-left{display:flex;flex-direction:column;overflow-y:auto;padding-bottom:6px}.cw-lcard{padding:16px 16px 14px;border-bottom:1px solid var(--mist)}.cw-lcard-hd{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.cw-stage{font-size:.625rem;padding:2px 7px;border-radius:4px;color:var(--cyan);background:var(--cyan-dim);border:1px solid rgba(47,107,255,.16)}.cw-lcard-title{font-size:.9375rem;font-weight:600;line-height:1.45;color:var(--rice);margin-bottom:12px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.cw-kv{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:10px}.cw-kv>div{display:flex;flex-direction:column;gap:1px}.cw-kv b{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:1.0625rem;line-height:1.2;font-weight:600;color:var(--rice)}.cw-kv span{font-size:.625rem;color:var(--fog-3)}.cw-prog{height:4px;border-radius:2px;background:var(--mist);overflow:hidden}.cw-prog i{display:block;height:100%;border-radius:2px;background:linear-gradient(90deg,#6f9bff,var(--cyan))}.cw-prog-cap{margin-top:6px;font-size:.6875rem;color:var(--fog-3)}.cw-lsec{padding:14px 10px 10px 16px;border-bottom:1px solid var(--mist)}.cw-lsec-grow{flex:1;min-height:0;display:flex;flex-direction:column}.cw-lsec-grow .cw-list{flex:1;min-height:0;max-height:none;-webkit-mask-image:linear-gradient(180deg,#000 calc(100% - 18px),transparent);mask-image:linear-gradient(180deg,#000 calc(100% - 18px),transparent)}.cw-lsec:last-child{border-bottom:none}.cw-sec-hd{display:flex;align-items:center;justify-content:space-between;font-size:.6875rem;letter-spacing:.08em;color:var(--fog-3);margin-bottom:8px;padding-right:6px}.cw-sec-btn{width:100%;background:none;border:none;cursor:pointer;color:var(--fog-3);padding:0 6px 0 0;font:inherit;font-size:.6875rem;letter-spacing:.08em}.cw-sec-btn:hover{color:var(--cyan)}.cw-count{font-family:var(--font-mono);font-size:.625rem;color:var(--fog-3)}.cw-list{display:flex;flex-direction:column;gap:1px;max-height:42vh;overflow-y:auto;padding-right:6px;padding-bottom:4px}.cw-item{display:grid;grid-template-columns:minmax(0,1fr) 44px;align-items:center;gap:10px;padding:7px 8px 7px 9px;border-radius:var(--r-2);border:none;background:none;cursor:pointer;text-align:left;transition:background var(--dur-1) var(--ease)}.cw-item:hover{background:var(--slate-2)}.cw-item.on{background:#eef4ff;box-shadow:inset 2px 0 0 var(--cyan)}.cw-item-main{min-width:0;display:flex;flex-direction:column;gap:1px}.cw-item-t{font-size:.8125rem;line-height:1.4;color:var(--rice-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cw-item.on .cw-item-t{color:var(--cyan);font-weight:500}.cw-item-s{font-family:var(--font-mono);font-size:.625rem;color:var(--fog-3);font-variant-numeric:tabular-nums}.cw-item-rate{height:3px;border-radius:2px;background:var(--mist);overflow:hidden}.cw-item-rate i{display:block;height:100%;background:var(--mist-2)}.cw-item.on .cw-item-rate{background:#2f6bff29}.cw-item.on .cw-item-rate i{background:var(--cyan)}.cw-tool-list{display:flex;flex-direction:column;gap:10px;padding:4px 6px 6px 0}.cw-tool .mono{font-size:.6875rem;color:var(--rice-2)}.cw-tool p{font-size:.6875rem;line-height:1.55;color:var(--fog-3);margin-top:2px}.cw-llinks{margin-top:auto;padding:12px 16px 14px;border-top:1px solid var(--mist)}.cw-blank{font-size:.75rem;line-height:1.75;color:var(--fog)}.cw-blank b{color:var(--rice);font-weight:600}.cw-main{display:flex;flex-direction:column;min-width:0;overflow:hidden}.cw-top{display:flex;align-items:center;justify-content:space-between;gap:12px;height:50px;padding:0 18px;border-bottom:1px solid var(--mist);flex:none}.cw-top-l{display:flex;align-items:center;gap:9px;min-width:0}.cw-lamp{width:24px;height:24px;border-radius:7px;display:grid;place-items:center;color:var(--cyan);background:var(--cyan-dim);flex:none}.cw-top-name{font-size:.8125rem;font-weight:600;color:var(--rice);white-space:nowrap}.cw-top-sep{width:1px;height:12px;background:var(--mist-2);flex:none}.cw-top-cur{font-size:.75rem;color:var(--fog-3)}.cw-top-r{display:flex;align-items:center;gap:12px;flex:none}.cw-model{font-size:.625rem;color:var(--fog-3);letter-spacing:.02em}.cw-link{border:none;background:none;font:inherit;font-size:.75rem;color:var(--fog-3);cursor:pointer;padding:0}.cw-link:hover{color:var(--cyan)}.cw-link:disabled{opacity:.4;cursor:default}.cw-quote{display:flex;align-items:center;gap:6px;padding:9px 18px;border-bottom:1px solid var(--mist);background:var(--slate-2);flex:none;overflow-x:auto;scrollbar-width:none}.cw-quote::-webkit-scrollbar{height:0}.cw-quote-lb{font-size:.6875rem;color:var(--fog-3);letter-spacing:.06em;flex:none;margin-right:2px}.cw-qc{flex:none;min-width:28px;height:24px;padding:0 7px;border-radius:5px;border:1px solid var(--mist);background:var(--slate);font-family:var(--font-mono);font-size:.6875rem;color:var(--fog);cursor:pointer;transition:all var(--dur-1) var(--ease)}.cw-qc:hover{border-color:var(--mist-2);color:var(--rice-2)}.cw-qc.on{background:var(--cyan);border-color:var(--cyan);color:#fff}.cw-quote-hint{flex:none;margin-left:auto;padding-left:10px;font-size:.6875rem;color:var(--fog-3);white-space:nowrap}.cw-stream{flex:1;overflow-y:auto;padding:22px 24px 8px}.cw-col{max-width:880px;margin:0 auto;display:flex;flex-direction:column;gap:20px}.cw-hello{display:flex;gap:11px;align-items:flex-start}.cw-ava{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;color:var(--cyan);background:var(--cyan-dim);flex:none}.cw-hello-t{font-size:1.0625rem;font-weight:600;line-height:1.5;color:var(--rice);letter-spacing:-.01em}.cw-hello-s{margin-top:3px;font-size:.75rem;color:var(--fog-3)}.cw-brief{display:grid;grid-template-columns:minmax(0,1fr) 268px;border:1px solid var(--mist);border-radius:var(--r-3);overflow:hidden;background:var(--slate)}.cw-brief.single{grid-template-columns:minmax(0,1fr)}.cw-brief-l{padding:16px 18px 14px;background:linear-gradient(180deg,#f7faff,#fbfdff)}.cw-finds{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;gap:11px}.cw-finds li{display:flex;flex-direction:column;gap:2px;padding-left:11px;position:relative}.cw-finds li:before{content:"";position:absolute;left:0;top:6px;width:3px;height:3px;border-radius:50%;background:var(--cyan)}.cw-finds b{font-size:.8125rem;font-weight:600;color:var(--rice)}.cw-finds span{font-size:.75rem;line-height:1.65;color:var(--fog)}.cw-find-actions{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap}.cw-mini-btn{display:inline-flex;align-items:center;gap:5px;height:28px;padding:0 10px;border-radius:6px;border:1px solid var(--cyan);background:var(--cyan);color:#fff;font:inherit;font-size:.75rem;white-space:nowrap;cursor:pointer;transition:filter var(--dur-1) var(--ease)}.cw-mini-btn:hover{filter:brightness(1.06)}.cw-mini-btn.ghost{background:var(--slate);border-color:var(--mist);color:var(--fog)}.cw-mini-btn.ghost:hover{border-color:var(--mist-2);color:var(--rice-2)}.cw-mini-btn.wfull{width:100%;justify-content:center;margin-top:10px}.cw-brief-r{padding:16px 16px 14px;border-left:1px solid var(--mist)}.cw-ev{min-width:0}.cw-ev-hd{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:9px}.cw-ev-src{font-size:.625rem;color:var(--fog-3);white-space:nowrap}.cw-bars{display:flex;flex-direction:column;gap:7px}.cw-bar-row{display:grid;grid-template-columns:42px minmax(0,1fr) 26px;align-items:center;gap:8px}.cw-bar-lb{font-size:.6875rem;color:var(--fog-3);white-space:nowrap}.cw-bar-track{height:7px;border-radius:3px;background:var(--slate-3);overflow:hidden}.cw-bar-track i{display:block;height:100%;border-radius:3px;background:#9dbcff;transition:width var(--dur-2) var(--ease)}.cw-bar-track i.warn{background:var(--amber)}.cw-bar-v{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:.6875rem;color:var(--rice-2);text-align:right}.cw-mis{display:flex;flex-direction:column;gap:9px}.cw-mis-row{display:grid;grid-template-columns:62px minmax(0,1fr) 22px;align-items:center;gap:8px}.cw-mis-lb{display:flex;align-items:center;gap:5px;font-size:.6875rem;color:var(--fog);white-space:nowrap}.cw-mis-lb i{width:5px;height:5px;border-radius:1px;flex:none}.cw-mis-track{height:6px;border-radius:3px;background:var(--slate-3);overflow:hidden}.cw-mis-track i{display:block;height:100%;border-radius:3px;opacity:.82}.cw-mis-v{font-family:var(--font-mono);font-size:.6875rem;color:var(--fog);text-align:right}.cw-empty-line{font-size:.75rem;color:var(--fog-3)}.cw-quick{display:flex;flex-wrap:wrap;gap:8px}.cw-quick-chip{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 11px;border-radius:6px;border:1px solid var(--mist);background:var(--slate);font:inherit;font-size:.75rem;color:var(--fog);cursor:pointer;transition:all var(--dur-1) var(--ease)}.cw-quick-chip:hover{border-color:#2f6bff57;color:var(--cyan);background:#f7faff}.cw-quick-chip svg{color:var(--cyan)}.cw-live{border-top:1px solid var(--mist);padding-top:14px}.cw-live-list{display:flex;flex-direction:column}.cw-lrow{display:grid;grid-template-columns:6px minmax(0,1fr) auto 58px;align-items:center;gap:9px;padding:6px 0;border-bottom:1px dashed var(--mist)}.cw-lrow:last-child{border-bottom:none}.cw-ldot{width:5px;height:5px;border-radius:50%;background:var(--moss);opacity:.7}.cw-lname{font-size:.8125rem;color:var(--rice-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cw-lmeta{font-size:.6875rem;color:var(--fog-3);white-space:nowrap}.cw-lscore{font-size:.8125rem;color:var(--rice);text-align:right;white-space:nowrap}.cw-lscore em{font-style:normal;font-size:.625rem;color:var(--fog-3)}.cw-me{display:flex;justify-content:flex-end}.cw-me-bubble{max-width:76%;padding:9px 13px;border-radius:12px 12px 3px;background:#eef4ff;border:1px solid rgba(47,107,255,.14);font-size:.875rem;line-height:1.7;color:var(--rice-2);white-space:pre-wrap;word-break:break-word}.cw-ai{display:flex;gap:11px;align-items:flex-start}.cw-ai-body{flex:1;min-width:0}.cw-ai-hd{display:flex;align-items:center;gap:8px;margin-bottom:7px}.cw-ai-name{font-size:.8125rem;font-weight:600;color:var(--rice)}.cw-ai-role{font-size:.625rem;color:var(--fog-3);padding:1px 6px;border-radius:3px;background:var(--slate-2);border:1px solid var(--mist)}.cw-typing{display:inline-flex;align-items:center;gap:6px;font-size:.6875rem;color:var(--fog-3)}.cw-typing .dot{width:5px;height:5px;border-radius:50%;background:var(--cyan);animation:cw-blink 1.2s var(--ease) infinite}@keyframes cw-blink{0%,to{opacity:.25}50%{opacity:1}}.cw-ans{display:flex;flex-direction:column;gap:12px;padding:14px 16px;border:1px solid var(--mist);border-radius:var(--r-3);background:var(--slate)}.cw-ans-text{font-size:.875rem;line-height:1.85;color:var(--rice-2);white-space:pre-wrap;word-break:break-word}.cw-ans .cw-ev{padding-top:12px;border-top:1px solid var(--mist)}.cw-skeleton{display:flex;flex-direction:column;gap:8px;padding:6px 0}.cw-skeleton i{height:8px;border-radius:4px;background:linear-gradient(90deg,var(--slate-3),var(--mist),var(--slate-3));background-size:200% 100%;animation:cw-shim 1.4s linear infinite}.cw-skeleton i:nth-child(1){width:62%}.cw-skeleton i:nth-child(2){width:88%}.cw-skeleton i:nth-child(3){width:45%}@keyframes cw-shim{0%{background-position:120% 0}to{background-position:-60% 0}}.cw-err{display:flex;gap:8px;padding:10px 12px;border-radius:var(--r-2);background:var(--vermilion-dim);border:1px solid rgba(225,29,72,.18);font-size:.75rem;line-height:1.7;color:#a3143a}.cw .call-list{margin-bottom:8px}.cw-composer{flex:none;padding:12px 24px 14px;border-top:1px solid var(--mist);background:var(--slate)}.cw-input{display:flex;align-items:flex-start;gap:10px;max-width:880px;margin:0 auto;padding:11px 12px 11px 14px;border:1px solid var(--mist);border-radius:var(--r-3);background:var(--slate-2);transition:all var(--dur-1) var(--ease)}.cw-input:focus-within{border-color:#2f6bff66;background:var(--slate);box-shadow:0 0 0 3px #2f6bff14}.cw-input input{flex:1;min-width:0;border:none;background:none;font:inherit;font-size:.875rem;color:var(--rice);padding:1px 0;outline:none}.cw-input input::placeholder{color:var(--fog-3)}.cw-send{width:30px;height:30px;border-radius:7px;border:none;display:grid;place-items:center;background:var(--cyan);color:#fff;cursor:pointer;flex:none;margin-top:-4px;transition:all var(--dur-1) var(--ease)}.cw-send:hover:not(:disabled){background:var(--cyan-2)}.cw-send:disabled{background:var(--mist);color:var(--fog-3);cursor:default}.cw-composer-foot{max-width:880px;margin:8px auto 0;display:flex;align-items:center;justify-content:space-between;gap:12px}.cw-ctxchips{display:flex;gap:6px;flex-wrap:wrap;flex:1 1 auto;min-width:0;overflow:hidden}.cw-ctxchip{font-size:.625rem;color:var(--fog);padding:2px 7px;border-radius:4px;background:var(--slate-2);border:1px solid var(--mist);white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}.cw-hints{display:flex;gap:10px;flex:none}.cw-hint{border:none;background:none;font:inherit;font-size:.6875rem;color:var(--fog-3);cursor:pointer;padding:0;white-space:nowrap}.cw-hint:hover{color:var(--cyan)}.cw-right{overflow-y:auto;padding:4px 0 8px}.cw-rcard{padding:14px 16px 16px;border-bottom:1px solid var(--mist)}.cw-rcard:last-child{border-bottom:none}.cw-rev-hd{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:12px}.cw-rev-sub{font-size:.625rem;color:var(--fog-3);white-space:nowrap}.cw-health{display:flex;align-items:center;gap:14px}.cw-donut{flex:none}.cw-donut-v{font-family:var(--font-mono);font-size:1.5rem;font-weight:600;fill:var(--rice);font-variant-numeric:tabular-nums}.cw-donut-u{font-size:8px;fill:var(--fog-3)}.cw-health-kv{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px}.cw-health-kv>div{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.cw-health-kv span{font-size:.6875rem;color:var(--fog-3);white-space:nowrap}.cw-health-kv b{font-size:.8125rem;font-weight:600;color:var(--rice);white-space:nowrap}.cw-health-kv b em{font-style:normal;font-size:.625rem;color:var(--fog-3);font-weight:400}.cw-health-kv b.warn{color:var(--amber-ink)}.cw-health-foot{margin-top:12px;padding-top:10px;border-top:1px dashed var(--mist);font-size:.6875rem;color:var(--fog-3)}.cw-watch{display:flex;flex-direction:column;gap:2px}.cw-wrow{display:flex;align-items:center;gap:9px;padding:6px 6px 6px 0;border-radius:var(--r-2)}.cw-wrow:hover{background:var(--slate-2)}.cw-wava{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;flex:none;font-size:.6875rem;color:var(--fog-2);background:var(--slate-3);border:1px solid var(--mist)}.cw-wmain{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.cw-wname{font-size:.8125rem;color:var(--rice-2)}.cw-wtag{font-size:.625rem;color:var(--fog-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cw-wv{font-size:.75rem;color:var(--fog);flex:none}.cw-qstem{font-size:.75rem;line-height:1.7;color:var(--rice-2);display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.cw-qstat{display:flex;gap:14px;margin-top:10px;padding-top:10px;border-top:1px dashed var(--mist);font-size:.6875rem;color:var(--fog-3)}.cw-qstat b{color:var(--rice);font-weight:600}.cw-rubric{display:flex;flex-direction:column;gap:6px;margin-top:10px}.cw-rrow{display:grid;grid-template-columns:6px minmax(0,1fr) 16px;align-items:start;gap:7px}.cw-rdot{width:5px;height:5px;border-radius:1px;margin-top:6px;background:var(--cyan)}.cw-rdot.d{background:var(--vermilion)}.cw-rdesc{font-size:.6875rem;line-height:1.6;color:var(--fog)}.cw-rp{font-size:.6875rem;color:var(--rice-2);text-align:right}.cw-summary{font-size:.75rem;line-height:1.8;color:var(--fog);display:-webkit-box;-webkit-line-clamp:6;-webkit-box-orient:vertical;overflow:hidden}@media (max-width: 1440px){.cw{grid-template-columns:248px minmax(0,1fr) 300px}.cw-brief{grid-template-columns:minmax(0,1fr) 240px}}@media (max-width: 1360px){.cw-hints{display:none}.cw-brief{grid-template-columns:minmax(0,1fr)}.cw-brief-r{border-left:none;border-top:1px solid var(--mist)}.cw-donut{width:84px;height:84px}.cw-health-kv b{font-size:.75rem}}@media (max-width: 1240px){.cw{grid-template-columns:236px minmax(0,1fr)}.cw-right,.cw-quote-hint{display:none}}@media (max-width: 1080px){.cw-brief{grid-template-columns:minmax(0,1fr)}.cw-brief-r{border-left:none;border-top:1px solid var(--mist)}}@media (max-width: 900px){.cw{grid-template-columns:minmax(0,1fr);height:calc(100vh - var(--sh-top) - 24px);height:calc(100dvh - var(--sh-top) - 24px)}.cw-left{display:none}.cw-stream{padding:16px 16px 8px}.cw-composer{padding:10px 16px 12px}.cw-top{padding:0 16px}.cw-quote{padding:8px 16px}}@media (max-width: 640px){.cw-model,.cw-hints{display:none}.cw-input input{font-size:16px}.cw-hello-t{font-size:.9375rem}.cw-me-bubble{max-width:88%}.cw-composer-foot{justify-content:flex-start}}.cfg-books{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.cfg-book{display:grid;grid-template-columns:1fr auto;align-items:center;row-gap:1px;padding:6px 8px;border:1px solid #e6ecf5;border-radius:7px;background:#fff;text-align:left;cursor:pointer;font-family:inherit;transition:border-color .12s ease,background .12s ease}.cfg-book:hover{border-color:#c9dbff;background:#fafcff}.cfg-book.on{border-color:#b9d1ff;background:#f3f7ff}.cfg-book-t{font-size:11.5px;font-weight:500;color:#3d4d63;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cfg-book.on .cfg-book-t{color:var(--s-blue-2);font-weight:600}.cfg-book-m{grid-column:1;font-size:9.5px;color:#a9b5c6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cfg-book em{grid-row:1 / span 2;grid-column:2;align-self:center;padding-left:4px;font-style:normal;font-size:10.5px;font-family:var(--font-mono);color:#a9b5c6}.cfg-book.on em{color:#6f92d6}.cfg-pick{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;height:34px;padding:0 10px;border:1px solid #c9dbff;border-radius:7px;background:#f5f8ff;color:var(--s-blue-2);font-family:inherit;font-size:11.5px;font-weight:500;cursor:pointer;transition:background .12s ease,border-color .12s ease}.cfg-pick span{display:flex;align-items:center;gap:6px;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.cfg-pick:hover{background:#ecf3ff;border-color:#a9c8ff}.cfg-selp{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px}.cfg-selchip{display:inline-flex;align-items:center;gap:3px;max-width:100%;height:22px;padding:0 3px 0 7px;border-radius:5px;background:#eef4ff;color:#2b5fd9;font-size:10.5px;line-height:22px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cfg-selchip button{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;padding:0;border:0;border-radius:3px;background:none;color:#8aa7de;cursor:pointer}.cfg-selchip button:hover{background:#dbe8ff;color:#2b5fd9}.cfg-selmore{height:22px;padding:0 6px;border:1px solid #dbe6fa;border-radius:5px;background:#fff;color:#6f8dc4;font-family:inherit;font-size:10.5px;cursor:pointer}.cfg-imp{display:flex;align-items:center;justify-content:center;gap:5px;width:100%;height:28px;margin-top:8px;border:1px dashed #dbe3ef;border-radius:6px;background:none;color:#7b8aa1;font-family:inherit;font-size:11px;cursor:pointer;transition:color .12s ease,border-color .12s ease,background .12s ease}.cfg-imp:hover{border-color:#b9d1ff;background:#fafcff;color:var(--s-blue-2)}.cfg-fold{border-top:1px solid var(--s-line-2)}.cfg-fold>summary{display:flex;align-items:baseline;justify-content:space-between;gap:8px;padding:12px 14px;font-size:11.5px;font-weight:600;color:#4a5a72;cursor:pointer;list-style:none;-webkit-user-select:none;user-select:none}.cfg-fold>summary::-webkit-details-marker{display:none}.cfg-fold>summary em{font-style:normal;font-weight:400;font-size:10.5px;color:#a4b0c2}.cfg-fold>summary:hover{color:var(--s-blue-2)}.cfg-fold>.cfg-sec:first-of-type{border-top:0;padding-top:0}.sheet-mask:has(>.kpp){display:flex;align-items:center;justify-content:center;padding:24px}.kpp{display:flex;flex-direction:column;width:min(1040px,94vw);height:min(76vh,700px);min-height:480px;background:#fff;border-radius:16px;box-shadow:0 24px 80px #101e363d;overflow:hidden;animation:kppIn .22s cubic-bezier(.2,.7,.3,1)}@keyframes kppIn{0%{opacity:0;transform:translateY(8px) scale(.995)}}.kpp-head{display:flex;align-items:center;gap:16px;padding:14px 18px 13px;border-bottom:1px solid #eef2f8}.kpp-title{display:flex;align-items:baseline;gap:9px;min-width:0;flex:1}.kpp-title b{font-size:14.5px;font-weight:600;color:#1e2c42;white-space:nowrap}.kpp-sub{font-size:11.5px;color:#8b98ac;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kpp-tabs{display:flex;gap:2px;padding:2px;border-radius:8px;background:#f2f5fa}.kpp-tabs button{display:flex;align-items:center;gap:4px;height:26px;padding:0 11px;border:0;border-radius:6px;background:none;color:#6b7a90;font-family:inherit;font-size:11.5px;cursor:pointer;transition:background .14s ease,color .14s ease}.kpp-tabs button.on{background:#fff;color:#1e2c42;font-weight:600;box-shadow:0 1px 3px #101e3617}.kpp-x{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:0;border-radius:7px;background:none;color:#97a3b6;cursor:pointer}.kpp-x:hover{background:#f2f5fa;color:#4a5a72}.kpp-bar{display:flex;align-items:center;gap:10px;padding:10px 18px;border-bottom:1px solid #f4f7fb}.kpp-scope{display:flex;gap:2px;padding:2px;border-radius:7px;background:#f4f7fb}.kpp-scope button{height:24px;padding:0 10px;border:0;border-radius:5px;background:none;color:#7b8aa1;font-family:inherit;font-size:11px;cursor:pointer;white-space:nowrap}.kpp-scope button.on{background:#fff;color:#1e2c42;font-weight:600;box-shadow:0 1px 2px #101e3614}.kpp-search{display:flex;align-items:center;gap:6px;flex:1;min-width:0;height:30px;padding:0 9px;border:1px solid #e4eaf3;border-radius:7px;background:#fbfcfe;color:#a4b0c2}.kpp-search:focus-within{border-color:#b9d1ff;background:#fff}.kpp-search input{flex:1;min-width:0;border:0;background:none;outline:none;color:#2b3a4f;font-family:inherit;font-size:12px}.kpp-search input::placeholder{color:#b3bdcc}.kpp-search input::-webkit-search-cancel-button{display:none}.kpp-search button{display:flex;padding:2px;border:0;background:none;color:#b3bdcc;cursor:pointer}.kpp-count{flex:none;height:24px;padding:0 9px;border-radius:12px;background:#eff4ff;color:#2b5fd9;font-family:var(--font-mono);font-size:10.5px;line-height:24px;white-space:nowrap}.kpp-body{display:grid;grid-template-columns:218px minmax(0,1fr);flex:1;min-height:0}.kpp-chaps{min-height:0;padding:8px;border-right:1px solid #f4f7fb;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#e2e8f2 transparent}.kpp-chap{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;height:31px;padding:0 8px;border:0;border-radius:6px;background:none;font-family:inherit;font-size:12px;color:#4a5a72;text-align:left;cursor:pointer}.kpp-chap:hover{background:#f6f9fe}.kpp-chap.on{background:#eff4ff;color:var(--s-blue-2);font-weight:600}.kpp-chap-n{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.kpp-chap-c{flex:none;font-family:var(--font-mono);font-size:10px;color:#b3bdcc}.kpp-chap-c.hit{color:#4d80e0}.kpp-points{min-height:0;padding:13px 18px 16px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#e2e8f2 transparent}.kpp-pts-h{display:flex;align-items:baseline;gap:9px;margin-bottom:10px}.kpp-pts-h b{font-size:13px;font-weight:600;color:#1e2c42}.kpp-pts-h em{flex:1;font-style:normal;font-size:10.5px;color:#a4b0c2}.kpp-pts-h button{flex:none;height:22px;padding:0 8px;border:1px solid #dbe6fa;border-radius:5px;background:#fff;color:#4d80e0;font-family:inherit;font-size:10.5px;cursor:pointer}.kpp-pts-h button:hover{background:#f2f7ff}.kpp-ptlist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px 10px}.kpp-pt{display:flex;align-items:center;gap:7px;min-width:0;padding:6px 7px;border:0;border-radius:5px;background:none;color:#40506a;font-family:inherit;font-size:12px;text-align:left;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kpp-pt:hover{background:#f6f9fe}.kpp-pt.on{color:#1d4fc4;font-weight:500}.kpp-box{flex:none;display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;border:1.5px solid #d3dcea;border-radius:4px;background:#fff;color:#fff}.kpp-pt.on .kpp-box,.kpp-hit.on .kpp-box{border-color:var(--s-blue);background:var(--s-blue)}.kpp-hits{padding:13px 18px;overflow-y:auto}.kpp-hits-h{margin-bottom:8px;font-size:11px;color:#8b98ac}.kpp-hitlist{display:flex;flex-direction:column;gap:2px}.kpp-hit{display:flex;align-items:center;gap:8px;padding:7px 8px;border:0;border-radius:6px;background:none;font-family:inherit;text-align:left;cursor:pointer}.kpp-hit:hover{background:#f6f9fe}.kpp-hit-p{font-size:12px;color:#2b3a4f}.kpp-hit.on .kpp-hit-p{color:#1d4fc4;font-weight:500}.kpp-hit-c{flex:1;text-align:right;font-size:10.5px;color:#b3bdcc;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kpp-empty{margin:0;padding:18px 4px;font-size:11.5px;line-height:1.7;color:#a4b0c2}.kpp-foot{display:flex;align-items:center;gap:12px;padding:10px 18px;border-top:1px solid #eef2f8;background:#fbfcfe}.kpp-sel{display:flex;flex-wrap:wrap;gap:4px;flex:1;min-width:0;max-height:54px;overflow-y:auto}.kpp-pill{display:inline-flex;align-items:center;gap:3px;height:22px;padding:0 6px;border:1px solid #dbe6fa;border-radius:5px;background:#fff;color:#2b5fd9;font-family:inherit;font-size:10.5px;white-space:nowrap;cursor:pointer}.kpp-pill:hover{border-color:#f0c4bc;color:#b4322a}.kpp-foot-empty{font-size:11px;color:#b3bdcc}.kpp-more{font-size:10.5px;color:#97a3b6;line-height:22px}.kpp-acts{display:flex;align-items:center;gap:10px;flex:none}.kpp-link{border:0;background:none;color:#8b98ac;font-family:inherit;font-size:11px;cursor:pointer}.kpp-link:hover{color:#b4322a}.kpp-imp{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);flex:1;min-height:0}.kpp-imp-l,.kpp-imp-r{display:flex;flex-direction:column;min-height:0;padding:14px 18px}.kpp-imp-l{border-right:1px solid #f4f7fb}.kpp-imp-h{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:9px}.kpp-imp-h b{font-size:12px;font-weight:600;color:#2b3a4f}.kpp-imp-h em{font-style:normal;font-size:10.5px;color:#a4b0c2}.kpp-file{display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 8px;border:1px solid #e4eaf3;border-radius:5px;color:#7b8aa1;font-size:10.5px;cursor:pointer}.kpp-file:hover{border-color:#b9d1ff;color:var(--s-blue-2)}.kpp-file input{display:none}.kpp-ta{flex:1;min-height:120px;padding:10px 11px;border:1px solid #e4eaf3;border-radius:8px;background:#fbfcfe;color:#2b3a4f;font-family:inherit;font-size:12px;line-height:1.75;resize:none;outline:none}.kpp-ta:focus{border-color:#b9d1ff;background:#fff}.kpp-ta::placeholder{color:#b8c2d0}.kpp-imp-b{display:flex;align-items:center;gap:10px;margin-top:9px}.kpp-imp-b span{flex:1;font-size:10.5px;line-height:1.5;color:#a4b0c2}.kpp-preview{flex:1;min-height:0;padding:10px;border:1px dashed #e6ecf5;border-radius:8px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#e2e8f2 transparent}.kpp-pv+.kpp-pv{margin-top:10px}.kpp-pv-h{display:flex;align-items:baseline;gap:6px;margin-bottom:4px;font-size:11.5px;font-weight:600;color:#3d4d63}.kpp-pv-h span{font-family:var(--font-mono);font-size:9.5px;font-weight:400;color:#a4b0c2}.kpp-pv-p{display:flex;flex-wrap:wrap;gap:3px}.kpp-pv-p span{padding:1px 5px;border-radius:4px;background:#f2f6fc;color:#5b6a80;font-size:10px;line-height:16px}.kpp-pv-p i{font-style:normal;font-size:10px;color:#a4b0c2;line-height:16px}.kpp-target{margin-top:10px}.kpp-target label{display:flex;align-items:center;gap:7px;font-size:11px;color:#7b8aa1}.kpp-target select,.kpp-target input{height:28px;padding:0 7px;border:1px solid #e4eaf3;border-radius:6px;background:#fff;color:#2b3a4f;font-family:inherit;font-size:11.5px;outline:none}.kpp-target label select{flex:1;min-width:0}.kpp-new{display:flex;gap:6px;margin-top:6px;padding-left:33px}.kpp-new select{width:88px;flex:none}.kpp-new input{flex:1;min-width:0}.kpp-err{margin:8px 0 0;font-size:11px;color:#b4322a}.kpp-imp-f{display:flex;align-items:center;gap:10px;margin-top:10px}.kpp-imp-f span{font-size:10.5px;color:#a4b0c2}@media (max-width: 900px){.kpp{width:100%;height:88vh}.kpp-body{grid-template-columns:168px minmax(0,1fr)}.kpp-ptlist{grid-template-columns:minmax(0,1fr)}.kpp-imp{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) minmax(0,1fr)}.kpp-imp-l{border-right:0;border-bottom:1px solid #f4f7fb}}@media (max-width: 640px){.sheet-mask:has(>.kpp){padding:0}.kpp{width:100%;height:100vh;height:100dvh;border-radius:0}.kpp-title .kpp-sub{display:none}.kpp-body{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr)}.kpp-chaps{display:flex;gap:4px;padding:8px 12px;border-right:0;border-bottom:1px solid #f4f7fb;overflow-x:auto;overflow-y:hidden}.kpp-chap{width:auto;flex:none}.kpp-chap-n{max-width:110px}.kpp-points{padding:10px 12px}.kpp-bar{flex-wrap:wrap}.kpp-search{order:3;flex-basis:100%}}.gen-banner{display:flex;flex-direction:row;flex-wrap:wrap;align-items:flex-start;gap:10px;padding:13px 15px;border:1px solid var(--mist);border-radius:var(--r-3);background:#fff;box-shadow:var(--sh-1)}.gen-banner>div{min-width:0;flex:1 1 auto}.gen-banner>p{flex:1 1 auto;min-width:0}.gen-banner b{display:block;font-size:13px;font-weight:600;color:#253346;letter-spacing:.01em}.gen-banner p{margin:4px 0 0;font-size:12px;line-height:1.6;color:var(--fog-3)}.gen-live{flex-direction:column;align-items:stretch}.gen-live-top{display:flex;align-items:center;gap:10px}.gen-live-txt{flex:1 1 auto;min-width:0}.gen-live-act{display:flex;align-items:center;gap:10px;flex:0 0 auto}.gen-clock{font-size:12px;font-variant-numeric:tabular-nums;color:var(--fog-3);min-width:36px;text-align:right}.gen-dot{flex:0 0 auto;width:7px;height:7px;border-radius:50%;background:var(--cyan);animation:genPulse 1.7s ease-out infinite}@keyframes genPulse{0%{box-shadow:0 0 #2f6bff52}70%{box-shadow:0 0 0 7px #2f6bff00}to{box-shadow:0 0 #2f6bff00}}.gen-bar{height:3px;border-radius:2px;background:#eef2f8;overflow:hidden}.gen-bar i{display:block;height:100%;border-radius:2px;background:linear-gradient(90deg,#5b87ff,#2f6bff);transition:width .6s linear}.gen-tip{margin:0;font-size:11.5px;line-height:1.6;color:#8a6a2b}.gen-banner.is-fail{border-color:#efd9d5;background:#fdf8f7}@media (prefers-reduced-motion: reduce){.gen-dot{animation:none}.gen-bar i{transition:none}}@media (max-width: 720px){.gen-live-top{flex-wrap:wrap}.gen-live-act{width:100%;justify-content:flex-end}}
