/* Tradecof shared visual tokens. No financial values or execution behavior. */
:root,html[data-theme="dark"]{--bg:#181b20;--bg-soft:#20242b;--card:#272c34;--card-hover:#303640;--line:#454d59;--line-soft:#353c46;--text:#dce2e9;--text-strong:#f0f3f7;--muted:#b0bbc8;--muted-2:#99a6b6;--ok:#51d6a3;--bad:#ff8b88;--info:#58cedd;--crypto:#b3a1f5;--gold:#edc56b;--warn:#edb668;--neutral:#b0bbc8;--action:#137c75;--action-ink:#fff;--surface-head:#303640;--panel:var(--card);--buy-fill:#087b58;--sell-fill:#b83843;--accent-pink:#da91bd;--grad:linear-gradient(120deg,#137c75,#247f99);--brand-gradient:linear-gradient(90deg,#137c75,#247f99);--coffee-bg:var(--bg);--coffee-bg-soft:var(--bg-soft);--coffee-card:var(--card);--coffee-line:var(--line);--coffee-text:var(--text);--coffee-muted:var(--muted);--coffee-accent:var(--crypto);--coffee-gold:var(--gold)}
html[data-theme="light"],html:not(.dark):has(.fi-body){--bg:#f4f3f0;--bg-soft:#eeefeb;--card:#fff;--card-hover:#f7f8f5;--line:#cad1cc;--line-soft:#e3e7e2;--text:#303b3a;--text-strong:#162c29;--muted:#526561;--muted-2:#60716d;--ok:#086c49;--bad:#b52c3c;--info:#087487;--crypto:#7050b1;--gold:#8b650c;--warn:#94531d;--neutral:#526561;--surface-head:#edf2ef;--accent-pink:#a83d7c}
body{line-height:1.8}h1,h2,h3,h4{color:var(--text-strong);line-height:1.45;text-wrap:balance}h1{letter-spacing:-.025em}p{line-height:1.85}small,.muted{color:var(--muted)}
body:not(.fi-body) :is(input,select,textarea,button,a):focus-visible{outline:2px solid var(--info);outline-offset:3px}
body:not(.fi-body) :is(input,select,textarea){accent-color:var(--action)}
body:not(.fi-body) :is(table,.tc-metrics){font-variant-numeric:tabular-nums}body:not(.fi-body) th{background:var(--surface-head);color:var(--text-strong);line-height:1.5}body:not(.fi-body) tbody tr:nth-child(even){background:color-mix(in srgb,var(--info) 3%,var(--card))}body:not(.fi-body) tbody tr:hover{background:color-mix(in srgb,var(--info) 7%,var(--card))}
.positive,.chg.up,.tc-profit{color:var(--ok)}.negative,.chg.down,.tc-loss{color:var(--bad)}
.tc-warning{background:color-mix(in srgb,var(--warn) 10%,var(--card));border:1px solid color-mix(in srgb,var(--warn) 45%,var(--line));color:var(--text)}.tc-notice,.notice-toast{background:color-mix(in srgb,var(--info) 7%,var(--card));color:var(--text)}
.tc-metrics article{border-block-start:3px solid var(--info)}.tc-metrics article:nth-child(3n+2){border-block-start-color:var(--crypto)}.tc-metrics article:nth-child(3n){border-block-start-color:var(--gold)}.tc-metrics strong{color:var(--text-strong)}
.tc-workspace .tc-tabs{flex-wrap:wrap;overflow:visible}.tc-workspace .tc-tabs button[aria-selected=true]{border-color:var(--action);background:color-mix(in srgb,var(--action) 8%,var(--card));border-radius:8px 8px 0 0}
.tc-ticket{max-height:88dvh;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:var(--line) transparent;overscroll-behavior:contain}.tc-ticket form,.tc-fields>*{min-width:0}.tc-ticket input,.tc-ticket select{min-height:42px}.tc-ticket :is(p,output){overflow-wrap:anywhere}.tc-ticket .tc-review{background:color-mix(in srgb,var(--crypto) 5%,var(--card))}
.tc-chart-shell{position:relative;min-width:0;width:100%}.tc-chart-trade{display:flex;align-items:center;gap:6px;padding:6px 10px;background:var(--card);border:1px solid var(--line);border-bottom:0;border-radius:12px 12px 0 0}.tc-chart-shell .tc-financial{margin-top:0;border-radius:0 0 12px 12px}.tc-chart-trade .tc-open{display:inline-flex;align-items:center;justify-content:center;padding:4px 13px;min-height:30px;border-radius:7px;font-size:12px;line-height:1.4;font-weight:700;color:white;text-decoration:none;background:var(--buy-fill);border:1px solid transparent;box-shadow:none}.tc-chart-trade .tc-open[data-tc-side=sell]{background:var(--sell-fill)}.tc-chart-trade .tc-open:hover{filter:brightness(1.12)}.tc-chart-trade .tc-level-toggle{margin-inline-start:auto;background:transparent;color:var(--muted);border:1px solid var(--line);border-radius:6px;padding:4px 8px;font:inherit;font-size:11px;cursor:pointer}
.tc-financial,.tc-financial.fc-dark{--fc-bg:var(--card);--fc-fg:var(--text)}
@media(max-width:600px){.tc-ticket{padding:14px;max-height:92dvh}.tc-ticket .tc-fields{grid-template-columns:1fr}.tc-chart-trade{padding:5px 8px}.tc-chart-trade .tc-open{min-height:32px}.tc-metrics article{padding:10px}.tc-workspace .tc-tabs button{flex:1 1 auto}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important}}
