:root{color:#1a2332;--brand:#1e6ba8;--brand-dark:#154a78;--surface:#fff;--muted:#5a6578;--border:#c8d4e4;--hero-tint:linear-gradient(160deg, #e8f1fb 0%, #f5f7fb 45%, #f0f4fa 100%);background:#f0f4fa;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,sans-serif;line-height:1.5}body{margin:0}#root{min-height:100vh}.layout{max-width:920px;margin:0 auto;padding:2rem 1.25rem 3rem}.hero-band{background:var(--hero-tint);border:1px solid var(--border);border-radius:16px;margin-bottom:2rem;padding:2rem 1.5rem}.hero-band h1{color:#0f172a;margin:0 0 .5rem;font-size:1.85rem;line-height:1.2}.lead{color:var(--muted);max-width:36rem;margin:0 0 1.25rem;font-size:1.1rem}.hero-actions{flex-wrap:wrap;gap:.75rem;margin-bottom:.5rem;display:flex}.btn-primary{background:var(--brand);color:#fff;font:inherit;cursor:pointer;border:none;border-radius:10px;padding:.65rem 1.25rem;font-weight:600}.btn-primary:hover{background:var(--brand-dark)}.btn-secondary{border:1px solid var(--border);background:var(--surface);color:var(--brand);font:inherit;cursor:pointer;border-radius:10px;padding:.65rem 1.25rem;font-weight:600}.btn-secondary:hover{background:#f8fafc}.hero-grid{gap:1.75rem;display:grid}@media (width>=880px){.hero-grid{grid-template-columns:1fr minmax(300px,340px);align-items:start}}.details-block{margin-bottom:1.5rem}.details-block summary{cursor:pointer;color:var(--brand);padding:.5rem 0;font-weight:600;list-style:none}.details-block summary::-webkit-details-marker{display:none}.details-block[open] summary{margin-bottom:.5rem}.details-block ul{color:var(--muted);margin:0;padding-left:1.2rem}.details-block li{margin-bottom:.35rem}.auth-card,.cta-card{border:1px solid var(--border);background:var(--surface);border-radius:14px;padding:1.1rem 1.15rem;box-shadow:0 4px 20px #0f172a0f}.cta-body{color:var(--muted);margin:0 0 .25rem;font-size:.95rem;line-height:1.5}.btn-link{color:var(--brand);font:inherit;cursor:pointer;text-align:center;background:0 0;border:none;width:100%;margin-top:.9rem;padding:.4rem .2rem;font-weight:500;display:block}.btn-link:hover{text-decoration:underline}.device-note{color:var(--muted);max-width:36rem;margin:.4rem 0 0;font-size:.85rem;line-height:1.5}.tabs{gap:.5rem;margin-bottom:.85rem;display:flex}.tabs button{border:1px solid var(--border);cursor:pointer;font:inherit;background:#f8fafc;border-radius:8px;flex:1;padding:.5rem}.tabs button.active{background:var(--brand);color:#fff;border-color:var(--brand)}label{color:var(--muted);margin-bottom:.2rem;font-size:.82rem;display:block}input{box-sizing:border-box;border:1px solid var(--border);width:100%;font:inherit;background:#fff;border-radius:8px;margin-bottom:.65rem;padding:.5rem .55rem}.actions{margin-top:.5rem}.actions button{background:var(--brand);color:#fff;width:100%;font:inherit;cursor:pointer;border:none;border-radius:10px;padding:.6rem;font-weight:600}.actions button:disabled{opacity:.6;cursor:not-allowed}.error{color:#b3261e;margin-bottom:.5rem;font-size:.9rem}.success{color:#1b3320;background:#e8f5e9;border-radius:8px;padding:.75rem;font-size:.95rem}.trust{color:var(--muted);margin-top:.75rem;font-size:.86rem;line-height:1.45}.pill-row{flex-wrap:wrap;gap:.5rem;margin-top:1rem;display:flex}.pill{color:var(--brand-dark);background:#e8f1fb;border:1px solid #c5d8ef;border-radius:999px;padding:.35rem .65rem;font-size:.8rem}footer{color:var(--muted);border-top:1px solid var(--border);margin-top:2.5rem;padding-top:1rem;font-size:.85rem}.google-slot{justify-content:center;min-height:42px;margin-bottom:.75rem;display:flex}.google-btn{border:1px solid var(--border);color:#3c4043;width:100%;font:inherit;cursor:pointer;background:#fff;border-radius:10px;justify-content:center;align-items:center;gap:.6rem;padding:.6rem .9rem;font-weight:600;transition:background .12s;display:flex}.google-btn:hover:not(:disabled){background:#f8fafc}.google-btn:disabled{cursor:not-allowed;opacity:.7}.divider{color:var(--muted);align-items:center;gap:.5rem;margin:.75rem 0;font-size:.8rem;display:flex}.divider:before,.divider:after{content:"";background:var(--border);flex:1;height:1px}.auth-heading{margin:0 0 .75rem;font-size:1.1rem}.btn-block{width:100%;margin-top:1rem}a.btn-primary,a.btn-secondary{text-align:center;box-sizing:border-box;text-decoration:none;display:inline-block}.signed-in{padding:.5rem 0}.signed-in h2{color:var(--brand-dark);margin:0 0 .5rem;font-size:1.15rem}.signed-in p{color:var(--muted);margin:0;font-size:.95rem;line-height:1.5}
