/* Captain's Compass — momentum-led visual system. */
:root{--bg:#071118;--panel:#0b1820;--panel-raised:#10212b;--line:#2a3b45;--line-soft:#1c303a;--text:#f7f8fa;--muted:#a9bbc5;--dim:#8ca2ae;--gold:#f1ce7e;--gold-soft:#79683d;--green:#43d8bf;--cyan:#43d8bf;--coral:#ed7978;--sans:Arial,Helvetica,system-ui,sans-serif;--mono:'SFMono-Regular',Consolas,monospace}
body{background:var(--bg);color:var(--text);font-size:16px}
.main-content{max-width:1580px;padding:0 32px 32px;min-width:0}
.topbar{min-height:68px;border-color:var(--line-soft);background:transparent}
.breadcrumb{font-size:12px;letter-spacing:.12em;color:var(--muted)}
.breadcrumb strong{color:var(--gold)}
.api-status{font-size:12px;letter-spacing:.04em}
.icon-button{min-height:44px;width:44px;background:transparent;border-color:var(--line);border-radius:4px;color:var(--text)}
.mobile-brand strong{color:var(--gold);font-size:13px;letter-spacing:.15em}
.mobile-brand strong em{color:inherit}.mobile-brand-bars i{background:var(--green);border-radius:0}
.hero-row.terminal-heading{align-items:center;padding:24px 0 25px;gap:20px;border-bottom:1px solid var(--line);margin-bottom:22px}
.crush-heading{min-width:0}.crush-overline{color:var(--gold);font-size:12px;letter-spacing:.3em;font-weight:700;margin-bottom:10px}
.terminal-heading h1{font-family:Arial,Helvetica,sans-serif;font-size:clamp(44px,5.5vw,76px);font-weight:900;letter-spacing:-.055em;line-height:.95;margin:0;color:#fff}
.crush-heading p{font-size:16px;line-height:1.45;font-weight:600;color:#e9eff2;margin:15px 0 0;max-width:560px}
.terminal-heading .hero-actions{align-items:flex-end;flex-direction:column;gap:14px;flex-shrink:0}
.terminal-heading .hero-link{font:14px var(--sans);letter-spacing:0;color:var(--muted)}
.terminal-heading .hero-link:hover{color:var(--gold)}
.hero-actions .support-link{padding-left:0;border:0;color:var(--gold)}
.control-strip{grid-template-columns:220px minmax(180px,1fr) auto;border:1px solid var(--line-soft);border-radius:6px;padding:16px 18px;background:var(--panel);gap:16px;margin-bottom:0}
.control-label{color:var(--muted);letter-spacing:.12em;font:600 12px var(--sans)}
.feed-group{grid-column:1/-1}.feed-group>.control-label{display:none}
.segmented{min-width:0;gap:6px;flex-wrap:wrap}.segmented-scroll{overflow-x:auto;scrollbar-width:thin}
.segmented button{flex:0 0 auto;border:1px solid transparent!important;border-radius:4px!important;min-height:42px;padding:0 17px;background:transparent;font:700 14px var(--sans);letter-spacing:.03em;color:var(--muted)}
.segmented button.selected,.segmented button.selected:hover{background:var(--gold);color:#10181c;border-color:var(--gold)!important}
.segmented button:hover{background:#172b34;color:#fff}
.control-strip select,.control-strip input[type=search]{min-height:44px;background:var(--bg);border-color:var(--line);color:var(--text);font-size:16px;border-radius:4px}
.control-strip select{padding-inline:12px 32px}
input::placeholder{color:#8fa2ad}.mentions-price-filter{grid-column:auto;align-self:end;min-height:44px;color:var(--muted);font-size:13px}
.summary-grid{display:flex;gap:24px;flex-wrap:wrap;padding:17px 2px;margin:0 0 8px;background:none;border:0}
.summary-card{display:flex;gap:9px;background:none;min-height:0;padding:0;border:0;align-items:center}
.summary-label{font:12px var(--sans);letter-spacing:.04em;color:var(--muted)}
.summary-card strong{font:700 18px var(--mono);margin:0}.summary-card small,.summary-card:last-child{display:none}
.panel{background:var(--panel);border:1px solid var(--line-soft);border-radius:6px;margin-bottom:20px}
.panel-heading{padding:20px;border-bottom-color:var(--line-soft);align-items:center}
.panel h2{font-size:24px;font-weight:750;letter-spacing:-.025em;color:#fff}
.panel-kicker{font:600 12px var(--sans);letter-spacing:.14em;color:var(--gold);margin-bottom:7px}
.panel-description{font-size:14px;color:var(--muted);max-width:380px}
.watchlist-head{background:#0a161e;color:#9bb0bc;font-size:12px;padding:11px 20px;border-color:var(--line-soft)}
.event-row{padding:0 20px;border-bottom-color:var(--line-soft);gap:12px;transition:background .15s ease}
.event-row:hover{background:#10242e}.event-row:has(.active){background:#15282f;box-shadow:inset 3px 0 var(--gold)}
.family-row{min-height:90px;padding:16px 0;gap:16px;grid-template-columns:minmax(0,1fr) 155px 90px}
.family-title strong{font-size:17px;font-weight:700;line-height:1.35;color:#fff}
.family-title small,.family-updated{color:#9aafb9;font-size:12px}
.family-main{gap:16px}.family-league{border:1px solid var(--line);background:#101e26;border-radius:4px;color:#b6c7cf;font-size:12px;width:62px;height:32px}
.family-state{font-size:14px;border:1px solid var(--line);background:#11212a;color:#c5d2d9;padding:7px 9px;border-radius:4px}
.state-compressed,.state-armed{color:#a2d2f4;background:#122c39;border-color:#2b4d60}
.state-fire-up,.state-fire-down,.state-accepted-expansion,.state-momentum-shift{color:var(--gold);background:#2b281d;border-color:#615333}
.state-momentum-shift i{background:var(--gold)}
.event-kalshi{width:44px;height:44px;border-color:var(--line);border-radius:4px;color:#b4c7d1}
.family-sport-board{background:transparent;padding:5px 0 0}.family-sport-line{font-size:14px}.family-sport-line b{font-size:17px}.family-sport-status{font-size:12px}.family-sport-kicker{font-size:12px;color:var(--green)}
.detail-topline{padding:18px 20px}.detail-actions button,.kalshi-button{min-height:44px;border-radius:4px;font-size:14px}
.detail-subtitle{color:var(--muted);font-size:14px;line-height:1.5}
.game-center-card{background:#10212a;border:1px solid var(--line-soft);border-radius:4px;padding:18px}
.game-center-score{font-size:36px;font-weight:800;color:#fff}.game-center-team strong{font-weight:700}
.game-center-middle strong{color:var(--gold)}.game-center-footer{font-size:12px}
.signal-brief{background:#11242c;border-color:var(--gold);padding:12px 15px;margin:14px 20px}.signal-brief strong{font-size:20px;color:#fff}.signal-brief p{font-size:14px;color:#b5c7cf;line-height:1.5}
.move-quality-card{display:grid;gap:12px;margin:0 20px 14px;padding:14px 16px;border:1px solid #3c4d59;border-radius:8px;background:linear-gradient(110deg,#101f29,#0d171f);color:#c4d0d7}.move-quality-topline{display:flex;align-items:center;justify-content:space-between;gap:14px}.move-quality-kicker,.move-quality-score span,.move-quality-read span{display:block;color:#8498a5;font:10px var(--mono);letter-spacing:.12em}.move-quality-badge{display:inline-flex;align-items:center;gap:8px;margin-top:8px;padding:7px 10px;border:1px solid #536673;border-radius:6px;background:#17252f;color:#d7e4e9;font:700 13px var(--mono)}.move-quality-badge i{width:8px;height:8px;border-radius:50%;background:#98aab4}.move-quality-badge.supported{border-color:#36745f;background:#132b27;color:#8ee8ca}.move-quality-badge.supported i{background:#43d8bf;box-shadow:0 0 0 4px rgba(67,216,191,.1)}.move-quality-badge.unconfirmed{border-color:#73633d;background:#292518;color:#f1ce7e}.move-quality-badge.unconfirmed i{background:#f1ce7e}.move-quality-badge.noise{border-color:#9d5e3e;background:#302018;color:#ffb27c}.move-quality-badge.noise i{background:#ed7978;box-shadow:0 0 0 4px rgba(237,121,120,.1)}.move-quality-score{text-align:right}.move-quality-score strong{display:block;margin-top:7px;color:#f4f7f8;font:700 18px var(--mono)}.move-quality-meter{height:6px;overflow:hidden;border-radius:999px;background:#1a2933}.move-quality-meter span{display:block;width:0;height:100%;border-radius:999px;background:#f1ce7e;transition:width .25s ease}.move-quality-card[data-quality="supported"] .move-quality-meter span{background:#43d8bf}.move-quality-card[data-quality="noise"] .move-quality-meter span{background:#ed7978}.move-quality-card p{margin:0;color:#b8c7cf;font-size:13px;line-height:1.5}.move-quality-read{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:10px;border-top:1px solid #263944}.move-quality-read strong{color:#f1ce7e;font:700 12px var(--mono);letter-spacing:.05em}.move-quality-card[data-quality="supported"] .move-quality-read strong{color:#43d8bf}.move-quality-card[data-quality="noise"] .move-quality-read strong{color:#ff9e91}
.chart-shell.chart-visual{border-color:var(--line);border-radius:0;background:#000!important}
.chart-stat,.chart-stat-main{background:#0b1820}.chart-stat-main{background:#10242c}
.chart-stat span,.chart-stat-main span{font-size:12px;color:#b2c4cd}.chart-stat strong{font-size:16px}.chart-stat-main strong{color:var(--gold)}
.chart-visual .zero-line{stroke:#e4e9eb!important;stroke-width:1.5;stroke-dasharray:none}
.chart-visual .momentum-bar{opacity:1;shape-rendering:crispEdges}
.chart-visual .momentum-positive.momentum-dark{fill:#69b7f2}.chart-visual .momentum-positive.momentum-light{fill:#2f6ea6}
.chart-visual .momentum-negative.momentum-dark{fill:#d94d59}.chart-visual .momentum-negative.momentum-light{fill:#e5ba4e}
.chart-visual .momentum-shift-mark polygon{fill:var(--gold);stroke:var(--gold)}
.chart-visual .release-mark polygon{fill:var(--gold);stroke:var(--gold)}
.chart-visual .squeeze-low{fill:#0b0d10;stroke:#dbe5eb}.chart-visual .squeeze-mid{fill:#d94d59;stroke:#ffb8bc}.chart-visual .squeeze-high{fill:#ef8e2f;stroke:#ffd39d}.chart-visual .squeeze-none{fill:#35c98a;stroke:#c8ffe1}.chart-visual .squeeze-fired{stroke-width:1.8}
.chart-visual .pane-label{fill:#f4f7f8!important;font-weight:700;letter-spacing:.08em}
.chart-visual .price-area-line{stroke:#fff;filter:none}.chart-visual .price-last-point{fill:#fff}
.chart-legend{font-size:12px;gap:12px 0;padding:16px 0}.legend-group{gap:8px 12px}.legend-group-title{font-size:10px}.legend-item{overflow:visible;min-width:0}.legend-note{font-size:10px}.chart-legend b{font-weight:600}
.read-note{padding:14px;background:#0e2029;color:#b9cad2;font-size:14px;line-height:1.6;border-color:var(--line)}
.history-import-strip{background:transparent;border:1px solid var(--line);padding:18px 20px;margin:24px 0;gap:12px 20px}
.history-import-copy strong{font-size:16px;line-height:1.4}.history-import-copy small{font-size:13px;color:var(--muted)}
.history-import-form input{min-height:46px;font-size:16px;background:#0b1820;border-color:var(--line)}
.history-import-form button{min-height:46px;background:var(--gold);border:0;border-radius:4px;font:700 13px var(--sans);color:#102027}
.history-import-status{font-size:12px;color:var(--muted)}
.flow-step strong{font-size:14px}.flow-step small,.method-note,.data-foot,.source-row{font-size:14px;line-height:1.5}.source-state{font-size:12px}
.footer{font-size:12px;color:var(--muted);line-height:1.6;border-color:var(--line-soft)}
button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
@media(min-width:1040px){
.sidebar{width:208px;flex:0 0 208px;background:#08151c;border-color:var(--line-soft);padding:30px 16px;position:sticky;top:0;height:100vh;overflow-y:auto}
.brand-lockup{gap:12px;padding:0 6px 34px}.brand-name{font-size:30px;font-weight:900;letter-spacing:-.035em;line-height:.94}.brand-name em{color:#fff}.brand-kicker{font:700 9px var(--sans);letter-spacing:.13em;color:var(--gold);margin-top:12px}
.brand-mark{height:45px;gap:3px}.brand-mark span{background:var(--green);border-radius:0;width:5px}.brand-mark span:nth-child(1){height:20px}.brand-mark span:nth-child(2){height:36px}.brand-mark span:nth-child(3){height:27px}
.nav-section-label{color:#8ea5b0;font-size:12px;letter-spacing:.12em}.nav-item{font-size:14px;min-height:44px;border-radius:4px;color:#b0c2cc}.nav-item.active{background:#192820;color:var(--gold)}.universe-row{font-size:14px}.universe-status{font-size:12px;color:#9db2bd}.sidebar-meta{font-size:12px;letter-spacing:0}.mode-card{background:transparent;border-color:var(--line)}
}
@media(max-width:1039px){.main-content{padding:0 22px 28px}.crush-overline{display:none}.terminal-heading h1{font-size:58px}.control-strip{grid-template-columns:180px minmax(0,1fr)}.mentions-price-filter{grid-column:1/-1}.hero-row.terminal-heading{margin-bottom:18px}}
@media(max-width:699px){
.main-content{padding:0 14px 24px}.topbar{min-height:60px;gap:8px}.mobile-brand{gap:8px}.mobile-brand strong{font-size:11px;letter-spacing:.1em}.api-status{font-size:11px}.icon-button{width:40px;min-height:44px}.topbar-actions{gap:7px}
.hero-row.terminal-heading{display:block;padding:22px 0 18px;margin-bottom:16px}.terminal-heading h1{font-size:clamp(42px,12vw,66px);line-height:.95;letter-spacing:-.05em}.crush-heading p{font-size:16px;line-height:1.4;margin-top:12px;max-width:360px}
.terminal-heading .hero-actions{flex-direction:row;justify-content:space-between;gap:15px;align-items:center;margin-top:18px}.terminal-heading .hero-link{font-size:14px}
.control-strip{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px 10px;padding:13px}.control-strip .control-group{grid-column:auto}.control-strip .feed-group{grid-column:1/-1;overflow:hidden}
.segmented{flex-wrap:nowrap;overflow-x:auto;gap:5px;padding-bottom:5px;min-width:0;max-width:100%}.segmented button{padding:0 13px;min-height:44px;font-size:14px}.control-strip .mentions-price-filter{grid-column:1/-1;font-size:13px;min-height:32px}.control-strip select{padding:0 7px}.control-label{font-size:12px;letter-spacing:.05em}
.summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:15px 0;margin-bottom:4px}.summary-card{display:flex;flex-direction:column-reverse;align-items:flex-start;gap:6px;padding:0;min-height:0}.summary-label{font-size:12px;letter-spacing:0;line-height:1.3}.summary-card strong{font-size:22px}.summary-card:last-child{display:none}
.panel{margin-left:0;margin-right:0;border-radius:5px}.panel-heading{padding:16px 14px}.panel h2{font-size:23px}.panel-description{font-size:13px;line-height:1.45;margin-top:8px}.panel-kicker{font-size:12px}.watchlist-head{padding:10px 14px;font-size:12px}
.event-row{padding:0 12px;grid-template-columns:minmax(0,1fr) 44px;gap:8px}.family-row{grid-template-columns:minmax(0,1fr) auto;padding:15px 0;gap:10px 6px}.family-main{gap:10px;grid-column:1/-1}.family-league{width:48px;font-size:12px;height:28px}.family-title strong{font-size:16px;line-height:1.4}.family-title small{font-size:12px}.family-state{margin-left:58px;padding:5px 7px;font-size:12px;white-space:normal}.family-updated{font-size:12px}.family-sport-status{font-size:12px;white-space:normal}.family-sport-lines{gap:5px}.event-kalshi{width:44px;height:44px}
.detail-topline{padding:14px 12px}.detail-actions{flex-wrap:wrap;gap:12px}.game-center{margin:0 12px 12px}.game-center-card{padding:14px}.game-center-score{font-size:30px}.signal-brief{margin:12px;padding:12px}.signal-brief strong{font-size:18px}.move-quality-card{margin:0 12px 12px;padding:13px 12px}.move-quality-topline{align-items:start}.move-quality-badge{font-size:12px}.move-quality-score strong{font-size:16px}.move-quality-card p{font-size:13px}.move-quality-read{display:grid;gap:5px}.move-quality-read strong{font-size:11px}.chart-stat,.chart-stat-main{padding:12px}.chart-stat strong{font-size:14px}.chart-stat span{font-size:12px}.chart-legend{display:grid;grid-template-columns:1fr;gap:0;font-size:12px;padding:8px 0}.legend-group{min-width:0;padding:10px 0;border-right:0;border-bottom:1px solid #263b46;gap:8px 11px}.legend-group:first-child{padding-top:0}.legend-group:last-child{padding-bottom:0;border-bottom:0}.legend-group-title{flex-basis:100%}.legend-note{font-size:10px}.chart-meta{font-size:12px;line-height:1.5}
.history-import-strip{grid-template-columns:minmax(0,1fr);padding:16px;margin:20px 0}.history-import-form{flex-wrap:wrap}.history-import-form input{flex-basis:100%;width:100%}.history-import-form button{width:100%;font-size:14px}.history-import-status{line-height:1.5}
.footer{display:grid;gap:5px;font-size:12px}.detail-panel{scroll-margin-top:10px}
}
@media(max-width:370px){.mobile-brand strong{font-size:10px;letter-spacing:.03em}.control-strip{grid-template-columns:minmax(0,1fr)}.control-strip .control-group{grid-column:1/-1}.family-state{margin-left:0}.family-league{width:43px}.api-status{font-size:10px}.family-row{gap:8px 4px}}
/* Carry the same masthead, gold signal accents, and quiet surfaces into the guide. */
.tutorial-page{background:var(--bg)}.tutorial-page h1{font-weight:900;letter-spacing:-.055em;color:#fff}.tutorial-page h1 span{color:var(--gold)}.tutorial-topbar,.tutorial-footer{border-color:var(--line);color:var(--muted)}.tutorial-page .guide-step,.tutorial-page .read-panel{background:var(--panel);border-color:var(--line)}.tutorial-page .section-kicker,.tutorial-page .step-number{color:var(--gold)}.tutorial-page .tutorial-cta{background:var(--gold);color:#10181c;border-color:var(--gold)}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

.event-row-actions{display:flex;flex-direction:column;align-items:center;gap:4px}
.event-star{width:44px;height:44px;background:transparent;border:1px solid var(--line-soft);border-radius:7px;color:#aebfcd;font-size:26px;cursor:pointer}
.event-star[aria-pressed="true"]{color:#f1c66e;background:#302918;border-color:#9b7b3e}
.watchlist-toggle,.event-refresh{min-height:44px;padding:10px 14px;border:1px solid #506673;border-radius:7px;background:#10242e;color:#edf3f7;font:14px var(--sans);cursor:pointer}
.watchlist-toggle[aria-pressed="true"]{color:#f1c66e;border-color:#9b7b3e}
.event-refresh:disabled{opacity:.6;cursor:wait}
.event-star:focus-visible,.watchlist-toggle:focus-visible,.event-refresh:focus-visible{outline:2px solid #f1c66e;outline-offset:2px}

/* Extreme-price context stays visible beside the actual chart. */
.momentum-risk { display: grid; gap: 6px; padding: 12px 14px; margin-bottom: 12px; border: 1px solid #b58a3c; border-left: 4px solid #edbd63; border-radius: 8px; background: #292318; color: #f4d49a; font-size: 14px; line-height: 1.5; }
.momentum-risk strong { font-size: 14px; }
.state-caution, .signal-brief[data-stage="caution"] { color: #f4d49a; border-color: #b58a3c; background: #292318; }
.state-caution i { background: #edbd63; }
.chart-stat strong { overflow-wrap: anywhere; }

.chart-window-control { display: grid; gap: 6px; min-width: 132px; }
.chart-window-control label { color: #5f7180; font: 8px var(--mono); letter-spacing: .08em; }
.chart-window-control select { min-height: 32px; min-width: 132px; padding: 0 8px; color: #dbe5eb; font: 9px var(--mono); }

/* Chart cleanup: one signal hierarchy, fewer competing cards. */
.signal-brief { margin: 12px 20px 0; padding: 5px 0 11px; border: 0; border-bottom: 1px solid var(--line-soft); border-radius: 0; background: transparent; }
.signal-brief[data-stage="caution"] { color: inherit; border-color: var(--line-soft); background: transparent; }
.signal-brief strong { display: inline-block; margin: 5px 12px 0 0; font-size: 18px; vertical-align: baseline; }
.signal-brief p { display: inline; font-size: 13px; }
.move-quality-card { margin: 0 20px; padding: 12px 0; border: 0; border-bottom: 1px solid var(--line-soft); border-radius: 0; background: transparent; }
.move-quality-meter { height: 4px; }
.move-quality-read { padding-top: 0; border-top: 0; justify-content: flex-end; }
.auto-status { margin: 0 20px; padding: 9px 0; border: 0; border-bottom: 1px solid var(--line-soft); border-radius: 0; background: transparent; }
.auto-status[data-state="unavailable"] { border-color: var(--line-soft); background: transparent; }
.read-note { border-color: var(--line-soft); background: #0c171f; }
@media(max-width:699px) {
  .signal-brief { margin: 10px 12px 0; padding: 3px 0 10px; }
  .signal-brief strong { display: block; margin: 5px 0 2px; font-size: 17px; }
  .signal-brief p { display: block; font-size: 13px; }
  .move-quality-card { margin: 0 12px; padding: 11px 0; }
  .auto-status { margin: 0 12px; padding: 8px 0; }
  .chart-window-control { min-width: 0; flex: 1 1 120px; }
  .chart-window-control select { width: 100%; min-width: 0; }
}
