/* brain.maximyzeai.com — MaximyzeAI design system, navy-ink working palette (P27a).
   Fonts are self-hosted (design-system hard rule). Layout: fixed sidebar + fluid main. */

@font-face{font-family:'Montserrat';font-weight:400;font-display:swap;src:url(/fonts/montserrat-400.woff2) format('woff2')}
@font-face{font-family:'Montserrat';font-weight:600;font-display:swap;src:url(/fonts/montserrat-600.woff2) format('woff2')}
@font-face{font-family:'Montserrat';font-weight:700;font-display:swap;src:url(/fonts/montserrat-700.woff2) format('woff2')}
@font-face{font-family:'Montserrat';font-weight:800;font-display:swap;src:url(/fonts/montserrat-800.woff2) format('woff2')}
@font-face{font-family:'Open Sans';font-weight:400;font-display:swap;src:url(/fonts/open-sans-400.woff2) format('woff2')}
@font-face{font-family:'Open Sans';font-weight:600;font-display:swap;src:url(/fonts/open-sans-600.woff2) format('woff2')}
@font-face{font-family:'Open Sans';font-weight:700;font-display:swap;src:url(/fonts/open-sans-700.woff2) format('woff2')}

:root{
  --blue:#0096ff;--blue-deep:#0079db;--blue-press:#0061b3;--sky:#66cfff;--ice:#eaf6ff;--blue-100:#d2ecff;
  --ink:#14181f;--navy:#0b3f6e;--navy-2:#084e8c;
  --cloud:#f6f8fb;--mist:#e2e7ee;--mist-2:#eef1f6;--slate:#6b7484;--slate-2:#4c5563;--steel:#9aa4b3;
  --green:#16a34a;--green-bg:#d6f5e3;--amber:#c97f06;--amber-bg:#fdeccb;--red:#dc2626;--red-bg:#fcdcdc;--purple:#6d28d9;--purple-bg:#ede9fe;
  --font-h:'Montserrat',Arial,Helvetica,sans-serif;--font-b:'Open Sans',Arial,Helvetica,sans-serif;--mono:Consolas,'SF Mono',Menlo,monospace;
  --r:10px;--shadow:0 1px 2px rgba(20,24,31,.06),0 4px 14px rgba(20,24,31,.05);
  --side:232px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
body{font-family:var(--font-b);font-size:14px;line-height:1.5;color:var(--ink);background:var(--cloud)}
h1,h2,h3,h4{font-family:var(--font-h);line-height:1.25}
a{color:var(--blue-deep);text-decoration:none}a:hover{text-decoration:underline}
button{font:inherit;cursor:pointer}
code,pre{font-family:var(--mono);font-size:12.5px}
.muted{color:var(--slate)}.small{font-size:12px}.tiny{font-size:11px}
.hidden{display:none!important}

/* ---- shell ---- */
.app{display:flex;min-height:100vh}
.side{width:var(--side);background:var(--ink);color:#fff;display:flex;flex-direction:column;position:fixed;inset:0 auto 0 0;z-index:30;transition:transform .2s}
.brand{padding:22px 20px 14px;border-bottom:1px solid rgba(255,255,255,.08)}
.logo{width:150px;display:block}
.logo-mark{display:none;width:34px;margin:0 auto}
.tabbar{display:none}
.brand-sub{display:block;margin-top:8px;font:600 11px/1 var(--font-h);letter-spacing:.14em;text-transform:uppercase;color:var(--sky)}
.nav{padding:10px 10px;display:flex;flex-direction:column;gap:2px;flex:1;overflow:auto}
.nav a{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:8px;color:#cbd2dd;font:600 13px var(--font-h);transition:background .12s,color .12s}
.nav a:hover{background:rgba(255,255,255,.06);color:#fff;text-decoration:none}
.nav a.active{background:var(--blue);color:#fff}
.nav .ico{width:18px;text-align:center;font-size:14px;opacity:.85}
.side-foot{padding:12px 20px 18px;border-top:1px solid rgba(255,255,255,.08);color:var(--steel)}
.link{background:none;border:0;color:var(--sky);padding:0;font-size:12px;margin-top:6px}
.main{flex:1;margin-left:var(--side);min-width:0;display:flex;flex-direction:column}
.top{position:sticky;top:0;z-index:20;background:rgba(246,248,251,.92);backdrop-filter:blur(8px);display:flex;align-items:center;gap:10px;padding:12px 24px;border-bottom:1px solid var(--mist)}
.burger{display:none;background:none;border:0;font-size:20px;color:var(--ink)}
.search{flex:1;max-width:520px}
.search input{width:100%;padding:9px 14px;border:1px solid var(--mist);border-radius:999px;background:#fff;font:inherit;font-size:13.5px;outline:0}
.search input:focus{border-color:var(--blue);box-shadow:0 0 0 3px var(--ice)}
.view{padding:22px 24px 60px;max-width:1380px;width:100%}

.btn{border:1px solid var(--mist);background:#fff;color:var(--ink);padding:8px 14px;border-radius:8px;font:600 13px var(--font-h);transition:all .12s;white-space:nowrap}
.btn:hover{border-color:var(--steel)}
.btn.primary{background:var(--blue);border-color:var(--blue);color:#fff}.btn.primary:hover{background:var(--blue-deep)}
.btn.danger{background:var(--red);border-color:var(--red);color:#fff}
.btn.ghost{background:transparent}
.btn.sm{padding:5px 10px;font-size:12px}
.btn:disabled{opacity:.5;cursor:default}

/* ---- page structure ---- */
.page-h{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:18px}
.page-h h1{font-size:24px;font-weight:800;color:var(--ink);letter-spacing:-.01em}
.page-h .sub{color:var(--slate);font-size:13px;margin-top:4px}
.grid{display:grid;gap:14px}
.g2{grid-template-columns:repeat(auto-fit,minmax(340px,1fr))}
.g3{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.g4{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.card{background:#fff;border:1px solid var(--mist);border-radius:var(--r);padding:16px 18px;box-shadow:var(--shadow);min-width:0}
.card.pad0{padding:0}
.card h2,.card h3{font-size:14px;font-weight:700;color:var(--ink);margin-bottom:10px;display:flex;align-items:center;justify-content:space-between;gap:8px}
.card h2 .sub{font:400 12px var(--font-b);color:var(--slate)}
.card.span2{grid-column:span 2}
@media(max-width:900px){.card.span2{grid-column:span 1}}
.stat .label{font:600 11px var(--font-h);letter-spacing:.08em;text-transform:uppercase;color:var(--slate)}
.stat .big{font:700 24px/1.2 var(--font-h);color:var(--navy);margin:6px 0 2px}
.stat .big.off{color:var(--red)}.stat .big.warn{color:var(--amber)}.stat .big.on{color:var(--green)}
.stat p{font-size:12px;color:var(--slate)}
.section{margin:26px 0 10px;display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap}
.section h2{font-size:16px;font-weight:700}
.section .sub{color:var(--slate);font-size:12px}

/* ---- pills / health ---- */
.pill{display:inline-flex;align-items:center;gap:5px;padding:2px 9px;border-radius:999px;font:600 11px var(--font-h);white-space:nowrap;vertical-align:middle}
.pill.on{background:var(--green-bg);color:var(--green)}
.pill.off{background:var(--red-bg);color:var(--red)}
.pill.warn{background:var(--amber-bg);color:var(--amber)}
.pill.prog,.pill.info{background:var(--ice);color:var(--blue-press)}
.pill.none,.pill.neutral{background:var(--mist-2);color:var(--slate-2)}
.pill.purple{background:var(--purple-bg);color:var(--purple)}
.pill.hot{background:var(--red-bg);color:var(--red)}.pill.warm{background:var(--amber-bg);color:var(--amber)}.pill.cold{background:var(--mist-2);color:var(--slate)}
.dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--steel)}
.dot.on{background:var(--green)}.dot.off{background:var(--red)}.dot.warn{background:var(--amber)}.dot.prog{background:var(--blue)}
.rock-tag{display:inline-block;font:700 10.5px var(--font-h);padding:1px 7px;border-radius:5px;background:var(--navy);color:#fff;letter-spacing:.04em}
.rock-tag.r1{background:var(--navy)}.rock-tag.r2{background:var(--blue-deep)}.rock-tag.r3{background:var(--navy-2)}.rock-tag.none{background:var(--steel)}
.tier{font:600 10px var(--font-h);color:var(--slate);border:1px solid var(--mist);border-radius:4px;padding:0 5px}

/* ---- tables ---- */
.tbl{width:100%;border-collapse:collapse;font-size:13px}
.tbl th{font:600 11.5px var(--font-h);text-align:left;padding:9px 12px;background:var(--navy);color:#fff;letter-spacing:.03em;white-space:nowrap}
.tbl th:first-child{border-radius:8px 0 0 0}.tbl th:last-child{border-radius:0 8px 0 0}
.tbl td{padding:9px 12px;border-top:1px solid var(--mist);vertical-align:top}
.tbl tr:nth-child(even) td{background:var(--cloud)}
.tbl td.num{font-weight:600;white-space:nowrap;text-align:right}
.tbl .clip{max-width:460px}
.tbl.compact td{padding:6px 10px;font-size:12.5px}
.tbl tr.click{cursor:pointer}.tbl tr.click:hover td{background:var(--ice)}
.wrap-x{overflow-x:auto}

/* ---- lists ---- */
.list{list-style:none}
.list li{padding:9px 0;border-top:1px solid var(--mist);display:flex;gap:10px;align-items:flex-start}
.list li:first-child{border-top:0}
.list .t{flex:1;min-width:0}
.list .meta{font-size:11.5px;color:var(--slate);margin-top:2px}
.list .meta a{color:var(--slate-2)}
.task{gap:12px}
.task .score{font:700 12px var(--font-h);color:var(--navy);background:var(--ice);border-radius:6px;padding:3px 7px;min-width:36px;text-align:center}
.task.stale{opacity:.6}
.task .title{font-weight:600}
.clamp{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.clamp.open{-webkit-line-clamp:unset}

/* ---- scorecard grid ---- */
.sc td.cell{text-align:center;font-weight:700;white-space:nowrap}
.sc td.cell.on{background:var(--green-bg)!important;color:var(--green)}
.sc td.cell.off{background:var(--red-bg)!important;color:var(--red)}
.sc td.cell.warn{background:var(--amber-bg)!important;color:var(--amber)}
.sc td.cell.none{color:var(--slate)}
.sc .wk{font-weight:600;white-space:nowrap}

/* ---- sparkline ---- */
.spark{width:100%;height:56px;display:block}
.spark path{fill:none;stroke:var(--blue);stroke-width:2}
.spark .area{fill:var(--ice);stroke:none}
.spark .floor{stroke:var(--red);stroke-dasharray:3 3;stroke-width:1}

/* ---- markdown ---- */
.md{font-size:14px;line-height:1.65;max-width:900px}
.md h1{font-size:22px;margin:0 0 14px}.md h2{font-size:17px;margin:26px 0 10px;padding-bottom:6px;border-bottom:1px solid var(--mist)}.md h3{font-size:14.5px;margin:18px 0 8px}.md h4{font-size:13.5px;margin:14px 0 6px;color:var(--navy)}
.md p{margin:0 0 10px}.md ul,.md ol{margin:0 0 12px 22px}.md li{margin:3px 0}
.md blockquote{margin:12px 0;padding:10px 14px;border-left:4px solid var(--blue);background:var(--ice);border-radius:0 8px 8px 0;color:var(--slate-2)}
.md table{border-collapse:collapse;margin:10px 0 16px;font-size:12.5px;display:block;overflow-x:auto;max-width:100%}
.md th{background:var(--navy);color:#fff;padding:6px 10px;text-align:left;font:600 11.5px var(--font-h)}
.md td{padding:6px 10px;border-top:1px solid var(--mist);vertical-align:top;min-width:120px}
.md tr:nth-child(even) td{background:var(--cloud)}
.md code{background:var(--mist-2);padding:1px 5px;border-radius:4px}
.md pre{background:var(--ink);color:#e6edf3;padding:12px 14px;border-radius:8px;overflow:auto;margin:10px 0 14px}.md pre code{background:none;padding:0;color:inherit}
.md hr{border:0;border-top:1px solid var(--mist);margin:18px 0}
.md del{color:var(--slate)}
.md input[type=checkbox]{margin-right:6px}
.md img{max-width:100%}

/* ---- forms ---- */
.field{margin-bottom:12px}
.field label{display:block;font:600 12px var(--font-h);color:var(--slate-2);margin-bottom:5px}
.field input,.field textarea,.field select{width:100%;padding:9px 12px;border:1px solid var(--mist);border-radius:8px;font:inherit;background:#fff;outline:0}
.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--blue);box-shadow:0 0 0 3px var(--ice)}
.field textarea{min-height:120px;resize:vertical}
.hint{font-size:12px;color:var(--slate);margin-top:4px}
.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.seg{display:inline-flex;border:1px solid var(--mist);border-radius:8px;overflow:hidden;flex-wrap:wrap}
.seg button{background:#fff;border:0;padding:7px 12px;font:600 12px var(--font-h);color:var(--slate-2);border-right:1px solid var(--mist)}
.seg button:last-child{border-right:0}
.seg button.active{background:var(--blue);color:#fff}

/* ---- modal / toast ---- */
.modal{position:fixed;inset:0;background:rgba(20,24,31,.5);display:flex;align-items:center;justify-content:center;z-index:100;padding:16px}
.modal .box{background:#fff;border-radius:14px;width:min(720px,100%);max-height:92vh;overflow:auto;padding:22px 24px;box-shadow:0 20px 60px rgba(0,0,0,.3)}
.modal .box.wide{width:min(1100px,100%)}
.modal h2{font-size:18px;margin-bottom:12px}
.modal .actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}
.toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);background:var(--ink);color:#fff;padding:10px 16px;border-radius:999px;font-size:13px;z-index:200;box-shadow:var(--shadow);max-width:90vw}
.toast.err{background:var(--red)}
.loading{color:var(--slate);padding:40px;text-align:center}
.err-box{background:var(--red-bg);color:var(--red);border-radius:8px;padding:12px 14px;font-size:13px}
.note{background:var(--ice);border:1px solid var(--blue-100);border-left:4px solid var(--blue);border-radius:8px;padding:10px 14px;font-size:13px}
.note strong{color:var(--navy)}

/* ---- login ---- */
.login{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--ink);padding:20px}
.login .box{background:#fff;border-radius:16px;padding:32px;width:min(400px,100%);box-shadow:0 30px 80px rgba(0,0,0,.4)}
.login .logo-wrap{background:var(--ink);border-radius:10px;padding:18px;margin:-32px -32px 22px;text-align:center}
.login .logo-wrap img{width:180px}
.login h1{font-size:18px;margin-bottom:6px}

/* ---- browse ---- */
.crumbs{font-size:12.5px;color:var(--slate);margin-bottom:12px}.crumbs a{color:var(--blue-deep)}
.tree{list-style:none}
.tree li a{display:flex;gap:8px;padding:7px 10px;border-radius:6px;color:var(--ink);align-items:center}
.tree li a:hover{background:var(--ice);text-decoration:none}
.tree .sz{margin-left:auto;color:var(--slate);font-size:11px}
.frame{width:100%;height:78vh;border:1px solid var(--mist);border-radius:8px;background:#fff}
.two{display:grid;grid-template-columns:280px 1fr;gap:16px}
@media(max-width:900px){.two{grid-template-columns:1fr}}

/* ---- request cards ---- */
.req{display:flex;gap:12px;align-items:flex-start;padding:12px 0;border-top:1px solid var(--mist);cursor:pointer}
.req:first-child{border-top:0}
.req:hover .rt{color:var(--blue-deep)}
.req .rt{font-weight:600}
.thread .c{border:1px solid var(--mist);border-radius:10px;padding:12px 14px;margin:10px 0;background:#fff}
.thread .c.me{background:var(--ice);border-color:var(--blue-100)}
.thread .who{font:600 11.5px var(--font-h);color:var(--slate);margin-bottom:6px}

/* ---- advisors ---- */
.seat{display:flex;flex-direction:column;gap:6px}
.seat .initials{width:44px;height:44px;border-radius:50%;background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:center;font:800 14px var(--font-h)}
.seat p{font-size:12.5px;color:var(--slate)}

/* ---- responsive ----
   ≥1101px  full sidebar
   701–1100 tablet: icon rail (labels on hover as title), same views
   ≤700     phone: bottom tab bar (Today · EOS · Sales · Requests · More), drawer for the rest */
@media(max-width:1100px){
  :root{--side:64px}
  .brand{padding:16px 8px 12px;text-align:center}
  .logo,.brand-sub{display:none}
  .logo-mark{display:block}
  .nav{padding:8px 8px}
  .nav a{justify-content:center;padding:11px 0}
  .nav a span.ico{width:auto;font-size:17px}
  .nav a{font-size:0}          /* icons only; the title attribute carries the label */
  .nav a .ico{font-size:17px}
  .side-foot{padding:10px 6px 14px;font-size:0}
  .side-foot .link{font-size:11px;display:block;text-align:center}
  .side-foot #head-info{display:none}
  .tbl .clip{max-width:300px}
  .g4{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
  .side{transform:translateX(-100%);width:248px}
  .side .brand{padding:22px 20px 14px;text-align:left}
  .side .logo,.side .brand-sub{display:block}.side .logo-mark{display:none}
  .side .nav a{font-size:13px;justify-content:flex-start;padding:12px 12px}
  .side .side-foot{font-size:12px;padding:12px 20px 18px}.side .side-foot #head-info{display:block}
  .side.open{transform:none;box-shadow:0 0 0 100vmax rgba(0,0,0,.45)}
  .main{margin-left:0}
  .burger{display:block}
  .top{padding:10px 12px;gap:8px}
  .top #ask-btn{padding:8px 10px;font-size:12px}
  .view{padding:14px 14px 92px}
  .page-h h1{font-size:21px}
  .page-h .row{width:100%}
  .page-h .row .btn{flex:1 1 auto;text-align:center;padding:10px 10px}
  .grid{gap:10px}
  .g4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .g3,.g2{grid-template-columns:1fr}
  .card{padding:14px 14px}
  .stat .big{font-size:20px}
  .btn{min-height:40px}
  .tbl .clip{max-width:220px}
  .tbl td,.tbl th{padding:8px 8px}
  .list li{padding:11px 0}
  .modal{padding:0;align-items:flex-end}
  .modal .box{border-radius:16px 16px 0 0;max-height:96vh;padding:18px 16px 24px}
  .modal .actions .btn{flex:1;min-height:44px}
  .seg button{padding:10px 12px;flex:1 1 auto}
  .frame{height:70vh}
  .two{grid-template-columns:1fr}
  .tabbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:40;background:#fff;border-top:1px solid var(--mist);padding:6px 4px calc(6px + env(safe-area-inset-bottom));box-shadow:0 -4px 16px rgba(20,24,31,.06)}
  .tabbar a,.tabbar button{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 0;border:0;background:none;color:var(--slate);font:600 10.5px var(--font-h);text-decoration:none;min-height:48px;justify-content:center}
  .tabbar .ico{font-size:18px;line-height:1}
  .tabbar a.active{color:var(--blue-deep)}
  .toast{bottom:84px}
}
@media(hover:none){.act,.btn,.nav a,.req,.tbl tr.click{-webkit-tap-highlight-color:transparent}}
@media print{.side,.top{display:none}.main{margin:0}}

/* ---------- mail ---------- */
.mtools{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:10px 14px;border-bottom:1px solid var(--mist)}
.msearch{flex:1;min-width:220px}
.msearch input{width:100%;padding:8px 12px;border:1px solid var(--mist);border-radius:8px;font:400 13px var(--font-b)}
.mrow{display:flex;align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid var(--mist);cursor:pointer}
.mrow:hover{background:rgba(0,150,255,.04)}
.mrow:last-of-type{border-bottom:0}
.mrow .mfrom{flex:0 0 190px;font:600 13px var(--font-b);color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mrow .msub{flex:1;min-width:0;font:400 13px var(--font-b);color:var(--slate);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mrow .msub .ms1{color:var(--ink)}
.mrow.unread .mfrom,.mrow.unread .msub .ms1{font-weight:700}
.mrow.unread{background:rgba(0,150,255,.05)}
.mrow .mdate{flex:0 0 auto;font:600 11.5px var(--font-b);color:var(--slate);white-space:nowrap}
.mstar{border:0;background:none;font-size:16px;color:var(--mist);cursor:pointer;padding:2px 4px;line-height:1}
.mstar.on{color:var(--amber)}
.march{opacity:0}
.mrow:hover .march{opacity:1}
.mbody{font:400 14px/1.55 var(--font-b);white-space:normal;word-break:break-word}
.mframe{width:100%;min-height:320px;border:0;background:#fff;border-radius:8px}
@media(max-width:760px){
  .mrow .mfrom{flex-basis:110px}
  .mrow .mdate{font-size:10.5px}
  .march{opacity:1}
}

/* ---------- idle lock veil + settings (0004 security policy) ---------- */
.lockveil{position:fixed;inset:0;z-index:200;background:rgba(10,22,40,.82);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center}
.lockbox{background:#fff;border-radius:12px;padding:26px 32px;max-width:340px;text-align:center;box-shadow:0 18px 60px rgba(0,0,0,.4)}
.lockbox h2{font:700 17px var(--font-h);margin-bottom:8px}
.lockbox p{font-size:13.5px;margin:4px 0}
.chk{display:flex;align-items:center;gap:8px;font:400 13.5px var(--font-b);margin:6px 0;cursor:pointer}
.chk input{width:auto}
/* ---------- social dashboard (request #5) ---------- */
.soc-strip{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}
.soc-conn{display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid var(--mist);border-radius:8px;background:#fff}
.soc-conn>div{flex:1;min-width:0}
.soc-conn .tiny{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.up{color:var(--green);font-weight:600}.down{color:var(--red);font-weight:600}
th.sortable{cursor:pointer;user-select:none;white-space:nowrap}
th.sortable:hover{color:var(--blue-deep)}
.dropzone{border:2px dashed var(--mist);border-radius:var(--r);padding:22px;text-align:center;color:var(--slate);transition:border-color .15s,background .15s}
.dropzone.over{border-color:var(--blue);background:var(--ice);color:var(--ink)}

/* ---------- publish queue (request #6) ---------- */
.q-chs{display:flex;flex-wrap:wrap;gap:6px 16px;margin:8px 0}
.q-ch{display:inline-flex;align-items:center;gap:6px;font-size:13px;white-space:nowrap}
.q-row{display:flex;gap:10px;flex-wrap:wrap}
.q-row .field{flex:1;min-width:160px;margin-bottom:8px}
.q-post .row{flex-wrap:wrap}
.q-pub{padding:5px 8px;border:1px solid var(--mist);border-radius:8px;font:inherit;font-size:12px;background:#fff}
