body{background:var(--slate);color:var(--chalk);font-weight:440;line-height:1.6;min-height:100vh;font-size:17px}.wrap{margin:0;padding:26px 0 40px;min-height:100vh;position:relative}.rail{position:absolute;left:34px;top:26px;width:228px}.rail-sticky{position:sticky;top:26px}.wrap.norail .rail{display:none}.wrap:not(.norail) .main{margin-left:296px}@media(max-width:760px){.rail{position:static;width:auto;margin:0 22px 18px}.wrap:not(.norail) .main{margin-left:0}}.main{min-width:0}.formhold{max-width:600px;margin:0 auto;padding:0 22px}.rail h3{font-size:.82rem;letter-spacing:.04em;color:var(--chalk-dim);font-weight:500;margin-bottom:11px}.req{background:var(--sunk);border-radius:12px;padding:12px 13px;margin-bottom:9px;cursor:pointer;border:1.5px solid transparent;transition:border-color .12s}.req:hover{border-color:var(--chalk-dim)}.req .rk{font-size:.86rem;color:var(--chalk);margin-bottom:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.req .rtype{font-size:.74rem;color:var(--chalk-faint);margin-bottom:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.req .rs{display:flex;align-items:center;gap:6px;font-size:.76rem}.d{width:7px;height:7px;border-radius:50%;flex:none}.d.wait{background:var(--chalk-yellow)}.d.otw{background:var(--chalk-blue)}.req .st{color:var(--chalk-dim)}.req .eta{margin-left:auto;color:var(--eta-color);font-size:.82rem}.req .sizing-hint{margin-left:auto;color:var(--chalk-faint);font-size:.76rem}.req .urg-note{font-size:.72rem;margin-top:4px;color:var(--chalk-faint)}.rail-empty{font-size:.84rem;color:var(--chalk-faint);line-height:1.5}.rail-new{margin-top:13px;width:100%;background:none;border:1.5px dashed var(--rail-dashed);border-radius:12px;color:var(--chalk-dim);font-family:inherit;font-size:.9rem;padding:11px;cursor:pointer}.rail-new:hover{border-color:var(--chalk-dim);color:var(--chalk)}.ghost{background:var(--sunk);border:1px solid var(--ghost-border);border-radius:10px;padding:10px 12px;margin-bottom:9px;opacity:.7}.ghost .grow1{font-size:.85rem;color:var(--chalk-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:6px}.ghost .grow2{display:flex;align-items:center;gap:12px}.ghost .gres{font-size:.74rem;color:var(--u-calm);display:flex;align-items:center;gap:4px}.ghost .gres svg{width:10px;height:10px;flex:none}.ghost .stuck{font-size:.74rem;color:var(--chalk-dim);text-decoration:underline;text-underline-offset:2px;cursor:pointer;background:none;border:none;font-family:inherit;padding:0}.ghost .stuck:hover{color:var(--chalk)}.ghost .gx{margin-left:auto;cursor:pointer;color:var(--chalk-faint);font-size:1.05rem;line-height:1;background:none;border:none;font-family:inherit;padding:0 2px}.ghost .gx:hover{color:var(--chalk-dim)}.resolved-sec{margin-top:16px}.resolved-head{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:.8rem;color:var(--chalk-faint);letter-spacing:.03em;padding:4px 0;background:none;border:none;font-family:inherit;width:100%;text-align:left}.resolved-head .chev{font-size:.95rem;line-height:1;color:var(--chalk-dim);width:14px;display:inline-block;flex:none}.resolved-body{display:none;margin-top:8px}.resolved-body.open{display:block}.ritem{padding:10px 12px;border-radius:10px;margin-bottom:7px;background:var(--sunk);border-left:3px solid transparent}.ritem.self{border-left-color:var(--resolved-self-border)}.ritem.inst{border-left-color:var(--resolved-inst-border)}.ritem .irow1{font-size:.85rem;color:var(--chalk-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:6px}.ritem.self .irow1{color:var(--chalk)}.ritem .irow2{display:flex;align-items:center;gap:12px}.ritem .imark{font-size:.74rem;display:flex;align-items:center;gap:4px}.ritem .imark svg{width:10px;height:10px;flex:none}.ritem.self .imark{color:var(--u-calm)}.ritem.inst .imark{color:var(--chalk-faint)}.ritem .stuck{font-size:.74rem;color:var(--chalk-dim);text-decoration:underline;text-underline-offset:2px;cursor:pointer;margin-left:auto;background:none;border:none;font-family:inherit;padding:0}.ritem .stuck:hover{color:var(--chalk)}.crumbs{font-size:.8rem;color:var(--chalk-faint);margin-bottom:16px;min-height:1.1em}.crumbs .rm{color:var(--chalk-dim)}.step{display:none;animation:fade .22s ease}.step.active{display:block}@keyframes fade{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}.q{font-size:1.7rem;line-height:1.3;margin-bottom:7px;font-weight:520}.sub{font-size:.95rem;color:var(--chalk-dim);margin-bottom:24px}.opt{display:flex;align-items:center;gap:16px;width:100%;text-align:left;background:var(--sunk);border:1.5px solid transparent;border-radius:var(--radius-student);color:var(--chalk);padding:18px 19px;margin-bottom:11px;cursor:pointer;font-family:inherit;font-size:1.22rem;font-weight:500;transition:border-color .12s,background .12s}.opt:hover{border-color:var(--chalk-dim)}.opt.sel{border-color:var(--chalk);background:var(--sel-bg)}.opt .gl{width:30px;height:30px;flex:none;color:var(--chalk-dim)}.opt .gl svg{display:block;width:100%;height:100%}.opt .gl svg *{stroke-width:2px}.opt .ot{flex:1}.opt .oh{display:block;font-size:.95rem;font-weight:430;color:var(--chalk-dim);margin-top:3px}.opt .oh em{color:var(--chalk);font-style:normal;font-weight:500}input.room{width:100%;background:var(--sunk);border:none;border-radius:var(--radius-student);color:var(--chalk);font-size:2.6rem;text-align:center;padding:22px;letter-spacing:.1em;outline:2px solid transparent}input.room:focus{outline-color:var(--chalk-blue)}.field{margin-bottom:20px}.fieldlab{font-size:1.18rem;margin:0 0 11px;font-weight:500}input.txt,textarea.txt{width:100%;background:var(--sunk);border:1.5px solid var(--hairline);border-radius:var(--radius-student);color:var(--chalk);font-size:1rem;padding:13px 15px;outline:none;line-height:1.5}input.txt:focus,textarea.txt:focus{border-color:var(--chalk-blue)}textarea.txt{min-height:58px;resize:none;overflow:hidden}.txt::placeholder{color:var(--chalk-faint)}.helper{background:var(--helper-bg);border-radius:12px;padding:11px 13px;margin:0 0 11px;font-size:.95rem;line-height:1.5;color:var(--chalk-dim);position:relative}.helper .hhead{color:var(--chalk-blue);font-weight:500;margin-bottom:3px}.helper b{color:var(--chalk);font-weight:550}.helper em{color:var(--chalk);font-style:italic}.helper ol{margin:3px 0 0 1.1em;padding:0}.helper ol li{margin:2px 0}.helper .x{position:absolute;top:8px;right:10px;cursor:pointer;color:var(--chalk-faint)}.helper.hidden{display:none}.chips{display:flex;gap:9px;flex-wrap:wrap}.chip{background:var(--sunk);border:1.5px solid transparent;border-radius:11px;color:var(--chalk);padding:11px 18px;cursor:pointer;font-family:inherit;font-size:1.05rem}.chip:hover{border-color:var(--chalk-dim)}.chip.sel{border-color:var(--chalk);background:var(--sel-bg)}.chip.u-low.sel{border-color:var(--u-calm)}.chip.u-mid.sel{border-color:var(--u-slow)}.chip.u-high.sel{border-color:var(--u-block)}.asgblock{margin-bottom:18px;padding-bottom:18px;border-bottom:1px solid var(--hairline-faint)}.asgblock:last-of-type{border-bottom:none}.asg-btn{display:block;width:100%;text-align:left;background:var(--sunk);border:1.5px solid transparent;border-radius:12px;color:var(--chalk);font-family:inherit;font-size:1.18rem;font-weight:520;padding:13px 16px;cursor:pointer}.asg-btn:hover{border-color:var(--chalk-dim)}.asg-btn.sel{border-color:var(--chalk);background:var(--sel-bg)}.asg-btn.parentsel{border-color:var(--hairline-strong);background:var(--sel-bg-parent)}.steprow{display:flex;gap:9px;flex-wrap:wrap;padding:11px 0 0 44px}.orlab{font-size:.95rem;color:var(--chalk-dim);margin:4px 0 9px}.grouphead{font-size:.92rem;color:var(--chalk-dim);letter-spacing:.02em;margin:6px 0 9px;font-weight:500}.grouphead:not(:first-child){margin-top:20px}.disc{font-size:.92rem;color:var(--chalk);font-weight:430;font-style:normal}.foot{display:flex;align-items:center;gap:14px;margin-top:26px}.primary{background:var(--chalk);color:var(--slate);border:none;border-radius:11px;font-family:inherit;font-size:1rem;font-weight:560;padding:12px 26px;cursor:pointer;margin-left:auto}.primary:disabled{opacity:.3;cursor:default}.sendnow{background:none;border:none;color:var(--chalk-faint);font-family:inherit;font-size:.82rem;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.back{background:none;border:none;color:var(--chalk-dim);font-family:inherit;font-size:.9rem;cursor:pointer}.solved{background:none;border:1.5px solid var(--solve-border);border-radius:11px;color:var(--u-calm);font-family:inherit;font-size:.9rem;padding:10px 15px;cursor:pointer}.solved:hover{background:var(--solve-hover)}.donebig{width:3rem;height:3rem;margin-bottom:6px;color:var(--chalk-dim)}.donebig.solve{color:var(--u-calm)}.donebig svg{display:block;width:100%;height:100%}.statusline{font-size:1.05rem;color:var(--chalk-dim);margin-top:2px}.statusline .rm{color:var(--chalk)}.celebrate{position:fixed;inset:0;background:var(--overlay-bg);display:none;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:16px;z-index:50;padding:30px}.celebrate.show{display:flex}.animal{font-size:5rem;animation:pop .5s cubic-bezier(.2,1.5,.4,1)}@keyframes pop{0%{transform:scale(0) rotate(-12deg)}to{transform:scale(1)}}.celebrate h2{font-size:1.7rem;font-weight:540}.celebrate p{font-size:1rem;color:var(--chalk-dim);max-width:340px}canvas.cf{position:fixed;inset:0;pointer-events:none;z-index:51}.connnote{font-size:.82rem;color:var(--u-block);margin-top:10px;min-height:1em}@media(prefers-reduced-motion:reduce){.step,.animal{animation:none}}
