:root{--ink:#1f2c35;--muted:#6e7d83;--line:#dce6e7;--soft:#f5f9f8;--mint:#e8f3f0;--teal:#176b67;--teal-dark:#105450;--coral:#c65f4e;--white:#fff;--shadow:0 22px 60px #153a3910}*{box-sizing:border-box}body{margin:0;background:#f7faf9;color:var(--ink);font:15px 'DM Sans',sans-serif}button,input,textarea{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh}.topbar{height:76px;border-bottom:1px solid var(--line);background:#ffffffcc;backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,5vw,72px);position:sticky;top:0;z-index:5}.brand{display:flex;gap:12px;align-items:center}.brand-mark{width:36px;height:36px;border-radius:12px;background:var(--teal);color:white;display:grid;place-items:center;font-weight:800;font-family:Manrope}.brand strong{font-family:Manrope;letter-spacing:-.4px}.brand span{display:block;color:var(--muted);font-size:11px;margin-top:2px}.mode-switch{display:flex;gap:5px;padding:4px;border:1px solid var(--line);border-radius:10px;background:var(--soft)}.mode-switch button{border:0;border-radius:7px;padding:8px 12px;color:var(--muted);background:transparent}.mode-switch button.active{background:white;color:var(--teal);box-shadow:0 2px 8px #143b3914;font-weight:700}.page{max-width:1120px;margin:0 auto;padding:52px 20px 80px}.eyebrow{color:var(--teal);font-size:12px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase}.intro{max-width:640px;margin-bottom:36px}.intro h1{font:800 clamp(30px,5vw,48px)/1.1 Manrope;margin:10px 0 16px;letter-spacing:-1.5px}.intro p{color:var(--muted);font-size:17px;line-height:1.65;margin:0}.card{background:var(--white);border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow)}.patient-layout{display:grid;grid-template-columns:260px 1fr;gap:42px;align-items:start}.steps{padding-top:16px}.step{display:flex;gap:14px;align-items:center;color:#9aa8a9;margin:0 0 22px}.step-index{width:30px;height:30px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:700;background:white}.step.active{color:var(--teal);font-weight:700}.step.active .step-index{background:var(--teal);color:white;border-color:var(--teal)}.step.done{color:var(--ink)}.step.done .step-index{background:var(--mint);color:var(--teal);border-color:var(--mint)}.form-card{padding:clamp(24px,5vw,48px)}.progress-line{height:4px;background:var(--mint);border-radius:4px;margin-bottom:32px}.progress-line i{display:block;height:100%;background:var(--teal);border-radius:4px;transition:width .25s}.form-card h2{font:700 26px Manrope;margin:0 0 8px;letter-spacing:-.5px}.hint{color:var(--muted);line-height:1.55;margin:0 0 30px}.field{margin:24px 0}.field label,.question label{display:block;font-weight:700;margin-bottom:9px}.required{color:var(--coral)}input,textarea{width:100%;border:1px solid var(--line);border-radius:11px;padding:14px 15px;outline:none;color:var(--ink);background:white}input:focus,textarea:focus{border-color:var(--teal);box-shadow:0 0 0 3px #176b6714}textarea{min-height:120px;resize:vertical}.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.choice{border:1px solid var(--line);border-radius:12px;background:white;color:var(--ink);padding:14px;text-align:left;transition:.2s}.choice:hover{border-color:#9fc7c2}.choice.selected{background:var(--mint);border-color:var(--teal);color:var(--teal);font-weight:700}.question{padding:20px 0;border-top:1px solid #edf2f1}.question:first-child{border-top:0;padding-top:0}.question small{color:var(--muted);display:block;margin:-2px 0 12px}.conditional{margin-top:12px;padding:15px;background:var(--soft);border-left:3px solid var(--teal);border-radius:0 10px 10px 0}.actions{display:flex;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding-top:24px;margin-top:30px}.primary,.secondary{border-radius:11px;padding:13px 20px;font-weight:700;border:1px solid var(--teal)}.primary{background:var(--teal);color:white}.primary:hover{background:var(--teal-dark)}.secondary{background:white;color:var(--teal)}.error{color:var(--coral);font-size:13px;margin-top:8px}.save-note{font-size:12px;color:var(--muted);display:flex;gap:7px;align-items:center;margin-top:18px}.dot{width:7px;height:7px;background:#7bb6a7;border-radius:50%}.review-group{padding:18px 0;border-top:1px solid var(--line)}.review-group h3{font-size:13px;color:var(--teal);text-transform:uppercase;letter-spacing:1px;margin:0 0 11px}.review-row{display:flex;justify-content:space-between;gap:20px;padding:7px 0;color:var(--muted)}.review-row strong{color:var(--ink);text-align:right}.success{text-align:center;padding:60px 20px}.success-mark{width:60px;height:60px;border-radius:50%;background:var(--mint);color:var(--teal);font-size:28px;display:grid;place-items:center;margin:0 auto 20px}.success h2{font:700 28px Manrope;margin:0 0 10px}.dashboard-head{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:28px}.dashboard-head h1{font:800 36px Manrope;margin:8px 0 0;letter-spacing:-1px}.dashboard-tools{display:flex;gap:10px}.dashboard-tools input{width:250px}.table-card{overflow:hidden}.table{width:100%;border-collapse:collapse}.table th,.table td{text-align:left;padding:17px 20px;border-bottom:1px solid #edf2f1}.table th{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:1px;background:var(--soft)}.table tr:last-child td{border-bottom:0}.patient-name{font-weight:700}.patient-meta{display:block;color:var(--muted);font-size:12px;margin-top:4px}.status{display:inline-block;border-radius:20px;padding:6px 9px;background:var(--mint);color:var(--teal);font-size:12px;font-weight:700}.detail-head{display:flex;justify-content:space-between;align-items:start;margin-bottom:24px}.detail-head h1{font:800 32px Manrope;margin:8px 0}.detail-meta{color:var(--muted)}.alert-grid{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0}.alert{border:1px solid #f0d7d0;background:#fff8f6;color:#9b4e42;border-radius:10px;padding:11px 13px;font-size:13px;font-weight:700}.clinical-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.clinical-card{padding:24px}.clinical-card h2{font:700 18px Manrope;margin:0 0 16px}.clinical-row{display:flex;justify-content:space-between;gap:15px;border-top:1px solid #edf2f1;padding:12px 0;color:var(--muted)}.clinical-row strong{color:var(--ink);text-align:right}.back{background:none;border:0;color:var(--teal);font-weight:700;padding:0;margin-bottom:12px}@media(max-width:800px){.patient-layout{display:block}.steps{display:flex;overflow:auto;gap:18px;margin:0 -20px 22px;padding:0 20px}.step{margin:0;white-space:nowrap}.step-index{width:26px;height:26px}.step:not(.active) span:last-child{display:none}.dashboard-head{display:block}.dashboard-tools{margin-top:18px}.dashboard-tools input{width:100%}.table-card{overflow-x:auto}.table{min-width:680px}.clinical-grid{grid-template-columns:1fr}}@media(max-width:520px){.topbar{height:68px;padding:0 16px}.brand span{display:none}.mode-switch button{padding:7px 8px;font-size:12px}.page{padding:32px 16px 60px}.intro h1{font-size:32px}.intro p{font-size:15px}.form-card{border-radius:18px;padding:22px 18px}.choice-grid{gap:8px}.choice{padding:13px 10px}.actions{position:sticky;bottom:0;background:white;margin:30px -18px -22px;padding:15px 18px;z-index:2}.review-row{display:block}.review-row strong{display:block;text-align:left;margin-top:4px}.detail-head{display:block}.dashboard-head h1{font-size:30px}}
