:root { --lna-ink:#18324a; --lna-blue:#2563eb; --lna-bg:#f3f7fb; --lna-line:#d9e3ec; --lna-danger:#b42318; }
.lna-app { box-sizing:border-box; max-width:920px; margin:2rem auto; padding:clamp(1rem,4vw,2.5rem); color:var(--lna-ink); font-family:system-ui,-apple-system,"Segoe UI",sans-serif; background:var(--lna-bg); border-radius:24px; }
.lna-app * { box-sizing:border-box; }
.lna-card { padding:clamp(1.25rem,5vw,3.5rem); background:#fff; border:1px solid var(--lna-line); border-radius:20px; box-shadow:0 12px 36px rgba(24,50,74,.08); }
.lna-card h1 { margin:.25rem 0 1rem; font-size:clamp(2rem,5vw,3.4rem); line-height:1.05; }
.lna-card p { font-size:clamp(1.05rem,2vw,1.3rem); line-height:1.6; }
.lna-kicker { margin:0; color:var(--lna-blue); font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.lna-app label { display:block; margin:1.5rem 0 .5rem; font-size:1.1rem; font-weight:750; }
.lna-app input { width:100%; min-height:58px; padding:.8rem 1rem; font-size:1.25rem; border:2px solid #94a3b8; border-radius:12px; }
.lna-app input:focus, .lna-app button:focus-visible { outline:4px solid #fbbf24; outline-offset:3px; }
.lna-app button { min-height:58px; margin-top:1.25rem; padding:.8rem 1.5rem; color:#fff; font-size:1.15rem; font-weight:800; background:var(--lna-blue); border:0; border-radius:12px; cursor:pointer; }
.lna-app button:disabled { opacity:.55; cursor:wait; }
.lna-progress { display:flex; justify-content:space-between; gap:1rem; font-weight:700; }
.lna-app progress { width:100%; height:14px; margin:1rem 0 2rem; accent-color:var(--lna-blue); }
.lna-time,.lna-notice { margin-top:1.25rem; padding:1rem 1.2rem; border-radius:12px; }
.lna-time { font-weight:750; background:#eff6ff; }
.lna-notice { background:#fff7ed; border:1px solid #fed7aa; }
.lna-error { min-height:1.5em; color:var(--lna-danger); font-weight:700; }
.lna-questions { display:grid; gap:1.5rem; margin-top:1.5rem; }
.lna-question { padding:1.25rem; border:2px solid var(--lna-line); border-radius:16px; }
.lna-question legend { width:100%; padding:0 .4rem; font-size:1.2rem; font-weight:650; line-height:1.5; }
.lna-question legend > span { display:block; margin-bottom:.5rem; color:var(--lna-blue); font-size:.9rem; text-transform:uppercase; }
.lna-options { display:grid; gap:.75rem; margin-top:1rem; }
.lna-options label { display:flex; align-items:center; gap:.8rem; min-height:54px; margin:0; padding:.7rem 1rem; background:#f8fafc; border:2px solid var(--lna-line); border-radius:12px; cursor:pointer; }
.lna-options input { width:24px; min-height:24px; margin:0; }
.lna-options label:has(input:checked) { background:#eff6ff; border-color:var(--lna-blue); }
.lna-save-state { min-height:1.3em; margin:.6rem 0 0 !important; font-size:.9rem !important; }
.lna-equivalences { margin:1rem 0; padding:1rem; background:#f8fafc; border:1px solid var(--lna-line); border-radius:12px; }
.lna-equivalences summary { font-weight:750; cursor:pointer; }
@media (max-width:600px) { .lna-app { margin:0; border-radius:0; min-height:100vh; } .lna-progress { flex-direction:column; gap:.25rem; } .lna-app button { width:100%; } }
@media (prefers-reduced-motion:reduce) { .lna-app * { scroll-behavior:auto !important; transition:none !important; } }
