:root{--brand-navy:#16324f;--brand-navy-deep:#0f2338;--accent:#1c7293;--accent-strong:#155a75;--accent-contrast:#ffffff;--bg:#f7f9fb;--surface:#ffffff;--surface-muted:#eef2f5;--text:#16232f;--text-muted:#5b6b78;--text-on-navy:#eef3f7;--text-on-navy-muted:#aebdc9;--border:#dfe6ec;--danger:#dc2626;--success:#1b8a5a;--radius:12px;--radius-sm:8px;--shadow:0 1px 3px rgb(15 35 56/0.1),0 4px 16px rgb(15 35 56/0.06);--space:8px;--font-sans:"Yu Gothic UI","Yu Gothic","Hiragino Kaku Gothic ProN",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif}@media (prefers-color-scheme:dark){:root{--bg:#0d1620;--surface:#16212c;--surface-muted:#1c2833;--text:#e8edf2;--text-muted:#93a3b0;--border:#29394a;--shadow:0 1px 3px rgb(0 0 0/0.35),0 8px 24px rgb(0 0 0/0.3)}}:root[data-theme=dark]{--bg:#0d1620;--surface:#16212c;--surface-muted:#1c2833;--text:#e8edf2;--text-muted:#93a3b0;--border:#29394a;--shadow:0 1px 3px rgb(0 0 0/0.35),0 8px 24px rgb(0 0 0/0.3)}:root[data-theme=light]{--bg:#f7f9fb;--surface:#ffffff;--surface-muted:#eef2f5;--text:#16232f;--text-muted:#5b6b78;--border:#dfe6ec;--shadow:0 1px 3px rgb(15 35 56/0.1),0 4px 16px rgb(15 35 56/0.06)}*{box-sizing:border-box}body,html{padding:0;margin:0}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:16px;line-height:1.7;-webkit-text-size-adjust:100%}img{max-width:100%;display:block}a{color:var(--accent)}button{font-family:inherit}html{overflow-x:hidden}.container{width:100%;max-width:880px;margin:0 auto;padding:0 20px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 20px;border-radius:var(--radius-sm);font-size:15px;font-weight:600;border:1px solid transparent;cursor:pointer;transition:transform .05s ease,opacity .15s ease,background .15s ease;text-decoration:none}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);color:var(--accent-contrast)}.btn-primary:hover:not(:disabled){background:var(--accent-strong)}.btn-outline{background:transparent;color:var(--accent);border-color:var(--accent)}.btn-outline:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 10%,transparent)}.btn-ghost{background:transparent;color:var(--text-muted);border-color:var(--border)}.btn-ghost:hover:not(:disabled){background:var(--surface-muted)}.btn-block{width:100%}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.field-label{display:block;font-size:13px;font-weight:600;color:var(--text-muted);margin-bottom:6px}.badge-required{display:inline-block;font-size:11px;font-weight:700;color:var(--accent-contrast);background:var(--accent);border-radius:999px;padding:1px 8px;margin-left:6px;vertical-align:middle}input[type=email],input[type=number],input[type=tel],input[type=text],select,textarea{width:100%;min-height:44px;padding:10px 12px;font-size:16px;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm)}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:1px}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}