@font-face{font-family:Caveat;font-style:normal;font-weight:400 700;font-display:block;src:url(./caveat-cyrillic-IPx-_jSJ.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Caveat;font-style:normal;font-weight:400 700;font-display:block;src:url(./caveat-latin-CP6HlsNg.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Neucha;font-style:normal;font-weight:400;font-display:block;src:url(./neucha-cyrillic-BVJzy9qF.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Neucha;font-style:normal;font-weight:400;font-display:block;src:url(./neucha-latin-ekpzkbTn.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--black:#1c1f26;--red:#c8262b;--blue:#2a4fa8;--green:#22783f;--hand:"Caveat", "Neucha", "Segoe Print", "Comic Sans MS", cursive;--marker:"Neucha", "Caveat", cursive;--sans:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--pad:clamp(14px, 4vw, 34px)}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;background:#8e9398}body{min-height:100dvh;color:var(--black);font-family:var(--sans);-webkit-tap-highlight-color:transparent;background-color:#0000;background-image:radial-gradient(120% 70% at 50% 0,#ffffff47,#0000 60%),linear-gradient(#b3b8bd 0%,#9ea3a8 55%,#8e9398 100%);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:auto,auto;background-attachment:fixed;background-origin:padding-box,padding-box;background-clip:border-box,border-box;margin:0}.wall{max-width:820px;padding:max(10px, env(safe-area-inset-top)) 8px max(14px, env(safe-area-inset-bottom));opacity:0;margin:0 auto;transition:opacity .35s}.wall.ready{opacity:1}.dept{text-align:center;font:600 clamp(8px, 2.15vw, 12px) / 1.3 var(--sans);letter-spacing:clamp(.05em,.4vw,.2em);white-space:nowrap;color:#4a5058;text-shadow:0 1px #fff6;margin:6px 0 8px}.board{background:linear-gradient(135deg,#e9ecef 0%,#b9bfc5 35%,#dfe3e7 55%,#a7aeb5 100%);border-radius:9px;padding:9px;position:relative;box-shadow:inset 0 1px #fff9,inset 0 -1px #0003,0 16px 30px -12px #1e232d8c,0 2px 4px #1e232d40}.surface{padding:var(--pad) var(--pad) calc(var(--pad) + 6px);background:linear-gradient(115deg,#fff0 20%,#ffffffd9 32%,#fff0 46%),linear-gradient(#fdfdfc 0%,#f6f7f6 100%);border-radius:3px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #00000014,inset 0 2px 8px #00000014}.residue,.ink{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.residue{z-index:0}.ink{z-index:3}.ink path{fill:none;stroke-linecap:round;stroke-linejoin:round}.surface>:not(svg){z-index:1;position:relative}.title{font:700 clamp(27px, 8.3vw, 56px) / 1 var(--hand);letter-spacing:.01em;color:var(--black);white-space:nowrap;margin:0 0 6px}.blue{color:var(--blue)}.patient{justify-content:space-between;align-items:center;gap:10px;display:flex}.patient p{font:400 clamp(16px, 4.4vw, 24px) / 1.12 var(--hand);margin:0}.group{font:700 clamp(24px, 7vw, 38px) / 1 var(--hand);color:var(--red);white-space:nowrap;flex:none;margin-right:10px}.rule{height:3px;margin:14px 0 6px}h2{font:700 clamp(22px, 6vw, 30px) / 1 var(--hand);letter-spacing:.03em;margin:6px 0;display:inline-block}.cols{display:block}.rule-mid{margin:10px 0 2px}.rows{margin:0;padding:0;list-style:none}.row{margin:0 0 2px;position:relative}.row-btn{width:100%;min-height:48px;color:inherit;text-align:left;font:inherit;cursor:pointer;touch-action:manipulation;background:0 0;border:0;border-radius:10px;grid-template-columns:26px 1fr;grid-template-areas:"num sym"".stage";align-items:baseline;padding:5px 34px 5px 2px;transition:background-color .2s;display:grid}.row-btn:active{background:#2a4fa80f}.row-btn:focus-visible{outline:2px dashed var(--blue);outline-offset:2px}.num{font:700 clamp(21px, 5.6vw, 28px) / 1 var(--hand);color:#6d727a;grid-area:num;font-style:italic}.sym{font:600 clamp(20px, 5.5vw, 28px) / 1.15 var(--hand);grid-area:sym}.stage{font:400 clamp(18px, 5vw, 25px) / 1.1 var(--marker);color:var(--blue);grid-area:stage;justify-self:end;margin-top:4px}.sym-t,.stage-t{transition:filter .9s,opacity .9s,color .4s}.row[data-state=current] .num{color:var(--red)}.row[data-state=done] .sym,.row[data-state=done] .stage{color:#4a4f57}.row[data-state=locked] .sym-t,.row[data-state=locked] .stage-t,.row.veiled .sym-t,.row.veiled .stage-t{filter:blur(4.5px);opacity:.75;-webkit-user-select:none;user-select:none}.row[data-state=locked] .stage-t{opacity:.45}.keyform{justify-content:flex-end;align-items:center;gap:8px;margin:-4px 30px 0 28px;padding-bottom:6px;transition:opacity .4s,transform .4s;display:flex}.keyform.gone{opacity:0;transform:translateY(-4px)}.keyform label,.bonus-q{font:400 clamp(17px, 4.6vw, 22px) / 1.1 var(--hand);color:#5a5f68}.keybox{align-items:center;gap:4px;display:inline-flex;position:relative}.key{width:5.2em;color:var(--blue);font:700 clamp(24px, 6.5vw, 30px) / 1.1 var(--hand);letter-spacing:.06em;text-align:center;caret-color:var(--red);background:0 0;border:0;border-bottom:2px dashed #1c1f2673;border-radius:0;outline:none;padding:2px 4px 0}.key::placeholder{color:#1c1f2647;font-weight:400}.key:focus{border-bottom-color:var(--blue)}.key.shake{border-bottom-color:var(--red);color:var(--red);animation:.42s shake}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-6px)rotate(-2deg)}40%{transform:translate(5px)rotate(1deg)}60%{transform:translate(-4px)}80%{transform:translate(3px)}}.key-go{width:44px;height:44px;color:var(--red);font:700 30px / 1 var(--hand);cursor:pointer;touch-action:manipulation;background:0 0;border:0;border-radius:50%}.key-go:active{background:#c8262b14}.bonus.veiled-bonus{opacity:0}.bonus{transition:opacity .8s}.row-btn.nope .num{animation:.42s shake}.bonus{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:4px 10px;margin:12px 0 0 28px;display:flex}.bonus-ok{text-align:right;font:700 clamp(20px, 5.4vw, 26px) / 1.15 var(--hand);margin:12px 0 0 28px}.hidden{display:none!important}.dx{grid-template-columns:1fr 1fr;gap:4px 14px;margin:2px 0 0;padding:0 0 0 4px;list-style:none;display:grid}.dx li{font:600 clamp(19px, 5.2vw, 26px) / 1.25 var(--hand);min-height:1.25em;position:relative}.dx-t{display:inline-block}.dx li.struck .dx-t{color:#6f747c}.dx li[data-id=unknown]{grid-column:1/-1}.dx li[data-id=unknown] .dx-t{color:var(--blue);letter-spacing:.04em;font-weight:700}.dx li.confirmed .dx-t{color:var(--red)}.reveal,.dx li.revealed .q{display:none}.dx li.revealed .reveal{display:block}.reveal-t{font:700 clamp(28px, 8vw, 40px) / 1.05 var(--hand);color:var(--red);letter-spacing:.02em;display:inline-block}.reveal-n{font:400 clamp(18px, 5vw, 23px) / 1.1 var(--hand);color:var(--blue);margin-top:2px;display:block}.writing{animation:1.4s cubic-bezier(.4,.1,.4,1) both write}@keyframes write{0%{clip-path:inset(-20% 100% -20% 0)}to{clip-path:inset(-20% -2% -20% 0)}}.q.fade{opacity:0;transition:opacity .5s}.ledge{background:linear-gradient(#eef0f2 0%,#c3c8cd 45%,#9aa1a8 100%);border-radius:3px 3px 6px 6px;height:20px;margin:8px -4px -2px;position:relative;box-shadow:0 3px 5px #00000040}.markers{filter:drop-shadow(0 2px 1px #0000004d);width:min(260px,64%);height:auto;position:absolute;bottom:6px;left:50%;transform:translate(-50%)}.house{bottom:max(6px, env(safe-area-inset-bottom));z-index:10;border-left:5px solid var(--red);cursor:pointer;background:#fffffff7;border-radius:12px;margin:18px 0 0;padding:12px 16px 14px 18px;position:sticky;box-shadow:0 10px 28px -10px #14192380,0 1px 3px #14192333}.who{font:700 14px / 1 var(--sans);color:#30343b;align-items:center;gap:6px;display:flex}.say{min-height:2.9em;font:400 clamp(16px, 4.3vw, 18px) / 1.4 var(--sans);color:#50555d;margin:6px 0 0}.say .caret{width:.5em;color:var(--red);animation:.8s steps(2,end) infinite blink;display:inline-block}@keyframes blink{50%{opacity:0}}.actions{flex-wrap:wrap;gap:8px;display:flex}.actions:empty{display:none}.actions{margin-top:10px}.btn{background:var(--red);color:#fff;min-height:44px;font:600 15px / 1 var(--sans);cursor:pointer;touch-action:manipulation;border:0;border-radius:22px;justify-content:center;align-items:center;padding:0 18px;text-decoration:none;display:inline-flex}.btn.ghost{color:#30343b;background:#eceef0}.btn.danger{background:var(--red)}.reset{color:#4d535b;font:500 14px var(--sans);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;margin:16px auto 4px;padding:10px 14px;text-decoration:underline;display:block}.credits{text-align:center;font:400 10.5px / 1.4 var(--sans);color:#5d636b;margin:2px 12px 0}.modal{z-index:50;background:#1e232a73;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-card{border-left:5px solid var(--red);width:min(380px,100%);font:400 17px / 1.4 var(--sans);background:#fff;border-radius:12px;padding:20px 20px 16px;box-shadow:0 20px 40px #00000059}.modal-card p{margin:0 0 16px}.modal-actions{justify-content:flex-end;gap:10px;display:flex}.qa{z-index:60;color:#eee;max-width:calc(100vw - 16px);font:12px/1.3 ui-monospace,Menlo,monospace;position:fixed;top:8px;left:8px}.qa>button{color:#ffd24a;font:inherit;background:#222;border:0;border-radius:6px;padding:6px 10px}.qa-body{background:#141418f0;border-radius:8px;margin-top:6px;padding:10px;box-shadow:0 6px 20px #0006}.qa-body table{border-collapse:collapse}.qa-body td{padding:3px 6px 3px 0}.qa-body button,.qa-body a{color:#eee;font:inherit;background:#333;border:1px solid #555;border-radius:4px;padding:4px 8px;text-decoration:none}.qa-body button.on{background:#2d6a3e;border-color:#4caf6e}.qa-body pre{white-space:pre-wrap;word-break:break-all;color:#9fd;margin:8px 0 0}.qa-row{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}@media (width>=700px){.wall{padding-top:24px}.cols{grid-template-columns:minmax(0,1fr) 3px 210px;gap:0 22px;display:grid}.rule-mid{height:auto;margin:8px 0 0}.row-btn{grid-template-columns:30px minmax(0,1fr)}.dx{grid-template-columns:1fr;gap:6px}.dx li[data-id=unknown]{grid-column:auto}.house{margin-top:22px;position:static}}@media (prefers-reduced-motion:reduce){.writing{animation-duration:10ms}.sym-t,.stage-t{transition:none}}
