
:root { --bg: #f8fafc; --card: #fff; --muted:#64748b; --border:#e2e8f0; --fg:#0f172a; }
*{box-sizing:border-box} body{margin:0;background:linear-gradient(#fff,var(--bg));font-family:Inter,system-ui,Segoe UI,Roboto,Arial,sans-serif;color:#0f172a}
.container{max-width:1200px;margin:0 auto;padding:24px}
h1{font-size:clamp(24px,4vw,36px);margin:0 0 6px}
.subtitle{color:#64748b;margin:0 0 20px}
.card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 2px 8px rgba(2,6,23,.04)}
.card .body{padding:24px}
.grid{display:grid;gap:24px}
@media(min-width:980px){.grid{grid-template-columns:1fr 1fr}}
.label{font-weight:600;font-size:14px;color:#334155;margin-bottom:6px}
.input, select{border:1px solid #e2e8f0;border-radius:12px;padding:8px 12px;background:#fff}
.badge{display:inline-block;border:1px solid #e2e8f0;background:#f8fafc;border-radius:10px;padding:4px 8px;font-size:12px;color:#334155}
.badge.warn{background:#fffbeb;border-color:#fde68a;color:#92400e}
.btn{border:1px solid #e2e8f0;background:#fff;border-radius:12px;padding:8px 12px;cursor:pointer}
.btn.primary{background:#0f172a;color:#fff;border-color:#0f172a}
.small{font-size:12px;color:#475569}
.result{font-size:40px;font-weight:800;letter-spacing:-.02em}
img.hero{width:100%;height:auto;border-radius:14px;border:1px solid #e2e8f0}
footer{color:#94a3b8;font-size:12px;margin:32px 0 8px}
.title-center{font-weight:700;text-align:center}
.acks{display:grid;gap:16px;align-items:center;justify-items:center;margin-top:16px}
@media(min-width:700px){.acks{grid-template-columns:repeat(4,1fr)}}
.logo{max-height:80px; width:auto; object-fit:contain}
.header-center{text-align:center}
.header-icon{max-height:100px; margin-bottom:12px}
