@font-face{font-family:Special Elite;font-style:normal;font-weight:400;font-display:swap;src:url(../media/09d59b9ec7493ab1-s.1t23271dk9abp.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Special Elite;font-style:normal;font-weight:400;font-display:swap;src:url(../media/748b8b5301d2bdb2-s.p.0obcy7v14u1cn.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:Special Elite Fallback;src:local(Arial);ascent-override:60%;descent-override:25.33%;line-gap-override:0.0%;size-adjust:117.2%}.V3RyOW_className{font-family:Special Elite,Special Elite Fallback;font-style:normal;font-weight:400}.V3RyOW_variable{--font-type:"Special Elite", "Special Elite Fallback"}
@font-face{font-family:Caveat;font-style:normal;font-weight:400 700;font-display:swap;src:url(../media/da4b870ab52b3094-s.2uxt0u9yugpfw.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Caveat;font-style:normal;font-weight:400 700;font-display:swap;src:url(../media/86d70b7c76b6ec6e-s.2zeei6axiu3qn.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:swap;src:url(../media/11cc37d7380d16b4-s.27211fhlic14m.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Caveat;font-style:normal;font-weight:400 700;font-display:swap;src:url(../media/a85fe84266768609-s.p.00hx3ibfyf9qx.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:Caveat Fallback;src:local(Arial);ascent-override:124.77%;descent-override:38.99%;line-gap-override:0.0%;size-adjust:76.94%}.OV-sQa_className{font-family:Caveat,Caveat Fallback;font-style:normal}.OV-sQa_variable{--font-hand:"Caveat", "Caveat Fallback"}
@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/13bf9871fe164e7f-s.3bz3aq452sydg.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/cc545e633e20c56d-s.2sb9jzhmrh7ny.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/71b036adf157cdcf-s.343obqi851wr5.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/89b21bb081cb7469-s.40kcwrf1wub16.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/3fe682a82f50d426-s.200l3jur7oygh.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/70bc3e132a0a741e-s.p.269kn9uafm0ti.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:JetBrains Mono Fallback;src:local(Arial);ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.0%;size-adjust:134.59%}.CxiPNW_className{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.CxiPNW_variable{--font-mono:"JetBrains Mono", "JetBrains Mono Fallback"}
@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.03ez25a9g3i0n.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.3i9rha7jpxn0q.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.2o7ko1d-5m1xu.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.1ee5w62fj497l.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.1way2z9fj6cig.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.0szrwpqb9mkwe.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.45535valc9rzk.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:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}._2GhXXq_className{font-family:Inter,Inter Fallback;font-style:normal}._2GhXXq_variable{--font-body:"Inter", "Inter Fallback"}
:root{--cork:#a87a4c;--cork-dark:#7d5631;--manila:#e9cf94;--manila-dark:#d4b26b;--paper:#fbf8f0;--paper-line:#e4edf5;--ink:#23201c;--ink-soft:#5b544a;--red:#c0392b;--red-dark:#8e2a20;--pin:#d63a2f;--villa-pink:#ff6f91;--villa-teal:#1fb5b0;--villa-sun:#ffb347;--shadow:0 1px 1px #00000026, 0 6px 14px #00000047;--topbar-h:48px;--cork-texture:radial-gradient(ellipse at 50% 0%, #ffe6be40, transparent 60%), url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='260' height='260'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0.25  0 0 0 0 0.15  0 0 0 0 0.05  0 0 0 0.55 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>"), url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='90' height='90'><filter id='m'><feTurbulence type='turbulence' baseFrequency='0.08' numOctaves='2'/><feColorMatrix values='0 0 0 0 1  0 0 0 0 0.85  0 0 0 0 0.6  0 0 0 0.12 0'/></filter><rect width='100%' height='100%' filter='url(%23m)'/></svg>");--shadow-lift:0 2px 2px #00000026, 0 14px 28px #00000052}*{box-sizing:border-box}html,body{margin:0;padding:0}html{scroll-padding-top:150px}body{min-height:100vh;color:var(--ink);font-family:var(--font-body), system-ui, sans-serif;background-color:var(--cork);background-image:var(--cork-texture);background-attachment:fixed;font-size:17px;line-height:1.55}a{color:inherit}h1,h2,h3{font-family:var(--font-type), monospace;margin:0 0 .5em;font-weight:400;line-height:1.2}code,pre,.mono{font-family:var(--font-mono), ui-monospace, monospace}.topbar{z-index:20;height:var(--topbar-h);color:#f4e9d4;font-family:var(--font-type), monospace;background:#231a12eb;align-items:stretch;gap:1.25rem;padding:0 1.25rem;font-size:.95rem;display:flex;position:sticky;top:0;box-shadow:0 2px 10px #00000059}.topbar a{text-decoration:none}.topbar .case-no{color:var(--villa-sun);letter-spacing:.08em;white-space:nowrap;align-self:center}.game-tabs{align-items:stretch;gap:2px;min-width:0;display:flex;overflow-x:auto}.game-tab{color:#cbbfa8;white-space:nowrap;border-bottom:3px solid #0000;flex-direction:column;justify-content:center;padding:0 1rem;line-height:1.15;display:flex}.game-tab:hover{color:#fff;background:#ffffff0d}.game-tab.active{color:#fff;border-bottom-color:var(--villa-sun);background:#ffffff14}.game-tab.sealed{color:#8c7f6c}.game-tab-label{font-size:.95rem}.game-tab-title{font-family:var(--font-body), sans-serif;opacity:.75;font-size:.7rem}.workspace-page{position:relative}body:has(.workspace-page) .footer{display:none}body:has(.workspace-page){overflow:hidden}.preview-banner{z-index:30;background:var(--villa-sun);color:#2b2018;border-radius:0 0 6px 6px;padding:.2rem 1rem;font-size:.8rem;font-weight:600;position:absolute;top:0;left:50%;transform:translate(-50%)}.topbar .spacer{flex:1}.page{max-width:1280px;margin:0 auto;padding:2rem 1.5rem 4rem}.page-title{background:var(--paper);box-shadow:var(--shadow);margin:0 0 1.75rem;padding:.6rem 1.2rem .5rem;display:inline-block;position:relative;transform:rotate(-1deg)}.page-title h1{margin:0;font-size:2rem}.page-title .kicker{font-family:var(--font-hand), cursive;color:var(--red);font-size:1.35rem;line-height:1}.back{font-family:var(--font-hand), cursive;color:#fff4dc;text-shadow:0 1px 2px #00000080;margin-bottom:1rem;font-size:1.4rem;text-decoration:none;display:table}.back:hover{text-decoration:underline}.footer{text-align:center;color:#fff4dcbf;text-shadow:0 1px 1px #0006;margin-top:3rem;font-size:.8rem}.pin{background:radial-gradient(circle at 35% 30%, #ff8a7d, var(--pin) 45%, #7a1d15 100%);z-index:3;border-radius:50%;width:18px;height:18px;margin-left:-9px;position:absolute;top:-9px;left:50%;box-shadow:1px 3px 3px #00000073}.tape{z-index:3;background:#f5ebc8bf;width:110px;height:26px;margin-left:-55px;position:absolute;top:-12px;left:50%;transform:rotate(-3deg);box-shadow:0 1px 2px #00000026}.paper{background:var(--paper);box-shadow:var(--shadow);padding:1.75rem 2rem;position:relative}.paper.ledger{background-image:repeating-linear-gradient(to bottom, transparent 0, transparent 31px, var(--paper-line) 31px, var(--paper-line) 32px);background-color:#fdfcf6}.paper.memo{font-family:var(--font-type), monospace;font-size:1rem}.paper.index-card{background-color:#fffdf5;background-image:linear-gradient(#0000 46px,#e9a3a3 46px 48px,#0000 48px),repeating-linear-gradient(#0000 0 27px,#cfe0ef 27px 28px);background-position:0 0,0 48px;background-repeat:repeat;background-size:auto;background-attachment:scroll;background-origin:padding-box;background-clip:border-box}.paper.sticky{font-family:var(--font-hand), cursive;background:#fff27a;padding:1.25rem 1.4rem;font-size:1.45rem;line-height:1.25}.paper h2{border-bottom:2px solid var(--ink);padding-bottom:.3rem;font-size:1.45rem}.paper h3{margin-top:1.25rem;font-size:1.15rem}.paper p:first-child{margin-top:0}.paper table{border-collapse:collapse;width:100%;font-size:.95rem}.paper th,.paper td{text-align:left;vertical-align:top;border-bottom:1px solid #d9d1c2;padding:.35rem .6rem}.paper th{font-family:var(--font-type), monospace;border-bottom:2px solid var(--ink);font-weight:400}.hand{font-family:var(--font-hand), cursive}.stamp{color:var(--red);font-family:var(--font-type), monospace;letter-spacing:.12em;text-transform:uppercase;opacity:.88;mix-blend-mode:multiply;pointer-events:none;border:4px double;border-radius:6px;padding:.15em .55em;font-size:1.6rem;display:inline-block;transform:rotate(-9deg)}.stack{grid-template-columns:minmax(0,1fr);gap:2.25rem;display:grid}.stack>*,.grid-2>*{min-width:0}.grid-2{grid-template-columns:repeat(auto-fit,minmax(min(380px,100%),1fr));align-items:start;gap:2.25rem;display:grid}.sql{color:#e6edf3;white-space:pre-wrap;background:#1f2430;border-radius:6px;margin:.75rem 0;padding:.9rem 4.75rem .9rem 1rem;font-size:.92rem;line-height:1.5;position:relative;overflow-x:auto}.sql .kw{color:#ff9e64}.copy-btn{color:#e6edf3;font:inherit;cursor:pointer;background:#2b3242;border:1px solid #55607a;border-radius:4px;padding:.2rem .6rem;font-size:.75rem;position:absolute;top:.5rem;right:.5rem}.copy-btn:hover{background:#3a4459}.toast{z-index:50;background:var(--paper);border:3px solid var(--red);box-shadow:var(--shadow-lift);font-family:var(--font-type), monospace;padding:1rem 1.5rem;font-size:1.25rem;animation:.5s cubic-bezier(.2,1.6,.4,1) toast-in;position:fixed;bottom:2rem;left:50%;transform:translate(-50%)rotate(-1.5deg)}.toast a{color:var(--red)}@keyframes toast-in{0%{opacity:0;transform:translate(-50%)translateY(120%)rotate(6deg)}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.hint-stepper{align-items:center;gap:.4rem;display:inline-flex}.hint-stepper .admin-btn{padding:.3rem .6rem}.hint-stepper-label{font-family:var(--font-type), monospace;font-size:.9rem}.hint-stepper-state{text-align:center;background:#ece6da;border-radius:4px;min-width:8.5rem;padding:.3rem .6rem;font-size:.85rem}.hint-stepper-state.on{color:#1e6b3f;background:#dff5e7;font-weight:600}@media (max-width:720px){.topbar{gap:.75rem;padding:.5rem .9rem}.topbar .case-no,.game-tab-title{display:none}.game-tab{padding:0 .6rem}.page{padding:1.25rem 1rem 3rem}.paper{padding:1.25rem 1.1rem}}@media print{body{background:#fff;font-size:11pt}.topbar,.back,.footer,.copy-btn,.no-print,.toast{display:none!important}.page{max-width:none;padding:0}.paper,.page-title{box-shadow:none;break-inside:avoid;border:1px solid #999;transform:none!important}.pin,.tape{display:none}.print-break{break-before:page}.sql{color:#000;background:#f3f3f3;border:1px solid #ccc}}.admin-btn{border:2px solid var(--ink);color:var(--ink);font-family:var(--font-type), monospace;cursor:pointer;background:#fff;border-radius:4px;padding:.45rem 1rem;font-size:.95rem;text-decoration:none;display:inline-block}.admin-btn:hover{background:#f3ead6}.admin-btn.is-open{background:#dff5e7;border-color:#1e7d47}.admin-btn.is-sealed{border-color:var(--red);background:var(--red);color:#fff}.admin-btn:disabled{opacity:.6}.admin-input{border:2px solid var(--ink);font:inherit;border-radius:4px;padding:.5rem .7rem}
