.app-shell{background:var(--surface);visibility:hidden;min-height:100dvh;line-height:1.5}.app-shell.is-ready{visibility:visible}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.button,.game-primary{border:2px solid var(--line-strong);min-height:52px;box-shadow:0 3px 0 var(--line-strong);background:var(--surface);color:var(--ink);border-radius:14px;gap:8px;padding:0 20px;font-size:15px;font-weight:700;transition:transform 80ms,box-shadow 80ms,background .15s}.button:hover:not(:disabled){background:var(--bg);border-color:var(--line-strong)}.button:active:not(:disabled),.game-primary:active{box-shadow:0 0 0 var(--line-strong);transform:translateY(3px)}.primary-button,.game-primary{border-color:var(--accent);box-shadow:0 4px 0 var(--accent-press);background:var(--accent);color:#fff}.primary-button:hover:not(:disabled),.game-primary:hover{border-color:var(--accent);background:#7c54f1}.primary-button:active:not(:disabled),.game-primary:active{box-shadow:0 0 0 var(--accent-press);transform:translateY(4px)}.solve-primary{min-height:56px;padding:0 36px;font-size:17px;font-weight:800}.solve-primary kbd{font:500 14px var(--font-sans);margin-left:4px}.text-button{min-height:44px;color:var(--accent-press);background:0 0;border:0;padding:0;font-size:14px;font-weight:700}.notice{background:var(--warn-soft);color:var(--warn-text);border-radius:12px;margin-bottom:16px;padding:12px 16px;font-size:14px}.solve-progress progress,.path-resume-meter progress,.game-page progress{appearance:none;background:var(--line);width:100%;height:14px;color:var(--accent);border:0;border-radius:7px;display:block;overflow:hidden}.path-resume-meter progress{background:var(--surface);height:12px}.game-page progress{background:#e4dff0;height:10px}.solve-progress progress::-webkit-progress-bar{background:var(--line)}.game-page progress::-webkit-progress-bar{background:var(--line)}.path-resume-meter progress::-webkit-progress-bar{background:var(--surface)}.solve-progress progress::-webkit-progress-value{background:var(--accent);border-radius:7px;transition:width .4s}.path-resume-meter progress::-webkit-progress-value{background:var(--accent);border-radius:7px;transition:width .4s}.game-page progress::-webkit-progress-value{background:var(--accent);border-radius:7px;transition:width .4s}.solve-progress progress::-moz-progress-bar{background:var(--accent);border-radius:7px}.path-resume-meter progress::-moz-progress-bar{background:var(--accent);border-radius:7px}.game-page progress::-moz-progress-bar{background:var(--accent);border-radius:7px}.site-header{border-bottom:2px solid var(--line);flex-wrap:wrap;align-items:center;gap:8px 32px;padding:12px 40px;display:flex}.site-brand{letter-spacing:-.02em;align-items:center;gap:10px;font-size:20px;font-weight:800;display:inline-flex}.site-brand svg{color:var(--accent)}.site-header nav{flex:1;gap:8px;display:flex}.site-header nav button{min-height:44px;color:var(--ink-soft);background:0 0;border:0;border-radius:12px;padding:0 14px;font-size:15px;font-weight:700}.site-header nav button:hover{background:var(--bg)}.site-header nav button.active{background:var(--accent-soft);color:var(--accent-press)}.site-level{white-space:nowrap;font-variant-numeric:tabular-nums;font-size:14px;font-weight:700}.site-main{max-width:1320px;margin:0 auto;padding:32px 40px 56px}.solve-screen{background:var(--ground);flex-direction:column;height:100dvh;display:flex;overflow:hidden}.solve-topbar{border-bottom:1px solid var(--line);background:var(--surface);z-index:10;flex:none;align-items:center;gap:20px;padding:10px 24px;display:flex}.solve-screen .solve-topbar{padding:0;display:block}.solve-topbar-inner{grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;width:100%;max-width:none;padding:10px 24px;display:grid}.solve-topbar-inner .solve-close{justify-self:start}.solve-topbar-inner .solve-level{justify-self:end}.solve-close{width:44px;height:44px;color:var(--muted);background:0 0;border:0;border-radius:12px;flex:none;place-items:center;margin-left:-10px;display:grid}.solve-close:hover{background:var(--bg);color:var(--ink)}.solve-progress{flex:1;align-items:center;gap:16px;min-width:0;display:flex}.solve-screen .solve-progress{flex:none;justify-content:center;align-items:center;gap:14px;display:flex}.solve-screen .solve-progress progress{border-radius:5px;width:260px;max-width:100%;height:10px}.solve-screen .solve-progress progress::-webkit-progress-bar{border-radius:5px}.solve-screen .solve-progress progress::-webkit-progress-value{border-radius:5px}.solve-screen .solve-progress progress::-moz-progress-bar{border-radius:5px}.solve-progress>span{color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums;flex:none;font-size:14px;font-weight:700}.solve-project-header{white-space:nowrap;justify-content:center;align-items:center;gap:8px;display:flex}.solve-project-badge{background:var(--accent-soft,#6366f11f);color:var(--accent);letter-spacing:-.01em;border-radius:6px;align-items:center;padding:2px 7px;font-size:11.5px;font-weight:700;display:inline-flex}.solve-project-title{color:var(--ink);letter-spacing:-.01em;font-size:14.5px;font-weight:700}.problem-boss-nav{background:var(--bg);border-bottom:1px solid var(--line);flex:none;padding:8px 14px}.problem-boss-nav .boss-nav-progress{width:100%;display:flex}.problem-boss-nav .boss-nav-phases{background:var(--surface);border:1px solid var(--line);border-radius:10px;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;width:100%;padding:3px;display:grid}.problem-boss-nav .boss-nav-btn{border-radius:7px;justify-content:center;align-items:center;gap:5px;min-width:0;min-height:32px;padding:0 6px;font-size:12px;display:inline-flex}.problem-boss-nav .boss-nav-name{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.problem-boss-nav .boss-nav-badge{width:16px;height:16px;font-size:10px}.boss-nav-progress{justify-content:center;align-items:center;gap:12px;display:flex}.boss-nav-title{color:var(--muted);white-space:nowrap;font-size:14px;font-weight:700}.boss-nav-phases{background:var(--bg);border:1.5px solid var(--line);border-radius:12px;align-items:center;gap:4px;padding:3px;display:inline-flex}.boss-nav-btn{min-height:32px;color:var(--ink-soft);white-space:nowrap;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:9px;align-items:center;gap:6px;padding:0 10px;font-size:13px;font-weight:600;transition:all .15s;display:inline-flex}.boss-nav-btn:hover:not(:disabled){background:var(--surface);color:var(--ink)}.boss-nav-btn.current{background:var(--surface);color:var(--accent-press);border-color:var(--accent);font-weight:700;box-shadow:0 1px 3px #0000000f}.boss-nav-btn.completed{color:var(--ink)}.boss-nav-btn:disabled{opacity:.5;color:var(--muted);cursor:not-allowed}.boss-nav-badge{background:var(--line);width:18px;height:18px;color:var(--ink-soft);border-radius:50%;place-items:center;font-size:11px;font-weight:800;display:inline-grid}.boss-nav-btn.current .boss-nav-badge{background:var(--accent);color:#fff}.boss-nav-btn.completed .boss-nav-badge{background:var(--good);color:#fff}.boss-nav-btn.current.completed .boss-nav-badge{background:var(--accent);color:#fff}.boss-nav-btn:disabled .boss-nav-badge{color:var(--muted);background:0 0}.solve-main{flex-direction:column;flex:1 1 0;width:100%;max-width:none;min-height:0;margin:0;padding:0;display:flex;overflow:hidden}.solve-main>.notice{margin:12px 16px 0}.solve-columns{background:var(--surface);flex:1 1 0;grid-template-columns:minmax(280px,340px) minmax(0,1.3fr) minmax(360px,460px);align-items:stretch;gap:0;width:100%;min-height:0;display:grid;overflow:hidden}@media (min-width:1600px){.solve-columns{grid-template-columns:minmax(320px,380px) minmax(0,1.4fr) minmax(420px,520px);gap:0}}.problem-panel,.visualization-panel,.editor-panel{background:var(--surface);border:0;border-radius:0;flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}.problem-panel,.visualization-panel{border-right:1px solid var(--line)}.editor-panel{border:0}.problem-header{background:var(--surface);border-bottom:1px solid var(--line);flex:none;justify-content:space-between;align-items:center;gap:10px;padding:10px 18px;display:flex}.problem-header-title{color:var(--ink);align-items:center;gap:8px;font-size:13.5px;font-weight:800;display:flex}.problem-header-title svg{color:var(--accent)}.problem-body{flex-direction:column;flex:1 1 0;gap:16px;min-height:0;padding:18px 18px 24px;display:flex;overflow-y:auto}.problem-body .mission{flex-direction:column;gap:8px;display:flex}.problem-body .mission h1{letter-spacing:-.02em;word-break:keep-all;color:var(--ink);margin:0;font-size:21px;font-weight:800;line-height:1.35}.problem-body .mission-text{color:var(--ink-soft);word-break:keep-all;font-size:14.5px;line-height:1.65}.mission-meta{color:var(--muted);align-items:center;gap:8px;font-size:12.5px;font-weight:700;display:flex}.mission-meta span:first-child{background:var(--accent-soft);color:var(--accent-press);border-radius:6px;padding:2px 8px;font-size:12px}.mission-meta .meta-xp{color:var(--muted);font-size:12px}.problem-body .worked-example{background:var(--bg);color:var(--ink-soft);border-radius:14px;flex-direction:column;align-items:flex-start;gap:8px;margin:0;padding:12px 14px;font-size:13.5px;list-style:none;display:flex}.problem-body .worked-example:before{content:"예를 들면";color:var(--muted);margin-bottom:2px;font-size:12px;font-weight:800}.problem-body .worked-example ol{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.example-input{flex-wrap:wrap;align-items:flex-start;gap:8px 16px;margin-bottom:4px;display:flex}.example-scalars{flex-wrap:wrap;flex-basis:100%;gap:6px;display:flex}.example-scalars code{background:var(--surface);color:var(--ink);font:700 12px var(--font-mono);border:1px solid var(--line-strong);border-radius:8px;align-items:center;padding:3px 8px;transition:transform .15s,border-color .15s;display:inline-flex}.example-scalars code.scalar-row{color:var(--row);background:var(--row-soft);border-color:#a9480f59}.example-scalars code.scalar-col{color:var(--col);background:var(--col-soft);border-color:#0b7a7059}.axis-mini-dot{border-radius:50%;width:6px;height:6px;margin-right:5px;display:inline-block}.example-tensor{flex-direction:column;gap:2px;margin:0;display:flex}.example-tensor figcaption{align-items:baseline;gap:6px;font-size:12px;display:flex}.example-tensor figcaption strong{color:var(--ink);font-family:var(--font-mono)}.example-tensor figcaption code{color:var(--muted);font:500 11px var(--font-mono)}.example-tensor svg{overflow:visible}.example-tensor .axis-label{font-size:11px}.example-planes{flex-wrap:wrap;align-items:flex-start;gap:4px 6px;display:flex}.example-plane{flex-direction:column;gap:0;display:flex}.example-plane>span{color:var(--ink-soft);font:600 11px var(--font-mono)}.example-photo .photo-lit{fill:none;stroke:var(--ink);stroke-width:2.5px}.example-photo .photo-lit-inner{fill:none;stroke:var(--surface);stroke-width:1.2px}.problem-body .worked-example li+li:before{content:"→";color:var(--accent);margin-right:8px;font-weight:700}.size-preview{background:var(--bg);border-radius:14px;flex-direction:column;gap:10px;padding:12px 14px;display:flex}.size-preview-title{color:var(--muted);font-size:12px;font-weight:800}.size-preview-cases{flex-wrap:wrap;align-items:flex-start;gap:12px 16px;display:flex}.size-case{flex-direction:column;gap:6px;margin:0;display:flex}.size-case figcaption{align-items:center;gap:4px;display:flex}.size-case figcaption code{color:var(--ink-soft);font:600 11px var(--font-mono)}.size-case svg{-webkit-user-select:none;user-select:none;overflow:visible}.size-case rect{stroke-width:1.5px}.size-row{fill:var(--row);font:500 10px var(--font-mono);text-anchor:middle;dominant-baseline:central;opacity:.55}.size-row.is-lit{opacity:1;font-weight:800}.size-preview-note{color:var(--muted);font-size:12px}.plot-label{font-size:10px;font-weight:600}.visualization-panel{align-self:stretch}.project-header{background:var(--surface);border-bottom:1px solid var(--line);color:var(--ink);flex:none;align-items:center;gap:8px;padding:10px 18px;font-size:13.5px;font-weight:800;display:flex}.project-header svg{color:var(--accent)}.visualization-panel .tab-panel,.visualization-panel .project-scene-panel{flex-direction:column;flex:1 1 0;gap:16px;min-height:0;padding:16px;display:flex;overflow:hidden auto}.editor-panel{margin:0;padding:0;position:static}.editor-heading{background:var(--surface);border-bottom:1px solid var(--line);flex:none;justify-content:space-between;align-items:center;gap:10px;margin:0;padding:10px 18px;display:flex}.editor-heading h2{margin:0;font-size:14px;font-weight:800}.editor-heading>.text-button{color:var(--accent-press);margin:0;padding:0;font-size:13.5px;font-weight:700}.editor-body{flex-direction:column;flex:1 1 0;gap:12px;min-height:0;padding:16px 20px 20px;display:flex;overflow-y:auto}.code-editor{border:0;border-radius:0;flex:1;min-height:150px;display:flex}.code-editor .cm-editor{flex:1;min-width:0}.cm-axis-row{color:var(--row);font-weight:700}.cm-axis-col{color:var(--col);font-weight:700}.cm-axis-other{color:var(--accent-press);font-weight:700}.cm-axis-row span,.cm-axis-col span,.cm-axis-other span{color:inherit}.cm-trace-range{background:var(--accent-soft)}.error-detail{background:var(--warn-soft);color:var(--warn-text);font:13px/1.6 var(--font-mono);border:0;border-radius:12px;margin:0;padding:10px 14px}.error-detail.syntax-pending{background:var(--bg);color:var(--muted);font-family:var(--font-sans)}.slice-notes{color:var(--ink-soft);flex-direction:column;gap:8px;margin:0;padding:0;font-size:14px;list-style:none;display:flex}.slice-notes li{align-items:baseline;gap:10px;display:flex}.slice-notes span{word-break:keep-all}.slice-notes code{border-radius:8px;flex:none;padding:1px 8px;font-weight:700}.axis-row{background:var(--row-soft);color:var(--row)}.axis-col{background:var(--col-soft);color:var(--col)}.axis-other{background:var(--accent-soft);color:var(--accent-press)}.concept-note{color:var(--ink-soft);word-break:keep-all;font-size:14px}.concept-note strong{color:var(--muted);font-size:13px;display:block}.canvas-toolbar{gap:16px;padding:12px 20px 4px}.axis-legend{gap:16px;font-size:13px;font-weight:700}.axis-legend>span:first-child{color:var(--row)}.axis-legend>span:last-child{color:var(--col)}.axis-legend i{border-radius:4px;width:12px;height:12px}.row-dot{background:var(--row)}.col-dot{background:var(--col)}.result-status{color:var(--muted);text-align:right;padding:0;font-size:13px}.result-status strong{font-family:var(--font-mono);color:var(--ink);font-weight:700}.scene-and-target{background-image:none;align-items:center;gap:16px;margin:0;padding:0 20px 8px}.tensor-selectors{min-height:0;padding:4px 0 8px}.tensor-selectors.narrow{grid-template-columns:minmax(0,1fr);gap:8px}.input-tabs{flex-wrap:wrap;min-height:32px}.input-tabs button{border:2px solid var(--line-strong);background:var(--surface);min-height:32px;color:var(--ink-soft);font:700 13px var(--font-mono);border-radius:10px;padding:2px 12px}.input-tabs button.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-press)}.tab-values-preview{font:500 12px var(--font-mono);color:var(--muted);margin-left:6px}.input-tabs button.active .tab-values-preview{color:var(--accent-press);opacity:.9}.tensor-debugger-workbench{-webkit-user-select:none;user-select:none;flex-direction:column;gap:14px;padding:14px 18px 22px;display:flex;container:workbench/inline-size}.tensor-debugger-workbench input,.tensor-debugger-workbench textarea{-webkit-user-select:auto;user-select:auto}.tensor-debugger-workbench ::selection,.card-tensor-svg ::selection,.tensor-svg ::selection,.compare-tensor-svg ::selection{background:0 0}.workbench-sections{flex-direction:column;gap:16px;display:flex}.workbench-section{flex-direction:column;gap:8px;display:flex}.workbench-section .section-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;min-height:26px;display:flex}.section-title-wrap{align-items:center;gap:8px;display:flex}.workbench-section .section-title{color:var(--ink-soft);letter-spacing:-.01em;font-size:13px;font-weight:750}.workbench-section .section-badge{background:var(--line-strong);color:var(--muted);border-radius:10px;padding:1px 7px;font-size:11px;font-weight:600}.cards-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));align-items:flex-start;gap:14px;display:grid}@container workbench (min-width:520px){.workbench-sections .cards-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}}.tensor-card{border:1px solid var(--line);background:var(--surface);-webkit-user-select:none;user-select:none;border-radius:10px;min-width:0;max-width:100%;transition:border-color .15s,box-shadow .15s;overflow:hidden;box-shadow:0 1px 3px #00000005}.tensor-card:hover{border-color:var(--muted)}.tensor-card.card-output{border:1.5px solid var(--accent-mid)}.tensor-card.card-output.is-passed{border-color:var(--good);box-shadow:0 0 0 1px var(--good-soft)}.tensor-card.bracket-canvas{background:var(--surface);border-color:#00000014;position:relative}.tensor-card.bracket-canvas:hover{border-color:var(--line-strong);box-shadow:0 3px 12px #0000000a}.tensor-card.bracket-canvas .tensor-card-header{background:0 0;border-bottom:1px solid #0000000a;min-height:35px;padding:6px 11px}.tensor-card.bracket-canvas .card-svg-wrap{padding:6px 14px;position:relative}.tensor-card.bracket-canvas:not(.is-scalar) .card-svg-wrap:before,.tensor-card.bracket-canvas:not(.is-scalar) .card-svg-wrap:after{content:"";pointer-events:none;border:1.5px solid var(--line-strong);opacity:.55;width:5px;transition:border-color .18s,opacity .18s;position:absolute;top:10px;bottom:8px}.tensor-card.bracket-canvas:not(.is-scalar) .card-svg-wrap:before{border-right:none;border-top-left-radius:4px;border-bottom-left-radius:4px;left:7px}.tensor-card.bracket-canvas:not(.is-scalar) .card-svg-wrap:after{border-left:none;border-top-right-radius:4px;border-bottom-right-radius:4px;right:7px}.tensor-card.bracket-canvas:hover:not(.is-scalar) .card-svg-wrap:before,.tensor-card.bracket-canvas:hover:not(.is-scalar) .card-svg-wrap:after{border-color:var(--accent-press);opacity:.9}.tensor-card.bracket-canvas.is-scalar{min-height:auto}.tensor-card.bracket-canvas.is-scalar .card-svg-wrap{justify-content:center;padding:4px 6px 6px}.tensor-meta-hud{align-items:center;gap:5px;transition:opacity .18s,transform .18s;display:flex}.tensor-card.bracket-canvas:not(.always-show-meta) .tensor-meta-hud{opacity:0;pointer-events:none;transform:translateY(-2px)}.tensor-card.bracket-canvas:not(.always-show-meta):hover .tensor-meta-hud,.tensor-card.bracket-canvas:not(.always-show-meta):focus-within .tensor-meta-hud{opacity:1;pointer-events:auto;transform:translateY(0)}.tensor-card.bracket-canvas.always-show-meta .tensor-meta-hud{opacity:1;pointer-events:auto;transform:none}.shape-toggle-btn{border:1px solid var(--line-strong);background:var(--surface);color:var(--ink-soft);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:6px;align-items:center;gap:5px;padding:3px 8px;font-size:11.5px;font-weight:600;transition:all .15s;display:inline-flex}.shape-toggle-btn:hover{border-color:var(--accent-press);color:var(--ink);background:var(--surface)}.shape-toggle-btn.is-active{background:var(--accent-soft);color:var(--accent-press);border-color:var(--accent-mid);font-weight:700}.results-section:has(.is-scalar) .cards-grid{flex-wrap:wrap;gap:14px;display:flex}.results-section:has(.is-scalar) .tensor-card.is-scalar{flex:200px;max-width:320px}.tensor-card-header{background:var(--bg);border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px;padding:7px 11px;display:flex}.role-pill{letter-spacing:-.01em;border-radius:4px;padding:1.5px 6px;font-size:10.5px;font-weight:700}.role-pill.pill-input{color:#475569;background:#eef2f6}.role-pill.pill-output{background:var(--accent-soft);color:var(--accent-press);font-weight:750}.role-pill.pill-target{background:var(--good-soft);color:var(--good-ink)}.pass-chip{background:var(--good-soft);color:var(--good-ink);border-radius:4px;padding:1px 6px;font-size:10.5px;font-weight:700}.tensor-card .tensor-name{color:var(--ink);font-size:14px;font-weight:800;font-family:var(--font-mono)}.card-meta{align-items:center;gap:5px;display:flex}.card-meta .shape-tag{font-size:11px;font-weight:700;font-family:var(--font-mono);background:var(--surface);border:1px solid var(--line);color:var(--ink);border-radius:5px;padding:1px 5px}.card-meta .dtype-tag{color:var(--muted);font-size:11px;font-weight:600;font-family:var(--font-mono)}.relation-pill{color:var(--accent-press);background:var(--accent-soft);border-radius:5px;padding:1px 6px;font-size:10.5px;font-weight:700}.scalar-chips-strip{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.scalar-strip-label{color:var(--muted);letter-spacing:-.01em;font-size:11px;font-weight:600}.scalar-chips-list{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.scalar-chip{background:var(--surface);border:1px solid var(--line-strong);font-size:12px;font-family:var(--font-mono);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:6px;align-items:center;gap:5px;padding:2.5px 8px;transition:all .15s;display:inline-flex;box-shadow:0 1px 2px #00000008}.scalar-chip:hover,.scalar-chip:focus-visible{border-color:var(--accent-press);background:var(--surface);outline:none;transform:translateY(-1px);box-shadow:0 2px 6px #0000000f}.scalar-chip.is-row{border-color:#a9480f47}.scalar-chip.is-row:hover,.scalar-chip.is-row:focus-visible{border-color:var(--row);box-shadow:0 2px 8px #a9480f26}.scalar-chip.is-col{border-color:#0b7a7047}.scalar-chip.is-col:hover,.scalar-chip.is-col:focus-visible{border-color:var(--col);box-shadow:0 2px 8px #0b7a7026}.scalar-chip-badge{background:var(--line-strong);color:var(--ink-soft);font-size:10px;font-weight:700;font-family:var(--font-sans);border-radius:3px;padding:1px 4px}.scalar-chip-name{color:var(--ink);font-weight:800}.scalar-chip-equals{color:var(--muted);font-weight:500}.scalar-chip-val{color:var(--ink);font-weight:800}.scalar-chip-val.num-row{color:var(--row)}.scalar-chip-val.num-col{color:var(--col)}.scalar-chip-dtype{color:var(--muted);background:var(--line);border-radius:3px;padding:1px 4px;font-size:10px;font-weight:600}.scalar-chip-axis{font-size:10px;font-weight:700;font-family:var(--font-sans);border-radius:3px;align-items:center;gap:3px;padding:1px 5px;display:inline-flex}.scalar-chip-axis.chip-row{background:var(--row-soft);color:var(--row)}.scalar-chip-axis.chip-col{background:var(--col-soft);color:var(--col)}.scalar-chip-axis i{border-radius:50%;width:5px;height:5px}.scalar-chip-axis i.row-dot{background:var(--row)}.scalar-chip-axis i.col-dot{background:var(--col)}.tensor-card.scalar-card{flex-direction:column;flex:0 210px;min-width:170px;display:flex}.tensor-card.scalar-card.is-row{border-color:#a9480f47}.tensor-card.scalar-card.is-row:hover{border-color:var(--row);box-shadow:0 3px 12px #a9480f1f}.tensor-card.scalar-card.is-col{border-color:#0b7a7047}.tensor-card.scalar-card.is-col:hover{border-color:var(--col);box-shadow:0 3px 12px #0b7a701f}.scalar-axis-chip{border-radius:4px;align-items:center;gap:4px;padding:1px 6px;font-size:11px;font-weight:700;display:inline-flex}.scalar-axis-chip i{border-radius:50%;width:6px;height:6px}.scalar-axis-chip.chip-row{background:var(--row-soft);color:var(--row)}.scalar-axis-chip.chip-col{background:var(--col-soft);color:var(--col)}.scalar-card-body{background:var(--surface);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:18px 14px;display:flex}.scalar-value-box{font-family:var(--font-mono);align-items:baseline;gap:6px;font-size:22px;font-weight:800;display:flex}.scalar-var-name{color:var(--ink-soft)}.scalar-equals{color:var(--muted);font-weight:500}.scalar-val-number.num-row{color:var(--row)}.scalar-val-number.num-col{color:var(--col)}.scalar-val-number{color:var(--ink)}.scalar-desc{color:var(--muted);text-align:center;margin:0;font-size:12px;line-height:1.4}.card-slice-controls{border-bottom:1px solid var(--line);padding:4px 11px}.card-svg-wrap{-webkit-user-select:none;user-select:none;justify-content:safe center;align-items:center;padding:8px;display:flex;overflow-x:auto}.card-tensor-svg{-webkit-user-select:none;user-select:none;-webkit-user-drag:none;max-width:100%;height:auto;display:block}.card-tensor-svg .axis-label{opacity:.7;-webkit-user-select:none;user-select:none;pointer-events:none;font-size:10.5px;font-weight:500}.card-tensor-svg .axis-label.focused-axis{opacity:1;font-size:12px;font-weight:700}.card-meta .slice-controls.inline{align-items:center;margin-right:2px;display:inline-flex}.card-meta .slice-controls.inline .page-control{font:500 11px var(--font-mono);color:var(--muted);align-items:center;gap:0;display:inline-flex}.card-meta .slice-controls.inline .page-control span{text-align:center;min-width:5.5ch}.card-meta .slice-controls.inline .page-control button{cursor:pointer;background:0 0;border-radius:6px;width:22px;height:22px}.card-meta .slice-controls.inline .page-control button:hover:not(:disabled){background:var(--line)}.card-meta .slice-controls.inline .page-control button:disabled{color:var(--line-strong)}.card-empty-state{text-align:center;padding:28px 16px}.card-empty-state .empty-title{color:var(--ink-soft);margin:0 0 4px;font-size:13px;font-weight:600}.card-empty-state .empty-desc{color:var(--muted);margin:0;font-size:12px}.toolbar-left-group{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.view-mode-toggle{background:var(--bg);border:1.5px solid var(--line-strong);border-radius:10px;align-items:center;gap:2px;padding:3px;display:inline-flex}.view-mode-btn{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:7px;align-items:center;gap:5px;padding:4px 10px;font-size:12px;font-weight:700;transition:all .15s;display:inline-flex}.view-mode-btn:hover{color:var(--ink);background:#0000000a}.view-mode-btn.active{background:var(--surface);color:var(--accent);font-weight:800;box-shadow:0 1px 3px #0000001a}.card-view-mode-btn{border:1px solid var(--line-strong);background:var(--surface);color:var(--ink-soft);cursor:pointer;border-radius:6px;align-items:center;gap:4px;padding:2px 7px;font-size:11px;font-weight:700;transition:all .15s;display:inline-flex}.card-view-mode-btn:hover{border-color:var(--accent-mid);color:var(--accent-press)}.card-view-mode-btn.is-image{background:var(--accent-soft);color:var(--accent-press);border-color:var(--accent-mid)}.card-image-wrap{flex-direction:column;padding:12px 14px;display:flex}.card-digit-gallery{flex-direction:column;gap:8px;width:100%;display:flex}.digit-gallery-header{color:var(--muted);justify-content:space-between;align-items:baseline;gap:8px;padding:0 2px;font-size:11px;font-weight:700;display:flex}.digit-gallery-hint{color:var(--muted);font-size:10px;font-weight:600}.digit-gallery-grid{grid-template-columns:repeat(auto-fill,minmax(44px,1fr));gap:6px;max-height:200px;padding:2px;display:grid;overflow-y:auto}.digit-gallery-grid::-webkit-scrollbar{width:5px}.digit-gallery-grid::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:4px}.digit-thumb-btn{border:1.5px solid var(--line);background:var(--surface);cursor:pointer;border-radius:8px;flex-direction:column;align-items:center;gap:3px;padding:3px;transition:all .12s;display:flex}.digit-thumb-btn:hover{border-color:var(--line-strong);transform:translateY(-1px)}.digit-thumb-btn.is-selected{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft);background:var(--accent-soft)}.digit-thumb-svg{aspect-ratio:1;background:var(--bg);border-radius:4px;width:100%;display:block}.digit-thumb-badge{color:var(--muted);text-align:center;white-space:nowrap;font-size:9px;font-weight:800;line-height:1.2;font-family:var(--font-mono)}.digit-thumb-badge.is-label{color:var(--accent-press)}.digit-thumb-badge.is-avg{color:var(--good-ink)}.digit-gallery-detail{background:var(--bg);border:1px solid var(--line);border-radius:10px;align-items:center;gap:12px;margin-top:4px;padding:8px 10px;display:flex}.detail-preview-svg{aspect-ratio:1;background:var(--surface);border:1px solid var(--line);border-radius:6px;flex-shrink:0;width:44px;height:44px;display:block}.detail-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.detail-title-line{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.detail-name{font-family:var(--font-mono);color:var(--ink);font-size:12px;font-weight:800}.detail-pill{border-radius:4px;padding:1px 6px;font-size:10px;font-weight:800}.detail-pill.label{color:#4338ca;background:#eef2ff}.detail-pill.avg{color:#15803d;background:#f0fdf4}.detail-stats{color:var(--muted);margin:0;font-size:11px}.detail-switch-btn{border:1px solid var(--line-strong);background:var(--surface);color:var(--ink-soft);cursor:pointer;border-radius:5px;align-self:flex-start;align-items:center;gap:4px;margin-top:3px;padding:2px 7px;font-size:11px;font-weight:700;transition:all .12s;display:inline-flex}.detail-switch-btn:hover{background:var(--accent-soft);color:var(--accent-press);border-color:var(--accent-mid)}.card-general-image-view{flex-direction:column;align-items:center;gap:8px;width:100%;display:flex}.image-batch-stepper{color:var(--ink-soft);align-items:center;gap:6px;font-size:12px;font-weight:700;display:inline-flex}.image-batch-stepper button{border:1px solid var(--line);background:var(--surface);width:24px;height:24px;color:var(--ink);cursor:pointer;border-radius:6px;place-items:center;display:grid}.image-batch-stepper button:disabled{opacity:.4;cursor:default}.image-svg-container{border:2px solid var(--line);background:var(--surface);border-radius:8px;width:130px;max-width:100%;overflow:hidden}.general-image-svg{width:100%;height:auto;display:block}.general-image-footer{color:var(--muted);font-size:11px;font-family:var(--font-mono)}.slice-controls{gap:8px;font-size:13px}.slice-path{color:var(--ink-soft);flex-wrap:wrap;justify-content:center;align-items:center;gap:2px;display:flex}.slice-path code{font:500 14px var(--font-mono)}.slice-meaning{text-align:center;color:var(--muted);flex-basis:100%;font-size:13px;font-weight:600}.index-picker,.index-stepper{align-items:center;gap:2px;display:inline-flex}.index-picker button,.index-stepper button{min-width:30px;height:32px;color:var(--muted);font:500 14px var(--font-mono);cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;padding:0 4px;display:grid}.index-picker button:hover,.index-stepper button:hover:not(:disabled){background:var(--line)}.index-picker button[aria-pressed=true]{background:var(--accent-soft);color:var(--accent-press);font-weight:700}.index-stepper button:disabled{color:var(--line-strong);cursor:default}.index-stepper output{background:var(--accent-soft);min-width:26px;color:var(--accent-press);font:700 14px var(--font-mono);text-align:center;border-radius:8px;padding:5px 4px}@media (pointer:coarse){.index-picker button,.index-stepper button{min-width:40px;height:40px}}.page-control{color:var(--muted);gap:6px}.page-control button{width:32px;height:32px;color:var(--accent-press);border-radius:8px;place-items:center;display:grid}.tensor-svg{-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;max-width:660px;height:auto;margin:0 auto}.tensor-svg.narrow{max-width:440px}.tensor-titles text{font:700 17px var(--font-mono);fill:var(--ink);-webkit-user-select:none;user-select:none}.shape-svg{fill:var(--muted);-webkit-user-select:none;user-select:none;font-size:15px;font-weight:500}.shape-svg.shape-bad{fill:var(--warn);font-weight:700}.relation-mark text{fill:var(--accent);font-family:var(--font-mono);-webkit-user-select:none;user-select:none;font-size:30px;font-weight:600}.relation-mark .relation-label{fill:var(--muted);font-family:var(--font-sans);font-size:13px;font-weight:600}.dtype-svg{font:14px var(--font-mono);fill:var(--muted);-webkit-user-select:none;user-select:none}.axis-label{font:500 15px var(--font-mono);-webkit-user-select:none;user-select:none;pointer-events:none}.row-axis{fill:var(--row)}.col-axis{fill:var(--col)}.focused-axis{font-size:17px;font-weight:700}.tensor-svg.narrow .axis-label{font-size:14px}.tensor-svg.narrow .tensor-titles text{font-size:15px}.tensor-svg.narrow .shape-svg{font-size:14px}.stack-layer{fill:#f7f6fb;stroke:var(--line-strong)}.tensor-cell{-webkit-user-select:none;user-select:none}.tensor-cell rect{stroke-width:2px}.tensor-cell text{fill:var(--ink-soft);-webkit-user-select:none;user-select:none;pointer-events:none}.tensor-cell.is-selected text{fill:var(--ink);font-weight:700}.tensor-cell:hover rect,.tensor-cell:focus rect{stroke:var(--accent);stroke-width:2px}.cell-default{fill:var(--surface);stroke:var(--line-strong)}.cell-selected{fill:var(--accent-soft);stroke:var(--accent)}.cell-error{fill:var(--warn-soft);stroke:var(--warn)}.is-passed .result-grid .cell-selected,.is-passed .result-grid .cell-default{fill:var(--good-soft);stroke:var(--good)}.empty-svg{fill:var(--muted);font-size:14px}.target-preview{border-left:2px solid var(--line);text-align:left;background:0 0;flex-shrink:0;align-self:center;width:190px;min-height:0;margin:0;padding:0 0 0 16px}.target-preview h3{margin:0;font-size:15px;font-weight:700}.shape-label{font:500 14px var(--font-mono);color:var(--muted)}.target-preview svg{max-width:100%;height:auto;max-height:none;margin:8px 0 2px}.scene-and-target.target-below{flex-direction:column;align-items:stretch;gap:8px}.target-below .target-preview{border-top:2px solid var(--line);border-left:0;flex-wrap:wrap;align-items:center;gap:4px 12px;width:auto;padding:8px 0 0;display:flex}.target-below .target-preview svg,.target-below .target-match,.target-below .target-error,.target-below .target-caption{margin:0}.target-preview .cell-default{fill:#f4f3f7;stroke:#f4f3f7}.target-dtype{font:13px var(--font-mono);color:var(--muted)}.target-caption{color:var(--muted);margin-top:4px;font-size:13px}.target-match,.target-error{align-items:center;gap:4px;margin-top:6px;font-size:13px;font-weight:700;display:flex}.target-match{color:var(--good-ink)}.target-preview .target-match svg{flex:none;width:16px;margin:0}.target-error{color:var(--warn)}.execution-flow{border-top:0}.execution-flow summary{min-height:44px;color:var(--muted);align-items:center;gap:8px;padding:0 20px;font-size:14px;font-weight:700;list-style:none;display:flex}.execution-flow summary::-webkit-details-marker{display:none}.execution-flow summary:before{content:"";border-bottom:2.5px solid;border-right:2.5px solid;width:7px;height:7px;margin:0 3px;transition:transform .15s;transform:rotate(-45deg)}.execution-flow[open] summary:before{transform:rotate(45deg)}.playback-toolbar{background:var(--bg);border:0;border-radius:14px;gap:12px;margin:0 20px 16px}.playback-controls .icon-button,.play-button{border-radius:10px;width:36px;height:36px}.play-button{border:2px solid var(--line-strong);color:var(--accent-press)}.step-count,.step-count>span,.step-summary,.step-summary code,.view-note{color:var(--muted)}.step-operation{color:var(--accent-press)}.step-slider{width:80px}.applied-scene{border-bottom:2px solid var(--line);padding:16px 20px}.applied-heading{flex-wrap:wrap;gap:4px 16px;font-size:15px}.applied-heading span,.applied-pair small,.connection-plot small,.box-overlay small{color:var(--muted);font-size:13px;line-height:1.5}.applied-pair{margin-top:12px}.applied-pair.has-goal{grid-template-columns:repeat(3,minmax(0,1fr))}.applied-pair figcaption{margin-bottom:8px;font-size:13px}.applied-pair svg{border-radius:12px}.applied-pair svg text,.connection-plot svg text,.box-overlay svg text{fill:var(--muted);font-size:12px}.connection-plot,.box-overlay{border:2px solid var(--line);border-radius:14px}.connection-plot figcaption,.box-overlay figcaption{font-size:13px}.memory-facts{border-radius:12px;font-size:13px}.visual-empty{color:var(--muted)}.scalar-inputs{border-bottom:2px solid var(--line);padding:10px 20px}.scalar-inputs code{border-radius:8px;padding:4px 10px;font-size:13px;font-weight:700}.prediction{background:var(--accent-soft);border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 24px;margin:0;padding:12px 16px;display:flex}.prediction strong{font-size:15px}.prediction-note{color:var(--muted);font-size:13px}.prediction-form,.prediction-options{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.prediction-form input{background:var(--surface);width:150px;min-height:44px;color:var(--ink);font:500 15px var(--font-mono);border:0;border-radius:10px;padding:0 12px}.prediction-options button{background:var(--surface);min-height:44px;color:var(--ink);cursor:pointer;border:0;border-radius:10px;padding:8px 14px;font-size:14px;font-weight:600}.prediction-options button:hover{color:var(--accent-press)}.prediction-options .text-button{color:var(--accent-press);background:0 0}.prediction-error{color:var(--warn);flex-basis:100%;font-size:13px;font-weight:600}.prediction.is-right strong{color:var(--good-ink)}.boss-progress-panel{background:0 0;border:0;margin:0;padding:0}.boss-progress-phases{gap:8px}.boss-progress-phases button{border:2px solid var(--line);background:var(--surface);min-height:56px;color:var(--ink);border-radius:14px;padding:8px 12px}.boss-progress-phases button.current{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-press)}.boss-progress-phases button:disabled{color:var(--muted)}.boss-progress-phases strong{font-size:14px}.boss-progress-phases small{color:var(--muted);margin-top:0;font-size:13px}.boss-progress-phases button.completed .boss-phase-number{color:var(--accent)}.solve-footer{z-index:10;border-top:1px solid var(--line);background:var(--surface);flex:none;width:100%;padding:0;position:relative;bottom:auto}.solve-footer-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 16px;width:100%;max-width:none;margin:0;padding:10px 24px 12px;display:flex}.solve-actions,.solve-submit{align-items:center;gap:12px;display:flex}.solve-submit{gap:16px;min-width:0;margin-left:auto}.execution-status{color:var(--muted);align-items:center;gap:6px;font-size:14px;display:flex}.execution-status.has-error{color:var(--warn)}.solve-sheet{border-top:0;padding:0;animation:.2s ease-out both sheet-in}.solve-sheet .solve-footer-inner{gap:16px 20px;padding:14px 24px 16px}.solve-sheet.is-passed{background:var(--good-soft);--sheet-strong:var(--good);--sheet-press:var(--good-press);--sheet-ink:var(--good-ink);--sheet-text:var(--good-text);--sheet-line:#bfe3cd}.solve-sheet.is-wrong{background:var(--warn-soft);--sheet-strong:var(--warn);--sheet-press:var(--warn-press);--sheet-ink:var(--warn-press);--sheet-text:var(--warn-text);--sheet-line:#e8c9ab}.solve-sheet.is-almost{background:var(--accent-soft);--sheet-strong:var(--accent);--sheet-press:var(--accent-press);--sheet-ink:var(--accent-press);--sheet-text:var(--ink-soft);--sheet-line:var(--accent-mid)}.sheet-copy{flex:420px;align-items:center;gap:16px;min-width:0;display:flex}.sheet-icon{background:var(--sheet-strong);color:#fff;border-radius:50%;flex:none;place-items:center;width:60px;height:60px;animation:.32s ease-out both sheet-pop;display:grid}.sheet-title{color:var(--sheet-ink);font-size:26px;font-weight:800;line-height:1.3}.sheet-message{color:var(--sheet-text);word-break:keep-all;margin-top:2px;font-size:15px}.sheet-checks{color:var(--sheet-text);flex-wrap:wrap;align-items:center;gap:4px 14px;margin-top:6px;font-size:14px;display:flex}.sheet-checks strong{color:var(--sheet-ink);font-size:15px}.sheet-dots{gap:6px;display:inline-flex}.sheet-dots i{box-sizing:border-box;border:2px solid var(--sheet-line);border-radius:50%;width:14px;height:14px}.sheet-dots i.filled{border-color:var(--sheet-strong);background:var(--sheet-strong);animation:.22s ease-out both sheet-dot}.sheet-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px 16px;margin-left:auto;display:flex}.solve-sheet .button{border-color:var(--sheet-line);min-height:56px;box-shadow:0 3px 0 var(--sheet-line);color:var(--sheet-text)}.solve-sheet .sheet-primary{border-color:var(--sheet-strong);box-shadow:0 4px 0 var(--sheet-press);background:var(--sheet-strong);color:#fff;padding:0 36px;font-size:17px;font-weight:800}.solve-sheet .sheet-primary:hover:not(:disabled){border-color:var(--sheet-press);background:var(--sheet-press)}.solve-sheet .sheet-primary:active:not(:disabled){box-shadow:0 0 0 var(--sheet-press);transform:translateY(4px)}.sheet-unlock{color:var(--sheet-text);font-size:14px}.sheet-doc-link{color:var(--sheet-text);border:1.5px solid var(--sheet-line);white-space:nowrap;background:#ffffffb3;border-radius:999px;align-items:center;gap:6px;padding:6px 14px;font-size:13px;text-decoration:none;transition:all .15s;display:inline-flex}.sheet-doc-link:hover{border-color:var(--sheet-strong);color:var(--sheet-strong);background:#fff}.sheet-doc-link strong{color:var(--sheet-strong);margin-right:2px;font-weight:700}.sheet-unlock button{min-height:44px;color:inherit;background:0 0;border:0;margin-left:6px;padding:0;font-size:14px;font-weight:700;text-decoration:underline}@keyframes sheet-in{0%{transform:translateY(100%)}to{transform:none}}@keyframes sheet-pop{0%{transform:scale(.5)}70%{transform:scale(1.12)}to{transform:none}}@keyframes sheet-dot{0%{transform:scale(0)}to{transform:none}}.path-page{max-width:1120px;margin:0 auto}.path-heading{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 16px;margin-bottom:16px;display:flex}.path-heading h1{letter-spacing:-.02em;font-size:30px;font-weight:800;line-height:1.3}.path-heading span{color:var(--muted);font-size:15px;font-weight:700}.path-resume{border-radius:var(--radius);background:var(--accent-soft);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;padding:24px 28px;display:flex}.path-resume>div{flex:320px;min-width:0}.path-resume p{color:var(--accent-press);font-size:14px;font-weight:700}.path-resume h2{letter-spacing:-.02em;margin:2px 0 10px;font-size:26px;font-weight:800;line-height:1.35}.path-resume-meter{font-variant-numeric:tabular-nums;align-items:center;gap:12px;max-width:360px;font-size:14px;font-weight:700;display:flex}.path-stage{border-bottom:2px solid var(--line);flex-wrap:wrap;gap:16px 24px;padding:24px 0;display:flex}.path-stage:last-of-type{border-bottom:0}.path-stage-title{flex:0 0 150px}.path-stage-title h2{font-size:20px;font-weight:800}.path-stage-title p{color:var(--muted);word-break:keep-all;font-size:14px}.path-stage-title strong{color:var(--muted);font-variant-numeric:tabular-nums;margin-top:6px;font-size:14px;display:block}.path-nodes{grid-template-columns:repeat(var(--path-columns,5), minmax(0, 1fr));flex:999 640px;gap:20px 12px;min-width:0;display:grid;position:relative}.path-link{background:var(--line);border-radius:3px;height:5px;position:absolute;top:32px;left:10%}.path-link.is-done{background:var(--accent)}.path-node{text-align:center;flex-direction:column;align-items:center;gap:2px;min-width:0;display:flex;position:relative}.path-node strong{word-break:keep-all;font-size:15px;line-height:1.4}.path-node span{color:var(--muted);font-variant-numeric:tabular-nums;font-size:13px}.path-dot{width:68px;height:68px;color:var(--muted);background:#f4f3f7;border:0;border-radius:50%;place-items:center;margin-bottom:10px;font-size:22px;font-weight:800;transition:transform 80ms,box-shadow 80ms;display:grid;box-shadow:0 5px #dfdde6}.path-dot:hover{background:var(--line-strong)}.path-dot:active{transform:translateY(5px);box-shadow:0 0 #dfdde6}.path-dot.is-done{box-shadow:0 5px 0 var(--accent-press);background:var(--accent);color:#fff}.path-dot.is-done:hover{background:#7c54f1}.path-dot.is-started{box-shadow:0 5px 0 var(--accent-mid);background:var(--accent-soft);color:var(--accent-press)}.path-dot.is-current{border:4px solid var(--accent);box-shadow:0 0 0 7px var(--accent-soft);background:var(--surface);color:var(--accent-press)}.path-dot.is-boss{border:2px solid var(--accent-mid);box-shadow:0 5px 0 var(--accent-mid);background:var(--accent-soft);border-radius:20px;padding:12px}.path-dot.is-boss .boss-art{width:100%}.path-dot[aria-expanded=true]{outline:3px solid var(--accent);outline-offset:3px}.path-chapter{background:var(--bg);border-radius:16px;flex-basis:100%;padding:16px 20px}.path-chapter p{color:var(--muted);word-break:keep-all;font-size:14px}.path-chapter p strong{color:var(--ink);margin-right:6px}.path-chapter ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 24px;margin:10px 0 0;padding:0;list-style:none;display:grid}.path-chapter li button{text-align:left;background:0 0;border:0;border-radius:12px;align-items:center;gap:10px;width:100%;min-height:48px;padding:4px 10px;font-size:15px;display:flex}.path-chapter li button:hover{background:var(--surface)}.path-chapter li button.is-next{background:var(--accent-soft);font-weight:700}.path-exercise-title{word-break:keep-all;flex:1;min-width:0}.path-chapter small{color:var(--muted);font-size:13px}.path-chapter li svg:last-child{color:var(--muted);flex:none}.path-check{box-sizing:border-box;border:2px solid var(--line-strong);background:var(--surface);border-radius:50%;flex:none;place-items:center;width:22px;height:22px;display:grid}.path-check.is-done{border-color:var(--accent);background:var(--accent);color:#fff}.path-note{color:var(--muted);margin-top:8px;font-size:13px}.game-page-heading h1{font-size:30px;font-weight:800}.achievement-category,.achievement-status,.record-note,.collection-count{font-size:13px}.help-drawer{border-radius:20px 0 0 20px}.drawer-header h2>svg,.hint-block>span{color:var(--accent-press)}.hint-block{background:var(--bg);border-radius:14px}.hint-block>span{font-size:13px}.hint-block p,.solution-block p,.syntax-guide p{color:var(--ink-soft);font-size:14px;line-height:1.7}.drawer-description{color:var(--muted);font-size:14px;line-height:1.7}.solution-block pre,.syntax-guide pre{background:var(--bg);border:0;border-radius:12px;font-size:13px}.syntax-guide p code{background:var(--bg);color:var(--accent-press);border-radius:6px;font-size:13px}.full-width{width:100%}.drawer-resource-card{background:var(--bg);border:1px solid var(--line-strong);border-radius:14px;margin-top:16px;padding:14px 16px}.drawer-resource-badge{color:var(--accent-press);align-items:center;gap:6px;margin-bottom:6px;font-size:12px;font-weight:700;display:flex}.drawer-resource-link{color:var(--accent,#7045ef);text-underline-offset:3px;align-items:center;gap:6px;font-size:14px;font-weight:700;text-decoration:underline;display:inline-flex}.drawer-resource-link:hover{color:var(--accent-press)}.drawer-resource-desc{color:var(--muted);margin:6px 0 0;font-size:13px;line-height:1.6}.syntax-resource-banner{background:var(--accent-soft,#f1ecfd);border:1px solid var(--accent-mid,#c6b5f9);border-radius:12px;flex-direction:column;gap:4px;margin-bottom:16px;padding:12px 14px;display:flex}.syntax-resource-label{color:var(--accent-press);letter-spacing:.02em;font-size:11px;font-weight:700}@media (max-width:1099px){.solve-screen{height:auto;min-height:100dvh;overflow-y:auto}.solve-main{flex:none;padding:10px 14px 28px;overflow:visible}.solve-columns{background:0 0;flex-direction:column;gap:12px;display:flex;overflow:visible}.problem-panel,.visualization-panel,.editor-panel{border:1px solid var(--line);border-radius:14px;min-height:auto;overflow:visible}.problem-body,.visualization-panel .tab-panel,.visualization-panel .project-scene-panel,.editor-body{overflow:visible}.editor-panel{min-height:0;position:static}.path-nodes{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.path-link{display:none}}@media (max-width:860px){.boss-nav-title{display:none}}@media (max-width:768px){.solve-screen .solve-progress progress{width:180px}}@media (max-width:700px){.site-header{justify-content:space-between;gap:2px 12px;padding:8px 16px}.site-header nav{flex-basis:100%;order:3;gap:4px}.site-header nav button{white-space:nowrap;flex:auto;padding:0 6px}.site-main{padding:20px 16px 40px}.solve-topbar{border-bottom:0;gap:8px;padding:6px 16px 6px 6px}.solve-screen .solve-topbar{padding:0}.solve-topbar-inner{align-items:center;gap:8px;padding:6px 16px 6px 6px;display:flex}.solve-close{margin-left:0}.solve-progress{gap:10px}.solve-screen .solve-progress{flex:1;justify-content:flex-start;min-width:0}.solve-progress progress,.solve-screen .solve-progress progress{width:100%;max-width:none;height:10px}.solve-progress-title,.solve-level,.solve-profile .site-profile-info{display:none}.solve-project-header{flex:1;justify-content:flex-start;min-width:0}.solve-project-title{text-overflow:ellipsis;font-size:13.5px;overflow:hidden}.boss-nav-progress{flex:1;justify-content:flex-start;min-width:0}.boss-nav-title{display:none}.boss-nav-phases{gap:2px;padding:2px}.boss-nav-btn{min-height:28px;padding:0 8px;font-size:12px}.solve-main{gap:12px;padding:4px 16px 12px}.mission-meta{display:none}.mission h1{margin-top:0;font-size:24px}.mission-text{font-size:15px}.solve-columns{gap:12px}.canvas-toolbar{padding:10px 12px 2px}.result-status{display:none}.scene-and-target{flex-direction:column;align-items:stretch;gap:8px;padding:0 12px}.target-preview{border-top:2px solid var(--line);border-left:0;flex-wrap:wrap;align-items:center;gap:4px 12px;width:auto;padding:8px 0 0;display:flex}.target-preview svg{margin:0}.target-dtype{display:none}.target-match,.target-error,.target-caption{margin:0}.execution-flow summary{padding:0 12px}.playback-toolbar{margin:0 12px 12px}.applied-scene{padding:12px}.applied-pair{grid-template-columns:1fr 1fr;gap:12px}.applied-pair.has-goal{grid-template-columns:1fr 1fr}.editor-panel{gap:6px;padding:4px 12px 12px}.code-editor,.code-editor .cm-editor{min-height:72px}.slice-notes,.concept-note{display:none}.boss-progress-phases{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.boss-progress-phases button{justify-content:center;padding:6px}.boss-progress-phases button>span:last-child{display:none}.prediction-form input{width:130px}.solve-footer{padding:0}.solve-footer-inner{flex-wrap:nowrap;gap:10px;padding:12px 16px 20px}.solve-actions{gap:10px}.solve-actions .button{width:56px;min-height:56px;padding:0}.solve-actions .button span{display:none}.solve-submit{flex:1}.solve-submit .execution-status span,.solve-submit .execution-status svg{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.solve-primary{flex:1;padding:0 16px}.solve-primary kbd{display:none}.solve-sheet{padding:0}.solve-sheet .solve-footer-inner{flex-wrap:wrap;padding:14px 16px 20px}.sheet-copy{flex-basis:100%;align-items:flex-start;gap:12px}.sheet-icon{width:44px;height:44px}.sheet-icon svg{width:24px;height:24px}.sheet-title{font-size:22px}.sheet-actions{flex:1;gap:8px 12px;margin-left:0}.sheet-unlock{flex-basis:100%;font-size:13px}.sheet-unlock button{display:none}.solve-sheet .sheet-primary{flex:1;padding:0 16px}.path-heading h1{font-size:26px}.path-resume{padding:20px}.path-resume h2{font-size:22px}.path-resume .button{width:100%}.path-stage-title{flex-basis:100%}.path-chapter{padding:12px}.path-chapter ul{grid-template-columns:minmax(0,1fr)}.help-drawer{border-radius:0}}@media (max-width:500px){.boss-nav-name{display:none}.boss-nav-btn{padding:0 6px}}@media (prefers-reduced-motion:reduce){.solve-sheet,.sheet-icon,.sheet-dots i.filled{animation:none}.button:active:not(:disabled),.game-primary:active,.path-dot:active{transform:none}}.canvas-tab-bar{background:var(--surface);border-bottom:1px solid var(--line);align-items:center;gap:6px;padding:8px 16px;display:flex}.canvas-tab{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:7px;padding:6px 12px;font-size:13px;font-weight:600;transition:all .15s;display:inline-flex}.canvas-tab:hover{color:var(--ink);background:var(--bg)}.canvas-tab.active{background:var(--bg);color:var(--accent);box-shadow:none;border:0;font-weight:700}.tab-pill{border-radius:999px;padding:2px 7px;font-size:11px;font-weight:700;line-height:1.2}.tab-pill.pass{background:var(--good-soft);color:var(--good-ink)}.tab-pill.diff{color:#b91c1c;background:#fee2e2}.tab-pill.count{background:var(--line);color:var(--muted)}.solve-topbar-right{justify-self:end;align-items:center;gap:10px;display:flex}.solve-help-btn{border:1.5px solid var(--line-strong);background:var(--surface);color:var(--ink-soft);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:6px 13px;font-size:13px;font-weight:650;transition:all .15s;display:inline-flex}.solve-help-btn:hover{background:var(--bg);color:var(--accent);border-color:var(--accent-mid)}.solve-help-btn svg{color:var(--accent)}.tour-backdrop{z-index:99990;cursor:pointer;background:0 0;animation:.25s ease-out tour-backdrop-fade;position:fixed;inset:0}@keyframes tour-backdrop-fade{0%{opacity:0}to{opacity:1}}.tour-spotlight-glow{pointer-events:none;z-index:99995;border:2px solid var(--accent);will-change:top, left, width, height;border-radius:14px;transition:top .35s cubic-bezier(.16,1,.3,1),left .35s cubic-bezier(.16,1,.3,1),width .35s cubic-bezier(.16,1,.3,1),height .35s cubic-bezier(.16,1,.3,1);animation:.25s cubic-bezier(.16,1,.3,1) tour-glow-enter;position:fixed;box-shadow:0 0 0 9999px #0f172ab8,0 0 0 4px #7045ef38,0 0 28px #7045ef73}@keyframes tour-glow-enter{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.tour-popover-card{z-index:100000;background:var(--surface);color:var(--ink);border:1.5px solid var(--line-strong);box-sizing:border-box;will-change:top, left;border-radius:18px;flex-direction:column;gap:14px;padding:20px 22px 18px;transition:top .35s cubic-bezier(.16,1,.3,1),left .35s cubic-bezier(.16,1,.3,1),width .35s cubic-bezier(.16,1,.3,1);animation:.25s cubic-bezier(.16,1,.3,1) tour-popover-enter;display:flex;position:fixed;box-shadow:0 20px 48px -10px #0f172a47,0 0 0 1px #0000000d}@keyframes tour-popover-enter{0%{opacity:0;transform:translateY(10px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.tour-popover-header{justify-content:space-between;align-items:center;gap:10px;display:flex}.tour-popover-badge{background:var(--accent-soft);color:var(--accent);letter-spacing:-.01em;border-radius:999px;align-items:center;gap:6px;padding:3px 10px;font-size:11.5px;font-weight:700;display:inline-flex}.tour-badge-text{animation:.22s ease-out tour-badge-fade}@keyframes tour-badge-fade{0%{opacity:0}to{opacity:1}}.tour-badge-dot{background:var(--accent);border-radius:50%;width:6px;height:6px;animation:1.8s infinite tour-dot-pulse}@keyframes tour-dot-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.75)}}.tour-close-btn{width:28px;height:28px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;transition:all .15s;display:inline-flex}.tour-close-btn:hover{background:var(--bg);color:var(--ink)}.tour-popover-body{flex-direction:column;gap:8px;display:flex}.tour-popover-body-animated{animation:.24s cubic-bezier(.16,1,.3,1) tour-body-fade-in}@keyframes tour-body-fade-in{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}.tour-popover-title{align-items:center;gap:8px;display:flex}.tour-title-icon{background:var(--accent-soft);width:28px;height:28px;color:var(--accent);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.tour-popover-title h3{color:var(--ink);letter-spacing:-.02em;margin:0;font-size:16px;font-weight:750}.tour-popover-text{color:var(--ink-soft);margin:0;font-size:13.5px;line-height:1.65}.tour-popover-tip{background:var(--bg);border:1px solid var(--line);color:var(--ink-soft);border-radius:10px;margin-top:4px;padding:8px 12px;font-size:12px;line-height:1.55}.tour-popover-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;margin-top:2px;padding-top:12px;display:flex}.tour-skip-btn{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:4px 6px;font-size:12.5px;font-weight:600;transition:all .15s}.tour-skip-btn:hover{color:var(--ink);text-decoration:underline}.tour-dots{align-items:center;gap:5px;display:flex}.tour-dot{background:var(--line-strong);cursor:pointer;border:0;border-radius:999px;width:6px;height:6px;padding:0;transition:all .25s cubic-bezier(.16,1,.3,1)}.tour-dot:hover{background:var(--muted)}.tour-dot.active{background:var(--accent);width:18px}.tour-nav-btns{align-items:center;gap:6px;display:flex}.tour-btn{cursor:pointer;border-radius:10px;align-items:center;gap:4px;padding:6px 13px;font-size:13px;font-weight:650;transition:all .15s;display:inline-flex}.tour-btn-prev{border:1.5px solid var(--line-strong);background:var(--surface);color:var(--ink-soft);animation:.2s cubic-bezier(.16,1,.3,1) tour-btn-fade-in}@keyframes tour-btn-fade-in{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}.tour-btn-prev:hover{background:var(--bg);color:var(--ink)}.tour-btn-next{border:1.5px solid var(--accent);background:var(--accent);color:#fff;box-shadow:0 2px 4px #7045ef40}.tour-btn-next:hover{background:var(--accent-press);border-color:var(--accent-press)}.tab-shape-pill{font-size:11px;font-family:var(--font-mono);opacity:.75;background:#0000000d;border-radius:4px;margin-left:5px;padding:1px 5px;font-weight:600}.input-tabs button.active .tab-shape-pill{background:var(--accent-soft);color:var(--accent-press)}.visualization-panel .tab-panel{flex-direction:column;flex:1;min-width:0;display:flex;background:0 0!important;border:none!important;border-radius:0!important;padding:0!important}.output-compare-view{flex-direction:column;gap:14px;padding:16px 20px 20px;display:flex}.compare-status-banner{border:1px solid;border-radius:12px;justify-content:space-between;align-items:center;gap:14px;padding:11px 16px;transition:all .2s;display:flex}.compare-status-banner.is-pass{background:var(--good-soft);color:var(--good-text);border-color:#bbf7d0}.compare-status-banner.is-shape-diff{color:#991b1b;background:#fef2f2;border-color:#fecaca}.compare-status-banner.is-val-diff{background:var(--warn-soft);color:var(--warn-text);border-color:#fed7aa}.compare-status-banner.is-waiting{color:var(--muted);background:#f8fafc;border-color:#e2e8f0}.status-banner-main{align-items:center;gap:10px;display:flex}.status-icon{flex-shrink:0;justify-content:center;align-items:center;display:flex}.status-icon.pass{color:var(--good)}.status-icon.diff{color:#dc2626}.status-icon.warn{color:#ea580c}.status-icon.waiting{color:#64748b}.status-text strong{font-size:13.5px;font-weight:700;line-height:1.3;display:block}.status-text span{opacity:.85;font-size:12.5px}.goto-debugger-btn{border:1px solid var(--accent-mid);background:var(--surface);color:var(--accent);cursor:pointer;white-space:nowrap;border-radius:8px;align-items:center;gap:5px;padding:5px 11px;font-size:12px;font-weight:600;transition:all .15s;display:inline-flex}.goto-debugger-btn:hover{background:var(--accent);color:#fff;border-color:var(--accent)}.compare-cards-container{grid-template-columns:1fr auto 1fr;align-items:stretch;gap:12px;display:grid}.compare-cards-container.narrow{grid-template-columns:1fr}.compare-card{background:var(--surface);border:1px solid var(--line-strong);border-radius:14px;flex-direction:column;gap:8px;min-width:0;padding:12px 14px;display:flex;box-shadow:0 1px 3px #00000008}.compare-card.my-out-card{border:1.5px solid var(--accent-mid)}.compare-card.target-card{border:1px solid var(--line-strong)}.compare-card.card-pass{border-color:var(--good)}.card-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:8px;padding-bottom:8px;display:flex}.card-title-group{align-items:center;gap:8px;display:flex}.card-badge{letter-spacing:-.01em;border-radius:5px;padding:2px 7px;font-size:11px;font-weight:700}.card-badge.out-badge{background:var(--accent-soft);color:var(--accent-press)}.card-badge.target-badge{background:var(--good-soft);color:var(--good-ink)}.card-header .tensor-name{font-family:var(--font-mono);font-size:14.5px;font-weight:800}.card-meta{font-family:var(--font-mono);align-items:center;gap:6px;display:flex}.shape-tag{border-radius:6px;padding:2px 6px;font-size:12px;font-weight:700}.shape-tag.tag-good{color:#166534;background:#dcfce7}.shape-tag.tag-bad{color:#991b1b;background:#fee2e2}.shape-tag.tag-neutral{color:#64748b;background:#f1f5f9}.shape-tag.tag-target{color:#334155;background:#f1f5f9}.dtype-tag{color:var(--muted);font-size:11px}.card-controls{margin:-4px 0 2px}.card-canvas-wrap{-webkit-user-select:none;user-select:none;background:0 0;justify-content:safe center;align-items:center;min-height:140px;padding:8px 4px;display:flex;overflow-x:auto}.compare-tensor-svg{-webkit-user-select:none;user-select:none;-webkit-user-drag:none;max-width:100%;height:auto;display:block}.empty-canvas-message{text-align:center;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:24px 12px;font-size:13px;display:flex}.empty-canvas-message p{margin:0;font-weight:500}.empty-canvas-message small{opacity:.8;font-size:12px}.compare-operator{justify-content:center;align-items:center;display:flex}.operator-pill{width:32px;height:32px;font-size:14px;font-weight:800;font-family:var(--font-mono);border:1px solid var(--line-strong);background:var(--surface);color:var(--muted);border-radius:50%;justify-content:center;align-items:center;display:flex}.operator-pill.is-pass{color:#15803d;background:#dcfce7;border-color:#86efac}.operator-pill.is-diff{color:#dc2626;background:#fee2e2;border-color:#fca5a5}.operator-pill.is-warn{color:#c2410c;background:#ffedd5;border-color:#fdba74}.compare-help-footer{color:var(--muted);text-align:center;background:0 0;border:0;padding:6px 0 0;font-size:12.5px}.compare-help-footer p{margin:0}.compare-help-footer strong{color:var(--accent);font-weight:600}.card-canvas-wrap.has-prediction{align-items:stretch;padding:4px 2px}.target-prediction-container{background:var(--accent-soft);border:1px dashed var(--accent-mid);text-align:left;border-radius:12px;flex-direction:column;gap:10px;width:100%;padding:12px 12px 10px;display:flex}.target-prediction-intro{flex-direction:column;gap:3px;display:flex}.target-prediction-pill{background:var(--accent);color:#fff;letter-spacing:-.2px;border-radius:999px;align-self:flex-start;align-items:center;gap:5px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-flex}.target-prediction-title{color:var(--ink);font-size:13.5px;font-weight:800;line-height:1.35}.target-prediction-sub{color:var(--muted);margin:0;font-size:11.5px;line-height:1.4}.target-prediction-options{flex-direction:column;gap:5px;width:100%;display:flex}.target-prediction-opt-btn{border:1px solid var(--line-strong);background:var(--surface);width:100%;color:var(--ink);text-align:left;cursor:pointer;border-radius:8px;align-items:center;gap:8px;padding:7px 10px;font-size:12.5px;font-weight:600;transition:all .15s;display:flex}.target-prediction-opt-btn:hover{border-color:var(--accent);color:var(--accent-press);background:#fff;box-shadow:0 1px 3px #7045ef1f}.target-prediction-opt-btn .opt-idx{background:var(--line);width:17px;height:17px;color:var(--muted);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:10.5px;font-weight:700;display:inline-flex}.target-prediction-opt-btn:hover .opt-idx{background:var(--accent);color:#fff}.target-prediction-opt-btn .opt-text{flex:1}.target-prediction-form{flex-direction:column;gap:5px;width:100%;display:flex}.target-prediction-input-row{gap:6px;width:100%;display:flex}.target-prediction-input{border:1px solid var(--line-strong);background:var(--surface);min-height:36px;color:var(--ink);font-family:var(--font-mono);border-radius:8px;flex:1;padding:0 10px;font-size:13px;font-weight:600}.target-prediction-input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 2px #7045ef26}.target-prediction-submit-btn{background:var(--accent);color:#fff;cursor:pointer;border:0;border-radius:8px;flex-shrink:0;min-height:36px;padding:0 13px;font-size:12.5px;font-weight:700;transition:all .15s}.target-prediction-submit-btn:hover:not(:disabled){background:var(--accent-press)}.target-prediction-submit-btn:disabled{opacity:.45;cursor:not-allowed}.target-prediction-error{color:var(--warn);margin:0;font-size:11px;font-weight:600}.target-prediction-footer{justify-content:center;padding-top:2px;display:flex}.target-prediction-skip-btn{color:var(--muted);cursor:pointer;text-underline-offset:3px;background:0 0;border:0;padding:3px 6px;font-size:11.5px;text-decoration:underline;transition:color .15s}.target-prediction-skip-btn:hover{color:var(--accent)}.target-revealed-wrap{flex-direction:column;align-items:center;gap:8px;width:100%;display:flex}.target-revealed-banner{text-align:left;border-radius:9px;flex-direction:column;gap:3px;width:100%;padding:7px 10px;display:flex}.target-revealed-banner.is-right{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0}.target-revealed-banner.is-wrong{color:#92400e;background:#fffbeb;border:1px solid #fde68a}.feedback-banner-header{justify-content:space-between;align-items:center;gap:6px;display:flex}.feedback-title-group{align-items:center;gap:5px;display:flex}.feedback-banner-icon{justify-content:center;align-items:center;display:inline-flex}.feedback-banner-verdict{font-size:12px;font-weight:800}.feedback-banner-why{opacity:.9;margin:0;padding-left:19px;font-size:11px;line-height:1.35}.feedback-banner-close{color:inherit;opacity:.6;cursor:pointer;background:0 0;border:0;border-radius:4px;justify-content:center;align-items:center;padding:2px;display:flex}.feedback-banner-close:hover{opacity:1}.tensor-card.card-target.has-prediction{min-width:260px}.tensor-card-prediction-wrap{padding:10px}.card-feedback-banner-wrap{padding:8px 10px 0}.workbench-sections{position:relative}.connection-overlay{pointer-events:none;z-index:2;position:absolute;inset:0;overflow:visible}@media (max-width:380px){.site-header nav button{padding:0 4px;font-size:14px}}.card-expand-btn{width:24px;height:24px;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;place-items:center;padding:0;display:grid}.card-expand-btn:hover,.card-expand-btn:focus-visible{border-color:var(--line-strong);background:var(--surface);color:var(--accent-press)}.tensor-inspector{border:1px solid var(--line-strong);background:var(--surface);width:min(1120px,100vw - 32px);max-width:none;height:min(760px,100dvh - 48px);max-height:none;color:var(--ink);border-radius:14px;margin:auto;padding:0;box-shadow:0 24px 60px #0f172a2e}.tensor-inspector::backdrop{background:#0f172a6b}body:has(.tensor-inspector[open]){overflow:hidden}.inspector-frame{flex-direction:column;height:100%;min-height:0;display:flex}.inspector-header{border-bottom:1px solid var(--line);align-items:center;gap:8px;padding:12px 12px 12px 18px;display:flex}.inspector-role{color:var(--muted);font-size:11px;font-weight:700}.inspector-name{font:800 17px var(--font-mono);overflow-wrap:anywhere}.inspector-header .shape-tag{font:700 12px var(--font-mono);border:1px solid var(--line);border-radius:5px;padding:1px 6px}.inspector-header .dtype-tag{font:500 12px var(--font-mono);color:var(--muted)}.inspector-close{width:40px;height:40px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;margin-left:auto;display:grid}.inspector-close:hover{background:var(--line);color:var(--ink)}.inspector-stats{border-bottom:1px solid var(--line);background:var(--bg);flex-wrap:wrap;gap:6px 22px;margin:0;padding:10px 18px;display:flex}.inspector-stats>div{align-items:baseline;gap:6px;display:flex}.inspector-stats dt{color:var(--muted);font-size:12px}.inspector-stats dd{font:700 14px var(--font-mono);font-variant-numeric:tabular-nums;margin:0}.inspector-stats .is-warn dd{color:var(--warn)}.inspector-tools{flex-wrap:wrap;align-items:center;gap:10px 16px;padding:10px 18px;display:flex}.inspector-tools:empty{display:none}.inspector-axes{justify-content:flex-start}.inspector-axes .slice-meaning{flex-basis:auto;margin-left:6px}.inspector-tint{color:var(--ink-soft);cursor:pointer;align-items:center;gap:6px;margin-left:auto;font-size:12px;display:inline-flex}.inspector-tint input{accent-color:var(--accent)}.inspector-ramp{align-items:center;gap:5px;margin-left:4px;display:inline-flex}.inspector-ramp small{font:500 11px var(--font-mono);color:var(--muted)}.inspector-ramp i{background:linear-gradient(90deg, color-mix(in srgb, var(--accent) 4%, var(--surface)), color-mix(in srgb, var(--accent) 42%, var(--surface)));border:1px solid var(--line-strong);border-radius:4px;width:72px;height:8px}.inspector-ramp.is-signed i{background:linear-gradient(90deg, color-mix(in srgb, var(--blue) 42%, var(--surface)), var(--surface), color-mix(in srgb, var(--orange) 42%, var(--surface)))}.inspector-body{overscroll-behavior:contain;flex:1;min-height:0;padding:0 18px 12px;overflow:auto}.inspector-table{border-collapse:separate;border-spacing:2px;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.inspector-table th{z-index:1;background:var(--surface);color:var(--muted);white-space:nowrap;font-size:11px;font-weight:500;position:sticky}.inspector-table thead th{padding:4px 0 3px;top:0}.inspector-table tbody th{text-align:right;padding:0 8px 0 0;left:0}.inspector-table thead th.corner{z-index:2;left:0}.inspector-table .col-head{color:var(--col)}.inspector-table .row-head{color:var(--row)}.inspector-table td{padding:0}.inspector-table.is-vector{width:100%}.inspector-cell{border:1px solid var(--line-strong);background:var(--surface);width:100%;min-width:54px;height:30px;color:var(--ink);font:500 13px var(--font-mono);text-align:center;cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:6px;padding:0 6px;display:block}.inspector-cell:hover{border-color:var(--accent-mid)}.inspector-cell.is-selected{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-mid);font-weight:700}.inspector-cell.is-nan{color:var(--warn)}.inspector-note{color:var(--muted);margin:10px 0 0;font-size:12px}.inspector-footer{border-top:1px solid var(--line);background:var(--bg);align-items:center;gap:12px;min-height:52px;padding:8px 12px 8px 18px;font-size:13px;display:flex}.inspector-readout{font-family:var(--font-mono);overflow-wrap:anywhere}.inspector-hint{color:var(--muted)}.inspector-locate{border:1px solid var(--accent-mid);background:var(--surface);color:var(--accent-press);white-space:nowrap;cursor:pointer;border-radius:8px;align-items:center;gap:5px;margin-left:auto;padding:7px 12px;font-size:12px;font-weight:700;display:inline-flex}.inspector-locate:hover{background:var(--accent-soft)}.inspector-chart{grid-template-rows:1fr auto;grid-template-columns:auto 1fr;gap:4px 8px;height:100%;min-height:220px;padding-top:8px;display:grid}.chart-y{font:500 11px var(--font-mono);color:var(--muted);text-align:right;flex-direction:column;justify-content:space-between;display:flex}.chart-plot{border-left:1px solid var(--line-strong);border-bottom:1px solid var(--line-strong);cursor:crosshair;touch-action:none;position:relative}.chart-plot svg{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.chart-line{fill:none;stroke:var(--accent);stroke-width:1.5px;vector-effect:non-scaling-stroke;stroke-linejoin:round}.chart-zero{stroke:var(--line-strong);stroke-dasharray:4 4;vector-effect:non-scaling-stroke}.chart-guide{background:var(--muted);opacity:.5;pointer-events:none;width:1px;position:absolute;top:0;bottom:0}.chart-dot{background:var(--accent);width:9px;height:9px;box-shadow:0 0 0 2px var(--surface);pointer-events:none;border-radius:50%;margin:-4.5px 0 0 -4.5px;position:absolute}.chart-tip{background:var(--ink);color:var(--surface);font:600 12px var(--font-mono);white-space:nowrap;pointer-events:none;border-radius:6px;margin-left:8px;padding:3px 7px;position:absolute;top:6px}.chart-tip.is-left{transform:translate(calc(-100% - 16px))}.chart-x{font:500 11px var(--font-mono);color:var(--muted);grid-column:2;justify-content:space-between;display:flex}@media (max-width:560px){.tensor-inspector{border:0;border-radius:0;width:100vw;height:100dvh}.inspector-tint{margin-left:0}.inspector-cell{min-width:48px;font-size:12px}}
