:root{--bg:#f7fbfa;--card:#fff;--text:#132a27;--muted:#61716e;--line:#dce9e6;--green:#087a66;--green2:#0aa07f;--soft:#e4f6f1;--red:#b42318;--shadow:0 16px 50px rgba(24,73,64,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;background:var(--bg);color:var(--text);line-height:1.6}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}
.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:22px;padding:14px clamp(18px,4vw,64px);background:rgba(247,251,250,.94);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:18px;white-space:nowrap}.brand small{display:block;font-size:11px;color:var(--muted);font-weight:650}.brandmark{width:38px;height:38px;border-radius:13px;background:var(--green);color:#fff;display:grid;place-items:center;font-size:22px}.topbar nav{display:flex;gap:18px;margin-left:auto}.topbar nav a{font-size:14px;color:#314844}.topbar nav a:hover{color:var(--green)}.top-actions{display:flex;gap:8px}
button,.btn{border:0;border-radius:12px;min-height:44px;padding:10px 16px;font-weight:750;cursor:pointer}.primary{background:var(--green);color:white}.primary:hover{background:#066452}.soft{background:var(--soft);color:#075f51}.ghost{background:transparent;border:1px solid var(--line);color:var(--text)}.linkbtn{background:transparent;color:var(--green);padding:8px}
main{overflow:hidden}.hero{max-width:1260px;margin:0 auto;padding:74px clamp(20px,5vw,70px);display:grid;grid-template-columns:1.25fr .75fr;gap:55px;align-items:center}.eyebrow{font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.14em;color:var(--green)}.hero h1{font-size:clamp(38px,5.4vw,72px);line-height:1.02;letter-spacing:-.045em;margin:12px 0 18px;max-width:900px}.hero-copy>p{max-width:760px;color:var(--muted);font-size:18px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0}.safety-note{border-left:4px solid #efb14c;background:#fff8e9;padding:14px 16px;border-radius:10px;color:#6e4c12;max-width:780px}.hero-panel{background:linear-gradient(145deg,#073f37,#0c7c68);color:#fff;border-radius:28px;padding:30px;box-shadow:var(--shadow)}.pulse{width:70px;height:70px;border-radius:22px;background:#fff;color:var(--green);display:grid;place-items:center;font-size:34px}.hero-panel h3{font-size:25px;margin:22px 0}.mini-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.mini-grid div{padding:16px;border:1px solid rgba(255,255,255,.18);border-radius:16px;background:rgba(255,255,255,.07)}.mini-grid b{display:block;font-size:22px}.mini-grid span{font-size:12px;opacity:.8}
.quick-grid{max-width:1220px;margin:0 auto 30px;padding:0 20px;display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.quick-grid article,.tips article{background:var(--card);border:1px solid var(--line);padding:22px;border-radius:18px}.quick-grid article span{font-size:26px}.quick-grid h3,.tips h3{margin:10px 0 6px}.quick-grid p,.tips p{margin:0;color:var(--muted);font-size:14px}
.section{padding:72px clamp(20px,5vw,70px);max-width:1320px;margin:auto}.section.alt{max-width:none;background:#eff7f5}.section.alt>*{max-width:1180px;margin-left:auto;margin-right:auto}.section-head{display:flex;justify-content:space-between;align-items:end;gap:18px;margin-bottom:24px}.section-head h2{font-size:clamp(30px,4vw,48px);letter-spacing:-.03em;margin:4px 0}.search{width:min(360px,100%);border:1px solid var(--line);border-radius:12px;padding:12px 14px;background:white;min-height:44px}
.tool-card{background:var(--card);border:1px solid var(--line);border-radius:24px;padding:24px;box-shadow:var(--shadow);max-width:900px}.tool-card label,.dialog-card label{display:grid;gap:8px;font-weight:700;margin-bottom:15px}.tool-card textarea,.tool-card input,.tool-card select,.dialog-card input,.dialog-card textarea{width:100%;border:1px solid #cfe0dc;border-radius:12px;padding:12px 14px;background:#fff;min-height:44px;color:var(--text)}textarea{resize:vertical}.two{display:grid;grid-template-columns:1fr 1fr;gap:16px}.result{margin-top:14px;padding:0}.result.ok,.result.warn,.result.bad{padding:14px;border-radius:12px}.result.ok{background:#e9f8f2;color:#0a5e4d}.result.warn{background:#fff4dd;color:#795307}.result.bad{background:#fff0ee;color:#8f241b}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.card{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:22px}.card h3{margin:0 0 6px;font-size:20px}.card p{font-size:14px;color:var(--muted)}.tag{display:inline-flex;padding:5px 9px;border-radius:999px;background:var(--soft);color:#0b6758;font-size:12px;font-weight:750;margin-bottom:12px}.card details{border-top:1px solid var(--line);padding-top:10px;margin-top:12px}.card summary{cursor:pointer;font-weight:750}.doctor-top{display:flex;gap:14px;align-items:center}.avatar{width:54px;height:54px;border-radius:18px;background:var(--soft);color:var(--green);display:grid;place-items:center;font-weight:900}.doctor-meta{font-size:13px;color:var(--muted)}.doctor-actions{display:flex;gap:9px;margin-top:16px;flex-wrap:wrap}.notice{padding:12px 14px;border:1px dashed #b8ccc7;background:#f9fdfc;border-radius:12px;color:var(--muted);margin:-8px 0 20px}.tips{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.tips b{font-size:26px}.preview{margin:12px 0}.preview img{max-width:280px;max-height:260px;border-radius:14px;border:1px solid var(--line);object-fit:cover}.hidden{display:none}
footer{padding:34px clamp(20px,5vw,70px);border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:30px;background:#0a2f2a;color:#dfeae8}footer p{color:#a8c0bb;max-width:720px}footer div:last-child{display:flex;gap:18px;align-items:center}
dialog{border:0;border-radius:22px;padding:0;box-shadow:0 30px 90px rgba(0,0,0,.3);width:min(520px,calc(100% - 24px))}dialog::backdrop{background:rgba(2,27,24,.62)}.dialog-card{padding:26px;position:relative}.dialog-card h2{margin-top:0}.x{position:absolute;right:14px;top:12px;background:transparent;font-size:24px}.dialog-card hr{border:0;border-top:1px solid var(--line);margin:22px 0}
@media(max-width:980px){.topbar nav{display:none}.hero{grid-template-columns:1fr;padding-top:46px}.quick-grid{grid-template-columns:1fr 1fr}.cards{grid-template-columns:1fr 1fr}.tips{grid-template-columns:1fr 1fr}.top-actions{margin-left:auto}}
@media(max-width:640px){.hero h1{font-size:42px}.quick-grid,.cards,.tips,.two{grid-template-columns:1fr}.section-head{align-items:stretch;flex-direction:column}.search{width:100%}.hero-panel{border-radius:20px}.topbar{padding:10px 14px}.brand{font-size:15px}.brandmark{width:34px;height:34px}.section{padding:50px 18px}footer{flex-direction:column}.mini-grid{grid-template-columns:1fr 1fr}}
.verify{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:999px;background:#e7f8f2;color:#087a66;font-size:13px;vertical-align:middle}.docBtn:disabled{cursor:not-allowed;opacity:.7}.dash-shell{max-width:1220px;margin:0 auto;padding:42px 20px 70px}.dash-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:24px}.dash-head h1{margin:4px 0;font-size:clamp(30px,4vw,50px);letter-spacing:-.03em}.dash-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:24px}.stat{background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px}.stat b{font-size:28px;display:block}.stat span{color:var(--muted);font-size:13px}.panel{background:#fff;border:1px solid var(--line);border-radius:20px;padding:20px;margin:16px 0}.panel h2{margin-top:0}.table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse;min-width:720px}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--line);padding:10px;font-size:13px;vertical-align:top}.data-table th{color:var(--muted);font-weight:800}.status{display:inline-flex;border-radius:999px;padding:4px 9px;background:#edf5f3;font-size:12px;font-weight:800}.status.pending,.status.requested,.status.submitted{background:#fff4dd;color:#795307}.status.approved,.status.confirmed,.status.reviewed,.status.completed{background:#e9f8f2;color:#0a5e4d}.status.rejected,.status.cancelled{background:#fff0ee;color:#8f241b}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid .wide{grid-column:1/-1}.form-grid label{display:grid;gap:7px;font-weight:750}.form-grid input,.form-grid textarea,.form-grid select{width:100%;border:1px solid #cfe0dc;border-radius:12px;padding:11px 13px;background:#fff;min-height:44px}.inline-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.small-btn{min-height:36px;padding:7px 10px;border-radius:9px;font-size:12px}.danger{background:#fff0ee;color:#8f241b}.muted{color:var(--muted)}.empty{padding:18px;border:1px dashed var(--line);border-radius:14px;color:var(--muted)}.role-pill{display:inline-flex;padding:5px 10px;border-radius:999px;background:var(--soft);font-size:12px;font-weight:800}.dashboard-nav{display:flex;gap:10px;flex-wrap:wrap}.review-note{white-space:pre-wrap;background:#f7fbfa;border-left:3px solid var(--green);padding:10px 12px;border-radius:8px}.admin-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.admin-tabs button.active{background:var(--green);color:#fff}.tab-pane{display:none}.tab-pane.active{display:block}
@media(max-width:850px){.dash-grid{grid-template-columns:1fr 1fr}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.dash-head{flex-direction:column}}
@media(max-width:520px){.dash-grid{grid-template-columns:1fr}.dash-shell{padding:28px 14px 50px}}
.chat-thread{max-height:220px;overflow:auto;border:1px solid var(--line);border-radius:12px;padding:10px;margin-bottom:14px;background:#f9fcfb}.chat{padding:8px 10px;border-radius:10px;margin:6px 0;font-size:13px}.chat.patient{background:var(--soft);margin-left:28px}.chat.doctor{background:#f2f4f7;margin-right:28px}

/* v1.3 clean navigation, hospital map, psychosocial and blood modules */
.brand-button,.nav-link{appearance:none;background:transparent;border:0;color:inherit;font:inherit;cursor:pointer}.brand-button{padding:0}.nav-link{padding:8px 4px;font-weight:700}.nav-link:hover{color:var(--green)}
.content-trust{margin:0 0 16px;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:var(--card)}
.review-meta{margin-top:14px;padding-top:10px;border-top:1px solid var(--line);font-size:.82rem;color:var(--muted)}.review-meta.unreviewed{color:#8a5a00}
.hospital-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:20px;align-items:start}.hospital-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.hospital-card .soft{margin-top:12px}.map-panel{position:sticky;top:90px;border:1px solid var(--line);border-radius:20px;background:var(--card);padding:14px}.map-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.map-panel iframe{display:block;width:100%;height:430px;border:0;border-radius:14px;background:#e9eef2}
.filter-row{display:flex;gap:8px;flex-wrap:wrap}.wellbeing-topics{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0 18px}.wellbeing-topics span{padding:7px 10px;border-radius:999px;background:var(--soft);font-size:.86rem}.mentalBook{margin-top:12px}
.blood-layout{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}.blood-badge{display:inline-grid;place-items:center;min-width:52px;height:52px;border-radius:50%;font-weight:900;font-size:1.1rem;background:#fff0f0;color:#9c1d1d;border:1px solid #ffd2d2}.checkline{display:flex!important;grid-template-columns:auto 1fr!important;align-items:flex-start;gap:10px}.checkline input{width:auto;margin-top:4px}.subhead{margin:28px 0 14px}
.footer-links{display:flex;gap:12px;flex-wrap:wrap}.footer-links a{text-decoration:none}
.seo-page{max-width:900px;margin:0 auto;padding:52px 20px 80px}.seo-page article{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:28px}.seo-page h1{font-size:clamp(2rem,5vw,3.4rem);margin:.3em 0}.seo-page h2{margin-top:1.5em}.seo-page li{margin:.55em 0}
@media(max-width:900px){.hospital-layout,.blood-layout{grid-template-columns:1fr}.map-panel{position:static}.hospital-cards{grid-template-columns:1fr}.map-panel iframe{height:330px}}
@media(max-width:620px){.map-panel iframe{height:280px}.blood-layout .data-table{min-width:650px}}

.text-link{display:inline-block;margin-top:12px;color:var(--green);font-weight:800}.text-link:hover{text-decoration:underline}

/* v1.4 articles */
.article-grid{align-items:stretch}.article-card h3{line-height:1.35}.lead{font-size:1.12rem;line-height:1.75}.reference-list{padding-left:1.35rem}.reference-list li{margin:.65rem 0}.reference-list a{overflow-wrap:anywhere}.wellbeing-topics a{display:inline-flex;align-items:center;text-decoration:none;color:inherit;border:1px solid var(--line);padding:.5rem .75rem;border-radius:999px;background:var(--card)}.wellbeing-topics a:hover{text-decoration:underline}.seo-page article h2{margin-top:2rem}.seo-page article p{line-height:1.78}
