:root{--paper:#f5f5ef;--ink:#22251e;--muted:#66685e;--acid:#e9ee59;--line:#dcded3;--red:#b83930;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button,a,input{touch-action:manipulation}button,a{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid #376cde;outline-offset:4px}a{color:inherit;text-decoration:none}header{height:100px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:24px}.brand{font-size:26px;letter-spacing:-1.8px;font-weight:900}.brand span{font-weight:400}.brand sup{font-size:10px;vertical-align:top;letter-spacing:0}nav{display:flex;gap:8px}nav a{font-size:13px;padding:13px 18px;border-radius:6px}nav a:hover{background:#e8e9df}nav .active{background:var(--ink);color:var(--paper)}nav span{color:var(--acid);margin-left:12px}.header-note{font-size:11px;color:var(--muted)}main{min-height:calc(100dvh - 174px);max-width:1440px;margin:auto;padding:55px 5% 40px}footer{min-height:74px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:18px 5%;gap:20px;font-size:11px;color:var(--muted)}.text-button{background:none;border:0;color:inherit;text-decoration:underline;text-underline-offset:4px;font-size:12px;padding:8px}.intro{display:grid;grid-template-columns:1.1fr 1fr;gap:60px;align-items:center;min-height:520px}.eyebrow{font:11px 'Courier New',monospace;letter-spacing:1.6px;text-transform:uppercase;display:flex;gap:12px;align-items:center}.eyebrow:before{content:'';width:8px;height:8px;background:var(--ink);border-radius:50%}h1{font-size:clamp(68px,8.5vw,122px);line-height:.91;letter-spacing:-7px;margin:28px 0;font-weight:600}h1 em{font-family:Georgia,serif;font-weight:400;letter-spacing:-6px}p{line-height:1.65;color:var(--muted);font-size:15px;max-width:390px}.primary,.secondary{border:1px solid var(--ink);border-radius:6px;padding:16px 24px;font-size:14px;font-weight:600;display:inline-flex;justify-content:center;align-items:center;gap:28px;transition:transform .16s,background .16s}.primary{background:var(--ink);color:var(--paper)}.primary:hover{background:#414538;transform:translateY(-2px)}.primary:active,.secondary:active{transform:scale(.98)}.secondary{background:transparent;color:var(--ink)}.intro .primary{margin:24px 0 18px}.small{font-size:11px;color:var(--muted);display:block;line-height:1.6}.art{position:relative;height:490px;display:grid;place-items:center;background:var(--acid);border-radius:8px;overflow:hidden}.art:before{content:'';position:absolute;width:340px;height:340px;border:1px solid #c3c74b;border-radius:50%}.art:after{content:'';position:absolute;width:450px;height:450px;border:1px solid #d2d653;border-radius:50%}.face{position:relative;width:235px;height:235px;background:var(--ink);border-radius:50%;transform:rotate(-12deg);box-shadow:15px 20px 0 #ccd04b;z-index:1;animation:arrive .7s both}.eyes{position:absolute;top:72px;left:59px;display:flex;gap:43px}.eye{height:35px;width:19px;background:var(--acid);border-radius:50%;transform:rotate(12deg)}.mouth{position:absolute;width:95px;height:45px;left:70px;top:133px;border-top:7px solid var(--acid);border-radius:50%}.cursor{position:absolute;right:75px;bottom:80px;z-index:2;font-size:100px;line-height:1;transform:rotate(-25deg);filter:drop-shadow(5px 7px 0 #c2c649);color:var(--paper)}.art-label{position:absolute;left:22px;top:22px;font:11px monospace}.art-bottom{position:absolute;bottom:22px;left:22px;right:22px;display:flex;justify-content:space-between;font:11px monospace}.intro-strip{display:flex;gap:30px;margin-top:45px;padding-top:22px;border-top:1px solid var(--line);font:11px monospace}.intro-strip b{font-weight:400;color:var(--muted)}.game-top{display:flex;justify-content:space-between;align-items:center;font:12px monospace;margin-bottom:30px}.steps{display:flex;gap:7px}.step{width:25px;height:5px;background:var(--line);border-radius:2px}.step.done{background:var(--ink)}.step.current{background:#9b9f20}.game-layout{display:grid;grid-template-columns:320px 1fr;gap:65px}.level-number{font:72px Georgia,serif;color:#bfc1b3;margin-top:15px}.sidebar h2{font-size:34px;letter-spacing:-1.4px;line-height:1.08;margin:20px 0}.sidebar p{font-size:14px}.stage{position:relative;min-height:390px;border:1px solid var(--line);border-radius:8px;background:#fffefa;padding:40px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;overflow:hidden}.stage h3{font-size:25px;letter-spacing:-1px;margin:0;text-align:center}.stage p{text-align:center;margin:0}.stage .big{font-size:clamp(32px,5vw,58px);font-weight:700;letter-spacing:-2px}.choices{display:flex;gap:14px;flex-wrap:wrap;justify-content:center}.notice{min-height:55px;padding:16px 0;font-size:13px;color:var(--red)}.hint{font-size:13px;color:var(--muted);line-height:1.6;min-height:45px}.stage input[type=text]{width:min(100%,340px);padding:17px;border:1px solid var(--line);border-radius:6px;background:var(--paper);font-size:23px;text-align:center}.permissions{display:grid;gap:15px;width:min(100%,380px)}.permissions label{display:flex;align-items:center;gap:12px;font-size:14px}.permissions input{width:18px;height:18px;accent-color:var(--ink)}input[type=range]{width:min(100%,350px);accent-color:var(--ink);direction:rtl}.volume{font-size:70px;font-variant-numeric:tabular-nums;font-weight:600;letter-spacing:-4px}.meter{height:5px;width:240px;background:var(--line);overflow:hidden}.meter span{display:block;height:100%;background:var(--ink);width:0}.keypad,.captcha{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.keypad button{width:88px;height:70px;font-size:24px}.captcha{grid-template-columns:repeat(3,1fr)}.captcha button{background:var(--paper);border:1px solid var(--line);border-radius:6px;width:75px;height:70px;font-size:28px}.captcha button.selected{background:var(--acid);border-color:var(--ink)}.terms{height:200px;max-width:430px;overflow:auto;border:1px solid var(--line);border-radius:6px;padding:20px;font-size:12px;line-height:1.7;overscroll-behavior:contain}.terms p{font-size:12px;text-align:left;margin-bottom:20px}.modal{width:min(100%,440px);padding:25px;background:var(--paper);border:1px solid var(--line);border-radius:8px;box-shadow:0 15px 40px #d1d2c780}.modal .choices{margin-top:20px}.success-stamp{background:var(--acid);padding:20px 32px;border-radius:6px;transform:rotate(-3deg);font-size:24px;animation:stamp .45s both}.result{max-width:820px;margin:10px auto;text-align:center}.result h1{font-size:80px;letter-spacing:-5px}.result p{margin:15px auto}.stats{display:flex;justify-content:center;gap:40px;margin:35px 0}.stats strong{font-size:35px;display:block}.result .choices{margin-top:28px}.stage-enter{animation:arrive .35s both}.blink{animation:stamp .3s}.preview-note{margin-top:10px}.warning-box{padding:15px;background:#eceee4;border-radius:6px;font-size:12px;color:var(--muted)}@keyframes arrive{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes stamp{from{opacity:0;transform:scale(1.3) rotate(8deg)}to{opacity:1;transform:scale(1) rotate(-3deg)}}@media(max-width:850px){header{height:82px}.header-note{display:none}.intro{gap:30px}.art{height:380px}h1{font-size:78px;letter-spacing:-5px}.game-layout{grid-template-columns:240px 1fr;gap:25px}.stage{padding:25px}.cursor{right:30px;bottom:60px}footer>span:last-child{display:none}}@media(max-width:600px){header{padding:0 5%;gap:10px}.brand{font-size:21px}nav{gap:0}nav a{font-size:10px;padding:11px 9px}nav span{margin-left:4px}main{padding-top:30px}.intro{grid-template-columns:1fr;gap:30px;min-height:0}h1{font-size:75px;margin:24px 0}.art{height:280px}.face{width:190px;height:190px}.eyes{top:55px;left:43px;gap:43px}.mouth{top:105px;left:48px}.cursor{font-size:70px;right:40px;bottom:50px}.intro-strip{gap:18px;flex-wrap:wrap;margin-top:25px}.game-layout{grid-template-columns:1fr;gap:15px}.sidebar{position:relative}.level-number{font-size:40px;margin-top:0;float:right}.sidebar h2{font-size:29px;margin:8px 50px 10px 0}.sidebar p{margin:0}.stage{min-height:340px;padding:24px 18px;gap:20px}.game-top{margin-bottom:20px;font-size:10px}.step{width:15px}.steps{gap:4px}.hint{min-height:0}.notice{min-height:44px}.result h1{font-size:58px;letter-spacing:-3px}.stats{gap:25px}footer{font-size:10px;gap:8px}.terms{height:180px}.primary,.secondary{padding:14px 20px}.intro .primary{margin-top:15px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
