:root{
  --bg:#EDEAE3;--panel:#FFFFFF;--panel-2:#F6F4EF;--ink:#12151A;--ink-2:#3A4048;--muted:#6B727C;
  --line:#DCD7CC;--line-2:#E8E4DB;--sel:#E4ECF7;
  --buy:#1F5FBF;--buy-bg:#E7EFFB;--sell:#C0392B;--sell-bg:#FBEAE8;
  --pos:#1F6B45;--neg:#B3261E;--brand:#8E1B12;--swiss:#D52B1E;
  --chrome:#12151A;--on-chrome:#E9EAEC;--input:#FCFBF8;--hover:#F2F5FA;--alert-line:#EFC9C3;--shadow:rgba(0,0,0,.08);--backdrop:rgba(18,21,26,.18);
  --sans:"IBM Plex Sans",system-ui,-apple-system,Segoe UI,sans-serif;
  --mono:"IBM Plex Mono",ui-monospace,"SF Mono",Menlo,monospace;
}
/* Tamna tema u stilu MetaTrader-a: crn grafikon, tamno sivi paneli, zelene/crvene cene. */
:root[data-theme="dark"]{
  --bg:#101010;--panel:#1B1B1B;--panel-2:#232323;--ink:#E6E6E6;--ink-2:#C8C8C8;--muted:#8C8C8C;
  --line:#333333;--line-2:#2A2A2A;--sel:#1E3A5F;
  --buy:#4C9AFF;--buy-bg:#14263D;--sell:#FF5A4E;--sell-bg:#3A1714;
  --pos:#2ECC71;--neg:#FF5A4E;--brand:#B3261E;
  --chrome:#000000;--on-chrome:#E6E6E6;--input:#121212;--hover:#262F3A;--alert-line:#5A2320;--shadow:rgba(0,0,0,.5);--backdrop:rgba(0,0,0,.35);
  color-scheme:dark;
}

*{box-sizing:border-box}
html,body{height:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:13px/1.4 var(--sans)}
button,input,select{font:inherit;color:inherit}
.mono,td.n,.num{font-family:var(--mono);font-variant-numeric:tabular-nums}
.pos{color:var(--pos)}.neg{color:var(--neg)}.muted{color:var(--muted)}
[hidden]{display:none!important}

/* ---------- auth strane ---------- */
.auth{min-height:100%;display:flex;align-items:center;justify-content:center;padding:24px 16px}
.auth .box{width:100%;max-width:440px;background:var(--panel);border:1px solid var(--line);border-radius:6px;overflow:hidden}
.auth .head{background:var(--chrome);color:var(--on-chrome);padding:18px 22px;display:flex;align-items:center;gap:12px}
.auth .head .tag{font:500 11px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:#B4BAC2}
.auth .body{padding:22px}
.auth h1{font:400 26px/1.2 "Source Serif 4",Georgia,serif;margin:0 0 6px}
.auth label{display:block;font-size:12px;color:var(--muted);margin:14px 0 4px}
.auth input,.auth select{width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:4px;background:var(--input);font-size:15px}
.auth .row2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:0;border-radius:4px;padding:11px 16px;font-weight:600;cursor:pointer;background:var(--brand);color:#fff;text-decoration:none}
.btn.block{width:100%;margin-top:18px}
.btn.ghost{background:transparent;border:1px solid var(--line);color:var(--ink)}
.btn:disabled,.btn.disabled{opacity:.5;cursor:default;pointer-events:none}
.alert{padding:10px 12px;border-radius:4px;background:var(--sell-bg);color:var(--neg);border:1px solid var(--alert-line);margin-top:14px}
.alert.ok{background:var(--panel-2);color:var(--ink);border-color:var(--line)}
.creds{margin:16px 0 0;border:1px solid var(--line);border-radius:4px}
.creds div{display:flex;justify-content:space-between;padding:10px 12px;border-bottom:1px solid var(--line-2)}
.creds div:last-child{border:0}
.creds b{font:600 15px var(--mono)}

/* ---------- terminal ---------- */
.term{height:100%;display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;grid-template-columns:minmax(0,1fr);min-height:0}
.toolbar{display:flex;align-items:center;gap:6px;background:var(--chrome);color:var(--on-chrome);padding:6px 10px;flex-wrap:wrap}
.toolbar .brand{display:flex;align-items:center;gap:8px;margin-right:6px}
.toolbar .brand .tag{font:500 11px var(--mono);letter-spacing:.12em;color:#B4BAC2;text-transform:uppercase}
.tb{background:#23272E;border:1px solid #333941;color:#E9EAEC;border-radius:3px;padding:5px 10px;cursor:pointer}
.tb:hover{background:#2C3139}
.tb.on{background:#E9EAEC;color:#12151A}
.tb.primary{background:var(--brand);border-color:var(--brand)}
.toolbar .sep{width:1px;height:20px;background:#333941;margin:0 4px}
.toolbar .spacer{flex:1}
a.tb{text-decoration:none}
.toolbar .acct{font:600 12px var(--mono);color:#E9EAEC}
.toolbar .acct[aria-expanded="true"]{background:#2C3139}
.acctwrap{position:relative;display:inline-flex}
.acctmenu{position:absolute;right:0;top:calc(100% + 6px);z-index:60;min-width:230px;padding:6px;background:var(--panel);border:1px solid var(--line);border-radius:6px;box-shadow:0 8px 24px var(--shadow)}
.acctmenu[hidden]{display:none}
.acctmenu .am-head{padding:6px 10px 8px;font:12px var(--mono);color:var(--muted);border-bottom:1px solid var(--line-2);margin-bottom:4px;white-space:nowrap}
.acctmenu a,.acctmenu button{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border:0;border-radius:4px;background:transparent;color:var(--ink);font:500 13px var(--sans);text-align:left;text-decoration:none;cursor:pointer}
.acctmenu a:hover,.acctmenu button:hover{background:var(--hover)}
.acctmenu a[hidden],.acctmenu button[hidden]{display:none}
.acctmenu hr{border:0;border-top:1px solid var(--line-2);margin:4px 0}
/* uži prozor (desktop aplikacija, laptop): kratke oznake da traka ostane u jednom redu */
.tb .lbl-s{display:none}
@media (max-width:1400px){.tb .lbl{display:none}.tb .lbl-s{display:inline}}
.tb .lbl-s2{display:none}
@media (max-width:1200px){.tb .lbl2{display:none}.tb .lbl-s2{display:inline}}

.main{display:grid;grid-template-columns:var(--mw-w,250px) minmax(0,1fr);min-height:0;min-width:0}
.panel{background:var(--panel);border:1px solid var(--line);display:flex;flex-direction:column;min-height:0;min-width:0}
.panel .ph{padding:6px 10px;background:var(--panel-2);border-bottom:1px solid var(--line);font-weight:600;font-size:12px;display:flex;justify-content:space-between;align-items:center}
.mw{overflow:auto}
table.grid{width:100%;border-collapse:collapse}
table.grid th{position:sticky;top:0;background:var(--panel-2);text-align:left;font-weight:500;color:var(--muted);font-size:11px;padding:5px 8px;border-bottom:1px solid var(--line);white-space:nowrap}
table.grid td{padding:5px 8px;border-bottom:1px solid var(--line-2);white-space:nowrap}
table.grid th.n,table.grid td.n{text-align:right}
table.grid tr.sel td{background:var(--sel)}
.mw tr{cursor:pointer}
/* kompaktan Market Watch: uži i gušći, da grafikon dobije više mesta */
.mw table.grid th{padding:4px 5px}
.mw table.grid td{padding:3px 5px;font-size:12px}
.mw .delayed{margin-left:2px}
/* "+" u donjem desnom uglu Market Watch-a i × za uklanjanje (vidi se na prelazu mišem) */
.main>.panel:first-child{position:relative}
.mw-add{position:absolute;right:12px;bottom:12px;width:44px;height:44px;border-radius:50%;border:0;background:var(--accent,#2962FF);color:#fff;font:300 30px/1 system-ui,sans-serif;cursor:pointer;box-shadow:0 4px 14px var(--shadow);z-index:2;display:flex;align-items:center;justify-content:center;padding:0 0 3px}
.mw-add:hover{filter:brightness(1.1)}
.mw td:last-child{position:relative}
.mw-x{display:none;position:absolute;right:2px;top:50%;transform:translateY(-50%);width:18px;height:18px;border:0;border-radius:3px;background:var(--panel-2);color:var(--muted);cursor:pointer;font-size:13px;line-height:1;padding:0}
.mw tr:hover .mw-x{display:block}
.panel .ph .ph-r{display:flex;align-items:center;gap:6px}
.ph-btn{border:1px solid transparent;background:transparent;color:var(--muted);cursor:pointer;border-radius:3px;padding:0 5px;font-size:13px;line-height:18px}
.ph-btn:hover{border-color:var(--line);color:var(--ink);background:var(--panel)}
/* Market Watch sakriven: grafikon dobija celu širinu */
/* sakriven: ostaje uzana traka sa natpisom; dupli klik na nju vraća panel */
.term.mw-off .main{grid-template-columns:24px minmax(0,1fr)}
.term.mw-off .main>.panel:first-child>:not(.mw-strip){display:none}
.mw-strip{display:none}
.term.mw-off .mw-strip{display:flex;align-items:center;justify-content:center;flex:1;width:100%;border:0;background:var(--panel-2);color:var(--muted);cursor:pointer;writing-mode:vertical-rl;transform:rotate(180deg);font:600 11px var(--mono);letter-spacing:.12em;text-transform:uppercase;user-select:none;padding:8px 0}
.term.mw-off .mw-strip:hover{color:var(--ink);background:var(--hover)}
.main>.panel:first-child .ph{user-select:none}
.ctxmenu{position:fixed;z-index:60;min-width:220px;max-height:calc(100vh - 16px);overflow-y:auto;padding:4px 0;background:var(--panel);border:1px solid var(--line);border-radius:6px;box-shadow:0 8px 24px var(--shadow);font-size:13px}
.ctxmenu[hidden]{display:none}
.ctxmenu .cm-title{padding:4px 12px 6px;font:600 12px var(--mono);color:var(--muted)}
.ctxmenu button{display:flex;justify-content:space-between;gap:16px;width:100%;padding:5px 12px;border:0;background:transparent;text-align:left;cursor:pointer;color:var(--ink);font:inherit}
.ctxmenu button:hover:not(:disabled){background:var(--hover)}
.ctxmenu button:disabled{color:var(--muted);cursor:default}
.ctxmenu kbd{font:11px var(--mono);color:var(--muted)}
.ctxmenu hr{border:0;border-top:1px solid var(--line-2);margin:4px 0}
/* zatvoreno: red bledi, lampica ostaje jasna */
.mw tr.closed td:not(:first-child),.mw tr.closed td:first-child>:not(.lamp){opacity:.5}
/* lampica radnog vremena: kao brodsko svetlo — zelena radi, crvena zatvoreno, siva bez cene */
.lamp{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px;vertical-align:0;flex:none}
/* boja sesije (--c1, --c2 pri preklapanju) ispod sjaja; vidi lamp() u terminal.js */
.lamp.on{background:radial-gradient(circle at 35% 35%,rgba(255,255,255,.85) 0 12%,rgba(255,255,255,0) 45%,rgba(0,0,0,.35) 100%),linear-gradient(90deg,var(--c1,#2ee26f) 50%,var(--c2,var(--c1,#2ee26f)) 50%);box-shadow:0 0 5px 1px color-mix(in srgb,var(--c1,#2ee26f) 60%,transparent)}
.mw .lamp,.symtitle .lamp{position:relative;cursor:help}
.mw .lamp::after,.symtitle .lamp::after{content:"";position:absolute;inset:-6px}
.lamp-legend{min-width:0;padding:4px 0 6px}
.lamp-legend .ll-row{display:flex;align-items:center;gap:6px;padding:3px 12px;white-space:nowrap}
.lamp-legend .ll-row .lamp{margin-right:2px}
.lamp-legend .ll-row b{font-weight:600;min-width:74px}
.lamp-legend .ll-row span{color:var(--muted);font-size:12px}
.lamp-legend .ll-row.now span::after{content:" · now";color:var(--ink);font-weight:600}
.lamp.off{background:radial-gradient(circle at 35% 35%,#ffd3cf 0 12%,#ff3b30 42%,#8e1b12 100%);box-shadow:0 0 5px 1px rgba(255,59,48,.55)}
.lamp.none{background:var(--line);box-shadow:none}
.symtitle .lamp{margin-right:5px}
.symtitle.closed::after{content:" · market closed";color:var(--sell)}
.oneclick.closed button{filter:grayscale(1);opacity:.55}
.mw-x:hover{background:var(--sell-bg);color:var(--sell)}
.mw{padding-bottom:64px}
/* Market Watch: pretraga, sortiranje (klik na naslov kolone), grupe, širina (vuče se desna ivica) */
.mw-search{padding:5px 6px;border-bottom:1px solid var(--line);background:var(--panel-2)}
.mw-search input{width:100%;padding:4px 7px;border:1px solid var(--line);border-radius:4px;background:var(--input);color:var(--ink);font:12px inherit}
.mw th[data-sort]{cursor:pointer;user-select:none}
.mw th[data-sort]:hover{color:var(--ink)}
.mw th[data-sort].on{color:var(--ink);font-weight:600}
.mw th[data-sort].on::after{content:" ▼";font-size:9px}
.mw th[data-sort].on.asc::after{content:" ▲"}
.mw tr.mw-grp td{background:var(--panel-2);font:600 10px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding:5px 6px 3px;cursor:default}
.mw tr.mw-grp[data-grp] td{cursor:pointer}
.mw tr.mw-grp[data-grp]:hover td{background:var(--hover);color:var(--ink)}
.mw-caret{display:inline-block;width:10px}
.mw tr.mw-grp:not([data-grp]):hover td{background:var(--panel-2)}
.mw tr.mw-more td{color:var(--muted)}
.mw tr.mw-more b{color:var(--ink-2)}
.mw tr.mw-more .mw-plus{color:var(--accent,#2962FF);font-weight:600}
.mw tr.flash td{animation:mwflash 1.6s ease-out}
@keyframes mwflash{0%,40%{background:rgba(255,196,0,.38)}100%{background:inherit}}
.mw table.grid th{z-index:1}
.mw-empty td{color:var(--muted);text-align:center;cursor:default}
#mw-group[aria-pressed="true"]{color:var(--ink);border-color:var(--line);background:var(--panel)}
/* kolone Market Watch-a: vuče se desna ivica naslova, dupli klik = najbolja širina (kao u Excel-u) */
.mw th[data-sort]{position:sticky}
.col-rs{position:absolute;top:0;right:0;width:7px;height:100%;cursor:col-resize;z-index:2;touch-action:none}
.col-rs::after{content:"";position:absolute;top:4px;bottom:4px;right:1px;width:1px;background:var(--muted);opacity:.55}
.col-rs:hover::after,.col-rs.drag::after{width:2px;background:var(--buy);opacity:1}
.mw table.fixed{table-layout:fixed}
.mw:has(table:not(.fixed)){overflow-x:hidden}
.mw table.fixed :is(td,th){overflow:hidden;text-overflow:ellipsis}
.mw table.fixed tr.mw-grp td,.mw table.fixed tr.mw-more td,.mw table.fixed tr.mw-empty td{overflow:hidden}
.vsplit{position:absolute;top:0;right:-4px;bottom:0;width:8px;cursor:col-resize;z-index:6;touch-action:none}
.vsplit::after{content:"";position:absolute;top:0;bottom:0;left:3px;width:2px;background:transparent;transition:background .15s}
.vsplit:hover::after,.vsplit.drag::after{background:var(--buy)}
body.resizing-x{cursor:col-resize;user-select:none}
body.resizing-x #chart{pointer-events:none}
.term.mw-off .vsplit{display:none}
@media (max-width:900px){.vsplit{display:none}}
.sympicker{position:fixed;z-index:56;left:12px;bottom:12px;width:380px;max-width:calc(100vw - 24px);max-height:min(560px,calc(100vh - 90px));display:flex;flex-direction:column;background:var(--panel);border:1px solid var(--line);border-radius:6px;box-shadow:0 8px 28px var(--shadow)}
.sympicker[hidden]{display:none}
.pk-head{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;border-bottom:1px solid var(--line-2)}
.pk-head button{border:0;background:transparent;font-size:20px;line-height:1;cursor:pointer;color:var(--muted)}
.pk-search{padding:8px 12px}
.pk-search input{width:100%;padding:6px 8px;border:1px solid var(--line);border-radius:4px;background:var(--input);color:var(--ink);font:13px inherit}
.pk-list{overflow-y:auto;flex:1;min-height:0;padding-bottom:4px}
.pk-group{padding:8px 12px 3px;font:600 11px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.pk-row{display:grid;grid-template-columns:78px 1fr 22px;align-items:center;gap:8px;width:100%;padding:5px 12px;border:0;background:transparent;text-align:left;cursor:pointer;color:var(--ink);font-size:12px}
.pk-row b{font:600 12px var(--mono)}
.pk-row span{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pk-row i{font-style:normal;text-align:center;font-weight:600;color:var(--accent,#2962FF)}
.pk-row.has i{color:var(--buy)}
.sympicker.chart-mode .pk-row.has{background:var(--hover)}
.pk-row:hover{background:var(--hover)}
.pk-empty{padding:12px}
.pk-foot{padding:6px 12px;border-top:1px solid var(--line-2);font-size:11px}
.mw tr:hover td{background:var(--hover)}
.up{color:var(--buy)}.down{color:var(--sell)}
.delayed{font-size:10px;color:var(--muted);margin-left:4px}

.chartwrap{position:relative;min-height:0;--k:.55}
#chart{position:absolute;inset:0 0 26px 38px}
/* Tiket SELL/BUY (Nikola 24.10., dizajn „Trade Ticket“ 1b „Poluga i novčanica“): okvir je materijal instrumenta, a klasu i
   ukrase (žig, simbol, serijski broj) daje js/ticket.js. Mere su iz dizajna (420×92, širina smanjena 10% na 378, Nikola 26.10.) puta --k; --k (.45–.6, Nikola 27.10.: manji tiket, kao TradingView/cTrader/MetaTrader) postavlja js prema širini grafikona, pa se tiket glatko smanjuje sa prozorom;
   naziv simbola se ne prikazuje (simbol se menja iz Market Watch-a), lampica je u sredini kao tačka iz dizajna. */
.oneclick{--mid:calc(var(--k)*96px);position:absolute;top:8px;left:46px;z-index:3;display:grid;grid-template-columns:1fr var(--mid) 1fr;
  width:calc(var(--k)*378px);height:calc(var(--k)*92px);overflow:hidden;border:1px solid var(--tt-edge);color:#231F1A;
  --tt-bg:#EEE6D6;--tt-pat:none;--tt-edge:#231F1A;--tt-line:rgba(35,31,26,.35);--tt-ink:#4A443B;--tt-engr:#4A443B;--tt-mid-bg:transparent;--tt-glyph:rgba(35,31,26,.18)}
@media (max-width:600px){.oneclick .tt-engr{letter-spacing:.12em}}
.tt-art{position:absolute;inset:0;background-color:var(--tt-bg);background-image:var(--tt-pat);pointer-events:none}
.tt-art>*{position:absolute;pointer-events:none;white-space:nowrap}
.tt-frame{inset:calc(var(--k)*5px);border:1px solid var(--tt-line)}
.tt-frame.in{inset:calc(var(--k)*9px);border-style:dashed;opacity:.7}
.tt-mid{top:0;bottom:0;left:calc(50% - var(--mid)/2);width:var(--mid);background:var(--tt-mid-bg);border-left:1px solid var(--tt-line);border-right:1px solid var(--tt-line)}
.tt-glyph{top:50%;left:50%;transform:translate(-50%,-50%);font:calc(var(--k)*96px*min(1,2.4/var(--gl,2)))/1 "Instrument Serif","Times New Roman",serif;color:var(--tt-glyph)}
.tt-sym{top:50%;transform:translateY(-50%);font:calc(var(--k)*120px)/1 "Instrument Serif","Times New Roman",serif;color:var(--tt-glyph)}
.tt-sym.l{left:calc(var(--k)*14px)}.tt-sym.r{right:calc(var(--k)*14px)}
.tt-engr{left:0;right:0;z-index:2;overflow:hidden;text-align:center;font:max(7px,calc(var(--k)*8px))/1 var(--mono);letter-spacing:.34em;text-transform:uppercase;color:var(--tt-engr)}
.tt-engr.top{top:calc(var(--k)*9px)}.tt-engr.bottom{bottom:calc(var(--k)*9px)}
.tt-serial{left:50%;bottom:calc(var(--k)*20px);transform:translateX(-50%);font:max(7px,calc(var(--k)*8px))/1 var(--mono);letter-spacing:.2em;color:var(--tt-engr)}
.oneclick button{position:relative;display:flex;flex-direction:column;justify-content:center;gap:calc(var(--k)*3px);min-width:0;padding:0 calc(var(--k)*14px);border:0;background:transparent;cursor:pointer;text-align:left;align-items:flex-start}
.oneclick button:hover{background:rgba(35,31,26,.06)}
.oneclick .b{align-items:flex-end;text-align:right}
.oneclick .cur{font:600 max(10px,calc(var(--k)*15px))/1 var(--mono);letter-spacing:.1em;color:var(--tt-ink)}
.oneclick .px{font:400 max(12px,calc(var(--k)*22px))/1 var(--mono);color:#231F1A;font-variant-numeric:tabular-nums}
/* SELL/BUY čip kao u dizajnu: rust SELL ↓, ink BUY ↑ (tekst ostaje SELL/BUY, strelica je ::after) */
.oneclick small{padding:calc(var(--k)*3px) calc(var(--k)*8px);border-radius:3px;font:600 max(9px,calc(var(--k)*11px))/1 var(--mono);letter-spacing:.16em;color:#F4EEE2;transition:background .15s cubic-bezier(.2,0,0,1)}
.oneclick .s small{background:#A8502F}.oneclick .b small{background:#231F1A}
.oneclick .s small::after{content:" \2193"}.oneclick .b small::after{content:" \2191"}
.oneclick input{position:relative;width:100%;min-width:0;padding:0;border:0;background:transparent;color:#231F1A;text-align:center;font:400 calc(var(--k)*22px) var(--mono)}
.oneclick input:focus{outline:1px solid var(--tt-line);outline-offset:calc(var(--k)*-8px)}
.oc-lamp{position:absolute;top:50%;right:calc(50% - var(--mid)/2 + var(--k)*10px);z-index:2;transform:translateY(-50%);line-height:0}
.oc-lamp .lamp{margin:0;position:relative;cursor:help}
.oc-lamp .lamp::after{content:"";position:absolute;inset:-6px}
/* poluge */
.tt-gold{--tt-bg:#D6B260;--tt-edge:#7A5814;--tt-line:rgba(122,88,20,.55);--tt-ink:#4E380B;--tt-engr:#6A4C10;--tt-mid-bg:#C9A24C;--tt-glyph:rgba(122,88,20,.3)}
.tt-silver{--tt-bg:#CDD0D3;--tt-edge:#5E656C;--tt-line:rgba(70,78,86,.5);--tt-ink:#30363C;--tt-engr:#3E454C;--tt-mid-bg:#BCC0C5;--tt-glyph:rgba(70,78,86,.3)}
.tt-platinum{--tt-bg:#D8D6CE;--tt-edge:#68665E;--tt-line:rgba(90,88,80,.5);--tt-ink:#36352F;--tt-engr:#45443D;--tt-mid-bg:#C8C6BD;--tt-glyph:rgba(90,88,80,.28)}
.tt-palladium{--tt-bg:#CBC9D1;--tt-edge:#5C5A68;--tt-line:rgba(80,78,94,.5);--tt-ink:#35333F;--tt-engr:#44424F;--tt-mid-bg:#BBB9C3;--tt-glyph:rgba(80,78,94,.28)}
.tt-copper{--tt-bg:#CC8F66;--tt-edge:#6E3A1C;--tt-line:rgba(110,58,28,.5);--tt-ink:#4A2510;--tt-engr:#5A2E14;--tt-mid-bg:#BD7E55;--tt-glyph:rgba(110,58,28,.3)}
/* novčanica (valute) */
.tt-note{--tt-bg:#DFE4CF;--tt-pat:repeating-radial-gradient(circle at 50% 50%,rgba(63,90,60,0) 0 5px,rgba(63,90,60,.13) 5px 6px);--tt-edge:#3F5A3C;--tt-line:rgba(63,90,60,.5);--tt-ink:#2F462D;--tt-engr:#2F462D;--tt-mid-bg:#EEE6D6;--tt-glyph:rgba(63,90,60,.18)}
.tt-note .s{padding-left:calc(var(--k)*22px)}.tt-note .b{padding-right:calc(var(--k)*22px)}
.tt-note input{padding-bottom:calc(var(--k)*12px)}
/* bure (nafta, gas): čelični valjak sa senkom */
.tt-drum{--tt-bg:#97A8B8;--tt-pat:linear-gradient(180deg,rgba(0,0,0,.16),rgba(255,255,255,.24) 30%,rgba(255,255,255,0) 58%,rgba(0,0,0,.18));--tt-edge:#334352;--tt-line:rgba(38,52,66,.5);--tt-ink:#1F2B36;--tt-engr:#26323D;--tt-mid-bg:rgba(38,52,66,.14);--tt-glyph:rgba(38,52,66,.22)}
/* sertifikat: indeks, akcija, ETF */
.tt-cert{--tt-pat:repeating-linear-gradient(45deg,transparent 0 5px,var(--tt-hatch) 5px 6px),repeating-linear-gradient(-45deg,transparent 0 5px,var(--tt-hatch) 5px 6px);--tt-mid-bg:#EEE6D6}
.tt-idx{--tt-bg:#DFE3EA;--tt-hatch:rgba(46,70,112,.07);--tt-edge:#2E4670;--tt-line:rgba(46,70,112,.5);--tt-ink:#2E4670;--tt-engr:#2E4670;--tt-glyph:rgba(46,70,112,.17)}
.tt-stk{--tt-bg:#EBDDCD;--tt-hatch:rgba(122,59,34,.07);--tt-edge:#7A3B22;--tt-line:rgba(122,59,34,.5);--tt-ink:#6A321C;--tt-engr:#6A321C;--tt-glyph:rgba(122,59,34,.16)}
.tt-etf{--tt-bg:#E3DFE8;--tt-hatch:rgba(75,63,107,.07);--tt-edge:#4B3F6B;--tt-line:rgba(75,63,107,.5);--tt-ink:#3E3459;--tt-engr:#3E3459;--tt-glyph:rgba(75,63,107,.16)}
/* kovanica (kripto): boja novčića dolazi iz ticket.js (--tt-bg) */
.tt-coin{--tt-pat:repeating-linear-gradient(0deg,transparent 0 11px,rgba(35,31,26,.07) 11px 12px),repeating-linear-gradient(90deg,transparent 0 11px,rgba(35,31,26,.07) 11px 12px);--tt-edge:color-mix(in srgb,var(--tt-bg) 40%,#231F1A);--tt-line:rgba(35,31,26,.35);--tt-ink:#2B2620;--tt-engr:#3A332A;--tt-mid-bg:color-mix(in srgb,var(--tt-bg) 88%,#231F1A);--tt-glyph:rgba(35,31,26,.2)}
/* tamna tema: materijal malo prigušen da ne bleska preko crnog grafikona */
:root[data-theme="dark"] .tt-art{filter:brightness(.8) saturate(.9)}
.symtitle{display:none!important}
/* legenda indikatora: podrazumevano samo dugme „▸ N indicators“ desno od okvira SELL/BUY */
.studylegend.min{top:var(--lg-top,8px);left:var(--lg-left,300px)}
.zoombar{position:absolute;right:72px;bottom:62px;z-index:3;display:flex;border:1px solid var(--line);border-radius:4px;overflow:hidden;background:var(--panel);box-shadow:0 1px 3px var(--shadow);opacity:.85}
.zoombar:hover{opacity:1}
.zoombar button{border:0;background:none;color:var(--ink-2);cursor:pointer;width:28px;height:26px;font:600 16px/1 var(--mono);padding:0}
.zoombar button+button{border-left:1px solid var(--line)}
.zoombar button:hover{background:var(--hover);color:var(--ink)}
.symtitle{position:absolute;top:54px;left:46px;z-index:3;font:600 12px var(--mono);color:var(--muted);cursor:pointer;padding:4px 6px;border-radius:4px}
.symtitle::before{content:"▾ ";font-size:10px}
.symtitle:hover{background:var(--hover);color:var(--ink)}

.toolbox{height:auto;display:flex;flex-direction:column;background:var(--panel);border-top:1px solid var(--line);min-height:0;min-width:0}
.tabs{display:flex;border-bottom:1px solid var(--line);background:var(--panel-2)}
.tabs button{border:0;background:transparent;padding:7px 14px;cursor:pointer;border-right:1px solid var(--line);color:var(--muted)}
.tabs button.on{background:var(--panel);color:var(--ink);font-weight:600}
/* "_" minimizuje donji prozor (ostaju kartice i stanje računa), klik na karticu ga vraća */
.tabs .tb-min{margin-left:auto;border-right:0;border-left:1px solid var(--line);padding:7px 12px;font:600 14px/1 var(--mono)}
.tabs .tb-min:hover{background:var(--hover);color:var(--ink)}
.term.tb-min .tabbody{display:none!important}
.term.tb-min .tabs button.on{background:transparent;font-weight:400;color:var(--muted)}
.term.tb-min .toolbox{height:auto!important}
.term.tb-min .hsplit{display:none}
.tabbody{flex:none;overflow:auto;min-height:0;height:220px}
/* Trgovina: visina prati broj pozicija (bez pozicija samo zaglavlje), najviše 30% ekrana pa skrol */
#tab-trade{height:auto;max-height:30vh}
.summary{padding:6px 10px;border-top:1px solid var(--line);background:var(--panel-2);font:12px var(--mono);display:flex;gap:18px;flex-wrap:wrap}
.summary b{font-weight:600}
.act{border:1px solid var(--line);background:var(--panel);border-radius:3px;cursor:pointer;padding:1px 7px;margin-left:3px}
.act:hover{background:var(--panel-2)}
.act.x:hover{background:var(--sell-bg);color:var(--sell)}
.journal div{padding:3px 10px;border-bottom:1px solid var(--line-2);font:12px var(--mono)}


/* Uvećan grafikon: bez Market Watch-a i tabova; dole samo otvorene pozicije/nalozi (koliko ih ima), a bez njih ništa. */
.term.max .main{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr)}
.term.max .main>.panel:first-child{display:none}
.term.max .toolbox{height:auto}
.term.max .tabs,.term.max .summary,.term.max #tab-history,.term.max #tab-alerts,.term.max #tab-journal{display:none!important}
.term.max #tab-trade{display:block!important;flex:none;max-height:35vh}
.term.max.empty .toolbox{display:none}
@media (max-width:900px){
  .term.max{height:100%}
  .term.max .chartwrap{min-height:0}
  /* na telefonu u uvećanom režimu samo bitne kolone: simbol, tip, volumen, profit, dugmad */
  .term.max #tab-trade :is(th,td):is(:nth-child(2),:nth-child(3),:nth-child(6),:nth-child(7),:nth-child(8),:nth-child(9)){display:none}
  .symtitle{left:40px}
}
@media (max-width:900px){
  .tb.desk,.acctmenu .desk{display:none}
  .acctmenu{position:fixed;right:8px;top:48px}
  /* telefon: omiljeni periodi se skroluju u svom redu umesto da šire stranicu */
  #tfs{flex:1 1 auto;min-width:0;max-width:100%}
  .tf-favs{flex:1 1 auto;min-width:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .tf-favs::-webkit-scrollbar{display:none}
  .tf-favs>*{flex:none}
  .toolbar .acct{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  /* kartice donjeg prozora: uže, a na najužim ekranima se skroluju; "_" ostaje uz desnu ivicu */
  .tabs{overflow-x:auto;overflow-y:hidden;scrollbar-width:none}
  .tabs::-webkit-scrollbar{display:none}
  .tabs button{padding:7px 10px;flex:none}
  .tabs .tb-min{position:sticky;right:0;background:var(--panel-2);padding:7px 10px}
}

/* ---------- dijalog naloga ---------- */
.modal{position:fixed;inset:0;background:var(--backdrop);display:flex;align-items:center;justify-content:center;z-index:50;padding:12px}
.dlg{background:var(--panel);border:1px solid var(--line);border-radius:6px;width:100%;max-width:520px;max-height:100%;overflow:auto;box-shadow:0 10px 40px var(--shadow)}
.dlg .dh{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;background:var(--panel-2);border-bottom:1px solid var(--line);font-weight:600}
.dlg .dh button{border:0;background:transparent;font-size:18px;cursor:pointer}
.dlg .dh{cursor:move;user-select:none;touch-action:none}
.dlg .dh button{cursor:pointer}
.dlg.moving{box-shadow:0 16px 50px var(--shadow);opacity:.97}
.dlg .db{padding:14px}
.f{display:grid;grid-template-columns:120px 1fr;align-items:center;gap:8px;margin-bottom:10px}
.f>label{color:var(--muted);font-size:12px}
.f input,.f select{padding:7px 9px;border:1px solid var(--line);border-radius:3px;background:var(--input);width:100%}
.vol{display:flex;gap:4px}
.vol button{width:30px;border:1px solid var(--line);background:var(--panel-2);border-radius:3px;cursor:pointer}
.lvl{display:grid;grid-template-columns:auto 1fr;gap:6px}
.seg{display:flex;border:1px solid var(--line);border-radius:3px;overflow:hidden}
.seg button{border:0;background:var(--panel);padding:6px 9px;cursor:pointer;font-size:12px;border-right:1px solid var(--line)}
.seg button:last-child{border-right:0}
.seg button.on{background:var(--ink);color:var(--panel)}
.hint{grid-column:2;font:12px/1.5 var(--mono);color:var(--muted);margin-top:-4px;min-height:16px}
.hint .b{color:var(--buy)}.hint .s{color:var(--sell)}
.hint.bad{color:var(--neg)}
.quote{display:flex;justify-content:center;gap:28px;padding:10px 0 4px;font:600 22px var(--mono)}
.quote .s{color:var(--sell)}.quote .b{color:var(--buy)}
.dbtns{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}
.dbtns .sell{background:var(--sell);color:#fff}
.dbtns .buy{background:var(--buy);color:#fff}
.dbtns .one{grid-column:1/-1}
.derr{color:var(--neg);margin-top:10px;min-height:18px}

@media (max-width:900px){
  .main{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(420px,1fr)}
  .mw{max-height:240px} /* ostali simboli skrolom */
  .toolbox{height:auto;max-height:none}
  .tabbody{max-height:320px}
  .term{height:auto;min-height:100%}
  .f{grid-template-columns:1fr}
  .hint{grid-column:1}
}

/* ---------- desktop preuzimanje ---------- */
.auth .box.wide{max-width:520px}
.dl{font-size:15px;padding:13px 16px}
.dl-meta{margin:8px 0 0;text-align:center;font-size:12px}
.dl-alt{margin:6px 0 0;text-align:center;font-size:13px}
.steps,.pwa{margin-top:18px;padding:12px 14px;border:1px solid var(--line);border-radius:4px;background:var(--panel-2)}
.steps ol{margin:8px 0 0;padding-left:20px}
.steps li{margin:4px 0}
.auth a:not(.btn){color:var(--ink)}

/* ---------- alati za crtanje ---------- */
.drawtools{position:absolute;top:0;bottom:0;left:0;width:38px;z-index:4;display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 0;background:var(--panel-2);border-right:1px solid var(--line);overflow-y:auto;scrollbar-width:none}
.drawtools button{width:30px;height:30px;flex:none;display:flex;align-items:center;justify-content:center;border:0;border-radius:4px;background:transparent;color:var(--ink-2);cursor:pointer}
.drawtools button:hover{background:var(--hover)}
.drawtools button.on{background:var(--sel);color:var(--buy)}
.drawtools button.arm{background:#E53935;color:#fff}
.drawtools button.strong{box-shadow:inset 0 0 0 1.5px var(--buy)}
.drawtools button.grp{position:relative}
.drawtools button.grp::after{content:"";position:absolute;right:2px;bottom:2px;border:3px solid transparent;border-right-color:currentColor;border-bottom-color:currentColor;opacity:.55}
.drawtools button.grp:hover::after{opacity:1}
.draw-fly{position:fixed;z-index:60;min-width:170px;padding:4px;background:var(--panel);border:1px solid var(--line);border-radius:6px;box-shadow:0 6px 24px rgba(0,0,0,.18);display:flex;flex-direction:column;gap:1px}
.draw-fly[hidden]{display:none}
.draw-fly button{display:flex;align-items:center;gap:10px;height:30px;padding:0 10px 0 6px;border:0;border-radius:4px;background:transparent;color:var(--ink);font:inherit;font-size:13px;text-align:left;cursor:pointer;white-space:nowrap}
.draw-fly button:hover{background:var(--hover)}
.draw-fly button.on{background:var(--sel);color:var(--buy)}
.drawtools .sep{width:22px;height:1px;background:var(--line);margin:4px 0;flex:none}
.draw-layer{position:absolute;left:0;top:0;z-index:2;pointer-events:none;max-width:100%}
.draw-loupe{position:absolute;top:56px;left:46px;z-index:6;pointer-events:none;border:2px solid #2962FF;border-radius:50%;box-shadow:0 4px 16px rgba(0,0,0,.35)}
.draw-props{position:absolute;top:8px;left:50%;transform:translateX(-50%);z-index:5;display:flex;align-items:center;gap:4px;padding:4px 6px;background:var(--panel);border:1px solid var(--line);border-radius:6px;box-shadow:0 2px 8px var(--shadow)}
.draw-props button{height:24px;min-width:24px;border:1px solid transparent;border-radius:4px;background:transparent;color:var(--ink);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0 4px}
.draw-props button:hover{background:var(--hover)}
.draw-props .bands{font:600 12px var(--mono);padding:0 6px;white-space:nowrap}
.draw-props .bands.on{border-color:var(--line);background:var(--sel)}
.draw-props select.ewdeg{height:24px;border:1px solid var(--line);border-radius:4px;background:var(--panel);color:var(--ink);font:12px var(--mono);padding:0 2px}
.ew-guide{position:absolute;top:44px;right:12px;z-index:5;max-width:min(380px,calc(100% - 24px));padding:7px 9px;background:var(--panel);border:1px solid var(--line);border-radius:6px;box-shadow:0 2px 8px var(--shadow);font:11px/1.45 var(--mono);color:var(--ink)}
.ew-guide ul{list-style:none;margin:4px 0 6px;padding:0}
.ew-guide li.ok{color:var(--pos)}
.ew-guide li.bad{color:var(--neg)}
.ew-guide li.na{color:var(--muted)}
.ew-guide .muted{color:var(--muted);font-size:11px}
.ew-menu{position:absolute;z-index:6;min-width:230px;padding:4px;background:var(--panel);border:1px solid var(--line);border-radius:6px;box-shadow:0 4px 14px var(--shadow);font:12px var(--mono);color:var(--ink)}
.ew-menu .hd{padding:4px 8px 6px;font-weight:600;color:var(--muted)}
.ew-menu label{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:3px 8px}
.ew-menu select{height:24px;border:1px solid var(--line);border-radius:4px;background:var(--panel);color:var(--ink);font:12px var(--mono)}
.ew-menu button{display:block;width:100%;text-align:left;padding:5px 8px;border:0;border-radius:4px;background:transparent;color:var(--ink);font:12px var(--mono);cursor:pointer}
.ew-menu button:hover{background:var(--hover)}
.ew-menu hr{border:0;border-top:1px solid var(--line);margin:4px 0}
.draw-props .sw{width:18px;min-width:18px;height:18px;border-radius:50%;padding:0}
.draw-props .sw.on{outline:2px solid var(--ink);outline-offset:1px}
.draw-props .lw{width:26px}
.draw-props .lw i{display:block;width:16px;background:var(--ink)}
.draw-props .lw.on{border-color:var(--line);background:var(--panel-2)}
.draw-props .go{background:var(--brand);color:#fff;font-weight:600;padding:0 10px}
.draw-props .go:hover{background:var(--brand);filter:brightness(1.15)}
.draw-props .sep{width:1px;height:18px;background:var(--line);margin:0 2px}
.draw-text{position:absolute;z-index:6;height:26px;min-width:160px;padding:2px 6px;border:1px solid var(--buy);border-radius:3px;background:var(--input);color:var(--ink);font:600 14px var(--sans)}
@media (max-width:900px){
  .drawtools{width:34px}
  .drawtools button{width:28px;height:28px}
  #chart{left:34px}
  .oneclick{left:40px}
}

/* ---------- alarmi ---------- */
.alert-form{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px 10px;border-bottom:1px solid var(--line-2)}
.alert-form input{padding:4px 8px;border:1px solid var(--line);border-radius:3px;background:var(--input);width:110px;font-family:var(--mono)}
.alert-form #al-note{width:200px;font-family:var(--sans)}
.wscan-form label{display:flex;align-items:center;gap:4px;white-space:nowrap}
.wscan-form select{padding:3px 6px;border:1px solid var(--line);border-radius:3px;background:var(--input);color:var(--ink)}
.wscan-form #ws-bars,.wscan-form #ws-rr{width:60px}
.wscan-form input[type=checkbox]{width:auto;padding:0;margin:0}
.wscan-form .muted{flex-basis:100%}
#wscan .ws-row{cursor:pointer}
#wscan .ws-row:hover{background:var(--hover)}
/* Score Scanner (terminal.js ss*) */
.sscan-form label{display:flex;align-items:center;gap:4px;white-space:nowrap}
.sscan-form select{padding:3px 6px;border:1px solid var(--line);border-radius:3px;background:var(--input);color:var(--ink)}
.sscan-form #ss-min{width:56px}
.sscan-form input[type=checkbox]{width:auto;padding:0;margin:0}
.sscan-form .muted{flex-basis:100%}
.ss-tools{display:flex;gap:10px;flex-wrap:wrap;font-size:12px}
.ss-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:6px 10px;border-bottom:1px solid var(--line-2);font-size:12px}
.ss-chip{display:inline-flex;align-items:center;gap:2px;padding:1px 6px;border:1px solid var(--line);border-radius:10px;background:var(--panel-2);font-family:var(--mono)}
.ss-chip.over{border-color:var(--neg)}
.ss-chip button{border:0;background:transparent;color:var(--muted);cursor:pointer;padding:0 0 0 4px}
.ss-chip button:hover{color:var(--neg)}
.ss-packs{display:inline-flex;align-items:center;gap:6px;margin-left:auto}
#sscan .ss-row{cursor:pointer}#sscan .ss-row:hover{background:var(--hover)}
#sscan .ss-row.miss{opacity:.55}
#sscan .ss-row.hit td:first-child{box-shadow:inset 3px 0 0 var(--brand)}
.ss-reads{font-size:11px;white-space:normal}.ss-reads span{margin-right:6px;white-space:nowrap}
.alert-form .muted{font-size:12px}
.draw-props .bell{padding:0 8px;font-size:12px}
.draw-props .bell.on{background:#FB8C00;color:#fff}
.draw-props .bell.done{background:var(--panel-2);color:var(--muted)}
.toasts{position:fixed;top:52px;right:12px;z-index:60;display:flex;flex-direction:column;gap:8px;max-width:min(360px,calc(100vw - 24px))}
.toast{background:var(--chrome);color:var(--on-chrome);border-left:4px solid #FB8C00;border-radius:4px;padding:12px 14px;font-weight:600;box-shadow:0 6px 24px var(--shadow);cursor:pointer;animation:toastIn .25s ease-out}
@keyframes toastIn{from{transform:translateY(-8px);opacity:0}to{transform:none;opacity:1}}

/* ---------- indikatori ---------- */
/* legenda je jedna kartica sa skoro neprozirnom pozadinom: sveće se ne vide kroz tekst (svetla tema je bila nečitljiva) */
.studylegend{position:absolute;top:80px;left:46px;z-index:3;display:flex;flex-direction:column;gap:1px;font:12px var(--sans);pointer-events:none;
  background:color-mix(in srgb,var(--panel) 94%,transparent);border:1px solid var(--line);border-radius:5px;padding:3px 0;box-shadow:0 2px 10px var(--shadow)}
.studylegend[hidden],.studylegend:empty{display:none}
.studylegend>span{padding:1px 8px;width:max-content;max-width:min(760px,calc(100vw - 70px));pointer-events:auto}
.studylegend .mono{color:var(--ink-2);margin-left:4px}
.studylegend button{border:0;background:transparent;color:var(--muted);cursor:pointer;padding:0 2px 0 6px;font-size:14px;line-height:1}
.studylegend button:hover{color:var(--neg)}
.studylegend .lg-head button{padding:0;font:600 11px var(--sans);color:var(--ink-2)}
.studylegend .lg-head button:hover{color:var(--ink)}
.ptag{position:absolute;top:3px;left:6px;z-index:4;display:flex;flex-wrap:wrap;gap:4px;align-items:center;white-space:nowrap;width:max-content;max-width:calc(100vw - 56px)}
.ptag button{border:0;border-radius:3px;background:color-mix(in srgb,var(--panel) 85%,transparent);padding:1px 6px;cursor:pointer;font:600 11px var(--sans);line-height:16px}
.ptag .ptag-rm{color:var(--neg);border:1px solid var(--line);background:var(--panel)}
.ptag .ptag-rm:hover{background:var(--hover)}
.indpanel{position:fixed;z-index:55;width:340px;max-width:calc(100vw - 16px);max-height:calc(100vh - 70px);overflow-y:auto;background:var(--panel);border:1px solid var(--line);border-radius:6px;box-shadow:0 8px 28px var(--shadow);padding:6px 0}
.indpanel .ph2{padding:4px 12px 8px;font-weight:600;border-bottom:1px solid var(--line-2);margin-bottom:4px}
.indpanel .ind{display:flex;align-items:center;gap:8px;padding:5px 12px;cursor:pointer}
.indpanel .ind:hover{background:var(--hover)}
.indpanel .ind i{width:10px;height:10px;border-radius:2px;flex:none}
.indpanel .ind span{flex:1}
.indpanel .par{width:56px;padding:2px 4px;border:1px solid var(--line);border-radius:3px;background:var(--input);font:12px var(--mono);text-align:right}
.indpanel .ind-note{padding:6px 12px 2px;font-size:11px}
/* meni Pro Tools: opis ispod imena, zaključani redovi (🔒) bez prava, radnje (Wave Scanner, DOM) */
.propanel{width:380px}
.propanel .ind{flex-wrap:wrap;row-gap:2px}
.propanel .ind>span{flex:1 1 150px;min-width:0}
/* vrsta alata: Setups (prekidač, aria-pressed) i Context (oznaka bez dugmeta); isti oblik, Context sa isprekidanim okvirom */
.indpanel .ind .ind-sig,.indpanel .ind .ind-badge{flex:none;font:600 10px/14px var(--mono);padding:1px 7px;border:1px solid var(--line);border-radius:10px;background:transparent;color:var(--muted);white-space:nowrap}
.indpanel .ind .ind-sig{cursor:pointer}
.indpanel .ind .ind-sig:hover{border-color:var(--brand);color:var(--ink)}
.indpanel .ind .ind-sig[aria-pressed="true"]{background:var(--brand);border-color:var(--brand);color:#fff}
.indpanel .ind .ind-sig:focus-visible{outline:2px solid var(--brand);outline-offset:1px}
.indpanel .ind .ind-badge.ctx{border-style:dashed;color:var(--muted);cursor:help}
@media (pointer:coarse){.indpanel .ind .ind-sig{padding:5px 10px}} /* prst: veća meta */
.indpanel .pro-note.sig-note{padding:4px 9px;font-size:11px;color:var(--muted)}
.indpanel .ind-desc{flex-basis:100%;padding-left:39px;font-size:11px;line-height:1.35;color:var(--muted)}
.indpanel .ind.locked .ind-desc{padding-left:39px}
.indpanel .ind.pro-act .ind-desc{padding-left:0}
.indpanel button.ind{width:100%;margin:0;border:0;background:transparent;text-align:left;font:inherit;color:inherit}
.indpanel .ind.locked{opacity:.85}
.indpanel .ind.locked .lock{width:13px;font-size:11px;flex:none}
.indpanel .ind.pro-act>span{color:var(--accent,#2962FF)}
.indpanel .pro-note{margin:2px 12px 6px;padding:7px 9px;border:1px solid var(--line);border-radius:5px;background:var(--panel-2);font-size:12px}
.indpanel .pro-note button{margin-left:6px;border:1px solid var(--accent,#2962FF);background:transparent;color:var(--accent,#2962FF);border-radius:4px;padding:1px 8px;font-size:12px;cursor:pointer}
.indpanel .ind-prolink{display:block;width:calc(100% - 24px);margin:6px 12px 2px;padding:6px 8px;border:1px dashed var(--line);border-radius:5px;background:transparent;color:var(--accent,#2962FF);font-size:12px;text-align:left;cursor:pointer}
.indpanel .ind-prolink:hover,.indpanel button.ind:hover{background:var(--hover)}
@media (max-width:900px){.studylegend{top:76px;left:40px;font-size:11px}}
.indpanel .ph2 small{font:400 11px var(--mono);color:var(--muted);margin-left:6px}
.indpanel .tpl{padding:4px 12px 8px;border-bottom:1px solid var(--line-2);margin-bottom:4px}
.indpanel .tpl-head{border:0;background:transparent;padding:2px 0;font:600 11px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink);cursor:pointer}
.indpanel .tpl-label{margin:6px 0 3px;font-size:11px;color:var(--muted)}
.indpanel .tpl-label small{font-size:10px}
.indpanel .chips{display:flex;flex-wrap:wrap;gap:4px}
.indpanel .chips>button,.indpanel .chip{border:1px solid var(--line);background:var(--panel-2);border-radius:12px;padding:2px 9px;font-size:12px;cursor:pointer;color:var(--ink)}
.indpanel .chips>button:hover{border-color:var(--accent,#2962FF)}
.indpanel .chip{display:inline-flex;align-items:center;gap:2px;padding:0 2px 0 0}
.indpanel .chip button{border:0;background:transparent;cursor:pointer;color:var(--ink);font-size:12px;padding:2px 6px}
.indpanel .chip .code{font:11px var(--mono);color:var(--muted);border-left:1px solid var(--line);border-radius:0}
.indpanel .chip .x{color:var(--muted)}
.indpanel .chip .x:hover{color:var(--sell)}
.indpanel .tpl-row{display:flex;gap:6px;margin-top:6px}
.indpanel .tpl-row input{flex:1;min-width:0;padding:4px 6px;border:1px solid var(--line);border-radius:4px;background:var(--input);color:var(--ink);font-size:12px}
.indpanel .tpl-row button{border:1px solid var(--line);background:var(--panel-2);border-radius:4px;padding:3px 8px;cursor:pointer;color:var(--ink);font-size:12px;white-space:nowrap}
.indpanel .tpl-msg{margin-top:6px;font-size:12px;color:var(--ink-2)}
.indpanel .ind-search{padding:2px 12px 6px}
.indpanel .ind-search input{width:100%;padding:5px 8px;border:1px solid var(--line);border-radius:4px;background:var(--input);color:var(--ink);font:13px inherit}
.indpanel .ind-empty{padding:10px 12px}
.indpanel .ind[hidden],.indpanel .indgroup[hidden]{display:none}
.indpanel .indgroup{padding:8px 12px 2px;font:600 11px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.indpanel .ind-actions{padding:8px 12px 4px;border-top:1px solid var(--line-2);margin-top:6px}
.indpanel .ind-actions button{border:1px solid var(--line);background:var(--panel-2);border-radius:3px;padding:3px 10px;cursor:pointer;color:var(--ink)}
.study-layer{position:absolute;left:0;top:0;z-index:1;pointer-events:none;max-width:100%}
.edge-marks{position:absolute;inset:0;pointer-events:none;z-index:4}
.edge-mark{position:absolute;pointer-events:auto;border:0;border-radius:2px;padding:2px 6px;color:#fff;font:600 10px 'IBM Plex Mono',monospace;white-space:nowrap;cursor:pointer;opacity:.9}
.edge-mark:hover{opacity:1}
@media (max-width:900px){
  .term.mw-off .main{grid-template-columns:minmax(0,1fr);grid-template-rows:28px minmax(420px,1fr)}
  .term.mw-off .mw-strip{writing-mode:horizontal-tb;transform:none;padding:0}
}

/* traka "nova verzija" */
.update-bar{position:fixed;z-index:70;top:52px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:10px;padding:8px 10px 8px 14px;background:var(--chrome,#12151A);color:#fff;border-radius:6px;box-shadow:0 8px 24px rgba(0,0,0,.35);font-size:13px;max-width:calc(100vw - 24px)}
.update-bar[hidden]{display:none}
.update-bar button{border:0;border-radius:4px;padding:5px 12px;background:#8E1B12;color:#fff;font:600 13px inherit;cursor:pointer}
.update-bar .later{background:transparent;color:#B4BAC2;font-weight:400}

/* lot po riziku: polje za volumen se popunjava samo */
#row-vol.auto input{background:var(--panel-2);color:var(--muted)}
#row-vol.auto button{opacity:.4;pointer-events:none}
.ctxmenu b.up{color:var(--buy)}.ctxmenu b.down{color:var(--sell)}

/* roboti */
.robot{padding:8px 10px;border-bottom:1px solid var(--line-2)}
.robot-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.robot-head label{font-size:12px;color:var(--muted)}
.robot-head select{padding:3px 4px;border:1px solid var(--line);border-radius:3px;background:var(--input);color:var(--ink)}
.robot-head input{width:72px;padding:3px 6px;border:1px solid var(--line);border-radius:3px;background:var(--input);font-family:var(--mono)}
.robot-pill{font-size:11px;padding:1px 8px;border-radius:10px;border:1px solid var(--line);color:var(--muted)}
.robot-pill.on{color:var(--pos);border-color:var(--pos)}
.robot p{margin:6px 0;font-size:12px;max-width:980px}
.robot-status{font-size:12px;margin:4px 0 6px}
.robot-log div{padding:2px 0;font-size:12px;border-top:1px solid var(--line-2)}
.bot{font-size:11px}
.act.go{color:var(--pos);border-color:var(--pos);font-weight:600}
#close-all{white-space:nowrap}
.close-all-cell{position:relative}
.close-menu{position:absolute;right:4px;top:100%;z-index:30;display:flex;flex-direction:column;min-width:230px;background:var(--panel);border:1px solid var(--line);border-radius:4px;box-shadow:0 6px 18px var(--shadow);padding:4px}
.close-menu[hidden]{display:none}
.close-menu button{display:flex;justify-content:space-between;gap:14px;border:0;background:none;color:var(--ink);font:inherit;font-size:12px;text-align:left;padding:7px 10px;border-radius:3px;cursor:pointer}
.close-menu button:hover:not([disabled]){background:var(--panel-2)}
.close-menu button[disabled]{opacity:.45;cursor:default}
.close-menu span{font-family:var(--mono)}

/* vrsta grafikona: dugme sa ikonicom + padajući meni */
.ctype{position:relative;display:inline-flex}
.ctype-btn{display:inline-flex;align-items:center;gap:3px;padding:3px 6px}
.ctype-btn svg{display:block}
.ctype-btn .caret{font-size:9px;opacity:.7}
.ctype-menu{position:absolute;top:calc(100% + 4px);left:0;z-index:60;min-width:170px;padding:4px;background:var(--panel);border:1px solid var(--line);border-radius:6px;box-shadow:0 8px 24px var(--shadow)}
.ctype-menu button{display:flex;align-items:center;gap:10px;width:100%;border:0;background:transparent;color:var(--ink);padding:6px 10px;border-radius:4px;cursor:pointer;text-align:left;white-space:nowrap}
.ctype-menu button:hover{background:var(--hover)}
.ctype-menu button.on{background:var(--sel);font-weight:600}

/* razdelnik grafikon / donji prozor: vuče se mišem, visina se pamti (trd_tb_h) */
.hsplit{height:6px;margin:-3px 0;position:relative;z-index:5;cursor:row-resize;touch-action:none}
.hsplit::after{content:"";position:absolute;left:0;right:0;top:2px;height:2px;background:transparent;transition:background .15s}
.hsplit:hover::after,.hsplit.drag::after{background:var(--buy)}
body.resizing{cursor:row-resize;user-select:none}
body.resizing #chart{pointer-events:none}
.term.tb-sized .toolbox{height:var(--tb-h)}
.term.tb-sized .tabbody{flex:1 1 auto;height:auto;max-height:none}
.term.max .hsplit{display:none}
.term.max.tb-sized .toolbox{height:auto}
.term.max.tb-sized #tab-trade{flex:none;max-height:35vh}
@media (max-width:900px){
  .hsplit{display:none}
  .term.tb-sized .toolbox{height:auto}
  .term.tb-sized .tabbody{flex:none;max-height:320px}
}

/* periodi: padajući meni sa zvezdicama + omiljeni na traci */
#tfs{display:inline-flex;align-items:center;gap:4px}
.tf-favs{display:inline-flex;gap:4px}
.tfdd{position:relative;display:inline-flex}
.tf-btn{display:inline-flex;align-items:center;gap:4px;min-width:52px;justify-content:center}
.tf-btn .caret{font-size:9px;opacity:.7}
.tf-menu{min-width:210px}
.tf-row{display:flex;align-items:center}
.tf-row>button[data-tf]{flex:1}
.tf-row>button[data-tf] b{display:inline-block;min-width:38px;font-family:var(--mono)}
.tf-row>button[data-tf] span{color:var(--muted)}
.ctype-menu .tf-star{width:34px;flex:none;justify-content:center;font-size:16px;color:var(--muted);padding:6px 0}
.ctype-menu .tf-star.fav{color:#E0A800}
.ctype-menu .tf-star:hover{color:#E0A800}

/* kartice grafikona (MetaTrader/Excel): ispod grafikona */
.charttabs{position:absolute;left:38px;right:0;bottom:0;height:26px;z-index:4;display:flex;align-items:stretch;gap:0;background:var(--panel-2);border-top:1px solid var(--line);overflow-x:auto;overflow-y:hidden;scrollbar-width:none}
.charttabs::-webkit-scrollbar{display:none}
.ctab{display:flex;align-items:center;gap:4px;padding:0 6px 0 12px;border-right:1px solid var(--line);cursor:pointer;white-space:nowrap;font:12px var(--mono);color:var(--muted);user-select:none}
.ctab:hover{background:var(--hover);color:var(--ink)}
.ctab.on{background:var(--panel);color:var(--ink);font-weight:600;box-shadow:inset 0 2px 0 var(--brand);margin-top:-1px}
.ctab-x{border:0;background:transparent;color:var(--muted);cursor:pointer;font-size:14px;line-height:1;padding:0 3px;border-radius:3px}
.ctab-x:hover{background:var(--sell-bg);color:var(--sell)}
.ctab-add{border:0;background:transparent;color:var(--muted);cursor:pointer;font-size:16px;padding:0 12px}
.ctab-add:hover{color:var(--ink);background:var(--hover)}
@media (max-width:900px){.charttabs{left:34px}}
/* Layouts meni */
.laymenu{width:280px}
.laymenu .lay-row{display:flex;align-items:center}
.laymenu .lay-row button[data-load]{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.laymenu .lay-row .lay-del{flex:0 0 auto;width:auto;padding:5px 10px;color:var(--muted)}
.laymenu .lay-row .lay-del:hover{color:#E53935}
.laymenu .lay-empty,.laymenu .lay-hint,.laymenu .lay-msg{padding:6px 12px;color:var(--muted);font-size:12px;line-height:1.4}
.laymenu .lay-msg{color:var(--ink)}
.laymenu .lay-save{display:flex;gap:6px;padding:8px 12px 4px;border-top:1px solid var(--line);margin-top:4px}
.laymenu .lay-save input{flex:1;min-width:0;padding:5px 8px;border:1px solid var(--line);border-radius:4px;background:var(--bg);color:var(--ink);font:inherit}
.laymenu .lay-save .tb{width:auto;display:inline-block}
.laymenu button.arm{box-shadow:inset 0 0 0 1.5px #E53935;font-weight:600}
.laymenu .lay-chk{display:flex;align-items:center;gap:6px;padding:4px 12px 6px;font-size:12px;color:var(--ink);cursor:pointer}
.terms h2{font-size:15px;margin:18px 0 6px}.terms p,.terms li{line-height:1.55}.terms ul{padding-left:20px;margin:6px 0}

/* pretplata (Stripe) */
.sub-dlg{max-width:440px}
.sub-dlg .db{display:flex;flex-direction:column;gap:12px;line-height:1.5}
.sub-dlg p{margin:0}
.sub-why{padding:10px 12px;background:var(--panel-2);border-radius:4px}
.sub-ok{color:var(--pos);font-weight:600}
.sub-del{margin-top:14px;padding-top:10px;border-top:1px solid var(--border,#d1d4dc);font-size:12px}.sub-del .linkbtn{color:var(--muted,#787b86)}
.sub-price{display:flex;align-items:baseline;gap:8px}
.sub-price b{font-size:30px;font-weight:700}
.sub-price span{color:var(--muted)}
.sub-btn{border:0;border-radius:4px;padding:11px 16px;font-family:inherit;font-size:14px;font-weight:600;cursor:pointer;background:var(--swiss);color:#fff}
.sub-btn:disabled{opacity:.6;cursor:progress}
.sub-btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--line)}
.sub-dlg .sm{font-size:12px}
.sub-crypto{display:flex;flex-direction:column;gap:8px;padding-top:10px;border-top:1px solid var(--line)}
/* Uplate (⬇ Deposit) */
.dep-dlg{max-width:480px}
.dep-nets{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:6px}
.dep-nets button{border:1px solid var(--line);background:transparent;color:var(--ink);border-radius:4px;padding:8px 10px;font-family:inherit;cursor:pointer;text-align:left;display:flex;flex-direction:column;gap:2px}
.dep-nets button span{font-size:11.5px;color:var(--muted)}
.dep-nets button[aria-selected="true"]{border-color:var(--swiss);box-shadow:inset 0 0 0 1px var(--swiss)}
.dep-addr{display:flex;gap:8px;align-items:center}
.dep-addr code{flex:1;min-width:0;padding:10px 12px;background:var(--panel-2);border-radius:4px;font:13px var(--mono);word-break:break-all;user-select:all}
.dep-addr .sub-btn{padding:9px 12px;flex-shrink:0}
.dep-form{display:flex;flex-direction:column;gap:8px}
.dep-form label{display:flex;flex-direction:column;gap:6px;font-size:12.5px;color:var(--muted)}
.dep-form input{font:13px var(--mono);padding:9px 10px;border:1px solid var(--line);border-radius:4px;background:var(--input);color:var(--ink)}
.dep-list{width:100%;border-collapse:collapse;font-size:12.5px}
.dep-list td{padding:5px 0;border-top:1px solid var(--line)}
.dep-list td.n{text-align:right}
.dep-mode{grid-template-columns:1fr 1fr}
.dep-mode button{align-items:center}
.dep-form .dep-addr input{flex:1;min-width:0}
.bal-presets{grid-template-columns:repeat(3,1fr)}
.bal-presets button{align-items:center}

/* Depth of Market (kripto, Binance knjiga naloga): plutajući prozor, pomera se za zaglavlje */
.dom{position:fixed;z-index:55;top:96px;right:72px;width:340px;max-width:calc(100vw - 16px);background:var(--panel);border:1px solid var(--line);border-radius:6px;box-shadow:0 8px 24px var(--shadow);font-size:12px;display:flex;flex-direction:column;max-height:calc(100vh - 110px)}
.dom[hidden]{display:none}
.dom-head{display:flex;align-items:center;gap:6px;padding:6px 8px;background:var(--panel-2);border-bottom:1px solid var(--line);border-radius:6px 6px 0 0;cursor:move;user-select:none;touch-action:none}
.dom-head b{font-size:12px}
.dom-sym{font:600 11px var(--mono);color:var(--muted)}
.dom-step{margin-left:auto;display:flex;align-items:center;gap:3px;font:11px var(--mono);color:var(--muted)}
.dom-step button,.dom-x{border:1px solid var(--line);background:var(--panel);color:var(--ink);border-radius:3px;width:20px;height:20px;line-height:1;cursor:pointer;padding:0}
.dom-x{border-color:transparent;background:transparent;font-size:15px}
.dom-body{overflow-y:auto;min-height:60px}
.dom-msg{margin:12px;color:var(--muted);line-height:1.5}
.dom-sub{border:1px solid var(--line);background:var(--panel-2);color:var(--ink);border-radius:4px;padding:5px 10px;cursor:pointer;font-weight:600}
.dom-t{width:100%;border-collapse:collapse;font:11px var(--mono);font-variant-numeric:tabular-nums}
.dom-t th{position:sticky;top:0;background:var(--panel-2);color:var(--muted);font:500 10px var(--sans);padding:3px 6px;border-bottom:1px solid var(--line);text-align:right}
.dom-t th:nth-child(3){text-align:center}
.dom-t td{padding:2px 6px;border-bottom:1px solid var(--line-2);position:relative;text-align:right;white-space:nowrap}
.dom-t td span{position:relative}
.dom-t td i{position:absolute;top:1px;bottom:1px;right:0;opacity:.28}
.dom-t td.bid i{background:var(--pos)}.dom-t td.ask i{background:var(--neg)}
.dom-t td.sold i{background:var(--neg);opacity:.18}.dom-t td.bought i{background:var(--pos);opacity:.18}
.dom-t td.px{text-align:center;font-weight:600;background:var(--panel-2)}
.dom-t tr{cursor:pointer}
.dom-t tr:hover td{background:var(--hover)}
.dom-t tr.bid td.px{color:var(--pos)}.dom-t tr.ask td.px{color:var(--neg)}
.dom-t tr.bid td{border-bottom-color:var(--line)}
.dom-foot{padding:5px 8px;border-top:1px solid var(--line);color:var(--muted);font-size:10.5px;line-height:1.35}
@media (max-width:600px){.dom{top:auto;bottom:8px;right:8px;width:calc(100vw - 16px);max-height:55vh}}

/* demo: instrument sa zakašnjelom cenom samo za praćenje */
.dnote{font-size:12px;line-height:1.4;color:var(--muted);background:var(--panel-2);border:1px solid var(--line);border-radius:4px;padding:8px 10px;margin:6px 0}
.delayed.vo{font-size:10px;margin-left:4px;color:var(--muted)}
.linkbtn{border:0;background:none;padding:0;color:var(--accent,#2962ff);cursor:pointer;font:inherit;text-decoration:underline}
/* Total Score: kartica u gornjem desnom uglu grafikona (studies.js drawTotal) */
.totalcard{position:absolute;top:8px;right:76px;z-index:4;width:min(430px,calc(100% - 96px));font:12px var(--sans);color:var(--ink);background:color-mix(in srgb,var(--panel) 92%,transparent);border:1px solid var(--line,rgba(128,128,128,.35));border-radius:6px;padding:6px 10px 8px;box-shadow:0 2px 10px rgba(0,0,0,.18)}
.totalcard[hidden]{display:none}
.tc-head{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap;cursor:grab;touch-action:none}.tc-head:active{cursor:grabbing}
.tc-num{font:700 26px/1 var(--mono,monospace)}.tc-of{color:var(--muted);font-size:11px;margin-left:-3px}
.tc-label{font-size:14px}.tc-conf{color:var(--muted);font-size:11px;flex:1}
.totalcard button{border:0;background:transparent;color:var(--muted);cursor:pointer;font-size:14px;line-height:1;padding:0 2px}
.totalcard button:hover{color:var(--ink)}
.tc-bar{position:relative;height:8px;margin:6px 0 2px;border-radius:4px;background:linear-gradient(90deg,var(--neg),color-mix(in srgb,var(--muted) 60%,var(--panel)) 50%,var(--pos))}
.tc-bar i{position:absolute;top:-3px;width:3px;height:14px;margin-left:-1.5px;border-radius:2px;background:var(--ink);box-shadow:0 0 0 1px var(--panel)}
.tc-scale{display:flex;justify-content:space-between;color:var(--muted);font-size:10px}
.tc-text{margin:6px 0 4px;color:var(--ink-2);line-height:1.35}
.totalcard table{width:100%;border-collapse:collapse;font-size:11px}
.totalcard th{color:var(--muted);font-weight:500;text-align:left;padding:2px 4px;border-bottom:1px solid var(--line,rgba(128,128,128,.3))}
.totalcard td{padding:2px 4px;vertical-align:top;white-space:nowrap}.totalcard td:first-child{white-space:normal}.totalcard .n{text-align:right;white-space:nowrap}
.totalcard .tc-note{color:var(--muted);font-size:10px;white-space:normal}
.tc-foot{margin-top:4px;color:var(--muted);font-size:10px}
.tc-mode{margin-top:6px}.totalcard .tc-mode button{border:1px solid var(--line,rgba(128,128,128,.4));border-radius:4px;padding:3px 8px;font:500 11px var(--sans);color:var(--ink-2)}.totalcard .tc-mode button:hover{background:var(--sheet-hover,rgba(128,128,128,.12));color:var(--ink)}
.simple-note button{margin-left:6px;border:1px solid var(--line);border-radius:4px;background:transparent;color:var(--ink);padding:1px 8px;font-size:12px;cursor:pointer}
@media (max-width:900px){.totalcard{right:8px;top:auto;bottom:34px;width:min(430px,calc(100% - 16px));max-height:46%;overflow:auto}.totalcard .tc-note,.totalcard th:last-child{display:none}}

/* TURBO u ◆ Pro Tools (iz PrimeScope-a, 26.10.2026): dugme i spisak ostaju na vrhu panela dok se lista alata pomera */
.indpanel .turbo-wrap{position:sticky;top:-6px;z-index:3;padding:6px 12px 8px;background:var(--panel)}
.indpanel .turbo{max-height:min(40vh,320px);overflow-y:auto;padding:10px;border:1px solid var(--line);border-radius:6px;background:var(--panel)}
.turbo-bar{display:flex;align-items:center;gap:8px}
.turbo-go{flex:1;height:36px;border:0;border-radius:6px;background:var(--accent,#2962FF);color:#fff;font:700 14px var(--sans);letter-spacing:.08em;cursor:pointer}
.turbo-go:hover{filter:brightness(1.08)}
.turbo-go:disabled{opacity:.6;cursor:progress}
.turbo-lv{display:flex;padding:2px;border:1px solid var(--line);border-radius:6px}
.turbo-lv button{height:28px;padding:0 8px;border:0;border-radius:4px;background:transparent;color:var(--ink-2);font:500 12px var(--mono);cursor:pointer}
.turbo-lv button[aria-pressed="true"]{background:var(--ink);color:var(--panel)}
.turbo-msg,.turbo-sum{margin-top:7px;font-size:11px;line-height:1.35;color:var(--muted)}
.turbo-g{margin-top:8px}
.turbo-gh{display:flex;justify-content:space-between;font:600 10.5px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2)}
.turbo-g.pos .turbo-gh{color:var(--buy)}.turbo-g.neg .turbo-gh{color:var(--sell)}
.turbo-row{display:flex;align-items:baseline;gap:8px;width:100%;padding:5px 6px;border:0;border-radius:4px;background:transparent;color:var(--ink);font:500 12.5px var(--sans);text-align:left;cursor:pointer}
.turbo-row:hover{background:var(--panel-2)}
.turbo-row b{flex:1}
.turbo-row span{font:600 13px var(--mono)}
.turbo-row.pos span{color:var(--buy)}.turbo-row.neg span{color:var(--sell)}
.turbo-row small{color:var(--muted);font-size:10.5px}
.turbo-none{padding:3px 6px;font-size:11px;color:var(--muted)}

/* Correlation Matrix (◆ Pro Tools → Intermarket, iz PrimeScope-a 26.10.2026) */
.cm-dlg{max-width:760px}
.cm-ctl{display:flex;flex-wrap:wrap;gap:10px 14px;padding:10px 14px;border-bottom:1px solid var(--line)}
.cm-ctl label{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted)}
.cm-ctl select{padding:5px 8px;border:1px solid var(--line);border-radius:6px;background:var(--input);color:inherit;font-size:13px}
.cm-dlg [data-body]{padding:10px 14px 14px}
.cm-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
.cm{border-collapse:collapse;font:12px var(--mono);width:100%}
.cm th,.cm td{padding:6px 7px;text-align:center;white-space:nowrap}
.cm tbody th{text-align:left;position:sticky;left:0;background:var(--panel)}
.cm-sym{border:0;background:transparent;font:600 11px var(--mono);cursor:pointer;color:inherit;padding:0}
.cm-sym:hover{text-decoration:underline}.cm-sym.cur{color:var(--accent,#2962FF)}
.cm-c{border:1px solid var(--line)}.cm-c.diag{color:var(--muted)}.cm-c.hl{filter:brightness(1.18)}
.cm-c sup{font-size:9px;margin-left:2px}.cm-na{color:var(--muted);border:1px solid var(--line)}
.cm-note{margin:10px 0 0;font-size:12px;line-height:1.5}

/* Fundamentals (akcije i ETF, 25.10.2026) */
.fund{padding:8px 12px;font-size:12px}
.fund h4{margin:12px 0 4px;font-size:12px;font-weight:600}
.fund .fd-head b{font-size:14px}
.fund .fd-head a{color:var(--link)}
.fund .fd-stats{display:flex;flex-wrap:wrap;gap:6px 18px;margin:8px 0}
.fund .fd-stat span{display:block;color:var(--muted);font-size:11px}
.fund .fd-desc{margin:6px 0;max-width:900px;color:var(--ink)}
.fund .fd-q{border-collapse:collapse;font:12px var(--mono)}
.fund .fd-q th{text-align:left;font-weight:500;color:var(--muted);padding:2px 10px 2px 0}
.fund .fd-q td{padding:2px 10px 2px 0;border-top:1px solid var(--line-2)}
.fund .fd-q td.n{text-align:right}
.fund .fd-bar{width:120px}
.fund .fd-bar i{display:block;height:8px;background:var(--link);opacity:.55;border-radius:2px}
.fund .fd-lock{position:relative;margin-top:8px}
.fund .fd-ghost{filter:blur(4px);opacity:.5;pointer-events:none;user-select:none}
.fund .fd-cta{position:absolute;inset:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:6px}
.fund .fd-foot{margin-top:10px;font-size:11px}
.fund .fd-q td,.fund .fd-q th{white-space:nowrap}
@media (max-width:600px){.fund .fd-bar{width:56px}.fund .fd-q td,.fund .fd-q th{padding-right:6px}}


/* Portfolio (samo praćenje, 26.10.2026) */
.pf{padding:8px 12px;font-size:12px}
.pf h4{margin:12px 0 4px;font-size:12px;font-weight:600}
.pf .pf-stats{display:flex;flex-wrap:wrap;gap:6px 22px;margin:4px 0 8px}
.pf .pf-stat span{display:block;color:var(--muted);font-size:11px}
.pf .pf-stat b{font-size:14px}
.pf .pf-stat small{font-size:11px;font-weight:500}
.pf .pf-t{border-collapse:collapse;font:12px var(--mono);margin-bottom:8px}
.pf .pf-t th{text-align:left;font-weight:500;color:var(--muted);padding:2px 12px 2px 0;white-space:nowrap}
.pf .pf-t td{padding:3px 12px 3px 0;border-top:1px solid var(--line-2);white-space:nowrap}
.pf .pf-t td.n{text-align:right}
.pf .pf-t tr[data-pf-open]{cursor:pointer}
.pf .pf-t tr[data-pf-open]:hover td{background:var(--line-2)}
.pf .pf-x{border:0;background:none;color:var(--muted);cursor:pointer;font:inherit;padding:0 4px}
.pf .pf-x:hover{color:var(--down)}
.pf .pf-add{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:6px 0 2px}
.pf .pf-add select,.pf .pf-add input{font:12px var(--sans);padding:4px 6px;border:1px solid var(--line);border-radius:4px;background:var(--panel);color:var(--ink)}
.pf .pf-add input[name=qty],.pf .pf-add input[name=avg_price]{width:96px}
.pf .pf-file{cursor:pointer}
.pf .pf-hint{margin:2px 0 6px;font-size:11px}
.pf .pf-note{color:var(--down)}
.pf .pf-preview{border:1px solid var(--line);border-radius:4px;padding:6px 8px;margin:6px 0}
.pf .pf-preview ul{margin:4px 0 6px 16px;padding:0}
.pf .pf-al{display:flex;flex-wrap:wrap;gap:8px 40px}
.pf .pf-bar{display:grid;grid-template-columns:72px 160px 52px;align-items:center;gap:8px;margin:2px 0}
.pf .pf-bar i{display:block;height:8px;background:var(--link);opacity:.55;border-radius:2px}
.pf .pf-bar b{text-align:right;font-weight:500}
.pf .pf-lock{position:relative}
.pf .pf-ghost{filter:blur(4px);opacity:.5;pointer-events:none;user-select:none}
.pf .pf-cta2{display:flex;flex-direction:column;align-items:flex-start;gap:6px;margin-top:4px}
.pf .pf-cta{margin:6px 0}
.pf .pf-foot{margin-top:10px;font-size:11px}
@media (max-width:600px){.pf .pf-bar{grid-template-columns:60px 1fr 48px}.pf .pf-t th,.pf .pf-t td{padding-right:6px}}
.pf .pf-wrap{overflow-x:auto;max-width:100%}

/* Challenge (prop): traka granica ispod sažetka i kartica sa pravilima */
.chbar{border-top:1px dashed var(--line);gap:14px}
.chbar .ch-tag{font-weight:700;color:var(--brand);letter-spacing:.3px}
.chbar .warn,.ch-panel .warn{color:#B7791F}
.ch-panel{padding:10px 12px;font-size:12px}
.ch-live{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin-bottom:12px}
.ch-live>div>span{display:block;color:var(--muted);margin-bottom:4px}
.ch-live small{display:block;color:var(--ink-2);margin-top:4px;font-family:var(--mono)}
.ch-prog{height:8px;background:var(--line-2);border-radius:4px;overflow:hidden}
.ch-fill{height:100%;border-radius:4px;background:var(--pos)}
.ch-fill.pos{background:var(--pos)}.ch-fill.warn{background:#B7791F}.ch-fill.neg{background:var(--neg)}
.ch-rules{border-collapse:collapse;margin-bottom:10px}
.ch-rules th{text-align:left;color:var(--muted);font-weight:500;padding:3px 14px 3px 0;white-space:nowrap;vertical-align:top}
.ch-rules td{padding:3px 0}
.ch-days{max-width:320px}
.ch-empty{padding:20px}
.ch-mini{display:inline-block;width:38px;height:5px;background:var(--line-2);border-radius:3px;overflow:hidden;vertical-align:middle;margin-right:5px}
.ch-mini .ch-fill{display:block}
.dnote.chk{font-family:var(--mono)}
.dnote.chk.warn{color:#B7791F;border-color:#B7791F}
.dnote.chk.breach{color:var(--neg);border-color:var(--neg);font-weight:600}
