
:root{
  --bg:#f8fafc;--surface:#fff;--surface2:#f1f5f9;--ink:#0f172a;--muted:#334155;--line:#cbd5e1;
  --red:#c1121f;--red2:#9f1239;--blue:#2563eb;--teal:#0f766e;--amber:#a16207;--purple:#7c3aed;
  --shadow:0 18px 45px rgba(15,23,42,.12);--soft:0 10px 30px rgba(15,23,42,.08);--radius:26px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;line-height:1.45}
a{color:inherit}
.skip:not(:focus){position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.skip:focus{position:fixed;z-index:99;left:1rem;top:1rem;background:#fff;border:2px solid var(--red);border-radius:12px;padding:.75rem 1rem}
.app{max-width:1240px;margin:auto;padding:clamp(.75rem,2vw,1.5rem) clamp(.75rem,2vw,1.75rem) calc(5.6rem + env(safe-area-inset-bottom))}
.home{min-height:100svh;display:grid;align-content:center;gap:1rem}
.hero{text-align:center;max-width:860px;margin:auto}
.logo{display:block;width:min(520px,86vw);height:auto;margin:.25rem auto .45rem}
.kicker{margin:0 0 .35rem;color:var(--red2);text-transform:uppercase;letter-spacing:.13em;font-weight:950;font-size:.78rem}
h1,h2,h3{line-height:1.02;letter-spacing:-.04em;margin:.2rem 0 .55rem}
h1{font-size:clamp(2.2rem,7vw,5.2rem)}
h2{font-size:clamp(1.8rem,4.5vw,3.3rem)}
h3{font-size:clamp(1.3rem,3.5vw,2.1rem)}
p{color:var(--muted);font-weight:650}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.grid{display:grid;gap:1rem}
.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.card,.tile{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--soft);padding:clamp(1rem,2vw,1.5rem);text-decoration:none;display:block}
.tile{min-height:150px;display:flex;flex-direction:column;justify-content:space-between;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}
.tile:hover,.tile:focus-visible{transform:translateY(-2px);box-shadow:var(--shadow);border-color:var(--red)}
.tile:active,.pressed{transform:translateY(2px) scale(.985)!important;box-shadow:inset 0 3px 10px rgba(15,23,42,.22),0 2px 8px rgba(15,23,42,.08)!important}
.quick{background:linear-gradient(135deg,#fff,#fff1f2)}
.learn{background:linear-gradient(135deg,#fff,#eff6ff)}
.calcs{background:linear-gradient(135deg,#fff,#fff7ed)}
.rescue{background:linear-gradient(135deg,#fff,#fff1f2)}
.video{background:linear-gradient(135deg,#fff,#ecfeff)}
.decks{background:linear-gradient(135deg,#fff,#f5f3ff)}
small{display:block;color:var(--muted);font-weight:750;font-size:.95rem}
.navbar{position:sticky;top:0;z-index:20;background:rgba(248,250,252,.96);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);display:grid;grid-template-columns:repeat(4,1fr);gap:.4rem;padding:.45rem;max-width:860px;margin:0 auto 1rem;border-radius:0 0 20px 20px}
.navbar a,.navbar button{appearance:none;background:#fff;color:var(--ink);border:1px solid #94a3b8;border-radius:999px;text-decoration:none;font-weight:900;padding:.62rem .75rem;text-align:center}
.bottom{position:fixed;z-index:30;left:50%;bottom:calc(.7rem + env(safe-area-inset-bottom));transform:translateX(-50%);display:grid;grid-template-columns:repeat(5,1fr);gap:.1rem;width:min(520px,calc(100vw - 1rem));background:rgba(255,255,255,.96);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:24px;padding:.4rem}
.bottom a{text-align:center;text-decoration:none;font-weight:900;color:#334155;border-radius:16px;padding:.45rem .25rem}
.bottom a[aria-current="page"]{background:#fff1f2;color:var(--red2)}
.actions{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1rem}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;text-decoration:none;font-weight:950;border-radius:999px;border:1px solid var(--red);background:var(--red);color:#fff;padding:.8rem 1rem}
.btn.secondary{background:#fff;color:var(--ink);border-color:#94a3b8}
.check{display:grid;gap:.65rem}
.check label{display:flex;gap:.65rem;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:16px;padding:.8rem;font-weight:800}
input,select{width:100%;padding:.8rem;border-radius:14px;border:1px solid #94a3b8;background:#fff;color:var(--ink);font:inherit}
.formgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.75rem}
.output{margin-top:1rem;background:#f8fafc;border:1px solid var(--line);border-radius:18px;padding:1rem}
.calc-keys{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem}
.calc-keys button{min-height:3.2rem;border:1px solid #94a3b8;border-radius:16px;background:#fff;font-size:1.2rem;font-weight:950}
.calc-display{font-size:1.4rem;text-align:right;font-weight:900}
.video-frame{aspect-ratio:16/9;border-radius:22px;border:1px solid #1f2937;background:#0b0d10;color:#fff;display:grid;place-items:center;text-align:center;padding:1rem;cursor:pointer}
iframe{width:100%;height:100%;border:0;border-radius:22px}
.notice{font-size:.92rem;color:#475569;margin-top:1rem}
@media(max-width:720px){.grid-2,.grid-3{grid-template-columns:1fr}.tile{min-height:126px}.navbar{grid-template-columns:repeat(4,1fr);font-size:.9rem}.hero p{font-size:.92rem}}
@media(prefers-color-scheme:dark){
  :root{--bg:#080a0d;--surface:#111827;--surface2:#1f2937;--ink:#f8fafc;--muted:#dbe4ef;--line:#64748b}
  .navbar,.bottom{background:rgba(8,10,13,.94)}.navbar a,.navbar button,.card,.tile,input,select,.calc-keys button{background:#111827;color:#f8fafc}.btn.secondary{background:#111827;color:#f8fafc}
}
