:root{
  color-scheme: light;
  --ground:#F7F4F6; --sunken:#F1EDF0; --surface:#FDFBFC; --raised:#FFFDFE; --hover:#F3EFF2;
  --t1:#191317; --t2:#574C53; --t3:#7C6F76;
  --b1:#EAE3E7; --b2:#D6CCD2;
  --accent:#FC53AE; --accent-deep:#A81B65; --accent-press:#D22C88;
  --wash:#FDEBF4; --slab:#191317;
  --good:#17795E; --warn:#8A6100; --crit:#B3261E;
  --r:6px;
}
*{box-sizing:border-box}
/* one type scale, set once at the root, so every rem below follows it */
html{font-size:87.5%}
html{-webkit-text-size-adjust:100%}

body{
  margin:0;overflow-x:hidden;background:var(--ground);color:var(--t2);
  font-family:'Assistant',system-ui,sans-serif;
  font-size:.9375rem;line-height:1.5;letter-spacing:0;
  padding-block-end:calc(76px + env(safe-area-inset-bottom));
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3,h4{font-family:'Heebo',system-ui,sans-serif;color:var(--t1);margin:0;letter-spacing:0}
bdi{unicode-bidi:isolate}
.num{font-family:'Heebo';font-variant-numeric:tabular-nums lining-nums}
button{font-family:inherit;font-size:inherit}
:where(button,a,input,textarea,[tabindex]):focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}
@media (prefers-reduced-motion:reduce){*{transition-duration:1ms!important;animation-duration:1ms!important}}

.hd{position:sticky;top:0;z-index:20;background:var(--surface);border-block-end:1px solid var(--b1);
  padding:14px 20px;display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.hd .d{font-family:'Heebo';font-weight:700;font-size:1.0625rem;color:var(--t1)}
.hd .l{font-size:1rem;color:var(--t3)}

.blk{background:var(--surface);border-block-end:1px solid var(--b1);padding:14px 16px}
.blk h2{font-size:1rem;font-weight:700;margin-block-end:11px}
.muted{color:var(--t3);font-size:1rem}

.mv{padding:12px 0;border-block-end:1px solid var(--b1)}
.mv:last-of-type{border-block-end:none}
.mv b{display:block;font-family:'Heebo';font-weight:700;font-size:1rem;color:var(--t1)}
.mvd{display:block;font-family:'Heebo';font-weight:600;color:var(--accent-deep);font-size:.9375rem;margin-block-start:2px}
.mvn{display:block;color:var(--t3);font-size:.9375rem;margin-block-start:2px}
.sdrow{display:grid;grid-template-columns:52px 1fr;gap:12px;padding-block:13px;
  border-block-end:1px solid var(--b1);align-items:start}
.sdrow:last-child{border-block-end:none}
.sdt{font-family:'Heebo';font-weight:600;font-size:.9375rem;color:var(--t3);
  font-variant-numeric:tabular-nums;direction:ltr;text-align:start}
.sdc b{display:block;font-family:'Heebo';font-weight:600;font-size:1rem;color:var(--t1)}
.sdd{display:block;color:var(--t2);font-size:.9375rem;margin-block-start:2px}
.sdn{display:block;color:var(--t3);font-size:.875rem;margin-block-start:2px}
.restbar{position:fixed;inset-inline:0;inset-block-end:calc(76px + env(safe-area-inset-bottom));
  z-index:45;display:flex;align-items:center;gap:10px;padding:12px 18px;
  background:var(--slab);color:#fff;max-inline-size:560px;margin-inline:auto}
.restt{flex:1;font-family:'Heebo';font-weight:800;font-size:1.125rem;
  font-variant-numeric:tabular-nums}
.restb{padding:8px 14px;border:1px solid rgba(255,255,255,.3);border-radius:99px;
  background:none;color:#fff;font-family:'Heebo';font-weight:600;font-size:.875rem;cursor:pointer}
.wdone{padding:34px 20px;text-align:center;border-radius:16px;background:var(--wash);
  border:1px solid color-mix(in srgb,var(--accent) 26%,transparent);margin-block-end:16px}
.wdone h2{font-size:1.3125rem;color:var(--accent-deep)}
.wdone p{color:var(--t2);margin:6px 0 0}
.wsum{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-block-start:20px}
.wsumb{padding:14px 8px;border-radius:12px;background:var(--raised)}
.wsuv{display:block;font-family:'Heebo';font-weight:800;font-size:1.3125rem;color:var(--t1);direction:ltr}
.wsuk{display:block;color:var(--t3);font-size:.8125rem;margin-block-start:2px}
.hday{padding:15px 17px;margin-block-end:10px;border:1px solid var(--b1);border-radius:13px;
  background:var(--surface);cursor:pointer}
.hmeta{display:flex;gap:12px;margin-block-start:5px;color:var(--t3);font-size:.9375rem}
.hitems{margin-block-start:12px;padding-block-start:11px;border-block-start:1px solid var(--b1)}
.hex{font-family:'Heebo';font-weight:600;color:var(--t1);margin-block-start:9px}
.hset{color:var(--t2);font-size:.9375rem;padding-inline-start:12px}
.wday{inline-size:100%;text-align:start;padding:14px 16px;margin-block-end:11px;border:1px solid var(--b1);
  border-radius:14px;background:var(--surface);cursor:pointer;font-family:inherit}
.wday.now{border-color:var(--accent);border-width:2px;background:var(--wash)}
.wdt{display:flex;align-items:baseline;justify-content:space-between;gap:10px}
.wdt b{font-family:'Heebo';font-weight:700;font-size:.9375rem;color:var(--t1)}
.wdw{color:var(--t3);font-size:.875rem;flex:none}
.wdm{display:flex;gap:10px;margin-block-start:5px}
.wdc{color:var(--t3);font-size:.9375rem}
.wdd{color:var(--good);font-size:.9375rem;font-weight:600}
.wbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-block-end:12px}
.wback{background:none;border:1px solid var(--b2);border-radius:99px;padding:8px 15px;
  color:var(--accent-deep);font-family:'Heebo';font-weight:600;font-size:.875rem;cursor:pointer}
.wtitle{font-family:'Heebo';font-weight:700;color:var(--t1)}
.wprog{block-size:4px;border-radius:99px;background:var(--b1);overflow:hidden}
.wfill{block-size:100%;background:var(--accent);transition:inline-size .25s}
.wcount{text-align:center;color:var(--t3);font-size:.875rem;margin-block-start:7px}
.wcount .wclock{margin-inline-start:10px}
.wclock{color:var(--accent-deep);font-family:'Heebo';font-weight:700;font-size:.875rem;
  font-variant-numeric:tabular-nums}
.wcover{padding:18px;border-radius:16px;background:var(--wash);
  border:1px solid color-mix(in srgb,var(--accent) 26%,transparent)}
.wcover h2{margin:0;font-size:1.1875rem}
.wcover p{margin:4px 0 0;color:var(--t2)}
.wstart{inline-size:100%;margin-block-start:12px}
.wintro{margin-block:14px 18px;padding:16px;border-radius:16px;background:var(--surface);
  border:1px solid var(--b1);border-inline-start:3px solid var(--accent)}
.wintro > b{display:block;font-family:'Heebo';font-weight:700;font-size:1rem;color:var(--t1)}
.wintro p{margin:5px 0 0;color:var(--t2);line-height:1.6}
.wsteps{margin:10px 0 0;padding-inline-start:20px;color:var(--t2);line-height:1.7}
.wnextday{display:block;text-align:center;color:var(--t3);font-size:.875rem;margin-block-start:7px}
.wallh{display:block;font-family:'Heebo';font-weight:700;color:var(--t1);margin-block-end:10px}
.wlist{margin-block-start:14px}
.wli{inline-size:100%;display:flex;align-items:center;gap:11px;text-align:start;padding:10px 12px;
  margin-block-end:9px;border:1px solid var(--b1);border-radius:13px;background:var(--surface);
  cursor:pointer;font-family:inherit;color:var(--t1)}
.wli.done{border-color:var(--accent)}
.wlin{flex:none;inline-size:22px;text-align:center;font-family:'Heebo';font-weight:800;color:var(--t3)}
.wlim{flex:none;inline-size:52px;block-size:52px;object-fit:cover;border-radius:9px;background:var(--sunken)}
.wlit{flex:1;min-inline-size:0}
.wlit b{display:block;font-family:'Heebo';font-weight:600;font-size:.9375rem;line-height:1.3}
.wlit span{display:block;color:var(--t3);font-size:.875rem;margin-block-start:2px}
.wlid{flex:none;color:var(--good);font-weight:700;font-size:.875rem}
.wname{margin-block-start:12px;font-size:1.0625rem;line-height:1.25}
.wen{color:var(--t3);font-size:.9375rem;direction:ltr;text-align:start;margin-block-start:2px}
.wvid{inline-size:100%;aspect-ratio:16/9;border:0;border-radius:14px;background:#000;
  margin-block-start:14px;display:block;object-fit:cover}
.wnovid{margin-block-start:14px;padding:26px;border:1px dashed var(--b2);border-radius:14px;
  text-align:center;color:var(--t3)}
.wstats{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-block-start:14px}
.wstat{padding:14px;border:1px solid var(--b1);border-radius:12px;background:var(--surface);text-align:center}
.wsl{display:block;color:var(--t3);font-size:.875rem}
.wsv{display:block;font-family:'Heebo';font-weight:800;font-size:1.1875rem;color:var(--accent-deep);
  direction:ltr;margin-block-start:2px}
.whow{margin-block-start:14px;padding:15px 17px;border-radius:12px;background:var(--surface);
  border:1px solid var(--b1);border-inline-start:3px solid var(--accent)}
.whow b{display:block;font-family:'Heebo';font-weight:700;color:var(--accent-deep);font-size:.9375rem}
.whow p{margin:6px 0 0;color:var(--t1);line-height:1.65}
.wsets{margin-block-start:18px;padding:16px;border-radius:14px;background:var(--surface);
  border:1px solid var(--b1)}
.wsh{display:block;font-family:'Heebo';font-weight:700;font-size:1.0625rem;color:var(--t1);text-align:center}
.wss{display:block;color:var(--t3);font-size:.875rem;text-align:center;margin-block-start:3px}
.wrow{display:grid;grid-template-columns:22px 1fr 1fr auto;gap:8px;align-items:end;
  padding:10px;margin-block-start:11px;border:1px solid var(--b1);border-radius:12px;background:var(--raised)}
.wrow.done{border-color:var(--accent);background:var(--wash)}
.wno{font-family:'Heebo';font-weight:800;color:var(--t3);padding-block-end:11px}
.wfld{min-inline-size:0}
.wfl{display:block;color:var(--t3);font-size:.8125rem;margin-block-end:3px}
.wfi{inline-size:100%;padding:8px 6px;border:1px solid var(--b2);border-radius:9px;
  background:var(--raised);color:var(--t1);font-family:'Heebo';font-weight:700;
  font-size:1.0625rem;text-align:center;direction:ltr}
/* a number carried over from last time, until she confirms or changes it */
.wfi.wsug{color:var(--t3);border-style:dashed}
.wfi::placeholder{color:var(--t3);font-weight:500;opacity:1}
.wok{padding:11px 14px;border:none;border-radius:9px;background:var(--accent);color:#fff;
  font-family:'Heebo';font-weight:700;font-size:.875rem;cursor:pointer;white-space:nowrap}
.wrow.done .wok{background:var(--accent-deep)}
.wlast{grid-column:1/-1;color:var(--t3);font-size:.8125rem;margin-block-start:2px}
.wnav{display:grid;grid-template-columns:1fr 1.4fr;gap:10px;margin-block-start:18px}
.wskip{padding:13px;border:1px solid var(--b2);border-radius:99px;background:var(--raised);
  color:var(--t2);font-family:'Heebo';font-weight:600;font-size:1rem;cursor:pointer}
.wnext{padding:13px;border:none;border-radius:99px;background:var(--accent);color:#fff;
  font-family:'Heebo';font-weight:700;font-size:1rem;cursor:pointer}
.attrow{display:flex;gap:8px;flex-wrap:wrap;margin-block-start:10px}
.attbtn{padding:9px 13px;border:1px solid var(--b2);border-radius:99px;background:var(--raised);
  color:var(--t1);font-family:'Heebo';font-weight:600;font-size:.9375rem;cursor:pointer}
.pendbox{display:flex;gap:9px;flex-wrap:wrap;margin-block-start:11px}
.pend{position:relative;display:flex;align-items:center;gap:7px;padding:8px 10px;
  border:1px solid var(--b1);border-radius:11px;background:var(--sunken);max-inline-size:100%}
.pend img{inline-size:42px;block-size:42px;object-fit:cover;border-radius:7px;flex:none}
.pendic{font-size:1.375rem;flex:none}
.pendnm{font-size:.875rem;color:var(--t2);overflow:hidden;text-overflow:ellipsis;
  white-space:nowrap;max-inline-size:150px}
.pendx{inline-size:24px;block-size:24px;flex:none;border:none;border-radius:99px;
  background:var(--b2);color:var(--t1);font-size:1.0625rem;line-height:1;cursor:pointer}
.attimg{display:block;margin-block-end:7px}
.attimg img{inline-size:100%;max-inline-size:260px;border-radius:10px;display:block}
.attvid{inline-size:100%;max-inline-size:260px;border-radius:10px;display:block;margin-block-end:7px}
.bubw{display:flex;align-items:center;gap:6px;max-inline-size:88%}
.bubw.me{align-self:flex-end;flex-direction:row-reverse}
.bubw.them{align-self:flex-start}
.bubw .bub{max-width:100%}
.bubx{flex:none;padding:5px 8px;border:none;border-radius:99px;background:none;
  color:var(--t3);font-family:inherit;font-size:.6875rem;cursor:pointer;opacity:.5}
.bubx:active{opacity:1;color:var(--crit)}
.attaud{inline-size:100%;max-inline-size:250px;display:block;margin-block-end:7px}
.voicebtn.rec{background:var(--crit);border-color:var(--crit);color:#fff}
.voicebtn.rec.soon{animation:pulse .9s ease-in-out infinite}
@keyframes pulse{50%{opacity:.55}}
@media(prefers-reduced-motion:reduce){.voicebtn.rec.soon{animation:none}}
.attfile{display:flex;align-items:center;gap:8px;padding:11px 13px;margin-block-end:7px;
  border-radius:10px;background:rgba(0,0,0,.05);color:inherit;text-decoration:none;font-size:.9375rem}
.attic{font-size:1.25rem;flex:none}
.bubtx{white-space:pre-wrap}
.bubr{display:inline-block;margin-block-start:6px;padding:2px 8px;border-radius:99px;
  background:var(--surface);border:1px solid var(--b1);font-size:1rem;line-height:1.3}
.secnote{padding:0 20px 4px;color:var(--t3);font-size:.9375rem;line-height:1.55;margin:0 0 6px}
.dthelp{display:block;color:var(--t3);font-size:.875rem;line-height:1.5;margin-block-start:9px}
.qhelp{display:block;font-family:'Assistant';font-weight:400;font-size:.8125rem;
  color:var(--t3);line-height:1.45;margin-block-start:2px}
/* last time's answer, as a reminder under the field and never inside it */
.qprev{display:block;margin-block-start:6px;font-size:.8125rem;color:var(--t3)}
.dtpick{padding:16px 20px;background:var(--wash);
  border-block-end:1px solid color-mix(in srgb,var(--accent) 22%,transparent)}
.dtq{display:block;font-family:'Heebo';font-weight:700;font-size:1rem;color:var(--accent-deep);
  margin-block-end:9px}
.bwrow{padding:14px;margin-block-start:10px;border:1px solid var(--b1);border-radius:12px;
  background:var(--surface)}
.bwhead{display:flex;align-items:baseline;justify-content:space-between;gap:10px}
.bwhead b{font-family:'Heebo';font-weight:700;font-size:.9375rem;color:var(--t1)}
.bwx{background:none;border:none;color:var(--t3);font-family:inherit;font-size:.875rem;
  cursor:pointer;padding:4px 6px}
.bwstrip{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;margin-block-start:10px}
.bwb{padding:7px 2px;border:1px solid var(--b2);border-radius:9px;background:var(--raised);
  cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:3px}
.bwb.sel{border-color:var(--accent);background:var(--wash);border-width:2px}
.bwb svg{inline-size:100%;block-size:22px}
.bwn{font-family:'Heebo';font-weight:700;font-size:.75rem;color:var(--t3)}
.bwb.sel .bwn{color:var(--accent-deep)}
.bwdesc{margin-block-start:8px;font-size:.9375rem;color:var(--t2)}
.bwnote{inline-size:100%;margin-block-start:10px;padding:10px 12px;border:1px solid var(--b2);
  border-radius:9px;background:var(--raised);color:var(--t1);font-family:inherit;font-size:1rem}
.bwadd{inline-size:100%;margin-block-start:10px;padding:13px;border:1px dashed var(--b2);
  border-radius:11px;background:none;color:var(--accent-deep);font-family:'Heebo';
  font-weight:700;font-size:1rem;cursor:pointer}
.bwsum{margin-block-start:9px;font-family:'Heebo';font-weight:700;font-size:.9375rem;color:var(--t3)}
.sechd{font-family:'Heebo';font-weight:800;font-size:.9375rem;color:var(--t1);
  margin:26px 20px 10px;padding-block-end:8px;border-block-end:2px solid var(--accent)}
/* Every sheet's close button and the welcome dismiss carried this class and it
   had no rule at all, so they rendered as 23px grey browser buttons. */
/* correcting a check-in she already filed */
.datestrip{display:flex;flex-wrap:wrap;gap:7px;margin:0 20px 12px}
.dchip{min-height:44px;padding:10px 16px;border:1px solid var(--b2);border-radius:999px;
  background:var(--surface);color:var(--t2);font-family:'Heebo';font-weight:700;
  font-size:.875rem;cursor:pointer}
.dchip.on{background:var(--accent-deep);border-color:var(--accent-deep);color:#fff}
.datenote{margin:0 20px 14px;padding:10px 13px;border-radius:11px;background:var(--wash);
  color:var(--accent-deep);font-family:'Heebo';font-weight:700;font-size:.875rem;line-height:1.6}
.sm{min-height:44px;padding:10px 18px;border:1px solid var(--b2);border-radius:11px;
  background:var(--surface);color:var(--t1);font-family:'Heebo';font-weight:700;
  font-size:.9375rem;cursor:pointer}
.sm:hover{background:var(--sunken)}
.sechd:first-child{margin-block-start:4px}
.schtop{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.amt{font-family:'Heebo';font-weight:800;color:var(--accent-deep);font-size:.9375rem;
  white-space:nowrap;flex:none}
.supcard{padding:14px;margin-block-start:12px;border:1px solid var(--b1);border-radius:14px;background:#fff}
.supname{font-family:'Heebo';font-weight:700;font-size:1rem;color:var(--t1);
  display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.dtag{font-size:.75rem;font-weight:700;padding:3px 9px;border-radius:99px;
  background:var(--wash);color:var(--accent-deep)}
.supsub{color:var(--t3);font-size:.875rem;margin-block-start:3px}
.suptimes{margin-block-start:12px;border-block-start:1px solid var(--b1)}
.suptime{display:flex;align-items:baseline;gap:10px;padding-block:9px;border-block-end:1px solid var(--b1)}
.stw{color:var(--t2);inline-size:110px;flex:none;font-size:.9375rem}
.sta{font-family:'Heebo';font-weight:700;color:var(--accent-deep)}
.stn{color:var(--t3);font-size:.875rem}
/* the grid, the same shape Neta builds the protocol in */
.sgwrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin-block-end:6px}
/* the table is as wide as it needs to be and the wrapper scrolls; forcing
   it to 100% squeezed the columns and cut the words inside them */
/* the table fits the screen and the words wrap inside the cells. Letting it
   size to its content instead pushed it to 810px on a 430px phone. */
.sgrid{border-collapse:collapse;inline-size:100%;table-layout:fixed;font-size:.9375rem}
.sgwrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
.sgrid th,.sgrid td{border:1px solid var(--b1);padding:9px 8px;text-align:center;
  vertical-align:middle}
.sgrid th{font-family:'Heebo';font-weight:700;font-size:.8125rem;color:var(--t3);
  background:var(--sunken);white-space:nowrap}
.sgrid td.sgnm,.sgrid th.sgnm{text-align:start;inline-size:34%;min-inline-size:0;
  position:sticky;inset-inline-start:0;background:var(--surface);z-index:1;
  font-family:'Heebo';font-weight:700}
.sgrid th.sgnm{background:var(--sunken)}
.sgrid .sga{font-family:'Heebo';font-weight:700;color:var(--t1)}
.sgrid .sgnm bdi{overflow-wrap:anywhere}
.sgrid .sgn{font-size:.8125rem;color:var(--t3);line-height:1.35;margin-block-start:2px}
.sgrid .sgday{font-size:.75rem;color:var(--accent-deep);font-weight:600}
.sgrid td.sgc{color:var(--t3)}
.sghint{font-size:.875rem;color:var(--t3);margin:2px 0 14px}
.loose{padding:12px 14px;margin-block-end:8px;border:1px solid var(--b1);border-radius:12px;
  background:#fff}
.sgrid td.sgrule,.sgrid th.sgrule{text-align:start;inline-size:26%;min-inline-size:0;
  color:var(--t2);font-size:.875rem;line-height:1.45}
.sgrid .sgsub{font-size:.8125rem;color:var(--t3);font-weight:400;margin-block-start:2px}
.sgrid .sglk{margin-block-start:4px;display:flex;gap:10px;flex-wrap:wrap}
.sgrid .sglk a{font-size:.8125rem;color:var(--accent-deep);font-weight:600}
.sgrid td.has{background:var(--wash)}
.sgcat td{background:var(--sunken);font-family:'Heebo';font-weight:700;font-size:.8125rem;
  text-align:start;color:var(--t2)}
@media(max-width:430px){
  .sgrid{font-size:.875rem}
  .sgrid th,.sgrid td{padding:7px 5px}
  .sgrid td.sgnm,.sgrid th.sgnm{min-inline-size:96px;font-size:.8125rem}
  .sgrid .sgn{font-size:.75rem}
}
.suprule{margin-block-start:10px;padding:10px 12px;border-radius:10px;background:var(--sunken);
  color:var(--t2);font-size:.9375rem}
.cnote{padding:14px 16px;margin-block-end:14px;border-radius:14px;
  background:var(--wash);border:1px solid color-mix(in srgb,var(--accent) 30%,transparent)}
.cnh{display:flex;align-items:baseline;justify-content:space-between;gap:10px}
.cnh b{font-family:'Heebo';font-weight:700;color:var(--accent-deep);font-size:.9375rem}
.cnd{color:var(--t3);font-size:.875rem;flex:none}
.cnb{margin-block-start:6px;color:var(--t1);white-space:pre-wrap;line-height:1.75}
@media(max-width:480px){.stw{inline-size:88px;font-size:.875rem}}
/* slots */
.slotlist{display:grid;gap:8px}
.srow2{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;
  min-height:60px;padding:10px 14px;border:1px solid var(--b2);border-radius:var(--r);
  background:var(--surface);cursor:pointer;text-align:start;width:100%}
.srow2.now{border-color:var(--accent);border-width:2px;padding:9px 13px}
.srow2.done{background:var(--wash);border-color:color-mix(in srgb,var(--accent) 35%,transparent)}
.srow2 .tm{font-family:'Heebo';font-weight:600;font-size:.9375rem;color:var(--t1)}
.srow2 .ct2{font-family:'Heebo';font-weight:700;font-size:1.0625rem;color:var(--t2);font-variant-numeric:tabular-nums}
.dots{display:flex;gap:4px}
.dots i{width:9px;height:9px;border-radius:50%;border:1.5px solid var(--b2);display:block}
.dots i.on{background:var(--accent);border-color:var(--accent)}

/* metric + meter */
.metric{font-family:'Heebo';font-weight:700;font-size:1.75rem;color:var(--t1);line-height:1.1;font-variant-numeric:tabular-nums}
.metric small{font-size:1.0625rem;font-weight:600;color:var(--t3)}
.meter{height:12px;background:var(--sunken);border:1px solid var(--b1);border-radius:99px;overflow:hidden;margin-block-start:10px}
.meter i{display:block;height:100%;background:var(--accent);border-radius:99px}

/* day timeline */
.dayhd{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-block-end:14px;flex-wrap:wrap}
.wake{font-family:'Heebo';font-weight:600;font-size:1rem;color:var(--t3)}
.wake b{color:var(--t1);font-variant-numeric:tabular-nums}
.di{display:grid;grid-template-columns:56px 66px 1fr;gap:10px;padding-block:12px;
  border-block-end:1px solid var(--b1);align-items:baseline}
.di:last-child{border-block-end:none}
.dt2{font-family:'Heebo';font-weight:600;font-size:1rem;color:var(--t3);font-variant-numeric:tabular-nums;direction:ltr;text-align:start}
.pv{font-family:'Heebo';font-weight:700;font-size:1rem;color:var(--t1);
  font-variant-numeric:tabular-nums lining-nums}
.dk{font-family:'Heebo';font-weight:600;font-size:.9375rem;color:var(--t3)}
.dc b{display:block;font-weight:600;font-size:1.0625rem;color:var(--t1);line-height:1.45}
.dc span{display:block;font-size:1rem;color:var(--t2);line-height:1.5}

/* buttons */
/* an author display rule beats the browser's own [hidden], and a hidden button
   was rendering as an empty 56px box at the bottom of the plan */
[hidden]{display:none!important}
.btn{display:block;width:100%;min-height:56px;border:none;border-radius:var(--r);
  background:var(--accent-deep);color:#fff;font-family:'Heebo';font-weight:700;font-size:1.1875rem;cursor:pointer;padding:12px}
.btn.sec{background:var(--surface);color:var(--t1);border:1px solid var(--b2)}
.btn[disabled]{opacity:.5;cursor:not-allowed}

/* energy */
.erow{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;margin-block-start:8px}
.ecell{min-block-size:44px;min-height:64px;border:1px solid var(--b2);border-radius:var(--r);background:var(--surface);
  font-family:'Heebo';font-weight:700;font-size:1.0625rem;color:var(--t2);cursor:pointer}
.ecell.sel{background:var(--wash);border-color:var(--accent);border-width:2px;color:var(--accent-deep)}
.escale{display:flex;justify-content:space-between;font-size:.8125rem;color:var(--t3);margin-block-start:8px}

/* sheet */
.ov{position:fixed;inset:0;background:rgba(25,19,23,.4);z-index:50;display:none}
.ov.on{display:block}
.sheet{position:fixed;inset-inline:0;inset-block-end:0;z-index:60;background:var(--raised);
  border-start-start-radius:14px;border-start-end-radius:14px;max-height:88vh;overflow:auto;
  transform:translateY(100%);transition:transform .3s cubic-bezier(.22,1,.36,1);
  padding-block-end:calc(20px + env(safe-area-inset-bottom))}
.sheet.on{transform:translateY(0)}
@media(min-width:600px){.sheet{max-inline-size:560px;margin-inline:auto}}
/* On a laptop this stays a phone: one narrow column in the middle of the
   screen, exactly what the client sees in her hand, so when Neta shows it on a
   call the two of them are looking at the same thing. The fields lose a little
   height, because a mouse does not need a thumb's worth of target. */
@media(min-width:760px){
  #wk .step button{min-height:40px;font-size:1.0625rem}
  #wk .step input{min-height:40px;font-size:1rem}
  #wk .ecell{min-height:44px;min-block-size:44px}
  #wk label.f{margin-block-end:10px}
  #wk textarea{min-height:90px}
}
}
.grab{width:38px;height:4px;background:var(--b2);border-radius:99px;margin:10px auto 4px}
.sh{padding:8px 20px 14px;display:flex;justify-content:space-between;align-items:baseline;
  border-block-end:1px solid var(--b1)}
.sh b{font-family:'Heebo';font-weight:700;font-size:1rem;color:var(--t1)}
.sh #sh-c{color:var(--t3);font-size:.9375rem;margin-inline-start:auto;margin-inline-end:12px}
#sh-x{background:none;border:1px solid var(--b2);border-radius:var(--r);color:var(--t1);
  font-family:'Heebo';font-weight:600;font-size:.9375rem;padding:8px 14px;min-height:44px;cursor:pointer;flex:0 0 auto}
.sh span{color:var(--t3);font-size:1rem}
.srow{display:flex;align-items:center;gap:14px;min-height:72px;padding:12px 20px;
  border-block-end:1px solid var(--b1);cursor:pointer;text-align:start;width:100%;background:none;border-inline:none;border-block-start:none}
.srow.done{background:var(--wash)}
.chk{width:28px;height:28px;border-radius:50%;border:2px solid var(--b2);flex:0 0 auto;
  display:flex;align-items:center;justify-content:center}
.srow.done .chk{background:var(--accent);border-color:var(--accent)}
.srow.done .chk::after{content:"";width:10px;height:6px;border-inline-start:2px solid #fff;
  border-block-end:2px solid #fff;transform:rotate(-45deg);margin-block-end:3px}
.srow .tx b{display:block;font-family:'Heebo';font-weight:600;font-size:1rem;color:var(--t1)}
.srow .tx span{font-size:1rem;color:var(--t2)}

/* schedule */
.schh{display:flex;justify-content:space-between;gap:10px;padding:14px 20px 7px;background:var(--sunken)}
.schh b{font-family:'Heebo';font-weight:700;font-size:1.0625rem;color:var(--t1)}
.schh span{font-family:'Heebo';font-weight:600;font-size:1rem;color:var(--t3)}
.schi{display:grid;grid-template-columns:1fr auto;gap:6px 14px;padding:12px 20px;border-block-start:1px solid var(--b1)}
.schi .nmx{font-family:'Heebo';font-weight:600;font-size:1.0625rem;color:var(--t1)}
.schi .dsx{font-family:'Heebo';font-weight:700;font-size:1.0625rem;color:var(--t1);font-variant-numeric:tabular-nums;white-space:nowrap}
.schi .rl{grid-column:1/-1;font-size:1rem;color:var(--t2)}
.schi .lk{grid-column:1/-1;margin-block-start:4px}
.schi .lk a{display:inline-block;min-height:44px;line-height:44px;padding-inline:14px;border:1px solid var(--b2);
  border-radius:var(--r);color:var(--t1);text-decoration:none;font-family:'Heebo';font-weight:600;font-size:1rem}

/* forms */
label.f{display:block;margin-block-end:13px}
label.f > span{display:block;font-family:'Heebo';font-weight:600;font-size:1rem;color:var(--t2);margin-block-end:6px}
.step{display:grid;grid-template-columns:52px 1fr 52px;gap:0;border:1px solid var(--b2);border-radius:var(--r);overflow:hidden}
.step button{min-height:48px;border:none;background:var(--surface);color:var(--t1);font-size:1.25rem;font-weight:700;cursor:pointer}
.step input{min-height:48px;border:none;border-inline:1px solid var(--b2);text-align:center;font-size:1.125rem;
  font-family:'Heebo';font-weight:700;font-variant-numeric:tabular-nums;background:var(--surface);color:var(--t1);width:100%}
textarea{width:100%;min-height:110px;padding:12px;font-size:1rem;font-family:inherit;
  border:1px solid var(--b2);border-radius:var(--r);background:var(--surface);color:var(--t1)}

/* photographing the nutrition panel instead of typing it */
.lblcam{margin-block-end:16px}
.lblbtn{display:block;width:100%;min-height:56px;border:1px solid var(--accent);
  border-radius:var(--r);background:var(--wash);color:var(--accent-deep);
  font-family:'Heebo';font-weight:700;font-size:1.0625rem;cursor:pointer}
.lblbtn:disabled{opacity:.6;cursor:default}
.lblcam .muted{text-align:center;margin:8px 0 0}
.lblmsg{background:var(--sunken);border-radius:var(--r);padding:11px 13px;
  font-size:.9375rem;line-height:1.6;color:var(--t2);margin-block-end:14px}
.lblmsg.warn{background:#FFF6E5;color:#6B4A00}
.kcalc{margin:6px 0 0;font-size:.875rem;line-height:1.5;color:var(--accent-deep)}
/* a field the camera filled in, so she can see what to check before saving */
label.f.fromcam > span::after{content:' · מהצילום';color:var(--accent-deep);font-weight:600}
label.f.fromcam input{border-color:var(--accent);background:var(--wash)}

/* daily / weekly switch */
.seg{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.segb{min-height:52px;border:1px solid var(--b2);border-radius:var(--r);background:var(--surface);
  font-family:'Heebo';font-weight:700;font-size:1.0625rem;color:var(--t2);cursor:pointer}
.segb.on{background:var(--wash);border-color:var(--accent);border-width:2px;color:var(--accent-deep)}

.daynote{background:var(--wash);border:1px solid color-mix(in srgb,var(--accent) 30%,transparent);
  border-radius:var(--r);padding:11px 14px;font-family:'Heebo';font-weight:600;
  font-size:1rem;color:var(--accent-deep);margin-block-end:6px}

/* question sections + choice rows.
   The check-in is long by nature. Tightening the type and the gaps takes about
   a third off its height without making anything smaller than a thumb. */
.qsec{font-family:'Heebo';font-weight:800;font-size:.9375rem;color:var(--accent-deep);
  letter-spacing:.04em;margin:20px 0 9px;padding-block-end:6px;border-block-end:1px solid var(--b1)}
.qsec:first-child{margin-block-start:4px}
/* the food lists: read on a phone, in a supermarket */
.listintro{color:var(--t2);line-height:1.7;margin:6px 0 12px}
.listsec{font-family:Heebo;font-size:1rem;font-weight:700;margin:18px 0 6px;color:var(--t1)}
.listgrp{margin-block-end:12px}
.listlb{display:inline-block;font-family:Heebo;font-size:.75rem;font-weight:700;
  padding:2px 10px;border-radius:99px;margin-block-end:6px}
.listgrp.eat .listlb{background:rgba(31,122,77,.14);color:#1f7a4d}
.listgrp.careful .listlb{background:rgba(180,120,0,.16);color:#8a5a00}
.listgrp.avoid .listlb{background:rgba(200,40,40,.12);color:#b3261e}
.listitems{display:flex;flex-wrap:wrap;gap:6px}
.listitem{border:1px solid var(--b1);border-radius:10px;padding:6px 10px;background:var(--surface);
  display:flex;flex-direction:column;gap:1px;min-inline-size:0}
.listitem .lin{font-size:.9375rem;color:var(--t1)}
.listitem .lnote{font-size:.75rem;color:var(--t2)}
/* a day of eating Neta sent: read top to bottom, meal by meal */
.mnhd{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin-block-end:2px}
.mnhd .mnd{font-size:.8125rem;color:var(--t2)}
.mnday{border:1px solid var(--b1);border-radius:var(--r);padding:10px 12px;margin-block-end:12px;
  background:var(--surface)}
.mnday b{font-family:Heebo}
.mnmeal{border-block-start:1px solid var(--b1);padding-block-start:10px;margin-block-start:10px}
.mnmeal:first-child{border-block-start:0;padding-block-start:0;margin-block-start:0}
.mnmt{display:flex;justify-content:space-between;align-items:baseline;gap:8px;margin-block-end:6px}
.mnmt .t{font-family:Heebo;font-weight:700;font-size:1rem;color:var(--accent-deep)}
.mnmt .k{font-size:.8125rem;color:var(--t2);white-space:nowrap}
.mnfood{display:flex;justify-content:space-between;gap:10px;padding:5px 0;
  border-block-end:1px dashed var(--b1)}
.mnfood:last-child{border-block-end:0}
.mnfood .n{font-size:.9375rem;color:var(--t1)}
.mnfood .q{font-size:.875rem;color:var(--t2);white-space:nowrap}
.mnnote{color:var(--t2);line-height:1.7;margin-block-start:10px;white-space:pre-wrap}
.mncopy{min-height:38px;padding:5px 12px;border:1px solid var(--b2);border-radius:var(--r);
  background:var(--surface);font-family:'Heebo';font-weight:600;font-size:.8125rem;
  color:var(--accent-deep);cursor:pointer;white-space:nowrap}
.mncopy:disabled{opacity:.6}
#blk-menu .btn.sec{margin-block:4px 10px}
.chrow{display:flex;flex-wrap:wrap;gap:7px;margin-block-start:5px}
.chcell{min-height:46px;padding:8px 14px;border:1px solid var(--b2);border-radius:var(--r);
  background:var(--surface);font-family:'Heebo';font-weight:600;font-size:1rem;color:var(--t2);cursor:pointer}
.chcell.sel{background:var(--wash);border-color:var(--accent);border-width:2px;color:var(--accent-deep)}
.bart{width:88px;height:40px;flex:0 0 88px;color:var(--t3)}
.brow.sel .bart{color:var(--accent-deep)}

/* choosing the time of the first call */
.bkdays{display:flex;flex-direction:column;gap:9px;margin-block-start:9px}
.bkday{border:1px solid var(--b1);border-radius:11px;background:var(--surface);padding:9px 11px}
.bkdlab{font-family:'Heebo';font-weight:700;font-size:.8125rem;color:var(--t1);
  margin-block-end:6px}
.bktimes{display:flex;flex-wrap:wrap;gap:6px}
.bkt{padding:7px 14px;border:1px solid var(--b2);border-radius:99px;background:var(--raised);
  color:var(--t1);font:inherit;font-size:.875rem;cursor:pointer;font-variant-numeric:tabular-nums}
.bkt:hover:not(:disabled){border-color:var(--accent-deep);color:var(--accent-deep)}
.bkt:disabled{opacity:.45;cursor:default}
.bkhas{border:1px solid var(--accent-deep);border-radius:12px;background:var(--raised);
  padding:11px 14px;display:flex;flex-direction:column;gap:3px;align-items:flex-start}
.bkhas b{font-family:'Heebo';font-weight:800;font-size:1rem;color:var(--t1)}
.bkhas span{color:var(--t3);font-size:.75rem}
.bkcal{display:flex;gap:7px;flex-wrap:wrap;margin-block-start:8px}
.bkcalb{padding:6px 13px;border:1px solid var(--b2);border-radius:99px;background:var(--surface);
  color:var(--t2);font:inherit;font-size:.8125rem;text-decoration:none}
.bkcalb:hover{border-color:var(--accent-deep);color:var(--accent-deep)}
.bkrem{color:var(--t3);font-size:.75rem;margin-block-start:7px;line-height:1.5}
.bkx{margin-block-start:6px;background:none;border:none;padding:0;color:var(--t3);
  font:inherit;font-size:.75rem;text-decoration:underline;cursor:pointer}
.cdrow{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-block-start:7px}
.cdnote{color:var(--t3);font-size:.75rem}
.cdday{font-family:'Heebo';font-weight:800;font-size:.9375rem;color:var(--accent-deep)}
.cdbtn{padding:6px 13px;border:1px solid var(--b2);border-radius:99px;background:var(--raised);
  color:var(--t2);font:inherit;font-size:.8125rem;cursor:pointer}
.cdbtn:hover{border-color:var(--accent-deep);color:var(--accent-deep)}
/* bristol picker */
.bristol{display:grid;gap:6px;margin-block-start:5px}
.brow{display:flex;align-items:center;gap:12px;min-height:60px;padding:8px 12px;width:100%;
  border:1px solid var(--b2);border-radius:var(--r);background:var(--surface);
  cursor:pointer;text-align:start}
.brow.sel{background:var(--wash);border-color:var(--accent);border-width:2px;padding:9px 13px}
.bnum{flex:0 0 34px;height:34px;border-radius:50%;border:1.5px solid var(--b2);
  display:flex;align-items:center;justify-content:center;
  font-family:'Heebo';font-weight:700;font-size:1.0625rem;color:var(--t2)}
.brow.sel .bnum{background:var(--accent);border-color:var(--accent);color:#fff}
.btx b{display:block;font-family:'Heebo';font-weight:600;font-size:1.0625rem;color:var(--t1);line-height:1.35}
.btx span{display:block;font-size:.9375rem;color:var(--t3)}

/* messages */
.thread{display:flex;flex-direction:column;gap:12px;padding:20px}
.bub{max-width:82%;padding:10px 13px;border-radius:11px;font-size:.9375rem;line-height:1.55;white-space:pre-wrap}
.bub.them{background:var(--surface);border:1px solid var(--b1);justify-self:start;color:var(--t1)}
.bub.me{background:var(--wash);border:1px solid color-mix(in srgb,var(--accent) 30%,transparent);justify-self:end;color:var(--t1)}
.bubt{font-size:.9375rem;color:var(--t3);margin-block-start:4px}
.hours{background:var(--slab);color:#FDFBFC;padding:12px 20px;font-size:1rem;line-height:1.5}

/* lessons */
.les{display:flex;align-items:center;gap:10px;width:100%;text-align:start;background:var(--surface);border:none;
  border-block-end:1px solid var(--b1);padding:13px 20px;cursor:pointer;min-height:54px}
.les b{display:block;font-family:'Heebo';font-weight:600;font-size:.9375rem;color:var(--t1)}
.les span{font-size:.9375rem;color:var(--t3)}
.fnav{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-block-end:14px}
.fnavb{inline-size:36px;block-size:36px;border:1px solid var(--b2);border-radius:99px;
  background:var(--raised);color:var(--t2);font-size:1.25rem;line-height:1;cursor:pointer}
.fnavb:disabled{opacity:.35;cursor:default}
.fnavd{font-family:'Heebo';font-weight:700;color:var(--t1)}
.ftot{padding:16px;border-radius:14px;background:var(--wash);
  border:1px solid color-mix(in srgb,var(--accent) 24%,transparent)}
.fbig{text-align:center}
.fbigv{display:block;font-family:'Heebo';font-weight:800;font-size:1.75rem;color:var(--accent-deep);
  line-height:1.1;direction:ltr}
.fbigk{display:block;color:var(--t2);font-size:.875rem;margin-block-start:2px}
.fbars{margin-block-start:14px;display:grid;gap:9px}
.fbart{display:flex;justify-content:space-between;gap:10px}
.fbarl{color:var(--t2);font-size:.875rem}
.fbarv{font-family:'Heebo';font-weight:700;font-size:.875rem;color:var(--t1);direction:ltr}
.ftrack{block-size:5px;border-radius:99px;background:rgba(0,0,0,.08);margin-block-start:4px;overflow:hidden}
.ffill{block-size:100%;background:var(--accent);border-radius:99px}
.ffill.over{background:var(--warn)}
.fsetgoal{inline-size:100%;margin-block-start:12px;padding:12px;border:1px dashed var(--b2);
  border-radius:11px;background:none;color:var(--accent-deep);font-family:'Heebo';
  font-weight:700;font-size:.9375rem;cursor:pointer}
.meal{margin-block-start:16px;border:1px solid var(--b1);border-radius:13px;background:var(--surface);
  overflow:hidden}
.mealhr{display:flex;align-items:center;gap:9px}
.mealh{display:flex;justify-content:space-between;align-items:center;gap:10px;
  padding:12px 14px;background:var(--sunken)}
.mealh b{font-family:'Heebo';font-weight:700;font-size:.9375rem;color:var(--t1)}
.mealt{font-family:'Heebo';font-weight:700;font-size:.875rem;color:var(--accent-deep);direction:ltr}
.mealtime{font:inherit;font-size:.8125rem;color:var(--t2);direction:ltr;
  border:1px solid var(--b2);border-radius:8px;background:var(--raised);
  padding:4px 7px;min-inline-size:0;appearance:none}
.mealtime:focus{outline:2px solid var(--accent-deep);outline-offset:1px}
.fitem{display:flex;align-items:center;gap:10px;padding:11px 14px;border-block-start:1px solid var(--b1)}
.fitx{min-inline-size:0;flex:1}
.fitx b{display:block;font-family:'Heebo';font-weight:600;font-size:.9375rem;color:var(--t1)}
.fitx span{display:block;color:var(--t3);font-size:.8125rem}
.fimac{direction:rtl}
.fikc{font-family:'Heebo';font-weight:800;color:var(--t1);direction:ltr;flex:none}
.fix{inline-size:40px;block-size:40px;flex:none;border:none;border-radius:99px;
  background:var(--sunken);color:var(--t3);font-size:1.25rem;line-height:1;cursor:pointer}
.fix:hover{background:#F7E2E0;color:var(--crit)}
/* the check-in save banner, which now also reports a failure */
#wk-saved.bad{color:var(--crit);font-weight:700}
/* marking a message urgent: the one thing that reaches Neta's phone at once */
.urg{display:flex;align-items:center;gap:9px;margin-block-start:8px;cursor:pointer;
  font-family:'Heebo';font-weight:600;font-size:.9375rem;color:var(--t2)}
.urg input{inline-size:20px;block-size:20px;min-block-size:0;accent-color:var(--accent)}
.mealadd{inline-size:100%;padding:11px;border:none;border-block-start:1px solid var(--b1);
  background:none;color:var(--accent-deep);font-family:'Heebo';font-weight:700;
  font-size:.9375rem;cursor:pointer}
/* copying a meal to other days */
.mealacts{display:flex;border-block-start:1px solid var(--b1)}
.mealacts .mealadd{border-block-start:none}
.mealcopy{flex:0 0 auto;padding:11px 18px;border:none;border-inline-start:1px solid var(--b1);
  background:none;color:var(--t2);font-family:'Heebo';font-weight:700;
  font-size:.9375rem;cursor:pointer;min-height:44px}
.mealcopy:hover{background:var(--sunken)}
.sheetc{padding:18px 20px calc(20px + env(safe-area-inset-bottom))}
.sheetc h3{margin:0 0 4px;font-size:1.125rem}
.cpsec{margin:18px 0 8px;font-family:'Heebo';font-weight:800;font-size:.875rem;
  color:var(--accent-deep);letter-spacing:.04em}
.cplist{display:flex;flex-direction:column;gap:6px;max-block-size:34vh;overflow:auto}
.cprow{display:flex;align-items:center;gap:10px;padding:9px 12px;border:1px solid var(--b1);
  border-radius:11px;background:var(--surface);cursor:pointer}
.cprow.on{border-color:var(--accent);background:var(--wash)}
.cprow input{inline-size:20px;block-size:20px;min-block-size:0;flex:none;accent-color:var(--accent)}
.cptx{display:flex;flex-direction:column;gap:1px;min-inline-size:0}
.cptx b{font-family:'Heebo';font-weight:700;font-size:.9375rem}
.cptx span{color:var(--t3);font-size:.8125rem}
.cpdays{display:flex;flex-wrap:wrap;gap:7px}
.fsheet{max-block-size:92vh}
/* barcode scanning, and the totals that stay in view */
.fquick{display:flex;gap:8px;margin:0 20px 4px}
.scanbtn{flex:1;min-block-size:46px;
  border:1px dashed var(--b2);border-radius:10px;background:var(--sunken);color:var(--accent-deep);
  font-family:'Heebo';font-weight:700;font-size:.9375rem;cursor:pointer}
.scanvid{inline-size:100%;max-block-size:46vh;border-radius:12px;background:#000;
  margin-block-start:12px;object-fit:cover}
.scanman{margin-block-start:10px}
.ftot.ftotstick{position:sticky;inset-block-start:0;z-index:12;background:var(--ground);
  padding-block-end:8px;box-shadow:0 6px 10px -8px rgba(25,19,23,.22)}
/* the row that holds the amount and its unit, in the edit sheet */
.fqrow{display:flex;align-items:center;gap:10px;padding-inline:20px}
.fixvals{padding-inline:20px;padding-block-end:6px}
.fqrow .fq{inline-size:120px;margin:12px 0}
.fq{inline-size:calc(100% - 40px);margin:12px 20px;padding:12px 14px;border:1px solid var(--b2);
  border-radius:10px;background:var(--surface);color:var(--t1);font-family:inherit;font-size:1rem}
.ftag{display:inline-block;margin-inline-start:6px;padding:1px 7px;border-radius:99px;
  background:var(--accent);color:#fff;font-size:.6875rem;font-weight:700}
.ffull{color:var(--t3);font-size:.75rem;line-height:1.4}
.funit{color:var(--accent-ink,#A81B65);font-weight:700}
.flist{padding:0 20px 20px;max-block-size:56vh;overflow:auto}
.fhint{color:var(--t3);font-size:.8125rem;margin-block-end:6px}
.cpdate{display:flex;align-items:center;gap:8px;margin-block-start:8px;flex-wrap:wrap}
.cpdate input{padding:7px 10px;border:1px solid var(--b2);border-radius:9px;
  background:var(--raised);color:var(--t1);font:inherit;font-size:.8125rem;direction:ltr}
.cpdate span{color:var(--t3);font-size:.75rem}
.histbtn{width:100%;margin-block-start:14px;padding:13px;border:1px solid var(--b2);
  border-radius:12px;background:var(--raised);color:var(--t1);font:inherit;
  font-size:.9375rem;font-weight:600;cursor:pointer}
.histtabs{display:flex;gap:7px;margin-block-end:12px;flex-wrap:wrap}
.histtab{padding:8px 14px;border:1px solid var(--b2);border-radius:99px;background:var(--raised);
  color:var(--t2);font:inherit;font-size:.8125rem;cursor:pointer}
.histtab.on{background:var(--accent-deep);border-color:var(--accent-deep);color:#fff;font-weight:600}
.hrow{border:1px solid var(--b1);border-radius:11px;background:var(--surface);
  padding:11px 13px;margin-block-end:8px}
.hrow .hd1{display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.hrow b{font-family:'Heebo';font-weight:700;font-size:.9375rem;color:var(--t1)}
.hrow .hwhen{color:var(--t3);font-size:.75rem}
.hfacts{display:flex;flex-wrap:wrap;gap:4px 14px;margin-block-start:7px}
.hfact{font-size:.8125rem;color:var(--t2)}
.hfact b{font-weight:700;color:var(--t1);font-size:.8125rem;margin-inline-start:3px}
.hnote{margin-block-start:7px;color:var(--t2);font-size:.8125rem;line-height:1.55;
  white-space:pre-wrap}
.hopen{margin-block-start:8px;padding:7px 13px;border:1px solid var(--accent-deep);
  border-radius:99px;background:var(--raised);color:var(--accent-deep);font:inherit;
  font-size:.8125rem;cursor:pointer}
.brday{display:flex;gap:7px;flex-wrap:wrap;margin-block-end:12px}
.brd{padding:8px 12px;border:1px solid var(--b2);border-radius:11px;background:var(--raised);
  color:var(--t2);font:inherit;font-size:.8125rem;cursor:pointer;text-align:center;line-height:1.35}
.brd b{display:block;color:var(--t1);font-size:.875rem}
.brd span{color:var(--t3);font-size:.6875rem}
.brd.on{background:var(--accent-deep);border-color:var(--accent-deep);color:#fff}
.brd.on b,.brd.on span{color:#fff}
.brmeal{font-family:'Heebo';font-weight:700;font-size:.8125rem;color:var(--accent-deep);
  margin:12px 0 5px}
.fname{flex:none;align-self:center;margin-inline-start:8px;padding:6px 11px;
  border:1px solid var(--b2);border-radius:99px;background:var(--raised);
  color:var(--t2);font:inherit;font-size:.75rem;cursor:pointer}
.falias{display:block;color:var(--accent-deep);font-size:.75rem;margin-block-start:2px}
.frow{display:block;inline-size:100%;text-align:start;padding:11px 12px;margin-block-end:7px;
  border:1px solid var(--b1);border-radius:10px;background:var(--surface);cursor:pointer;
  font-family:inherit}
.fnew{inline-size:100%;margin-block-start:8px;padding:13px;border:1px dashed var(--b2);
  border-radius:11px;background:none;color:var(--accent-deep);font-family:'Heebo';
  font-weight:700;font-size:.9375rem;cursor:pointer}
.uchips{display:flex;gap:7px;flex-wrap:wrap;margin-block-end:14px}
.uchip{padding:9px 15px;border:1px solid var(--b2);border-radius:99px;background:var(--raised);
  color:var(--t2);font-family:'Heebo';font-weight:600;font-size:.9375rem;cursor:pointer}
.uchip.on{background:var(--accent-deep);border-color:var(--accent-deep);color:#fff}
.qbig{inline-size:100%;padding:14px;border:2px solid var(--accent);border-radius:12px;
  background:var(--raised);color:var(--t1);font-family:'Heebo';font-weight:800;
  font-size:1.375rem;text-align:center;direction:ltr}
.qout{margin-block-start:14px;padding:13px;border-radius:11px;background:var(--sunken);text-align:center}
.qask{margin-block-start:14px;padding:13px 14px;border-radius:11px;background:var(--sunken);
  border:1px solid var(--b2)}
.qask b{display:block;color:var(--t1);font-size:.9375rem;margin-block-end:4px}
.qask span{display:block;color:var(--t2);font-size:.8125rem;line-height:1.6}
.qaskbtn{margin-block-start:10px;padding:9px 16px;border:1px solid var(--accent-deep);
  border-radius:99px;background:var(--raised);color:var(--accent-deep);font:inherit;
  font-size:.875rem;cursor:pointer}
.qgram{font-family:'Heebo';font-weight:700;color:var(--t1)}
.qmac{color:var(--t2);font-size:.875rem;margin-block-start:4px;line-height:1.6}
.tipbox{padding:14px 16px;margin-block-start:12px;border-radius:12px;background:var(--sunken)}
.tipbox b{display:block;font-family:'Heebo';font-weight:700;font-size:.9375rem;color:var(--t1)}
.tip{display:block;color:var(--t2);font-size:.9375rem;line-height:1.6;margin-block-start:5px;
  padding-inline-start:14px;position:relative}
.tip::before{content:'';position:absolute;inset-inline-start:0;inset-block-start:.62em;
  inline-size:5px;block-size:5px;border-radius:99px;background:var(--accent)}
.poseguide{inline-size:100%;border-radius:11px;margin-block-start:12px;display:block;
  border:1px solid var(--b1)}
.measureimg{inline-size:100%;max-inline-size:190px;block-size:auto;margin-block:10px}
.poseempty{color:var(--t3);font-size:.75rem}
.poseacts{display:flex;gap:5px;margin-block-start:8px}
.posebtn.sec{background:var(--sunken);color:var(--accent-deep)}
.posegrid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-block-start:14px}
@media(max-width:420px){.posegrid{grid-template-columns:repeat(2,1fr)}}
.posecard{padding:11px 8px;border:1px solid var(--b1);border-radius:13px;background:var(--surface);
  text-align:center;display:flex;flex-direction:column;align-items:center}
.posecard.has{border-color:var(--accent);background:var(--wash)}
.posefr{position:relative;inline-size:100%;aspect-ratio:3/4;border-radius:9px;overflow:hidden;
  background:var(--sunken);display:grid;place-items:center;color:var(--t3)}
.posecard.has .posefr{color:rgba(255,255,255,.85)}
.poseart{block-size:78%;position:relative;z-index:2}
.posethumb{position:absolute;inset:0;inline-size:100%;block-size:100%;object-fit:cover;
  filter:blur(9px);z-index:1}
.poselb{display:block;font-family:'Heebo';font-weight:700;font-size:.8125rem;color:var(--t1);
  margin-block-end:6px;line-height:1.3;min-block-size:2.6em}
.posehow{display:block;color:var(--t3);font-size:.75rem;line-height:1.45;margin-block-start:3px}
.poseok{display:block;color:var(--good);font-size:.75rem;font-weight:600;margin-block-start:4px}
.posebtn{min-block-size:44px;margin-block-start:0;inline-size:100%;padding:8px 3px;border:none;border-radius:8px;
  background:var(--accent-deep);color:#fff;font-family:'Heebo';font-weight:700;
  font-size:.8125rem;cursor:pointer;
  /* "מהגלריה" was wider than its own box and spilled out of the grey pill */
  min-inline-size:0;overflow-wrap:anywhere;line-height:1.25}
.avbox{margin-block-start:18px;padding:14px 16px;border:1px solid var(--b1);border-radius:12px;
  background:var(--surface)}
.avbox b{display:block;font-family:'Heebo';font-weight:700;color:var(--t1);font-size:.9375rem}
.avsub{display:block;color:var(--t3);font-size:.8125rem;margin-block-start:2px}
.avrow{display:flex;align-items:center;gap:14px;margin-block-start:12px}
.avring{inline-size:62px;block-size:62px;flex:none;border-radius:99px;overflow:hidden;
  background:var(--sunken);border:2px solid var(--b2);display:grid;place-items:center}
.avimg{inline-size:100%;block-size:100%;object-fit:cover}
.avph{font-family:'Heebo';font-weight:800;font-size:1.375rem;color:var(--t3)}
.tapebox{margin-block-start:20px;padding:16px;border:1px solid var(--b1);border-radius:13px;
  background:var(--surface);text-align:center}
.tapebox b{display:block;font-family:'Heebo';font-weight:700;color:var(--t1)}
.tapeart{inline-size:100%;max-inline-size:210px;block-size:auto;margin-block:12px;color:var(--t3)}
.tapebox span{display:block;color:var(--t2);font-size:.9375rem;line-height:1.6;text-align:start}
@media(max-width:400px){.posehow{display:none}}
.hidewhile{display:none !important}
.wel{font-size:1.3125rem;line-height:1.2}
.welsub{color:var(--t2);margin:7px 0 18px;line-height:1.6}
/* the folded welcome screen: one quiet line, never a wall */
.startmini{display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:9px 14px;border-radius:11px;background:var(--sunken);color:var(--t3);
  font-size:.875rem;margin-block-end:14px}
.startlnk{background:none;border:none;padding:6px 2px;min-height:34px;color:var(--accent-deep);
  font-family:inherit;font-weight:700;font-size:.875rem;cursor:pointer}
.startlnk:hover{text-decoration:underline}
.stpm{display:block;color:var(--t3);font-size:.875rem;margin-block-start:3px}
.gate{margin:16px 0;padding:15px 17px;border-radius:13px;background:var(--sunken);
  border:1px dashed var(--b2)}
.gate.open{background:var(--wash);border-style:solid;
  border-color:color-mix(in srgb,var(--accent) 32%,transparent)}
.gate b{display:block;font-family:'Heebo';font-weight:700;font-size:.9375rem;color:var(--t2)}
.gate.open b{color:var(--accent-deep)}
.gate span{display:block;color:var(--t3);font-size:.9375rem;line-height:1.6;margin-block-start:4px}
.gchips{display:flex;gap:7px;flex-wrap:wrap;margin-block-start:11px}
.gchip{padding:6px 12px;border-radius:99px;background:var(--raised);border:1px solid var(--b1);
  color:var(--t3);font-family:'Heebo';font-weight:600;font-size:.8125rem}
.gchip.ok{background:#E3F2EC;border-color:#BFDDD0;color:var(--good)}
.stp{display:flex;gap:12px;padding-block:13px;border-block-end:1px solid var(--b1)}
.stp:last-of-type{border-block-end:none}
.stp.quiet{opacity:.6}
.stpn{inline-size:28px;block-size:28px;flex:none;border-radius:99px;background:var(--accent);
  color:#fff;font-family:'Heebo';font-weight:800;font-size:.9375rem;
  display:grid;place-items:center;margin-block-start:2px}
.stpn.ok{background:var(--good)}
.stp.quiet .stpn{background:var(--b2);color:var(--t3)}
.stpt{min-inline-size:0}
.stpt b{display:block;font-family:'Heebo';font-weight:700;font-size:.9375rem;color:var(--t1)}
.stpt span{display:block;color:var(--t2);font-size:.875rem;line-height:1.6;margin-block-start:2px}
.stpb{margin-block-start:8px;padding:8px 14px;border:none;border-radius:99px;
  background:var(--accent-deep);color:#fff;font-family:'Heebo';font-weight:700;
  font-size:.9375rem;cursor:pointer}
.sechead{display:flex;align-items:center;justify-content:space-between;gap:12px;inline-size:100%;
  padding:14px 20px;background:var(--sunken);border:none;border-block-end:1px solid var(--b1);
  cursor:pointer;text-align:start;font-family:inherit}
.sechl{display:flex;align-items:baseline;gap:10px;min-inline-size:0}
.sechead b{font-family:'Heebo';font-weight:700;font-size:.9375rem;color:var(--t1)}
.secprog{font-family:'Heebo';font-weight:600;font-size:.875rem;color:var(--t3);
  font-variant-numeric:tabular-nums;flex:none}
.chev{color:var(--t3);font-size:1.5rem;line-height:1;transform:rotate(-90deg);
  transition:transform .16s;flex:none}
.sechead.open .chev{transform:rotate(90deg)}
.les.sub{padding-inline-start:44px;background:var(--surface)}
.les.sub b{font-weight:400;font-size:1rem;color:var(--t2)}
.lestick{inline-size:20px;flex:none;color:var(--accent-deep);font-weight:800;
  font-size:1.0625rem;text-align:center}
.les.seen .lestick{color:var(--good)}
.lestx{min-inline-size:0}
.secttl{padding:16px 20px 6px;font-family:'Heebo';font-weight:700;font-size:1rem;color:var(--t3);background:var(--sunken)}

.stepline{margin-block-start:12px;font-family:Heebo;font-weight:800;font-size:1.125rem}
.stepline small{font-weight:600;font-size:.8125rem;color:var(--t3)}
/* the quick daily entry: wide enough to tap, tight enough to see at once */
/* what is still missing today, named. It is a nudge and not an alarm, so it
   borrows the brand wash rather than a warning colour, and it goes away by
   itself the moment the day is filled in. */
.cyc{margin:10px 0 16px}
.cych{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin-block-end:7px}
.cych b{font-family:'Heebo';font-weight:700;font-size:.9375rem;color:var(--t1)}
.cych span{font-size:.8125rem;color:var(--t3)}
.cycdays{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(64px,1fr);gap:5px;
  overflow-x:auto;padding-block-end:3px;-webkit-overflow-scrolling:touch}
.cycday{border:1px solid var(--b1);border-radius:10px;padding:7px 5px;text-align:center;
  background:var(--surface)}
.cycday.a{background:var(--wash);border-color:#F0C8DF}
.cycday.b{background:var(--sunken)}
.cycday.now{outline:2px solid var(--accent-deep);outline-offset:-2px}
.cycdow{font-family:'Heebo';font-weight:700;font-size:.75rem;color:var(--t2)}
.cycdate{font-size:.6875rem;color:var(--t3);margin-block-start:1px}
.cycname{font-family:'Heebo';font-weight:700;font-size:.6875rem;color:var(--t1);
  margin-block-start:4px;line-height:1.25;overflow-wrap:anywhere}
.cyckcal{font-size:.625rem;color:var(--t3);margin-block-start:2px}
.cycnote{margin:7px 0 0;font-size:.8125rem;color:var(--t3);line-height:1.5}
.datestrip{display:flex;gap:6px;overflow-x:auto;-webkit-overflow-scrolling:touch;
  padding-block-end:4px;margin-block-end:6px}
.dchip{flex:0 0 auto;min-inline-size:58px;padding:6px 9px;border:1px solid var(--b2);
  border-radius:10px;background:var(--surface);color:var(--t2);font-family:inherit;
  cursor:pointer;text-align:center;position:relative}
.dchip.on{border-color:var(--accent-deep);background:var(--wash);color:var(--accent-ink)}
.dchipd{display:block;font-family:'Heebo';font-weight:700;font-size:.8125rem}
.dchipn{display:block;font-size:.6875rem;color:var(--t3);margin-block-start:1px}
.dchip.has::after{content:'';position:absolute;inset-block-end:3px;inset-inline-start:50%;
  transform:translateX(50%);inline-size:4px;block-size:4px;border-radius:50%;
  background:var(--accent-deep)}
.datehint{margin:0 0 10px;font-size:.75rem;color:var(--t3);line-height:1.5}
.backonly{display:flex;align-items:center;gap:8px;font-size:.875rem;color:var(--t2);
  margin-block-end:9px}
.backtw{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--b1);
  border-radius:10px}
.backtab{border-collapse:collapse;inline-size:100%;min-inline-size:max-content}
.backtab th{position:sticky;inset-block-start:0;background:var(--sunken);padding:7px 9px;
  font-family:'Heebo';font-weight:700;font-size:.75rem;color:var(--t2);white-space:nowrap;
  border-block-end:1px solid var(--b1)}
.backtab th .bunit{font-weight:400;font-size:.625rem;color:var(--t3)}
.backtab td{padding:4px 6px;border-block-end:1px solid var(--b1);vertical-align:middle}
.backtab tr.bnow td{background:var(--wash)}
.backtab td.bdate,.backtab th.bdate{position:sticky;inset-inline-start:0;background:var(--surface);
  z-index:1;padding:6px 9px;white-space:nowrap;border-inline-end:1px solid var(--b1)}
.backtab tr.bnow td.bdate{background:var(--wash)}
.bdow{font-family:'Heebo';font-weight:700;font-size:.8125rem;color:var(--t1)}
.bday{font-size:.6875rem;color:var(--t3)}
.bin{inline-size:76px;padding:6px 7px;border:1px solid var(--b2);border-radius:7px;
  background:var(--surface);color:var(--t1);font-family:'Heebo';font-size:.9375rem;
  text-align:center}
.bin:focus{outline:none;border-color:var(--accent-deep)}
.backtab td.bsaved{background:rgba(46,160,67,.16);transition:background .25s}
.backtab td.bfail .bin{border-color:#c0392b}
.bnone{padding:14px;text-align:center;color:var(--t3);font-size:.875rem}
.mealsum{display:flex;flex-wrap:wrap;gap:4px 14px;padding:5px 0 7px;
  border-block-end:1px solid var(--b1);margin-block-end:4px}
.msc{display:flex;align-items:baseline;gap:5px}
.mscl{font-size:.6875rem;color:var(--t3)}
.mscv{font-family:'Heebo';font-weight:700;font-size:.8125rem;color:var(--t2);
  font-variant-numeric:tabular-nums}
.foodnote{border:1px solid var(--b1);background:var(--sunken);border-radius:12px;
  padding:12px 14px;margin-block-end:12px}
.foodnote b{display:block;font-family:'Heebo';font-weight:700;font-size:.9375rem;
  color:var(--t1);margin-block-end:4px}
.foodnote p{margin:0 0 9px;font-size:.875rem;line-height:1.6;color:var(--t2)}
.fnotex{background:none;border:none;color:var(--t3);font-family:inherit;
  font-size:.8125rem;cursor:pointer;padding:0;text-decoration:underline}
.helprow{display:grid;gap:8px}
.helpbtn{display:block;inline-size:100%;text-align:start;padding:12px 14px;border-radius:12px;
  border:1px solid var(--b1);background:var(--surface);color:var(--t1);font-family:inherit;
  cursor:pointer;text-decoration:none}
.helpbtn:hover{border-color:var(--accent-deep)}
.helpbtn b{display:block;font-family:'Heebo';font-weight:700;font-size:.9375rem}
.helpbtn span{display:block;color:var(--t3);font-size:.8125rem;margin-block-start:2px;line-height:1.45}
.qmiss{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:11px 13px;
  border-radius:12px;background:var(--wash);border:1px solid #F0C8DF;margin-block-start:10px}
.qmiss .qmt{flex:1 1 190px;color:var(--t1);font-size:.9375rem;line-height:1.5}
.qmiss .qmt b{font-weight:700}
.qmiss button{border:none;border-radius:9px;background:var(--accent-deep);color:#fff;
  font-family:inherit;font-weight:700;font-size:.875rem;padding:9px 14px;min-height:40px;
  cursor:pointer}
.qdone{margin-block-start:10px;color:var(--t3);font-size:.875rem}
.qgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(126px,1fr));gap:8px;margin-block-start:10px}
.qcell{display:flex;align-items:center;gap:6px;padding:9px 11px;border:1px solid var(--b1);
  border-radius:12px;background:var(--surface);transition:border-color .18s,background .18s}
.qcell.saved{border-color:var(--good);background:var(--good-w)}
.qlab{font-family:Heebo;font-weight:700;font-size:.8125rem;color:var(--t3);white-space:nowrap}
.qin{flex:1;min-inline-size:0;inline-size:100%;border:none;background:none;outline:none;
  font-family:inherit;font-size:1.0625rem;font-weight:700;color:var(--t1);text-align:end;padding:0}
.qin:disabled{color:var(--t3)}
.qunit{font-size:.75rem;color:var(--t3);white-space:nowrap}
.sendgap{margin-block-start:16px;padding:10px 12px;border-radius:10px;
  background:var(--warn-w,#FFF6E6);color:var(--warn,#8A6100);font-size:.875rem;line-height:1.55}
/* tabbar */
.tabbar{position:fixed;inset-inline:0;inset-block-end:0;z-index:40;display:grid;grid-template-columns:repeat(8,1fr);
  border-block-start:1px solid var(--b1);background:var(--raised);padding-block-end:env(safe-area-inset-bottom)}
.tb{padding:9px 0 11px;text-align:center;font-size:.625rem;font-weight:600;color:var(--t3);min-height:60px;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;cursor:pointer;
  background:none;border:none;min-width:0;overflow:hidden;line-height:1.2}
.tb svg{flex:0 0 auto}
.tb.on{color:var(--accent-deep)}
.tb svg{width:24px;height:24px;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
.pg{display:none}.pg.on{display:block}
/* the app is a phone app. on a laptop it stays a column, centred, not stretched. */
#app{max-inline-size:560px;margin-inline:auto;background:var(--ground);min-block-size:100vh;
  box-shadow:0 0 0 1px var(--b1)}
@media(min-width:600px){
  body{background:var(--sunken)}
  .tabbar{max-inline-size:560px;margin-inline:auto;inset-inline:0;
    border-inline:1px solid var(--b1)}
}
.toast{position:fixed;inset-block-end:calc(84px + env(safe-area-inset-bottom));inset-inline:20px;z-index:70;
  background:var(--raised);border:1px solid var(--b1);border-radius:var(--r);padding:13px 16px;
  font-size:1rem;color:var(--t1);box-shadow:0 4px 12px -2px rgba(25,19,23,.15);display:none}
.toast.on{display:block}

/* ---------- narrow phones ----------
   seven tabs on a 360px screen leave 51px each, and several rows were laid out
   with fixed pixel columns that overflow before they wrap. */
@media(max-width:430px){
  .tb{font-size:.625rem;padding:7px 0 9px;gap:3px;min-height:56px}
  .tb svg{width:21px;height:21px}
  .blk{padding:13px 14px}
  /* a full-bleed row inside a narrower block was 6px wider than the screen */
  /* the day-type strip bleeds to the card edge, and on a narrow phone the
     bleed was wider than the card, so its right edge was cut off */
  .schh{margin-inline:-14px}
  #frame .schh{margin-inline:-14px !important;max-inline-size:calc(100% + 28px);box-sizing:border-box}
  .hd{padding:14px 14px 10px}
  .di{grid-template-columns:48px 58px 1fr;gap:8px}
  .wrow{grid-template-columns:20px 1fr 1fr;gap:7px;padding:9px}
  .wok{grid-column:1/-1;inline-size:100%;margin-block-start:6px}
  .wstats{gap:8px}
  .wsv{font-size:1.0625rem}
  .fitem{gap:8px;padding:10px 12px}
  .fikc{font-size:.9375rem}
  .sdrow{grid-template-columns:44px 1fr;gap:9px}
  .posegrid{grid-template-columns:repeat(2,1fr)}
  .suptime{gap:8px}
  .stw{inline-size:78px;font-size:.8125rem}
  .uchip{padding:8px 12px;font-size:.875rem}
  .attbtn{padding:8px 11px;font-size:.875rem}
  .qbig{font-size:1.5rem;padding:12px}
}
/* Nothing may push the page sideways. This used to include #app, and because
   it comes last it quietly cancelled the 560px column: on a laptop the app was
   filling the whole window, which is the opposite of what it is. */
.blk,.pg{max-inline-size:100%}
.blk *{min-inline-size:0}
img,video,iframe{max-inline-size:100%}
table{max-inline-size:100%}
.schi,.fitem,.wrow,.di,.suptime{overflow-wrap:anywhere}
.daytext{white-space:pre-wrap;line-height:1.75;color:var(--t1);font-size:1rem;padding:2px 0}

.hg{padding:4px 20px 12px}
.hgintro{color:var(--t2);line-height:1.6;margin:0 0 14px}
.hgrow{display:flex;gap:12px;align-items:flex-start;padding:12px 0;border-block-end:1px solid var(--b1)}
.hgic{font-size:1.75rem;line-height:1;inline-size:36px;text-align:center}
.hgtx{flex:1;min-inline-size:0}
.hgh{display:flex;gap:8px;align-items:baseline;margin-block-end:3px}
.hgw{font-size:.875rem;color:var(--t3);font-weight:600}
.hgd{line-height:1.6;color:var(--t1);margin:0 0 8px}
.hgex{margin:6px 0 2px;display:flex;flex-direction:column;gap:3px}
.hgexr{display:flex;justify-content:space-between;gap:10px;font-size:.9375rem;padding:5px 10px;background:var(--bg,#f6f2f4);border-radius:8px}
.hgexf{color:var(--t1)}
.hgexg{font-weight:700;white-space:nowrap;color:var(--t1)}
.hgsub{margin:16px 0 6px}
.hglink{display:block;inline-size:100%;text-align:start;background:none;border:1px dashed var(--b2);border-radius:12px;
  padding:10px 14px;margin:0 0 12px;font:inherit;color:var(--t1);cursor:pointer}

.updbtn{margin-inline-start:auto;background:var(--wash,#fff5fa);
  border:1px solid color-mix(in srgb, var(--accent,#fc53ae) 45%, transparent);border-radius:99px;
  padding:6px 13px;font:inherit;font-size:.875rem;font-weight:700;color:var(--accent-deep,#b3186d);
  cursor:pointer;white-space:nowrap}
.updbtn:active{background:var(--accent,#fc53ae);color:#fff}
.updbar{position:fixed;inset-inline:12px;inset-block-start:calc(env(safe-area-inset-top, 0px) + 10px);z-index:9999;
  display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px;border-radius:14px;
  background:#1d1a1c;color:#fff;box-shadow:0 6px 24px rgba(0,0,0,.18);font-size:.9375rem}
.updbar button{background:#fc53ae;color:#fff;border:0;border-radius:99px;padding:7px 14px;font:inherit;font-weight:700;cursor:pointer}
