:root{--bg:#f4f4f2;--panel:#fff;--ink:#141414;--muted:#6b6b6b;--line:#e4e3df;--red:#CC2228;--red2:#a51b20;--green:#1f7a4d;--amber:#b7791f;--blue:#2b5fa8;--chip:#efeeea;--shadow:0 1px 2px rgba(0,0,0,.06),0 4px 16px rgba(0,0,0,.05);color-scheme:light}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0b0b0b;--panel:#2b2b2b;--ink:#ffffff;--muted:#c4c4c4;--line:#474747;--chip:#1a1a1a;--shadow:0 1px 0 rgba(255,255,255,.04),0 2px 8px rgba(0,0,0,.6);color-scheme:dark}}
:root[data-theme=dark]{--bg:#0b0b0b;--panel:#2b2b2b;--ink:#ffffff;--muted:#c4c4c4;--line:#474747;--chip:#1a1a1a;--shadow:0 1px 0 rgba(255,255,255,.04),0 2px 8px rgba(0,0,0,.6);color-scheme:dark}
*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.45 -apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Roboto,Helvetica,Arial,sans-serif}
button,input,select,textarea{font:inherit;color:inherit}a{color:inherit}
.hidden{display:none!important}
.btn{border:1px solid var(--line);background:var(--panel);padding:8px 12px;border-radius:8px;cursor:pointer;font-weight:600;white-space:nowrap}
.btn:hover{border-color:#bbb}.btn.red{background:var(--red);border-color:var(--red);color:#fff}.btn.red:hover{background:var(--red2)}
.btn.ghost{background:transparent;border-color:transparent}.btn.sm{padding:5px 9px;font-size:13px}.btn:disabled{opacity:.5;cursor:default}
input,select,textarea{border:1px solid var(--line);background:var(--panel);border-radius:8px;padding:8px 10px;width:100%}
textarea{resize:vertical;min-height:70px}label{display:block;font-size:12px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
label>input,label>select,label>textarea{margin-top:4px;text-transform:none;letter-spacing:0;font-weight:400;color:var(--ink);font-size:15px}
.chip{display:inline-flex;align-items:center;gap:4px;background:var(--chip);border-radius:99px;padding:2px 9px;font-size:12px;font-weight:600}
.chip.red{background:var(--red);color:#fff}.chip.green{background:#e3f2ea;color:var(--green)}.chip.amber{background:#fbf0dc;color:#8a5a12}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .chip.green{background:#16382a;color:#8fe3b6}:root:not([data-theme=light]) .chip.amber{background:#3a2d16;color:#ffd38a}}
:root[data-theme=dark] .chip.green{background:#16382a;color:#8fe3b6}:root[data-theme=dark] .chip.amber{background:#3a2d16;color:#ffd38a}
.bk{display:inline-flex;align-items:center;border-radius:4px;padding:1px 6px;font-size:11px;font-weight:800;letter-spacing:.3px;text-transform:uppercase;border:1px solid transparent}
.bk.active{background:#CC2228;color:#fff}.bk.nurture{background:#e3ecfb;color:#1d4fa8}.bk.dead{background:#e6e6e6;color:#555}.bk.past{background:#e3f2ea;color:#1f7a4d}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .bk.nurture{background:#17294a;color:#9cc1ff}:root:not([data-theme=light]) .bk.dead{background:#333;color:#bbb}:root:not([data-theme=light]) .bk.past{background:#16382a;color:#8fe3b6}}
:root[data-theme=dark] .bk.nurture{background:#17294a;color:#9cc1ff}:root[data-theme=dark] .bk.dead{background:#333;color:#bbb}:root[data-theme=dark] .bk.past{background:#16382a;color:#8fe3b6}
.tlpick{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:10px}.tlpick button[aria-current=true]{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.bkgrid .row{padding:4px 0;border-bottom:1px solid var(--line)}.bkgrid select{width:150px;flex:none}

.muted{color:var(--muted)}.small{font-size:13px}.row{display:flex;gap:8px;align-items:center}.grow{flex:1}.wrap{flex-wrap:wrap}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px}@media(max-width:600px){.grid2{grid-template-columns:1fr}}

/* top bar */
.top{position:sticky;top:0;z-index:20;background:#111;color:#fff;border-bottom:3px solid var(--red)}
.top .in{display:flex;align-items:center;gap:14px;padding:10px 16px;max-width:1600px;margin:0 auto}
.brand{display:flex;flex-direction:column;line-height:1.05}.brand b{font-size:19px;letter-spacing:.06em}.brand b em{color:var(--red);font-style:normal}.brand span{font-size:10px;letter-spacing:.22em;opacity:.7;text-transform:uppercase}
.nav{display:flex;gap:2px;overflow-x:auto;scrollbar-width:none;flex:1}.nav::-webkit-scrollbar{display:none}
.nav button{background:none;border:0;color:#cfcfcf;padding:8px 11px;border-radius:7px;cursor:pointer;font-weight:600;white-space:nowrap;position:relative}
.nav button[aria-current=true]{background:#2a2a2a;color:#fff}.nav .dot{position:absolute;top:3px;right:2px;background:var(--red);color:#fff;border-radius:99px;font-size:10px;padding:0 5px;line-height:15px}
.bell{background:none;border:0;color:#fff;font-size:19px;cursor:pointer;position:relative;padding:4px}.bell .dot{position:absolute;top:-2px;right:-4px;background:var(--red);border-radius:99px;font-size:10px;padding:0 5px;line-height:15px}
.me{font-size:13px;opacity:.8;cursor:pointer;background:none;border:0;color:#fff}
@media(max-width:760px){.top .in{flex-wrap:wrap;gap:8px}.nav{order:3;flex-basis:100%}.me{display:none}}

main{max-width:1600px;margin:0 auto;padding:16px}
.bar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:12px}.bar h2{margin:0 8px 0 0;font-size:20px}
.pills{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}.pills button{border:1px solid var(--line);background:var(--panel);border-radius:99px;padding:6px 12px;cursor:pointer;font-weight:600;white-space:nowrap}
.pills button[aria-pressed=true]{background:var(--ink);color:var(--bg);border-color:var(--ink)}

/* board */
.board{display:flex;gap:12px;overflow-x:auto;padding-bottom:12px;align-items:flex-start;min-height:60vh}
.col{flex:0 0 272px;background:var(--chip);border-radius:12px;padding:8px;max-height:calc(100vh - 190px);display:flex;flex-direction:column}
.col h3{font-size:13px;margin:4px 6px 8px;display:flex;justify-content:space-between;gap:6px}.col h3 .n{color:var(--muted)}
.col.ghost h3{color:var(--muted)}.col.closed h3{color:var(--green)}.col .list{overflow-y:auto;display:flex;flex-direction:column;gap:7px;min-height:40px;padding:2px}
.col.drop{outline:2px dashed var(--red);outline-offset:-2px}
.card{background:var(--panel);border-radius:9px;padding:9px 10px;box-shadow:var(--shadow);cursor:grab;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;border:1px solid transparent;position:relative}
.card:hover{border-color:var(--line)}.card .nm{font-weight:700;display:flex;gap:6px;align-items:center}.card .meta{font-size:12px;color:var(--muted);margin-top:3px;display:flex;gap:8px;flex-wrap:wrap}
.card .sla{border-left:3px solid var(--red)}.card.late{border-left:4px solid var(--red)}.unread{width:8px;height:8px;background:var(--red);border-radius:50%;display:inline-block}
.av{width:22px;height:22px;border-radius:50%;background:#333;color:#fff;font-size:10px;font-weight:700;display:inline-flex;align-items:center;justify-content:center}

/* lists */
.panel{background:var(--panel);border-radius:12px;box-shadow:var(--shadow);border:1px solid var(--line)}
.tbl{width:100%;border-collapse:collapse}.tbl th,.tbl td{text-align:left;padding:9px 12px;border-bottom:1px solid var(--line);font-size:14px;vertical-align:top}
.tbl th{font-size:11px;text-transform:uppercase;color:var(--muted);letter-spacing:.05em}.tbl tr.click:hover td{background:var(--chip);cursor:pointer}
@media(max-width:700px){.tbl .hm{display:none}}
.empty{padding:30px;text-align:center;color:var(--muted)}
.section{padding:14px 16px;border-bottom:1px solid var(--line)}.section:last-child{border-bottom:0}.section h3{margin:0 0 10px;font-size:15px}

/* drawer */
.shade{position:fixed;inset:0;background:rgba(0,0,0,.35);z-index:40}
.drawer{position:fixed;top:0;right:0;bottom:0;width:min(640px,100vw);background:var(--bg);z-index:41;display:flex;flex-direction:column;box-shadow:-8px 0 30px rgba(0,0,0,.2)}
.dh{background:var(--panel);padding:14px 16px;border-bottom:1px solid var(--line)}.dh h2{margin:0;font-size:21px}
.dh .acts{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}
.tabs{display:flex;gap:2px;background:var(--panel);border-bottom:1px solid var(--line);overflow-x:auto;padding:0 10px}.tabs button{border:0;background:none;padding:10px 12px;font-weight:700;color:var(--muted);cursor:pointer;border-bottom:3px solid transparent;white-space:nowrap}
.tabs button[aria-current=true]{color:var(--ink);border-color:var(--red)}
.db{flex:1;overflow-y:auto;padding:14px 16px}
.thread{display:flex;flex-direction:column;gap:8px}.msg{max-width:82%;padding:8px 11px;border-radius:12px;background:var(--panel);border:1px solid var(--line);white-space:pre-wrap;word-wrap:break-word}
.msg.out{align-self:flex-end;background:#1f1f1f;color:#fff;border-color:#1f1f1f}.msg.portal{border-color:var(--blue)}.msg .t{font-size:11px;opacity:.7;margin-top:3px}.msg.failed{border:2px solid var(--red)}
.composer{background:var(--panel);border-top:1px solid var(--line);padding:10px 12px;display:flex;flex-direction:column;gap:6px}
.note{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:9px 11px;margin-bottom:8px;white-space:pre-wrap}.note .t{font-size:12px;color:var(--muted);margin-bottom:3px}
.note.call{border-left:4px solid var(--blue)}.note.stage,.note.assign,.note.system{background:transparent;border-style:dashed}
.ms{display:grid;grid-template-columns:24px 1fr;gap:8px;padding:8px 0;border-bottom:1px solid var(--line)}.ms .dot{width:14px;height:14px;border-radius:50%;margin-top:9px;background:#bbb}
.ms.done .dot{background:var(--green)}.ms.current .dot{background:var(--red);box-shadow:0 0 0 4px rgba(204,34,40,.2)}.ms.skipped{opacity:.45}
.ms .f{display:grid;grid-template-columns:1fr 140px 120px;gap:6px}@media(max-width:600px){.ms .f{grid-template-columns:1fr 1fr}.ms .f input:first-child{grid-column:1/-1}}

/* modal + toast */
.modal{position:fixed;inset:0;z-index:60;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.4);padding:16px}
.modal>form,.modal>div{background:var(--panel);border-radius:14px;padding:18px;width:min(560px,100%);max-height:90vh;overflow:auto;display:flex;flex-direction:column;gap:10px}
.modal h3{margin:0}.toast{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);background:#111;color:#fff;padding:10px 16px;border-radius:9px;z-index:80;max-width:90vw;box-shadow:0 6px 20px rgba(0,0,0,.3)}
.toast.err{background:var(--red)}
.notes-pop{position:fixed;top:58px;right:12px;width:min(380px,94vw);max-height:70vh;overflow:auto;z-index:50}
.notes-pop .n{padding:10px 12px;border-bottom:1px solid var(--line);font-size:14px;cursor:pointer}.notes-pop .n.new{background:rgba(204,34,40,.07)}
.code{font-family:ui-monospace,Menlo,monospace;font-size:12px;background:var(--chip);padding:8px;border-radius:7px;word-break:break-all;user-select:all}

/* auth */
.auth{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:16px;background:#111}
.auth form{background:var(--panel);border-radius:14px;padding:26px;width:min(400px,100%);display:flex;flex-direction:column;gap:12px;border-top:5px solid var(--red)}
.auth h1{margin:0;font-size:24px;letter-spacing:.05em}.auth h1 em{color:var(--red);font-style:normal}

/* stronger card contrast in dark mode */
@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .card{border-color:var(--line)}:root:not([data-theme=light]) .col{border:1px solid #2c2c2c}:root:not([data-theme=light]) .av{background:#5a5a5a}}
:root[data-theme=dark] .card{border-color:var(--line)}:root[data-theme=dark] .col{border:1px solid #2c2c2c}:root[data-theme=dark] .av{background:#5a5a5a}
.card .meta{color:var(--muted)}.col h3{color:var(--ink)}
.theme{background:none;border:1px solid #444;color:#fff;border-radius:8px;padding:4px 9px;cursor:pointer;font-size:13px}

/* stacked pipelines */
.pipe{margin-bottom:14px}
.pipe-h{display:flex;align-items:center;gap:8px;width:100%;text-align:left;background:none;border:0;border-top:2px solid var(--line);padding:10px 2px 8px;font-size:17px;font-weight:800;color:var(--ink);cursor:pointer}
.pipe-h .caret{width:14px;color:var(--red)}.pipe-h.drop{outline:2px dashed var(--red);outline-offset:2px;border-radius:8px}
.pipe .board{min-height:0;padding-bottom:6px}.pipe .col{max-height:60vh}

/* ===== Adam Martinez look (matches Romeo Echo Mint): white bar, red rule, black pill nav, condensed headings ===== */
:root{--bg:#ffffff;--panel:#f2f2f2;--card:#ffffff;--ink:#111111;--muted:#5f5f5f;--line:#e2e2e2;--chip:#e9e9e9;--shadow:none;--head:"Oswald","Bebas Neue",Impact,"Arial Narrow",sans-serif}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0b0b0b;--panel:#1c1c1c;--card:#2b2b2b;--line:#3d3d3d;--chip:#141414}}
:root[data-theme=dark]{--bg:#0b0b0b;--panel:#1c1c1c;--card:#2b2b2b;--line:#3d3d3d;--chip:#141414}
html,body{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}
.top{background:var(--bg);color:var(--ink);border-bottom:3px solid var(--red);box-shadow:none}
.top .in{padding:10px 20px;gap:18px}
.brand{flex-direction:row;align-items:center;gap:14px;text-decoration:none}
.brand img{height:42px;width:auto;display:block}.brand .lw{display:none}
.brand .tag{font-family:var(--head);font-weight:600;font-size:17px;letter-spacing:.35em;color:var(--red);opacity:1;text-transform:uppercase}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .brand .lb{display:none}:root:not([data-theme=light]) .brand .lw{display:block}}
:root[data-theme=dark] .brand .lb{display:none}:root[data-theme=dark] .brand .lw{display:block}
.nav button{color:var(--ink);font-size:16px;font-weight:600;padding:9px 14px;border-radius:9px}
.nav button:hover{background:var(--chip)}
.nav button[aria-current=true]{background:var(--ink);color:var(--bg)}
.bell,.me,.theme{color:var(--ink)}.theme{border-color:var(--line)}
.me{opacity:1;display:flex;align-items:center;gap:8px;font-weight:600}
.me .ph{width:40px;height:40px;border-radius:50%;background:#111;color:#fff;border:2px solid var(--line);display:inline-flex;align-items:center;justify-content:center;font-family:var(--head);font-size:16px;letter-spacing:.04em}
@media(max-width:760px){.brand img{height:32px}.brand .tag{font-size:13px;letter-spacing:.25em}.me{display:flex}.me .nm{display:none}}

/* headings */
.bar h2,.section h3,.pipe-h,.dh h2,.modal h3,.auth h1{font-family:var(--head);text-transform:uppercase;letter-spacing:.02em;font-weight:700}
.bar h2{font-size:30px;line-height:1.1}.section h3{font-size:20px;margin-bottom:12px}.dh h2{font-size:26px}.pipe-h{font-size:22px;font-weight:600}
.col h3{font-family:var(--head);font-weight:500;font-size:15px;letter-spacing:.03em;text-transform:uppercase}

/* panels like the Mint stat and leaderboard cards: light gray, thin border, red top rule */
.panel{background:var(--panel);border:1px solid var(--line);border-top:4px solid var(--red);border-radius:12px;box-shadow:none}
.panel .section{border-color:var(--line)}
.col{background:var(--panel);border:1px solid var(--line);border-radius:12px}
.card{background:var(--card);border:1px solid var(--line);box-shadow:0 1px 2px rgba(0,0,0,.05)}
.card:hover{border-color:#bdbdbd}
input,select,textarea,.btn{background:var(--card)}
.btn{border-radius:9px}.btn.red{border-radius:9px}
.pills button[aria-pressed=true],.tlpick button[aria-current=true]{background:var(--ink);color:var(--bg)}
.drawer{background:var(--bg)}.dh,.tabs,.composer{background:var(--bg)}
.tbl th{font-family:var(--head);font-weight:500;font-size:13px;letter-spacing:.06em}
.stat{background:var(--panel);border:1px solid var(--line);border-top:4px solid var(--red);border-radius:12px;padding:16px 18px}
.stat .k{font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.stat .v{font-family:var(--head);font-size:34px;font-weight:700;line-height:1.15}

/* sign in */
.auth{background:var(--bg)}
.auth form{background:var(--panel);border:1px solid var(--line);border-top:5px solid var(--red)}
.auth .logo{display:block;width:100%;max-width:300px;margin:0 auto 4px}.auth .tag{text-align:center;font-family:var(--head);color:var(--red);letter-spacing:.4em;font-size:18px;font-weight:600}
@media(max-width:520px){.brand .tag{display:none}.brand img{height:30px}.top .in{gap:8px;padding:8px 12px}.brand{flex:1}.me .ph{width:34px;height:34px;font-size:14px}}
/* Mint-style welcome + stat cards */
.welcome{display:flex;align-items:center;gap:18px;margin:6px 0 18px}
.welcome .ph{width:72px;height:72px;border-radius:50%;background:#111;color:#fff;border:3px solid var(--line);display:inline-flex;align-items:center;justify-content:center;font-family:var(--head);font-size:28px;flex:none}
.welcome h1{margin:0;font-family:var(--head);text-transform:uppercase;font-size:38px;font-weight:700;letter-spacing:.01em;line-height:1.05}
.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:18px}
.stats .stat{border-top:1px solid var(--line)}.stats .stat.hot{border-top:4px solid var(--red)}
.stat .v{font-size:38px}.stat .sub{color:var(--muted);font-size:15px;margin-top:2px}.stat .sub.warn{color:var(--red);font-weight:600}
@media(max-width:900px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.welcome h1{font-size:28px}.welcome .ph{width:54px;height:54px;font-size:21px}.stats{gap:10px}.stat{padding:12px 14px}.stat .v{font-size:28px}.stat .sub{font-size:13px}}
/* Tasks tab turns red when something is due today */
.nav button.due{background:var(--red);color:#fff}.nav button.due[aria-current=true]{background:var(--red2);color:#fff}
.nav button .cnt{display:inline-block;background:#fff;color:var(--red);border-radius:99px;font-size:12px;font-weight:800;padding:0 6px;margin-left:4px;line-height:18px}
.red{color:var(--red)}

/* Escrows: monday.com style board */
.mgroup{margin-bottom:22px}
.mg-h{font-family:var(--head);font-size:21px;font-weight:600;text-transform:uppercase;color:var(--g);margin:0 0 6px 2px}.mg-h span{color:var(--muted);font-size:16px;margin-left:4px}
.mscroll{overflow-x:auto;border:1px solid var(--line);border-left:6px solid var(--g);border-radius:10px;background:var(--card)}
.mtbl{width:100%;border-collapse:collapse;min-width:980px;font-size:14px}
.mtbl th{font-family:var(--head);font-weight:500;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);text-align:center;padding:8px 6px;border-bottom:1px solid var(--line);background:var(--panel)}
.mtbl th.c1,.mtbl td.c1{text-align:left;width:240px}.mtbl th.nx,.mtbl td.nx{text-align:left;width:190px}
.mtbl td{padding:8px 10px;border-bottom:1px solid var(--line);border-right:1px solid var(--line);vertical-align:middle}
.mtbl tr:last-child td{border-bottom:0}.mtbl tr.click:hover td.c1,.mtbl tr.click:hover td.nx{background:var(--panel)}
.mc{text-align:center;font-weight:700;font-size:13px;width:104px;color:#fff;padding:6px 4px!important}.mc small{display:block;font-weight:500;font-size:11px;opacity:.9}
.mc.done{background:#00c875}.mc.late{background:#df2f4a}.mc.today{background:#fdab3d}.mc.week{background:#ffcb00;color:#323338}.mc.later{background:#579bfc}.mc.none{background:var(--panel);color:var(--muted);font-weight:400}
.mstat{display:inline-block;background:var(--chip);border-radius:6px;padding:3px 8px;font-size:12px;font-weight:700;white-space:nowrap}
.mlegend{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:4px 0 20px}.mlegend .mc{display:inline-block;width:auto;padding:3px 9px!important;border-radius:5px}

/* Escrows: zoomed out timeline */
.tline{overflow-x:auto}
.tl-grid{display:grid;grid-template-columns:230px minmax(640px,1fr);min-width:880px}
.tl-name{padding:9px 14px;border-bottom:1px solid var(--line);display:flex;flex-direction:column;justify-content:center;cursor:pointer}
.tl-track{position:relative;border-bottom:1px solid var(--line);min-height:50px}
.tl-head{font-family:var(--head);text-transform:uppercase;font-size:13px;color:var(--muted);letter-spacing:.06em;min-height:34px;background:var(--card)}
.tl-head span{position:absolute;top:9px;transform:translateX(-50%)}
.tl-track .wk{position:absolute;top:0;bottom:0;border-left:1px dashed var(--line)}.tl-track .today{position:absolute;top:0;bottom:0;border-left:2px solid var(--red);z-index:1}
.tl-track .span{position:absolute;top:22px;height:6px;border-radius:3px;background:var(--chip)}
.pt{position:absolute;top:18px;width:14px;height:14px;border-radius:50%;transform:translateX(-50%);z-index:2;border:2px solid var(--card)}
.pt.big{width:20px;height:20px;top:15px;border-radius:4px;transform:translateX(-50%) rotate(45deg)}
.mlegend .pt,.pt.inl{position:relative;top:0;transform:none;display:inline-block}.mlegend .pt.big{transform:rotate(45deg);width:14px;height:14px}
.pt.done{background:#00c875}.pt.late{background:#df2f4a}.pt.today{background:#fdab3d}.pt.week{background:#ffcb00}.pt.later{background:#579bfc}

/* Escrows: calendar */
.ecal-wrap{display:grid;grid-template-columns:1fr 300px;gap:16px;align-items:start}@media(max-width:900px){.ecal-wrap{grid-template-columns:1fr}}
.ecal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid var(--line)}
.ecal .dh{font-family:var(--head);text-transform:uppercase;font-size:12px;color:var(--muted);padding:6px;text-align:center;border-bottom:1px solid var(--line)}
.ecal .dc{min-height:104px;padding:4px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--card);overflow:hidden}.ecal .dc:nth-child(7n){border-right:0}
.ecal .dc.out{background:var(--panel)}.ecal .dc.out .dn{opacity:.4}.ecal .dc.now .dn{background:var(--red);color:#fff;border-radius:99px;display:inline-block;padding:0 7px}
.ecal .dn{font-weight:700;font-size:13px;margin-bottom:3px}
.ecal .ev{font-size:11px;font-weight:600;border-radius:4px;padding:2px 5px;margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#fff;cursor:pointer}
.ecal .ev.done{background:#00c875}.ecal .ev.late{background:#df2f4a}.ecal .ev.today{background:#fdab3d}.ecal .ev.week{background:#ffcb00;color:#323338}.ecal .ev.later{background:#579bfc}
@media(max-width:600px){.ecal .dc{min-height:64px}.ecal .ev{font-size:9px;padding:1px 3px}}
/* profile drop down */
.me .car{font-size:12px;color:var(--muted)}
.memenu{position:fixed;top:64px;right:14px;z-index:55;background:var(--bg);border:1px solid var(--line);border-top:3px solid var(--red);border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.15);min-width:230px;padding:6px;display:flex;flex-direction:column}
.memenu .mm-who{padding:10px 12px;border-bottom:1px solid var(--line);margin-bottom:4px;display:flex;flex-direction:column}.memenu .mm-who span{font-size:13px;color:var(--muted)}
.memenu button{text-align:left;background:none;border:0;padding:10px 12px;border-radius:8px;font-weight:600;font-size:15px;cursor:pointer;color:var(--ink)}
.memenu button:hover,.memenu button[aria-current=true]{background:var(--chip)}.memenu button.out{color:var(--red);border-top:1px solid var(--line);border-radius:0 0 8px 8px;margin-top:4px}
.nav button{padding:8px 11px;font-size:15px}
.pills.dept button{font-size:15px;padding:7px 14px}.pills button.hot{background:var(--red);color:#fff;border-color:var(--red)}
.mtbl th.nt,.mtbl td.nt{text-align:left;width:220px;cursor:pointer}.mtbl td.nt:hover{background:#fff8e1}
/* Pre-Approval and Loan Estimate: red boxes, like Command */
.nav button.lend{background:var(--red);color:#fff;border-radius:8px;text-transform:uppercase;font-family:var(--head);font-weight:600;letter-spacing:.04em;margin-left:6px}
.nav button.lend:hover{background:var(--red2)}
/* passwords vault */
.vlock{display:flex;justify-content:center;padding-top:8vh}.vlock .panel{width:min(380px,100%)}
.vt td{vertical-align:middle}.vt tr.vg td{font-family:var(--head);text-transform:uppercase;color:var(--red);font-size:15px;font-weight:600;background:var(--bg);padding-top:14px}
.vpw{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:14px;margin-right:6px}
.vbtn{background:none;border:1px solid var(--line);border-radius:6px;padding:1px 6px;cursor:pointer;font-size:13px;margin-left:2px}.vbtn:hover{background:var(--chip)}
.vt td a{white-space:nowrap}.vt td:nth-child(3){white-space:nowrap}
/* quick follow ups + task runner */
.qrow{display:flex;gap:5px;flex-wrap:wrap;align-items:center;margin-top:8px}
.qf{border:1px solid var(--line);background:var(--card);border-radius:99px;padding:4px 10px;font-size:13px;font-weight:600;cursor:pointer;color:var(--ink)}
.qf:hover{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.runbar{background:#fff8e6;border:2px solid var(--red);border-radius:12px;padding:10px 12px;margin-bottom:12px}
.runbar .qf{background:#fff}.rb-n{background:var(--red);color:#fff;border-radius:6px;padding:2px 8px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
:root[data-theme=dark] .runbar{background:#2a2111}
/* About card on each client */
.about{margin-top:10px;background:var(--panel);border:1px solid var(--line);border-left:4px solid var(--red);border-radius:10px;padding:8px 12px;font-size:13px;display:flex;flex-direction:column;gap:4px}
.about .ab-chips{display:flex;flex-wrap:wrap;gap:6px}.about .ab-chips span{background:var(--card);border:1px solid var(--line);border-radius:99px;padding:2px 9px;font-weight:600}
.about .ab-l{display:flex;gap:8px}.about .ab-k{font-weight:700;white-space:nowrap;min-width:108px;color:var(--muted)}
.about #abEdit{align-self:flex-start}
.frow{display:grid;grid-template-columns:1fr 1fr auto;gap:6px;margin-bottom:6px}.frow.mem{grid-template-columns:150px 1fr auto}
@media(max-width:600px){.frow.mem{grid-template-columns:1fr auto}.frow.mem input[type=date]{grid-column:1/-1}}
.msel{border:1px solid var(--line);font-size:12px;font-weight:700;padding:4px 6px;max-width:170px;cursor:pointer}
.col.escrowcol{background:#fff4f4;border:2px dashed var(--red)}
/* checklists */
.clbar{height:8px;background:var(--chip);border-radius:99px;margin-top:8px;overflow:hidden}.clbar i{display:block;height:100%;background:var(--red)}
.clsec{font-family:var(--head);text-transform:uppercase;color:var(--red);font-weight:600;font-size:15px;margin:12px 0 4px}.clsec:first-child{margin-top:0}
.clitem{display:flex;gap:10px;align-items:center;padding:7px 4px;border-bottom:1px solid var(--line);text-transform:none;letter-spacing:0;font-size:15px;font-weight:500;color:var(--ink);cursor:pointer}
.clitem input{width:20px;height:20px;flex:none;accent-color:#1f7a4d}.clitem.done .grow{text-decoration:line-through;color:var(--muted)}.clitem .vbtn{opacity:.4}.clitem:hover .vbtn{opacity:1}

.panel.gp{border-top:4px solid var(--red);background:#fff7f7}
[data-theme=dark] .panel.gp{background:#2a1a1b}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .panel.gp{background:#2a1a1b}}

.welcome .relogo{width:76px;height:76px;flex:none;background:url(/icons/re-black.png?v=1) center/contain no-repeat}
:root[data-theme=dark] .welcome .relogo{background-image:url(/icons/re-white.png?v=1)}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .welcome .relogo{background-image:url(/icons/re-white.png?v=1)}}
@media(max-width:520px){.welcome .relogo{width:56px;height:56px}}

/* red underline under titles */
.ttl,.bar h2,.section h3,.dh h2,.welcome h1,.pgh h2{position:relative}
.ttl::after,.bar h2::after,.section h3::after,.dh h2::after,.welcome h1::after{content:"";display:block;width:44px;height:3px;background:var(--red);border-radius:2px;margin-top:5px}
.pipe-h .ttl{display:inline-block}.pipe-h{align-items:flex-start}.pipe-h .caret,.pipe-h>.muted{margin-top:2px}
.welcome h1::after{width:64px;height:4px;margin-top:8px}

/* Bonzo-style board */
.col:not(.escrowcol){background:none;border:0!important;padding:0}
.colh{background:var(--chip);border:1px solid var(--line);border-radius:10px;padding:12px 14px 11px}
.colh h3{margin:0 0 7px;font-family:var(--font,inherit);text-transform:none;letter-spacing:0;font-size:15px;font-weight:700;color:var(--ink)}
.colh .cs{display:flex;gap:14px;font-size:12.5px;color:var(--muted)}.colh .cs span{display:inline-flex;align-items:center;gap:5px}.colh .cs .due{color:var(--red);font-weight:600}
.col.ghost .colh h3{color:var(--muted)}.col.closed .colh h3{color:var(--green)}
.coladd{display:flex;align-items:center;justify-content:center;width:100%;background:none;border:0;color:var(--muted);padding:9px 0;cursor:pointer;border-radius:8px}.coladd:hover{color:var(--red);background:var(--chip)}.coladd .ic{width:18px;height:18px}
.col:not(.escrowcol) .list{gap:8px;padding:0}
.card{display:flex;gap:11px;align-items:flex-start;padding:12px 13px;border:1px solid var(--line);border-radius:9px;box-shadow:none}
.card .cb{min-width:0;flex:1}.card .nm{font-size:15px;margin-bottom:3px}
.card .cl{display:flex;align-items:center;gap:7px;font-size:13px;color:var(--muted);line-height:1.55;min-width:0}.card .cl .ic{width:14px;height:14px;flex:none}
.card .cl.over{color:var(--red)}.card .cl.today{color:#3b82f6}.card .ell{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.card .meta{margin-top:6px}.card.late{border-left:4px solid var(--red)}
.lav{width:28px;height:28px;flex:none;border-radius:6px;color:#fff;font-weight:700;font-size:14px;display:inline-flex;align-items:center;justify-content:center}
.ic{width:15px;height:15px;vertical-align:-2px}

/* Bonzo-style tasks */
.pgh{display:flex;align-items:flex-end;gap:12px;margin:4px 0 16px;flex-wrap:wrap}.pgh h2{margin:0;font-family:var(--head);text-transform:uppercase;font-size:30px;line-height:1.1}
.ttabs{display:flex;gap:4px;margin-bottom:12px;flex-wrap:wrap}
.ttabs button{background:none;border:1px solid transparent;color:var(--muted);font-weight:600;font-size:15px;padding:8px 14px;border-radius:9px;cursor:pointer;display:inline-flex;gap:8px;align-items:center}
.ttabs button b{background:var(--chip);color:var(--ink);font-size:12px;padding:1px 7px;border-radius:6px}
.ttabs button[aria-pressed=true]{color:var(--ink);border-color:var(--line);background:var(--panel)}.ttabs button.hot b{background:var(--red);color:#fff}
.tlist{display:flex;flex-direction:column;gap:10px;margin-bottom:18px}
.trow{display:flex;gap:14px;align-items:flex-start;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:16px 18px;cursor:pointer}.trow:hover{border-color:var(--red)}
.tcheck{appearance:none;-webkit-appearance:none;width:20px;height:20px;border:2px solid var(--muted);border-radius:50%;margin:3px 0 0;flex:none;cursor:pointer}.tcheck:hover{border-color:var(--green)}.tcheck:checked{background:var(--green);border-color:var(--green)}
.trow .tb{min-width:0;flex:1}.trow .tt{font-size:19px;font-weight:700;margin-bottom:8px}
.trow .tm{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:13.5px;color:var(--muted);align-items:center}.trow .tm span,.trow .tm a{display:inline-flex;align-items:center;gap:6px}
.trow .tm .over{color:var(--red);font-weight:600}.trow .tm .now{color:#22a35a;font-weight:600}.trow .tlead{color:var(--muted);text-decoration:none}.trow .tlead:hover{color:var(--ink)}.trow .lav{width:20px;height:20px;font-size:11px;border-radius:5px}
.agenda summary{padding:14px 16px;cursor:pointer;font-weight:700}
@media(max-width:520px){.trow{padding:13px}.trow .tt{font-size:16px}}
.col.escrowcol h3{color:var(--ink)}.col.escrowcol h3 .n{color:var(--muted)}.col.escrowcol .small{color:var(--muted)}
:root[data-theme=dark] .col.escrowcol{background:#241618;border-color:var(--red)!important}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .col.escrowcol{background:#241618;border-color:var(--red)!important}}

/* coaching */
.coact{display:flex;align-items:center;gap:12px;padding:7px 0;font-size:15px;cursor:pointer}.coact .tcheck{margin:0}.coact.done .grow{text-decoration:line-through;color:var(--muted)}
.coact span.over,.coact span.now,.coact>span:not(.grow){display:inline-flex;align-items:center;gap:5px;font-size:13px;color:var(--muted);white-space:nowrap}.coact span.over{color:var(--red);font-weight:600}.coact span.now{color:#22a35a;font-weight:600}
.colist{display:flex;flex-direction:column;gap:14px}.cotitle{font-size:19px;font-weight:700}
.colabel{font-family:var(--head);text-transform:uppercase;letter-spacing:.04em;font-size:14px;color:var(--muted);margin-bottom:6px}
.cokeys{margin:0;padding-left:20px}.cokeys li{margin:5px 0;line-height:1.45}.cokeys li::marker{color:var(--red)}
.conotes summary{cursor:pointer;font-weight:600}.conotetext{white-space:pre-wrap;margin-top:10px;font-size:14px;line-height:1.5;color:var(--muted)}
.coact{text-transform:none;letter-spacing:0;font-family:inherit;font-weight:500;color:var(--ink)}
.colinks{display:flex;flex-wrap:wrap;gap:8px}
.colink{display:flex;align-items:center;gap:12px;background:var(--panel);border:1px solid var(--line);border-left:4px solid var(--red);border-radius:10px;padding:11px 12px 11px 14px;text-decoration:none;color:var(--ink);min-width:0;max-width:100%}.colink:hover{border-color:var(--red)}
.colink .cli{font-size:22px}.colink b{display:block}.colink small{display:block;color:var(--muted);font-size:12.5px}.colink.add{border-style:dashed;border-left-width:1px;background:none;color:var(--muted);cursor:pointer;font-weight:600}
.colink{padding:7px 10px;border-left-width:3px;gap:8px;font-size:14px}.colink .cli{font-size:17px}
.cotop{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:14px;margin-bottom:6px;align-items:start}
.coquick textarea{width:100%;font-size:15px;min-height:120px}
.cobox .section{padding:12px 14px}.cobox .coact{padding:4px 0;font-size:14px}.cobox .coact .tcheck{width:17px;height:17px}.cobox .coact>span:not(.grow){font-size:12px}
.coopen.xtra{display:none}#coMore{margin-top:4px}
@media(max-width:820px){.cotop{grid-template-columns:1fr}.cobox{order:-1}}
.cotabs{display:flex;gap:8px;overflow-x:auto;padding-bottom:6px;margin-bottom:10px;scrollbar-width:thin}
.cotabs button{flex:none;display:flex;flex-direction:column;align-items:flex-start;gap:2px;background:var(--panel);border:1px solid var(--line);border-radius:9px;padding:8px 13px;cursor:pointer;color:var(--muted);text-align:left;max-width:220px}
.cotabs button b{color:var(--ink);font-size:14px}.cotabs button small{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:190px}
.cotabs button[aria-pressed=true]{border-color:var(--red);box-shadow:inset 0 -3px 0 var(--red)}
.brand .tag{letter-spacing:.16em;font-size:16px;white-space:nowrap}@media(max-width:760px){.brand .tag{font-size:12px;letter-spacing:.1em}}
.nav button.money{background:#1f9d55;color:#fff;border-radius:8px;font-weight:700}.nav button.money:hover{background:#17803f}.nav button.money[aria-current=true]{background:#146c36;box-shadow:inset 0 -3px 0 #0b4521}
.nav button.lend{background:var(--ink);color:var(--bg)}.nav button.lend:hover{background:var(--ink);opacity:.85}

/* lanes: light gray column behind white cards so they stand out */
:root{--lane:#efefec;--lanehead:#e2e2de}
:root[data-theme=dark]{--lane:#151515;--lanehead:#232323}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lane:#151515;--lanehead:#232323}}
.col:not(.escrowcol){background:var(--lane);border-radius:12px;padding:8px 8px 10px}
.colh{background:var(--lanehead);border-color:transparent}
.card{box-shadow:0 1px 2px rgba(0,0,0,.08),0 2px 6px rgba(0,0,0,.05);border-color:#dcdcd8}
:root[data-theme=dark] .card{box-shadow:none;border-color:var(--line)}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .card{box-shadow:none;border-color:var(--line)}}
.coladd{padding:7px 0}.coladd:hover{background:var(--lanehead)}
.agrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px 16px}.agrid small{display:block;color:var(--muted);font-size:12px}.agrid b{font-size:14.5px}
.arivebox{border-top:4px solid #1f9d55}
.pltbl td{padding:15px 12px;vertical-align:middle}.pltbl .plname{font-size:16px}
.pill2{display:inline-block;min-width:28px;text-align:center;background:var(--chip);border:1px solid var(--line);border-radius:7px;padding:2px 8px;font-weight:700;font-size:13px}.pill2.dark{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.plchg{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--muted);text-transform:none;letter-spacing:0;min-width:220px}.plchg select{font-weight:700}
#board .pipe-h{display:none}#board .pipe{margin-top:4px}

/* unified activity feed */
.ffilt{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:10px;position:sticky;top:0;background:var(--panel);padding:4px 0;z-index:1}
.ffilt button,.seg button{border:1px solid var(--line);background:var(--chip);color:var(--ink);border-radius:99px;padding:5px 11px;font-weight:600;font-size:13px;cursor:pointer}
.ffilt button[aria-pressed=true],.seg button[aria-pressed=true]{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.seg{display:flex;gap:6px}
.feed{display:flex;flex-direction:column;gap:8px}
.fi{border:1px solid var(--line);border-radius:10px;padding:9px 12px;background:var(--panel);max-width:92%}
.fi .fh{font-size:12px;color:var(--muted);margin-bottom:3px}.fi .fb{white-space:pre-wrap;font-size:14.5px;line-height:1.45}.fi .fs{font-weight:700;margin-bottom:2px}
.fi.out{align-self:flex-end;background:#e9f6ee;border-color:#c5e6d1}.fi.in{align-self:flex-start;background:var(--chip)}
.fi.note{align-self:stretch;max-width:100%;background:#fff8e6;border-color:#f0dfb0}.fi.sys{align-self:stretch;max-width:100%;background:none;border-style:dashed}.fi.sys .fb{font-size:13px;color:var(--muted)}
.fi.failed{border-color:var(--red)}
:root[data-theme=dark] .fi.out{background:#123321;border-color:#1f5a38}:root[data-theme=dark] .fi.note{background:#2e2712;border-color:#5a4a1c}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .fi.out{background:#123321;border-color:#1f5a38}:root:not([data-theme=light]) .fi.note{background:#2e2712;border-color:#5a4a1c}}

/* client header: contact, actions and quick note up top, details folded below */
.dcontact{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:4px;font-size:15px}.dcontact a{color:var(--ink);text-decoration:none;font-weight:600}.dcontact a:hover{color:var(--red)}
.dstage{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:8px}.stpill{background:var(--ink);color:var(--bg);border-radius:99px;padding:3px 11px;font-size:12.5px;font-weight:700}
.acts2{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:12px}
.abtn{display:flex;flex-direction:column;align-items:center;gap:3px;background:var(--chip);border:1px solid var(--line);border-radius:12px;padding:10px 4px;font-size:20px;cursor:pointer;color:var(--ink)}.abtn span{font-size:12.5px;font-weight:700}.abtn:hover{border-color:var(--red)}
.qnote{display:flex;gap:8px;margin-top:10px}.qnote input{flex:1;font-size:15px}
.lendrow{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}
.lbtn{background:var(--ink);color:var(--bg);border:0;border-radius:10px;padding:10px;font-family:var(--head);text-transform:uppercase;letter-spacing:.04em;font-weight:600;font-size:15px;cursor:pointer}.lbtn:hover{opacity:.85}
.ddet{margin-top:10px;border-top:1px solid var(--line);padding-top:8px}.ddet summary{cursor:pointer;font-weight:700;color:var(--muted);font-size:13.5px}
.drawer .note.system,.drawer .note.stage{opacity:.75}
.fi.sys{padding:4px 10px;display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}.fi.sys .fh{margin:0}.fi.sys .fb{font-size:12.5px}
.wkto{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.wkr{display:flex;gap:8px;align-items:center;border:1px solid var(--line);border-radius:10px;padding:7px 10px;text-transform:none;letter-spacing:0;font-weight:400;cursor:pointer}.wkr input{width:auto}.wkr small{display:block;color:var(--muted)}
.wkcard{border-top:4px solid #1f9d55}
.prow{display:grid;grid-template-columns:110px 1fr 1fr 1fr;gap:6px;align-items:center;margin:6px 0}.prow b{font-size:13px}
@media(max-width:600px){.prow{grid-template-columns:1fr 1fr}.prow b{grid-column:1/-1}}

/* campaigns */
.ctable{width:100%;border-collapse:collapse}.ctable th{text-align:left;font-size:12px;color:var(--muted);padding:10px 12px;border-bottom:1px solid var(--line)}
.ctable td{padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:middle}.ctable tbody tr{cursor:pointer}.ctable tbody tr:hover{background:var(--soft,rgba(0,0,0,.03))}
.sw{position:relative;display:inline-block;width:38px;height:22px}.sw input{opacity:0;width:0;height:0}.sw span{position:absolute;inset:0;background:#c9c9cf;border-radius:22px;transition:.2s;cursor:pointer}
.sw span:before{content:"";position:absolute;width:16px;height:16px;left:3px;top:3px;background:#fff;border-radius:50%;transition:.2s}.sw input:checked+span{background:var(--red,#d0021b)}.sw input:checked+span:before{transform:translateX(16px)}
.cday{margin-bottom:10px}.cstep{display:flex;gap:10px;padding:10px;border:1px solid var(--line);border-radius:10px;margin-top:8px;cursor:pointer;background:var(--card,#fff)}.cstep:hover{border-color:var(--ink)}
.cstep .ci{font-size:18px}.chk{text-transform:none!important;letter-spacing:0!important;gap:8px;margin-top:6px}.chk input{width:auto!important}
.cstages{max-height:320px;overflow:auto;border:1px solid var(--line);border-radius:8px;padding:6px 10px}
.campstrip{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:8px 0}.cchip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:999px;padding:3px 6px 3px 10px;font-size:12px;background:var(--card,#fff)}
.cchip small{color:var(--muted)}.cchip button{border:0;background:none;cursor:pointer;color:var(--muted);font-size:12px}
@media (max-width:700px){.ctable th:nth-child(3),.ctable td:nth-child(3),.ctable th:nth-child(4),.ctable td:nth-child(4){display:none}}
.campstrip.onbonzo{background:rgba(245,180,0,.12);border:1px solid rgba(245,180,0,.45);border-radius:10px;padding:8px 10px;justify-content:space-between}
.movecol{display:block;width:calc(100% - 16px);margin:0 8px 6px;border:1px dashed rgba(245,180,0,.7);background:rgba(245,180,0,.1);color:inherit;border-radius:8px;padding:5px;font-size:12px;font-weight:700;cursor:pointer}
.edept{font-size:11px;padding:1px 4px;border-radius:6px;width:auto;margin-right:4px;display:inline-block}
