:root{--brand-primary:#1a6b4a;--brand-primary-dark:#134f37;--brand-tint:#e8f5ee;--brand-gold:#c9a227;--surface:#fff;--surface-2:#f4f6f8;--border:#e0e4e9;--text:#111827;--text-2:#374151;--text-muted:#6b7280;--error-fg:#b91c1c;--error-bg:#fef2f2;--warn-fg:#78350f;--warn-bg:#fffbeb;--success-fg:#134f37;--radius:8px;--radius-lg:12px;--radius-sm:4px;--shadow-sm:0 1px 2px #0000000f, 0 1px 3px #0000000a;--shadow-md:0 4px 8px #00000014, 0 2px 4px #0000000a;--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:20px;--s6:24px;--s8:32px;--s10:40px;--s12:48px;--s16:64px;--font:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-size-base:15px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{font-size:var(--font-size-base)}body{font-family:var(--font);color:var(--text);background:var(--surface-2);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;line-height:1.55}a{color:var(--brand-primary);text-decoration:none}a:hover{text-decoration:underline}h1{color:var(--text);font-size:22px;font-weight:700;line-height:1.25}h2{color:var(--text);font-size:17px;font-weight:700;line-height:1.3}h3{color:var(--text);font-size:15px;font-weight:600;line-height:1.35}p{margin:0}.loading-screen{min-height:100vh;color:var(--text-muted);justify-content:center;align-items:center;display:flex}.topnav{background:var(--brand-primary);height:56px;padding:0 var(--s6);align-items:center;gap:var(--s4);z-index:100;display:flex;position:sticky;top:0;box-shadow:0 1px #00000026}.topnav-logo{align-items:center;gap:var(--s2);flex-shrink:0;text-decoration:none;display:flex}.topnav-logo img{filter:brightness(0)invert();height:30px}.topnav-logo-label{color:#fffc;letter-spacing:.01em;font-size:13px;font-weight:500}.topnav-links{align-items:center;gap:var(--s5);margin-left:auto;display:flex}.topnav-link{color:#fffc;font-size:14px;text-decoration:none;transition:color .12s}.topnav-link:hover{color:#fff;text-decoration:none}.topnav-link.active{color:#fff;border-bottom:2px solid #ffffffb3;padding-bottom:2px;font-weight:600}.topnav-user{color:#fff9;font-size:13px}.page-wrap{max-width:640px;padding:var(--s8) var(--s4) var(--s16);margin:0 auto}.page-wrap-wide{max-width:920px;padding:var(--s8) var(--s4) var(--s16);margin:0 auto}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--s6);box-shadow:var(--shadow-sm)}.card p{line-height:1.6}.card+.card{margin-top:var(--s4)}.mb4{margin-bottom:var(--s4)}.mb6{margin-bottom:var(--s6)}.mt4{margin-top:var(--s4)}.btn{justify-content:center;align-items:center;gap:var(--s2);border-radius:var(--radius);font-size:14px;font-weight:600;font-family:var(--font);cursor:pointer;white-space:nowrap;border:1.5px solid #0000;padding:9px 20px;line-height:1.3;text-decoration:none;transition:background .12s,border-color .12s,opacity .12s;display:inline-flex}.btn:hover{text-decoration:none}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-primary{background:var(--brand-primary);color:#fff;border-color:var(--brand-primary)}.btn-primary:hover:not(:disabled){background:var(--brand-primary-dark);border-color:var(--brand-primary-dark)}.btn-secondary{color:var(--brand-primary);border-color:var(--brand-primary);background:0 0}.btn-secondary:hover:not(:disabled){background:var(--brand-tint)}.btn-ghost{color:var(--text-2);border-color:var(--border);background:0 0}.btn-ghost:hover:not(:disabled){background:var(--surface-2)}.btn-danger{background:var(--error-fg);color:#fff;border-color:var(--error-fg)}.btn-danger:hover:not(:disabled){background:#991b1b;border-color:#991b1b}.btn-sm{padding:5px 12px;font-size:13px}.form-group{margin-bottom:var(--s5)}.form-group:last-child{margin-bottom:0}label{color:var(--text-2);margin-bottom:6px;font-size:14px;font-weight:600;display:block}input[type=text],input[type=email],input[type=tel],input[type=password],select,textarea{border:1.5px solid var(--border);border-radius:var(--radius);width:100%;font-size:14px;font-family:var(--font);color:var(--text);background:var(--surface);resize:vertical;padding:9px 12px;line-height:1.4;transition:border-color .12s,box-shadow .12s}input:focus,select:focus,textarea:focus{border-color:var(--brand-primary);outline:none;box-shadow:0 0 0 3px #1a6b4a1a}input:disabled,select:disabled,textarea:disabled{background:var(--surface-2);color:var(--text-muted);cursor:not-allowed}.form-hint{color:var(--text-muted);margin-top:5px;font-size:12.5px;line-height:1.45}.req{color:var(--error-fg);margin-left:1px}.field-error{color:var(--error-fg);margin-top:5px;font-size:12.5px}.alert{border-radius:var(--radius);padding:12px var(--s4);font-size:13.5px;line-height:1.5}.alert-warn{background:var(--warn-bg);border-left:3px solid var(--brand-gold);color:var(--warn-fg)}.alert-error{background:var(--error-bg);border-left:3px solid var(--error-fg);color:var(--error-fg)}.alert-success{background:var(--brand-tint);border-left:3px solid var(--brand-primary);color:var(--success-fg)}.alert-info{background:var(--surface-2);border-left:3px solid var(--border);color:var(--text-2)}.pill{border-radius:999px;padding:2px 9px;font-size:12px;font-weight:600;line-height:1.6;display:inline-block}.pill-green{background:var(--brand-tint);color:var(--success-fg)}.pill-gold{color:var(--warn-fg);background:#fef3c7}.pill-red{background:var(--error-bg);color:var(--error-fg)}.pill-grey{background:var(--surface-2);color:var(--text-muted)}.stepper{margin-bottom:var(--s8);justify-content:center;align-items:flex-start;display:flex}.step{align-items:center;gap:var(--s1);flex-direction:column;display:flex}.step-circle{border:2px solid var(--border);background:var(--surface);width:30px;height:30px;color:var(--text-muted);z-index:1;border-radius:50%;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:flex}.step.done .step-circle{background:var(--brand-primary);border-color:var(--brand-primary);color:#fff}.step.active .step-circle{border-color:var(--brand-primary);color:var(--brand-primary);box-shadow:0 0 0 3px var(--brand-tint)}.step-label{color:var(--text-muted);white-space:nowrap;letter-spacing:.01em;font-size:11px}.step.done .step-label,.step.active .step-label{color:var(--brand-primary);font-weight:600}.step-connector{background:var(--border);flex-shrink:0;width:56px;height:2px;margin-bottom:19px}.step-connector.done{background:var(--brand-primary)}.emergency-warning{border-radius:var(--radius-lg);padding:var(--s5);background:#fff5f5;border:1.5px solid #fca5a5}.emergency-warning h3{color:var(--error-fg);margin-bottom:var(--s2);font-size:15px;font-weight:700}.choice-card{align-items:flex-start;gap:var(--s3);padding:var(--s4);border:2px solid var(--border);border-radius:var(--radius-lg);cursor:pointer;margin-bottom:var(--s3);background:var(--surface);transition:border-color .12s,background .12s;display:flex}.choice-card:last-of-type{margin-bottom:0}.choice-card:hover,.choice-card.selected{border-color:var(--brand-primary);background:var(--brand-tint)}.choice-card input[type=radio],.choice-card input[type=checkbox]{width:16px;height:16px;accent-color:var(--brand-primary);cursor:pointer;flex-shrink:0;margin-top:3px}.choice-card-label{color:var(--text);margin-bottom:3px;font-size:14px;font-weight:600}.choice-card-desc{color:var(--text-muted);font-size:13px;line-height:1.45}.data-table{border-collapse:collapse;width:100%;font-size:13.5px}.data-table th{text-align:left;padding:9px var(--s3);color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--border);background:var(--surface-2);font-size:11.5px;font-weight:700}.data-table td{padding:12px var(--s3);border-bottom:1px solid var(--border);color:var(--text);vertical-align:top;line-height:1.5}.data-table tr:last-child td{border-bottom:none}.data-table tbody tr:hover{background:var(--brand-tint)}.text-sm{font-size:13.5px}.text-xs{font-size:12px}.text-muted{color:var(--text-muted)}.text-error{color:var(--error-fg)}.text-success{color:var(--success-fg)}.gap-row{gap:var(--s3);flex-wrap:wrap;align-items:center;display:flex}.app-footer{text-align:center;padding:var(--s5) var(--s6);color:var(--text-muted);border-top:1px solid var(--border);background:var(--surface);font-size:12.5px}.app-footer a{color:var(--text-muted);text-decoration:underline}.landing-hero{background:var(--brand-primary);color:#fff;padding:var(--s16) var(--s4);justify-content:center;align-items:center;min-height:52vh;display:flex}.landing-hero-inner{text-align:center;max-width:560px}.landing-hero-inner h1{letter-spacing:-.01em;margin-bottom:var(--s4);color:#fff;font-size:clamp(1.75rem,5vw,2.6rem);font-weight:700;line-height:1.2}.landing-hero-inner p{opacity:.88;margin-bottom:var(--s6);font-size:16px;line-height:1.6}.btn-hero{padding:11px 28px;font-size:15px;font-weight:700;color:var(--brand-primary)!important;background:#fff!important;border-color:#fff!important}.btn-hero:hover{background:#f0f9f4!important;border-color:#f0f9f4!important}.hero-steps-grid{gap:var(--s5);grid-template-columns:repeat(4,1fr);display:grid}@media (width<=640px){.hero-steps-grid{grid-template-columns:repeat(2,1fr)}}.section-divider{align-items:center;gap:var(--s3);margin:var(--s6) 0;display:flex}.section-divider hr{border:none;border-top:1px solid var(--border);flex:1}.section-divider span{text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);white-space:nowrap;font-size:11px;font-weight:700}.breadcrumb{color:var(--text-muted);margin-bottom:var(--s5);font-size:13px}.breadcrumb a{color:var(--text-muted)}.char-counter{justify-content:space-between;margin-top:4px;display:flex}.char-counter span{color:var(--text-muted);font-size:12px}.check-item{align-items:flex-start;gap:var(--s3);border-bottom:1px solid var(--border);padding:10px 0;display:flex}.check-item:last-child{border-bottom:none}.check-icon{flex-shrink:0;margin-top:1px;font-size:15px}
