@charset "UTF-8";
:root{color-scheme:light;--ink:#292c28;--muted:#62665e;--paper:#f8f5ed;--line:#dddcd1;--coral:#b33b26;--purple:#6242a0;--green:#376446;--white:#fffdf8;--radius:22px}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;font-size:15px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.52}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--purple);outline-offset:4px}button{color:var(--ink)}[hidden]{display:none!important}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.25;overflow-wrap:anywhere}small{font-size:12px}svg{display:block}input,select,textarea{max-width:100%;min-width:0}.site-header,.site-footer{width:min(1120px,calc(100% - 64px));margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px}.site-header{padding:25px 0}.brand{display:flex;align-items:center;gap:11px;font-size:15px;font-weight:850;letter-spacing:.045em}.brand small{display:block;letter-spacing:.13em;font-weight:500;color:var(--muted);font-size:10px}.brand-mark{width:38px;height:38px;display:grid;place-items:center;background:var(--coral);color:var(--white);border-radius:12px;font-size:23px}.site-header nav{display:flex;align-items:center;gap:22px}.quiet-link{font-size:13px;color:var(--muted)}.lang-button{background:transparent;border:1px solid var(--line);border-radius:50px;padding:7px 12px;min-height:40px;font-size:12px}.site-footer{border-top:1px solid var(--line);padding:24px 0;margin-top:55px;color:var(--muted);font-size:12px}.eyebrow{font-size:11px;letter-spacing:.13em;font-weight:750;text-transform:uppercase;color:var(--coral);margin-bottom:20px}.hero{width:min(1120px,calc(100% - 64px));margin:32px auto 56px;display:grid;grid-template-columns:1.12fr 1fr;gap:66px;align-items:center}.hero h1{font-family:Georgia,"Songti SC",serif;font-size:clamp(46px,5vw,70px);letter-spacing:-.04em;line-height:1.12;word-break:normal;overflow-wrap:normal}.hero h1 em{font-style:normal;color:var(--coral)}.hero .lead{color:var(--muted);font-size:16px;margin:24px 0;max-width:450px;line-height:1.9}.tags{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0}.tags span{border:1px solid var(--line);padding:6px 10px;border-radius:30px;font-size:12px}.hero-art{position:relative;min-height:128px;margin-top:30px;max-width:380px}.speech{position:relative;display:inline-block;border:1.5px solid var(--ink);border-radius:20px;padding:13px 22px;background:#ede4f8;font-size:21px;font-weight:700;transform:rotate(-4deg)}.speech:after{content:"";position:absolute;bottom:-10px;left:30px;width:18px;height:18px;border-left:1.5px solid var(--ink);border-bottom:1.5px solid var(--ink);background:inherit;transform:skew(-18deg)}.speech.answer{background:#e7ead0;margin-left:72px;transform:rotate(4deg);font-size:17px;top:10px}.spark{position:absolute;right:12px;top:8px;color:var(--coral);font-size:40px;font-family:Georgia,serif}.entry-card{background:var(--white);border:1px solid var(--line);border-radius:28px;padding:28px;box-shadow:0 12px 40px #292c2806}.tabs{display:grid;grid-template-columns:1fr 1fr;background:#efede5;padding:4px;border-radius:14px;margin-bottom:24px}.tabs button{border:0;padding:11px;border-radius:11px;background:transparent;min-height:44px;font-weight:650}.tabs button[aria-selected=true]{background:var(--white);box-shadow:0 2px 6px #00000008}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:18px}.field label,.field-label{font-size:13px;font-weight:650}.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);background:var(--white);border-radius:12px;padding:12px 13px;color:var(--ink);min-height:46px}.field input::placeholder{color:#7a7c73}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.hint{color:var(--muted);font-size:12px;margin:8px 0}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;border:1px solid var(--line);border-radius:12px;padding:11px 18px;background:var(--white);font-size:13px;font-weight:650;text-align:center;line-height:1.5;overflow-wrap:anywhere}.button.primary{background:var(--coral);border-color:var(--coral);color:#fff}.button.purple{background:var(--purple);border-color:var(--purple);color:#fff}.button.green{background:var(--green);border-color:var(--green);color:#fff}.button.subtle{background:transparent}.button.small{min-height:38px;padding:7px 11px;font-size:12px}.button.wide{width:100%}.actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.notice{background:#f0e9d9;border:1px solid #dfd2b2;border-radius:12px;padding:12px 15px;margin:12px 0;color:#61512e;font-size:13px}.return-seat{margin:14px 0;border-top:1px solid var(--line);padding-top:15px}.return-seat p{font-size:12px;color:var(--muted);margin-bottom:8px}.home-how{width:min(1120px,calc(100% - 64px));margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:35px;border-top:1px solid var(--line);padding-top:28px}.home-how b{display:block;font-size:15px;margin:8px 0}.home-how .step-no{font-family:Georgia,serif;font-size:26px;color:var(--coral)}.home-how p{font-size:13px;color:var(--muted);line-height:1.8}.home-how-link{width:min(1120px,calc(100% - 64px));margin:20px auto;font-size:13px;text-align:right}.room{width:min(850px,calc(100% - 64px));margin:14px auto 0}.room-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:24px}.code-pill{padding:8px 12px;border:1px solid var(--line);border-radius:30px;background:var(--white);font-size:12px;min-height:42px}.code-pill strong{font-size:15px;letter-spacing:.13em;margin:0 6px}.connection{font-size:11px;color:var(--coral)}.connection.ok{color:var(--green)}.stage-panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--white);padding:28px}.stage-heading{margin-bottom:22px}.stage-heading h1{font-family:Georgia,"Songti SC",serif;font-size:clamp(27px,4vw,37px);letter-spacing:-.025em}.stage-heading p{font-size:13px;color:var(--muted);margin-top:12px}.teams{display:grid;grid-template-columns:1fr 1fr;gap:16px}.team-box{border:1px solid #ebc8ba;border-radius:17px;padding:18px;background:#faf0e9;min-width:0}.team-box.team-1{border-color:#d5c8e9;background:#f1edf8}.team-box h2{font-size:17px;display:flex;gap:8px;justify-content:space-between;align-items:center;margin-bottom:10px}.team-box .count{font-size:12px;font-weight:450;color:var(--muted)}.player-row{display:flex;align-items:center;gap:9px;padding:10px 0;border-top:1px solid #292c2810;min-width:0}.player-copy{min-width:0;flex:1}.player-name{font-size:13px;display:block;overflow-wrap:anywhere}.player-meta{color:var(--muted);font-size:10px}.online-dot{display:inline-block;background:#9b9d92;width:6px;height:6px;border-radius:50%;margin-right:4px}.online-dot.on{background:var(--green)}.remove-button{border:0;background:transparent;min-height:32px;min-width:30px;color:var(--muted)}.settings{margin:22px 0 12px;display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.settings .field{margin-bottom:0}.lobby-bottom{margin-top:24px}.scoreboard{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:20px}.scorebox{border:1px solid var(--line);border-radius:16px;padding:13px 18px;display:flex;align-items:center;justify-content:space-between;gap:8px;background:var(--white)}.scorebox span{font-size:13px}.scorebox strong{font-family:Georgia,serif;font-size:30px;line-height:1}.scorebox.active-0{border-color:var(--coral);background:#faf0e9}.scorebox.active-1{border-color:var(--purple);background:#f1edf8}.round-top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:15px}.round-tag{font-size:12px;color:var(--muted)}.clock{font-variant-numeric:tabular-nums;font-size:26px;font-weight:750;line-height:1.1}.timer-bar{width:100%;height:7px;border:0;border-radius:7px;display:block;margin:9px 0 22px;overflow:hidden;background:#eeece4}.timer-bar::-webkit-progress-bar{background:#eeece4}.timer-bar::-webkit-progress-value{background:var(--coral)}.timer-bar::-moz-progress-bar{background:var(--coral)}.role-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:20px}.role-chip{border-radius:12px;background:#f0eee6;padding:12px 14px;font-size:12px;overflow-wrap:anywhere}.role-chip small{display:block;color:var(--muted);font-size:10px;margin-bottom:4px}.role-chip strong{font-weight:650}.secret-card{background:#f4eadb;border:1.5px solid #d5bea7;border-radius:20px;padding:25px 20px;text-align:center;margin:18px 0;min-height:180px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:15px}.secret-card .eyebrow{color:#6e563e;margin:0;font-size:10px}.secret-card h2{font-family:Georgia,"Songti SC",serif;font-size:clamp(29px,5vw,46px);letter-spacing:-.025em}.secret-card .bans{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.bans span{border:1px solid #c7af99;border-radius:8px;padding:4px 9px;font-size:12px}.bans-label{font-size:11px;color:#70543d}.secret-hint{color:var(--muted);font-size:12px;text-align:center}.guess-stage{text-align:center;padding:22px 8px}.guess-stage h1{font-family:Georgia,"Songti SC",serif;font-size:35px;margin:10px 0}.guess-stage p{font-size:13px;color:var(--muted);max-width:470px;margin:14px auto;line-height:1.9}.guess-bubble{width:70px;height:70px;border-radius:22px;background:#e7ead0;margin:12px auto;display:grid;place-items:center;color:var(--green);font-size:34px;font-family:Georgia,serif}.judge-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:20px 0 10px}.judge-actions.two{grid-template-columns:1fr 1fr}.judge-actions .button{min-height:57px}.review-list{margin:20px 0;display:grid;gap:7px;max-height:330px;overflow-y:auto;overscroll-behavior:contain;padding:3px}.review-row{display:flex;justify-content:space-between;gap:15px;padding:9px 12px;background:#f0eee7;border-radius:10px;font-size:13px;overflow-wrap:anywhere}.outcome{font-size:11px;color:var(--muted);flex-shrink:0}.outcome.correct{color:var(--green);font-weight:700}.outcome.foul{color:var(--coral)}.recent-results{margin-top:20px;border-top:1px solid var(--line);padding-top:14px}.recent-results h2{font-size:12px;color:var(--muted);margin-bottom:10px}.recent-line{display:flex;gap:8px;flex-wrap:wrap;font-size:12px}.result-chip{background:#eeece4;border-radius:30px;padding:4px 10px}.final-title{font-family:Georgia,"Songti SC",serif;text-align:center;font-size:36px;margin:18px 0}.final-copy{text-align:center;color:var(--muted);font-size:13px;margin:12px auto 24px}.turn-history{border-top:1px solid var(--line);padding:14px 0}.turn-history summary{cursor:pointer;font-size:13px;font-weight:650}.room-bottom{display:flex;justify-content:space-between;gap:14px;margin:25px 0;align-items:center;font-size:12px;color:var(--muted)}.rules-page{width:min(780px,calc(100% - 64px));margin:38px auto}.rules-page h1{font-family:Georgia,"Songti SC",serif;font-size:clamp(34px,5vw,54px);letter-spacing:-.025em}.lead{font-size:16px;color:var(--muted);margin:22px 0;line-height:1.9}.rules-list{margin-top:34px}.rule-row{display:flex;gap:22px;border-top:1px solid var(--line);padding:23px 0}.rule-number{font-family:Georgia,serif;font-size:24px;color:var(--coral);flex-shrink:0}.rule-row h2{font-size:17px;margin:2px 0 11px}.rule-row p{font-size:14px;color:var(--muted);line-height:1.9}.rules-page .notice{margin-top:28px}.empty-team{font-size:12px;color:var(--muted);padding:10px 0}dialog{padding:0;border:1px solid var(--line);border-radius:24px;background:var(--white);color:var(--ink);width:min(490px,calc(100% - 32px));max-height:calc(100dvh - 40px);overflow:hidden}dialog::backdrop{background:#292c2873;backdrop-filter:blur(3px)}.modal-inner{padding:25px;max-height:calc(100dvh - 42px);overflow:auto}.modal-top{display:flex;align-items:flex-start;gap:16px;justify-content:space-between;margin-bottom:18px}.modal-top h2{font-family:Georgia,"Songti SC",serif;font-size:26px}.modal-close{border:1px solid var(--line);border-radius:50%;width:36px;height:36px;flex-shrink:0;background:transparent;font-size:23px;line-height:1}.modal-inner p{font-size:13px;color:var(--muted);margin:14px 0}.qr-wrap{display:grid;place-items:center;background:white;border:1px solid var(--line);border-radius:18px;padding:14px;margin:20px auto;width:210px;max-width:100%}.qr-wrap img{width:180px;max-width:100%;height:auto}.invite-code{text-align:center;font-size:29px;font-weight:700;letter-spacing:.15em;margin:12px 0}.invite-link{width:100%;font-size:12px;border:1px solid var(--line);border-radius:10px;padding:11px;background:#f5f3ec;margin:13px 0;resize:none;color:var(--ink)}#toast{position:fixed;bottom:30px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;border-radius:12px;padding:12px 18px;box-shadow:0 5px 20px #0002;z-index:10;max-width:calc(100% - 30px);font-size:13px;text-align:center}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:1500px){.hero{margin-top:50px}}
@media(max-width:850px){.hero{gap:28px;grid-template-columns:1fr 1fr}.hero h1{font-size:48px}.entry-card{padding:23px}.hero-art{margin-top:25px}.quiet-link{display:none}}
@media(max-width:650px){.site-header,.site-footer,.hero,.home-how,.home-how-link,.room,.rules-page{width:calc(100% - 36px)}.site-header{padding:19px 0}.site-header nav{gap:10px}.brand{font-size:13px}.brand small{font-size:9px}.brand-mark{width:34px;height:34px}.hero{grid-template-columns:1fr;gap:30px;margin-top:24px;margin-bottom:38px}.hero h1{font-size:47px;line-height:1.15}.hero .lead{font-size:14px;margin:18px 0}.hero-art{margin:12px 0 0;min-height:102px;max-width:320px}.speech{font-size:18px;padding:10px 18px}.speech.answer{font-size:15px;top:6px}.spark{font-size:32px;right:25px}.tags{margin:18px 0}.tags span{font-size:11px}.entry-card{padding:22px;border-radius:23px}.home-how{grid-template-columns:1fr;gap:23px}.home-how b{margin:4px 0}.home-how .step-no{font-size:23px}.site-footer{margin-top:35px;align-items:flex-start;flex-direction:column;gap:8px}.stage-panel{padding:21px 17px;border-radius:20px}.room-top{margin-bottom:19px}.teams{grid-template-columns:1fr;gap:13px}.team-box{padding:14px 17px}.settings{gap:10px}.settings .field select{font-size:13px;padding:10px}.role-grid{gap:8px}.role-chip{padding:10px 12px}.clock{font-size:24px}.secret-card{padding:22px 14px}.judge-actions{gap:7px}.judge-actions .button{padding:10px 8px;font-size:12px}.room-bottom{align-items:flex-start}.room-bottom .button{font-size:11px;padding:8px 10px;min-height:40px}.rule-row{gap:15px}.rule-row p{font-size:13px}.rules-page{margin-top:27px}.modal-inner{padding:23px 20px}.modal-top h2{font-size:24px}.connection{font-size:10px}.scorebox{padding:12px 14px}.scorebox strong{font-size:26px}.scorebox span{font-size:12px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
