:root{--g700:#0c6e5c;--g600:#0f8870;--g500:#149e82;--g400:#1fb894;--g100:#cef0e7;--g50:#eafaf5;--ink900:#232826;--ink700:#3a4140;--ink500:#6b7472;--line:#e9efed;--cream:#f5f9f7;--gold:linear-gradient(135deg,#e9b949,#f6d785 45%,#c8922e);--grad-deep:linear-gradient(155deg,#052e26,#0c6e5c 78%,#149e82);--shadow:0 1px 2px rgba(12,40,34,.05),0 8px 24px -8px rgba(12,40,34,.12)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Inter,system-ui,-apple-system,sans-serif;color:var(--ink700);background:var(--cream);line-height:1.55;-webkit-font-smoothing:antialiased}h1,h2,h3{color:var(--ink900);font-weight:600;line-height:1.2}a{color:var(--g700)}.wrap{max-width:560px;margin-inline:auto;padding:24px}.center-screen{min-height:100vh;display:grid;place-items:center;padding:24px}.brand{display:flex;align-items:center;gap:8px;font-weight:700;letter-spacing:.04em;color:var(--g700);font-size:18px}.brand img{height:28px}.card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:28px;box-shadow:var(--shadow)}.label{display:block;font-size:13px;font-weight:600;margin-bottom:6px}.input,.label{color:var(--ink700)}.input{width:100%;padding:12px 14px;border:1.5px solid var(--line);border-radius:10px;font:inherit;font-size:15px;outline:none}.input:focus{border-color:var(--g400);box-shadow:0 0 0 3px var(--g100)}.btn{text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;font:inherit;font-weight:600;font-size:15px;padding:12px 20px;border-radius:11px;border:1.5px solid transparent;cursor:pointer;transition:.15s;width:100%}.btn-primary{background:linear-gradient(145deg,#0c6e5c,#1fb894);color:#fff}.btn-primary:hover{filter:brightness(1.05)}.btn-primary:disabled{opacity:.6;cursor:default}.btn-ghost{background:#fff;color:var(--g700);border-color:var(--line)}.btn-ghost:hover{border-color:var(--g400)}.upload-drop{display:flex;align-items:center;justify-content:center;cursor:pointer;border:1.5px dashed var(--g400);background:var(--g50);color:var(--g700);font-weight:600;font-size:14px;border-radius:11px;padding:16px;text-align:center}.upload-drop:hover{background:var(--g100)}.ok-banner{border:1.5px solid var(--g100);background:var(--g50);color:var(--g700);font-weight:600;font-size:14px;border-radius:11px;padding:12px 14px}.muted{color:var(--ink500);font-size:14px}.err{color:#c0392b;font-size:13.5px;font-weight:500;margin-top:10px}.pill{white-space:nowrap;display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;padding:5px 11px;border-radius:999px;letter-spacing:.3px}.pill-status{background:var(--g50);color:var(--g700);border:1px solid var(--g100)}.pill-gold{background:var(--gold);color:#5a3d05}.steps{margin:22px 0}.step{display:flex;gap:14px;align-items:flex-start;padding:10px 0}.dot{flex:none;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-size:13px;font-weight:700;border:2px solid var(--line);color:var(--ink500);background:#fff}.step.done .dot{background:var(--g500);border-color:var(--g500);color:#fff}.step.current .dot{border-color:var(--g500);color:var(--g700);box-shadow:0 0 0 3px var(--g100)}.step .t{font-size:14.5px;font-weight:600;color:var(--ink900)}.step.todo .t{color:var(--ink500);font-weight:500}.step .s{font-size:13px;color:var(--ink500)}.quiz-q{padding:14px 0;border-bottom:1px solid var(--line)}.quiz-q:last-child{border-bottom:0}.quiz-q .opt{display:flex;align-items:center;gap:8px;padding:5px 0;font-size:14px;cursor:pointer}.slot-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-gap:8px;gap:8px;margin-top:4px}.slot{font:inherit;font-size:13.5px;font-weight:600;color:var(--g700);background:var(--g50);border:1.5px solid var(--g100);border-radius:10px;padding:11px 10px;cursor:pointer;text-align:center;transition:.15s}.slot:hover{border-color:var(--g400);background:var(--g100)}.slot:disabled{opacity:.6;cursor:default}@media (max-width:480px){.center-screen,.wrap{padding:16px}.card{padding:20px;border-radius:14px}.slot-grid{grid-template-columns:1fr 1fr}}.tl{margin:14px 0 4px;padding-left:2px}.tl-item{display:flex;gap:12px;position:relative;padding-bottom:16px}.tl-item:not(:last-child):before{content:"";position:absolute;left:8px;top:20px;bottom:0;width:2px;background:var(--line)}.tl-item.done:not(:last-child):before{background:var(--g100)}.tl-dot{flex:none;width:18px;height:18px;border-radius:50%;border:2px solid var(--line);background:#fff;display:grid;place-items:center;font-size:10px;color:#fff;margin-top:1px}.tl-item.done .tl-dot{background:var(--g500);border-color:var(--g500)}.tl-item.due .tl-dot{border-color:var(--gold,#f4a93b);background:#fff}.tl-title{font-size:14px;font-weight:600;color:var(--ink900)}.tl-item.due .tl-title{color:#8a6414}.tl-detail{font-size:12.5px}.tl-detail,.tl-when{color:var(--ink500);margin-top:1px}.tl-when{font-size:11.5px;opacity:.8}.msg{max-width:88%;border:1px solid var(--line);border-radius:10px;padding:8px 12px;font-size:13.5px;white-space:pre-wrap}.msg.mine{justify-self:end;background:var(--g50)}.msg.theirs{justify-self:start;background:#fafbfb}.msg .who{font-size:11.5px;color:var(--ink500);margin-bottom:2px}.date-input{position:relative;display:block;width:100%}.date-input>input[type=text]{padding-right:38px!important;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.date-input>input[type=text][aria-invalid=true]{border-color:#c0392b}.date-input-btn{position:absolute;top:50%;right:6px;transform:translateY(-50%);width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;color:var(--ink500);overflow:hidden}.date-input-btn>input[type=date]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;border:0;font-size:16px}.date-input-btn>input[type=date]::-webkit-calendar-picker-indicator{position:absolute;inset:0;width:100%;height:100%;cursor:pointer}.input,select.input,textarea.input{font-size:16px}select.input{background:#fff;-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}.form-sec{padding:14px 0;border-top:1px solid var(--line)}.form-sec:first-child{border-top:0;padding-top:0}.form-sec h4{font-size:14px;color:var(--ink900);margin-bottom:10px}.fgrid{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.fgrid .full{grid-column:1/-1}@media (max-width:480px){.fgrid{grid-template-columns:1fr}}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{font:inherit;font-size:13.5px;font-weight:600;min-height:40px;padding:8px 14px;border-radius:999px;border:1.5px solid var(--line);background:#fff;color:var(--ink700);cursor:pointer}.chip[aria-pressed=true]{border-color:var(--g500);background:var(--g50);color:var(--g700)}.chip:disabled{cursor:default;opacity:.75}.radio-cards{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.radio-cards .chip{border-radius:12px;min-height:48px}.complete-bar{height:8px;border-radius:999px;background:var(--line);overflow:hidden}.complete-bar>span{display:block;height:100%;background:linear-gradient(90deg,#0c6e5c,#1fb894);border-radius:999px;transition:width .3s}.lock-banner{border:1.5px solid #f6dfb3;background:#fdf6e8;color:#7a560f;border-radius:11px;padding:11px 14px;font-size:13.5px;font-weight:500}.doc-slot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 0;border-top:1px solid var(--line)}.doc-slot .t{font-size:14.5px;font-weight:600;color:var(--ink900)}.doc-thumb{width:44px;height:44px;border-radius:8px;object-fit:cover;border:1px solid var(--line);background:var(--cream);flex:none}.btn-sm{width:auto;padding:8px 14px;font-size:13.5px;white-space:nowrap}.save-bar{position:-webkit-sticky;position:sticky;bottom:0;background:linear-gradient(180deg,rgba(245,249,247,0),var(--cream) 30%);padding:14px 0 6px;margin-top:8px}.cobrand{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap}.cobrand img{height:44px;width:auto;max-width:140px;object-fit:contain}.cobrand .x{font-size:12px;color:var(--ink500);text-transform:uppercase;letter-spacing:.08em}.cobrand .auscult{display:flex;align-items:center;gap:8px;font-weight:700;color:var(--g700);letter-spacing:.03em}.cobrand .auscult img{height:34px}