/* ---------- Lexend (variable 100-900, latin) — embedded for full offline use ---------- */
@font-face{font-family:'Lexend';font-style:normal;font-weight:100 900;font-display:swap;src:url(data:font/woff2;base64,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) format('woff2-variations')}
/* ---------- Tokens ---------- */
:root{
  --bg:#ffffff; --bg2:#f7f7f5; --elev:#ffffff; --hover:#f1f1ef; --active:#eae9e6;
  --ink:#37352f; --ink2:#787670; --ink3:#9f9e9a;
  --border:#e9e9e7; --border2:#d9d8d5;
  --accent:#2383e2; --accent-ink:#ffffff; --accent-soft:#e8f1fb;
  --red:#d44c47; --red-soft:#fbecec;
  --amber:#b7791f; --amber-soft:#faf3dd;
  --green:#448361; --green-soft:#e8f0eb;
  --shadow:0 14px 36px rgba(15,15,15,.14), 0 2px 8px rgba(15,15,15,.06);
  --r:10px;
}
[data-theme="dark"]{
  --bg:#191919; --bg2:#202020; --elev:#262626; --hover:#272727; --active:#303030;
  --ink:#d6d6d3; --ink2:#9d9c98; --ink3:#6f6e6a;
  --border:#2c2c2c; --border2:#3d3d3d;
  --accent:#5b9fd6; --accent-ink:#10222f; --accent-soft:#1d2c3a;
  --red:#e06663; --red-soft:#3a2423;
  --amber:#d3a04d; --amber-soft:#38301c;
  --green:#61a184; --green-soft:#1e2f27;
  --shadow:0 16px 40px rgba(0,0,0,.55);
}

/* ---------- Base ---------- */
*{box-sizing:border-box;margin:0;padding:0}
/* The `hidden` attribute must always win. A class rule like .grid2{display:grid}
   outranks the UA sheet's [hidden]{display:none}, which silently un-hid
   .ev-timed / .ev-allday and the count badges. One rule, whole bug class gone. */
[hidden]{display:none!important}
/* v4.1 — the app shell is pinned to the viewport and the DOCUMENT never
   scrolls; only #main does. Previously html was sized by `height:100%`
   (resolved against the INITIAL containing block) while body used
   `100dvh` (the DYNAMIC viewport). On Android those two are not the same
   number, so body could end up taller than html — the document became
   scrollable, which pushed the tab bar below the fold and let the sticky
   topbar scroll away. `max-height:100%` clamps dvh to the real viewport and
   `overflow:hidden` makes document scrolling impossible either way. */
html{height:100%;overflow:hidden}
body{
  height:100%;            /* fallback + hard clamp for the line below */
  height:100dvh;          /* preferred: tracks the dynamic viewport */
  max-height:100%;        /* dvh can never exceed the real viewport */
  overflow:hidden;
  display:flex;
  font:15px/1.5 'Lexend',-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  background:var(--bg); color:var(--ink);
  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
  overscroll-behavior:none;
}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;-webkit-tap-highlight-color:transparent}
input,select,textarea{font:inherit;color:inherit}
svg{display:block;flex-shrink:0}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
}

/* ---------- App layout ---------- */
#app{display:flex;flex-direction:column;flex:1;min-width:0;min-height:0}
/* v4.1 — overscroll-behavior MUST live on the element that actually scrolls.
   #main is the scroller, so its overscroll used to chain up to the viewport
   and trigger Chrome's pull-to-refresh; the rule on body never applied
   because body isn't a scroll container. `contain` keeps the local rubber-band
   but stops the chain, so a stray downward swipe in the installed PWA no
   longer reloads the whole app. */
main{flex:1;min-height:0;overflow-y:auto;overscroll-behavior-y:contain;
  -webkit-overflow-scrolling:touch;display:flex;flex-direction:column}
#view{width:100%;max-width:840px;margin:0 auto;padding:10px 16px 140px;flex:1}

/* Topbar */
#topbar{
  position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:4px;
  padding:calc(10px + env(safe-area-inset-top)) 12px 10px 16px;
  background:color-mix(in srgb, var(--bg) 86%, transparent);
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  border-bottom:1px solid var(--border);
}
#topbar h1{font-size:17px;font-weight:700;flex:1;display:flex;align-items:center;gap:8px;min-width:0}
#topbar h1 .tx{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.brand .bmark{width:27px;height:27px;border-radius:8px;background:var(--accent);color:var(--accent-ink);display:grid;place-items:center}
.brand .bmark svg{width:14px;height:14px}
.brandwrap{display:inline-flex;flex-direction:column;line-height:1;gap:1px}
.brandsub{font-size:9px;font-weight:500;color:var(--ink3);letter-spacing:.01em;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
.cheader .brandwrap{gap:2px}
.cheader .brandsub{font-size:11px}
.vtag{font-size:10.5px;font-weight:600;color:var(--ink3);background:var(--bg2);border:1px solid var(--border);border-radius:5px;padding:1.5px 5px;flex-shrink:0;letter-spacing:.02em}
.brand .tx{font-family:'Lexend',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-weight:600;font-size:16px;letter-spacing:.01em}

/* Storage banner + (v4.6.4) the paused-backup banner — same quiet amber bar */
#storageBanner,#driveBanner{
  display:flex;gap:10px;align-items:flex-start;max-width:840px;width:calc(100% - 32px);
  margin:10px auto -2px;padding:10px 12px;border-radius:10px;
  background:var(--amber-soft);color:var(--amber);font-size:13px;line-height:1.45;
}
#storageBanner b,#driveBanner b{font-weight:650}
#storageBanner button,#driveBanner button[data-action="dismiss-drive-banner"]{margin-left:auto;color:inherit;opacity:.75;padding:2px}
#driveBanner .btn{margin-left:auto;flex-shrink:0;padding:5px 11px;font-size:12.5px}
#driveBanner .btn+button{margin-left:0}
#storageBanner[hidden],#driveBanner[hidden]{display:none}

/* Tab bar (mobile) */
#tabbar{
  display:flex;border-top:1px solid var(--border);background:var(--bg);
  padding-bottom:env(safe-area-inset-bottom);z-index:25;
  flex-shrink:0;   /* v4.1: never let a tall view squeeze the tab bar away */
}
#tabbar button{
  flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;
  padding:8px 0 7px;font-size:10px;font-weight:550;color:var(--ink3);position:relative;
}
#tabbar button.active{color:var(--accent)}
#tabbar .badge{
  position:absolute;top:3px;left:calc(50% + 6px);min-width:16px;height:16px;padding:0 4px;
  border-radius:8px;background:var(--red);color:#fff;font-size:10px;font-weight:700;
  display:grid;place-items:center;line-height:1;
}

/* Sidebar (desktop) */
#sidebar{display:none}

/* FAB */
#fab{
  position:fixed;right:16px;bottom:calc(66px + env(safe-area-inset-bottom) + 14px);
  width:52px;height:52px;border-radius:16px;z-index:30;
  background:var(--accent);color:var(--accent-ink);
  display:grid;place-items:center;box-shadow:var(--shadow);
  transition:transform .12s ease;
}
#fab:active{transform:scale(.94)}
#fab[hidden]{display:none}

/* ---------- Rows ---------- */
.row{display:flex;gap:11px;align-items:flex-start;padding:11px 12px;border-radius:9px;cursor:pointer;position:relative}
.row:hover{background:var(--hover)}
.row + .row{margin-top:2px}
.row-main{flex:1;min-width:0}
.row-title{font-weight:520;word-wrap:break-word}
.row-sub{color:var(--ink2);font-size:13px;margin-top:1px;word-wrap:break-word}
.row-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:5px;align-items:center}
.row.done .row-title{color:var(--ink3);text-decoration:line-through;text-decoration-thickness:1px}
.row.done .row-sub{color:var(--ink3)}
.row-actions{display:flex;gap:2px;align-items:center;margin-top:-1px}
.row>svg{color:var(--ink3);width:16px;height:16px;margin-top:4px}

.check{
  width:24px;height:24px;border:1.5px solid var(--border2);border-radius:7px;
  display:grid;place-items:center;margin-top:1px;color:transparent;
  transition:background .12s,border-color .12s;
}
.check:hover{border-color:var(--ink3)}
.check.on{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
.check svg{width:14px;height:14px}

.avatar{
  width:34px;height:34px;border-radius:50%;display:grid;place-items:center;
  font-size:12.5px;font-weight:650;color:#fff;letter-spacing:.02em;flex-shrink:0;
}
.row.done .avatar{opacity:.45}

/* ---------- Chips ---------- */
.chip{
  display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:500;
  padding:1.5px 7px;border-radius:5px;background:var(--bg2);color:var(--ink2);
  border:1px solid var(--border);white-space:nowrap;max-width:100%;
}
.chip svg{width:11px;height:11px}
.chip.red{background:var(--red-soft);color:var(--red);border-color:transparent}
.chip.amber{background:var(--amber-soft);color:var(--amber);border-color:transparent}
.chip.blue{background:var(--accent-soft);color:var(--accent);border-color:transparent}
.chip.green{background:var(--green-soft);color:var(--green);border-color:transparent}
.chip.plain{background:transparent;border-color:transparent;padding-left:0;padding-right:0}
.chip .ctrunc{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:110px}
.dot{width:8px;height:8px;border-radius:3px;flex-shrink:0}

/* ---------- Sections ---------- */
.sec{margin:22px 2px 6px;display:flex;align-items:baseline;gap:8px}
.sec:first-child{margin-top:10px}
.sec h3{font-size:11.5px;font-weight:650;letter-spacing:.06em;text-transform:uppercase;color:var(--ink3)}
.sec h3.red{color:var(--red)}
.sec .count{font-size:11.5px;color:var(--ink3);font-weight:550}
.sec .add{margin-left:auto;font-size:12.5px;font-weight:550;color:var(--ink3);display:inline-flex;gap:4px;align-items:center;padding:2px 6px;border-radius:6px}
.sec .add:hover{background:var(--hover);color:var(--ink2)}
.sec .add svg{width:13px;height:13px}
.more{font-size:13px;color:var(--ink3);padding:7px 12px}
.today-date{font-size:13px;color:var(--ink3);margin:6px 2px 10px;font-weight:500}

.stats{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 4px}
.stat{font-size:13px;padding:6px 12px;border-radius:999px;background:var(--bg2);border:1px solid var(--border);color:var(--ink2)}
.stat b{color:var(--ink);font-weight:650}
.stat.red{background:var(--red-soft);border-color:transparent;color:var(--red)}
.stat.red b{color:var(--red)}

/* ---------- Buttons ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:7px;
  padding:8px 14px;border-radius:8px;font-size:14px;font-weight:550;
  border:1px solid var(--border2);background:var(--elev);
}
.btn:hover{background:var(--hover)}
.btn:active{transform:translateY(1px)}
.btn[disabled]{opacity:.45;cursor:not-allowed;pointer-events:none}
.btn svg{width:15px;height:15px}
.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
.btn.primary:hover{filter:brightness(1.05)}
.btn.danger{color:var(--red)}
.btn.ghost{border-color:transparent;background:transparent;color:var(--ink2)}
.btn.ghost:hover{background:var(--hover)}
.icon-btn{width:34px;height:34px;display:grid;place-items:center;border-radius:8px;color:var(--ink3)}
.icon-btn:hover{background:var(--hover);color:var(--ink2)}
.icon-btn.ok:hover{background:var(--green-soft);color:var(--green)}
.icon-btn.danger:hover{background:var(--red-soft);color:var(--red)}
.icon-btn svg{width:17px;height:17px}
.btnrow{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}

/* ---------- Segmented ---------- */
.seg{display:inline-flex;background:var(--bg2);border:1px solid var(--border);border-radius:9px;padding:2px;gap:2px;max-width:100%}
.seg>button,.seg>label>span{
  display:inline-flex;align-items:center;justify-content:center;padding:5.5px 11px;border-radius:7px;
  font-size:13.5px;font-weight:520;color:var(--ink2);white-space:nowrap;cursor:pointer;
}
.seg>button.on,.seg>label:has(input:checked)>span{
  background:var(--elev);color:var(--ink);box-shadow:0 1px 2px rgba(0,0,0,.1);
}
.seg>label{position:relative}
.seg input{position:absolute;opacity:0;pointer-events:none}

/* ---------- Toolbar ---------- */
.toolbar{display:flex;flex-direction:column;gap:10px;margin:6px 0 14px}
.toolrow{display:flex;gap:8px}
.toolrow select{flex-shrink:0;max-width:46%}
.searchwrap{position:relative;flex:1;min-width:0}
.searchwrap svg{position:absolute;left:10px;top:50%;transform:translateY(-50%);width:15px;height:15px;color:var(--ink3);pointer-events:none}
.searchwrap input{padding-left:32px}

/* ---------- Inputs ---------- */
.input{
  width:100%;padding:9px 11px;border:1px solid var(--border2);border-radius:8px;
  background:var(--bg);font-size:16px;color:var(--ink);appearance:none;-webkit-appearance:none;
}
.input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
.input::placeholder{color:var(--ink3)}
textarea.input{resize:vertical;min-height:70px;line-height:1.45}
select.input{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 10px center;padding-right:30px;
}
input[type="date"].input{min-height:41px}
.slim{padding-top:7px;padding-bottom:7px}

/* ---------- Contact picker (smart who field) ---------- */
.cpick{position:relative}
.cpick input{padding-right:34px}
.cpick-link{position:absolute;right:10px;top:12px;color:var(--accent);pointer-events:none}
.cpick-link.off{display:none}
.cpick-link svg{width:16px;height:16px}
.cpick-list{
  position:absolute;left:0;right:0;top:calc(100% + 4px);z-index:70;
  background:var(--elev);border:1px solid var(--border2);border-radius:10px;
  box-shadow:var(--shadow);max-height:198px;overflow-y:auto;padding:4px;
}
.cpick-item{display:flex;gap:9px;align-items:center;width:100%;padding:7px 9px;border-radius:7px;text-align:left;font-size:14px}
.cpick-item:hover{background:var(--hover)}
.cpick-item .avatar{width:24px;height:24px;font-size:10px}
.cpick-item small{color:var(--ink3);font-size:12px;margin-left:auto;flex-shrink:0;padding-left:8px}
.cpick-item.create{color:var(--accent);font-weight:550}
.cpick-item.create svg{width:15px;height:15px}
.cpick-hint{font-size:12px;color:var(--ink3);margin-top:5px}

/* ---------- Chain & timeline ---------- */
.chain,.timeline{display:flex;flex-direction:column;position:relative;margin-top:2px}
.chain-step,.tl-item{display:flex;gap:10px;align-items:flex-start;padding:7px 8px 7px 2px;border-radius:8px;text-align:left;position:relative;width:100%}
button.chain-step:hover,button.tl-item:hover{background:var(--hover)}
.chain-step.cur,.chain-step.cur:hover{background:var(--accent-soft);cursor:default}
.cdot{
  width:20px;height:20px;border-radius:50%;border:1.5px solid var(--border2);
  display:grid;place-items:center;color:transparent;flex-shrink:0;background:var(--bg);z-index:1;margin-top:1px;
}
.cdot svg{width:11px;height:11px}
.chain-step.done .cdot,.tl-item.done .cdot{background:var(--green);border-color:var(--green);color:#fff}
.tl-item.open .cdot{border-color:var(--accent)}
.chain-step:not(:last-child)::before,.tl-item:not(:last-child)::before{
  content:'';position:absolute;left:11px;top:26px;bottom:-8px;width:1.5px;background:var(--border);
}
.ctx{flex:1;font-size:13.5px;min-width:0;word-wrap:break-word;line-height:1.4}
.chain-step.done .ctx{color:var(--ink3);text-decoration:line-through}
.tl-item.done .ctx{color:var(--ink2)}
.ckind{font-size:11px;color:var(--ink3);flex-shrink:0;margin-top:2px}
.tl-date{font-size:11.5px;color:var(--ink3);flex-shrink:0;margin-top:2px;white-space:nowrap}
.chip.chain{gap:3px}

/* ---------- Completion sheet ---------- */
.done-hero{width:40px;height:40px;border-radius:12px;background:var(--green-soft);color:var(--green);display:grid;place-items:center;margin-bottom:10px}
.done-hero svg{width:20px;height:20px}
.done-title{font-weight:600;font-size:15.5px;margin:0 0 2px;word-wrap:break-word}
.done-sub{font-size:12.5px;color:var(--ink3);margin:2px 0 0}
.done-q{font-size:13px;color:var(--ink2);margin:14px 0 8px;font-weight:550}

/* ---------- Area cards ---------- */
.pgrid{display:grid;gap:10px;margin-top:8px}
@media(min-width:640px){.pgrid{grid-template-columns:1fr 1fr}}
.pcard{
  display:flex;align-items:center;gap:12px;padding:14px;cursor:pointer;
  border:1px solid var(--border);border-radius:12px;background:var(--elev);
  transition:border-color .12s;
}
.pcard:hover{border-color:var(--border2);background:var(--hover)}
.pcard>svg{color:var(--ink3);width:16px;height:16px}
.pdot{width:13px;height:13px;border-radius:4px;flex-shrink:0;align-self:flex-start;margin-top:4px}
.pmain{flex:1;min-width:0}
.pname{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.psub{font-size:12.5px;color:var(--ink2);margin-top:1px}
.progress{height:4px;border-radius:2px;background:var(--bg2);margin-top:9px;overflow:hidden}
.progress span{display:block;height:100%;border-radius:2px;background:var(--accent)}
.pdesc{color:var(--ink2);font-size:14px;margin:2px 2px 6px;white-space:pre-wrap}

/* ---------- Contact detail ---------- */
.chead{display:flex;gap:14px;align-items:center;padding:8px 2px 2px}
.chead .avatar{width:52px;height:52px;font-size:19px;border-radius:16px}
.chead h2{font-size:19px;font-weight:700;letter-spacing:-.01em;word-wrap:break-word}
.chead .csub{color:var(--ink2);font-size:13.5px;margin-top:1px}
.cinfo{display:flex;flex-direction:column;gap:1px;margin:10px 0 0}
.cinfo a{display:flex;gap:10px;align-items:center;padding:8px 10px;border-radius:8px;color:var(--accent);text-decoration:none;font-size:14.5px;word-break:break-all}
.cinfo a:hover{background:var(--hover)}
.cinfo a svg{width:16px;height:16px;color:var(--ink3);flex-shrink:0}
.tagrow{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}

/* ---------- Cards (data view) ---------- */
.card{border:1px solid var(--border);border-radius:12px;padding:15px;background:var(--elev);margin-bottom:12px}
.card h3{font-size:11.5px;font-weight:650;letter-spacing:.06em;text-transform:uppercase;color:var(--ink3);margin-bottom:9px}
.card p{font-size:13.5px;color:var(--ink2);line-height:1.5}
.statuspill{display:flex;gap:9px;align-items:center;font-size:14px;font-weight:520}
.sdot{width:9px;height:9px;border-radius:50%;background:var(--green);flex-shrink:0}
.sdot.warn{background:var(--amber)}
.kv{font-size:13.5px;color:var(--ink2);margin-top:7px}
/* ---------- v4.6.9: Google Calendar picker ---------- */
.picklist{max-height:46vh;overflow:auto;margin:4px 0 2px;border:1px solid var(--border2);border-radius:10px}
.pickrow{display:flex;gap:10px;align-items:center;padding:9px 11px;cursor:pointer;font-size:14px}
.pickrow+.pickrow{border-top:1px solid var(--border2)}
.pickrow:hover{background:var(--bg2)}
/* inline-block, not the default inline: in .kv (a block) an inline span ignores
   width/height and the colour dot vanishes. As a .pickrow flex child it is fine
   either way. */
.pickdot{display:inline-block;vertical-align:0;width:10px;height:10px;border-radius:3px;flex-shrink:0}
.pickname{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pickname small{color:var(--ink3)}
.pickdef{width:20px;display:grid;place-items:center;flex-shrink:0}
/* ---------- v4.0: storage awareness ---------- */
.bootpane{padding:40px 4px;color:var(--ink3);font-size:14px}
.statuspill.sp-sm{font-size:13px;font-weight:500;margin-top:8px}
.infodot{display:inline-grid;place-items:center;width:15px;height:15px;margin-left:6px;border-radius:50%;
  background:var(--bg2);border:1px solid var(--border2);color:var(--ink3);
  font-size:10px;font-weight:700;font-style:normal;line-height:1;cursor:help;vertical-align:1px}
.infodot:hover,.infodot:focus-visible{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}
.meter{height:6px;border-radius:99px;background:var(--bg2);border:1px solid var(--border);overflow:hidden;margin-top:11px}
.meter[hidden]{display:none}
.meter>span{display:block;height:100%;width:0;background:var(--accent);border-radius:99px;transition:width .35s ease}
.meter.hot>span{background:var(--amber)}
.warnline{margin-top:7px;font-size:13px;line-height:1.45;color:var(--amber)}
.pagehint{display:flex;gap:9px;align-items:flex-start;margin:0 0 14px;padding:10px 12px;border-radius:10px;
  background:var(--amber-soft);color:var(--amber);font-size:13px;line-height:1.5}
.pagehint svg{flex-shrink:0;margin-top:2px}
.pagehint b{font-weight:650}

/* ---------- Empty states ---------- */
.empty{text-align:center;padding:46px 20px;color:var(--ink3)}
.empty .eicon{width:42px;height:42px;margin:0 auto 12px;opacity:.45}
.empty .eicon svg{width:100%;height:100%}
.empty h4{color:var(--ink2);font-size:15px;font-weight:600;margin-bottom:4px}
.empty p{font-size:13.5px;margin-bottom:16px}
.mini-empty{font-size:13.5px;color:var(--ink3);padding:8px 12px}

.welcome{border:1px solid var(--border);border-radius:16px;padding:34px 22px;text-align:center;background:var(--elev);margin-top:14px}
.welcome .mark{width:52px;height:52px;border-radius:15px;background:var(--accent);color:var(--accent-ink);display:grid;place-items:center;margin:0 auto 14px}
.welcome .mark svg{width:26px;height:26px}
.welcome h2{font-family:'Lexend',-apple-system,sans-serif;font-size:19px;font-weight:600;letter-spacing:.01em}
.welcome p{color:var(--ink2);font-size:14px;margin:7px auto 18px;max-width:340px}
.welcome .btnrow{justify-content:center}

/* ---------- Dialog / bottom sheet ---------- */
dialog{
  border:0;padding:0;background:transparent;color:inherit;
  position:fixed;inset:auto 0 0 0;width:100%;max-width:100%;margin:0;max-height:92dvh;
}
dialog::backdrop{background:rgba(15,15,15,.45)}
[data-theme="dark"] dialog::backdrop{background:rgba(0,0,0,.6)}
.sheet-body{
  background:var(--elev);border-radius:16px 16px 0 0;padding:18px 18px calc(18px + env(safe-area-inset-bottom));
  max-height:92dvh;overflow-y:auto;box-shadow:var(--shadow);
}
dialog[open] .sheet-body{animation:sheetUp .22s ease}
@keyframes sheetUp{from{transform:translateY(26px);opacity:.5}to{transform:none;opacity:1}}
.sheet-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}
.sheet-head h2{font-size:16.5px;font-weight:700;display:flex;align-items:center;gap:8px;min-width:0}
.sheet-foot{display:flex;gap:8px;align-items:center;margin-top:20px}
.spacer{flex:1}
.confirm p{font-size:14.5px;line-height:1.5;color:var(--ink2);margin:2px 0 18px}

.field{margin-bottom:14px}
.field>label{display:block;font-size:11.5px;font-weight:650;letter-spacing:.05em;text-transform:uppercase;color:var(--ink3);margin-bottom:6px}
.grid2{display:grid;gap:0 12px}
@media(min-width:540px){.grid2{grid-template-columns:1fr 1fr}}
.chipbtn{font-size:12.5px;font-weight:550;padding:4px 10px;border-radius:999px;border:1px solid var(--border2);color:var(--ink2);display:inline-flex;align-items:center;gap:4px}
.chipbtn:hover{background:var(--hover)}
.chipbtn svg{width:12px;height:12px}
.swatches{display:flex;gap:9px;flex-wrap:wrap;padding:2px}
.swatches label{position:relative;cursor:pointer}
.swatches input{position:absolute;opacity:0;pointer-events:none}
.swatch{display:block;width:27px;height:27px;border-radius:9px}
.swatches label:has(input:checked) .swatch{outline:2px solid var(--ink);outline-offset:2.5px}
.togglefield{display:flex;align-items:center;gap:10px;font-size:14.5px;padding:4px 0;cursor:pointer}
.togglefield input{width:17px;height:17px;accent-color:var(--accent)}

/* ---------- v3.8: automatic task status + subtasks ---------- */
.statusro{display:flex;align-items:center;min-height:34px;gap:8px}
.autolab{
  display:inline-block;font-size:9.5px;font-weight:700;letter-spacing:.06em;
  padding:1.5px 6px;border-radius:999px;background:var(--accent-soft);color:var(--accent);
  text-transform:uppercase;vertical-align:1px;cursor:help;
}
.fieldhint{font-size:12px;color:var(--ink3);line-height:1.45;margin-top:7px}
.subrow{display:flex;gap:8px;align-items:center;margin-bottom:6px;background:var(--bg);border-radius:8px}
.subrow .check{margin-top:0;flex-shrink:0}
.subrow .subinput{flex:1;min-width:0}
.subrow.done .subinput{color:var(--ink3);text-decoration:line-through}
.subrow .subdel{width:28px;height:28px;flex-shrink:0}
.subrow .subdel svg{width:13px;height:13px}
.subgrip{width:18px;height:26px;display:grid;place-items:center;color:var(--ink3);flex-shrink:0;cursor:grab;touch-action:none;border-radius:5px}
.subgrip:hover{background:var(--hover);color:var(--ink2)}
.subgrip.ph{cursor:default;pointer-events:none}
.subgrip svg{width:14px;height:14px}
.subrow.subdragging{opacity:.85;box-shadow:var(--shadow);position:relative;z-index:2;cursor:grabbing}
.subrow.subdragging .subgrip{cursor:grabbing}
.subaddrow{margin-top:2px}

/* ---------- v3.8: multi-link areas & contacts ---------- */
.linkwrap{margin-bottom:2px}
.multitog{margin-bottom:10px}
.multitog span{font-size:13.5px;color:var(--ink2)}
.linkpick{max-height:180px;overflow-y:auto;padding:2px}
.link-multi .field{margin-bottom:12px}
.areawrap{margin-top:2px}

/* ---------- v3.9: searchable contact picker ---------- */
.cpick{position:relative}
.cpick-box{
  display:flex;flex-wrap:wrap;gap:6px;align-items:center;
  min-height:44px;padding:6px 8px;border:1px solid var(--border2);border-radius:10px;
  background:var(--elev);cursor:text;transition:border-color .15s,box-shadow .15s;
}
.cpick-box:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
.pchip{display:inline-flex;align-items:center;gap:6px;padding:3px 6px 3px 3px;border-radius:999px;background:var(--bg2);border:1px solid var(--border);font-size:13px;max-width:100%}
.pchip-n{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:180px}
.pchip-x{width:18px;height:18px;display:grid;place-items:center;border-radius:50%;color:var(--ink3);flex-shrink:0}
.pchip-x:hover{background:var(--hover);color:var(--ink)}
.pchip-x svg{width:11px;height:11px}
.cavatar.sm{width:21px;height:21px;font-size:9.5px}
.cpick-input{flex:1;min-width:90px;border:0;outline:0;background:transparent;font:inherit;color:var(--ink);padding:4px 2px}
.cpick-input::placeholder{color:var(--ink3)}
.cpick-menu{margin-top:6px;border:1px solid var(--border2);border-radius:10px;background:var(--elev);overflow:hidden;box-shadow:0 6px 20px rgba(0,0,0,.12);max-height:248px;overflow-y:auto}
.cpick-menu[hidden]{display:none}
.cpick-opt{display:flex;gap:9px;align-items:center;width:100%;padding:9px 11px;text-align:left;font-size:14px;border-bottom:1px solid var(--border)}
.cpick-opt:last-child{border-bottom:0}
.cpick-opt:hover,.cpick-opt:focus-visible{background:var(--hover)}
.cpick-optn{display:flex;flex-direction:column;line-height:1.2;min-width:0}
.cpick-optn small{color:var(--ink3);font-size:12px}
.cpick-none{padding:11px;font-size:13.5px;color:var(--ink3);text-align:center}

/* ---------- v3.8: contacts bulk-select + tag ---------- */
.selbar{
  display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:8px;
  padding:8px 10px;border:1px solid var(--border);border-radius:10px;background:var(--bg2);
}
.selcount{font-size:13px;color:var(--ink2)}
.selcount b{color:var(--ink);font-weight:650}
.selbox{
  width:21px;height:21px;border-radius:6px;border:1.5px solid var(--border2);
  display:grid;place-items:center;color:transparent;flex-shrink:0;margin-top:6px;
  transition:background .12s,border-color .12s,color .12s;
}
.selbox.on{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
.selbox svg{width:13px;height:13px}
.row.selon{background:var(--accent-soft)}
.row.selon:hover{background:var(--accent-soft)}

.choose{display:flex;gap:12px;align-items:center;width:100%;padding:12px;border:1px solid var(--border);border-radius:11px;margin-bottom:8px;font-weight:550;text-align:left}
.choose:hover{background:var(--hover)}
.choose small{display:block;font-weight:450;font-size:12.5px;color:var(--ink3);margin-top:1px}
.cicon{width:36px;height:36px;border-radius:9px;display:grid;place-items:center;flex-shrink:0}
.cicon svg{width:17px;height:17px}
.cicon.b{background:var(--accent-soft);color:var(--accent)}
.cicon.g{background:var(--green-soft);color:var(--green)}
.cicon.a{background:var(--amber-soft);color:var(--amber)}
.cicon.n{background:var(--active);color:var(--ink2)}

/* ---------- Toast ---------- */
#toast{
  position:fixed;left:50%;bottom:calc(80px + env(safe-area-inset-bottom));z-index:80;
  transform:translateX(-50%) translateY(8px);
  background:var(--ink);color:var(--bg);padding:9px 16px;border-radius:10px;
  font-size:13.5px;font-weight:550;opacity:0;pointer-events:none;transition:.22s;
  box-shadow:var(--shadow);max-width:88vw;text-align:center;
}
#toast.show{opacity:1;transform:translateX(-50%)}

/* ---------- Desktop ---------- */
@media(min-width:900px){
  body{flex-direction:row}
  #tabbar{display:none}
  #fab{right:28px;bottom:28px}
  #topbar{padding-left:30px}
  #topbar h1{font-size:19px}
  #view{padding:16px 32px 120px}
  #toast{bottom:32px}
  dialog{inset:0;margin:auto;width:min(500px,92vw)}
  .sheet-body{border-radius:14px;padding:20px 22px;max-height:86dvh}
  #sidebar{
    display:flex;flex-direction:column;width:242px;flex-shrink:0;gap:1px;
    border-right:1px solid var(--border);background:var(--bg2);
    padding:16px 10px 14px;overflow-y:auto;overflow-x:hidden;
    transition:width .18s ease;
  }
  .logo{display:flex;align-items:center;gap:9px;font-family:'Lexend',-apple-system,sans-serif;font-weight:600;font-size:14px;letter-spacing:.01em;padding:2px 8px 14px}
  .logo .mark{width:26px;height:26px;border-radius:8px;background:var(--accent);color:var(--accent-ink);display:grid;place-items:center;flex-shrink:0}
  .logo .mark svg{width:14px;height:14px}
  .side-item{
    display:flex;gap:9px;align-items:center;width:100%;text-align:left;
    padding:6.5px 10px;border-radius:8px;color:var(--ink2);font-size:14px;font-weight:520;
  }
  .side-item svg{width:16px;height:16px;color:var(--ink3);flex-shrink:0}
  /* v4.2: the Scratch Pad link is an <a>, not a <button> — match the nav items */
  a.side-item{text-decoration:none;box-sizing:border-box}
  .side-item:hover{background:var(--hover)}
  .side-item.active{background:var(--active);color:var(--ink)}
  .side-item.active svg{color:var(--ink2)}
  .side-item .tx{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .side-item .badge{min-width:17px;height:17px;padding:0 5px;border-radius:9px;background:var(--red);color:#fff;font-size:10.5px;font-weight:700;display:grid;place-items:center}
  .side-label{font-size:11px;font-weight:650;letter-spacing:.06em;text-transform:uppercase;color:var(--ink3);padding:16px 10px 5px}
  #sideStatus{margin-top:auto;padding:12px 10px 0;display:flex;gap:8px;align-items:center;font-size:12px;color:var(--ink3)}

  /* Collapsed (icon rail) state — icon-only toggle lives in the logo row */
  .side-collapse{margin-left:auto;flex-shrink:0}
  .side-collapse svg{transition:transform .18s ease}
  #sideWs{padding:0 2px 10px}
  #sidebar.collapsed{width:64px;padding-left:8px;padding-right:8px}
  #sidebar.collapsed .logo{padding-left:0;padding-right:0;flex-direction:column;gap:7px}
  #sidebar.collapsed .side-collapse{margin-left:0}
  #sidebar.collapsed .side-item{justify-content:center;padding-left:0;padding-right:0;gap:0}
  #sidebar.collapsed .side-item .tx,
  #sidebar.collapsed .logo .tx,
  #sidebar.collapsed .side-item .badge,
  #sidebar.collapsed .side-label,
  #sidebar.collapsed #sideWs,
  #sidebar.collapsed #sideStatus{display:none}
  #sidebar.collapsed .side-collapse svg{transform:rotate(180deg)}
  #sidebar.collapsed #sideAreas{display:flex;flex-direction:column;align-items:center}
}

/* Sidebar hover tooltip (collapsed desktop rail only) — positioned via JS
   since #sidebar's own overflow-y:auto would clip an absolutely-positioned
   tooltip, so it lives as a body-level singleton instead. */
.sidetip{
  position:fixed;z-index:45;
  background:var(--ink);color:var(--bg);
  padding:5px 10px;border-radius:7px;
  font-size:12.5px;font-weight:550;white-space:nowrap;
  pointer-events:none;box-shadow:var(--shadow);
}
.sidetip[hidden]{display:none}

/* ---------- v2: smart who combobox ---------- */
.combo{position:relative}
.combo-list{margin-top:6px;border:1px solid var(--border2);border-radius:10px;background:var(--elev);overflow:hidden;box-shadow:0 4px 14px rgba(0,0,0,.08)}
.combo-list[hidden]{display:none}
.combo-item{display:flex;gap:9px;align-items:center;width:100%;padding:9px 11px;text-align:left;font-size:14px;border-bottom:1px solid var(--border)}
.combo-item:last-child{border-bottom:0}
.combo-item:hover{background:var(--hover)}
.combo-item small{color:var(--ink3);font-size:12px;margin-left:auto;white-space:nowrap}
.combo-item.create{color:var(--accent);font-weight:550}
.combo-item.create svg{width:14px;height:14px}
.cavatar{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:650;color:#fff;flex-shrink:0}
.combo-hint{display:flex;gap:5px;align-items:center;font-size:12.5px;color:var(--ink2);margin-top:6px;min-height:16px}
.combo-hint svg{width:13px;height:13px;color:var(--accent)}

/* ---------- v2: chains ---------- */
.chain{border:1px solid var(--border);border-radius:10px;overflow:hidden;margin-bottom:8px}
.cstep{display:flex;gap:9px;align-items:center;width:100%;padding:9px 11px;text-align:left;font-size:13.5px;border-bottom:1px solid var(--border)}
.cstep:last-child{border-bottom:0}
.cstep:hover{background:var(--hover)}
.cstep .cico{color:var(--ink3);flex-shrink:0}
.cstep .cico svg{width:14px;height:14px}
.cstep .ctx{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cstep.done .ctx{color:var(--ink3);text-decoration:line-through;text-decoration-thickness:1px}
.cstep .cmeta{font-size:12px;color:var(--ink3);white-space:nowrap}
.cstep.cur{background:var(--accent-soft)}
.cstep.cur .ctx{font-weight:600}
.chainnote{display:flex;gap:6px;align-items:center;font-size:12.5px;color:var(--accent);margin:-4px 0 12px}
.chainnote svg{width:13px;height:13px}
.btn.sm{padding:6px 11px;font-size:13px}
.donep{font-size:14.5px;color:var(--ink2);line-height:1.5;margin:2px 0 14px}

/* ---------- v2: contact pages ---------- */
.cheader{display:flex;gap:14px;align-items:center;margin:10px 2px 4px}
.cheader .avatar{width:54px;height:54px;font-size:19px;border-radius:16px}
.cheader h2{font-size:19px;font-weight:700;letter-spacing:-.01em}
.cheader .csub{color:var(--ink2);font-size:13.5px;margin-top:2px}
.crow{display:flex;gap:10px;align-items:flex-start;padding:7px 2px;font-size:14px}
.crow svg{width:15px;height:15px;color:var(--ink3);margin-top:2.5px;flex-shrink:0}
.crow a{color:var(--accent);text-decoration:none;word-break:break-all}
.crow .cnotes{white-space:pre-wrap;color:var(--ink2);font-size:13.5px}
.tl{position:relative;margin:6px 0 0 8px;padding-left:18px;border-left:2px solid var(--border)}
.tl-item{position:relative;padding:8px 10px;border-radius:8px;cursor:pointer}
.tl-item:hover{background:var(--hover)}
.tl-item::before{content:'';position:absolute;left:-24px;top:15px;width:9px;height:9px;border-radius:50%;background:var(--green);border:2px solid var(--bg)}
.tl-t{font-weight:520;font-size:14px}
.tl-m{font-size:12.5px;color:var(--ink3);margin-top:2px;display:flex;gap:6px;flex-wrap:wrap;align-items:center}

/* ---------- v3.3: tags, filters, page props ---------- */
.tagrow{display:flex;gap:7px;flex-wrap:wrap;align-items:center}
.tagchip{display:inline-flex;align-items:center;gap:6px;padding:4px 5px 4px 10px;border:1px solid var(--border2);border-radius:999px;font-size:13px;font-weight:520;background:var(--elev)}
.tagchip button{width:19px;height:19px;border-radius:50%;display:grid;place-items:center;color:var(--ink3)}
.tagchip button:hover{background:var(--red-soft);color:var(--red)}
.tagchip button svg{width:11px;height:11px}
.tagpick{display:flex;gap:8px;flex-wrap:wrap}
.tagpick .tagopt{position:relative;cursor:pointer}
.tagpick input{position:absolute;opacity:0;pointer-events:none}
.tagpick .chip{padding:4px 10px;font-size:13px;cursor:pointer}
.tagpick input:checked+.chip{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}
.fl-sep{align-self:center;color:var(--ink3);flex-shrink:0}
.doc-props{display:flex;gap:8px;margin:10px 0 0 34px;max-width:460px}
.doc-props select{flex:1;min-width:0;font-size:14px;padding-top:6px;padding-bottom:6px}
/* ---------- v3: ids ---------- */
.evdot{width:11px;height:11px;border-radius:50%;flex-shrink:0;margin-top:5px}
.row.event .row-title{font-weight:520}
.idtag{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;font-weight:550;color:var(--ink3);background:var(--bg2);border:1px solid var(--border);padding:2px 6px;border-radius:5px;letter-spacing:.03em;flex-shrink:0}
/* ---------- v3.7: resource editor (Notion-style rebuild) ---------- */
.doc{max-width:760px;margin:0 auto}
.doc.wide{max-width:none}
#view.vwide{max-width:none}
.doc-title{font-size:28px;font-weight:700;letter-spacing:-.015em;outline:none;padding:10px 8px 6px;margin-left:46px;line-height:1.25;word-break:break-word}
.doc-title:empty::before{content:attr(data-ph);color:var(--ink3)}
.rmeta{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin:2px 0 14px 54px}
.rmeta .chipbtn svg{width:13px;height:13px}
.chiplink{cursor:pointer}
.chiplink:hover{background:var(--hover)}
.chiplink svg{width:12px;height:12px}
.lockbar{display:flex;gap:9px;align-items:center;background:var(--amber-soft);color:var(--amber);border:1px solid transparent;border-radius:10px;padding:9px 12px;margin:10px 0 2px;font-size:13.5px;font-weight:550}
.lockbar svg{width:15px;height:15px;flex-shrink:0}
.lockbar span{flex:1}
.lockbar .chipbtn{background:var(--bg);color:var(--ink)}
.tlock{display:inline-flex;margin-right:7px;color:var(--ink3);vertical-align:-2px}
.tlock svg{width:14px;height:14px}
#blocks{padding-bottom:4px}
.doc-tail{min-height:140px;cursor:text}
/* block frame: hover gutter with + and ⋮⋮ */
.blk{display:flex;gap:0;padding:1px 0;position:relative}
.bctl{width:46px;flex-shrink:0;display:flex;align-items:flex-start;justify-content:flex-end;gap:1px;padding:4px 4px 0 0;opacity:0;transition:opacity .12s}
.blk:hover>.bctl{opacity:1}
body.bdrag .bctl{opacity:0!important}
.bplus,.bgrip{width:21px;height:23px;border-radius:6px;color:var(--ink3);display:grid;place-items:center;flex-shrink:0}
.bplus:hover,.bgrip:hover{background:var(--hover);color:var(--ink2)}
.bplus svg{width:15px;height:15px}
.bgrip{cursor:grab;touch-action:none}
.bgrip svg{width:14px;height:14px}
.bmain{flex:1;min-width:0}
.blk.dragging{opacity:.35}
.t-h1>.bctl,.t-h2>.bctl{padding-top:12px}
/* text blocks */
.btext{outline:none;padding:5px 8px;border-radius:6px;min-height:1.62em;white-space:pre-wrap;word-break:break-word;font-size:16px;line-height:1.55}
.btext[data-ph]:empty::before{content:attr(data-ph);color:var(--ink3)}
.t-p .btext:empty::before{opacity:0}
.t-p .btext:focus:empty::before{opacity:1}
.t-h1 .btext{font-size:24.5px;font-weight:700;padding-top:16px;line-height:1.3}
.t-h2 .btext{font-size:20px;font-weight:650;padding-top:11px;line-height:1.3}
.t-h3 .btext{font-size:17px;font-weight:650;padding-top:7px;line-height:1.3}
.t-h4 .btext{font-size:15.5px;font-weight:650;padding-top:5px;line-height:1.3}
.t-quote .bmain{border-left:3px solid var(--ink);margin:3px 0}
.t-quote .btext{padding-left:14px;font-size:16.5px}
/* lists */
.t-ul .bmain,.t-ol .bmain,.t-todo .bmain{display:flex;gap:8px;align-items:flex-start}
.bmark{padding-top:5px;color:var(--ink);min-width:22px;text-align:right;font-size:15px;flex-shrink:0;user-select:none;line-height:1.55}
.t-ul .bmark{font-size:17px}
.t-ul .btext,.t-ol .btext,.t-todo .btext{flex:1;padding-left:2px}
.check.sm{width:19px;height:19px;border-radius:5px;margin-top:7px}
.check.sm svg{width:11px;height:11px}
.t-todo.done .btext{color:var(--ink3);text-decoration:line-through;text-decoration-thickness:1px}
/* callout */
.bcallout{display:flex;gap:10px;align-items:flex-start;background:var(--bg2);border:1px solid var(--border);border-radius:10px;padding:10px 14px 10px 12px;margin:4px 0 4px 8px}
.cico{font-size:19px;line-height:1.45;flex-shrink:0;border-radius:6px;padding:2px 4px;user-select:none}
.cico:hover:not(:disabled){background:var(--hover)}
.bcallout .btext{flex:1;padding:2px 0}
/* code */
.bcode{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13.5px;line-height:1.6;background:var(--bg2);border:1px solid var(--border);border-radius:9px;padding:12px 14px;white-space:pre-wrap;word-break:break-word;outline:none;margin:5px 0 5px 8px;min-height:2.6em}
.bcode[data-ph]:empty::before{content:attr(data-ph);color:var(--ink3)}
.t-divider hr{border:0;border-top:1px solid var(--border2);margin:13px 8px;cursor:default}
/* bookmark & embed */
.blink{display:flex;gap:8px;align-items:center;border:1px solid var(--border);border-radius:9px;padding:6px 8px 6px 12px;margin:4px 0 4px 8px;background:var(--bg2)}
.blink>svg{width:15px;height:15px;color:var(--ink3);flex-shrink:0}
.binput{flex:1;border:0;outline:none;background:transparent;font-size:15px;color:var(--ink);min-width:0;padding:4px 0}
.binput::placeholder{color:var(--ink3)}
.bbm{display:flex;gap:8px;align-items:center;border:1px solid var(--border);border-radius:10px;padding:9px 10px 9px 14px;margin:4px 0 4px 8px;transition:background .12s}
.bbm:hover{background:var(--bg2)}
.bbm-main{flex:1;min-width:0}
.bbm-t{outline:none;font-size:15px;font-weight:600;word-break:break-word;border-radius:4px}
.bbm-t[data-ph]:empty::before{content:attr(data-ph);color:var(--ink3)}
.bbm-u{display:flex;gap:6px;align-items:center;font-size:12.5px;color:var(--ink3);margin-top:3px;min-width:0}
.bbm-u svg{width:12px;height:12px;flex-shrink:0}
.bbm-u b{color:var(--ink2);font-weight:550;flex-shrink:0}
.bbm-url{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.bbm .icon-btn,.bem-bar .icon-btn{flex-shrink:0}
.bembed{margin:4px 0 4px 8px}
.bembed iframe{width:100%;height:340px;border:1px solid var(--border);border-radius:10px;background:var(--bg2)}
.bem-bar{display:flex;gap:7px;align-items:center;font-size:12.5px;color:var(--ink3);padding:5px 2px 0}
.bem-bar svg{width:12px;height:12px;flex-shrink:0}
/* table */
.btable-wrap{overflow-x:auto;margin:5px 0 2px 8px}
.btable{border-collapse:collapse;width:100%;font-size:14.5px}
.btable.fixed{table-layout:fixed;width:auto}       /* v3.9: honour explicit colgroup widths */
.btable td{border:1px solid var(--border2);padding:0;min-width:96px;word-break:break-word;vertical-align:top;position:relative}
.btable.fixed td{min-width:0}
.btable .bcell{outline:none;padding:6px 9px;min-height:2em;white-space:pre-wrap}
/* v3.9: column resize handle on the right edge of the top-row cells */
.col-rz{position:absolute;top:0;right:-4px;width:9px;height:100%;cursor:col-resize;z-index:3;touch-action:none}
.col-rz::after{content:"";position:absolute;top:0;bottom:0;left:3px;width:2px;background:transparent;transition:background .12s}
.col-rz:hover::after,.btable.rzing .col-rz::after{background:var(--accent)}
.btable.rzing{user-select:none}
.btable .bcell:focus{background:var(--accent-soft)}
.btable tr:first-child td{background:var(--bg2);font-weight:600}
.tctrl{display:flex;gap:6px;margin:7px 0 0 8px;flex-wrap:wrap;opacity:0;transition:opacity .12s}
.blk:hover .tctrl,.blk:focus-within .tctrl{opacity:1}
/* toggles + toggled headings */
.btgl-head{display:flex;gap:2px;align-items:flex-start}
.btgl-head .btext{flex:1;font-weight:520}
.tgl-caret{width:24px;height:24px;margin-top:4px;border-radius:6px;display:grid;place-items:center;color:var(--ink);flex-shrink:0}
.tgl-caret:hover{background:var(--hover)}
.tgl-caret svg{width:14px;height:14px;transition:transform .15s}
.btgl.open>.btgl-head .tgl-caret svg{transform:rotate(90deg)}
.btgl.th1 .tgtitle{font-size:24.5px;font-weight:700;line-height:1.3}
.btgl.th2 .tgtitle{font-size:20px;font-weight:650;line-height:1.3}
.btgl.th3 .tgtitle{font-size:17px;font-weight:650;line-height:1.3}
.btgl.th4 .tgtitle{font-size:15.5px;font-weight:650;line-height:1.3}
.btgl.th1 .tgl-caret,.btgl.th2 .tgl-caret{margin-top:8px}
.tgl-kids{margin-left:11px;border-left:1.5px solid var(--border);padding-left:10px}
.tgl-kids[hidden]{display:none}
.tgl-kids .bctl{width:24px}
.tgl-kids .bplus{display:none}
.tgl-add{display:inline-flex;align-items:center;gap:6px;color:var(--ink3);font-size:12.5px;padding:4px 8px;margin:1px 0 3px;border-radius:6px}
.tgl-add:hover{background:var(--hover);color:var(--ink2)}
.tgl-add svg{width:12px;height:12px}
/* columns (2–4) */
.bcols{display:flex;gap:22px;margin:2px 0;min-width:0}
.bcol{flex:1;min-width:0;border-radius:8px;padding:1px 0}
.bcol .bctl{width:24px}
.bcol .bplus{display:none}
.bcol .doc-tail{display:none}
.col-add{display:flex;align-items:center;gap:6px;color:var(--ink3);font-size:12.5px;padding:6px 8px;border-radius:7px;border:1px dashed var(--border2);width:100%;justify-content:center;margin:2px 0}
.col-add:hover{background:var(--hover);color:var(--ink2)}
.col-add svg{width:12px;height:12px}
/* drag & drop */
#dropInd{position:fixed;z-index:66;background:var(--accent);border-radius:3px;pointer-events:none}
#dropInd.box{background:transparent;border:2px solid var(--accent);border-radius:9px}
#dropInd[hidden]{display:none}
.dragghost{position:fixed;z-index:67;pointer-events:none;background:var(--elev);border:1px solid var(--border2);border-radius:8px;padding:5px 12px;font-size:13.5px;color:var(--ink2);max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;box-shadow:var(--shadow)}
body.bdrag{user-select:none;cursor:grabbing}
/* slash / block popover */
.popmenu{position:fixed;z-index:70;background:var(--elev);border:1px solid var(--border2);border-radius:11px;box-shadow:var(--shadow);min-width:252px;max-width:308px;max-height:308px;overflow-y:auto;padding:5px}
.popmenu[hidden]{display:none}
.pm-head{font-size:11px;font-weight:650;letter-spacing:.06em;text-transform:uppercase;color:var(--ink3);padding:6px 10px 4px}
.pm-item{display:flex;flex-direction:row;align-items:center;width:100%;padding:6px 8px;border-radius:7px;text-align:left;font-size:14px;font-weight:550;gap:10px}
.pm-ic{width:30px;height:30px;flex-shrink:0;border:1px solid var(--border);border-radius:6px;display:grid;place-items:center;font-size:11.5px;font-weight:700;background:var(--bg);color:var(--ink2);letter-spacing:-.03em}
.pm-lb{display:flex;flex-direction:column;gap:0;min-width:0}
.pm-lb small{font-weight:450;font-size:12px;color:var(--ink3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pm-item:hover,.pm-item.sel{background:var(--hover)}
.pm-item.danger .pm-lb,.pm-item.danger .pm-ic{color:var(--red)}
.pm-none{padding:12px;font-size:13.5px;color:var(--ink3);text-align:center}
/* folder browser (v3.9: navigable folders + breadcrumb) */
.frow{display:flex;gap:9px;align-items:center;padding:10px 12px;border-radius:9px;cursor:pointer;border:1px solid transparent}
.frow:hover{background:var(--hover);border-color:var(--border)}
.frow+.frow{margin-top:2px}
.ficon{display:grid;place-items:center;color:var(--accent);flex-shrink:0}
.ficon svg{width:17px;height:17px}
.fname{flex:1;font-size:15px;font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fcount{font-size:12px;color:var(--ink3);font-weight:550;flex-shrink:0}
.fmenu{opacity:0;flex-shrink:0}
.frow:hover .fmenu{opacity:1}
.fchev{display:grid;place-items:center;color:var(--ink3);flex-shrink:0}
.fchev svg{width:14px;height:14px}
.fbread{display:flex;align-items:center;gap:2px;flex-wrap:wrap;margin:0 0 10px;font-size:13.5px}
.fcrumb{display:inline-flex;align-items:center;gap:5px;padding:4px 9px;border-radius:7px;color:var(--ink2);font-weight:520;max-width:60vw;overflow:hidden}
.fcrumb span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fcrumb svg{width:14px;height:14px;flex-shrink:0}
.fcrumb:hover{background:var(--hover);color:var(--ink)}
.fcrumb.cur{color:var(--ink);font-weight:650;cursor:default}
.fbread .fsep{display:grid;place-items:center;color:var(--ink3)}
.fbread .fsep svg{width:12px;height:12px}
.ind{margin-left:calc(var(--d,0)*22px)}
.ricon{display:grid;place-items:center;color:var(--ink3);padding-top:2px;flex-shrink:0}
.ricon svg{width:16px;height:16px}
.rlock{display:inline-flex;margin-left:7px;color:var(--ink3);vertical-align:-2px}
.rlock svg{width:12px;height:12px}
.linky{color:var(--accent);font-weight:550;text-decoration:underline;text-underline-offset:2px;font-size:inherit}
.choose.cur{border-color:var(--accent);background:var(--accent-soft)}
.toolrow .f-grow{flex:1 1 auto;min-width:0}
.toolrow+.toolrow{margin-top:8px}
/* bulk contacts: tabs + csv preview */
.btabs{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 14px;padding-bottom:10px;border-bottom:1px solid var(--border)}
.btab{display:inline-flex;align-items:center;gap:7px;padding:6px 10px;border-radius:8px;border:1px solid var(--border);background:var(--bg2);font-size:13px;font-weight:550;color:var(--ink2);max-width:170px;cursor:pointer}
.btab .btab-t{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.btab.on{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}
.btab.add{padding:6px 9px;color:var(--ink3)}
.btab.add svg{width:13px;height:13px}
.btab:hover{border-color:var(--border2)}
.btab-x{display:grid;place-items:center;border-radius:4px;color:inherit;opacity:.65;flex-shrink:0}
.btab-x:hover{opacity:1;background:var(--hover)}
.btab-x svg{width:12px;height:12px}
.btab-warn{width:7px;height:7px;border-radius:50%;background:var(--amber);flex-shrink:0}
.bulkcount{font-size:13px;color:var(--ink2);align-self:center}
.csvlist{max-height:290px;overflow-y:auto;border:1px solid var(--border);border-radius:10px;padding:4px;margin-bottom:12px}
.csvrow{display:flex;gap:10px;align-items:center;padding:7px 9px;border-radius:8px}
.csvrow+.csvrow{border-top:1px solid var(--border)}
.csvrow .chip{flex-shrink:0}
.csvspec{font-size:13.5px;color:var(--ink2);background:var(--bg2);border:1px solid var(--border);border-radius:10px;padding:12px 14px;line-height:1.65;margin-bottom:14px}
.csvspec ol{margin:8px 0;padding-left:22px}
.csvspec li{margin:3px 0}
@media(max-width:899px){
  .bcode{font-size:16px}.btable .bcell{font-size:16px}.binput{font-size:16px}
  .doc-title{margin-left:28px}
  .rmeta{margin-left:32px}
  .bctl{width:28px;opacity:1;padding-top:5px}
  .bplus{display:none}
  .bgrip{color:var(--ink3);opacity:.55}
  .bcols{flex-direction:column;gap:4px}
  .doc-tail{min-height:90px}
  .hidesm{display:none}
}
/* ---------- v3.5: calendar (Month / Week / Day / Schedule) ---------- */
.cal{margin-top:8px}
.cal-bar{display:flex;align-items:center;gap:6px;flex-wrap:wrap;position:relative}
.cal-todaybtn{padding:7px 13px;font-size:13.5px}
.cal-title{font-size:17px;font-weight:700;padding:5px 9px;border-radius:8px;letter-spacing:-.01em;white-space:nowrap;min-width:0;overflow:hidden;text-overflow:ellipsis}
.cal-title:hover{background:var(--hover)}
.cal-jumpinput{position:absolute;left:120px;top:36px;width:1px;height:1px;opacity:0;pointer-events:none;border:0;padding:0}
.cal-seg button{padding:6px 12px}
/* v4.6.6: the sync controls joined this row, so it must wrap — otherwise the
   search field is squeezed down to its icon on a phone. The search keeps a
   usable floor and takes the free space; the sync controls drop to their own
   line when there isn't room. */
.cal-bar2{display:flex;gap:8px;margin-top:9px;flex-wrap:wrap;align-items:center}
.cal-bar2 .searchwrap{flex:1 1 180px;min-width:150px}
.cal-bar2 .gcalbtn{flex:0 0 auto;margin-left:auto}
.cal-body{margin-top:11px;animation:calfade .18s ease}
@keyframes calfade{from{opacity:.35;transform:translateY(4px)}to{opacity:1;transform:none}}
.cal-hint{font-size:12px;color:var(--ink3);text-align:center;margin-top:9px}

/* Month grid */
.cal-mhead{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;font-size:11px;font-weight:650;letter-spacing:.05em;text-transform:uppercase;color:var(--ink3);padding-bottom:5px}
.cal-mgrid{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background:var(--border);border:1px solid var(--border);border-radius:12px;overflow:hidden}
.cal-cell{background:var(--bg);height:114px;overflow:hidden;padding:4px 4px 6px;display:flex;flex-direction:column;gap:2px;cursor:pointer;transition:background .12s}
.cal-cell:hover{background:var(--bg2)}
.cal-cell.out{background:var(--bg2)}
.cal-cell.out .cal-dn{color:var(--ink3)}
.cal-dn{align-self:flex-start;min-width:24px;height:24px;padding:0 5px;border-radius:12px;font-size:12.5px;font-weight:600;color:var(--ink2);display:grid;place-items:center}
.cal-dn:hover{background:var(--active)}
.cal-cell.today .cal-dn{background:var(--accent);color:var(--accent-ink)}
.cal-pill{display:flex;align-items:center;gap:4px;width:100%;text-align:left;font-size:11.5px;line-height:1.25;padding:2px 5px;border-radius:5px;color:var(--ink);overflow:hidden}
.cal-pill:hover{background:var(--hover)}
.cal-pill .pdot{width:7px;height:7px;border-radius:50%;flex-shrink:0}
.cal-pill .ptx{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cal-pill .ptx b{font-weight:650;color:var(--ink2)}
.cal-pill.solid{background:var(--ec);color:#fff}
.cal-pill.solid:hover{filter:brightness(1.08)}
.cal-pill.past{opacity:.55}
.cal-more{align-self:flex-start;font-size:11px;font-weight:600;color:var(--ink3);padding:1px 5px;border-radius:5px}
.cal-more:hover{background:var(--hover);color:var(--ink2)}
.pdot{width:8px;height:8px;border-radius:50%;flex-shrink:0}

/* Week / Day time grid */
.tg{border:1px solid var(--border);border-radius:12px;overflow:hidden;background:var(--bg)}
.tg-head,.tg-adrow,.tg-grid{display:grid;grid-template-columns:52px repeat(var(--n),1fr)}
.tg-head{border-bottom:1px solid var(--border)}
.tg-hd{text-align:center;padding:7px 0 6px;border-left:1px solid var(--border)}
.tg-hdw{display:block;font-size:10.5px;font-weight:650;letter-spacing:.05em;text-transform:uppercase;color:var(--ink3)}
.tg-hdn{min-width:30px;height:30px;border-radius:50%;font-size:16px;font-weight:650;color:var(--ink2);display:inline-grid;place-items:center;margin-top:1px}
.tg-hdn:hover{background:var(--active)}
.tg-hd.today .tg-hdn{background:var(--accent);color:var(--accent-ink)}
.tg-adrow{border-bottom:1px solid var(--border);background:var(--bg2)}
.tg-adlab{font-size:10px;font-weight:650;letter-spacing:.04em;text-transform:uppercase;color:var(--ink3);display:flex;align-items:center;justify-content:flex-end;padding-right:7px}
.tg-adcell{min-height:26px;padding:2px 3px;border-left:1px solid var(--border);display:flex;flex-direction:column;gap:2px;cursor:pointer}
.tg-adcell:hover{background:var(--hover)}
.tg-scroll{max-height:min(62dvh,660px);overflow-y:auto;overscroll-behavior:contain}
.tg-grid{position:relative}
.tg-axis{position:relative;border-right:0}
.tg-axl{position:absolute;right:7px;transform:translateY(-7px);font-size:10.5px;color:var(--ink3);white-space:nowrap}
.tg-col{position:relative;border-left:1px solid var(--border);cursor:pointer}
.tg-col.today{background:color-mix(in srgb,var(--accent) 3%,transparent)}
.tg-line{position:absolute;left:0;right:0;height:1px;background:var(--border);pointer-events:none}
.tg-ev{position:absolute;z-index:3;display:flex;flex-direction:column;gap:1px;align-items:flex-start;overflow:hidden;text-align:left;border-radius:6px;padding:3px 6px;background:color-mix(in srgb,var(--ec) 16%,var(--elev));border-left:3px solid var(--ec);box-shadow:0 1px 2px rgba(15,15,15,.08);transition:box-shadow .12s,filter .12s}
.tg-ev:hover{box-shadow:0 3px 10px rgba(15,15,15,.16);z-index:4}
.tg-ev.past{opacity:.55}
.tg-evt{font-size:12px;font-weight:600;color:var(--ink);line-height:1.25;display:flex;gap:4px;align-items:center;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tg-evt svg{width:11px;height:11px;color:var(--ink2);flex-shrink:0}
.tg-evm{font-size:10.5px;color:var(--ink2);white-space:nowrap}
.tg-now{position:absolute;left:0;right:0;height:2px;background:var(--red);z-index:5;pointer-events:none}
.tg-now span{position:absolute;left:-4px;top:-3px;width:8px;height:8px;border-radius:50%;background:var(--red)}
.tg-ghost{position:absolute;left:2px;right:2px;z-index:6;border-radius:6px;background:var(--accent-soft);border:1.5px dashed var(--accent);pointer-events:none}

/* Schedule (agenda) */
.agenda{border-top:1px solid var(--border)}
.ag-day{display:flex;gap:12px;padding:11px 2px;border-bottom:1px solid var(--border)}
.ag-rail{width:74px;flex-shrink:0;text-align:left;display:flex;flex-direction:column;align-items:flex-start;gap:1px;border-radius:9px;padding:3px 6px}
.ag-rail:hover{background:var(--hover)}
.ag-dn{font-size:20px;font-weight:700;line-height:1.1;min-width:30px;height:30px;display:grid;place-items:center;border-radius:50%}
.ag-day.today .ag-dn{background:var(--accent);color:var(--accent-ink)}
.ag-dw{font-size:11px;color:var(--ink3);font-weight:550}
.ag-list{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.ag-ev{display:flex;gap:10px;align-items:center;width:100%;text-align:left;padding:7px 10px;border-radius:8px}
.ag-ev:hover{background:var(--hover)}
.ag-time{width:118px;flex-shrink:0;font-size:12.5px;color:var(--ink2);white-space:nowrap}
.ag-title{flex:1;min-width:0;font-weight:550;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ag-ev .chip{flex-shrink:0}

/* Event sheet: recurrence panel + color swatches */
.recpanel{border:1px solid var(--border);border-radius:10px;padding:12px;margin:-4px 0 14px;display:flex;flex-direction:column;gap:10px;background:var(--bg2)}
.recpanel[hidden]{display:none}
.recrow{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:13.5px;color:var(--ink2)}
.recrow[hidden]{display:none}
.recnum{width:64px;flex:0 0 auto}
.recrow .input.slim{padding:6px 9px;font-size:14px}
.wdrow{display:flex;gap:5px}
.wdopt{position:relative;cursor:pointer}
.wdopt input{position:absolute;opacity:0;pointer-events:none}
.wdopt span{width:28px;height:28px;border-radius:50%;border:1px solid var(--border2);display:grid;place-items:center;font-size:12px;font-weight:650;color:var(--ink2)}
.wdopt input:checked+span{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
.recopt{display:flex;gap:7px;align-items:center;cursor:pointer}
.recopt input[type="radio"]{width:15px;height:15px;accent-color:var(--accent)}
.recends{display:flex;flex-direction:column;gap:8px}
.swatch.auto{background:var(--bg);border:1.5px dashed var(--border2);display:grid;place-items:center;font-size:10px;font-weight:700;color:var(--ink3)}

/* Calendar responsive */
@media(max-width:639px){
  .cal-title{font-size:15px;padding:5px 6px}
  .cal-seg{width:100%;order:9;margin-top:2px}
  .cal-seg button{flex:1}
  .cal-cell{height:78px;padding:3px 2px 4px}
  .cal-pill{font-size:10px;padding:1.5px 3px}
  .cal-pill .ptx b{display:none}
  .tg-head,.tg-adrow,.tg-grid{grid-template-columns:40px repeat(var(--n),1fr)}
  .tg-hdn{min-width:26px;height:26px;font-size:14px}
  .ag-time{width:88px;font-size:11.5px}
  .ag-rail{width:60px}
  .ag-ev .chip.plain{display:none}
}

/* ---------- v3.5.1: app-native dropdowns + native control polish ---------- */
.dd-hidden{display:none!important}
.select-trig{
  display:flex;align-items:center;justify-content:space-between;gap:8px;
  cursor:pointer;text-align:left;min-width:0;
  background-image:none;padding-right:11px; /* trigger draws its own chevron */
}
.select-trig .tlab{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.select-trig>svg{width:13px;height:13px;color:var(--ink3);flex-shrink:0;transform:rotate(90deg);transition:transform .16s ease}
.select-trig:hover{border-color:var(--border2);background:var(--bg2)}
.select-trig.open{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
.select-trig.open>svg{transform:rotate(-90deg);color:var(--accent)}

.ddmenu{
  position:fixed;z-index:90;
  background:var(--elev);border:1px solid var(--border);border-radius:10px;
  box-shadow:var(--shadow);padding:5px;
  max-height:284px;overflow-y:auto;overscroll-behavior:contain;
  animation:ddpop .13s ease;
}
@keyframes ddpop{from{opacity:0;transform:translateY(-4px) scale(.985)}to{opacity:1;transform:none}}
.dditem{
  display:flex;align-items:center;gap:8px;width:100%;text-align:left;
  padding:7.5px 10px;border-radius:7px;font-size:14px;color:var(--ink);
  white-space:nowrap;
}
.dditem svg{width:14px;height:14px;color:var(--accent);opacity:0;flex-shrink:0}
.dditem span{overflow:hidden;text-overflow:ellipsis}
.dditem.sel{font-weight:600}
.dditem.sel svg{opacity:1}
.dditem:hover,.dditem:focus-visible{background:var(--hover);outline:none}
.dditem:active{background:var(--active)}
.ddmenu::-webkit-scrollbar{width:8px}
.ddmenu::-webkit-scrollbar-thumb{background:var(--border2);border-radius:4px}

/* Remaining native controls: consistent accents + themed picker icons */
input[type="checkbox"],input[type="radio"]{accent-color:var(--accent)}
.input::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.55;transition:opacity .12s}
.input::-webkit-calendar-picker-indicator:hover{opacity:.9}
[data-theme="dark"] .input::-webkit-calendar-picker-indicator{filter:invert(1)}
input[type="number"].input{-moz-appearance:textfield}
input[type="number"].input::-webkit-outer-spin-button,
input[type="number"].input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
input[type="search"].input::-webkit-search-cancel-button{-webkit-appearance:none;height:14px;width:14px;cursor:pointer;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23999'%3E%3Cpath d='M4.646 4.646a.5.5 0 0 1 .708 0L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 0 1 0-.708'/%3E%3C/svg%3E") center/contain no-repeat}

/* ---------- v3.6: filter toolbars (uniform across tabs) ---------- */
.filterbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:8px}
.filterbar .f-area{flex:0 1 176px;min-width:132px}
.filterbar .f-prio{flex:0 1 156px;min-width:126px}
.filterbar .f-grow{flex:1 1 170px;min-width:150px}
.filterbar .f-date{flex:0 1 156px;min-width:128px}
.f-lab{font-size:12px;font-weight:650;letter-spacing:.04em;text-transform:uppercase;color:var(--ink3)}
/* v3.9: Contacts tag filter chips */
.tagfilter{gap:6px}
.tagfilter .f-lab{display:inline-flex;align-items:center;gap:5px}
.tagfilter .f-lab svg{width:13px;height:13px}
.fchip{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:520;padding:4px 11px;border-radius:999px;border:1px solid var(--border2);color:var(--ink2);background:var(--elev);cursor:pointer;transition:background .12s,border-color .12s,color .12s}
.fchip:hover{background:var(--hover)}
.fchip.on{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}
.fchip .dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}

/* ---------- v3.6: app-native date pickers ---------- */
.date-trig{
  display:flex;align-items:center;gap:8px;cursor:pointer;text-align:left;min-width:0;
  background-image:none;
}
.date-trig>svg{width:14px;height:14px;color:var(--ink3);flex-shrink:0}
.date-trig .tlab{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.date-trig .tlab.ph{color:var(--ink3)}
.date-trig:hover{border-color:var(--border2);background:var(--bg2)}
.date-trig.open{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
.date-trig.open>svg{color:var(--accent)}
.ddmenu.dp{
  width:264px;padding:10px;
  max-height:min(440px,calc(100dvh - 16px));
  overflow:hidden;                 /* only .dp-scroll scrolls, so the footer can't drift away */
  display:flex;flex-direction:column;
}
.dp-scroll{overflow-y:auto;overscroll-behavior:contain;min-height:0}
/* Time field + actions sit OUTSIDE the scroll area: always reachable, even on
   short screens where the month grid has to scroll. */
.dp-sticky{flex-shrink:0;background:var(--elev);padding-top:5px;margin-top:2px;border-top:1px solid var(--border)}
.dp-head{display:flex;align-items:center;gap:4px;margin-bottom:7px}
.dp-lab{flex:1;text-align:center;font-size:14px;font-weight:650}
.dp-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}
.dp-w{text-align:center;font-size:10.5px;font-weight:650;color:var(--ink3);padding:2px 0 4px}
.dp-day{height:31px;border-radius:50%;font-size:13px;font-weight:520;color:var(--ink);display:grid;place-items:center}
.dp-day:hover{background:var(--hover)}
.dp-day.out{color:var(--ink3)}
.dp-day.today{box-shadow:inset 0 0 0 1.5px var(--accent);color:var(--accent);font-weight:650}
.dp-day.sel{background:var(--accent);color:var(--accent-ink);font-weight:650;box-shadow:none}
.dp-timerow{display:flex;align-items:center;gap:8px;margin-top:5px;color:var(--ink3)}
.dp-timerow svg{width:14px;height:14px}
.dp-time{flex:1}
.dp-foot{display:flex;align-items:center;gap:8px;margin-top:8px}
.dp-done{padding:6px 14px;font-size:13.5px}

/* ---------- v3.6: area chips distinct from tag chips ---------- */
.chip.areachip{
  background:color-mix(in srgb,var(--ac) 12%,transparent);
  border-color:transparent;color:var(--ink);font-weight:560;
}

/* ---------- v3.6: dashboard header ---------- */
.dash-bar{display:flex;align-items:center;gap:8px;flex-wrap:nowrap;margin:2px 0 12px;position:relative}
.dash-bar .icon-btn{flex-shrink:0}
.dash-bar .cal-title{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}
.dash-seg{margin:0 0 14px}
.dash-seg button{padding:6px 13px}
.dash-notoday{font-size:13px;font-weight:550;color:var(--ink3)}
.cal-todaybtn:disabled{opacity:.5;cursor:default}
.dash-bar+.dash-seg+.stats{margin-top:2px}

/* ---------- v3.6: workspaces ---------- */
#sideWs .select-trig{width:100%;font-weight:600}
.wslist{display:flex;flex-direction:column;gap:4px;margin-top:9px}
.wsrow{display:flex;align-items:center;gap:4px}
.wsmain{flex:1;display:flex;align-items:center;gap:9px;text-align:left;padding:8px 10px;border-radius:9px;min-width:0}
.wsmain:hover{background:var(--hover)}
.wsdot{width:9px;height:9px;border-radius:50%;background:var(--border2);flex-shrink:0}
.wsrow.on .wsdot{background:var(--accent)}
.wsname{font-weight:600;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.wsmeta{margin-left:auto;font-size:12px;color:var(--ink3);flex-shrink:0}
.wsrow.on .wsmain{background:var(--active)}

/* ---------- v3.6: archive ---------- */
.row.arch{opacity:.6}
.row.arch .row-title{color:var(--ink2)}
.archbanner{
  display:flex;align-items:center;gap:11px;margin-top:12px;
  padding:10px 13px;border:1px solid var(--border);border-radius:11px;background:var(--bg2);
}
.archbanner svg{width:16px;height:16px;color:var(--ink3);flex-shrink:0}
.archbanner>div{flex:1;font-size:13.5px;color:var(--ink2);min-width:0}
.archbanner small{display:block;color:var(--ink3);font-size:11.5px;margin-top:1px}
.archbanner .btn{flex-shrink:0;padding:6px 12px;font-size:13px}

/* ---------- v3.6: update banner ---------- */
#updBanner{
  position:fixed;left:50%;bottom:18px;transform:translateX(-50%);z-index:95;
  display:flex;align-items:center;gap:12px;
  background:var(--elev);border:1px solid var(--border);border-radius:13px;
  box-shadow:var(--shadow);padding:11px 12px 11px 16px;
  font-size:14px;font-weight:550;max-width:calc(100vw - 24px);
  animation:ddpop .18s ease;
}
#updBanner[hidden]{display:none}
#updBanner .btn{padding:7px 14px;font-size:13.5px;flex-shrink:0}
@media(max-width:899px){#updBanner{bottom:76px}}

/* ---------- v3.6.1: dashboard bar on small screens ---------- */
@media(max-width:639px){
  .dash-bar{gap:5px}
  .dash-bar .cal-todaybtn{padding:7px 11px;font-size:13px}
  .dash-bar .cal-title{font-size:15px;padding:5px 4px}
  .dash-seg{width:100%}
  .dash-seg button{flex:1;padding:6px 6px;font-size:12.5px}
  .ddmenu.dp{width:min(264px,calc(100vw - 24px))}
}

/* ===== v4.3: mandatory email OTP sign-in gate =====
   Full-screen overlay shown before the app when unauthenticated. body.locked
   hides the shell so no hidden controls stay focusable behind it. Themed with
   the existing custom properties, so light/dark come for free. */
body.locked{overflow:hidden}
body.locked #sidebar,body.locked #tabbar,body.locked #fab,body.locked #topbar,
body.locked #updBanner,body.locked #storageBanner,body.locked #driveBanner,body.locked #sideTip{display:none!important}
#authGate,#driveGate{position:fixed;inset:0;z-index:300;background:var(--bg2);
  display:flex;align-items:center;justify-content:center;overflow:auto;
  padding:max(24px,env(safe-area-inset-top)) 18px max(24px,env(safe-area-inset-bottom))}
#authGate[hidden],#driveGate[hidden]{display:none}
/* v4.5: the Drive connect gate reuses the auth card; its choice buttons want a
   little more room to breathe than the tight sheet choices. */
#driveGate .authcard{text-align:left}
#driveGate .authlogo,#driveGate .authttl,#driveGate .authsub,#driveGate .authbtn{text-align:center}
#driveGate .authlogo{margin-left:auto;margin-right:auto}
#driveGate .choose{margin-top:10px}
#driveGate .authbtn{margin-bottom:4px}
.authwrap{width:100%;max-width:400px;margin:auto}
.authcard{background:var(--elev);border:1px solid var(--border);border-radius:18px;
  box-shadow:var(--shadow);padding:32px 28px 26px;text-align:center}
.authlogo{width:46px;height:46px;margin:0 auto 16px;border-radius:12px;background:var(--accent-soft);
  display:flex;align-items:center;justify-content:center;color:var(--accent)}
.authlogo svg{width:26px;height:26px}
.authttl{font-size:22px;font-weight:700;letter-spacing:-.02em;color:var(--ink);margin:0 0 6px}
.authsub{font-size:14.5px;line-height:1.55;color:var(--ink2);margin:0 0 20px}
.authsub b{color:var(--ink);font-weight:600}
.authform{display:flex;flex-direction:column;gap:12px;text-align:left}
.authinput{width:100%;height:46px;padding:0 14px;font-size:16px;color:var(--ink);background:var(--bg);
  border:1.5px solid var(--border2);border-radius:11px;outline:none;transition:border-color .15s,box-shadow .15s}
.authinput::placeholder{color:var(--ink3)}
.authinput:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
.authbtn{width:100%;height:46px;font-size:15px;font-weight:600;color:var(--accent-ink);background:var(--accent);
  border:0;border-radius:11px;cursor:pointer;transition:filter .15s,opacity .15s}
.authbtn:hover{filter:brightness(1.06)}
.authbtn:disabled{opacity:.6;cursor:default}
.authfine{font-size:12.5px;line-height:1.5;color:var(--ink3);margin:16px 0 0}
.authfield{display:flex;flex-direction:column;gap:5px}
.authlbl{font-size:12.5px;font-weight:600;color:var(--ink2);text-align:left}
.authinput[type=date]{appearance:none;-webkit-appearance:none;min-height:46px}
.autherr{font-size:13px;line-height:1.45;color:var(--red);background:var(--red-soft);border-radius:9px;padding:8px 11px;text-align:left}
.autherr[hidden]{display:none}
.otpwrap{display:flex;gap:clamp(6px,2.4vw,11px);justify-content:center;margin:4px 0 16px}
.otpbox{width:clamp(40px,13vw,52px);height:clamp(50px,16vw,60px);text-align:center;font-size:24px;font-weight:600;
  color:var(--ink);background:var(--bg);border:1.5px solid var(--border2);border-radius:12px;outline:none;
  font-variant-numeric:tabular-nums;transition:border-color .12s,box-shadow .12s}
.otpbox:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
.otpbox:disabled{opacity:.6}
.otpwrap.shake{animation:otpShake .4s cubic-bezier(.36,.07,.19,.97)}
@keyframes otpShake{10%,90%{transform:translateX(-1px)}20%,80%{transform:translateX(2px)}30%,50%,70%{transform:translateX(-5px)}40%,60%{transform:translateX(5px)}}
.authrow{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:2px}
.authlink{background:none;border:0;padding:4px 2px;font-size:13.5px;color:var(--accent);cursor:pointer;font-weight:500}
.authlink:disabled{color:var(--ink3);cursor:default}
.authlink:hover:not(:disabled){text-decoration:underline}
@media (prefers-reduced-motion:reduce){.otpwrap.shake{animation:none}}
@media (max-width:420px){.authcard{padding:26px 20px 22px}.authttl{font-size:20px}}