:root{font-family:Arial,Helvetica,sans-serif;color:#f1f0e7;background:#141510;--accent:#d7f878;--muted:#b0b3a3;--line:#37392f;color-scheme:dark;font-synthesis:none}*{box-sizing:border-box}body{margin:0}body[data-vibe=hot]{--accent:#f5a8c2}body[data-vibe=wild]{--accent:#ffb17b}button,input,select{font:inherit}button,a{touch-action:manipulation;-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button:disabled{cursor:default;opacity:.55}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--accent);outline-offset:5px}[hidden]{display:none!important}a{color:inherit}header,main,footer{max-width:1240px;margin:auto}header{height:96px;padding:0 40px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.logo{font-size:30px;font-weight:900;letter-spacing:-1.6px;text-decoration:none;white-space:nowrap}.logo span{color:#d7f878;font-size:35px;margin-left:6px;vertical-align:middle}.header-note{color:var(--muted);font-size:11px;letter-spacing:2px}.outline{background:transparent;border:1px solid #666a57;border-radius:30px;padding:12px 18px;font-size:13px;min-height:44px}main{padding:40px}.intro{display:flex;align-items:center;justify-content:space-between;margin-bottom:36px;gap:30px}.eyebrow{color:var(--accent);font-size:10px;font-weight:800;letter-spacing:1.8px;margin-bottom:14px}h1{font-size:clamp(43px,5.5vw,70px);line-height:.99;letter-spacing:-3.4px;margin:0 0 20px}h1 em{font-style:normal;color:#d7f878}p{line-height:1.55}.intro p{font-size:16px;color:var(--muted);margin:0}.hero-stamp{width:200px;aspect-ratio:1;background:#d7f878;color:#202719;padding:22px 27px;transform:rotate(8deg);border-radius:8px;box-shadow:9px 9px 0 #303529;margin:5px 30px 10px;display:flex;flex-direction:column;justify-content:space-between}.hero-stamp span{font-size:9px;letter-spacing:1.3px;font-weight:bold}.hero-stamp strong{font-size:34px;line-height:.96;letter-spacing:-1.5px;margin:14px 0}.vibes{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.vibe{text-align:left;border:1px solid #535645;border-radius:15px;padding:21px;background:#1e2019;display:flex;flex-direction:column;gap:12px;min-height:150px;transition:background .18s,transform .18s}.vibe:hover{transform:translateY(-3px)}.vibe[data-vibe=fun]{--vibe:#d7f878}.vibe[data-vibe=hot]{--vibe:#f5a8c2}.vibe[data-vibe=wild]{--vibe:#ffb17b}.vibe.active{background:var(--vibe);border-color:var(--vibe);color:#22261b}.vibe-top{font-size:9px;font-weight:800;letter-spacing:1px;display:flex;align-items:center;justify-content:space-between;gap:10px}.vibe-top b{font-size:12px}.vibe strong{font-size:25px;letter-spacing:-1px}.vibe>span:last-child{font-size:12px;line-height:1.5;opacity:.8}.section-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:40px 0 24px}.section-head h2{margin:0;font-size:29px;letter-spacing:-1px}.section-head .eyebrow{margin-bottom:8px;font-size:9px}.shuffle{border:0;background:var(--accent);color:#24291b;font-size:13px;font-weight:700;padding:14px 20px;border-radius:9px;min-height:46px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.mode{display:flex;flex-direction:column;text-align:left;background:#202219;border:1px solid #454938;border-radius:16px;min-height:300px;padding:24px;transition:transform .18s,border-color .18s}.mode:hover{transform:translateY(-4px);border-color:var(--accent)}.mode-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.mode-symbol{font-size:36px;line-height:1;color:var(--accent)}.badge{font-size:9px;font-weight:700;letter-spacing:.8px;padding:6px 9px;border:1px solid #5a604a;border-radius:20px;color:var(--accent)}.mode-tag{font-size:8px;letter-spacing:1px;color:var(--muted);font-weight:bold}.mode h3{font-size:28px;letter-spacing:-1.1px;line-height:1.08;margin:10px 0}.mode p{font-size:14px;color:#bec3af;margin:0 0 24px;max-width:36ch}.mode-bottom{margin-top:auto;display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#bdc3ad}.arrow{border:1px solid #5a604a;border-radius:50%;height:31px;width:31px;display:grid;place-items:center;font-size:18px;color:var(--accent)}.bottom-note{display:flex;justify-content:space-between;gap:15px;color:var(--muted);font-size:11px;margin-top:25px;line-height:1.7}footer{border-top:1px solid var(--line);padding:24px 40px 30px;display:flex;justify-content:space-between;gap:20px;font-size:11px;color:var(--muted)}footer nav{display:flex;gap:18px;flex-wrap:wrap}footer button{font-size:11px;background:none;border:0;color:inherit;padding:0;text-decoration:underline;text-underline-offset:3px}footer a{text-underline-offset:3px}.resume{width:100%;border:1px solid var(--accent);background:#24291b;color:var(--accent);padding:15px;border-radius:10px;text-align:left;margin-bottom:20px;font-size:14px}dialog{border:1px solid #5d634c;border-radius:20px;padding:32px;background:#20231a;color:#f1f0e7;width:min(530px,calc(100% - 28px));max-height:90dvh}dialog::backdrop{background:#000b;backdrop-filter:blur(6px)}dialog h2{font-size:29px;letter-spacing:-1px;margin:10px 25px 16px 0}dialog p{font-size:14px;color:#bdc3ae}.close{position:absolute;right:14px;top:9px;width:42px;height:42px;background:none;border:0;font-size:30px}.field{display:block;font-size:14px;margin:20px 0}.field>span{font-size:12px;color:var(--muted);margin-left:5px}.field input,.field select{display:block;width:100%;margin-top:9px;padding:13px;border:1px solid #626951;border-radius:8px;background:#14170f;color:#fff}.field small{display:block;margin-top:8px;color:var(--muted);font-size:11px;line-height:1.6}.check{display:flex;gap:10px;align-items:flex-start;font-size:13px;line-height:1.5;margin:18px 0}.check input{width:20px;height:20px;flex-shrink:0;accent-color:var(--accent);margin:0}.age{border-top:1px solid var(--line);padding-top:18px}.error{color:#ffb6bd!important}.primary{border:0;border-radius:10px;background:var(--accent);color:#212619;font-size:15px;font-weight:800;padding:17px 24px;min-height:50px}.wide{width:100%}.rules-note{text-align:center;color:var(--muted);font-size:12px!important;line-height:1.6}.game-wrap{max-width:780px;margin:0 auto}.game-head{display:flex;justify-content:space-between;align-items:center;gap:15px;color:var(--muted);font-size:12px}.progress{height:4px;background:#3a402e;border-radius:10px;margin:24px 0}.progress span{display:block;height:100%;background:var(--accent);border-radius:10px}.game-card{padding:40px;background:var(--game-color);color:#202519;border-radius:22px;min-height:390px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;animation:enter .2s ease}.game-card h2{font-size:clamp(28px,3.4vw,42px);letter-spacing:-1.3px;line-height:1.2;margin:28px 0;overflow-wrap:anywhere}.game-card h2:focus{outline:0}.game-label{font-size:10px;font-weight:800;letter-spacing:1.7px}.game-card p{font-size:14px;max-width:560px;opacity:.85;margin:0}.game-card .result{margin-top:25px;font-weight:bold}.game-controls{display:flex;gap:12px;justify-content:center;margin-top:24px}.game-controls button{min-width:130px}.duel-controls{display:flex;align-items:center;gap:12px;margin-top:25px;flex-wrap:wrap;justify-content:center}.timer,.point{background:transparent;color:#202519;border:1px solid #20251999;border-radius:30px;padding:12px 18px;min-height:44px}.timer{font-size:24px;font-weight:bold}.point{font-size:12px}.round-notice{color:var(--accent);font-size:13px;text-align:center}.guide{max-width:780px}.guide h1{font-size:45px;line-height:1.1}.guide h2{margin-top:32px}.guide p,.guide li{color:var(--muted);line-height:1.7}.guide section{border-top:1px solid var(--line);margin-top:25px;padding-top:8px}@keyframes enter{from{opacity:.5;transform:translateY(6px)}to{opacity:1;transform:none}}@media(max-width:850px){header,main,footer{padding-left:24px;padding-right:24px}.header-note{display:none}.hero-stamp{width:170px;margin-right:5px}.vibe{padding:16px}.vibe strong{font-size:21px}.grid{gap:12px}.mode{padding:19px}.mode h3{font-size:24px}.mode-tag{font-size:7px}.vibe-top{font-size:8px}.bottom-note{flex-wrap:wrap}footer{flex-wrap:wrap}}
@media(max-width:600px){header{height:78px;padding:0 18px;gap:12px}.logo{font-size:24px}.logo span{font-size:27px}#how{padding:9px 12px;font-size:11px}main{padding:28px 18px}.intro{margin-bottom:28px;gap:10px}h1{font-size:44px;letter-spacing:-2.4px}.intro .eyebrow{font-size:8px;letter-spacing:1px}.intro p{font-size:13px}.hero-stamp{display:none}.vibes{grid-template-columns:1fr;gap:8px}.vibe{min-height:0;padding:15px 17px;gap:5px;position:relative}.vibe strong{font-size:22px}.vibe-top{font-size:8px}.vibe>span:last-child{font-size:11px}.vibe-top b{position:absolute;right:17px;top:40%;font-size:13px}.section-head{margin-top:28px;align-items:stretch;flex-direction:column;gap:15px}.section-head h2{font-size:26px}.section-head .eyebrow{font-size:8px;letter-spacing:1px}.shuffle{align-self:flex-start;font-size:12px}.grid{grid-template-columns:1fr}.mode{min-height:0;padding:20px;position:relative}.mode-top{margin-bottom:16px}.mode-symbol{font-size:30px}.mode h3{font-size:27px}.mode-tag{font-size:8px}.mode p{font-size:14px;max-width:100%;margin-bottom:20px}.bottom-note{font-size:10px;margin-top:22px;gap:5px;flex-direction:column}footer{padding:22px 18px;font-size:10px}footer nav{gap:17px;line-height:2}dialog{padding:26px 22px}.game-head{font-size:11px;flex-wrap:wrap}.game-card{padding:28px 22px;min-height:370px}.game-card h2{font-size:29px;letter-spacing:-.9px}.game-card p{font-size:13px}.game-controls{gap:10px}.game-controls button{min-width:110px}.primary{padding:16px 19px}.guide h1{font-size:36px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
