:root{--pine:#203f33;--ink:#342e20;--paper:#f9ecce;--line:#b0a17c;--gold:#f9cd72;--pixel:Crossing,monospace;--mono:ui-monospace,Menlo,Consolas,monospace;--safe:clamp(16px,3vw,42px);--keyboard:0px;font:16px/1.45 "Trebuchet MS",system-ui,sans-serif;color:var(--ink);background:#29493b}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,input{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #99e9de;outline-offset:4px}button[hidden],[hidden]{display:none!important}button,a{touch-action:manipulation}canvas{image-rendering:pixelated}h1,h2,p{margin:0}#world{position:fixed;inset:0;isolation:isolate;background:#e4bd92;overflow:hidden}#grove{position:absolute;inset:0;width:100%;height:100%;z-index:-2}#world:before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,#202b2c50,transparent 17%,transparent 75%,#142d2470)}
header{position:absolute;top:max(16px,env(safe-area-inset-top));left:var(--safe);right:var(--safe);display:flex;align-items:center;justify-content:space-between;pointer-events:none;gap:12px}header>*{pointer-events:auto}.brand{display:flex;align-items:center;gap:7px;text-decoration:none;color:#fff3d0;text-shadow:2px 2px #29483a,-1px -1px #34493e,1px -1px #34493e,-1px 1px #34493e;font:clamp(28px,3.3vw,45px)/1 var(--pixel);letter-spacing:-1px}.brand canvas{width:36px;height:36px;filter:drop-shadow(1px 2px #2f493e)}.brand small{align-self:flex-end;font:15px var(--mono);margin-left:-6px}.brand:active{transform:translateY(1px)}nav,.scorebar{display:flex;align-items:center;gap:7px}nav button,.scorebar{background:#203a31eb;border:1px solid #98a284;color:#f2edce;box-shadow:0 2px 0 #263c3180}nav button{height:36px;min-width:36px;display:flex;align-items:center;justify-content:center;gap:7px;border-radius:5px;font:600 13px system-ui;padding:0 9px}nav button:hover{background:#395343}.question{border:1px solid currentColor;border-radius:50%;display:grid;place-items:center;width:16px;height:16px;font:700 12px var(--mono)}.book{width:15px;height:14px;border:1px solid #d9dfbd;box-shadow:-2px 2px #9eaf91;position:relative}.book:after{content:'';position:absolute;width:6px;height:1px;background:#d9dfbd;left:4px;top:4px;box-shadow:0 3px #d9dfbd}.expand{width:15px;height:15px;background:linear-gradient(currentColor,currentColor) left top/6px 2px,linear-gradient(currentColor,currentColor) left top/2px 6px,linear-gradient(currentColor,currentColor) right top/6px 2px,linear-gradient(currentColor,currentColor) right top/2px 6px,linear-gradient(currentColor,currentColor) left bottom/6px 2px,linear-gradient(currentColor,currentColor) left bottom/2px 6px,linear-gradient(currentColor,currentColor) right bottom/6px 2px,linear-gradient(currentColor,currentColor) right bottom/2px 6px;background-repeat:no-repeat}
.quest{position:absolute;left:var(--safe);top:calc(max(16px,env(safe-area-inset-top)) + 64px);width:min(315px,calc(100vw - var(--safe)*2));padding:14px 17px 13px;background-color:var(--paper);background-image:radial-gradient(#a5906724 .65px,transparent .85px);background-size:4px 4px;border:2px solid #887b59;box-shadow:inset 0 0 0 2px #fff6da,3px 4px 0 #273c3855}.questTop{display:flex;justify-content:space-between;align-items:center;color:#666b50;font:700 10px var(--mono);letter-spacing:1.15px}.quillTag{display:flex;align-items:center;gap:6px}.quillTag canvas{width:18px;height:18px}h1,h2{font:bold 29px/1.1 Georgia,serif;letter-spacing:-1px}.quest h1{margin:7px 0 0;color:#303d2a}.quest h1.met{color:#3c673e}.quest h1.met:after{content:' ✓';font:16px var(--mono)}#rules{list-style:none;display:flex;gap:6px;flex-wrap:wrap;margin:9px 0 0;padding:0}#rules:empty{display:none}.rule{font:600 12px/1.35 system-ui;background:#e9debd;color:#504f37;border:1px solid #c8b98f;padding:4px 7px;border-radius:3px}.rule.met{background:#d3e4bb;color:#345135;border-color:#9db382}.rule.met:before{content:'✓ ';}.rule.miss{border-color:#bc8368}.just-added{animation:addRule .38s ease-out}@keyframes addRule{from{transform:translateY(5px);background:#ffdc88}to{transform:none}}#steps{display:flex;gap:3px;margin-top:12px}#steps i{height:3px;flex:1;background:#d5c9a7}#steps i.active{background:#718950}#steps i:last-child.active{background:#bc8b36}
.scorebar{position:absolute;bottom:max(22px,env(safe-area-inset-bottom));left:var(--safe);border-radius:5px;gap:7px;padding:7px 11px;font:12px var(--mono)}.scorebar i{height:12px;width:1px;background:#84977d80;margin:0 2px}.scorebar canvas{width:16px;height:16px}.scorebar #stage{color:#d7e4af;font-weight:700}.scorebar #score{color:#fae1a5;white-space:nowrap}
.dock{position:absolute;bottom:calc(max(25px,env(safe-area-inset-bottom)) + var(--keyboard));left:50%;transform:translateX(-50%);width:min(455px,calc(100% - 24px));display:flex;align-items:center;flex-direction:column;gap:9px;pointer-events:none}.dock button,.dock section{pointer-events:auto}#bubble{display:flex;align-items:center;gap:10px;color:#e1fbff;background:#0c263cf2;border:2px solid #79e2ed;border-radius:32px;padding:11px 21px 12px 14px;box-shadow:0 0 0 5px #78def01b,0 4px 22px #030c1b80;font:15px/1.2 var(--pixel);text-transform:uppercase;letter-spacing:1px;animation:breathe 2.8s ease-in-out infinite}#bubble span{color:#88f3ff;font:700 23px/24px monospace}@keyframes breathe{50%{box-shadow:0 0 0 7px #78def01b,0 4px 22px #030c1b80}}#controls{width:100%;background:#0a1b30f5;border:1px solid #709fb0;border-radius:18px;box-shadow:0 4px 30px #030b1980;padding:9px 14px 10px;color:#d5e8fa}.controlTop{display:flex;align-items:center;justify-content:space-between}.controlTop label{font:700 12px var(--mono);color:#b6e2e8}#fold{color:#c0d3df;background:transparent;border:0;width:30px;height:24px;font:22px/20px var(--mono)}#entry{display:flex;gap:8px;margin-top:4px}.inputwrap{position:relative;flex:1;min-width:0}#word{width:100%;height:42px;border:1px solid #66859c;border-radius:8px;color:#edfbff;background:#132c43;padding:9px 34px 9px 11px;font:16px var(--mono);outline-offset:0}#word:focus{outline:2px solid #87b6c6;outline-offset:-2px}#word::placeholder{color:#9fb4c4}#plant{border:1px solid #95d4d8;border-radius:8px;padding:0 14px;background:#a7ded7;color:#153333;font:700 14px var(--mono)}#plant:hover{background:#cef4e9}#feedback{font:11px/1.35 var(--mono);color:#b1c7cf;min-height:15px;margin-top:6px}#feedback.valid{color:#83efc9}#feedback.error{color:#ffc9a0}#celebrate:not(:empty){background:#20372eee;border:1px solid #baae77;color:#fff1be;font:600 13px var(--mono);text-align:center;padding:6px 11px;border-radius:4px;animation:toast .32s ease-out}@keyframes toast{from{opacity:0;transform:translateY(7px)}}
#finished,dialog{background:var(--paper);color:var(--ink);border:2px solid #978862;box-shadow:0 5px #20382b60,inset 0 0 0 2px #fff5d9}#finished{position:absolute;left:50%;transform:translateX(-50%);bottom:26px;padding:20px;width:min(380px,calc(100vw - 24px));text-align:center}.tag{font:700 10px var(--mono);letter-spacing:1.5px;color:#6a7457}#finished h2{margin:5px 0}#finished p,.modalbody p{font-size:14px;margin:10px 0;color:#5d604b}.primary,.secondary{width:100%;height:39px;margin-top:9px;border:1px solid #546b46;background:#385745;color:#f6ebc2;font:600 14px system-ui}.secondary{border-color:#a89b73;color:#445037;background:#ece1c0}.sr{position:absolute;clip-path:inset(50%);width:1px;height:1px;overflow:hidden}dialog{width:min(430px,calc(100% - 28px));padding:0;max-height:80dvh}dialog::backdrop{background:#142b2599}.modalbody{padding:24px;position:relative}.modalbody h2{padding-right:28px}.modalbody #close{position:absolute;top:7px;right:8px;background:none;border:0;font-size:23px;color:#3e4b39;width:32px;height:32px}.modalbody ol{padding-left:20px}.modalbody li{margin:8px 0}.loglist{padding:0!important;list-style:none}.loglist li{display:flex;justify-content:space-between;padding:5px 0;border-bottom:1px solid #ccc09c}.loglist small,details{color:#656b50;font:12px var(--mono)}summary{cursor:pointer;padding:8px 0}
@media(max-width:860px){.scorebar{left:auto;right:var(--safe);bottom:auto;top:calc(max(16px,env(safe-area-inset-top)) + 59px)}}
@media(max-width:600px){:root{--safe:14px}header{top:max(12px,env(safe-area-inset-top))}.brand{font-size:29px}.brand canvas{width:26px;height:26px}.brand small{font-size:12px}nav{gap:5px}nav button{height:32px;min-width:32px;font-size:12px;padding:0 7px}.quest{top:calc(max(12px,env(safe-area-inset-top)) + 48px);width:min(284px,calc(100vw - 28px));padding:10px 12px}.quest h1{font-size:23px}.questTop{font-size:9px}.quillTag canvas{width:15px;height:15px}.rule{padding:3px 6px;font-size:11px}#steps{margin-top:8px}.scorebar{top:auto;right:auto;left:50%;transform:translateX(-50%);bottom:calc(max(22px,env(safe-area-inset-bottom)) + 65px);padding:4px 8px;font-size:10px;white-space:nowrap}.composing .scorebar,.ended .scorebar{display:none}.dock{bottom:calc(max(16px,env(safe-area-inset-bottom)) + var(--keyboard))}.composing .dock{bottom:calc(max(8px,env(safe-area-inset-bottom)) + var(--keyboard))}.dock:has(#celebrate:not(:empty)) ~ .scorebar{visibility:hidden}}
@media(max-height:500px) and (min-width:601px){.quest{width:245px;padding:9px 12px;top:57px}.quest h1{font-size:23px}.scorebar{top:auto;bottom:10px;left:12px;right:auto}.dock{left:auto;right:12px;transform:none;width:min(395px,50vw);bottom:calc(10px + var(--keyboard))}.rule{font-size:11px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
@media(max-width:600px){#world:has(#celebrate:not(:empty)) .scorebar{visibility:hidden}.scorebar{max-width:calc(100% - 18px)}}
@media(max-height:480px) and (max-width:600px){.keyboard-open .brand,.keyboard-open nav,.keyboard-open .scorebar{visibility:hidden}.keyboard-open .quest{top:5px;padding:5px 9px}.keyboard-open #steps{display:none}.keyboard-open .quest h1{font-size:19px}}

#clueFloat{position:relative;width:max-content;max-width:min(365px,96%);padding:9px 19px 8px;text-align:center;border:2px solid #e9cd80;background:#203b35;color:#fff4cc;box-shadow:0 3px #182e29,0 6px 18px #12282066;border-radius:6px;pointer-events:none}
#clueFloat:after{content:'';position:absolute;bottom:-6px;left:calc(50% - 4px);width:8px;height:8px;border:solid #e9cd80;border-width:0 2px 2px 0;transform:rotate(45deg);background:#203b35}
#clueFloat .floatLabel{display:block;font:700 10px/1.15 var(--mono);text-transform:uppercase;letter-spacing:1.7px;color:#f7cc76}
#clueFloat strong{display:block;margin:4px 0;font:bold clamp(19px,2.3vw,26px)/1.12 Georgia,serif;text-wrap:balance}
#clueFloat small{font:11px/1.2 var(--mono);color:#c0d6c2;display:block}
.rule.latest{box-shadow:inset 3px 0 #a2792e;border-color:#a88a49;padding-left:9px}
#celebrate:empty{display:none}
@media(max-width:600px){#world:has(#clueFloat:not([hidden])) .scorebar{visibility:hidden}#clueFloat{max-width:94%;padding:7px 13px}#clueFloat strong{font-size:20px}}

@media(max-width:600px){
 .keyboard-open .quest{max-height:calc(100dvh - var(--keyboard) - 225px);overflow:auto}
 .keyboard-open #clueFloat{padding:5px 12px}
 .keyboard-open #clueFloat strong{font-size:18px;margin:3px 0}
}

.quest{width:min(390px,calc(100vw - var(--safe)*2))}
#connection{font:600 12px/1.35 var(--mono);color:#57664b;margin:11px 0 0}
.quest h1{font-size:clamp(22px,2.15vw,30px);line-height:1.15;text-wrap:pretty}
.questFoot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px}
#topic{font:600 11px/1.25 var(--mono);color:#687151}
#skip{border:1px solid #b9ab85;padding:4px 9px;border-radius:4px;background:#f3e7c8;color:#454f37;font:700 12px/1.3 var(--mono)}
#skip:hover{background:#e4d9b5}
#round{white-space:nowrap}.quest[data-level="3"] #round{color:#925029}
#hintList{display:flex;flex-wrap:wrap;gap:5px}
.logentry{display:block}.logentry span{display:block;font:12px/1.35 system-ui;color:#65644f;margin-top:2px}
.journal-source{color:#476d59;font-size:12px}.modalbody li small{white-space:nowrap}
#clueFloat{max-width:min(450px,96%)}#clueFloat strong{font-size:clamp(17px,1.65vw,23px)}
@media(max-width:600px){.quest{width:min(340px,calc(100vw - 28px))}.quest h1{font-size:22px}.questFoot{margin-top:7px}#connection{font-size:11px;margin-top:7px}}
@media(max-height:500px) and (min-width:601px){.quest{width:min(350px,45vw);max-height:calc(100dvh - 108px);overflow:auto}}
@media(max-width:600px){.keyboard-open .quest{max-height:max(104px,calc(100dvh - var(--keyboard) - 162px))}.keyboard-open #clueFloat small{display:none}.keyboard-open #clueFloat strong{font-size:16px}}

#controls.sealed #word{color:#ffe599;background:#302d27;border-color:#f1c45e;outline:2px solid #f1c45e;outline-offset:-2px;text-shadow:0 0 8px #ffd57560}
#controls.sealed #feedback{color:#ffe08c}
#controls.sealed #plant{background:#ebcb84;border-color:#ffe39c;color:#493a19}
#skip:disabled{opacity:.65}

/* A stable clock above either form of the answer dock. */
#timers {
  display: flex;
  align-items: center;
  gap: 0;
  max-width: 100%;
  padding: 5px 3px;
  border: 1px solid #749495;
  border-radius: 6px;
  background: #112b32f5;
  box-shadow: 0 2px 0 #0a1e2966;
  color: #e8f5eb;
  pointer-events: none;
}
.clockCell {
  display: flex;
  align-items: baseline;
  gap: 5px;
  padding: 0 9px;
  white-space: nowrap;
  font: 700 13px/1.15 var(--mono);
}
.clockCell span {
  color: #b7cec6;
  font-size: 10px;
  font-weight: 600;
}
.clockCell + .clockCell {border-left: 1px solid #5e7976;}
.clockCell:has(> [hidden]) {display: none;}
#turnClock, #dailyClock {font-variant-numeric: tabular-nums;}
#turnClock {min-width: 3ch; text-align: right;}
#turnClock[data-low="true"] {color: #ffb99d;}
#lives {color: #ffb29d; letter-spacing: 1px;}
#entry {align-items: stretch; gap: 6px;}
#word, #correction {
  padding: 10px 11px;
  height: 44px;
  font: 16px/22px var(--mono);
}
#word {caret-color: #ffe599;}
#correction {
  display: none;
  position: absolute;
  inset: 0;
  overflow: hidden;
  white-space: pre;
  pointer-events: none;
  color: #ffe599;
  border: 1px solid transparent;
  text-shadow: 0 0 7px #ffd57538;
}
.inputwrap.correcting #word {color: transparent; -webkit-text-fill-color: transparent;}
.inputwrap.correcting #correction {display: block;}
#plant, #skip {
  min-height: 44px;
  padding: 0 10px;
  border-radius: 7px;
  white-space: nowrap;
}
#skip {
  color: #d5e6e8;
  background: #253c4b;
  border: 1px solid #70838b;
  font: 600 13px var(--mono);
}
#skip:hover {background: #365361;}
#feedback:empty {min-height: 0; margin: 0;}
#controls.urgent, #bubble.urgent {
  border-color: #ffb394;
  animation: clockPulse .95s ease-in-out infinite;
}
#bubble.urgent span {color: #ffc1a4;}
@keyframes clockPulse {
  0%, 100% {box-shadow: 0 0 0 1px #ff936a6b, 0 3px 18px #090e215c;}
  50% {box-shadow: 0 0 0 5px #ff936a80, 0 0 18px 2px #fa7c4a5c;}
}
body.ended #timers {display: none;}
@media(max-width: 700px) {
  #journal span {display: none;}
  .clockCell {padding: 0 8px;}
}
@media(max-width: 600px) {
  .scorebar {bottom: calc(max(16px,env(safe-area-inset-bottom)) + 108px);}
}
@media(max-width: 380px) {
  header {gap: 5px;}
  .brand {font-size: 24px; gap: 4px;}
  .brand canvas {width: 18px; height: 18px;}
  .brand small {font-size: 10px; margin-left: -3px;}
  nav {gap: 3px;}
  nav button {padding: 0 5px; min-width: 30px;}
  #entry {display: grid; grid-template-columns: 1fr 1fr;}
  .inputwrap {grid-column: 1 / -1;}
  #controls {padding-left: 11px; padding-right: 11px;}
  .keyboard-open #clueFloat {display: none;}
}
@media(max-height: 520px) and (max-width: 600px) {
  .composing #clueFloat {display: none;}
  .composing .dock {gap: 5px;}
}
@media(prefers-reduced-motion: reduce) {
  #controls.urgent, #bubble.urgent {box-shadow: 0 0 0 3px #ffb394;}
}
@media(max-width: 600px) {
  .keyboard-open.composing .quest {overflow: auto; max-height: max(80px,calc(100dvh - var(--keyboard) - 245px));}
  .keyboard-open.composing #clueFloat {display: none;}
}
@media(max-height: 410px) and (max-width: 600px) {
  .composing header {visibility: hidden;}
  .composing .quest {
    top: max(5px,env(safe-area-inset-top));
    max-height: calc(100dvh - var(--keyboard) - 215px);
    overflow: auto;
    padding: 6px 10px;
  }
  .composing .quest h1 {font-size: 19px;}
}

/* Gold badges use the same small, hard-edged sprites as the grove. */
.trophy-icon, .victory-crown {
  display: inline-block;
  flex: none;
  background: center / contain no-repeat;
  image-rendering: pixelated;
}
.trophy-icon {width: 20px; height: 20px; background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAPCAYAAADtc08vAAABLklEQVR42mNkQANZznL/GfCAaXsfMSLzWdA1T11cBOHwGUHoT+dQTYjt+49sCAuGrUgavz04w/Dp4Ru41IGjT1FcOW3vI0YWmK3fHpxhKK09hFMzMqhN0WLgkxdhYGA49J+JgYGB4duDMwzcVksY0f2HKwwkI3cwwgxnYmBgQLHp26VZDMQAmHeYpu19xNg85xrD8+Ue/xkYGBDewKLh8PWPDAwMDAzLc3T/H77+kWHa3keMjLiir7vZDu4yZM24opMBW3p4vtzj//Ic3f/40gYTPkMk7D0Y/KL08VqE1wB8UYnXgCxnuf/dzXYMXAomDAwMDAy2mvw4kzgzIc08CioMSrL/GH68+MAgzsvRcPr+x0a8eQEW+p8e7sCwzVaTn4GBQQ4zLyADXOkAFwAAw/STBIKhz2IAAAAASUVORK5CYII=);}
.victory-crown {width: 69px; height: 42px; background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABcAAAAOCAYAAADE84fzAAABYklEQVR42rVUr2/CQBh9kM0gTlWgeqgJ5FINoqYeWxyq/A2oJksICUEhFjxqaoZkI9uaDHVqArm0JANEVbPWIL4Jcl3LFZIm22cu933v3nfv3Q+gRDimTviPcEyd6NujMg2qZRokH/elNlQtIzcKwnL2Fck9beaYOu3mFsUrm3Zzi4rqZ+1zTJ3ilU2OqZNj6kTbidIsXtlE24lCnsVneQDgKit50GuCcQ397hgjtwXAIwAY9JpHz30BxjU5T2uJLzByW4iCMGddJbsDCWBcU3yuty0kvsgtZlxL8TLvztaYLjeVwtuSJZZzSXyuXpRXyGsNI5X2+bBDFISoNQwkvsCQOrCeGYbUSZVIZRJ7lny63FT63XG66DRelk+5cf+2QBSECMUBmnGtWJI70F+dt2BcoN42coq8XhZ0g8QXqDUMMH48h9f3L4VKId8/3oFxLfX40uOJgsXFx6SQu7P1n/1HP9J72DD/3ahdAAAAAElFTkSuQmCC);}
.nicknameForm {margin-top: 16px;}
.nicknameForm label {
  display: block;
  margin-bottom: 5px;
  font: 700 13px var(--mono);
  color: #354b37;
}
#nickname {
  display: block;
  width: 100%;
  height: 46px;
  padding: 8px 11px;
  border: 2px solid #758266;
  border-radius: 3px;
  background: #fff9e7;
  color: #243b31;
  font: 16px/1.3 var(--mono);
  box-shadow: inset 2px 2px #c8c8a755;
}
#nickname:focus-visible {outline: 2px solid #375d4e; outline-offset: 2px;}
#nickname[aria-invalid="true"] {border-color: #994632;}
.nicknameForm .nicknameHint, .nicknameForm .nicknameError {
  margin: 7px 0;
  font: 12px/1.45 var(--mono);
}
.nicknameHint {color: #586448;}
.nicknameForm .nicknameError {color: #8c3326; font-weight: 700;}
.nicknameError:empty, .boardStatus:empty, #victoryDetail:empty {display: none;}
.nicknameForm .primary, .nicknameForm .secondary {height: auto; min-height: 44px;}
#world.victory-on #finished {display: none;}
#victory {
  position: absolute;
  left: 50%;
  bottom: max(8%,calc(env(safe-area-inset-bottom) + 12px));
  transform: translateX(-50%);
  width: min(365px,calc(100% - 32px));
  max-height: calc(100% - 70px);
  overflow: auto;
  z-index: 2;
  padding: 14px 22px 16px;
  text-align: center;
  color: #fff0bf;
  background: linear-gradient(150deg,#263f3bf7,#192e38fa 62%);
  border: 2px solid #edca7b;
  box-shadow: inset 0 0 0 2px #685b3a,0 4px 0 #18272a99,0 8px 32px #121a3255;
  animation: victoryArrives .45s cubic-bezier(.2,.75,.25,1) both;
}
#victory h2 {margin: 3px 0; color: #ffe197; font-size: clamp(24px,4vw,32px); line-height: 1.05;}
#victoryDetail {margin: 8px 0; font: 600 13px/1.4 var(--mono); overflow-wrap: anywhere;}
@keyframes victoryArrives {
  from {transform: translate(-50%,10px); opacity: .3;}
  to {transform: translate(-50%,0); opacity: 1;}
}
@media(max-width: 380px) {
  header {left: 9px; right: 9px;}
  .brand {font-size: 22px;}
  nav button {min-width: 28px; padding-inline: 4px;}
  #goHome {font-size: 11px;}
  .modalbody {padding: 20px 16px;}
}
@media(max-height: 480px) {
  #finished {bottom: 9px; max-height: calc(100dvh - 55px); overflow: auto; padding-block: 10px;}
  #victory {bottom: max(env(safe-area-inset-bottom),10px); padding: 7px 14px 10px;}
  .victory-crown {width: 46px; height: 28px;}
  .nicknameForm {margin-top: 10px;}
  dialog:has(#nickname) {max-height: min(89dvh,calc(100dvh - var(--keyboard) - 16px));}
}
@media(max-width: 600px) {
  .keyboard-open dialog:has(#nickname) {
    position: fixed;
    inset: max(8px,env(safe-area-inset-top)) auto auto 50%;
    transform: translateX(-50%);
    margin: 0;
    max-height: calc(100dvh - var(--keyboard) - max(20px,env(safe-area-inset-top)));
    overflow-y: auto;
  }
}
