:root { color-scheme: dark; --bg:#07111f; --card:#101d31; --line:#244466; --text:#e9f3ff; --muted:#9bb3ca; --accent:#29e0a9; }
* { box-sizing: border-box; }
body { margin:0; background:radial-gradient(circle at top left,#123b5b,var(--bg) 40%); color:var(--text); font-family:Inter,system-ui,sans-serif; }
a { color:var(--accent); text-decoration:none; }
.site-header { display:flex; justify-content:space-between; align-items:center; padding:20px 6vw; border-bottom:1px solid var(--line); position:sticky; top:0; backdrop-filter:blur(16px); background:rgba(7,17,31,.82); }
.brand { display:inline-flex; align-items:center; }
.brand img { display:block; height:46px; max-width:220px; }
nav { display:flex; gap:18px; align-items:center; flex-wrap:wrap; }
nav form { display:inline; }
button,.button { background:linear-gradient(135deg,var(--accent),#3c8cff); border:0; border-radius:12px; color:#06101f; cursor:pointer; font-weight:800; padding:12px 18px; }
main { padding:0 6vw 48px; }
.hero { min-height:64vh; display:grid; align-items:center; max-width:980px; }
h1 { font-size:clamp(36px,7vw,76px); line-height:.95; margin:14px 0; }
h2 { font-size:34px; margin-top:56px; }
.eyebrow,.hint { color:var(--muted); }
.lookup { display:flex; gap:12px; margin:26px 0; }
input,select { width:100%; background:#07111f; border:1px solid var(--line); border-radius:12px; color:var(--text); padding:12px 14px; }
.lookup input { max-width:520px; }
.result { background:#030915; border:1px solid var(--line); border-radius:16px; overflow:auto; padding:18px; }
.cards,.grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:18px; }
.grid.two { grid-template-columns:repeat(auto-fit,minmax(320px,1fr)); }
.card,.panel,.auth { background:rgba(16,29,49,.9); border:1px solid var(--line); border-radius:22px; padding:24px; box-shadow:0 20px 60px rgba(0,0,0,.25); }
.price { color:var(--accent); font-size:24px; font-weight:800; }
.options { display:grid; gap:14px; max-width:720px; }
table { border-collapse:collapse; width:100%; }
th,td { border-bottom:1px solid var(--line); padding:12px; text-align:left; }
.message { margin:18px 6vw; background:#173a2f; border:1px solid var(--accent); border-radius:12px; padding:14px; }
footer { border-top:1px solid var(--line); color:var(--muted); display:flex; gap:18px; flex-wrap:wrap; padding:28px 6vw; }
@media (max-width:700px) { .site-header,.lookup { align-items:flex-start; flex-direction:column; } }
