/* ═══════════════════════════════════════════════════════
   THEME SYSTEM — Dragon (dark) + Clean (light) v7
═══════════════════════════════════════════════════════ */
/* ════════════════════════════════════════════════════════════════════
   L·G·M³  COLOR LEGEND  —  NO VARIABLES. REAL NUMBERS. THAT'S IT.
   ────────────────────────────────────────────────────────────────────
   Every color on the board is written out in full, right where it's used:
            rgba( R , G , B , OPACITY )
   First 3 numbers = the COLOR.   Last number = OPACITY (0 = gone, 1 = solid).
   Nothing to look up. What you see is what you change.

        PURPLE  =  148, 33, 146      (#529BFF)
        GREEN   =   38, 194, 129     (#26C281)
        RED     =  255, 77, 106      (#FF4D6A)
        WHITE   =  245, 248, 252     (#F5F8FC)

   • Stronger glow?  change that line's last number.
   • Whole new purple?  find-replace  83,188,236  with your new R,G,B.
   ════════════════════════════════════════════════════════════════════ */
:root {
  --gold: #F5F8FC;
  --cyan: #529BFF;
  --green: #26C281;
  --red: #FF4D6A;
  --orange: #7FA8C9;
  --green2: #1FB573;
  --blood: #8b0000;
  /* Safe layout controls: change these instead of editing the nav structure. */
  /* Wide enough for the full navigation labels at the usual one-step browser zoom. */
  --rail-width: 236px;
  /* The work surface meets the navigation rail. Individual pages own their
     internal breathing room; the shell must not add a duplicate black gutter. */
  --content-gutter: 0px;
  --outer-gutter: clamp(16px, 3vw, 44px);
  --section-left-pad: 20px;
  --row-line-gap: 18px;
  --master-header-h: 44px;
  --dc-reading-scale: 1;
}

body.dragon {
  --bg: #0B0E11;
  --bg2: #14181E;
  --bg3: #14181E;
  --card: #14181E;
  --card2: #14181E;
  --border: #232B35;
  --border2: #2A2E39;
  --text: #EAF0F6;
  --text2: #A9B4C0;
  --dim: #6A7682;
  --header-bg: #0B0E11;
  --nav-bg: #0F1318;
  --table-hover: rgba(255, 255, 255, .03);
  --vix-track: #0B0E11;
  --font-display: var(--dc-word-font,'Inter',sans-serif);
  --font-mono: var(--dc-number-font,'Figtree',sans-serif);
  --font-body: var(--dc-word-font,'Inter',sans-serif);
  --input-bg: #0B0E11;
  --tag-bg: rgba(255, 255, 255, .06);
}

body.clean {
  --bg: #F4F7FB;
  --bg2: #FFFFFF;
  --bg3: #F8FAFC;
  --card: #FFFFFF;
  --card2: #F4F7FB;
  --border: #B0BEC5;
  --border2: #90A4AE;
  --text: #1E2D3D;
  --text2: #475569;
  --dim: #c7c8c8;
  --header-bg: linear-gradient(135deg, #1E2D3D, #2D4A6B);
  --nav-bg: #FFFFFF;
  --table-hover: rgba(59, 130, 246, .03);
  --vix-track: #B0BEC5;
  --font-display: var(--dc-word-font,'Inter',sans-serif);
  --font-mono: var(--dc-number-font,'Figtree',sans-serif);
  --font-body: var(--dc-word-font,'Inter',sans-serif);
  --input-bg: #F0F4F8;
  --tag-bg: rgba(59, 130, 246, .08);
  --green: #1B8A4E;
  --red: #C62828;
  --gold: #1E6FC7;
  --cyan: #0277BD;
  --orange: #5D4037;
}

*{margin:0;padding:0;box-sizing:border-box;}
html,body{background:var(--bg);color:var(--text);min-height:100vh;transition:background .3s,color .3s;}
body{font-family:var(--font-body);font-variant-numeric:tabular-nums lining-nums;-webkit-font-feature-settings:'tnum' 1,'lnum' 1,'zero' 0;font-feature-settings:'tnum' 1,'lnum' 1,'zero' 0;}
::-webkit-scrollbar{width:5px;height:5px}
::-webkit-scrollbar-track{background:var(--bg)}
::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}

.master-hdr {
  background:var(--header-bg);
  border-bottom:2px solid #F5F8FC;
  padding:8px 20px;
  display:flex;align-items:center;justify-content:space-between;
  position:sticky;top:0;z-index:2000;
  backdrop-filter:blur(12px);
  gap:12px;flex-wrap:wrap;
}
.dragon-backup-actions{
  display:none;
  grid-template-columns:auto auto;align-items:center;gap:3px 5px;
}
.dragon-backup-actions button{
  min-height:27px;border:1px solid var(--dc-line);border-radius:6px;
  background:var(--dc-panel);color:var(--dc-muted);padding:0 8px;
  font:700 12px/1 var(--font-mono);letter-spacing:.06em;cursor:pointer;
}
.dragon-backup-actions button:hover,.dragon-backup-actions button:focus-visible{
  border-color:var(--dc-violet);color:var(--dc-text);outline:none;
}
.dragon-backup-status{
  grid-column:1/-1;text-align:right;color:var(--dc-faint);
  font:700 12px/1.15 var(--font-mono);letter-spacing:.05em;
}
.dragon-backup-status.is-good{color:var(--dc-green)}
.dragon-backup-status.is-bad{color:var(--dc-red)}
.dragon-backup-status.is-due{color:var(--dc-amber)}
.master-actions{
  display:flex;align-items:center;gap:8px;min-width:max-content;
}

/* Reading size belongs to the work, never to the navigation or market tape. */
.reading-size{
  display:inline-flex;align-items:center;height:27px;overflow:hidden;
  border:1px solid rgba(245,248,252,.20);border-radius:6px;background:#0B0E11;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
}
.reading-size button{
  appearance:none;-webkit-appearance:none;height:100%;min-width:27px;padding:0 8px;
  border:0;border-right:1px solid rgba(245,248,252,.12);background:transparent;
  color:#AAB6C3;font:700 12px/1 var(--font-mono);cursor:pointer;
}
.reading-size button:last-child{border-right:0}
.reading-size button:hover{background:rgba(82,155,255,.10);color:#F4F7FB}
.reading-size button:disabled{color:#4E5965;cursor:default;background:transparent}
.reading-size .reading-value{min-width:43px;font-size:12px;letter-spacing:.03em;color:#F4F7FB}
body.clean .reading-size{background:#F8FAFC;border-color:#B0BEC5}
body.clean .reading-size button{color:#475569;border-right-color:#CBD5E1}
body.clean .reading-size .reading-value{color:#1E2D3D}

/* Native rooms scale inside the shell. Iframe rooms receive the same value in
   their own document so the left rail and header never grow. */
body>.msec>:not(iframe):not(script):not(style):not(link):not(:has(iframe)){
  zoom:var(--dc-reading-scale,1);
}
body[data-reading-size]:not([data-reading-size="100"])>.msec.on{overflow-x:auto}

/* Permanent holdings pulse: gross portfolio value and today's move remain
   visible on every AIP page. Brokerage equity and financing stay in IBKR or
   a deliberately opened State Room reading. */
.portfolio-pulse{
  order:4;flex:1 0 100%;min-width:0;
  display:grid;grid-template-columns:minmax(230px,1fr) 1px minmax(230px,1fr) auto;
  align-items:stretch;
  border:1px solid rgba(82,155,255,.26);border-radius:10px;overflow:hidden;
  background:linear-gradient(90deg,rgba(82,155,255,.10),rgba(38,194,129,.075));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
  font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  font-variant-numeric:tabular-nums;
  font-feature-settings:'tnum' 1,'zero' 0;
}
.pp-metric{padding:8px 14px 9px;display:flex;align-items:baseline;gap:10px;min-width:0;}
.pp-label{font-size:12px;font-weight:750;letter-spacing:1.15px;text-transform:uppercase;color:rgba(245,248,252,.58);white-space:nowrap;}
.pp-value{font-size:clamp(18px,1.35vw,23px);line-height:1;font-weight:800;letter-spacing:-.02em;color:#F5F8FC;white-space:nowrap;cursor:pointer;}
.pp-value.positive{color:#39D98A}.pp-value.negative{color:#FF667D}
.pp-sub{font-size:12px;font-weight:600;color:rgba(245,248,252,.62);white-space:nowrap;}
.pp-live{display:inline-block;margin-left:6px;padding:2px 5px;border:1px solid rgba(245,248,252,.18);border-radius:4px;color:rgba(245,248,252,.55);font-size:12px;line-height:1;letter-spacing:.8px;vertical-align:1px;}
.pp-live.live{border-color:rgba(38,194,129,.38);color:#53E3A5;background:rgba(38,194,129,.08);}
.pp-live.mixed{border-color:rgba(255,177,92,.35);color:#FFB15C;background:rgba(255,177,92,.07);}
.pp-sep{width:1px;background:rgba(245,248,252,.13);margin:8px 0;}
.pp-edit{align-self:center;margin:0 10px 0 6px;padding:6px 10px;border:1px solid rgba(245,248,252,.22);border-radius:7px;background:rgba(7,10,15,.22);color:rgba(245,248,252,.7);font:700 12px/1 var(--font-body);letter-spacing:1px;cursor:pointer;}
.pp-edit:hover{border-color:#529BFF;color:#F5F8FC;}
.pp-editor{display:none;grid-column:1/-1;grid-template-columns:repeat(2,minmax(150px,240px)) auto auto;gap:8px;align-items:end;padding:10px 12px;border-top:1px solid rgba(245,248,252,.12);background:rgba(5,8,12,.76);}
.portfolio-pulse.editing .pp-editor{display:grid;}
.pp-field{display:grid;gap:4px;color:rgba(245,248,252,.58);font:700 12px/1.2 var(--font-body);letter-spacing:.8px;text-transform:uppercase;}
.pp-field input{width:100%;padding:8px 10px;border:1px solid rgba(245,248,252,.2);border-radius:6px;background:#0C1118;color:#F5F8FC;font:700 15px/1 var(--font-body);font-variant-numeric:tabular-nums;outline:none;}
.pp-field input:focus{border-color:#529BFF;}
.pp-save,.pp-cancel{padding:9px 12px;border-radius:6px;font:750 12px/1 var(--font-body);letter-spacing:1px;cursor:pointer;}
.pp-save{border:1px solid #26C281;background:rgba(38,194,129,.14);color:#53E3A5;}.pp-cancel{border:1px solid rgba(245,248,252,.2);background:transparent;color:rgba(245,248,252,.65);}

.m-logo {
  font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  font-size:clamp(21px,1.55vw,24px);font-weight:900;color:#F5F8FC;letter-spacing:-.055em;cursor:pointer;
  min-width:0;display:flex;align-items:baseline;gap:2px;white-space:nowrap;line-height:.98;
}
body.clean .m-logo { font-weight:900;letter-spacing:-.055em; }
.m-logo span{color:#529BFF;}
.m-logo small{margin-left:10px;font-family:var(--font-mono);font-size:12px;font-weight:500;color:rgba(255,255,255,.4);letter-spacing:1.5px;}

.m-hud{
  flex:1;min-width:0;max-width:780px;
  display:grid;grid-template-columns:repeat(6,minmax(74px,1fr)) minmax(126px,1.45fr);gap:5px;
}
.m-hi{
  min-width:0;min-height:35px;padding:4px 7px;
  display:flex;flex-direction:column;align-items:flex-start;justify-content:center;
  border:1px solid rgba(255,255,255,.08);border-radius:6px;
  background:rgba(12,17,24,.72);overflow:hidden;
  transition:background .18s ease,border-color .18s ease;
}
.m-hi.market-cell.is-good{
  border-color:rgba(38,194,129,.40);
  background:linear-gradient(180deg,rgba(19,96,67,.35),rgba(11,25,23,.72));
}
.m-hi.market-cell.is-bad{
  border-color:rgba(255,77,106,.40);
  background:linear-gradient(180deg,rgba(96,19,38,.35),rgba(25,11,16,.72));
}
.m-hl{font-family:var(--font-mono);font-size:12px;line-height:1;color:rgba(255,255,255,.46);letter-spacing:.75px;text-transform:uppercase;white-space:nowrap;}
.m-reading{width:100%;margin-top:4px;display:flex;align-items:baseline;justify-content:space-between;gap:5px;white-space:nowrap;}
.m-hv{font-family:var(--font-mono);font-size:12px;line-height:1;font-weight:800;color:#F5F8FC;white-space:nowrap;}
.m-hc{font-family:var(--font-mono);font-size:12px;line-height:1;font-weight:800;color:rgba(245,248,252,.62);white-space:nowrap;}
.market-cell.is-good .m-hc{color:#53E3A5;}
.market-cell.is-bad .m-hc{color:#FF667D;}

/* Local market-tile trial: solid terminal face with a bright pressure band.
   Color keeps DragonClaw's existing meaning (green = pressure easing), while
   the arrow reports the instrument's actual direction. Only the six market
   cells are touched; NEXT ER and every content card retain their current UI. */
body.dragon .m-hi.market-cell{
  min-height:54px;padding:0;justify-content:flex-start;
  border-color:rgba(255,255,255,.11);border-radius:3px;
  background:#20252C;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 4px 12px rgba(0,0,0,.16);
}
body.dragon .m-hi.market-cell.is-good,
body.dragon .m-hi.market-cell.is-bad{background:#20252C;}
body.dragon .m-hi.market-cell .m-hl{
  width:100%;padding:5px 7px 2px;
  color:#F5F8FC;font-size:12px;font-weight:900;letter-spacing:.15px;
}
body.dragon .m-hi.market-cell .m-reading{
  margin:0;display:grid;grid-template-columns:1fr;gap:0;align-items:stretch;
}
body.dragon .m-hi.market-cell .m-hv{
  min-height:17px;padding:1px 7px 5px;
  font-size:12px;line-height:1;color:rgba(245,248,252,.82);
}
body.dragon .m-hi.market-cell .m-hc{
  position:relative;width:100%;min-height:20px;padding:4px 7px 4px 20px;
  display:flex;align-items:center;justify-content:flex-end;
  font-size:12px;line-height:1;color:#07100C;text-align:right;
}
body.dragon .m-hi.market-cell.is-good .m-hc{background:#32D68A;color:#06150E;}
body.dragon .m-hi.market-cell.is-bad .m-hc{background:#FF536B;color:#1C080C;}
body.dragon .m-hi.market-cell .m-hc::before{
  position:absolute;left:7px;top:50%;transform:translateY(-52%);
  font-size:12px;line-height:1;font-weight:900;color:currentColor;
}
body.dragon .m-hi.market-cell.is-up .m-hc::before{content:'▲';}
body.dragon .m-hi.market-cell.is-down .m-hc::before{content:'▼';}
body.dragon .m-hi.market-cell.is-flat .m-hc::before{content:'•';}
body.dragon .m-hi.market-cell .m-tape-date{margin-left:4px;font-size:12px;font-weight:600;color:#B8C0CC;letter-spacing:0;}
body.dragon .m-hi.market-cell.is-flat .m-hc{color:#B8C0CC;}
.m-hi.next-er{padding-inline:9px;}
.m-hi.next-er .m-hv{margin-top:4px;color:#53E3A5;text-shadow:0 0 10px rgba(38,194,129,.24);overflow:hidden;text-overflow:ellipsis;max-width:100%;}
.cn{color:#529BFF;} .cw{color:var(--orange);} .cs{color:#26C281;} .cd{color:#FF4D6A;} .cg{color:#F5F8FC;}

.theme-toggle {
  display:flex;gap:0;border:1px solid rgba(255,255,255,.2);overflow:hidden;border-radius:9px;
}
.tt-btn {
  font-family:var(--font-mono);font-size:12px;letter-spacing:1px;
  padding:4px 10px;border:none;cursor:pointer;transition:all .2s;
  background:transparent;color:rgba(255,255,255,.5);position:relative;
}
.tt-btn.active{
  background:#1A2635;
  color:#D8E9FF;
  box-shadow:none;
  z-index:1;
}

@media (min-width:601px) and (max-width:1360px){
  .m-logo{max-width:340px;overflow:hidden;flex:0 1 340px;}
  .m-logo small{min-width:0;overflow:hidden;text-overflow:ellipsis;}
  .m-hud{max-width:none;grid-template-columns:repeat(6,minmax(68px,1fr)) minmax(116px,1.45fr);}
  .m-hi{padding-inline:5px;}
  .m-hl{font-size:12px;letter-spacing:.55px;}
  .m-hv{font-size:12px;}
  .m-hc{font-size:12px;}
}

/* The utility controls must yield as a unit instead of squeezing through the
   market cells. Compact the logo first; on narrower desktops give the controls
   their own clean row. */
@media (min-width:601px) and (max-width:1800px){
  .m-logo{flex:0 0 auto;max-width:none;}
  .m-logo small{display:none;}
  .m-hud{flex:0 1 780px;max-width:780px;min-width:560px;}
  .dragon-backup-status{display:none;}
}
@media (min-width:601px) and (max-width:1180px){
  .m-hud{order:2;flex:0 1 780px;width:min(780px,100%);max-width:780px;min-width:0;}
  .master-actions{order:1;margin-left:auto;}
}

/* Shoulder-surfing privacy: Dragon Fire switches only the rendered book.
   Saved roster/account data is never rewritten by this mode. */
.privacy-toggle{
  appearance:none;-webkit-appearance:none;display:inline-flex;align-items:center;gap:6px;
  min-height:29px;padding:4px 9px;border:1px solid rgba(255,77,106,.52);border-radius:9px;
  background:rgba(38,8,14,.66);color:#ff8fa3;cursor:pointer;
  font:750 12px/1 var(--font-mono);letter-spacing:.1em;transition:border-color .16s ease,background .16s ease,color .16s ease,box-shadow .16s ease;
}
.privacy-toggle:hover{border-color:#ff4d6a;color:#fff;background:rgba(92,11,27,.72)}
.privacy-toggle.active{border-color:#ff4d6a;background:#b51635;color:#fff;box-shadow:0 0 0 1px rgba(255,77,106,.16),0 0 18px rgba(181,22,53,.22)}
.privacy-state{display:none;padding:4px 7px;border:1px solid rgba(255,77,106,.34);border-radius:6px;background:rgba(82,8,21,.55);color:#ff9bad;font:750 12px/1 var(--font-mono);letter-spacing:.1em;white-space:nowrap}
body.privacy-mode .privacy-state{display:inline-flex}
body.privacy-mode .portfolio-pulse{border-color:rgba(255,77,106,.48);background:linear-gradient(90deg,rgba(119,12,32,.16),rgba(82,155,255,.065))}
body.privacy-mode .pp-live{border-color:rgba(255,77,106,.42);color:#ff9bad;background:rgba(119,12,32,.14)}
body.privacy-mode .nav-edit,
body.privacy-mode .nav-margin,
body.privacy-mode .mnav[onclick*="'roster'"],
body.privacy-mode .mnav[onclick*="'stateroom'"],
body.privacy-mode .mnav[onclick*="'marginmaker'"],
body.privacy-mode .mnav[onclick*="'marginledger'"],
body.privacy-mode .mnav[onclick*="'roadmap'"],
body.privacy-mode .mnav[onclick*="'bracket'"],
body.privacy-mode #rosterEditBtn,
body.privacy-mode [data-position-copy-button],
body.privacy-mode .pp-edit,
body.privacy-mode .pp-editor{display:none!important}

.master-nav {
  display:flex;flex-wrap:wrap;background:var(--nav-bg);
  border-bottom:1px solid var(--border);
  position:sticky;top:var(--master-header-h);z-index:1999;
  box-shadow:0 2px 8px rgba(0,0,0,.1);
}
/* ── LEFT RAIL: workstation navigation, including the Codex side panel ── */
@media(min-width:640px){
  body{
    display:grid;
    grid-template-columns:var(--rail-width) minmax(0,1fr);
    column-gap:var(--content-gutter);
  }
  body>*{grid-column:2;}
  .master-hdr{grid-column:1 / -1;}
  body>.msec{margin-right:var(--outer-gutter);}
  /* The Screener owns its internal breathing room; reclaim the shell's duplicate gutter. */
  body>#sec-screener{margin-left:calc(-1 * var(--content-gutter));}
  /* Portfolio Builder already owns its internal edge padding. Let it use the
     full shell pane instead of stacking a second right gutter. */
  body>#sec-builder{margin-right:0;}
  body>#sec-desk{margin-right:0;}
  body>#sec-stateroom{margin-right:0;}
  .master-nav{
    --nav-steel:#8fc0ff;
    --nav-steel-soft:rgba(143,192,255,.12);
    --nav-text:#e8eef6;
    --nav-text-active:#ffffff;
    --nav-label:#9ec6ff;
    grid-column:1;grid-row:2 / 200;
    flex-direction:column;flex-wrap:nowrap;align-content:start;
    position:sticky;top:var(--master-header-h);height:calc(100vh - var(--master-header-h));
    overflow-y:auto;border-bottom:none;border-right:1px solid var(--border);
    padding:16px 10px 10px;
  }
  .master-nav .mnav{
    display:flex;align-items:center;gap:9px;text-align:left;
    width:100%;margin:0;border:0;border-radius:6px;padding:7px 10px;
    color:var(--nav-text);font-family:'Inter',sans-serif;font-size:12.5px;font-weight:600;
    letter-spacing:0;line-height:1.25;
  }
  .master-nav .mnav.on{
    color:var(--nav-text-active);background:var(--nav-steel-soft);
    box-shadow:inset 2px 0 0 var(--nav-steel);
  }
  .master-nav .mnav:hover{color:var(--nav-text-active);background:#111a24;}
  .nav-primary,.nav-group,.nav-more,.nav-more-items{display:block;width:100%;}
  .nav-primary{padding:0 4px 6px;}
  .master-nav .nav-edit{
    display:block;width:100%;margin:0;text-align:center;
    border:1px solid var(--nav-steel);color:var(--nav-steel);background:var(--nav-steel-soft);
    border-radius:6px;padding:8px 0;font:800 12px/1.2 'Inter',sans-serif;
    letter-spacing:.14em;
  }
  .master-nav .nav-edit:hover{color:#dcecff;background:rgba(143,192,255,.22);}
  .master-nav .nav-portfolio{font-weight:600;}
  .nav-label{
    padding:14px 10px 5px;color:var(--nav-label);font:800 12px/1 'Inter',sans-serif;
    letter-spacing:.24em;pointer-events:none;
  }
  .nav-more{border:0;}
  .nav-more summary{
    display:flex;align-items:center;gap:8px;list-style:none;
    padding:14px 10px 5px;color:var(--nav-label);cursor:pointer;
    font:800 12px/1 'Inter',sans-serif;letter-spacing:.24em;
  }
  .nav-more summary::-webkit-details-marker{display:none;}
  .nav-more summary::after{content:'▸';font-size:12px;transition:transform .15s;}
  .nav-more[open] summary::after{transform:rotate(90deg);}
  .nav-more summary:hover{color:#d8e8ff;}
  .nav-more-items{border:0;}
  .nav-more-items .mnav{opacity:1;}
  .nav-spacer{flex:1;min-height:8px;}
  .nav-margin{margin-top:10px;border-top:1px solid var(--border);padding-top:2px;}
}
/* ── PHONE NAV: one calm, scrollable row — never a button wall ── */
@media(max-width:639px){
  .master-nav{
    flex-wrap:nowrap;
    overflow-x:auto;
    overflow-y:hidden;
    -webkit-overflow-scrolling:touch;
  }
  .mnav{
    flex:0 0 auto;
    min-width:auto;
    padding:11px 14px;
    font-size:12px;
  }
  .master-nav>.nav-primary,.master-nav>.nav-group,.master-nav>.nav-margin{display:flex;flex:0 0 auto;}
  .master-nav .nav-label{display:none;}
  .master-nav .nav-spacer{display:none;}
  .master-nav .nav-more{flex:0 0 auto;}
  .master-nav .nav-more summary{padding:11px 14px;white-space:nowrap;}
  .master-nav .nav-more summary span{display:none;}
  .master-nav .nav-more-items{position:absolute;left:0;right:0;top:100%;z-index:20;background:var(--nav-bg);border-bottom:1px solid var(--border);}
}
.mnav {
  font-family:var(--font-mono);font-size:12px;letter-spacing:1px;
  padding:12px 18px;color:#e3e4e4;cursor:pointer;
  border:none;border-bottom:3px solid transparent;
  border-right:1px solid var(--border);
  background:transparent;transition:all .2s;white-space:nowrap;
}
body.clean .mnav { font-family:'Inter',sans-serif;font-weight:500;letter-spacing:0;font-size:13px; }
.mnav:hover{color:var(--text);background:var(--table-hover);}
.mnav.on{color:#F5F8FC;border-bottom-color:#d5d7da;background:rgba(245,248,252,.04);}
body.clean .mnav.on{color:#1E40AF;border-bottom-color:#1E40AF;background:rgba(30,64,175,.04);}

.msec{display:none;min-height:calc(100vh - 120px);}
.msec.on{display:block;}

.sec-inner{
  padding:20px;
  padding-left:var(--section-left-pad);
  max-width:none;
  margin:0 auto;
}
@media(max-width:639px){
  .sec-inner{padding-left:20px;}
}

.panel {
  background:var(--card);
  border:1px solid var(--border);
  border-radius:8px;padding:16px;
  transition:border-color .2s;
}
body.dragon .panel{border-radius:2px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);}
body.dragon .sc{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);}
body.dragon .cs-slot{backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);}
.panel:hover{border-color:var(--border2);}

.panel-title {
  font-family:var(--font-display);font-size:14px;
  letter-spacing:2px;color:#F5F8FC;
  margin-bottom:12px;padding-bottom:8px;
  border-bottom:1px solid rgba(245,248,252,.15);
}
body.clean .panel-title { font-size:12px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:#374151; }

.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px;}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;}
@media(max-width:900px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr;}}

.stat-card {
  background:var(--card2);border:1px solid var(--border);
  padding:14px 16px;border-radius:6px;
}
body.dragon .stat-card{border-radius:2px;}
.stat-label{font-family:var(--font-mono);font-size:12px;color:var(--dim);letter-spacing:2px;margin-bottom:6px;text-transform:uppercase;}
body.clean .stat-label{font-size:12px;font-weight:500;color:#6B7280;letter-spacing:.02em;}
.stat-value{font-family:var(--font-display);font-size:22px;color:var(--text);line-height:1;}
body.clean .stat-value{font-size:20px;font-weight:700;}
.stat-sub{font-family:var(--font-mono);font-size:12px;color:var(--dim);margin-top:4px;}

.port-wrap{overflow-x:auto;}
.port-table{width:100%;border-collapse:collapse;font-size:13px;}
.port-table th{
  padding:8px 10px;text-align:left;
  font-family:var(--font-mono);font-size:12px;
  color:var(--dim);letter-spacing:1px;
  border-bottom:1px solid var(--border);
  background:var(--bg3);white-space:nowrap;
}
body.clean .port-table th{font-family:'Inter',sans-serif;font-size:12px;font-weight:500;color:#6B7280;letter-spacing:0;}
.port-table td{padding:9px 10px;border-bottom:1px solid rgba(26,48,64,.4);vertical-align:middle;}
/* ══ IBKR-style number columns: right-aligned, bigger, tabular ══ */
.port-table{font-size:15px;}
.port-table th,.port-table td{text-align:right;font-variant-numeric:tabular-nums;}
.port-table th:nth-child(1),.port-table td:nth-child(1),
.port-table th:nth-child(2),.port-table td:nth-child(2),
.port-table th:nth-child(8),.port-table td:nth-child(8),
.port-table th:nth-child(12),.port-table td:nth-child(12),
.port-table th:nth-child(13),.port-table td:nth-child(13){text-align:left;}
.port-table td{padding:11px 14px;}
.tk{font-size:17px !important;}
body.clean .tk{font-size:16px !important;}

body.clean .port-table td{border-bottom-color:#F1F5F9;}
.port-table tr:hover td{background:var(--table-hover);}
.port-table tr.nvda-row td{background:rgba(245,248,252,.04);}

.tk{font-family:var(--font-display);font-size:15px;color:var(--text);letter-spacing:1px;}
body.clean .tk{font-size:13px;font-weight:700;letter-spacing:0;}
.tk.gold{color:#F5F8FC;}
.tk.dim{color:var(--dim);}

.pct-bar-row{display:flex;align-items:center;gap:6px;}
.pct-bar{height:4px;border-radius:2px;min-width:2px;}
body.dragon .pct-bar{border-radius:0;}

.badge{
  display:inline-block;font-family:var(--font-mono);
  font-size:12px;padding:2px 7px;letter-spacing:1px;border:1px solid;
}
body.clean .badge{border-radius:20px;font-size:12px;font-family:'Inter',sans-serif;letter-spacing:0;}
.badge-gold{color:#F5F8FC;border-color:#F5F8FC;background:rgba(245,248,252,.08);}
.badge-green{color:#26C281;border-color:#26C281;background:rgba(38,194,129,.06);}
.badge-cyan{color:#529BFF;border-color:#529BFF;background:rgba(82, 155, 255,.06);}
.badge-orange{color:var(--orange);border-color:var(--orange);background:rgba(255,140,0,.06);}
.badge-dim{color:var(--dim);border-color:var(--dim);background:transparent;}
.badge-red{color:#FF4D6A;border-color:#FF4D6A;background:rgba(255,77,106,.06);}

.pos{color:#26C281;} .neg{color:#FF4D6A;} .neu{color:var(--orange);}

.drift-bar-wrap{margin-top:4px;display:flex;align-items:center;gap:4px;}
.drift-track{flex:1;height:3px;background:rgba(255,255,255,.08);position:relative;overflow:visible;}
.drift-fill{height:100%;transition:width .4s ease;}
.drift-target-line{position:absolute;top:-3px;width:2px;height:9px;background:rgba(255,255,255,.4);}
.drift-label{font-family:var(--font-mono);font-size:12px;white-space:nowrap;}
.drift-in{background:#26C281;}
.drift-high{background:var(--orange);}
.drift-over{background:#FF4D6A;}
.drift-low{background:#529BFF;}
.live-price{font-family:var(--font-mono);font-size:12px;padding:1px 5px;border:1px solid rgba(82, 155, 255,.3);color:#529BFF;background:rgba(82, 155, 255,.06);display:inline-block;margin-left:4px;}
.sc-drift{position:absolute;bottom:0;left:0;right:0;height:3px;}
.sc-drift.in{background:rgba(38,194,129,.5);}
.sc-drift.high{background:rgba(255,140,0,.6);}
.sc-drift.over{background:rgba(255,77,106,.7);animation:rp 1.5s infinite;}
.sc-drift.low{background:rgba(82, 155, 255,.4);}
.sc-drift.watch{background:transparent;}
.refresh-prices-btn{font-family:var(--font-mono);font-size:12px;letter-spacing:1px;padding:4px 12px;border:1px solid #529BFF;color:#529BFF;background:rgba(82, 155, 255,.06);cursor:pointer;transition:all .2s;}
.refresh-prices-btn:hover{background:rgba(82, 155, 255,.15);}
.refresh-prices-btn:disabled{opacity:.4;cursor:not-allowed;}

.nvda-throne {
  background:linear-gradient(135deg,rgba(245,248,252,.1),rgba(245,248,252,.03));
  border:2px solid #F5F8FC;
  padding:20px;margin-bottom:20px;
  position:relative;overflow:hidden;
  animation:throne-glow 4s ease-in-out infinite;
}
body.dragon .nvda-throne{border-radius:2px;}
body.clean .nvda-throne{border-radius:12px;}
@keyframes throne-glow{
  0%,100%{box-shadow:0 0 20px rgba(245,248,252,.08);}
  50%{box-shadow:0 0 40px rgba(245,248,252,.2);}
}
.nvda-throne::after{
  content:'';display:none;
}
.throne-label{font-family:var(--font-mono);font-size:12px;color:#F5F8FC;letter-spacing:3px;margin-bottom:8px;}
.throne-main{display:flex;align-items:center;gap:24px;flex-wrap:wrap;}
.throne-ticker{font-family:var(--font-display);font-size:42px;color:#F5F8FC;letter-spacing:4px;line-height:1;}
.throne-stats{display:flex;flex-direction:column;gap:3px;}
.blood-oath-tag{
  display:inline-block;font-family:var(--font-mono);font-size:12px;
  color:#ff8899;background:rgba(139,0,0,.3);border:1px solid #ff3344;
  padding:3px 10px;letter-spacing:2px;margin-top:8px;
  animation:rp 2s infinite;
}

.bracket-container{padding:12px 16px;overflow-x:auto;}
.bracket-grid{
  display:grid;
  grid-template-columns:1fr 90px 70px 140px 70px 90px 1fr;
  min-width:900px;width:100%;max-width:none;
  margin:0 auto;gap:0;align-items:stretch;min-height:660px;
}
.scol{display:flex;flex-direction:column;justify-content:space-between;padding:0 3px;}
.region-top{display:flex;flex-direction:column;gap:3px;}
.region-bot{display:flex;flex-direction:column;gap:3px;margin-top:auto;}
.region-gap{flex:1;}

.rlbl{
  font-family:var(--font-mono);font-size:12px;letter-spacing:2px;
  text-align:center;padding:3px;border:1px solid;margin-bottom:4px;
}
body.clean .rlbl{font-family:'Inter',sans-serif;font-size:12px;font-weight:600;letter-spacing:0;border-radius:4px;}
.rl-silicon{color:#529BFF;border-color:rgba(82, 155, 255,.3);}
.rl-grid{color:#F5F8FC;border-color:rgba(245,248,252,.3);}
.rl-nervous{color:#26C281;border-color:rgba(38,194,129,.3);}
.rl-frontier{color:var(--orange);border-color:rgba(221, 127, 13, 0.42);}

.sc {
  background:var(--card2);border:1px solid var(--border);
  padding:6px 8px;margin:2px 0;cursor:pointer;
  transition:all .2s;position:relative;min-height:60px;
  display:flex;flex-direction:column;justify-content:center;
}
body.dragon .sc{border-radius:0;}
body.clean .sc{border-radius:6px;}
.sc:hover{border-color:rgba(83, 104, 238, 0.87);background:rgba(82, 155, 255,.04);transform:translateX(2px);}
.sc.sel{border-color: rgba(245, 248, 252, 0.67)!important;;background:rgba(245,248,252,.07)!important;box-shadow:0 0 12px rgba(245,248,252,.2);}
.sc.hold{border-left:3px solid #529BFF;}
.sc.trim{border-left:3px solid var(--orange);}
.sc.watch{border-left:3px solid var(--dim);opacity:.6;}
.sc.throne-stock{border:2px solid #F5F8FC;}

.stk{font-family:var(--font-display);font-size:14px;color:white;letter-spacing:1px;line-height:1.1;}
body.clean .stk{font-family:'Inter',sans-serif;font-size:12px;font-weight:700;letter-spacing:0;color:#1E2D3D;}
.sc.throne-stock .stk{color:#F5F8FC;}
.sc.watch .stk{color:#529BFF;font-size:12px;}
.sinf{font-family:var(--font-mono);font-size:12px;color:var(--dim);margin-top:1px;}
.spct{font-family:var(--font-mono);font-size:12px;margin-top:2px;}
.ssig{position:absolute;top:3px;right:4px;font-family:var(--font-mono);font-size:12px;}
.sh{color:#19c222;} .st{color:var(--orange);} .sw{color:var(--dim);} .sth{color:#F5F8FC;}

.ccol,.fcol{display:flex;flex-direction:column;justify-content:space-around;gap:4px;padding:0 2px;}

/* ═══════════════════════════════════════════════════════════════════════
   👇👇👇   GLASS — THE LIT-SLOT GLOW   ·   CHANGE OPACITY RIGHT HERE   👇👇👇
   ─────────────────────────────────────────────────────────────────────
   This is the "before + lit" glass you like. Color = your purple --cyan-rgb.
   EVERY number marked  👈  is an OPACITY:  0 = invisible , 1 = solid.
   Leave the color. Spin the 0.xx. That's the whole game.
   ═══════════════════════════════════════════════════════════════════════ */
.cs-slot{
  background:rgba(255,255,255, 0.01);        /* 👈 resting fill */
  border:1px solid rgba(255,255,255, 0.03);  /* 👈 resting line */
  flex:1 1 auto;min-height:54px;height:auto;margin:2px 0;min-width:0;
  display:flex;flex-direction:column;justify-content:center;
  padding:9px 10px;transition:background .35s,border-color .35s,box-shadow .35s;position:relative;overflow:hidden;
}
/* ── responsive + Firefox flex safety (added Jul 10) ── */
.ccol,.fcol,.scol,.center-col{min-width:0;min-height:0;}
.bracket-grid>*{min-width:0;}
.region-top,.region-bot{min-width:0;}
body.clean .cs-slot{border-color:#B4C0CE;background:#F8FAFC;border-radius:4px;}

/* the sliding fill, before it lights */
.cs-slot::before{
  content:'';position:absolute;left:0;top:0;bottom:0;width:0;
  background:rgba(82, 155, 255, 0.10);    /* 👈 pre-glow */
  transition:width .4s;
}

/* LIT slot — the purple LINE + the layered glow */
.cs-slot.lit{
border-color: rgba(51, 32, 183, 0.5);                   /* 👈 the purple LINE (swap color here) */
  background-color: rgba(189, 83, 236, 0.01);         /* 👈 lit fill   */

  box-shadow:
    inset 0 1px 0 rgba(255,255,255, 0.25),        /* 👈 top sheen  */
    inset 0 0 14px rgba(82, 155, 255, 0.10),   /* 👈 inner glow */
    0 0 12px rgba(82, 155, 255, 0.25);         /* 👈 outer glow */
}

/* LIT glass gradient — bright at top, fades down */
.cs-slot.lit::before{
  width:100%;
  background:linear-gradient(180deg,
    rgba(82, 155, 255, 0.22) 0%,    /* 👈 top    */
    rgba(82, 155, 255, 0.08) 50%,   /* 👈 middle */
    rgba(82, 155, 255, 0.03) 100%); /* 👈 bottom */
}
.cs-lbl{font-family:var(--font-mono);font-size:12px;color:rgba(255,255,255,.07);letter-spacing:1px;line-height:1.3;transition:color .3s;}
.cs-slot.lit .cs-lbl{color:var(--dim);}
.cs-val{font-family:var(--font-display);font-size:clamp(12px,0.95vw,15px);color:transparent;letter-spacing:1px;transition:color .3s;margin-top:2px;display:block;line-height:1.15;overflow-wrap:anywhere;}
.cs-slot.lit .cs-val{color:#F5F8FC;}
.cs-sub{font-family:var(--font-mono);font-size:clamp(10px,0.8vw,11px);color:transparent;transition:color .3s;margin-top:1px;display:block;line-height:1.3;overflow-wrap:anywhere;}
.cs-slot.lit .cs-sub{color:#529BFF;}

.center-col{display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:2px 4px;}
.throne-card{
  background:linear-gradient(135deg,#120E00,#080500);
  border:2px solid #F5F8FC;padding:14px 10px;text-align:center;
  cursor:pointer;width:100%;
  animation:tcglow 3s ease-in-out infinite;transition:transform .2s;
}
body.clean .throne-card{
  background:linear-gradient(135deg,#FFF7E6,#FFFBF0);
  border:2px solid #F5F8FC;border-radius:8px;
}
.throne-card:hover{transform:scale(1.02);}
@keyframes tcglow{0%,100%{box-shadow:0 0 15px rgba(245,248,252,.1);}50%{box-shadow:0 0 28px rgba(245,248,252,.35);}}
.tc-ticker{font-family:var(--font-display);font-size:22px;color:#F5F8FC;letter-spacing:3px;line-height:1;}
.tc-name{font-family:var(--font-mono);font-size:12px;color:rgba(245,248,252,.5);letter-spacing:2px;margin-top:1px;}
.tc-val{font-family:var(--font-mono);font-size:12px;color:#529BFF;margin-top:4px;}
.tc-sig{font-family:var(--font-mono);font-size:12px;letter-spacing:2px;padding:2px 6px;border:1px solid;display:inline-block;margin-top:4px;}

.ff-slot{background:var(--card2);border:1px solid rgba(245,248,252,.15);padding:5px 8px;text-align:center;width:100%;margin:2px 0;transition:all .4s;}
.ff-slot.lit{border-color:#F5F8FC;background:rgba(245,248,252,.06);}
.ff-lbl{font-family:var(--font-mono);font-size:12px;color:var(--dim);}
.ff-val{font-family:var(--font-display);font-size:12px;color:rgba(245,248,252,.4);letter-spacing:1px;transition:color .3s;}
.ff-slot.lit .ff-val{color:#F5F8FC;}

.champ-slot{background:var(--card2);border:1px solid rgba(245,248,252,.2);padding:7px;text-align:center;width:100%;}
.champ-val{font-family:var(--font-mono);font-size:12px;color:#F5F8FC;letter-spacing:1px;}

.mode-toggle{display:flex;gap:4px;justify-content:center;padding:6px 0;}
.mbtn{font-family:var(--font-mono);font-size:12px;letter-spacing:1px;padding:3px 12px;border:1px solid;background:transparent;cursor:pointer;transition:all .2s;}
.mbtn-r.on{background: rgba(82, 155, 255, 0.35);
color: #ffffff;
border-color: #529BFF;}
.mbtn-r.off{color:var(--dim);border-color:var(--dim);}
.mbtn-s.on{background:#F5F8FC;color:var(--bg);border-color:#F5F8FC;}
.mbtn-s.off{color:var(--dim);border-color:var(--dim);}

/* ═══════════════════════════════════════════════════════
   WATCHLIST v7 — ATH SCANNER + CROSSOVER BADGES
═══════════════════════════════════════════════════════ */
.wl-section-hdr{
  display:flex;align-items:center;justify-content:space-between;
  padding:8px 12px 8px var(--row-line-gap);margin:16px 0 6px;
  border-left:3px solid;
  font-family:var(--font-display);font-size:13px;letter-spacing:3px;
}
body.clean .wl-section-hdr{font-family:'Inter',sans-serif;font-size:12px;font-weight:700;letter-spacing:.02em;}
.wl-t1{color:#F5F8FC;border-color:#F5F8FC;background:rgba(245,248,252,.04);}
.wl-t2{color:#529BFF;border-color:#529BFF;background:rgba(82, 155, 255,.04);}
.wl-t3{color:#26C281;border-color:#26C281;background:rgba(38,194,129,.04);}

/* v7 watchlist table — wider for ATH columns */
.wl-table{width:100%;min-width:1650px;border-collapse:collapse;font-size:12px;}
.wl-table th{
  padding:7px 8px;text-align:left;
  font-family:var(--font-mono);font-size:12px;
  color:var(--dim);letter-spacing:1px;
  border-bottom:1px solid var(--border);
  background:var(--bg3);white-space:nowrap;
}
body.clean .wl-table th{font-family:'Inter',sans-serif;font-size:12px;font-weight:500;color:#6B7280;letter-spacing:0;}
.wl-table td{padding:8px 8px;border-bottom:1px solid rgba(26,48,64,.3);vertical-align:middle;}
.wl-table th:first-child,
.wl-table td:first-child{padding-left:var(--row-line-gap);}
body.clean .wl-table td{border-bottom-color:#F1F5F9;}
.wl-table tr{transition:background .15s;}
.wl-table tr:hover td{background:var(--table-hover);}
.wl-table tr.in-zone td{
  background:rgba(38,194,129,.045);
  border-top:1px solid rgba(245,248,252,.18);
  border-bottom:1px solid rgba(245,248,252,.18);
}
.wl-table tr.in-zone td:first-child{border-left:1px solid rgba(245,248,252,.18);}
.wl-table tr.in-zone td:last-child{border-right:1px solid rgba(245,248,252,.18);}
.matrix-growth-cell{width:280px;min-width:280px;padding-top:4px!important;padding-bottom:4px!important;}
/* The Wantlist is a decision surface, not an alarm panel. */
.wl-table,.wl-table *,.wl-table *::before,.wl-table *::after{animation:none!important;}

.wl-tk{font-family:var(--font-display);font-size:14px;letter-spacing:1px;}
body.clean .wl-tk{font-family:'Inter',sans-serif;font-size:13px;font-weight:700;letter-spacing:0;}
.wl-owned{color:#F5F8FC;}
.wl-watch{color:#529BFF;}

/* Action badges */
.action-badge{
  font-family:var(--font-mono);font-size:12px;padding:2px 7px;
  border:1px solid;letter-spacing:1px;white-space:nowrap;display:inline-block;
}
body.clean .action-badge{border-radius:20px;font-family:'Inter',sans-serif;font-size:12px;font-weight:600;letter-spacing:0;}
.ab-deploy{color:#26C281;border-color:#26C281;background:rgba(38,194,129,.12);}
.ab-hold{color:#529BFF;border-color:#529BFF;background:rgba(82, 155, 255,.08);}
.ab-watch{color:var(--orange);border-color:var(--orange);background:rgba(255,140,0,.08);}
.ab-earnings{color:#F5F8FC;border-color:#F5F8FC;background:rgba(245,248,252,.08);}
.ab-extended{color:var(--dim);border-color:var(--dim);}

/* Confirm badges */
.conf-badge{
  font-family:var(--font-mono);font-size:12px;padding:1px 5px;
  display:inline-block;margin:1px;letter-spacing:0;
}
body.clean .conf-badge{border-radius:3px;font-family:'Inter',sans-serif;}
.cb-ibd{background:rgba(68,136,255,.2);color:#4488ff;border:1px solid rgba(68,136,255,.3);}
.cb-fs{background:rgba(0,200,100,.2);color:#00c864;border:1px solid rgba(0,200,100,.3);}
.cb-me{background:rgba(180,100,255,.2);color:#b464ff;border:1px solid rgba(180,100,255,.3);}
.cb-own{background:rgba(255,170,0,.2);color:#ffaa00;border:1px solid rgba(255,170,0,.3);}

/* ATH distance bar */
.ath-bar-wrap{display:flex;align-items:center;gap:6px;min-width:120px;}
.ath-bar-track{flex:1;height:3px;background:rgba(255,255,255,.06);border-radius:2px;min-width:60px;}
.ath-bar-fill{height:100%;border-radius:2px;}
.ath-pct{font-family:var(--font-mono);font-size:12px;font-weight:bold;min-width:44px;text-align:right;}
.ath-in-zone{color:#26C281;}
.ath-approaching{color:var(--orange);}
.ath-extended{color:#FF4D6A;}

/* Written target zones — the large Margin Maker rail, reused as a map only. */
.target-glow-cell{min-width:210px;}
.target-glow{min-width:190px;}
.target-glow-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px;
  font:700 12px var(--font-mono);letter-spacing:.04em;white-space:nowrap;}
.target-glow-zone{color:#DDE7F2;}
.target-glow-state{color:#7EAEF7;text-align:right;}
.target-glow-track{position:relative;height:16px;overflow:hidden;border:1px solid #2B3B4C;border-radius:5px;
  background:#0B0E11;box-shadow:inset 0 1px 3px rgba(0,0,0,.62),0 0 0 1px rgba(82,155,255,.035);}
.target-glow-track i{display:block;height:100%;min-width:0;border-radius:4px;
  background:linear-gradient(90deg,#376FCE,#529BFF);box-shadow:0 0 12px rgba(82,155,255,.68);}
.target-glow.in-zone .target-glow-state,.target-glow.under-zone .target-glow-state{color:#7EE2B1;}
.target-glow.in-zone .target-glow-track,.target-glow.under-zone .target-glow-track{border-color:rgba(38,194,129,.55);}
.target-glow.in-zone .target-glow-track i,.target-glow.under-zone .target-glow-track i{background:linear-gradient(90deg,#197A54,#26C281);box-shadow:0 0 13px rgba(38,194,129,.62);}
.target-glow-owed{color:#8995A1;font:12px var(--font-mono);letter-spacing:.05em;white-space:nowrap;}

/* Matrix is the broad scouting wishlist. Keep its complete written-zone map
   above the charts so the rails cannot disappear inside the dated tables. */
.matrix-zone-board{margin:8px 0 18px;padding:18px;border:0;border-radius:0;
  background:radial-gradient(circle at 12% -30%,rgba(168,85,247,.095),transparent 42%),#0B0E11;
  box-shadow:none;}
.matrix-zone-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:15px;}
.matrix-zone-kicker{font:700 12px var(--font-mono);letter-spacing:.16em;color:#B98AF7;text-transform:uppercase;}
.matrix-zone-title{margin-top:4px;font:900 27px/1 var(--font-display);letter-spacing:-.025em;color:#F5F8FC;}
.matrix-zone-copy{max-width:780px;margin-top:8px;color:#AAB6C3;font:12px/1.5 var(--font-mono);}
.matrix-zone-legend{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:10px;}
.matrix-zone-legend span{padding:5px 8px;border:1px solid #2A3541;border-radius:999px;background:#10151B;
  color:#B6C1CC;font:700 12px/1.2 var(--font-mono);letter-spacing:.035em;white-space:nowrap;}
.matrix-zone-legend b{margin-right:4px;}
.matrix-zone-legend .is-wait{border-color:rgba(82,155,255,.42)}
.matrix-zone-legend .is-wait b{color:#7EAEF7}
.matrix-zone-legend .is-review{border-color:rgba(38,194,129,.42)}
.matrix-zone-legend .is-review b{color:#7EE2B1}
.matrix-zone-legend .is-deeper{border-color:rgba(143,160,178,.34)}
.matrix-zone-legend .is-deeper b{color:#A8B3BF}
.matrix-zone-legend .is-anchor{border-color:rgba(203,161,247,.44)}
.matrix-zone-legend .is-anchor b{color:#CBA1F7}
.matrix-zone-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;}
.matrix-zone-count{color:#98A4B0;font:700 12px var(--font-mono);letter-spacing:.08em;white-space:nowrap;}
.matrix-zone-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px 12px;}
.matrix-zone-card{min-width:0;min-height:112px;padding:10px 12px 11px;border:1px solid #2B3642;border-radius:9px;background:#0B1016;
  box-shadow:none;}
.matrix-zone-card:hover{border-color:#52606F;background:#0E151D;box-shadow:0 8px 22px rgba(0,0,0,.22);}
.matrix-zone-card.zone-open{border-color:rgba(168,85,247,.72);background:linear-gradient(145deg,rgba(168,85,247,.18),#0B1016 58%);
  box-shadow:inset 0 0 22px rgba(168,85,247,.08),0 0 14px rgba(168,85,247,.12);}
.matrix-zone-card.watch-large-move{box-shadow:inset 3px 0 #c88cff,0 8px 22px rgba(0,0,0,.22);}
.matrix-zone-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:0;}
.matrix-zone-symbol{color:#F5F8FC;font:800 15px var(--font-display);letter-spacing:.03em;}
.matrix-zone-price{color:#AAB6C3;font:700 12px var(--font-mono);white-space:nowrap;}
.matrix-zone-card-tools{display:flex;align-items:center;justify-content:flex-end;gap:6px;min-width:0;}
.matrix-zone-card-tools button{appearance:none;border:1px solid #303A46;border-radius:5px;background:#10151B;color:#98A4B0;
  padding:3px 6px;cursor:pointer;font:700 12px var(--font-mono);letter-spacing:.05em;}
.matrix-zone-card-tools button:hover{border-color:#8B5CF6;color:#D9C5FF;}
.matrix-zone-card-tools button.remove:hover{border-color:rgba(255,77,106,.65);color:#FF8094;}
.matrix-zone-reading{margin-top:7px;color:#F5F8FC;font:800 16px/1 var(--font-display);font-variant-numeric:tabular-nums;}
.matrix-zone-reading small{margin-left:4px;color:#98A4B0;font-size:12px;font-weight:500;}
.matrix-zone-card.zone-open .matrix-zone-reading,.matrix-zone-card.zone-open .matrix-zone-sub b{color:#C58AFF;}
.matrix-zone-sub{margin-top:4px;color:#98A4B0;font:600 12px/1.35 var(--font-mono);font-variant-numeric:tabular-nums;}
.matrix-zone-sub span,.matrix-zone-sub b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.matrix-zone-sub b{color:#7EE2B1;font-weight:650;}
.matrix-zone-move{display:flex;align-items:center;gap:6px;margin-top:5px;color:#98A4B0;font:700 12px/1.2 var(--font-mono);font-variant-numeric:tabular-nums;}
.matrix-zone-move.up{color:#7EE2B1}.matrix-zone-move.down{color:#FF8094}
.matrix-zone-move b{border:1px solid currentColor;border-radius:4px;padding:2px 4px;font-size:12px;letter-spacing:.06em;}
.matrix-zone-move small{margin-left:auto;color:#718090;font:600 12px/1 var(--font-mono);white-space:nowrap;}
.matrix-zone-facts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;margin-top:8px;padding-top:8px;border-top:1px solid var(--dc-line);}
.matrix-zone-fact{min-width:0;color:var(--dc-muted);font-family:var(--dc-number-font);font-size:12px;font-weight:600;font-variant-numeric:tabular-nums;}
.matrix-zone-fact small{display:block;margin-bottom:3px;color:var(--dc-faint);font-family:var(--dc-word-font);font-size:12px;font-weight:700;letter-spacing:.065em;text-transform:uppercase;}
.matrix-zone-fact b{display:block;overflow:hidden;color:var(--dc-text);font:600 12px/1.2 var(--dc-number-font);text-overflow:ellipsis;white-space:nowrap;}
.matrix-zone-fact b.is-muted{color:var(--dc-muted);}
.matrix-zone-priced-in{appearance:none;width:100%;padding:0;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer;}
.matrix-zone-priced-in b{overflow:visible;text-overflow:clip;white-space:normal;}
.matrix-zone-priced-in em{display:block;margin-top:2px;overflow:visible;color:var(--dc-faint);font:600 12px/1.15 var(--dc-word-font);font-style:normal;white-space:normal;}
.matrix-zone-priced-in:focus-visible{outline:1px solid var(--dc-violet);outline-offset:3px;}
.matrix-zone-card .zone-decision{min-width:0;margin-top:8px;}
.matrix-zone-card .zone-decision-head,.matrix-zone-card .zone-decision-meaning{display:none;}
.matrix-zone-card .zone-decision-stage i{height:13px;}
.matrix-zone-card .zone-decision-stage span{font-size:12px;color:#718090;}
.matrix-zone-card .zone-decision-stage em{margin-top:2px;font-size:12px;color:#8E99A7;font-weight:500;}
.matrix-zone-card.zone-open .zone-decision-stage i.on.zone{background:linear-gradient(90deg,#6E32B8,#B768FF);border-color:rgba(183,104,255,.62);box-shadow:0 0 11px rgba(168,85,247,.46);}
.target-glow-meaning{min-height:28px;margin-top:7px;color:#9DA9B5;font:12px/1.4 var(--font-mono);}
.target-glow.in-zone .target-glow-meaning,.target-glow.under-zone .target-glow-meaning{color:#A9DCC4;}
.zone-decision{min-width:190px}
.zone-decision-head{display:flex;align-items:center;justify-content:space-between;gap:9px;margin-bottom:7px;color:#dce5ef;font:700 12px var(--font-mono)}
.zone-decision-head b{color:#8fbcff;font-weight:700;text-align:right}
.zone-decision.in-zone .zone-decision-head b{color:#7ee2b1}
.zone-decision.is-paused .zone-decision-head b{color:#a8b3bf}
.zone-decision-rail{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}
.zone-decision-stage{text-align:center;min-width:0}
.zone-decision-stage i{display:block;height:14px;border:1px solid rgba(255,255,255,.045);border-radius:4px;background:#202832}
.zone-decision-stage span{display:block;margin-top:4px;color:#82909e;font:700 12px/1 var(--font-display);letter-spacing:.045em;white-space:nowrap}
.zone-decision-stage em{display:block;margin-top:3px;color:#a8b3bf;font:600 12px/1 var(--font-display);font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.zone-decision-stage i.on{background:linear-gradient(90deg,rgba(82,155,255,.48),rgba(143,192,255,.98));border-color:rgba(143,192,255,.48);box-shadow:0 0 10px rgba(82,155,255,.24)}
.zone-decision-stage i.on.zone{background:linear-gradient(90deg,rgba(38,194,129,.48),rgba(109,231,174,.94));border-color:rgba(38,194,129,.44);box-shadow:0 0 10px rgba(38,194,129,.22)}
.zone-decision-stage i.on.anchor{background:linear-gradient(90deg,rgba(168,85,247,.5),rgba(203,161,247,.96));border-color:rgba(203,161,247,.52);box-shadow:0 0 10px rgba(168,85,247,.24)}
.zone-decision-stage i.owed{background:repeating-linear-gradient(90deg,transparent 0 6px,rgba(244,183,64,.18) 6px 9px);border-color:rgba(244,183,64,.28)}
.zone-decision.is-paused .zone-decision-stage i.on{background:#303841;border-color:#4a535d;box-shadow:none}
.zone-decision-meaning{min-height:28px;margin-top:7px;color:#a8b3bf;font:12px/1.4 var(--font-mono)}
.matrix-zone-empty{grid-column:1/-1;padding:22px;text-align:center;border:1px dashed #2B3541;border-radius:9px;
  color:#8995A1;font:12px var(--font-mono);letter-spacing:.05em;}
.matrix-zone-editor[hidden]{display:none;}
.matrix-zone-editor{margin-top:12px;padding:13px;border:1px solid rgba(168,85,247,.38);border-radius:9px;background:#10141A;}
.matrix-zone-editor-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:11px;}
.matrix-zone-editor-head b{display:block;color:#D9C5FF;font:800 12px var(--font-mono);letter-spacing:.11em;}
.matrix-zone-editor-head span{display:block;margin-top:4px;color:#8794A2;font:12px/1.4 var(--font-mono);}
.matrix-zone-editor-close{appearance:none;border:0;background:transparent;color:#8995A1;cursor:pointer;font:22px/1 Arial,sans-serif;}
.matrix-zone-editor-close:hover{color:#F5F8FC;}
.matrix-zone-editor-form{display:grid;grid-template-columns:110px 120px 160px minmax(220px,1fr) auto auto;gap:8px;align-items:end;}
.matrix-zone-editor-form label span{display:block;margin-bottom:5px;color:#7E8B98;font:700 12px var(--font-mono);letter-spacing:.08em;}
.matrix-zone-editor-form label i{font-style:normal;color:#596573;}
.matrix-zone-editor-form input{box-sizing:border-box;width:100%;height:34px;border:1px solid #2B3541;border-radius:6px;background:#0B0E11;
  color:#F5F8FC;padding:7px 9px;outline:none;font:12px var(--font-mono);}
.matrix-zone-editor-form input:focus{border-color:#8B5CF6;box-shadow:0 0 0 2px rgba(139,92,246,.1);}
.matrix-zone-editor-save,.matrix-zone-editor-cancel{height:34px;border-radius:6px;padding:0 11px;cursor:pointer;font:800 12px var(--font-mono);letter-spacing:.06em;}
.matrix-zone-editor-save{border:1px solid rgba(168,85,247,.62);background:rgba(139,92,246,.14);color:#D9C5FF;}
.matrix-zone-editor-cancel{border:1px solid #303A46;background:transparent;color:#98A4B0;}
.matrix-zone-editor-status{margin-top:9px;color:#7E8B98;font:12px var(--font-mono);letter-spacing:.03em;}
.matrix-zone-editor-status[data-tone="error"]{color:#FF8094;}
.matrix-zone-editor-status[data-tone="saved"]{color:#7EE2B1;}
@media(max-width:1180px){.matrix-zone-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:1180px){.matrix-zone-editor-form{grid-template-columns:repeat(3,minmax(0,1fr));}.matrix-zone-note-field{grid-column:1/-1;}}
@media(max-width:700px){.matrix-zone-head{display:block}.matrix-zone-actions{justify-content:flex-start;margin-top:12px}.matrix-zone-grid{grid-template-columns:1fr}.matrix-zone-editor-form{grid-template-columns:1fr 1fr}.matrix-zone-note-field{grid-column:1/-1}.matrix-zone-card-tools{gap:4px}.matrix-zone-card-tools button{padding:3px 5px}}

/* SAAS verdict box */
.saas-box{
  background:var(--card);border:1px solid var(--border);
  padding:14px;margin-top:20px;
}
body.dragon .saas-box{border-radius:2px;}
body.clean .saas-box{border-radius:8px;}
.saas-row{
  display:flex;justify-content:space-between;align-items:center;
  padding:8px 0;border-bottom:1px solid rgba(26,48,64,.3);
  font-size:12px;flex-wrap:wrap;gap:8px;
}
body.clean .saas-row{border-bottom-color:#F1F5F9;}
.saas-row:last-child{border-bottom:none;}
.saas-verdict-red{color:#FF4D6A;font-weight:bold;font-family:var(--font-mono);font-size:12px;letter-spacing:1px;}
.saas-verdict-amber{color:var(--orange);font-weight:bold;font-family:var(--font-mono);font-size:12px;letter-spacing:1px;}

/* Deploy banner */
.deploy-banner{
  background:rgba(38,194,129,.05);border:1px solid rgba(38,194,129,.2);
  padding:10px 16px;margin-top:16px;
  display:flex;justify-content:space-between;align-items:center;
  flex-wrap:wrap;gap:8px;font-size:12px;
}
body.dragon .deploy-banner{border-radius:2px;}
body.clean .deploy-banner{border-radius:6px;}

.wl-price-inp{
  background:var(--input-bg);border:1px solid var(--border);
  color:var(--text);padding:4px 8px;
  font-family:var(--font-mono);font-size:12px;
  width:76px;outline:none;transition:border .2s;
}
body.clean .wl-price-inp{border-radius:4px;font-family:'Inter',sans-serif;}
.wl-price-inp:focus{border-color:#529BFF;}
.wl-price-inp.in-zone{border-color:#26C281!important;background:rgba(38,194,129,.08);}
.wl-price-inp.approaching{border-color:var(--orange)!important;}

/* Signals */
.sig-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;}
@media(max-width:900px){.sig-grid{grid-template-columns:1fr;}}
.sig-col-hdr{font-family:var(--font-mono);font-size:12px;letter-spacing:2px;padding:6px 10px;border-bottom:2px solid;margin-bottom:6px;display:flex;align-items:center;justify-content:space-between;}
.sig-buy-hdr{color:#26C281;border-color:#26C281;}
.sig-trim-hdr{color:var(--orange);border-color:var(--orange);}
.sig-hold-hdr{color:#529BFF;border-color:#529BFF;}
.sig-card{background:var(--card2);border:1px solid var(--border);padding:10px;margin-bottom:6px;border-left:3px solid;}
body.dragon .sig-card{border-radius:0;}
body.clean .sig-card{border-radius:6px;}
.sig-card.buy{border-left-color:#26C281;}
.sig-card.agg{border-left-color:#529BFF;}
.sig-card.trim{border-left-color:var(--orange);}
.sig-card.hold{border-left-color:var(--dim);}
.sig-card.oath{border-left-color:#F5F8FC;}
.sig-ticker{font-family:var(--font-display);font-size:14px;color:var(--text);letter-spacing:1px;}
.sig-label{font-family:var(--font-mono);font-size:12px;font-weight:600;letter-spacing:1px;margin:3px 0;}
.sig-label.buy,.sig-label.agg{color:#26C281;}
.sig-label.trim{color:var(--orange);}
.sig-label.hold{color:var(--dim);}
.sig-label.oath{color:#F5F8FC;}
.sig-reason{font-size:12px;color:var(--text2);line-height:1.5;margin-top:3px;}
.sig-meta{font-family:var(--font-mono);font-size:12px;color:var(--dim);margin-top:4px;}
.action-plan{background:var(--card);border:1px solid var(--border);padding:14px;}
body.dragon .action-plan{border-radius:2px;}
body.clean .action-plan{border-radius:8px;}
.ap-row{display:flex;gap:10px;padding:6px 0;border-bottom:1px solid rgba(26,48,64,.5);font-size:12px;align-items:flex-start;}
.ap-num{font-family:var(--font-mono);font-size:12px;color:#F5F8FC;min-width:18px;font-weight:bold;}
.ap-text{color:var(--text2);line-height:1.5;}
.g{color:#26C281;font-weight:600;} .r{color:#FF4D6A;font-weight:600;}
.y{color:var(--orange);} .go{color:#F5F8FC;font-weight:600;}

/* Margin */
.margin-meter{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px;}
.mm-card{background:var(--card);border:2px solid var(--border);padding:16px;text-align:center;transition:border-color .3s;}
body.dragon .mm-card{border-radius:2px;}
body.clean .mm-card{border-radius:10px;}
.mm-card.green{border-color:#26C281;}
.mm-card.yellow{border-color:var(--orange);}
.mm-card.red{border-color:#FF4D6A;}
.mm-label{font-family:var(--font-mono);font-size:12px;color:var(--dim);letter-spacing:2px;margin-bottom:8px;text-transform:uppercase;}
.mm-value{font-family:var(--font-display);font-size:28px;line-height:1;}
.mm-status{font-family:var(--font-mono);font-size:12px;margin-top:6px;color:var(--dim);}
.margin-gauge{background:var(--card);border:1px solid var(--border);padding:20px;margin-bottom:20px;}
body.dragon .margin-gauge{border-radius:2px;}
body.clean .margin-gauge{border-radius:10px;}
.gauge-track{height:20px;background:var(--bg3);border:1px solid var(--border);position:relative;overflow:hidden;margin:12px 0;}
body.clean .gauge-track{border-radius:10px;}
.gauge-green{position:absolute;left:0;width:15%;height:100%;background:rgba(38,194,129,.25);}
.gauge-yellow{position:absolute;left:15%;width:7%;height:100%;background:rgba(255,140,0,.2);}
.gauge-red{position:absolute;left:22%;width:100%;height:100%;background:rgba(255,77,106,.1);}
.gauge-fill{position:absolute;left:0;height:100%;background:linear-gradient(90deg,#26C281,var(--orange));transition:width .8s ease;border-right:2px solid white;}
.gauge-labels{display:flex;justify-content:space-between;font-family:var(--font-mono);font-size:12px;color:var(--dim);}
.margin-inputs{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:12px;}
@media(max-width:700px){.margin-inputs,.margin-meter{grid-template-columns:1fr 1fr;}}
.inp-group label{display:block;font-family:var(--font-mono);font-size:12px;color:var(--dim);letter-spacing:1px;margin-bottom:5px;text-transform:uppercase;}
.inp-field{width:100%;background:var(--input-bg);border:1px solid var(--border);color:var(--text);padding:8px 10px;font-family:var(--font-mono);font-size:13px;outline:none;transition:border .2s;}
body.dragon .inp-field{border-radius:0;}
body.clean .inp-field{border-radius:6px;font-family:'Inter',sans-serif;}
.inp-field:focus{border-color:#529BFF;}
.calc-btn{font-family:var(--font-mono);font-size:12px;letter-spacing:2px;padding:10px 24px;border:none;background:#26C281;color:#000;cursor:pointer;font-weight:bold;transition:all .2s;}
body.dragon .calc-btn{border-radius:0;}
body.clean .calc-btn{border-radius:6px;font-family:'Inter',sans-serif;}
.calc-btn:hover{opacity:.85;}
.margin-result{margin-top:14px;padding:14px;border:1px solid;font-size:13px;line-height:2;display:none;}
.margin-explainer{background:var(--card2);border:1px solid var(--border);padding:16px;margin-top:16px;}
body.dragon .margin-explainer{border-radius:2px;}
body.clean .margin-explainer{border-radius:8px;}
.exp-title{font-family:var(--font-mono);font-size:12px;letter-spacing:2px;color:#F5F8FC;margin-bottom:12px;}
.exp-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid rgba(26,48,64,.4);font-size:12px;}
.exp-label{color:var(--text2);}
.exp-value{font-family:var(--font-mono);font-weight:bold;}
.exp-note{margin-top:12px;padding:10px;background:rgba(245,248,252,.05);border:1px solid rgba(245,248,252,.2);font-size:12px;color:var(--text2);line-height:1.7;}

/* Analyzer */
.analyzer-zone{max-width:1160px;margin:0 auto;}
.api-input-panel{background:var(--card);border:1px solid var(--border);padding:20px;margin-bottom:16px;}
body.dragon .api-input-panel{border-radius:2px;}
body.clean .api-input-panel{border-radius:10px;}
.api-row{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap;}
.api-key-inp{flex:1;min-width:200px;background:var(--input-bg);border:1px solid var(--border);color:var(--text);padding:9px 12px;font-family:var(--font-mono);font-size:12px;outline:none;transition:border .2s;}
body.dragon .api-key-inp{border-radius:0;}
body.clean .api-key-inp{border-radius:6px;font-family:'Inter',sans-serif;}
.api-key-inp:focus{border-color:#F5F8FC;}
.key-status{font-family:var(--font-mono);font-size:12px;color:var(--dim);margin-top:5px;}
.analyze-inputs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:14px;}
.ticker-large{background:var(--input-bg);border:2px solid var(--border);color:var(--text);padding:10px 16px;font-family:var(--font-display);font-size:22px;letter-spacing:3px;outline:none;transition:border .2s;width:140px;}
body.clean .ticker-large{border-radius:6px;font-family:'Inter',sans-serif;font-size:18px;font-weight:700;letter-spacing:0;}
.ticker-large:focus{border-color:#F5F8FC;}


.analyze-btn{position:relative;padding:15px 42px;border:1px solid rgba(255,255,255,.14);border-radius:14px;background:rgba(255,255,255,.05);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#e8f5ef;font-size:13px;letter-spacing:.2em;text-transform:uppercase;font-family:var(--font-display);cursor:pointer;transition:all .3s;}
.analyze-btn::before{content:'';position:absolute;inset:-2px;border-radius:16px;z-index:-1;opacity:0;background:linear-gradient(352deg,#145c6c,#2ecd8c);filter:blur(14px);transition:opacity .35s;}
.analyze-btn:hover::before{opacity:.8}
.analyze-btn:hover{transform:none;box-shadow:none;}
.analyze-btn:active{transform:scale(.98)}


body.clean .analyze-btn{border-radius:6px;font-family:'Inter',sans-serif;font-size:14px;font-weight:700;letter-spacing:.02em;}
.analyze-btn:hover{transform:translateY(-1px);box-shadow:0 4px 20px rgba(245,248,252,.3);}
.analyze-btn:disabled{opacity:.5;cursor:not-allowed;transform:none;}
.loading-panel{text-align:center;padding:48px;background:var(--card);border:1px solid var(--border);display:none;}
.loading-ticker{font-family:var(--font-display);font-size:48px;color:#F5F8FC;letter-spacing:4px;animation:rp 1s infinite;}
.loading-bar-wrap{width:240px;height:3px;background:var(--border);margin:16px auto;overflow:hidden;}
.loading-bar{height:100%;background:linear-gradient(90deg,#26C281,#529BFF);animation:loading-sweep 2s infinite;}
@keyframes loading-sweep{0%{width:0%;margin-left:0}50%{width:60%;margin-left:20%}100%{width:0%;margin-left:100%}}
.results-zone{display:none;}
.verdict-banner{padding:24px 28px;margin-bottom:16px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:20px;position:relative;overflow:hidden;}
body.dragon .verdict-banner{border-radius:2px;}
body.clean .verdict-banner{border-radius:10px;}
.vb-fortress{background:rgba(38,194,129,.08);border:1px solid rgba(38,194,129,.3);}
.vb-tactical{background:rgba(245,248,252,.08);border:1px solid rgba(245,248,252,.3);}
.vb-watchlist{background:var(--card2);border:1px solid var(--border);}
.wish-shell{border:1px solid rgba(145,156,174,.18);background:var(--card);padding:18px;margin-bottom:22px;border-radius:10px;}
.always-seen-board{position:relative;isolation:isolate;margin:0 0 20px;padding:22px 18px 21px;border:0;border-radius:0;
  background:radial-gradient(ellipse at 50% -35%,rgba(111,182,216,.16),transparent 58%),linear-gradient(180deg,#141c25 0%,#101720 58%,#0d131a 100%);
  box-shadow:inset 0 1px 0 rgba(142,205,235,.10),inset 0 -1px 0 rgba(111,182,216,.08)}
.always-seen-board::before,.always-seen-board::after{content:"";position:absolute;z-index:0;left:0;right:0;height:1px;pointer-events:none;
  background:linear-gradient(90deg,transparent 0%,rgba(111,182,216,.52) 18%,rgba(111,182,216,.18) 50%,rgba(111,182,216,.52) 82%,transparent 100%)}
.always-seen-board::before{top:0}.always-seen-board::after{bottom:0;opacity:.72}
.always-seen-board>*{position:relative;z-index:1}
.always-seen-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;flex-wrap:wrap}
.always-seen-kicker{font:700 12px var(--font-mono);letter-spacing:.17em;color:#79b7e8}
.always-seen-title{margin-top:5px;font:900 clamp(22px,2.4vw,34px)/1 var(--font-display);letter-spacing:-.04em;color:#f5f8fc}
.always-seen-title span{color:#78bce5;text-shadow:0 0 22px rgba(82,155,255,.18)}
.always-seen-copy{max-width:780px;margin-top:8px;color:#a9b4c0;font:12px/1.55 var(--font-body)}
.always-seen-add{display:flex;gap:7px;align-items:center}
.always-seen-add input{width:122px;background:var(--input-bg);border:1px solid var(--border);border-radius:8px;color:var(--text);padding:8px 10px;font:12px var(--font-mono);outline:none}
.always-seen-add input:focus{border-color:#529bff}
.always-seen-grid{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));gap:9px;margin-top:17px}
.always-seen-card{position:relative;min-width:0;padding:13px 13px 11px;border:1px solid rgba(139,174,200,.24);border-radius:9px;
  background:linear-gradient(145deg,rgba(20,29,39,.98),rgba(9,14,19,.98));box-shadow:inset 0 1px 0 rgba(164,207,232,.035);overflow:hidden}
.always-seen-card::before{content:"";position:absolute;left:13px;right:13px;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(121,183,222,.66),transparent);opacity:.7}
.always-seen-top{display:flex;justify-content:space-between;gap:8px;align-items:flex-start}
.always-seen-symbol{font:900 19px var(--font-display);letter-spacing:-.02em;color:#f5f8fc}
.always-seen-state{font:700 12px var(--font-mono);letter-spacing:.1em;color:var(--always-color,#7baeff);border:1px solid rgba(123,174,255,.38);border-radius:5px;padding:3px 6px;white-space:nowrap}
.always-seen-card.is-want{border-color:rgba(92,160,207,.38);background:linear-gradient(145deg,rgba(55,117,160,.11),rgba(11,15,20,.98) 55%)}
.always-seen-card.is-want .always-seen-state{color:#8dc8eb;border-color:rgba(92,160,207,.46);background:rgba(55,117,160,.12)}
.always-seen-role{margin-top:4px;min-height:30px;color:#98a4b0;font:12px/1.45 var(--font-mono)}
.always-seen-price{margin-top:10px;font:800 18px var(--font-mono);color:#eaf0f6}
.always-seen-note{margin-top:3px;color:#7f8b99;font:12px/1.35 var(--font-mono)}
.always-seen-card .target-glow{margin-top:10px}
.always-seen-tools{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.always-seen-tools button{min-height:32px;border:1px solid #465465;border-radius:5px;background:#151d27;padding:6px 9px;color:#edf2f7;font:700 12px/18px var(--font-body);letter-spacing:.02em;cursor:pointer}
.always-seen-tools button:hover{color:#fff;background:#253447;border-color:#8baecc}
.always-seen-tools button:focus-visible{outline:2px solid #9ac6ff;outline-offset:2px}
@media(max-width:1250px){.always-seen-grid{grid-template-columns:repeat(3,minmax(160px,1fr))}}
@media(max-width:720px){.always-seen-grid{grid-template-columns:1fr}.always-seen-add{width:100%}.always-seen-add input{flex:1}}
.watch-command-grid{display:grid;grid-template-columns:minmax(0,2.15fr) minmax(310px,.72fr);gap:12px;align-items:stretch;margin:8px 0 22px;}
.watch-command-grid .watch-chart{margin:0;min-height:260px;}
.watch-command-grid .watch-leadership-cross{min-width:0;margin:0;}
.watch-command-grid .watch-leadership-cross .lc-chart{min-height:250px;}
.watch-command-grid .watch-leadership-cross .lc-range{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;}
.deploy-gauge-card{border:1px solid rgba(145,156,174,.24);background:#0B0E11;border-radius:10px;padding:14px 16px;min-height:260px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;position:relative;box-shadow:none}
body.clean .deploy-gauge-card{background:#f4f7fb}
.dg-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.dg-eyebrow{font:700 12px var(--font-mono);letter-spacing:.16em;color:#98a4b0}
.dg-verdict{font:700 12px var(--font-mono);letter-spacing:.1em;color:#a8b3bf;text-align:right}
.dg-gauge{display:block;width:100%;height:136px;margin:-4px auto -8px;overflow:visible}
.dg-arc-bg{fill:none;stroke:#141920;stroke-width:17;stroke-linecap:round}
.dg-arc-bloom{fill:none;stroke:url(#dg-arc-gradient);stroke-width:15;stroke-linecap:round;opacity:.55;filter:url(#dg-bloom)}
.dg-arc{fill:none;stroke:url(#dg-arc-gradient);stroke-width:15;stroke-linecap:round;filter:url(#dg-softglow)}
.dg-arc-highlight{fill:none;stroke:rgba(255,255,255,.16);stroke-width:1.1;stroke-linecap:round}
.dg-needle{stroke:#fff;stroke-width:4;stroke-linecap:round;filter:url(#dg-needleglow)}
.dg-hub{fill:#151b26;stroke:#f5f8fc;stroke-width:2;filter:url(#dg-softglow)}
.dg-label{font:700 12px var(--font-mono);fill:#98a4b0;text-anchor:middle;letter-spacing:.12em}
.dg-end-label{font:700 12px var(--font-mono);fill:#7f8b99;letter-spacing:.08em}
.dg-bars{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin-top:2px}
.dg-leg{font:700 12px var(--font-mono);color:#8e9aa7;letter-spacing:.06em}
.dg-track{height:3px;background:rgba(145,156,174,.13);margin:5px 0 3px;overflow:hidden;border-radius:8px}
.dg-fill{height:100%;width:0;background:var(--dg-color);transition:width .3s ease}
#dg-fear-bar{background:#529BFF}
#dg-damage-bar{background:#CBA1F7}
#dg-capacity-bar{background:#6DE7AE}
#dg-evidence-bar{background:#A8B3BF}
.dg-leg:nth-child(1) .dg-leg-value{color:#82a8ff}
.dg-leg:nth-child(2) .dg-leg-value{color:#d5b5fa}
.dg-leg:nth-child(3) .dg-leg-value{color:#8af0c3}
.dg-leg:nth-child(4) .dg-leg-value{color:#c3ccd6}
.dg-leg-value{font:700 12px var(--font-mono);color:#f5f8fc}
.dg-snapshot{font:12px var(--font-mono);color:#8e9aa7;margin-top:9px;line-height:1.35}
.dg-toggle{border:0;background:transparent;color:#9ca8b5;font:12px var(--font-mono);padding:5px 0 0;cursor:pointer;text-align:left}
.dg-help{margin-top:5px;border-top:1px solid rgba(145,156,174,.12);padding-top:5px}
.dg-help summary{cursor:pointer;color:#9ca8b5;font:12px var(--font-mono);letter-spacing:.05em;list-style:none}
.dg-help summary::-webkit-details-marker{display:none}
.dg-help p{margin-top:6px;color:#aeb8c3;font:12px/1.5 var(--font-mono)}
.dg-help b{color:#dce5ef;font-weight:700}
.dg-controls{display:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:8px}
.deploy-gauge-card.dg-open .dg-controls{display:grid}
.dg-field label{display:block;font:12px var(--font-mono);color:#7f8b99;margin-bottom:3px}
.dg-field input,.dg-field select{width:100%;box-sizing:border-box;background:rgba(0,0,0,.22);border:1px solid rgba(145,156,174,.18);border-radius:7px;color:#dde6f0;padding:6px;font:12px var(--font-mono)}
.dg-field-wide{grid-column:span 2}
.dg-kill{display:none;color:#ff6b83;font:700 12px var(--font-mono);letter-spacing:.08em;margin-top:6px}
.deploy-gauge-card.dg-void .dg-kill{display:block}
.watch-chart{margin:8px 0 22px;min-height:240px;}
.watch-chart svg{height:260px;}
.watch-chart-loading{height:260px;border:1px solid rgba(145,156,174,.12);background:linear-gradient(110deg,transparent 18%,rgba(145,156,174,.045) 36%,transparent 54%);background-size:220% 100%;animation:watch-chart-pulse 1.5s ease-in-out infinite;}
@keyframes watch-chart-pulse{0%{background-position:130% 0}100%{background-position:-90% 0}}
.wish-title{font-family:var(--font-display);font-size:28px;font-weight:900;letter-spacing:-.035em;color:#F5F8FC;}
.wish-sub{font-family:var(--font-mono);font-size:12px;letter-spacing:1.4px;color:#98A4B0;margin-top:4px;}
.wish-shell{container-type:inline-size;}
.wish-form{display:grid;grid-template-columns:minmax(0,.6fr) minmax(0,1fr) minmax(0,.75fr) minmax(0,.75fr) minmax(0,1.2fr) minmax(0,1.25fr) minmax(0,.9fr);gap:8px;width:100%;margin:16px 0 12px;}
.wish-form input{min-width:0;background:var(--input-bg);border:1px solid var(--border);color:var(--text);padding:9px 10px;font:12px var(--font-mono);outline:none;border-radius:9px;}
.wish-form input::placeholder{color:#8995A1;opacity:1;}
.wish-form input:focus{border-color:#26C281;}
.wish-save{min-width:0;width:100%;border:1px solid #26C281;background:rgba(38,194,129,.10);color:#7EE2B1;padding:9px 12px;font:12px var(--font-mono);letter-spacing:1px;cursor:pointer;border-radius:9px;}
.wish-table{width:100%;border-collapse:collapse;font-size:12px;}
.wish-table th{font:12px var(--font-mono);letter-spacing:1px;color:#929EAA;text-align:left;padding:9px 8px;border-bottom:1px solid var(--border);white-space:nowrap;}
.wish-table td{padding:11px 8px;border-bottom:1px solid rgba(60,70,82,.42);vertical-align:top;}
.wish-table tr.wish-hit{background:linear-gradient(90deg,rgba(38,194,129,.14),rgba(38,194,129,.02));box-shadow:inset 3px 0 #26C281;}
.wish-table tr.watch-large-move{box-shadow:inset 3px 0 #c88cff;}
.wish-live-cell{font:750 13px/1.1 "Figtree","Inter",sans-serif;white-space:nowrap;font-variant-numeric:tabular-nums lining-nums;font-feature-settings:"tnum" 1,"lnum" 1,"zero" 0;}
.wish-live-move,.wish-live-stamp{display:block;margin-top:4px;font:750 12px/1.15 "Figtree","Inter",sans-serif;font-variant-numeric:tabular-nums lining-nums;font-feature-settings:"tnum" 1,"lnum" 1,"zero" 0;}
.wish-live-move{color:#98A4B0}.wish-live-move.up{color:#7EE2B1}.wish-live-move.down{color:#FF8094}
.wish-live-stamp{color:#718090;font-size:12px;letter-spacing:.04em;}
.wish-data-number{display:block;color:var(--dc-text);font:600 12px/1.2 var(--dc-number-font);font-variant-numeric:tabular-nums;white-space:nowrap;}
.wish-data-number.is-muted{color:var(--dc-muted);}
.wish-priced-in{min-width:190px;}
.wish-priced-in .position-valuation-button{min-width:180px;}
.freeze-symbol-1,.freeze-symbol-2{border-collapse:separate;border-spacing:0;}
.freeze-symbol-1 th:first-child,
.freeze-symbol-1 td:first-child,
.freeze-symbol-2 th:nth-child(2),
.freeze-symbol-2 td:nth-child(2){
  position:sticky;left:0;z-index:4;background:var(--card);
  box-shadow:7px 0 12px rgba(0,0,0,.34);
}
.freeze-symbol-1 th:first-child,
.freeze-symbol-2 th:nth-child(2){z-index:6;background:var(--bg3);}
.freeze-symbol-1 tr:hover td:first-child,
.freeze-symbol-2 tr:hover td:nth-child(2){background:var(--bg2);}
.wish-table.freeze-symbol-2 tr.wish-hit td:nth-child(2){
  background:linear-gradient(90deg,rgba(38,194,129,.18),rgba(38,194,129,.06)),var(--card);
}
.wl-table.freeze-symbol-1 tr.in-zone td:first-child{
  background:linear-gradient(rgba(38,194,129,.07),rgba(38,194,129,.07)),var(--card);
}
body.clean .freeze-symbol-1 th:first-child,
body.clean .freeze-symbol-2 th:nth-child(2){box-shadow:7px 0 12px rgba(30,45,61,.14);}
.wish-ticker{font:700 14px var(--font-display);letter-spacing:.5px;color:#F5F8FC;}
.wish-dim{color:#98A4B0;font-size:12px;line-height:1.45;}
.wish-zone{font-family:var(--font-mono);color:#7EE2B1;white-space:nowrap;}
.wish-action{border:1px solid var(--border);background:transparent;color:var(--text2);padding:4px 8px;font:12px var(--font-mono);cursor:pointer;margin-right:4px;border-radius:9px;}
.wish-remove{color:#FF4D6A;border-color:rgba(255,77,106,.3);}
.bench-grid{display:grid;grid-template-columns:repeat(4,minmax(180px,1fr));gap:10px;margin:12px 0 18px;}
.bench-card{border:1px solid var(--border);background:var(--card);padding:13px 14px;border-radius:10px;}
.bench-top{display:flex;justify-content:space-between;gap:10px;align-items:baseline;}
.bench-ticker{font:700 17px var(--font-display);color:#F5F8FC;}
.bench-name{font-size:12px;color:var(--dim);margin-top:2px;}
.bench-price{font:13px var(--font-mono);color:var(--text);}
.bench-returns{display:grid;grid-template-columns:repeat(5,1fr);gap:5px;margin-top:11px;}
.bench-period{font:12px var(--font-mono);color:var(--dim);}
.bench-value{font:12px var(--font-mono);margin-top:2px;}
@media(max-width:1180px){.wish-form{grid-template-columns:repeat(2,minmax(0,1fr));}.wish-save{grid-column:span 2}.bench-grid{grid-template-columns:repeat(2,minmax(180px,1fr));}.watch-command-grid{grid-template-columns:1fr}.deploy-gauge-card{min-height:auto}}
@container (max-width:760px){.wish-form{grid-template-columns:repeat(2,minmax(0,1fr));}.wish-save{grid-column:span 2}}
@media(max-width:680px){.wish-form{grid-template-columns:1fr}.wish-save{grid-column:auto}.bench-grid{grid-template-columns:1fr}.deploy-gauge-card{padding:12px}.dg-bars{gap:3px}.dg-controls{grid-template-columns:1fr}.dg-field-wide{grid-column:auto}}
@media(max-width:760px){
  .wish-shell>div[style*="overflow-x:auto"]{overflow-x:visible!important;border:0!important}
  .wish-table,.wish-table tbody{display:block;width:100%;min-width:0}
  .wish-table thead{display:none}
  .wish-table tr{
    display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:auto auto auto;
    grid-template-areas:"symbol symbol price" "high pe priced" "door away earnings";
    gap:11px 8px;min-width:0;margin:7px 0;padding:12px 10px;border:1px solid var(--dc-line);border-radius:8px;
    background:color-mix(in srgb,var(--dc-panel) 94%,var(--dc-blue));font:500 13px/1.25 "Figtree","Inter",sans-serif
  }
  .wish-table tr:nth-child(even){background:color-mix(in srgb,var(--dc-panel) 91%,var(--dc-blue))}
  .wish-table tr.wish-hit{box-shadow:inset 3px 0 var(--dc-green)}
  .wish-table td{display:block;min-width:0;padding:0;border:0;font-size:13px}
  .wish-table td:nth-child(2){grid-area:symbol;position:static;box-shadow:none;background:transparent!important}
  .wish-table td:nth-child(4){grid-area:price;text-align:right}
  .wish-table td:nth-child(5){grid-area:high}
  .wish-table td:nth-child(6){grid-area:pe}
  .wish-table td:nth-child(8){grid-area:priced}
  .wish-table td:nth-child(9){grid-area:earnings}
  .wish-table td:nth-child(10){grid-area:door}
  .wish-table td:nth-child(11){grid-area:away}
  .wish-table td:nth-child(1),.wish-table td:nth-child(3),.wish-table td:nth-child(7),
  .wish-table td:nth-child(12),.wish-table td:nth-child(13),.wish-table td:nth-child(14),.wish-table td:nth-child(15){display:none}
  .wish-table td:nth-child(5)::before{content:"OFF ATH"}
  .wish-table td:nth-child(6)::before{content:"FWD P/E"}
  .wish-table td:nth-child(8)::before{content:"PRICED IN"}
  .wish-table td:nth-child(9)::before{content:"NEXT ER"}
  .wish-table td:nth-child(10)::before{content:"REVIEW DOOR"}
  .wish-table td:nth-child(11)::before{content:"VS DOOR"}
  .wish-table td:nth-child(n+5):nth-child(-n+11)::before{display:block;margin-bottom:4px;color:var(--dc-faint);font:700 12px/1 var(--font-mono);letter-spacing:.08em}
  .wish-priced-in,.wish-priced-in .position-valuation-button{width:100%;min-width:0}
  .wish-priced-in .position-valuation-button{padding:6px;text-align:left}
  .wish-ticker{font-size:16px}.wish-live-cell{font-size:13px}.wish-live-move{white-space:normal}
}
.verdict-ticker{font-family:var(--font-display);font-size:40px;color:var(--text);letter-spacing:3px;line-height:1;}
.big-score{font-family:var(--font-display);font-size:64px;line-height:1;text-align:center;}
.steps-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px;}
@media(max-width:800px){.steps-grid-2{grid-template-columns:1fr;}}
.step-card{background:var(--card);border:1px solid var(--border);padding:12px;border-left:3px solid;animation:fadeIn .3s ease forwards;opacity:0;}
body.dragon .step-card{border-radius:0;}
body.clean .step-card{border-radius:6px;}
@keyframes fadeIn{to{opacity:1}}
.step-card.pass{border-left-color:#26C281;}
.step-card.partial{border-left-color:var(--orange);}
.step-card.fail{border-left-color:#FF4D6A;}
.framework-board{margin-top:16px;background:var(--card);border:1px solid var(--border);}
.framework-head{display:grid;grid-template-columns:42px minmax(150px,.8fr) minmax(260px,1.35fr) minmax(220px,1fr);gap:12px;padding:10px 12px;border-bottom:1px solid var(--border);font-family:var(--font-mono);font-size:12px;letter-spacing:1.5px;color:var(--dim);text-transform:uppercase;}
.framework-row{display:grid;grid-template-columns:42px minmax(150px,.8fr) minmax(260px,1.35fr) minmax(220px,1fr);gap:12px;align-items:center;padding:12px;border-bottom:1px solid rgba(26,48,64,.55);}
.framework-row:last-child{border-bottom:0;}
.framework-num{font-family:var(--font-mono);font-size:12px;color:var(--dim);}
.framework-name{font-size:13px;font-weight:700;color:var(--text);}
.framework-meaning{font-size:12px;line-height:1.55;color:var(--text2);}
.framework-decision{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;}
.framework-status{border:1px solid var(--border);background:var(--input-bg);color:var(--dim);padding:7px 4px;font-family:var(--font-mono);font-size:12px;letter-spacing:.7px;cursor:pointer;}
.framework-status:hover{border-color:var(--text2);color:var(--text);}
.framework-status.active{font-weight:800;box-shadow:inset 0 0 0 1px currentColor,0 0 14px rgba(255,255,255,.06);}
.framework-status.active[data-status="pass"]{border-color:#26C281;background:rgba(38,194,129,.16);color:#71E4AF;}
.framework-status.active[data-status="fail"]{border-color:#FF4D6A;background:rgba(255,77,106,.14);color:#FF8095;}
.framework-status.active[data-status="owed"]{border-color:#A77CF5;background:rgba(167,124,245,.14);color:#C6A7FF;}
.framework-group{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 12px;border-top:1px solid rgba(82,155,255,.35);border-bottom:1px solid rgba(82,155,255,.18);background:linear-gradient(90deg,rgba(82,155,255,.10),rgba(167,124,245,.04),transparent);font:800 12px var(--font-mono);letter-spacing:1.5px;color:#8FC2FF;text-transform:uppercase;}
.framework-group:first-child{border-top:0;}
.framework-group small{font:12px var(--font-mono);letter-spacing:.6px;color:var(--dim);}
.analyzer-market{display:grid;grid-template-columns:repeat(5,minmax(130px,1fr));gap:8px;margin-top:12px;}
.analyzer-market-card{border:1px solid var(--border);background:var(--input-bg);padding:11px 12px;min-height:68px;}
.analyzer-market-card[data-tone="good"]{border-color:rgba(38,194,129,.62);box-shadow:inset 0 0 0 1px rgba(38,194,129,.08),0 0 18px rgba(38,194,129,.06);}
.analyzer-market-card[data-tone="warn"]{border-color:rgba(167,124,245,.62);box-shadow:inset 0 0 0 1px rgba(167,124,245,.08),0 0 18px rgba(167,124,245,.06);}
.analyzer-market-card[data-tone="bad"]{border-color:rgba(255,77,106,.55);box-shadow:inset 0 0 0 1px rgba(255,77,106,.07);}
.analyzer-market-label{font:12px var(--font-mono);letter-spacing:1px;color:var(--dim);text-transform:uppercase;}
.analyzer-market-value{font:800 19px var(--font-display);color:var(--text);margin-top:6px;}
.analyzer-market-sub{font:12px/1.45 var(--font-mono);color:var(--text2);margin-top:4px;}
.analyzer-actionbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:12px;}
.analyzer-status{font:12px var(--font-mono);letter-spacing:.5px;color:var(--dim);margin-left:auto;}
.analyzer-disclaimer{font:12px/1.55 var(--font-mono);color:var(--dim);margin-top:9px;}
@media(max-width:900px){.analyzer-market{grid-template-columns:repeat(2,minmax(130px,1fr));}.analyzer-status{width:100%;margin-left:0;}}
@media(max-width:560px){.analyzer-market{grid-template-columns:1fr;}}
.framework-evidence{grid-column:2/-1;width:100%;background:var(--input-bg);border:1px solid var(--border);color:var(--text);padding:8px 10px;font-family:var(--font-mono);font-size:12px;outline:none;}
.framework-evidence:focus{border-color:#529BFF;}
.framework-score{display:flex;gap:16px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:13px 14px;border-bottom:1px solid var(--border);}
.framework-score-main{font-family:var(--font-display);font-size:22px;color:var(--text);letter-spacing:2px;}
.framework-score-note{font-family:var(--font-mono);font-size:12px;color:var(--dim);letter-spacing:.7px;}
@media(max-width:850px){
  .framework-head{display:none;}
  .framework-row{grid-template-columns:34px 1fr;gap:7px 10px;}
  .framework-meaning,.framework-decision{grid-column:2;}
  .framework-evidence{grid-column:2;}
}
.step-card.unknown{border-left-color:var(--dim);}
.step-name{font-family:var(--font-mono);font-size:12px;color:var(--text);font-weight:600;}
.step-verdict{font-family:var(--font-mono);font-size:12px;letter-spacing:1px;font-weight:700;margin:3px 0;}
.step-verdict.pass{color:#26C281;}
.step-verdict.partial{color:var(--orange);}
.step-verdict.fail{color:#FF4D6A;}
.step-reason{font-size:12px;color:var(--text2);line-height:1.5;}

.run-btn{font-family:var(--font-mono);font-size:12px;letter-spacing:2px;padding:8px 20px;border:1px solid #F5F8FC;background:transparent;color:#F5F8FC;cursor:pointer;transition:all .2s;}
body.dragon .run-btn{border-radius:9px;}
body.clean .run-btn{border-radius:9px;font-family:'Inter',sans-serif;letter-spacing:0;font-size:12px;font-weight:600;}
.run-btn:hover{background:rgba(245,248,252,.1);}
.divider{height:1px;background:linear-gradient(90deg,transparent,var(--border),transparent);margin:16px 0;}

@media(max-width:600px){
  .master-hdr{gap:8px;padding:8px 12px;overflow:hidden;}
  .m-logo{width:100%;max-width:100%;min-width:0;overflow:hidden;}
  .m-logo small{min-width:0;overflow:hidden;text-overflow:ellipsis;}
  .dragon-backup-actions{order:3;margin-left:auto;}
  .dragon-backup-status{display:none;}
  .master-actions{order:3;width:100%;min-width:0;justify-content:flex-end;flex-wrap:wrap;}
  .m-hud{
    width:100%;max-width:100%;min-width:0;gap:10px;
    display:flex;flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-inline:contain;
    scrollbar-width:thin;padding-bottom:3px;
  }
  .m-hi{min-width:88px;flex:0 0 auto;}
  .m-hi.next-er{min-width:144px;}
  .portfolio-pulse{grid-template-columns:1fr auto;}
  .pp-metric{padding:9px 11px;display:grid;grid-template-columns:1fr;gap:3px;}
  .pp-sep{display:none;}
  .pp-label{font-size:12px}.pp-value{font-size:20px}.pp-sub{font-size:12px;}
  .pp-edit{grid-column:1/-1;margin:0;border-width:1px 0 0;border-radius:0;padding:7px;}
  .pp-editor{grid-template-columns:1fr 1fr;}
  .bracket-container{padding:8px;}
  .margin-inputs{grid-template-columns:1fr 1fr;}
}

/* ═══ PERFORMANCE GRID ═══ */
.pf-flt{font-family:var(--font-mono);font-size:12px;letter-spacing:1px;padding:4px 12px;border:1px solid var(--border);background:transparent;color:var(--dim);cursor:pointer;transition:all .15s;border-radius:9px;}
.pf-flt:hover{border-color:#529BFF;color:#529BFF;}
.pf-flt.on{border-color:#26C281;color:#26C281;background:rgba(38,194,129,.06);}
.pf-earn-chip{font-family:var(--font-mono);font-size:12px;padding:2px 10px;border:1px solid var(--border);color:var(--text);background:var(--bg2);}
.pf-earn-chip.crit{border-color:rgba(226,75,74,.4);color:#FF4D6A;}
.pf-table{width:100%;border-collapse:collapse;font-size:12px;min-width:900px;}
.pf-table thead{position:static;}
.pf-table th{background:var(--bg3);font-family:var(--font-mono);font-size:12px;text-transform:uppercase;letter-spacing:1px;color:var(--dim);padding:8px 10px;border-bottom:1px solid var(--border);text-align:right;cursor:pointer;white-space:nowrap;user-select:none;}
.pf-table th:nth-child(2){text-align:left;}
.pf-table th:first-child{text-align:center;width:44px;}
.pf-table th:hover{color:var(--text);}
.pf-table th.pf-active{color:#26C281;}
.pf-arr{margin-left:2px;font-size:12px;}
.pf-table td{padding:6px 10px;border-bottom:1px solid rgba(26,48,64,.3);text-align:right;color:var(--text);white-space:nowrap;}
.pf-table td:first-child{text-align:center;}
.pf-table td:nth-child(2){text-align:left;}
.pf-table td:last-child{text-align:left;min-width:180px;}
.pf-table tr:hover td{background:var(--table-hover);}
.pf-company-row,.uni-company-row{cursor:pointer;}
.pf-company-row:focus,.uni-company-row:focus{outline:1px solid rgba(82,155,255,.7);outline-offset:-1px;}
.pf-page-size{margin-left:auto;display:inline-flex;align-items:center;gap:7px;color:var(--dim);font:12px var(--font-mono);letter-spacing:.12em;}
.pf-page-size select{appearance:none;background:var(--input-bg);border:1px solid var(--border);border-radius:5px;color:#F5F8FC;padding:5px 24px 5px 8px;font:12px var(--font-mono);cursor:pointer;}
.uni-guide{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin:8px 0 10px;padding:11px 13px;border-left:2px solid #A855F7;background:rgba(168,85,247,.045);font-family:var(--font-mono);}
.uni-guide>div{display:flex;gap:10px;align-items:baseline;min-width:0;}
.uni-guide b{color:#E7D4FF;font-size:12px;letter-spacing:.1em;white-space:nowrap;}
.uni-guide span{color:var(--text2);font-size:12px;line-height:1.5;}
.uni-guide small{color:var(--dim);font-size:12px;line-height:1.5;letter-spacing:.08em;text-align:right;max-width:330px;}

.performance-inspector{position:fixed;z-index:1300;top:72px;right:14px;bottom:14px;width:min(440px,calc(100vw - 28px));min-width:340px;max-width:calc(100vw - 28px);box-sizing:border-box;overflow:hidden;transform:translateX(calc(100% + 30px));pointer-events:none;opacity:0;background:#090F15;border:1px solid #29384A;box-shadow:-20px 0 60px rgba(0,0,0,.58);transition:transform .22s ease,opacity .18s ease;}
.performance-inspector.open{transform:translateX(0);pointer-events:auto;opacity:1;}
.performance-inspector.is-resizing{transition:none;user-select:none;}
#performance-inspector-body{height:100%;box-sizing:border-box;overflow:auto;padding:42px 15px 16px;}
.performance-inspector-resizer{position:absolute;z-index:4;left:-1px;top:0;bottom:0;width:12px;cursor:col-resize;touch-action:none;outline:none;}
.performance-inspector-resizer::before{content:"";position:absolute;left:0;top:50%;width:3px;height:58px;transform:translateY(-50%);border-radius:3px;background:#3C4D61;box-shadow:0 0 0 1px rgba(9,15,21,.72);transition:height .16s ease,background .16s ease,box-shadow .16s ease;}
.performance-inspector-resizer:hover::before,.performance-inspector-resizer:focus-visible::before,.performance-inspector.is-resizing .performance-inspector-resizer::before{height:86px;background:#AFA4FF;box-shadow:0 0 16px rgba(175,164,255,.5);}
body.performance-inspector-resizing{cursor:col-resize;user-select:none;}
.performance-inspector-close{position:absolute;right:12px;top:11px;border:0;background:transparent;color:var(--dim);font:12px var(--font-mono);letter-spacing:.12em;cursor:pointer;}
.performance-inspector-close:hover{color:#F5F8FC;}
.pi-kicker{color:#AFA4FF;font:12px var(--font-mono);letter-spacing:.14em;margin-bottom:9px;}
.pi-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:13px;border-bottom:1px solid var(--border);}
.pi-symbol{color:#F5F8FC;font:30px var(--font-display);letter-spacing:.05em;line-height:1;}
.pi-name{color:var(--text2);font:12px var(--font-mono);margin-top:5px;}
.pi-price{color:#F5F8FC;font:24px var(--font-display);text-align:right;white-space:nowrap;}
.pi-price small{display:block;color:var(--dim);font:12px var(--font-mono);letter-spacing:.1em;margin-top:5px;}
.pi-chips{display:flex;flex-wrap:wrap;gap:5px;margin:11px 0;}
.pi-chips span{border:1px solid #2C3B4D;background:#0D151E;color:#AAB5C2;padding:3px 7px;font:12px var(--font-mono);letter-spacing:.08em;}
.pi-block{margin-top:10px;padding:12px;background:#0C131B;border:1px solid #1F2B38;}
.pi-block-title{color:#93A1B1;font:12px var(--font-mono);letter-spacing:.14em;margin-bottom:10px;}
.pi-chart{height:132px;background:#080D12;border:1px solid rgba(41,56,74,.55);}
.pi-chart svg{display:block;width:100%;height:100%;}
.pi-chart-wait{display:grid;place-items:center;height:100%;color:var(--dim);font:12px var(--font-mono);}
.pi-metrics{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:5px;margin-top:7px;}
.pi-metrics div{min-width:0;padding:7px 3px;text-align:center;background:#090F15;border:1px solid rgba(41,56,74,.55);}
.pi-metrics small{display:block;color:var(--dim);font:12px var(--font-mono);letter-spacing:.06em;white-space:nowrap;}
.pi-metrics b{display:block;margin-top:4px;font:12px var(--font-mono);}
.pi-growth{min-height:48px;}
.pi-kv{display:flex;justify-content:space-between;gap:14px;padding:7px 0;border-bottom:1px solid rgba(41,56,74,.55);font:12px var(--font-mono);}
.pi-kv span{color:var(--dim);}
.pi-kv b{color:#F5F8FC;text-align:right;}
.pi-kv b.owed{color:#FFB15C;}
.pi-copy{margin:8px 0 0;color:var(--text2);font:12px/1.55 var(--font-mono);}
.pi-copy.strong{color:#D9E0E8;}
.pi-meaning{border-left:2px solid #A855F7;}
.pi-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:10px;}
.pi-actions button{border:1px solid #334458;background:#0D151E;color:#C4CFDA;padding:9px;font:12px var(--font-mono);letter-spacing:.08em;cursor:pointer;}
.pi-actions button:first-child{border-color:rgba(58,210,159,.55);color:#6DE5B5;}
.pi-actions button:disabled{opacity:.48;cursor:default;}
.performance-lane-tabs{display:flex;flex-wrap:wrap;gap:7px;margin:10px 0 12px;padding:0 2px;}
.performance-lane-tabs[hidden]{display:none;}
.performance-lane-tabs button{appearance:none;border:1px solid #25313B;background:#0B1115;color:#82919D;border-radius:5px;padding:7px 10px;font:700 12px/1.15 var(--font-mono);letter-spacing:.09em;text-transform:uppercase;cursor:pointer;}
.performance-lane-tabs button:hover{border-color:#40627C;color:#D5E4EF;}
.performance-lane-tabs button.on{border-color:#347FAB;background:#102330;color:#E9F7FF;box-shadow:inset 0 0 0 1px rgba(57,155,211,.13);}
.performance-lane-tabs button span{color:#647580;margin-left:4px;}
#sec-performance .perf-source-slots{grid-template-columns:repeat(4,minmax(180px,1fr));}
#sec-performance .performance-ticker{
  position:relative;overflow:hidden;margin:0 0 12px;border:1px solid #26313A;border-radius:8px;
  background:linear-gradient(180deg,rgba(255,255,255,.018),transparent),#0C1115;
}
#sec-performance .performance-ticker::before,
#sec-performance .performance-ticker::after{
  content:"";position:absolute;z-index:2;top:0;bottom:0;width:42px;pointer-events:none;
}
#sec-performance .performance-ticker::before{left:0;background:linear-gradient(90deg,#0C1115,transparent);}
#sec-performance .performance-ticker::after{right:0;background:linear-gradient(270deg,#0C1115,transparent);}
#sec-performance .performance-ticker-track{
  display:flex;width:max-content;will-change:transform;animation:performance-ticker-roll 120s linear infinite;
}
#sec-performance .performance-ticker:hover .performance-ticker-track,
#sec-performance .performance-ticker:focus-within .performance-ticker-track{animation-play-state:paused;}
#sec-performance .performance-ticker-run{display:flex;align-items:center;gap:28px;padding:9px 28px 9px 0;}
#sec-performance .performance-ticker-item{
  color:#E7EEF3;display:inline-flex;align-items:baseline;gap:7px;white-space:nowrap;
  font:700 12px/1.2 var(--font-mono);letter-spacing:.02em;
}
#sec-performance .performance-ticker-role{
  border:1px solid #33414B;border-radius:999px;padding:2px 5px;color:#7D8D98;font-size:12px;letter-spacing:.10em;
}
#sec-performance .performance-ticker-item.want .performance-ticker-role{border-color:#5D3C72;color:#C88CFF;}
#sec-performance .performance-ticker-item b{font-family:var(--font-display);font-size:13px;letter-spacing:.06em;}
#sec-performance .performance-ticker-price{color:#8F9DA7;font-weight:600;}
#sec-performance .performance-ticker-move{font-variant-numeric:tabular-nums;}
#sec-performance .performance-ticker-move.up{color:#3AD29F;}
#sec-performance .performance-ticker-move.down{color:#FF667D;}
#sec-performance .performance-ticker-move.flat{color:#7D8A94;}
@keyframes performance-ticker-roll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
#sec-performance .ps-private{border-color:#443953;background:linear-gradient(145deg,rgba(52,34,67,.28),rgba(10,14,18,.25));}
#sec-performance .ps-private .ps-label{color:#C4A6DE;}
#sec-performance .ps-source-link{text-decoration:none;}
#sec-performance .uni-tbl{min-width:1380px;}
#sec-performance .uni-tbl.freeze-symbol-1 th:first-child,
#sec-performance .uni-tbl.freeze-symbol-1 td:first-child{
  width:205px;min-width:205px;max-width:205px;overflow:hidden;
}
#sec-performance .uni-tbl.freeze-symbol-1 td:first-child .earn-chip{
  margin-left:5px;padding:2px 4px;font-size:12px;letter-spacing:.045em;
}
#sec-performance .uni-tbl.freeze-symbol-1 td:first-child .u-nm{
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
#sec-performance .uni-tbl.freeze-symbol-1 th:first-child,
#sec-performance .uni-tbl.freeze-symbol-1 td:first-child{background:var(--bg2);}
#sec-performance .uni-tbl.freeze-symbol-1 th:first-child{background:var(--bg3);}
#sec-performance .uni-tbl.freeze-symbol-1 tr.own td:first-child{
  background:linear-gradient(rgba(122,18,32,.16),rgba(122,18,32,.16)),var(--bg2);
}
#sec-performance .uni-tbl.freeze-symbol-1 tr:hover td:first-child,
#sec-performance .pf-table.freeze-symbol-2 tr:hover td:nth-child(2){
  background:linear-gradient(rgba(255,255,255,.035),rgba(255,255,255,.035)),var(--bg2);
}
.performance-lane-label{display:inline-flex;align-items:center;white-space:nowrap;color:#8AA6B7;font:12px var(--font-mono);font-weight:750;letter-spacing:.07em;text-transform:uppercase;}
.performance-quality{display:inline-block;min-width:46px;color:#BFE8D0;font-weight:760;font-variant-numeric:tabular-nums;}
.performance-quality.owed{color:#56636C;font-weight:650;}
.performance-quality.negative{color:#E87A91;}
.performance-velocity{display:inline-flex;align-items:center;justify-content:center;min-width:48px;border:1px solid #293741;border-radius:999px;padding:3px 7px;font:780 12px/1 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;}
.performance-velocity.up{border-color:#285A43;background:#10261C;color:#65D39B;}
.performance-velocity.down{border-color:#633344;background:#28151C;color:#F07A98;}
.performance-velocity.flat{color:#8C9AA3;}
.performance-velocity.owed{border-color:#253039;color:#55626B;}
.performance-empty{padding:34px 18px!important;text-align:center!important;color:#758690!important;font-size:12px;letter-spacing:.08em;text-transform:uppercase;}
.pi-conversion{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:2px;border:1px solid #27333C;background:#0B1115;border-radius:7px;padding:13px 14px;}
.pi-conversion>div{border-left:2px solid #273842;padding:3px 8px;}
.pi-conversion small{display:block;color:#697984;font-size:12px;font-weight:750;letter-spacing:.11em;text-transform:uppercase;margin-bottom:5px;}
.pi-conversion .performance-quality,.pi-conversion .performance-velocity{font-size:13px;}
.pi-conversion-head{display:flex;align-items:baseline;justify-content:space-between;gap:14px;margin-bottom:10px;}
.pi-conversion-head b{color:#DFE9EF;font-size:12px;letter-spacing:.12em;text-transform:uppercase;}
.pi-conversion-head span{color:#63727C;font-size:12px;}
.pi-conversion-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;}
.pi-conversion-grid>div{border-left:2px solid #273842;padding:3px 8px;}
.pi-conversion-grid small{display:block;color:#697984;font-size:12px;font-weight:750;letter-spacing:.11em;text-transform:uppercase;margin-bottom:5px;}
.pi-conversion-grid strong{color:#DCEAF1;font-size:16px;font-variant-numeric:tabular-nums;}
.pi-conversion-copy{margin:10px 0 0;color:#667681;font-size:12px;line-height:1.45;}
@media(max-width:1200px){#sec-performance .perf-source-slots{grid-template-columns:repeat(2,minmax(180px,1fr));}}
@media(max-width:780px){#sec-performance .perf-source-slots{grid-template-columns:1fr}.pi-conversion,.pi-conversion-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pi-conversion-head{display:block}.pi-conversion-head span{display:block;margin-top:4px}}
@media(prefers-reduced-motion:reduce){#sec-performance .performance-ticker{overflow-x:auto}#sec-performance .performance-ticker-track{animation:none}}

@media(max-width:900px){
  .uni-guide{display:block;}
  .uni-guide>div{display:block;}
  .uni-guide b{display:block;margin-bottom:5px;}
  .uni-guide small{display:block;text-align:left;max-width:none;margin-top:7px;}
  .performance-inspector{top:54px;right:8px;bottom:8px;width:calc(100vw - 16px)!important;min-width:0;max-width:none;}
  .performance-inspector-resizer{display:none;}
  .pi-metrics{grid-template-columns:repeat(3,minmax(0,1fr));}
}
.wl-live-wrap{display:inline-flex;align-items:center;gap:6px;}
.quote-live-dot{width:7px;height:7px;border-radius:50%;background:#26C281;box-shadow:0 0 10px rgba(38,194,129,.8);animation:quotePulse 1.7s ease-in-out infinite;flex:0 0 auto;}
@keyframes quotePulse{0%,100%{opacity:.5;transform:scale(.82)}50%{opacity:1;transform:scale(1.08)}}
.market-lens{border:1px solid var(--border);background:linear-gradient(135deg,rgba(38,194,129,.045),rgba(82,155,255,.025));padding:16px;margin-bottom:18px;border-radius:10px;}
.market-lens-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;}
.market-lens-controls{display:flex;gap:8px;align-items:center;flex-wrap:wrap;}
.market-lens-controls input{background:var(--input-bg);border:1px solid var(--border);color:var(--text);padding:7px 10px;font:12px var(--font-mono);text-transform:uppercase;outline:none;width:95px;border-radius:9px;}
.market-lens-presets{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin-top:12px;}
.market-lens-preset{appearance:none;background:transparent;border:1px solid var(--border);border-radius:7px;color:#DCE5F1;padding:6px 9px;font:12px var(--font-mono);letter-spacing:.06em;cursor:pointer;}
.market-lens-preset:hover,.market-lens-preset.on{border-color:#8FC0FF;background:rgba(82,155,255,.11);color:#F5F8FC;}
.market-lens-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:14px 0;}
.market-lens-metric{background:var(--card);border:1px solid var(--border);padding:10px 12px;border-radius:9px;}
.market-lens-chart{border:1px solid var(--border);background:var(--bg2);min-height:270px;border-radius:10px;overflow:hidden;}
.market-lens-chart svg{display:block;width:100%;height:300px;}
.market-lens-legend{display:flex;gap:16px;flex-wrap:wrap;margin-top:9px;font:12px var(--font-mono);color:var(--dim);}
@media(max-width:700px){.market-lens-metrics{grid-template-columns:repeat(2,1fr)}.market-lens-chart{overflow-x:auto}.market-lens-chart svg{min-width:680px}}


#ps-toggle,#ps-panel,#ps-overlay{display:none!important;}
/* ═══ 🎨 PALETTE STUDIO PANEL (V10) — namespaced, no collisions ═══ */
#ps-toggle{
  position:fixed;left:18px;bottom:18px;z-index:9000;
  width:52px;height:52px;border-radius:50%;border:1px solid var(--border);
  background:var(--card);color:var(--text);font-size:22px;cursor:pointer;
  box-shadow:0 6px 24px rgba(0,0,0,.5);transition:transform .15s,border-color .15s;
}
#ps-toggle:hover{transform:scale(1.08);border-color:#529BFF;}
#ps-overlay{
  position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:9001;
  opacity:0;pointer-events:none;transition:opacity .25s;
}
#ps-overlay.on{opacity:1;pointer-events:auto;}
#ps-panel{
  position:fixed;top:0;left:0;height:100vh;width:330px;z-index:9002;
  background:var(--card);border-right:1px solid var(--border);
  transform:translateX(-340px);transition:transform .28s cubic-bezier(.2,.8,.2,1);
  overflow-y:auto;padding:18px 16px 40px;
  font-family:var(--font-body);
}
#ps-panel.on{transform:translateX(0);box-shadow:8px 0 40px rgba(0,0,0,.55);}
#ps-panel .ps-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;}
#ps-panel .ps-title{font-family:var(--font-display);font-size:16px;letter-spacing:1px;color:var(--text);}
#ps-panel .ps-title span{font-family:var(--font-mono);font-size:12px;color:var(--dim);letter-spacing:1px;}
#ps-panel .ps-x{background:none;border:none;color:var(--dim);font-size:16px;cursor:pointer;}
#ps-panel .ps-x:hover{color:var(--text);}
#ps-panel .ps-sec-lbl{font-family:var(--font-mono);font-size:12px;letter-spacing:1.5px;color:#529BFF;
  border-left:2px solid #529BFF;padding-left:8px;margin:18px 0 10px;text-transform:uppercase;}
#ps-panel .ps-presets{display:grid;grid-template-columns:1fr 1fr;gap:6px;}
#ps-panel .ps-preset{text-align:left;background:var(--card2);border:1px solid var(--border);
  border-radius:7px;padding:9px 10px;cursor:pointer;transition:border-color .15s,background .15s;}
#ps-panel .ps-preset:hover{border-color:#529BFF;}
#ps-panel .ps-preset.active{border-color:#26C281;background:rgba(38,194,129,.06);}
#ps-panel .ps-preset b{display:block;font-size:12px;color:var(--text);font-weight:600;letter-spacing:.3px;margin-bottom:2px;}
#ps-panel .ps-preset span{font-size:12px;color:var(--dim);font-family:var(--font-mono);}
#ps-panel .ps-reset{width:100%;margin-top:8px;background:var(--card2);border:1px solid var(--border);
  border-radius:7px;padding:10px;color:var(--text);font-family:var(--font-mono);font-size:12px;
  letter-spacing:1px;cursor:pointer;transition:border-color .15s;}
#ps-panel .ps-reset:hover{border-color:#529BFF;}
#ps-panel .ps-row{display:flex;align-items:center;gap:8px;margin-bottom:7px;}
#ps-panel .ps-row label{flex:1;font-size:12px;color:var(--text2);}
#ps-panel .ps-row input[type=color]{width:34px;height:28px;border:1px solid var(--border);border-radius:5px;
  background:none;cursor:pointer;padding:2px;}
#ps-panel .ps-row input[type=text]{width:84px;background:var(--input-bg);border:1px solid var(--border);
  border-radius:5px;color:var(--text);font-family:var(--font-mono);font-size:12px;padding:5px 7px;outline:none;}
#ps-panel .ps-font{display:flex;align-items:center;gap:8px;margin-bottom:8px;}
#ps-panel .ps-font label{flex:1;font-size:12px;color:var(--text2);}
#ps-panel .ps-font select{flex:1.2;background:var(--input-bg);border:1px solid var(--border);border-radius:5px;
  color:var(--text);font-size:12px;padding:6px 8px;outline:none;cursor:pointer;}
#ps-panel .ps-copy{width:100%;margin-top:18px;background:#529BFF;border:none;border-radius:7px;
  padding:11px;color:#04121c;font-weight:700;font-family:var(--font-mono);font-size:12px;letter-spacing:1px;cursor:pointer;}
#ps-panel .ps-copy:hover{filter:brightness(1.08);}
#ps-panel .ps-copy.done{background:#26C281;}
#ps-panel .ps-note{margin-top:12px;font-size:12px;color:var(--dim);font-family:var(--font-mono);line-height:1.5;text-align:center;}
@media(max-width:520px){#ps-panel{width:88vw;}}

/* ═══ POSITIONS · live portfolio workstation ═══ */
#sec-portfolio{background:#070a0e;}
#sec-portfolio .sec-inner.positions-only{max-width:none;padding:14px 18px 22px;}
.positions-workspace{overflow:hidden;background:#0a0e13;border:1px solid #29313b;border-radius:14px;box-shadow:0 18px 54px rgba(0,0,0,.28),inset 0 1px rgba(255,255,255,.025);}
.positions-header{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;padding:14px 18px 12px;background:linear-gradient(180deg,#10151c 0%,#0c1117 100%);border-bottom:1px solid #2a333e;}
.positions-kicker{font:700 12px/1.2 var(--font-mono);letter-spacing:.18em;color:#63a8e8;margin-bottom:5px;}
.positions-header h1{font:800 26px/1 Inter,Arial,sans-serif;letter-spacing:-.035em;color:#f6f8fb;margin:0;}
.positions-header p{font:500 12px/1.35 Inter,Arial,sans-serif;color:#7f8a97;margin:5px 0 0;}
.positions-header-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end;}
.positions-action{appearance:none;background:#131a22;border:1px solid #35404d;border-radius:6px;color:#dfe6ee;padding:8px 11px;font:700 12px/1 var(--font-mono);letter-spacing:.09em;cursor:pointer;transition:background .15s,border-color .15s,color .15s;}
.positions-action:hover{background:#1a2330;border-color:#6584a5;color:#fff;}
#sec-portfolio .positions-action.positions-copy-action{display:inline-flex!important;border-color:rgba(168,85,247,.72)!important;box-shadow:0 0 0 1px rgba(168,85,247,.18),0 0 14px rgba(168,85,247,.32)!important;}
#sec-portfolio .positions-action.positions-copy-action:hover{border-color:rgba(168,85,247,.9)!important;}
.positions-live-status{color:#8e99a6;border:1px solid #333d48;border-radius:6px;background:#10161d;padding:8px 10px;font:700 12px/1 var(--font-mono);letter-spacing:.09em;}
.positions-live-status.is-live{color:#4bd396;border-color:rgba(75,211,150,.45);background:rgba(35,126,89,.11);}
.positions-summary{display:grid;grid-template-columns:repeat(2,minmax(160px,1fr));gap:8px;padding:8px;background:#080c11;border-bottom:1px solid #242c35;}
.positions-summary-card{min-width:0;padding:8px 10px;border:1px solid #27313b;border-radius:8px;background:#0f141b;box-shadow:inset 0 1px rgba(255,255,255,.018);}
.positions-summary-card span{display:block;color:#727f8e;font:700 12px/1.1 var(--font-mono);letter-spacing:.11em;text-transform:uppercase;}
.positions-summary-card strong{display:block;margin-top:5px;color:#eef3f8;font:600 16px/1 Inter,Arial,sans-serif;letter-spacing:-.02em;}
.positions-summary-card small{display:block;margin-top:4px;color:#667381;font:600 12px/1.15 var(--font-mono);letter-spacing:.025em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.positions-summary-input{box-sizing:border-box;display:block;width:100%;height:23px;margin-top:2px;padding:0;border:0;border-bottom:1px solid #34404d;background:transparent;color:#eef3f8;outline:none;font:600 16px/1 Inter,Arial,sans-serif;letter-spacing:-.02em;}
.positions-summary-input:focus{border-bottom-color:#69a5d7;box-shadow:0 1px rgba(105,165,215,.18);}
.positions-table-wrap{overflow:auto;background:#090d12;scrollbar-color:#34414e #0a0e13;scrollbar-width:thin;}
.positions-table-wrap::-webkit-scrollbar{height:10px;width:10px}.positions-table-wrap::-webkit-scrollbar-track{background:#0a0e13}.positions-table-wrap::-webkit-scrollbar-thumb{background:#34414e;border:2px solid #0a0e13;border-radius:10px;}
.positions-table-actions{display:flex;justify-content:flex-end;padding:10px 0 2px;}
.positions-table{width:100%;min-width:3265px;border-collapse:separate;border-spacing:0;table-layout:fixed;font-family:Inter,Arial,sans-serif;}
.positions-table th{position:sticky;top:0;z-index:1;height:28px;padding:0 9px;border-right:1px solid #26303a;border-bottom:1px solid #36414c;background:#11171f;color:#8e99a7;text-align:left;white-space:nowrap;font-size:12px;font-weight:750;letter-spacing:.055em;text-transform:uppercase;}
.positions-sort-button{appearance:none;display:flex;align-items:center;gap:6px;width:100%;height:28px;margin:0;padding:0;border:0;background:transparent;color:inherit;font:inherit;letter-spacing:inherit;text-align:left;text-transform:inherit;cursor:pointer;transition:color .15s;}
.positions-table th.num .positions-sort-button{justify-content:flex-end;text-align:right;}
.positions-sort-button:hover,.positions-sort-button:focus-visible{color:#f2f6fa;outline:none;}
.positions-sort-button:focus-visible{box-shadow:inset 0 -2px #69a5d7;}
.positions-sort-arrow{display:inline-block;min-width:9px;color:#53606e;font-size:12px;line-height:1;}
.positions-sort-arrow::before{content:'↕';}
.positions-table th[aria-sort="ascending"] .positions-sort-arrow,.positions-table th[aria-sort="descending"] .positions-sort-arrow{color:#7fb5e4;}
.positions-table th[aria-sort="ascending"] .positions-sort-arrow::before{content:'▲';}
.positions-table th[aria-sort="descending"] .positions-sort-arrow::before{content:'▼';}
.positions-table th:nth-child(1){width:125px}.positions-table th:nth-child(2){width:190px}.positions-table th:nth-child(3){width:82px}.positions-table th:nth-child(4){width:106px}.positions-table th:nth-child(5){width:92px}.positions-table th:nth-child(6){width:88px}.positions-table th:nth-child(7){width:118px}.positions-table th:nth-child(8){width:104px}.positions-table th:nth-child(9){width:120px}.positions-table th:nth-child(10){width:104px}.positions-table th:nth-child(11){width:100px}.positions-table th:nth-child(12){width:130px}.positions-table th:nth-child(13){width:300px}.positions-table th:nth-child(14){width:112px}.positions-table th:nth-child(15){width:106px}.positions-table th:nth-child(16){width:90px}.positions-table th:nth-child(17){width:110px}.positions-table th:nth-child(18){width:120px}.positions-table th:nth-child(19){width:180px}.positions-table th:nth-child(20){width:110px}.positions-table th:nth-child(21){width:116px}.positions-table th:nth-child(22){width:120px}.positions-table th:nth-child(23){width:138px}.positions-table th:nth-child(24){width:auto;min-width:250px}
.positions-table th.num,.positions-table td.num{text-align:right;}
.positions-table td{box-sizing:border-box;height:46px;padding:0 9px;border-right:1px solid #202831;border-bottom:1px solid #242d36;background:#0b1016;color:#e5ebf1;white-space:nowrap;font-size:12px;font-weight:400;transition:background .12s;}
.position-growth-cell{padding-top:4px!important;padding-bottom:4px!important;}
.positions-table tbody tr:nth-child(even) td{background:#0e141b;}
.positions-table tbody tr:hover td{background:#151d26;}
.positions-table thead th:first-child{
  left:0;z-index:4;background:#11171f;box-shadow:7px 0 12px rgba(0,0,0,.38);
}
.positions-table tbody td:first-child{
  position:sticky;left:0;z-index:2;background:#0b1016;box-shadow:7px 0 12px rgba(0,0,0,.38);
}
.positions-table tbody tr:nth-child(even) td:first-child{background:#0e141b;}
.positions-table tbody tr:hover td:first-child{background:#151d26;}
.positions-table tfoot td{position:sticky;bottom:0;z-index:2;height:32px;padding:0 9px;border-right:1px solid #2b3540;border-top:1px solid #485664;background:#151c25;color:#eef3f8;white-space:nowrap;font-size:12px;font-weight:750;box-shadow:0 -5px 14px rgba(0,0,0,.34);}
.positions-table tfoot td:first-child{left:0;z-index:4;letter-spacing:.07em;text-transform:uppercase;box-shadow:7px -5px 14px rgba(0,0,0,.42);}
.positions-table th:last-child,.positions-table td:last-child{border-right:0;}
html.dc-professional body #sec-portfolio .positions-workspace[data-positions-view="compact"][data-positions-fit] .positions-table{width:100%!important;min-width:0!important;table-layout:fixed!important;}
html.dc-professional body #sec-portfolio .positions-workspace[data-positions-view="compact"][data-positions-fit] .positions-table :is(th,td){padding-inline:6px!important;}
html.dc-professional body #sec-portfolio .positions-workspace[data-positions-view="compact"][data-positions-fit] .positions-table :is(th[data-position-sort="fwdPE"],td:has(>.position-feed-value)){padding-inline-end:18px!important;}
html.dc-professional body #sec-portfolio .positions-workspace[data-positions-view="compact"][data-positions-fit] .positions-table :is(th.position-detail-column,.position-main-row>td.position-detail-column){display:none!important;}
html.dc-professional body #sec-portfolio .positions-workspace[data-positions-view="compact"][data-positions-fit] .positions-table :is(th,.position-main-row>td){overflow:hidden;text-overflow:ellipsis;}
html.dc-professional body #sec-portfolio .positions-workspace[data-positions-view="compact"][data-positions-fit] .positions-sort-button{min-width:0;overflow:hidden;}
html.dc-professional body #sec-portfolio .positions-workspace[data-positions-view="compact"][data-positions-fit] .position-feed-compact{display:block!important;overflow:hidden;text-overflow:ellipsis;}
.position-symbol-code{display:inline-flex;align-items:center;gap:9px;color:#f6f8fb;font-weight:500;letter-spacing:.02em;}
.position-symbol-code img,.position-symbol-code .symbol-logo{width:18px!important;height:18px!important;border-radius:50%!important;object-fit:contain!important;flex:0 0 18px!important;box-shadow:0 0 0 1px rgba(255,255,255,.06);}
.position-basis-story,.position-core-return{display:block;margin-top:4px;color:#8fb7e1;font:650 12px/1.25 var(--font-mono);letter-spacing:.035em;white-space:nowrap;}
.position-core-return{color:#42cf8d;text-align:right;}
.position-company{color:#a2adba!important;font-weight:400!important;overflow:hidden;text-overflow:ellipsis;}
.position-price,.position-ath{color:#f7f9fb!important;font-weight:500!important;}
.position-earnings{color:#aab6c4!important;font:650 12px/1.2 var(--font-mono);letter-spacing:.01em;}
.position-positive{color:#42cf8d!important}.position-negative{color:#f05d73!important}.position-flat{color:#8b97a5!important}.position-market-value{color:#f7f9fb!important;font-weight:500!important}.position-weight{color:#8fb7e1!important}.position-analyst{color:#c1cad4!important;}
.position-dca-cell{font-family:var(--font-mono);font-size:12px!important;font-weight:750!important;letter-spacing:.015em;line-height:1.15;}
.position-dca-cell span,.position-dca-cell small{display:block}.position-dca-cell small{margin-top:3px;font-size:12px;letter-spacing:.07em;}
.position-dca-cell.is-wait{color:#7f8b98!important}.position-dca-cell.is-watch{color:#c69bff!important}.position-dca-cell.is-review{color:#c69bff!important}.position-dca-cell.is-external{color:#65717e!important}
.position-alert-cell{text-align:center!important}
.position-alerts-head,.position-alerts-head .positions-sort-button{text-align:center!important}.position-alerts-head .positions-sort-button{justify-content:center}
.position-alert-button{position:relative;display:inline-flex;align-items:center;justify-content:center;width:34px;height:28px;padding:0;border:1px solid transparent;border-radius:6px;background:transparent;color:#718091;cursor:pointer;transition:background .15s,border-color .15s,color .15s;}
.position-alert-button:hover,.position-alert-button:focus-visible{border-color:#465466;background:#111923;color:#edf4fb;outline:none;}
.position-alert-bell{font-size:15px;line-height:1;filter:grayscale(1);opacity:.34;}
.position-alert-button.has-alerts{border-color:rgba(94,169,232,.34);background:rgba(94,169,232,.08);}
.position-alert-button.has-alerts .position-alert-bell{filter:none;opacity:1;}
.position-alert-count{position:absolute;right:-5px;top:-4px;display:grid;place-items:center;min-width:15px;height:15px;padding:0 3px;border:1px solid #090d12;border-radius:8px;background:#ef5268;color:#fff;font:800 12px/1 var(--font-mono);}
.position-thesis-head,.position-thesis-head .positions-sort-button{text-align:center!important}.position-thesis-head .positions-sort-button{justify-content:center}
.position-thesis-cell{text-align:center!important}
.position-thesis-button{position:relative;display:inline-flex;min-width:98px;min-height:27px;align-items:center;justify-content:center;gap:6px;padding:0 7px;border:1px solid currentColor;border-radius:5px;background:transparent;font:800 12px/1.1 var(--font-mono);letter-spacing:.06em;cursor:pointer;transition:filter .15s,background .15s}
.position-thesis-button::before{width:6px;height:6px;flex:0 0 6px;border-radius:50%;background:currentColor;content:''}
.position-thesis-button:hover,.position-thesis-button:focus-visible{filter:brightness(1.2);outline:none}
.position-thesis-button.is-intact{color:#42cf8d;background:rgba(66,207,141,.075)}
.position-thesis-button.is-watch{color:#b690f7;background:rgba(182,144,247,.075)}
.position-thesis-button.is-amended{color:#69a9df;background:rgba(105,169,223,.075)}
.position-thesis-button.is-probation{color:#f0ae59;background:rgba(240,174,89,.075)}
.position-thesis-date{display:block;margin-top:2px;color:#acb7c4;font:700 12px/1.3 var(--font-mono);white-space:nowrap}
.position-thesis-button.is-review-owed{color:#8995a2;background:rgba(137,149,162,.07)}
.position-thesis-button.is-broken{color:#f05d73;background:rgba(240,93,115,.075)}
.position-thesis-button.has-ungraded{min-height:30px;flex-direction:column;gap:2px;padding:2px 7px 2px 15px;box-shadow:0 0 0 1px rgba(82,155,255,.18)}
.position-thesis-button.has-ungraded::before{position:absolute;left:6px;top:calc(50% - 3px)}
.position-thesis-ungraded{white-space:nowrap;color:#78adf3;font:800 12px/1 var(--font-mono);letter-spacing:.075em}
.position-valuation-head,.position-valuation-head .positions-sort-button{text-align:left!important}.position-valuation-head .positions-sort-button{justify-content:flex-start}
.position-valuation-cell{padding-top:5px!important;padding-bottom:5px!important;}
.position-valuation-button{display:flex;width:100%;min-height:35px;flex-direction:column;align-items:flex-start;justify-content:center;gap:3px;padding:5px 7px;border:1px solid #2b3948;border-radius:6px;background:#0a1118;color:#a8b5c3;text-align:left;cursor:pointer;transition:border-color .15s,background .15s;}
.position-valuation-button:hover,.position-valuation-button:focus-visible{border-color:#6e58a9;background:#111322;outline:none;}
.position-valuation-button b{color:var(--dc-text);font:600 12px/1.15 var(--dc-number-font);letter-spacing:0;white-space:normal;}
.valuation-range{display:block;max-width:100%;color:var(--dc-text);font:600 12px/1.3 var(--dc-number-font);white-space:normal;overflow-wrap:anywhere}
.position-valuation-button small{color:var(--dc-muted);font:600 12px/1.15 var(--dc-word-font);white-space:normal;}
/* Portfolio only: keep long explanations from setting the height of every cell.
   Full text remains in the button, its tooltip and the valuation panel. */
.positions-table .position-valuation-cell{padding-top:3px!important;padding-bottom:3px!important;}
.positions-table .position-valuation-button{box-sizing:border-box;min-width:0;min-height:32px;gap:2px;padding:3px 5px;}
.positions-table .position-valuation-button b,.positions-table .position-valuation-button small{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.positions-table .position-valuation-button b{font-size:12px;}
.position-valuation-button.is-auto{border-color:color-mix(in srgb,var(--dc-violet) 30%,var(--dc-line));background:color-mix(in srgb,var(--dc-violet) 7%,var(--dc-card));}
.position-valuation-button.is-draft{border-color:rgba(182,144,247,.38);background:rgba(95,68,142,.10)}
.position-valuation-button.is-live{border-color:rgba(66,207,141,.32);background:rgba(66,207,141,.055)}
.position-valuation-button.is-stale{border-color:rgba(240,93,115,.42);background:rgba(240,93,115,.065)}
.position-valuation-button.is-stale b{color:#f27b8e}
.position-feed-value,.position-estimate-date{color:var(--dc-text)!important;font:600 12px/1.15 var(--dc-number-font)!important;font-variant-numeric:tabular-nums;}
.position-feed-value.is-muted,.position-estimate-date.is-muted{color:var(--dc-muted)!important;}
.position-owner-sketch-head small{color:#657382;font:700 12px/1 var(--font-mono);letter-spacing:.06em;}
.position-alert-tooltip{position:fixed;z-index:10000;width:min(380px,calc(100vw - 24px));padding:10px;border:1px solid #465466;border-radius:7px;background:#0b1016;color:#e8edf3;box-shadow:0 16px 38px rgba(0,0,0,.62);pointer-events:none;}
.position-alert-tooltip[hidden]{display:none;}
.position-alert-tooltip-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:1px 2px 8px;border-bottom:1px solid #28323d;}
.position-alert-tooltip-head strong{color:#f5f8fb;font:800 12px/1 var(--font-mono);letter-spacing:.08em;}
.position-alert-tooltip-head span{color:#8492a1;font:700 12px/1 var(--font-mono);letter-spacing:.1em;}
.position-alert-tooltip-item{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:6px 8px;padding:9px 2px;border-bottom:1px solid #202831;}
.position-alert-tooltip-item .position-analyst-event{margin:1px 0 0;}
.position-alert-tooltip-item>span{color:#e6ebf1;font:400 12px/1.35 Inter,Arial,sans-serif;}
.position-alert-tooltip-item>small{grid-column:2;color:#7f8c9a;font:600 12px/1.25 var(--font-mono);}
.position-alert-tooltip-more{padding:8px 2px 1px;color:#8fb7e1;font:650 12px/1.2 var(--font-mono);letter-spacing:.04em;}
.position-velocity-flash,.performance-velocity-flash{display:inline-block;color:#c88cff!important;background:rgba(168,85,247,.14);border:1px solid rgba(168,85,247,.45);border-radius:4px;padding:2px 6px;animation:positionVelocity 2.2s ease-in-out infinite;}
@keyframes positionVelocity{0%,100%{box-shadow:0 0 0 rgba(168,85,247,0)}50%{box-shadow:0 0 14px rgba(168,85,247,.65)}}
@media (prefers-reduced-motion:reduce){.position-velocity-flash,.performance-velocity-flash{animation:none}}
.position-target-input,.position-note-input{box-sizing:border-box;width:100%;height:23px;border:1px solid #303b47;border-radius:5px;background:#080c11;color:#eef3f8;outline:none;font:400 12px/1 Inter,Arial,sans-serif;transition:border-color .15s,background .15s;}
.position-target-input{padding:0 9px;text-align:right;font-family:var(--font-mono);}
.position-note-input{padding:0 10px;color:#bdc6d0;font-weight:400;}
.position-target-input:focus,.position-note-input:focus{border-color:#5a8fbd;background:#0d141c;box-shadow:0 0 0 2px rgba(74,141,197,.09);}
.position-target-input::placeholder,.position-note-input::placeholder{color:#4f5b68;}
.positions-footnote{padding:7px 18px;background:#0b1016;color:#647180;border-top:1px solid #242d36;font:500 12px/1.35 Inter,Arial,sans-serif;}
.positions-dip-lens{scroll-margin-top:18px;border-top:1px solid #33404c;background:linear-gradient(180deg,#0c1219 0%,#080d12 100%);}
.positions-dip-lens>.sec-inner{max-width:none;margin:0;padding:18px;}
.positions-dip-lens .grid-2{align-items:start;}
.positions-dip-lens .panel{border:1px solid #2a3541!important;border-radius:10px!important;background:#0b1016!important;box-shadow:none!important;overflow:hidden;}
.positions-dip-lens .dip-context-panel{border-left:1px solid #2a3541!important;background:linear-gradient(145deg,rgba(82,155,255,.055),#0b1016 50%)!important;}
.positions-dip-lens .dip-context-principles{gap:9px!important;}
.positions-dip-lens .dip-context-chip{border-color:#303b47!important;border-radius:8px!important;background:#0e151d!important;}
.positions-dip-lens select,.positions-dip-lens input{box-sizing:border-box;border-radius:7px!important;background:#080d12!important;}
.positions-dip-lens .dip-number-field{border-color:#303b47!important;border-radius:7px!important;background:#080d12!important;overflow:hidden;}
.positions-dip-lens .dip-number-field input{border-radius:0!important;}
.positions-dip-lens .dip-quick button{min-width:52px;border-color:#35414e!important;border-radius:7px!important;background:#111922!important;color:#cbd5df!important;box-shadow:none!important;}
.positions-dip-lens .dip-quick button:hover{border-color:#6e7f91!important;background:#182330!important;color:#fff!important;}
.positions-dip-lens .dip-scenario-highlight{border-color:rgba(175,164,255,.32)!important;border-radius:9px!important;background:linear-gradient(135deg,rgba(175,164,255,.12),rgba(82,155,255,.055))!important;}
.positions-dip-lens .dip-scenario-highlight #dc-target-price{color:#afa4ff!important;}
.positions-dip-lens .dip-scenario-table-wrap{border:1px solid #283440;border-radius:9px;background:#080d12;overflow:auto!important;}
.positions-dip-lens .dip-scenario-table{border-collapse:separate!important;border-spacing:0;}
.positions-dip-lens .dip-scenario-table th{background:#0e151d;}
.positions-dip-lens .dip-scenario-table th:first-child{border-radius:8px 0 0 0;}
.positions-dip-lens .dip-scenario-table th:last-child{border-radius:0 8px 0 0;}
.positions-dip-lens .dip-scenario-row:last-child td{border-bottom:0!important;}
.positions-dip-lens .dip-scenario-row.is-selected{background:rgba(175,164,255,.075)!important;}
.positions-dip-lens .dip-scenario-pill{display:inline-block;border-radius:6px;white-space:nowrap;}
.dc-context-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:14px;padding-top:12px;border-top:1px solid #28323d;}
.dc-context-grid>div{min-width:0;padding:8px;border:1px solid #27323d;border-radius:7px;background:#090e14;}
.dc-context-grid small{display:block;color:#697887;font:700 12px/1.2 var(--font-mono);letter-spacing:.1em;}
.dc-context-grid strong{display:block;overflow:hidden;margin-top:5px;color:#e8eef5;font:700 12px/1.2 var(--font-mono);text-overflow:ellipsis;white-space:nowrap;}
.positions-dip-lens .dc-context-grid strong{overflow:visible;text-overflow:clip;white-space:normal;}
.positions-headlines{background:#090d12;border-top:1px solid #2a333e;}
.positions-headlines-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;padding:14px 18px 11px;background:#0c1117;}
.positions-headlines-kicker{margin:0 0 5px;color:#63a8e8;font:700 12px/1.2 var(--font-mono);letter-spacing:.16em;}
.positions-headlines h2{margin:0;color:#f3f6fa;font:800 18px/1 Inter,Arial,sans-serif;letter-spacing:-.025em;}
.positions-headlines-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;}
#positionsHeadlinesStatus{color:#6f7c8b;font:600 12px/1.2 var(--font-mono);letter-spacing:.04em;}
#positionsHeadlinesStatus.is-live{color:#45cc8b;}
#positionsHeadlinesStatus.is-error{color:#ef667a;}
.positions-headlines-list{border-top:1px solid #242d36;}
.positions-headline-row{display:grid;grid-template-columns:104px minmax(0,1fr) 150px 52px;align-items:center;gap:14px;min-height:38px;padding:0 18px;border-bottom:1px solid #202831;background:#0a0f15;color:inherit;text-decoration:none;transition:background .12s;}
.positions-headline-row:nth-child(even){background:#0d131a;}
.positions-headline-row:hover{background:#151d26;}
.positions-headline-symbol{display:flex;align-items:center;gap:8px;min-width:0;color:#dfe7ef;font:600 12px/1 var(--font-mono);letter-spacing:.04em;}
.positions-headline-symbol .dc-symbol-logo{width:20px!important;height:20px!important;flex:0 0 20px!important;}
.positions-headline-title{min-width:0;overflow:hidden;color:#e8edf3;font:300 12px/1.35 Inter,Arial,sans-serif;text-overflow:ellipsis;white-space:nowrap;}
.positions-headline-source,.positions-headline-age{overflow:hidden;color:#758291;font:400 12px/1.2 var(--font-mono);text-overflow:ellipsis;white-space:nowrap;}
.positions-headline-age{text-align:right;color:#8c98a6;}
.position-analyst-event{display:inline-block;margin-right:6px;padding:3px 5px;border:1px solid #3a4654;border-radius:4px;color:#b9c7d6;font:800 12px/1 var(--font-mono);letter-spacing:.06em;vertical-align:middle;}
.position-analyst-event.positive{border-color:rgba(66,207,141,.42);background:rgba(66,207,141,.09);color:#4bd396;}
.position-analyst-event.risk{border-color:rgba(240,93,115,.42);background:rgba(240,93,115,.09);color:#f16d81;}
.position-analyst-event.watch{border-color:rgba(198,155,255,.42);background:rgba(198,155,255,.09);color:#cfadff;}
.positions-headline-empty{padding:18px;color:#687584;font:600 12px/1.4 Inter,Arial,sans-serif;}
@media(max-width:1350px){.positions-summary{grid-template-columns:repeat(2,minmax(160px,1fr));}}
@media(max-width:900px){#sec-portfolio .sec-inner.positions-only{padding:14px}.positions-header{align-items:flex-start;flex-direction:column}.positions-header-actions{justify-content:flex-start}.positions-summary{grid-template-columns:1fr}.positions-table td{height:44px}.positions-headlines-head{align-items:flex-start;flex-direction:column}.positions-headlines-actions{justify-content:flex-start}.positions-headline-row{grid-template-columns:88px minmax(0,1fr) 44px;gap:10px;padding:7px 14px}.positions-headline-source{display:none}.positions-headline-title{white-space:normal}.positions-headline-age{text-align:right}.dc-context-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.positions-dip-lens>.sec-inner{padding:14px}}
@media(max-width:900px){.positions-dip-lens .dip-context-principles{grid-template-columns:1fr!important}.positions-dip-lens .dip-scenario-highlight{align-items:flex-start!important;flex-direction:column;gap:12px}.positions-dip-lens .dip-scenario-highlight>div:last-child{text-align:left!important}}

/* ═══════════════════════════════════════════════════════════════
   APP SHELL — one scroll surface on desktop.
   Revert by deleting this block. The viewport grid measures the
   real header automatically; no guessed chrome height is required.
   ═══════════════════════════════════════════════════════════════ */
@media(min-width:640px){
  html,
  body{
    height:100%;
  }

  body{
    height:100vh;
    height:100dvh;
    min-height:0;
    overflow:hidden;
    grid-template-rows:auto minmax(0,1fr);
  }

  .master-hdr{
    grid-row:1;
  }

  .master-nav{
    grid-row:2;
    top:auto;
    height:auto;
    min-height:0;
    position:relative;
    overscroll-behavior:contain;
  }

  body>.msec{
    grid-column:2;
    grid-row:2;
    height:auto;
    min-height:0;
  }

  body>.msec.on{
    overflow-x:hidden;
    overflow-y:auto;
    overscroll-behavior:contain;
    scrollbar-color:#34414e #0b0e11;
    scrollbar-width:thin;
  }

  body>.msec.on::-webkit-scrollbar{
    width:10px;
    height:10px;
  }

  body>.msec.on::-webkit-scrollbar-track{
    background:#0b0e11;
  }

  body>.msec.on::-webkit-scrollbar-thumb{
    background:#34414e;
    border:2px solid #0b0e11;
    border-radius:10px;
  }

  /* Direct iframe workspaces: caption plus one fitted app viewport. */
  #sec-builder.on,
  #sec-roster.on,
  #sec-knight.on,
  #sec-intel.on,
  #sec-compare.on,
  #sec-techreset.on,
  #sec-wire.on,
  #sec-desk.on,
  #sec-stateroom.on,
  #sec-nightwatch.on,
  #sec-tools.on,
  #sec-perspective.on,
  #sec-roadmap.on,
  #sec-multiple.on{
    display:grid;
    grid-template-rows:auto minmax(0,1fr);
    overflow:hidden;
  }

  /* Wire, Wantlist and State Room have no workspace caption above their iframe.
     Give their only child the full fitted workspace row. */
  #sec-wire.on,
  #sec-desk.on,
  #sec-stateroom.on,
  #sec-multiple.on{
    grid-template-rows:minmax(0,1fr);
  }

  body .workspace-frame{
    width:100%;
    height:100%;
    min-height:0;
  }

  /* Margin Maker reports its document height to the shell. The shell remains
     the sole vertical scroll region; the iframe never owns a scrollbar. */
  #sec-marginmaker.on{
    display:block;
    overflow-x:hidden;
    overflow-y:auto;
  }

  #marginMakerWorkspaceFrame{
    display:block;
    width:100%;
    height:760px;
    min-height:0;
    border:0;
  }

  /* Nested embed workspaces use the same single fitted viewport. */
  #sec-tripthreat.on,
  #sec-bubble.on{
    overflow:hidden;
  }

  #sec-tripthreat .sec-inner,
  #sec-bubble .sec-inner{
    display:grid;
    grid-template-rows:auto minmax(0,1fr);
    height:100%;
    min-height:0;
  }

  body .embed-frame{
    width:100%;
    height:100%;
    min-height:0;
  }
}

/* The Scales reports its content height; the shell owns vertical scrolling. */
#sec-scales.on{display:block;overflow-x:hidden;overflow-y:auto;overflow-anchor:none}
#scalesWorkspaceFrame{display:block;width:100%;height:780px;min-height:0;border:0}

.archived-snapshot-shell{min-height:100%;background:#0B0E11}
.archived-snapshot-shell>summary{display:flex;align-items:center;justify-content:center;min-height:58px;margin:14px;padding:13px 16px;border:1px solid #303842;border-radius:6px;background:#14181E;color:#a8b3bf;cursor:pointer;font:700 12px var(--font-mono);letter-spacing:.13em;list-style:none}
.archived-snapshot-shell>summary::-webkit-details-marker{display:none}
.archived-snapshot-shell>summary::after{content:'OPEN';margin-left:14px;color:#529BFF}
.archived-snapshot-shell[open]>summary::after{content:'CLOSE'}
.archived-snapshot-body{border-top:1px solid #242b33}

/* One quiet scrollbar language across the shell and every resizable rail. */
*{
  scrollbar-width:thin!important;
  scrollbar-color:#242B33 #0B0E11!important;
}
*::-webkit-scrollbar{width:10px!important;height:10px!important;display:block!important}
*::-webkit-scrollbar-track{background:#0B0E11!important}
*::-webkit-scrollbar-corner{background:#0B0E11!important}
*::-webkit-scrollbar-thumb{background:#242B33!important;border-radius:6px!important;border:2px solid #0B0E11!important}
*::-webkit-scrollbar-thumb:hover{background:#343E49!important}

/* The master navigation still scrolls with the mouse wheel, trackpad and
   keyboard. Its permanent bar only steals visual width from the labels. */
.master-nav{scrollbar-width:none!important;-ms-overflow-style:none}
.master-nav::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}

/* Earnings War Room: calm evidence surface, not a bordered presentation deck. */
#sec-warroom .sec-inner{max-width:1500px;padding-top:20px}
#sec-warroom .wr-page-title{color:#F5F8FC;font:800 22px/1.1 var(--font-body);letter-spacing:-.025em}
#sec-warroom .wr-page-sub{margin:7px 0 16px;color:#98A5B3;font:700 12px/1.5 var(--font-mono);letter-spacing:.11em}
#sec-warroom .panel{border:0;background:#10151B;box-shadow:none;border-radius:8px}
#sec-warroom .wr-input-panel{padding:16px 18px}
#sec-warroom .wr-verdict{margin:14px 0 10px;padding:17px 20px;border:0;border-radius:8px;background:#10151B}
#sec-warroom .wr-verdict-top{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;flex-wrap:wrap}
#sec-warroom .wr-kicker{color:#8794A2;font:700 12px/1.4 var(--font-mono);letter-spacing:.13em;text-transform:uppercase}
#sec-warroom .wr-verdict-name{margin-top:5px;color:var(--wr-tone);font:800 27px/1.05 var(--font-body);letter-spacing:-.025em}
#sec-warroom .wr-verdict-action{text-align:right}
#sec-warroom .wr-verdict-action strong{display:block;margin-top:5px;color:#F5F8FC;font:750 19px/1.1 var(--font-body);letter-spacing:.01em}
#sec-warroom .wr-verdict-copy{max-width:960px;margin-top:11px;color:#B9C2CC;font-size:13px;line-height:1.55}
#sec-warroom .wr-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(205px,1fr));gap:8px;margin-bottom:10px}
#sec-warroom .wr-metric{min-height:124px;padding:14px;background:#11171E;border:0;border-radius:7px;box-shadow:inset 0 2px 0 var(--wr-tone)}
#sec-warroom .wr-metric-label{color:#8794A2;font:700 12px/1.3 var(--font-mono);letter-spacing:.12em}
#sec-warroom .wr-metric-value{margin-top:8px;color:var(--wr-tone);font:750 23px/1.08 var(--font-body);letter-spacing:-.015em}
#sec-warroom .wr-metric-lines{margin-top:9px;color:#B5C0CB;font:500 12px/1.6 var(--font-mono)}
#sec-warroom .wr-carry{margin-top:8px;padding:15px 18px}
#sec-warroom .wr-carry-line{color:#F5F8FC;font:650 16px/1.5 var(--font-body)}
#sec-warroom .wr-carry-note{margin-top:10px;color:#7F8C99;font:650 12px/1.6 var(--font-mono);letter-spacing:.04em}
@media(max-width:700px){#sec-warroom .wr-verdict-action{text-align:left}#sec-warroom .wr-metrics{grid-template-columns:1fr}}

/* Sep 6 readability floor for live tape and Matrix decision facts. */
body.dragon .m-hi.market-cell .m-hl{font-size:12px}
body.dragon .m-hi.market-cell .m-hv{font-size:12px}
body.dragon .m-hi.market-cell .m-hc{font-size:12px}
body.dragon .m-hi.next-er .m-hl{font-size:12px}
body.dragon .m-hi.next-er .m-hv{font-size:12px}
.matrix-zone-sub,.matrix-zone-move{font-size:12px}
.matrix-zone-move b,.matrix-zone-move small,.matrix-zone-fact small{font-size:12px}
.matrix-zone-priced-in em{font-size:12px}
.matrix-zone-card .zone-decision-stage span{color:var(--dc-muted);font-size:12px}
.matrix-zone-card .zone-decision-stage em{color:var(--dc-muted);font-size:12px}
