@import"https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=League+Spartan:wght@500;700;800&display=swap";:root{font-family:League Spartan,sans-serif;color:#efe8d3;background:#081d1f}*{box-sizing:border-box}body{margin:0;min-width:320px;background:radial-gradient(circle at 80% 25%,#153b3d 0,transparent 35%),#081d1f}button,input{font:inherit}button{cursor:pointer}main{min-height:100vh;display:flex;flex-direction:column;background-image:linear-gradient(#ffffff05 1px,transparent 1px),linear-gradient(90deg,#ffffff05 1px,transparent 1px);background-size:40px 40px}header{height:84px;display:flex;align-items:center;padding:0 6vw;border-bottom:1px solid #315053;gap:28px}.brand{display:flex;align-items:center;gap:13px;color:#f5eacb;background:none;border:0;font-size:25px;letter-spacing:1px}.brand b{color:#e99b35}.atom{position:relative;width:39px;height:39px}.atom i{position:absolute;inset:10px 1px;border:2px solid #e99b35;border-radius:50%}.atom i:nth-child(2){transform:rotate(60deg)}.atom i:nth-child(3){transform:rotate(120deg)}.atom b{position:absolute;width:7px;height:7px;background:#df5c37;border-radius:50%;top:16px;left:16px}.status{margin-left:auto;color:#a4b7b2;font:12px DM Mono;text-transform:uppercase}.status span,.connected:before{display:inline-block;width:7px;height:7px;border-radius:50%;background:#70c4a8;margin-right:8px;box-shadow:0 0 8px #70c4a8}.outline{border:1px solid #b99a61;color:#f1d9a7;background:transparent;padding:12px 18px}.hero{position:relative;flex:1;padding:10vh 10vw 50px;overflow:hidden}.eyebrow{font:12px DM Mono;letter-spacing:2.5px;color:#e99b35}.hero h1{font-size:clamp(64px,9vw,130px);line-height:.83;letter-spacing:-4px;margin:28px 0 22px}.hero h1 em{font-style:normal;color:#e99b35}.hero>p{color:#b9c4bd;font:16px/1.7 DM Mono;max-width:620px}.actions{display:flex;gap:26px;align-items:center;margin-top:34px}.primary{background:#dc633e;border:0;color:#fff;padding:17px 22px;text-transform:uppercase}.primary span{margin-left:25px}.text,.back{background:none;border:0;color:#d7d0bc;padding:10px 0}.signal{position:absolute;right:7vw;top:11vh;writing-mode:vertical-rl;color:#34575a;font:72px DM Mono}.how{display:grid;grid-template-columns:repeat(3,1fr);max-width:700px;margin-top:9vh;border-top:1px solid #315053}.how div{padding:20px 25px 0 0;display:grid;grid-template-columns:38px 1fr}.how b{font:12px DM Mono;color:#d66a44;grid-row:1/3}.how small{color:#879b96;margin-top:5px}.page{flex:1;width:min(1120px,88vw);margin:auto;padding:70px 0}.pagehead,.radiohead{display:flex;justify-content:space-between;align-items:end;margin-bottom:42px}.page h2{font-size:56px;margin:12px 0 5px}.page p{color:#9bacaa;font:14px/1.6 DM Mono}.pagehead label{font:11px DM Mono;letter-spacing:1px;color:#d6c9aa;text-transform:uppercase}.pagehead input{display:block;margin-top:9px;background:#102d2f;border:1px solid #476467;color:#fff;padding:14px;width:240px}.rooms{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.room{text-align:left;min-height:220px;padding:27px;background:#10292b;border:1px solid #315053;color:#eee5ce;position:relative;transition:.2s}.room:hover{transform:translateY(-4px);border-color:var(--accent)}.room .meter{position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--accent)}.room small{font:11px DM Mono;color:var(--accent)}.room h3{font-size:28px;margin:25px 0 5px}.room p{min-height:46px}.room b{font-size:12px;text-transform:uppercase}.radiohead{border-bottom:1px solid #315053;padding-bottom:22px}.connected,.connecting{font:12px DM Mono;color:#9bcdbd}.console{display:grid;grid-template-columns:1fr 300px;gap:20px}.scope,aside{border:1px solid #35575a;background:#0e292b;padding:24px}.lcd{height:170px;background:#b9c44a;color:#273118;border:10px solid #152224;box-shadow:inset 0 0 30px #657018;font:20px DM Mono;padding:25px;display:flex;align-items:center}.keys{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:24px}.keys button{height:125px;background:#173638;border:1px solid #567073;color:#efe8d3;display:flex;flex-direction:column;justify-content:center;align-items:center}.keys button.pressed{background:#d76540}.keys b{font-size:25px}.keys span{font:11px DM Mono;color:#8ea3a0}.remote{margin-top:25px;font:12px DM Mono;color:#95aaa6}.remote i{float:right;width:13px;height:13px;border-radius:50%;background:#243f40}.remote i.on{background:#e9a33b;box-shadow:0 0 16px #e9a33b}.person{display:flex;align-items:center;gap:12px;margin:15px 0}.person span{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#d3613e}.person i{margin-left:auto;width:7px;height:7px;border-radius:50%;background:#6fc0a5}.device{width:100%;margin-top:10px;padding:13px;background:transparent;color:#e9d3a0;border:1px solid #9d8656}footer{display:flex;justify-content:space-between;padding:22px 6vw;border-top:1px solid #294649;color:#687e7a;font:10px DM Mono}footer b{color:#d66a44}@media(max-width:780px){header{padding:0 20px}.status{display:none}.hero{padding:70px 25px}.hero h1{font-size:58px}.signal{display:none}.how,.rooms{grid-template-columns:1fr}.pagehead{align-items:start;gap:20px;flex-direction:column}.page h2{font-size:42px}.console{grid-template-columns:1fr}.outline{font-size:11px;padding:10px}.brand{font-size:19px}}footer{align-items:flex-end;gap:32px;padding:30px 6vw;color:#7e918d;font:10px/1.7 DM Mono}.footerBrand{display:flex;flex-direction:column}.footerBrand strong{font:16px League Spartan;color:#efe8d3}.footerBrand b{color:#d66a44}footer nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px 20px}footer a{color:#a9bbb6;text-decoration:none}footer a:hover{color:#e9a33b}.legalPage{max-width:900px}.legalPage h2{border-bottom:1px solid #35575a;padding-bottom:24px}.legalBody{max-width:780px}.legalBody h3{font-size:23px;margin:35px 0 8px;color:#efe8d3}.legalBody p,.legalBody li{color:#aebdb9;font:14px/1.8 DM Mono}.legalBody ul{padding-left:24px}.legalBody a{color:#e9a33b}.contactCard{display:flex;flex-direction:column;gap:8px;padding:24px;margin:30px 0;border-left:4px solid #dc633e;background:#102d2f}.contactCard span{font:10px DM Mono;letter-spacing:2px;color:#8ea3a0}.contactCard a{font-size:26px}@media(max-width:780px){footer{align-items:flex-start;flex-direction:column}footer nav{justify-content:flex-start}.contactCard a{font-size:19px}}footer nav button{padding:0;border:0;background:none;color:#a9bbb6;font:inherit}footer nav button:hover{color:#e9a33b}.analyticsConsent{position:fixed;z-index:50;left:50%;bottom:18px;transform:translate(-50%);width:min(760px,92vw);display:flex;align-items:center;gap:12px;padding:16px 18px;border:1px solid #64807b;background:#10292b;box-shadow:0 14px 50px #000c;color:#efe8d3}.analyticsConsent div{display:flex;flex:1;flex-direction:column;gap:4px}.analyticsConsent b{font-size:16px}.analyticsConsent span{color:#aabbb7;font:10px/1.5 DM Mono}.analyticsConsent button{white-space:nowrap;padding:10px 13px;border:1px solid #64807b;background:transparent;color:#efe8d3}.analyticsConsent .allow{background:#dc633e;border-color:#dc633e}@media(max-width:680px){.analyticsConsent{align-items:stretch;flex-wrap:wrap}.analyticsConsent div{flex-basis:100%}.analyticsConsent button{flex:1}}.accountLink{border:0;background:none;color:#d8cba9;font:12px DM Mono;text-transform:uppercase;letter-spacing:1px}.accountLink:hover{color:#e99b35}.accountPage{max-width:1000px}.accountGrid,.contestGrid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.accountCard,.signedIn,.newsletterHold{background:#10292b;border:1px solid #35575a;padding:28px}.accountCard h3,.newsletterHold h3{font-size:28px;margin:10px 0 14px}.accountCard label{display:block;font:11px DM Mono;text-transform:uppercase;color:#d6c9aa;letter-spacing:1px}.accountCard input,.accountCard textarea{display:block;width:100%;margin-top:9px;background:#092022;border:1px solid #527174;color:#fff;padding:15px;font:16px DM Mono}.accountCard textarea{min-height:150px;resize:vertical}.accountActions{display:flex;gap:12px;align-items:center;margin:20px 0}.accountActions .primary{padding:14px 17px}.accountActions button:disabled{cursor:wait;opacity:.55}.formMessage{color:#e9b55f!important}.securityNote,.leaderboard>small{display:block;color:#819894;font:11px/1.65 DM Mono}.passkeyInfo ul{padding-left:20px;color:#adbbb7;font:14px/2 DM Mono}.signedIn{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;border-left:4px solid #70c4a8}.signedIn h3{font-size:32px;margin:5px 0 0}.contestCard .primary{margin-top:18px}.contestSpeed{display:flex;align-items:center;gap:14px;margin:20px 0}.contestSpeed button{width:44px;height:44px;border:1px solid #587477;background:#173638;color:#fff;font-size:24px}.contestSpeed b{font:14px DM Mono;min-width:75px;text-align:center}.playingState{margin:18px 0;color:#e9a33b;font:12px DM Mono;letter-spacing:1px}.contestResult{display:grid;grid-template-columns:auto 1fr;align-items:end;gap:0 10px;margin-top:22px;padding:20px;border-left:4px solid #70c4a8;background:#092022}.contestResult b{font-size:48px;color:#e9a33b}.contestResult span{text-transform:uppercase;color:#91aaa5}.contestResult small{grid-column:1/3;color:#becbc7;font:12px DM Mono}.leaderboard ol{list-style-position:inside;padding:0;margin:18px 0}.leaderboard li{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;padding:11px 0;border-bottom:1px solid #2d4b4d;font:12px DM Mono}.leaderboard li span{color:#93a8a4}.leaderboard li strong{color:#e9a33b}.newsletterHold{margin-top:18px;border-style:dashed}.newsletterHold p{max-width:750px;margin-bottom:0}.newsletterHold h3{margin-bottom:6px}@media(max-width:780px){.accountLink{margin-left:auto;font-size:10px}.accountGrid,.contestGrid{grid-template-columns:1fr}.accountActions{align-items:stretch;flex-direction:column}.accountActions button{width:100%}.leaderboard li{grid-template-columns:1fr auto}.leaderboard li span{grid-row:2}.newsletterHold{padding:22px}}.loginIndicator{display:flex;align-items:center;gap:9px;padding-left:12px;border-left:1px solid #315053;font:10px DM Mono;text-transform:uppercase;color:#9fb1ad}.loginIndicator span{white-space:nowrap}.loginIndicator i{display:inline-block;width:7px;height:7px;margin-right:6px;border-radius:50%;background:#70c4a8;box-shadow:0 0 8px #70c4a8}.loginIndicator b{color:#efe8d3}.loginIndicator button,.loginButton{border:1px solid #527174;background:#173638;color:#efe8d3;padding:8px 10px;font:10px DM Mono;text-transform:uppercase}.loginChecking{color:#718985;font:9px DM Mono;text-transform:uppercase}.signedInAccount .profileFields>label:nth-of-type(3){display:none}@media(max-width:980px){.loginIndicator span{display:none}.loginIndicator{padding-left:0;border:0}.loginChecking{display:none}}@media(max-width:780px){.accountLink{display:none}.loginButton,.loginIndicator button{padding:7px 8px}.loginIndicator{margin-left:auto}}.backupPasskey{display:block;margin-top:10px;padding:0;border:0;background:none;color:#e9a33b;font:11px DM Mono;text-transform:uppercase}.backupPasskey:disabled{opacity:.5}.handleChange{display:flex;gap:8px;margin:10px 0}.handleChange input{width:180px;background:#092022;border:1px solid #527174;color:#fff;padding:9px 11px;font:12px DM Mono}.handleChange button,.playbackControls button{border:1px solid #527174;background:#173638;color:#efe8d3;padding:9px 12px;text-transform:uppercase;font-size:11px}.handleChange button:disabled,.playbackControls button:disabled{opacity:.4;cursor:not-allowed}.playbackControls{display:flex;gap:10px;margin:10px 0 16px}.playbackControls button{min-width:92px}.favoritesPanel{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(360px,1.3fr);gap:28px;margin:18px 0;padding:28px;background:#10292b;border:1px solid #35575a}.favoritesPanel h3{font-size:28px;margin:8px 0}.favoritesPanel p{margin:0}.favoriteList{display:flex;flex-direction:column}.favoriteRow{display:grid;grid-template-columns:28px 1fr auto auto auto;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid #2d4b4d}.favoriteRow>span{color:#566d69;font-size:20px}.favoriteRow>span.online{color:#e06b5b}.favoriteRow small{color:#8fa39f;font:10px DM Mono}.favoriteRow button{padding:8px 12px;border:1px solid #527174;background:#173638;color:#efe8d3;text-transform:uppercase;font-size:10px}.favoriteRow button:disabled{opacity:.35;cursor:not-allowed}.favoriteRow .removeFavorite{width:32px;height:32px;padding:0;border:0;background:none;color:#819894;font-size:20px}.emptyFavorites{padding:20px;border:1px dashed #476467;color:#819894!important}.favoritesPanel+.newsletterHold{margin-top:0}@media(max-width:780px){.favoritesPanel{grid-template-columns:1fr}.favoriteRow{grid-template-columns:26px 1fr auto auto}.favoriteRow small{grid-column:2}.favoriteRow .removeFavorite{grid-column:4;grid-row:1/3}}.newsletterForm{display:flex;gap:12px;margin:18px 0 10px}.newsletterForm input{min-width:0;flex:1;background:#092022;border:1px solid #527174;color:#fff;padding:14px;font:14px DM Mono}.newsletterForm .primary{padding:14px 18px}.newsletterForm button:disabled{cursor:not-allowed;opacity:.5}.newsletterHold>small{color:#819894;font:11px DM Mono}@media(max-width:600px){.newsletterForm{flex-direction:column}}.adminPage{flex:1;width:min(1240px,92vw);margin:0 auto;padding:65px 0}.adminHero{max-width:850px;margin-bottom:30px}.adminHero>span,.adminPanelHead span{font:11px DM Mono;letter-spacing:2px;color:#e99b35}.adminHero h1{font-size:clamp(42px,6vw,72px);margin:12px 0}.adminHero p{color:#aabbb7;font:14px/1.7 DM Mono}.adminHero label,.adminPanel label,.adminSend label{display:block;color:#d6c9aa;font:11px DM Mono;letter-spacing:1px;text-transform:uppercase;margin:18px 0}.adminHero input,.adminPanel input,.adminPanel textarea{display:block;width:100%;margin-top:8px;background:#092022;border:1px solid #527174;color:#fff;padding:14px;font:14px DM Mono}.adminHero input{max-width:480px}.adminPanel textarea{resize:vertical}.adminButton,.adminSmallButton{display:inline-block;border:0;background:#dc633e;color:#fff;padding:14px 18px;text-decoration:none;text-transform:uppercase;font-size:12px}.adminButton:disabled,.adminSend button:disabled{opacity:.45;cursor:not-allowed}.adminNotice,.adminError{padding:14px 17px;margin:16px 0;background:#173b36;border-left:4px solid #70c4a8;font:12px DM Mono}.adminError{background:#3b2422;border-color:#dc633e}.adminStats{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin:28px 0}.adminStats div{display:flex;flex-direction:column;background:#10292b;border:1px solid #35575a;padding:20px}.adminStats b{font-size:32px;color:#e9a33b}.adminStats span{font:10px DM Mono;color:#94aaa6;text-transform:uppercase}.adminPanel{min-width:0;background:#10292b;border:1px solid #35575a;padding:24px;margin-bottom:18px}.adminPanelHead{display:flex;align-items:center;justify-content:space-between;gap:20px}.adminPanelHead h2{font-size:30px;margin:6px 0 8px}.adminSmallButton{padding:10px 13px;background:#173638;border:1px solid #527174}.adminSend{display:flex;align-items:end;gap:12px}.adminSend label{flex:1;margin:0}.adminSend button,.adminTable button{min-height:44px;background:#173638;border:1px solid #527174;color:#efe8d3;padding:9px 13px}.adminSend .danger{background:#9c3f2f;border-color:#d76540}.adminColumns{display:grid;grid-template-columns:1fr 1fr;gap:18px}.adminTable{overflow:auto}.adminTable table{border-collapse:collapse;width:100%;font:11px DM Mono}.adminTable th,.adminTable td{text-align:left;padding:12px 10px;border-bottom:1px solid #2d4b4d;white-space:nowrap}.adminTable th{color:#829995;text-transform:uppercase}.adminStatus{display:inline-block;font-style:normal;padding:5px 7px;background:#233e40;color:#b7c7c3}.adminStatus.active{background:#214b40;color:#9fe0c6}.adminStatus.pending{background:#514223;color:#efd182}.adminLog{display:flex;justify-content:space-between;gap:18px;border-bottom:1px solid #2d4b4d;padding:13px 0;font:11px DM Mono}.adminLog div{display:flex;flex-direction:column;gap:5px}.adminLog small,.adminLog>span{color:#819894}.adminLog>span{text-align:right}@media(max-width:900px){.adminStats{grid-template-columns:repeat(3,1fr)}.adminColumns{grid-template-columns:1fr}.adminSend{align-items:stretch;flex-direction:column}.adminSend button{width:100%}}@media(max-width:520px){.adminStats{grid-template-columns:repeat(2,1fr)}.adminPanel{padding:18px}.adminPanelHead{align-items:flex-start;flex-direction:column}}.adminInlineFields{display:grid;grid-template-columns:1fr 1fr auto;align-items:end;gap:12px}.adminInlineFields label{margin:10px 0}.adminInlineFields button{height:45px;border:1px solid #527174;background:#173638;color:#efe8d3;padding:0 16px;text-transform:uppercase}.adminInlineFields button:disabled{opacity:.45}@media(max-width:760px){.adminInlineFields{grid-template-columns:1fr}.adminInlineFields button{width:100%}}.brand{font-size:48px;line-height:1}@media(max-width:780px){.brand{font-size:30px}}.trainingPage{max-width:1180px}.trainingHead,.trainingModeHead{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin:28px 0 34px}.trainingHead h2,.trainingModeHead h2{margin:8px 0 4px}.trainingSummary{min-width:190px;border-left:3px solid #e99b35;padding:10px 0 10px 20px;display:flex;flex-direction:column}.trainingSummary b{font-size:38px;color:#e99b35}.trainingSummary small{font:11px DM Mono;color:#91a5a0;text-transform:uppercase}.trainingGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.trainingTile{min-height:190px;text-align:left;padding:22px;background:#10292b;border:1px solid #315053;color:#efe8d3;display:flex;flex-direction:column;align-items:flex-start;transition:.18s}.trainingTile:hover{transform:translateY(-3px);border-color:#e99b35;background:#143234}.trainingTile>span{height:56px;min-width:56px;padding:0 10px;display:grid;place-items:center;border:1px solid #547073;color:#e99b35;font:700 28px DM Mono}.trainingTile strong{font-size:25px;margin-top:18px}.trainingTile small{font:12px/1.45 DM Mono;color:#93a7a2;margin-top:6px}.trainingTile em{font:10px DM Mono;font-style:normal;color:#e7c675;margin-top:auto;padding-top:10px}.trainingTip{margin-top:20px;padding:17px 20px;border:1px solid #315053;background:#0d2527;color:#91a5a0;font:12px DM Mono}.trainingTip b{color:#e99b35}.trainingModeHead{border-bottom:1px solid #315053;padding-bottom:20px;margin-bottom:20px}.trainingSession{display:flex;gap:10px}.trainingSession span{min-width:90px;padding:10px;border:1px solid #315053;display:flex;flex-direction:column;text-align:center}.trainingSession b{font-size:20px;color:#e99b35}.trainingSession small{font:9px DM Mono;color:#879b96;text-transform:uppercase}.trainingSession .trainerOn b{color:#70c4a8}.trainingWorkspace{background:#0e292b;border:1px solid #35575a;padding:26px;max-width:820px;margin:0 auto}.trainingPrompt,.voiceLetter{text-align:center}.trainingPrompt small,.voiceLetter small,.currentCw>small,.yourCode small{display:block;font:10px DM Mono;letter-spacing:1.4px;color:#879b96}.trainingPrompt>b,.voiceLetter>b{display:block;font:700 66px DM Mono;color:#efe8d3;margin:15px 0}.trainingPattern,.currentCw{min-height:92px;background:#b9c44a;color:#273118;border:9px solid #152224;box-shadow:inset 0 0 26px #657018;display:flex;align-items:center;justify-content:center;padding:18px;cursor:pointer}.trainingPattern.hidden{background:#173638;border-color:#27494b;color:#9db1ac;font:12px DM Mono;text-transform:uppercase}.codePattern{min-height:30px;display:flex;align-items:center;justify-content:center;gap:13px}.codePattern i{display:block;height:14px;background:#273118;border-radius:8px}.codePattern .dit{width:14px}.codePattern .dah{width:48px}.codePattern i.active{background:#d64e31;box-shadow:0 0 12px #d64e31}.codePattern em{font:12px DM Mono;font-style:normal}.trainingFeedback{text-align:center;min-height:26px;color:#7fd1bd;font:14px DM Mono;margin:20px 0}.trainingFeedback.success{color:#e7c675}.yourCode{display:grid;grid-template-columns:110px 1fr auto;align-items:center;min-height:54px;border:1px solid #315053;padding:10px 14px}.yourCode b{font:24px DM Mono;letter-spacing:8px}.yourCode span{font:10px DM Mono;color:#879b96}.trainingActions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:20px}.trainingActions button,.resetTraining{min-height:44px;padding:0 20px;background:#173638;border:1px solid #567073;color:#efe8d3;text-transform:uppercase;font-size:12px}.trainingActions button:hover,.trainingActions button.selected{border-color:#e99b35;color:#e99b35}.webPaddles{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}.webPaddles button{min-height:78px;background:#143436;border:1px solid #567073;color:#efe8d3;font-size:22px}.webPaddles small{display:block;color:#879b96;font:10px DM Mono;margin-top:7px}.trainingControls{max-width:820px;margin:18px auto 0;padding:16px;background:#0d2527;border:1px solid #315053;display:flex;align-items:center;gap:25px}.trainingStepper{display:flex;align-items:center;gap:10px}.trainingStepper button{width:48px;height:48px;background:#173638;border:1px solid #567073;color:#e99b35;font-size:25px}.trainingStepper span{min-width:55px;text-align:center;display:flex;flex-direction:column}.trainingStepper span b{font-size:22px}.trainingStepper small{font:9px DM Mono;color:#879b96}.trainingControls label{display:grid;grid-template-columns:auto minmax(130px,1fr) 45px;align-items:center;gap:12px;flex:1;font:11px DM Mono;color:#aab9b5}.trainingControls input{accent-color:#e99b35}.resetTraining{margin-left:auto;color:#d9967f}.sentencePanel{min-height:150px;padding:22px;background:#142f31;border:1px solid #426164;font:21px/1.8 DM Mono;letter-spacing:1px;color:#efe8d3}.sentencePanel span.done{color:#79918c}.sentencePanel span.active{background:#b9c44a;color:#273118;padding:3px 1px}.currentCw{margin-top:18px;flex-direction:column;gap:12px;cursor:default}.currentCw>b{font:700 32px DM Mono}.voiceLetter{background:#b9c44a;color:#273118;border:9px solid #152224;box-shadow:inset 0 0 26px #657018;padding:18px}.voiceLetter small{color:#4b5714}.voiceLetter>b{color:#273118;margin:8px 0;font-size:80px}.voiceWorkspace .currentCw{margin-top:12px}@media(max-width:980px){.trainingGrid{grid-template-columns:repeat(3,1fr)}.trainingModeHead{align-items:flex-start;flex-direction:column}.trainingSession{width:100%}.trainingSession span{flex:1}.trainingControls{flex-wrap:wrap}.resetTraining{margin-left:0}}@media(max-width:700px){.trainingGrid{grid-template-columns:repeat(2,1fr)}.trainingHead{align-items:flex-start;flex-direction:column}.trainingTile{min-height:170px}.trainingWorkspace{padding:15px}.trainingControls{gap:14px}.trainingControls label{flex-basis:100%}.yourCode{grid-template-columns:85px 1fr}.yourCode span{grid-column:1/3;margin-top:8px}.trainingActions button{flex:1}.trainingPrompt>b{font-size:45px}}@media(max-width:440px){.trainingGrid{grid-template-columns:1fr}.trainingSession{flex-wrap:wrap}.trainingSession span{min-width:75px}.codePattern .dah{width:36px}.trainingControls{flex-direction:column;align-items:stretch}.trainingStepper{justify-content:center}.resetTraining{width:100%}}.currentCw>b{display:block;height:38px;min-height:38px;font:700 32px/38px DM Mono}.keyboardMode{display:grid;grid-template-columns:auto 1fr 1fr;align-items:center;gap:8px;margin-top:14px;padding:12px;border:1px solid #315053;background:#10292b}.keyboardMode>span{font:10px DM Mono;color:#9fb1ad;text-transform:uppercase}.keyboardMode button{min-height:38px;padding:7px 10px;border:1px solid #4f6c6f;background:#173638;color:#c7d3cf;font:10px DM Mono}.keyboardMode button.selected{border-color:#e99b35;color:#e99b35;background:#263c36}.keyboardMode small{grid-column:2/4;color:#879b96;font:9px DM Mono}.trainingKeyboardMode{flex:1;margin:0;min-width:310px}.trainingKeyboardMode>span{grid-row:1/3}.trainingKeyboardMode small{grid-column:2/4}@media(max-width:700px){.keyboardMode{grid-template-columns:1fr 1fr}.keyboardMode>span,.keyboardMode small{grid-column:1/3}.trainingKeyboardMode{min-width:100%}.trainingKeyboardMode>span{grid-row:auto}}.trainingControls{flex-wrap:wrap}.trainingControls .trainingKeyboardMode{order:4;flex:0 0 100%;width:100%;min-width:0;margin:0}.trainingControls .resetTraining{margin-left:auto}.trainingControls .trainingKeyboardMode>span{grid-row:auto}.trainingPrompt .playingCharacter{color:#f05f45;text-shadow:0 0 14px #f05f4588}.siteBanner{display:block;width:100%;margin:0 0 24px;padding:0;background:transparent;border:0}.siteBanner>small{display:block;margin-bottom:5px;color:#6f8581;font:8px DM Mono;letter-spacing:1.5px}.siteBanner a{display:block;width:100%;aspect-ratio:8/1;overflow:hidden;border:1px solid #315053;background:#0d2527}.siteBanner img{display:block;width:100%;height:100%;object-fit:cover}.siteBanner a:focus-visible{outline:2px solid #e9a33b;outline-offset:3px}.adAdminGrid{display:grid;grid-template-columns:minmax(280px,.75fr) minmax(500px,1.25fr);gap:24px;margin-top:20px}.adEditor{min-width:0;padding:18px;background:#0b2224;border:1px solid #315053;scroll-margin-top:20px}.adminPanel select{display:block;width:100%;margin-top:8px;background:#092022;border:1px solid #527174;color:#fff;padding:14px;font:14px DM Mono}.adminPanel input[type=file]{padding:10px}.adPreview{display:block;width:100%;aspect-ratio:8/1;object-fit:cover;border:1px solid #527174;margin:0 0 18px}.adEditorActions{display:flex;gap:10px;align-items:center;margin-top:18px}.adPlacementTable{max-height:610px;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.adPlacementTable td:first-child{white-space:normal;min-width:180px}@media(max-width:900px){.adAdminGrid{grid-template-columns:1fr}.adPlacementTable{max-height:520px}}.heroLogo{position:absolute;right:10vw;top:14vh;width:min(32vw,410px);border-radius:10px;box-shadow:0 25px 70px #0007;mix-blend-mode:screen}.keyerMark{width:52px;height:52px;display:block;flex:0 0 52px;background:#000 url(/ditdotter-keyer-black.png) center/contain no-repeat;border-radius:6px}.lcd{align-items:stretch!important;flex-direction:column;justify-content:center;gap:13px;overflow:hidden}.lcd small{font:10px DM Mono;letter-spacing:2px;color:#4b571e}.lcd strong{font:24px/1.4 DM Mono;letter-spacing:2px;overflow-wrap:anywhere}.lcd strong i{font-style:normal;color:#66751c;margin-left:10px;border:0;text-decoration:none}.lcd.localCopy{position:relative;height:150px;justify-content:flex-start;overflow-y:auto;gap:0;margin-bottom:12px;padding:10px 18px 16px}.lcd.conversation{position:relative;height:310px;justify-content:flex-start;overflow-y:auto;gap:0;padding:18px 22px}.copyControls{position:sticky;z-index:2;top:0;align-self:flex-end;display:flex;flex:0 0 auto;gap:6px;margin-bottom:8px}.copyControls button{padding:6px 9px;border:1px solid #65751c;background:#aab53e;color:#253016;font:9px DM Mono;letter-spacing:1px;text-transform:uppercase}.copyControls button:hover{background:#c6d051}.roomCopyTitle{position:sticky;z-index:2;top:-18px;display:block;flex:0 0 auto;margin:-18px -22px 12px;padding:11px 22px;background:#aeb943;border-bottom:1px solid #7f8e2d;font-weight:700}.roomWaiting{margin:auto;color:#58641f;font:12px DM Mono;letter-spacing:1px}.copyLine{width:100%;padding:3px 0 10px;border-bottom:1px solid #7f8e2d}.copyLine+.copyLine{padding-top:10px}.copyLine:last-child{border-bottom:0}.copyLine small{display:block;margin-bottom:4px;font-weight:700}.copyLine strong{display:block}.remoteCopy small{color:#334018}.wpmControl{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:20px;padding-top:20px;border-top:1px solid #35575a}.wpmControl button{width:54px;height:48px;border:1px solid #718a86;background:#173638;color:#f3e7c7;font:28px DM Mono}.wpmControl button:active{background:#d76540}.wpmControl span{min-width:82px;text-align:center;display:flex;flex-direction:column}.wpmControl span b{font:24px DM Mono;color:#f3e7c7}.wpmControl span small{font:9px DM Mono;letter-spacing:2px;color:#8ea3a0}.codeHelperBar{display:grid;grid-template-columns:1fr 48px;margin-top:12px}.codeHelperToggle{width:100%;min-height:46px;padding:0 15px;display:flex;align-items:center;gap:10px;border:1px solid #476467;background:#102d2f;color:#e9d8ad;font:11px DM Mono;letter-spacing:1px;text-transform:uppercase}.codeHelperToggle:hover{border-color:#e9a33b}.codeHelperToggle>span{font-size:22px;color:#e9a33b}.codeHelperToggle>b{margin-left:auto;font-size:20px}.codeHelperPopout{display:grid;place-items:center;border:1px solid #476467;border-left:0;background:#173638;color:#e9a33b;text-decoration:none;font:24px DM Mono}.codeHelperPopout:hover{background:#21484a;color:#ffe2a0}.codeHelper{margin:0;padding:12px;border:1px solid #476467;border-top:0;background:#081d1f}.codeHelper img{display:block;width:100%;height:auto}.codeHelper figcaption{text-align:center;padding:10px 4px 2px;color:#8ea3a0;font:9px DM Mono;letter-spacing:1px;text-transform:uppercase}.volumeControl{display:grid;grid-template-columns:auto 1fr 44px;align-items:center;gap:12px;margin-top:14px;color:#9eb0ac;font:10px DM Mono;letter-spacing:1px;text-transform:uppercase}.volumeControl input{width:100%;accent-color:#e9a33b}.volumeControl b{color:#f3e7c7;text-align:right;font:12px DM Mono}.inviteBanner{position:fixed;z-index:20;top:96px;left:50%;transform:translate(-50%);width:min(620px,90vw);display:flex;align-items:center;gap:12px;padding:16px 18px;background:#f1dfad;color:#152a2c;border-left:5px solid #dc633e;box-shadow:0 16px 50px #0009}.inviteBanner div{display:flex;flex:1;flex-direction:column;gap:4px}.inviteBanner small{font:9px DM Mono;letter-spacing:2px;color:#7b5632}.inviteBanner strong{font-size:18px}.inviteBanner button{padding:10px 14px;border:1px solid #785f3c;background:transparent;color:#152a2c}.inviteBanner .acceptInvite{background:#dc633e;border-color:#dc633e;color:#fff}.operatorSearch{display:grid;grid-template-columns:minmax(240px,.8fr) minmax(320px,1.2fr);gap:36px;padding:28px;margin-bottom:28px;border:1px solid #466265;background:#0e292b}.operatorSearch h3{font-size:28px;margin:9px 0 3px}.operatorSearch p{margin:0}.searchBox>input{width:100%;padding:14px 16px;background:#081d1f;border:1px solid #557174;color:#f6edd7;font:14px DM Mono}.searchBox>input:focus{outline:2px solid #e9a33b;outline-offset:1px}.operatorResults{max-height:230px;overflow-y:auto;margin-top:8px}.operatorRow{display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:12px;padding:10px 4px;border-bottom:1px solid #29484a}.operatorRow>span{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:#d3613e;font-size:12px}.operatorRow div{display:flex;flex-direction:column}.operatorRow b{font-size:17px}.operatorRow small{font:9px DM Mono;color:#89a29d}.operatorRow button{padding:8px 13px;border:1px solid #b99a61;background:transparent;color:#f1d9a7;text-transform:uppercase;font-size:11px}.operatorRow button:disabled{opacity:.35;cursor:not-allowed}.noOperators{padding:14px 4px!important}.privateStatus{margin-top:10px;color:#e9a33b;font:11px DM Mono}.profileFields{display:grid;grid-template-columns:1fr 1fr;gap:12px;width:min(520px,50vw)}.profileFields label{display:block}.profileFields input:not([type=checkbox]){width:100%}.profileFields .privacyToggle{grid-column:1/3;display:flex;align-items:center;gap:10px;padding:9px 12px;border:1px solid #35575a;background:#102d2f;text-transform:none}.privacyToggle input{width:18px;height:18px;margin:0;accent-color:#dc633e}.privacyToggle span{display:flex;flex-direction:column;gap:2px}.privacyToggle b{font-size:12px}.privacyToggle small{font:9px DM Mono;letter-spacing:0;color:#8ea3a0}.locationStatus{grid-column:1/3;color:#e9a33b;font:10px DM Mono}.globePanel{display:grid;grid-template-columns:minmax(230px,.7fr) minmax(360px,1.3fr);align-items:center;gap:35px;padding:26px 32px;margin-bottom:28px;border:1px solid #35575a;background:radial-gradient(circle at 75% 45%,#17484a,#0b2527 55%)}.globePanel h3{font-size:30px;margin:9px 0 4px}.globe{width:100%;max-width:520px;margin-left:auto}.globe svg{width:100%;display:block;overflow:visible}.globe .ocean{fill:#0b353b;stroke:#6a9692;stroke-width:2}.globe .grid path{fill:none;stroke:#477075;stroke-width:1;opacity:.55}.globe .naturalLand{opacity:.95}.mapDot circle:first-child{fill:#f0a33a;opacity:.25;animation:mapPulse 2s ease-out infinite}.mapDot circle:nth-child(2){fill:#ffc24d;stroke:#fff0c7;stroke-width:1.5}.mapCredit{display:block;text-align:right;color:#6f8884;font:8px DM Mono;margin-top:4px}@keyframes mapPulse{0%{r:3;opacity:.8}to{r:11;opacity:0}}@media(max-width:780px){.operatorSearch,.globePanel{grid-template-columns:1fr;gap:18px;padding:20px}.profileFields{width:100%;grid-template-columns:1fr}.profileFields .privacyToggle,.locationStatus{grid-column:1}.inviteBanner{align-items:stretch;flex-wrap:wrap}.inviteBanner div{flex-basis:100%}}@media(max-width:980px){.heroLogo{display:none}}.operatorRow{grid-template-columns:38px 1fr auto auto}.operatorRow .favoriteHeart{width:36px;height:36px;padding:0;border:1px solid #557174;border-radius:50%;color:#78908c;font-size:19px;line-height:1}.operatorRow .favoriteHeart:hover,.operatorRow .favoriteHeart.saved{border-color:#e06b5b;color:#e06b5b;background:#3b2829}.operatorResults{max-height:570px;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
