.submitter-form.card{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);padding:2rem}.submitter-form h2{color:var(--brand-primary);margin-bottom:.5rem;font-size:1.3rem}.form-description{color:var(--text-secondary);margin-bottom:1.5rem;font-size:.9rem}.field{flex-direction:column;gap:.25rem;margin-bottom:1.25rem;display:flex}.field label{font-size:.95rem;font-weight:600}.field input{border:2px solid var(--border);border-radius:var(--radius);padding:.6rem .75rem;font-size:1rem;transition:border-color .2s}.field input:focus{border-color:var(--brand-primary);outline:none;box-shadow:0 0 0 3px #1a527626}.field input[aria-invalid=true]{border-color:var(--error)}.field-error{color:var(--error);font-size:.85rem}.field-hint{color:var(--text-secondary);font-size:.8rem}.submitter-form .btn{margin-top:.5rem}.dropzone-section.card{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);padding:2rem}.dropzone-section h2{color:var(--brand-primary);margin-bottom:.5rem;font-size:1.3rem}.upload-description{color:var(--text-secondary);margin-bottom:1.25rem;font-size:.9rem}.dropzone{border:2px dashed var(--border);border-radius:var(--radius);text-align:center;cursor:pointer;background:var(--bg);margin-bottom:1rem;padding:2.5rem 1.5rem;transition:border-color .2s,background .2s}.dropzone:hover,.dropzone.dragging{border-color:var(--brand-primary);background:#eaf4fb}.dropzone:focus-visible{outline:3px solid var(--brand-primary);outline-offset:2px}.dropzone-icon{margin-bottom:.5rem;font-size:2.5rem;display:block}.dropzone p{margin:0;font-weight:500}.dropzone-hint{color:var(--text-secondary);margin-top:.5rem!important;font-size:.8rem!important;font-weight:400!important}.file-list{flex-direction:column;gap:.5rem;margin-bottom:1rem;list-style:none;display:flex}.file-item{background:var(--bg);border-radius:var(--radius);border:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:.5rem;padding:.6rem .75rem;font-size:.9rem;display:flex}.file-item.file-error{border-color:var(--error);background:#fdf2f2}.file-name{text-overflow:ellipsis;white-space:nowrap;flex:1;font-weight:500;overflow:hidden}.file-size{color:var(--text-secondary);font-size:.8rem}.file-err-msg{color:var(--error);width:100%;font-size:.8rem}.progress-bar{background:var(--border);border-radius:3px;flex:1;height:6px;position:relative;overflow:hidden}.progress-fill{background:var(--brand-primary);height:100%;transition:width .2s}.progress-label{color:var(--text-secondary);font-size:.75rem;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.remove-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.2rem;font-size:1rem;line-height:1}.remove-btn:hover{color:var(--error);background:#c0392b1a}.upload-error{color:var(--error);margin-bottom:.75rem;font-size:.9rem}.file-count-hint{color:var(--text-secondary);margin-bottom:1rem;font-size:.85rem}.confirmation-screen.card{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);text-align:center;padding:2rem}.success-icon{margin-bottom:1rem;font-size:3rem;display:block}.confirmation-screen h2{color:var(--success);margin-bottom:.75rem;font-size:1.5rem}.confirm-intro{color:var(--text-secondary);margin-bottom:1.5rem}.confirm-details{background:var(--bg);border-radius:var(--radius);text-align:left;flex-direction:column;gap:.75rem;margin-bottom:1.5rem;padding:1.25rem;display:flex}.confirm-row{align-items:baseline;gap:1rem;display:flex}.confirm-row dt{min-width:140px;color:var(--text-secondary);font-size:.9rem;font-weight:600}.confirm-row dd{margin:0}.ref-number{word-break:break-all;background:#e8f4f8;border-radius:4px;padding:.2rem .5rem;font-family:monospace;font-size:.9rem}.confirm-notice{border-radius:var(--radius);color:var(--text-secondary);text-align:left;background:#eaf7ea;border:1px solid #a9dfbf;padding:1rem;font-size:.9rem}.app{flex-direction:column;min-height:100vh;display:flex}.app-header{background:var(--brand-primary);color:#fff;align-items:center;gap:1.5rem;padding:1rem 2rem;display:flex;box-shadow:0 2px 4px #0003}.app-header h1{margin:0;font-size:1.4rem;font-weight:600}.brand-logo{width:auto;max-height:48px;display:block}.app-main{flex:1;width:100%;max-width:720px;margin:0 auto;padding:2rem 1.5rem}.step-indicator{margin-bottom:2rem}.step-indicator ol{counter-reset:steps;gap:0;list-style:none;display:flex}.step-indicator li{text-align:center;color:var(--text-secondary);flex-direction:column;flex:1;align-items:center;font-size:.85rem;display:flex;position:relative}.step-indicator li.active{color:var(--brand-primary);font-weight:600}.step-indicator li.done{color:var(--success)}.step-number{background:#fff;border:2px solid;border-radius:50%;justify-content:center;align-items:center;width:2rem;height:2rem;margin-bottom:.25rem;font-size:.9rem;font-weight:700;display:flex}.step-indicator li.active .step-number{background:var(--brand-primary);color:#fff}.step-indicator li.done .step-number{background:var(--success);border-color:var(--success);color:#fff}.btn{border-radius:var(--radius);border:2px solid #0000;justify-content:center;align-items:center;padding:.75rem 1.5rem;font-size:1rem;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.btn-primary{background:var(--brand-primary);color:#fff;border-color:var(--brand-primary)}.btn-primary:hover{background:var(--brand-primary-dark);border-color:var(--brand-primary-dark)}.btn-primary:focus-visible{outline:3px solid var(--brand-primary-light);outline-offset:2px}.btn-secondary{color:var(--brand-primary);border-color:var(--brand-primary);background:#fff}.btn-secondary:hover{background:var(--bg)}.welcome-screen{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);padding:2rem}.welcome-screen h2{color:var(--brand-primary);margin-bottom:1rem;font-size:1.5rem}.welcome-screen p{color:var(--text-secondary);margin-bottom:1rem}.allowed-types{background:var(--bg);border-radius:var(--radius);color:var(--text-secondary);margin-bottom:1.5rem;padding:1rem 1rem 1rem 2rem;font-size:.9rem}.allowed-types li+li{margin-top:.25rem}.status-screen{color:var(--text-secondary);flex-direction:column;align-items:center;gap:1rem;padding:4rem 2rem;display:flex}.spinner{border:4px solid var(--border);border-top-color:var(--brand-primary);border-radius:50%;width:48px;height:48px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.error-screen{border-radius:var(--radius);text-align:center;background:#fdf2f2;border:1px solid #f5c6cb;padding:2rem}.error-screen h2{color:var(--error);margin-bottom:.75rem}.error-screen p{color:var(--text-secondary);margin-bottom:1.5rem}.hipaa-footer{color:var(--text-secondary);text-align:center;background:#eaf4fb;border-top:1px solid #aed6f1;padding:1rem 2rem;font-size:.8rem}@media (width<=600px){.app-header{text-align:center;flex-direction:column;gap:.5rem}.app-header h1{font-size:1.1rem}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--brand-primary:#1a5276;--brand-primary-dark:#154360;--brand-primary-light:#2e86c1;--text-primary:#1a1a2e;--text-secondary:#555;--bg:#f8f9fa;--surface:#fff;--border:#dee2e6;--success:#1e8449;--error:#c0392b;--warning:#d68910;--radius:8px;--shadow:0 2px 8px #00000014}body{background:var(--bg);color:var(--text-primary);min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6}a{color:var(--brand-primary)}button{cursor:pointer;font-family:inherit}input,select,textarea{font-family:inherit}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.config-error-screen{max-width:720px;margin:4rem auto;padding:0 1rem;font-family:system-ui,sans-serif}
