.cn-page{display:flex;flex-direction:column;gap:10px;max-width:1480px;margin:0 auto;padding:12px 20px 14px;height:calc(100vh - 64px);box-sizing:border-box;overflow:hidden}.cn-top{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:12px;flex:1 1 auto;min-height:0}.cn-ctrl-bar{border:1px solid var(--ink);border-radius:10px;background:var(--paper);padding:10px 18px}.cn-ctrl-line{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.cn-grp{display:flex;align-items:center;gap:8px;min-width:0}.cn-grp-lab{font-family:var(--mono);font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-soft);font-weight:600;margin-right:4px}.cn-grp-sep{width:1px;height:26px;background:var(--rule)}.cn-tiny{display:inline-flex;align-items:center;gap:6px;font-family:var(--mono);font-size:9.5px;color:var(--ink-soft);letter-spacing:.1em;text-transform:uppercase}.cn-tiny input{margin-left:0}.cn-bar-spacer{flex:1;min-width:0}.cn-active-hint{font-family:var(--mono);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--paper);background:var(--ink);padding:7px 14px;border-radius:999px;font-weight:600;white-space:nowrap}.cn-input{font-family:var(--mono);font-size:12px;color:var(--ink);background:var(--paper);border:1px solid var(--rule);border-radius:6px;padding:6px 10px;outline:none;font-variant-numeric:tabular-nums;min-width:0}.cn-input--sm{width:120px;padding:6px 10px;font-size:11.5px}.cn-input--xs{width:62px;padding:5px 8px;font-size:11.5px;text-align:right}.cn-input:focus{border-color:var(--ink);outline:2px solid var(--acid);outline-offset:1px}.cn-pick-select{width:100%;appearance:none;-webkit-appearance:none;-moz-appearance:none;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:600;color:var(--ink);background:var(--paper);border:1px solid var(--ink);border-radius:999px;padding:8px 30px 8px 14px;cursor:pointer;background-image:linear-gradient(45deg,transparent 50%,var(--ink) 50%),linear-gradient(135deg,var(--ink) 50%,transparent 50%);background-position:calc(100% - 14px) calc(50% - 1px),calc(100% - 10px) calc(50% - 1px);background-size:4px 4px,4px 4px;background-repeat:no-repeat}.cn-pick-select:hover{background-color:var(--paper-2)}.cn-pick-select:focus{outline:2px solid var(--acid);outline-offset:1px}.cn-pick-btn{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;padding:9px 14px;border:1px solid var(--ink);border-radius:999px;background:var(--paper);color:var(--ink);cursor:pointer;transition:background-color .12s ease,color .12s ease}.cn-pick-btn:hover{background:var(--paper-2)}.cn-pick-btn--sm{padding:6px 14px;font-size:10px}.cn-pick-select--sm{padding:6px 26px 6px 12px;font-size:10px}.cn-pick-btn--primary{background:var(--ink);color:var(--paper)}.cn-pick-btn--primary:hover{background:#000}.cn-slots-vert{border:1px solid var(--ink);border-radius:10px;background:var(--paper);overflow:hidden;display:flex;flex-direction:column;height:100%;min-height:0}.cn-slots-vert>header{display:flex;flex-direction:column;gap:2px;padding:10px 14px;border-bottom:1px solid var(--rule);background:var(--paper-2);font-family:var(--mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-soft);flex:0 0 auto}.cn-slots-mini-hint{text-transform:none;letter-spacing:.02em;font-style:italic;font-family:var(--serif);font-size:12.5px;color:var(--ink-soft);margin-top:2px}.cn-slot-col{display:flex;flex-direction:column;gap:6px;padding:8px 10px 10px;flex:1 1 auto;min-height:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--rule) transparent}.cn-slot-card{display:flex;flex-direction:column;gap:4px;padding:6px 8px;border:1px solid var(--rule);border-radius:6px;background:var(--paper);cursor:pointer;transition:border-color .12s ease,background-color .12s ease,box-shadow .12s ease}.cn-slot-card-head{display:grid;grid-template-columns:auto 1fr auto;align-items:baseline;gap:6px}.cn-slot-card-hs{font-family:var(--mono);font-size:10px;letter-spacing:.04em;color:var(--ink-soft);font-style:italic;font-family:var(--serif);text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.cn-slot-card-hs.is-taken{color:var(--ink);font-style:normal;font-family:var(--mono);font-weight:600;letter-spacing:0;font-variant-numeric:tabular-nums}.cn-slot-card-pick{display:grid;grid-template-columns:1fr 1fr;gap:4px}.cn-slot-card:hover{border-color:var(--ink)}.cn-slot-card.is-active{border-color:var(--acid);box-shadow:0 0 0 3px color-mix(in srgb,var(--acid) 22%,transparent)}.cn-slot-card.is-taken{background:color-mix(in srgb,var(--ink) 5%,var(--paper))}@keyframes cn-slot-pulse{0%,to{box-shadow:0 0 0 3px color-mix(in srgb,var(--acid) 22%,transparent)}50%{box-shadow:0 0 0 8px color-mix(in srgb,#1F8A5B 35%,transparent)}}.cn-slot-card.is-just-marked{animation:cn-slot-pulse .8s ease}.cn-slot-card-head{display:flex;justify-content:space-between;align-items:center}.cn-slot-card-num{font-family:var(--mono);font-size:9.5px;letter-spacing:.18em;color:var(--ink-soft);text-transform:uppercase;font-weight:600}.cn-slot-card.is-active .cn-slot-card-num{color:var(--acid)}.cn-slot-clear{border:none;background:transparent;color:var(--ink-soft);font-family:var(--mono);font-size:16px;line-height:1;cursor:pointer;padding:0 4px}.cn-slot-clear:hover{color:var(--acid)}.cn-slot-card select{font-family:var(--mono);font-size:10.5px;border:1px solid var(--rule);border-radius:4px;background:var(--paper);color:var(--ink);padding:3px 6px;outline:none;min-width:0;max-width:100%}.cn-slot-card select:focus{outline:2px solid var(--acid);outline-offset:1px}.cn-modal{position:fixed;inset:0;background:#0e13308c;display:flex;align-items:center;justify-content:center;z-index:100}.cn-modal[hidden]{display:none}.cn-modal-card{background:var(--paper);border:1px solid var(--ink);border-radius:12px;max-width:920px;width:calc(100% - 48px);max-height:calc(100vh - 80px);display:flex;flex-direction:column;overflow:hidden;box-shadow:0 24px 48px -16px #0e133073}.cn-modal-card>header{display:flex;align-items:center;justify-content:space-between;padding:12px 18px;border-bottom:1px solid var(--rule);background:var(--paper-2);font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-soft);font-weight:600}.cn-modal-close{border:1px solid var(--rule);background:var(--paper);color:var(--ink-soft);width:30px;height:30px;border-radius:50%;font-size:18px;line-height:1;cursor:pointer}.cn-modal-close:hover{color:var(--acid);border-color:var(--ink)}.cn-stage{position:relative;border:1px solid var(--ink);border-radius:12px;background:#0a0d22;overflow:hidden;height:100%;min-height:0}.cn-ctrl-bar,.cn-slots-bar{flex:0 0 auto}.cn-sim-host{width:100%;height:100%;position:relative;outline:none}.cn-sim-canvas{display:block;width:100%;height:100%}.cn-sim-overlay{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.cn-sim-overlay .cn-mark-group,.cn-sim-overlay .cn-arm-handle{pointer-events:auto;cursor:pointer}.cn-sim-overlay .cn-arm-handle{cursor:grab}.cn-sim-overlay .cn-arm-handle:active{cursor:grabbing}.cn-sim-overlay .cn-eye-rim-outer{fill:none;stroke:#2d1f08;stroke-width:16;filter:url(#cn-soft-shadow)}.cn-sim-overlay .cn-eye-rim-inner{fill:none;stroke:url(#cn-brass);stroke-width:10}.cn-sim-overlay .cn-eye-split{stroke:#ffffffeb;stroke-width:2;stroke-dasharray:8 6}.cn-sim-overlay .cn-eye-reticle{stroke:#ffffffd9;stroke-width:1.2}.cn-sim-overlay .cn-body-arrow-poly{fill:#ffe9a8;stroke:#1a1207;stroke-width:1.4;transition:opacity .15s ease}.cn-sim-overlay .cn-body-hint{fill:#ffe9a8;font-family:JetBrains Mono,monospace;font-size:13px;font-weight:600;letter-spacing:.1em;paint-order:stroke;stroke:#0000008c;stroke-width:3;transition:opacity .15s ease}.cn-sim-overlay .cn-frame-plate{fill:url(#cn-brass-dark);stroke:#1a1106;stroke-width:2.2}.cn-sim-overlay .cn-arc-band{fill:url(#cn-brass);stroke:#1a1106;stroke-width:1.5}.cn-sim-overlay .cn-tick{stroke:#1a1106;stroke-width:1.1}.cn-sim-overlay .cn-tick.is-mid{stroke-width:1.4}.cn-sim-overlay .cn-tick.is-major{stroke-width:1.8}.cn-sim-overlay .cn-tick-num{fill:#1a1106;font-family:JetBrains Mono,monospace;font-size:13px;font-weight:700;letter-spacing:.04em}.cn-sim-overlay .cn-arm-line{stroke:url(#cn-brass);stroke-width:12;stroke-linecap:round}.cn-sim-overlay .cn-arm-pivot{fill:url(#cn-brass);stroke:#1a1106;stroke-width:1.5}.cn-sim-overlay .cn-arm-handle{fill:#c79842;stroke:#1a1106;stroke-width:2;transition:fill .12s ease,r .12s ease}.cn-sim-overlay .cn-arm-handle:hover{fill:#e7c578;r:24}.cn-sim-overlay .cn-drum-rim{fill:none;stroke:#1a1106;stroke-width:2}.cn-sim-overlay .cn-drum-num{fill:#1a1106;font-family:JetBrains Mono,monospace;font-size:18px;font-weight:700;letter-spacing:.06em}.cn-sim-overlay .cn-drum-lab{fill:#1a1106b8;font-family:JetBrains Mono,monospace;font-size:9px;letter-spacing:.22em;font-weight:600}.cn-sim-overlay .cn-lcd-plate{fill:#080c1ef0;stroke:#fff0c88c;stroke-width:1.4}.cn-sim-overlay .cn-lcd-lab{fill:#ffe8a8b8;font-family:JetBrains Mono,monospace;font-size:11px;letter-spacing:.26em;font-weight:500}.cn-sim-overlay .cn-lcd-val{fill:#ffe9a8;font-family:JetBrains Mono,monospace;font-size:28px;font-weight:700;letter-spacing:.06em}.cn-sim-overlay .cn-mark-disc{stroke:#1a1106;stroke-width:2;transition:transform .12s ease,filter .12s ease}.cn-sim-overlay .cn-mark-ring{fill:none;stroke:#ffffff2e;stroke-width:4}.cn-sim-overlay .cn-mark-inner{fill:none;stroke:#1a11068c;stroke-width:1.3;stroke-dasharray:3 4}.cn-sim-overlay .cn-mark-group:hover .cn-mark-disc{transform:scale(1.03);transform-origin:center;transform-box:fill-box}.cn-sim-overlay .cn-mark-group:active .cn-mark-disc{transform:scale(.97);transform-origin:center;transform-box:fill-box}@keyframes cn-mark-ripple{0%{r:58;stroke-opacity:.85;stroke-width:6}to{r:110;stroke-opacity:0;stroke-width:1}}.cn-sim-overlay .cn-mark-ripple{fill:none;stroke:#ffd877;animation:cn-mark-ripple .65s ease-out forwards;pointer-events:none}@keyframes cn-mark-ready-pulse{0%,to{opacity:.18;stroke-width:3}50%{opacity:.65;stroke-width:6}}.cn-sim-overlay .cn-mark-ready{fill:none;stroke:#ffd877;animation:cn-mark-ready-pulse 2.2s ease-in-out infinite;pointer-events:none}.cn-sim-overlay .cn-horizon-ext{stroke:#ffffff8c;stroke-width:1.2;stroke-dasharray:6 8}.cn-sim-overlay .cn-alt-tick{stroke:#fff0c8bf;stroke-width:1.2}.cn-sim-overlay .cn-alt-tick.is-zero{stroke:var(--acid);stroke-width:2}.cn-sim-overlay .cn-alt-num{fill:#fff0c8d9;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:600;letter-spacing:.05em;paint-order:stroke;stroke:#00000073;stroke-width:3}.cn-sim-overlay .cn-vern-tick{stroke:#ffe8a8a6;stroke-width:1}.cn-sim-overlay .cn-vern-tick.is-major{stroke-width:1.6;stroke:#ffe8a8f2}.cn-sim-overlay .cn-vern-num{fill:#ffe8a8c7;font-family:JetBrains Mono,monospace;font-size:9px;letter-spacing:.1em}.cn-sim-overlay .cn-vern-cursor{stroke:var(--acid);stroke-width:2}.cn-sim-overlay .cn-truth-bg{fill:#080c1ee0;stroke:#fff0c88c;stroke-width:1.2}.cn-sim-overlay .cn-truth-lab{fill:#ffe8a899;font-family:JetBrains Mono,monospace;font-size:9.5px;letter-spacing:.2em;font-weight:600}.cn-sim-overlay .cn-truth-val{fill:#ffe9a8;font-family:JetBrains Mono,monospace;font-size:16px;font-weight:700;letter-spacing:.05em}.cn-sim-overlay .cn-truth-err{fill:#ffe6b4c7;font-family:JetBrains Mono,monospace;font-size:14px;font-weight:700;letter-spacing:.05em}.cn-sim-overlay .cn-truth-err.is-near{fill:#2ebf7b}.cn-mode-bar{position:absolute;top:14px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:14px;z-index:3;font-family:var(--mono);max-width:calc(100% - 32px);pointer-events:none}.cn-mode-seg,.cn-mode-pick{display:flex;align-items:center;gap:6px;padding:6px 10px;background:#080c1ec7;border:1px solid rgba(255,240,200,.45);border-radius:999px;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);pointer-events:auto}.cn-mode-btn{font-family:var(--mono);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;font-weight:700;color:#fff0c89e;background:transparent;border:1px solid transparent;border-radius:999px;padding:6px 14px;cursor:pointer;transition:background-color .15s ease,color .15s ease,border-color .15s ease}.cn-mode-btn:hover{color:#ffe9a8;border-color:#fff0c859}.cn-mode-btn.is-on{background:#ffe9a8;color:#1a1106;border-color:#ffe9a8}.cn-mode-lab{font-family:var(--mono);font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:#fff0c89e;margin-right:2px}.cn-mode-body{font-family:var(--mono);font-size:11px;color:#ffe9a8;background:transparent;border:1px solid rgba(255,240,200,.5);border-radius:999px;padding:5px 28px 5px 12px;cursor:pointer;outline:none;appearance:none;-webkit-appearance:none;-moz-appearance:none;min-width:140px;background-image:linear-gradient(45deg,transparent 50%,#ffe9a8 50%),linear-gradient(135deg,#ffe9a8 50%,transparent 50%);background-position:calc(100% - 14px) calc(50% - 1px),calc(100% - 10px) calc(50% - 1px);background-size:4px 4px,4px 4px;background-repeat:no-repeat}.cn-mode-body:focus{border-color:#ffe9a8}.cn-mode-body option,.cn-mode-body optgroup{color:var(--ink);background:var(--paper)}@media (max-width: 1280px){.cn-mode-btn{font-size:9.5px;padding:5px 10px;letter-spacing:.14em}}.cn-sim-overlay .cn-mark-lab{fill:#ffe9a8;font-family:JetBrains Mono,monospace;font-size:22px;font-weight:800;letter-spacing:.22em;paint-order:stroke;stroke:#1a1106a6;stroke-width:1.5}.cn-sim-overlay .cn-mark-sub{fill:#fff0c8cc;font-family:JetBrains Mono,monospace;font-size:9px;font-weight:700;letter-spacing:.32em}.cn-sim-overlay .cn-cap-lab{fill:#fff0c8b8;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:600;letter-spacing:.18em;paint-order:stroke;stroke:#00000080;stroke-width:3}.cn-worksheet{border:1px solid var(--ink);border-radius:10px;background:var(--paper);overflow:hidden;height:100%;min-height:0;display:flex;flex-direction:column}.cn-worksheet>header{padding:8px 14px;border-bottom:1px solid var(--rule);background:var(--paper-2);font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft);flex:0 0 auto}.cn-worksheet-body{padding:12px 16px;display:flex;flex-direction:column;gap:10px;flex:1 1 auto;min-height:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--rule) transparent}.cn-empty{grid-column:1 / -1;font-family:var(--mono);font-size:11px;color:var(--ink-soft);text-align:center;padding:18px 0}.cn-ws-section h4{font-family:var(--mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:8px;border-bottom:1px solid var(--rule);padding-bottom:4px}.cn-ws-section--fix{grid-column:1 / -1;padding:10px 14px;border:1px solid var(--ink);border-radius:8px;background:color-mix(in srgb,var(--acid) 5%,var(--paper))}.cn-row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:baseline;padding:3px 0;font-family:var(--mono);font-size:11px;color:var(--ink);font-variant-numeric:tabular-nums}.cn-row-lab{color:var(--ink-soft);letter-spacing:.06em}.cn-row-val{font-weight:500}.cn-row--sum{border-top:1px dashed var(--rule);margin-top:4px;padding-top:5px;font-weight:600}.cn-foot{font-family:var(--serif);font-style:italic;font-size:13px;color:var(--ink-soft);margin-top:8px}.cn-matrix{width:100%;border-collapse:collapse;font-family:var(--mono);font-size:11px;margin:8px 0 12px;font-variant-numeric:tabular-nums}.cn-matrix th,.cn-matrix td{padding:4px 8px;text-align:right;border-bottom:1px dashed var(--rule)}.cn-matrix thead th{color:var(--ink-soft);font-weight:500;letter-spacing:.14em;text-transform:uppercase;font-size:9.5px;border-bottom:1px solid var(--rule)}.cn-matrix tbody th{color:var(--ink-soft);text-align:left;font-weight:600}@media (max-width: 1100px){.cn-page{height:auto;overflow:visible}.cn-top{grid-template-columns:1fr}.cn-stage{aspect-ratio:16 / 9;height:auto}.cn-slots-vert{max-height:320px}}
