.form-page{width:100%;max-width:480px;padding:16px;box-sizing:border-box}@media (min-width: 640px){.form-page{padding:24px}}.form-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:var(--radius-xl, 12px);padding:32px 24px;margin-top:24px}.form-heading{font-size:20px;font-weight:600;line-height:1.3;margin:0 0 12px;color:#1f2937}.form-instruction{font-size:15px;line-height:1.5;margin:0 0 24px;color:#4b5563}.field-row{margin-bottom:16px}.field-label{display:block;font-size:13px;font-weight:600;color:#1f2937;margin-bottom:8px}.field-required{color:var(--tenant-primary);margin-left:4px}.field-error{font-size:13px;color:#dc2626;margin:6px 0 0}.field-input{width:100%;min-height:44px;padding:10px 12px;font-size:15px;font-family:inherit;color:#1f2937;background:#fff;border:1px solid #e5e7eb;border-radius:var(--radius-md, 8px);box-sizing:border-box}@media (min-width: 640px){.field-input{min-height:48px}}.field-input:focus{outline:none;border-color:var(--tenant-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--tenant-primary) 25%,transparent)}textarea.field-input{min-height:96px;resize:vertical}.submit-button{width:100%;min-height:48px;padding:12px 20px;font-size:15px;font-weight:600;color:#fff;background:var(--tenant-primary);border:none;border-radius:var(--radius-md, 8px);cursor:pointer;transition:opacity .15s var(--ease-out, ease-out)}.submit-button[disabled],.submit-button[aria-disabled=true]{opacity:.6;cursor:not-allowed}.submission-error{background:#fee2e2;border:1px solid #fecaca;color:#b91c1c;border-radius:var(--radius-md, 8px);padding:12px 16px;font-size:13px;margin-bottom:16px}.tenant-header{display:flex;justify-content:center;padding-top:32px}@media (min-width: 640px){.tenant-header{justify-content:flex-start;padding-left:24px}}.tenant-logo{max-height:40px;max-width:180px;object-fit:contain;display:block}.status-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:var(--radius-xl, 12px);padding:32px 24px;margin-top:24px;text-align:center}.status-card-icon{margin:0 auto 12px}.status-card-heading{font-size:20px;font-weight:600;margin:0 0 8px;color:#1f2937}.status-card-body{font-size:15px;color:#4b5563;margin:0}.skeleton-bar{background:#e5e7eb;border-radius:var(--radius-sm, 4px);animation:subject-skeleton 1.4s infinite ease-in-out}@keyframes subject-skeleton{0%,to{opacity:.55}50%{opacity:.85}}@media (prefers-reduced-motion: reduce){.skeleton-bar{animation:none}}.footer-attribution{font-size:13px;color:#6b7280;text-align:center;padding:24px 16px}.step-progress{margin:0 0 20px}.step-progress-label{font-size:13px;font-weight:600;color:#4b5563;margin:0 0 8px}.step-progress-track{height:6px;background:#e5e7eb;border-radius:var(--radius-sm, 4px);overflow:hidden}.step-progress-bar{height:100%;background:var(--tenant-primary);border-radius:var(--radius-sm, 4px);transition:width .25s var(--ease-out, ease-out)}@media (prefers-reduced-motion: reduce){.step-progress-bar{transition:none}}.step-heading{font-size:17px;font-weight:600;line-height:1.3;margin:0 0 8px;color:#1f2937}.step-content{font-size:15px;line-height:1.5;margin:0 0 20px;color:#4b5563}.step-nav{display:flex;gap:12px;align-items:stretch;margin-top:24px}.step-nav .submit-button{margin:0}.step-back{min-height:48px;padding:12px 20px;font-size:15px;font-weight:600;font-family:inherit;color:#1f2937;background:#fff;border:1px solid #e5e7eb;border-radius:var(--radius-md, 8px);cursor:pointer;flex:0 0 auto}.step-back[disabled]{opacity:.6;cursor:not-allowed}.step-nav .submit-button{flex:1 1 auto}.field-row-group{border:0;padding:0;margin:0 0 16px;min-width:0}.field-row-group>.field-label{padding:0}.field-options{display:flex;flex-direction:column;gap:8px}.field-option{display:flex;align-items:center;gap:8px;min-height:44px}.field-option-label{font-size:15px;color:#1f2937}.field-check{display:flex;align-items:center;min-height:44px}.field-checkbox,.field-radio{width:20px;height:20px;margin:0;accent-color:var(--tenant-primary);flex:0 0 auto}.group-row{background:#fff;border:1px solid #e5e7eb;border-radius:var(--radius-md, 8px);padding:16px;margin-bottom:12px}.group-row-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.group-row-title{font-size:13px;font-weight:600;color:#4b5563}.group-row .field-row:last-of-type{margin-bottom:0}.group-add,.group-remove{font-family:inherit;font-weight:600;border-radius:var(--radius-md, 8px);cursor:pointer}.group-add{width:100%;min-height:44px;padding:10px 16px;font-size:15px;color:var(--tenant-primary);background:#fff;border:1px dashed var(--tenant-primary)}.group-remove{min-height:32px;padding:4px 12px;font-size:13px;color:#4b5563;background:#f9fafb;border:1px solid #e5e7eb}.group-add[disabled],.group-remove[disabled]{opacity:.5;cursor:not-allowed}.lookup-action{margin:-8px 0 16px}.lookup-button{min-height:44px;padding:10px 16px;font-family:inherit;font-size:15px;font-weight:600;color:var(--tenant-primary);background:#fff;border:1px solid var(--tenant-primary);border-radius:var(--radius-md, 8px);cursor:pointer}.lookup-button[disabled]{opacity:.5;cursor:not-allowed}.lookup-status{font-size:13px;line-height:1.5;margin:8px 0 0}.lookup-status-success{color:#15803d}.lookup-status-notice{color:#b45309}.form-empty{font-size:15px;line-height:1.5;color:#4b5563;background:#fff;border:1px solid #e5e7eb;border-radius:var(--radius-md, 8px);padding:16px;margin:0 0 24px}:root{--tenant-primary: #6b7280;--tenant-secondary: #e5e7eb;--tenant-logo-url: url(/placeholder-logo.svg);--tenant-favicon-url: url(/placeholder-favicon.svg)}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0}body{background:#fff;color:#1f2937;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased;min-height:100vh}#root{min-height:100vh;display:flex;flex-direction:column;align-items:center}
