.kw{color:var(--plum)}.kw-header{justify-content:space-between;align-items:center;gap:20px;width:min(1180px,100%);margin:0 auto;padding:28px 40px;display:flex}.kw-brand{font-family:var(--font-display);letter-spacing:-1.5px;align-items:center;gap:8px;font-size:34px;font-weight:1000;text-decoration:none;display:flex}.kw-dot{color:var(--red);margin-left:-8px}.kw-mark{background:var(--lime);width:42px;height:42px;font-family:var(--font-display);color:var(--plum);border-radius:12px;place-items:center;font-size:36px;font-weight:1000;line-height:1;display:inline-grid;transform:rotate(-8deg)}.kw-back{align-items:center;gap:7px;min-height:44px;font-size:12px;text-decoration:none;display:flex}.kw-help{color:#7a6b78;width:min(1060px,100% - 64px);margin:0 auto;font-size:12px;line-height:1.7}.kw-help summary{cursor:pointer;width:fit-content;min-height:30px}.kw-help p{max-width:650px;padding:12px 0 18px}.kw-help summary:focus-visible{outline-offset:3px;outline:3px solid #ffac66}.kw-home{flex:1;grid-template-columns:1.1fr 1fr;align-items:center;gap:75px;width:min(1060px,100% - 64px);margin:52px auto 80px;display:grid}.kw-intro h1,.kw-hub-main h1{font-family:var(--font-display);letter-spacing:-3px;margin:21px 0;font-size:64px;font-weight:1000;line-height:1.06}.kw-intro h1>span,.kw-hub-main h1>span,.kw-lobby h1>span{color:#95779b}.kw-intro>p,.kw-hub-main>p{color:#7a6b78;font-size:15px;line-height:1.9}.kw-sample{gap:8px;margin:35px 0 27px;display:flex;transform:rotate(-4deg)}.kw-sample>span{width:58px;height:66px;font:900 28px var(--font-display);background:var(--paper);border:1px solid #dbd0da;border-radius:12px;place-items:center;display:grid;box-shadow:0 5px #ded4ce66}.kw .correct{color:#fffdf7!important;background:#4c8061!important;border-color:#4c8061!important}.kw .present{color:#fffdf7!important;background:#b38a36!important;border-color:#b38a36!important}.kw .absent{color:#fff!important;background:#77717c!important;border-color:#77717c!important}.kw-facts{color:#7a6b78;flex-wrap:wrap;gap:12px;font-size:11px;display:flex}.kw-facts>span+span:before{content:"·";margin-right:12px}.kw-panel{background:var(--paper);border:1px solid var(--line);border-radius:24px;padding:34px;box-shadow:0 8px #ece5e080}.kw-panel h2{font:1000 31px var(--font-display);letter-spacing:-1px;margin:8px 0 23px}.kw-panel h2>span{color:var(--red)}.kw-modes{background:#f0eceb;border-radius:11px;gap:4px;margin-bottom:25px;padding:5px;display:flex}.kw-modes button{color:#796777;background:0 0;border-radius:8px;flex:1;min-height:44px;font-size:12px;font-weight:650}.kw-modes button[aria-pressed=true]{background:var(--plum);color:var(--paper)}.kw-panel form{flex-direction:column;gap:12px;display:flex}.kw-panel label{font-size:12px;font-weight:650}.kw-panel input{border:1px solid var(--line);width:100%;min-height:52px;color:var(--plum);background:#fcfaf6;border-radius:10px;padding:12px 15px;font-size:16px}.kw-panel label:not(:first-child){margin-top:5px}.kw-choices{gap:8px;display:flex}.kw-choices button{border:1px solid var(--line);background:0 0;border-radius:9px;flex:1;min-height:46px;font-size:14px;font-weight:650}.kw-choices button[aria-pressed=true]{background:var(--lime);border-color:#bcc45e}.kw-panel form>.primary-button{justify-content:space-between;margin-top:12px}.kw-panel-note{color:#7a6b78;text-align:center;margin-top:20px;font-size:11px;line-height:1.7}.kw-code-input{text-transform:uppercase;letter-spacing:3px}.kw-error{color:#8a3140;background:#ffe4df;border:1px solid #e9b6ad;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;width:min(720px,100% - 40px);margin:8px auto 15px;padding:12px 15px;font-size:13px;line-height:1.5;display:flex}.kw-error>button{background:0 0;place-items:center;min-width:36px;min-height:36px;display:grid}.kw-loading{text-align:center;place-content:center;gap:16px;min-height:55vh;display:grid}.kw-loading>svg{margin:auto}.kw-loading>button{background:0 0;min-height:44px;text-decoration:underline}.kw-footer{color:#7a6b78;flex-wrap:wrap;justify-content:space-between;align-self:center;align-items:center;gap:15px;width:min(1120px,100%);margin-top:auto;padding:24px 32px;font-size:10px;line-height:1.6;display:flex}.kw-footer a{text-underline-offset:4px;align-items:center;gap:5px;min-height:35px;display:flex}.kw-room{flex:1;width:min(1060px,100% - 64px);margin:20px auto 45px}.kw-toolbar{border-top:1px solid var(--line);border-bottom:1px solid var(--line);letter-spacing:1px;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;font-size:10px;display:flex}.kw-toolbar>span{align-items:center;gap:20px;font-weight:700;display:flex}.kw-connection{color:#657343;letter-spacing:0;font-size:9px;font-weight:500}.kw-offline{color:#9c4d26}.kw-toolbar>button{color:#7a6b78;letter-spacing:0;background:0 0;align-items:center;gap:7px;min-height:40px;font-size:11px;display:flex}.kw-lobby{text-align:center;width:min(520px,100%);margin:42px auto}.kw-lobby .eyebrow{justify-content:center;font-size:9px}.kw-lobby h1{font:1000 43px/1.1 var(--font-display);letter-spacing:-1.8px;margin:20px 0 28px}.kw-invite{background:var(--paper);width:100%;color:var(--plum);border:1px dashed #cbbac8;border-radius:16px;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;padding:22px;display:flex;position:relative}.kw-invite>small{color:#7a6b78;width:100%;font-size:10px}.kw-invite>small:first-child{letter-spacing:2px;font-size:9px}.kw-invite>strong{font:1000 41px var(--font-display);letter-spacing:6px}.kw-lobby-settings{color:#7a6b78;justify-content:center;align-items:center;gap:12px;margin:22px 0;font-size:12px;display:flex}.kw-players{text-align:left;margin:0 0 28px;padding:0;list-style:none}.kw-players li{border-top:1px solid var(--line);align-items:center;gap:13px;min-height:65px;display:flex}.kw-avatar{width:36px;height:36px;font:900 16px var(--font-display);background:#e7e9b7;border-radius:12px;place-items:center;display:grid}.kw-players strong{overflow-wrap:anywhere;flex:1;font-size:13px}.kw-players li>span:last-child:not(:first-child){color:#7a6b78;align-items:center;gap:5px;font-size:10px;display:flex}.kw-wait{color:#7a6b78;font-size:12px;line-height:1.7}.kw-play-layout{max-width:540px;margin:30px auto}.kw-with-race{grid-template-columns:minmax(0,580px) minmax(240px,1fr);align-items:start;gap:44px;max-width:none;display:grid}.kw-board-panel{min-width:0}.kw-game-title{justify-content:space-between;align-items:center;gap:12px;margin:0 0 20px;display:flex}.kw-game-title h1{font:1000 32px var(--font-display);letter-spacing:-1px;margin-top:5px}.kw-clock{background:var(--lime);font-variant-numeric:tabular-nums;white-space:nowrap;border-radius:9px;align-items:center;gap:7px;padding:9px 11px;font-size:12px;display:flex}.kw-grid{width:min(100%,calc(var(--letters) * 62px));gap:7px;margin:0 auto;display:grid}.kw-row{grid-template-columns:repeat(var(--letters),minmax(0,1fr));gap:7px;display:grid}.kw-cell{aspect-ratio:1;font:1000 clamp(20px,5vw,28px) var(--font-display);background:var(--paper);border:2px solid #e0d5de;border-radius:10px;place-items:center;line-height:1;display:grid}.kw-cell.filled{background:#f1eaf1;border-color:#a58ca5}.kw-cell.correct,.kw-cell.present,.kw-cell.absent{animation:.32s ease-out kw-flip}.kw-input-readout{text-align:center;color:#7a6b78;min-height:22px;margin:13px 0 6px;font-size:11px;line-height:1.6}.kw-hints{font:800 17px var(--font-display);justify-content:center;align-items:center;gap:10px;margin:10px 0;display:flex}.kw-hints>svg{margin-right:5px}.kw-legend{color:#7a6b78;justify-content:center;gap:15px;margin:10px 0 20px;font-size:9px;display:flex}.kw-legend>span{align-items:center;gap:5px;display:flex}.kw-legend i{border-radius:2px;width:9px;height:9px}.kw-keyboard{gap:6px;max-width:620px;margin:0 auto;display:grid}.kw-key-row{justify-content:center;gap:4px;display:flex}.kw-key-row button{min-width:0;max-width:46px;min-height:47px;color:var(--plum);background:#eae3e8;border-radius:7px;flex:1;padding:0;font-size:13px;font-weight:750;transition:transform .1s}.kw-key-row button:not(:disabled):active{background:var(--lime);transform:translateY(2px)}.kw-key-row button:disabled{opacity:.6}.kw-actions{gap:10px;margin-top:10px;display:flex}.kw-delete{background:#eae3e8;border-radius:10px;place-items:center;width:65px;min-height:48px;display:grid}.kw-actions>.primary-button{min-height:48px}.kw-powers{align-items:center;gap:8px;margin:16px 0 0;display:flex}.kw-powers>button{border:1px solid var(--line);background:var(--paper);border-radius:10px;flex:1;justify-content:center;align-items:center;gap:7px;min-height:51px;font-size:11px;display:flex}.kw-powers button>span{text-align:left;flex-direction:column;gap:3px;display:flex}.kw-powers small{color:#7a6b78;font-size:9px}.kw-powers button:disabled{opacity:.45}.kw-wallet{min-width:54px;font:900 20px var(--font-display);flex-direction:column;align-items:center;display:flex}.kw-wallet small{font:500 8px var(--font-body);letter-spacing:1.5px}.kw-result{border:1px solid var(--line);background:var(--paper);text-align:center;border-radius:16px;margin:20px 0;padding:24px}.kw-result>svg{color:#9c8140}.kw-won{background:#eff1d6;border-color:#d9ddaa}.kw-result h2{font:1000 25px var(--font-display);margin:8px 0}.kw-result>p{color:#7a6b78;font-size:12px;line-height:1.8}.kw-result>p>strong{color:var(--plum);letter-spacing:2px;font-size:19px}.kw-result>.primary-button{margin-top:20px}.kw-race{border:1px solid var(--line);background:var(--paper);border-radius:18px;padding:24px;position:sticky;top:20px}.kw-race>.small-label{letter-spacing:1px;font-size:8px}.kw-race h2{font:900 22px var(--font-display);align-items:center;gap:9px;margin:13px 0 20px;display:flex}.kw-race ol{margin:0;padding:0;list-style:none}.kw-race li{border-top:1px solid var(--line);padding:14px 0}.kw-race li>div{justify-content:space-between;gap:10px;font-size:12px;display:flex}.kw-race li strong{overflow-wrap:anywhere}.kw-race li small,.kw-race li>div>span{color:#7a6b78;font-size:10px;font-weight:400}.kw-race progress{accent-color:#4c8061;border:0;width:100%;height:7px;margin-top:12px}.kw-race>p{color:#7a6b78;margin-top:15px;font-size:10px}.kw-hub-main{flex:1;width:min(1030px,100% - 64px);margin:55px auto 75px}.kw-hub-main h1{font-size:65px}.kw-game-list{border-top:1px solid #d1c1d0;margin-top:50px}.kw-game-list>a{border-bottom:1px solid #d1c1d0;align-items:center;gap:27px;padding:31px 15px;text-decoration:none;transition:background .15s;display:flex}.kw-game-list>a:hover{background:var(--paper)}.kw-game-number{font:800 21px var(--font-display);color:#af98ac}.kw-game-list>a>span:nth-last-child(2){flex-direction:column;flex:1;gap:6px;display:flex}.kw-game-list strong{font:1000 34px var(--font-display);letter-spacing:-1px}.kw-game-list small{color:#7a6b78;font-size:13px}.kw-game-list em{color:#7a6b78;margin-top:5px;font-size:10px;font-style:normal}.kw-hub-mark{border-radius:19px;flex-shrink:0;width:70px;height:70px;font-size:57px}@keyframes kw-flip{0%{opacity:.4;transform:rotateX(65deg)}to{opacity:1;transform:rotateX(0)}}@media (max-width:800px){.kw-header{padding:23px 25px}.kw-brand{font-size:30px}.kw-mark{width:36px;height:36px;font-size:30px}.kw-back{gap:5px;font-size:10px}.kw-help{width:calc(100% - 50px);font-size:11px}.kw-home{grid-template-columns:1fr;gap:30px;width:calc(100% - 50px);max-width:500px;margin:25px auto 40px}.kw-intro{text-align:center}.kw-intro .eyebrow{letter-spacing:1.7px;justify-content:center;font-size:8px}.kw-intro h1{letter-spacing:-2px;margin:18px 0;font-size:46px}.kw-intro>p{font-size:13px;line-height:1.7}.kw-sample{justify-content:center;margin:24px 0}.kw-sample>span{border-radius:9px;width:43px;height:50px;font-size:23px}.kw-facts{justify-content:center;gap:8px;font-size:9px}.kw-facts>span+span:before{margin-right:8px}.kw-panel{padding:26px 23px}.kw-panel h2{font-size:29px}.kw-modes button{font-size:11px}.kw-footer{gap:6px;padding:22px 25px;font-size:9px}.kw-room{width:calc(100% - 40px);margin-top:15px}.kw-toolbar>span{gap:10px;font-size:9px}.kw-toolbar>button{gap:5px;font-size:10px}.kw-connection{font-size:8px}.kw-lobby{margin-top:35px}.kw-lobby h1{font-size:37px}.kw-lobby-settings{gap:9px;font-size:10px}.kw-invite>strong{font-size:37px}.kw-with-race{flex-direction:column;gap:25px;display:flex}.kw-board-panel{width:100%}.kw-play-layout{margin-top:25px}.kw-game-title h1{font-size:28px}.kw-game-title .small-label{font-size:8px}.kw-clock{padding:8px;font-size:11px}.kw-grid,.kw-row{gap:5px}.kw-cell{border-radius:8px}.kw-legend{gap:12px;margin-bottom:16px;font-size:8px}.kw-key-row{gap:3px}.kw-key-row button{border-radius:6px;min-height:45px;font-size:12px}.kw-powers>button{gap:5px;font-size:10px}.kw-race{width:100%;padding:22px;position:static}.kw-hub>.kw-header>.small-label{display:none}.kw-hub-main{width:calc(100% - 50px);margin:35px auto 50px}.kw-hub-main .eyebrow{font-size:8px}.kw-hub-main h1{letter-spacing:-2px;font-size:43px}.kw-hub-main>p{font-size:13px}.kw-game-list{margin-top:35px}.kw-game-list>a{gap:15px;padding:25px 0}.kw-game-number{font-size:14px}.kw-game-list>a>img{width:46px;height:46px}.kw-hub-mark{border-radius:12px;width:46px;height:46px;font-size:40px}.kw-game-list strong{font-size:27px}.kw-game-list small{font-size:11px;line-height:1.6}.kw-game-list em{font-size:8px}.kw-game-list>a>svg{width:20px}}@media (max-width:360px){.kw-header{padding-left:20px;padding-right:20px}.kw-brand{gap:6px;font-size:27px}.kw-home,.kw-help{width:calc(100% - 40px)}.kw-panel{padding:24px 18px}.kw-modes button{font-size:10px}.kw-intro h1{font-size:42px}.kw-sample{gap:5px}.kw-sample>span{width:38px;height:46px}.kw-room{width:calc(100% - 28px)}.kw-game-title h1{font-size:25px}.kw-key-row button{font-size:11px}.kw-powers>button{font-size:9px}.kw-hub-main h1{font-size:38px}.kw-game-number{display:none}}.kw-header-actions{align-items:center;gap:16px;display:flex}.kw-header .kw-help{width:auto;margin:0;position:relative}.kw-header .kw-help summary{align-items:center;gap:6px;min-height:36px;list-style:none;display:flex}.kw-help summary::-webkit-details-marker{display:none}.kw-header .kw-help>p{border:1px solid var(--line);background:var(--paper);z-index:30;border-radius:12px;width:min(340px,100vw - 32px);padding:18px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 12px 30px #39204420}.kw-header button.kw-back{background:0 0;border:0}.kw-race-toggle,.kw-race-close{display:none}.kw-notice{height:38px;margin:0 0 6px}.kw-notice>.kw-error{border-radius:8px;gap:8px;width:100%;height:100%;margin:0;padding:3px 9px;font-size:11px;line-height:14px}.kw-notice>.kw-error>span{flex:1;min-width:0;max-height:28px;overflow:auto}.kw-notice>.kw-error>button{min-width:26px;height:26px;min-height:26px}.kw-actions>.primary-button{flex:1;min-width:0}.kw-actions>.kw-delete{flex-shrink:0}.kw-playing{height:100dvh;min-height:0;overflow:hidden}.kw-playing>.kw-header{flex-shrink:0;height:56px;padding:6px 24px}.kw-playing .kw-brand{font-size:28px}.kw-playing .kw-mark{width:32px;height:32px;font-size:29px}.kw-playing>.kw-footer{display:none}.kw-playing>.kw-room{flex-direction:column;flex:1;min-height:0;margin:0 auto;padding-bottom:8px;display:flex}.kw-playing .kw-play-layout{flex:1;width:100%;min-height:0;margin:4px auto 0}.kw-playing .kw-board-panel{flex-direction:column;height:100%;min-height:0;display:flex}.kw-playing .kw-game-title{flex-shrink:0;min-height:38px;margin:0 0 6px}.kw-playing .kw-game-title h1{margin-top:3px;font-size:25px;line-height:1.1}.kw-playing .kw-clock{padding:7px 10px}.kw-playing .kw-board-area{flex:1;place-items:center;min-height:0;display:grid;container-type:size}.kw-playing .kw-grid{--kw-cell:min(58px,calc((100cqw - (var(--letters) - 1) * 5px) / var(--letters)),calc((100cqh - 25px) / 6));width:calc(var(--letters) * var(--kw-cell) + (var(--letters) - 1) * 5px);height:calc(6 * var(--kw-cell) + 25px);grid-template-rows:repeat(6,minmax(0,1fr));gap:5px;margin:0}.kw-playing .kw-row{gap:5px;min-height:0}.kw-playing .kw-cell{aspect-ratio:auto;min-height:0;font-size:clamp(14px,calc(var(--kw-cell) * .52),28px);border-radius:6px}.kw-playing .kw-input-readout{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:0;position:absolute;overflow:hidden}.kw-playing .kw-hints{flex-shrink:0;gap:8px;height:18px;min-height:18px;margin:3px 0;font-size:14px}.kw-playing .kw-controls{flex-shrink:0}.kw-playing .kw-legend{height:14px;margin:3px 0 5px;font-size:9px}.kw-playing .kw-notice{height:36px;margin-bottom:5px}.kw-playing .kw-keyboard{gap:4px}.kw-playing .kw-key-row button{height:clamp(32px,5.5dvh,44px);min-height:0}.kw-playing .kw-actions{gap:8px;margin-top:7px}.kw-playing .kw-actions>.primary-button,.kw-playing .kw-delete{height:40px;min-height:40px;padding:8px 12px}.kw-playing .kw-delete{width:55px}.kw-playing .kw-powers{gap:7px;margin-top:8px}.kw-playing .kw-powers>button{height:34px;min-height:34px;padding:3px 6px}.kw-playing .kw-powers button>span{gap:1px}.kw-playing .kw-wallet{font-size:18px}.kw-playing .kw-race{max-height:100%;position:static;overflow:auto}@media (max-width:1000px){.kw-playing>.kw-header{height:48px;padding:4px 16px}.kw-playing .kw-brand{gap:5px;font-size:26px}.kw-playing .kw-header-actions{gap:7px}.kw-playing .kw-header .kw-back,.kw-playing .kw-header .kw-help summary,.kw-playing .kw-race-toggle{background:0 0;border-radius:8px;place-items:center;width:34px;min-height:36px;padding:0;display:grid}.kw-playing .kw-header .kw-action-label,.kw-playing .kw-help summary>span{display:none}.kw-playing>.kw-room{width:calc(100% - 28px)}.kw-playing .kw-game-title .small-label{font-size:8px}.kw-playing .kw-with-race{flex-direction:column;max-width:540px;display:flex}.kw-playing .kw-race{display:none}.kw-playing .kw-race.is-open{z-index:25;width:min(360px,100% - 28px);max-height:calc(100dvh - 76px);display:block;position:fixed;top:56px;right:14px;box-shadow:0 15px 45px #39204430}.kw-playing .kw-race-close{background:0 0;border-radius:8px;place-items:center;width:32px;min-height:32px;display:grid;position:absolute;top:10px;right:10px}}@media (max-width:600px){.kw-header-actions{gap:8px}.kw-header .kw-help summary{justify-content:center;width:34px}.kw-header .kw-help summary>span,.kw-header .kw-action-label{display:none}.kw-header .kw-back{justify-content:center;min-width:34px}.kw-header .kw-help>p{max-height:calc(100dvh - 70px);position:fixed;top:54px;right:16px;overflow:auto}.kw-playing .kw-clock{padding:6px 8px;font-size:11px}.kw-playing .kw-game-title h1{font-size:23px}}@media (max-height:650px){.kw-playing>.kw-header{height:42px;padding-top:2px;padding-bottom:2px}.kw-playing .kw-game-title{min-height:25px;margin-bottom:3px}.kw-playing .kw-game-title h1{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.kw-playing .kw-game-title .small-label{font-size:8px}.kw-playing .kw-hints{height:16px;min-height:16px;margin:2px 0}.kw-playing .kw-legend{margin:2px 0 3px;font-size:8px}.kw-playing .kw-notice{height:32px;margin-bottom:3px}.kw-playing .kw-notice>.kw-error{padding-top:1px;padding-bottom:1px}.kw-playing .kw-actions{margin-top:5px}.kw-playing .kw-actions>.primary-button,.kw-playing .kw-delete{height:36px;min-height:36px}.kw-playing .kw-powers{margin-top:5px}.kw-playing .kw-powers>button{height:30px;min-height:30px}.kw-playing .kw-powers small{font-size:8px}}@media (max-width:1000px) and (max-height:600px) and (orientation:landscape){.kw-playing .kw-play-layout,.kw-playing .kw-with-race{max-width:none}.kw-playing .kw-board-panel{grid-template-rows:28px minmax(0,1fr) 18px;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:5px 20px;display:grid}.kw-playing .kw-game-title{grid-area:1/1;margin:0}.kw-playing .kw-board-area{grid-area:2/1;height:100%}.kw-playing .kw-hints{grid-area:3/1;margin:0}.kw-playing .kw-controls{grid-area:1/2/4;align-self:center;width:100%}}.kw-playing{--kw-header-height:56px}@media (max-width:1000px){.kw-playing{--kw-header-height:48px}.kw-playing .kw-race.is-open{top:calc(env(safe-area-inset-top,0px) + var(--kw-header-height) + 8px);max-height:calc(100dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - var(--kw-header-height) - 20px)}}@media (max-width:600px){.kw-header .kw-help>p{top:calc(env(safe-area-inset-top,0px) + var(--kw-header-height,90px) + 6px);max-height:calc(100dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - var(--kw-header-height,90px) - 14px)}}@media (max-height:650px){.kw-playing{--kw-header-height:42px}}
