/* InveShares theme v54r2 */
:root{
  --bg:#F7F8F6; --card:#FFFFFF; --ink:#1A1F1B; --mut:#68716B;
  --line:#E6E9E6; --soft:#F1F4F1;
  --acc:#2E7D4F; --accfill:#E9F4EC; --acctext:#25603E;
  --up:#2E7D4F; --dn:#C2402A; --warn:#9A6A0B; --r:12px;
}
html.dark{
  --bg:#080A0C; --card:#0F1316; --ink:#ECEFF1; --mut:#96A0A6;
  --line:#20272C; --soft:#151A1E;
  --acc:#4ADE80; --accfill:#123322; --acctext:#86EFAC;
  --up:#4ADE80; --dn:#F87171; --warn:#FBBF24;
}
html.dark body{background:var(--bg);color:var(--ink)}
body{background:var(--bg)}
.hd{display:flex!important;align-items:center!important;gap:12px;
padding:9px 0!important;min-height:52px}
.logo,.logo:visited,.logo:hover,.logo:active{
color:var(--ink)!important;text-decoration:none!important}
.logo{display:inline-flex!important;align-items:center!important;gap:7px;
white-space:nowrap!important;flex:0 0 auto;font-size:16px!important;
font-weight:680;letter-spacing:-.015em}
.logo img{width:21px!important;height:21px!important;flex:0 0 auto}
.logo b{color:var(--acc)!important}
.logo .wm{display:inline-block!important;white-space:nowrap!important;
line-height:1.05}
.logo .tag{display:block;width:0;min-width:100%;font-size:6.5px!important;letter-spacing:.14em!important;font-weight:500!important;color:var(--mut)!important;text-transform:uppercase!important;margin-top:2px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#dbav,.avwrap{margin-left:auto!important;flex:0 0 auto}
@media(max-width:900px){
  .logo{font-size:15px!important}
  .logo .tag{display:block;width:0;min-width:100%;font-size:6.5px!important;letter-spacing:.14em!important;font-weight:500!important;color:var(--mut)!important;text-transform:uppercase!important;margin-top:2px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .hd{gap:8px}
  #dbav{order:2}
  .avdd{max-width:min(260px,calc(100vw - 24px))}
}
.hero,.card,.c{border-radius:var(--r)!important}
.tab,.seg,.fnd,select.srt,.thbtn{border-radius:999px!important}
.tab{padding:7px 15px!important;font-size:13.5px!important;
transition:transform .06s ease,border-color .12s ease,background .12s ease}
.tab:active,.sc:active,.seg div:active{transform:scale(.97)}
.tab.on{background:var(--acc)!important;color:#fff!important;
border-color:var(--acc)!important}
html.dark .tab.on{background:var(--accfill)!important;
color:var(--acctext)!important;border-color:var(--acc)!important}
.seg div.on{background:var(--acc)!important;color:#fff!important}
html.dark .seg div.on{background:var(--accfill)!important;
color:var(--acctext)!important}
:where(.tab,.sc,button,input,select,a.row,.hit):focus-visible{
outline:2px solid var(--acc);outline-offset:2px}
.pill{border-radius:6px!important}
.buy{background:var(--accfill)!important;color:var(--acctext)!important}
html.dark .buy{background:rgba(87,167,115,.16)!important;color:#8FD0A9!important}
.app{background:#FBF3E1!important;color:#8A5F0A!important}
html.dark .app{background:rgba(217,164,65,.15)!important;color:#E5BC66!important}
.ext{background:var(--soft)!important;color:var(--mut)!important}
.pos{color:var(--up)!important}.neg{color:var(--dn)!important}
.sc{border-radius:12px!important;border-color:var(--line);
transition:border-color .12s ease}
.sc.on{background:var(--accfill)!important;border-color:var(--acc)!important}
html.dark .sc{background:var(--card)}
html.dark .sc.on{background:var(--accfill)!important;
border-color:var(--acc)!important}
.c1 a:hover,td.sym a:hover{color:var(--acctext)!important;
border-color:var(--acctext)!important}
html.dark .c1 a:hover,html.dark td.sym a:hover{color:#fff!important;
border-color:#fff!important}
tbody tr:hover{background:var(--soft)!important}
html.dark .tf.on{background:#E7EAE7!important;color:#0C1113!important;
border-color:#E7EAE7!important}
html.dark input,html.dark select,html.dark .fnd{background:var(--soft)!important;
color:var(--ink)!important;border-color:var(--line)!important}
html.dark .sres,html.dark .dd,html.dark .empty{background:var(--card);
border-color:var(--line)}
html.dark .sres a{color:var(--ink);border-bottom-color:#141B18}
html.dark .sres a:hover,html.dark .sres a.k{background:#131A17}
html.dark .dbnav{background:rgba(5,8,7,.97);border-top-color:var(--line)}
html.dark .dbnav a,html.dark .dbnav button{color:var(--mut)}
html.dark .dbnav a.on,html.dark .dbnav button.on{color:var(--acc)}
html.dark .dbsheet .pan{background:var(--card)}
html.dark .dbsheet .grab{background:#28322D}
html.dark .dbsheet a.row,html.dark .dbsheet .hit{color:var(--ink);
border-bottom-color:#141B18}
html.dark .dbsheet input.q{background:var(--soft);border-color:var(--line);
color:var(--ink)}
html.dark .tabs div,html.dark .tabs button{background:var(--card);
color:var(--mut);border-color:var(--line)}
html.dark .tabs div.on,html.dark .tabs button.on{
background:var(--accfill)!important;color:var(--acctext)!important;
border-color:var(--acc)!important}
html.dark .card input{background:var(--soft)!important;color:var(--ink)!important}
html.dark img[src^="/logo.svg"]{content:url("/logo-dark.svg?v=55")}
html.dark canvas{background:var(--card)!important}
select.srt,select{appearance:none;-webkit-appearance:none;
background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6'><path d='M1 1l4 4 4-4' stroke='%2368716B' stroke-width='1.6' fill='none' stroke-linecap='round'/></svg>");
background-repeat:no-repeat;background-position:right 12px center;
padding-right:30px!important}
html.dark select.srt,html.dark select{
background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6'><path d='M1 1l4 4 4-4' stroke='%238B948D' stroke-width='1.6' fill='none' stroke-linecap='round'/></svg>")}
@keyframes dbp{0%{box-shadow:0 0 0 0 rgba(46,125,79,.4)}
70%{box-shadow:0 0 0 6px rgba(46,125,79,0)}100%{box-shadow:0 0 0 0 rgba(46,125,79,0)}}
#hdrdate .dot.s,.reg .dot.s{animation:dbp 2.4s ease-out infinite}
.grs{font-size:11px;color:var(--mut)}
.pill.tw{background:var(--accfill)!important;color:var(--acctext)!important}
.dbnav{position:fixed;left:0;right:0;bottom:0;display:flex;z-index:50;
background:rgba(255,255,255,.97);border-top:1px solid var(--line);
padding-bottom:env(safe-area-inset-bottom)!important}
.dbnav a,.dbnav button{flex:1;display:flex;flex-direction:column;
align-items:center;gap:2px;padding:8px 0 6px;border:0;background:none;
font:inherit;font-size:10.5px;color:var(--mut);text-decoration:none;
cursor:pointer}
.dbnav .ic{font-size:17px;line-height:1}
body{padding-bottom:calc(64px + env(safe-area-inset-bottom))}
.avsign{font-size:13px;color:var(--acc);text-decoration:none;font-weight:640}
.avbtn{border:1px solid var(--line);background:var(--card);border-radius:999px;
padding:3px;cursor:pointer;line-height:0}
.av{width:25px;height:25px;border-radius:50%;background:var(--acc);color:#fff;
display:flex;align-items:center;justify-content:center;font-weight:650;
font-size:12px}
.av.mut{background:var(--soft);color:var(--mut);font-size:12.5px}
.avwrap{position:relative;display:flex;align-items:center;gap:10px}
.avdd{display:none;position:absolute;right:0;top:38px;background:var(--card);
border:1px solid var(--line);border-radius:12px;min-width:212px;
box-shadow:0 12px 32px rgba(0,0,0,.14);z-index:60;padding:6px}
.avwrap.open .avdd{display:block}
.avhead{padding:8px 10px 9px;border-bottom:1px solid var(--line);margin-bottom:4px}
.avhead b{display:block;font-size:13.5px;color:var(--ink)}
.avhead span{font-size:11.5px;color:var(--mut);word-break:break-all}
.avrow{display:flex;align-items:center;justify-content:space-between;width:100%;
gap:10px;padding:9px 10px;border:0;background:none;font:inherit;font-size:13.5px;
color:var(--ink);text-decoration:none;border-radius:8px;cursor:pointer;
text-align:left}
.avrow:hover{background:var(--soft)}
.avrow.out{color:var(--dn)}
.sw{flex:0 0 30px;width:30px;height:18px;border-radius:999px;background:var(--line);
position:relative;transition:.15s}
.sw::after{content:'';position:absolute;top:2px;left:2px;width:14px;height:14px;
border-radius:50%;background:#fff;transition:.15s}
.sw.on{background:var(--acc)}.sw.on::after{left:14px}
.thbtn{display:none}

/* ── density pass (P5polish): compact by default ── */
.hero{padding:15px 16px!important;margin:6px 0 12px!important}
.hero h1{font-size:20px!important;margin-bottom:2px!important}
.hero p.d{font-size:13px!important}
.stages{gap:7px!important;margin-top:12px!important}
.sc{padding:9px 11px!important}
.sc .v{font-size:20px!important}
.sc .l{font-size:12.5px!important}
.sc .h{font-size:11px!important}
.c{padding:9px 11px!important}
.c1 a{font-size:15.5px!important}
.mg{gap:6px 8px!important;padding-top:8px!important}
.f .v{font-size:12.5px!important}
.tab{padding:6px 13px!important;font-size:13px!important}
.bar{margin-bottom:10px!important}
@media(max-width:900px){
  .hero{padding:12px 13px!important}
  .hero h1{font-size:18px!important}
  .sc .v{font-size:18px!important}
  .stages{grid-template-columns:repeat(2,1fr)!important}
}
/* hero chip + stamp: one compact row, stamp animated */
.herotop{display:flex;align-items:center;gap:10px;flex-wrap:nowrap;
margin-bottom:10px;min-width:0}
.herotop #bochip{display:inline-flex!important;align-items:center;gap:8px;
background:var(--accfill)!important;color:var(--acctext)!important;
font-size:10px!important;font-weight:630!important;line-height:1.2;
padding:6px 13px!important;border:1px solid var(--line);max-width:62vw}
#bochip .bt{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
min-width:0}
#bochip .ar{flex:0 0 auto;font-size:12px}
.herotop #upstamp{flex:0 0 auto;margin-left:auto;white-space:nowrap;
font-size:12px!important}
#upstamp .dot{width:7px;height:7px;border-radius:50%;background:var(--acc);
display:inline-block;animation:dbp 2.4s ease-out infinite}
@media(max-width:520px){.herotop #bochip{font-size:11.5px!important;
padding:5px 11px!important}}

/* chip quiet */
#bochip{background:var(--accfill)!important;color:var(--acctext)!important;
font-size:11.5px!important;font-weight:620!important;padding:5px 11px!important;
max-width:62vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
border:1px solid var(--line)}
html.dark #bochip{border-color:#1F4630}
.reg:empty{display:none}
@media(max-width:520px){#bochip{max-width:56vw;font-size:11px!important}}

/* login-blur gate (admin switch) */
body.lockmode .grid .c:nth-child(n+3) .c1 a,
body.lockmode tbody tr:nth-child(n+3) td.sym a{
filter:blur(5px)!important;pointer-events:none;user-select:none}
.lockbar{background:var(--accfill);color:var(--acctext);border:1px solid
var(--line);border-radius:10px;padding:9px 14px;font-size:13px;
margin-bottom:11px}
.lockbar a{color:var(--acctext);font-weight:650}

/* f1 */
@media(max-width:900px){
  input,select,textarea,.fnd,.dbsheet input.q{font-size:16px!important}
}
html{-webkit-text-size-adjust:100%}
.lkd{filter:blur(5px)!important;pointer-events:none;user-select:none}
body.lockmode .lockbar{display:block}
.lockbar{background:var(--accfill);color:var(--acctext);border:1px solid
var(--line);border-radius:10px;padding:9px 14px;font-size:13px;
margin:0 0 11px}
.lockbar a{color:var(--acctext);font-weight:650}
.dbfoot{max-width:1180px;margin:30px auto 8px;padding:14px 16px 0;
border-top:1px solid var(--line);color:var(--mut);font-size:11.5px;
line-height:1.6}
.dbfoot .fl{display:flex;gap:14px;flex-wrap:wrap;margin:10px 0 4px}
.dbfoot .fl a{color:var(--mut);text-decoration:none;font-weight:600}
.dbfoot .fl a:hover{color:var(--acctext)}
.dbfoot .fc{font-size:10.5px;margin-top:2px}

/* f3d — desktop pass */
/* tagline: a whisper, not a banner */
.logo .tag{display:block;width:0;min-width:100%;font-size:6.5px!important;letter-spacing:.14em!important;font-weight:500!important;color:var(--mut)!important;text-transform:uppercase!important;margin-top:2px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* top nav (desktop-primary, hidden on phones) */
.topnav{display:none;align-items:center;gap:2px;margin-left:26px}
.topnav>a,.topnav>.tnwrap>a{padding:7px 13px;border-radius:8px;
font-size:13.5px;font-weight:600;color:var(--mut);text-decoration:none}
.topnav>a:hover,.topnav>.tnwrap>a:hover{color:var(--ink);
background:var(--soft)}
.topnav>a.on,.topnav>.tnwrap>a.on{color:var(--acctext);
background:var(--accfill)}
.tnwrap{position:relative}
.tndd{display:none;position:absolute;left:0;top:100%;padding-top:6px;background:var(--card);
border:1px solid var(--line);border-radius:11px;min-width:210px;
box-shadow:0 12px 32px rgba(0,0,0,.13);padding:6px;z-index:70}
.tnwrap:hover .tndd,.tnwrap:focus-within .tndd,.tnwrap.ddopen .tndd{display:block}
.tndd a{display:block;padding:8px 11px;border-radius:7px;font-size:13px;
color:var(--ink);text-decoration:none}
.tndd a:hover{background:var(--soft)}
.tndd a span{display:block;font-size:11px;color:var(--mut)}
@media(min-width:900px){
  .topnav{display:flex}
  .dbnav{display:none!important}
  body{padding-bottom:24px!important}
  .wrap,.lay{max-width:1180px!important}
  .grid{grid-template-columns:repeat(3,1fr)!important}
  .kgrid{grid-template-columns:repeat(4,1fr)!important}
  .ggrid{grid-template-columns:repeat(4,1fr)!important}
  .stages{grid-template-columns:repeat(4,1fr)!important}
  .sg{grid-template-columns:repeat(4,1fr)!important}
}
@media(min-width:1400px){
  .wrap,.lay{max-width:1280px!important}
}

/* f3e */
/* one-line lockbar, quiet */
.lockbar{font-size:12px!important;padding:8px 12px!important;
white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lockbar a{font-weight:660}
/* bottom-sheet fallback: shell-less pages (account, admin) get a real
   sheet instead of unstyled content dumped at the page end */
.dbsheet{position:fixed;inset:0;background:rgba(0,0,0,.45);display:none;
z-index:80;align-items:flex-end}
.dbsheet.on{display:flex}
.dbsheet .pan{background:var(--card);width:100%;max-height:76vh;
overflow-y:auto;border-radius:16px 16px 0 0;
padding:10px 16px calc(18px + env(safe-area-inset-bottom))}
.dbsheet .grab{width:38px;height:4px;border-radius:2px;
background:var(--line);margin:2px auto 10px}
.dbsheet h4{font-size:11px;text-transform:uppercase;letter-spacing:.08em;
color:var(--mut);margin:4px 0 6px}
.dbsheet a.row{display:flex;align-items:center;justify-content:space-between;
gap:10px;padding:11px 2px;border-bottom:1px solid var(--line);
color:var(--ink);text-decoration:none}
.dbsheet a.row:last-child{border-bottom:0}
.dbsheet .row .t{font-size:15px;font-weight:640}
.dbsheet .row .s{font-size:12px;color:var(--mut)}
.dbsheet .cv{color:var(--mut)}
.dbsheet input.q{width:100%;padding:11px 12px;border:1px solid var(--line);
border-radius:9px;font:inherit;background:var(--soft);color:var(--ink);
margin-bottom:8px}
.dbsheet .hit{display:flex;align-items:baseline;gap:8px;padding:9px 2px;
border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none}
.dbsheet .hit .r{margin-left:auto;font-size:12px;color:var(--mut)}
.dbsheet .msg{color:var(--mut);font-size:12.5px;padding:6px 0}
/* phone hardening: nothing may widen the viewport; topnav is desktop-only */
@media(max-width:899.98px){
  .topnav{display:none!important}
  html,body{overflow-x:clip}
  .hd{min-width:0}
  .hd>*{min-width:0}
}

/* g1 */
html,body{overflow-x:clip}
@media(min-width:1400px){.dbfoot{max-width:1280px!important}}
@media(min-width:900px){
  .dbnav,#dbnav,nav.dbnav{display:none!important}
}
.topnav .tnwrap:last-child .tndd{left:auto;right:0}

/* h1b */
.reg:empty,#reg:empty{display:none!important}
.hd nav:not(.topnav),.hd .nv,.hd .hnav,.hd .hlinks,.hd .ddwrap{
display:none!important}

/* w1: desktop header - logo+search left; menu, date, avatar right */
@media(min-width:900px){
  .hd{gap:14px;flex-wrap:nowrap}
  /* P47: with four nav items the row fits, but the date and Sign in still
     need explicit space or they overlap at the seam. The search box is the
     only flexible element, so it gives way first; the date goes before the
     nav, since the nav is what people click. */
  #hdrdate{flex:0 0 auto;white-space:nowrap;margin-right:10px}
  .hd .avsign,.hd .reg{flex:0 0 auto;white-space:nowrap;margin-left:4px}
  @media (max-width:1220px){ #hdrdate{display:none!important} }
  /* P46: nav, date and avatar all competed for one row and overlapped around
     1100-1300px. The search box is the only element that can give up space, so
     it shrinks first; the date hides before the nav, since the nav is what
     people click. */
  .hd .srch{flex:1 1 auto;min-width:0}
  .hd nav.topnav{flex:0 0 auto;white-space:nowrap}
  @media (max-width:1280px){ .hd .srch{max-width:200px} }
  @media (max-width:1150px){ #hdrdate{display:none!important} }
  @media (max-width:1040px){ .hd .srch{max-width:150px} }
  .logo{order:1}
  .srch{order:2;flex:0 1 360px;margin-left:6px}
  .topnav{order:3;margin-left:auto!important}
  .back{order:4;margin-left:0!important}
  #hdrdate,.hd>.reg{order:4}
  .avwrap,#dbav{order:5;margin-left:0!important}
}

/* b27b tagline: H1B's width:0/min-width:100% clamp is kept for narrow
   headers; released >=1100px where the nav has room to spare. */
@media(min-width:1100px){
  .logo .tag{width:auto;min-width:0;max-width:none;overflow:visible;
  text-overflow:clip}
}

/* a1: the tagline only ever ellipsised on phones - hide it there */
@media(max-width:760px){ .logo .tag{display:none!important} }

/* a13: dropdown chrome (rotation questions, industry sort) */
select.srt,select{border:1px solid var(--line);border-radius:8px;background-color:var(--card);color:var(--ink);font:inherit;font-size:13px;padding:8px 12px;max-width:100%}
html.dark select.srt,html.dark select{background-color:var(--soft)}
