:root{--navy: #122240;--teal: #0ea5b7;--gold: #c9972e;--paper: #f6f5f1;--line: #dad8d0;--ink-soft: #5b6472;--white: #ffffff;--error: #b42318;color-scheme:light;font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.55;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;min-width:320px;background-color:var(--paper);color:var(--navy)}#root{min-height:100vh;display:flex;flex-direction:column}.container{width:100%;max-width:1080px;margin:0 auto;padding:0 1.5rem}h1{font-family:Sora,sans-serif;margin:0}p{margin:0}a{color:var(--navy)}a:hover{color:var(--teal)}.env-banner{background:var(--gold);color:var(--navy);font-size:.9rem;font-weight:600;text-align:center;padding:.5rem 1rem}.site-header{border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;padding-block:1.1rem}.header-brand{display:flex;align-items:center;gap:.6rem;text-decoration:none}.brand-name{font-family:Sora,sans-serif;font-weight:700;font-size:1.75rem;letter-spacing:-.01em;color:var(--navy)}.brand-dot{color:var(--gold)}.signup{padding-block:3rem}.signup-card{max-width:560px;margin:0 auto;background-color:var(--white);border:1px solid var(--line);border-radius:10px;padding:2.25rem 1.75rem}.signup-card h1{font-size:1.6rem;font-weight:700;line-height:1.25;margin-bottom:.6rem}.signup-intro,.signup-done p{color:var(--ink-soft);font-size:.98rem}.signup-form{display:flex;flex-direction:column;gap:1.1rem;margin-top:1.75rem}.role-options{display:grid;grid-template-columns:1fr;gap:.75rem;border:0;padding:0;margin:0}@media(min-width:560px){.role-options{grid-template-columns:1fr 1fr}}.role-options legend{padding:0;font-size:.9rem;font-weight:600;margin-bottom:.5rem}.role-option{display:flex;flex-direction:column;gap:.25rem;border:1px solid var(--line);border-radius:8px;padding:.9rem 1rem;cursor:pointer}.role-option.selected{border-color:var(--teal);box-shadow:0 0 0 1px var(--teal)}.role-option:has(input:focus-visible){outline:2px solid var(--teal);outline-offset:2px}.role-option input{position:absolute;opacity:0;pointer-events:none}.role-title{font-weight:600;font-size:.95rem}.role-description{color:var(--ink-soft);font-size:.85rem}.field{display:flex;flex-direction:column;gap:.35rem;font-size:.9rem;font-weight:600}.field em{font-style:normal;font-weight:400;color:var(--ink-soft)}.name-row{display:grid;grid-template-columns:1fr;gap:1.1rem}@media(min-width:560px){.name-row{grid-template-columns:6.5rem minmax(0,1fr) minmax(0,1fr)}}.field input,.field select{width:100%;height:2.9rem;font:inherit;font-weight:400;font-size:1rem;color:var(--navy);border:1px solid var(--line);border-radius:8px;padding:.65rem .8rem}.field select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:2.5rem;background-color:var(--white);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5l5 5 5-5' stroke='%23122240' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .9rem center;background-size:.75rem}.field input:focus,.field select:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 1px var(--teal)}.form-error{color:var(--error);font-size:.9rem}.signup-form button{font-family:Sora,sans-serif;font-weight:600;font-size:1rem;color:var(--white);background-color:var(--navy);border:0;border-radius:8px;padding:.8rem 1.5rem;cursor:pointer}.signup-form button:hover{background-color:#1d3460}.signup-form button:disabled{opacity:.6;cursor:progress}.site-footer{margin-top:auto;border-top:1px solid var(--line)}.footer-inner{padding-block:1.5rem}.footer-inner p{color:var(--ink-soft);font-size:.85rem}
