/* MDR prototype — palette taken from cardiorescue.in (style.css) */
:root{--teal:#0fb4ba;--teal-d:#0a8f94;--navy:#243a76;--blue:#0a4e82;--blue2:#1c5088;--logo:#146fb5;--green:#21b59e;--ok:#00b56f;
 --ink:#1a1a1a;--muted:#5d6b7a;--line:#e3e9ef;--bg:#f3f7f9;--card:#fff;--amber:#c77700;--red:#d23b3b;--r:12px}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font:15px/1.45 system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;color:var(--ink);background:var(--bg)}
a{color:var(--blue)}
h1{font-size:1.45rem;margin:.2rem 0 .6rem;color:var(--navy)}h2{font-size:1.1rem;margin:.2rem 0 .7rem;color:var(--navy)}h3{font-size:1rem;margin:.6rem 0 .4rem;color:var(--navy)}
.top{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:.7rem;padding:.55rem 1rem;background:#fff;border-bottom:3px solid var(--teal)}
.brand{display:flex;align-items:center;gap:.6rem;text-decoration:none;color:var(--navy);font-weight:800;font-size:1.15rem}
.brand img{height:34px;width:auto}
.brand small{display:block;font-weight:500;font-size:.72rem;color:var(--muted)}
.sample{margin-left:auto;font-size:.68rem;font-weight:700;letter-spacing:.04em;background:#fff4d6;color:#7a5200;padding:.15rem .45rem;border-radius:99px}
.who{font-size:.8rem;color:var(--muted)}
.nav{display:flex;gap:.25rem;overflow-x:auto;padding:.4rem .8rem;background:linear-gradient(90deg,var(--navy),var(--blue));scrollbar-width:none}
.nav a{color:#dfefff;text-decoration:none;padding:.4rem .75rem;border-radius:99px;white-space:nowrap;font-size:.9rem}
.nav a.on{background:var(--teal);color:#fff;font-weight:600}
.wrap{max-width:1240px;margin:0 auto;padding:1rem}
.patient-app .wrap{max-width:560px;padding-bottom:5.5rem}
.card{background:var(--card);border-radius:var(--r);padding:1rem;margin:0 0 1rem;box-shadow:0 1px 2px rgba(16,40,70,.07);border:1px solid var(--line)}
.narrow{max-width:440px;margin:1rem auto}
.head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.5rem;margin-bottom:.6rem}
.muted{color:var(--muted)}.small{font-size:.83rem}.center{text-align:center}.mono{font-family:ui-monospace,Menlo,monospace}
.ok{color:var(--ok)}.amber{color:var(--amber)}.red{color:var(--red)}
.row{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-wrap:wrap}
.line{padding:.5rem 0;border-bottom:1px solid var(--line)}.line:last-child{border-bottom:0}
.grid2{display:grid;gap:1rem;grid-template-columns:1fr}.grid3{display:grid;gap:1rem;grid-template-columns:1fr}
@media(min-width:820px){.grid2{grid-template-columns:1fr 1fr}.grid3{grid-template-columns:1fr 1fr 1fr}}
.grid{display:grid;gap:1rem}
.kpis{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.7rem;margin-bottom:1rem}
.kpis.two{grid-template-columns:1fr 1fr}
.kpi{background:#fff;border:1px solid var(--line);border-left:4px solid var(--teal);border-radius:var(--r);padding:.7rem .8rem;text-decoration:none;color:inherit}
.kpi span{display:block;font-size:.78rem;color:var(--muted)}.kpi b{display:block;font-size:1.45rem;color:var(--navy)}.kpi small{color:var(--muted);font-size:.75rem}
.kpi.warn{border-left-color:var(--amber)}
.btn{display:inline-block;border:1px solid var(--line);background:#fff;color:var(--navy);padding:.55rem .95rem;border-radius:10px;font:inherit;font-weight:600;cursor:pointer;text-decoration:none;min-height:40px}
.btn.primary{background:var(--teal);border-color:var(--teal);color:#fff}.btn.primary:hover{background:var(--teal-d)}
.btn.sm{padding:.3rem .6rem;min-height:32px;font-size:.83rem}
.btn.block{display:block;width:100%;margin-top:.6rem}
.btn.white{background:#fff;color:var(--blue);border-color:#fff}.btn.ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.7)}
summary.btn{list-style:none}summary::-webkit-details-marker{display:none}
.actions{display:flex;gap:.3rem;flex-wrap:wrap;align-items:center}.actions form{margin:0}
label{display:block;font-size:.85rem;color:var(--muted);margin:.45rem 0}
label.inline{display:flex;gap:.4rem;align-items:center}
input,select,textarea{display:block;width:100%;font:inherit;color:var(--ink);padding:.55rem .65rem;border:1px solid #cfd9e2;border-radius:9px;background:#fff;margin-top:.2rem;min-height:42px}
input[type=checkbox],input[type=radio]{width:auto;min-height:0;display:inline}
input:focus,select:focus,textarea:focus{outline:2px solid var(--teal);border-color:var(--teal)}
.row input,.row select{width:auto;flex:1;margin:0}
.formgrid{display:grid;gap:.2rem .8rem;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));align-items:end}
.formgrid .full{grid-column:1/-1}
.filters{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.filters select,.filters input{width:auto}
.flash{background:#e6f8f8;border:1px solid var(--teal);color:#05585b;padding:.6rem .8rem;border-radius:10px;margin-bottom:.8rem}
.flag{padding:.6rem .8rem;border-radius:10px;margin:.5rem 0;background:#fff4e0;border:1px solid #f0c27a}
.flag.amber{color:#6b4500}
.pill{display:inline-block;font-size:.75rem;font-weight:600;padding:.15rem .55rem;border-radius:99px;background:#eef3f7;color:var(--navy)}
.pill.ok{background:#dff6ec;color:#007a4b}.pill.amber{background:#fff0d6;color:#8a5400}.pill.red{background:#fde3e3;color:#a32020}
.tag{display:inline-block;font-size:.7rem;font-weight:700;padding:.1rem .45rem;border-radius:6px;background:#e9f0f7;color:var(--blue2)}
.tag.mumbai{background:#e1f6f7;color:#087d82}.tag.vapi{background:#e7ecfa;color:var(--navy)}.tag.pune{background:#e6f7ef;color:#08754d}
.tag.leg{background:#e8f0fb;color:#1c5088}.tag.hand{background:#f6ecfb;color:#6b2f8a}.tag.both{background:#fff0d6;color:#8a5400}
.count{font-size:.78rem;background:var(--teal);color:#fff;border-radius:99px;padding:.05rem .5rem;vertical-align:middle}
.chip{display:inline-flex;flex-direction:column;align-items:flex-start;border:1px solid var(--line);background:#fff;border-radius:10px;padding:.35rem .6rem;margin:.2rem;text-decoration:none;color:var(--navy);font:inherit;font-size:.85rem;cursor:pointer}
.chip small{color:var(--muted)}.chip.red{border-color:var(--red);color:var(--red)}
.chips{display:flex;flex-wrap:wrap}
table{width:100%;border-collapse:collapse;font-size:.9rem}
th{text-align:left;font-size:.75rem;color:var(--muted);font-weight:600;border-bottom:2px solid var(--line);padding:.45rem}
td{border-bottom:1px solid var(--line);padding:.45rem;vertical-align:top}
tr.flagged td,tr.serving td{background:#fff7e8}tr.serving td{background:#e6f8f8}
.scroll{overflow-x:auto}
.progress{height:8px;background:#e7eef3;border-radius:99px;overflow:hidden;margin:.35rem 0}
.progress i{display:block;height:100%;background:linear-gradient(90deg,var(--teal),var(--green))}
.bar{display:grid;grid-template-columns:70px 1fr 70px;gap:.5rem;align-items:center;margin:.4rem 0}
.bar div{background:#e7eef3;border-radius:6px;height:14px;overflow:hidden}.bar i{display:block;height:100%;background:var(--teal)}
.alerts{list-style:none;padding:0;margin:0 0 1rem}.alerts li{padding:.5rem .7rem;border-radius:9px;margin:.3rem 0;background:#eef6fb;font-size:.9rem}
.alerts li.danger{background:#fde8e8}.alerts li.warning{background:#fff4e0}.alerts li b{margin-right:.35rem}
.kanban{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(185px,1fr);gap:.7rem;overflow-x:auto;padding-bottom:.5rem}
.col{background:#e9f0f4;border-radius:var(--r);padding:.6rem;min-height:200px}
.col h3{display:flex;justify-content:space-between;margin:0 0 .5rem}
.lead{display:block;background:#fff;border-radius:10px;padding:.55rem .65rem;margin-bottom:.5rem;text-decoration:none;color:inherit;border:1px solid var(--line);font-size:.86rem}
.lead:hover{border-color:var(--teal)}
.docs{display:grid;gap:.7rem;grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}
.doc{background:#f7fafc;border:1px solid var(--line);border-radius:var(--r);padding:.6rem}
.visit{background:#fff;border-left:4px solid #b9c7d3;border-radius:8px;padding:.45rem .55rem;margin:.4rem 0;font-size:.85rem}
.visit.done,.visitcard.done{border-left-color:var(--ok)}.visit.in-progress,.visitcard.in-progress{border-left-color:var(--amber)}
.visitcard{border-left:5px solid var(--teal)}
.time{font-weight:700;color:var(--navy)}.time.big{font-size:1.3rem}
.week{display:grid;grid-template-columns:repeat(7,minmax(90px,1fr));gap:.4rem;overflow-x:auto}
.wd{display:flex;flex-direction:column;background:#f4f8fb;border:1px solid var(--line);border-radius:9px;padding:.4rem;text-decoration:none;color:var(--ink);font-size:.8rem}
.wd.red{border-color:var(--red);background:#fdecec}.wd.sel{outline:2px solid var(--teal)}.wd small{color:var(--muted)}
.task{display:grid;grid-template-columns:58px 1fr auto;gap:.6rem;align-items:center;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:.7rem;margin-bottom:.5rem}
.task.done{opacity:.6}
.next{background:linear-gradient(135deg,var(--teal),var(--logo));color:#fff;border:0}
.next h2{color:#fff;font-size:1.5rem;margin:.2rem 0}.next .small{color:#e8fbfc}
.unitcard h2{font-size:1.25rem}
.otp{text-align:center;border:2px dashed var(--teal)}
.digits{display:flex;justify-content:center;gap:.5rem;margin:.6rem 0}
.digits b{width:58px;height:70px;display:grid;place-items:center;font-size:2.4rem;background:#e9f8f8;color:var(--navy);border-radius:12px;font-variant-numeric:tabular-nums}
.otpform input{font-size:1.4rem;letter-spacing:.4em;text-align:center}
.tokrow{display:grid;grid-template-columns:1fr 1fr;text-align:center}
.tok{display:block;font-size:3rem;color:var(--navy);line-height:1.1}.tok.serving{color:var(--teal)}
.token{display:inline-grid;place-items:center;min-width:30px;height:30px;border-radius:8px;background:var(--navy);color:#fff;font-weight:700}
.hello{font-size:1.1rem;font-weight:600;color:var(--navy);margin:.2rem 0 .7rem}
.slots{display:flex;flex-wrap:wrap;gap:.4rem}.slot input{position:absolute;opacity:0}
.slot span{display:inline-block;padding:.5rem .8rem;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--navy);font-weight:600}
.slot input:checked+span{background:var(--teal);color:#fff;border-color:var(--teal)}
.exercise summary{display:flex;justify-content:space-between;cursor:pointer;list-style:none}
.video{background:#eaf3f8;border-radius:10px;padding:1.4rem;text-align:center;color:var(--blue);font-weight:600}
.dos{border-top:4px solid var(--ok)}.donts{border-top:4px solid var(--red)}.dos ul,.donts ul{padding-left:1.1rem;margin:0}.dos li,.donts li{margin:.35rem 0}
.chart{width:100%;height:auto}.chart .grid{stroke:#e3e9ef}.chart text{font-size:9px;fill:#8796a4}
.chart polyline{fill:none;stroke-width:2.5}.chart .before{stroke:#f0a35e}.chart polyline.after{stroke:var(--teal)}.chart circle.after{fill:var(--teal)}
.key{display:inline-block;width:12px;height:4px;vertical-align:middle;margin:0 .2rem 0 .5rem}.key.before{background:#f0a35e}.key.after{background:var(--teal)}
.note.unread{border-left:4px solid var(--teal)}
fieldset{border:0;padding:0;margin:.4rem 0}legend{font-weight:600;color:var(--navy)}
.stars{display:inline-flex;flex-direction:row-reverse;gap:.15rem}.stars input{position:absolute;opacity:0}
.stars label{font-size:2.1rem;color:#cfd9e2;cursor:pointer;margin:0}
.stars input:checked~label,.stars label:hover,.stars label:hover~label{color:#f5b301}
.plist{display:grid;gap:.7rem;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
.pcard{display:block;text-decoration:none;color:inherit;margin:0}
.login{max-width:460px;margin:1rem auto}.hero{text-align:center}.hero form{text-align:left}
.hero-logo{height:70px;max-width:100%}.hero h1{font-size:2rem;margin:.3rem 0 0;letter-spacing:.05em}
.demo{display:grid;grid-template-columns:1fr 1fr;gap:.3rem}.demo .chip{margin:0}
.tabbar{position:fixed;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(5,1fr);background:#fff;border-top:1px solid var(--line);padding:.3rem 0 calc(.3rem + env(safe-area-inset-bottom));z-index:30}
.tabbar a{display:flex;flex-direction:column;align-items:center;text-decoration:none;color:var(--muted);font-size:.72rem;position:relative}
.tabbar a i{font-style:normal;font-size:1.25rem}.tabbar a.on{color:var(--teal);font-weight:700}
.dot{position:absolute;top:-2px;right:22%;background:var(--red);color:#fff;font-size:.65rem;border-radius:99px;padding:0 .35rem}
.req{padding:.5rem 0;border-bottom:1px solid var(--line)}
.low{color:var(--red)}
details.ex{margin-top:.6rem;border-top:1px solid var(--line);padding-top:.5rem}details.ex summary{cursor:pointer;color:var(--blue);font-weight:600}
@media(max-width:560px){.who{display:none}.wrap{padding:.75rem}.brand small{display:none}.kanban{grid-auto-columns:82%}}
/* clinical case file */
.handover{border:2px solid var(--amber);background:#fffaf0}.handover h2{color:#8a5400}
.handover .big{font-size:1rem;color:var(--ink);margin:.6rem 0}
.sumgrid{display:grid;gap:.6rem;grid-template-columns:1fr}@media(min-width:700px){.sumgrid{grid-template-columns:1fr 1fr}}
.lbl{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:600}
.redflags{background:#fdecec;border:1px solid #f2b8b8;border-radius:10px;padding:.5rem .7rem;margin:.6rem 0;color:#7c1d1d}.redflags p{margin:.2rem 0;font-size:.88rem}
.sess{display:flex;flex-direction:column;gap:.1rem;padding:.5rem .6rem;border:1px solid var(--line);border-radius:10px;margin:.35rem 0;text-decoration:none;color:var(--ink)}
.sess:hover{border-color:var(--teal)}
.tabs{margin-bottom:.8rem}
dl.rec{display:grid;grid-template-columns:minmax(120px,32%) 1fr;gap:.3rem .8rem;margin:0}dl.rec dt{color:var(--muted);font-size:.83rem}dl.rec dd{margin:0;white-space:pre-line}
@media(max-width:560px){dl.rec{grid-template-columns:1fr}dl.rec dd{margin-bottom:.4rem}}
table.mini{font-size:.84rem}table.mini td,table.mini th{padding:.3rem .35rem}
table.edit input,table.edit select{min-height:34px;padding:.3rem .4rem;margin:0}
.card.old{opacity:.75;background:#fafbfc}
.sign{margin:1rem 0;padding:.6rem .8rem;background:#eef8f8;border-radius:10px;color:var(--ink)}
.multi{display:flex;flex-wrap:wrap;gap:.1rem 1rem}.multi legend{width:100%}.multi label{margin:.2rem 0}
.orow{display:grid;gap:.3rem;grid-template-columns:2fr 1.4fr .8fr .8fr 1.6fr;margin:.3rem 0;padding-bottom:.3rem;border-bottom:1px dashed var(--line)}
.orow input,.orow select,.grow input,.grow select{margin:0;min-height:38px}
@media(max-width:700px){.orow{grid-template-columns:1fr 1fr}.orow .om{grid-column:1/-1}.orow .on{grid-column:1/-1}}
.grow{display:grid;grid-template-columns:3fr .8fr 1.2fr;gap:.3rem;margin:.3rem 0}
.goals{list-style:none;padding:0;margin:0}.goals li{display:flex;gap:.5rem;align-items:center;justify-content:space-between;padding:.35rem 0;border-bottom:1px solid var(--line)}
.goals li span:first-child{flex:1}
tr.better .chg b,b.better{color:var(--ok)}tr.worse .chg b,b.worse{color:var(--red)}b.same{color:var(--muted)}
.chart.mini{max-width:260px}
.steps{display:flex;gap:.3rem;margin:.2rem 0 .8rem;font-size:.82rem}.steps span{flex:1;padding:.4rem .6rem;border-radius:8px;background:#eef3f7;color:var(--muted)}
.steps .on{background:var(--teal);color:#fff;font-weight:700}.steps .done{background:#dff6ec;color:#007a4b}
.ev{padding:.4rem 0;border-bottom:1px solid var(--line);font-size:.9rem}.ev.care{background:#fff7e8}.ev.video{background:#f2f8ff}
.scrolly{max-height:420px;overflow-y:auto}
/* videos */
.consent{padding:.5rem .7rem;border-radius:10px;margin:.3rem 0 .7rem;font-size:.86rem}.consent.ok{background:#e8f8f0;color:#006a43}.consent.no{background:#fdecec;color:#8a1d1d}
.consent form{margin-top:.4rem}
.vgrid{display:grid;gap:.5rem;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}
.vthumb{display:block;border:1px solid var(--line);border-radius:10px;overflow:hidden;text-decoration:none;color:var(--ink);background:#fff}
.vthumb img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;background:#111}.noth{display:grid;place-items:center;aspect-ratio:16/9;background:#1b2a44;color:#fff;font-size:1.6rem}
.vt{display:block;padding:.3rem .45rem;font-size:.8rem}
.pick{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.btn.big{text-align:center;padding:1rem .5rem;font-size:1rem;margin:0;color:var(--navy)}.btn.big.primary{color:#fff}
.picked{color:var(--navy);font-weight:600}
.uprow{margin:.4rem 0}.uprow .progress{height:12px}
.stamp{background:#f2f8ff;border-left:4px solid var(--logo)}
.vlist{display:grid;gap:.8rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}
.vitem video,.cmp video{width:100%;border-radius:10px;background:#000;aspect-ratio:16/9}
.cmp{display:grid;gap:.8rem;grid-template-columns:1fr 1fr}@media(max-width:700px){.cmp{grid-template-columns:1fr}}
.chip.on{border-color:var(--teal);background:#e6f8f8}
.plain{list-style:none;padding:0;margin:0}.plain li{padding:.55rem .1rem;border-bottom:1px solid var(--line);font-size:1rem}
.plain li.better::before{content:"▲ ";color:var(--ok)}.plain li.worse::before{content:"▼ ";color:var(--red)}.plain li.same::before{content:"＝ ";color:var(--muted)}
.pick input[type=file]{display:none!important}
/* end-of-program progress report */
.rtitle{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem}.rtitle h1{margin:0}
.rgrid{display:grid;gap:.6rem;grid-template-columns:1fr;margin-top:.6rem}@media(min-width:700px){.rgrid{grid-template-columns:1fr 1fr 1fr 1fr}.rgrid .wide{grid-column:1/-1}}
.rgrid .lbl,.lbl{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}
.rkpi{margin:.7rem 0 0;padding:.5rem .7rem;background:#eef9f9;border-radius:10px}
.vpair h3{margin:.6rem 0 .3rem}.vmissing{display:flex;align-items:center;justify-content:center;aspect-ratio:16/9;border:2px dashed #f0c27a;border-radius:10px;background:#fff8ec;color:#8a5400;text-align:center;padding:.5rem}
img.vprint{width:100%;border-radius:8px;display:block}
.signed{border-top:1px solid #dfe6ee;padding-top:.5rem}.pre{white-space:pre-line}.note{background:#eef9f9}
.rerec li{margin:.2rem 0}.rerec .ok{color:var(--ok)}
.print-view{background:#e9eef3}.print-view .sheet{max-width:820px;margin:1rem auto;background:#fff;padding:1.2rem 1.4rem;box-shadow:0 2px 12px #0002}
.print-view .card{box-shadow:none;border:1px solid #dfe6ee;margin:.6rem 0}.printbar{max-width:820px;margin:1rem auto 0;display:flex;gap:.5rem;align-items:center}
.lh{display:flex;align-items:center;gap:.8rem;border-bottom:3px solid #0fb4ba;padding-bottom:.6rem;margin-bottom:.4rem}.lh img{height:42px}.lh .sample{margin-left:auto}
.print-view .cmp{grid-template-columns:1fr 1fr}.foot{margin-top:1rem;border-top:1px solid #dfe6ee;padding-top:.4rem}
@media print{
  @page{size:A4;margin:12mm}
  body,.print-view{background:#fff!important}
  .top,.nav,.tabbar,.noprint,.printbar,.flash{display:none!important}
  .wrap,.print-view .sheet{max-width:none;margin:0;padding:0;box-shadow:none}
  .card{box-shadow:none!important;border:1px solid #ccc;break-inside:avoid;page-break-inside:avoid}
  .cmp{grid-template-columns:1fr 1fr!important}video{display:none}
  a{color:inherit;text-decoration:none}
  .scroll{overflow:visible}
}
.printonly{display:none}@media print{.printonly{display:block!important}}
.linkcard{display:block;text-decoration:none;color:inherit;border-left:4px solid #0fb4ba}
.vpair .cmp{max-width:820px}@media print{.vpair .cmp{max-width:none}}
.draft-banner{background:#fff4d6;border:2px dashed #e0a400;color:#6b4a00}
.legal h2{font-size:1.05rem;margin-top:1rem}.legal li{margin:.25rem 0}
.consent-row{display:flex;gap:.5rem;align-items:flex-start;margin:.7rem 0;border:1px solid #dfe6ee;border-radius:10px;padding:.6rem}
fieldset.consent-row{display:block}.card.danger{border:1px solid #f3b4b4}.btn.danger{background:#c62828;color:#fff}
.flag.green{background:#dff6ec;border-color:#7fd1ad;color:#00573a}

/* ops: add patient -> choose doctor -> book visits */
.steps{display:flex;gap:.4rem;flex-wrap:wrap;margin:.2rem 0 .8rem}.steps span{padding:.3rem .7rem;border-radius:99px;background:#eef3f7;color:#5b6b7c;font-size:.85rem}
.steps span.on{background:var(--teal);color:#fff;font-weight:600}
.doc.suggested{border:2px solid var(--teal);background:#effbfb}.doc.absent{opacity:.6}
.doc form{margin-top:.5rem}.formgrid .wide{grid-column:1/-1}
/* ops planner extras: runner timeline */
.lane{border:1px solid var(--line);border-radius:var(--r);padding:.6rem .7rem;margin:.6rem 0;background:#fff}
.tl{position:relative;height:38px;background:#f3f7fa;border-radius:8px;margin:.4rem 0 .2rem;overflow:hidden}
.tl .hr{position:absolute;top:0;bottom:0;border-left:1px dashed #d5dfe7;font-size:.6rem;color:#8a9bab;padding-left:2px}
.tl .blk{position:absolute;top:12px;height:24px;border-radius:5px;background:var(--teal);color:#fff;font-size:.62rem;overflow:hidden;white-space:nowrap;padding:3px 3px;box-sizing:border-box}
.tl .blk.ms{background:#7b4fb8}.tl .blk.lep{background:#2f8f3a}.tl .blk.diet{background:#d58a00}.tl .blk.other{background:#5d7184}.tl .blk.done{opacity:.45}.tl .blk.bad{outline:2px solid #c62828;z-index:2}
.tag.ms{background:#f0e8fb;color:#5b2f99}.tag.lep{background:#e3f5e5;color:#1f6b28}.tag.diet{background:#fff0d6;color:#8a5400}.tag.robotics{background:#e1f6f7;color:#087d82}
.cand{display:flex;justify-content:space-between;align-items:center;gap:.6rem;border:1px solid var(--line);border-radius:10px;padding:.5rem .7rem;margin:.35rem 0;background:#fff}
.cand.sug{border-color:var(--teal);background:#effafa}.cand.bad{background:#fff7f7}
/* scope 3: billing, consent, accounts */
.flash.red{background:#fdecec;border-color:#d23b3b;color:#8e1c1c;font-weight:600}
.doc-head{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;margin:.6rem 0}.doc-head h1{margin:0;font-size:1.5rem;letter-spacing:.04em}
.doc-head .meta{text-align:right}.doc-head .meta div{margin:.1rem 0}
.lh.mdr .logotype{font-weight:800;font-size:1.35rem;color:#243a76;letter-spacing:.02em;border:3px solid #0fb4ba;border-radius:10px;padding:.15rem .55rem}
.lh.mdr .logotype i{font-style:normal;color:#0fb4ba}
.lh .biz{line-height:1.3}
table.inv{width:100%;border-collapse:collapse;margin:.6rem 0}table.inv th{background:#243a76;color:#fff;text-align:left;padding:.4rem .5rem;font-size:.85rem}
table.inv td{border-bottom:1px solid #e3e9ef;padding:.4rem .5rem}table.inv .n{text-align:right;white-space:nowrap}
table.inv tr.tot td{border-top:2px solid #243a76;font-weight:800;color:#243a76;font-size:1.05rem}table.inv tr.sub td{border:0;padding:.2rem .5rem}
.stamp-x{position:relative}.stamp-x::after{content:attr(data-stamp);position:absolute;top:35%;left:12%;transform:rotate(-18deg);font-size:3.6rem;font-weight:900;color:#d23b3b55;border:6px solid #d23b3b55;padding:.2rem 1rem;border-radius:12px;pointer-events:none}
.paid-stamp{display:inline-block;border:3px solid #00b56f;color:#00b56f;font-weight:900;padding:.1rem .6rem;border-radius:8px;transform:rotate(-6deg)}
.words{font-style:italic;color:#243a76}
tr.void td{text-decoration:line-through;color:#8a9bab}tr.void td.keep{text-decoration:none}
.sigpad{border:2px dashed #0fb4ba;border-radius:12px;background:#fff;touch-action:none;width:100%;height:200px;display:block}
.sigwrap{position:relative}.sigwrap .hint{position:absolute;left:.8rem;bottom:.5rem;color:#9fb0bf;font-size:.85rem;pointer-events:none}
.consent-text{white-space:pre-line;max-height:46vh;overflow:auto;border:1px solid #e3e9ef;border-radius:10px;padding:.7rem .8rem;background:#fbfdfe;line-height:1.5}
.print-view .consent-text{max-height:none;overflow:visible}
img.sig{max-width:320px;height:auto;border-bottom:1px solid #243a76;display:block}
.cstat{display:flex;justify-content:space-between;align-items:center;gap:.5rem;border:1px solid var(--line);border-radius:10px;padding:.55rem .7rem;margin:.35rem 0;background:#fff}
.cstat.miss{border-color:#f3b4b4;background:#fff7f7}.cstat.ok{border-color:#9fdcc5;background:#f4fcf8}
.badge-red{display:inline-block;background:#d23b3b;color:#fff;font-size:.72rem;font-weight:700;border-radius:99px;padding:.1rem .5rem;vertical-align:middle}
.hbar{display:flex;align-items:flex-end;gap:.5rem;height:140px;border-bottom:1px solid #d5dfe7;padding:0 .2rem}
.hbar .m{flex:1;display:flex;gap:2px;align-items:flex-end;height:100%;position:relative}.hbar .m i{flex:1;border-radius:4px 4px 0 0;display:block}
.hbar .m i.inc{background:var(--teal)}.hbar .m i.exp{background:#f0a35e}.hbar.lab{display:flex;gap:.5rem;padding:0 .2rem}.hbar.lab span{flex:1;text-align:center;font-size:.72rem;color:var(--muted)}
.key.inc{background:var(--teal)}.key.exp{background:#f0a35e}
td.n,th.n{text-align:right;white-space:nowrap}.neg{color:var(--red)}
.scroll{overflow-x:auto}
.subnav{display:flex;gap:.3rem;flex-wrap:wrap;margin:.2rem 0 .8rem}.subnav a{padding:.35rem .75rem;border-radius:99px;background:#eef3f7;color:var(--navy);text-decoration:none;font-size:.88rem;font-weight:600}.subnav a.on{background:var(--teal);color:#fff}
@media print{.stamp-x::after{color:#d23b3b88;border-color:#d23b3b88}.sigpad{display:none}}
/* cancelled visits + cancel form */
.visit.cancelled,tr.cancelled td,.line.cancelled{opacity:.55;background:#f1f1f1}.visit.cancelled{border-left-color:#999}
.visit.cancelled .time,.line.cancelled .t,tr.cancelled td:first-child{text-decoration:line-through}
.cancelnote{color:#a33;font-size:.78rem}
details.cancelbox{display:inline-block;position:relative}details.cancelbox>summary{list-style:none;cursor:pointer;display:inline-block}
details.cancelbox>summary::-webkit-details-marker{display:none}
.cancelform{display:flex;flex-direction:column;gap:.35rem;background:#fff;border:1px solid var(--line);border-radius:10px;padding:.55rem;margin-top:.3rem;min-width:210px;max-width:260px;box-shadow:0 4px 14px #0002;position:relative;z-index:5}
.cancelform select,.cancelform input[type=text],.cancelform input:not([type]){width:100%}
/* attendance upgrade */
.attcard .attbtn{margin-top:.4rem;font-size:1.1rem;min-height:52px}.attcard .attbtn.out{background:#fff;border:2px solid var(--navy);color:var(--navy)}
.attcard .attbig{font-size:1.02rem;margin:.5rem 0}.attmsg{display:block;margin-top:.3rem}
.attgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.6rem;align-items:end}.attgrid .wide{grid-column:1/-1}
table.att{width:100%;border-collapse:collapse;font-size:.9rem}table.att th{text-align:left;font-size:.75rem;color:var(--muted);padding:.35rem .4rem;border-bottom:1px solid var(--line)}
table.att td{padding:.4rem;border-bottom:1px solid #e9eef3;vertical-align:top}table.att th.n,table.att td.n{text-align:right}table.att tr.tot td{border-top:2px solid #243a76;font-weight:800}
.attfilter{gap:.4rem;flex-wrap:wrap;align-items:center;margin-bottom:.7rem}.attfilter .grow{flex:1}
.leaveitem{padding:.6rem 0;border-bottom:1px solid #e9eef3}.leaveitem.pending{background:#fffaf0;margin:0 -.4rem;padding:.6rem .4rem;border-radius:8px}
.leaveact{display:flex;gap:.4rem;flex-wrap:wrap;margin-top:.4rem}.leaveact input{flex:1;min-width:160px}
/* salary */
.salbar{margin-bottom:.6rem}
table.att th.sal,table.att td.sal{background:#f6fbfb}
table.att tr.sub td{background:#eaf5f5;border-top:1px solid var(--line)}
table.att tr.future td{color:#8a97a3;background:#fafcfd}table.att tr.today td{background:#fff9e6}
.warnbox{background:#fff0d6;color:#6b4200;border:1px solid #f0d9a8;border-radius:8px;padding:.45rem .7rem;font-size:.85rem}
.slipt{width:100%;border-collapse:collapse;margin:.6rem 0}.slipt td{padding:.45rem .2rem;border-bottom:1px solid var(--line)}
.slipt tr.sec td{font-weight:700;color:var(--navy);border-bottom:2px solid var(--line);padding-top:.8rem}
.slipt tr.final td{font-size:1.2rem;color:var(--navy);border-top:2px solid var(--navy)}.slipt .neg{color:#a32020}
.slipbanner{border-left:5px solid var(--amber)}
.wellcard{border-left:5px solid #e7b400;background:#fffbea}.tacard{border-left:5px solid var(--teal,#0e8a8a)}
.taitem.pend{border-left:5px solid var(--amber,#e7a100)}.attgrid .wide{grid-column:1/-1}

/* ---- telecaller management (tc-) ---- */
.tc-cols{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:1rem;align-items:start}
@media(max-width:860px){.tc-cols{grid-template-columns:1fr}}
.tc-q{border:1px solid var(--line);border-left:5px solid var(--teal);border-radius:12px;padding:.6rem .75rem;margin:.5rem 0;background:#fff}
.tc-q.hot{border-left-color:var(--amber)}.tc-q.late{border-left-color:var(--red);background:#fff7f7}
.tc-timer{font-weight:800;font-size:1.25rem;font-variant-numeric:tabular-nums;color:var(--navy)}.tc-timer.hot{color:#b36b00}.tc-timer.late{color:var(--red)}
.tc-av{display:grid;grid-template-columns:1fr auto auto;gap:.3rem .8rem;align-items:center;padding:.35rem 0;border-bottom:1px solid var(--line)}.tc-av:last-child{border-bottom:0}
.tc-dot{display:inline-block;width:.6rem;height:.6rem;border-radius:50%;background:#bbb;margin-right:.35rem}.tc-dot.ok{background:var(--ok)}.tc-dot.no{background:var(--red)}
.tc-thread{display:flex;flex-direction:column;gap:.35rem;max-height:420px;overflow:auto;padding:.5rem;background:#efeae2;border-radius:12px}
.tc-m{max-width:82%;padding:.4rem .6rem;border-radius:10px;font-size:.9rem;background:#fff;align-self:flex-start;box-shadow:0 1px 1px rgba(0,0,0,.08)}
.tc-m.out{align-self:flex-end;background:#d9fdd3}.tc-m small{display:block;color:var(--muted);font-size:.7rem;margin-top:.1rem}
.tc-th{display:block;padding:.5rem .6rem;border-bottom:1px solid var(--line);text-decoration:none;color:inherit}.tc-th.on{background:#e6f8f8}.tc-th b{color:var(--navy)}
.tc-th .snip{color:var(--muted);font-size:.82rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}
.tc-unread{background:var(--ok);color:#fff;border-radius:99px;font-size:.7rem;padding:0 .4rem;font-weight:700}
.tc-tbl{width:100%;border-collapse:collapse;font-size:.88rem}.tc-tbl th,.tc-tbl td{padding:.4rem .5rem;border-bottom:1px solid var(--line);text-align:right;white-space:nowrap}
.tc-tbl th:first-child,.tc-tbl td:first-child{text-align:left;white-space:normal}.tc-tbl th{font-size:.75rem;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.02em}
.tc-tbl tr.tot td{font-weight:800;border-top:2px solid var(--navy)}.tc-scroll{overflow-x:auto}
.tc-bar{display:flex;align-items:center;gap:.5rem;margin:.3rem 0}.tc-bar span{width:9rem;font-size:.82rem}.tc-bar div{flex:1;background:#e7eef3;border-radius:6px;height:16px;overflow:hidden}.tc-bar i{display:block;height:100%;background:var(--teal)}.tc-bar b{width:7rem;font-size:.82rem;text-align:right}
.tc-bar i.b2{background:#f0a35e}.tc-bar i.b3{background:var(--navy)}.tc-bar i.b4{background:var(--green)}
.tc-fun{display:flex;flex-direction:column;gap:.35rem;margin:.5rem 0}.tc-fun div{display:flex;align-items:center;gap:.6rem}.tc-fun i{display:block;height:28px;border-radius:6px;background:linear-gradient(90deg,var(--teal),var(--green));min-width:3px}.tc-fun span{font-size:.85rem;white-space:nowrap}
.tc-lead{display:block;border:1px solid var(--line);border-radius:12px;padding:.55rem .75rem;margin:.45rem 0;background:#fff;text-decoration:none;color:inherit}
.tc-lead:hover{border-color:var(--teal)}.tc-lead.over{border-left:5px solid var(--red)}.tc-lead.new{border-left:5px solid var(--teal)}
.tc-call{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap}.tc-watch{font-size:1.7rem;font-weight:800;font-variant-numeric:tabular-nums;color:var(--navy);min-width:5.5rem}
.tc-q4{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:.6rem}
.tc-plat{display:inline-block;font-size:.7rem;font-weight:700;padding:.1rem .45rem;border-radius:6px;background:#eef3f7;color:var(--navy)}
.tc-plat.meta{background:#e3ecfd;color:#1b4fb3}.tc-plat.insta{background:#fbe6f1;color:#a3256a}.tc-plat.goog{background:#fdeede;color:#a05400}.tc-plat.ref{background:#e3f5e5;color:#1f6b28}.tc-plat.wa{background:#dff6ec;color:#007a4b}
.tc-banner{display:block;margin:.4rem 0 .8rem;padding:.6rem .9rem;border-radius:10px;background:#fff4e0;border:1px solid #f0c27a;color:#6b4500;text-decoration:none;font-weight:600}
.tc-svg{width:100%;height:90px}

/* ---- sales executive visits (sv-) + telecaller booking address ---- */
.badge-amber{display:inline-block;background:#e8a317;color:#fff;font-size:.72rem;font-weight:700;border-radius:99px;padding:.1rem .5rem;vertical-align:middle}
.sv-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:.7rem;align-items:start}
.sv-grid .card{margin:0}
.sv-live.live{border-left:5px solid #1aa66a}.sv-live.confirmed{border-left:5px solid #1aa66a}.sv-live.not_interested{border-left:5px solid #b9c2cc}.sv-live.followup,.sv-live.waiting{border-left:5px solid #e8a317}
.sv-chips{display:flex;flex-wrap:wrap;gap:.3rem;margin:.5rem 0}
.sv-chips .chip{font-size:.78rem;padding:.2rem .55rem;border-radius:99px;background:#eef1f5;color:#6a7683}
.sv-chips .chip.done{background:#dff3e7;color:#17724a}.sv-chips .chip.open{background:#1aa66a;color:#fff;font-weight:700}
.sv-outline{padding:.4rem .6rem;border-radius:8px;background:#eef1f5;margin:.3rem 0;font-size:.9rem}.sv-outline.confirmed{background:#dff3e7}.sv-outline.followup,.sv-outline.waiting{background:#fff1d6}
.sv-card{display:block;color:inherit;text-decoration:none}.sv-card.live{border-left:5px solid #1aa66a}
.sv-hero{background:linear-gradient(135deg,#f4fbf8,#eef4ff)}.sv-hero.live{border-left:5px solid #1aa66a}
.sv-now{font-size:1.25rem;font-weight:800;color:#243a76}
.sv-big{display:block;width:100%;min-height:4.2rem;margin:.5rem 0;border:0;border-radius:14px;background:#243a76;color:#fff;font-size:1.2rem;font-weight:800;padding:.8rem;cursor:pointer;box-shadow:0 3px 0 #16244d;touch-action:manipulation}
.sv-big.end{background:#b8460e;box-shadow:0 3px 0 #7d2f08}
.sv-big:active{transform:translateY(2px);box-shadow:none}
.sv-resultform{background:#f4f6fa;border-radius:12px;padding:.6rem;margin:.5rem 0}
.sv-choice{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin:.4rem 0}
.sv-opt{display:block;position:relative}.sv-opt input{position:absolute;opacity:0}
.sv-opt span{display:block;text-align:center;padding:.9rem .5rem;border:2px solid #d3dbe5;border-radius:12px;font-weight:700;background:#fff}
.sv-opt input:checked+span{border-color:#243a76;background:#e8eefc;color:#243a76}
.sv-out.confirmed{border-left:5px solid #1aa66a}.sv-out.waiting,.sv-out.followup{border-left:5px solid #e8a317}.sv-out.not_interested{border-left:5px solid #9aa5b1}
.sv-prog tr.run td{background:#eafaf1}
.sv-sum{background:#f4f6fa;border-radius:10px;padding:.6rem;margin:.6rem 0}
.sv-prices .n{text-align:right;white-space:nowrap}
.sv-q{align-items:center;gap:.5rem;flex-wrap:wrap;border-bottom:1px solid #eef1f5;padding:.5rem 0}
.sv-sold{margin:.4rem 0}
.sv-watext{background:#f4f6fa;border-radius:8px;padding:.5rem .7rem;margin:.3rem 0;white-space:pre-wrap}
.btn.wa{background:#1aa66a;color:#fff;border-color:#1aa66a}
/* Cardio Rescue invoice, same layout as the existing invoice */
.sv-inv-head{text-align:center;margin-bottom:.8rem}.sv-inv-head h1{margin:0;font-size:1.7rem;letter-spacing:.06em;color:#111}
.sv-inv-head div{font-size:.92rem;line-height:1.35}
.sv-inv-meta{display:flex;justify-content:space-between;margin:.6rem 0 .2rem;font-size:.95rem}
.sv-inv-name{margin:.2rem 0 .6rem;font-size:.95rem}
.sv-inv-tbl{width:100%;border-collapse:collapse;font-size:.95rem}
.sv-inv-tbl th,.sv-inv-tbl td{border:1px solid #222;padding:.4rem .55rem;text-align:left}
.sv-inv-tbl th{background:#f1f1f1;text-transform:uppercase;font-size:.85rem}
.sv-inv-tbl td.n{text-align:right;white-space:nowrap}.sv-inv-tbl td.c{text-align:center}
.sv-inv-tbl tr.sum td{border-top:1px solid #222}
.sv-inv-pay{margin:.5rem 0}
.sv-terms{margin-top:1rem;font-size:.82rem;line-height:1.35}.sv-terms ul{margin:.3rem 0 0 1.1rem;padding:0}.sv-terms li{margin:.15rem 0}
.sv-addr{background:#f4f8ff;border-left:4px solid #243a76}
.sv-addrhead{margin:.6rem 0 .2rem;font-weight:700;color:#243a76;font-size:.95rem}
@media print{.sv-inv-tbl th{background:#f1f1f1!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.sv-terms{page-break-inside:auto}}

/* ---- telecaller live status board (tl-) ---- */
.badge-live{background:#1aa66a;color:#fff;border-radius:99px;padding:0 .4rem;font-size:.72rem}
.tl-sum{display:flex;flex-wrap:wrap;gap:.4rem;margin:.4rem 0 .7rem;align-items:center}
.tl-chip{display:inline-flex;align-items:center;gap:.35rem;font-size:.82rem;padding:.22rem .65rem;border-radius:99px;background:#eef1f5;color:#44505c;white-space:nowrap}
.tl-chip i{width:.65rem;height:.65rem;border-radius:50%;background:#9aa5b1;display:inline-block}
.tl-chip.st-oncall i{background:#1aa66a}.tl-chip.st-free i{background:#1f7ae0}.tl-chip.st-break i{background:#e8a317}.tl-chip.st-wrap i{background:#7a4fd6}.tl-chip.st-pending i{background:#d33a2c}
.tl-chip.tl-tot{background:#f4f6fa}
.tl-un{border-left:5px solid #b9c2cc;margin:.3rem 0 .8rem}.tl-un.hot{border-left-color:#e8a317}
.tl-unrow{display:flex;justify-content:space-between;gap:.6rem;padding:.25rem 0;border-top:1px solid #eef1f5;flex-wrap:wrap}
.tl-cd{font-size:.86rem;color:#6a5412}.tl-cd.hot{color:#b8460e;font-weight:700}.tl-cd.late{color:#d33a2c;font-weight:700}
.tl-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:.8rem;align-items:start;margin-bottom:.8rem}
.tl-grid .card{margin:0}
.tl-card{border-left:6px solid #b9c2cc}
.tl-card.st-oncall{border-left-color:#1aa66a;background:#f3fbf7}.tl-card.st-free{border-left-color:#1f7ae0;background:#f2f7ff}.tl-card.st-break{border-left-color:#e8a317;background:#fffaf0}
.tl-card.st-wrap{border-left-color:#7a4fd6;background:#f7f3ff}.tl-card.st-pending{border-left-color:#d33a2c;background:#fff3f1}
.tl-card.st-notin,.tl-card.st-leave,.tl-card.st-off,.tl-card.st-out{background:#f5f6f8;color:#6a7683}
.tl-state{display:flex;align-items:center;gap:.5rem;margin:.45rem 0 .2rem;flex-wrap:wrap}
.tl-dot{width:.85rem;height:.85rem;border-radius:50%;background:#9aa5b1;display:inline-block;flex:none}
.st-oncall .tl-dot{background:#1aa66a;box-shadow:0 0 0 0 rgba(26,166,106,.6);animation:tlpulse 1.6s infinite}
.st-free .tl-dot{background:#1f7ae0}.st-break .tl-dot{background:#e8a317}.st-wrap .tl-dot{background:#7a4fd6}.st-pending .tl-dot{background:#d33a2c}
@keyframes tlpulse{70%{box-shadow:0 0 0 .5rem rgba(26,166,106,0)}100%{box-shadow:0 0 0 0 rgba(26,166,106,0)}}
.tl-lbl{font-size:1.15rem;font-weight:800}.st-oncall .tl-lbl{color:#13774c}.st-free .tl-lbl{color:#1858a8}.st-break .tl-lbl{color:#8a5f00}.st-wrap .tl-lbl{color:#5a34ad}.st-pending .tl-lbl{color:#b02a1e}
.tl-time{margin-left:auto;font-size:1.05rem}
.tl-sub{margin:.2rem 0 .5rem;font-size:.94rem}
.tl-nums{display:grid;grid-template-columns:repeat(4,1fr);gap:.35rem;margin:.5rem 0}
.tl-nums div{background:rgba(255,255,255,.7);border:1px solid #e5e9ef;border-radius:8px;padding:.3rem .35rem;text-align:center}
.tl-nums b{display:block;font-size:1.02rem}.tl-nums small{font-weight:400;font-size:.72rem}.tl-nums span{display:block;font-size:.7rem;color:#6a7683;line-height:1.1}
.tl-nums .warn{background:#fff1d6;border-color:#f0d9a4}.tl-nums .bad{background:#ffe3df;border-color:#f0b3ab}
.tl-strip{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;background:#f1f6ff;border:1px solid #cddcf5;border-radius:10px;padding:.45rem .7rem;margin:.5rem 0;color:#243a76;text-decoration:none}
.tl-strip .tl-go{margin-left:auto;font-weight:700}
.tl-me{border-left:6px solid #b9c2cc;margin-bottom:.8rem}.tl-me.st-oncall{border-left-color:#1aa66a}.tl-me.st-free{border-left-color:#1f7ae0}.tl-me.st-break{border-left-color:#e8a317;background:#fffaf0}.tl-me.st-wrap{border-left-color:#7a4fd6}.tl-me.st-pending{border-left-color:#d33a2c}
.tl-btns{display:flex;flex-wrap:wrap;gap:.6rem;margin:.5rem 0}.tl-btns form{display:flex;gap:.4rem;align-items:center}
.tl-big{min-height:2.8rem;padding:.5rem 1.1rem;font-size:1rem;font-weight:700}
@media(max-width:560px){.tl-nums{grid-template-columns:repeat(3,1fr)}.tl-grid{grid-template-columns:1fr}}
/* editable proposal amounts */
.sv-prices input.rt{width:6.5rem;text-align:right}.sv-prices .hint{color:#b45309;font-size:.78rem;min-height:1em}.sv-prices tr.edited td{background:#fffbeb}
.sv-prices .edited{color:#b45309}.sv-sess input{font-size:1.1rem;font-weight:600}#listline{color:#b45309}
.edited.small{color:#b45309;font-size:.78rem}

/* ===== Sales app (phone first) ===== */
.svx-hello h1{margin:.1rem 0 .1rem;font-size:1.5rem}.svx-hello{margin:.2rem 0 .8rem}
.svx-back{display:inline-flex;align-items:center;min-height:44px;font-weight:600;text-decoration:none}
.svx-alert{display:block;background:#fff0d6;color:#6b4300;border:1px solid #f0cf8f;border-radius:var(--r);padding:.8rem 1rem;margin:0 0 .8rem;text-decoration:none;font-weight:600;min-height:48px}
.svx-next{background:#fff;border:2px solid var(--teal);border-radius:16px;padding:1rem;margin:0 0 1rem;box-shadow:0 4px 14px rgba(15,180,186,.18)}
.svx-next.live{border-color:var(--ok);box-shadow:0 4px 14px rgba(0,181,111,.2)}
.svx-next-top{display:flex;align-items:center;justify-content:space-between;gap:.5rem}
.svx-tag{font-size:.75rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--teal-d)}.svx-next.live .svx-tag{color:#007a4b}
.svx-time{font-size:1.9rem;font-weight:800;color:var(--navy);line-height:1.1}
.svx-who{font-size:1.25rem;font-weight:700;margin:.3rem 0 .1rem}
.svx-addr,.svx-doc{color:var(--muted);margin:.1rem 0}
.svx-note{background:#fff8e6;border-radius:10px;padding:.55rem .7rem;margin:.6rem 0;font-size:.92rem}
.svx-two{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin:.7rem 0 0}
.svx-btn{display:flex;align-items:center;justify-content:center;gap:.45rem;min-height:52px;padding:.6rem .8rem;border-radius:12px;font:inherit;font-weight:700;text-decoration:none;border:2px solid var(--teal);background:#fff;color:var(--teal-d);cursor:pointer;text-align:center}
.svx-btn svg,.svx-tabs svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:none}
.svx-btn.teal{background:var(--teal);color:#fff}.svx-btn.navy{background:var(--navy);border-color:var(--navy);color:#fff}.svx-btn.line{border-color:var(--line);color:var(--navy)}
.svx-btn.full{width:100%;margin-top:.7rem}
.svx-empty{text-align:center;padding:1.6rem 1rem;color:var(--muted)}.svx-empty b{display:block;font-size:1.15rem;color:var(--navy);margin-bottom:.2rem}
.svx-h{font-size:1.05rem;margin:1.1rem 0 .5rem;color:var(--navy)}
.svx-row{display:flex;align-items:center;gap:.8rem;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:.7rem .9rem;margin:0 0 .5rem;text-decoration:none;color:var(--ink);min-height:60px}
.svx-row.done{opacity:.7}.svx-rt{font-weight:800;color:var(--navy);min-width:4.8rem}.svx-rm{flex:1;min-width:0}.svx-rm b,.svx-rm span{display:block;overflow:hidden;text-overflow:ellipsis}.svx-rm span{color:var(--muted);font-size:.85rem;white-space:nowrap}.svx-chev{color:var(--muted);font-size:1.4rem}
.svx-fu{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:.4rem .9rem;margin:0 0 1rem}
.svx-fline{display:flex;align-items:center;gap:.6rem;padding:.55rem 0;border-bottom:1px solid var(--line)}.svx-fline:last-child{border:0}.svx-fline>div{flex:1;min-width:0}
.svx-ic{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background:var(--teal);color:#fff;text-decoration:none;flex:none}.svx-ic svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.svx-ic.ghost{background:#eef3f7;color:var(--navy)}
.svx-kpis{display:grid;grid-template-columns:repeat(2,1fr);gap:.6rem;margin:0 0 1rem}.svx-kpis.k3{grid-template-columns:repeat(3,1fr)}
.svx-kpis>div{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:.7rem .8rem}.svx-kpis b{display:block;font-size:1.45rem;color:var(--navy);line-height:1.15}.svx-kpis span{font-size:.8rem;color:var(--muted)}
.svx-menu{background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;margin:0 0 1rem}
.svx-mrow{display:flex;align-items:center;justify-content:space-between;min-height:56px;padding:.6rem 1rem;border-bottom:1px solid var(--line);color:var(--navy);font-weight:600;text-decoration:none}.svx-mrow:last-child{border:0}
/* visit page */
.svx-vhead.live{border-color:var(--ok)}.svx-vhead h1{font-size:1.35rem}.svx-vline{color:var(--muted);margin:.15rem 0}.svx-site{margin-left:auto;font-size:.8rem;color:var(--muted);text-align:right}.svx-site b{display:block;color:var(--navy);font-size:.95rem}
.svx-banner{border-radius:var(--r);padding:.7rem .9rem;margin:0 0 .9rem;background:#eef3f7;color:var(--navy);border:1px solid var(--line)}
.svx-banner.ok{background:#dff6ec;color:#07603d;border-color:#b6e6d1}.svx-banner.warn{background:#fff0d6;color:#6b4300;border-color:#f0cf8f}.svx-banner.bad{background:#fde3e3;color:#8a1b1b;border-color:#f3b9b9}
.svx-steps{list-style:none;margin:0 0 1rem;padding:0 0 0 .3rem;position:relative}
.svx-steps li{display:flex;gap:.8rem;position:relative;padding:.35rem 0 .7rem}
.svx-steps li:not(:last-child)::before{content:"";position:absolute;left:15px;top:2.1rem;bottom:-.1rem;width:2px;background:var(--line)}
.svx-steps li.done:not(:last-child)::before{background:var(--ok)}
.svx-steps .sdot{width:32px;height:32px;border-radius:50%;border:2px solid var(--line);background:#fff;display:flex;align-items:center;justify-content:center;font-style:normal;font-weight:800;color:#fff;flex:none}
.svx-steps li.done .sdot{background:var(--ok);border-color:var(--ok)}
.svx-steps li.now .sdot{border-color:var(--teal);box-shadow:0 0 0 4px rgba(15,180,186,.2);background:var(--teal)}
.svx-steps .stx{flex:1;min-width:0;padding-top:.2rem}.svx-steps .stx b{display:block}.svx-steps .stx span{color:var(--muted);font-size:.88rem}
.svx-steps li.todo .stx b{color:#8a97a6;font-weight:600}
.svx-timer{margin-top:.2rem}.svx-timer .tick{font-size:1.6rem;font-weight:800;color:#007a4b}
.svx-act{margin:0 0 1rem}
.svx-go{display:block;width:100%;min-height:64px;border:0;border-radius:16px;background:var(--teal);color:#fff;font:inherit;font-size:1.2rem;font-weight:800;cursor:pointer;box-shadow:0 4px 12px rgba(15,180,186,.35);padding:.8rem}
.svx-go.end{background:#e0752b;box-shadow:0 4px 12px rgba(224,117,43,.35)}.svx-go.green{background:#12a05f}.svx-go.amberb{background:#d98a00}.svx-go.blueb{background:#1c6fc2}.svx-go.greyb{background:#6b7785}
.svx-go[disabled]{opacity:.6}
.svx-hint{color:var(--muted);font-size:.85rem;margin:.4rem 0 0;text-align:center}
.svx-undo{margin:.7rem 0 0}.svx-undobtn,.svx-alt,.svx-link{display:block;width:100%;min-height:48px;border-radius:12px;border:1.5px solid var(--line);background:#fff;color:var(--navy);font:inherit;font-weight:600;cursor:pointer;margin:.4rem 0 0}
.svx-link{border:0;background:transparent;color:var(--blue);text-decoration:underline}
.svx-skip{margin:.7rem 0 0}.svx-skip summary{min-height:48px;display:flex;align-items:center;cursor:pointer;color:var(--blue);font-weight:600}
.svx-resform h2{margin-top:0}
.svx-f{display:block;margin:.6rem 0;font-weight:600;font-size:.92rem;color:var(--navy)}.svx-f.sm{margin:.2rem 0}
.svx-f input{display:block;width:100%;min-height:50px;margin-top:.25rem;padding:.55rem .75rem;font:inherit;font-weight:400;color:var(--ink);border:1.5px solid #cdd7e1;border-radius:12px;background:#fff}
.svx-lab{font-weight:600;font-size:.92rem;color:var(--navy);margin:.6rem 0 .3rem}
.svx-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin:.3rem 0}
.chip{position:relative;display:inline-flex;cursor:pointer}.chip input{position:absolute;opacity:0;pointer-events:none}
.chip span,button.chip{display:inline-flex;align-items:center;min-height:48px;padding:.5rem 1rem;border-radius:99px;border:1.5px solid #cdd7e1;background:#fff;color:var(--navy);font:inherit;font-weight:600}
.chip input:checked+span{background:var(--teal);border-color:var(--teal);color:#fff}
.chip input:focus-visible+span{outline:3px solid rgba(15,180,186,.4)}
a.chip{text-decoration:none}a.chip.on,a.chip.on span{background:var(--navy);border-color:var(--navy);color:#fff}
.svx-chips.tabs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin:0 0 .8rem}.svx-chips.tabs .chip{flex:none}
.svx-out4{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}
.svx-out4 button{min-height:84px;border:0;border-radius:16px;color:#fff;font:inherit;font-size:1.1rem;font-weight:800;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.15rem;padding:.6rem;outline-offset:2px}
.svx-out4 small{font-weight:500;font-size:.78rem;opacity:.92}
.o-green{background:#12a05f}.o-amber{background:#d98a00}.o-blue{background:#1c6fc2}.o-grey{background:#6b7785}
.svx-out4 button.sel{outline:4px solid rgba(36,58,118,.35)}
.svx-ocf{margin-top:1rem;padding-top:.4rem;border-top:1px solid var(--line)}.svx-ocf[hidden],.svx-f[hidden]{display:none}
.svx-sum{border-left:6px solid var(--teal)}.svx-sum.confirmed{border-left-color:#12a05f}.svx-sum.waiting{border-left-color:#d98a00}.svx-sum.followup{border-left-color:#1c6fc2}.svx-sum.not_interested{border-left-color:#6b7785}.svx-sum h2{margin:0 0 .3rem}.svx-sum p{margin:.2rem 0}
.svx-log summary{min-height:44px;display:flex;align-items:center;cursor:pointer;font-weight:600;color:var(--navy)}
/* follow-ups & proposals cards */
.svx-fcard,.svx-pcard{display:block;text-decoration:none;color:var(--ink)}.svx-fcard.over{border-left:5px solid var(--red)}.svx-fcard .row,.svx-pcard .row{display:flex;justify-content:space-between;align-items:center;gap:.5rem}
.svx-price{font-size:1.3rem;font-weight:800;color:var(--navy);margin-top:.3rem}
/* proposal page */
.svx-pf{padding-bottom:12rem}.svx-pf h2{margin-top:0}
.svx-item{border:1.5px solid var(--line);border-radius:14px;padding:.6rem .8rem;margin:.5rem 0;background:#fafcfd}
.svx-item.on{border-color:var(--teal);background:#f1fbfb}
.svx-item .ihead{display:flex;align-items:center;justify-content:space-between;gap:.6rem;min-height:48px}
.svx-item .tog{display:flex;align-items:center;gap:.7rem;flex:1;cursor:pointer;min-height:48px}
.svx-item .tog input{width:26px;height:26px;accent-color:var(--teal);flex:none}.svx-item .tg{font-weight:700}
.svx-item .amt{font-weight:800;color:var(--navy);white-space:nowrap}
.svx-item .ibody{display:flex;align-items:flex-end;gap:.6rem;flex-wrap:wrap;margin-top:.2rem}.svx-item .ibody .svx-f{flex:1;min-width:110px}
.svx-item:not(.on) .ibody{display:none}.svx-item .qty{align-self:center;font-weight:700;color:var(--navy)}
.svx-item.edited{border-color:#e6b24f}.svx-item .hint,.hint{color:#9a6a00}
.chip.free span{min-height:50px}
.svx-tot{display:flex;justify-content:space-between;align-items:center;font-size:1.05rem}.svx-tot b{font-size:1.4rem;color:var(--navy)}
.svx-more summary{min-height:48px;display:flex;align-items:center;cursor:pointer;font-weight:600;color:var(--navy)}.svx-inst{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-bottom:.5rem}.svx-inst .svx-f:last-child{grid-column:1/-1}
.svx-sticky{position:fixed;left:0;right:0;bottom:0;z-index:40;background:#fff;border-top:2px solid var(--teal);padding:.55rem .8rem calc(.55rem + env(safe-area-inset-bottom));box-shadow:0 -6px 16px rgba(16,40,70,.12)}
.svx-sbar{display:grid;grid-template-columns:.8fr 1fr 1.2fr;gap:.5rem;align-items:end;max-width:640px;margin:0 auto .45rem}
.svx-sbar span{display:block;font-size:.72rem;color:var(--muted);font-weight:600}.svx-sbar b{font-size:1.15rem;color:var(--navy);display:block;min-height:48px;line-height:48px}
.svx-sbar input{width:100%;min-height:48px;padding:.4rem .5rem;font:inherit;font-weight:700;border:1.5px solid #cdd7e1;border-radius:10px}
.svx-sticky .svx-go{max-width:640px;margin:0 auto;min-height:56px}.svx-sticky .svx-link{max-width:640px;margin:0 auto;min-height:40px}
/* tab bar, toasts, retry */
.sales-tabs{display:none;grid-template-columns:repeat(4,1fr)}
.sales-tabs a{min-height:56px;justify-content:center;gap:.1rem;font-size:.72rem;font-weight:600}.sales-tabs a.on{color:var(--teal-d)}
.sales-tabs svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.sales-tabs a b{position:absolute;top:2px;left:calc(50% + 6px);font-size:.65rem;padding:0 .35rem;border-radius:99px;background:var(--red);color:#fff;min-width:18px;text-align:center}
.toasts{position:fixed;left:.8rem;right:.8rem;bottom:calc(76px + env(safe-area-inset-bottom));z-index:80;display:flex;flex-direction:column;gap:.4rem;pointer-events:none;align-items:center}
.toast{background:#0b5f3b;color:#fff;padding:.8rem 1.1rem;border-radius:14px;font-weight:600;box-shadow:0 6px 18px rgba(0,0,0,.25);max-width:560px;transition:opacity .4s,transform .4s}.toast.bad{background:#a32020}.toast.gone{opacity:0;transform:translateY(8px)}
.retrybar{position:fixed;left:.8rem;right:.8rem;bottom:calc(76px + env(safe-area-inset-bottom));z-index:90;background:#6b2a00;color:#fff;border-radius:14px;padding:.7rem .9rem;display:flex;align-items:center;gap:.8rem;box-shadow:0 6px 18px rgba(0,0,0,.3)}.retrybar span{flex:1}.retrybar button{min-height:48px;border:0;border-radius:10px;padding:0 1rem;font:inherit;font-weight:800;background:#fff;color:#6b2a00}
@media (max-width:700px){
  .sales-nav{display:none}
  .sales-tabs{display:grid}
  .sales-app .wrap{padding:.8rem .8rem calc(86px + env(safe-area-inset-bottom))}
  .sales-app .top .who{display:none}
  .sales-app .svx-sticky{bottom:calc(60px + env(safe-area-inset-bottom));padding-bottom:.55rem}
  .sales-app .svx-pf{padding-bottom:14rem}
  .sales-app .toasts,.sales-app .retrybar{bottom:calc(76px + env(safe-area-inset-bottom))}
}
@media (min-width:701px){.svx-sticky{max-width:760px;margin:0 auto;border-radius:14px 14px 0 0;border:2px solid var(--teal);border-bottom:0}.svx-pf{padding-bottom:10rem}.toasts{bottom:1.5rem}}

.svx-steps .stx .svx-timer{margin-top:.2rem}.svx-steps .stx .svx-timer .tick{font-size:1.6rem;font-weight:800;color:#007a4b}

.svx-chips label.chip,.svx-item label.chip{border:0;background:none;padding:0;margin:0;border-radius:0;font-size:1rem}
.svx-btnrow{display:flex;gap:.5rem;align-items:center;max-width:640px;margin:0 auto}.svx-btnrow .svx-go{flex:1;margin:0}.svx-btnrow .svx-link{width:auto;white-space:nowrap;max-width:none;flex:none;min-height:56px;padding:0 .6rem;margin:0;font-weight:700}
.svx-sbar b{min-height:44px;line-height:44px}

/* ---------- marketing head + ops head: simple Today home, More, guides ---------- */
.hd{max-width:860px;margin:0 auto}
.hd-hello h1{margin:.2rem 0 .1rem;font-size:1.6rem;color:var(--navy)}.hd-hello p{margin:0 0 .8rem;color:var(--muted);font-size:1rem}
.hd-nums{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:.5rem;margin:.2rem 0 .8rem}
.hd-nums div{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:.55rem .7rem;text-align:center}
.hd-nums b{display:block;font-size:1.5rem;color:var(--navy);line-height:1.15}.hd-nums span{font-size:.78rem;color:var(--muted)}
.hd-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 1rem}
.hd-actions .btn{flex:1 1 150px;min-height:48px;display:flex;align-items:center;justify-content:center;font-size:1rem;text-align:center;text-decoration:none}
.hd-welcome{display:flex;flex-wrap:wrap;gap:.6rem 1rem;align-items:center;justify-content:space-between;background:#e8f8f8;border:1px solid #b6e7e9;border-radius:var(--r);padding:.8rem 1rem;margin:0 0 1rem}
.hd-wbtn{display:flex;gap:.5rem;flex-wrap:wrap}.hd-wbtn form{margin:0}.hd-wbtn .btn{min-height:44px;display:inline-flex;align-items:center;text-decoration:none}
.hd-card{background:#fff;border:1px solid var(--line);border-left:6px solid var(--line);border-radius:var(--r);padding:.8rem .9rem .9rem;margin:0 0 .9rem}
.hd-card.sev-red{border-left-color:var(--red)}.hd-card.sev-amber{border-left-color:#e0a800}.hd-card.sev-blue{border-left-color:var(--teal)}
.hd-card header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.4rem}
.hd-card h2{margin:0;font-size:1.08rem;color:var(--navy)}
.hd-n{display:inline-block;min-width:1.6em;text-align:center;padding:0 .4em;border-radius:99px;background:var(--navy);color:#fff;font-size:.8rem;vertical-align:middle}
.sev-red .hd-n{background:var(--red)}.sev-amber .hd-n{background:#c78f00}
.hd-tip{position:relative;flex:none}.hd-tip summary{list-style:none;cursor:pointer;width:30px;height:30px;border-radius:50%;border:1px solid var(--line);text-align:center;line-height:28px;color:var(--teal-d);font-weight:700;background:#f4f8fa}
.hd-tip summary::-webkit-details-marker{display:none}.hd-tip[open] summary{background:var(--teal);color:#fff}
.hd-tip p{position:absolute;right:0;top:36px;width:min(300px,78vw);z-index:5;background:#0b3b4f;color:#fff;padding:.6rem .75rem;border-radius:10px;font-size:.88rem;margin:0;box-shadow:0 6px 18px #0003}
.hd-row{display:flex;align-items:center;gap:.7rem;border:1px solid var(--line);border-radius:10px;padding:.6rem .75rem;margin:.4rem 0;text-decoration:none;color:var(--ink);min-height:56px;background:#fcfdfe}
.hd-row:hover{border-color:var(--teal)}.hd-m{flex:1;min-width:0}.hd-m b,.hd-m span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hd-m span{color:var(--muted);font-size:.84rem}
.hd-pill{flex:none;font-size:.78rem;font-weight:700;padding:.25rem .6rem;border-radius:99px;background:#eef2f4;color:var(--ink)}.hd-pill.red{background:#fde4e4;color:#b42323}.hd-pill.amber{background:#fff1cc;color:#8a6200}
.hd-more{margin:.2rem 0 .4rem;color:var(--muted);font-size:.85rem}
.hd-cta{display:flex;align-items:center;justify-content:center;min-height:50px;font-size:1rem;margin-top:.5rem;text-decoration:none;text-align:center}
.hd-chips{display:flex;flex-wrap:wrap;gap:.4rem;margin:.2rem 0 .3rem}.hd-chips span{background:#f1f6f8;border-radius:99px;padding:.3rem .7rem;font-size:.85rem}.hd-chips span.hot{background:#fde4e4;color:#b42323}
.hd-empty{text-align:center;background:#fff;border:1px dashed var(--line);border-radius:var(--r);padding:1.4rem 1rem;margin:0 0 1rem}.hd-big{font-size:2.4rem;color:var(--teal)}.hd-empty h2{margin:.2rem 0}
.hd-quiet{background:#f7fafb;border-radius:var(--r);padding:.7rem 1rem;margin:0 0 1rem}.hd-quiet h3{margin:0 0 .3rem;font-size:.9rem;color:var(--muted)}.hd-quiet ul{list-style:none;margin:0;padding:0;font-size:.9rem;color:var(--muted)}.hd-quiet li{padding:.15rem 0}.hd-quiet li span{color:var(--teal);font-weight:700;margin-right:.3rem}
.hd-foot{color:var(--muted);font-size:.85rem;text-align:center;margin:1rem 0}
.hd-gh{font-size:1rem;margin:1.1rem 0 .4rem;color:var(--navy)}
.hd-grid{display:grid;gap:.5rem;grid-template-columns:1fr 1fr}@media(min-width:760px){.hd-grid{grid-template-columns:repeat(3,1fr)}}
.hd-tile{display:flex;flex-direction:column;justify-content:center;gap:.1rem;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:.7rem .8rem;min-height:68px;text-decoration:none;color:var(--ink)}
.hd-tile b{color:var(--navy);font-size:.98rem}.hd-tile span{color:var(--muted);font-size:.8rem}.hd-tile:hover{border-color:var(--teal)}.hd-tile.out b{color:var(--red)}
.head-tabs{display:none;grid-template-columns:repeat(5,1fr)}
.head-tabs a{min-height:56px;justify-content:center;gap:.1rem;font-size:.72rem;font-weight:600;text-align:center}.head-tabs a.on{color:var(--teal-d)}
.head-tabs svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.head-tabs a b{position:absolute;top:2px;left:calc(50% + 6px);font-size:.65rem;padding:0 .35rem;border-radius:99px;background:var(--red);color:#fff;min-width:18px;text-align:center}
.head-nav a{font-size:1rem;padding:.6rem 1rem}
.help-toc{display:grid;gap:.4rem;grid-template-columns:1fr;margin:0 0 1rem}@media(min-width:700px){.help-toc{grid-template-columns:1fr 1fr}}
.help-toc h2{grid-column:1/-1;font-size:1rem;margin:0;color:var(--navy)}
.help-toc a{display:flex;align-items:center;gap:.6rem;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:.6rem .8rem;text-decoration:none;color:var(--ink);min-height:52px;font-weight:600}
.help-toc a span,.help-no{display:inline-flex;align-items:center;justify-content:center;width:1.8em;height:1.8em;border-radius:50%;background:var(--teal);color:#fff;font-size:.85rem;flex:none}
.help-when{color:var(--muted);margin:.1rem 0 .4rem}.help-steps{padding-left:1.4rem;margin:.3rem 0}.help-steps li{margin:.45rem 0;line-height:1.5}.help-steps li::marker{font-weight:800;color:var(--teal-d)}
.help-shot{margin:.7rem 0;border:1px solid var(--line);border-radius:10px;overflow:hidden}.help-shot img{max-width:100%;max-height:600px;width:auto;height:auto;display:block;margin:0 auto}.help-shot figcaption{font-size:.82rem;color:var(--muted);padding:.35rem .6rem;background:#f4f8fa}
.help-tip{background:#fff7e0;border-left:4px solid #e0a800;padding:.5rem .7rem;border-radius:4px;margin:.6rem 0}
.help-faq dt{font-weight:700;margin-top:.7rem}.help-faq dd{margin:.1rem 0 0;color:var(--ink)}
.help-task{scroll-margin-top:.8rem}
@media (max-width:700px){
  .head-nav{display:none}
  .head-tabs{display:grid}
  .head-app .wrap{padding:.8rem .8rem calc(86px + env(safe-area-inset-bottom))}
  .head-app .top .who{display:none}
  .head-app .svx-sticky{bottom:calc(60px + env(safe-area-inset-bottom))}
  .hd-hello h1{font-size:1.4rem}
}

/* ---- owner home: a few big numbers ---- */
.ow-tog{display:flex;align-items:center;gap:.4rem;margin:.2rem 0 .7rem;flex-wrap:wrap}
.ow-tog a{padding:.55rem 1.1rem;border-radius:99px;border:1px solid var(--line);background:#fff;font-weight:700;color:var(--navy);min-height:44px;display:inline-flex;align-items:center}
.ow-tog a.on{background:var(--teal);border-color:var(--teal);color:#fff}
.ow-tog span{font-size:.8rem;color:var(--muted);margin-left:.3rem}
.ow-cards{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin:0 0 .6rem}
@media(min-width:900px){.ow-cards{grid-template-columns:repeat(3,1fr);gap:.8rem}}
.ow-card{display:flex;flex-direction:column;gap:.1rem;background:#fff;border:1px solid var(--line);border-top:5px solid var(--teal);border-radius:var(--r);padding:.7rem .8rem .75rem;color:inherit;text-decoration:none;min-height:104px}
.ow-card.t-green{border-top-color:#2f9e5b}.ow-card.t-amber{border-top-color:#e0a800}.ow-card.t-red{border-top-color:var(--red)}
.ow-l{font-size:.85rem;font-weight:700;color:var(--navy)}
.ow-v{font-size:2rem;line-height:1.1;color:var(--navy);font-weight:800;word-break:break-word}
.ow-s{font-size:.78rem;color:var(--muted)}
.ow-card:hover,.ow-card:active{box-shadow:0 2px 10px #0002}
.ow-h{font-size:1.05rem;color:var(--navy);margin:1.1rem 0 .5rem}
.ow-centres{display:grid;gap:.6rem;grid-template-columns:1fr}@media(min-width:760px){.ow-centres{grid-template-columns:repeat(3,1fr)}}
.ow-cen{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:.7rem .85rem}
.ow-cen header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.3rem}.ow-cen h3{margin:0;color:var(--navy)}.ow-cen header a{font-size:.85rem}
.ow-cen dl{display:grid;grid-template-columns:repeat(4,1fr);gap:.3rem;margin:0}
.ow-cen dl div{text-align:center;background:#f6fafb;border-radius:8px;padding:.3rem .1rem}.ow-cen dl .w{grid-column:span 2}
.ow-cen dt{font-size:.7rem;color:var(--muted)}.ow-cen dd{margin:0;font-weight:800;font-size:1.05rem;color:var(--navy)}.ow-cen dd.red{color:var(--red)}
.ow-need{display:flex;justify-content:space-between;align-items:center;gap:.6rem;background:#fff;border:1px solid var(--line);border-left:6px solid var(--teal);border-radius:var(--r);padding:.65rem .85rem;margin:0 0 .5rem;color:inherit;text-decoration:none;min-height:56px}
.ow-need.sev-red{border-left-color:var(--red)}.ow-need.sev-amber{border-left-color:#e0a800}
.ow-need .hd-m{display:flex;flex-direction:column;min-width:0}.ow-need .hd-m span{font-size:.82rem;color:var(--muted);overflow:hidden;text-overflow:ellipsis}
.ow-live{display:grid;gap:.6rem;grid-template-columns:1fr}@media(min-width:900px){.ow-live{grid-template-columns:1fr 1fr}}
.ow-live .hd-card header a{font-size:.85rem}
.ow-rest summary{cursor:pointer;font-weight:700;color:var(--teal-d);padding:.5rem .2rem;min-height:44px;display:flex;align-items:center}
.ow-tog a,.ow-card,.ow-need{text-decoration:none}
