:root{color-scheme:light;--paper:#f8f7f2;--ink:#28392e;--muted:#7a8277;--line:#e3e5da;--purple:#ede6fa;--purple-ink:#8264ac;--mint:#dff1e9;--mint-ink:#478876;--lime:#dfeeaf;--white:#fffefb;font-family:Inter,"PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-synthesis:none}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);min-height:100vh}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #839e63;outline-offset:5px}button{color:inherit}a{color:inherit;text-decoration:none}.site-header,.site-footer{max-width:1184px;margin:auto;padding:30px 32px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:10px;font-size:23px;font-weight:750;letter-spacing:2px}.brand-icon{display:grid;place-items:center;width:44px;height:44px;background:var(--lime);border-radius:14px;font-size:40px;font-weight:400;line-height:1;transform:rotate(-9deg);padding-bottom:6px}.brand-en{display:block;font-size:8px;letter-spacing:1.8px;margin-top:3px;font-weight:600}.text-button{background:none;border:0;padding:10px 0;font-size:13px}.text-button span{margin-left:8px}#app{max-width:1120px;margin:auto;padding:28px 32px 70px;min-height:calc(100vh - 192px)}.eyebrow{font-size:10px;letter-spacing:2.7px;font-weight:650;color:var(--muted);display:block}.hero{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;padding:28px 0 45px}.hero-kicker{display:inline-flex;align-items:center;gap:8px;font-size:12px;margin-bottom:24px}.live-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#6e9874;box-shadow:0 0 0 4px #e5ecdd;margin-right:5px}.hero h1{font-size:68px;letter-spacing:-3px;line-height:1.25;font-weight:650;margin:0 0 24px}.hero h1 .accent{position:relative;display:inline-block;z-index:0}.hero h1 .accent:after{content:"";position:absolute;bottom:2px;left:0;right:0;height:17px;background:var(--lime);z-index:-1;transform:rotate(-2deg);border-radius:50%}.hero-description{font-size:15px;line-height:1.9;color:var(--muted);margin:0 0 25px}.hero-meta{display:flex;align-items:center;gap:15px;font-size:11px;color:var(--muted)}.meta-divider{height:12px;border-left:1px solid #cbd1c4}.avatar-pair{display:inline-flex;padding-left:3px}.avatar{width:30px;height:30px;display:inline-grid;place-items:center;border-radius:50%;font-size:14px;border:2px solid var(--paper);margin-left:-3px}.avatar.a{background:var(--purple);color:var(--purple-ink)}.avatar.b{background:var(--mint);color:var(--mint-ink)}.demo-board{background:var(--white);border:1px solid var(--line);border-radius:23px;padding:25px 28px;position:relative;box-shadow:0 14px 40px #273d2d04;transform:rotate(1.5deg);margin:12px 0 4px}.demo-top{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:var(--muted);margin-bottom:24px}.demo-top .tag{padding:5px 8px;background:#f1f2e9;border-radius:5px;font-size:9px}.demo-heading{display:grid;grid-template-columns:1fr 28px 1fr;text-align:center;font-size:11px;margin-bottom:14px;color:var(--muted)}.demo-row,.history-words{display:grid;grid-template-columns:1fr 28px 1fr;gap:6px;align-items:center}.demo-row{margin-bottom:13px}.word{border-radius:9px;padding:14px 10px;text-align:center;font-weight:600;font-size:17px;overflow-wrap:anywhere;min-width:0}.word.a{background:var(--purple);color:var(--purple-ink)}.word.b{background:var(--mint);color:var(--mint-ink)}.between{text-align:center;color:#a5aaa1;font-size:18px}.demo-caption{display:flex;justify-content:center;align-items:center;gap:8px;font-size:12px;margin-top:20px}.sparkle{font-size:19px;color:#9baa75}.demo-sticker{position:absolute;right:-17px;top:-23px;width:63px;height:63px;display:grid;place-items:center;background:var(--lime);border:5px solid var(--paper);border-radius:50%;font-size:29px;transform:rotate(13deg)}.match .word{background:#eaf2d4;color:#5b7540}.match .between{color:#6d8a44}.lobby-actions{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:12px}.action-card{border:1px solid var(--line);border-radius:18px;padding:27px 30px;background:var(--white)}.action-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.action-title h2{font-size:20px;font-weight:600;margin:0}.card-number{font-size:11px;color:#a9b0a1;letter-spacing:1px}.action-card p{font-size:13px;color:var(--muted);margin:10px 0 24px}.button{border:0;border-radius:9px;padding:15px 19px;font-size:14px;font-weight:550;display:flex;align-items:center;justify-content:space-between;gap:12px;transition:background .2s,transform .2s}.button:hover:not(:disabled){transform:translateY(-1px)}.button.primary{background:var(--ink);color:white}.button.primary:hover:not(:disabled){background:#3f5544}.button.secondary{background:var(--lime)}.button.ghost{background:#eeefe7}.button:disabled{opacity:.55}.button.full{width:100%}.button span{font-weight:400;font-size:18px}.join-form{display:flex;gap:9px}.join-form input{min-width:0;width:100%;background:var(--paper);border:1px solid var(--line);border-radius:9px;padding:13px 14px;letter-spacing:3px;font-size:15px;text-transform:uppercase;color:var(--ink)}.join-form input::placeholder{font-size:12px;letter-spacing:0}.join-form .button{white-space:nowrap;padding-left:23px;padding-right:23px}.how-strip{display:flex;align-items:center;justify-content:center;gap:24px;padding-top:32px;font-size:12px;color:var(--muted)}.how-strip span{display:inline-flex;align-items:center;gap:7px}.how-strip i{font-size:9px;width:18px;height:18px;display:inline-grid;place-items:center;border:1px solid #d8ddcf;border-radius:50%;font-style:normal}.how-strip b{font-size:11px;font-weight:400;color:#b4b9ac}.site-footer{border-top:1px solid var(--line);font-size:10px;color:#8b9383;padding-top:23px;padding-bottom:23px;letter-spacing:.5px}.site-footer>span:last-child{font-size:9px;letter-spacing:1.5px}.tiny-heart{font-size:16px;margin-left:9px}.toast{position:fixed;bottom:30px;left:50%;transform:translateX(-50%);z-index:10;padding:14px 22px;max-width:calc(100vw - 32px);width:max-content;border-radius:10px;background:var(--ink);color:white;font-size:13px;box-shadow:0 5px 30px #24372a20}.error-message{font-size:13px;color:#a14545;line-height:1.6;min-height:0;margin:15px 0 0}.error-message:empty{display:none}.game{max-width:780px;margin:0 auto}.game-toolbar{display:flex;justify-content:space-between;align-items:center;margin:4px 0 32px;font-size:12px}.room-badge{display:inline-flex;align-items:center;gap:9px;padding:8px 12px;background:#eeefe6;border-radius:7px;color:#687661}.room-badge strong{letter-spacing:2px;color:var(--ink);font-weight:600}.connection{font-size:11px;color:var(--muted)}.game-intro{text-align:center;margin-bottom:30px}.game-intro h1{font-size:33px;letter-spacing:-1px;line-height:1.4;margin:13px 0 12px;font-weight:600}.game-intro p{color:var(--muted);font-size:13px;line-height:1.8;margin:0}.players{display:grid;grid-template-columns:1fr 1fr;gap:20px}.player-card{border-radius:16px;padding:23px;min-height:216px;border:1px solid transparent}.player-card.a{background:var(--purple);color:var(--purple-ink)}.player-card.b{background:var(--mint);color:var(--mint-ink)}.player-label{display:flex;justify-content:space-between;font-size:12px;align-items:center}.you-badge{border:1px solid currentColor;opacity:.7;border-radius:4px;padding:2px 5px;font-size:9px}.player-center{text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:135px;gap:12px}.player-face{font-size:38px;line-height:1.2;font-weight:400;letter-spacing:3px}.player-status{font-size:12px;opacity:.9}.word-form{display:flex;flex-direction:column;gap:10px;margin-top:18px}.word-form input{width:100%;background:#ffffffa8;border:1px solid #ffffffd0;border-radius:8px;padding:15px 12px;color:var(--ink);font-size:16px}.word-form input::placeholder{font-size:13px;color:#8a8b92}.word-form .button{background:#ffffffc4;color:inherit;justify-content:center;font-size:12px;padding:11px}.secret-note{text-align:center;font-size:11px;color:var(--muted);margin:19px 0 30px}.invite-box{background:var(--white);border:1px solid var(--line);border-radius:14px;padding:23px;text-align:center;margin-top:24px}.invite-box p{font-size:13px;color:var(--muted);margin:0 0 16px}.invite-actions{display:flex;justify-content:center;gap:10px}.invite-link{display:block;max-width:100%;width:100%;padding:11px;background:var(--paper);border:1px solid var(--line);border-radius:7px;color:var(--muted);font-size:12px;margin:15px 0 0}.history{margin-top:38px}.history-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:15px;margin-bottom:18px;border-bottom:1px solid var(--line)}.history-header h2{font-size:14px;margin:0;font-weight:550}.history-header span{font-size:10px;color:var(--muted)}.history-item{margin-bottom:20px}.history-round{font-size:11px;color:var(--muted);margin-bottom:9px}.history-words .word{font-size:17px;padding:17px 12px}.reveal-actions{display:flex;justify-content:center;gap:12px;margin:28px 0 12px}.result-icon{display:grid;place-items:center;font-size:35px;background:var(--lime);width:76px;height:76px;border-radius:50%;margin:8px auto 18px;animation:bloom .5s ease-out}.winning-word{display:block;font-size:42px;font-weight:650;overflow-wrap:anywhere;line-height:1.4;margin:18px 0;color:#5d793c}.success-panel{border:1px solid #dbe5c7;background:#f0f4e3;border-radius:18px;padding:28px;text-align:center}.success-panel h1{font-size:28px;font-weight:600;margin:0}.success-panel p{color:#7e8a6c;font-size:13px;line-height:1.7}.success-panel .button{margin:24px auto 0}.reveal-note{text-align:center;font-size:12px;color:var(--muted)}.join-screen{max-width:450px;margin:50px auto 70px;text-align:center}.join-screen .action-card{text-align:left}.join-screen h1{font-size:32px;margin:15px 0}.join-screen>p{color:var(--muted);font-size:14px;line-height:1.8;margin:0 0 30px}.room-big{font-size:36px;font-weight:650;letter-spacing:8px;display:block;text-align:center;padding:20px 0 30px}.link-back{display:inline-block;font-size:12px;color:var(--muted);margin-top:25px}dialog{border:1px solid var(--line);border-radius:22px;padding:35px;max-width:440px;width:calc(100% - 32px);background:var(--paper);color:var(--ink)}dialog::backdrop{background:#25312766;backdrop-filter:blur(3px)}.dialog-close{position:absolute;right:18px;top:12px;border:0;background:transparent;font-size:28px;font-weight:300;color:var(--muted)}dialog h2{font-size:26px;letter-spacing:-.5px;margin:15px 0 28px}.rules-list{padding-left:22px}.rules-list li{padding-left:7px;margin:20px 0}.rules-list li::marker{color:#81996a;font-size:13px}.rules-list b{font-size:14px;font-weight:600}.rules-list p{font-size:12px;color:var(--muted);line-height:1.7;margin:6px 0}.rules-note{border-top:1px solid var(--line);padding-top:17px;font-size:11px;color:var(--muted);line-height:1.7}.dialog-done{width:100%;margin-top:24px}@keyframes bloom{from{transform:scale(.5) rotate(-20deg);opacity:0}to{transform:scale(1);opacity:1}}@media(min-width:1000px){.hero{padding-top:40px;padding-bottom:55px}}@media(max-width:760px){.site-header{padding:22px 22px}.brand{font-size:20px}.brand-icon{width:39px;height:39px}.brand-en{font-size:7px}#app{padding:14px 22px 44px}.hero{grid-template-columns:1fr;gap:32px;padding:15px 0 30px}.hero h1{font-size:54px;letter-spacing:-2px;margin-bottom:19px}.hero-description{font-size:14px;margin-bottom:18px}.hero-kicker{margin-bottom:20px}.demo-board{margin:0 6px;padding:21px 24px}.demo-row{margin-bottom:10px}.demo-board .word{padding:10px;font-size:15px}.demo-top{margin-bottom:18px}.demo-heading{margin-bottom:10px}.demo-caption{margin-top:15px}.demo-sticker{width:52px;height:52px;font-size:23px;right:-12px;top:-18px}.lobby-actions{gap:14px;grid-template-columns:1fr;margin-top:2px}.action-card{padding:23px}.action-title h2{font-size:18px}.action-card p{margin-bottom:18px}.how-strip{gap:10px;font-size:10px;padding-top:25px}.how-strip i{width:16px;height:16px;font-size:8px}.how-strip b{font-size:9px}.site-footer{margin:0 22px;padding:20px 0;font-size:9px}.site-footer>span:last-child{font-size:8px;letter-spacing:1px}.game-toolbar{margin-top:2px;margin-bottom:27px}.game-intro h1{font-size:28px}.game-intro p{font-size:12px}.players{gap:12px}.player-card{padding:16px 13px;min-height:205px}.player-label{font-size:11px}.player-face{font-size:30px}.player-status{font-size:11px}.word-form input{font-size:16px;padding:13px 10px}.word-form input::placeholder{font-size:11px}.secret-note{font-size:10px}.history-words .word{font-size:16px}.history{margin-top:29px}.invite-box{padding:20px 16px}.game-intro{margin-bottom:24px}.success-panel{padding:24px 18px}.winning-word{font-size:34px}.connection{font-size:10px}.room-badge{font-size:10px;padding:8px}.room-badge strong{font-size:11px}.join-screen{margin-top:35px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}

.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}
