:root{--ink:#10100f;--paper:#f2f0e9;--white:#fff;--signal:#dfff00;--muted:#727169}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);margin:0;font-family:Arial,Helvetica,sans-serif}button,input{font:inherit}button{color:inherit;cursor:pointer}a{color:inherit}.site-shell{min-height:100vh}.topbar{z-index:10;border-bottom:1px solid var(--ink);background:var(--paper);grid-template-columns:1fr auto 1fr;align-items:center;height:72px;padding:0 clamp(18px,3vw,48px);display:grid;position:relative}.wordmark{letter-spacing:-.075em;background:0 0;border:0;justify-self:start;padding:0;font-size:clamp(20px,2vw,27px);font-weight:950}.wordmark span{color:#ff3b1f}.topbar-meta{letter-spacing:.12em;align-items:center;gap:10px;font-size:11px;display:flex}.topbar-meta b{background:var(--ink);color:var(--white);padding:5px 8px;font-size:9px}.top-actions{justify-self:end;align-items:center;gap:8px;display:flex}.top-actions>button,.top-actions>a{border:1px solid var(--ink);background:0 0;border-radius:99px;align-items:center;min-height:38px;padding:0 14px;font-size:11px;font-weight:750;text-decoration:none;display:inline-flex}.top-actions>button:hover,.top-actions>a:hover{background:var(--signal)}.account-avatar{width:36px!important;height:36px!important}.game-layout{grid-template-columns:minmax(0,1.35fr) minmax(400px,.65fr);min-height:calc(100vh - 72px);display:grid}.image-stage{touch-action:pan-y;background:#c8c4b8;min-height:720px;position:relative;overflow:hidden}.image-stage>img{object-fit:cover;filter:saturate(.84)contrast(1.06);transition:transform .45s;animation:.28s ease-out image-in}.image-stage.is-rotated>img{transform:rotate(180deg)scale(1.04)}.image-shade{pointer-events:none;background:linear-gradient(#0000 68%,#000000ab);position:absolute;inset:0}.image-context{color:#fff;letter-spacing:.14em;font-size:10px;font-weight:800;position:absolute;bottom:30px;left:clamp(18px,3vw,46px);right:150px}.gallery-ui{z-index:2;color:#fff;align-items:center;gap:10px;display:flex;position:absolute;bottom:67px;left:clamp(18px,3vw,46px);right:clamp(18px,3vw,46px)}.gallery-ui>button{color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#00000059;border:1px solid #ffffff8c;border-radius:50%;flex:none;width:42px;height:42px;font-size:19px}.gallery-ui>button:hover{border-color:var(--signal);background:var(--signal);color:var(--ink)}.gallery-ui>span{min-width:28px;margin-left:auto;font-size:11px;font-weight:800}.gallery-dots{gap:6px;display:flex}.gallery-dots button{background:#fff6;border:0;border-radius:50%;width:7px;height:7px;padding:0}.gallery-dots button.active{background:var(--signal);border-radius:99px;width:23px}.play-panel{border-left:1px solid var(--ink);flex-direction:column;min-height:720px;padding:clamp(30px,4.5vw,70px);display:flex}.puzzle-meta{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;justify-content:space-between;font-size:10px;font-weight:750;display:flex}.difficulty{align-items:center;gap:5px;display:flex}.difficulty i{border:1px solid var(--ink);border-radius:50%;width:7px;height:7px}.difficulty i.filled{background:var(--ink)}.question-block{margin:auto 0 34px}.eyebrow{color:var(--muted);letter-spacing:.18em;margin:0 0 14px;font-size:9px;font-weight:850}.play-panel h1{letter-spacing:-.09em;text-wrap:balance;margin:0;font-size:clamp(68px,6.5vw,110px);font-weight:950;line-height:.76}.prompt{letter-spacing:-.015em;max-width:510px;margin:34px 0 0;font-size:clamp(16px,1.35vw,20px);line-height:1.45}.hints{gap:8px;margin-bottom:18px;display:grid}.hint-card{background:var(--signal);grid-template-columns:70px 1fr;gap:10px;margin:0;padding:14px 16px;font-size:14px;line-height:1.4;animation:.2s ease-out rise;display:grid}.hint-card:nth-child(2){background:var(--white);border:1px solid var(--ink)}.hint-card b{letter-spacing:.14em;font-size:9px}.play-controls form>label{letter-spacing:.14em;text-transform:uppercase;margin-bottom:8px;font-size:9px;font-weight:850;display:block}.input-row{border-bottom:3px solid var(--ink);background:var(--white);grid-template-columns:1fr auto;display:grid}.input-row input{background:0 0;border:0;outline:none;min-width:0;height:58px;padding:0 17px;font-size:16px}.input-row input::placeholder{color:#9a9890}.input-row button{background:var(--ink);min-width:96px;color:var(--white);border:0;padding:0 19px;font-size:12px;font-weight:850}.input-row button:hover{background:#ff3b1f}.input-row button:disabled{cursor:not-allowed;background:#aaa89f}.control-footer{justify-content:space-between;align-items:center;margin-top:16px;display:flex}.hint-button,.archive-link{text-underline-offset:4px;background:0 0;border:0;padding:5px 0;font-size:11px;font-weight:800;text-decoration:underline}.hint-button:disabled{opacity:.42;cursor:default}.attempts{align-items:center;gap:6px;display:flex}.attempts>span{border:1px solid var(--ink);border-radius:50%;width:10px;height:10px}.attempts>span.miss{background:var(--ink)}.attempts>span.hit{background:#21a13c;border-color:#21a13c}.attempts small{color:var(--muted);margin-left:4px;font-size:10px}.feedback{margin:16px 0 0;font-size:13px;font-weight:700}.reveal{margin:auto 0;animation:.3s ease-out rise}.score-line{align-items:baseline;gap:9px;margin-bottom:22px;display:flex}.score-line strong{letter-spacing:-.06em;font-size:50px;line-height:1}.score-line span{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;font-size:10px;font-weight:800}.reveal h1{max-width:700px;font-size:clamp(47px,5vw,80px);line-height:.87}.reveal-copy{max-width:620px;margin:26px 0;font-size:16px;line-height:1.5}.community-check{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);padding:17px 0}.community-check b{letter-spacing:.15em;font-size:9px}.community-check p{margin:8px 0;font-size:13px;line-height:1.45}.community-check a{font-size:11px;font-weight:750}.share-button{background:var(--signal);text-transform:uppercase;border:0;justify-content:space-between;align-items:center;width:100%;min-height:58px;margin-top:24px;padding:0 20px;font-size:12px;font-weight:900;display:flex}.share-button:hover{background:var(--ink);color:#fff}.share-button span{font-size:20px}.share-status{text-align:center;margin:10px 0 0;font-size:11px;font-weight:750}.archive-link{margin-top:14px}.site-footer{border-top:1px solid var(--ink);min-height:58px;color:var(--muted);justify-content:space-between;align-items:center;gap:20px;padding:14px clamp(18px,3vw,48px);font-size:11px;display:flex}.site-footer p{margin:0}.modal-backdrop{z-index:30;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#10100fb8;place-items:center;padding:18px;animation:.16s ease-out fade-in;display:grid;position:fixed;inset:0}.modal{background:var(--paper);width:min(760px,100%);max-height:calc(100vh - 36px);padding:clamp(28px,5vw,58px);position:relative;overflow-y:auto}.modal-close{border:1px solid var(--ink);background:0 0;border-radius:50%;width:42px;height:42px;font-size:24px;position:absolute;top:15px;right:16px}.modal h2{letter-spacing:-.07em;margin:0 0 34px;font-size:clamp(42px,7vw,72px);line-height:.9}.rules{border-top:1px solid var(--ink);margin:0 0 28px;padding:0;list-style:none}.rules li{border-bottom:1px solid var(--ink);grid-template-columns:55px 1fr;align-items:center;min-height:70px;display:grid}.rules b{font-size:13px}.rules span{font-size:15px;line-height:1.4}.modal-primary{background:var(--signal);text-transform:uppercase;border:0;width:100%;min-height:56px;font-size:12px;font-weight:900}.archive-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.archive-grid>button{text-align:left;background:0 0;border:1px solid #0000;padding:0}.archive-grid>button:hover,.archive-grid>button.active{border-color:var(--ink)}.archive-image{aspect-ratio:1;background:#cbc7ba;display:block;position:relative;overflow:hidden}.archive-image img{object-fit:cover;filter:saturate(.78)}.archive-meta{justify-content:space-between;align-items:center;gap:8px;padding:10px 8px;display:flex}.archive-meta b{font-size:13px}.archive-meta small{color:var(--muted);text-transform:uppercase;font-size:9px}.auth-page{background:var(--paper);grid-template-columns:1fr 1fr;min-height:100vh;display:grid}.auth-brand{background:var(--ink);color:#fff;flex-direction:column;justify-content:space-between;min-width:0;padding:clamp(28px,5vw,72px);display:flex}.auth-brand .wordmark{color:#fff}.auth-brand h1{letter-spacing:-.09em;margin:auto 0;font-size:clamp(68px,9vw,150px);line-height:.76}.auth-brand p{color:#b8b7af;letter-spacing:.08em;margin:0;font-size:12px}.auth-form{place-items:center;min-width:0;padding:24px;display:grid}.admin-shell{background:var(--paper);min-height:100vh}.admin-topbar{border-bottom:1px solid var(--ink);justify-content:space-between;align-items:center;height:72px;padding:0 clamp(18px,3vw,48px);display:flex}.admin-topbar .wordmark{color:var(--ink);text-decoration:none}.admin-account{color:var(--muted);align-items:center;gap:12px;font-size:11px;display:flex}.admin-hero{background:var(--ink);color:#fff;grid-template-columns:1.4fr .6fr;align-items:end;gap:clamp(30px,6vw,110px);min-height:430px;padding:clamp(42px,7vw,110px) clamp(18px,5vw,80px);display:grid}.admin-hero .eyebrow,.admin-denied .eyebrow{color:var(--signal)}.admin-hero h1{letter-spacing:-.09em;margin:0;font-size:clamp(72px,10.5vw,170px);line-height:.76}.admin-hero>p{color:#c1c0b9;max-width:440px;margin:0 0 4px;font-size:clamp(16px,1.4vw,21px);line-height:1.5}.review-filters{z-index:8;border-bottom:1px solid var(--ink);background:var(--paper);grid-template-columns:repeat(4,1fr);display:grid;position:sticky;top:0}.review-filters button{border:0;border-right:1px solid var(--ink);text-transform:uppercase;background:0 0;justify-content:space-between;align-items:center;gap:15px;min-height:64px;padding:0 clamp(14px,2.5vw,38px);font-size:11px;font-weight:850;display:flex}.review-filters button:last-child{border-right:0}.review-filters button.active{background:var(--signal)}.review-filters b{background:var(--ink);color:#fff;border-radius:50%;place-items:center;min-width:26px;height:26px;font-size:10px;display:grid}.review-list{padding:0 clamp(18px,3vw,48px) 80px}.review-card{content-visibility:auto;contain-intrinsic-size:560px;border-bottom:1px solid var(--ink);grid-template-columns:42px minmax(240px,.72fr) minmax(360px,1.28fr) 220px;gap:clamp(18px,2.7vw,44px);padding:42px 0;display:grid}.review-number{color:var(--muted);letter-spacing:.1em;font-size:11px;font-weight:800}.review-image{background:#ccc8bd;min-height:420px;position:relative;overflow:hidden}.review-image img{object-fit:cover;filter:saturate(.82)contrast(1.04)}.review-image>span{background:var(--ink);color:#fff;text-transform:uppercase;border-radius:99px;padding:7px 10px;font-size:9px;font-weight:850;position:absolute;bottom:12px;right:12px}.review-copy{min-width:0}.review-card-meta{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.status-pill{border:1px solid var(--ink);letter-spacing:.1em;text-transform:uppercase;border-radius:99px;padding:6px 9px;font-size:9px;font-weight:900}.status-pill.approved{color:#fff;background:#188a34;border-color:#188a34}.status-pill.rejected{color:#fff;background:#ff3b1f;border-color:#ff3b1f}.review-context{color:var(--muted);letter-spacing:.14em;margin:0 0 12px;font-size:9px;font-weight:850}.review-copy h2{letter-spacing:-.055em;max-width:760px;margin:0 0 28px;font-size:clamp(29px,3vw,48px);line-height:1}.review-answer{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);padding:18px 0}.review-answer small,.review-proof small{color:var(--muted);letter-spacing:.16em;margin-bottom:7px;font-size:8px;font-weight:900;display:block}.review-answer strong{font-size:18px;line-height:1.25;display:block}.review-answer p,.review-proof p{margin:9px 0 0;font-size:13px;line-height:1.5}.review-proof{padding-top:18px}.review-proof a{margin-top:10px;font-size:11px;font-weight:800;display:inline-block}.review-controls{align-self:start;position:sticky;top:86px}.review-controls fieldset{border:0;margin:0 0 22px;padding:0}.review-controls legend{color:var(--muted);letter-spacing:.14em;text-transform:uppercase;margin-bottom:10px;font-size:9px;font-weight:850}.rating-buttons{border:1px solid var(--ink);grid-template-columns:repeat(5,1fr);display:grid}.rating-buttons button{aspect-ratio:1;border:0;border-right:1px solid var(--ink);background:#fff;font-size:11px;font-weight:900}.rating-buttons button:last-child{border-right:0}.rating-buttons button:hover,.rating-buttons button.active{background:var(--signal)}.decision-buttons{gap:8px;display:grid}.decision-buttons button{border:1px solid var(--ink);letter-spacing:.08em;text-transform:uppercase;background:0 0;min-height:52px;font-size:10px;font-weight:900}.decision-buttons button.approve{background:var(--ink);color:#fff}.decision-buttons button.approve:hover{background:#188a34;border-color:#188a34}.decision-buttons button.reject:hover{color:#fff;background:#ff3b1f}.decision-buttons button.reset{text-underline-offset:4px;border:0;min-height:36px;text-decoration:underline}.decision-buttons button:disabled{opacity:.45;cursor:default}.save-state{min-height:15px;color:var(--muted);text-align:center;margin:10px 0 0;font-size:9px}.empty-queue{align-content:center;justify-items:start;min-height:520px;padding:clamp(30px,7vw,110px);display:grid}.empty-queue h2{letter-spacing:-.09em;margin:0 0 30px;font-size:clamp(60px,9vw,130px);line-height:.78}.empty-queue button{background:var(--signal);text-transform:uppercase;border:0;min-height:54px;padding:0 24px;font-size:11px;font-weight:900}.admin-denied{background:var(--ink);color:#fff;place-content:center;justify-items:start;min-height:100vh;padding:24px;display:grid}.admin-denied h1{letter-spacing:-.09em;margin:0 0 30px;font-size:clamp(78px,14vw,190px);line-height:.76}.admin-denied>p:not(.eyebrow){color:#bbb9b2;max-width:520px;font-size:16px;line-height:1.5}.admin-denied>a,.admin-denied-actions>a{background:var(--signal);min-height:52px;color:var(--ink);text-transform:uppercase;align-items:center;padding:0 22px;font-size:11px;font-weight:900;text-decoration:none;display:inline-flex}.admin-denied-actions{align-items:center;gap:14px;margin-top:22px;display:flex}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}}@keyframes image-in{0%{opacity:.55;transform:scale(1.01)}}@media (max-width:880px){.topbar{grid-template-columns:1fr auto;height:62px;padding:0 16px;position:sticky;top:0}.topbar-meta{display:none}.top-actions{gap:5px}.top-actions>button,.top-actions>a{border-color:#aaa79e;min-height:34px;padding:0 10px}.top-actions .how-to-button{display:none}.account-avatar{width:32px!important;height:32px!important}.game-layout{grid-template-columns:1fr;min-height:auto}.image-stage{min-height:min(64vh,590px)}.image-context{font-size:9px;bottom:20px;right:18px}.gallery-ui{bottom:54px}.play-panel{border-top:1px solid var(--ink);border-left:0;min-height:600px;padding:28px 20px 38px}.question-block{margin:70px 0 32px}.play-panel h1{font-size:clamp(72px,22vw,108px)}.prompt{margin-top:28px;font-size:17px}.site-footer{flex-direction:column;align-items:flex-start;gap:4px}.auth-page{grid-template-columns:1fr}.auth-brand{min-height:280px}.auth-brand h1{margin:54px 0;font-size:74px}.auth-form{min-height:520px;padding:16px}.admin-topbar{height:62px;padding:0 16px}.admin-account>span{display:none}.admin-hero{grid-template-columns:1fr;align-content:end;gap:38px;min-height:510px;padding:54px 20px}.admin-hero h1{font-size:clamp(78px,22vw,120px)}.admin-hero>p{font-size:16px}.review-filters{grid-template-columns:repeat(4,minmax(128px,1fr));top:0;overflow-x:auto}.review-filters button{min-height:58px;padding:0 14px}.review-list{padding:0 16px 60px}.review-card{grid-template-columns:34px 1fr;gap:14px;padding:32px 0 42px}.review-number{grid-row:1/span 3}.review-image{grid-column:2;min-height:58vw}.review-copy{grid-column:2}.review-controls{grid-column:2;position:static}}@media (max-width:560px){.wordmark{font-size:19px}.top-actions>button,.top-actions>a{font-size:10px}.image-stage{min-height:52vh;max-height:500px}.gallery-ui>button{width:38px;height:38px}.play-panel{padding-inline:16px}.question-block{margin-top:52px}.input-row{grid-template-columns:1fr 84px}.input-row input{height:56px;padding-inline:13px}.input-row button{min-width:84px;padding-inline:12px}.hint-card{grid-template-columns:55px 1fr;padding:13px}.archive-grid{grid-template-columns:repeat(2,1fr);gap:9px}.modal{padding:56px 18px 24px}.modal h2{font-size:48px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
