:root{color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#07090d;color:#eef4f1;font-synthesis:none;text-rendering:geometricPrecision;--panel: #10151b;--panel-2: #151c24;--line: #28333d;--muted: #94a39d;--text: #eef4f1;--green: #40d89a;--red: #f06464;--amber: #f4bf5f;--steel: #7eb7ff}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:linear-gradient(90deg,rgba(64,216,154,.05) 1px,transparent 1px),linear-gradient(180deg,rgba(244,191,95,.04) 1px,transparent 1px),#07090d;background-size:44px 44px}button,input,select{font:inherit}button{color:inherit}.app-shell{width:min(1720px,100%);margin:0 auto;padding:18px}.loading{min-height:100vh;display:grid;place-items:center;gap:12px;color:var(--muted)}.spin{animation:spin 1.2s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.topbar{min-height:76px;display:grid;grid-template-columns:minmax(250px,1fr) auto minmax(260px,1fr);gap:16px;align-items:center;border-bottom:1px solid var(--line);padding-bottom:16px}.brand-block{display:flex;align-items:center;gap:12px;min-width:0}.brand-mark{width:44px;height:44px;border:1px solid #5d6f6c;display:grid;place-items:center;background:#0c1115;color:var(--green);font-weight:800}h1,h2,h3,p{margin:0}h1{font-size:22px;line-height:1.1}.brand-block span{display:block;color:var(--muted);font-size:13px;margin-top:4px}.tabs{display:inline-flex;border:1px solid var(--line);background:#0b1014}.tabs button{height:40px;display:inline-flex;gap:7px;align-items:center;border:0;border-right:1px solid var(--line);background:transparent;padding:0 14px;cursor:pointer}.tabs button:last-child{border-right:0}.tabs button.active{color:#07100d;background:var(--green)}.vitals{justify-self:end;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;color:#cbd8d4;font-size:13px}.vitals span{min-height:30px;display:inline-flex;align-items:center;gap:5px;border:1px solid var(--line);background:#0d1217;padding:5px 9px}.vital-button,.secondary-action,.ghost-action{min-height:34px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line);background:#0d1217;color:#dce7e3;padding:0 11px;cursor:pointer;font-weight:800}.vital-button{font-size:13px}.ghost-action{background:transparent}.watchlist{display:grid;grid-template-columns:repeat(11,minmax(132px,1fr));gap:10px;margin:18px 0}.asset-card,.surface{background:#10151bf5;border:1px solid var(--line)}.asset-card{min-height:172px;padding:12px;overflow:hidden}.asset-card__top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.asset-card strong{display:block;font-size:16px}.asset-card span{color:var(--muted);font-size:12px;text-transform:capitalize}.asset-price{margin-top:16px;font-size:21px;font-weight:800;white-space:nowrap}.asset-meta{display:flex;justify-content:space-between;gap:8px;margin:8px 0 5px}.asset-source-line{min-height:16px;color:var(--muted);font-size:11px;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.positive,.bullish{color:var(--green)}.negative,.bearish{color:var(--red)}.neutral{color:var(--amber)}.sparkline{width:100%;height:42px;display:block}.mode-pill{display:inline-flex;align-items:center;justify-content:center;min-height:24px;padding:3px 7px;border:1px solid var(--line);font-size:12px;color:#dce7e3;background:#111820;white-space:nowrap}.mode-live.status-healthy,.mode-live.status-live,.mode-live{border-color:#40d89a80;color:var(--green)}.mode-mock{border-color:#f4bf5f99;color:var(--amber)}.status-key_required,.status-not_configured,.status-paid_key_required,.mode-disabled{border-color:#7eb7ff73;color:var(--steel)}.status-needs_rekey,.status-parser_missing,.status-blocked,.status-degraded{border-color:#f0646499;color:var(--red)}.status-live_quiet,.status-stale{border-color:#f4bf5fb3;color:var(--amber)}.mock-surface{background-image:repeating-linear-gradient(135deg,rgba(244,191,95,.06) 0,rgba(244,191,95,.06) 8px,transparent 8px,transparent 18px)}.dashboard-grid{display:grid;grid-template-columns:minmax(280px,390px) minmax(420px,1fr) minmax(300px,390px);gap:14px;align-items:start}.dashboard-grid>.watchlist{grid-column:1 / -1;margin:0}.surface{min-width:0;padding:14px}.section-title{display:flex;align-items:center;gap:8px;font-weight:800;margin-bottom:12px}.feed-list,.source-list,.history-list{display:grid;gap:8px}.feed-row{width:100%;display:grid;grid-template-columns:10px minmax(0,1fr) 42px;gap:10px;align-items:center;border:1px solid var(--line);background:#0d1318;padding:10px;text-align:left;cursor:pointer}.feed-row.active{border-color:var(--green);background:#102018}.direction-dot{width:9px;height:44px;background:var(--amber)}.direction-dot.bullish{background:var(--green)}.direction-dot.bearish{background:var(--red)}.feed-main{min-width:0}.feed-title,.feed-sub{display:block;overflow-wrap:anywhere}.feed-title{font-weight:760;line-height:1.25}.tier-pill{width:fit-content;display:inline-block;border:1px solid var(--line);color:#d9e5e1;padding:3px 6px;margin-bottom:6px;font-size:11px;font-weight:900;text-transform:uppercase}.tier-critical{border-color:#f06464bf;color:var(--red)}.tier-high{border-color:#f4bf5fcc;color:var(--amber)}.tier-medium{border-color:#5a8da7cc;color:#a9d3e8}.tier-low{color:var(--muted)}.feed-sub{color:var(--muted);margin-top:5px;font-size:12px}.feed-kicker{display:flex;flex-wrap:wrap;gap:7px;color:var(--muted);font-size:12px;margin-bottom:5px}.feed-kicker strong{color:#dff9ed}.liquidation-row .feed-title{color:#fff}.impact{height:36px;display:grid;place-items:center;color:#07100d;background:var(--amber);font-weight:900}.alert-card{min-height:520px}.alert-head{display:flex;justify-content:space-between;gap:16px}.asset-badges{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.asset-badges span{background:#18212a;color:#d9e5e1;border:1px solid var(--line);padding:4px 7px;font-size:12px;font-weight:800}.alert-card h2{font-size:26px;line-height:1.12;max-width:820px;overflow-wrap:anywhere}.direction-badge{height:32px;padding:6px 10px;border:1px solid currentColor;text-transform:uppercase;font-size:12px;font-weight:900}.alert-summary{color:#cbd8d4;margin:16px 0;line-height:1.55}.metric-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-bottom:16px}.liquidation-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.metric{border:1px solid var(--line);background:#0b1116;padding:10px}.metric span,.label{display:block;color:var(--muted);font-size:12px;margin-bottom:5px}.metric strong{font-size:17px}.why-panel,.proven-panel,.unconfirmed-panel,.score-panel{border-left:3px solid var(--green);background:#0b1210;padding:12px;margin-bottom:16px}.unconfirmed-panel{border-left-color:var(--amber);background:#121009}.proven-panel,.score-panel{border-left-color:var(--steel);background:#0b1016}.why-panel h3,.proven-panel h3,.unconfirmed-panel h3{font-size:15px;margin-bottom:8px}.why-panel p,.proven-panel p,.unconfirmed-panel p,.score-panel p{color:#d8e4e0;line-height:1.5}.attention-summary{grid-column:1 / -1}.public-market-now{grid-column:1 / -1;min-height:calc(100vh - 92px);display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:12px;align-content:start;border-color:#40d89a6b;background:linear-gradient(135deg,#40d89a12,#7eb7ff0a),#10151bfa}.public-market-now__story,.public-market-now__alerts{border:1px solid var(--line);background:#0b1116;padding:14px;min-width:0}.public-market-now__story strong{display:block;font-size:28px;line-height:1.1;margin-bottom:10px}.public-market-now__story p{color:#dce7e3;line-height:1.5}.public-live-grid{grid-column:1 / -1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.compact-top-list .attention-top-item{grid-template-columns:auto minmax(0,1fr) minmax(110px,auto)}.hero-attention{border-color:#40d89a6b;background:linear-gradient(135deg,#40d89a14,#7eb7ff0a),#10151bfa}.changed-hour,.mode-notice,.locked-feature-panel{grid-column:1 / -1}.mode-notice{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:14px 0 0;border-color:#7eb7ff47}.mode-notice.owner-active{border-color:#40d89a6b}.mode-notice strong{display:block;margin-bottom:5px}.mode-notice p{color:var(--muted);font-size:13px;line-height:1.45}.market-story{display:grid;grid-template-columns:minmax(280px,1.7fr) repeat(4,minmax(120px,1fr));gap:8px;margin-bottom:12px}.market-story__main{min-height:94px;display:grid;align-content:center;gap:6px;border:1px solid rgba(64,216,154,.32);background:#0b1210;padding:12px}.market-story__main span{color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:0}.market-story__main strong{font-size:24px;line-height:1.1}.market-story__main p{color:#dce7e3;line-height:1.35}.owner-brief,.owner-readiness,.regime-panel,.etf-flow-panel,.event-mode-panel,.derivatives-panel,.outcome-panel,.source-quality{grid-column:1 / -1}.attention-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:12px}.attention-top-list{display:grid;gap:8px}.attention-top-item{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(160px,260px);gap:10px;align-items:center;border:1px solid var(--line);background:#0d1318;padding:10px}.attention-top-item strong{overflow-wrap:anywhere}.attention-top-item span:last-child{color:var(--muted);font-size:12px}.gap-list,.driver-list,.link-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.gap-list span,.driver-list span{border:1px solid var(--line);background:#0b1116;color:#cbd8d4;padding:6px 8px;font-size:12px}.link-row a{color:var(--steel);font-weight:760;text-decoration:none;overflow-wrap:anywhere}.locked-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.locked-card{border:1px solid var(--line);background:#0d1318;padding:12px;min-width:0}.locked-card>div{display:flex;align-items:center;gap:8px;margin-bottom:8px}.locked-card p{min-height:54px;color:var(--muted);font-size:12px;line-height:1.45;margin-bottom:10px}.compact-source-list{margin-top:10px}.readiness-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.readiness-card,.truth-card{border:1px solid var(--line);background:#0d1318;padding:12px;min-width:0}.readiness-card strong,.truth-card strong{display:block;color:#f2fbf7;margin-bottom:8px}.truth-card{margin-top:10px}.truth-card p,.truth-card span{display:block;color:var(--muted);font-size:12px;line-height:1.45;margin-top:6px;overflow-wrap:anywhere}.regime-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;border:1px solid var(--line);background:#0d1318;padding:12px;margin-bottom:10px}.regime-head strong{font-size:24px}.regime-head span,.panel-note{color:var(--muted);font-size:12px;line-height:1.45}.regime-story{border:1px solid rgba(126,183,255,.22);background:#0b1016;color:#d8e4e0;line-height:1.45;padding:10px 12px;margin-bottom:10px}.regime-checklist{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:10px 0}.checklist-row{border:1px solid var(--line);background:#0b1116;padding:10px;min-width:0}.checklist-row strong,.checklist-row p{display:block}.checklist-row p{color:var(--muted);font-size:12px;line-height:1.45;margin-top:8px}.event-card-grid,.derivative-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.event-hero{border:1px solid rgba(64,216,154,.36);background:#0b1210;padding:14px;margin-bottom:10px}.event-hero div:first-child{display:grid;gap:4px;margin-bottom:8px}.event-hero span,.event-hero em{color:var(--muted);font-size:12px}.event-hero strong{font-size:22px}.event-hero p{color:#d8e4e0;line-height:1.45}.event-card,.derivative-card{border:1px solid var(--line);background:#0d1318;padding:12px;min-width:0}.event-card>div:first-child{display:flex;justify-content:space-between;align-items:start;gap:10px;margin-bottom:8px}.event-card strong,.derivative-card strong{overflow-wrap:anywhere}.event-card p,.swing-preview p{color:#d8e4e0;line-height:1.45;margin-bottom:8px}.event-card span,.event-card em{color:var(--muted);font-size:12px;line-height:1.45}.release-grid,.reaction-slots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:8px 0}.release-grid span,.reaction-slots span{border:1px solid var(--line);background:#0b1116;padding:7px}.verification-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.score-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:10px}.verification-grid div,.score-grid div{border:1px solid var(--line);background:#0b1116;padding:10px;min-width:0}.verification-grid strong,.verification-grid a,.score-grid strong{overflow-wrap:anywhere}.verification-grid a{color:var(--steel);font-weight:760;text-decoration:none}.wide-cell{grid-column:span 3}.term-line{display:block;color:var(--muted);font-size:12px;margin-top:8px}.source-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:start;border:1px solid var(--line);background:#0d1318;padding:10px}.source-row strong,.source-row span,.source-row em{display:block}.source-row span,.source-row em{color:var(--muted);font-size:12px;margin-top:4px;overflow-wrap:anywhere}.source-diagnostics{display:flex;flex-wrap:wrap;gap:6px 10px;margin-top:8px}.source-diagnostics span{margin:0;color:#cbd8d4}.live-diagnostics{grid-column:1 / -1}.diagnostics-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.diagnostic-card{border:1px solid var(--line);background:#0d1318;padding:12px}.diagnostic-card__top{display:flex;justify-content:space-between;gap:10px;margin-bottom:10px}.diagnostic-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.diagnostic-card p{color:var(--muted);font-size:12px;line-height:1.45;margin-top:10px}.history-row{display:grid;grid-template-columns:110px minmax(0,1fr) 190px 80px 80px;gap:10px;align-items:center;border:1px solid var(--line);background:#0d1318;padding:10px}.history-row strong{overflow-wrap:anywhere}.history-row span{color:#cbd8d4}.compact-history{display:grid;gap:8px;margin-top:10px}.compact-history .history-row{grid-template-columns:140px minmax(0,1fr) 120px 120px}.source-quality-table{display:grid;gap:8px}.source-quality-row{display:grid;grid-template-columns:minmax(180px,1fr) repeat(6,minmax(70px,auto));gap:8px;align-items:center;border:1px solid var(--line);background:#0d1318;padding:10px}.source-quality-row span{color:var(--muted);font-size:12px}.settings-view{max-width:980px}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.settings-grid label,.asset-toggle{display:grid;gap:8px;border:1px solid var(--line);background:#0d1318;padding:12px}input[type=range]{width:100%}select{height:40px;background:#080d12;border:1px solid var(--line);color:var(--text);padding:0 10px}.settings-grid input[type=text],.settings-grid input[type=number],.settings-grid input:not([type]){height:40px;background:#080d12;border:1px solid var(--line);color:var(--text);padding:0 10px;min-width:0}.asset-toggle-grid{display:grid;grid-template-columns:repeat(6,minmax(90px,1fr));gap:8px;margin:14px 0}.asset-toggle{grid-template-columns:18px 1fr;align-items:center}.primary-action{height:42px;display:inline-flex;align-items:center;gap:8px;border:0;color:#07100d;background:var(--green);padding:0 14px;cursor:pointer;font-weight:900}.secondary-action{background:#0b1116}.secondary-action:hover,.ghost-action:hover,.vital-button:hover{border-color:var(--steel);color:var(--steel)}.empty-state{min-height:220px;display:grid;place-items:center;color:var(--muted)}.auth-gate{min-height:100vh}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;padding:18px;background:#030508b8;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.auth-card{width:min(420px,calc(100vw - 28px));display:grid;gap:14px}.owner-modal{width:min(540px,calc(100vw - 28px));max-height:calc(100vh - 36px);overflow:auto}.modal-head{display:flex;align-items:start;justify-content:space-between;gap:12px}.modal-head>div{display:grid;gap:8px}.auth-card p{color:var(--muted);line-height:1.5}.auth-card label{display:grid;gap:8px}.auth-card input{height:42px;color:var(--text);background:#080d12;border:1px solid var(--line);padding:0 10px}.pin-login{display:grid;gap:10px;border:1px solid var(--line);background:#0d1318;padding:12px}.remember-line{grid-template-columns:18px 1fr;align-items:center}.remember-line input{height:auto}.fallback-divider{color:var(--muted);font-size:12px;text-transform:uppercase}.auth-error{color:var(--red);font-size:13px}@media(max-width:1280px){.watchlist{grid-template-columns:repeat(4,minmax(150px,1fr))}.dashboard-grid{grid-template-columns:minmax(280px,360px) minmax(0,1fr)}.market-story{grid-template-columns:minmax(260px,1.5fr) repeat(2,minmax(0,1fr))}.public-live-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.source-health{grid-column:1 / -1}.diagnostic-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.event-card-grid,.derivative-grid,.release-grid,.reaction-slots{grid-template-columns:1fr}}@media(max-width:820px){.app-shell{padding:12px}.topbar{grid-template-columns:1fr;gap:12px}.tabs,.vitals{justify-self:stretch}.tabs button{flex:1;justify-content:center;padding:0 8px}.watchlist{display:flex;overflow-x:auto;padding-bottom:4px}.asset-card{min-width:158px}.dashboard-grid,.metric-strip,.liquidation-strip,.verification-grid,.market-story,.public-market-now,.public-live-grid,.attention-grid,.locked-grid,.readiness-grid,.regime-checklist,.score-grid,.settings-grid,.diagnostics-grid,.diagnostic-metrics,.event-card-grid,.derivative-grid,.attention-top-item{grid-template-columns:1fr}.public-market-now{min-height:auto}.wide-cell{grid-column:auto}.alert-card h2{font-size:22px}.history-row,.compact-history .history-row,.source-quality-row{grid-template-columns:1fr}.asset-toggle-grid{grid-template-columns:repeat(3,minmax(80px,1fr))}}


/* InvoSights mobile layout hotfix, 2026-05-19.
   Keeps badge/metadata columns from collapsing primary text on iPhone Safari. */
@media (min-width: 821px) and (max-width: 1720px) {
  .watchlist {
    grid-template-columns: repeat(auto-fit, minmax(132px, 1fr)) !important;
  }
}

@media (max-width: 820px) {
  .app-shell,
  .dashboard-grid,
  .surface,
  .public-market-now,
  .public-market-now__story,
  .public-market-now__alerts,
  .alert-card,
  .attention-top-list,
  .compact-top-list,
  .feed-list,
  .feed-main,
  .source-list,
  .event-card-grid,
  .release-grid,
  .reaction-slots {
    min-width: 0 !important;
    max-width: 100% !important;
  }

  .attention-top-item,
  .compact-top-list .attention-top-item,
  .feed-row,
  .liquidation-row,
  .source-row,
  .history-row,
  .compact-history .history-row,
  .source-quality-row {
    grid-template-columns: minmax(0, 1fr) !important;
    align-items: start !important;
  }

  .attention-top-item > *,
  .alert-card > *,
  .feed-row > *,
  .feed-main,
  .liquidation-row > *,
  .source-row > *,
  .history-row > *,
  .source-quality-row > *,
  .event-card > *,
  .event-card > div,
  .derivative-card > *,
  .asset-card > * {
    min-width: 0 !important;
    max-width: 100% !important;
  }

  .attention-top-item strong,
  .alert-card h2,
  .alert-card p,
  .feed-title,
  .feed-sub,
  .source-row strong,
  .source-row span,
  .source-row em,
  .event-card strong,
  .event-card span,
  .event-card em,
  .event-card p,
  .asset-card strong,
  .asset-card span {
    width: auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
    writing-mode: horizontal-tb !important;
  }

  .attention-top-item span:last-child {
    justify-self: start !important;
    width: 100% !important;
  }

  .event-card > div:first-child,
  .asset-card__top {
    flex-wrap: wrap !important;
  }

  .release-grid,
  .reaction-slots {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .watchlist {
    max-width: 100% !important;
  }

  .asset-card {
    flex: 0 0 min(82vw, 280px) !important;
    min-width: 0 !important;
  }
}
