/* canna_glass_theme_v1.css — the 2026-07-04 facelift (keeper: "apple glass, better palette").
   Loaded LAST: overrides the :root palette + re-skins chrome (cards, topbar, buttons, tags)
   with translucent layered glass. Text colors stay WCAG-4.5 (the LL-5 contrast fixes hold).
   No layout changes — pure surface. Remove this one <link> to fall back to the old look. */

:root{
  /* porcelain base with a faint botanical aurora (painted on body::before) */
  --bg:#edf1f4;
  /* v26 (operator "need the three levels"): cards go SOLID — translucent .62/.55 let the blue
     page bleed through, which is exactly why Learning/Settings/History didn't read as clean
     white cards. Solid white = the L3 level; box-color handles L2. */
  --card:#ffffff;
  --card2:rgb(241,245,250);
  --bord:rgba(30,45,38,.10);
  --bord-md:rgba(30,45,38,.18);
  --hover:rgba(255,255,255,.85);
  --t0:#0e1417;
  --t1:#2c3a40;
  --t2:#42535b;
  --t3:#4e5f67;

  /* accent: deep emerald-sage (buttons/links) + glass tints */
  --a:#4a86d8;
  --al:rgba(74,134,216,.10);
  --am:rgba(74,134,216,.28);
  --ad:#3568b5;

  --dot-gold:#7b8794;
  --dot-red:#d05548;
  --dot-blue:#5a7fc0;
  --dot-green:#4a86d8;

  --red:#b23c33;  --redl:rgba(208,85,72,.10);  --redm:rgba(208,85,72,.30);
  --amb:#4e5a66;  --ambl:rgba(110,125,140,.12); --ambm:rgba(110,125,140,.30);
  --blu:#2f4f8e;  --blul:rgba(90,127,192,.12); --blum:rgba(90,127,192,.30);
  --grn:#2e5f9e;  --grnl:rgba(74,134,216,.12); --grnm:rgba(74,134,216,.30);

  /* soft layered depth (glass sits ON the aurora, so shadows stay cool + airy) */
  --sh:0 1px 2px rgba(18,32,26,.05), 0 2px 8px rgba(18,32,26,.04);
  --sh-md:0 2px 6px rgba(18,32,26,.06), 0 10px 28px rgba(18,32,26,.07);
  --sh-lg:0 6px 16px rgba(18,32,26,.08), 0 20px 48px rgba(18,32,26,.10);
}

/* the aurora backdrop the glass refracts */
body{background:var(--bg)}
body::before{
  content:""; position:fixed; inset:0; z-index:-1; pointer-events:none;
  background:
    radial-gradient(58% 48% at 8% -10%, rgba(74,134,216,.26), transparent 64%),
    radial-gradient(52% 44% at 100% -2%, rgba(74,134,216,.18), transparent 62%),
    radial-gradient(58% 52% at 30% 112%, rgba(74,134,216,.12), transparent 64%),
    linear-gradient(180deg,#eff3f6 0%, #e6ebef 100%);
}

/* ── frosted chrome ─────────────────────────────────────────────────────── */
.topbar{
  /* V3: floating glass island, the Apple-nav signature (was a full-bleed bar) */
  margin:10px 14px 0 !important;
  border-radius:18px !important;
  background:rgba(255,255,255,.66) !important;
  -webkit-backdrop-filter:blur(24px) saturate(1.7);
  backdrop-filter:blur(24px) saturate(1.7);
  border:1px solid rgba(255,255,255,.7) !important;
  border-bottom:1px solid rgba(255,255,255,.7) !important;
  outline:1px solid rgba(20,40,45,.08); outline-offset:-1px;
  box-shadow:0 1px 0 rgba(255,255,255,.8) inset, 0 12px 32px rgba(14,30,40,.10);
}

.card,.card2,.cal-card{
  background:var(--card) !important;
  -webkit-backdrop-filter:blur(18px) saturate(1.35);
  backdrop-filter:blur(18px) saturate(1.35);
  border:1px solid rgba(255,255,255,.65);
  outline:1px solid var(--bord); outline-offset:-1px;
  border-radius:18px !important;
  box-shadow:var(--sh-md), inset 0 1px 0 rgba(255,255,255,.75);
  transition:box-shadow .18s ease, transform .18s ease;
}
.card:hover{box-shadow:var(--sh-lg)}

/* ── buttons: continuous-corner, gradient primary, glass ghosts ─────────── */
.btn,.btn-sm,.btn-xs,.btn-gh,.btn-sub{
  border-radius:10px !important;
  transition:transform .12s ease, box-shadow .12s ease, background .12s ease;
}
.btn-p{
  /* v3 hierarchy (eye: "increase visual hierarchy for key actions"): primary pops,
     secondaries recede to quiet glass */
  background:linear-gradient(180deg,#639be6 0%, #3f78d0 100%) !important;
  border:1px solid rgba(35,80,150,.55) !important;
  color:#fff !important;
  font-weight:600 !important;
  box-shadow:0 1px 0 rgba(255,255,255,.35) inset, 0 3px 12px rgba(63,120,208,.35);
}
.btn-p:hover{transform:translateY(-1px); box-shadow:0 1px 0 rgba(255,255,255,.4) inset, 0 6px 16px rgba(63,120,208,.4)}
.btn-p:active{transform:translateY(0)}
.btn-gh,.btn-sub{
  color:var(--t2) !important;
  background:rgba(255,255,255,.4) !important;
  -webkit-backdrop-filter:blur(8px);
  backdrop-filter:blur(8px);
  border:1px solid rgba(30,45,38,.14) !important;
}
.btn-gh:hover,.btn-sub:hover{background:rgba(255,255,255,.85) !important}
.btn-red{
  background:linear-gradient(180deg,#d0655a 0%, #b0473c 100%) !important;
  border:1px solid rgba(120,35,28,.5) !important; color:#fff !important;
}

/* ── tags/badges: tinted glass pills ────────────────────────────────────── */
.tag{
  border-radius:999px !important;
  border-width:1px !important;
  letter-spacing:.04em;
  -webkit-backdrop-filter:blur(6px);
  backdrop-filter:blur(6px);
}

/* ── sub-tab pills (Action Feed / Weekly Plan / …, Settings stabs) ──────── */
.stab,.tbn{border-radius:10px !important}
.stab.active,.stabs .active{
  background:rgba(255,255,255,.9) !important;
  box-shadow:var(--sh), 0 0 0 1px rgba(30,45,38,.10);
}

/* ── inputs get the frost too ───────────────────────────────────────────── */
input[type=text],input[type=search],input[type=email],select,textarea{
  background:rgba(255,255,255,.6);
  border:1px solid rgba(30,45,38,.14);
  border-radius:10px;
  -webkit-backdrop-filter:blur(8px);
  backdrop-filter:blur(8px);
}
input:focus,select:focus,textarea:focus{
  outline:none; border-color:var(--a);
  box-shadow:0 0 0 3px rgba(62,95,174,.20);
}

/* the decision workspace is its own frosted layer (was flat --bg: read as unfinished) */
.ws-col{
  /* V3: floating inset pane instead of a full-bleed column */
  margin:12px 14px 12px 4px;
  border-radius:18px;
  background:rgba(255,255,255,.5) !important;
  -webkit-backdrop-filter:blur(26px) saturate(1.5);
  backdrop-filter:blur(26px) saturate(1.5);
  border:1px solid rgba(255,255,255,.65);
  outline:1px solid rgba(20,40,45,.07); outline-offset:-1px;
  box-shadow:0 10px 30px rgba(14,30,40,.10);
  overflow:hidden;
}

/* slim modern scrollbars */
*{scrollbar-width:thin; scrollbar-color:rgba(60,80,130,.35) transparent}
::-webkit-scrollbar{width:8px;height:8px}
::-webkit-scrollbar-thumb{background:rgba(60,80,130,.3); border-radius:99px}
::-webkit-scrollbar-track{background:transparent}

/* ── dark mode: smoked glass over a deep botanical night ────────────────── */
html.dark{
  --bg:#101413;
  --card:rgba(26,32,30,.62);
  --card2:rgba(22,27,25,.5);
  --bord:rgba(235,245,240,.09);
  --bord-md:rgba(235,245,240,.16);
  --hover:rgba(40,48,45,.8);
}
html.dark body::before{
  background:
    radial-gradient(52% 42% at 12% -6%, rgba(99,102,241,.16), transparent 62%),
    radial-gradient(46% 38% at 96% 2%,  rgba(56,140,220,.12), transparent 60%),
    linear-gradient(180deg,#12171a 0%, #0c1013 100%);
}
html.dark .topbar{
  background:rgba(18,23,21,.6) !important;
  border-bottom:1px solid rgba(235,245,240,.07) !important;
  box-shadow:0 1px 0 rgba(255,255,255,.04) inset, 0 8px 24px rgba(0,0,0,.35);
}
html.dark .card,html.dark .card2,html.dark .cal-card{
  background:var(--card) !important;
  border:1px solid rgba(255,255,255,.08);
  outline-color:rgba(235,245,240,.06);
}
html.dark .btn-gh,html.dark .btn-sub{
  background:rgba(40,48,45,.5) !important;
  border:1px solid rgba(235,245,240,.12) !important;
}

/* v5 green sweep: the $-amount / data-fix chips were hardcoded green in index.html */
.wi-impact-val{
  color:#2e5f9e !important;
  background:linear-gradient(135deg,#eef4fc,#e3edf9) !important;
  box-shadow:0 1px 2px rgba(46,95,158,.10) !important;
}

/* ── v6 "AI-Manager look" unification (operator 2026-07-05): BLACK text, color only
   in icons/dots, soft blue-tinted glass backgrounds, ONE azure theme throughout ── */

/* nav: dark text always; active = azure-tinted pill, not colored text */
.tbn{color:var(--t1) !important;font-weight:600 !important;border-radius:10px !important}
.tbn:hover{background:rgba(74,134,216,.08)}
.tbn.active{
  color:var(--t0) !important;
  background:rgba(74,134,216,.13) !important;
  box-shadow:inset 0 0 0 1px rgba(74,134,216,.22);
}
.tbn.active::after{display:none !important}  /* kill the colored underline */

/* tags: dark text on tinted glass — color lives in the background, not the words */
.tag{color:var(--t1) !important;font-weight:600}
.t-red{background:var(--redl) !important;color:#8c2f28 !important}   /* semantic red kept, darkened */
.t-amb{background:var(--ambl) !important;color:#42505c !important}
.t-grn,.t-blu{background:rgba(74,134,216,.12) !important;color:#274a78 !important}

/* money/value chips: near-black numerals on azure tint (the AI-Manager treatment) */
.wi-impact-val{color:#16324f !important}
.mb-v{color:var(--t0) !important}

/* buttons stay azure; ghost buttons get the blue-tinted glass */
.btn-gh,.btn-sub{background:rgba(74,134,216,.06) !important;border:1px solid rgba(74,134,216,.18) !important;color:var(--t1) !important}
.btn-gh:hover,.btn-sub:hover{background:rgba(74,134,216,.12) !important}

/* section headers / panel titles: black, letterspaced — color never carries meaning in text */
.stab{color:var(--t1) !important;font-weight:600}
.stab.active,.stabs .active{color:var(--t0) !important;background:rgba(74,134,216,.13) !important;box-shadow:inset 0 0 0 1px rgba(74,134,216,.2)}

/* page wash: a touch more blue in the base so panels sit on the tint */
body::before{opacity:1}
:root{--bg:#eaf0f6}
html.dark{--bg:#101319}

/* ── v8 (operator 2026-07-05): floating panes everywhere + declutter ── */
/* the greeting bar + feed column float like the nav island */
#screen-today > div:first-child, .day-hdr{
  margin:10px 14px 0 !important; border-radius:16px !important;
  background:rgba(255,255,255,.6) !important;
  -webkit-backdrop-filter:blur(18px) saturate(1.4); backdrop-filter:blur(18px) saturate(1.4);
  border:1px solid rgba(255,255,255,.65) !important;
  outline:1px solid rgba(20,40,45,.07); outline-offset:-1px;
  box-shadow:0 8px 24px rgba(14,30,40,.07);
}
.feed-col{
  margin:12px 4px 12px 14px; border-radius:18px;
  background:rgba(255,255,255,.42) !important;
  -webkit-backdrop-filter:blur(22px) saturate(1.4); backdrop-filter:blur(22px) saturate(1.4);
  border:1px solid rgba(255,255,255,.6);
  outline:1px solid rgba(20,40,45,.07); outline-offset:-1px;
  box-shadow:0 10px 30px rgba(14,30,40,.08); overflow:hidden;
}
/* declutter: filter checkboxes row + duplicate items/$ counters (operator: data repeated
   more than needed — the feed itself already says what's urgent and worth how much) */
.brief-txt, #fct-inline, #fct-inline + span, #fct-dollar, .today-items-counter{display:none !important}

/* ════════════════════════════════════════════════════════════════════════
   v22 — 3 COLOR LEVELS on the 6ceff67 floating-box foundation (operator-approved).
   Structure/depth/spacing untouched (that's the restored foundation). ONLY color:
     L1 page  = BLUE
     L2 boxes + menu = the menu's own color, rgba(255,255,255,.66) (frosted over blue)
     L3 data area / cards = solid WHITE
   ════════════════════════════════════════════════════════════════════════ */
/* L1 — solid blue page (no aurora) */
body{ background:#d6e3f2 !important; }
body::before{ display:none !important; }
.screen, #screen-today, #screen-accounts, #screen-team, #screen-intel-growth, #screen-config{ background:transparent !important; }

/* L2 — the menu AND every floating box share the menu's frosted color (keeps 6ceff67 depth) */
.topbar,
.feed-col, .ws-col, .acct-lp, .acct-rp, .team-lp, .team-rp,
#screen-today > div:first-child, .day-hdr,
.am-hero, .am-side, #ta-side-list{
  background:rgba(255,255,255,.66) !important;
}

/* L3 — the data area / cards inside the boxes are solid white */
.wi, .card, .card2, .am-card, .am-row, .cal-card, .ws-body, .feed-list{
  background:#ffffff !important;
}

/* v22b: give the OTHER screens' panes the SAME floating-box depth Today's feed/workspace
   have (Dispensaries = 3 boxes, AI Manager/Intel/Settings panes = boxes). Color already set. */
.acct-lp, .acct-rp, .team-lp, .team-rp, .am-body, #ta-side-list, .am-side,
#ig-body, #engine-room, #screen-config .settings-wrap, #screen-intel-growth > div{
  border-radius:18px !important;
  box-shadow:0 10px 30px rgba(14,30,40,.08) !important;
  margin:12px !important;
  border:1px solid rgba(255,255,255,.6) !important;
  overflow:hidden;
}

/* v22c: KILL the blue line under the greeting — it was the 12px transparent gap between
   the greeting box and the feed/workspace boxes letting the blue page show as a full-width
   line. Remove the top gap so the greeting box meets the content boxes with NO blue strip. */
.feed-col, .ws-col, .today-shell{ margin-top:0 !important; padding-top:0 !important; }
#screen-today > div:first-child{ margin-bottom:0 !important; }

/* v22d: ROOT CAUSE of every blue-line/blue-tint = the boxes were TRANSLUCENT
   (rgba 255,255,255,.66) so the blue page bled THROUGH them and overlapping translucent
   layers (e.g. the .brief strip at .62) banded blue. Make L2 boxes + menu SOLID/opaque at
   the exact color the menu appears as (light blue-white). No alpha = nothing bleeds through. */
.topbar,
.feed-col, .ws-col, .acct-lp, .acct-rp, .team-lp, .team-rp,
#screen-today > div:first-child, .day-hdr,
.am-hero, .am-side, #ta-side-list{
  background:rgb(241,245,250) !important;
  border-color:rgba(20,40,70,.08) !important;
}
/* inner strips/scrollers that were translucent -> solid box color (kills the band under Noah) */
.brief, .feed-list, .ws-body{ background:rgb(241,245,250) !important; border-bottom:none !important; }
/* L3 cards solid white */
.wi, .card, .card2, .am-card, .cal-card{ background:#ffffff !important; }

/* v22e: DECISIVE kill of the line under Noah — remove the border+shadow at the greeting↔feed
   boundary and hide the .brief strip, so the greeting flows into the feed with no hairline,
   no shadow, no band. Boxes stay solid & same color; feed/workspace keep their OUTER shadow. */
#screen-today > div:first-child, .day-hdr{
  border:none !important; box-shadow:none !important; margin:0 14px 0 14px !important;
}
.brief{ display:none !important; }
.feed-col, .ws-col{ box-shadow:none !important; }         /* no top shadow to read as a line */
.today-shell{ box-shadow:none !important; }
/* give the WHOLE today content one soft outer shadow instead (depth without interior lines) */
.today-shell{ border-radius:0 0 18px 18px; }

/* v23 — the 5 operator items ONLY (nothing else touched) */

/* 1. Today: boxes were touching — restore spacing between them (now opaque, gap is clean) */
#screen-today > div:first-child{ margin-bottom:12px !important; }
.feed-col, .ws-col{ margin-top:12px !important; }

/* 2. Dispensaries: the main box was TRANSLUCENT (rgba .62, bled blue) → different color than the
      sidebar. Make its wrappers solid the same box color; cards inside stay white. */
.acct-rp, .acct-rp > div, .acct-rp .sh, .acct-rp .stabs{ background:rgb(241,245,250) !important; }
.acct-rp .card, .acct-rp .mb-cell, .acct-rp table, .acct-rp .wi, .acct-rp .cal-card{ background:#ffffff !important; }
/* the main panel is an IFRAME (dispensaries_overview.html) with its OWN cream bg — parent CSS
   can't paint inside it, so the fix is in that file's --bg/--card vars; this just makes the
   iframe ELEMENT box-color too so no cream shows in any gap. */
.acct-rp iframe, #screen-accounts iframe{ background:rgb(241,245,250) !important; }

/* 3+4. AI Manager: the 'Company overview' heading AND the Overview/Weekly Plan/Projects tab row
        should be the THIRD box (white), like the rest. */
.am-hero{ background:#ffffff !important; }
#screen-team .stabs, #screen-team .am-tabs, #screen-team > .stabs{ background:#ffffff !important; }

/* v24 — REBUILD the 'Good morning, Noah' greeting as a REAL distinct floating box.
   Operator: "line is still there, no space between it and the Canna Cure Farms bar, just
   rebuild it." Root cause: v22e stripped its radius+shadow+top-margin, so it rendered FLAT
   and FLUSH to the menu — a band, not a card, and the menu's own bottom edge read as a line
   under it. Fix: give it air below the menu, air before the feed, rounding, and a soft float.
   This selector comes LAST so it overrides every earlier greeting rule. */
#screen-today > div:first-child{
  background:rgb(241,245,250) !important;          /* L2 box color, fully opaque */
  margin:16px 14px 16px 14px !important;           /* AIR above (below menu) AND below (before feed) */
  padding:14px 22px !important;
  border:none !important;
  border-radius:16px !important;                   /* rounded corners => reads as its own card */
  box-shadow:0 1px 4px rgba(20,40,70,.07) !important;  /* soft float; a shadow, never a hairline */
}
/* the feed box keeps its own gap; don't double it now that the greeting owns its bottom margin */
.feed-col, .ws-col{ margin-top:0 !important; }

/* v29 — MATCH the reference tabs exactly (operator: 'use the other tabs as guides'). The guide
   (Dispensaries/AI Manager) = blue page → ONE floating cream box (rgb 241,245,250 = the SAME
   color as the topbar) → white cards. The group tabs (Intelligence, Settings) were wrong: a
   separate WHITE chip bar + a full-width cream panel = a 4th box, no blue showing, mismatched
   colors. Rebuild: the GROUP CONTAINER is the single floating cream box; the sub-tab chips and
   the content ride transparently inside it; white cards are L3. Centered max-width so blue shows. */
#screen-intel, #screen-config{
  background:rgb(241,245,250) !important;
  border-radius:18px !important;
  margin:14px auto !important;
  align-self:center !important;
  max-width:1200px !important;
  width:calc(100% - 28px) !important;
  box-shadow:0 1px 4px rgba(20,40,70,.06) !important;
  box-sizing:border-box !important;
  overflow:hidden !important;
}
/* the sub-tab chips ride at the TOP of the cream box (not their own white bar) — a quiet divider,
   no separate box. This IS the 'floating tab box' — it floats with the cream container. */
#chips-intel, #chips-config{
  background:transparent !important;
  border-bottom:1px solid rgba(20,40,70,.07) !important;
}
/* the content sub-screens are TRANSPARENT — the cream container behind them is the one L2 level
   (removes the extra box + the full-width 'too big' panel; blue now shows around the container) */
#screen-intel-growth, #screen-history, #screen-learning,
#screen-settings, #screen-connections, #screen-automations, #screen-ai-settings,
#screen-txn-cat, #screen-collections, #screen-setup{
  background:transparent !important;
  box-shadow:none !important;
  margin:0 !important;
  border-radius:0 !important;
  max-width:none !important;
  width:auto !important;
  padding:16px 22px !important;
}
/* v33 — THE extra box (finally): #ig-body was a SEPARATE inset, rounded, SHADOWED box floating
   inside the cream box (x=75 vs the cream box x=40, border-radius:18, box-shadow) — so 'Is MARTUS
   getting smarter' rendered on a THIRD box instead of directly on the cream 2nd box with the chips.
   Strip all its box styling: transparent, no shadow, no radius, full width → header sits on the
   cream box, unified with the chips; only the domain cards stay as white 3rd boxes. */
#screen-intel-growth #ig-body{
  max-width:100% !important; padding:0 !important; margin:0 !important;
  background:transparent !important; box-shadow:none !important;
  border-radius:0 !important; border:none !important;
}
/* v31b — the dash mixed WHITE (--card) and CREAM (--card2) cards; the cream ones blended into the
   cream container = 'too many boxes' and the header looked like it sat on that muddy layer. Make
   EVERY dash card white (scoped to #screen-intel so the good tabs are untouched) so it reads clean:
   blue page → cream 2nd box (header on it) → white 3rd boxes (all the domain cards). */
#screen-intel{ --card2:#ffffff !important; }
/* v29b — the dash shipped its OWN inner overflow-y:auto scroller (History has none) → a scrollbar
   and a bounded 'box within the cream box'. Route scrolling to the group body (chips stay put),
   let the dash grow to its content, and kill the nested scroller so it flows just like History. */
#body-intel{ overflow-y:auto !important; }
#screen-intel-growth{ flex:0 0 auto !important; }
#screen-intel-growth > div{ overflow:visible !important; flex:0 0 auto !important; height:auto !important; }
/* v34 — the ACTUAL third box: the scroll-WRAPPER div around #ig-body (and ig-body itself) carried
   a box-shadow + 1px border + radius:18, so the header floated on a separate box. Strip box styling
   from EVERY wrapper between the cream box and the cards, so the header sits flat on the cream. */
#screen-intel-growth, #screen-intel-growth > div, #screen-intel-growth > div > div, #screen-intel-growth #ig-body{
  background:transparent !important; box-shadow:none !important;
  border:none !important; border-radius:0 !important; outline:none !important;
}
/* L3 cards inside stay solid white, with padding so text is off the edge */
#screen-intel .card, #screen-config .card,
#screen-history .card, #screen-learning .card{ background:#ffffff !important; padding:14px 16px !important; }
/* History cards were CLIPPING content vertically at narrower widths (the effectiveness card cut
   off its last ROI rows at 1280px) — let every History card grow to fit, never clip (operator:
   'history third level boxes cut off text, too small'). */
#screen-history .card{ overflow:visible !important; height:auto !important; max-height:none !important; }
#screen-history .card > div{ overflow:visible !important; max-height:none !important; }
/* the MARTUS 'Live DOM Continuum' diagnostic renders full-width BELOW Settings (outside the cream
   box) → the operator's 'second box way too big'. Float it to the same width so it's consistent. */
.v174-lss-card{
  max-width:1200px !important; width:calc(100% - 28px) !important;
  margin:0 auto 16px !important; box-sizing:border-box !important;
}

/* ═══════════════════════════════════════════════════════════════════════════
   DARK MODE — a real dark version of the whole site (operator 2026-07-06).
   The toggle adds html.dark; these override every LIGHT color the recent work
   hardcoded (panes rgb(241,245,250), white cards #fff) and fix text for dark.
   ═══════════════════════════════════════════════════════════════════════════ */
#canna-role-switch{ display:none !important; }   /* 'view as Russ' removed from the bar */

html.dark{
  --bg:#0d1420;
  --card:#243041; --card2:#1a2432;
  --bord:rgba(255,255,255,.09); --bord-md:rgba(255,255,255,.16);
  --hover:rgba(255,255,255,.07);
  --t0:#eaf0f6; --t1:#cbd5e0; --t2:#a2aebc; --t3:#7c8896;
}
html.dark body{ background:#0d1420; }
html.dark body::before{
  background:
    radial-gradient(58% 48% at 8% -10%, rgba(74,134,216,.15), transparent 64%),
    radial-gradient(52% 44% at 100% -2%, rgba(74,134,216,.10), transparent 62%),
    linear-gradient(180deg,#0e1622 0%, #0a0f18 100%) !important;
}

/* L2 PANES — everything hardcoded to rgb(241,245,250) -> dark pane */
html.dark .topbar,
html.dark .feed-col, html.dark .ws-col, html.dark .acct-lp, html.dark .acct-rp,
html.dark .team-lp, html.dark .team-rp, html.dark #screen-today > div:first-child,
html.dark .day-hdr, html.dark .am-side, html.dark #ta-side-list,
html.dark .brief, html.dark .feed-list, html.dark .ws-body,
html.dark #screen-history, html.dark #screen-learning, html.dark #screen-config,
html.dark #screen-intel, html.dark #chips-intel, html.dark #chips-config,
html.dark .acct-rp iframe, html.dark #screen-accounts iframe{
  background:#1a2432 !important;
  border-color:rgba(255,255,255,.08) !important;
}

/* L3 CARDS — everything hardcoded to #fff -> dark card */
html.dark .wi, html.dark .card, html.dark .card2, html.dark .am-card, html.dark .cal-card,
html.dark .am-hero,
html.dark .acct-rp .card, html.dark .acct-rp .mb-cell, html.dark .acct-rp table,
html.dark .acct-rp .wi, html.dark .acct-rp .cal-card,
html.dark #screen-intel .card, html.dark #screen-config .card,
html.dark #screen-history .card, html.dark #screen-learning .card,
html.dark #screen-team .stabs, html.dark #screen-team .am-tabs{
  background:#243041 !important;
  border-color:rgba(255,255,255,.08) !important;
}
html.dark #screen-intel{ --card2:#243041 !important; }   /* dash snapshot cards */

/* controls readable on dark */
html.dark input, html.dark select, html.dark textarea{
  background:rgba(255,255,255,.05) !important; border-color:rgba(255,255,255,.14) !important; color:var(--t0) !important;
}
html.dark .fp{ color:var(--t2) !important; border-color:rgba(255,255,255,.12) !important; background:transparent !important; }
html.dark .fp.active, html.dark .stab.active, html.dark .stabs .active{ background:rgba(255,255,255,.13) !important; color:var(--t0) !important; }
html.dark .btn-gh, html.dark .btn-sub{ background:rgba(255,255,255,.06) !important; border-color:rgba(255,255,255,.14) !important; color:var(--t1) !important; }
html.dark .btn-ic{ color:var(--t1) !important; }
html.dark .tag{ border-color:rgba(255,255,255,.14) !important; }

/* v38 — inline module views on Overview must SCROLL with the page: the mounted renderers
   (growbeds wrap, ops .content) ship their own flex/overflow that trapped scrolling. */
#home-mod-view, #home-mod-view > div, #home-mod-view #growbeds-host, #home-mod-view .content{
  overflow: visible !important; height: auto !important; max-height: none !important; flex: none !important;
}
#body-team{ overflow-y: auto !important; }
#am-content{ overflow-y: auto !important; }
/* the actual clip: .am-body ships overflow:hidden + fixed height -> content trapped */
.am-body{ overflow: visible !important; height: auto !important; max-height: none !important; }

/* v39 — Transactions tab unreadable (operator): #body-config carries INLINE overflow:hidden
   (beats the consolidation stylesheet), so the expense list sat in a tiny inner scroller with
   the deposits section crushed below. Group body = the ONE scroller; txn screen flows. */
#body-config{ overflow-y: auto !important; }
#screen-txn-cat.active{ display: block !important; overflow: visible !important; height: auto !important; flex: none !important; }
#screen-txn-cat .content{ overflow: visible !important; height: auto !important; max-height: none !important; }

/* Projects task controls: compact commands plus an anchored Eastern-time snooze menu. */
.canna-task-action-controls{
  display:flex;
  gap:6px;
  flex-wrap:wrap;
  align-items:center;
  width:100%;
}
.canna-task-action-controls .canna-task-action{
  min-height:28px;
  min-width:0;
  font-size:10px;
  white-space:normal;
}
.canna-task-snooze-menu{
  position:fixed;
  z-index:99999;
  min-width:230px;
  max-width:min(320px, calc(100vw - 16px));
  padding:7px;
  border:1px solid #5f746a;
  border-radius:6px;
  background:#111713;
  box-shadow:0 8px 24px rgba(0,0,0,.45);
}
.canna-task-snooze-choice{
  display:block;
  width:100%;
  padding:7px 8px;
  border:0;
  border-radius:4px;
  background:transparent;
  color:#dce8e1;
  text-align:left;
  cursor:pointer;
}
.canna-task-snooze-choice:hover,
.canna-task-snooze-choice:focus-visible{
  background:rgba(255,255,255,.08);
  outline:none;
}
.canna-task-snooze-custom{
  display:flex;
  gap:6px;
  padding:7px 4px 2px;
}
.canna-task-snooze-custom input{
  flex:1 1 auto;
  min-width:0;
}
@media (max-width: 620px){
  .canna-task-action-controls .canna-task-action{ flex:1 1 118px; }
  .canna-task-snooze-menu{ min-width:0; width:calc(100vw - 16px); }
}
