@import url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;600;700;800&display=swap");:root{--bg:#f7f4ee;--surface:#ffffff;--surface-2:#f0f7f5;--ink:#1e2a2f;--muted:#68757b;--line:#dbe2df;--primary:#047c74;--primary-strong:#035f59;--brand-pink:#ec137f;--brand-pink-dark:#be0f65;--brand-teal:#008b83;--accent:#c65337;--blue:#335f8f;--yellow:#f3c953;--danger:#b94040;--ok:#26805c;--radius:8px;--shadow:0 16px 42px rgba(26,42,45,0.08)}*{box-sizing:border-box}html{background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;letter-spacing:0}body{margin:0}a{color:inherit;text-decoration:none}button,input,select{font:inherit}.app-shell{min-height:100vh}.topbar{position:-webkit-sticky;position:sticky;top:0;z-index:20;justify-content:space-between;gap:20px;padding:14px clamp(18px,4vw,56px);background:rgba(255,255,255,.9);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.brand,.topbar{display:flex;align-items:center}.brand{gap:10px;min-width:190px;font-weight:800}.brand-mark{display:grid;width:34px;height:34px;place-items:center;border-radius:50%;color:white;background:var(--primary);font-weight:900}.surface-nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.icon-button,.primary-action,.secondary-action,.surface-nav a{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;border-radius:var(--radius);border:1px solid var(--line);padding:0 12px;background:var(--surface);color:var(--ink);white-space:nowrap}.primary-action,.surface-nav a.active{border-color:var(--primary);background:var(--primary);color:white;cursor:pointer}.app-topbar{justify-content:space-between}.surface-identity{display:inline-flex;align-items:center;gap:8px;min-height:40px;border-radius:var(--radius);border:1px solid var(--line);padding:0 12px;background:var(--surface-2);color:var(--primary-strong);font-weight:800}.secondary-action{background:transparent}.page{padding:clamp(24px,5vw,72px) clamp(18px,4vw,56px)}.hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);align-items:center;grid-gap:clamp(28px,6vw,72px);gap:clamp(28px,6vw,72px);min-height:calc(100vh - 160px);padding-bottom:40px}.hero h1,.page-title h1{max-width:860px;margin:0;font-size:clamp(2.4rem,6vw,5.6rem);line-height:.95;letter-spacing:0}.hero p,.page-title p{max-width:760px;color:var(--muted);font-size:1.05rem;line-height:1.65}.hero-media{min-height:520px;border-radius:0;background:linear-gradient(180deg,rgba(4,124,116,.1),rgba(198,83,55,.16)),url(https://images.unsplash.com/photo-1584516150909-c43483ee7932?auto=format&fit=crop&w=1200&q=80);background-size:cover;background-position:50%;box-shadow:var(--shadow)}.hero-actions,.toolbar{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.section{margin-top:34px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:16px}.mobile-frame h2,.panel h2,.section-heading h2{margin:0;font-size:1.35rem}.muted,.panel p,.section-heading p{color:var(--muted)}.grid{display:grid;grid-gap:16px;gap:16px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.card,.mobile-frame,.panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}.card{padding:18px}.panel{padding:22px}.card h3,.card h4{margin:0 0 8px}.card p{color:var(--muted);line-height:1.55}.pill-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.pill{display:inline-flex;align-items:center;min-height:28px;border-radius:999px;border:1px solid var(--line);padding:0 10px;color:var(--muted);background:#fbfcfb;font-size:.84rem}.pill.ok{border-color:rgba(38,128,92,.25);color:var(--ok);background:rgba(38,128,92,.08)}.pill.warn{border-color:rgba(198,83,55,.22);color:var(--accent);background:rgba(198,83,55,.08)}.pill.danger{border-color:rgba(185,64,64,.25);color:var(--danger);background:rgba(185,64,64,.08)}.readiness{display:grid;grid-gap:8px;gap:8px;margin:14px 0;border:1px solid var(--line);border-radius:var(--radius);padding:12px;background:#fbfcfb}.readiness p{margin:0;color:var(--muted);font-size:.9rem;line-height:1.45}.readiness strong{color:var(--ink)}.dashboard{display:grid;grid-template-columns:280px minmax(0,1fr);min-height:calc(100vh - 69px)}.sidebar{border-right:1px solid var(--line);background:#ffffff;padding:22px}.sidebar .brand{margin-bottom:28px}.side-nav{display:grid;grid-gap:8px;gap:8px}.side-nav a{display:flex;align-items:center;gap:10px;min-height:42px;border-radius:var(--radius);padding:0 12px;color:var(--muted)}.side-nav a.active{background:var(--surface-2);color:var(--primary-strong)}.workspace{padding:24px}.workspace-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.workspace-header h1{margin:0;font-size:clamp(1.7rem,3vw,2.6rem)}.stat{display:grid;grid-gap:8px;gap:8px;min-height:130px}.stat strong{font-size:2rem}.stat small{color:var(--muted)}.table{width:100%;border-collapse:collapse}.table td,.table th{border-bottom:1px solid var(--line);padding:12px 8px;text-align:left;vertical-align:top}.table th{color:var(--muted);font-size:.78rem;text-transform:uppercase}.workflow{display:grid;grid-gap:10px;gap:10px}.workflow-step{display:grid;grid-template-columns:26px minmax(0,1fr);grid-gap:10px;gap:10px;align-items:start}.step-dot{display:grid;width:26px;height:26px;place-items:center;border-radius:50%;color:white;background:var(--primary);font-size:.8rem;font-weight:800}.progress-bars{grid-gap:12px}.bar,.progress-bars{display:grid;gap:12px}.bar{grid-template-columns:140px minmax(0,1fr) 54px;align-items:center;grid-gap:12px}.bar-track{height:12px;overflow:hidden;border-radius:999px;background:#e6ecea}.bar-fill{height:100%;border-radius:inherit;background:var(--primary)}.mobile-shell{display:grid;grid-template-columns:minmax(280px,420px) minmax(0,1fr);grid-gap:28px;gap:28px;align-items:start}.mobile-frame{max-width:420px;min-height:720px;overflow:hidden;border-radius:28px}.mobile-header{padding:22px;color:white;background:var(--primary)}.mobile-body{display:grid;grid-gap:14px;gap:14px;padding:18px}.task{display:grid;grid-template-columns:34px minmax(0,1fr);grid-gap:12px;gap:12px;align-items:center;border:1px solid var(--line);border-radius:var(--radius);padding:12px;background:#fff}.task svg{color:var(--primary)}.action-panel{display:grid;grid-gap:12px;gap:12px;min-width:min(100%,360px);margin-top:14px}.action-status{display:grid;grid-template-columns:24px minmax(0,1fr);grid-gap:10px;gap:10px;align-items:start;border:1px solid rgba(4,124,116,.22);border-radius:var(--radius);padding:12px;background:rgba(4,124,116,.07)}.action-status svg{color:var(--primary)}.action-status.status-loading{border-color:rgba(51,95,143,.24);background:rgba(51,95,143,.08)}.action-status.status-loading svg{color:var(--blue)}.action-status.status-fallback{border-color:rgba(198,83,55,.22);background:rgba(198,83,55,.08)}.action-status.status-fallback svg{color:var(--accent)}.action-status.status-error{border-color:rgba(185,64,64,.25);background:rgba(185,64,64,.08)}.action-status.status-error svg{color:var(--danger)}.action-status p{margin:4px 0 0;color:var(--muted);font-size:.9rem;line-height:1.4}.action-form{padding:12px;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.action-fields,.action-form{display:grid;grid-gap:10px;gap:10px}.action-fields{min-inline-size:0;margin:0;border:0;padding:0}.field{display:grid;grid-gap:6px;gap:6px}.field span{color:var(--muted);font-size:.82rem;font-weight:700}.field input,.field select{min-height:40px;width:100%;border:1px solid var(--line);border-radius:var(--radius);padding:0 10px;background:#fff;color:var(--ink)}.patient-page{--bg:#ffffff;--surface-2:#fff3f8;--primary:var(--brand-pink);--primary-strong:var(--brand-pink-dark);--line:#eadde3;background:#fff;color:#20282c;font-family:Open Sans,Arial,sans-serif}.patient-page .topbar{background:rgba(255,255,255,.96)}.patient-page .brand-mark,.patient-page .surface-identity{background:#e8f7f5;color:var(--brand-teal)}.patient-page .primary-action{border-color:var(--brand-pink);background:var(--brand-pink)}.patient-hero{display:grid;grid-template-columns:minmax(320px,.95fr) minmax(420px,1.2fr);grid-gap:clamp(28px,5vw,72px);gap:clamp(28px,5vw,72px);align-items:start;min-height:calc(100vh - 88px);padding:clamp(34px,6vw,84px) clamp(18px,5vw,72px) 42px;background:linear-gradient(90deg,rgba(0,139,131,.07),rgba(236,19,127,.06)),#fff}.patient-hero-copy{position:-webkit-sticky;position:sticky;top:102px;display:grid;grid-gap:18px;gap:18px}.patient-logo{width:min(280px,72vw);height:auto}.brand-pill{border-color:rgba(236,19,127,.22);background:rgba(236,19,127,.08);color:var(--brand-pink-dark);font-weight:800}.patient-hero h1{max-width:720px;margin:0;color:#1f272b;font-size:clamp(2.35rem,5vw,4.8rem);line-height:1.02}.patient-hero p{max-width:720px;margin:0;color:#617078;font-size:1.02rem;line-height:1.72}.patient-trust-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}.patient-trust-row span{display:inline-flex;align-items:center;gap:8px;min-height:38px;border:1px solid rgba(0,139,131,.22);border-radius:999px;padding:0 13px;color:#0d6f69;background:#f0fbfa;font-weight:800}.booking-card{display:grid;grid-gap:14px;gap:14px;border:1px solid #eadde3;border-radius:8px;padding:clamp(16px,3vw,26px);background:#fff;box-shadow:0 24px 70px rgba(74,45,60,.12)}.profile-strip{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid rgba(0,139,131,.18);border-radius:8px;padding:14px;background:#f5fbfa}.profile-strip strong{display:block;margin-top:8px}.profile-strip p{margin:4px 0 0;color:#64737a}.patient-booking-form{display:grid;grid-gap:14px;gap:14px}.booking-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.field-wide{grid-column:1/-1}.patient-page .field span{color:#37434a}.patient-page .field input,.patient-page .field select{min-height:46px;border-color:#ded8dc}.patient-page .field input:focus,.patient-page .field select:focus{border-color:var(--brand-pink);box-shadow:0 0 0 3px rgba(236,19,127,.12);outline:0}.deposit-card{display:flex;justify-content:space-between;gap:16px;border:1px solid rgba(236,19,127,.18);border-radius:8px;padding:16px;background:#fff6fa}.deposit-card h3{margin:10px 0 6px;font-size:1.25rem}.deposit-card strong{color:var(--brand-pink);font-size:clamp(1.55rem,4vw,2.2rem);white-space:nowrap}.deposit-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:10px;gap:10px}.deposit-option{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;border:1px solid #ded8dc;border-radius:8px;background:#fff;color:#273138;cursor:pointer;font-weight:800}.deposit-option.active{border-color:var(--brand-pink);background:#fff0f7;color:var(--brand-pink-dark)}.checkbox-field{display:grid;grid-template-columns:20px minmax(0,1fr);grid-gap:10px;gap:10px;align-items:start;color:#536168;font-size:.92rem;line-height:1.55}.checkbox-field input{width:18px;height:18px;accent-color:var(--brand-pink)}.patient-submit{min-height:50px;font-weight:800}.patient-section{padding:42px clamp(18px,5vw,72px)}.patient-section .section-heading{align-items:flex-start}.patient-section .section-heading h2{margin:12px 0 0;font-size:clamp(1.6rem,3vw,2.3rem)}.patient-section .section-heading>p{max-width:560px;color:#64737a;line-height:1.65}.service-card{min-height:190px;border:1px solid #eadde3;border-radius:8px;padding:22px;background:#fff;box-shadow:0 18px 44px rgba(74,45,60,.08)}.service-card svg{color:var(--brand-pink)}.service-card h3{margin:18px 0 8px}.service-card p{color:#64737a;line-height:1.62}.branch-band{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:14px;gap:14px;background:#f6fbfa}.branch-band article{border:1px solid rgba(0,139,131,.2);border-radius:8px;padding:18px;background:#fff}.branch-band h3{margin:12px 0 8px}.branch-band p{color:#64737a;line-height:1.55}.action-fields:disabled,.primary-action:disabled{cursor:not-allowed;opacity:.72}.spin{animation:spin .85s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}@media (max-width:980px){.branch-band,.dashboard,.hero,.mobile-shell,.patient-hero{grid-template-columns:1fr}.hero{min-height:auto}.hero-media{min-height:320px}.sidebar{border-right:0;border-bottom:1px solid var(--line)}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.patient-hero{min-height:auto}.patient-hero-copy{position:static}.deposit-options{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:700px){.section-heading,.topbar,.workspace-header{align-items:stretch;flex-direction:column}.surface-nav{justify-content:flex-start}.bar,.booking-grid,.deposit-options{grid-template-columns:1fr}.deposit-card,.profile-strip{align-items:stretch;flex-direction:column}.patient-hero{padding-top:24px}}