:root{--page:#fbfbfc;--surface:#fff;--border:#d8dade;--text:#16181d;--text-soft:#5b6069;--accent:#1f4ed8;--accent-text:#fff;--danger:#a4262c;--ok:#10663d;--radius:10px;--shadow:0 1px 2px #1012170f, 0 6px 20px #1012170d}@media (prefers-color-scheme:dark){:root{--page:#101216;--surface:#191c22;--border:#2f343d;--text:#f2f3f5;--text-soft:#a5abb6;--accent:#6f9bff;--accent-text:#0b0d11;--danger:#ff8d8d;--ok:#6ede9f;--shadow:none}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--page);color:var(--text);overflow-wrap:break-word;margin:0;padding:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:16px;line-height:1.55}h1,h2,h3{margin:0 0 .5rem;line-height:1.2}p{margin:0 0 1rem}.page{width:100%;max-width:44rem;margin:0 auto;padding:2rem 1rem 4rem}.page--wide{max-width:56rem}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.25rem}.card+.card{margin-top:1rem}.lede{color:var(--text-soft);margin-bottom:1.5rem}.field{margin-bottom:1rem;display:block}.field__label{margin-bottom:.35rem;font-weight:600;display:block}.field__hint{color:var(--text-soft);margin-bottom:.5rem;font-size:.875rem;display:block}input[type=text],input[type=email],input[type=password]{width:100%;min-height:3rem;font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:.65rem .75rem}input:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid var(--accent);outline-offset:2px}button{font:inherit;border-radius:var(--radius);cursor:pointer;border:1px solid #0000;min-height:3rem;padding:.65rem 1.25rem}button[disabled]{cursor:not-allowed;opacity:.6}.button--primary{background:var(--accent);color:var(--accent-text);width:100%;font-weight:600}.button--secondary{background:var(--surface);color:var(--text);border-color:var(--border)}.button--danger{background:var(--surface);color:var(--danger);border-color:var(--danger);font-weight:600}.button--link{color:var(--text-soft);background:0 0;border:none;width:auto;min-height:auto;padding:.5rem 0;text-decoration:underline}.status-message{color:var(--danger);margin:0 0 1rem;font-weight:600}.loading{color:var(--text-soft)}.result__name{margin-bottom:.25rem;font-size:clamp(1.75rem,7vw,2.5rem)}.result__note{color:var(--text-soft);font-size:.95rem}.control__header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.75rem;margin-bottom:1rem;display:flex}.control__title{color:var(--text-soft);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:1.1rem;font-weight:600}.state{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.state__badge{letter-spacing:.06em;border:2px solid;border-radius:999px;padding:.4rem .9rem;font-size:1rem;font-weight:700;display:inline-block}.state__badge[data-tone=idle]{color:var(--text-soft)}.state__badge[data-tone=waiting]{color:var(--accent)}.state__badge[data-tone=ready]{color:var(--ok)}.state__badge[data-tone=alert]{color:var(--danger)}.state__countdown{font-variant-numeric:tabular-nums;font-size:1.5rem;font-weight:700}.state__explanation{color:var(--text-soft);margin:.75rem 0 0}.peek{flex-direction:column;justify-content:center;min-height:9rem;margin-top:1rem;display:flex}.peek__current{letter-spacing:-.01em;margin:0;font-size:clamp(2.5rem,14vw,5rem);font-weight:800;line-height:1.1}.peek__empty{color:var(--text-soft);margin:0;font-size:1.1rem}.peek__previous{color:var(--text-soft);margin:.75rem 0 0;font-size:1.1rem}.peek__previous strong{color:var(--text);font-weight:600}.actions{grid-template-columns:1fr;gap:.75rem;margin-top:1rem;display:grid}@media (min-width:30rem){.actions{grid-template-columns:repeat(3,1fr)}.actions button{width:100%}}.footer-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-top:1.5rem;display:flex}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
