html[data-theme=night]{
  --navy:#12283c; --blue:#2e6da4; --blue-mid:#3b7fb8; --blue-light:#6fa8d6;
  --green:#2e9e52; --green-light:#3dbf65;
  --bg:#16324a; --panel:#1b3e5c; --surface:#14304a; --ink:#ffffff; --muted:rgba(255,255,255,.62); --line:#3e6e96;
  --accent:#3dbf65; --accent-ink:#ffffff; --accent-soft:rgba(61,191,101,.16);
  --warn:#ffc040; --warn-soft:#2a1f05;
  --bar:#3dbf65; --bar-dim:#3e6e96; --shadow:0 2px 12px rgba(0,0,0,.4);
  color-scheme:dark;
}
*{box-sizing:border-box}
html{background:#16324a}
body{zoom:var(--zoom,1);text-rendering:optimizeLegibility}
#pnav{zoom:calc(1 / var(--zoom,1))}   /* the shared top menu keeps its own size: at the tablet default (200%) it ran 1928px wide on a 1280px screen (QA, Oct 30 2026) */
.achart svg text,svg text{-webkit-text-stroke:0}
.sizeBtn{padding:9px 12px;font-size:15px;white-space:nowrap}
.bar{flex-wrap:wrap;row-gap:10px}
.bar .brand{flex:1 1 auto;min-width:max-content}
.ideaBtn{order:3;width:100%}
.brand-name{white-space:nowrap}
body{margin:0;min-height:100vh;background:linear-gradient(180deg,#16324a 0%,#2a5f88 100%) fixed;color:var(--ink);font:16px/1.5 var(--font);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}
button,input,textarea{font:inherit;color:inherit}
.hidden{display:none!important}
.muted{color:var(--muted)}

/* login */
#login{min-height:100dvh;display:grid;place-items:center;padding:24px 16px}
.card{background:var(--panel);border:2px solid var(--line);border-radius:14px;box-shadow:var(--shadow)}
.login-card{width:100%;max-width:360px;padding:28px 22px}
.brand{display:flex;align-items:center;gap:12px}
.logo{width:52px;height:52px;border-radius:13px;background:#fff;flex:none;overflow:hidden;box-shadow:0 2px 12px rgba(0,0,0,.5),0 0 0 2px color-mix(in srgb,var(--ink) 15%,transparent)}
.logo img{width:100%;height:100%;object-fit:cover;display:block}
.brand-name{font-size:21px;font-weight:900;letter-spacing:-.5px;line-height:1.1;color:#fff}
.brand-sub{font-size:11px;color:color-mix(in srgb,var(--ink) 50%,transparent);text-transform:uppercase;letter-spacing:.12em;margin-top:2px}
.pulse-dot{display:none}
.login-card h1{font-size:22px;margin:18px 0 4px}
label{display:block;font-size:11px;font-weight:700;color:#fff;text-transform:uppercase;letter-spacing:.07em;margin:14px 0 6px}
input[type=text],input[type=password]{width:100%;padding:11px 12px;border:2.5px solid var(--line);border-radius:10px;background:var(--surface);color:#fff;outline:none;font-size:15px}
input::placeholder,textarea::placeholder{color:color-mix(in srgb,var(--ink) 40%,transparent)}
input:focus,textarea:focus,select:focus{border-color:var(--blue-light);box-shadow:0 0 0 3px rgba(77,163,232,.2)}
.btn{border:0;border-radius:10px;padding:12px 18px;background:linear-gradient(135deg,var(--green) 0%,var(--green-light) 100%);color:#fff;font-weight:800;cursor:pointer;box-shadow:0 2px 8px rgba(46,158,82,.4)}
.btn:active{transform:scale(.97)}
.btn:disabled{opacity:.5}
nav .btn.ghost{}
.btn.ghost{background:color-mix(in srgb,var(--ink) 10%,transparent);color:color-mix(in srgb,var(--ink) 85%,transparent);border:1.5px solid color-mix(in srgb,var(--ink) 20%,transparent);padding:8px 14px;font-weight:600;box-shadow:none}
.err{color:var(--warn);font-size:14px;min-height:20px;margin-top:10px}

/* shell */
header{position:sticky;top:0;z-index:5;padding-top:var(--safe-area-inset-top,env(safe-area-inset-top,0px));background:linear-gradient(160deg,#12283c 0%,#2e6da4 60%,#3b7fb8 100%);box-shadow:0 3px 20px rgba(0,0,0,.6)}
.navwrap{background:rgba(0,0,0,.2);border-top:1px solid color-mix(in srgb,var(--ink) 8%,transparent)}
.bar{max-width:1080px;margin:0 auto;padding:14px 16px 12px;display:flex;align-items:center;gap:12px}
.bar .brand{flex:1 1 auto;min-width:max-content}
.bar .who{font-size:13px;color:color-mix(in srgb,var(--ink) 60%,transparent)!important}
nav{max-width:1080px;margin:0 auto;padding:0 16px;display:flex;gap:2px;overflow-x:auto;scrollbar-width:none}
nav::-webkit-scrollbar{display:none}
nav button{white-space:nowrap;flex:none}
nav button{border:0;background:none;padding:10px 12px;border-bottom:3px solid transparent;color:color-mix(in srgb,var(--ink) 60%,transparent);font-weight:700;cursor:pointer;font-size:14px}
nav button.on{color:#fff;border-color:var(--green-light)}
main{max-width:1080px;margin:0 auto;padding:16px}

/* ask */
#ask{display:flex;flex-direction:column;min-height:calc(100dvh - 120px)}
#thread{flex:1;display:flex;flex-direction:column;gap:14px;padding-bottom:16px}
.intro h2{font-size:22px;font-weight:900;margin:8px 0 4px;letter-spacing:-.5px}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.chip{border:2px solid var(--line);background:var(--panel);color:#fff;border-radius:20px;padding:8px 14px;font-size:14px;font-weight:500;cursor:pointer;text-align:left}
.chip:active{transform:scale(.96)}
.chip:hover{border-color:var(--blue-light)}
.msg{max-width:780px}
.msg.user{align-self:flex-end;background:linear-gradient(135deg,var(--blue) 0%,var(--blue-mid) 100%);color:#fff;padding:10px 14px;border-radius:14px 14px 4px 14px;max-width:85%;box-shadow:0 2px 8px rgba(18,72,160,.5)}
.msg.bot{background:var(--panel);border:2px solid var(--line);border-radius:14px 14px 14px 4px;padding:12px 16px;overflow-x:auto}
.msg.bot p{margin:.4em 0}
.msg.bot table{border-collapse:collapse;margin:8px 0;font-size:14px;font-variant-numeric:tabular-nums}
.msg.bot th,.msg.bot td{border-bottom:1px solid var(--line);padding:6px 10px;text-align:left;white-space:nowrap}
.msg.bot th{color:var(--muted);font-weight:600}
.msg.bot.error{border-color:var(--warn);background:var(--warn-soft)}
details.how{margin-top:8px;font-size:13px;color:var(--muted)}
details.how pre{white-space:pre-wrap;font:12px/1.45 ui-monospace,Menlo,Consolas,monospace;background:var(--bg);padding:8px;border-radius:8px;margin:6px 0}
.thinking{display:flex;gap:6px;align-items:center;color:var(--muted);font-size:14px}
.steps{list-style:none;margin:8px 0 0;padding:0;font-size:13px;color:var(--muted)}
.steps li{padding:2px 0}
.steps li:before{content:"✓ ";color:var(--green-light)}
.steps li.now:before{content:"… ";color:var(--warn)}
.achart{margin:10px 0 6px;background:var(--surface);border:2px solid var(--line);border-radius:12px;padding:10px 10px 6px}
.achart h4{margin:0 0 6px;font-size:11px;text-transform:uppercase;letter-spacing:.08em}
.achart svg{width:100%;height:auto;display:block}
.legend{display:flex;gap:12px;flex-wrap:wrap;font-size:12px;color:var(--muted);margin-top:4px}
.legend i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:4px;vertical-align:-1px}
.follow{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.follow .chip{font-size:13px;padding:7px 12px;border-color:var(--green)}
.actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.actions button{font-size:12px;padding:6px 10px}
details.how .q{border-top:1px solid var(--line);padding-top:6px;margin-top:6px}
.thinking i{width:7px;height:7px;border-radius:50%;background:var(--accent);animation:b 1s infinite ease-in-out}
.thinking i:nth-child(2){animation-delay:.15s}.thinking i:nth-child(3){animation-delay:.3s}
@keyframes b{0%,80%,100%{opacity:.25}40%{opacity:1}}
.composer{position:sticky;bottom:0;padding:10px 0 calc(10px + var(--safe-area-inset-bottom,env(safe-area-inset-bottom,0px)));background:linear-gradient(180deg,rgba(42,95,136,0) 0%,#244f73 35%)}
.composer form{display:flex;gap:8px;align-items:flex-end;background:var(--surface);border:2.5px solid var(--line);border-radius:14px;padding:6px 6px 6px 12px;box-shadow:var(--shadow)}
.composer textarea{flex:1;border:0;outline:none;background:transparent;resize:none;max-height:140px;padding:8px 0}
.notice{background:var(--warn-soft);border:1px solid var(--warn);border-radius:10px;padding:10px 12px;font-size:14px;margin-bottom:12px}

/* dashboard */
.dash-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px}
.dash-head h2{flex:1;margin:0;font-size:19px;font-weight:900;letter-spacing:-.3px}
.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px}
.tile{padding:14px}
.tile .k{font-size:11px;color:#fff;text-transform:uppercase;letter-spacing:.08em;font-weight:800}
.tile .v{font-size:25px;font-weight:900;letter-spacing:-.02em;margin-top:4px;font-variant-numeric:tabular-nums}
.tile .s{font-size:13px;color:var(--muted)}
.w.drill{cursor:pointer}.w.drill:hover{border-color:var(--cyan,#4f9ee8)}
.drillHint{font-size:11px;color:var(--muted);margin-top:6px;text-align:right}
.dOv{position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:50;display:flex;align-items:flex-end;justify-content:center}
.dBox{background:var(--panel,#0b1620);color:inherit;border:1px solid var(--line);border-radius:16px 16px 0 0;width:100%;max-width:760px;max-height:85vh;overflow:auto;padding:14px 16px}
@media(min-width:700px){.dOv{align-items:center}.dBox{border-radius:16px}}
.up{color:var(--accent)} .down{color:var(--warn)}
.grid2{display:grid;grid-template-columns:1fr;gap:10px;margin-top:10px}
@media(min-width:820px){.grid2{grid-template-columns:1fr 1fr}}
.panel{padding:14px 16px}
.panel h3{margin:0 0 10px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.chart{display:flex;align-items:flex-end;gap:6px;height:170px;padding-top:18px}
.col{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;height:100%;justify-content:flex-end;min-width:0}
.col .b{width:100%;background:var(--bar-dim);border-radius:4px 4px 0 0;min-height:2px;position:relative}
.col:last-child .b{background:var(--bar)}
.col .lbl{font-size:10px;color:var(--muted);white-space:nowrap}
.col .amt{font-size:10px;color:var(--muted);white-space:nowrap}
.rows{display:flex;flex-direction:column}
.row{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px solid var(--line);font-size:14px}
.row:last-child{border-bottom:0}
.row .n{font-variant-numeric:tabular-nums;font-weight:600;white-space:nowrap}
.row .t{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hbar{height:6px;border-radius:3px;background:var(--bar-dim);margin-top:3px}
.hbar>span{display:block;height:100%;border-radius:3px;background:var(--bar)}
.foot{font-size:12px;color:var(--muted);margin-top:14px}

.ideaBtn{padding:10px 14px;font-size:14px;white-space:nowrap}
@media(max-width:640px){.bar{flex-wrap:wrap}.ideaBtn{order:3;width:100%;padding:11px;font-size:15px}.bar .who{display:none}}
.ideaForm textarea{width:100%;min-height:120px;padding:12px;border:2.5px solid var(--line);border-radius:10px;background:var(--surface);color:#fff;font:inherit;font-size:16px;resize:vertical;outline:none}
.status{display:inline-block;padding:1px 9px;border-radius:10px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}
.st-new{background:#1b3e5c;border:1.5px solid var(--blue-light)}
.st-inprogress{background:#2a1f05;border:1.5px solid var(--warn);color:var(--warn)}
.st-done{background:linear-gradient(135deg,var(--green),var(--green-light))}
.st-needsdave,.st-needsinfo{background:#2a1f05;border:1.5px solid var(--warn);color:var(--warn)}
.st-declined{background:color-mix(in srgb,var(--ink) 10%,transparent)}
.idea{padding:12px 0;border-bottom:1px solid var(--line)}
.idea:last-child{border-bottom:0}
.idea .resp{margin-top:6px;padding:8px 10px;border-left:3px solid var(--green-light);background:rgba(61,191,101,.08);border-radius:0 8px 8px 0;font-size:14px}

/* 2026 lead-source fixer */
.srcIn{width:210px;max-width:60vw;padding:9px 10px;border:2.5px solid var(--line);border-radius:10px;background:var(--surface);color:#fff;font:inherit;outline:none}
.c26row{display:flex;flex-wrap:wrap;gap:8px 10px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}
.c26row:last-child{border-bottom:0}
.c26row .who{flex:1 1 220px;min-width:0}
.c26row input[type=checkbox]{width:22px;height:22px;accent-color:var(--green)}
.c26row.done{opacity:.55}
.c26row,.fixrow{transition:opacity .4s,transform .4s,max-height .4s;max-height:400px}
.c26row.gone,.fixrow.gone{opacity:0;transform:translateX(40px);max-height:0;padding:0;overflow:hidden;border:0}
.bulkbar{position:sticky;top:0;z-index:3;display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:10px;margin-bottom:10px;background:#14304a;border:2px solid var(--green);border-radius:12px}
.pill{display:inline-block;padding:2px 8px;border-radius:10px;font-size:11px;background:color-mix(in srgb,var(--ink) 10%,transparent)}

/* My Pulse */
.matrixbtn{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:10px;text-decoration:none;font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-size:13px;color:#d9fbff;background:linear-gradient(135deg,#041722,#0b2f45);border:1px solid var(--cyan);box-shadow:0 0 14px color-mix(in srgb,var(--cyan) 35%,transparent),inset 0 0 12px color-mix(in srgb,var(--cyan) 15%,transparent);animation:mxglow 3s ease-in-out infinite}
.matrixbtn span{color:var(--cyan);font-size:16px}
.matrixbtn i{font-style:normal}
@keyframes mxglow{50%{box-shadow:0 0 22px color-mix(in srgb,var(--cyan) 60%,transparent),inset 0 0 16px color-mix(in srgb,var(--cyan) 25%,transparent)}}
.mygrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
@media(min-width:900px){.mygrid{grid-template-columns:repeat(4,minmax(0,1fr))}}
.w{position:relative;min-width:0}
.w.full{grid-column:1/-1}
.w .tools{display:none;gap:6px;margin-top:8px;flex-wrap:wrap}
.editing .w .tools{display:flex}
.editing .w{outline:2px dashed var(--blue-light);outline-offset:3px;border-radius:14px}
.w .tools button{padding:6px 10px;font-size:14px}
.wtitle{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:0 0 8px}
.wtitle h3{margin:0;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.fold>.wtitle{cursor:pointer;user-select:none;-webkit-tap-highlight-color:transparent}
.fold>.wtitle::after{content:"▾";order:9;font-size:18px;line-height:1;opacity:.75;transition:transform .15s}
.folded>.wtitle::after{transform:rotate(-90deg)}
.w.folded>:not(.wtitle):not(.tools){display:none}.w.folded>.wtitle{margin:0}
.kpiHead{padding:2px 4px 0}.kpiHead>.wtitle{margin:0}.kpisFolded>.w.tile{display:none}
.mail{padding:10px 0;border-bottom:1px solid var(--line)}
.act details{border-bottom:1px solid var(--line);padding:2px 0}
.act summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:10px;align-items:baseline;padding:10px 2px}
.act summary::-webkit-details-marker{display:none}
.act summary .l{font-size:16px}.act summary .l:before{content:"▸ ";opacity:.6}.act details[open] summary .l:before{content:"▾ "}
.act summary .r{white-space:nowrap;font-size:15px}.act summary .r b{font-weight:400;}
.sc details{border-bottom:1px solid var(--line)}
.sc summary{list-style:none;cursor:pointer;padding:9px 2px}
.sc summary::-webkit-details-marker{display:none}
.sc .top{display:flex;justify-content:space-between;gap:10px;align-items:baseline}
.sc .top .l{font-size:15px}.sc .top .l:before{content:"▸ ";opacity:.6}.sc details[open] .top .l:before{content:"▾ "}
.sc .top .v{white-space:nowrap;font-size:16px}
.sc .v.on{color:var(--green-light)} .sc .v.off{color:var(--warn)}
.sc .sub{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-top:3px;font-size:12px}
.sc .dots{display:flex;gap:2px;flex-shrink:0}
.sc .dots i{width:7px;height:7px;border-radius:2px;background:var(--bar-dim)}
.sc .dots i.on{background:var(--green)} .sc .dots i.off{background:var(--warn)}
.sc .wk{display:grid;grid-template-columns:repeat(auto-fill,minmax(74px,1fr));gap:4px;margin:6px 0}
.sc .wk div{border:1px solid var(--line);border-radius:6px;padding:4px 5px;font-size:12px}
.sc .wk div b{display:block;font-size:13px;font-weight:400}
.sc .wk div.on b{color:var(--green-light)} .sc .wk div.off b{color:var(--warn)}
.sc .goalf{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin:6px 0 10px}
.sc .goalf select,.sc .goalf input,.sc .goalf textarea{font:inherit;font-size:14px;padding:5px 6px;border-radius:6px;border:1px solid var(--line);background:var(--surface);color:var(--ink)}
.sc .goalf input,.sc .goalf textarea{width:110px}
.act .why{font-size:12.5px;margin:-4px 2px 6px}
.act .it{display:flex;justify-content:space-between;gap:10px;padding:7px 2px 7px 14px;border-top:1px dashed var(--line);font-size:14px;text-decoration:none;color:inherit}
.act .it .s{font-size:12.5px;opacity:.7}.act .it .n{white-space:nowrap}
.act .clear{font-size:13px;margin-top:8px}
.act .tot{font-size:14px;margin-bottom:4px}
.mail:last-child{border-bottom:0}
.mail .acts{display:flex;gap:6px;margin-top:6px;flex-wrap:wrap}
.mail .said{display:flex;flex-direction:column;gap:4px;margin-top:6px}
.mail .bub{align-self:flex-start;max-width:92%;padding:7px 11px;border-radius:14px 14px 14px 4px;background:color-mix(in srgb,var(--ink) 7%,transparent);border:1px solid var(--line);font-size:14.5px;line-height:1.4;white-space:pre-wrap;word-break:break-word}
.mail .bub .t{display:block;font-size:11.5px;opacity:.6;margin-top:2px}
.mail .bub img{display:block;max-width:220px;max-height:220px;border-radius:10px;margin:4px 0;object-fit:cover;cursor:zoom-in}
.mail .bub .pic{font-size:13.5px;opacity:.85}
.mail .bub a{color:var(--house-hi,#6db4f5)}
.mail .lbl{font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;opacity:.55;margin-top:8px}
.mail .acts button,.mail .acts a{padding:6px 10px;font-size:13px;text-decoration:none}
.dot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:6px;vertical-align:1px}
.dot.p1{background:#ff6b5a}.dot.p2{background:var(--warn)}.dot.p3{background:var(--blue-light)}
.pick{display:block;width:100%;text-align:left;padding:12px;margin:0 0 8px;border:2px solid var(--line);border-radius:12px;background:var(--surface);color:#fff;cursor:pointer;font:inherit}
.pick b{display:block}
.note textarea{width:100%;min-height:90px;padding:10px;border:2px solid var(--line);border-radius:10px;background:var(--surface);color:#fff;font:inherit;resize:vertical}

/* cleanup & corporate */
.badge{display:inline-block;min-width:18px;padding:0 6px;border-radius:10px;background:linear-gradient(135deg,#d97706,#ffc040);color:#1a1200;font-weight:800;font-size:11px;line-height:18px;text-align:center;margin-left:4px}
.fixrow{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--line)}
.fixrow:last-child{border-bottom:0}
.fixrow .who{flex:1 1 200px;min-width:0}
.fixrow .ctl{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
select{font:inherit;color:#fff;background:var(--surface);border:2.5px solid var(--line);border-radius:10px;padding:9px 10px;max-width:220px;outline:none}
.btn.sm{padding:8px 12px;font-size:14px}
.ok{color:var(--accent);font-size:13px;font-weight:600}
.bad{color:var(--warn);font-size:13px}
.search{width:100%;padding:11px 12px;border:2.5px solid var(--line);border-radius:10px;background:var(--surface);color:#fff;margin-bottom:10px}
.progress{height:8px;border-radius:4px;background:var(--bar-dim);margin:6px 0 12px}
.progress>span{display:block;height:100%;border-radius:4px;background:var(--bar)}
.sec{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;margin:16px 0 8px}

/* data */
.fields table{width:100%;border-collapse:collapse;font-size:13px}
.fields td,.fields th{border-bottom:1px solid var(--line);padding:5px 8px;text-align:left;vertical-align:top}
.fields td.ex{font:12px ui-monospace,Menlo,Consolas,monospace;color:var(--muted);word-break:break-all}

/* ---- Phone portrait: compact header, floating 💡, more room for content ---- */
@media(max-width:640px){
  .bar{flex-wrap:nowrap;padding:8px 12px;gap:8px;row-gap:0}
  .bar .brand{min-width:0;flex:1 1 auto;gap:9px}
  .logo{width:34px;height:34px;border-radius:9px}
  .brand-name{font-size:17px}
  .brand-sub{display:none}
  .sizeBtn,#logout{padding:7px 10px;font-size:13px}
  #logout{font-size:0;padding:7px 10px}
  #logout:after{content:"";display:inline-block;width:18px;height:18px;vertical-align:-3px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='M12 3v8'/%3E%3Cpath d='M6.3 6.8a8 8 0 1 0 11.4 0'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='M12 3v8'/%3E%3Cpath d='M6.3 6.8a8 8 0 1 0 11.4 0'/%3E%3C/svg%3E") center/contain no-repeat}
  .ideaBtn{order:0;position:fixed;right:14px;bottom:calc(16px + var(--safe-area-inset-bottom,env(safe-area-inset-bottom,0px)));z-index:30;width:58px;height:58px;padding:0;border-radius:50%;font-size:0;box-shadow:0 6px 18px rgba(0,0,0,.55),0 0 0 3px color-mix(in srgb,var(--ink) 12%,transparent)}
  .ideaBtn:before{content:"💡";font-size:26px;line-height:58px}
  nav{padding:0 6px}
  nav button{padding:8px 10px;font-size:13.5px}
  main{padding:10px 12px 96px}
  .dash-head{flex-wrap:nowrap;gap:8px;margin-bottom:10px}
  .dash-head h2{font-size:17px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .dash-head>div{flex-wrap:nowrap!important;gap:6px!important}
  .dash-head .btn{padding:8px 10px;font-size:13px;white-space:nowrap}
  .matrixbtn{padding:8px 10px;font-size:11px;letter-spacing:.05em;gap:5px;white-space:nowrap}
  .matrixbtn span{font-size:13px}
  .card.panel{padding:12px}
  .matrixbtn .mxl{display:none}
}

/* ================= MATRIX THEME (Dave, Oct 4, 2026: Pulse matches the BarrWood Matrix) =================
   Deep space background, neon cyan accents, glass panels, monospace labels. Gruppo stays the font. */
html[data-theme=night]{
  --navy:#02060b; --blue:#0b3a52; --blue-mid:#0f4d6b; --blue-light:#29e3ff;
  --green:#14b88a; --green-light:#3dffa2;
  --bg:#02060b; --panel:rgba(6,20,32,.78); --surface:#06121c; --ink:#e6fbff; --muted:rgba(190,225,238,.62); --line:rgba(41,227,255,.24);
  --accent:#3dffa2; --accent-ink:#02060b; --accent-soft:rgba(61,255,162,.12);
  --warn:#ffb547; --warn-soft:rgba(255,181,71,.08);
  --bar:#29e3ff; --bar-dim:rgba(41,227,255,.18); --shadow:0 0 0 1px rgba(41,227,255,.06),0 8px 30px rgba(0,0,0,.55);
  --cyan:#29e3ff; --mono:ui-monospace,"SF Mono",Menlo,Consolas,monospace;
}
html{background:#02060b}
body{background:
  radial-gradient(1200px 800px at 50% -10%,color-mix(in srgb,var(--cyan) 10%,transparent),transparent 60%),
  radial-gradient(900px 700px at 100% 100%,color-mix(in srgb,var(--green) 5%,transparent),transparent 60%),
  radial-gradient(circle,color-mix(in srgb,var(--cyan) 8%,transparent) 1px,transparent 1.3px) 0 0/26px 26px,
  linear-gradient(180deg,#030a12,#02060b) fixed;
  background-attachment:fixed;color:var(--ink)}
body:after{content:"";position:fixed;inset:0;pointer-events:none;z-index:50;background:repeating-linear-gradient(0deg,color-mix(in srgb,var(--ink) 2%,transparent) 0 1px,transparent 1px 3px)}
/* header */
header{background:rgba(2,8,14,.96);border-bottom:1px solid color-mix(in srgb,var(--cyan) 25%,transparent);box-shadow:0 0 30px color-mix(in srgb,var(--cyan) 8%,transparent)}
.navwrap{background:transparent;border-top:1px solid color-mix(in srgb,var(--cyan) 10%,transparent)}
.brand-name{color:#eaffff;letter-spacing:.06em;text-shadow:0 0 14px color-mix(in srgb,var(--cyan) 45%,transparent)}
.brand-sub{color:var(--cyan);opacity:.75;font-family:var(--mono);letter-spacing:.28em}
.logo{box-shadow:0 0 0 1px color-mix(in srgb,var(--cyan) 50%,transparent),0 0 16px color-mix(in srgb,var(--cyan) 35%,transparent)}
nav button{font-family:var(--mono);text-transform:uppercase;letter-spacing:.14em;font-size:12px;color:var(--muted);-webkit-text-stroke:0}
nav button.on{color:var(--cyan);border-color:var(--cyan);text-shadow:0 0 10px color-mix(in srgb,var(--cyan) 55%,transparent)}
/* surfaces */
.card,.msg.bot,.achart,.pick{background:var(--panel);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.card{position:relative}
.card.panel:before,.card.tile:before{content:"";position:absolute;top:-1px;left:-1px;width:12px;height:12px;border-top:2px solid var(--cyan);border-left:2px solid var(--cyan);border-radius:14px 0 0 0;opacity:.8}
.tile .k,.panel h3,.wtitle h3,.sec,.achart h4,label{font-family:var(--mono);color:var(--cyan);letter-spacing:.2em;font-weight:400;-webkit-text-stroke:0;opacity:.9}
.tile .v{color:#fff;text-shadow:0 0 16px color-mix(in srgb,var(--cyan) 35%,transparent)}
.dash-head h2,.intro h2{letter-spacing:.06em;color:#eaffff;text-shadow:0 0 14px color-mix(in srgb,var(--cyan) 30%,transparent)}
/* buttons */
.btn{background:linear-gradient(135deg,color-mix(in srgb,var(--cyan) 22%,transparent),color-mix(in srgb,var(--green) 18%,transparent));color:#eaffff;border:1px solid var(--cyan);box-shadow:0 0 14px color-mix(in srgb,var(--cyan) 25%,transparent),inset 0 0 10px color-mix(in srgb,var(--cyan) 10%,transparent);font-family:var(--mono);text-transform:uppercase;letter-spacing:.1em;font-size:13px;-webkit-text-stroke:0}
.btn:hover{box-shadow:0 0 22px color-mix(in srgb,var(--cyan) 45%,transparent),inset 0 0 12px color-mix(in srgb,var(--cyan) 20%,transparent)}
.btn.ghost{background:color-mix(in srgb,var(--cyan) 4%,transparent);border:1px solid color-mix(in srgb,var(--cyan) 28%,transparent);color:var(--ink);box-shadow:none}
.ideaBtn{background:linear-gradient(135deg,color-mix(in srgb,var(--amber) 22%,transparent),color-mix(in srgb,var(--amber) 10%,transparent));border-color:var(--amber);color:#ffe2b0;box-shadow:0 0 14px color-mix(in srgb,var(--amber) 25%,transparent)}
.chip{background:color-mix(in srgb,var(--cyan) 5%,transparent);border:1px solid var(--line);color:var(--ink);font-family:var(--mono);font-size:12.5px;letter-spacing:.04em;-webkit-text-stroke:0}
.chip:hover{border-color:var(--cyan);box-shadow:0 0 10px color-mix(in srgb,var(--cyan) 25%,transparent)}
.follow .chip{border-color:color-mix(in srgb,var(--green) 50%,transparent)}
/* inputs */
input[type=text],input[type=password],input[type=number],select,.search,.srcIn,.ideaForm textarea,.note textarea,.composer form{background:var(--input);border:1px solid var(--line);color:var(--ink)}
input:focus,textarea:focus,select:focus{border-color:var(--cyan);box-shadow:0 0 0 3px color-mix(in srgb,var(--cyan) 15%,transparent),0 0 14px color-mix(in srgb,var(--cyan) 20%,transparent)}
.composer{background:linear-gradient(180deg,rgba(2,6,11,0) 0%,#02060b 40%)}
/* chat */
.msg.user{background:linear-gradient(135deg,color-mix(in srgb,var(--cyan) 22%,transparent),color-mix(in srgb,var(--cyan) 10%,transparent));border:1px solid color-mix(in srgb,var(--cyan) 45%,transparent);box-shadow:0 0 14px color-mix(in srgb,var(--cyan) 18%,transparent)}
.msg.bot th{color:var(--cyan);font-family:var(--mono);font-weight:400;letter-spacing:.08em}
/* status, badges, notices */
.notice{background:color-mix(in srgb,var(--amber) 7%,transparent);border:1px solid color-mix(in srgb,var(--amber) 55%,transparent);box-shadow:0 0 14px color-mix(in srgb,var(--amber) 10%,transparent)}
.badge{background:var(--amber);color:#02060b;box-shadow:0 0 8px color-mix(in srgb,var(--amber) 60%,transparent)}
.status{font-family:var(--mono);font-weight:400;letter-spacing:.14em}
.st-new{background:transparent;border:1px solid var(--cyan);color:var(--cyan)}
.st-done{background:color-mix(in srgb,var(--green) 12%,transparent);border:1px solid var(--green);color:var(--green)}
.st-building,.st-undoing{background:color-mix(in srgb,var(--amber) 12%,transparent);border:1px solid var(--amber);color:var(--amber);animation:stPulse 1.6s ease-in-out infinite}.st-undone{border:1px solid var(--line);color:var(--muted,#8aa3b5)}@keyframes stPulse{50%{opacity:.55}}
.idea .resp{border-left-color:var(--cyan);background:color-mix(in srgb,var(--cyan) 6%,transparent)}
.bulkbar{background:rgba(4,14,23,.95);border:1px solid var(--cyan)}
.hbar>span,.progress>span{box-shadow:0 0 8px color-mix(in srgb,var(--cyan) 60%,transparent)}
.col .b{background:linear-gradient(180deg,color-mix(in srgb,var(--cyan) 55%,transparent),color-mix(in srgb,var(--cyan) 12%,transparent));border-top:2px solid var(--cyan)}
.col:last-child .b{background:linear-gradient(180deg,var(--green),color-mix(in srgb,var(--green) 15%,transparent));border-top-color:var(--green);box-shadow:0 0 12px color-mix(in srgb,var(--green) 35%,transparent)}
.thinking i{background:var(--cyan);box-shadow:0 0 6px var(--cyan)}
.steps li:before{color:var(--cyan)}
.editing .w{outline-color:var(--cyan)}
::selection{background:color-mix(in srgb,var(--cyan) 35%,transparent)}
#login .card{box-shadow:0 0 40px color-mix(in srgb,var(--cyan) 15%,transparent)}
.sizeBtn{text-transform:none;letter-spacing:.02em}
.chips .chip{font-family:inherit;font-size:15px;letter-spacing:0;}
@media(max-width:640px){body:has(#ask:not(.hidden)) .ideaBtn{width:46px;height:46px}body:has(#ask:not(.hidden)) .ideaBtn:before{font-size:20px;line-height:46px}}
@media(max-width:640px){.ideaBtn{font-size:0;letter-spacing:0;background:radial-gradient(circle at 35% 30%,color-mix(in srgb,var(--amber) 45%,transparent),rgba(30,18,4,.95));box-shadow:0 0 18px color-mix(in srgb,var(--amber) 50%,transparent),0 6px 18px rgba(0,0,0,.6)}}
.billto{display:inline-block;font-size:11px;font-family:ui-monospace,Menlo,monospace;letter-spacing:.04em;padding:1px 7px;margin-left:6px;border-radius:8px;border:1px solid color-mix(in srgb,var(--amber) 55%,transparent);color:var(--warn,var(--amber));vertical-align:middle}

/* sign-in */
/* sign-in extras */
.pkBtn{width:100%;margin:14px 0 2px}
.pwWrap{position:relative}
.pwWrap input,.pwWrap textarea{padding-right:46px}
.pwEye{position:absolute;right:6px;top:50%;transform:translateY(-50%);background:none;border:0;font-size:18px;cursor:pointer;padding:4px 6px;color:var(--muted)}
.loginLinks{display:flex;justify-content:space-between;gap:10px;margin-top:12px;flex-wrap:wrap}
.linkBtn{background:none;border:0;padding:4px 0;color:var(--cyan,var(--cyan));cursor:pointer;font:inherit;font-size:14px;text-decoration:underline;text-underline-offset:3px}
.fopt{border:1px solid var(--line);border-radius:12px;padding:12px;margin-top:10px}
.ts .tsTrust{display:flex;gap:8px;align-items:flex-start;font-size:14px;margin:10px 0 2px;line-height:1.35}
.ts .tsTrust input,.ts .tsTrust textarea{width:auto;margin:2px 0 0;flex-shrink:0}
.ts .tsSteps{margin:10px 0 6px;padding-left:20px;font-size:14.5px;line-height:1.45}.ts .tsSteps li{margin:0 0 8px}
.ts .tsQr{background:#fff;border-radius:10px;padding:8px;width:200px;max-width:100%;margin:8px 0}.ts .tsQr svg{display:block;width:100%;height:auto}
.ts .tsKey{display:block;font-size:15px;letter-spacing:.5px;word-break:keep-all;overflow-wrap:break-word;margin:4px 0 6px;-webkit-text-stroke:0}
.ts .tsOnPhone{display:none}
.onPhone .ts .tsOnPhone{display:inline}.onPhone .ts .tsOnPc{display:none}
.fopt>b{display:block}.fopt>span{display:block;font-size:13.5px;margin:2px 0 4px}
.err.ok{color:var(--green-light)}
.codes{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;margin-top:10px}
.codes code{font:15px ui-monospace,Menlo,Consolas,monospace;letter-spacing:.06em;padding:8px;border:1px dashed var(--line);border-radius:8px;text-align:center}
#pkNudge{margin-bottom:10px;border-color:var(--green-light)}
#login .login-card{max-width:400px}
.codes code{white-space:nowrap;font-size:14px}
@media(max-width:640px){
  .bar .brand{min-width:0;flex:1 1 0;overflow:hidden}
  .bar .brand>div:last-child{min-width:0;overflow:hidden}
  .brand-name{overflow:hidden;text-overflow:ellipsis}
  .themeBtn,.sizeBtn,#logout{padding:7px 8px!important}
  .bar{column-gap:6px}
}
@media(max-width:400px){.codes{grid-template-columns:1fr}}

/* ================= BOARDS + SETUP QUESTIONNAIRE ================= */
.xpanel h3{margin:0 0 8px;font-size:11px}
.xpanel{min-width:0}
.donut{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.donut svg{flex:0 0 auto}
.dlegend{flex:1 1 180px;min-width:0}
.dl{display:grid;grid-template-columns:12px 1fr auto auto;gap:8px;align-items:center;font-size:13px;padding:3px 0;border-bottom:1px solid var(--line)}
.dl:last-child{border-bottom:0}
.dl i{width:10px;height:10px;border-radius:2px}
.dl span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dl em{font-style:normal;color:var(--muted);font-family:var(--mono);font-size:11px;min-width:34px;text-align:right}
.bWizard{scroll-margin-top:170px}
.wizard{padding:18px 18px 14px}
.wizard h2{margin:6px 0 6px;font-size:24px}
.wizard p{margin:6px 0 12px}
.wzDots{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:6px}
.wzDots span{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-family:var(--mono);font-size:12px;border:1px solid var(--line);color:var(--muted)}
.wzDots span.on{border-color:var(--cyan);color:var(--cyan);box-shadow:0 0 10px color-mix(in srgb,var(--cyan) 40%,transparent)}
.wzDots span.done{background:color-mix(in srgb,var(--green) 15%,transparent);border-color:var(--green-light);color:var(--green-light)}
.wzCards{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px;margin:8px 0 14px}
.wzCard{text-align:left;padding:12px;border-radius:12px;border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;font:inherit}
.wzCard b{display:block;font-size:16px}
.wzCard span{display:block;font-size:13px;color:var(--muted);margin-top:2px}
.wzCard.on{border-color:var(--green-light);background:var(--accent-soft);box-shadow:0 0 12px color-mix(in srgb,var(--green) 25%,transparent)}
.wzCard.on b:before{content:"✓ ";color:var(--green-light)}
.wzList{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:6px;margin:6px 0 10px}
.wzItem{display:flex;gap:10px;align-items:flex-start;padding:10px;border-radius:10px;border:1px solid var(--line);background:var(--surface);cursor:pointer;margin:0;text-transform:none;letter-spacing:0;font-family:inherit;color:var(--ink);opacity:1;font-size:15px}
.wzItem.on{border-color:color-mix(in srgb,var(--green) 60%,transparent);background:var(--accent-soft)}
.wzItem input,.wzItem textarea{width:22px;height:22px;flex:0 0 auto;accent-color:var(--green-light);margin-top:2px}
.wzIc{flex:0 0 26px;height:26px;border-radius:6px;display:grid;place-items:center;font-family:var(--mono);font-size:13px;color:var(--cyan);border:1px solid var(--line)}
.wzTxt{min-width:0;font-size:15px;line-height:1.35}
.wzTxt .muted{font-size:13px}
.wzWhy{display:inline-block;margin-top:3px;font-size:12.5px;color:var(--warn)}
.sugTag{font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;color:var(--warn);border:1px solid color-mix(in srgb,var(--amber) 50%,transparent);border-radius:6px;padding:0 5px;font-weight:400;white-space:nowrap}
.wzClaude{margin:6px 0 12px}
.wzSug{display:flex;gap:10px;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid var(--line)}
.wzSug:last-child{border-bottom:0}
.wzSug .btn{flex:0 0 auto}
.wzQ{margin-bottom:8px}
.wzMini{display:flex;gap:8px;align-items:center;margin:0;text-transform:none;letter-spacing:0;font-family:inherit;color:var(--muted);font-size:13.5px;opacity:1}
.wzMini input,.wzMini textarea{width:18px;height:18px;accent-color:var(--green-light)}
.wzNav{display:flex;justify-content:space-between;gap:10px;margin-top:16px;padding-top:12px;border-top:1px solid var(--line);flex-wrap:wrap}
.wzNav .wzNext{margin-left:auto}
@media(max-width:640px){
  .wizard{padding:14px 12px 12px}
  .wizard h2{font-size:21px}
  .wzCards{grid-template-columns:1fr}
  .wzList{grid-template-columns:1fr}
  .wzNav .btn{flex:1 1 auto}
  .donut{justify-content:center}
}

/* ================= DAYLIGHT MODE (Dave, Oct 4, 2026) ================= */
html[data-theme=day]{
  --navy:#eef4f8; --blue:#d6e6f0; --blue-mid:#c3d9e8; --blue-light:var(--cyan); --green-light:var(--green); --accent-ink:#ffffff; --accent-soft:color-mix(in srgb,var(--green) 10%,transparent); --warn-soft:rgba(178,106,0,.08);
  --bar:var(--cyan); --bar-dim:color-mix(in srgb,var(--cyan) 16%,transparent); color-scheme:light; background:var(--bg)}
html[data-theme=day] body{background:var(--bg);color:var(--ink)}
html[data-theme=day] body:after{display:none}
html[data-theme=day] header{background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);box-shadow:0 2px 14px rgba(13,34,51,.06)}
html[data-theme=day] .brand-name,html[data-theme=day] .dash-head h2,html[data-theme=day] .intro h2{color:var(--ink);text-shadow:none}
html[data-theme=day] nav button.on{text-shadow:none;color:var(--cyan)}
html[data-theme=day] .chip,html[data-theme=day] select,html[data-theme=day] label{color:var(--ink)}
html[data-theme=day] .tile .k,html[data-theme=day] .panel h3,html[data-theme=day] .wtitle h3,html[data-theme=day] .sec,html[data-theme=day] .achart h4{color:var(--cyan)}
html[data-theme=day] .tile .v{color:var(--ink);text-shadow:none}
html[data-theme=day] .btn{background:linear-gradient(135deg,var(--cyan),var(--green));color:#fff;border-color:var(--cyan);box-shadow:0 2px 8px color-mix(in srgb,var(--cyan) 25%,transparent)}
html[data-theme=day] .btn.ghost{background:#fff;color:var(--ink);border-color:var(--line);box-shadow:none}
html[data-theme=day] .ideaBtn{background:linear-gradient(135deg,#ffcf7a,#ffb547);color:#3a2300;border-color:#d68a00}
html[data-theme=day] .chip{background:#fff}
html[data-theme=day] input[type=text],html[data-theme=day] input[type=password],html[data-theme=day] input[type=number],html[data-theme=day] select,html[data-theme=day] .search,html[data-theme=day] .srcIn,html[data-theme=day] .ideaForm textarea,html[data-theme=day] .note textarea,html[data-theme=day] .composer form,html[data-theme=day] textarea{background:#fff;color:var(--ink)}
html[data-theme=day] .composer{background:linear-gradient(180deg,rgba(243,247,250,0) 0%,var(--bg) 40%)}
html[data-theme=day] .msg.user{background:color-mix(in srgb,var(--cyan) 10%,transparent);border-color:color-mix(in srgb,var(--cyan) 40%,transparent);box-shadow:none;color:var(--ink)}
html[data-theme=day] .pick,html[data-theme=day] .note textarea{color:var(--ink)}
html[data-theme=day] .notice{background:#fff7e8;border-color:#e9a33a;box-shadow:none;color:#3a2300}
html[data-theme=day] .bulkbar{background:rgba(255,255,255,.97)}
html[data-theme=day] .badge{color:#fff;background:var(--amber)}
html[data-theme=day] .st-done{color:#0c7a50;border-color:var(--green)}
html[data-theme=day] .sugTag,html[data-theme=day] .wzWhy,html[data-theme=day] .billto{color:var(--amber)}
html[data-theme=day] .thinking i{box-shadow:none}
html[data-theme=day] #login .card{box-shadow:0 10px 40px rgba(13,34,51,.12)}
html[data-theme=day] ::selection{background:color-mix(in srgb,var(--cyan) 25%,transparent)}
html[data-theme=day] .ok{color:#0c7a50}
html[data-theme=day] .up{color:#0c7a50}
html[data-theme=day] .ideaBtn{box-shadow:0 2px 10px rgba(214,138,0,.25)}
@media(max-width:640px){html[data-theme=day] .ideaBtn{background:radial-gradient(circle at 35% 30%,#ffe0a3,#ffb547);box-shadow:0 4px 14px rgba(214,138,0,.35)}}
.themeBtn{padding:9px 12px;font-size:15px;white-space:nowrap;text-transform:none;letter-spacing:0}
@media(max-width:640px){.themeBtn{padding:7px 10px;font-size:13px}}

/* ================= GLASSHOUSE THEME (Dave, Oct 5, 2026: "slick, sleek, modern, pleasing to the eye") =================
   Built from the logo: metallic house blue + glossy leaf green. The logo lives large in the background;
   panels are frosted glass over it. Quiet everywhere else. Replaces the neon Matrix look (the Matrix map keeps its own). */
html[data-theme=night]{
  --house:#3b8fe0; --house-hi:#6db4f5; --house-lo:#1b5596; --leaf:#47c46a; --leaf-hi:#7fe09a;
  --bg:#070d16; --panel:rgba(17,28,44,.56); --surface:rgba(9,17,28,.72); --ink:#e9f1f8; --muted:rgba(190,208,226,.66);
  --line:rgba(255,255,255,.09); --accent:var(--leaf); --accent-soft:rgba(71,196,106,.12); --warn:#f0b049; --warn-soft:rgba(240,176,73,.10);
  --cyan:#6db4f5; --blue-light:#6db4f5; --green:#2f9e52; --green-light:#5fd37d; --bar:#4f9ee8; --bar-dim:rgba(255,255,255,.08);
  --shadow:0 1px 0 rgba(255,255,255,.05) inset,0 18px 50px rgba(0,0,0,.38);
  --glass-blur:blur(18px) saturate(150%);
}
html{background:#070d16}
html body{background:
  radial-gradient(1100px 700px at 15% -10%,rgba(59,143,224,.22),transparent 60%),
  radial-gradient(900px 700px at 100% 105%,rgba(71,196,106,.13),transparent 60%),
  linear-gradient(180deg,#0a1220 0%,#070d16 60%) fixed;background-attachment:fixed}
html body:after{display:none}
/* the logo, big and quiet, behind the glass */
body:before{content:"";position:fixed;left:50%;top:calc(50% + 60px);width:min(72vmin,600px);aspect-ratio:1/1;transform:translate(-50%,-50%);
  background:url(/logo-mark.png?v=2) center/contain no-repeat;opacity:.19;pointer-events:none;z-index:0;filter:saturate(1.1)}
@media(max-width:640px){body:before{width:94vmin;top:calc(50% + 50px)}}
#app,#login,#invite{position:relative;z-index:1}
/* header: wordmark only */
html header{background:#080e18;z-index:20;border-bottom:1px solid var(--line);box-shadow:0 10px 30px rgba(0,0,0,.25)}
html .navwrap{border-top:0}
html .brand-name{font-size:23px;letter-spacing:.04em;text-shadow:none;
  background:linear-gradient(180deg,#ffffff 0%,#cfe4f7 45%,#8fb9e3 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
html .brand-sub{font-family:inherit;letter-spacing:.03em;text-transform:none;color:var(--muted);opacity:1;font-size:13px}
html nav button{font-family:inherit;text-transform:none;letter-spacing:.02em;font-size:15.5px;color:var(--muted);border-bottom-width:2px}
html nav button.on{color:var(--ink);border-color:var(--house-hi);text-shadow:none}
/* glass */
html .card,html .msg.bot,html .achart,html .pick{background:var(--panel);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);
  backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur)}
html .card.tile{border-radius:16px}
html .card.panel:before,html .card.tile:before{display:none}
html .achart{background:color-mix(in srgb,var(--ink) 3%,transparent);box-shadow:none}
/* type: sentence case, no code-style labels */
html .tile .k,html .panel h3,html .wtitle h3,html .sec,html .achart h4,html label{font-family:inherit;text-transform:none;letter-spacing:.01em;
  color:var(--muted);opacity:1;font-size:14px;}
html .panel h3,html .wtitle h3{color:var(--ink);font-size:16px}
html .sec{font-size:15px;color:var(--ink);margin-top:20px}
html .tile .v{color:var(--ink);text-shadow:none;letter-spacing:-.01em}
html .dash-head h2,html .intro h2{color:var(--ink);text-shadow:none;letter-spacing:.01em}
/* buttons: brushed metal, like the house in the logo */
html .btn{font-family:inherit;text-transform:none;letter-spacing:.02em;font-size:15px;color:#fff;border-radius:12px;
  background:linear-gradient(180deg,var(--house),var(--house-lo));border:1px solid color-mix(in srgb,var(--ink) 16%,transparent);
  box-shadow:inset 0 1px 0 color-mix(in srgb,var(--ink) 38%,transparent),0 6px 18px rgba(34,100,173,.32)}
html .btn:hover{filter:brightness(1.07);box-shadow:inset 0 1px 0 color-mix(in srgb,var(--ink) 45%,transparent),0 8px 22px rgba(34,100,173,.42)}
html .btn:active{transform:translateY(1px)}
html .btn.ghost{background:color-mix(in srgb,var(--ink) 5%,transparent);border:1px solid color-mix(in srgb,var(--ink) 12%,transparent);color:var(--ink);box-shadow:inset 0 1px 0 color-mix(in srgb,var(--ink) 6%,transparent)}
html .btn.ghost:hover{background:color-mix(in srgb,var(--ink) 9%,transparent)}
html .ideaBtn{background:linear-gradient(180deg,#ffd27e 0%,#f0b049 50%,#c98a1f 100%);color:#2a1a00;border-color:color-mix(in srgb,var(--ink) 25%,transparent);box-shadow:inset 0 1px 0 color-mix(in srgb,var(--ink) 50%,transparent),0 6px 18px rgba(201,138,31,.3);}
@media(max-width:640px){html .ideaBtn{font-size:0;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ffe2a6,#f0b049 60%,#c98a1f);box-shadow:0 8px 22px rgba(0,0,0,.45)}}
@media(min-width:641px){html .ideaBtn{order:0;width:auto;padding:10px 16px}
  html #logout{font-size:0;padding:9px 12px}html #logout:after{content:"";display:inline-block;width:18px;height:18px;vertical-align:-3px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='M12 3v8'/%3E%3Cpath d='M6.3 6.8a8 8 0 1 0 11.4 0'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='M12 3v8'/%3E%3Cpath d='M6.3 6.8a8 8 0 1 0 11.4 0'/%3E%3C/svg%3E") center/contain no-repeat}
  html .bar .who{display:none}}
html[data-theme=day] .ideaBtn{background:linear-gradient(180deg,#ffd27e 0%,#f0b049 50%,#c98a1f 100%);color:#2a1a00;border-color:rgba(255,255,255,.4)}
@media(max-width:640px){html[data-theme=day] .ideaBtn{background:radial-gradient(circle at 35% 30%,#ffe2a6,#f0b049 60%,#c98a1f)}}
/* sign-in: the logo is the hero above the card instead of hiding behind it */
body:has(#login:not(.hidden)):before,body:has(#invite:not(.hidden)):before{display:none}
.loginMark{display:block;width:150px;height:150px;margin:0 auto 14px;background:url(/logo-mark.png?v=2) center/contain no-repeat;filter:drop-shadow(0 12px 30px rgba(59,143,224,.35))}
#login .login-card .brand,#invite .login-card .brand{justify-content:center}
#login{align-content:center}
html .matrixbtn{background:color-mix(in srgb,var(--ink) 5%,transparent);border:1px solid color-mix(in srgb,var(--ink) 12%,transparent);color:var(--ink);box-shadow:none;animation:none;
  font-family:inherit;text-transform:none;letter-spacing:.02em;font-size:15px;font-weight:400;border-radius:12px}
html .matrixbtn span{color:var(--house-hi)}
html .chip{background:color-mix(in srgb,var(--ink) 5%,transparent);border:1px solid var(--line);color:var(--ink);font-family:inherit;font-size:15px;letter-spacing:0;border-radius:999px}
html .chip:hover{border-color:rgba(109,180,245,.6);box-shadow:none;background:rgba(109,180,245,.08)}
/* inputs */
html input[type=text],html input[type=password],html input[type=number],html select,html .search,html .srcIn,html .ideaForm textarea,html .note textarea,html .composer form,html textarea{
  background:rgba(5,11,19,.6);border:1px solid color-mix(in srgb,var(--ink) 12%,transparent);color:var(--ink);border-radius:12px}
html input:focus,html textarea:focus,html select:focus{border-color:var(--house-hi);box-shadow:0 0 0 3px rgba(109,180,245,.18)}
html .composer{background:linear-gradient(180deg,rgba(7,13,22,0) 0%,#070d16 45%)}
/* chat */
html .msg.user{background:linear-gradient(180deg,rgba(109,180,245,.28),rgba(59,143,224,.18));border:1px solid rgba(109,180,245,.35);box-shadow:none}
html .msg.bot th{font-family:inherit;color:var(--muted);letter-spacing:0}
/* status and notices */
html .notice{background:rgba(240,176,73,.09);border:1px solid rgba(240,176,73,.38);box-shadow:none;border-radius:14px}
html .badge{background:var(--warn);color:#2a1a00;box-shadow:none}
html .status{font-family:inherit;letter-spacing:.02em;text-transform:none}
html .st-new{border-color:var(--house-hi);color:var(--house-hi)}
html .st-done{background:rgba(71,196,106,.14);border-color:var(--leaf);color:var(--leaf-hi)}
html .bulkbar{background:rgba(10,18,30,.92);border:1px solid var(--line);border-radius:14px;backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur)}
html .hbar>span,html .progress>span{box-shadow:none}
html .col .b{background:linear-gradient(180deg,rgba(109,180,245,.75),rgba(59,143,224,.25));border-top:2px solid var(--house-hi)}
html .col:last-child .b{background:linear-gradient(180deg,var(--leaf-hi),rgba(71,196,106,.25));border-top-color:var(--leaf-hi);box-shadow:none}
html .thinking i{background:var(--house-hi);box-shadow:none}
html .editing .w{outline:1px dashed rgba(109,180,245,.6)}
html ::selection{background:rgba(109,180,245,.35)}
html #login .card{box-shadow:0 30px 80px rgba(0,0,0,.45)}
html .billto{font-family:inherit;letter-spacing:0}
html .sugTag{font-family:inherit;letter-spacing:0}
html .wzDots span{font-family:inherit}
html .wzDots span.on{border-color:var(--house-hi);color:var(--house-hi);box-shadow:none}
html .wzIc{font-family:inherit;color:var(--house-hi)}
html .codes code{border-color:color-mix(in srgb,var(--ink) 15%,transparent)}
html .linkBtn{color:var(--house-hi)}
html .dl em{font-family:inherit}
/* ---- daylight version of the same idea ---- */
html[data-theme=day]{background:var(--bg)}
html[data-theme=day] body{background:var(--bg);color:var(--ink)}
html[data-theme=day] body:before{display:none}
html[data-theme=day] header{background:#f8fbfd;box-shadow:0 8px 24px rgba(16,32,49,.06)}
html[data-theme=day] .brand-name{background:none;-webkit-background-clip:border-box;background-clip:border-box;color:var(--ink);-webkit-text-fill-color:var(--ink);color:transparent}
html[data-theme=day] nav button.on{color:var(--ink);border-color:var(--house)}
html[data-theme=day] .btn{color:#fff;background:linear-gradient(180deg,var(--house),var(--house-lo));border-color:rgba(255,255,255,.4);box-shadow:inset 0 1px 0 rgba(255,255,255,.4),0 6px 16px rgba(31,111,191,.22)}
html[data-theme=day] .btn.ghost{background:rgba(255,255,255,.7);color:var(--ink);border-color:rgba(16,32,49,.12);box-shadow:none}
html[data-theme=day] .matrixbtn{background:rgba(255,255,255,.7);color:var(--ink);border-color:rgba(16,32,49,.12)}
html[data-theme=day] .chip{background:rgba(255,255,255,.7)}
html[data-theme=day] input[type=text],html[data-theme=day] input[type=password],html[data-theme=day] input[type=number],html[data-theme=day] select,html[data-theme=day] .search,html[data-theme=day] .srcIn,html[data-theme=day] .ideaForm textarea,html[data-theme=day] .note textarea,html[data-theme=day] .composer form,html[data-theme=day] textarea{background:rgba(255,255,255,.85);border-color:rgba(16,32,49,.14)}
html[data-theme=day] .composer{background:linear-gradient(180deg,rgba(238,243,248,0) 0%,var(--bg) 45%)}
html[data-theme=day] .msg.user{background:rgba(59,143,224,.12);border-color:rgba(59,143,224,.3);color:var(--ink)}
html[data-theme=day] .bulkbar{background:rgba(255,255,255,.9)}
html[data-theme=day] .notice{background:rgba(255,247,232,.85);border-color:rgba(214,138,0,.4);color:#3a2300}
html[data-theme=day] .achart{background:rgba(255,255,255,.45)}
html[data-theme=day] .tile .k,html[data-theme=day] .sec,html[data-theme=day] .achart h4,html[data-theme=day] label{color:var(--muted)}
html[data-theme=day] .panel h3,html[data-theme=day] .wtitle h3{color:var(--ink)}
html[data-theme=day] .ideaBtn{background:linear-gradient(180deg,#ffd27e 0%,#f0b049 50%,#c98a1f 100%);color:#2a1a00;border-color:rgba(255,255,255,.45)}
@media(max-width:640px){html[data-theme=day] .ideaBtn{background:radial-gradient(circle at 35% 30%,#ffe2a6,#f0b049 60%,#c98a1f);box-shadow:0 8px 20px rgba(201,138,31,.35)}}

/* start page */
.homeHead{margin:18px 2px 16px}
.homeHead h2{margin:0;font-size:30px;letter-spacing:.01em}
.homeSearch{position:relative;margin:4px 0 16px}
.homeSearch span{position:absolute;left:14px;top:50%;transform:translateY(-50%);opacity:.6;pointer-events:none}
.homeSearch input,.homeSearch textarea{width:100%;font:inherit;font-size:18px;padding:13px 14px 13px 44px;border-radius:14px;color:var(--ink);background:rgba(5,11,19,.6);border:1px solid color-mix(in srgb,var(--ink) 14%,transparent);outline:none}
html[data-theme=day] .homeSearch input,html[data-theme=day] .homeSearch textarea{background:#fff;border-color:rgba(16,32,49,.15)}
.homeSearch input:focus,.homeSearch textarea:focus{border-color:#6db4f5;box-shadow:0 0 0 3px rgba(109,180,245,.18)}
.homeGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}
.hTile{display:flex;gap:16px;align-items:flex-start;text-align:left;text-decoration:none;color:var(--ink);font:inherit;cursor:pointer;
  padding:20px;border-radius:20px;background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);
  backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);transition:transform .15s ease,border-color .15s ease}
.hTile:hover{border-color:rgba(109,180,245,.45)}
.hTile:active{transform:scale(.985)}
.hTile:focus-visible{outline:2px solid var(--house-hi);outline-offset:3px}
.hIc{flex:0 0 52px;height:52px;border-radius:14px;display:grid;place-items:center;color:#fff;
  background:linear-gradient(180deg,var(--house),var(--house-lo));box-shadow:inset 0 1px 0 color-mix(in srgb,var(--ink) 35%,transparent),0 6px 16px rgba(34,100,173,.3)}
.hTile[data-k=walk] .hIc{background:linear-gradient(180deg,#2b8a48,#2F7A32);box-shadow:inset 0 1px 0 color-mix(in srgb,var(--ink) 35%,transparent),0 6px 16px rgba(43,138,72,.3)}
.hTile[data-k=phone] .hIc{background:linear-gradient(180deg,#f5c98a,#c98a1f)}
.hTile[data-k=matrix] .hIc{background:linear-gradient(180deg,#8fa9c4,#4d6680)}
/* Decisions (Dave, Oct 8 2026): Dave, John and Brad only, always first, always pulsing */
.hTile.needsInput{border-color:color-mix(in srgb,var(--amber) 55%,transparent);animation:decPulse 2.4s ease-in-out infinite}
.hTile[data-k=decide]{grid-column:1/-1;border-color:#39ff14;animation:decPulse 1.8s ease-in-out infinite}
.hTile[data-k=decide] .hIc{background:linear-gradient(180deg,#9dff7a,#1fd10a);color:#03210a;box-shadow:inset 0 1px 0 color-mix(in srgb,var(--ink) 50%,transparent),0 0 22px rgba(57,255,20,.7)}
.hTile[data-k=decide] em{border-color:#39ff14;color:#7dff5c;text-shadow:0 0 8px rgba(57,255,20,.6)}
html[data-theme=day] .hTile[data-k=decide] em{color:var(--green);text-shadow:none}
@keyframes decPulse{0%,100%{box-shadow:var(--shadow),0 0 0 0 rgba(57,255,20,0),0 0 12px rgba(57,255,20,.25)}50%{box-shadow:var(--shadow),0 0 0 4px rgba(57,255,20,.75),0 0 46px 6px rgba(57,255,20,.65)}}
@media (prefers-reduced-motion:reduce){.hTile.needsInput,.hTile[data-k=decide]{animation:none;box-shadow:var(--shadow),0 0 0 3px color-mix(in srgb,var(--amber) 35%,transparent)}.hTile[data-k=decide]{box-shadow:var(--shadow),0 0 0 3px rgba(57,255,20,.7)}}
.hTxt{display:flex;flex-direction:column;gap:4px;min-width:0}
.hTxt b{font-size:20px;font-weight:400;display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px}
.hTxt span{color:var(--muted);font-size:15px;line-height:1.4}
.hTxt em{font-style:normal;font-size:12px;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:1px 8px;white-space:nowrap;}
.hTile.soon{cursor:default;opacity:.7}
.hTile.soon .hIc{background:color-mix(in srgb,var(--ink) 8%,transparent);box-shadow:none;color:var(--muted)}
body.atHome .navwrap,body.crew .navwrap{display:none}
/* the home board (Dave, Oct 23 2026: HCP's home without the map, employee status or recent activity): today's schedule wide,
   Waiting on you and Waiting on materials beside it; the slim tiles follow */
.homeBoard{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:14px;margin:0 0 18px} .homeBoard:empty{display:none}
.hb{background:var(--panel);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);min-width:0;overflow:hidden}
.hbToday{grid-row:span 2}
.hb header{display:flex;align-items:center;gap:8px;padding:12px 16px;border-bottom:1px solid var(--sep)}
.hb header b{font-size:17px} .hb header em{font-style:normal;font-size:13px;color:var(--dim);font-variant-numeric:tabular-nums}
.hb header a{margin-left:auto;color:var(--cyan);text-decoration:none;font-size:14px;white-space:nowrap}
.hbBad{color:var(--red);font-size:13px;font-weight:600}
.hbRow{display:flex;align-items:center;gap:12px;min-height:48px;padding:8px 16px;border-top:1px solid var(--sep);color:var(--ink);text-decoration:none}
.hbRow:first-child{border-top:0} .hbRow:hover{background:var(--hover)}
.hbT{flex:0 0 96px;color:var(--dim);font-size:13px;font-variant-numeric:tabular-nums}
.hbW{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px} .hbW b{font-weight:600;font-size:15px;overflow-wrap:anywhere}
.hbW small{color:var(--dim);font-size:13px;overflow-wrap:anywhere}
.hbC{display:flex;gap:4px;flex-wrap:wrap;justify-content:flex-end;max-width:40%}
.hbC i{font-style:normal;font-size:11px;font-weight:700;color:#fff;background:var(--dim);border-radius:999px;min-width:26px;height:26px;display:grid;place-items:center;padding:0 5px}
.hbGo{color:var(--dim);font-size:18px}
.hbNone{padding:16px;color:var(--dim)} .hbMore{display:block;padding:12px 16px;border-top:1px solid var(--sep);color:var(--cyan);text-decoration:none}
.homeHead2{display:flex;align-items:center;gap:14px} .homeHead2:empty{display:none} .homeHead2 h3{margin:0;font-size:22px}
.hbBack{color:var(--cyan);text-decoration:none;min-height:44px;display:flex;align-items:center;font-size:16px}
@media(max-width:900px){.homeBoard{display:none}}   /* the phone opens on Today, which already shows this; its home is the numbers and tiles */
body.crew #ideaBtn{display:none}
@media(max-width:640px){.homeHead h2{font-size:25px}.hTile{padding:16px}.homeGrid{grid-template-columns:1fr;gap:10px}}

/* ================= DESKTOP (Dave, Oct 5, 2026): wider layout, every tab visible ================= */
@media (hover:hover) and (pointer:fine) and (min-width:1024px){
  .bar, nav, main{max-width:1480px}
  .bar{flex-wrap:nowrap}
  html .ideaBtn{order:0;width:auto}
  nav{flex-wrap:wrap;overflow:visible;row-gap:0}
  nav button{padding:12px 14px}
  nav button:hover{color:var(--ink)}
  .mygrid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}
  .homeGrid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}
  .hTile:hover{transform:translateY(-2px)}
  #thread,.composer form,#intro{max-width:980px;margin-left:auto;margin-right:auto}
  .tiles{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}
  .fixrow:hover,.c26row:hover,.row:hover{background:color-mix(in srgb,var(--ink) 2%,transparent)}
  .btn,.chip,nav button,.hTile,.pick,.wzCard{cursor:pointer}
}
/* mouse users on smaller windows: the tab row scrolls with the wheel and shows a thin scrollbar */
@media (hover:hover) and (pointer:fine){ nav{scrollbar-width:thin} nav::-webkit-scrollbar{height:6px} nav::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--ink) 18%,transparent);border-radius:3px} }
nav button:focus-visible,.btn:focus-visible,.hTile:focus-visible{outline:2px solid var(--house-hi,#6db4f5);outline-offset:2px}

/* ================= NOTES ================= */
.nCapture{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:12px;box-shadow:var(--shadow);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);margin:4px 0 10px}
.nCapture textarea{width:100%;min-height:58px;border:0!important;background:transparent!important;box-shadow:none!important;color:var(--ink);font:inherit;font-size:18px;resize:none;outline:none;padding:4px 2px}
.nCapBar{display:flex;align-items:center;gap:8px;margin-top:6px}
.nHint{flex:1;font-size:13px;min-width:0}
.nMic.on{border-color:#ef6a5e;color:#ef6a5e;animation:micPulse 1s ease-in-out infinite}
@keyframes micPulse{50%{box-shadow:0 0 0 6px rgba(239,106,94,.18)}}
.nPush{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:10px 12px;border-radius:14px;border:1px solid rgba(240,176,73,.4);background:rgba(240,176,73,.08);margin-bottom:10px;font-size:15px}
.nViews{display:flex;gap:6px;overflow-x:auto;padding:2px 0 8px;scrollbar-width:none}
.nViews .chip{flex:none;font-size:14px;padding:7px 13px}
.nViews .chip b{font-weight:400;opacity:.6;margin-left:3px}
.nViews .chip.on{background:linear-gradient(180deg,var(--house),var(--house-lo));color:#fff;border-color:transparent}
.nSearch{margin:0 0 10px}
.nGrid{columns:1;column-gap:12px}
@media(min-width:700px){.nGrid{columns:2}}
@media(min-width:1150px){.nGrid{columns:3}}
.nCard{break-inside:avoid;margin:0 0 12px;padding:12px 14px 10px;border-radius:16px;background:var(--panel);border:1px solid var(--line);border-top:3px solid var(--k);box-shadow:var(--shadow);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);transition:opacity .25s,transform .25s}
.nCard.pinned{border-color:color-mix(in srgb,var(--k) 55%,transparent)}
.nCard.leaving{opacity:0;transform:scale(.97)}
.nCard.closed .nText{text-decoration:line-through;opacity:.6}
.nTop{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}
.nKind{font-size:12px;color:var(--k);letter-spacing:.02em}
.nBody{display:flex;gap:10px;align-items:flex-start}
.nTick{flex:0 0 22px;height:22px;margin-top:2px;border-radius:7px;border:2px solid var(--k);background:transparent;cursor:pointer}
.nTick:hover{background:color-mix(in srgb,var(--k) 25%,transparent)}
.nTxt{min-width:0;flex:1}
.nTitle{display:block;margin-bottom:2px}
.nText{white-space:pre-wrap;word-wrap:break-word;font-size:16px;line-height:1.45;cursor:text}
.nEdit{width:100%;min-height:80px;font:inherit;font-size:16px;padding:8px;border-radius:10px}
.nEditBar,.nRemind{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px;align-items:center}
.nRemind input,.nRemind textarea{flex:1 1 200px}
.nChips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.nChip{font-size:12.5px;padding:2px 9px;border-radius:999px;border:1px solid var(--line);color:var(--muted);text-decoration:none;}
.nChip.late{color:#ef6a5e;border-color:rgba(239,106,94,.45)}
.nHelp{margin-top:10px;padding:10px 12px;border-radius:12px;background:rgba(109,180,245,.08);border-left:3px solid var(--house-hi);font-size:15px}
.nHelp p:first-child{margin-top:0}
.nActs{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}
.nActs .btn.sm{padding:6px 10px;font-size:13px}
.nEmpty{padding:30px 6px;text-align:center}
html[data-theme=day] .nHelp{background:rgba(59,143,224,.08)}
.sugg{position:relative;margin-top:16px;max-width:640px}
.sugg>summary{list-style:none;display:inline-flex;align-items:center;gap:8px;cursor:pointer;padding:9px 16px;border-radius:999px;border:1px solid var(--line);background:color-mix(in srgb,var(--ink) 5%,transparent);color:var(--ink);font-size:15px;user-select:none}
.sugg>summary::-webkit-details-marker{display:none}
.sugg>summary::after{content:"▾";opacity:.7;transition:transform .2s}
.sugg[open]>summary::after{transform:rotate(180deg)}
.sugg>summary:hover{border-color:rgba(109,180,245,.6)}
.sugg>summary:focus-visible{outline:2px solid var(--blue-light,#6db4f5);outline-offset:2px}
.suggMenu{position:absolute;z-index:20;left:0;width:min(560px,calc(100vw - 44px));top:calc(100% + 8px);max-height:min(50vh,420px);overflow:auto;padding:8px;border-radius:16px;border:1px solid color-mix(in srgb,var(--ink) 10%,transparent);background:rgba(10,18,30,.97);box-shadow:0 18px 40px rgba(0,0,0,.45)}
.suggGrp{font-size:12.5px;opacity:.6;padding:10px 10px 4px}
.sItem{display:block;width:100%;text-align:left;background:none;border:0;color:var(--ink);font:inherit;font-size:15px;padding:10px;border-radius:10px;cursor:pointer;line-height:1.35}
.sItem:hover,.sItem:focus-visible{background:rgba(109,180,245,.12);outline:none}
html[data-theme=day] .suggMenu{background:rgba(255,255,255,.98);border-color:rgba(16,32,49,.12)}
html[data-theme=day] .sugg>summary{background:#fff}
.askBar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:16px;max-width:640px}
.askBar .sugg{margin-top:0;flex:0 0 auto}
.gLink{font-size:14px;color:var(--ink);opacity:.8;text-decoration:none;padding:9px 14px;border-radius:999px;border:1px dashed var(--line)}
.gLink:hover{opacity:1;border-style:solid}
#gFlash.notice{margin-top:12px}
.memBtn{font:inherit;font-size:14px;color:var(--ink);background:color-mix(in srgb,var(--ink) 5%,transparent);border:1px solid var(--line);border-radius:999px;padding:9px 14px;cursor:pointer}
.memBtn b{font-weight:400;opacity:.65;margin-left:2px}
.memBtn:hover{border-color:rgba(109,180,245,.6)}
.memPanel{position:fixed;z-index:40;top:0;right:0;bottom:0;width:min(440px,100%);overflow:auto;padding:max(16px,var(--safe-area-inset-top,env(safe-area-inset-top,0px))) 18px 24px;background:rgba(8,14,24,.98);border-left:1px solid color-mix(in srgb,var(--ink) 10%,transparent);box-shadow:-20px 0 40px rgba(0,0,0,.45)}
.memHead{display:flex;align-items:center;justify-content:space-between;gap:10px}
.memHead h3{margin:0;font-weight:400;font-size:22px}
.memTeach textarea{width:100%;min-height:64px}
.memRow{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:8px 0 14px}
.memRow select{flex:1 1 140px}
.memOwners{display:flex;gap:6px;align-items:center;font-size:14px;text-transform:none;letter-spacing:0;margin:0}
.memItem{padding:12px 0;border-bottom:1px solid color-mix(in srgb,var(--ink) 7%,transparent);font-size:15px;line-height:1.45}
.memKind{display:inline-block;font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;opacity:.75;border:1px solid var(--line);border-radius:6px;padding:1px 6px;margin-right:6px}
.memKind.own{border-color:var(--amber);color:#ffd9a0}
.memMeta{font-size:12.5px;opacity:.6;margin-top:4px}
.memForget{background:none;border:0;color:inherit;text-decoration:underline;cursor:pointer;font:inherit;padding:0}
.modeTag{display:flex;align-items:center;gap:10px;margin:0 0 8px;padding:8px 12px;border-radius:12px;border:1px solid var(--amber);background:color-mix(in srgb,var(--amber) 10%,transparent);color:#ffe2b0;font-size:14px}
.modeTag button{margin-left:auto;background:none;border:0;color:inherit;font-size:16px;cursor:pointer}
.filed{margin-top:10px;font-size:14px;opacity:.85}
.filed a{color:inherit}
#ask #memPanel.memPanel{background:#080e18;backdrop-filter:none;-webkit-backdrop-filter:none}
html[data-theme=day] #ask #memPanel.memPanel{background:#fff;border-color:rgba(16,32,49,.12)}
html[data-theme=day] .modeTag{color:#6a4300}
/* Day Plan (idea 57) */
.dayPlan .dpI{display:flex;gap:12px;align-items:flex-start;padding:11px 2px;border-top:1px solid var(--line);font-size:16px;cursor:pointer}
.dayPlan .dpI input{width:22px;height:22px;flex:none;margin-top:1px;accent-color:var(--house-hi,#6db4f5)}
.dayPlan .dpI span{overflow-wrap:anywhere}
.dayPlan .dpI.done span{opacity:.55;text-decoration:line-through}

/* Home (Oct 15 2026): pulse numbers on top, customizable tiles */
.pulseRow{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin:0 0 16px}
.pulseRow.off{opacity:.45}
.pstat{display:flex;flex-direction:column;gap:2px;padding:16px 18px;border-radius:18px;background:var(--panel);border:1px solid var(--line);text-decoration:none;color:var(--ink);font-variant-numeric:tabular-nums}
.pstat b{font-size:34px;line-height:1;letter-spacing:-.01em}
.pstat span{font-size:14px;color:var(--dim)}
.pstat em{font-style:normal;font-size:15px;color:var(--cyan)}
.pstat:hover{border-color:rgba(109,180,245,.45)}
.hTile.off{opacity:.4}
.hTile{position:relative}
.hEdit{position:absolute;right:10px;bottom:10px;display:flex;gap:6px}
.hEdit button{font:inherit;font-size:13px;padding:4px 9px;border-radius:8px;border:1px solid var(--line);background:var(--panel);color:var(--ink);cursor:pointer}
.homeTools{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:16px 2px}
@media (max-width:600px){.pulseRow{grid-template-columns:repeat(3,1fr);gap:8px} .pstat{padding:12px 10px} .pstat b{font-size:26px} .pstat span{font-size:12px;line-height:1.2} .pstat em{font-size:13px}}
/* Ask box: floats and glows via the shared rules in nav.css ([data-dock], .pn-hl), like every typing bar in Pulse */
#ask .composer textarea,html[data-theme=day] #ask .composer textarea{border:0;background:transparent;box-shadow:none;outline:none}
@media (max-width:899px){#ask .composer{padding:10px 12px}}
@media (max-width:640px){body.has-pnav .ideaBtn{bottom:calc(16px + var(--pn-bar) + var(--pn-dock) + var(--pn-kb))}}

/* The Cycle of Our Job Flow on Home (cycles.py) */
.cyc{margin:12px 0}.cyc h4{margin:0 0 8px}.cycRow{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px}
.cycSeat{border:1px solid var(--line);border-radius:10px;padding:8px 10px;background:var(--panel)}
.cycSeat summary{cursor:pointer;list-style:none;display:grid;grid-template-columns:auto 1fr auto;gap:2px 8px;align-items:center}
.cycSeat summary::-webkit-details-marker{display:none}.cycSeat summary small{grid-column:1/-1;color:var(--muted)}
.cycN{width:22px;height:22px;border-radius:50%;background:var(--accent);color:#fff;display:grid;place-items:center;font-size:12px}
.cycCt{font-family:var(--display);font-weight:700;font-size:22px;text-decoration:none;color:var(--title)}.cycSeat ol{padding-left:18px;margin:6px 0}.cycSeat li{margin:3px 0}
