.shell{min-height:100%;padding:0 env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);flex-direction:column;display:flex}.topbar{padding:calc(.625rem + env(safe-area-inset-top)) 3vw .625rem;background:var(--surface);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:.75rem;display:flex}.topbar .btn{white-space:nowrap}@media (max-width:600px){.topbar .btn{min-height:3.25rem;padding:.5rem .875rem;font-size:1.0625rem}}@media (max-height:500px){.topbar{padding-top:calc(.25rem + env(safe-area-inset-top));padding-bottom:.25rem}.topbar .btn{min-height:3.25rem;padding:.375rem 1rem;font-size:1.125rem}}.brand{letter-spacing:.07em;font-size:max(1.125rem,min(2.2vw,1.875rem));font-weight:900}.shell-main{flex-direction:column;flex:1;display:flex}.home{width:100%;max-width:75rem;margin:0 auto;padding:5vh 1.5rem}.home h1{margin:0 0 .5rem;font-size:max(2rem,min(4.5vw,3.75rem))}.home>p{font-size:max(1.25rem,min(1.8vw,1.625rem))}.muted{color:var(--muted)}.cards{grid-template-columns:repeat(auto-fill,minmax(20rem,1fr));gap:1.25rem;margin-top:2rem;display:grid}.card{border:2px solid var(--border);border-top:.5rem solid var(--accent);min-height:9.375rem;color:var(--text);text-align:left;cursor:pointer;touch-action:manipulation;background:linear-gradient(145deg,#163254,#0d213b);border-radius:1.5rem;flex-direction:column;gap:.625rem;padding:1.75rem;font-size:1.25rem;text-decoration:none;display:flex}.card strong{font-size:max(1.5rem,min(2.4vw,2rem))}.card:active{transform:scale(.98)}.loading{color:var(--muted);margin:auto;font-size:1.75rem}:root{--bg:#081426;--surface:#102743;--surface-2:#173c62;--border:#385477;--text:#f6f8ff;--muted:#aec1d8;--alfa:#62d8ff;--beta:#ffc46a;--bridge:#9be88f;--ok:#54df9b;--bad:#ff8c8c;--radius:1.125rem;--touch:4.5rem;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;font-size:16px}@media (max-width:600px),(max-height:500px){html{font-size:14px}:root{--touch:3.5rem}}@media (min-width:2400px) and (min-height:1300px){html{font-size:21px}}@media (min-width:3200px) and (min-height:1800px){html{font-size:32px}}html,body,#root{height:100%}body{background:var(--bg);color:var(--text);-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;margin:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}button{font:inherit;color:inherit;touch-action:manipulation}@media (hover:hover){.btn:hover:not(:disabled){filter:brightness(1.15)}}.btn{min-height:var(--touch);min-width:var(--touch);border-radius:var(--radius);border:2px solid var(--border);background:var(--surface-2);cursor:pointer;padding:1rem 1.75rem;font-size:1.375rem;font-weight:700}.btn:active:not(:disabled){transform:scale(.97)}.btn:disabled{opacity:.45;cursor:default}.btn-primary{background:var(--accent,var(--alfa));color:#07182c;border-color:#0000}.btn-ghost{background:0 0}.hold-btn{position:relative;overflow:hidden}.hold-fill{transform-origin:0;background:color-mix(in srgb, var(--bad) 45%, transparent);position:absolute;top:0;bottom:0;left:0;right:0;transform:scaleX(0)}.hold-btn.is-holding .hold-fill{transition:transform var(--hold-ms) linear;transform:scaleX(1)}.hold-label{position:relative}
