:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#f8fbff;background:#10233b;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0;overflow:hidden}body{min-width:320px;background:#10233b}button,input,select{font:inherit}#app{position:relative}#game-container{position:absolute;inset:0}#game-container canvas{display:block;width:100%;height:100%}.hud{position:absolute;z-index:10;top:0;left:0;right:0;display:grid;grid-template-columns:repeat(6,minmax(54px,1fr)) minmax(120px,1.55fr) auto auto;gap:7px;align-items:stretch;padding:10px;pointer-events:none;background:linear-gradient(180deg,rgba(8,20,35,.94),rgba(8,20,35,.66),transparent);transition:opacity .15s ease}.hud--hidden{opacity:0;visibility:hidden}.hud__metric{display:flex;min-width:0;flex-direction:column;justify-content:center;padding:7px 9px;border:1px solid rgba(255,255,255,.17);border-radius:10px;background:#051422b8;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.hud__metric span{overflow:hidden;color:#bcd0df;font-size:.64rem;letter-spacing:.06em;text-overflow:ellipsis;text-transform:uppercase}.hud__metric strong{overflow:hidden;font-size:clamp(.9rem,1.8vw,1.25rem);line-height:1.1;text-overflow:ellipsis;white-space:nowrap}.hud__metric--effect strong{font-size:clamp(.72rem,1.15vw,.95rem);letter-spacing:-.025em}.hud__button{align-self:center;min-height:42px;padding:0 13px;border:1px solid rgba(255,255,255,.3);border-radius:10px;color:#fff;background:#051422d1;cursor:pointer;pointer-events:auto}.hud__button:hover,.hud__button:focus-visible{background:#23465cf2}.hud__level{grid-column:1 / -1;display:grid;grid-template-columns:minmax(150px,auto) minmax(0,1fr);gap:10px;align-items:center;min-width:0;padding:6px 10px;border:1px solid rgba(142,234,242,.35);border-radius:10px;color:#eef8ff;background:#051422cc;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.hud__level--hidden{display:none}.hud__level strong{overflow:hidden;color:#8eeaf2;font-size:.72rem;letter-spacing:.04em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.hud__level span{overflow:hidden;color:#dcecf5;font-size:.7rem;line-height:1.25;text-align:right;text-overflow:ellipsis;white-space:nowrap}.menu-profile{position:absolute;z-index:15;top:10px;right:10px;display:grid;width:min(320px,calc(100% - 20px));gap:7px;padding:10px;border:1px solid rgba(255,255,255,.42);border-radius:12px;color:#f7fbff;background:#051422e0;box-shadow:0 12px 32px #00000042;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:opacity .14s ease,transform .14s ease}.menu-profile--hidden{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-8px)}.menu-profile__field{display:grid;gap:4px}.menu-profile__field span{font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.menu-profile__field input,.menu-profile__field select{min-width:0;padding:7px 9px;border:1px solid rgba(255,255,255,.36);border-radius:7px;color:#10233b;background:#fff}.menu-profile__toggle{display:flex;gap:7px;align-items:center;font-size:.78rem;cursor:pointer}.menu-profile__keyboard{margin-top:2px;padding-top:7px;border-top:1px solid rgba(255,255,255,.2)}.menu-profile__keyboard summary{display:flex;justify-content:space-between;gap:8px;align-items:center;cursor:pointer;font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.menu-profile__keyboard summary strong{overflow:hidden;color:#8eeaf2;font-size:.7rem;text-overflow:ellipsis;white-space:nowrap}.menu-profile__keyboard[open] summary{margin-bottom:9px}.menu-profile__field--keyboard{margin-bottom:8px}.menu-profile__groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px 8px}.menu-profile__message{min-height:2.2em;margin:8px 0 0;color:#bcd0df;font-size:.68rem;line-height:1.35}.menu-profile input:focus-visible,.menu-profile select:focus-visible,.menu-profile summary:focus-visible,.hud__button:focus-visible{outline:3px solid #ffd166;outline-offset:2px}.game-message{position:absolute;z-index:20;left:50%;bottom:12px;max-width:calc(100% - 24px);margin:0;padding:7px 12px;border-radius:999px;color:#fff;background:#051422d1;font-size:.82rem;opacity:0;pointer-events:none;transform:translate(-50%);transition:opacity .12s ease}.game-message--visible{opacity:1}.a11y-high-contrast .hud,.a11y-high-contrast .menu-profile,.a11y-high-contrast .game-message{color:#fff;background:#000}.a11y-high-contrast .hud__metric,.a11y-high-contrast .hud__button,.a11y-high-contrast .hud__level,.a11y-high-contrast .menu-profile{border-color:#fff;background:#000}.a11y-high-contrast .hud__metric span,.a11y-high-contrast .hud__level strong,.a11y-high-contrast .hud__level span,.a11y-high-contrast .menu-profile__message{color:#fff}.a11y-high-contrast .menu-profile__keyboard summary strong{color:#fff}.a11y-reduced-motion *,.a11y-reduced-motion *:before,.a11y-reduced-motion *:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}@media(max-width:930px){.hud{grid-template-columns:repeat(5,minmax(52px,1fr)) auto auto;gap:5px;padding:6px}.hud__metric--optional{display:none}.hud__button{min-height:38px;padding:0 9px}}@media(max-width:560px){.hud{grid-template-columns:repeat(5,minmax(43px,1fr)) auto}#export-results-button{position:absolute;top:66px;right:7px}.hud__level{grid-template-columns:minmax(0,1fr);gap:3px;padding:5px 8px}.hud__level strong{font-size:.66rem;text-align:center}.hud__level span{overflow:visible;font-size:.62rem;text-align:center;text-overflow:clip;white-space:normal}.menu-profile{top:6px;right:6px;left:6px;width:auto;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px 7px;padding:7px 9px;max-height:calc(100% - 12px);overflow-y:auto}.menu-profile__field{grid-column:1 / -1;grid-template-columns:auto minmax(0,1fr);align-items:center}.menu-profile__field span{font-size:.62rem}.menu-profile__field input,.menu-profile__field select{padding:5px 7px}.menu-profile__toggle{justify-content:center;gap:4px;font-size:.62rem;white-space:nowrap}.menu-profile__keyboard{grid-column:1 / -1}.menu-profile__keyboard summary{font-size:.64rem}.menu-profile__groups{grid-template-columns:repeat(5,minmax(0,1fr))}.menu-profile__field--keyboard{grid-template-columns:minmax(0,1fr);align-items:stretch}.menu-profile__field--keyboard span{display:none}}.menu-profile__quick-keyboard{display:grid;gap:6px;margin-top:2px;padding:8px;border:1px solid rgba(142,234,242,.34);border-radius:9px;background:#102a40b8}.menu-profile__quick-label{color:#eef8ff;font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.menu-profile__quick-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.menu-profile__quick-actions button{min-width:0;padding:7px 5px;border:1px solid rgba(255,255,255,.34);border-radius:7px;color:#e8f7ff;background:#051422d1;font-size:.66rem;font-weight:800;line-height:1.15;cursor:pointer}.menu-profile__quick-actions button:hover,.menu-profile__quick-actions button:focus-visible{border-color:#ffd166;background:#274e67;outline:2px solid #ffd166;outline-offset:1px}.menu-profile__quick-actions .menu-profile__quick-button--active{border-color:#8eeaf2;color:#10233b;background:#8eeaf2;box-shadow:0 0 0 1px #8eeaf252}.menu-profile__quick-keyboard small{color:#bcd0df;font-size:.62rem;line-height:1.3}.menu-profile__keyboard summary,.menu-profile__keyboard summary strong{min-width:0}.menu-profile__keyboard summary strong{max-width:72%}.menu-profile__calibration{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;align-items:center;margin:2px 0 8px}.menu-profile__calibration button{padding:7px 10px;border:1px solid rgba(255,255,255,.36);border-radius:7px;color:#10233b;background:#8eeaf2;font-weight:800;cursor:pointer}.menu-profile__calibration button:hover,.menu-profile__calibration button:focus-visible{background:#ffd166}.menu-profile__calibration span{min-width:0;color:#bcd0df;font-size:.68rem;line-height:1.3}.menu-profile__calibration--active button{color:#fff;background:#9b2c2c}.a11y-high-contrast .menu-profile__quick-keyboard,.a11y-high-contrast .menu-profile__quick-actions button{border-color:#fff;color:#fff;background:#000}.a11y-high-contrast .menu-profile__quick-actions .menu-profile__quick-button--active{color:#000;background:#fff}.a11y-high-contrast .menu-profile__quick-keyboard small{color:#fff}@media(max-width:560px){.menu-profile__quick-keyboard{grid-column:1 / -1;padding:6px}.menu-profile__quick-label,.menu-profile__quick-keyboard small{text-align:center}.menu-profile__quick-actions button{padding:6px 4px;font-size:.6rem}.menu-profile__keyboard summary strong{max-width:76%}.menu-profile__calibration{grid-template-columns:minmax(0,1fr)}.menu-profile__calibration span{text-align:center}}
