:root{color-scheme:dark;--bg:#080808;--surface:#101110;--raised:#181a18;--border:#ffffff12;--text:#eee;--muted:#878e89;--green:#00e676;--red:#ff1744;--amber:#ffb300;--cyan:#00d4ff;font-family:Sora,Arial,sans-serif;font-size:12px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);min-width:1000px}button,input{font:inherit}button,a,input{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit;text-decoration:none}.topbar{height:66px;display:flex;align-items:center;gap:44px;padding:0 28px;border-bottom:1px solid var(--border);background:#0d0e0d}.brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:20px;letter-spacing:-1px}.brand-mark{display:grid;place-items:center;width:32px;height:36px;background:var(--green);color:#001b0b;border-radius:6px;font-size:24px}.brand small{display:block;font:8px 'JetBrains Mono',monospace;letter-spacing:1.4px;color:var(--muted);margin-top:2px}.workspace-label{display:flex;align-items:center;gap:12px;color:#afb4b0;font-size:11px}.topbar-right{margin-left:auto;display:flex;align-items:center;gap:12px}.topbar-right strong{font-family:'JetBrains Mono',monospace}.avatar{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:#1d2820;color:#9fc7a9;font-size:10px}.icon-button{border:1px solid var(--border);background:transparent;width:28px;height:28px;border-radius:6px;color:var(--muted)}main{max-width:1680px;margin:auto;padding:22px 28px 0}.page-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.eyebrow{font:9px 'JetBrains Mono',monospace;letter-spacing:1.3px;color:var(--muted)}h1{font-size:23px;letter-spacing:-1px;margin:7px 0 0;font-weight:600}h2{font-size:12px;letter-spacing:-.2px;margin:0;font-weight:600}.snapshot{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:10px}.snapshot strong{font:10px 'JetBrains Mono',monospace;font-weight:400;color:#c5cac6}.status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--green);flex-shrink:0}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:18px;align-items:start}.panel{background:var(--surface);border:1px solid var(--border);border-radius:10px}.overview{padding:17px 18px 12px}.overview-top{display:flex;justify-content:space-between;align-items:center}.spot{font:600 27px 'JetBrains Mono',monospace;letter-spacing:-1.2px;margin-top:6px}.spot>span{font-size:11px;color:var(--green);letter-spacing:0;vertical-align:middle;margin-left:12px}.spot small{font-size:9px;color:var(--muted);font-weight:400}.hour-window{text-align:right}.hour-window strong{display:block;font:500 15px 'JetBrains Mono',monospace;margin:6px 0}.hour-window strong span{color:#555}.hour-window small{font-size:9px;color:var(--amber)}.hour-progress{height:3px;background:#262b27;margin-top:20px;position:relative;border-radius:4px}.hour-progress span{display:block;width:70.333%;height:100%;background:var(--green)}.hour-progress span:after{content:'';position:absolute;left:70.333%;top:-2px;width:7px;height:7px;background:var(--green);border-radius:50%;box-shadow:0 0 10px #00e67670}.time-scale{position:relative;display:flex;justify-content:space-between;margin-top:9px;color:var(--muted);font:9px 'JetBrains Mono',monospace}.time-scale .now{position:absolute;left:70.333%;transform:translateX(-50%);color:var(--green);background:var(--surface);padding:0 4px}.market-heading{display:flex;align-items:center;justify-content:space-between;margin:19px 0 12px}.market-legend{display:flex;gap:13px;color:var(--muted);font-size:9px}.market-legend>span{display:flex;gap:5px;align-items:center}.legend-settled,.legend-queued{width:6px;height:6px;background:#69716a;border-radius:50%;display:inline-block}.legend-queued{background:transparent;border:1px solid #69716a}.tier{display:grid;grid-template-columns:52px minmax(0,1fr);gap:10px;margin-bottom:10px}.tier-label{padding-top:16px;font:600 16px 'JetBrains Mono',monospace;color:#d9ded9}.tier-label small{display:block;font-size:8px;color:var(--muted);font-weight:400;margin-top:4px}.tier-cards{display:grid;gap:8px;grid-template-columns:repeat(var(--columns),minmax(0,1fr))}.market-card{position:relative;min-height:126px;text-align:left;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:12px;display:flex;flex-direction:column;gap:10px;transition:background 80ms,border-color 80ms}.market-card:hover{background:#161a16;border-color:#ffffff30}.market-card[aria-pressed=true]{border-color:var(--green);background:#0e1a12;box-shadow:0 0 0 1px #00e67612}.market-card.queued{border-style:dashed;color:#8c948e}.market-card.settled{background:#0c0d0c}.card-top,.card-bottom{display:flex;align-items:center;justify-content:space-between;gap:5px}.card-time{font:500 10px 'JetBrains Mono',monospace;white-space:nowrap}.badge{font:600 8px 'JetBrains Mono',monospace;letter-spacing:.5px;display:inline-flex;align-items:center;padding:3px 5px;border-radius:3px;border:1px solid #ffffff12;white-space:nowrap}.green{color:var(--green);background:#00e6760e;border-color:#00e67625}.amber{color:var(--amber);background:#ffb3000c;border-color:#ffb30025}.neutral{color:#8b948d;background:#ffffff05}.red{color:var(--red);background:#ff17440d;border-color:#ff174425}.card-benchmark{font:600 17px 'JetBrains Mono',monospace;letter-spacing:-.7px}.card-benchmark small{display:block;font:8px Sora,sans-serif;color:var(--muted);letter-spacing:0;margin-top:4px}.card-bottom{margin-top:auto;font-size:9px;color:var(--muted)}.card-bottom strong{color:var(--green);font:500 10px 'JetBrains Mono',monospace}.card-bottom .loss{color:var(--red)}.card-bottom .queued-label{color:var(--muted)}.market-card.selected .card-bottom:after{content:'✓';color:var(--green)}.rules-strip{display:flex;align-items:center;gap:8px;font-size:9px;color:var(--muted);padding:5px 0 12px}.rules-strip>span{color:var(--cyan);font-size:14px}.rules-strip p{margin:0;line-height:1.6}.rules-strip strong{font-weight:500;color:#bcc3bd}.rules-strip button{margin-left:auto;white-space:nowrap;background:none;border:0;color:#b4bdb6;font-size:9px}.positions{padding:14px 16px}.positions-heading{display:flex;align-items:center;justify-content:space-between}.positions-heading h2 span{font:9px 'JetBrains Mono',monospace;background:#232723;padding:2px 5px;margin-left:5px;border-radius:3px}.positions-heading>.muted{font-size:9px}.empty-state{display:flex;align-items:center;gap:12px;padding:21px 0 7px}.empty-state>span{display:grid;place-items:center;background:#1a211c;border-radius:8px;width:34px;height:34px;color:var(--muted);font-size:20px}.empty-state strong{font-size:10px;font-weight:500;color:#b2b9b3}.empty-state p{font-size:9px;color:var(--muted);margin:5px 0 0}.position-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-top:1px solid var(--border);margin-top:10px;font-size:10px}.position-row small{display:block;margin-top:5px;color:var(--muted);font-size:9px}.position-row>div:last-child{text-align:right;font-family:'JetBrains Mono',monospace}#positions-list{max-height:130px;overflow:auto}.ticket{padding:17px;position:sticky;top:16px}.ticket-title{display:flex;justify-content:space-between;align-items:center;padding-bottom:15px;border-bottom:1px solid var(--border)}.ticket-market{padding:16px 0 12px}.ticket-market>div{display:flex;justify-content:space-between;align-items:center}.duration-label{font:10px 'JetBrains Mono',monospace;color:#b6bfb8}.ticket-market h3{font-size:19px;font-weight:600;letter-spacing:-.6px;margin:9px 0 5px}.ticket-market p{font:10px 'JetBrains Mono',monospace;color:var(--muted);margin:0}.benchmark{display:flex;justify-content:space-between;background:#080b09;border:1px solid var(--border);border-radius:6px;padding:11px;margin-bottom:16px}.benchmark .eyebrow{font-size:8px;letter-spacing:.5px}.benchmark strong{display:block;font:600 15px 'JetBrains Mono',monospace;margin-top:5px}.benchmark-delta{text-align:right}.benchmark-delta strong{color:var(--green);font-size:12px}.side-label{display:flex;align-items:center;gap:7px;font:9px 'JetBrains Mono',monospace;color:var(--muted);margin-bottom:9px}.side-label>span{font:500 10px Sora,sans-serif;color:#bfc7c0}.outcomes{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:18px}.outcome{display:grid;grid-template-columns:1fr auto;text-align:left;border:1px solid var(--border);border-radius:6px;background:#171a17;padding:12px 10px;color:#b7c1b9}.outcome>span{font-size:12px;font-weight:600}.outcome strong{font:600 13px 'JetBrains Mono',monospace}.outcome small{grid-column:1/-1;font-size:8px;margin-top:7px;opacity:.7}.outcome.up[aria-pressed=true]{background:#00e67613;color:var(--green);border-color:#00e67670}.outcome.down[aria-pressed=true]{background:#ff174413;color:#ff5371;border-color:#ff174470}.budget-input{display:flex;align-items:center;gap:8px;border:1px solid #ffffff24;border-radius:6px;background:#080b09;padding:10px 12px}.budget-input>span:first-child{font-size:18px;color:var(--muted)}.budget-input>span:last-child{font:9px 'JetBrains Mono',monospace;color:var(--muted)}input{width:100%;min-width:0;background:none;color:var(--text);border:0;outline:0;font:500 19px 'JetBrains Mono',monospace;appearance:textfield}input::-webkit-inner-spin-button{appearance:none}.stake-presets{display:grid;grid-template-columns:repeat(6,1fr);gap:5px;margin-top:8px}.stake-presets button{font:9px 'JetBrains Mono',monospace;background:#181c19;border:1px solid var(--border);border-radius:4px;padding:8px 0;color:#a5afa7}.stake-presets .selected{color:var(--green);border-color:#00e67650;background:#00e6760b}.order-math{margin:15px 0}.order-math>div{display:flex;justify-content:space-between;gap:10px;font-size:10px;padding:5px 0;color:#a1aca3}.order-math strong{font:500 11px 'JetBrains Mono',monospace;color:#e3e9e4}.order-math small{font-size:8px;color:var(--muted)}.order-math .profit-row{border-top:1px solid var(--border);margin-top:6px;padding-top:12px}.profit-row strong{color:var(--green)}.submit-prediction{display:flex;justify-content:space-between;width:100%;border:0;border-radius:6px;background:var(--green);color:#00230e;font-weight:600;padding:13px;font-size:11px}.submit-prediction.bear{background:#ff1744;color:white}.submit-prediction:disabled{background:#242a25;color:#909a92}.ticket-note{font-size:8px;text-align:center;color:var(--muted);margin:10px 0 0;line-height:1.5}.ticket-rule{border-top:1px solid var(--border);margin-top:15px;padding-top:12px}.ticket-rule>span{font:8px 'JetBrains Mono',monospace;color:var(--muted);letter-spacing:1px}.ticket-rule p{font-size:9px;line-height:1.7;color:#9ba59e;margin:6px 0 0}.muted{color:var(--muted)}footer{display:flex;justify-content:space-between;align-items:center;padding:15px 0;color:#616c64;font:8px 'JetBrains Mono',monospace;letter-spacing:.5px}footer>span:first-child{display:flex;align-items:center;gap:8px;color:#a3aea6}dialog{background:#131713;color:var(--text);border:1px solid #ffffff24;border-radius:12px;padding:24px;width:500px;max-width:90vw;box-shadow:0 20px 100px #000b}dialog::backdrop{background:#000a;backdrop-filter:blur(3px)}.dialog-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:17px}dialog h2{font-size:21px;margin-bottom:15px;letter-spacing:-.6px}dialog p{font-size:11px;line-height:1.9;color:#a6b1a8}dialog a{display:inline-block;color:var(--green);font-size:10px;margin-top:8px}#notification{position:fixed;bottom:22px;left:50%;transform:translate(-50%,15px);opacity:0;pointer-events:none;background:#15241a;border:1px solid #00e67650;padding:14px 20px;border-radius:8px;font-size:11px;transition:opacity .15s,transform .15s;z-index:10;box-shadow:0 6px 40px #0008}#notification.visible{opacity:1;transform:translate(-50%,0)}@media(max-width:1150px){main{padding:18px 18px 0}.topbar{padding:0 18px}.workspace{grid-template-columns:minmax(0,1fr) 296px;gap:14px}.market-card{padding:10px 8px}.card-time{font-size:9px}.card-top{flex-wrap:wrap}.tier{grid-template-columns:42px minmax(0,1fr);gap:7px}.spot{font-size:23px}.spot>span{margin-left:4px}.spot small{display:none}.market-card{min-height:132px}}@media(max-height:820px) and (min-width:1151px){.topbar{height:55px}main{padding-top:15px}.page-heading{margin-bottom:14px}h1{font-size:21px}.overview{padding:13px 16px 10px}.hour-progress{margin-top:14px}.market-heading{margin-top:14px}.market-card{min-height:112px;gap:8px}.ticket{padding:14px}.ticket-market{padding:12px 0 10px}.outcomes{margin-bottom:14px}.benchmark{margin-bottom:12px}.positions{padding:12px 14px}.empty-state{padding-top:14px}.ticket-rule{margin-top:11px;padding-top:9px}footer{padding:12px 0}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
/* Compact laptop height: keep market access and order confirmation in view. */
@media(max-height:820px) and (min-width:1151px){.market-card{min-height:96px}.overview{padding-block:11px 10px}.market-heading{margin-block:12px 10px}.positions{padding:11px 14px}.empty-state{padding-top:12px}.ticket-title{padding-bottom:11px}.ticket-market{padding-top:10px}.ticket-market h3{font-size:18px;margin-top:7px}.outcome{padding:10px}.outcomes{margin-bottom:12px}.budget-input{padding-block:8px}.stake-presets button{padding-block:7px}.order-math{margin-block:11px}.order-math>div{padding-block:4px}.order-math .profit-row{padding-top:9px}.ticket-note{margin-top:8px}.ticket-rule{margin-top:10px;padding-top:8px}}
.time-scale .now{top:-25px;background:transparent;font-size:8px;white-space:nowrap}
.market-card.selected .card-bottom:after{content:none}
@media(max-height:820px) and (min-width:1151px){.market-card{padding:10px 12px;gap:7px}.card-top{line-height:1.2}.card-benchmark{font-size:16px;line-height:1.2}.card-benchmark small{margin-top:3px;line-height:1.2}.card-bottom{line-height:1.2}.ticket-rule p{font-size:8px;line-height:1.5}.ticket-rule{margin-top:8px;padding-top:6px}}
/* One time axis shared by the hourly chart and all three market tiers. */
.market-workspace{--tier-gutter:62px}.timeline-stack{position:relative;isolation:isolate}.hour-chart{margin-left:var(--tier-gutter);margin-bottom:10px;overflow:hidden}.chart-toolbar{height:34px;padding:0 10px;display:flex;justify-content:space-between;align-items:center;gap:8px}.chart-toolbar>div{display:flex;align-items:center;gap:8px}.chart-toolbar .eyebrow{font-size:8px}.chart-toolbar button{background:none;border:0;padding:4px 0;color:#a1afa5;font-size:8px}.chart-toolbar button:hover{color:var(--green)}#chart-source{font-size:8px;color:var(--muted)}.chart-plot{height:130px;position:relative;background:#0b0f0c}.chart-plot svg{display:block;width:100%;height:100%}.chart-grid path{fill:none;stroke:#ffffff0b;stroke-width:1;vector-effect:non-scaling-stroke}.chart-price-scale{position:absolute;right:8px;top:7px;color:#6d7d71;font:8px 'JetBrains Mono',monospace;pointer-events:none}.chart-price-scale.low{top:auto;bottom:6px}.chart-price-tag{position:absolute;transform:translate(-50%,-125%);padding:4px 6px;color:var(--green);border:1px solid #00e67655;background:#0c2013;border-radius:4px;font:9px 'JetBrains Mono',monospace;pointer-events:none;white-space:nowrap}.chart-times{height:23px;display:flex;align-items:center;justify-content:space-between;padding:0 5px;color:var(--muted);font:8px 'JetBrains Mono',monospace}.time-cursor{position:absolute;left:var(--cursor-x,70%);top:35px;bottom:10px;border-left:1px dashed #ff1744c0;z-index:3;pointer-events:none}.time-cursor>span{position:absolute;left:0;top:0;transform:translate(-50%,-100%);background:#ff1744;color:white;border-radius:3px;padding:3px 5px;font:8px 'JetBrains Mono',monospace;white-space:nowrap}.chart-empty{position:absolute;inset:0;display:grid;place-items:center;color:var(--muted);font-size:10px;pointer-events:none}.chart-empty[hidden]{display:none}.spot>#btc-spot{font:inherit;color:inherit;vertical-align:baseline;margin-left:0}.spot>#btc-change{font-size:10px;margin-left:10px}.overview{padding:12px 16px!important}.overview .overview-top{min-height:47px}.positions{margin-top:4px}@media(max-width:1150px){.market-workspace{--tier-gutter:49px}#chart-source{display:none}}@media(max-height:820px){.page-heading{margin-bottom:10px}.overview .overview-top{min-height:40px}.spot{font-size:22px}.market-heading{margin:11px 0 9px}.chart-plot{height:105px}.chart-toolbar{height:29px}.time-cursor{top:30px}.chart-times{height:20px}.hour-chart{margin-bottom:8px}.tier{margin-bottom:8px}.market-card{min-height:84px!important;padding:8px 10px!important;gap:5px!important}.card-benchmark{font-size:15px;line-height:1.2}.card-benchmark small{margin-top:2px}.card-bottom{font-size:8px}.card-bottom strong{font-size:9px}.rules-strip{padding-bottom:8px}.positions{padding:10px 12px}.empty-state{padding:11px 0 0}.positions-heading>.muted{font-size:8px}.empty-state>span{width:27px;height:27px}}
.time-cursor{bottom:0}

.timeline-stack{--chart-height:130px}.time-cursor>span{top:calc(var(--chart-height) + 18px)}@media(max-height:820px){.timeline-stack{--chart-height:105px}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.spot{display:flex;align-items:center;gap:9px}.spot>#price-coin-icon{width:30px;height:30px;flex-shrink:0}.spot>#btc-change{margin-left:2px}.workspace-label{gap:10px}#current-hour{color:var(--green)}.price-context{font:7px 'JetBrains Mono',monospace;color:var(--muted);margin-left:9px;letter-spacing:.7px}.time-cursor[hidden]{display:none}

/* Fixed quarter-hour boundaries share the chart's full-hour axis. */
.interval-guides{position:absolute;left:calc(var(--tier-gutter) + 1px);right:1px;top:35px;bottom:0;z-index:2;pointer-events:none}
.interval-guide{position:absolute;left:var(--boundary);top:0;bottom:0;border-left:2px dashed #ffd54f;filter:drop-shadow(0 0 3px #ffb30045)}
@media(max-height:820px){.interval-guides{top:30px}}

/* Direct coin selection with native keyboard-accessible buttons. */
.coin-picker{display:flex;align-items:center;gap:5px;padding:4px;border:1px solid var(--border);border-radius:9px;background:#101510}
.coin-button{display:flex;align-items:center;gap:7px;border:1px solid transparent;border-radius:6px;background:transparent;padding:7px 9px;color:#8e9b92;font:500 10px 'JetBrains Mono',monospace;transition:background 80ms,border-color 80ms}
.coin-button img{display:block;flex-shrink:0}.coin-button:hover{background:#202820;color:#eee}.coin-button[aria-pressed="true"]{background:#00e67612;border-color:#00e67655;color:var(--green)}
@media(max-width:1150px){.topbar{gap:22px}.coin-button{padding:6px 7px;gap:5px}.coin-picker{gap:2px}}
.chance-row{display:flex;align-items:center;justify-content:flex-start;gap:14px;font:700 14px 'JetBrains Mono',monospace;line-height:1.3;border-top:1px solid var(--border);padding-top:5px}.chance-up{color:var(--green)}.chance-down{color:#ff6a84}
@media(max-height:820px){.chart-plot{height:85px}.timeline-stack{--chart-height:85px}.market-card{gap:3px!important}.chance-row{padding-top:3px}.card-benchmark small{font-size:7px}.card-bottom{line-height:1.15}}

@media(max-width:1150px){.chance-row{font-size:12px;gap:8px}}

/* Keep price and time together; reserve the former heading space for markets. */
main{padding-top:12px}
.price-summary{min-width:0}
.price-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px 18px;margin-top:6px}
.price-row .spot{margin-top:0;flex-wrap:wrap}
.price-clock{border-left:1px solid var(--border);padding-left:14px;white-space:nowrap}
.price-clock strong{font-size:12px;color:var(--text);font-weight:500}
.overview-top{gap:16px}
.hour-window{flex-shrink:0}
@media(max-width:1150px){.price-row{gap:7px 12px}.price-clock{padding-left:10px}.price-clock strong{font-size:11px}.spot>#btc-change{font-size:9px}}

.chance-row[hidden]{display:none}

/* A single compact status line keeps the selected bet and its clock in view. */
body:not(.auth-page) main{padding:10px 20px 0}
.workspace{gap:14px}
.market-status-strip{gap:12px;margin:9px 0 8px;padding:8px 10px;border:1px solid var(--border);border-radius:6px;background:#0c100d;min-height:34px}
.selected-status{display:flex;align-items:center;gap:12px;min-width:0;font:10px 'JetBrains Mono',monospace;white-space:nowrap}
.selected-status strong{font-weight:600}
#selected-time{color:#bec8c0}
#selected-countdown{color:var(--amber);font-variant-numeric:tabular-nums}
.market-status-strip .market-legend{gap:9px;font-size:8px;flex-shrink:0}
.ticket-status-line{display:flex;align-items:center;gap:8px!important;white-space:nowrap}
.ticket-status-line #ticket-time{font:9px 'JetBrains Mono',monospace;color:var(--muted);margin-left:auto}
.ticket-status-line .duration-label{font-size:9px}
.ticket-market{padding:11px 0 9px}
.ticket-market h3{margin:9px 0 0;font-size:18px}
.overview{padding:10px 14px!important}
.positions{padding:10px 12px}
.position-row{gap:12px;margin-top:7px;padding:8px 0}
.position-row>div:first-child{display:flex;align-items:center;flex-wrap:wrap;gap:5px 12px;min-width:0}
.position-row>div:first-child small{margin-top:0}
#positions-list:empty{display:none}
@media(max-width:1150px){.selected-status{gap:8px;font-size:9px}.market-status-strip .market-legend{display:none}.ticket-status-line{gap:5px!important}}
@media(max-height:820px){.market-status-strip{margin:7px 0;min-height:31px;padding:6px 9px}.ticket-market{padding:10px 0 8px}.ticket-market h3{margin-bottom:0}.overview{padding:9px 12px!important}body:not(.auth-page) footer{padding:9px 0}}
/* Put hour navigation beside its readout instead of stacking four rows. */
.hour-window{display:grid;grid-template-columns:auto auto;align-items:center;gap:4px 12px}
.hour-window>#hour-date{grid-column:1;grid-row:1;font-size:8px}
.hour-window>#hour-window-label{grid-column:1;grid-row:2;margin:0;font-size:14px}
@media(max-width:1150px){.hour-window{column-gap:8px}.hour-window>#hour-window-label{font-size:12px}}

.startup-help{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:12px;margin-bottom:12px;border:1px solid #ffb30055;border-radius:7px;background:#ffb3000b;font-size:11px;color:var(--amber)}.startup-help a{margin-left:auto;text-decoration:underline}.startup-help button{border:1px solid #ffb30055;border-radius:4px;background:transparent;padding:6px 10px;color:var(--amber)}

/* Bright interval edges separate adjacent prediction segments. */
.tier-cards>.market-card:not(:last-child){border-right-color:#ffd54f;box-shadow:2px 0 5px #ffb30018}
.tier-cards>.market-card.selected{border-color:var(--green);box-shadow:0 0 0 1px #00e67612}

/* Each prediction horizon has its own outline and horizontal divider. */
.tier[data-duration="60"]{--tier-color:#ffd54f}
.tier[data-duration="30"]{--tier-color:#00d4ff}
.tier[data-duration="15"]{--tier-color:#b388ff}
.tier[data-duration]{position:relative;padding-top:7px;border-top:2px solid var(--tier-color)}
.tier[data-duration] .tier-label{color:var(--tier-color)}
.tier[data-duration] .market-card{border-color:color-mix(in srgb,var(--tier-color) 65%,transparent)}
.tier[data-duration] .market-card:not(:last-child){border-right-color:var(--tier-color);box-shadow:none}
.tier[data-duration] .market-card:hover{border-color:var(--tier-color)}
.tier[data-duration] .market-card.selected{border-color:var(--green);box-shadow:0 0 0 1px #00e67625}

/* Quarter-hour guides belong to the chart; each row marks only its own ends. */
.interval-guides{bottom:auto;height:var(--chart-height)}
.tier[data-duration] .market-card::after{content:'';position:absolute;top:-1px;bottom:-1px;right:-5px;border-left:2px dashed #ffd54f;filter:drop-shadow(0 0 3px #ffb30045);pointer-events:none}
.tier[data-duration] .market-card:last-child::after{right:-5px}
.tier[data-duration] .market-card:first-child::before{content:'';position:absolute;top:-1px;bottom:-1px;left:-5px;border-left:2px dashed #ffd54f;filter:drop-shadow(0 0 3px #ffb30045);pointer-events:none}

.portfolio-icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;color:var(--green);border:1px solid #00e67640;border-radius:6px;background:#00e67608;flex-shrink:0}.portfolio-icon:hover{background:#00e67618}.portfolio-icon svg{width:18px;height:18px}.pending-history-link{margin-left:auto;color:var(--green);font-size:9px;white-space:nowrap}.positions-heading{gap:12px}.positions-list-empty{padding:12px 0 2px;color:var(--muted);font-size:10px}@media(max-width:1150px){.positions-heading>.muted{display:none}}

/* Direction colors remain visible before choosing an outcome. */
.outcome.up>span,.outcome.up>strong{color:var(--green)}
.outcome.down>span,.outcome.down>strong{color:var(--red)}
.chance-up,.chance-down{white-space:nowrap}
@media(max-width:1150px){.chance-row{gap:6px;font-size:11px}}

/* Phase2: data provenance, estimates and purchase prices have distinct labels. */
.data-health{display:flex;align-items:center;flex-wrap:wrap;gap:5px 14px;margin:0 0 8px;color:var(--muted);font:8px 'JetBrains Mono',monospace}.data-health strong{font-weight:500;margin-left:auto}.chance-block{border-top:1px solid var(--border);padding-top:4px}.chance-block .chance-row{border:0;padding-top:2px}.card-distance{font:9px 'JetBrains Mono',monospace;line-height:1.4}.settlement-details{margin-top:7px;font-size:9px;color:var(--muted)}.settlement-details summary{cursor:pointer;color:var(--cyan)}.settlement-details p{line-height:1.6}.benchmark .eyebrow{font-size:7px;letter-spacing:0}.market-card{gap:5px}.card-benchmark small{font-size:7px}@media(max-width:1150px){.card-distance{font-size:8px}}@media(max-width:480px){.data-health strong{margin-left:0}}

/* Keep the distance and countdown together to preserve laptop playfield space. */
.card-context{display:flex;align-items:center;justify-content:space-between;gap:8px}.card-context .card-bottom{margin:0;white-space:nowrap}.card-distance{font-size:8px}.chance-block{padding-top:3px}
@media(min-width:901px) and (max-height:820px){.chart-plot{height:70px}.timeline-stack{--chart-height:70px}.market-card{padding:7px 9px!important;gap:2px!important}.card-benchmark small{margin-top:1px}.chance-block .chance-row{padding-top:1px}.tier{margin-bottom:6px}}

/* Saved predictions sit beside their segment benchmark. */
.segment-price{display:flex;align-items:center;flex-wrap:wrap;gap:4px 8px}.segment-predictions{display:inline-flex;flex-wrap:wrap;gap:4px}.segment-prediction{display:inline-flex;align-items:center;gap:4px;padding:2px 5px;border:1px solid currentColor;border-radius:4px;font:600 10px monospace;letter-spacing:0;white-space:nowrap}.segment-prediction.up{color:var(--green);background:#00e67610}.segment-prediction.down{color:var(--red);background:#ff174410}

/* Completed intervals show their confirmed direction at the right edge. */
.segment-result{position:absolute;right:10px;top:50%;transform:translateY(-50%);font:700 30px monospace;line-height:1;pointer-events:none}.segment-result.up{color:var(--green)}.segment-result.down{color:var(--red)}.market-card.settled .card-benchmark,.market-card.settled .card-context{padding-right:28px}

/* Review repeats the chosen direction in words, an arrow, and color. */
.review-direction{display:flex;align-items:center;gap:12px;padding:12px 14px;margin-bottom:16px;border:1px solid currentColor;border-radius:8px;color:var(--green);background:#00e6760c}.review-direction.down{color:var(--red);background:#ff17440c}.review-direction>span{font:700 34px monospace;line-height:1}.review-direction>strong{font-size:17px}.review-direction~h2{font-size:18px}#confirm-prediction{justify-content:center;gap:8px}

.segment-prediction.won{color:var(--green);background:#00e67610}.segment-prediction.lost{color:var(--red);background:#ff174410}

.review-estimate{margin-left:auto;text-align:right}.review-estimate strong{display:block;font:700 21px monospace;white-space:nowrap}@media(max-width:480px){.review-direction{flex-wrap:wrap}.review-estimate strong{font-size:18px}}

/* Finished segments use a quiet grey surface with accessible outcome colors. */
.market-card.settled{background:#b8bfbc;color:#26342d;--muted:#58645e;--green:#007c40;--red:#c9153e;--border:#26342d25}.market-card.settled:hover{background:#c1c8c4}.market-card.settled .card-bottom{color:var(--muted)}.market-card.settled .neutral{color:var(--muted)}

.market-card.settled{border-style:dashed}

.outcome #up-chance,.outcome #down-chance{font-size:20px}.outcome .outcome-quote{opacity:1;margin-top:6px;color:var(--muted)}.outcome-quote b{font-weight:600}.outcome small:last-child{margin-top:4px}

/* Upcoming intervals use a pale yellow surface distinct from completed grey. */
.market-card.queued{background:#fff0b3;color:#51451c;--muted:#75632f;--border:#75632f33}.market-card.queued:hover{background:#ffe89a}.market-card.queued .neutral{color:#75632f;background:#75632f0c;border-color:#75632f33}

/* Keep active interval countdowns easy to scan at the right edge. */
.market-card [data-remaining]{color:#ffd54f;font-weight:700;font-size:11px;font-variant-numeric:tabular-nums}

.ticket-selected-window{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:5px 10px;margin-top:10px;padding:9px 10px;border:1px solid var(--border);border-radius:6px;background:var(--raised)}.ticket-selected-window strong{font-size:11px;color:var(--cyan)}.ticket-selected-window span{font:10px monospace;color:var(--text)}.ticket-status-line #ticket-duration,.ticket-status-line #ticket-time{display:none}.ticket-status-line{justify-content:flex-end}

/* Price and countdown share a row; saved bets anchor the segment footer. */
.segment-price{justify-content:space-between;gap:4px}.segment-countdown{margin-left:auto;letter-spacing:0;white-space:nowrap}.market-card>.segment-predictions{margin-top:auto;padding-top:4px}.card-distance{font-size:9px;white-space:nowrap}.card-context:has(.card-bottom:empty) .card-bottom{display:none}
@media(max-width:1150px){.market-card .segment-countdown{font-size:10px}.card-distance{font-size:8px}}

#review-error{color:var(--red);font-weight:600}#review-error:empty{display:none}

.review-time{margin:10px 0;padding:9px 12px;border:1px solid var(--border);border-radius:6px;color:var(--amber);font:700 14px monospace;font-variant-numeric:tabular-nums}.review-time.expired{color:var(--red);border-color:var(--red)}

/* Selection distinguishes an available interval from a closed one. */
:root .tier[data-duration] .market-card.open.selected{border-color:#2979ff;border-style:solid;box-shadow:inset 0 0 0 2px #2979ff,0 0 0 1px #2979ff,0 0 12px #2979ff30}



/* Closed and upcoming selections have informational panes instead of order controls. */
:root .tier[data-duration] .market-card.settled.selected{border:2px solid #89938d;outline:none;box-shadow:none}
:root .tier[data-duration] .market-card.settled.result-up.selected{border-color:#00e676;box-shadow:inset 0 0 0 2px #00e676,0 0 0 1px #00e676}
:root .tier[data-duration] .market-card.settled.result-down.selected{border-color:#ff1744;box-shadow:inset 0 0 0 2px #ff1744,0 0 0 1px #ff1744}
.ticket-coin{display:flex;align-items:center;gap:9px;margin-top:9px}.ticket-coin h3{margin:0}.ticket-coin img{object-fit:contain}.interval-details h3{font-size:18px;margin:14px 0}.interval-details dl{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px 14px;font-size:10px;line-height:1.5}.interval-details dt{color:var(--muted)}.interval-details dd{margin:0;text-align:right;overflow-wrap:anywhere}.interval-details p{font-size:10px;line-height:1.7;color:var(--muted)}

.ticket-market>.ticket-coin{justify-content:flex-start}.ticket-market>.ticket-coin h3{margin:0}

/* Frame the hour range with previous and next controls. */
.hour-window{grid-template-columns:1fr;gap:4px;text-align:center}.hour-window>#hour-date{grid-column:1;grid-row:1}.hour-time-navigation{display:flex;align-items:center;justify-content:center;gap:10px;grid-column:1;grid-row:2}.hour-time-navigation>#hour-window-label{margin:0;font:500 14px monospace;white-space:nowrap}.hour-time-navigation button,.hour-window>#current-hour{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border:1px solid var(--border);border-radius:6px;background:var(--raised);color:var(--text)}.hour-time-navigation svg,.hour-window>#current-hour svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.hour-time-navigation button:hover,.hour-window>#current-hour:hover{color:var(--green);border-color:var(--green)}.hour-time-navigation button:disabled{opacity:.3}.hour-window>#current-hour{grid-column:1;grid-row:3;justify-self:center;color:var(--green)}
@media(max-width:480px){.hour-window{grid-template-columns:1fr}.hour-time-navigation{justify-content:flex-start}.hour-window>#current-hour{justify-self:start}}

/* A subdued rubber stamp marks completed intervals without crossing their data. */
.settled-stamp{position:absolute;right:35px;top:50%;transform:translateY(-50%) rotate(-10deg);padding:3px 6px;border:2px double #34443b75;border-radius:3px;color:#34443b9c;font:800 10px monospace;letter-spacing:1px;line-height:1;pointer-events:none;user-select:none}.market-card.settled .card-context{padding-right:110px}

.settled-stamp.has-wager{display:flex;flex-direction:column;gap:5px;border:0;padding:0;letter-spacing:.5px}
.wager-settlement{display:block;border:2px solid currentColor;border-radius:3px;padding:4px 6px;background:var(--surface)}
.wager-settlement.won,.segment-prediction.won{color:var(--green)}
.wager-settlement.lost,.segment-prediction.lost{color:var(--red)}

.prediction-context{margin:-4px 0 18px;padding:12px;border:1px solid var(--border);border-radius:8px;background:var(--raised)}.prediction-context-top{display:flex;justify-content:space-between;align-items:center;gap:8px}.prediction-context-top span{font:8px monospace;color:var(--muted);letter-spacing:.6px}.prediction-context-top strong{font:600 15px monospace}.prediction-context-time,.prediction-context-note{font-size:9px;line-height:1.6;color:var(--muted);margin:6px 0 10px}.prediction-hour{position:relative;height:8px;border-radius:4px;background:var(--surface);overflow:hidden}.prediction-hour span{position:absolute;height:100%;background:var(--cyan);border-radius:4px}.prediction-hour-labels{display:flex;justify-content:space-between;gap:8px;margin-top:6px;font:8px monospace;color:var(--muted)}#ticket-interval-timing{color:var(--text)}#ticket-comparison{font:10px monospace;line-height:1.5;margin:12px 0}.prediction-win-rules{display:grid;gap:6px;font:10px monospace;line-height:1.5}.prediction-win-rules span:first-child{color:var(--green)}.prediction-win-rules span:last-child{color:var(--red)}.prediction-context[data-side="up"] .prediction-win-rules span:first-child,.prediction-context[data-side="down"] .prediction-win-rules span:last-child{font-weight:700;text-decoration:underline;text-underline-offset:3px}.prediction-context-note{margin:10px 0 0}

.ticket-title.sr-only{margin:0;padding:0;border:0}

/* Compact prediction ticket: emphasize decisions, keep details within reach. */
.workspace>.ticket{padding:14px;min-width:0}
.ticket .ticket-market{position:relative;padding:0 0 10px}
.ticket .ticket-status-line{position:absolute;right:0;top:2px}
.ticket .ticket-coin{padding-right:54px;min-height:28px}
.ticket .ticket-coin h3{font-size:17px;line-height:1.3}
.ticket .ticket-selected-window{margin-top:7px;padding:7px 8px;gap:4px 8px}
.ticket .ticket-selected-window strong,.ticket .ticket-selected-window span{font-size:10px}
.ticket .benchmark{padding:10px;margin-bottom:8px}
.ticket .benchmark>div:first-child{width:100%}
.ticket .benchmark strong{font-size:20px;margin-top:4px}
.ticket .benchmark-delta{display:none}
.ticket .benchmark .eyebrow{font-size:8px;color:var(--muted)}
.ticket .prediction-context{padding:9px 10px;margin:0 0 12px}
.ticket .prediction-context-top strong{font-size:16px}
.ticket .prediction-context-time{font-size:9px;line-height:1.4;margin:4px 0 8px}
.ticket .prediction-hour{height:6px}
.ticket #ticket-comparison{font-size:11px;line-height:1.4;margin:8px 0}
.ticket .prediction-win-rules{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:10px}
.ticket .prediction-context-note{display:none}
.ticket .side-label{margin:8px 0 7px;font-size:11px}
.ticket .outcomes{gap:8px;margin-bottom:10px}
.ticket .outcome{padding:10px;min-height:84px}
.ticket .outcome #up-chance,.ticket .outcome #down-chance{font-size:24px}
.ticket .outcome .outcome-quote{margin-top:4px;font-size:10px}
.ticket .outcome small:last-child{display:none}
.ticket .budget-input{padding:8px 10px}
.ticket .budget-input input{font-size:20px;min-width:0}
.ticket .stake-presets{gap:4px;margin-top:6px}
.ticket .stake-presets button{padding:8px 3px;font-size:10px;min-width:0}
.ticket .order-math{margin:10px 0}
.ticket .order-math>div{padding:4px 0;font-size:11px}
.ticket .order-math strong{font-size:12px}
.ticket .order-math .profit-row{padding-top:7px;margin-top:4px}
.ticket .submit-prediction{padding:12px 10px;min-height:42px;font-size:12px}
.ticket .ticket-note{font-size:9px;margin:6px 0 0}
.ticket .ticket-rule{margin-top:10px;padding-top:8px}
.ticket .ticket-rule>span{font-size:8px;letter-spacing:.4px}
.ticket .ticket-rule p{font-size:10px;line-height:1.5}
@media(min-width:851px){
  .workspace>.ticket{position:sticky;top:12px;max-height:calc(100dvh - 24px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--muted) transparent}
}
@media(max-width:850px){
  .workspace>.ticket{padding:16px}
  .ticket .outcome{min-height:90px}
  .ticket .stake-presets button{min-height:38px}
  .ticket .budget-input input{font-size:22px}
}

/* Selected coin occupies the graph gutter beside the price plot. */
.chart-coin-icon{position:absolute;left:0;top:35px;width:var(--tier-gutter);height:var(--chart-height);display:flex;align-items:center;justify-content:center;pointer-events:none}
.chart-coin-icon img{width:32px;height:32px;object-fit:contain}
@media(max-height:820px){.chart-coin-icon{top:30px}}
@media(max-width:850px){.chart-coin-icon{top:35px}}

/* Sixty compact cells turn the hour's completed minute candles into a direction heat map. */
.minute-heatmap-wrap{padding:7px 6px 2px;background:#0b0f0c;border-top:1px solid #ffffff0b}
.minute-heatmap-label{display:flex;align-items:center;justify-content:space-between;margin:0 1px 6px;color:var(--muted);font:7px 'JetBrains Mono',monospace;letter-spacing:.6px}
.minute-heatmap-legend{display:flex;align-items:center;gap:4px;letter-spacing:0}
.minute-heatmap-legend i{width:5px;height:5px;border-radius:50%;background:var(--green);box-shadow:0 0 5px #00e67680}
.minute-heatmap-legend i.down{margin-left:4px;background:var(--red);box-shadow:0 0 5px #ff174480}
.minute-heatmap{display:grid;grid-template-columns:repeat(60,minmax(0,1fr));align-items:center;gap:2px;height:10px}
.minute-dot{display:block;width:min(8px,100%);aspect-ratio:1;justify-self:center;border-radius:50%;background:#59615c30;box-shadow:inset 0 0 0 1px #ffffff0b;opacity:.65}
.minute-dot.up{background:var(--green);box-shadow:0 0 var(--heat-glow,3px) #00e676;opacity:var(--heat-opacity,.7)}
.minute-dot.down{background:var(--red);box-shadow:0 0 var(--heat-glow,3px) #ff1744;opacity:var(--heat-opacity,.7)}
.minute-dot.current{background:transparent;box-shadow:0 0 0 1px var(--amber),0 0 5px #ffb30080;opacity:1;animation:minute-pulse 1.8s ease-in-out infinite}
@keyframes minute-pulse{50%{opacity:.4}}
@media(prefers-reduced-motion:reduce){.minute-dot.current{animation:none}}
@media(max-height:820px){.minute-heatmap-wrap{padding-top:5px}.minute-heatmap-label{margin-bottom:4px}.minute-heatmap{height:8px}.minute-dot{width:min(6px,100%)}}
.time-cursor>span{top:calc(var(--chart-height) + 45px)}

/* Live wall-clock times remain readable alongside the spot price. */
.price-clock{flex-wrap:wrap;gap:7px 10px}
.price-clock strong{font-size:18px;font-weight:600;font-variant-numeric:tabular-nums;line-height:1.4}
.price-clock .clock-divider{color:var(--muted);font-size:16px}
@media(max-width:480px){.price-clock strong{font-size:16px}}

/* A compact instrument header: price, live clocks, and market window. */
.terminal-overview.overview{padding:16px 18px!important;border-radius:12px}
.terminal-overview .overview-top{display:grid;grid-template-columns:minmax(130px,1fr) auto auto;gap:20px;align-items:center}
.terminal-overview .price-heading{display:flex;align-items:center;flex-wrap:wrap;gap:6px 9px}
.terminal-overview #coin-name{font-size:10px;font-weight:600;letter-spacing:1.2px;color:var(--text)}
.terminal-overview .price-context{margin:0;padding:3px 6px;border:1px solid var(--border);border-radius:4px;font:8px 'JetBrains Mono',monospace;color:var(--muted);letter-spacing:.5px}
.terminal-overview .price-row{margin-top:8px}
.terminal-overview .spot{display:flex;align-items:flex-start;flex-direction:column;gap:5px;font-size:26px;letter-spacing:-1px;line-height:1.15}
.terminal-overview .spot>#btc-change{margin:0;font:9px 'JetBrains Mono',monospace;letter-spacing:0}
.terminal-overview .price-clock{display:flex;align-items:center;white-space:nowrap}
.terminal-overview .clock-face{flex-direction:column;gap:9px}
.terminal-overview .clock-caption{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:9px}
.terminal-overview .clock-caption .status-dot{width:5px;height:5px}
.terminal-overview .price-clock strong{font:500 17px 'JetBrains Mono',monospace;font-variant-numeric:tabular-nums;color:var(--text);letter-spacing:-.5px;line-height:1.3}
.terminal-overview .hour-window{display:flex;flex-direction:column;gap:8px;text-align:left}
.terminal-overview .window-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}
.terminal-overview .window-heading .eyebrow{letter-spacing:.5px}
.terminal-overview .hour-time-navigation{display:flex;justify-content:space-between;border:1px solid var(--border);background:var(--bg)}
.terminal-overview .hour-time-navigation>#hour-window-label{font:500 13px 'JetBrains Mono',monospace;color:var(--text)}
.terminal-overview .hour-time-navigation button{border:0;background:var(--raised);color:var(--text)}
.terminal-overview .hour-time-navigation button:hover:not(:disabled){background:var(--surface);color:var(--cyan)}
.terminal-overview .hour-time-navigation button:disabled{cursor:default;opacity:.25}
.terminal-overview .hour-window>#current-hour{align-self:flex-end;width:auto;height:auto;gap:6px;color:var(--green)}
.terminal-overview .hour-window>#current-hour[hidden]{display:none}
@media(min-width:851px) and (max-width:1250px){
 .terminal-overview .overview-top{grid-template-columns:minmax(0,1fr) auto;gap:14px 20px}
 .terminal-overview .price-clock{border:0}
 .terminal-overview .clock-face{flex-direction:row;align-items:center;gap:10px}
}
@media(max-width:850px){
 .terminal-overview .overview-top{grid-template-columns:minmax(0,1fr) auto;gap:16px}
 .terminal-overview .price-clock{border:0}
 .terminal-overview .clock-face{flex-direction:row;align-items:center;gap:10px}
}
@media(max-width:480px){
 .terminal-overview.overview{padding:14px!important}
 .terminal-overview .overview-top{grid-template-columns:minmax(0,1fr);gap:14px}
 .terminal-overview .hour-window{width:100%;grid-row:2}
 .terminal-overview .clock-face{flex-direction:column;align-items:flex-start;gap:5px}
 .terminal-overview .spot{flex-direction:row;align-items:baseline;gap:10px;flex-wrap:wrap}
}

/* Keep price, timezone-suffixed clocks, and navigation on a single desktop row. */
.terminal-overview .overview-top{grid-template-columns:minmax(110px,1fr) auto auto;gap:14px}
.terminal-overview .price-clock{grid-column:auto;grid-row:auto;flex-wrap:nowrap;border-top:0;border-left:1px solid var(--border);border-right:1px solid var(--border)}
.terminal-overview .clock-face{display:block}
.terminal-overview .price-clock strong{font-size:17px}
@media(max-width:1050px) and (min-width:851px){
 .terminal-overview.overview{padding:12px!important}
 .terminal-overview .overview-top{gap:10px}
 .terminal-overview .price-clock strong{font-size:15px}
 .terminal-overview .spot{font-size:23px}
}
@media(max-width:650px){
 .terminal-overview .overview-top{grid-template-columns:minmax(0,1fr) auto}
 .terminal-overview .price-clock{grid-column:1/-1;grid-row:2;border:0;border-top:1px solid var(--border)}
 .terminal-overview .hour-window{grid-row:1;width:auto}
}
@media(max-width:380px){
 .terminal-overview .overview-top{grid-template-columns:minmax(0,1fr)}
 .terminal-overview .hour-window{grid-row:2;width:100%}
 .terminal-overview .price-clock{grid-row:3}
}

.terminal-overview .price-clock .clock-divider{font-size:20px;font-weight:800;line-height:1;color:var(--text)}

#review-dialog .review-close{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:44px;height:44px;padding:9px;border:1px solid var(--muted);border-radius:9px;background:var(--raised);color:var(--text)}
#review-dialog .review-close svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round}
#review-dialog .review-close:hover{background:var(--surface);border-color:var(--text)}

#review-dialog .review-actions{display:flex;align-items:stretch;gap:10px;margin-top:16px}
#review-dialog .review-cancel{min-height:44px;padding:12px 20px;border:1px solid var(--muted);border-radius:6px;background:var(--raised);color:var(--text);font-weight:600}
#review-dialog .review-cancel:hover{border-color:var(--text);background:var(--surface)}
#review-dialog .review-actions .submit-prediction{flex:1;min-width:0;min-height:44px}

/* Center live clocks in the space between price and hour navigation. */
.terminal-overview .overview-top{grid-template-columns:auto minmax(0,1fr) auto;gap:16px}
.terminal-overview .price-clock{justify-self:stretch;justify-content:center;gap:12px;padding:0 12px}
.terminal-overview .hour-window{min-width:244px}
.terminal-overview .hour-time-navigation{gap:12px;padding:4px;border-radius:10px}
.terminal-overview .hour-time-navigation button{width:40px;height:40px;flex-shrink:0;border-radius:7px;font-size:20px}
.terminal-overview .hour-time-navigation svg{width:22px;height:22px;stroke-width:2.25}
.terminal-overview .hour-time-navigation>#hour-window-label{font-size:16px;font-weight:600;font-variant-numeric:tabular-nums}
.terminal-overview .hour-window>#current-hour{min-height:36px;padding:6px 10px;font-size:12px;border:1px solid var(--border);border-radius:7px;background:var(--raised)}
.terminal-overview .window-heading .eyebrow{font-size:9px}
@media(min-width:851px) and (max-width:1150px){
 .terminal-overview .overview-top{gap:8px}
 .terminal-overview .price-clock{gap:8px;padding:0 8px}
 .terminal-overview .hour-window{min-width:220px}
 .terminal-overview .hour-time-navigation{gap:8px}
 .terminal-overview .hour-time-navigation button{width:36px;height:40px}
 .terminal-overview .hour-time-navigation>#hour-window-label{font-size:14px}
}
@media(max-width:720px){
 .terminal-overview .overview-top{grid-template-columns:minmax(0,1fr) auto}
 .terminal-overview .price-clock{grid-column:1/-1;grid-row:2;justify-content:center;border:0;border-top:1px solid var(--border);padding:12px 0 0}
 .terminal-overview .hour-window{grid-column:2;grid-row:1;min-width:220px}
 .terminal-overview .hour-time-navigation>#hour-window-label{font-size:14px}
}
@media(max-width:420px){
 .terminal-overview .overview-top{grid-template-columns:minmax(0,1fr)}
 .terminal-overview .hour-window{grid-column:1;grid-row:2;min-width:0;width:100%}
 .terminal-overview .price-clock{grid-row:3}
}

/* Only the banner fractional digits follow the latest one-second price move. */
#btc-spot .spot-decimals[data-trend="up"]{color:var(--green)}
#btc-spot .spot-decimals[data-trend="down"]{color:var(--red)}
