@font-face{font-family:Departure Mono;src:url(/fonts/DepartureMono-Regular.otf)format("opentype");font-display:swap}:root{--bg:#0d0d0b;--bg-soft:#151512;--card:#191915;--card-hover:#1f1f1a;--line:#2c2c26;--line-strong:#3d3d34;--ink:#f2f2ea;--dim:#a2a298;--faint:#5b5b52;--acid:#c0fe04;--acid-soft:#c0fe041a;--gold:#ffd23f;--danger:#ff5c38;--irr:#7a7a6e;--font-mono:"Departure Mono", ui-monospace, "SF Mono", Menlo, monospace;--font-sans:"PingFang SC", "Noto Sans SC", "Microsoft YaHei", sans-serif}*{box-sizing:border-box}body{background:repeating-linear-gradient(0deg, transparent 0 31px, #f2f2ea06 31px 32px), repeating-linear-gradient(90deg, transparent 0 31px, #f2f2ea06 31px 32px), var(--bg);min-height:100vh;color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.7}#app{min-height:100vh}a{color:var(--acid);text-decoration:none}h1,h2,h3{margin:0;font-weight:800}::selection{background:var(--acid);color:#000}.hud-top{font-family:var(--font-mono);letter-spacing:.12em;color:var(--faint);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:50;background:#0d0d0bd1;justify-content:space-between;align-items:center;padding:10px 18px;font-size:11px;display:flex;position:fixed;top:0;left:0;right:0}.hud-top .brand{color:var(--acid);align-items:center;gap:10px;display:flex}.hud-top .brand a{color:var(--acid)}.hud-top nav{gap:18px;display:flex}.hud-top nav a{color:var(--dim)}.hud-top nav a:hover,.hud-top nav a.on{color:var(--acid)}.hud-top nav .nav-member{color:var(--gold)}.member-dot{color:var(--gold);margin-left:4px;font-size:10px}.hud-corner{font-family:var(--font-mono);color:var(--faint);letter-spacing:.1em;z-index:50;pointer-events:none;font-size:10px;position:fixed;bottom:10px;right:12px}.home{max-width:1080px;margin:0 auto;padding:110px 20px 90px}.hero{margin-bottom:64px;position:relative}.hero-tag{font-family:var(--font-mono);letter-spacing:.25em;color:var(--dim);align-items:center;gap:8px;font-size:12px;display:inline-flex}.hero-tag:before{content:"";background:var(--acid);width:8px;height:8px;display:inline-block}.hero h1{letter-spacing:.04em;color:var(--ink);margin:8px 0 4px;font-size:clamp(72px,13vw,150px);line-height:1.05}.hero h1 .acid{color:var(--acid)}.hero-en{font-family:var(--font-mono);letter-spacing:.55em;color:var(--faint);font-size:clamp(12px,2vw,15px)}.tagline{color:var(--dim);max-width:560px;margin-top:18px;font-size:15px}.sticker{font-family:var(--font-mono);letter-spacing:.15em;border:1px solid var(--line-strong);background:var(--card);color:var(--dim);-webkit-user-select:none;user-select:none;pointer-events:none;white-space:nowrap;padding:6px 12px;font-size:11px;transition:transform .3s ease-out;position:absolute}.sticker.acid{background:var(--acid);color:#0c0c0a;border-color:var(--acid);font-weight:700}.sticker.s1{top:-14px;right:16%;transform:rotate(6deg)}.sticker.s2{top:58%;right:2%;transform:rotate(-7deg)}.sticker.s3{bottom:-18px;left:38%;transform:rotate(4deg)}.sticker.s4{top:18%;right:34%;transform:rotate(-4deg)}.mode-row{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:48px;display:grid}.mode-card{border:1px solid var(--line);background:var(--card);padding:24px;transition:transform .15s,border-color .15s,box-shadow .15s}.mode-card:hover{border-color:var(--acid);box-shadow:5px 5px 0 var(--acid-soft);transform:translate(-3px,-3px)}.mode-card h3{margin-bottom:6px;font-size:20px}.mode-card h3 .no{font-family:var(--font-mono);color:var(--acid);letter-spacing:.1em;margin-right:10px;font-size:13px}.mode-card p{color:var(--dim);margin:0 0 16px;font-size:14px}.mode-actions{flex-wrap:wrap;gap:10px;display:flex}.gen-card{border:1px dashed var(--line-strong);background:var(--bg-soft);margin-bottom:56px;padding:20px 24px}.gen-title{color:var(--ink);font-size:14px;font-family:var(--font-mono);letter-spacing:.1em}.gen-controls{flex-wrap:wrap;align-items:center;gap:12px;margin-top:12px;display:flex}.quota-tag{float:right;font-family:var(--font-mono);letter-spacing:.1em;color:var(--gold);border:1px solid var(--gold);padding:1px 8px;font-size:11px}.custom-box{border-top:1px dashed var(--line-strong);flex-direction:column;gap:10px;margin-top:14px;padding-top:14px;display:flex}.custom-row{flex-wrap:wrap;gap:10px;display:flex}.custom-row input{background:var(--bg-soft);border:1px solid var(--line);min-width:150px;color:var(--ink);border-radius:2px;flex:1;padding:9px 12px;font-family:inherit;font-size:15px}.custom-row input:focus{border-color:var(--acid);outline:none}.btn-member{color:var(--gold);border-color:var(--gold)}.acid-link{color:var(--acid);text-decoration:underline}.riddles h2{margin-bottom:4px;font-size:22px}.riddles .sec-note{font-family:var(--font-mono);color:var(--faint);letter-spacing:.2em;margin:0 0 20px;font-size:11px}.loading{color:var(--faint);text-align:center;font-family:var(--font-mono);letter-spacing:.2em;padding:40px 0}.riddle-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;display:grid}.riddle-card{border:1px solid var(--line);background:var(--card);cursor:pointer;flex-direction:column;gap:10px;padding:18px;transition:transform .15s,border-color .15s,box-shadow .15s;display:flex}.riddle-card:hover,.riddle-card:focus-visible{border-color:var(--acid);outline:none;transform:translate(-3px,-3px);box-shadow:5px 5px #c0fe042e}.card-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.riddle-card h3{font-size:17px}.surface{color:var(--dim);-webkit-line-clamp:3;-webkit-box-orient:vertical;flex:1;margin:0;font-size:14px;display:-webkit-box;overflow:hidden}.card-foot{color:var(--faint);font-size:12px;font-family:var(--font-mono);letter-spacing:.08em}.badge{font-family:var(--font-mono);border:1px solid var(--line-strong);color:var(--dim);white-space:nowrap;letter-spacing:.1em;border-radius:2px;padding:1px 9px;font-size:11px}.badge.easy{color:var(--acid);border-color:var(--acid)}.badge.medium{color:var(--gold);border-color:var(--gold)}.badge.hard{color:var(--danger);border-color:var(--danger)}.game{flex-direction:column;gap:16px;max-width:780px;min-height:100dvh;margin:0 auto;padding:96px 16px 40px;display:flex}.game-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.back{font-family:var(--font-mono);color:var(--faint);letter-spacing:.1em;font-size:12px}.back:hover{color:var(--acid)}.meta{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.meta .title{font-size:18px}.counter{color:var(--dim);font-size:12px;font-family:var(--font-mono);letter-spacing:.08em}.surface-card{border:1px solid var(--line);border-left:4px solid var(--acid);background:var(--card);padding:18px 22px}.surface-card h2{font-family:var(--font-mono);color:var(--acid);letter-spacing:.35em;margin-bottom:8px;font-size:11px}.surface-card p{margin:0;font-size:17px}.chat{flex-direction:column;flex:1;gap:14px;min-height:200px;padding:8px 4px;display:flex;overflow-y:auto}.chat-empty{color:var(--faint);text-align:center;margin:auto;font-size:14px}.chat-item .q{justify-content:flex-end;gap:10px;display:flex}.chat-item .q p{background:var(--acid-soft);border:1px solid #c0fe0459;border-radius:2px;max-width:78%;margin:0;padding:8px 14px;font-size:15px}.chat-item .a{gap:10px;display:flex}.chat-item .a p{background:var(--bg-soft);border:1px solid var(--line);border-radius:2px;max-width:78%;margin:0;padding:8px 14px;font-size:15px}.who{font-family:var(--font-mono);color:var(--faint);white-space:nowrap;letter-spacing:.1em;padding-top:9px;font-size:11px}.who.host{color:var(--acid)}.verdict{font-family:var(--font-mono);border:1px solid;margin-right:8px;padding:0 8px;font-size:12px;font-weight:700;display:inline-block}.verdict.yes{color:var(--acid)}.verdict.no{color:var(--danger)}.verdict.partial{color:var(--gold)}.verdict.irr{color:var(--irr)}.hint-line{color:var(--gold);background:#ffd23f14;border:1px dashed #ffd23f66;border-radius:2px;margin:0;padding:8px 14px;font-size:14px}.dots{align-items:center;gap:4px;display:inline-flex}.dots i{background:var(--faint);border-radius:0;width:5px;height:5px;animation:1.2s infinite blink}.dots i:nth-child(2){animation-delay:.2s}.dots i:nth-child(3){animation-delay:.4s}@keyframes blink{0%,80%,to{opacity:.15}40%{opacity:1}}.composer{border-top:1px solid var(--line);flex-direction:column;gap:10px;padding-top:14px;display:flex}.composer-row{gap:10px;display:flex}.composer-row input{background:var(--bg-soft);border:1px solid var(--line);color:var(--ink);border-radius:2px;flex:1;padding:10px 14px;font-family:inherit;font-size:15px}.composer-row input:focus{border-color:var(--acid);outline:none}.composer-actions{flex-wrap:wrap;gap:8px;display:flex}.btn{font-family:var(--font-mono);letter-spacing:.08em;border:1px solid var(--line-strong);color:var(--dim);cursor:pointer;background:0 0;border-radius:2px;padding:9px 18px;font-size:13px;transition:all .15s}.btn:disabled{opacity:.35;cursor:not-allowed}.btn.primary{background:var(--acid);border-color:var(--acid);color:#0c0c0a;font-weight:700}.btn.primary:hover:not(:disabled){transform:translate(-2px,-2px);box-shadow:3px 3px #c0fe0459}.btn.ghost:hover:not(:disabled){border-color:var(--acid);color:var(--acid)}.btn.danger:hover:not(:disabled){border-color:var(--danger);color:var(--danger)}.btn.wide{width:100%}select,.nick-input,.code-input{background:var(--bg-soft);border:1px solid var(--line);color:var(--ink);border-radius:2px;padding:9px 12px;font-family:inherit;font-size:15px}select:focus,.nick-input:focus,.code-input:focus{border-color:var(--acid);outline:none}.field-label{font-family:var(--font-mono);letter-spacing:.2em;color:var(--faint);margin-bottom:8px;font-size:11px;display:block}.guess-box{flex-direction:column;gap:10px;display:flex}.guess-box textarea{background:var(--bg-soft);border:1px solid var(--line);color:var(--ink);resize:vertical;border-radius:2px;padding:10px 14px;font-family:inherit;font-size:15px}.guess-box textarea:focus{border-color:var(--acid);outline:none}.guess-box .btn{align-self:flex-end}.error{color:var(--danger);font-size:13px;font-family:var(--font-mono);margin:0}.error-page{text-align:center;color:var(--danger);font-family:var(--font-mono);padding:120px 20px}.reveal{flex-direction:column;gap:16px;display:flex}.reveal-card{border:1px solid var(--line);background:var(--card);flex-direction:column;gap:8px;padding:18px 22px;display:flex}.reveal-tag{font-family:var(--font-mono);letter-spacing:.25em;color:var(--dim);margin:0;font-size:12px;font-weight:700}.reveal-tag.correct{color:var(--acid)}.reveal-tag.wrong{color:var(--danger)}.reveal-tag.revealed{color:var(--gold)}.reveal-title{color:var(--dim);font-size:11px;font-family:var(--font-mono);letter-spacing:.35em;margin:0}.truth{margin:0;font-size:17px}.feedback{color:var(--dim);border-top:1px dashed var(--line);margin:4px 0 0;padding-top:10px;font-size:14px}.reveal h3{color:var(--dim);font-size:11px;font-family:var(--font-mono);letter-spacing:.35em}.keypoints{color:var(--dim);flex-direction:column;gap:8px;margin:0;padding-left:20px;font-size:15px;line-height:1.8;display:flex}.reveal-actions{justify-content:center;padding-top:8px;display:flex}.reveal-actions .btn{padding:10px 28px;font-size:14px}.room-page,.room-create,.room-join{flex-direction:column;gap:16px;max-width:780px;margin:0 auto;padding:96px 20px 80px;display:flex}.review-page{flex-direction:column;gap:16px;max-width:760px;margin:0 auto;padding:96px 20px 80px;display:flex}.room-head h1,.review-page h1{letter-spacing:.05em;font-size:30px}.subtitle{color:var(--dim);font-size:13px;font-family:var(--font-mono);letter-spacing:.08em;margin:4px 0 0}.row-theme{font-family:var(--font-mono);color:var(--faint);letter-spacing:.15em;font-size:11px}.panel{border:1px solid var(--line);background:var(--card);flex-direction:column;gap:12px;padding:24px;display:flex}.panel-head{font-family:var(--font-mono);letter-spacing:.2em;color:var(--acid);font-size:12px}.room-bar{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.room-code-label{font-family:var(--font-mono);color:var(--faint);letter-spacing:.2em;font-size:11px}.room-code-box{font-family:var(--font-mono);letter-spacing:.3em;color:var(--acid);border:1px solid var(--acid);background:var(--acid-soft);padding:6px 16px;font-size:26px}.room-code{color:var(--dim);font-size:13px}.status-pill{font-family:var(--font-mono);border:1px solid var(--line);color:var(--dim);letter-spacing:.1em;border-radius:2px;padding:2px 10px;font-size:11px}.status-pill.online{color:var(--acid);border-color:var(--acid)}.status-pill.offline{color:var(--danger);border-color:var(--danger)}.connecting-page{font-family:var(--font-mono);color:var(--dim);letter-spacing:.2em;flex-direction:column;align-items:center;gap:14px;padding:140px 0;display:flex}.fatal{color:var(--danger);font-size:16px}.fatal-actions{gap:12px;display:flex}.players-bar{flex-wrap:wrap;gap:8px;display:flex}.player-chip{font-family:var(--font-mono);border:1px solid var(--line);color:var(--dim);background:var(--bg-soft);border-radius:2px;padding:2px 12px;font-size:12px}.player-chip.me{border-color:var(--acid);color:var(--acid)}.player-chip.offline{opacity:.4;text-decoration:line-through}.host-truth{border-top:1px dashed var(--line);color:var(--dim);margin-top:10px;padding-top:10px;font-size:14px}.host-truth-tag{font-family:var(--font-mono);color:var(--acid);letter-spacing:.2em;margin-bottom:4px;font-size:10px;display:block}.host-composer .verdict-select{width:auto}.suggestion-card{border:1px solid var(--acid);background:var(--acid-soft);flex-direction:column;gap:8px;padding:12px 16px;display:flex}.sug-label{font-family:var(--font-mono);color:var(--acid);letter-spacing:.2em;margin:0;font-size:11px}.sug-body{margin:0;font-size:15px}.sug-actions{gap:8px;display:flex}.riddle-list{flex-direction:column;gap:10px;display:flex}.riddle-row{border:1px solid var(--line);background:var(--card);cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;transition:border-color .15s,transform .15s;display:flex}.riddle-row:hover{border-color:var(--acid);transform:translate(-2px,-2px);box-shadow:4px 4px #c0fe0426}.row-title{font-size:15px}.review-card{border:1px solid var(--line);background:var(--card);flex-direction:column;gap:12px;padding:20px 24px;transition:border-color .2s,opacity .3s;display:flex}.review-card.approved{border-color:var(--acid);opacity:.65}.review-card.rejected{border-color:var(--danger);opacity:.45}.review-card .card-head{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:10px;display:flex}.review-card h3{font-size:17px}.review-section{border-left:3px solid var(--line-strong);flex-direction:column;gap:4px;padding-left:14px;display:flex}.sec-label{font-family:var(--font-mono);color:var(--acid);letter-spacing:.3em;margin:0;font-size:11px}.review-section p:not(.sec-label),.review-section li{color:var(--dim);margin:0;font-size:15px;line-height:1.7}.review-section ul{margin:0;padding-left:18px}.review-actions{align-items:center;gap:10px;display:flex}.acted-tag{color:var(--faint);font-size:13px;font-family:var(--font-mono);letter-spacing:.1em}.auth-page{max-width:420px;margin:0 auto;padding:120px 20px 80px}.auth-tabs{gap:0;margin-bottom:0;display:flex}.auth-tabs button{font-family:var(--font-mono);letter-spacing:.2em;border:1px solid var(--line);color:var(--dim);cursor:pointer;background:0 0;flex:1;padding:12px;font-size:13px}.auth-tabs button.on{background:var(--acid);color:#0c0c0a;border-color:var(--acid);font-weight:700}.auth-note{color:var(--faint);margin:10px 0 0;font-size:12px}.profile-page{flex-direction:column;gap:28px;max-width:860px;margin:0 auto;padding:96px 20px 80px;display:flex}.stat-grid{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.stat-cell{border:1px solid var(--line);background:var(--card);padding:18px}.stat-num{font-family:var(--font-mono);color:var(--acid);font-size:40px;line-height:1.1}.stat-cell.dim .stat-num{color:var(--ink)}.stat-label{font-family:var(--font-mono);color:var(--faint);letter-spacing:.2em;margin-top:6px;font-size:11px}.history-list{flex-direction:column;display:flex}.history-row{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;font-size:14px;display:flex}.history-row:first-child{border-top:1px solid var(--line)}.history-row .h-title{color:var(--ink)}.history-row .h-meta{font-family:var(--font-mono);color:var(--faint);letter-spacing:.08em;gap:12px;font-size:11px;display:flex}.result-tag{font-family:var(--font-mono);letter-spacing:.1em;border:1px solid;padding:0 8px;font-size:11px}.result-tag.correct{color:var(--acid)}.result-tag.perfect{color:#0c0c0a;background:var(--acid);border-color:var(--acid);font-weight:700}.result-tag.wrong{color:var(--danger)}.result-tag.revealed{color:var(--gold)}.board-page{flex-direction:column;gap:20px;max-width:760px;margin:0 auto;padding:96px 20px 80px;display:flex}.board-table{border:1px solid var(--line);background:var(--card)}.board-row{border-bottom:1px solid var(--line);align-items:center;gap:16px;padding:13px 18px;font-size:15px;display:flex}.board-row:last-child{border-bottom:none}.board-row.top{background:var(--acid-soft)}.rank-no{font-family:var(--font-mono);width:42px;color:var(--faint)}.board-row.top .rank-no{color:var(--acid)}.board-name{flex:1}.board-num{font-family:var(--font-mono);color:var(--dim);letter-spacing:.05em;font-size:13px}.board-num b{color:var(--acid);font-size:17px}.plan-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.plan-card{border:1px solid var(--line);background:var(--card);flex-direction:column;gap:10px;padding:26px 22px 22px;transition:transform .15s,border-color .15s,box-shadow .15s;display:flex;position:relative}.plan-card:hover{border-color:var(--acid);transform:translate(-3px,-3px);box-shadow:5px 5px #c0fe042e}.plan-card.hot{border-color:var(--acid)}.plan-flag{font-family:var(--font-mono);letter-spacing:.2em;background:var(--gold);color:#0c0c0a;margin:0;padding:2px 10px;font-size:10px;font-weight:700;position:absolute;top:-10px;right:14px}.plan-card h3{font-size:20px}.plan-price b{font-family:var(--font-mono);color:var(--acid);font-size:46px;line-height:1}.plan-days{color:var(--dim);margin:0 0 6px;font-size:13px}.plan-notes{color:var(--dim);flex-direction:column;gap:4px;margin:0;padding-left:18px;font-size:13px;line-height:1.9;display:flex}@media (width<=600px){.home{padding-top:90px}.hero h1{font-size:clamp(56px,17vw,88px)}.hero-en{letter-spacing:.3em}.mode-row{grid-template-columns:1fr}.stat-grid{grid-template-columns:repeat(2,1fr)}.chat-item .q p,.chat-item .a p{max-width:88%}.sticker{display:none}.game{padding:84px 12px 32px}.composer-row input,.guess-box textarea,select,.nick-input,.code-input,.meta .title,.surface-card p{font-size:16px}.gen-card,.review-card{padding:16px}.plan-grid{grid-template-columns:1fr}.hud-corner{display:none}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
