.playground{min-width:0}.play-pair-note{color:#8b957e;white-space:nowrap;align-items:center;gap:6px;font-size:11px;display:flex}.play-heading{margin-bottom:29px}.play-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.play-card{text-align:left;background:var(--paper);border:1px solid #e1e5d8;border-radius:10px;flex-direction:column;min-width:0;padding:0;transition:transform .2s,border-color .2s,box-shadow .2s;display:flex;overflow:hidden}.play-card:hover{border-color:#b8c4a8;transform:translateY(-4px);box-shadow:0 10px 25px #56614309}.play-card:focus-visible{outline-offset:5px}.play-card-body{flex-direction:column;flex:1;padding:22px 23px 19px;display:flex}.play-card-topline{color:#9ba48c;justify-content:space-between;align-items:center;gap:5px;display:flex}.play-card-topline>span{letter-spacing:1.6px;font-size:9px}.play-card-topline small{white-space:nowrap;font-size:9px}.play-card h2{font:500 25px/1.6 var(--serif);letter-spacing:.5px;color:#45513b;margin:14px 0 10px}.play-card p{color:#8a927e;font-size:12px;line-height:1.95}.play-card-bottom{color:#7f8e6b;justify-content:space-between;align-items:center;margin-top:auto;padding-top:20px;font-size:11px;display:flex}.play-card-bottom>span{align-items:center;gap:7px;display:flex}.play-card-bottom>svg{transition:transform .2s}.play-card:hover .play-card-bottom>svg{transform:translate(3px)}.play-resume{color:#a46743;align-items:center;gap:6px;margin-top:14px;font-size:10px;display:inline-flex}.play-resume i{background:#ac7652;border-radius:50%;width:5px;height:5px}.play-art{height:190px;position:relative;overflow:hidden}.play-art-board{background:#eceee2}.mini-board{background:repeating-linear-gradient(0deg,#0000 0 26px,#b9c4a85c 26px 27px),repeating-linear-gradient(90deg,#0000 0 26px,#b9c4a85c 26px 27px),#e2e7d5;border:1px solid #cdd3be;width:135px;height:135px;position:absolute;top:40px;left:50%;transform:translate(-50%)rotate(-10deg);box-shadow:7px 7px #d9dfcc66}.mini-stone{border-radius:50%;width:21px;height:21px;display:block;position:absolute;box-shadow:1px 2px 3px #545f3c22}.mini-stone.dark{background:#657556;box-shadow:inset -2px -2px #4f604155,1px 3px 3px #545f3c22}.mini-stone.light{background:#fcfbf3;border:1px solid #d3d7c9}.mini-stone.one{top:43px;left:43px}.mini-stone.two{top:43px;left:70px}.mini-stone.three{top:70px;left:70px}.mini-stone.four{top:97px;left:43px}.mini-stone.five{top:97px;left:97px}.play-art-board>span{color:#8f9a7c;font:italic 15px Georgia,serif;position:absolute;bottom:14px;right:21px;transform:rotate(-7deg)}.play-art-code{background:#f2eade;flex-direction:column;justify-content:center;align-items:center;padding-top:6px;display:flex}.play-art-code>div{gap:9px;display:flex;transform:rotate(3deg)}.play-art-code>div>span{color:#947d5c;background:#fcf8ee;border:1px solid #dfd1bb;border-radius:5px;place-items:center;width:37px;height:53px;font:31px Georgia,serif;display:grid;box-shadow:0 3px #e3d5bf8c}.play-art-code>div>span:nth-child(3){transform:translateY(-7px)}.play-art-code>p{align-items:center;gap:7px;margin-top:21px;display:flex}.play-art-code>p>b{color:#988564;background:#e8dcc9;border-radius:3px;padding:2px 6px;font-size:11px}.play-art-code>p>b:first-child{color:#7d8c65;background:#dde2cf}.play-art-code i{color:#a39379;margin-left:5px;font:italic 12px Georgia,serif}.play-art-voice{background:#eee7e3}.voice-bubble{color:#ad8e78;background:#fcf8f1;border-radius:10px 10px 10px 0;padding:9px 14px;font:italic 18px Georgia,serif;position:absolute;top:26px;left:21px;transform:rotate(-4deg)}.voice-bars{justify-content:center;align-items:center;gap:7px;height:50px;display:flex;position:absolute;top:88px;left:50%;transform:translate(-50%)}.voice-bars i{background:#bf9c89;border-radius:4px;width:6px}.voice-bars i:nth-child(3n){background:#cdb9a8}.voice-note{color:#af9c8d;font:italic 12px Georgia,serif;position:absolute;bottom:18px;right:17px}.play-lobby-foot{border-top:1px solid #e5e7db;justify-content:space-between;align-items:center;gap:15px;margin-top:27px;padding-top:19px;display:flex}.play-lobby-foot>p{color:#9ca48e;align-items:center;gap:6px;font-size:10px;display:flex}.play-lobby-foot>.text-btn{font-size:11px}.play-error{margin:18px 0}.play-game-top{justify-content:space-between;align-items:center;margin-bottom:17px;display:flex}.play-back{color:#8b957e;font-size:11px}.play-sync{align-items:center;gap:7px;display:flex}.play-sync>span{color:#a1a995;align-items:center;gap:5px;font-size:9px;display:flex}.play-sync i{background:#bfbcac;border-radius:50%;width:5px;height:5px}.play-sync .online i{background:#91a477}.play-game-heading{margin-bottom:24px}.play-mode{white-space:nowrap;background:#f0f2e9;border:1px solid #e2e6d7;border-radius:7px;gap:3px;padding:4px;display:flex}.play-mode button{color:#929b86;border-radius:4px;align-items:center;gap:6px;padding:7px 11px;font-size:11px;display:flex}.play-mode button[aria-pressed=true]{background:var(--paper);color:#63744f;box-shadow:0 1px 5px #5b674d0b}.play-game-layout{grid-template-columns:minmax(350px,1.65fr) minmax(250px,1fr);align-items:start;gap:23px;display:grid}.play-game-layout.solo{grid-template-columns:minmax(0,650px);justify-content:center}.play-game-panel{background:var(--paper);border:1px solid #e1e5d7;border-radius:9px;min-width:0;padding:24px}.play-status{align-items:center;gap:10px;min-height:49px;margin-bottom:18px;display:flex}.play-status-dot{background:#8b9d71;border-radius:50%;flex:none;width:7px;height:7px;box-shadow:0 0 0 5px #edf0e4}.play-status strong{color:#657452;font-size:13px;font-weight:500;display:block}.play-status small{color:#a0a890;margin-top:4px;font-size:10px;line-height:1.6;display:block}.play-status>svg{color:#90a076;margin-left:auto}.play-status.finished .play-status-dot{background:#b18858;box-shadow:0 0 0 5px #f3ebdf}.play-status.finished strong{color:#9a7953}.play-empty{text-align:center;color:#9ba68a;flex-direction:column;justify-content:center;align-items:center;gap:13px;min-height:280px;display:flex}.play-empty h2{font:21px var(--serif)}.play-empty p{font-size:12px}.play-invitation{background:#f2f4eb;border:1px dashed #d6ddc8;border-radius:7px;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:20px;padding:16px;display:flex}.invite-game-icon{color:#96a77c;background:#e7eddb;border-radius:50%;flex:none;place-items:center;width:43px;height:43px;display:grid}.play-invitation>div{flex:1;min-width:140px}.play-invitation h3{color:#748563;font-size:12px;font-weight:500}.play-invitation p{color:#a0a990;margin-top:4px;font-size:10px}.play-invitation>.primary{padding:8px 13px;font-size:11px}.gomoku-players{flex-wrap:wrap;align-items:center;gap:18px;margin:0 0 13px;display:flex}.gomoku-players>span{color:#717d63;align-items:center;gap:6px;font-size:12px;display:flex}.gomoku-players small{color:#a6ae98;font-size:9px}.gomoku-players>.icon-btn{margin-left:auto}.stone-symbol{border:1px solid #b6c2a6;border-radius:50%;flex:none;width:14px;height:14px;display:inline-block}.stone-symbol.black{background:#536444;border-color:#536444}.stone-symbol.white{background:#fffcf3}.gomoku-scroll{scrollbar-width:thin;scrollbar-color:#c3cdb0 transparent;overscroll-behavior:contain;background:#e9eddd;border:1px solid #d8dfc7;border-radius:7px;padding:9px;overflow:auto}.gomoku-board{aspect-ratio:1;isolation:isolate;grid-template-rows:repeat(15,minmax(0,1fr));grid-template-columns:repeat(15,minmax(0,1fr));width:100%;min-width:245px;display:grid;position:relative}.gomoku-grid{pointer-events:none;z-index:-1;stroke:#a8b594;stroke-width:.025px;fill:#97a880;width:100%;height:100%;position:absolute;inset:0}.gomoku-grid circle{stroke:none}.gomoku-point{touch-action:manipulation;border-radius:0;place-items:center;min-width:0;min-height:0;padding:0;display:grid;position:relative;opacity:1!important}.gomoku-point:disabled{cursor:default}.gomoku-point:hover:not(:disabled):after{content:"";border:1px dashed #7f9262;border-radius:50%;position:absolute;inset:20%}.gomoku-point:focus-visible{outline-offset:-1px;background:#aabc8b22;outline:1px solid #7b8f60}.gomoku-stone{border-radius:50%;place-items:center;width:82%;height:82%;display:grid;position:relative}.gomoku-stone.black{background:radial-gradient(circle at 30% 25%,#7c8b69,#4c5a3f 75%);border:1px solid #526344;box-shadow:1px 2px 2px #41532b33}.gomoku-stone.white{background:radial-gradient(circle at 35% 25%,#fffff8,#e9eadc 80%);border:1px solid #bec8ad;box-shadow:1px 2px 2px #41532b22}.gomoku-stone.preview{opacity:.45}.gomoku-stone>i{background:#d5a26b;border-radius:50%;width:18%;height:18%}.gomoku-point.winning .gomoku-stone{outline-offset:1px;outline:2px solid #b17b4b}.gomoku-scroll.zoomed .gomoku-board{min-width:560px}.gomoku-selection{justify-content:space-between;align-items:center;gap:12px;min-height:59px;padding:15px 0 4px;display:flex}.gomoku-selection>span{color:#9ba68c;font-size:10px}.gomoku-selection b{color:#728a56;padding-left:4px;font-size:13px;font-weight:500}.gomoku-selection .primary{white-space:nowrap;min-height:36px;padding:8px 14px;font-size:11px}.code-secret{justify-content:center;gap:14px;padding:15px 0 25px;display:flex}.code-secret>span{color:#b0b9a1;background:#f5f6ef;border:1px solid #e0e5d4;border-radius:7px;place-items:center;width:58px;height:73px;font:36px Georgia,serif;display:grid}.code-secret>span.revealed{color:#748b55;background:#eaf0df;border-color:#cdd9ba}.code-entry{justify-content:center;gap:10px;margin-bottom:25px;display:flex}.code-entry label{flex:1;min-width:0;max-width:225px}.code-entry input{text-align:center;letter-spacing:9px;color:#657b4d;background:#fcfcf7;border:1px solid #dae0cc;border-radius:5px;width:100%;padding:8px 10px;font:24px/1.4 ui-monospace,Consolas,monospace}.code-entry input::placeholder{color:#c0c7b2}.code-entry button{white-space:nowrap;padding:9px 15px;font-size:12px}.code-history-title{color:#9ba58c;border-bottom:1px solid #e5e9dc;justify-content:space-between;padding:0 10px 10px;font-size:10px;display:flex}.code-history{margin:0;padding:0;list-style:none}.code-history>li{border-bottom:1px solid #edf0e6;align-items:center;gap:16px;min-height:52px;padding:13px 10px;display:flex}.code-row-index{color:#b2baa4;font-size:9px}.code-value{letter-spacing:3px;color:#778b5c;white-space:nowrap;font:20px/1 ui-monospace,Consolas,monospace}.code-history .empty .code-value{color:#cad1be}.code-feedback{color:#b4bca7;align-items:center;gap:6px;margin-left:auto;font-size:11px;display:flex}.code-feedback b{color:#9d8c68;background:#f3eee2;border-radius:4px;padding:3px 6px;font-size:12px;font-weight:500}.code-feedback b:first-child{color:#819565;background:#edf2e4}.code-feedback b.all-correct{color:#64813f;background:#dfe9d1}.code-by{color:#a6af98;white-space:nowrap;text-overflow:ellipsis;max-width:70px;font-size:9px;overflow:hidden}.code-key{color:#9ba58d;flex-wrap:wrap;justify-content:center;gap:24px;margin-top:20px;font-size:10px;display:flex}.code-key b{color:#7d8d68;margin-right:6px;font-size:12px;font-weight:500}.play-start{flex-direction:column;align-items:center;gap:10px;padding:20px 0 8px;display:flex}.play-start>.primary{background:#6e815d;min-height:42px;padding:10px 20px;font-size:12px}.play-start small{color:#a4ad96;font-size:10px}.play-end{justify-content:flex-end;align-items:center;gap:14px;min-height:40px;margin-top:8px;display:flex}.play-end>span{color:#a1876c;font-size:10px}.play-end .text-btn{min-height:30px;font-size:10px}.text-btn.subtle{color:#a3ac95}.play-rules{border-top:1px solid #e7ebdf;margin-top:17px;padding-top:13px}.play-rules summary{cursor:pointer;color:#909d7e;justify-content:space-between;align-items:center;min-height:26px;font-size:11px;list-style:none;display:flex}.play-rules summary::-webkit-details-marker{display:none}.play-rules[open] summary svg{transform:rotate(90deg)}.play-rules p{color:#a0a992;margin-top:12px;font-size:11px;line-height:1.95}.play-rules a{color:#a58a66;align-items:center;gap:5px;margin-top:8px;font-size:10px;display:flex}.play-chat-slot{min-width:0}.play-chat-fallback{border:1px solid var(--line);color:#9ca98a;background:#f1f3e9;border-radius:9px;padding:30px}.play-chat-fallback h2{font:22px var(--serif);margin:13px 0}.play-chat-fallback p{margin-bottom:15px;font-size:12px}@media (max-width:1200px){.play-cards{gap:14px}.play-card-body{padding:19px}.play-card h2{font-size:23px}.play-card-topline{flex-direction:column;align-items:start;gap:4px}.play-card p{font-size:11px}.play-game-layout{grid-template-columns:minmax(320px,1.5fr) minmax(230px,1fr);gap:16px}.play-game-panel{padding:20px}}@media (max-width:1000px){.play-cards{grid-template-columns:1fr}.play-card{grid-template-columns:180px 1fr;display:grid}.play-art{height:auto;min-height:230px}.play-card-body{padding:22px 25px}.play-card-topline{flex-direction:row}.play-card h2{margin:11px 0 8px;font-size:25px}.play-card-bottom{padding-top:15px}.play-art-code>div{gap:5px}.play-art-code>div>span{width:29px;height:43px;font-size:25px}.play-art-code>p{flex-wrap:wrap;justify-content:center;row-gap:10px;max-width:130px}.mini-board{background-size:auto;width:117px;height:117px;top:55px;transform:translate(-50%)rotate(-9deg)scale(.93)}.play-art-voice .voice-bubble{font-size:16px;top:44px;left:17px}.voice-bars{gap:5px;top:107px}.voice-bars i{width:5px}.voice-note{font-size:11px;bottom:33px;right:15px}.play-game-layout{grid-template-columns:minmax(0,1fr)}.play-game-panel,.play-chat-slot{width:100%;max-width:660px;margin-inline:auto}.play-mode{align-self:end}.play-game-heading h1{font-size:28px}.play-pair-note{font-size:10px}.play-cards .play-art-board>span{bottom:24px;right:17px}}@media (max-width:650px){.play-heading{align-items:start}.play-heading h1{font-size:27px}.play-pair-note{white-space:normal;text-align:right;justify-content:flex-end;max-width:100px;margin-top:22px;font-size:9px;line-height:1.6}.play-heading>div>p:last-child{max-width:220px;line-height:1.9}.play-cards{gap:15px}.play-card{border-radius:8px;grid-template-columns:105px 1fr}.play-card-body{padding:18px 15px}.play-card-topline{flex-direction:column;gap:3px}.play-card-topline>span,.play-card-topline small{font-size:8px}.play-card h2{margin:10px 0 8px;font-size:22px}.play-card p{font-size:10px}.play-card-bottom{padding-top:13px;font-size:10px}.play-art{min-height:220px}.mini-board{top:55px;transform:translate(-50%)rotate(-10deg)scale(.72)}.play-art-board>span{font-size:12px!important;bottom:35px!important;right:7px!important}.play-art-code>div{grid-template-columns:repeat(2,30px);gap:7px;display:grid;transform:rotate(-5deg)}.play-art-code>div>span{width:30px;height:40px;font-size:24px}.play-art-code>div>span:nth-child(3){transform:none}.play-art-code>p{gap:5px;max-width:85px;margin-top:16px}.play-art-code>p>b{padding:2px 5px;font-size:9px}.play-art-code i{display:none}.play-art-voice .voice-bubble{padding:7px 9px;font-size:14px;top:42px;left:9px}.voice-bars{gap:3px;width:95px;top:114px;transform:translate(-50%)scale(.85)}.voice-bars i{width:5px}.voice-note{text-align:center;width:80px;font-size:10px;line-height:1.5;bottom:25px;right:12px}.play-card-bottom>span{gap:5px}.play-resume{margin-top:10px;font-size:9px}.play-lobby-foot{flex-wrap:wrap;gap:7px;margin-top:20px;padding-top:14px}.play-lobby-foot>p{font-size:9px}.play-lobby-foot>.text-btn{margin-left:auto;font-size:10px}.play-game-top{margin-bottom:12px}.play-game-heading{flex-wrap:wrap;gap:13px}.play-game-heading .eyebrow{letter-spacing:1.5px;font-size:8px}.play-game-heading h1{font-size:28px}.play-game-heading>div>p:last-child{font-size:10px}.play-mode{margin-left:auto;padding:3px}.play-mode button{gap:4px;padding:6px 8px;font-size:10px}.play-game-panel{padding:17px 13px}.play-status strong{font-size:12px}.play-status small{font-size:9px}.play-status{margin-bottom:14px}.gomoku-players{gap:11px}.gomoku-players>span{gap:4px;font-size:10px}.gomoku-players small{font-size:8px}.gomoku-scroll{border-radius:5px;padding:5px}.gomoku-scroll.zoomed .gomoku-board{min-width:450px}.gomoku-selection{gap:7px;padding-top:12px}.gomoku-selection>span{font-size:9px}.gomoku-selection>.primary{gap:5px;min-height:33px;padding:7px 9px;font-size:10px}.play-invitation{gap:10px;padding:12px}.play-invitation h3{font-size:11px}.play-invitation p{font-size:9px}.play-invitation>.primary{margin-left:auto}.invite-game-icon{width:34px;height:34px}.invite-game-icon svg{width:21px}.play-invitation>div{min-width:135px}.code-secret{gap:10px;padding:10px 0 21px}.code-secret>span{width:49px;height:62px;font-size:31px}.code-entry{gap:8px}.code-entry input{letter-spacing:6px;padding:8px 6px;font-size:22px}.code-entry button{gap:6px;padding:8px 11px;font-size:11px}.code-history>li{gap:11px;padding:12px 8px}.code-value{letter-spacing:2px;font-size:19px}.code-feedback{gap:4px}.code-feedback b{padding:3px 5px;font-size:11px}.code-by{max-width:44px;font-size:8px}.code-key{gap:17px;font-size:9px}.play-rules p{font-size:10px}.play-start>.primary{font-size:11px}.play-sync>span{font-size:8px}.play-empty{min-height:210px}.play-empty h2{font-size:20px}.play-empty p{font-size:11px}}@media (prefers-reduced-motion:reduce){.play-card,.play-card-bottom>svg{transition:none}.play-card:hover{transform:none}}.playground .play-heading,.playground .play-game-heading{align-items:center;gap:12px;margin-bottom:18px}.playground .play-heading h1,.playground .play-game-heading h1{font:500 26px/1.4 var(--serif);letter-spacing:0;margin:0}.playground .play-pair-note{white-space:normal;max-width:none;margin:0;font-size:10px}.playground .play-cards{grid-template-columns:1fr;gap:10px}.playground .play-card{box-shadow:none;border-radius:7px;grid-template-columns:44px minmax(0,1fr) 20px;align-items:center;gap:17px;padding:20px 22px;display:grid;transform:none}.playground .play-card:hover{box-shadow:none;background:#f5f7ed;transform:none}.playground .play-card-body{min-width:0;padding:0;display:block}.playground .play-card-topline{flex-direction:row;justify-content:space-between;align-items:center;gap:12px;display:flex}.playground .play-card h2{font:500 18px/1.5 var(--sans);letter-spacing:0;color:#4b5b40;margin:0}.playground .play-card-topline small{color:#99a18d;font-size:10px}.playground .play-card p{margin-top:5px;font-size:12px;line-height:1.8}.play-list-icon{color:#809268;background:#e9edde;border-radius:10px;place-items:center;width:44px;height:44px;display:grid}.code-card .play-list-icon{color:#a08b64;background:#f0eadf}.speaking-card .play-list-icon{color:#ad8a73;background:#efe6df}.play-list-arrow{color:#94a47b}.playground .play-resume{margin-top:8px;font-size:10px}.playground .play-lobby-foot{margin-top:18px;padding-top:12px}.playground .play-game-top{margin-bottom:14px}.playground .play-empty{min-height:180px}.playground .play-empty h2{font-size:20px}.playground .play-chat-fallback h2{font:500 15px var(--sans);margin:10px 0}.playground .play-mode{align-self:center}@media (max-width:650px){.playground .play-heading h1,.playground .play-game-heading h1{font-size:24px}.playground .play-heading,.playground .play-game-heading{margin-bottom:15px}.playground .play-card{grid-template-columns:35px minmax(0,1fr) 16px;gap:12px;padding:16px 14px}.play-list-icon{border-radius:8px;width:35px;height:35px}.play-list-icon svg{width:21px;height:21px}.playground .play-card-topline{flex-direction:column;align-items:start;gap:2px}.playground .play-card h2{font-size:16px}.playground .play-card p{margin-top:6px;font-size:11px}.playground .play-card-topline small{font-size:9px}.playground .play-lobby-foot{margin-top:14px}.playground .play-pair-note{font-size:9px}.playground .play-cards{gap:9px}}.speech-heading{justify-content:space-between;align-items:center;gap:20px;margin:25px 0 30px;display:flex}.speech-heading h1{font:500 34px/1.5 var(--serif);margin:8px 0}.speech-heading h1>span{color:var(--accent)}.speech-heading>div>p:last-child{color:#858d7b;font-size:12px}.speech-badge{color:#84936c;align-items:center;gap:12px;font-size:11px;line-height:1.8;display:flex}.speech-badge b{color:#9a9f90;font-size:10px;font-weight:400}.speech-intro{background:#e9ecdf;border:1px solid #dde3ce;border-radius:10px;justify-content:space-between;align-items:center;gap:30px;margin-bottom:25px;padding:35px 40px;display:flex}.speech-intro-icon{color:#879773;margin-bottom:18px;display:inline-flex}.speech-intro h2{font:26px/1.6 var(--serif);color:#536148}.speech-intro p{color:#7f8b70;margin-top:12px;font-size:12px;line-height:1.9}.speech-steps{color:#67775a;gap:25px;min-width:225px;font-size:13px;display:grid}.speech-steps span{align-items:center;gap:17px;display:flex}.speech-steps b{color:#aab694;font:italic 25px Georgia,serif}.speech-mode{background:#efefe6;border-radius:7px;gap:5px;width:fit-content;padding:4px;display:flex}.speech-mode button{color:#8e9584;border-radius:5px;align-items:center;gap:8px;padding:10px 17px;font-size:12px;display:flex}.speech-mode button.active{background:var(--paper);color:#58694d;box-shadow:0 2px 7px #384b2010}.speech-mode-hint{color:#8c9580;margin:12px 0 24px;font-size:12px;line-height:1.9}.scenario-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.scenario-card{border:1px solid var(--line);background:var(--paper);border-radius:8px;flex-direction:column;min-width:0;padding:24px;transition:border-color .2s,transform .2s;display:flex}.scenario-card:hover{border-color:#bdc6ae;transform:translateY(-3px)}.scenario-card>div{justify-content:space-between;align-items:center;gap:10px;display:flex}.scenario-index{color:#aab39c;font:italic 27px Georgia,serif}.scenario-level{color:#9c9f92;font-size:10px}.scenario-card h2{font:22px var(--serif);margin:23px 0 6px}.scenario-subtitle{letter-spacing:1.2px;color:#a0a68f;text-transform:uppercase;font-size:9px}.scenario-card p{color:#858f79;margin:16px 0 18px;font-size:12px;line-height:1.9}.scenario-card>.text-btn{align-self:flex-start;margin-top:auto}.speech-pending{gap:10px;margin-bottom:22px;display:grid}.speech-pending button{color:#946b4b;text-align:left;background:#f0e9dd;border:1px solid #e4d5c2;border-radius:7px;align-items:center;gap:14px;padding:15px 20px;display:flex}.speech-pending button>span{flex:1;font-size:13px}.speech-pending small{color:#a18c70;margin-top:4px;font-size:10px;display:block}.speech-session-header{border-block:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;margin-bottom:25px;padding:19px 0;display:flex}.speech-session-header span{color:#949d87;font-size:10px}.speech-session-header h2{font:24px var(--serif);margin-top:5px}.speech-session-layout{max-width:820px;margin:auto}.speech-session-layout.has-chat{grid-template-columns:minmax(0,1fr) 280px;align-items:start;gap:24px;max-width:none;display:grid}.speech-session-main{min-width:0}.role-card{background:#eee9df;border-radius:7px;margin-bottom:22px;padding:21px 25px;position:relative}.role-kicker{letter-spacing:1.5px;color:#a18c70;font-size:9px}.role-card h3{color:#79674f;margin:8px 0;font-size:16px;font-weight:500}.role-card p{color:#8b7d66;font-size:12px;line-height:1.8}.role-card em{color:#8f8068;margin-top:7px;font:13px/1.8 Georgia,serif;display:block}.role-card .text-btn{margin-top:8px;font-size:10px}.speech-rounds{color:#a0aa93;justify-content:space-between;align-items:center;gap:15px;margin:20px 0;display:flex}.speech-rounds>span{align-items:center;gap:8px;font-size:11px;display:flex}.speech-rounds b{font-size:10px;font-weight:400}.speech-rounds .current{color:#5d744b}.speech-rounds .done{color:#8f9b7e}.speech-prompt{background:var(--paper);border:1px solid #e1e5d7;border-radius:9px;padding:25px}.speech-prompt>div:first-child{justify-content:space-between;align-items:center;gap:10px;margin-bottom:20px;display:flex}.speech-prompt>div:first-child>span{letter-spacing:2px;color:#93a07d;font-size:9px}.speech-listen{color:#899b70;align-items:center;gap:6px;font-size:10px;display:flex}.speech-prompt h3{color:#404f35;font:500 24px/1.55 Georgia,Times New Roman,serif}.speech-prompt>p{color:#8e987f;margin-top:15px;font-size:12px;line-height:1.9}.speech-follow{color:#849473;border-top:1px solid #eeeee3;align-items:flex-start;gap:10px;margin-top:24px;padding-top:16px;font:italic 13px/1.8 Georgia,serif;display:flex}.speech-follow svg{flex-shrink:0;margin-top:4px}.speech-help{background:#f4f5ed;border:1px solid #e4e6d9;border-radius:7px;margin:17px 0}.speech-help summary{cursor:pointer;color:#8b976f;align-items:center;gap:9px;padding:15px 18px;font-size:12px;display:flex}.speech-help summary span{color:#a3aa95;margin-left:auto;font-size:9px}.speech-help>div{padding:4px 23px 23px}.speech-help h4{color:#86916e;margin:12px 0;font-size:11px;font-weight:500}.speech-help p{color:#657452;font-size:13px;line-height:2}.speech-words{flex-wrap:wrap;gap:7px;margin:17px 0;display:flex}.speech-words span{color:#8d9879;background:#e9eedf;border-radius:4px;gap:7px;padding:5px 8px;font-size:10px;display:flex}.speech-words b{color:#65794f;font-weight:500}.speech-help blockquote{color:#7f8c6d;border-left:2px solid #c6d0b5;padding-left:15px;font:italic 14px/1.9 Georgia,serif}.voice-recorder{background:var(--paper);border:1px solid #e0e4d5;border-radius:9px;margin-top:20px;padding:21px 23px}.record-control{flex-wrap:wrap;align-items:center;gap:13px;display:flex}.record-orb{color:#83946c;background:#e9eedf;border-radius:50%;flex-shrink:0;place-items:center;width:46px;height:46px;display:grid}.record-orb.is-recording{color:#b97054;background:#f2e0d6;animation:1.5s infinite voicePulse}@keyframes voicePulse{50%{box-shadow:0 0 0 7px #bf7a5712}}.record-control>div:nth-child(2){flex:1;min-width:150px}.record-control strong{color:#657552;font-size:13px;font-weight:500}.record-control span{color:#9ba48c;margin-top:5px;font-size:10px;display:block}.record-control .primary{padding:10px 14px;font-size:11px}.record-control .primary span{color:inherit;margin:0;font-size:11px}.record-stop{color:#ac6b4a;background:#f7e9de;border-radius:6px;align-items:center;gap:8px;padding:12px;font-size:12px;display:flex}.voice-takes{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:15px 0;display:grid}.voice-takes:empty{display:none}.voice-take{background:#f4f5ee;border-radius:6px;min-width:0;padding:13px}.voice-take>div{color:#879675;align-items:center;gap:6px;font-size:10px;display:flex}.voice-take strong{font-size:11px;font-weight:500}.voice-take>div>span{margin-left:auto}.voice-take audio,.speech-replay audio{width:100%;height:36px;margin-top:8px}.voice-take .text-btn{margin-top:7px;font-size:11px}.speech-note{color:#969f8a;margin-top:13px;font-size:10px;line-height:1.8}.speech-round-footer{justify-content:space-between;align-items:center;gap:15px;margin:20px 0;display:flex}.speech-round-footer>span{color:#909e7e;font-size:10px}.speech-round-footer .primary{font-size:11px}.speech-your-turn{color:#8b9c70;background:#eaf0e0;border-radius:7px;align-items:center;gap:14px;margin-top:20px;padding:25px;display:flex}.speech-your-turn strong{font-size:13px;font-weight:500}.speech-your-turn p{margin-top:5px;font-size:11px}.speech-waiting,.speech-finish{border:1px solid var(--line);background:var(--paper);text-align:center;color:#8b9b75;border-radius:9px;flex-direction:column;align-items:center;gap:17px;padding:35px;display:flex}.speech-waiting h3{font:23px var(--serif);color:#5e704c}.speech-waiting p{max-width:420px;font-size:13px;line-height:1.9}.speech-finish>span{background:#e7eddb;border-radius:50%;place-items:center;width:67px;height:67px;display:grid}.speech-finish h2{font:25px/1.6 var(--serif);color:#5d704b}.speech-finish>p:not(.eyebrow){font-size:12px;line-height:1.9}.speech-reflection{text-align:left;border-block:1px solid var(--line);gap:12px;width:100%;max-width:450px;padding:20px 0;display:grid}.speech-reflection h3{margin-bottom:3px;font-size:12px;font-weight:500}.speech-reflection label{cursor:pointer;align-items:start;gap:10px;font-size:12px;line-height:1.8;display:flex}.speech-reflection input{accent-color:#829666;margin-top:4px}.speech-replay{margin:28px 0}.speech-replay h3{color:#8b9974;align-items:center;gap:8px;margin-bottom:15px;font-size:13px;display:flex}.speech-replay>div{color:#929c84;background:#edece4;border:1px solid #e4e5da;border-radius:8px;margin:10px 35px 10px 0;padding:13px 17px;font-size:11px}.speech-replay>div.mine{background:#e7ecdf;margin:10px 0 10px 35px}.speech-replay p{margin-top:7px;font-size:12px}.speech-end{border-top:1px solid var(--line);align-items:center;gap:12px;padding-top:15px;display:flex}.speech-end>span{color:var(--muted);font-size:10px}.speech-end .text-btn{font-size:10px}.play-chat{background:#f1f3e9;border:1px solid #e2e5d7;border-radius:8px;min-width:0;padding:18px;position:sticky;top:22px}.play-chat>header{justify-content:space-between;align-items:center;gap:10px;display:flex}.play-chat>header>div{color:#7f906b;align-items:center;gap:8px;display:flex}.play-chat h3{font-size:13px;font-weight:500}.play-chat>header>span{color:#a2a991;font-size:9px}.play-chat>header>span.play-live{color:#8a9c70}.play-chat>p{color:#9aa388;align-items:center;gap:5px;margin-top:9px;font-size:9px;line-height:1.8;display:flex}.play-chat-feed{overscroll-behavior:contain;height:330px;margin:20px -4px 17px;padding:0 4px;overflow:auto}.play-chat-feed>div{overflow-wrap:anywhere;background:#fffdf8;border:1px solid #e6e9dc;border-radius:6px;margin:10px 14px 10px 0;padding:9px 12px}.play-chat-feed>div.mine{background:#e4eada;margin:10px 0 10px 14px}.play-chat-feed small{color:#9aa88b;font-size:9px}.play-chat-feed p{color:#6f7e5e;white-space:pre-wrap;margin-top:5px;font-size:12px;line-height:1.8}.play-chat-feed a{color:#aa7c5c;font-size:11px}.play-chat-feed audio{width:100%;height:34px;margin-top:8px}.play-chat form{align-items:end;gap:8px;display:flex}.play-chat textarea{resize:vertical;background:#fcfdf6;border:1px solid #dfe4d3;border-radius:5px;flex:1;min-width:0;min-height:54px;max-height:120px;padding:9px 10px;font-size:12px;line-height:1.6}.play-chat textarea::placeholder{color:#adb59d}.play-chat form .primary{min-height:37px;padding:9px}.play-chat .error{color:#a34833;font-size:10px}@media (max-width:1150px){.scenario-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.speech-session-layout.has-chat{grid-template-columns:minmax(0,1fr) 245px;gap:17px}.speech-prompt h3{font-size:22px}.voice-takes{grid-template-columns:1fr}}@media (max-width:900px){.speech-session-layout.has-chat{grid-template-columns:1fr}.play-chat{position:static}.play-chat-feed{height:230px}.speech-intro{padding:28px}.speech-steps{min-width:170px;font-size:11px}.speech-steps span{gap:10px}.speech-intro h2{font-size:24px}.speech-heading h1{font-size:30px}}@media (max-width:650px){.speech-heading{margin:20px 0}.speech-heading h1{font-size:28px}.speech-heading .eyebrow{letter-spacing:1.5px;font-size:8px}.speech-heading>div>p:last-child{font-size:11px}.speech-badge{display:none}.speech-intro{gap:24px;padding:25px;display:block}.speech-intro h2{font-size:25px}.speech-intro p{font-size:11px}.speech-steps{border-top:1px solid #dce2cd;gap:12px;margin-top:25px;padding-top:20px}.speech-steps b{font-size:20px}.speech-mode{width:100%}.speech-mode button{flex:1;justify-content:center;gap:5px;padding:9px 10px;font-size:11px}.speech-mode-hint{font-size:11px}.scenario-grid{grid-template-columns:1fr;gap:14px}.scenario-card{padding:22px}.scenario-card h2{margin-top:14px}.scenario-card p{margin:12px 0;font-size:12px}.speech-session-header h2{font-size:22px}.speech-rounds{gap:7px}.speech-rounds>span{gap:5px}.speech-rounds b{font-size:9px}.role-card{padding:20px}.speech-prompt{padding:21px}.speech-prompt h3{font-size:22px}.speech-prompt>p{font-size:12px}.speech-follow{font-size:13px}.speech-help summary{gap:6px;padding:14px;font-size:11px}.speech-help summary span{font-size:8px}.voice-recorder{padding:19px}.record-control{gap:10px}.record-control>div:nth-child(2){min-width:120px}.record-control strong{font-size:12px}.record-control .primary,.record-stop{min-height:42px;margin-left:auto}.speech-round-footer{align-items:end}.speech-round-footer>span{max-width:110px;font-size:9px}.speech-round-footer .primary{gap:7px;padding:10px 13px;font-size:11px}.speech-waiting,.speech-finish{padding:26px 20px}.speech-finish h2{font-size:23px}.speech-replay>div{margin-right:20px}.speech-replay>div.mine{margin-left:20px}.play-chat textarea{font-size:16px}.play-chat-feed{height:240px}.speech-end{flex-wrap:wrap}.speech-end>span{width:100%}}@media (prefers-reduced-motion:reduce){.record-orb.is-recording{animation:none}.scenario-card{transition:none}}.oral-practice{margin-top:9px;font-size:10px}.speaking-lab .speech-heading{align-items:center;gap:12px;margin:15px 0 18px}.speaking-lab .speech-heading h1{font:500 26px/1.4 var(--serif);margin:0}.speaking-lab .speech-badge{white-space:nowrap;gap:7px;font-size:10px}.speaking-lab .speech-mode button{padding:8px 15px}.speaking-lab .speech-mode-hint{margin:10px 0 16px;font-size:11px}.speaking-lab .scenario-grid{grid-template-columns:1fr;gap:10px}.speaking-lab .scenario-card{border-radius:7px;flex-direction:row;justify-content:space-between;align-items:center;gap:22px;padding:18px 21px;display:flex;transform:none}.speaking-lab .scenario-card:hover{background:#fafbf5;transform:none}.speaking-lab .scenario-card>.scenario-info{flex:1;min-width:0;display:block}.speaking-lab .scenario-title{justify-content:space-between;align-items:center;gap:15px;display:flex}.speaking-lab .scenario-card h2{font:500 16px/1.6 var(--sans);color:#526246;margin:0}.speaking-lab .scenario-card p{margin:7px 0 0;font-size:12px;line-height:1.8}.speaking-lab .scenario-level{white-space:nowrap;font-size:10px}.speaking-lab .scenario-card>.text-btn{white-space:nowrap;align-self:center;margin:0;font-size:11px}.speaking-lab .speech-session-header{margin-bottom:19px;padding:14px 0}.speaking-lab .speech-session-header h2{font-size:21px}.speaking-lab .speech-waiting,.speaking-lab .speech-finish{gap:13px;padding:25px}.speaking-lab .speech-finish>span{width:45px;height:45px}.speaking-lab .speech-finish h2{font-size:23px}.speaking-lab .speech-finish>p{font-size:12px}.speaking-lab .speech-waiting h3{font-size:20px}@media (max-width:650px){.speaking-lab .speech-heading{margin:12px 0 15px}.speaking-lab .speech-heading h1{font-size:24px}.speaking-lab .speech-badge{gap:5px;font-size:9px;display:flex}.speaking-lab .speech-badge svg{width:15px}.speaking-lab .speech-mode button{padding:8px 12px}.speaking-lab .scenario-card{flex-wrap:wrap;align-items:flex-start;gap:12px;padding:16px}.speaking-lab .scenario-card>.scenario-info{flex-basis:100%}.speaking-lab .scenario-title{align-items:start;gap:10px}.speaking-lab .scenario-card h2{font-size:16px}.speaking-lab .scenario-card p{font-size:11px}.speaking-lab .scenario-card>.text-btn{min-height:25px;margin-left:auto}.speaking-lab .scenario-level{font-size:9px}.speaking-lab .speech-mode-hint{margin-bottom:14px;font-size:10px}.speaking-lab .scenario-grid{gap:9px}.speaking-lab .speech-waiting,.speaking-lab .speech-finish{padding:22px 18px}}
