/* MD MyDoctor, app styles. Light, dark and device-matching themes. */
:root{
  --brand:#0E7C86;--brand-d:#0A5F67;--brand-l:#E3F2F3;--brand-ink:#0A5F67;--accent:#F2B544;--accent-l:#FFF4DA;
  --ink:#13232C;--ink-2:#4A5B66;--ink-3:#73838D;--line:#E2E8EB;--line-2:#CDD6DB;--bg:#F4F7F8;--card:#fff;--card-2:#FAFCFC;
  --side:#0F2A33;--side-ink:#CFE0E4;--side-ink-2:#8FB0B8;--side-hover:rgba(255,255,255,.07);
  --ok:#1C8A4E;--ok-l:#E3F4EA;--warn:#9A5B00;--warn-l:#FFF3DC;--bad:#C0362C;--bad-l:#FCE8E6;--info:#245C9C;--info-l:#E7F0FB;
  --purple:#6B4BB8;--purple-l:#EFEAFB;
  --r:12px;--sh:0 1px 2px rgba(16,33,43,.05),0 2px 10px rgba(16,33,43,.05);
  --input-bg:#fff;
  color-scheme:light;
  font-size:15px;
}
:root[data-theme="dark"]{
  --brand:#2BB3BE;--brand-d:#5CCAD2;--brand-l:#0F3A40;--brand-ink:#7DD8DF;--accent:#F2B544;--accent-l:#3A2E12;
  --ink:#E6EEF1;--ink-2:#B3C3CA;--ink-3:#8799A2;--line:#22343C;--line-2:#33474F;--bg:#0B171C;--card:#122128;--card-2:#152831;
  --side:#08141A;--side-ink:#C5D6DB;--side-ink-2:#7F9AA2;--side-hover:rgba(255,255,255,.06);
  --ok:#4CC27F;--ok-l:#12321F;--warn:#E5A94A;--warn-l:#352710;--bad:#F07A6F;--bad-l:#3A1916;--info:#7EB2EE;--info-l:#14273C;
  --purple:#B49CF0;--purple-l:#261D3D;
  --sh:0 1px 2px rgba(0,0,0,.3);--input-bg:#0F1D23;
  color-scheme:dark;
}
@media (prefers-color-scheme:dark){
  :root[data-theme="system"]{
    --brand:#2BB3BE;--brand-d:#5CCAD2;--brand-l:#0F3A40;--brand-ink:#7DD8DF;--accent:#F2B544;--accent-l:#3A2E12;
    --ink:#E6EEF1;--ink-2:#B3C3CA;--ink-3:#8799A2;--line:#22343C;--line-2:#33474F;--bg:#0B171C;--card:#122128;--card-2:#152831;
    --side:#08141A;--side-ink:#C5D6DB;--side-ink-2:#7F9AA2;--side-hover:rgba(255,255,255,.06);
    --ok:#4CC27F;--ok-l:#12321F;--warn:#E5A94A;--warn-l:#352710;--bad:#F07A6F;--bad-l:#3A1916;--info:#7EB2EE;--info-l:#14273C;
    --purple:#B49CF0;--purple-l:#261D3D;
    --sh:0 1px 2px rgba(0,0,0,.3);--input-bg:#0F1D23;
    color-scheme:dark;
  }
}
*{box-sizing:border-box}
html,body{margin:0}
body{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;color:var(--ink);background:var(--bg);line-height:1.5;-webkit-font-smoothing:antialiased}
a{color:var(--brand-ink)}
h1,h2,h3{margin:0 0 .6rem;line-height:1.25;letter-spacing:-.01em}
h2{font-size:1.12rem}h3{font-size:.98rem}
small,.muted{color:var(--ink-3)}
hr{border:0;border-top:1px solid var(--line);margin:1rem 0}
code{background:var(--card-2);border:1px solid var(--line);padding:.05rem .35rem;border-radius:5px;font-size:.88em}
svg.i{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}

/* ---- Brand ---- */
.logo{display:inline-flex;align-items:center;gap:.55rem;text-decoration:none;color:inherit}
.logo-badge{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:9px;background:var(--brand);color:#fff;font-weight:800;font-size:.95rem;letter-spacing:-.02em;position:relative;flex:none}
.logo-badge::after{content:"";position:absolute;top:-3px;right:-3px;width:9px;height:9px;border-radius:50%;background:var(--accent);border:2px solid var(--side)}
.logo-word{font-size:1.2rem;letter-spacing:-.02em;font-weight:500}
.logo-word b{font-weight:800}
.logo-sub{display:block;font-size:.68rem;letter-spacing:.06em;text-transform:uppercase;opacity:.7;font-weight:600;margin-top:-2px}

/* ---- App shell ---- */
body.app{display:flex;min-height:100vh}
.sidebar{width:252px;background:var(--side);color:var(--side-ink);display:flex;flex-direction:column;position:fixed;inset:0 auto 0 0;z-index:30;transition:transform .2s;overflow-y:auto}
.sidebar .logo{padding:1rem 1.1rem .5rem;color:#fff}
.org-switch{margin:.3rem .8rem .6rem;padding:.55rem .7rem;background:rgba(255,255,255,.06);border-radius:9px;color:#fff;font-size:.88rem;font-weight:600;line-height:1.3}
.org-switch small{display:block;color:var(--side-ink-2);font-weight:400}
.sidebar nav{display:flex;flex-direction:column;padding:0 .6rem .8rem;gap:1px;flex:1}
.nav-group{font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;color:var(--side-ink-2);padding:.85rem .7rem .3rem;font-weight:700}
.sidebar nav a{display:flex;align-items:center;gap:.65rem;padding:.48rem .7rem;border-radius:8px;color:var(--side-ink);text-decoration:none;font-size:.9rem}
.sidebar nav a:hover{background:var(--side-hover);color:#fff}
.sidebar nav a.active{background:var(--brand);color:#fff}
.sidebar nav a .count{margin-left:auto;background:var(--accent);color:#3a2a00;border-radius:99px;font-size:.7rem;font-weight:700;padding:0 .45rem;line-height:1.5}
main{flex:1;margin-left:252px;min-width:0;display:flex;flex-direction:column}
.topbar{display:flex;align-items:center;gap:.8rem;padding:.8rem 1.6rem;background:var(--card);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}
.topbar h1{font-size:1.2rem;margin:0;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.top-actions{display:flex;align-items:center;gap:.5rem}
.menu-btn{display:none;cursor:pointer;padding:.3rem;color:var(--ink)}
.menu-btn svg{width:24px;height:24px}
.theme-switch{display:inline-flex;border:1px solid var(--line);border-radius:9px;overflow:hidden;background:var(--card-2)}
.theme-switch button{background:none;border:0;padding:.35rem .5rem;cursor:pointer;color:var(--ink-3);display:flex}
.theme-switch button[aria-pressed="true"]{background:var(--brand-l);color:var(--brand-ink)}
.theme-switch svg{width:16px;height:16px}
.avatar-sm{width:34px;height:34px;border-radius:50%;background:var(--brand-l);color:var(--brand-ink);display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:.8rem;text-decoration:none;flex:none}
.content{padding:1.4rem 1.6rem;flex:1;max-width:1280px;width:100%}
.foot{padding:1rem 1.6rem;color:var(--ink-3);font-size:.78rem;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.scrim{display:none}
.imp-banner{background:var(--purple);color:#fff;padding:.5rem 1.6rem;font-size:.88rem;display:flex;gap:1rem;align-items:center;justify-content:space-between;flex-wrap:wrap}
.imp-banner button{background:#fff;color:var(--purple);border:0;border-radius:6px;padding:.25rem .7rem;font-weight:700;cursor:pointer}
@media (max-width:960px){
  .sidebar{transform:translateX(-100%)}
  #navtoggle:checked ~ .sidebar{transform:none}
  #navtoggle:checked ~ .scrim{display:block;position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:20}
  main{margin-left:0}
  .menu-btn{display:block}
  .content{padding:1rem}
  .topbar{padding:.7rem 1rem}
  .hide-sm{display:none!important}
}

/* ---- Components ---- */
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh);padding:1.15rem 1.25rem;margin-bottom:1.1rem}
.card-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.8rem;flex-wrap:wrap}
.card-head h2{margin:0}
.grid{display:grid;gap:1.1rem}
.g2{grid-template-columns:repeat(2,minmax(0,1fr))}
.g3{grid-template-columns:repeat(3,minmax(0,1fr))}
.g4{grid-template-columns:repeat(4,minmax(0,1fr))}
.span2{grid-column:span 2}
@media (max-width:960px){.g2,.g3{grid-template-columns:1fr}.g4{grid-template-columns:repeat(2,minmax(0,1fr))}.span2{grid-column:auto}}
.stat{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:.95rem 1.05rem;box-shadow:var(--sh);text-decoration:none;color:inherit;display:block}
a.stat:hover{border-color:var(--brand)}
.stat b{display:block;font-size:1.65rem;line-height:1.15;margin-top:.15rem;font-variant-numeric:tabular-nums}
.stat span{color:var(--ink-2);font-size:.84rem}
.stat small{display:block;margin-top:.15rem}
.btn{display:inline-flex;align-items:center;gap:.4rem;background:var(--brand);color:#fff;border:1px solid var(--brand);border-radius:9px;padding:.52rem .95rem;font:inherit;font-weight:600;font-size:.9rem;cursor:pointer;text-decoration:none;white-space:nowrap;line-height:1.3}
.btn:hover{background:var(--brand-d);border-color:var(--brand-d)}
:root[data-theme="dark"] .btn:not(.sec):not(.danger):not(.ghost){color:#04191c}
@media (prefers-color-scheme:dark){:root[data-theme="system"] .btn:not(.sec):not(.danger):not(.ghost){color:#04191c}}
.btn.sec{background:var(--card);color:var(--ink);border-color:var(--line-2)}
.btn.sec:hover{background:var(--card-2)}
.btn.ghost{background:transparent;color:var(--brand-ink);border-color:transparent}
.btn.danger{background:var(--card);color:var(--bad);border-color:var(--bad-l)}
.btn.accent{background:var(--accent);border-color:var(--accent);color:#3a2a00!important}
.btn.sm{padding:.28rem .62rem;font-size:.8rem;font-weight:500;border-radius:7px}
.btn.block{width:100%;justify-content:center;padding:.72rem}
.btn[disabled]{opacity:.5;cursor:not-allowed}
.linkbtn{background:none;border:0;font:inherit;cursor:pointer;color:var(--brand-ink);padding:0}
.actions{display:flex;gap:.45rem;flex-wrap:wrap;align-items:center}
.actions form{display:inline}
.flash{padding:.7rem 1rem;border-radius:9px;margin-bottom:1rem;font-size:.92rem}
.flash-ok{background:var(--ok-l);color:var(--ok)}
.flash-error{background:var(--bad-l);color:var(--bad)}
.flash-info{background:var(--info-l);color:var(--info)}
.flash-warn{background:var(--warn-l);color:var(--warn)}
.empty{text-align:center;color:var(--ink-3);padding:1.8rem 1rem}
.empty-state{text-align:center;padding:2.2rem 1.5rem}
.empty-state p{max-width:560px;margin:.4rem auto 1.2rem}
.promo{background:linear-gradient(120deg,var(--brand) 0%,#0A5F67 100%);color:#fff;border:0}
.promo p{opacity:.92}
.promo .btn{background:#fff;color:var(--brand-d)!important;border-color:#fff}
.promo-accent{background:linear-gradient(120deg,#3a2a00 0%,#7a5a10 100%);color:#fff;border:0}
.list-row{display:flex;justify-content:space-between;align-items:center;gap:.8rem;padding:.55rem 0;border-bottom:1px solid var(--line)}
.list-row:last-child{border-bottom:0}
.list-row a{text-decoration:none;font-weight:600}
.kpi-row{display:flex;gap:1.5rem;flex-wrap:wrap}
.kpi-row div b{display:block;font-size:1.25rem}
.tag{display:inline-block;padding:.1rem .5rem;border-radius:6px;background:var(--card-2);border:1px solid var(--line);font-size:.78rem;color:var(--ink-2);margin:0 .25rem .25rem 0}

/* ---- Tabs ---- */
.tabs{display:flex;gap:.2rem;border-bottom:1px solid var(--line);margin:1rem -1.25rem -1.15rem;padding:0 1rem;overflow-x:auto}
.tabs a{padding:.6rem .8rem;text-decoration:none;color:var(--ink-2);font-weight:600;font-size:.88rem;border-bottom:2px solid transparent;white-space:nowrap}
.tabs a.active{color:var(--brand-ink);border-color:var(--brand)}
.subtabs{display:flex;gap:.35rem;flex-wrap:wrap;margin-bottom:1rem}

/* ---- Tables ---- */
.table-wrap{overflow-x:auto;margin:0 -1.25rem;padding:0 1.25rem}
table{width:100%;border-collapse:collapse;font-size:.9rem}
th{text-align:left;font-weight:600;color:var(--ink-2);font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;padding:.55rem .6rem;border-bottom:1px solid var(--line);white-space:nowrap}
td{padding:.65rem .6rem;border-bottom:1px solid var(--line);vertical-align:middle}
tr:last-child td{border-bottom:0}
tbody tr:hover{background:var(--card-2)}
td a{text-decoration:none;font-weight:600}
td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}
.badge{display:inline-block;padding:.13rem .55rem;border-radius:99px;font-size:.75rem;font-weight:600;background:var(--card-2);color:var(--ink-2);white-space:nowrap;border:1px solid var(--line)}
.b-scheduled,.b-sent,.b-submitted,.b-ordered,.b-requested,.b-open,.b-new,.b-queued,.b-acknowledged{background:var(--info-l);color:var(--info);border-color:transparent}
.b-checked_in,.b-pending,.b-partial,.b-collected,.b-in_progress,.b-reviewing,.b-quoted,.b-pending_info,.b-partially_paid,.b-appealed,.b-unknown,.b-opened{background:var(--warn-l);color:var(--warn);border-color:transparent}
.b-completed,.b-signed,.b-paid,.b-resulted,.b-accepted,.b-approved,.b-ready,.b-dispensed,.b-done,.b-confirmed,.b-active,.b-eligible{background:var(--ok-l);color:var(--ok);border-color:transparent}
.b-cancelled,.b-no_show,.b-unpaid,.b-declined,.b-denied,.b-void,.b-not_eligible,.b-written_off{background:var(--bad-l);color:var(--bad);border-color:transparent}
.pill{display:inline-block;background:var(--brand-l);color:var(--brand-ink);border-radius:6px;padding:.03rem .45rem;font-size:.78rem;font-weight:600;white-space:nowrap}
.pill.purple{background:var(--purple-l);color:var(--purple)}
.pill.gold{background:var(--accent-l);color:var(--warn)}
.flag-high{color:var(--bad);font-weight:700}
.flag-low{color:var(--info);font-weight:700}

/* ---- Forms ---- */
form.stack{display:flex;flex-direction:column;gap:.2rem}
.field{display:flex;flex-direction:column;gap:.3rem;margin-bottom:.8rem;min-width:0}
.field label{font-weight:600;font-size:.84rem;color:var(--ink-2)}
.field small{font-size:.78rem}
.req{color:var(--bad)}
input:not([type]),input[type=text],input[type=email],input[type=password],input[type=date],input[type=time],input[type=number],input[type=tel],input[type=search],input[type=url],input[type=datetime-local],input[type=file],select,textarea{
  width:100%;font:inherit;color:var(--ink);background:var(--input-bg);border:1px solid var(--line-2);border-radius:9px;padding:.55rem .7rem;min-height:42px}
input[type=file]{padding:.45rem}
textarea{resize:vertical}
input:focus,select:focus,textarea:focus{outline:2px solid color-mix(in srgb,var(--brand) 30%,transparent);border-color:var(--brand)}
label.check{display:flex;gap:.5rem;align-items:flex-start;font-weight:500;font-size:.9rem;color:var(--ink);cursor:pointer;margin-bottom:.4rem}
label.check input{margin-top:.25rem}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1rem}
.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.form-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}
.form-grid .span2{grid-column:span 2}
.form-grid .span3,.form-grid .full{grid-column:1/-1}
@media (max-width:760px){.form-grid,.form-grid.three,.form-grid.four{grid-template-columns:1fr}.form-grid .span2{grid-column:auto}}
fieldset{border:0;padding:0;margin:0 0 .6rem}
legend{font-weight:700;font-size:.95rem;margin-bottom:.6rem;color:var(--ink)}
.searchbar{display:flex;gap:.5rem;flex-wrap:wrap}
.searchbar input,.searchbar select{flex:1;min-width:150px}
.otp-input{font-size:1.8rem!important;letter-spacing:.5em;text-align:center;font-variant-numeric:tabular-nums}
.rx-rows .rx-row{display:grid;grid-template-columns:2.2fr 1fr 1.3fr 1fr .8fr 1.6fr;gap:.5rem;margin-bottom:.5rem}
.rx-rows .rx-head{font-size:.75rem;font-weight:700;color:var(--ink-3);text-transform:uppercase}
@media (max-width:860px){.rx-rows .rx-row{grid-template-columns:1fr 1fr}.rx-rows .rx-head{display:none}}
.mic-btn{display:inline-flex;align-items:center;gap:.3rem;font-size:.78rem;font-weight:600;border:1px solid var(--line-2);border-radius:99px;padding:.15rem .6rem;background:var(--card);color:var(--brand-ink);cursor:pointer}
.mic-btn.on{background:var(--bad);color:#fff;border-color:var(--bad);animation:pulse 1.2s infinite}
@keyframes pulse{50%{opacity:.6}}
.label-row{display:flex;justify-content:space-between;align-items:center;gap:.5rem}

/* ---- Patient ---- */
.ph{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}
.avatar{width:54px;height:54px;border-radius:50%;background:var(--brand-l);color:var(--brand-ink);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.15rem;flex:none}
.avatar.lg{width:84px;height:84px;font-size:1.6rem}
.ph h2{margin:0;font-size:1.3rem}
.meta{display:flex;gap:.9rem;flex-wrap:wrap;color:var(--ink-2);font-size:.88rem;align-items:center}
.patient-banner{padding-bottom:1.15rem}
.patient-banner .alert-box{margin:.8rem 0 0}
dl.kv{display:grid;grid-template-columns:max-content 1fr;gap:.42rem 1rem;margin:0;font-size:.92rem}
dl.kv dt{color:var(--ink-3)}
dl.kv dd{margin:0;word-break:break-word}
.alert-box{border-left:4px solid var(--bad);background:var(--bad-l);padding:.55rem .9rem;border-radius:7px;font-size:.92rem;margin-bottom:.8rem;color:var(--ink)}
.note-box{border-left:4px solid var(--info);background:var(--info-l);padding:.55rem .9rem;border-radius:7px;font-size:.9rem;margin-bottom:.8rem;color:var(--ink)}
.pre{white-space:pre-wrap}
.soap h3{color:var(--brand-ink);font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;margin:1rem 0 .3rem}
.vitals{display:flex;flex-wrap:wrap;gap:.5rem}
.vitals div{background:var(--card-2);border:1px solid var(--line);border-radius:9px;padding:.4rem .7rem;font-size:.85rem}
.vitals b{display:block;font-size:1rem}
.restricted{text-align:center;padding:2rem}
.timeline{border-left:2px solid var(--line);margin-left:.4rem;padding-left:1rem}
.timeline .ev{position:relative;padding:.1rem 0 .9rem}
.timeline .ev::before{content:"";position:absolute;left:-1.42rem;top:.4rem;width:10px;height:10px;border-radius:50%;background:var(--brand)}
.doc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:.8rem}
.doc-card{border:1px solid var(--line);border-radius:10px;padding:.7rem;background:var(--card-2);text-decoration:none;color:inherit;display:flex;flex-direction:column;gap:.3rem;min-width:0}
.doc-card:hover{border-color:var(--brand)}
.doc-thumb{height:110px;border-radius:7px;background:var(--card);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;overflow:hidden;color:var(--ink-3);font-weight:700}
.doc-thumb img{width:100%;height:100%;object-fit:cover}
.doc-card b{font-size:.86rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.spark{display:flex;align-items:flex-end;gap:2px;height:44px}
.spark span{flex:1;background:var(--brand);opacity:.75;border-radius:2px 2px 0 0;min-width:3px}
.progress{height:8px;background:var(--line);border-radius:99px;overflow:hidden}
.progress span{display:block;height:100%;background:var(--brand)}

/* ---- Schedule ---- */
.day-nav{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}
.day-nav input[type=date]{width:auto}
.appt-time{font-weight:700;white-space:nowrap}

/* ---- Cards list (services, travel) ---- */
.tile-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem}
.tile{border:1px solid var(--line);border-radius:var(--r);padding:1rem;background:var(--card);display:flex;flex-direction:column;gap:.4rem;box-shadow:var(--sh)}
.tile h3{margin:0}
.tile p{margin:0;color:var(--ink-2);font-size:.88rem;flex:1}
.tile.featured{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-l)}
.team-card{display:flex;gap:.7rem;align-items:center;padding:.5rem 0;border-bottom:1px solid var(--line)}
.team-card:last-child{border-bottom:0}
.qr-box{display:inline-block;background:#fff;padding:10px;border-radius:10px;border:1px solid var(--line)}
.qr-box img,.qr-box svg{display:block;width:180px;height:180px}
.money-big{font-size:1.6rem;font-weight:800}
.save{color:var(--ok);font-weight:700}

/* ---- Auth ---- */
body.auth{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(160deg,#0F2A33 0%,#0E7C86 100%);padding:1rem}
.auth-wrap{width:100%;max-width:430px}
.auth-brand{display:flex;flex-direction:column;align-items:center;gap:.4rem;color:#fff;margin-bottom:1.2rem;text-align:center}
.auth-brand .logo-badge{width:52px;height:52px;font-size:1.35rem;border-radius:13px}
.auth-brand .logo-badge::after{border-color:#0E5F68;width:12px;height:12px}
.auth-brand .logo-word{font-size:1.7rem}
.auth-brand small{color:#BFE3E6}
.auth-card{background:var(--card);border-radius:16px;padding:1.8rem;box-shadow:0 10px 40px rgba(0,0,0,.25)}
.auth-card h1{font-size:1.3rem;margin-bottom:1rem}
.auth-foot{color:#CFE7EA;font-size:.8rem;text-align:center;margin-top:1rem}
.auth-foot a{color:#fff}
.auth-links{display:flex;justify-content:space-between;gap:.5rem;margin-top:1rem;font-size:.88rem;flex-wrap:wrap}
.install .auth-wrap{max-width:720px}

/* ---- Public portal ---- */
body.public{background:var(--bg)}
.pub-top{background:var(--card);border-bottom:1px solid var(--line);padding:.8rem 1.4rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;position:sticky;top:0;z-index:5}
.pub-top .logo-badge::after{border-color:var(--card)}
.pub-hero{background:linear-gradient(135deg,#0F2A33,#0E7C86);color:#fff;padding:2.6rem 1.4rem}
.pub-hero h1{font-size:1.9rem;margin-bottom:.4rem}
.pub-wrap{max-width:1100px;margin:0 auto;padding:1.4rem}
.pub-foot{text-align:center;color:var(--ink-3);font-size:.8rem;padding:2rem 1rem}
.dir-card{display:flex;gap:1rem;align-items:flex-start}

/* ---- Print ---- */
@media print{
  .sidebar,.topbar,.foot,.actions,.no-print,.tabs,.imp-banner{display:none!important}
  main{margin:0}.content{padding:0}
  .card{box-shadow:none;border:0}
  body{background:#fff;color:#000}
}

/* ---- Tables become stacked cards on phones ---- */
@media (max-width:700px){
  table.resp thead{display:none}
  table.resp,table.resp tbody,table.resp tr,table.resp td{display:block;width:100%}
  table.resp tr{padding:.7rem 0;border-bottom:1px solid var(--line)}
  table.resp tr:last-child{border-bottom:0}
  table.resp td{border:0;padding:.12rem 0;text-align:left!important}
  table.resp td:empty{display:none}
  table.resp .appt-time br{display:none}
  table.resp .appt-time small{margin-left:.4rem}
  .table-wrap{margin:0;padding:0}
}

/* ===== v0.3: letterhead, print control, forms, scribe ===== */
.print-block{display:none}
.lh{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;border-bottom:2px solid var(--brand);padding-bottom:.7rem;margin-bottom:1rem}
.lh-org{display:flex;gap:.8rem;align-items:flex-start}
.lh-logo{max-height:64px;max-width:180px;object-fit:contain}
.lh-mono{width:56px;height:56px;border-radius:12px;background:var(--brand);color:#fff;display:grid;place-items:center;font-weight:700;font-size:1.2rem}
.lh-name{font-size:1.15rem}
.lh-doc{text-align:right}
.lh-doc strong{font-size:1.05rem}
.lh-foot{margin-top:1.4rem;border-top:1px solid var(--line);padding-top:.6rem;font-size:.8rem;color:var(--ink-3)}
.lh-md{display:flex;gap:.45rem;align-items:center}
.lh-wm{font-weight:600;color:var(--bad);margin-bottom:.3rem}
@media (max-width:700px){.lh{flex-direction:column}.lh-doc{text-align:left}}
@media print{
  body:not(.print-ok) .content>*:not(.print-block){display:none!important}
  body:not(.print-ok) .print-block{display:block!important;padding:2rem;font-size:14pt}
  body.print-ok .print-block{display:none!important}
  .lh-foot{color:#444}
  .cpo input,.cpo textarea,.cpo select{border:0!important;background:transparent!important;padding:0!important;resize:none}
  .cpo textarea{overflow:visible;height:auto}
}
.checklist{margin:.6rem 0 1rem 1.1rem;line-height:1.6}
.wf-steps{list-style:none;margin:0;padding:0}
.wf-steps li{display:flex;gap:.6rem;align-items:flex-start;padding:.45rem 0;border-bottom:1px solid var(--line)}
.wf-steps li:last-child{border-bottom:0}
.wf-steps .done{color:var(--ok)}
.wf-steps small{display:block;color:var(--ink-3)}
.code-pill{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:600;background:var(--brand-l);padding:.05rem .4rem;border-radius:6px}
.cpo .sec{border:1px solid var(--line);border-radius:10px;padding:.8rem;margin-bottom:.8rem}
.cpo .sec h3{margin:.1rem 0 .6rem;font-size:1rem}
.cpo table input{width:100%;min-width:70px}
.cpo .yn{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}
.cpo-head{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}
@media (max-width:700px){.cpo-head{grid-template-columns:1fr}}
.scribe-live{min-height:180px;max-height:420px;overflow:auto;border:1px solid var(--line);border-radius:10px;padding:.8rem;background:var(--card-2);white-space:pre-wrap}
.scribe-live .interim{color:var(--ink-3);font-style:italic}
.rec-dot{display:inline-block;width:10px;height:10px;border-radius:50%;background:#d92d20;margin-right:.35rem;animation:pulse 1s infinite}
@keyframes pulse{50%{opacity:.25}}
.sev-high{color:var(--bad);font-weight:600}.sev-medium{color:#b54708;font-weight:600}.sev-low{color:var(--ink-3)}
.vote{min-width:58px;text-align:center}
.timeline{list-style:none;padding:0;margin:0;border-left:2px solid var(--line)}
.timeline li{padding:.4rem 0 .6rem .9rem;position:relative}
.timeline li:before{content:"";position:absolute;left:-6px;top:.75rem;width:10px;height:10px;border-radius:50%;background:var(--brand)}
.law-note{font-size:.85rem;border-left:3px solid #f79009;background:rgba(247,144,9,.08);padding:.5rem .7rem;border-radius:6px;margin:.6rem 0}
.ro{padding:.35rem .1rem;min-height:1.6rem;border-bottom:1px dotted var(--line)}
.b-admitted,.b-sent,.b-enhancement_sent,.b-final_sent,.b-claim_submitted,.b-requested,.b-discharge_pending,.b-query,.b-planned{background:var(--info-l);color:var(--info);border-color:transparent}
.b-settled,.b-final_approved,.b-enhancement_approved,.b-discharged,.b-used,.b-present,.b-shipped{background:var(--ok-l);color:var(--ok);border-color:transparent}
.b-denied,.b-cancelled,.b-absent,.b-expired{background:var(--bad-l);color:var(--bad);border-color:transparent}
.journey{list-style:none;margin:0;padding:0;position:relative}
.journey:before{content:"";position:absolute;left:17px;top:4px;bottom:4px;width:2px;background:var(--line)}
.journey li{display:flex;gap:.8rem;padding:.45rem 0;position:relative}
.journey .j-ico{flex:none;width:36px;height:36px;border-radius:50%;background:var(--card);border:2px solid var(--line);display:grid;place-items:center;font-size:1rem;z-index:1}
.journey .j-when{font-size:.78rem;color:var(--ink-3)}
.journey .j-title{font-weight:600}
.journey .j-detail{font-size:.86rem;color:var(--ink-2)}
.journey .j-year{font-weight:800;color:var(--brand-ink);padding:.8rem 0 .3rem 46px}
.journey.compact li{padding:.3rem 0}
.journey .j-admission .j-ico,.journey .j-reading .j-ico{border-color:var(--bad)}
.journey .j-visit .j-ico,.journey .j-program .j-ico{border-color:var(--brand)}
.j-filters{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.8rem}
.hs{display:inline-flex;align-items:center;gap:.35rem;padding:.15rem .6rem;border-radius:99px;font-size:.8rem;font-weight:600;border:1px solid transparent}
.hs b{font-size:1rem}
.hs-ok{background:var(--ok-l);color:var(--ok)}.hs-warn{background:var(--warn-l);color:var(--warn)}.hs-bad{background:var(--bad-l);color:var(--bad)}
.hs-factors{list-style:none;padding:0;margin:.4rem 0}.hs-factors li{display:flex;justify-content:space-between;gap:.6rem;padding:.25rem 0;border-bottom:1px dashed var(--line);font-size:.88rem}
.stars{color:#f5a524;letter-spacing:.05em}
.j-filters a.pill{text-decoration:none}.j-filters a.pill:hover{background:var(--brand);color:#fff}

/* Collapsible sidebar sections */
.nav-sec{margin-top:.15rem}
.nav-sec summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.55rem .7rem;border-radius:8px;
  font-size:.72rem;text-transform:uppercase;letter-spacing:.07em;font-weight:700;color:var(--side-ink-2)}
.nav-sec summary::-webkit-details-marker{display:none}
.nav-sec summary:after{content:"›";font-size:1rem;transition:transform .15s;margin-left:auto}
.nav-sec[open] summary:after{transform:rotate(90deg)}
.nav-sec summary:hover{background:var(--side-hover);color:#fff}
.nav-sec summary .count{background:var(--accent);color:#3a2a00;border-radius:99px;font-size:.68rem;padding:0 .45rem;letter-spacing:0}
.nav-sec a{padding-left:1rem!important}
.sidebar{overflow-y:auto}
.other-box{margin-top:.4rem;width:100%;max-width:520px}
.dictate-msg{display:block;margin:.25rem 0;color:var(--muted,#667)}.dictate-msg.flag-high{color:#b42318}
.signout-top{margin:0}.signout-top .btn{display:inline-flex;align-items:center;gap:.3rem}
.side-user{border-top:1px solid rgba(255,255,255,.12);padding:.8rem 1.1rem 1rem;display:flex;align-items:center;justify-content:space-between;gap:.5rem}
.side-user a{color:var(--side-ink);text-decoration:none;font-size:.85rem;line-height:1.3}.side-user small{opacity:.75}
.side-signout{background:transparent;border:1px solid rgba(255,255,255,.3);color:#fff;border-radius:8px;padding:.35rem .7rem;font:inherit;font-size:.82rem;cursor:pointer}
.side-signout:hover{background:var(--side-hover)}
.perm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.1rem .8rem;margin:.3rem 0}
.staff-row summary{display:flex;justify-content:space-between;align-items:center;gap:.8rem;cursor:pointer}
.staff-row{border-bottom:1px solid rgba(127,127,127,.18);padding:.55rem 0}.staff-row:last-of-type{border-bottom:0}.staff-row summary small{line-height:1.5}

/* ---- MyDoctor quotes, invoices & usage meters (v0.7) ---- */
.md-doc{font-size:.92rem;color:var(--ink)}
.md-doc-head{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;border-bottom:2px solid var(--brand);padding-bottom:.8rem;margin-bottom:.8rem}
.md-doc-brand{font-size:1.5rem;font-weight:800;color:var(--brand);letter-spacing:-.02em}
.md-doc-title{text-align:right}
.md-doc-title h2{margin:0 0 .2rem;text-transform:uppercase;letter-spacing:.05em;font-size:1.1rem}
.md-doc-to{background:var(--card-2);border:1px solid var(--line);border-radius:8px;padding:.6rem .8rem;margin:.6rem 0}
.md-lines{width:100%;border-collapse:collapse;margin:.6rem 0}
.md-lines th,.md-lines td{padding:.45rem .5rem;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.md-lines th{background:var(--brand-l);color:var(--brand-ink);font-size:.8rem;text-transform:uppercase;letter-spacing:.03em}
.md-lines .num{text-align:right;white-space:nowrap}
.md-lines tfoot td{border-bottom:0;padding:.25rem .5rem}
.md-lines .md-total td{border-top:2px solid var(--ink);font-size:1.02rem;padding-top:.45rem}
.md-bank{border:1px dashed var(--line-2);border-radius:8px;padding:.5rem .8rem;margin:.6rem 0}
.meter-row{margin:.55rem 0}
.meter-label{display:flex;justify-content:space-between;gap:.5rem;font-size:.88rem;margin-bottom:.2rem}
.meter{height:8px;background:var(--line);border-radius:6px;overflow:hidden}
.meter>span,.meter>i{display:block;height:100%;background:var(--brand);border-radius:6px}
.meter.warn>span{background:var(--warn)}
.meter.full>span{background:var(--bad)}
@media (max-width:640px){.md-doc-title{text-align:left}}
@media print{.md-doc{font-size:10.5pt;color:#000}.md-lines th{background:#eee!important;color:#000;-webkit-print-color-adjust:exact;print-color-adjust:exact}.no-print{display:none!important}}
.hp{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}
.idle-warn{position:fixed;bottom:1rem;left:50%;transform:translateX(-50%);z-index:90;background:var(--card);border:1px solid var(--warn);box-shadow:var(--sh);border-radius:10px;padding:.7rem 1rem;display:flex;gap:.8rem;align-items:center}
.qr-box{width:180px;height:180px;background:#fff;padding:6px;border-radius:8px;border:1px solid var(--line)}
.qr-box svg{width:100%;height:100%}
body.embed{background:transparent}
body.embed .pub-wrap{padding:0;max-width:none!important}
body.embed .card{box-shadow:none}
.msg{border:1px solid var(--line);border-radius:10px;padding:.5rem .7rem;margin:.4rem 0;max-width:90%}
.msg.in{background:var(--card-2)}
.msg.out{background:var(--brand-l);margin-left:auto}
.esign{display:flex;gap:1rem;align-items:flex-end;justify-content:flex-end;flex-wrap:wrap;margin-top:1.5rem;border-top:1px dashed var(--line);padding-top:.8rem;text-align:right}
.esign-img{max-height:60px;max-width:220px;display:block;margin-left:auto;background:#fff}
.esign-text{max-width:520px}
.esign-qr{width:84px;height:84px;background:#fff;padding:2px;border-radius:4px}
.esign-qr svg{width:100%;height:100%}
.scribe-tools{display:grid;grid-template-columns:1fr 1fr auto;gap:.6rem;align-items:end;margin-top:.6rem}
.scribe-wave{width:100%;height:64px;background:var(--card-2);border:1px solid var(--line);border-radius:8px;display:block;margin-top:.4rem}
@media (max-width:640px){.scribe-tools{grid-template-columns:1fr}}
.pill.warn{background:var(--warn-l);color:var(--warn)}
.slot-grid{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.6rem}
.stage-track{list-style:none;padding:0;margin:.8rem 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.35rem}
.stage-track li{border:1px solid var(--line);border-radius:8px;padding:.35rem .5rem;font-size:.82rem;display:flex;gap:.4rem;align-items:center;color:var(--ink-3)}
.stage-track li span{display:inline-flex;width:20px;height:20px;border-radius:50%;background:var(--line);color:var(--ink-2);align-items:center;justify-content:center;font-size:.72rem;flex:none}
.stage-track li.done{color:var(--ink-2)}.stage-track li.done span{background:var(--ok);color:#fff}
.stage-track li.now{border-color:var(--brand);color:var(--ink);font-weight:600}.stage-track li.now span{background:var(--brand);color:#fff}
.top-search input{width:240px;padding:.4rem .7rem;border-radius:999px}
.bell{position:relative}
.bell summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:.2rem;padding:.35rem;border-radius:8px}
.bell summary::-webkit-details-marker{display:none}
.bell summary b{background:var(--bad);color:#fff;border-radius:999px;font-size:.68rem;padding:0 .35rem;min-width:18px;text-align:center}
.bell-menu{position:absolute;right:0;top:110%;z-index:60;background:var(--card);border:1px solid var(--line);border-radius:10px;box-shadow:var(--sh);min-width:260px;padding:.3rem}
.bell-menu a{display:flex;justify-content:space-between;gap:.6rem;padding:.45rem .6rem;border-radius:6px;text-decoration:none;color:var(--ink)}
.bell-menu a:hover{background:var(--card-2)}
[hidden]{display:none!important}
.rx-row>*{min-width:0}
.md-bank-row{display:flex;justify-content:space-between;gap:1rem;align-items:center;flex-wrap:wrap}
.md-upi{text-align:center}
.md-upi-qr{width:110px;height:110px;background:#fff;padding:3px;border-radius:6px;margin:0 auto .2rem}
.md-upi-qr svg{width:100%;height:100%}
.crm-board{display:grid;grid-template-columns:repeat(7,minmax(170px,1fr));gap:.6rem}
.crm-col{min-height:220px;transition:background .15s}
.crm-col.drop{background:var(--brand-l)}
.crm-card{display:block;cursor:grab}
.crm-card.dragging{opacity:.45}
.outcome-bar{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center;margin:.6rem 0;padding:.5rem;border:1px dashed var(--line-2);border-radius:8px}
.outcome-bar input{flex:1;min-width:160px}
.today-row{display:flex;justify-content:space-between;gap:.8rem;flex-wrap:wrap;padding:.6rem 0;border-bottom:1px solid var(--line)}
.kanban{display:grid;gap:.6rem}
.blog-cta{border:1px solid var(--brand);background:var(--brand-l)}
a.list-row{text-decoration:none;color:inherit}
a.list-row strong{color:var(--brand-ink)}
.filters select,.filters input{width:auto;flex:0 1 auto;max-width:100%}
/* v0.10 website pages */
.btn.lg{padding:.75rem 1.4rem;font-size:1.02rem}
.home-hero{padding:3.4rem 1.4rem}
.home-hero h1{font-size:2.3rem;line-height:1.15;max-width:760px}
.home-hero .lead{font-size:1.12rem;opacity:.93;max-width:720px;margin:.2rem 0 1.4rem}
.home-hero .btn.sec{background:transparent;color:#fff!important;border-color:rgba(255,255,255,.7)}
.home-hero .btn:not(.sec){background:#fff;color:var(--brand-d)!important;border-color:#fff}
.eyebrow{text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;font-weight:700;opacity:.85;margin:0 0 .5rem}
.home-note{margin-top:1rem;opacity:.9}
.home-sec{margin:2.2rem 0}
.home-sec>h2{font-size:1.45rem;margin:0 0 .9rem}
.home-card{display:flex;flex-direction:column;gap:.5rem}
.home-card h3{margin:.2rem 0}
.home-card p{margin:0;color:var(--ink-2);flex:1}
.home-card.featured{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-l)}
.home-card .btn{align-self:flex-start}
.ticks{margin:.2rem 0;padding-left:1.1rem;color:var(--ink-2)}
.ticks li{margin:.25rem 0}
.price-from{margin:.3rem 0;color:var(--ink-2)}
.why>div{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:1rem}
.why p{margin:.35rem 0 0;color:var(--ink-2);font-size:.92rem}
.hub-links{display:flex;flex-wrap:wrap;gap:.4rem;margin:0 0 1rem}
.hub-links a.pill{text-decoration:none;padding:.3rem .7rem;font-size:.85rem}
.hub-links a.pill.on,.hub-links a.pill:hover{background:var(--brand);color:#fff}
details.faq{padding:.8rem 1rem;margin-bottom:.5rem}
details.faq summary{cursor:pointer;font-weight:600}
details.faq p{margin:.6rem 0 0;color:var(--ink-2)}
.cta-band{text-align:center;padding:2rem 1rem}
.cta-band h2{margin-top:0}
.choice-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:.7rem;margin:1rem 0 1.4rem}
.choice{display:flex;flex-direction:column;gap:.3rem;padding:1rem;border:1px solid var(--line);border-radius:var(--r);background:var(--card);color:inherit;text-decoration:none;box-shadow:var(--sh)}
.choice strong{color:var(--brand-ink)}
.choice small{color:var(--ink-2)}
.choice:hover,.choice.on{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-l)}
.start-form{scroll-margin-top:80px}
.policy h2{font-size:1.1rem;margin:1.3rem 0 .3rem}
.policy p{line-height:1.65;margin:0}
.foot-links a{color:inherit}
@media (max-width:700px){.hide-sm{display:none}.home-hero h1{font-size:1.7rem}.home-hero{padding:2.2rem 1rem}}
/* installable app */
.install-bar{position:fixed;left:1rem;right:1rem;bottom:1rem;z-index:50;display:flex;gap:.6rem;align-items:center;justify-content:space-between;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:.7rem .9rem;box-shadow:0 8px 30px rgba(0,0,0,.18);max-width:560px;margin:0 auto}
.install-bar p{margin:0;font-size:.9rem}
.ai-out{white-space:pre-wrap;background:var(--brand-l);border-radius:10px;padding:.8rem;margin-top:.6rem}
.abha-card{border:1px solid var(--line);border-radius:12px;padding:.8rem 1rem;display:flex;gap:1rem;align-items:center;justify-content:space-between;flex-wrap:wrap}
.dns-ok{color:var(--ok);font-weight:600}.dns-bad{color:var(--bad);font-weight:600}
.home-card>.pill{align-self:flex-start}
.home-hero{padding-left:0;padding-right:0}
/* v0.10.1 */
.meter-card{display:block;color:inherit;text-decoration:none}
.meter-card .big-num{font-size:1.9rem;font-weight:700;line-height:1.1;margin:.2rem 0 .4rem}
.meter-card .big-num small{font-size:.9rem;font-weight:500;color:var(--ink-3)}
.meter>span{display:block;height:100%;background:var(--brand);border-radius:6px}
.score-big{font-size:3rem;font-weight:800;line-height:1;margin:.4rem 0}
.score-big small{font-size:1rem;font-weight:500;color:var(--ink-3)}
.stars{color:var(--accent);letter-spacing:.05em}
.stars .half{background:linear-gradient(90deg,var(--accent) 50%,var(--line) 50%);-webkit-background-clip:text;background-clip:text;color:transparent}
.score-graph{width:100%;height:auto;max-height:240px}
.score-graph .grid{stroke:var(--line);stroke-width:1}
.score-graph .ax{fill:var(--ink-3);font-size:11px}
.score-graph .line{fill:none;stroke:var(--brand);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}
.score-graph .pt circle{fill:var(--brand);stroke:var(--card);stroke-width:2}
.score-graph .pt circle.hit{fill:transparent;stroke:none;cursor:default}
.score-graph .pt:hover circle:first-child{r:6}
.score-graph .lbl{fill:var(--ink);font-size:12px;font-weight:700}
.graph-table{margin-top:.4rem;font-size:.85rem}
.md-star{display:inline-flex;align-items:center;gap:.35rem;background:#1b1a14;color:#f7e7b4;border-radius:999px;padding:.18rem .65rem;font-size:.8rem;font-weight:600;white-space:nowrap}
.md-star.big{font-size:.95rem;padding:.3rem .85rem}
.md-star-stars{color:#F2B544;letter-spacing:.04em}
.md-star-stars.big{font-size:1.5rem}
.md-star-row{margin:.3rem 0 .6rem}
.tok-chip{display:inline-flex;min-width:2.2rem;justify-content:center;border-radius:8px;background:var(--brand-l);color:var(--brand-ink);font-weight:800;padding:.1rem .4rem}
.tok-chip.on{background:var(--brand);color:#fff}
body.opd-screen{background:#0b1d22;color:#e8f3f4;min-height:100vh;display:flex;flex-direction:column;font-size:1.2rem}
body.opd-screen header,body.opd-screen footer{display:flex;justify-content:space-between;padding:1rem 2rem;background:#0f2a33}
body.opd-screen main{flex:1;display:grid;grid-template-columns:2fr 1fr;gap:2rem;padding:2rem}
body.opd-screen h1{font-size:2rem;margin:0 0 1rem}
body.opd-screen .call{display:flex;gap:1.2rem;align-items:center;background:#123a44;border-radius:14px;padding:1rem 1.4rem;margin-bottom:.8rem;font-size:1.4rem}
body.opd-screen .call.first{background:#0E7C86;font-size:1.8rem}
body.opd-screen .tok{font-size:3rem;font-weight:800;min-width:5rem;text-align:center}
body.opd-screen .tok.sm{font-size:1.6rem;min-width:3.5rem;background:#123a44;border-radius:10px;padding:.3rem .5rem;display:inline-block;margin:.25rem}
@media (max-width:800px){body.opd-screen main{grid-template-columns:1fr}}
.cert{max-width:800px;margin:0 auto;padding:2.4rem;border:3px double var(--brand)}
ol.comms .j-detail{white-space:pre-wrap}
.req{color:var(--bad)}
/* v0.10.2: plans, install page, API activity */
.steps-list{padding-left:1.3rem;margin:.4rem 0}.steps-list li{margin:.35rem 0}
pre.code{background:var(--card-2);border:1px solid var(--line);border-radius:8px;padding:.6rem .8rem;overflow-x:auto;font-size:.8rem;white-space:pre}
.plan-card{position:relative}.plan-card.featured{border:2px solid var(--brand)}
.plan-price{font-size:1.05rem;margin:.3rem 0}.plan-price b{font-size:1.8rem;color:var(--ink)}.plan-price s{color:var(--ink-3);font-size:1.05rem;margin-right:.25rem}
.offer-tag{display:inline-block;background:var(--accent-l);color:var(--ink);border:1px solid var(--accent);border-radius:999px;padding:.1rem .6rem;font-size:.78rem;font-weight:600}
.plan-card .offer-tag{margin-bottom:.4rem}
ul.ticks{list-style:none;padding-left:0}ul.ticks li{padding-left:1.4rem;position:relative;margin:.35rem 0}ul.ticks li::before{content:"✓";position:absolute;left:0;color:var(--brand);font-weight:700}
.list-row.unread{background:var(--accent-l)}
details.card>summary{cursor:pointer}details.this-device{border-color:var(--brand)}details.this-device>summary::after{content:", this device";color:var(--brand-ink);font-weight:600}
.terms-note{font-size:.85rem;background:var(--card-2);border:1px dashed var(--line-2);border-radius:8px;padding:.5rem .7rem;color:var(--ink-2)}
.actions>input:not([type]),.actions>input[type=text],form.actions>input:not([type]),form.actions>input[type=text],form.actions>input[type=password],.actions>select,form.actions>select{padding:.45rem .6rem;border:1px solid var(--line-2);border-radius:8px;background:var(--card);color:var(--ink);font:inherit;min-width:12rem;max-width:100%}
/* v0.10.2: one-page home, get-the-app everywhere */
.home-jump{position:sticky;top:0;z-index:20;background:var(--card);border-bottom:1px solid var(--line)}
.home-jump .pub-wrap{display:flex;gap:.2rem;overflow-x:auto;padding-top:.45rem;padding-bottom:.45rem;scrollbar-width:none}
.home-jump a{white-space:nowrap;padding:.35rem .7rem;border-radius:999px;color:var(--ink-2);text-decoration:none;font-size:.9rem;font-weight:600}
.home-jump a:hover{background:var(--brand-l);color:var(--brand-ink)}
.home-sec[id],#start{scroll-margin-top:64px}
.app-band{display:flex;gap:1.2rem;align-items:center;justify-content:space-between;flex-wrap:wrap}
.app-band>div:first-child{flex:1 1 420px}
.get-app-btn{white-space:nowrap}
.auth-app{display:flex;gap:.8rem;align-items:center;margin:1rem auto 0;max-width:420px;padding:.8rem 1rem;border:1px solid var(--line);border-radius:12px;background:var(--card);color:var(--ink);text-decoration:none}
.auth-app:hover{border-color:var(--brand)}
.auth-app strong{display:block}.auth-app small{color:var(--ink-3)}
.auth-app-ic{flex:none;width:40px;height:40px;border-radius:10px;background:var(--brand);color:#fff;display:inline-flex;align-items:center;justify-content:center}
.auth-app-ic .i{stroke:#fff}
.fu-box{background:var(--brand-l);border-radius:10px;padding:.7rem .8rem;margin:.6rem 0}
.dx-help summary{cursor:pointer}
.dx-help h4{font-size:.9rem}
.loc-card{border-top:1px solid var(--line);padding-top:.6rem;margin-top:.6rem}
.loc-card:first-of-type{border-top:0;margin-top:0;padding-top:0}
.map-embed{width:100%;height:220px;border:0;border-radius:10px;margin:.4rem 0;background:var(--card-2)}
.how-reach summary{cursor:pointer;margin:.3rem 0}
.google-steps li{margin:.6rem 0}
/* v0.10.3 payments */
.show-mobile{display:none}
@media (max-width:820px),(pointer:coarse){.show-mobile{display:inline-flex}}
.pay-way{text-align:center;display:flex;flex-direction:column;align-items:center;gap:.2rem}
.bank-box{white-space:pre-wrap;text-align:left;font:inherit;font-size:.9rem;background:var(--card-2);border:1px solid var(--line);border-radius:8px;padding:.6rem .7rem;margin:0;width:100%}
.pay-claim{margin-top:.8rem;border-top:1px solid var(--line);padding-top:.6rem}
.pay-claim summary{cursor:pointer}
.pay-panel{border:1px dashed var(--line-2);border-radius:10px;padding:.7rem .8rem;margin:.4rem 0 .7rem;background:var(--card-2)}
.pay-panel .qr-box{margin:.3rem auto}
.fee-break{width:100%;font-size:.88rem}.fee-break td{padding:.15rem 0}.fee-break td:last-child{text-align:right;white-space:nowrap}
.stars5{color:#e2a12c;letter-spacing:1px}
.check-row{display:flex;flex-wrap:wrap;gap:.3rem 1.1rem;margin:.4rem 0 .8rem}
/* v0.10.5 */
.need-block{margin-top:2rem}
.dir-mini{display:flex;flex-direction:column;gap:.3rem;text-decoration:none;color:inherit;transition:border-color .15s,transform .15s}
.dir-mini:hover{border-color:var(--brand);transform:translateY(-1px)}
.dir-mini:active{transform:scale(.99)}
.welcome-card{border-color:var(--brand)}
.welcome-steps{list-style:none;margin:.8rem 0;padding:0;display:grid;gap:.4rem}
.welcome-steps a{display:flex;gap:.8rem;align-items:flex-start;padding:.6rem .7rem;border-radius:10px;border:1px solid var(--line);text-decoration:none;color:inherit;transition:background .15s,border-color .15s}
.welcome-steps a:hover{border-color:var(--brand)}
.welcome-steps a:active{transform:scale(.995)}
.welcome-steps small{display:block;color:var(--ink-2)}
.ws-dot{flex:none;width:1.6rem;height:1.6rem;border-radius:50%;border:2px solid var(--brand);display:grid;place-items:center;font-weight:700;color:#fff}
.welcome-steps .done .ws-dot{background:var(--brand)}
.welcome-steps .done strong{text-decoration:line-through;opacity:.7}
.choice-h{font-size:1.1rem;margin:1.4rem 0 .6rem}
.md-tick,.md-visit{display:inline-flex;align-items:center;gap:4px;font-weight:700;font-size:.78rem;padding:2px 8px 2px 3px;border-radius:999px;white-space:nowrap;vertical-align:middle}
.md-tick{background:#e8f4fe;color:#0b5c99}.md-visit{background:#e3f4f2;color:#075e63}
.md-tick svg,.md-visit svg{width:16px;height:16px;flex:none}
/* Donations */
.dn-qr-btn{display:block;border:0;background:none;padding:0;margin:0 auto;cursor:zoom-in}
.dn-qr-card .dn-qr{display:block;width:100%;max-width:280px;height:auto;border-radius:12px;border:1px solid #d9e4e4}
.dn-upi{display:none;flex-direction:column;gap:.4rem;margin-top:.6rem}
@media (max-width:820px),(pointer:coarse){.dn-upi.show-mobile{display:flex}}
.dn-chips{border:0;padding:0;margin:0 0 .6rem;display:flex;flex-wrap:wrap;gap:.45rem}
.dn-chips legend{padding:0;margin-bottom:.35rem;width:100%}
.dn-chip{display:inline-flex;align-items:center;gap:.4rem;border:1px solid #c9d8d8;border-radius:999px;padding:.38rem .8rem;cursor:pointer;background:#fff;font-weight:600;min-height:40px}
.dn-chip:has(input:checked){border-color:#0d6a73;background:#e6f3f3}
.dn-chip input[type=radio]{margin:0}
.dn-other input[type=number]{width:7rem;padding:.25rem .45rem;min-height:32px}
.dn-terms{margin:.7rem 0 .3rem;line-height:1.5}
.dn-sum{background:#f2f8f8;border-radius:10px;padding:.55rem .75rem}
.dn-kv{width:100%;border-collapse:collapse;margin:.6rem 0}
.dn-kv th{text-align:left;width:34%;padding:.45rem .5rem;border-bottom:1px solid #e3ecec;font-weight:600;vertical-align:top}
.dn-kv td{padding:.45rem .5rem;border-bottom:1px solid #e3ecec}
.dn-grid{align-items:start}
.need-cta{display:flex;flex-wrap:wrap;gap:.8rem 1.2rem;align-items:center;justify-content:space-between;margin-top:1rem;padding:.9rem 1rem;border:1px solid #cfe3e3;border-radius:12px;background:#f2f9f9}
.perm-cats{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:.7rem}
.perm-cat{border:1px solid #d9e4e4;border-radius:10px;padding:.5rem .7rem;margin:0}
.perm-cat legend{font-weight:700;font-size:.85rem;padding:0 .3rem}
.perm-cat .check{align-items:flex-start}
.clr{display:inline-block;font-size:.68rem;font-weight:700;border-radius:999px;padding:.05rem .4rem;vertical-align:middle}
.clr1{background:#e8f3ea;color:#1c5b2e}.clr2{background:#e6f0fb;color:#1d4f86}.clr3{background:#fdf0dc;color:#7a4a00}.clr4{background:#fbe3e0;color:#8a2416}
.md-sponsored{display:inline-flex;align-items:center;font-size:.72rem;font-weight:700;color:#6b4b00;background:#fdf0d4;border:1px solid #efcf8a;border-radius:999px;padding:.05rem .5rem;margin-left:.25rem}
/* Medication interaction results */
.ix{display:flex;gap:.8rem;align-items:flex-start;padding:.7rem .8rem;border-radius:10px;border:1px solid #e1e8e8;margin:.45rem 0;background:#fff}
.ix-sev{flex:none;font-size:.72rem;font-weight:700;border-radius:999px;padding:.15rem .55rem;white-space:nowrap}
.sev-x{border-color:#e6a69d;background:#fdf1ef}.sev-x .ix-sev{background:#a33a1e;color:#fff}
.sev-3{border-color:#efc7a0}.sev-3 .ix-sev{background:#fbe3e0;color:#8a2416}
.sev-2 .ix-sev{background:#fdf0dc;color:#7a4a00}
.sev-1 .ix-sev{background:#e8f3ea;color:#1c5b2e}
.sev-c .ix-sev{background:#e6f0fb;color:#1d4f86}
.dev-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.7rem}
.dev-card{display:flex;flex-direction:column;gap:.3rem;border:1px solid #dbe6e6;border-radius:12px;padding:.8rem;background:#fff}
.dev-card .pill{align-self:flex-start}
.dev-buy{font-size:.9rem;margin-top:.2rem}
.dev-card .btn{align-self:flex-start;margin-top:.2rem}

/* Copyable UPI ID and square donation QR */
.upi-id{display:inline-flex;align-items:center;flex-wrap:wrap;gap:6px;margin:4px 0;max-width:100%}
.upi-id-l{font-size:.85em;color:#5b6b6b}
.upi-id code{font:600 .95em/1.3 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;background:#f1f6f6;border:1px solid #d9e4e4;border-radius:8px;padding:4px 8px;user-select:all;-webkit-user-select:all;word-break:break-all;color:#0d2b2b}
.upi-copy{font:600 .82em/1 inherit;border:1px solid #0f766e;color:#0f766e;background:#fff;border-radius:999px;padding:6px 12px;cursor:pointer;min-height:30px}
.upi-copy:hover,.upi-copy:focus-visible{background:#0f766e;color:#fff}
.dn-qr-card .dn-qr{display:block;width:100%;max-width:260px;aspect-ratio:1;object-fit:contain;margin:0 auto;padding:8px;background:#fff}

/* Allergy card (top of patient profile, journey and own record) */
.allergy-card{border:1px solid var(--line);border-left:5px solid var(--ink-3);border-radius:10px;padding:.55rem .8rem;margin:.6rem 0;background:var(--card)}
.allergy-card.has{border-left-color:var(--bad);background:var(--bad-l)}
.allergy-card.nka{border-left-color:var(--ok)}
.allergy-card.unknown{border-left-color:var(--warn);background:var(--warn-l)}
.card .allergy-card{margin:0}
.al-head{display:flex;align-items:center;gap:.5rem;margin-bottom:.35rem}
.al-head strong{font-size:.95rem}
.al-count{background:var(--bad);color:#fff;border-radius:999px;font-size:.72rem;font-weight:700;padding:0 .45rem}
.al-manage{margin-left:auto;font-size:.85rem}
.al-list{display:flex;flex-wrap:wrap;gap:.35rem}
.al-chip{display:inline-flex;align-items:center;gap:.3rem;border-radius:999px;padding:.18rem .6rem;font-size:.85rem;font-weight:600;border:1px solid var(--line-2);background:var(--card);color:var(--ink)}
.al-chip small{font-weight:400;color:var(--ink-2)}
.al-chip em{font-style:normal;font-size:.72rem;text-transform:uppercase;letter-spacing:.02em}
.al-cat{font-size:.66rem;font-weight:700;text-transform:uppercase;color:var(--ink-3)}
.al-unv{font-size:.7rem;color:var(--warn)}
.al-x{background:#a33a1e;border-color:#a33a1e;color:#fff}.al-x small,.al-x .al-cat,.al-x .al-unv{color:#ffe1da}
.al-3{border-color:var(--bad);color:var(--bad)}
.al-2{border-color:var(--warn);color:var(--warn)}
.al-1,.al-0{color:var(--ink)}
.al-ok{border-color:var(--ok);color:var(--ok)}
.al-row .actions{flex-wrap:wrap;justify-content:flex-end}

/* Medication entry rows */
.med-check .mc-h,.card .mc-h{font-size:1rem;margin:1rem 0 .5rem}
.mrows{display:flex;flex-direction:column;border:1px solid var(--line-2);border-radius:12px;background:var(--card)}
.mrow,.mrow-head{display:grid;grid-template-columns:minmax(190px,2.6fr) minmax(72px,.75fr) minmax(88px,.85fr) minmax(64px,.6fr) minmax(120px,1.15fr) minmax(150px,1.45fr) 34px;gap:.5rem;align-items:center;padding:.5rem .7rem}
.mrow:has(.mf-src),.mrow-head.has-src{grid-template-columns:minmax(180px,2.4fr) minmax(70px,.7fr) minmax(84px,.8fr) minmax(60px,.55fr) minmax(115px,1.05fr) minmax(140px,1.35fr) minmax(130px,1.15fr) 34px}
.mrow-head{background:var(--card-2);border-bottom:1px solid var(--line-2);border-radius:12px 12px 0 0;font-size:.72rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--ink-2);padding-top:.55rem;padding-bottom:.55rem}
.mrow{border-bottom:1px solid var(--line);box-shadow:inset 3px 0 0 transparent;row-gap:.2rem}
.mrow:last-child{border-bottom:0;border-radius:0 0 12px 12px}
.mrow.ok{box-shadow:inset 3px 0 0 var(--ok)}
.mrow.unk{box-shadow:inset 3px 0 0 var(--bad);background:var(--bad-l)}
.mrow.locked{background:var(--brand-l)}
.mf{display:flex;flex-direction:column;gap:.15rem;min-width:0;position:relative}
.mf label{font-size:.72rem;font-weight:600;color:var(--ink-2);margin:0}
.mrow .mf input,.mrow .mf select{width:100%;min-width:0;min-height:38px;padding:.4rem .55rem;font-size:.92rem}
.mf select.dim,.mf input[readonly]:not([data-medsearch]){opacity:.5}
.mrow-rx{font-size:.82rem;font-weight:600;color:var(--brand-ink)}
.mhint{grid-column:1/-1;font-size:.76rem;color:var(--ink-2);overflow-wrap:anywhere;padding-left:.1rem}
.mhint:empty{display:none}
.mrow.unk .mhint{color:var(--bad)}
.mrow-x{border:0;background:none;font-size:1.3rem;line-height:1;color:var(--ink-3);cursor:pointer;padding:.2rem .4rem;justify-self:center;border-radius:6px}
.mrow-x:hover{color:var(--bad);background:var(--bad-l)}
.mrow-lock{font-size:.7rem;font-weight:700;color:var(--brand-ink);border:1px solid var(--brand);border-radius:6px;padding:.1rem .35rem;justify-self:center}
@media (min-width:901px){.mrow .mf label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}}
.msug{position:absolute;top:100%;left:0;right:0;z-index:30;background:var(--card);border:1px solid var(--line-2);border-radius:10px;box-shadow:0 8px 24px rgba(16,33,43,.16);max-height:300px;overflow:auto;margin-top:2px}
.field .msug{top:auto}
.field{position:relative}
.msug{min-width:300px}
.msug-i{display:grid;grid-template-columns:1fr auto;column-gap:.6rem;align-items:center;width:100%;text-align:left;border:0;background:none;padding:.5rem .75rem;cursor:pointer;color:var(--ink);border-bottom:1px solid var(--line);font:inherit}
.msug-i:last-child{border-bottom:0}
.msug-i strong{font-size:.92rem}
.msug-i small{grid-column:1/-1;color:var(--ink-2);font-size:.78rem}
.msug-k{font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:.1rem .45rem;border-radius:999px;background:var(--card-2);color:var(--ink-2);border:1px solid var(--line-2)}
.msug-k.k-brand{background:#e6f0fb;color:#1d4f86;border-color:#c5dbf3}
.msug-k.k-combo{background:#fdf0dc;color:#7a4a00;border-color:#f3d9ae}
.msug-k.k-generic{background:#e8f3ea;color:#1c5b2e;border-color:#c4e2cb}
.msug-head{padding:.35rem .75rem;font-size:.72rem;color:var(--ink-2);background:var(--card-2);border-bottom:1px solid var(--line)}
.mc-tbl td{vertical-align:top}
.mc-tbl td div+div{margin-top:.15rem}
.msug-i:hover,.msug-i.on{background:var(--brand-l)}
.msug-none{padding:.5rem .7rem;font-size:.85rem;color:var(--bad)}
.mc-flags{display:flex;flex-wrap:wrap;gap:.3rem 1.1rem;margin:.3rem 0}
.mc-unknown{border:1px solid var(--bad);background:var(--bad-l);border-radius:10px;padding:.6rem .8rem;margin:.4rem 0 .8rem}
.mc-unk-row{margin:.3rem 0}
.mc-unk-row.fixed{opacity:.55;text-decoration:line-through}
.chip-btn{border:1px solid var(--brand);background:var(--card);color:var(--brand-ink);border-radius:999px;padding:.12rem .6rem;font-size:.82rem;cursor:pointer;margin:.1rem 0}
.chip-btn:hover{background:var(--brand);color:#fff}
.mc-sum{display:flex;flex-wrap:wrap;gap:.4rem;margin:.4rem 0 .8rem}
.mc-sum .ix-sev{font-size:.8rem;padding:.2rem .65rem}
.mc-sum .sev-x{background:#a33a1e;color:#fff}.mc-sum .sev-3{background:#fbe3e0;color:#8a2416}.mc-sum .sev-2{background:#fdf0dc;color:#7a4a00}.mc-sum .sev-1{background:#e8f3ea;color:#1c5b2e}.mc-sum .sev-c{background:#e6f0fb;color:#1d4f86}
.mc-read{margin:.4rem 0 .8rem}.mc-read summary{cursor:pointer;font-weight:600}
.pill-warn{background:var(--warn-l);color:var(--warn);border-color:var(--warn)}
:root[data-theme="dark"] .ix{background:var(--card);border-color:var(--line)}
@media (max-width:900px){
  .mrows{border:0;background:none;gap:.6rem}
  .mrow-head{display:none}
  .mrow,.mrow:has(.mf-src){grid-template-columns:1fr 1fr;border:1px solid var(--line-2);border-radius:12px;padding:.65rem .7rem;position:relative}
  .mrow:last-child{border-radius:12px;border-bottom:1px solid var(--line-2)}
  .mf-name{grid-column:1/-1;padding-right:2rem}
  .mrow-x,.mrow-lock{position:absolute;top:.4rem;right:.4rem}
  .mhint{grid-row:2}
}
@media print{.med-check .mrow-x,.med-check [data-mrow-add],.msug{display:none!important}}

/* UPI pay box inside the app */
.upi-pay{display:flex;flex-direction:column;gap:.5rem;margin:.5rem 0}
.upi-amt{display:flex;flex-direction:column;gap:.2rem;font-weight:600;font-size:.85rem}.upi-amt input{max-width:220px;font-size:1.1rem;font-weight:700}
.upi-chips,.upi-apps{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.upi-apps .small{width:100%}
.upi-chip{border:1px solid var(--brand);background:var(--card);color:var(--brand-ink);border-radius:999px;padding:.2rem .7rem;font-weight:600;cursor:pointer}
.upi-app{display:inline-flex;align-items:center;min-height:36px;padding:.3rem .7rem;border-radius:9px;font-weight:700;font-size:.86rem;border:1px solid var(--line-2);background:var(--card);color:var(--ink);text-decoration:none}
.upi-pay .qr-box{width:200px;max-width:100%;background:#fff;padding:6px;border-radius:12px}
.upi-scan,.upi-help,.upi-amt-fixed{margin:0}
.api-dir{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.6rem;margin-bottom:.6rem}
.api-item{display:flex;flex-direction:column;gap:.25rem;border:1px solid var(--line);border-radius:10px;padding:.6rem .7rem;background:var(--card)}
.api-top{display:flex;flex-wrap:wrap;gap:.3rem;align-items:center}

/* Bed board */
.bed-board{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.5rem}
.bed{display:flex;flex-direction:column;gap:.15rem;border:1px solid var(--line);border-left:5px solid var(--ok);border-radius:9px;padding:.45rem .55rem;background:var(--card);min-height:72px;font-size:.88rem}
.bed-occupied{border-left-color:var(--bad);background:var(--bad-l)}
.bed-cleaning{border-left-color:var(--warn);background:var(--warn-l)}
.bed-blocked{border-left-color:var(--ink-3);opacity:.75}
.bed-acts{display:flex;gap:.4rem;flex-wrap:wrap}.bed-acts .linkbtn{font-size:.78rem}
.bed-add{border-style:dashed;border-left-width:1px;flex-direction:row;flex-wrap:wrap;align-items:center;gap:.3rem}
.census-stats{margin-bottom:1rem}

/* Work hours */
.wh-week{display:flex;flex-direction:column;gap:.35rem;margin:.4rem 0 .8rem}
.wh-day{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;padding:.4rem .6rem;border:1px solid var(--line);border-radius:9px;background:var(--card-2)}
.wh-day .check{min-width:9rem}
.wh-day .wh-closed{display:none}
.wh-day.off .wh-times{display:none}.wh-day.off .wh-closed{display:inline}
.wh-times{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem}

/* Calendar */
.cal-legend{display:flex;flex-wrap:wrap;gap:.4rem;margin:.2rem 0 .6rem}
.cal-k{border-radius:999px;padding:.05rem .55rem}
.cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}
.cal-dow{font-size:.75rem;font-weight:700;color:var(--ink-2);text-align:center;padding:.2rem 0}
.cal-cell{min-height:110px;border:1px solid var(--line);border-radius:8px;padding:.3rem;background:var(--card);display:flex;flex-direction:column;gap:2px;overflow:hidden}
.cal-cell.pad{background:transparent;border:0}
.cal-cell.off{background:var(--card-2)}
.cal-cell.today{border-color:var(--brand);box-shadow:inset 0 0 0 1px var(--brand)}
.cal-num{display:flex;justify-content:space-between;align-items:baseline;gap:.2rem}.cal-num span{font-weight:700}.cal-num small{font-size:.66rem;color:var(--ink-3)}
.cal-it{font-size:.72rem;line-height:1.25;border-radius:5px;padding:1px 4px;display:block;overflow-wrap:anywhere}
.cal-it b{white-space:nowrap}
.cal-it a{color:inherit}
.cal-del{margin:0;float:right}.cal-del .linkbtn{font-size:.8rem;line-height:1;padding:0 2px}
.cal-appt,.cal-k.cal-appt{background:var(--brand-l);color:var(--brand-ink)}
.cal-work,.cal-k.cal-work{background:var(--warn-l);color:var(--warn)}
.cal-shift,.cal-k.cal-shift{background:var(--info-l);color:var(--info)}
.cal-leave,.cal-k.cal-leave{background:var(--purple-l);color:var(--purple)}
.cal-meeting,.cal-event,.cal-personal,.cal-k.cal-meeting{background:var(--ok-l);color:var(--ok)}
.cal-holiday,.cal-closed,.cal-k.cal-holiday{background:var(--bad-l);color:var(--bad)}
@media (max-width:760px){
  .cal-grid{grid-template-columns:1fr}
  .cal-dow,.cal-cell.pad{display:none}
  .cal-cell{min-height:auto}
}
.bed-add input{min-height:0;padding:.25rem .35rem;font-size:.85rem}
.dn-who{border:1px solid var(--accent);background:var(--accent-l);border-radius:10px;padding:.6rem .9rem;margin:.6rem 0 1rem;font-size:.92rem}

/* Evidence reviews */
.ev-badge{display:inline-block;font-size:.76rem;font-weight:600;border-radius:999px;padding:.12rem .6rem;border:1px solid var(--line-2)}
.ev-ok{background:var(--ok-l);color:var(--ok);border-color:var(--ok)}.ev-chg{background:var(--warn-l);color:var(--warn);border-color:var(--warn)}.ev-info{background:var(--info-l);color:var(--info);border-color:var(--info)}
.ev-review{border-top:1px solid var(--line);padding:.7rem 0}
.ev-src{margin:.3rem 0 0;padding-left:1.1rem}.ev-src li{margin:.25rem 0}
.ev-rows{display:flex;flex-direction:column;gap:.4rem;margin-bottom:.4rem}
.ev-row{display:grid;grid-template-columns:minmax(150px,1fr) minmax(200px,2fr) minmax(200px,2fr);gap:.4rem}
.ev-pm{margin:.8rem 0;padding:.6rem .7rem;border:1px dashed var(--line-2);border-radius:10px}
.ev-results{display:flex;flex-direction:column;gap:.35rem;margin:.4rem 0}
.ev-hit{display:flex;gap:.6rem;align-items:flex-start;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:.35rem}
.ix .ev-line{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center;margin-top:.3rem}
.api-item.sus{opacity:.8;border-style:dashed}
@media (max-width:760px){.ev-row{grid-template-columns:1fr}}
.ga-locked .ga-curs{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.5rem}
.ga-cur{border:1px solid var(--line-2);border-radius:999px;padding:.2rem .6rem;font-size:.82rem}
.ga-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:.6rem}
.ga-card{border:1px solid var(--line);border-radius:10px;padding:.7rem;background:var(--card)}
.ga-head{display:flex;gap:.6rem;align-items:center;margin-bottom:.4rem}
.ga-code{min-width:50px;text-align:center;font-weight:800;color:#fff;background:var(--brand-d);border-radius:7px;padding:.3rem .5rem;font-size:.82rem}
.ga-card dl{display:grid;grid-template-columns:auto 1fr;gap:.15rem .6rem;margin:0;font-size:.86rem}.ga-card dt{color:var(--ink-2)}.ga-card dd{margin:0;word-break:break-word}

/* Careers and hiring (v1.13) */
.job-row{border-bottom:1px solid var(--line,#e5e7eb);padding:.55rem 0}
.job-row summary{cursor:pointer}
.job-row .btn{margin:.3rem .3rem 0 0}
.job-view h3{font-size:1rem;margin:1rem 0 .3rem}
.job-facts{display:flex;flex-wrap:wrap;gap:.4rem;margin:.3rem 0 .6rem}
.job-facts span{background:var(--soft,#f1f5f9);border-radius:999px;padding:.2rem .7rem;font-size:.85rem}
.job-steps{padding-left:1.2rem;margin:.2rem 0 .9rem}
.cand-app{border-top:1px solid var(--line,#e5e7eb);padding:.7rem 0}
.cand-steps{list-style:none;display:flex;flex-wrap:wrap;gap:.25rem;padding:0;margin:.5rem 0}
.cand-steps li{font-size:.74rem;padding:.18rem .55rem;border-radius:999px;background:var(--soft,#f1f5f9);color:var(--muted,#64748b)}
.cand-steps li.done{background:#dcfce7;color:#166534}
.cand-steps li.now{background:var(--brand,#0b6bcb);color:#fff;font-weight:600}
.cand-log{list-style:none;padding:0;margin:.3rem 0}
.cand-log li{padding:.2rem 0;border-bottom:1px dashed var(--line,#e5e7eb)}
.cand-log time{color:var(--muted,#64748b);margin-right:.4rem}
.share-row{display:flex;flex-wrap:wrap;gap:.4rem;margin:.6rem 0}
.share-tbl input{width:100%;min-width:220px;font-size:.8rem}
.share-tbl td{vertical-align:middle}
.nowrap{white-space:nowrap}
.cand-move{display:grid;gap:.3rem;margin-top:.4rem}
.cand-move .chk{display:flex;gap:.35rem;align-items:center;font-weight:400}
.cand-move .chk input{width:auto}
/* Small phones: keep the top bar inside the screen */
@media (max-width:480px){
  .top-actions{gap:.3rem}
  .top-actions .theme-switch{display:none}
  .top-actions .get-app-btn{display:none}
}
@media (max-width:360px){.top-actions .site-btn{display:none}}
@media (max-width:900px){.mrow:not(:has(.mf-src)) .mf-f{grid-column:1/-1}}

/* MyDoctor Training, articles and videos (v1.13) */
.vid{margin:1rem 0}
.vid-box{position:relative;padding-top:56.25%;border-radius:12px;overflow:hidden;background:#0b1f24}
.vid-box iframe,.vid-box video{position:absolute;inset:0;width:100%;height:100%;border:0;background:#000}
.vid-links{font-size:.82rem;margin-top:.4rem;color:var(--ink-2)}
.vid-sub{font-weight:700;color:#c4302b}
.prose{line-height:1.75;font-size:1.02rem}
.prose h2{font-size:1.35rem;margin:1.6rem 0 .5rem}.prose h3{font-size:1.12rem;margin:1.3rem 0 .4rem}
.prose ul,.prose ol{padding-left:1.3rem}.prose li{margin:.25rem 0}
.prose p{margin:.75rem 0}
.tr-wrap{max-width:1180px}
.pub-wrap.tr-wrap{margin:0 auto}
.tr-hero{display:flex;gap:1.5rem;align-items:flex-end;justify-content:space-between;background:linear-gradient(135deg,var(--brand-l),var(--card));border:1px solid var(--line);border-radius:16px;padding:1.4rem 1.5rem;margin-bottom:1rem}
.tr-hero h1{margin:.2rem 0 .4rem;font-size:1.7rem}
.tr-hero .lead{margin:0 0 .8rem;max-width:640px}
.tr-search{display:flex;gap:.5rem;max-width:560px}
.tr-search input{flex:1}
.tr-progress{min-width:170px;text-align:right}
.tr-progress strong{font-size:1.5rem;display:block}
.tr-progress span{font-size:.8rem;color:var(--ink-2)}
.tr-progress .bar{height:8px;border-radius:99px;background:var(--line);margin-top:.4rem;overflow:hidden}
.tr-progress .bar i{display:block;height:100%;background:var(--ok)}
.tr-filters{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center;margin-bottom:1rem}
.tr-filters .pill{text-decoration:none}
.tr-filters .pill.on{background:var(--brand);color:#fff;border-color:var(--brand)}
.tr-sep{width:1px;height:20px;background:var(--line-2);margin:0 .3rem}
.tr-layout,.tr-view{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:1rem;align-items:start}
.tr-side{display:flex;flex-direction:column;gap:1rem}
.tr-side .card{margin:0}
.tr-sec{margin-bottom:1.4rem}
.tr-sec h2{margin:0;font-size:1.2rem}
.tr-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:.8rem}
.tr-item{display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);border-radius:14px;overflow:hidden;color:inherit;text-decoration:none;transition:border-color .15s,box-shadow .15s}
.tr-item:hover{border-color:var(--brand);box-shadow:0 8px 22px rgba(16,33,43,.1)}
.tr-item.done{border-color:var(--ok)}
.tr-thumb{position:relative;aspect-ratio:16/9;background:var(--brand-l);display:grid;place-items:center;color:var(--brand-ink);font-weight:800;font-size:1.3rem}
.tr-thumb img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.tr-thumb b{position:relative;background:rgba(0,0,0,.55);color:#fff;border-radius:999px;padding:.35rem .8rem;font-size:1rem}
.tr-thumb-guide b,.tr-thumb-document b,.tr-thumb-update b{background:none;color:var(--brand-ink)}
.tr-thumb-update{background:#fdf0dc}.tr-thumb-document{background:#e6f0fb}
.tr-body{display:flex;flex-direction:column;gap:.25rem;padding:.7rem .8rem .8rem}
.tr-body strong{font-size:.98rem;line-height:1.35}
.tr-body small{font-size:.8rem;color:var(--ink-2)}
.tr-k{display:inline-block;font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:.1rem .45rem;border-radius:999px;background:var(--card-2);color:var(--ink-2);border:1px solid var(--line-2);margin-right:.35rem;vertical-align:middle}
.tr-k.k-video{background:#fde8e7;color:#a3261f;border-color:#f6c6c3}
.tr-k.k-guide{background:#e8f3ea;color:#1c5b2e;border-color:#c4e2cb}
.tr-k.k-document{background:#e6f0fb;color:#1d4f86;border-color:#c5dbf3}
.tr-k.k-update{background:#fdf0dc;color:#7a4a00;border-color:#f3d9ae}
.tr-ok{color:var(--ok);font-weight:700;font-size:.8rem}
.tr-mini{list-style:none;padding:0;margin:.5rem 0}
.tr-mini li{padding:.4rem 0;border-bottom:1px solid var(--line);font-size:.9rem}
.tr-mini li:last-child{border-bottom:0}
.tr-mini a{text-decoration:none}
.tr-card{margin:0}
.tr-card-h{display:flex;gap:.7rem;align-items:center}
.tr-card-h small{display:block;color:var(--ink-2);font-size:.8rem}
.tr-ico{width:38px;height:38px;border-radius:10px;background:#fde8e7;color:#a3261f;display:grid;place-items:center;font-size:.9rem;flex:0 0 38px}
.tr-done{margin-top:1rem;padding-top:.8rem;border-top:1px solid var(--line)}
.blog-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:1rem;align-items:start}
.blog-side{display:flex;flex-direction:column;gap:1rem;position:sticky;top:1rem}
.blog-side .card{margin:0}
.post-meta{display:flex;flex-wrap:wrap;gap:.3rem .8rem;color:var(--ink-2);font-size:.88rem}
.share-links{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:1rem}
.blog-card{display:flex;flex-direction:column;color:inherit;text-decoration:none;padding:0;overflow:hidden}
.blog-card .tr-thumb{aspect-ratio:16/9}
.blog-card .bc-b{padding:.9rem 1rem}
@media (max-width:900px){.tr-layout,.tr-view,.blog-layout{grid-template-columns:1fr}.tr-hero{flex-direction:column;align-items:stretch}.tr-progress{text-align:left}.blog-side{position:static}}
.tr-dash{margin-top:1rem;max-width:560px}
/* MyDoctor Store */
.shop-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:.8rem;margin:1rem 0}
.shop-item{display:flex;flex-direction:column;gap:.25rem;color:inherit;text-decoration:none;margin:0}
.shop-item.on{border-color:var(--brand);box-shadow:0 0 0 2px var(--brand-l)}
.shop-item img,.shop-ph{width:100%;aspect-ratio:4/3;object-fit:contain;border-radius:10px;background:var(--card-2)}
.shop-ph{display:grid;place-items:center;font-size:2.2rem;font-weight:800;color:var(--brand-ink)}
.shop-price{font-weight:800;color:var(--brand-ink)}
.shop-price.big{font-size:1.6rem;margin:.2rem 0}
.shop-price s{font-weight:400;color:var(--ink-3);font-size:.85em}
.shop-stores .pill.on,.pill.on{background:var(--brand);color:#fff;border-color:var(--brand)}
.big{font-size:1.6rem;font-weight:800}
.tr-body .tr-k,.tr-body .tr-ok{align-self:flex-start}
/* Website visitors */
.g4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:900px){.g4{grid-template-columns:1fr 1fr}}
.wv-chart{display:flex;align-items:flex-end;gap:2px;height:140px;margin-top:1rem;padding:.4rem;border:1px solid var(--line);border-radius:10px;background:var(--card-2)}
.wv-chart span{flex:1;background:var(--brand);border-radius:3px 3px 0 0;min-width:2px;opacity:.85}
.wv-chart span:hover{opacity:1}
.wv-row{position:relative;display:flex;justify-content:space-between;gap:.6rem;padding:.35rem .5rem;font-size:.88rem;border-radius:6px;overflow:hidden}
.wv-row span{position:relative;z-index:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.wv-row b{position:relative;z-index:1}
.wv-row i{position:absolute;left:0;top:0;bottom:0;background:var(--brand-l);z-index:0}
.danger-link{color:var(--bad)}
.gst-f{display:grid;gap:.3rem;margin-top:.3rem;min-width:200px}
.pill-ok{background:var(--ok-l,#e8f3ea);color:var(--ok)}
.vid-pick{display:grid;gap:.4rem;max-height:520px;overflow:auto}
.vid-pick-row{display:flex;gap:.7rem;align-items:center;padding:.45rem .6rem;border:1px solid var(--line);border-radius:10px;cursor:pointer}
.vid-pick-row img{border-radius:6px;flex:none;object-fit:cover}
.vid-pick-row:has(input:checked){border-color:var(--brand);background:var(--brand-soft,#eef8f8)}
/* MyDoctor Card (co-branded credit card waitlist) */
.mdc-hero{display:grid;grid-template-columns:1.25fr 1fr;gap:2rem;align-items:center}
@media (max-width:900px){.mdc-hero{grid-template-columns:1fr}}
.mdc-card{position:relative;aspect-ratio:1.586;max-width:420px;width:100%;border-radius:18px;padding:22px 24px;color:#f8f1dc;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;
  background:radial-gradient(120% 140% at 0% 0%,#1f5f68 0%,#0b2b3c 45%,#071a24 100%);box-shadow:0 22px 50px rgba(7,26,36,.35),inset 0 0 0 1px rgba(232,203,135,.35);font-family:ui-sans-serif,system-ui,sans-serif}
.mdc-card.t-team{background:radial-gradient(120% 140% at 0% 0%,#5b4a1d 0%,#2b2410 50%,#14110a 100%)}
.mdc-card.t-member{background:radial-gradient(120% 140% at 0% 0%,#2f7c86 0%,#145462 50%,#0b3440 100%)}
.mdc-card-top{display:flex;align-items:center;gap:10px}
.mdc-logo{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;font-weight:800;color:#0b2b3c;background:linear-gradient(135deg,#f5dc9a,#c8a24a)}
.mdc-name{font:700 19px/1.05 Georgia,serif;letter-spacing:.01em}.mdc-name small{display:block;font:600 10.5px ui-sans-serif,system-ui;letter-spacing:.22em;text-transform:uppercase;color:#e8cb87;margin-top:3px}
.mdc-chip{margin-left:auto;width:44px;height:33px;border-radius:7px;background:linear-gradient(135deg,#f3dfa6,#b8913d);box-shadow:inset 0 0 0 1px rgba(0,0,0,.2)}
.mdc-num{font:600 clamp(15px,3.2vw,21px)/1 ui-monospace,monospace;letter-spacing:.14em;color:#fdf7e6;text-shadow:0 1px 0 rgba(0,0,0,.4)}
.mdc-bot{display:flex;justify-content:space-between;align-items:flex-end;gap:10px;font-size:12.5px;letter-spacing:.12em}.mdc-inv{color:#e8cb87;font-size:10.5px;font-weight:700}
.mdc-sheen{position:absolute;inset:-40% -60% auto auto;width:120%;height:120%;background:linear-gradient(115deg,transparent 40%,rgba(255,255,255,.12) 50%,transparent 60%);pointer-events:none}
.mdc-form fieldset.mdc-step{border:0;border-top:1px solid var(--line);padding:1rem 0 .4rem;margin:0}
.mdc-step legend{font-weight:700;font-size:1.05rem;display:flex;gap:.55rem;align-items:center;padding-bottom:.5rem}
.mdc-step legend span{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:var(--brand);color:#fff;font-size:.85rem}
.mdc-note{background:#fff8e6;border:1px solid #f0d58f;border-radius:10px;padding:.65rem .8rem;margin:.4rem 0 .6rem;font-size:.92rem;color:#5b4a1d}
.mdc-seg{display:flex;gap:.5rem;flex-wrap:wrap}.mdc-opt{border:1px solid var(--line);border-radius:999px;padding:.45rem .9rem;cursor:pointer}.mdc-opt:has(input:checked){border-color:var(--brand);background:var(--brand-soft,#eef8f8);font-weight:600}
.mdc-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:.6rem;margin-bottom:.6rem}
.mdc-tile{display:flex;flex-direction:column;gap:.25rem;border:1px solid var(--line);border-radius:14px;padding:.8rem .9rem;cursor:pointer;position:relative}
.mdc-tile input{position:absolute;top:.8rem;right:.8rem}.mdc-tile .mdc-tag{color:#9a7a2c;font-weight:700;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em}
.mdc-tile:has(input:checked){border-color:#c8a24a;box-shadow:0 0 0 3px rgba(200,162,74,.18)}
.mdc-nets{display:flex;flex-wrap:wrap;gap:.5rem;margin:.3rem 0 .7rem}
.mdc-net{display:inline-flex;align-items:center;gap:.45rem;border:1px solid var(--line);border-radius:12px;padding:.5rem .75rem;cursor:pointer}
.mdc-net small{color:var(--ink-3);font-size:.75rem}.mdc-net.wide{flex:1 1 280px}
.mdc-net:has(input:checked){border-color:var(--brand);background:var(--brand-soft,#eef8f8)}.mdc-net[hidden]{display:none}
.mdc-status{border-left:4px solid #c8a24a}
.mdc-promo{display:flex;gap:1rem;align-items:center;justify-content:space-between;background:linear-gradient(110deg,#0b2b3c,#1f5f68);color:#f8f1dc;border-radius:14px;padding:.8rem 1rem;margin-bottom:1rem}
.mdc-promo a.btn{background:#e8cb87;color:#0b2b3c;border-color:#e8cb87}.mdc-promo b{color:#fff}.mdc-promo small{color:#e8cb87;letter-spacing:.12em;text-transform:uppercase;font-weight:700;font-size:.72rem}
.mdc-tile b{padding-right:26px}
/* MyDoctor Global Health Mission: tips and Supporter passes */
.ghm-tip{border-left:4px solid var(--brand)}.ghm-head{font-size:1.02rem}
.ghm-opts{display:flex;flex-wrap:wrap;gap:.5rem;margin:.5rem 0}.ghm-opt{display:inline-flex;align-items:center;gap:.4rem;border:1px solid var(--line);border-radius:999px;padding:.4rem .8rem;cursor:pointer}
.ghm-opt:has(input:checked){border-color:var(--brand);background:var(--brand-soft,#eef8f8);font-weight:600}
.ghm-disc{font-size:.88rem;background:#fff8e6;border:1px solid #f0d58f;border-radius:10px;padding:.5rem .75rem;color:#5b4a1d}
.ghm-badge{display:inline-flex;align-items:center;gap:6px;background:#0b2b3c;color:#f5e4b0;border-radius:999px;padding:3px 10px 3px 4px;font-size:12.5px;font-weight:600;white-space:nowrap}
.ghm-hero{display:grid;grid-template-columns:1.2fr 1fr;gap:1.5rem;align-items:start}@media (max-width:860px){.ghm-hero{grid-template-columns:1fr}}
.ghm-toggle{display:inline-flex;border:1px solid var(--line);border-radius:999px;overflow:hidden;margin:.4rem 0 1rem}.ghm-toggle a{padding:.5rem 1.1rem;text-decoration:none;color:inherit;font-weight:600}.ghm-toggle a.on{background:var(--brand);color:#fff}
.ghm-proj{display:grid;gap:.5rem;margin:.6rem 0}.ghm-proj label{border:1px solid var(--line);border-radius:12px;padding:.7rem .9rem;display:flex;gap:.6rem;cursor:pointer}.ghm-proj label:has(input:checked){border-color:var(--brand);background:var(--brand-soft,#eef8f8)}
.ghm-tiers{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.6rem;margin:.4rem 0}.ghm-tiers label{border:1px solid var(--line);border-radius:12px;padding:.7rem;cursor:pointer;display:flex;flex-direction:column;gap:2px}.ghm-tiers label:has(input:checked){border-color:#c8a24a;box-shadow:0 0 0 3px rgba(200,162,74,.18)}
.ghm-logos{display:flex;flex-wrap:wrap;gap:18px;align-items:center;justify-content:center;margin:1rem 0}.ghm-logos a{display:flex;flex-direction:column;align-items:center;gap:6px;text-decoration:none;color:inherit;font-size:.85rem}
.ghm-logos img{object-fit:contain;background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px}
.ghm-logos.gold img{width:220px;height:120px}.ghm-logos.silver img{width:170px;height:90px}.ghm-logos.bronze img{width:130px;height:70px}
/* v1.15 e-signature and referral journeys */
.es-journey{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:.5rem;padding:0;margin:1rem 0;counter-reset:j}
.es-journey li{position:relative;padding:.55rem .7rem .55rem 2.1rem;border:1px solid var(--line);border-radius:10px;background:#fff;counter-increment:j}
.es-journey li::before{content:counter(j);position:absolute;left:.6rem;top:.6rem;width:1.1rem;height:1.1rem;border-radius:50%;background:var(--line);color:var(--ink-2);font-size:.72rem;display:flex;align-items:center;justify-content:center;font-weight:700}
.es-journey li.ok{border-color:#9fd8b5;background:#f1fbf5}.es-journey li.ok::before{content:"✓";background:#1f9d55;color:#fff}
.es-journey li.no{border-color:#f0b4b4;background:#fdf3f3}.es-journey li.no::before{content:"×";background:#c0392b;color:#fff}
.es-journey li.now{border-color:var(--brand)}
.es-journey b{display:block;font-size:.88rem}.es-journey small{color:var(--ink-2);font-size:.78rem}
.pill.es-signed,.pill.rf-closed,.pill.rf-seen,.pill.rf-report{background:#e3f6ea;color:#17703c}.pill.es-declined,.pill.es-voided,.pill.es-expired,.pill.rf-declined{background:#fdeaea;color:#a12a2a}
.pill.es-viewed,.pill.rf-opened{background:var(--accent-l);color:var(--warn)}
.pre-wrap{white-space:pre-wrap;font-family:inherit}
form.inline{display:inline}
/* v1.15 Compliance & Growth Hub */
.hub-tabs{padding-top:.2rem;padding-bottom:1.15rem}
.hub-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(420px,1fr));gap:1rem;align-items:start}
@media (max-width:700px){.hub-grid{grid-template-columns:1fr}}
.hub-ent h3{font-size:.95rem;margin:.9rem 0 .35rem}
.hub-row{display:grid;grid-template-columns:6.5rem 1fr;gap:.1rem .6rem;padding:.3rem 0;border-bottom:1px solid var(--line);font-size:.9rem}
.hub-row small{grid-column:2}.hub-row.over span:first-child{color:#a12a2a;font-weight:600}
.hub-score{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:4.6rem;padding:.45rem .6rem;border-radius:12px;text-align:center}
.hub-score b{font-size:1.5rem;line-height:1}.hub-score small{font-size:.72rem;font-weight:600}
.hub-score.green{background:#e3f6ea;color:#17703c}.hub-score.amber{background:#fff4dc;color:#8a5a00}.hub-score.red{background:#fdeaea;color:#a12a2a}
.hub-add{display:flex;flex-direction:column;gap:.3rem;text-decoration:none;border:2px dashed var(--line);background:transparent;color:var(--ink);min-height:8rem;justify-content:center}
.hub-add span{font-size:1.6rem;line-height:1;color:var(--brand)}.hub-add small{color:var(--ink-2)}.hub-add:hover{border-color:var(--brand)}
.pill.hub-filed,.pill.hub-signed,.pill.hub-p-approved,.pill.hub-p-active{background:#e3f6ea;color:#17703c}
.pill.hub-over,.pill.hub-p-rejected,.pill.hub-p-expired{background:#fdeaea;color:#a12a2a}
.pill.hub-in_progress,.pill.hub-sent,.pill.hub-approved,.pill.hub-p-applied,.pill.hub-p-preparing{background:var(--accent-l);color:var(--warn)}
.pill.hub-na,.pill.hub-draft,.pill.hub-p-not_started{background:#eef1f3;color:#56646d}
.hub-q{padding:.35rem 0;border-bottom:1px solid var(--line)}
.hub-aud{border:1px solid var(--line);border-radius:10px;padding:.5rem .8rem;margin:.4rem 0}
textarea.mono,.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.86rem}
.hub-ent .card-head{flex-wrap:nowrap;align-items:flex-start;gap:.8rem}
/* v1.16 giving page */
.give-hero{text-align:center;padding:1.2rem 0 .4rem}.give-hero h1{font-size:clamp(1.6rem,3.6vw,2.4rem);margin:.3rem auto;max-width:820px}.give-hero .lead{max-width:760px;margin:0 auto}
.give-cur{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem;margin:1.2rem 0 .4rem}
.give-cur a{display:flex;flex-direction:column;align-items:center;min-width:6.6rem;padding:.55rem .8rem;border:1.5px solid var(--line);border-radius:14px;background:#fff;text-decoration:none;color:var(--ink);transition:all .15s}
.give-cur a b{font-size:1rem}.give-cur a small{font-size:.74rem;color:var(--ink-2)}
.give-cur a:hover{border-color:var(--brand)}.give-cur a.on{background:var(--brand);border-color:var(--brand);color:#fff}.give-cur a.on small{color:#dff2f2}
.give-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1rem 0}
@media (max-width:820px){.give-grid{grid-template-columns:1fr}}
.give-card{position:relative;border-top:5px solid var(--brand)}.give-card.ghm{border-top-color:#c9962b}.give-card.off{opacity:.92;background:#f7f9fa}
.give-card h2{margin:.5rem 0 .3rem}
.give-tag{display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;background:var(--brand-l);color:var(--brand-ink);padding:.2rem .6rem;border-radius:999px}
.give-tag.gold{background:#fff4dc;color:#8a5a00}
.give-note{background:#fff8e6;border:1px solid #f1d9a0;border-radius:12px;padding:.8rem 1rem;margin:.8rem 0;font-size:.92rem}
.dn-cur{display:flex;flex-wrap:wrap;gap:.35rem;justify-content:center;margin:.4rem 0 .8rem}
.dn-cur span,.dn-cur a{font-size:.8rem;padding:.25rem .6rem;border-radius:999px;border:1px solid var(--line, #d6e4e4);text-decoration:none;color:inherit}
.dn-cur .on{background:#0e7c86;color:#fff;border-color:#0e7c86}
/* List price struck through, then the offer price (used on every price) */
.px{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px}
.px-was{color:#8a96a8;font-weight:500;font-size:.78em;text-decoration-thickness:1.5px}
.px-now{font-weight:800}
.px-per{font-size:.62em;font-weight:500;color:#6b7a90}
.px-save{font-size:.6em;font-weight:800;letter-spacing:.02em;color:#0b6b52;background:#e3f5ee;border-radius:999px;padding:2px 9px;align-self:center}
/* MyDoctor Card v1.16: realistic metal card (sample) */
.mdc-stage{perspective:1200px;display:flex;flex-direction:column;align-items:center;gap:10px}
.mdc-card{position:relative;aspect-ratio:1.586;max-width:440px;width:100%;border-radius:20px;padding:22px 24px;color:#f8f1dc;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;
  background:radial-gradient(120% 140% at 0% 0%,#22465a 0%,#0e2433 45%,#060f17 100%);box-shadow:0 30px 60px rgba(6,15,23,.35),0 2px 0 rgba(255,255,255,.08) inset,0 0 0 1px rgba(232,203,135,.25) inset;
  transform:rotateX(8deg) rotateY(-12deg);transition:transform .6s cubic-bezier(.2,.8,.2,1)}
.mdc-card:hover{transform:rotateX(0) rotateY(0) translateY(-4px)}
.mdc-card.t-team{background:radial-gradient(120% 140% at 0% 0%,#6a5622 0%,#2b2410 50%,#110e07 100%)}
.mdc-card.t-member{background:radial-gradient(120% 140% at 0% 0%,#2f8a8f 0%,#145462 50%,#082a33 100%)}
.mdc-grain{position:absolute;inset:0;background:repeating-linear-gradient(115deg,rgba(255,255,255,.025) 0 2px,transparent 2px 5px);pointer-events:none}
.mdc-sheen{position:absolute;inset:-40% -60% auto auto;width:140%;height:140%;background:linear-gradient(115deg,transparent 38%,rgba(255,255,255,.16) 50%,transparent 62%);pointer-events:none;animation:mdcs 7s ease-in-out infinite}
@keyframes mdcs{0%,100%{transform:translateX(-20%)}50%{transform:translateX(15%)}}
.mdc-sample{margin-left:auto;font:800 10px/1 ui-sans-serif,system-ui;letter-spacing:.2em;color:#0b2b3c;background:#e8cb87;border-radius:999px;padding:5px 9px}
.mdc-mid{display:flex;align-items:center;gap:12px}
.mdc-chip{width:48px;height:36px;margin:0;background:none;box-shadow:none;border-radius:0}
.mdc-nfc{width:26px;height:26px;color:#e8cb87;opacity:.9}
.mdc-num{font:600 clamp(16px,3.4vw,22px)/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.14em;color:#fdf7e6;text-shadow:0 1px 0 rgba(0,0,0,.5)}
.mdc-bot{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;gap:6px 14px;align-items:end;font-size:12.5px;letter-spacing:.08em}
.mdc-holder{display:flex;flex-direction:column;gap:3px;grid-row:1/3}.mdc-holder b{font-size:clamp(13px,2.6vw,16px);letter-spacing:.1em;color:#fff}
.mdc-holder small{font-size:clamp(8px,1.6vw,10px);letter-spacing:.12em;color:#e8cb87;font-weight:700}
.mdc-exp{display:flex;flex-direction:column;align-items:flex-end;font:600 13px ui-monospace,monospace}.mdc-exp small{font:700 7.5px ui-sans-serif,system-ui;letter-spacing:.12em;color:#cdbb8a}
.mdc-net-mark{display:flex;flex-direction:column;align-items:flex-end;font:800 12px ui-sans-serif,system-ui;letter-spacing:.14em;color:#fff}.mdc-net-mark small{font-size:7.5px;color:#cdbb8a;letter-spacing:.12em}
.mdc-cap{font-size:.82rem;color:var(--ink-3,#6b7a90);margin:0;text-align:center}
@media (prefers-reduced-motion:reduce){.mdc-card{transform:none;transition:none}.mdc-sheen{animation:none}}
/* Sales CRM v1.16 */
.crm-filters{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;padding:.8rem 1rem;margin-bottom:.6rem}
.crm-filters input[type=search]{flex:1 1 220px}.crm-filters select,.crm-filters input{width:auto;min-width:0}
.crm-views{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center;margin:0 0 .8rem}
.crm-views .chip{display:inline-flex;align-items:center;gap:.3rem;border:1px solid var(--line);border-radius:999px;padding:.25rem .7rem;font-size:.85rem;text-decoration:none;color:var(--ink);background:var(--card,#fff)}
.crm-views .chip.on{border-color:var(--brand);background:var(--brand-l)}.crm-views .chip a{text-decoration:none;color:inherit}
.crm-views .inline-form{display:inline-flex;gap:.4rem;align-items:center;flex-wrap:wrap}.crm-views .inline-form input[name=vname]{width:160px}
.crm-col-h{display:flex;align-items:center;gap:.35rem}.crm-col-p{margin-left:auto;font-weight:700;color:var(--ink-3);font-size:.75rem}
.crm-col-v{display:block;color:var(--ink-3);font-size:.78rem;margin:.1rem 0 .4rem;font-weight:600}
.crm-card.stale{border-left:3px solid #d99a23}
.crm-cold{display:inline-block;font-size:.7rem;font-weight:800;color:#8a5a00;background:#fff3d6;border-radius:999px;padding:0 .45rem}
.crm-tags{font-size:.72rem;color:var(--brand)}
.crm-bulk{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;padding:.4rem 0 .8rem;border-bottom:1px solid var(--line);margin-bottom:.6rem}
.crm-bulk select,.crm-bulk input{width:auto}
.crm-list tr.stale td:first-child{box-shadow:inset 3px 0 0 #d99a23}
.crm-dupe{margin-bottom:.6rem}
td.strong{font-weight:700}
/* Founder command centre (v1.16) */
.gm{--gm-bg:#06141b;--gm-card:#0c2029;--gm-line:rgba(127,230,216,.16);--gm-ink:#e6f2f3;--gm-mut:#8fb0b6;--gm-acc:#3dd6c4;margin:-.25rem 0 0}
.gm-top,.gm-ask,.gm-kpis,.gm-grid{position:relative}
.gm-top{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;flex-wrap:wrap;background:radial-gradient(700px 300px at 90% 0%,rgba(61,214,196,.22),transparent 60%),radial-gradient(600px 300px at 0% 100%,rgba(126,168,255,.18),transparent 60%),var(--gm-bg);color:var(--gm-ink);border-radius:22px;padding:1.6rem 1.8rem;box-shadow:0 20px 50px rgba(6,20,27,.25)}
.gm-top h2{color:#fff;font-size:clamp(1.6rem,3vw,2.3rem);margin:.2rem 0 .3rem;letter-spacing:-.01em}.gm-top p{color:var(--gm-mut);margin:0}.gm-top p b{color:var(--gm-acc)}
.gm-k{font-size:.72rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--gm-acc)}
.gm-clock{display:flex;flex-direction:column;align-items:flex-end;font-variant-numeric:tabular-nums}.gm-clock b{font-size:2.4rem;color:#fff;line-height:1;font-weight:700}.gm-clock small{color:var(--gm-mut)}
.gm-ask{display:flex;align-items:center;gap:.7rem;width:100%;margin:-1.1rem auto 1rem;max-width:860px;background:var(--card,#fff);border:1px solid var(--line);border-radius:16px;padding:.95rem 1.1rem;font-size:1rem;color:var(--ink-3);cursor:pointer;box-shadow:0 14px 40px rgba(6,20,27,.14);font-family:inherit;z-index:2}
.gm-ask span{flex:1;text-align:left}.gm-ask:hover{border-color:var(--brand)}
kbd{font:600 .72rem ui-monospace,monospace;border:1px solid var(--line);border-bottom-width:2px;border-radius:6px;padding:.1rem .4rem;color:var(--ink-3);background:var(--bg,#f6f8fa)}
.gm-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.7rem;margin-bottom:1rem}
.gm-kpi{display:flex;flex-direction:column;gap:.15rem;background:var(--card,#fff);border:1px solid var(--line);border-radius:16px;padding:.9rem 1rem;text-decoration:none;color:var(--ink);transition:transform .15s,box-shadow .2s}
.gm-kpi:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(6,20,27,.1)}
.gm-kpi span{font-size:.74rem;font-weight:700;letter-spacing:.04em;color:var(--ink-3);text-transform:uppercase}.gm-kpi b{font-size:1.35rem;font-variant-numeric:tabular-nums}.gm-kpi b em{font-style:normal;font-size:.8rem;color:var(--ink-3);font-weight:600}
.gm-kpi small{color:var(--ink-3);font-size:.78rem}.gm-kpi .up{color:#0b6b52;font-weight:700}.gm-kpi .down{color:#b42318;font-weight:700}
.gm-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.gm-card{background:var(--card,#fff);border:1px solid var(--line);border-radius:18px;padding:1rem 1.1rem}
.gm-card h3{margin:0 0 .7rem;font-size:1rem}
.gm-todo{grid-row:span 2}.gm-wide{grid-column:span 2}
.gm-row{display:flex;align-items:center;gap:.7rem;padding:.6rem .2rem;border-top:1px solid var(--line);text-decoration:none;color:var(--ink)}
.gm-row:first-of-type{border-top:0}.gm-row span{flex:1;display:flex;flex-direction:column}.gm-row span small{color:var(--ink-3)}
.gm-row b{font-size:.82rem;color:var(--brand);white-space:nowrap}.gm-row b.late,.gm-sec b.late{color:#b42318}
.gm-dot{width:10px;height:10px;border-radius:50%;flex:none;background:#3b82f6;box-shadow:0 0 0 4px rgba(59,130,246,.15)}
.gm-dot.red{background:#d92d20;box-shadow:0 0 0 4px rgba(217,45,32,.15);animation:gmp 2s infinite}.gm-dot.amber{background:#d99a23;box-shadow:0 0 0 4px rgba(217,154,35,.15)}
@keyframes gmp{50%{box-shadow:0 0 0 7px rgba(217,45,32,.05)}}
.gm-empty{color:var(--ink-3);margin:.2rem 0}
.gm-two{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}.gm-two small{font-weight:700;color:var(--ink-3)}
.gm-bars{width:100%;height:auto;display:block}.gm-bars rect{fill:#9fd8d1}.gm-bars rect.now{fill:var(--brand)}.gm-bars text{font-size:10px;fill:var(--ink-3)}
.gm-note{font-size:.78rem;color:var(--ink-3);margin:.4rem 0 0}
.gm-funnel{display:grid;grid-template-columns:8.5rem 1fr 2rem 2.4rem;align-items:center;gap:.5rem;padding:.3rem 0;text-decoration:none;color:var(--ink);font-size:.88rem}
.gm-funnel i{height:12px;border-radius:6px;background:linear-gradient(90deg,var(--brand),#3dd6c4)}.gm-funnel b{text-align:right}.gm-funnel small{color:var(--ink-3);text-align:right}
.gm-actions{display:flex;gap:.5rem;margin-top:.7rem;flex-wrap:wrap}
.gm-sec{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.gm-sec a{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:12px;padding:.6rem .8rem;text-decoration:none;color:var(--ink)}.gm-sec b{font-size:1.4rem}.gm-sec small{color:var(--ink-3)}
.gm-quick{display:flex;flex-wrap:wrap;gap:.45rem}.gm-quick a{border:1px solid var(--line);border-radius:999px;padding:.4rem .8rem;text-decoration:none;color:var(--ink);font-weight:600;font-size:.86rem}.gm-quick a:hover{border-color:var(--brand);color:var(--brand)}
.gm-feed{display:flex;gap:.7rem;padding:.35rem 0;border-top:1px solid var(--line);font-size:.88rem}.gm-feed small{color:var(--ink-3);font-variant-numeric:tabular-nums;width:3rem;flex:none}
@media (max-width:1300px){.gm-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.gm-grid{grid-template-columns:1fr 1fr}.gm-wide{grid-column:span 2}}
@media (max-width:760px){.gm-kpis{grid-template-columns:1fr 1fr}.gm-grid{grid-template-columns:1fr}.gm-wide,.gm-todo{grid-column:auto;grid-row:auto}.gm-funnel{grid-template-columns:7rem 1fr 1.6rem 2.2rem}.gm-top{padding:1.2rem}}
/* Jump anywhere (Ctrl K) */
.cmdk-btn kbd{margin-left:.3rem}
.cmdk{position:fixed;inset:0;z-index:200;background:rgba(6,20,27,.5);backdrop-filter:blur(4px);display:flex;align-items:flex-start;justify-content:center;padding:12vh 16px 16px}
.cmdk[hidden]{display:none}
.cmdk-box{width:100%;max-width:640px;background:var(--card,#fff);border-radius:18px;box-shadow:0 30px 80px rgba(0,0,0,.35);overflow:hidden;border:1px solid var(--line)}
.cmdk-box input{width:100%;border:0;border-bottom:1px solid var(--line);padding:1rem 1.2rem;font-size:1.05rem;outline:0;background:transparent;color:var(--ink)}
.cmdk-list{max-height:52vh;overflow:auto;padding:.4rem}
.cmdk-list a{display:flex;justify-content:space-between;gap:.6rem;padding:.6rem .8rem;border-radius:10px;text-decoration:none;color:var(--ink)}
.cmdk-list a small{color:var(--ink-3)}.cmdk-list a.on{background:var(--brand-l);color:var(--brand)}
.cmdk-foot{display:flex;gap:1rem;padding:.5rem 1rem;border-top:1px solid var(--line);font-size:.75rem;color:var(--ink-3)}
.crm-filters select,.crm-filters input:not([type=checkbox]){padding:.42rem .6rem;font-size:.9rem;height:auto;flex:0 1 auto;width:auto;max-width:190px}
.crm-filters input[type=search]{flex:1 1 220px;max-width:none}
.crm-prod{display:flex;flex-wrap:wrap;gap:.2rem 1.4rem;margin:.4rem 0 .8rem}
/* MyDoctor Card v1.17: premium lettering and the turning mini card */
.mdc-name{font:700 17px/1.1 Georgia,"Fraunces",serif;letter-spacing:.01em;color:#fff}
.mdc-name em{font-style:italic;background:linear-gradient(110deg,#fbe7b0,#d9b45a 45%,#fff3cf 60%,#c9971f);-webkit-background-clip:text;background-clip:text;color:transparent}
.mdc-name small{display:block;font:700 9.5px ui-sans-serif,system-ui;letter-spacing:.16em;text-transform:uppercase;margin-top:4px;background:linear-gradient(90deg,#e8cb87,#fff6dc,#e8cb87);-webkit-background-clip:text;background-clip:text;color:transparent}
a.mdc-promo{display:flex;align-items:center;gap:22px;text-decoration:none;background:radial-gradient(500px 200px at 100% 0%,rgba(232,203,135,.25),transparent 60%),linear-gradient(110deg,#081c29,#0f3a47 60%,#1f5f68);color:#f8f1dc;border-radius:18px;padding:16px 22px;margin-bottom:1rem;overflow:hidden;border:1px solid rgba(232,203,135,.35)}
a.mdc-promo:hover{box-shadow:0 16px 40px rgba(8,28,41,.3)}
.mdc-promo-t{display:flex;flex-direction:column;gap:2px;flex:1}
.mdc-promo-t small{color:#e8cb87;letter-spacing:.14em;text-transform:uppercase;font-weight:700;font-size:.7rem}
.mdc-promo-h{font:600 1.45rem/1.15 Georgia,"Fraunces",serif;color:#fff}
.mdc-promo-h em{font-style:italic;background:linear-gradient(110deg,#fbe7b0,#d9b45a,#fff3cf);-webkit-background-clip:text;background-clip:text;color:transparent}
.mdc-promo-h strong{background:linear-gradient(110deg,#fff6dc,#e8cb87 40%,#c9971f 70%,#fff3cf);-webkit-background-clip:text;background-clip:text;color:transparent;font-weight:800}
.mdc-promo-s{color:#cfe1e4;font-size:.9rem}
.mdc-promo-go{background:linear-gradient(135deg,#f3d58a,#c9971f);color:#081c29;font-weight:800;border-radius:999px;padding:.55rem 1rem;white-space:nowrap}
.mdc-mini{width:176px;height:111px;flex:none;perspective:900px}
.mdc-spin{position:relative;display:block;width:100%;height:100%;transform-style:preserve-3d;animation:mdcturn 7s linear infinite}
.mdc-face{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:10px;overflow:hidden}
.mdc-face.front .mdc-stage{display:block;width:440px;transform:scale(.4);transform-origin:0 0}
.mdc-face.front .mdc-card{transform:none!important;width:440px;max-width:none;box-shadow:none}
.mdc-face.back{transform:rotateY(180deg);background:radial-gradient(120% 140% at 0% 0%,#22465a 0%,#0e2433 45%,#060f17 100%);border:1px solid rgba(232,203,135,.3)}
.mdc-strip{position:absolute;left:0;right:0;top:16px;height:22px;background:#020608}
.mdc-sig{position:absolute;left:12px;width:96px;top:50px;height:16px;background:repeating-linear-gradient(135deg,#f5ecd6 0 4px,#e8dcc0 4px 8px);border-radius:2px}
.mdc-back-t{position:absolute;right:10px;bottom:10px;font:700 10px Georgia,serif;color:#fff}.mdc-back-t em{color:#e8cb87}
@keyframes mdcturn{0%{transform:rotateY(0)}40%{transform:rotateY(0)}50%{transform:rotateY(180deg)}90%{transform:rotateY(180deg)}100%{transform:rotateY(360deg)}}
@media (max-width:640px){a.mdc-promo{flex-wrap:wrap;gap:12px}.mdc-promo-h{font-size:1.2rem}}
@media (prefers-reduced-motion:reduce){.mdc-spin{animation:none}}
/* v1.17 department card on the find page */
.fd-dept{display:grid;grid-template-columns:220px 1fr;gap:1.4rem;align-items:center;margin:1rem 0 1.2rem;border-radius:20px}
.fd-dept .dept-art{width:100%;height:auto;border-radius:16px;display:block}
.fd-empty{text-align:left;border-left:4px solid var(--brand)}
@media (max-width:700px){.fd-dept{grid-template-columns:1fr}.fd-dept .dept-art{max-width:260px}}
.app-dept-row{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(130px,1fr);gap:.7rem;overflow-x:auto;padding:.6rem 0 .2rem;scroll-snap-type:x mandatory}
.app-dept-row a{display:flex;flex-direction:column;gap:.35rem;text-decoration:none;color:var(--ink);scroll-snap-align:start;font-weight:600;font-size:.88rem}
.app-dept-row .dept-art{width:100%;height:auto;border-radius:14px;display:block;transition:transform .2s}.app-dept-row a:hover .dept-art{transform:translateY(-3px)}
/* v1.17 emergency strip on charts and notes */
.em-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:.8rem 1.2rem;align-items:start;background:linear-gradient(90deg,#fff1f0,#fff);border:1px solid #f5c2be;border-left:5px solid #d92d20;border-radius:14px;padding:.75rem 1rem;margin:0 0 1rem}
.em-strip small{display:block;font-size:.7rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#b42318}
.em-strip b{display:block;font-size:.92rem;color:var(--ink)}.em-strip b span{font-weight:500;color:var(--ink-3)}.em-strip a{color:#b42318;font-weight:700}
.em-strip .em-miss{color:#b42318}
.em-strip.compact{grid-template-columns:repeat(3,minmax(0,1fr));padding:.5rem .8rem}
.em-fs{border:1px solid #f5c2be!important;border-radius:14px;background:#fffafa}
@media (max-width:760px){.em-strip,.em-strip.compact{grid-template-columns:1fr}}
@media print{.em-strip{break-inside:avoid}}
/* v1.17 office mail */
.om-notice{background:#fff8e6;border:1px solid #f0d58f;border-radius:10px;padding:.5rem .8rem;font-size:.88rem;color:#5b4a1d;margin:0 0 .8rem}
.om{display:grid;grid-template-columns:260px 1fr;gap:1rem;align-items:start}
.om-boxes{display:flex;flex-direction:column;gap:.4rem;position:sticky;top:80px}
.om-boxes>a{display:flex;flex-direction:column;background:var(--card,#fff);border:1px solid var(--line);border-radius:12px;padding:.6rem .8rem;text-decoration:none;color:var(--ink)}
.om-boxes>a.on{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-l)}.om-boxes small{color:var(--ink-3);font-size:.78rem}
.om-folders{display:flex;gap:.4rem;margin-top:.4rem}.om-folders a{flex:1;text-align:center;border:1px solid var(--line);border-radius:999px;padding:.35rem;text-decoration:none;color:var(--ink);font-size:.85rem}.om-folders a.on{background:var(--brand);color:#fff;border-color:var(--brand)}
.om-main{min-height:420px}
.om-list a{display:grid;grid-template-columns:minmax(120px,220px) 1fr auto;gap:.8rem;padding:.6rem .4rem;border-bottom:1px solid var(--line);text-decoration:none;color:var(--ink-2,#3a5961);align-items:center}
.om-list a:hover{background:var(--brand-l)}.om-list a.unread{color:var(--ink);font-weight:700}.om-list a.unread .om-from::before{content:"●";color:var(--brand);margin-right:.35rem;font-size:.7rem}
.om-from,.om-sub{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.om-date{font-size:.8rem;color:var(--ink-3);white-space:nowrap}
.om-body{white-space:normal;line-height:1.6;background:var(--bg,#f6f8fa);border-radius:12px;padding:1rem;margin-bottom:1rem;max-height:60vh;overflow:auto}
@media (max-width:820px){.om{grid-template-columns:1fr}.om-boxes{position:static}.om-list a{grid-template-columns:1fr auto}.om-sub{grid-column:1/-1;order:3}}
/* v1.17 pay page: UPI first, other currencies */
.pay-upi-main{border:2px solid #0f766e;background:linear-gradient(180deg,#f0fdfa,#fff)}
.pay-upi-main .badge{vertical-align:middle;font-size:.72rem}
@media(min-width:760px){.pay-upi-main .upi-pay{display:grid;grid-template-columns:220px 1fr;gap:.4rem 1.2rem;align-items:start}.pay-upi-main .upi-pay>*{grid-column:2}.pay-upi-main .upi-pay .qr-box,.pay-upi-main .upi-pay .upi-scan{grid-column:1}.pay-upi-main .upi-pay .qr-box{grid-row:1/span 4}}
.pay-cur{margin:.9rem 0 .4rem;border:1px solid var(--line,#e5e7eb);border-radius:12px;padding:.6rem .9rem}
.pay-cur summary{cursor:pointer}
.pay-cur-list{display:flex;flex-wrap:wrap;gap:.35rem}

/* ===== 1.17.1 add-on: "I am a…" chooser (website and app) ===== */
.iam-i{width:18px;height:18px;flex:none}
.iam-chip{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 10px 0 9px;border-radius:999px;border:1px solid rgba(14,124,134,.35);background:linear-gradient(135deg,rgba(14,124,134,.08),rgba(242,165,65,.10));color:#0a5f67;font:600 13px/1 'Public Sans',system-ui,sans-serif;cursor:pointer;white-space:nowrap;transition:box-shadow .2s,transform .2s}
.iam-chip:hover{box-shadow:0 6px 18px rgba(14,124,134,.18);transform:translateY(-1px)}
.iam-chip:focus-visible{outline:3px solid #f2a541;outline-offset:2px}
.iam-chip .iam-chip-k{font-weight:500;opacity:.75}
.iam-chip b{font-weight:800;max-width:150px;overflow:hidden;text-overflow:ellipsis}
.iam-chip .iam-i:last-child{width:14px;height:14px;opacity:.7}
.iam-dlg{border:0;padding:0;border-radius:24px;max-width:860px;width:calc(100% - 24px);max-height:calc(100dvh - 24px);background:linear-gradient(160deg,#0b3a41 0%,#082b31 55%,#0c2328 100%);color:#e8f4f4;box-shadow:0 40px 120px rgba(0,0,0,.45);font:15px/1.5 'Public Sans',system-ui,sans-serif;overflow:auto}
.iam-dlg::backdrop{background:rgba(4,22,26,.62);backdrop-filter:blur(6px)}
.iam-dlg[open]{animation:iamIn .28s cubic-bezier(.2,.8,.2,1)}
@keyframes iamIn{from{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}
.iam-form{padding:26px 28px 22px;position:relative}
.iam-form::before{content:"";position:absolute;inset:0 0 auto auto;width:320px;height:320px;background:radial-gradient(circle,rgba(242,165,65,.18),transparent 65%);pointer-events:none}
.iam-top{display:flex;justify-content:space-between;gap:16px;margin-bottom:10px;position:relative}
.iam-kick{display:inline-block;font:700 11px/1 'Public Sans',system-ui,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#f4c26b;margin-bottom:8px}
.iam-top h2{margin:0;font:600 34px/1.1 'Fraunces',Georgia,serif;color:#fff}
.iam-top p{margin:8px 0 0;color:#a9c9cc;max-width:560px}
.iam-x{flex:none;width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.06);color:#fff;font-size:24px;line-height:1;cursor:pointer}
.iam-x:hover{background:rgba(255,255,255,.14)}
.iam-grp{border:0;margin:16px 0 0;padding:0}
.iam-grp legend{font:700 12px/1 'Public Sans',system-ui,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#7fd3cf;margin-bottom:10px;padding:0}
.iam-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px}
.iam-opt{position:relative;display:flex;gap:12px;align-items:center;padding:12px 14px;border-radius:16px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.10);cursor:pointer;transition:background .18s,border-color .18s,transform .18s}
.iam-opt:hover{background:rgba(255,255,255,.09);transform:translateY(-1px)}
.iam-opt input{position:absolute;opacity:0;pointer-events:none}
.iam-opt:has(input:checked){background:linear-gradient(135deg,rgba(45,212,191,.22),rgba(242,165,65,.18));border-color:#f4c26b;box-shadow:0 0 0 1px #f4c26b inset}
.iam-opt:has(input:focus-visible){outline:3px solid #f4c26b;outline-offset:2px}
.iam-ico{flex:none;display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:linear-gradient(135deg,#14a3a8,#0e7c86);color:#fff;box-shadow:0 6px 16px rgba(0,0,0,.25)}
.iam-opt.biz .iam-ico{background:linear-gradient(135deg,#f4c26b,#d98a1f);color:#2b1c00}
.iam-ico .iam-i{width:22px;height:22px}
.iam-txt b{display:block;color:#fff;font-weight:700;font-size:15px;line-height:1.25}
.iam-txt small{display:block;color:#9fc0c3;font-size:12.5px;line-height:1.35;margin-top:2px}
.iam-biz{margin-top:16px;padding:14px 16px;border-radius:16px;background:rgba(242,165,65,.08);border:1px dashed rgba(244,194,107,.5)}
.iam-biz-h{margin:0 0 8px;font-weight:700;color:#f4c26b;font-size:13px}
.iam-biz-g{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.iam-biz label{display:grid;gap:4px;font-size:12.5px;color:#cfe3e4;font-weight:600}
.iam-biz input{height:42px;border-radius:10px;border:1px solid rgba(255,255,255,.2);background:rgba(0,0,0,.2);color:#fff;padding:0 12px;font:inherit}
.iam-biz input::placeholder{color:#7f9ea2}
.iam-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:18px;padding-top:16px;border-top:1px solid rgba(255,255,255,.1)}
.iam-foot small{color:#8fb3b6}
.iam-go{height:48px;padding:0 28px;border:0;border-radius:999px;background:linear-gradient(135deg,#f4c26b,#f2a541);color:#2b1c00;font:800 15px/1 'Public Sans',system-ui,sans-serif;cursor:pointer;box-shadow:0 10px 24px rgba(242,165,65,.35)}
.iam-go:hover{filter:brightness(1.05)}
.iam-pay{margin:14px 0 18px;border-radius:20px;background:linear-gradient(120deg,#0b3a41,#0e5a62 60%,#0e7c86);color:#e8f4f4;box-shadow:0 14px 36px rgba(8,43,49,.18);overflow:hidden;position:relative}
.iam-pay::after{content:"";position:absolute;right:-60px;top:-80px;width:260px;height:260px;background:radial-gradient(circle,rgba(242,165,65,.28),transparent 65%)}
.iam-pay-in{display:flex;gap:18px;align-items:center;justify-content:space-between;padding:16px 20px;flex-wrap:wrap;position:relative;z-index:1}
.iam-pay-t{display:grid;gap:2px;min-width:220px}
.iam-pay-t .iam-kick{margin:0}
.iam-pay-t b{color:#fff;font-size:18px}
.iam-pay-t small{color:#a9c9cc}
.iam-quick{display:flex;flex-wrap:wrap;gap:8px}
.iam-q{display:inline-flex;align-items:center;gap:6px;height:38px;padding:0 13px;border-radius:999px;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.06);color:#fff;font:600 13px/1 'Public Sans',system-ui,sans-serif;cursor:pointer;transition:background .15s}
.iam-q:hover{background:rgba(255,255,255,.14)}
.iam-q.on{background:#f4c26b;border-color:#f4c26b;color:#2b1c00}
.iam-q .iam-i{width:16px;height:16px}
.iam-q.more{border-style:dashed}
.iam-pay.need{animation:iamPulse 1.2s ease 2}
@keyframes iamPulse{50%{box-shadow:0 0 0 6px rgba(244,194,107,.55)}}
.iam-pay-wrap{max-width:1200px;margin:0 auto;padding:0 20px}
@media (max-width:640px){.iam-form{padding:20px 16px}.iam-top h2{font-size:27px}.iam-biz-g{grid-template-columns:1fr}.iam-grid{grid-template-columns:1fr}.iam-pay-in{padding:14px}.iam-q span{font-size:12.5px}.iam-foot{flex-direction:column-reverse;align-items:stretch}.iam-go{width:100%}}
@media (prefers-reduced-motion:reduce){.iam-dlg[open],.iam-pay.need{animation:none}.iam-opt,.iam-chip{transition:none}}
/* ===== 1.17.1: Health & Wellness Score (app) ===== */
:root[data-theme="dark"] .iam-chip{color:#7dd8df;border-color:rgba(125,216,223,.35)}
.medchk-btn .i{stroke:var(--brand)}
.wl-card{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:0;margin:0 0 1.1rem;border-radius:22px;overflow:hidden;background:linear-gradient(125deg,#0b3a41 0%,#0e5a62 55%,#0f6f78 100%);color:#e8f4f4;box-shadow:0 18px 40px rgba(8,43,49,.20);position:relative}
.wl-card::before{content:"";position:absolute;left:38%;top:-120px;width:340px;height:340px;background:radial-gradient(circle,rgba(242,181,68,.22),transparent 65%);pointer-events:none}
.wl-main{display:flex;gap:18px;align-items:center;padding:20px 22px;position:relative}
.wl-txt{min-width:0}
.wl-kick{display:block;font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#f4c26b;margin-bottom:4px}
.wl-txt h3{margin:0;font:600 1.45rem/1.2 'Fraunces',Georgia,serif;color:#fff}
.wl-txt h3 b{color:#f4c26b}
.wl-sub{margin:6px 0 0;color:#a9c9cc;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.wl-card .stars,.wl-hero .stars{color:#f4c26b;letter-spacing:2px;font-size:1.05rem}
.wl-acts{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.wl-btn{display:inline-flex;align-items:center;gap:6px;height:38px;padding:0 16px;border-radius:999px;background:linear-gradient(135deg,#f4c26b,#f2a541);color:#2b1c00!important;font-weight:800;font-size:.9rem;text-decoration:none;box-shadow:0 8px 18px rgba(242,165,65,.3)}
.wl-btn.ghost{background:rgba(255,255,255,.08);color:#fff!important;border:1px solid rgba(255,255,255,.22);box-shadow:none;font-weight:700}
.wl-btn.ghost:hover{background:rgba(255,255,255,.16)}
.wl-btn .iam-i{width:16px;height:16px}
.wl-fam{padding:18px 20px;background:rgba(0,0,0,.16);border-left:1px solid rgba(255,255,255,.08);position:relative}
.wl-fam-h{display:block;font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#7fd3cf;margin-bottom:8px}
.wl-fam-empty{margin:0;color:#a9c9cc;font-size:.92rem}
.wl-fam-l{display:grid;gap:6px}
.wl-mem{display:flex;align-items:center;gap:10px;padding:6px 8px;border-radius:12px;color:#fff!important;text-decoration:none;background:rgba(255,255,255,.04)}
.wl-mem:hover{background:rgba(255,255,255,.10)}
.wl-av{flex:none;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#2dd4bf,#0e7c86);color:#fff;font-weight:800;font-size:.75rem}
.wl-mn{flex:1;min-width:0;display:grid}
.wl-mn b{font-size:.9rem}.wl-mn small{color:#9fc0c3;font-size:.75rem}
.wl-ms{font:700 1.05rem 'Fraunces',Georgia,serif;color:#f4c26b}
.wl-ms i{font:600 .78rem 'Public Sans',sans-serif;color:#9fc0c3}
.wl-credit{grid-column:1/-1;margin:0;padding:9px 22px;font-size:.76rem;color:#9fc0c3;background:rgba(0,0,0,.18);border-top:1px solid rgba(255,255,255,.06)}
.wl-ring .wl-track{fill:none;stroke:rgba(255,255,255,.14);stroke-width:10}
.wl-ring .wl-arc{fill:none;stroke-width:10;stroke-linecap:round;transition:stroke-dasharray 1s ease}
.wl-ring .wl-n{font:700 30px 'Fraunces',Georgia,serif;fill:#fff}
.wl-ring .wl-of{font:600 10px 'Public Sans',sans-serif;fill:#a9c9cc;letter-spacing:.08em}
/* page */
.wl-page{max-width:1180px}
.wl-hero{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:28px 30px;border-radius:24px;background:linear-gradient(125deg,#0b3a41 0%,#0e5a62 55%,#0f6f78 100%);color:#e8f4f4;box-shadow:0 18px 40px rgba(8,43,49,.2);position:relative;overflow:hidden;margin-bottom:1rem}
.wl-hero::after{content:"";position:absolute;right:-80px;bottom:-140px;width:420px;height:420px;background:radial-gradient(circle,rgba(242,181,68,.22),transparent 65%)}
.wl-hero-l{position:relative;z-index:1;max-width:620px}
.wl-hero h2{margin:2px 0 8px;font:600 2.1rem/1.1 'Fraunces',Georgia,serif;color:#fff}
.wl-hero p{margin:0;color:#b8d4d6}
.wl-hero-r{position:relative;z-index:1;display:grid;justify-items:center;gap:4px;text-align:center}
.wl-hero-r small{color:#a9c9cc}
.wl-band{font-weight:800;color:#fff;font-size:1.05rem}
.wl-hero .wl-ring .wl-n{font-size:34px}
.wl-who{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.wl-who a{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 14px 0 5px;border-radius:999px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);color:#fff!important;text-decoration:none;font-weight:700;font-size:.9rem}
.wl-who a.on{background:#fff;color:#0a5f67!important;border-color:#fff}
.wl-who a.add{padding:0 14px;border-style:dashed;color:#f4c26b!important}
.wl-who .wl-av{width:30px;height:30px}
.wl-note{margin:0 0 1rem;padding:10px 14px;border-radius:12px;background:var(--accent-l);color:var(--ink);border:1px solid rgba(242,181,68,.4);font-size:.9rem}
.wl-cols{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:1rem;align-items:start}
.wl-tips ul{margin:.3rem 0 0;padding-left:1.1rem}.wl-tips li{margin:.3rem 0}
.wl-q summary{cursor:pointer;list-style:none;display:block}
.wl-q summary::-webkit-details-marker{display:none}
.wl-q summary h3{margin:0;display:inline}
.wl-q summary small{display:block;color:var(--ink-3);margin-top:2px}
.wl-q[open] summary{margin-bottom:.6rem}
.wl-fs{border:0;border-top:1px solid var(--line);margin:0;padding:14px 0}
.wl-fs legend{padding:0;margin-bottom:10px;line-height:1.45;color:var(--ink)}
.wl-fs legend b{margin-right:4px;color:var(--brand-ink)}
.wl-qn{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--brand-l);color:var(--brand-ink);font-weight:800;font-size:.78rem;margin-right:8px}
.wl-opts{display:flex;flex-wrap:wrap;gap:8px}
.wl-opt{position:relative;cursor:pointer}
.wl-opt input{position:absolute;opacity:0}
.wl-opt span{display:inline-block;padding:9px 14px;border-radius:999px;border:1px solid var(--line-2);background:var(--card-2);font-weight:600;font-size:.9rem;transition:all .15s}
.wl-opt:hover span{border-color:var(--brand)}
.wl-opt input:checked+span{background:var(--brand);border-color:var(--brand);color:#fff;box-shadow:0 6px 14px rgba(14,124,134,.25)}
.wl-opt input:focus-visible+span{outline:3px solid var(--accent);outline-offset:2px}
.wl-bmi{display:flex;gap:10px;flex-wrap:wrap}.wl-bmi label{display:grid;gap:4px;font-weight:600;font-size:.85rem}.wl-bmi input{width:140px}
.wl-submit{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding-top:12px;border-top:1px solid var(--line)}
.wl-submit small{color:var(--ink-3)}
.wl-side h3{margin-top:0}
.wl-flist{list-style:none;margin:0 0 .8rem;padding:0;display:grid;gap:6px}
.wl-flist a{display:flex;gap:10px;align-items:center;padding:8px;border-radius:12px;border:1px solid var(--line);text-decoration:none;color:var(--ink)}
.wl-flist a:hover{border-color:var(--brand)}
.wl-flist a>span:nth-child(2){flex:1;display:grid}.wl-flist small{color:var(--ink-3)}
.wl-flist .wl-ms{color:var(--brand-ink)}
.wl-add{display:grid;gap:8px;margin-top:10px}.wl-add label{display:grid;gap:3px;font-weight:600;font-size:.85rem}
.wl-2{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.wl-side details>summary{list-style:none;display:inline-flex;cursor:pointer}
.wl-rm{margin-top:10px}
.wl-link{display:flex;gap:12px;align-items:flex-start;padding:10px;border-radius:12px;text-decoration:none;color:var(--ink);border:1px solid transparent}
.wl-link:hover{border-color:var(--line-2);background:var(--card-2)}
.wl-link .iam-i{width:22px;height:22px;color:var(--brand);margin-top:2px}
.wl-link span{display:grid}.wl-link small{color:var(--ink-3)}
.wl-foot{margin-top:1rem}.wl-foot .wl-credit{background:none;padding:0;color:var(--ink-2);font-weight:600;font-size:.85rem}
@media (max-width:900px){.wl-card{grid-template-columns:1fr}.wl-fam{border-left:0;border-top:1px solid rgba(255,255,255,.08)}.wl-cols{grid-template-columns:1fr}.wl-hero{flex-direction:column-reverse;align-items:flex-start;padding:22px 18px}.wl-hero h2{font-size:1.7rem}}
@media (max-width:560px){.wl-main{flex-direction:column;align-items:flex-start}}
.wl-fs legend{float:left;width:100%}.wl-fs .wl-opts,.wl-fs .wl-bmi{clear:both}
