@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.woff) format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff) format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff) format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-600-normal-BgSNZQsw.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-600-normal-DWFSQ4vo.woff) format("woff")}:root{color:#2f3437;background:#f7f6f3;font-family:var(--ui);font-synthesis:none;text-rendering:geometricPrecision;-webkit-user-select:none;user-select:none;--ink: #111111;--body: #2f3437;--muted: #787774;--faint: #9b9994;--canvas: #f7f6f3;--paper: #fbfbfa;--panel: #ffffff;--line: #eaeaea;--line-strong: rgba(0, 0, 0, .08);--blue: #e1f3fe;--blue-text: #1f6c9f;--red: #fdebec;--red-text: #9f2f2d;--mono: "IBM Plex Mono", "SF Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--ui: "IBM Plex Sans", "Helvetica Neue", Arial, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, sans-serif}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100dvh;overflow:hidden;background:var(--canvas)}body:before{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;content:"";opacity:.32;background-image:linear-gradient(rgba(17,17,17,.028) 1px,transparent 1px),linear-gradient(90deg,rgba(17,17,17,.022) 1px,transparent 1px);background-size:32px 32px}.icon{flex:0 0 auto}.gate{position:relative;z-index:1;min-height:100dvh;display:grid;place-items:center;padding:24px}.gate-card{display:grid;gap:16px;width:min(360px,100%);padding:28px;border:1px solid var(--line);border-radius:12px;background:var(--panel);box-shadow:0 8px 32px #0000000d}.gate-field{display:grid;gap:7px}.gate-field label{color:var(--muted);font:650 10px / 1 var(--mono);letter-spacing:.06em;text-transform:uppercase}.gate-field input{width:100%;height:40px;padding:0 12px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font:500 16px / 1 var(--ui);letter-spacing:.04em}.gate-field input:focus-visible{outline:2px solid rgba(31,108,159,.28);outline-offset:2px;border-color:var(--line-strong)}.gate-turnstile{min-height:65px;display:flex;justify-content:center}.gate-error{margin:0;color:var(--red-text);font:500 13px / 1.4 var(--ui);text-wrap:pretty}.gate-hint{margin:0;color:var(--muted, #6b7280);font:500 13px / 1.4 var(--ui);text-wrap:pretty}.gate-submit{width:100%;height:42px;border:1px solid #111111;border-radius:999px;background:#111;color:#fff;cursor:pointer;font:600 15px / 1 var(--ui);transition:background-color .18s ease,border-color .18s ease,transform .12s ease}.gate-submit:hover:not(:disabled){background:#333;border-color:#333}.gate-submit:active:not(:disabled){transform:scale(.99)}.gate-submit:disabled{opacity:.6;cursor:progress}.share-shell{position:relative;z-index:1;min-height:100dvh;display:block;background:#fbfbfa}.viewer{min-width:0;min-height:0;width:100%;height:100dvh;display:block;position:relative;background:var(--paper)}.page-nav{position:absolute;right:18px;top:50%;transform:translateY(-50%);z-index:12;display:flex;flex-direction:column;align-items:center;gap:6px;padding:9px 7px;border-radius:999px;background:#1111118c;backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);box-shadow:0 6px 22px #00000047;-webkit-user-select:none;user-select:none}.page-nav-step{display:flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border:none;border-radius:999px;background:#ffffff1a;color:#ffffffeb;cursor:pointer;transition:background .15s ease}.page-nav-step:hover:not(:disabled){background:#fff3}.page-nav-step:disabled{opacity:.32;cursor:default}.page-nav-input{width:36px;height:28px;border:1px solid rgba(255,255,255,.22);border-radius:8px;background:#ffffff14;color:#fff;text-align:center;font:600 13px / 1 var(--mono);outline:none}.page-nav-input::placeholder{color:#ffffff9e}.page-nav-input:focus{border-color:#ffffff80;background:#ffffff24}.page-nav-total{color:#ffffffa8;font:600 11px / 1 var(--mono);letter-spacing:.02em}.frame{position:relative;width:100%;height:100%;min-width:0;min-height:0;background:#f4f3f0;overflow:hidden}.frame canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain;display:block;pointer-events:none;transition:filter .22s ease,opacity .22s ease}.page-legend{position:absolute;bottom:12px;left:50%;transform:translate(-50%);padding:4px 10px;border-radius:999px;background:#1111116b;color:#ffffffd1;font:600 11px / 1 var(--mono);letter-spacing:.02em;pointer-events:none;-webkit-user-select:none;user-select:none}.frame.blocked canvas{filter:blur(12px) saturate(.35) brightness(.72);opacity:.68}.frame.degraded canvas{filter:saturate(.72) contrast(.96)}.blackout{position:absolute;top:0;right:0;bottom:0;left:0;background:#111111eb;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;text-align:center;padding:22px;z-index:10}.blackout strong{font-family:var(--ui);font-size:clamp(19px,2.2vw,28px);font-weight:650;letter-spacing:0;line-height:1.1;text-wrap:balance}.blackout span{color:#ffffffb8;max-width:460px;font-size:13px;line-height:1.45;text-wrap:pretty}.blackout-resume{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;margin-top:7px;padding:8px 15px;border:1px solid rgba(255,255,255,.3);border-radius:8px;background:#fff;color:#111;font:600 13px / 1 var(--ui);cursor:pointer}.blackout-resume:hover{background:#ffffffe6}.blackout-resume:focus-visible{outline:2px solid #ffffff;outline-offset:3px}.cooldown-progress{display:grid;gap:7px;width:min(260px,72vw);margin-top:6px}.cooldown-progress span{color:#ffffffc7;font:650 10px / 1 var(--mono);text-transform:uppercase}.cooldown-progress div{height:4px;overflow:hidden;border-radius:999px;background:#ffffff29}.cooldown-progress i{display:block;width:100%;height:100%;transform-origin:left center;background:#ffffffbd;transition:transform .24s linear}.challenge-panel{position:absolute;left:50%;bottom:16px;z-index:11;display:inline-flex;align-items:center;gap:8px;max-width:min(720px,calc(100% - 36px));padding:9px 11px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--body);box-shadow:0 2px 8px #0000000f;transform:translate(-50%);font:600 13px / 1 var(--ui)}.challenge-panel span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.challenge-panel button{display:inline-flex;align-items:center;gap:6px;height:32px;min-width:92px;padding:0 12px;border:1px solid #111111;border-radius:999px;background:#111;color:#fff;cursor:pointer;font:600 13px / 1 var(--ui)}.challenge-panel button:hover{background:#333;border-color:#333}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media print{body *{visibility:hidden!important}body:before{content:"Protected document: printing is blocked and reported.";visibility:visible!important;position:fixed;top:0;right:0;bottom:0;left:0;background:#111;color:#fff;display:flex;align-items:center;justify-content:center;font:700 18px var(--mono)}}
