:root{--bg:#f3f6f8;--panel:#ffffff;--ink:#173042;--muted:#597083;--line:#d4dfe6;--brand:#0f3c58;--brand-2:#1d7f8c;--accent:#e9f5f6;--danger:#a53a3a}*{box-sizing:border-box}body,html{margin:0;padding:0;font-family:Avenir Next,Segoe UI,sans-serif;background:radial-gradient(circle at top left,rgba(29,127,140,.12),transparent 25%),linear-gradient(180deg,#f8fbfc,var(--bg));color:var(--ink)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.auth-shell,.public-shell{min-height:100vh;display:grid;place-items:center;padding:24px}.workspace-shell{min-height:100vh;padding:32px 24px 48px}.workspace-hero{max-width:780px;margin:0 auto 28px;text-align:center}.ecopylot-logo{display:block;width:auto;height:auto;object-fit:contain}.ecopylot-logo--workspace,.workspace-logo{width:min(220px,44vw);max-width:220px;height:auto;margin:0 auto 14px;filter:drop-shadow(0 16px 30px rgba(19,48,66,.12))}.workspace-grid{max-width:980px;margin:0 auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:18px;gap:18px}.workspace-grid--launcher{max-width:1120px}.workspace-family{min-width:0}.workspace-family--active{grid-column:1/-1;display:grid;grid-template-columns:minmax(280px,.85fr) minmax(0,1.45fr);grid-gap:18px;gap:18px;align-items:stretch}.workspace-family>.workspace-card{width:100%;height:100%}.workspace-family-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px}.workspace-family-options>.workspace-card{padding:18px;border-radius:22px;box-shadow:0 14px 38px rgba(19,48,66,.06)}.workspace-card{display:grid;grid-gap:12px;gap:12px;background:rgba(255,255,255,.92);border:1px solid rgba(23,48,66,.08);border-radius:28px;box-shadow:0 20px 60px rgba(19,48,66,.08);padding:24px}.workspace-card--active{border-color:rgba(29,127,140,.24);background:linear-gradient(180deg,#ffffff,#eef8fa)}.workspace-card--placeholder{opacity:.8}.primary-card{background:linear-gradient(180deg,#ffffff,#eef8fa)}.auth-card,.public-card{width:min(460px,100%);background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.7);border-radius:28px;box-shadow:0 24px 80px rgba(19,48,66,.12);padding:28px}.auth-card label,.form-grid label{display:grid;grid-gap:6px;gap:6px;margin-bottom:14px;font-size:14px;color:var(--muted)}input,select,textarea{border:1px solid var(--line);border-radius:14px;padding:10px 12px;background:#fff;font-family:Aptos,Calibri,Segoe UI,Arial,sans-serif;font-size:15px}textarea{min-height:92px;resize:vertical}.block-editor{min-height:52px;line-height:1.55}.block-editor,.report-editor{font-family:Aptos,Calibri,Segoe UI,Arial,sans-serif}.report-editor{min-height:620px;line-height:1.65}.eyebrow{margin:0 0 10px;color:var(--brand-2);font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.muted{color:var(--muted)}.copy-feedback{padding:8px 12px;border-radius:999px;background:#e9f8ee;color:#116149;font-weight:700;font-size:14px;border:1px solid #b9e2c7}.button,.copy-feedback{display:inline-flex;align-items:center}.button{justify-content:center;gap:8px;border:0;border-radius:999px;padding:12px 18px;cursor:pointer;transition:transform .15s ease,opacity .2s ease}.button:hover{transform:translateY(-1px)}.button.primary{background:linear-gradient(135deg,var(--brand),var(--brand-2));color:white}.button.secondary{background:var(--accent);color:var(--brand)}.button.ghost{background:transparent;border:1px solid var(--line)}.app-shell{min-height:100vh;padding:18px}.app-header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px}.brand-lockup,.preview-header{display:flex;align-items:center;gap:14px}.brand-logo,.ecopylot-logo--header{width:clamp(76px,7vw,108px);height:auto;border-radius:24px;filter:drop-shadow(0 14px 30px rgba(19,48,66,.12))}.ecopylot-logo--preview,.preview-logo{width:clamp(64px,5vw,82px);height:auto;filter:drop-shadow(0 10px 20px rgba(19,48,66,.12))}.flow-banner{margin-bottom:16px;border:1px solid rgba(29,127,140,.18);background:linear-gradient(90deg,#f9ffff,#edf7f7);border-radius:18px;padding:14px 16px}.app-grid{display:grid;grid-template-columns:320px minmax(0,1fr) 420px;grid-gap:16px;gap:16px}.app-grid.echo-full-layout{grid-template-columns:300px minmax(0,1.35fr) 380px}.panel{background:var(--panel);border:1px solid rgba(23,48,66,.08);border-radius:24px;box-shadow:0 20px 60px rgba(19,48,66,.06);padding:18px}.panel h2,.panel h3{margin-top:0}.list{display:grid;grid-gap:10px;gap:10px}.list-card{border:1px solid var(--line);border-radius:18px;padding:12px;background:#fbfdfe;cursor:pointer}.list-card.active{border-color:var(--brand-2);background:var(--accent)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.echo-full-layout .form-grid{gap:9px}.echo-full-layout .form-grid label>input,.echo-full-layout .form-grid label>select{width:100%;min-width:0;min-height:36px}.echo-full-layout .form-grid label,.echo-full-layout .form-grid label>span,.echo-full-layout .measurement-block{min-width:0}.echo-full-layout .form-grid label>span{overflow-wrap:anywhere}.compact-measure-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.echo-diastolic-psap .compact-measure-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.echo-diastolic-psap .toolbar.between-toolbar{align-items:flex-start;gap:12px 24px}.echo-diastolic-psap .toolbar.between-toolbar .muted{flex:1 1 260px;text-align:right}.echo-simpson-block .echo-measurement-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));align-items:stretch}.echo-simpson-block .measurement-block{align-content:start}.echo-simpson-block .form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:1/-1}.toolbar{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0}.stacked-toolbar{flex-direction:column}.wrap-toolbar{align-items:center}.between-toolbar{justify-content:space-between}.table{width:100%;border-collapse:collapse;font-size:13px}.table td,.table th{border-bottom:1px solid var(--line);padding:8px 6px;text-align:left;vertical-align:top}.tab-strip{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.tab-button{border:1px solid var(--line);border-radius:999px;background:white;color:var(--muted);padding:8px 12px;cursor:pointer}.tab-button.active{background:var(--accent);color:var(--brand);border-color:var(--brand-2)}.signature-preview{grid-column:1/-1;border:1px dashed var(--line);border-radius:18px;padding:12px;background:#fbfdfe}.signature-preview img{max-width:100%;max-height:80px;display:block}.bedside-grid{grid-template-columns:minmax(0,1fr) 420px}.preview-box{border:1px solid var(--line);border-radius:18px;padding:14px;background:linear-gradient(180deg,#fff,#f7fbfc)}.module-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:12px;gap:12px}.module-card{display:grid;grid-gap:6px;gap:6px;padding:16px;border-radius:18px;border:1px solid var(--line);background:#fbfdfe;text-align:left;cursor:pointer}.module-card.active{border-color:var(--brand-2);background:linear-gradient(180deg,#f9ffff,#e8f5f6)}.module-card.placeholder{cursor:default;opacity:.74}.compact-module-card-grid{grid-template-columns:1fr}.checkbox-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px;margin:12px 0}.checkbox-grid label{display:flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid var(--line);border-radius:14px;background:#fbfdfe}.bullseye-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:14px;gap:14px}.bullseye-card{display:grid;grid-gap:10px;gap:10px;border:1px solid var(--line);border-radius:18px;padding:14px;background:linear-gradient(180deg,#fff,#f7fbfc)}.bullseye-card-header{display:grid;grid-gap:4px;gap:4px}.bullseye-card-header span{color:var(--muted);font-size:12px}.aha-bullseye-card{align-content:start}.aha-bullseye-svg{display:block;width:100%;max-width:320px;height:auto;aspect-ratio:1/1;justify-self:center;overflow:visible}.aha-bullseye-segment{cursor:pointer;transition:transform .12s ease,filter .12s ease}.aha-bullseye-segment.readonly{cursor:default}.aha-bullseye-segment:hover{filter:brightness(.98)}.aha-bullseye-label{fill:var(--brand);font-family:SFMono-Regular,Menlo,monospace;text-anchor:middle;dominant-baseline:middle;pointer-events:none;font-size:12px;font-weight:700}.aha-bullseye-legend{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-gap:6px;gap:6px}.aha-bullseye-legend-item{display:grid;justify-items:center;grid-gap:4px;gap:4px;color:var(--muted)}.aha-bullseye-legend-swatch{width:100%;min-width:22px;height:14px;border-radius:999px;border:1px solid rgba(15,60,88,.12)}.inline-input-action{display:grid;grid-template-columns:minmax(0,180px) minmax(0,1fr);grid-gap:12px;gap:12px;align-items:center}.inline-checkbox{display:inline-flex;align-items:center;gap:8px;margin:0;padding:10px 12px;border:1px solid var(--line);border-radius:14px;background:#fbfdfe}.section-editor-list{display:grid;grid-gap:18px;gap:18px}.full-echo-section-editor-list{gap:10px}.section-editor-card{display:grid;grid-gap:10px;gap:10px;width:100%}.section-editor-title{font-size:18px;font-weight:700;letter-spacing:.01em;color:var(--brand)}.report-section-editor{display:block;width:100%;min-width:0;min-height:280px;padding:18px 20px;resize:vertical;font-family:Aptos,Calibri,Segoe UI,Arial,sans-serif;font-size:18px;line-height:1.65}.echo-full-report-editor{min-height:64px;max-height:96px;padding:10px 12px;font-size:15px}.compact-section-editor{gap:6px;padding:10px 12px;border:1px solid var(--line);border-radius:16px;background:#fbfdfe}.compact-section-editor.expanded .echo-full-report-editor{min-height:230px;max-height:none}.compact-section-editor .section-editor-title{font-size:15px}.compact-button{padding:6px 10px;min-height:34px}.report-preview-text{margin:0;white-space:pre-wrap;word-break:break-word;font-family:Aptos,Calibri,Segoe UI,Arial,sans-serif;line-height:1.65}.measurement-split-grid{display:grid;grid-gap:16px;gap:16px}.echo-measurement-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.echo-measurement-grid>.measurement-block>.form-grid{grid-template-columns:1fr}.measurement-block{display:grid;grid-gap:12px;gap:12px;border:1px solid var(--line);border-radius:18px;padding:16px;background:#fbfdfe}.measurement-block strong{color:var(--brand);font-size:15px;letter-spacing:.02em}.measurement-block summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between}.measurement-block summary::-webkit-details-marker{display:none}.cardiac-mri-fields{display:grid;grid-gap:12px;gap:12px;margin-top:18px}.mri-section{padding:0;gap:0;overflow:hidden}.mri-section>summary{min-height:46px;padding:10px 14px;background:linear-gradient(180deg,#fff,#f7fbfc)}.mri-section>summary:after{content:"+";color:var(--brand-2);font-size:20px;font-weight:700}.mri-section[open]>summary:after{content:"−"}.mri-section-content{display:grid;grid-gap:12px;gap:12px;padding:4px 14px 14px}.mri-section .module-card-grid{margin-top:8px}.model-list{display:grid;grid-gap:12px;gap:12px}.model-card{border:1px solid var(--line);border-radius:18px;padding:14px;background:#fbfdfe}.model-card.highlighted{border-color:var(--brand-2);background:linear-gradient(180deg,#f9ffff,#e8f5f6);box-shadow:0 16px 36px rgba(19,48,66,.08)}.page-one-preview-stack{display:grid;grid-gap:12px;gap:12px}.diastolic-table td:last-child,.diastolic-table th:last-child{width:48%}.aha-bullseye-legend-text{grid-template-columns:repeat(3,minmax(0,1fr));color:var(--muted);font-size:12px}.aha-bullseye-legend-text,.reference-note-list{display:grid;grid-gap:10px;gap:10px}.reference-note-card{border:1px solid var(--line);border-radius:16px;padding:12px 14px;background:linear-gradient(180deg,#fff,#f7fbfc);color:var(--muted);line-height:1.55}.alerts-list{display:grid;grid-gap:10px;gap:10px}.alert-card{border-radius:16px;padding:12px;background:#fbfdfe;border:1px solid var(--line)}.alert-card p,.alert-card small{margin:6px 0 0}.alert-card.critical{border-color:rgba(165,58,58,.35);background:linear-gradient(180deg,#fff7f7,#fff1f1)}.metric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.compact-metric-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.metric-card{border:1px solid var(--line);border-radius:18px;padding:12px;background:#fff}.metric-card small,.metric-card span{display:block;color:var(--muted)}.metric-card strong{display:block;margin-top:6px;font-size:22px}.metric-card.attention{background:#fffaf0}.metric-card.critical{background:#fff3f3;border-color:rgba(165,58,58,.25)}.modal-backdrop{position:fixed;inset:0;background:rgba(23,48,66,.4);display:grid;place-items:center;padding:24px;z-index:20}.modal-card{width:min(720px,100%);max-height:85vh;overflow:auto;background:white;border-radius:24px;padding:20px;box-shadow:0 24px 80px rgba(19,48,66,.16)}.badge{display:inline-flex;padding:5px 10px;border-radius:999px;background:var(--accent);color:var(--brand);font-size:12px;font-weight:700}.error-text{color:var(--danger)}.section-title{margin:22px 0 10px;font-size:14px;font-weight:700;letter-spacing:.06em;color:var(--brand)}@media (max-width:1180px){.aha-bullseye-legend-text,.app-grid,.app-grid.echo-full-layout,.bullseye-row,.checkbox-grid,.echo-measurement-grid,.form-grid,.metric-grid,.module-card-grid,.workspace-family--active,.workspace-family-options,.workspace-grid{grid-template-columns:1fr}}