:root{--ink:#163f46;--muted:#6a7f81;--teal:#058b80;--mint:#d9eee8;--line:#e0e9e5;--bg:#f7f9f6}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.55 Arial,sans-serif}button,input,select,textarea{font:inherit}button,a,select{cursor:pointer}a{color:inherit;text-decoration:none}button{border:0;border-radius:8px;padding:11px 18px;background:#e8efeb;color:var(--ink);font-weight:600}button:hover{filter:brightness(.96)}button:focus-visible,a:focus-visible{outline:3px solid #47bba8;outline-offset:3px}.dark,.primary{background:var(--ink);color:white}.primary{background:var(--teal)}header{height:94px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;background:#fff;border-bottom:1px solid var(--line);gap:24px}.brand{display:flex;align-items:center;gap:10px;letter-spacing:2px;font-weight:800;font-size:21px}.brand img{width:46px;height:53px;object-fit:contain}.brand small{display:block;font-size:8px;letter-spacing:1.9px}nav{display:flex;gap:28px;font-size:13px}nav a.active{color:var(--teal);font-weight:bold}.headright{display:flex;gap:14px;align-items:center}select{background:white;border:1px solid var(--line);border-radius:7px;padding:9px;color:var(--ink)}main{min-height:76vh}.wrap{max-width:1240px;margin:auto;padding:45px 32px}.hero{display:grid;grid-template-columns:1.12fr 1fr;gap:50px;padding-top:48px;align-items:center}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:bold;color:var(--teal);text-transform:uppercase}.pill{display:inline-flex;align-items:center;gap:8px;background:#e6f1e9;border:1px solid #cce1d4;border-radius:30px;padding:7px 13px;font-size:11px}.dot{width:6px;height:6px;background:var(--teal);border-radius:50%}h1{font-family:Georgia,serif;font-size:64px;line-height:1.08;letter-spacing:-2px;font-weight:400;margin:24px 0}h1 em{font-style:normal;color:var(--teal)}h2{font-family:Georgia,serif;font-size:35px;font-weight:400;line-height:1.2;margin:12px 0 18px}h3{font-size:17px;margin:8px 0}.sub{color:var(--muted);font-size:16px;max-width:490px}.heroart{height:390px;background:#deebe2;border-radius:160px 160px 22px 22px;position:relative;display:flex;align-items:center;justify-content:center;background-image:radial-gradient(ellipse at 80% 20%,#f2f5db,transparent 65%)}.heroart:before{content:'+';position:absolute;right:28px;top:20px;font-size:120px;color:#c2d9cc;font-weight:bold}.calendar{background:white;width:315px;padding:22px;border-radius:16px;transform:rotate(-5deg);box-shadow:0 25px 50px #20493a19}.calgrid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;text-align:center;font-size:12px;margin-top:20px}.calgrid span{padding:6px}.calgrid .sel{background:var(--teal);border-radius:50%;color:white}.float{position:absolute;bottom:24px;right:-5px;background:white;border-radius:10px;padding:15px 22px;box-shadow:0 12px 40px #20493a15;font-size:12px;transform:rotate(3deg)}.searchbox{display:grid;grid-template-columns:1.1fr 1fr 1fr auto;background:white;padding:18px;border:1px solid var(--line);border-radius:12px;gap:16px;margin-top:40px;box-shadow:0 8px 25px #23483e05}.searchbox label{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:var(--muted);display:block}.searchbox select,.searchbox input{border:0;width:100%;padding:7px 0;color:var(--ink);background:white}.trust{display:flex;gap:28px;color:var(--muted);font-size:11px;margin:20px 0 48px}.sectionhead{display:flex;justify-content:space-between;align-items:end;margin-top:35px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:22px}.card{border:1px solid var(--line);background:white;border-radius:12px;padding:25px}.icon{width:42px;height:42px;display:grid;place-items:center;background:#e9f3ed;border-radius:10px;color:var(--teal);font-size:23px}.muted{color:var(--muted)}.small{font-size:12px}.flex{display:flex;align-items:center;gap:12px}.between{justify-content:space-between}.avatar{width:55px;height:55px;background:#e5eee5;border-radius:50%;display:grid;place-items:center;font-family:Georgia,serif;font-size:20px}.tag{display:inline-block;background:#e7f3ee;color:#21806a;border-radius:5px;font-size:10px;padding:4px 8px}.slots{display:flex;flex-wrap:wrap;gap:7px;margin-top:20px}.slots button{font-size:12px;background:#e8f4f0;color:#087969;padding:8px 12px}.notice{font-size:12px;padding:10px 16px;border:1px solid #d9e4d8;background:#edf2e7;border-radius:8px;margin-bottom:22px}.dashboard{display:grid;grid-template-columns:215px 1fr;min-height:75vh}.sidebar{background:white;border-right:1px solid var(--line);padding:30px 18px}.sidebar button{width:100%;text-align:left;background:transparent;margin:4px 0;font-size:13px}.sidebar button.active{background:#e3f1e9;color:#087a69}.sidebottom{margin-top:60px;border-top:1px solid var(--line);padding-top:18px}.dashmain{padding:35px;max-width:1200px;width:100%;margin:auto}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:24px 0}.stat{background:white;border:1px solid var(--line);border-radius:10px;padding:20px}.stat strong{font:34px Georgia;display:block}.tablewrap{overflow:auto;background:white;border:1px solid var(--line);border-radius:10px}table{width:100%;border-collapse:collapse;font-size:13px}th{text-align:left;background:#f0f4f0;font-size:10px;letter-spacing:1px;text-transform:uppercase;padding:15px}td{padding:16px;border-top:1px solid var(--line)}.price{font:40px Georgia;margin:20px 0}.price small{font:12px Arial}.featured{border:2px solid var(--teal);position:relative}.featurelist{padding-left:18px;color:var(--muted);font-size:13px;line-height:2.4}.overlay{position:fixed;inset:0;background:#133b4266;z-index:20;display:flex;align-items:center;justify-content:center;padding:20px;backdrop-filter:blur(4px)}[hidden]{display:none!important}.dialog{background:white;width:100%;max-width:570px;border-radius:16px;padding:30px;max-height:90vh;overflow:auto}.dialog label{display:block;font-size:12px;margin:13px 0 5px}.dialog input,.dialog textarea,.dialog select{width:100%;border:1px solid var(--line);border-radius:6px;padding:11px}.dialog textarea{min-height:100px}.close{float:right;background:#edf2ee;padding:5px 12px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.wide{width:100%;margin-top:18px}.empty{text-align:center;padding:55px;color:var(--muted)}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;padding:14px 25px;border-radius:10px;z-index:40;display:none}footer{padding:25px 5%;display:flex;justify-content:space-between;border-top:1px solid var(--line);font-size:11px;color:var(--muted);gap:15px}.banner{background:var(--ink);color:white;padding:35px;border-radius:14px;margin-top:45px;display:flex;align-items:center;justify-content:space-between}.banner h2{margin:0 0 10px}.banner button{background:#d5eadc}.record{display:grid;grid-template-columns:1fr 1fr;gap:18px}.tabs{display:flex;gap:9px;margin:20px 0}.tabs button.active{background:var(--teal);color:white}@media(max-width:900px){nav{display:none}h1{font-size:48px}.hero{gap:25px}.heroart{height:320px}.calendar{width:250px}.searchbox{grid-template-columns:1fr 1fr}.grid{grid-template-columns:1fr 1fr}.dashboard{grid-template-columns:160px 1fr}.dashmain{padding:20px}}@media(max-width:600px){header{height:78px;padding:0 18px}.brand{font-size:16px}.brand img{width:34px}.headright{gap:7px}.headright button{font-size:11px;padding:10px}.wrap{padding:25px 20px}.hero{grid-template-columns:1fr;padding-top:15px}.heroart{height:280px;margin-top:8px}h1{font-size:47px}.searchbox,.grid,.record{grid-template-columns:1fr}.searchbox{margin-top:25px}.trust{gap:12px;flex-wrap:wrap;margin-bottom:30px}.sectionhead{align-items:start}.dashboard{display:block}.sidebar{display:flex;gap:5px;overflow:auto;padding:10px}.sidebar button{width:auto;white-space:nowrap}.sidebottom,.sidebrand{display:none}.stats{gap:8px}.stat{padding:12px}.stat strong{font-size:27px}.banner{display:block;padding:25px}.banner button{margin-top:12px}footer{flex-wrap:wrap}.formgrid{grid-template-columns:1fr}.float{right:0}}
@media print{header,footer,.sidebar,.notice,button{display:none!important}.dashboard{display:block}.overlay{position:static;background:white;display:block}.dialog{max-width:none}body>main{display:none}}
.patient-entry{border:1px solid #b8dcd1;background:#e8f5ef;color:#087a69;border-radius:8px;padding:10px 14px;font-size:13px;font-weight:600;white-space:nowrap}.patient-heading{display:flex;justify-content:space-between;gap:25px;align-items:center}.patient-cta{display:inline-block;background:var(--teal);color:white;padding:12px 20px;border-radius:8px;font-size:13px;font-weight:600}.patient-identity{display:flex;align-items:center;gap:15px;margin:25px 0}.patient-tabs{flex-wrap:wrap}.patient-space .empty{padding:40px 20px}@media(max-width:1100px){header nav{display:none}}@media(max-width:600px){header{height:auto;min-height:100px;flex-wrap:wrap;padding:12px 16px;gap:10px}.headright{width:100%;justify-content:space-between}.patient-entry{font-size:12px;padding:8px 12px}.patient-heading{display:block}.patient-heading h1{font-size:36px!important}.patient-heading .patient-cta{margin:10px 0 25px}.patient-tabs button{font-size:12px;padding:9px 11px}}
.profile-photo{object-fit:cover;flex-shrink:0}.patient-space .grid .card .avatar{width:55px;height:55px}
.admin-entry{font-size:12px;color:var(--muted);padding:8px;border:1px solid var(--line);border-radius:7px}header .headright{flex-wrap:wrap}@media(max-width:600px){.headright .admin-entry{order:5}.wrap .flex.between{flex-wrap:wrap;gap:10px}}

/* Shared header typography follows the professional workspace button. */
.headright #admin-entry,.headright #patient-entry,.headright #workspace{font-family:Arial,sans-serif;font-size:15px;font-weight:600;line-height:1.55;letter-spacing:normal;white-space:nowrap}.headright #admin-entry{order:0}.headright #patient-entry{order:1}.headright #workspace{order:2}.headright #language{order:3}@media(max-width:600px){.headright #admin-entry,.headright #patient-entry,.headright #workspace{font-size:11px}}
/* Compact aligned subscription cards; seven-character amount column. */
.pricing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,280px));justify-content:center;gap:16px;margin:24px 0 16px;max-width:872px}
.pricing-card{display:flex;flex-direction:column;min-width:0;padding:20px;border-width:2px}
.pricing-card .eyebrow{font-size:9px;letter-spacing:1px}
.pricing-card h3{font-size:16px;line-height:1.35;min-height:4.05em;margin:10px 0 0}
.pricing-card .price{display:flex;align-items:baseline;gap:8px;white-space:nowrap;font:600 32px/1.2 Arial,sans-serif;margin:14px 0 4px;font-variant-numeric:tabular-nums}
.pricing-card .price-amount{display:inline-block;width:7ch;flex:0 0 7ch;letter-spacing:-.6px}
.pricing-card .price small{font:12px/1 Arial,sans-serif}
.pricing-card .featurelist{font-size:12px;line-height:1.75;margin:16px 0 18px;padding-left:16px;flex:1}
.pricing-card .wide{font-size:13px;padding:10px 12px;margin-top:auto}
.pricing-eligibility{max-width:872px;margin:14px 0}
@media(max-width:1000px){.pricing-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.pricing-card{padding:16px}.pricing-card .price{font-size:28px;gap:6px}}
@media(max-width:760px){.pricing-grid{grid-template-columns:minmax(0,320px);justify-content:start}.pricing-card h3{min-height:0}.pricing-card .price{font-size:32px}.pricing-card .wide{margin-top:0}}
#app>.wrap>form label,#app>.wrap form label{display:block;margin:14px 0 6px;font-size:14px}#app>.wrap form input:not([type=checkbox]),#app>.wrap form select{display:block;width:100%;padding:12px;margin-top:6px;border:1px solid var(--line);border-radius:7px;font:inherit;background:white}#app>.wrap form button{margin-top:20px}.tabs{flex-wrap:wrap}#account-entry a{font-size:13px;font-weight:600;color:var(--teal)}
