:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;color:#14272d;background:#f3f8f7;font-size:16px;--navy:#0b3440;--navy2:#092832;--green:#14966c;--mint:#79dfbb;--line:#dbe7e5;--muted:#687b82;--shadow:0 14px 35px rgba(18,54,64,.1)}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}.brand{display:flex;align-items:center;gap:11px;color:#123d4a}.brand>b{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:var(--mint);font-size:25px}.brand span{display:grid}.brand strong{font-size:20px}.brand small{font-size:10px;letter-spacing:1.7px}.brand.light{color:#fff}.center{min-height:100vh;display:grid;place-content:center;gap:18px;text-align:center}.spinner{width:34px;height:34px;margin:auto;border:4px solid #cce5dc;border-top-color:var(--green);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.login-page{min-height:100vh;display:grid;grid-template-columns:1.05fr .95fr}.login-visual{background:linear-gradient(135deg,#0b3440,#176879);color:#fff;padding:54px 7vw;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.login-visual:after{content:"";position:absolute;width:540px;height:540px;border-radius:50%;background:#79dfbb18;right:-180px;top:80px}.login-visual>div{position:relative;z-index:1}.login-visual h1{font-size:clamp(38px,5vw,67px);line-height:1.03;max-width:690px;letter-spacing:-2.6px;margin:16px 0}.login-visual p{font-size:20px;max-width:590px;color:#c4dfe0}.kicker,.eyebrow{font-size:12px;letter-spacing:2.1px;font-weight:800;color:var(--mint)}.login-visual footer{font-weight:700;color:#d0e7e6}.login-side{display:grid;place-items:center;padding:30px}.login-card{width:min(460px,100%);background:#fff;border:1px solid var(--line);border-radius:24px;padding:32px;box-shadow:var(--shadow)}.login-card .brand{margin-bottom:36px}.login-card h1,.login-card h2{font-size:30px;line-height:1.15;margin:10px 0}.login-card p{color:var(--muted);margin:0 0 24px}.login-card form{display:grid;gap:9px}.login-card label,.field span{font-size:13px;font-weight:750}.login-card input,.field input,.field select,.field textarea{width:100%;border:1px solid #cbdad7;border-radius:11px;padding:12px;background:#fff;color:#14272d}.login-card form>button:first-of-type,.primary{border:0;background:var(--green);color:#fff;border-radius:11px;padding:12px 16px;font-weight:800}.text{border:0;background:none;color:var(--green);padding:9px}.notice{margin:15px 0;padding:11px;background:#edf8f4;border-radius:10px;color:#17644f}.login-card>small{display:block;color:var(--muted);margin-top:18px}.outline{border:1px solid var(--line);background:#fff;color:#123d4a;border-radius:11px;padding:10px 14px;font-weight:750}.app{min-height:100vh;display:grid;grid-template-columns:250px 1fr}.app>aside{position:fixed;width:250px;inset:0 auto 0 0;background:var(--navy2);color:#fff;padding:25px 18px;display:flex;flex-direction:column}.app nav{display:grid;gap:7px;margin-top:34px}.app nav button,.logout{border:0;background:transparent;color:#b9cecf;border-radius:12px;padding:12px;text-align:left;font-weight:700}.app nav button i{display:inline-block;width:29px;font-style:normal;font-size:18px}.app nav button.active,.app nav button:hover{background:#174b58;color:#fff}.coord{margin-top:auto;border-radius:15px;background:#164955;border:1px solid #28616d;padding:14px}.coord small{color:#a8c4c5}.coord strong{display:block;margin:3px 0 9px}.coord button{width:100%;border:0;background:var(--mint);color:#0b3440;border-radius:9px;padding:8px;font-weight:800}.account{display:flex;gap:10px;align-items:center;padding:15px 5px 8px}.account>i,.member>i{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#def4ec;color:#157656;font-weight:800;font-style:normal;flex:0 0 auto}.account span,.account small,.member span,.member small{display:block}.account strong{font-size:13px}.account small{font-size:11px;color:#9cb8ba;max-width:160px;overflow:hidden;text-overflow:ellipsis}.logout{padding:8px 5px;color:#efb4aa}.app>main{grid-column:2;padding:23px 29px 40px;min-width:0}.app main>header{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.app main>header p,.page-head p{margin:0;color:var(--muted);font-size:14px}.app main>header h1{margin:2px 0 0;font-size:29px}.app main>header>div:last-child{display:flex;gap:9px}.patient{background:linear-gradient(110deg,#123d4a,#176879);color:#fff;border-radius:21px;padding:21px 24px;display:grid;grid-template-columns:auto 1fr auto;gap:17px;align-items:center;box-shadow:var(--shadow)}.patient>i{width:66px;height:66px;border-radius:17px;background:#dff5ed;color:#13694f;display:grid;place-items:center;font-style:normal;font-size:23px;font-weight:850}.patient h2{margin:0 0 3px}.patient p{margin:0;color:#c7dcdd}.goal{text-align:right}.goal small{color:#a9c7c7}.goal strong{display:block;margin:3px 0 8px}.goal>span{display:block;width:210px;height:8px;background:#ffffff24;border-radius:99px;overflow:hidden}.goal b{display:block;width:68%;height:100%;background:var(--mint)}.grid{display:grid;grid-template-columns:1.35fr .65fr;gap:18px;margin-top:18px}.grid>div{display:grid;gap:18px;align-content:start}.card{background:#fff;border:1px solid #e0ebe9;border-radius:19px;padding:20px;box-shadow:0 8px 24px #173d4810;margin-bottom:18px}.card h3{margin:0;font-size:18px}.sub{margin:2px 0 16px;color:var(--muted);font-size:13px}.visit{display:grid;grid-template-columns:auto 1fr;gap:15px;align-items:center;background:#edf8f4;border-radius:15px;padding:16px}.visit>b{width:62px;height:65px;border-radius:13px;background:#fff;display:grid;place-content:center;text-align:center;font-size:24px}.visit>b small{font-size:11px;text-transform:uppercase;color:#e26050}.visit span>*{display:block}.visit span small{color:var(--muted);margin:3px 0 8px}.visit span i,.row>i{display:inline-block;background:#dff4eb;color:#137552;border-radius:99px;padding:5px 8px;font-size:12px;font-style:normal;font-weight:800}.tasks{display:grid;gap:8px}.tasks label{display:grid;grid-template-columns:auto 1fr auto;gap:11px;align-items:center;border:1px solid var(--line);border-radius:12px;padding:11px}.tasks input{width:20px;height:20px;accent-color:var(--green)}.tasks span>*{display:block}.tasks span small,.tasks time{font-size:12px;color:var(--muted)}.tasks .done{background:#f1f8f5}.tasks .done strong{text-decoration:line-through;color:#6d7d79}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.metric{background:#fff;border:1px solid var(--line);border-top:4px solid;padding:13px;border-radius:14px}.metric.green{border-top-color:var(--green)}.metric.blue{border-top-color:#397cc5}.metric.amber{border-top-color:#e9a23b}.metric strong,.metric small{display:block}.metric strong{font-size:21px}.metric small{font-size:11px;color:var(--muted)}.feed{display:flex;gap:10px;padding:10px 0;border-bottom:1px solid #edf2f1}.feed>i{width:34px;height:34px;background:#e7f2ff;color:#3672aa;border-radius:10px;display:grid;place-items:center;font-style:normal;font-size:12px;font-weight:800;flex:0 0 auto}.feed p{margin:0;font-size:13px}.feed small{color:var(--muted);font-size:11px}.pharmacy{display:flex;gap:12px;background:#fff8ea;border:1px solid #f3dfb7;border-radius:14px;padding:13px}.pharmacy>b{width:42px;height:42px;background:#ffe5b4;border-radius:11px;display:grid;place-items:center}.pharmacy span>*{display:block}.pharmacy i{font-style:normal;color:#107656;font-size:12px;font-weight:800}.pharmacy small{color:var(--muted)}.emergency{padding:12px 15px;background:#fff2ef;border:1px solid #ffd6ce;color:#7c493f;border-radius:13px}.page-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:18px}.page-head h2{margin:0;font-size:26px}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.service{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px}.service>i{width:50px;height:50px;border-radius:14px;background:#e7f6f1;color:var(--green);display:grid;place-items:center;font-style:normal;font-size:23px}.service h3{margin:13px 0 5px}.service p{color:var(--muted);min-height:60px}.service button{width:100%;border:1px solid var(--line);background:#fff;border-radius:10px;padding:9px;font-weight:750}.row{display:grid;grid-template-columns:1.2fr 1fr auto;align-items:center;padding:13px 4px;border-bottom:1px solid #edf2f1}.row span>*{display:block}.row small{color:var(--muted)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.steps>div{display:grid;gap:8px;padding:15px;border-radius:14px;background:#f2f8f6}.steps b{width:29px;height:29px;border-radius:50%;background:var(--green);color:#fff;display:grid;place-items:center}.family{display:grid;grid-template-columns:1fr 350px;gap:18px}.family textarea,.field textarea{width:100%;min-height:100px;border:1px solid var(--line);border-radius:12px;padding:12px;resize:vertical;margin-bottom:9px}.member{display:flex;gap:11px;align-items:center;padding:11px 0;border-bottom:1px solid var(--line)}.member span>*{display:block}.member small{color:var(--muted)}.empty{padding:22px;text-align:center;color:var(--muted)}.modal-bg{position:fixed;inset:0;background:#071f2788;display:grid;place-items:center;padding:20px;z-index:20}.modal{width:min(600px,100%);background:#fff;border-radius:22px;box-shadow:0 25px 70px #0004}.modal>header{display:flex;justify-content:space-between;padding:19px 22px;border-bottom:1px solid var(--line)}.modal>header h2{margin:0}.modal>header button{border:0;border-radius:9px;width:34px;height:34px;font-size:22px}.modal form{padding:21px}.form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field{display:grid;gap:6px}.field.full{grid-column:1/-1}.actions{display:flex;justify-content:flex-end;gap:9px;margin-top:20px}.toast{position:fixed;right:22px;bottom:22px;background:var(--navy2);color:#fff;border-radius:12px;padding:13px 17px;box-shadow:var(--shadow);z-index:30}@media(max-width:1000px){.grid{grid-template-columns:1fr}.app{grid-template-columns:210px 1fr}.app>aside{width:210px}.family{grid-template-columns:1fr}.services{grid-template-columns:1fr 1fr}.login-page{grid-template-columns:1fr}.login-visual{display:none}}@media(max-width:720px){.app{display:block}.app>aside{position:static;width:auto}.coord{margin-top:25px}.app>main{padding:16px}.patient{grid-template-columns:auto 1fr}.goal{grid-column:1/-1;text-align:left}.goal>span{width:100%}.metrics,.services,.steps{grid-template-columns:1fr}.app main>header{align-items:flex-start;gap:12px}.app main>header>div:last-child{flex-direction:column}.form{grid-template-columns:1fr}.field.full{grid-column:auto}.row{grid-template-columns:1fr;gap:5px}}.auth-help{display:block;color:var(--muted);font-size:12px;line-height:1.45;margin:2px 0 5px}.login-card form>.auth-link{border:0;background:transparent;color:var(--green);padding:7px 4px;font-size:13px;font-weight:750;text-align:center}.auth-recovery{background:linear-gradient(135deg,#eff8f5,#e7f2f3);padding:24px}.auth-recovery .login-card{text-align:left}.auth-recovery .login-card .brand{margin-bottom:28px}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;background:#edf5f2;border-radius:11px;padding:4px;margin:0 0 10px}.auth-tabs button{border:0;background:transparent;color:#60777d;border-radius:8px;padding:10px;font-weight:800}.auth-tabs button.active{background:#fff;color:var(--green);box-shadow:0 2px 8px #173d4815}.notice.error{background:#fff0ed;color:#a44438}.pharmacy-search{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:end}.pharmacy-search label{display:grid;gap:6px}.pharmacy-search label span{font-size:13px;font-weight:750}.pharmacy-search input{width:100%;border:1px solid #cbdad7;border-radius:11px;padding:12px;background:#fff;color:#14272d}.maps-note{margin:14px 0 0;color:var(--muted);font-size:13px;line-height:1.5}.maps-note b{color:#107656}@media(max-width:600px){.pharmacy-search{grid-template-columns:1fr}}.demo-divider{display:flex;align-items:center;gap:10px;color:#8a999e;font-size:12px;margin:4px 0}.demo-divider:before,.demo-divider:after{content:"";height:1px;background:var(--line);flex:1}.login-card form>.demo-button{border:1px solid #76bda6;background:#eff9f5;color:#126c52;border-radius:11px;padding:12px 16px;font-weight:800}.login-card form>.demo-button:disabled{opacity:.45;cursor:not-allowed}.demo-badge{margin-top:20px;border:1px solid #79dfbb66;background:#79dfbb18;color:var(--mint);border-radius:999px;padding:6px 10px;font-size:10px;font-weight:850;letter-spacing:1.2px;text-align:center}.service-rate{display:flex;align-items:baseline;gap:8px;margin:7px 0 2px}.service-rate strong{font-size:23px;color:#117455}.service-rate small{color:var(--muted)}.price-note{color:var(--muted);font-size:12px;margin:10px 2px 18px}.history-price{color:#117455}.delivery-rate{display:flex;align-items:center;gap:13px;margin-top:13px;padding:13px;background:#f2f8f6;border-radius:13px}.delivery-rate span{display:grid;min-width:105px}.delivery-rate span strong{color:#117455;font-size:19px}.delivery-rate span small,.delivery-rate p{color:var(--muted);font-size:12px}.delivery-rate p{margin:0 0 0 auto;max-width:280px}.booking-rate{grid-column:1/-1;background:#edf8f4;border:1px solid #cfe9df;border-radius:13px;padding:13px;display:grid}.booking-rate span,.booking-rate small{color:var(--muted);font-size:12px}.booking-rate strong{font-size:24px;color:#117455}@media(max-width:600px){.delivery-rate{align-items:flex-start;flex-direction:column}.delivery-rate p{margin:0}}
