*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,sans-serif;color:#1a1a1a;background:#f5f5f4}.site-header{padding:1rem 1.5rem;background:#ffffff;border-bottom:1px solid #e5e5e5}.logo{font-weight:700}main{display:flex;justify-content:center;padding:3rem 1rem}.card{background:#ffffff;border:1px solid #e5e5e5;border-radius:12px;padding:2rem;width:100%;max-width:26rem}.card h1{margin-top:0;font-size:1.4rem}.card--wide{max-width:40rem}form label{display:block;margin:1rem 0 .25rem;font-size:.9rem;font-weight:600}form input{padding:.6rem .75rem;border:1px solid #d4d4d4;border-radius:8px}button,form input{width:100%;font-size:1rem}button{margin-top:1.5rem;padding:.7rem;border:none;border-radius:8px;background:#1d4ed8;color:#ffffff;font-weight:600;cursor:pointer}button:hover{background:#1e40af}button.secondary{background:#e5e5e5;color:#1a1a1a}.hint{margin-top:1.25rem;color:#555555}.hint,.message{font-size:.9rem}.message{padding:.75rem 1rem;border-radius:8px;margin-bottom:.5rem}.message--error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.message--success{background:#f0fdf4;border:1px solid #bbf7d0;color:#166534}.data-table{width:100%;border-collapse:collapse;margin-top:.5rem}.data-table td,.data-table th{text-align:left;padding:.5rem .75rem;border-bottom:1px solid #e5e5e5;font-size:.95rem}