.kn-layout{display:grid;grid-template-columns:minmax(0,1fr) 294px;gap:16px;align-items:stretch}
.kn-play{min-width:0;position:relative;overflow:hidden;border:1px solid #344568;border-radius:24px;background:radial-gradient(ellipse at 45% 45%,#1b315b,#0c182e 72%);box-shadow:inset 0 1px 0 #b5d4ff14}
.kn-heading,.kn-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 22px;flex-shrink:0;color:#aac4e8;font-size:11px}.kn-heading .eyebrow{font-size:9px;letter-spacing:2px;color:#acc3f4}.kn-level-tag{font-size:9px;letter-spacing:1.3px}.kn-foot{border-top:1px solid #9ac5ff17;background:#07132480}.kn-key{display:flex;gap:7px;align-items:center;white-space:nowrap;font-size:10px}.kn-key i{width:15px;height:2px;background:#86dfed}.kn-key b{color:#ffb49d;font-size:15px;margin-left:4px}
.kn-stage{height:clamp(370px,65vh,850px);position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;touch-action:none;user-select:none}
.kn-board{position:relative;flex:none;aspect-ratio:1;border-radius:28px;container-type:inline-size;background:radial-gradient(circle at 15% 25%,#8fbfff5e 0 1px,transparent 2px),radial-gradient(circle at 75% 70%,#709de833 0 1px,transparent 2px),radial-gradient(ellipse at 40% 40%,#253d6445,#0a142744 70%);background-size:97px 113px,157px 137px,100% 100%;box-shadow:inset 0 0 0 1px #a0c1f517,inset 0 0 100px #070e1d66,0 20px 40px #0002}
.kn-board::before{content:'';position:absolute;inset:7%;border:1px solid #a8c6ff10;border-radius:50%;pointer-events:none}.kn-board::after{content:'';position:absolute;inset:21%;border:1px dashed #a8c6ff0c;border-radius:50%;pointer-events:none}
.kn-threads{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}.kn-threads>line{stroke:#93d8ed;stroke-width:2;stroke-linecap:round;opacity:.8}.kn-effects .kn-threads>line{filter:drop-shadow(0 0 3px #77d5ff6b)}.kn-threads>line.kn-crossed{stroke:#ffa28e;stroke-dasharray:5 3;opacity:.75}.kn-effects .kn-threads>line.kn-crossed{filter:drop-shadow(0 0 2px #fa927d44)}.kn-threads>line.kn-connected{stroke-width:3;opacity:1}.kn-crossings{stroke:#ffd3b8;stroke-width:1.2;fill:none;opacity:.7}.kn-destination{fill:#eec7820b;stroke:#f1d397;stroke-width:3;stroke-dasharray:10 7}.kn-destination path{stroke-dasharray:none;stroke-width:3}.kn-clear .kn-threads>line{stroke:#c4f4ff;opacity:1}
.kn-node{position:absolute;width:clamp(34px,6cqw,49px);height:clamp(34px,6cqw,49px);transform:translate(-50%,-50%);border:0;border-radius:50%;padding:0;background:none;cursor:grab;touch-action:none;-webkit-tap-highlight-color:transparent;z-index:2}.kn-orb{position:absolute;inset:9%;border-radius:50%;background:radial-gradient(ellipse at 29% 22%,#fff 0 3%,#ffffffaa 5%,transparent 23%),radial-gradient(ellipse at 75% 78%,hsl(var(--hue) 90% 82% / .9),transparent 31%),radial-gradient(ellipse at 38% 33%,hsl(var(--hue) 70% 65%),hsl(var(--hue) 66% 23%) 55%,hsl(var(--hue) 85% 77%) 85%,#101b37 97%);box-shadow:inset 1px 1px 2px #fff9,inset -2px -3px 4px #0008,0 3px 1px #695b3c,0 6px 8px #0008;pointer-events:none}.kn-effects .kn-orb{filter:drop-shadow(0 0 7px hsl(var(--hue) 80% 65% / .25))}.kn-number{position:absolute;inset:0;display:grid;place-items:center;font-size:clamp(10px,1.8cqw,13px);font-weight:600;color:#fff;text-shadow:0 1px 3px #05172c,0 0 3px #071831;pointer-events:none}.kn-node.kn-selected{outline:2px solid #e0edff;outline-offset:3px;z-index:4}.kn-node.kn-hint-node{outline:2px dashed #efd090;outline-offset:4px}.kn-node.kn-contact .kn-orb{box-shadow:0 0 0 2px #ffb198,0 5px 10px #0009}.kn-node:focus-visible{outline:3px solid #f5e4b8;outline-offset:4px}.kn-node.kn-dragging{cursor:grabbing;z-index:5}.kn-dragging .kn-orb{filter:brightness(1.25);box-shadow:0 9px 15px #0009}.kn-node[aria-disabled=true]{cursor:default}
.kn-console{display:flex;flex-direction:column;gap:17px;padding:25px 22px!important;background:#111d32!important;border-color:#354667!important}#game-container[data-session=nudos] .kn-console h2{font-size:25px;line-height:1.3;letter-spacing:-.8px;margin:0;color:#e7eeff}.kn-console .eyebrow{color:#a7c1f1;font-size:9px;letter-spacing:1.8px}.kn-console p{margin:0;font-size:12px;line-height:1.7;color:#aac0de}.kn-console .kn-tip{color:#d9d2f8}.kn-summary{padding:17px 0;border-block:1px solid #b4c8ff18;display:flex;flex-direction:column;gap:8px}.kn-summary strong{font-weight:500;font-size:29px;color:#dbebff}.kn-summary span{font-size:11px;color:#a2b7d6}.kn-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.kn-actions .button{padding:11px 8px;font-size:12px}.kn-actions .kn-hint-button{grid-column:1/-1;border-color:#8e81b8;background:#9484c01a;color:#d7c9ff}.kn-actions .quiet-button{grid-column:1/-1;justify-self:center;min-height:40px}.kn-message{min-height:54px}.kn-hint-panel{padding:14px;background:#b79a5111;border:1px solid #a48c56;border-radius:13px}.kn-hint-panel p{margin-bottom:12px}.kn-progress{margin-top:auto;border-top:1px solid #b8c8ee1f;padding-top:16px;font-size:11px;color:#bacded}.kn-progress progress{display:block;width:100%;height:5px;margin-top:12px;accent-color:#b2b7ed}.kn-note{opacity:.7;font-size:11px!important}
.kn-win{position:absolute;z-index:8;top:50%;left:50%;transform:translate(-50%,-50%);width:min(380px,88%);padding:28px;text-align:center;background:#111f39f5;border:1px solid #aac6ff;border-radius:24px;box-shadow:0 18px 60px #0009}.kn-win h2{font-size:26px;margin:14px 0}.kn-win p{color:#b7cbea;margin:14px 0 22px}.kn-win .primary{background:#d2e2ff;color:#172748}.kn-win[hidden],.kn-hint-panel[hidden]{display:none}
.kn-levels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.kn-levels .button{white-space:normal;text-align:left;justify-content:flex-start}.kn-levels [aria-pressed=true]{border-color:#bfc2ff}.kn-completed::after{content:'✓';margin-left:auto;color:#96d7df}.kn-options label{display:flex;align-items:center;gap:12px;margin:16px 0}.kn-options h3{margin-top:24px}.kn-options p,.kn-gallery p{color:#aabbd6;line-height:1.7}.kn-options input[type=range]{min-width:0;flex:1;accent-color:#bacaff}.kn-options output{min-width:40px}.kn-help{max-width:580px}.kn-help ol{padding-left:24px;line-height:1.65}.kn-help li{margin-bottom:10px}.kn-help p{color:#acbfdc;line-height:1.6;font-size:13px}.kn-demo-stage{height:290px;display:flex;align-items:center;justify-content:center;background:#102040;border-radius:18px;margin:18px 0 12px;touch-action:none;user-select:none}.kn-demo-actions{display:flex;gap:10px;flex-wrap:wrap}.kn-demo-message{min-height:40px}
@media(min-width:901px) and (min-height:600px){#game-container[data-session=nudos] .kn-layout{height:max(390px,calc(100dvh - 185px))}.kn-play{display:flex;flex-direction:column}.kn-stage{flex:1;height:0;min-height:0}.kn-console{min-height:0;overflow:auto}}
@media(max-width:900px){.kn-layout{grid-template-columns:1fr}.kn-stage{height:clamp(310px,calc(100vw - 18px),540px)}.kn-heading,.kn-foot{padding:14px;font-size:10px}.kn-heading .eyebrow{font-size:8px;letter-spacing:1.2px}.kn-level-tag{font-size:8px;letter-spacing:.5px}.kn-key{font-size:9px;gap:4px}.kn-console{padding:18px!important;gap:12px}.kn-console>h2,.kn-console>.eyebrow,.kn-rule,.kn-note{display:none}.kn-summary{padding:0;border:0;flex-direction:row;align-items:center;justify-content:space-between;gap:8px}.kn-summary strong{font-size:22px}.kn-summary span{font-size:10px;max-width:50%;text-align:right}.kn-message{min-height:0}.kn-levels{grid-template-columns:1fr}.kn-node{width:38px;height:38px}.kn-foot>span:first-child{max-width:58%}.kn-demo-stage{height:260px}}
body.minimalist-mode .kn-stage{display:flex!important;align-items:center;justify-content:center;background:radial-gradient(ellipse at center,#21385f,#0b1427)}
