
:root{
  --bg:#f5f6f8; --card:#fff; --text:#17202a; --muted:#697386;
  --line:#e4e7ec; --green:#17854b; --red:#c43d3d; --amber:#a66a00;
  --blue:#2459a9;
}
*{box-sizing:border-box}
[hidden]{display:none!important}
body{margin:0;background:var(--bg);color:var(--text);font:14px/1.45 Arial,Helvetica,sans-serif}
header{background:#fff;border-bottom:1px solid var(--line)}
.top{max-width:1180px;margin:auto;padding:22px 26px 16px;display:flex;justify-content:space-between;align-items:end}
h1{font-size:22px;margin:0 0 4px}.sub{color:var(--muted)}
.badge{background:#eef2f6;border-radius:18px;padding:7px 12px;font-weight:700}
nav{max-width:1180px;margin:auto;padding:0 26px;display:flex;gap:28px}
nav button{border:0;background:none;padding:13px 0;color:var(--muted);font-weight:700;cursor:pointer;border-bottom:3px solid transparent}
nav button.active{color:var(--text);border-color:var(--blue)}
main{max-width:1180px;margin:26px auto;padding:0 26px}
.card{background:var(--card);border:1px solid var(--line);border-radius:10px;box-shadow:0 1px 2px rgba(16,24,40,.03)}
.cardhead{padding:20px 22px 13px;display:flex;justify-content:space-between;align-items:center}
.cardhead h2{font-size:18px;margin:0}.note{font-size:12px;color:var(--muted)}
.market-update-indicator{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}.market-update-indicator .dot{width:8px;height:8px;border-radius:50%;background:#98a2b3}.market-update-indicator.live .dot{background:#12b76a}.market-update-indicator.error .dot{background:#f04438}
table{width:100%;border-collapse:collapse;table-layout:fixed}
th{padding:11px 18px;text-align:right;color:var(--muted);font-size:12px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fafbfc}
th:first-child,td:first-child{text-align:left}
td{padding:16px 18px;text-align:right;border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums}
tbody tr{cursor:pointer} tbody tr:hover{background:#f8fafc}
#scanner tbody tr.has-holding{background:#eaf5ff}
#scanner tbody tr.has-holding:hover{background:#dfefff}
.holding-badge{display:inline-block;margin-left:6px;padding:2px 6px;border-radius:999px;background:#d7ecff;color:#245b86;font-size:9px;font-weight:800;vertical-align:middle}
.holding-panel{margin:0 0 16px;border:1px solid #cfe3f5;background:#f5faff;border-radius:10px;padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.holding-panel strong{color:#17202a}.holding-panel .holding-meta{font-size:12px;color:#526579;margin-top:3px}.holding-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.holding-actions input{width:105px;border:1px solid #c9d7e5;border-radius:7px;padding:7px 8px}#holdingTradeTime{width:190px}.holding-actions button{border:1px solid #9fbdd7;background:#fff;border-radius:7px;padding:7px 10px;cursor:pointer;font-weight:700;color:#245b86}.holding-actions button.primary{background:#245b86;color:#fff;border-color:#245b86}
.name{font-weight:700}.flag{margin-right:9px}
.pos{color:var(--green);font-weight:700}.neg{color:var(--red);font-weight:700}
.status{display:inline-block;border-radius:15px;padding:5px 10px;font-size:12px;font-weight:800}
.interesting{background:#dff4e8;color:#16704a}
.direction{display:inline-block;border-radius:14px;padding:4px 9px;font-size:11px;font-weight:800;white-space:nowrap}
.direction.up{background:#e7f5ed;color:#16704a}
.direction.down{background:#fde9e7;color:#a43b32}
.direction.turn{background:#fff2cf;color:#8a6200}
.direction.neutral{background:#eef1f4;color:#5c6570}
.activity{display:inline-block;border-radius:14px;padding:4px 9px;font-size:11px;font-weight:800;white-space:nowrap}
.activity.low{background:#eef1f4;color:#5c6570}
.activity.normal{background:#edf3f7;color:#435363}
.activity.high{background:#fff2cf;color:#8a6200}
.activity.unusual{background:#fde4d7;color:#9a451e}
.score{font-weight:800;font-variant-numeric:tabular-nums}
.scanner-controls{display:flex;justify-content:flex-end;gap:8px;align-items:center;padding:12px 18px;border-bottom:1px solid var(--line);background:#fafbfc}
.scanner-controls label{font-size:12px;color:#697386;font-weight:700}
.scanner-controls select{border:1px solid var(--line);background:#fff;border-radius:7px;padding:7px 10px;color:#17202a}
.scanner-search{padding:12px 18px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fafbfc;display:flex;align-items:center;gap:10px}
.scanner-search input{width:min(360px,100%);border:1px solid #cfd6df;background:#fff;border-radius:8px;padding:9px 11px;font:inherit;color:var(--text);outline:none}
.scanner-search input:focus{border-color:#7d96b8;box-shadow:0 0 0 3px rgba(36,89,169,.08)}
.scanner-search .search-count{font-size:12px;color:var(--muted)}

.scanner-filters{padding:10px 18px 12px;border-bottom:1px solid var(--line);background:#fafbfc;display:flex;align-items:end;gap:10px;flex-wrap:wrap}
.scanner-filter{display:flex;flex-direction:column;gap:4px}
.scanner-filter label{font-size:10px;color:var(--muted);font-weight:700}
.scanner-filter select{min-width:120px;border:1px solid #cfd6df;background:#fff;border-radius:7px;padding:7px 9px;font:inherit;color:var(--text)}
.scanner-filter.strength-filter select{min-width:105px}
.clear-filters{border:1px solid #cfd6df;background:#fff;border-radius:7px;padding:7px 10px;font:inherit;color:var(--muted);cursor:pointer}
.clear-filters:hover{background:#f1f4f8;color:var(--text)}
@media(max-width:760px){.scanner-filter{flex:1 1 140px}.scanner-filter select{width:100%;min-width:0}}
#scanner th.sortable{cursor:pointer;user-select:none;white-space:nowrap}
#scanner th.sortable:hover{background:#f1f4f8;color:var(--text)}
#scanner th.sortable .sort-arrow{display:inline-block;min-width:10px;margin-left:3px;color:#2459a9}
#scanner th.sortable.active{color:var(--text);background:#f4f7fb}
.wait{background:#f0f2f4;color:#5f6874}.watch{background:#fff3d8;color:var(--amber)}
.info{margin-top:18px;padding:17px 20px;display:flex;gap:40px;align-items:center}
.info strong{display:block;font-size:19px}.info span{color:var(--muted);font-size:12px}
.disclaimer{margin-top:16px;color:var(--muted);font-size:12px}
.placeholder{padding:34px 22px;color:var(--muted)}

.detailgrid{display:grid;grid-template-columns:minmax(0,2fr) minmax(290px,.9fr);gap:16px}
.sidecol{display:flex;flex-direction:column;gap:16px}
.detailcard{background:#fff;border:1px solid var(--line);border-radius:10px;padding:18px}
.chartcard{padding:18px 18px 14px}
.charttools{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:8px}
.timebuttons{display:flex;gap:6px;flex-wrap:wrap}
.timebuttons button{border:1px solid var(--line);background:#fff;padding:6px 10px;border-radius:16px;cursor:pointer}
.timebuttons .activeTime{background:#eef2f6;font-weight:700}
.highlow{display:flex;justify-content:space-between;gap:14px;font-size:13px}
.quote{text-align:center}.quote .highlow{text-align:left}
.assistantbox{border-left:4px solid #d5a11e}
.buy-assistant{margin:0 0 16px;border:1px solid var(--line);border-left:5px solid #8a96a3;border-radius:10px;background:#fff;padding:18px}
.buy-assistant.avvakta{border-left-color:#8a96a3}
.buy-assistant.bevaka{border-left-color:#d59a22}
.buy-assistant.koplage{border-left-color:#269f74}
.buy-assistant.kop{border-left-color:#087443;box-shadow:0 0 0 1px rgba(8,116,67,.05)}
.buy-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}
.buy-kicker{font-size:11px;color:#697386;font-weight:800;letter-spacing:.08em}
.buy-status{display:inline-block;margin-top:6px;border-radius:18px;padding:7px 12px;font-size:15px;font-weight:800}
.buy-status.avvakta{background:#eef1f4;color:#4f5d6b}
.buy-status.bevaka{background:#fff2cf;color:#8a6200}
.buy-status.koplage{background:#e4f4eb;color:#16704a}
.buy-status.kop{background:#087443;color:#fff}
.buy-transition{font-size:12px;color:#697386;padding:7px 10px;background:#f7f8fa;border:1px solid #e7e9ed;border-radius:8px}
.buy-sections{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px}
.buy-section{background:#f8f9fb;border:1px solid #e7e9ed;border-radius:8px;padding:12px}
.buy-section h4{margin:0 0 6px;font-size:12px}
.buy-section p{margin:0;color:#4f5d6b;font-size:12px;line-height:1.5}
.buy-columns{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}
.buy-listbox{border-top:1px solid #e7e9ed;padding-top:11px}
.buy-listbox h4,.buy-summary h4{margin:0 0 7px;font-size:11px;letter-spacing:.06em}
.buy-list{margin:0;padding-left:18px;color:#4f5d6b;font-size:12px;line-height:1.55}
.buy-summary{margin-top:12px;padding:12px;background:#f7f8fa;border:1px solid #e7e9ed;border-radius:8px;font-size:12px;line-height:1.55}
.buy-waiting{margin-top:10px;padding-top:10px;border-top:1px solid #e7e9ed}
.buy-note{margin-top:10px;color:#697386;font-size:11px}
.buy-decision{margin-top:14px;border:1px solid #dfe4e8;border-radius:12px;background:#fbfcfd;overflow:hidden}
.buy-decision-top{display:grid;grid-template-columns:minmax(210px,.72fr) minmax(320px,1.5fr);gap:0}
.buy-decision-main{padding:16px;border-right:1px solid #e3e7eb;background:#fff}
.buy-decision-main .label{font-size:10px;font-weight:800;letter-spacing:.08em;color:#697386;margin-bottom:7px}
.buy-decision-main .decision-status{font-size:28px;font-weight:900;letter-spacing:-.02em;line-height:1.05}
.buy-decision-why{padding:16px;background:#fbfcfd}
.buy-decision-why h4,.buy-decision-list h4,.buy-decision-summary h4{margin:0 0 7px;font-size:11px;letter-spacing:.06em}
.buy-decision-why p{margin:0;font-size:13px;line-height:1.55;color:#384556}
.buy-decision-body{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid #e3e7eb}
.buy-decision-list{padding:14px 16px;background:#fff}
.buy-decision-list+ .buy-decision-list{border-left:1px solid #e3e7eb}
.buy-decision-summary{padding:14px 16px;border-top:1px solid #e3e7eb;background:#f4f7f6;font-size:13px;line-height:1.55}
.buy-decision-summary strong{display:block;margin-bottom:3px}
.buy-next{margin-top:12px;padding:12px;background:#fff;border:1px solid #e3e7eb;border-radius:8px;font-size:12px;line-height:1.5}
.buy-next h4{margin:0 0 6px;font-size:11px;letter-spacing:.06em}
@media(max-width:760px){.buy-decision-top,.buy-decision-body{grid-template-columns:1fr}.buy-decision-main{border-right:0;border-bottom:1px solid #e3e7eb}.buy-decision-list+ .buy-decision-list{border-left:0;border-top:1px solid #e3e7eb}}

@media(max-width:900px){.buy-sections{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.buy-sections,.buy-columns{grid-template-columns:1fr}}

.metricrow{display:flex;justify-content:space-between;gap:16px;padding:9px 0;border-bottom:1px solid var(--line)}
.metricrow:last-child{border-bottom:0}
.lowergrid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:16px}
.detailcard h3{margin:0 0 10px;font-size:16px}
.marketcompare{margin-top:16px}
.marketcompare-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:12px}
.marketcompare-item{background:#f7f8fa;border:1px solid #e7e9ed;border-radius:8px;padding:12px}
.marketcompare-item span{display:block;color:#697386;font-size:11px;margin-bottom:5px}
.marketcompare-item b{font-size:15px;color:#17202a}
.marketcompare-result{margin-top:12px;padding:12px;border-radius:8px;background:#f7f8fa;border:1px solid #e7e9ed}
.marketcompare-result strong{display:block;margin-bottom:5px}
@media(max-width:760px){.marketcompare-grid{grid-template-columns:1fr}}


#scanner .tablewrap{overflow-x:auto}
#scanner table{table-layout:auto;width:100%}
#scanner table th,#scanner table td{padding:10px 5px;font-size:11px;vertical-align:middle;white-space:nowrap}
#scanner table th:first-child,#scanner table td:first-child{min-width:112px;text-align:left}
#scanner table th:nth-child(2),#scanner table td:nth-child(2){min-width:54px}
#scanner table th:nth-child(3),#scanner table td:nth-child(3){min-width:78px}
#scanner table th:nth-child(4),#scanner table td:nth-child(4){min-width:64px}
#scanner table th:nth-child(n+5):nth-child(-n+11),#scanner table td:nth-child(n+5):nth-child(-n+11){min-width:48px}
#scanner table th:nth-child(12),#scanner table td:nth-child(12){min-width:105px}
#scanner table th:nth-child(13),#scanner table td:nth-child(13){min-width:112px}
#scanner table th:nth-child(14),#scanner table td:nth-child(14){min-width:74px}
#scanner .status,#scanner .direction,#scanner .activity{font-size:10px;padding:4px 6px}
#scanner .buy-scan{font-size:10px;padding:4px 7px;border-radius:999px;font-weight:800;display:inline-block;white-space:nowrap}
#scanner .buy-scan.koplage{background:#dff5e9;color:#087443}
#scanner .buy-scan.kop{background:#087443;color:#fff}
#scanner .buy-scan.bevaka{background:#fff0c8;color:#916200}
#scanner .buy-scan.avvakta{background:#edf1f5;color:#4f5d6b}
#scanner .buy-scan.unrated{background:#f5f6f8;color:#8a94a3;font-weight:700}
.buy-scan-summary{display:flex;gap:14px;align-items:center;flex-wrap:wrap;padding:10px 18px;border-bottom:1px solid var(--line);background:#fff}
.buy-scan-summary .summary-group{display:flex;gap:8px;align-items:center;flex-wrap:nowrap;white-space:nowrap}
.buy-scan-summary .summary-group.holding-summary{padding-left:14px;border-left:1px solid var(--line)}
.buy-scan-summary .summary-title{font-size:11px;font-weight:800;color:#4f5d6b;margin-right:3px}
.buy-scan-summary .summary-chip{font-size:11px;border:1px solid var(--line);border-radius:999px;padding:5px 9px;background:#fafbfc;color:#4f5d6b}
.buy-scan-summary .summary-chip b{color:#17202a}
.buy-scan-summary .summary-note{font-size:10px;color:#7a8796;margin-left:auto}
@media(max-width:1300px){.buy-scan-summary .summary-group{flex-wrap:wrap}.buy-scan-summary .summary-group.holding-summary{border-left:0;padding-left:0}.buy-scan-summary .summary-note{width:100%;margin-left:0}}
@media(max-width:1000px){
  #scanner table{min-width:1140px}
}

@media(max-width:760px){.detailgrid,.lowergrid{grid-template-columns:1fr}.charttools{align-items:flex-start;flex-direction:column}.hide-sm{display:none}.top{align-items:start;gap:10px}.info{flex-wrap:wrap}nav{overflow:auto}td,th{padding:13px 10px}}

.periodinfo{
  margin-top:10px;padding:10px 12px;border:1px solid #e4e7ec;border-radius:8px;
  background:#fafbfc;font-size:12px;color:#596273;display:flex;gap:22px;flex-wrap:wrap
}
.periodinfo b{color:#26364a}

.info-tip{position:relative;display:inline-flex;vertical-align:middle;margin-left:5px}
.info-btn{
 width:16px;height:16px;border:1px solid #aeb8c5;border-radius:50%;
 background:#fff;color:#526173;font-size:10px;font-weight:700;line-height:14px;
 align-items:center;justify-content:center;cursor:help;padding:0
}
.info-box{
 display:none;position:absolute;z-index:50;left:22px;top:-8px;width:340px;max-width:min(340px,calc(100vw - 40px));
 padding:10px 12px;background:#26364a;color:#fff;border-radius:7px;
 font-size:11px;font-weight:400;line-height:1.45;white-space:normal;overflow-wrap:anywhere;box-shadow:0 5px 18px rgba(0,0,0,.16)
}
.info-tip:hover .info-box,.info-tip:focus-within .info-box,.info-tip.open .info-box{display:block}
@media(max-width:700px){.info-box{left:auto;right:0;top:22px;width:220px}}

.keylevels{margin-top:14px;border-top:1px solid var(--line);padding-top:14px}
.keylevels-head{display:flex;align-items:center;gap:6px;margin-bottom:10px;color:#26364a}
.keylevels-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.keylevel{border:1px solid var(--line);background:#fafbfc;border-radius:8px;padding:10px 11px;min-width:0}
.keylevel > span{display:block;color:var(--muted);font-size:11px;margin-bottom:3px}
.keylevel b{font-size:13px;color:#26364a;white-space:nowrap}
.keylevels-note{color:var(--muted);font-size:11px;margin-top:9px}
.sr-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px}
.sr-card{border:1px solid var(--line);border-radius:8px;padding:10px 11px;background:#fff}
.sr-card > span{display:block;color:var(--muted);font-size:11px;margin-bottom:3px}
.sr-card b{font-size:13px;color:#26364a}
.sr-card small{display:block;color:var(--muted);margin-top:4px;line-height:1.35}
@media(max-width:760px){.keylevels-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sr-grid{grid-template-columns:1fr}}

/* V6.6.2 — scanner layout correction */
#scanner .card{overflow:hidden}
#scanner .scanner-filters{display:grid;grid-template-columns:105px 120px 180px minmax(170px,1fr) 120px minmax(180px,1fr) auto;gap:10px;align-items:end}
#scanner .scanner-filter select{width:100%;min-width:0}
#scanner .clear-filters{white-space:nowrap}
#scanner .buy-scan-summary{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:10px 18px}
#scanner .buy-scan-summary .summary-group{display:flex;gap:7px;align-items:center;flex-wrap:wrap;white-space:normal}
#scanner .buy-scan-summary .summary-group.holding-summary{margin-left:auto;padding-left:14px;border-left:1px solid var(--line)}
#scanner .buy-scan-summary .summary-note{flex:1 0 100%;width:100%;text-align:left;margin:2px 0 0;font-size:10px;line-height:1.35;color:#7a8796}
#scanner .tablewrap{overflow-x:auto;width:100%}
#scanner table{min-width:1320px}
#scanner table th,#scanner table td{padding:10px 6px}
#scanner table th:nth-child(15),#scanner table td:nth-child(15){min-width:126px;border-left:1px solid var(--line);background:#fbfcfd}
@media(max-width:1100px){#scanner .scanner-filters{grid-template-columns:repeat(3,minmax(150px,1fr)) auto}#scanner .buy-scan-summary .summary-group.holding-summary{margin-left:0;border-left:0;padding-left:0}}
@media(max-width:700px){#scanner .scanner-filters{grid-template-columns:1fr 1fr}#scanner .clear-filters{width:100%}#scanner .buy-scan-summary{display:flex;flex-wrap:wrap}}

/* V6.8 — signalhistorik och förändring */
#scanner .signal-move{font-size:10px;padding:4px 7px;border-radius:999px;font-weight:800;display:inline-block;white-space:nowrap;border:1px solid transparent}
#scanner .signal-move.up{background:#e3f6ec;color:#087443;border-color:#bfe8d1}
#scanner .signal-move.down{background:#fde8e7;color:#ad2f2f;border-color:#f5c8c5}
#scanner .signal-move.stable{background:#f1f4f7;color:#607080;border-color:#e1e6eb}
#scanner .signal-move.new{background:#eef3ff;color:#38598f;border-color:#d9e4ff}
#scanner .signal-move.unrated{background:#f5f6f8;color:#8a94a3;border-color:#eceff2}
#scanner table th:nth-child(16),#scanner table td:nth-child(16){min-width:148px;background:#fbfcfd}
.signal-history-box{margin-top:12px;border:1px solid #e4e7ec;border-radius:9px;background:#fafbfc;padding:11px 13px}
.signal-history-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:8px}
.signal-history-head h4{margin:0;font-size:11px;letter-spacing:.04em;color:#4f5d6b}
.signal-history-current{font-size:12px;font-weight:800;color:#26364a}
.signal-history-list{display:flex;gap:7px;flex-wrap:wrap}
.signal-history-item{font-size:10px;background:#fff;border:1px solid #e4e7ec;border-radius:999px;padding:5px 8px;color:#607080}
.signal-history-note{font-size:10px;color:#7a8796;margin-top:8px;line-height:1.4}


/* V7.2 – bred desktopscanner utan horisontell rullning */
@media(min-width:1200px){
  .top,nav,main{max-width:1540px}
  #scanner .tablewrap{overflow-x:visible}
  #scanner table{min-width:0;width:100%;table-layout:auto}
  #scanner table th,#scanner table td{padding-left:7px;padding-right:7px}
  #scanner table th:first-child,#scanner table td:first-child{min-width:105px}
  #scanner table th:nth-child(2),#scanner table td:nth-child(2){min-width:46px}
  #scanner table th:nth-child(3),#scanner table td:nth-child(3){min-width:72px}
  #scanner table th:nth-child(4),#scanner table td:nth-child(4){min-width:58px}
  #scanner table th:nth-child(n+5):nth-child(-n+11),#scanner table td:nth-child(n+5):nth-child(-n+11){min-width:45px}
  #scanner table th:nth-child(12),#scanner table td:nth-child(12){min-width:96px}
  #scanner table th:nth-child(13),#scanner table td:nth-child(13){min-width:104px}
  #scanner table th:nth-child(14),#scanner table td:nth-child(14){min-width:70px}
  #scanner table th:nth-child(15),#scanner table td:nth-child(15){min-width:116px}
  #scanner table th:nth-child(16),#scanner table td:nth-child(16){min-width:136px}
}


/* V7.2 – innehav och Sälj-Assistent */
.holding-panel{display:block;padding:0;overflow:hidden;background:#fff;border-color:#cfe3f5}
.holding-head{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#edf7ff;border-bottom:1px solid #cfe3f5}
.holding-title{font-size:12px;font-weight:800;letter-spacing:.04em;color:#245b86}.holding-grid{display:grid;grid-template-columns:repeat(6,1fr)}
.holding-metric{padding:13px 15px;border-right:1px solid #e5edf4}.holding-metric:last-child{border-right:0}.holding-metric .k{font-size:10px;color:#697386;text-transform:uppercase;font-weight:800}.holding-metric .v{font-size:15px;font-weight:800;color:#17202a;margin-top:4px}.holding-metric .v.pos{color:#087443}.holding-metric .v.neg{color:#c0392b}
.sell-assistant{border-left-color:#3976a8}.sell-assistant.behall{border-left-color:#3976a8}.sell-assistant.saljbevaka{border-left-color:#d59a22}.sell-assistant.saljlage{border-left-color:#d46a1f}.sell-assistant.salj{border-left-color:#b42318}
.decision-status.behall{background:#e8f2fb;color:#245b86}.decision-status.saljbevaka{background:#fff1cf;color:#8a5b00}.decision-status.saljlage{background:#ffead8;color:#9a4b12}.decision-status.salj{background:#fde8e7;color:#a3271f}
.buy-scan.behall{background:#e8f2fb;color:#245b86}.buy-scan.saljbevaka{background:#fff1cf;color:#8a5b00}.buy-scan.saljlage{background:#ffead8;color:#9a4b12}.buy-scan.salj{background:#fde8e7;color:#a3271f}
@media(max-width:900px){.holding-grid{grid-template-columns:repeat(2,1fr)}.holding-metric{border-bottom:1px solid #e5edf4}}

/* V8.2 – Backtestmotor */
.backtest-wrap{padding:4px 0 0}
.backtest-hero{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:16px}
.backtest-hero h2{margin:0 0 6px;color:#17202a}
.backtest-hero p{margin:0;color:#5e6b78;max-width:820px;line-height:1.5;font-size:13px}
.bt-badge{display:inline-block;padding:5px 9px;border-radius:999px;background:#e8f2fb;color:#245b86;font-size:10px;font-weight:800;white-space:nowrap}
.bt-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0}
.bt-metric{border:1px solid var(--line);border-radius:9px;padding:12px;background:#fafbfc}
.bt-metric span{display:block;color:#697386;font-size:10px;text-transform:uppercase;font-weight:800}
.bt-metric b{display:block;margin-top:5px;color:#17202a;font-size:18px}
.bt-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:12px 0 16px}
.bt-actions button{border:1px solid #b9c4d0;background:#fff;color:#26364a;border-radius:7px;padding:8px 12px;font-weight:700;cursor:pointer}
.bt-actions button.primary{background:#245b86;color:#fff;border-color:#245b86}
.bt-note{border:1px solid #f0d8a8;background:#fff8e8;color:#765b1e;border-radius:8px;padding:10px 12px;font-size:12px;line-height:1.45;margin:12px 0}
.bt-tablewrap{overflow-x:auto;border:1px solid var(--line);border-radius:9px}
.bt-table{width:100%;border-collapse:collapse;min-width:820px}
.bt-table th,.bt-table td{padding:9px 10px;border-bottom:1px solid var(--line);text-align:left;font-size:11px}
.bt-table th{background:#fafbfc;color:#526173}
.bt-table tr:last-child td{border-bottom:0}
.bt-status{font-weight:800}
@media(max-width:850px){.bt-grid{grid-template-columns:repeat(2,1fr)}.backtest-hero{display:block}.bt-badge{margin-top:10px}}


/* V8.3 – manuell historisk testdata */
.manual-history{margin-top:18px;border-top:1px solid var(--line);padding-top:16px}
.manual-history-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:10px}
.manual-history-head h3{margin:0 0 5px;font-size:15px;color:#17202a}
.manual-history-head p{margin:0;color:#647183;font-size:11px;line-height:1.45;max-width:760px}
.data-quality{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 12px}
.data-pill{padding:5px 8px;border-radius:999px;font-size:10px;font-weight:800;border:1px solid var(--line);background:#fff}
.data-pill.ok{background:#edf8f1;color:#23663a;border-color:#cfe8d6}
.data-pill.missing{background:#fff4f1;color:#9a4a36;border-color:#f0d2c8}
.manual-table{width:100%;border-collapse:collapse}
.manual-table th,.manual-table td{padding:8px 10px;border-bottom:1px solid var(--line);font-size:11px;text-align:left}
.manual-table th{background:#fafbfc;color:#526173}
.manual-table tr:last-child td{border-bottom:0}
.manual-status{border:1px solid #f0d8a8;background:#fff8e8;color:#765b1e;border-radius:8px;padding:10px 12px;font-size:11px;line-height:1.45;margin-top:10px}


/* V8.3.2 – datatäckning / ofullständig historik */
.coverage-box{margin-top:12px;border:1px solid var(--line);border-radius:9px;background:#fafbfc;padding:12px}
.coverage-title{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:10px}
.coverage-title h4{margin:0;font-size:12px;color:#17202a}
.coverage-score{font-size:11px;font-weight:800;color:#245b86}
.coverage-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.coverage-row{display:flex;justify-content:space-between;gap:10px;align-items:center;border:1px solid var(--line);background:#fff;border-radius:7px;padding:8px 10px;font-size:10px}
.coverage-row b{color:#26364a}
.coverage-state{font-weight:800;white-space:nowrap}
.coverage-state.ok{color:#237a43}.coverage-state.no{color:#a04a36}
.assessment-lock{margin-top:10px;border-left:4px solid #d69e2e;background:#fff8e8;border-radius:6px;padding:10px 12px;font-size:11px;line-height:1.5;color:#6d551e}
.assessment-lock strong{color:#493b1d}
@media(max-width:700px){.coverage-grid{grid-template-columns:1fr}}


/* V8.4 – faktabaserad historisk delanalys */
.partial-analysis{margin-top:12px;border:1px solid var(--line);border-radius:9px;background:#fff;padding:12px}
.partial-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:10px}
.partial-head h4{margin:0;font-size:12px;color:#17202a}
.partial-head p{margin:3px 0 0;font-size:10px;color:#687789;line-height:1.45}
.partial-badge{font-size:9px;font-weight:800;color:#245b86;background:#edf5fb;border-radius:999px;padding:4px 7px;white-space:nowrap}
.partial-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.partial-card{border:1px solid var(--line);border-radius:8px;background:#fafbfc;padding:10px;min-height:78px}
.partial-card .k{font-size:9px;color:#687789;text-transform:uppercase;font-weight:800;letter-spacing:.02em}
.partial-card .v{font-size:16px;font-weight:800;color:#17202a;margin-top:4px}
.partial-card .s{font-size:9px;color:#687789;line-height:1.4;margin-top:4px}
.partial-note{margin-top:10px;border-left:4px solid #4b82b2;background:#f3f8fc;border-radius:6px;padding:9px 11px;font-size:10px;color:#39536a;line-height:1.5}
@media(max-width:900px){.partial-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.partial-grid{grid-template-columns:1fr}}


/* V8.5 – generell historikmotor */
.history-engine-box{margin:12px 0;border:1px solid var(--line);border-radius:9px;background:#fff;padding:12px}
.history-engine-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.history-engine-head h4{margin:0;font-size:12px;color:#17202a}
.history-engine-head p{margin:3px 0 0;font-size:10px;color:#687789;line-height:1.45}
.history-engine-status{font-size:9px;font-weight:800;color:#245b86;background:#edf5fb;border-radius:999px;padding:4px 7px;white-space:nowrap}
.history-engine-controls{display:flex;gap:8px;align-items:center;margin-top:10px;flex-wrap:wrap}
.history-engine-controls label{font-size:9px;font-weight:800;color:#687789;text-transform:uppercase}
.history-engine-controls select{border:1px solid var(--line);border-radius:7px;background:#fff;color:#17202a;padding:7px 9px;font-size:10px;min-width:260px}
.history-engine-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:10px}
.history-engine-meta .m{border:1px solid var(--line);border-radius:7px;background:#fafbfc;padding:8px 10px}
.history-engine-meta .k{font-size:8px;color:#687789;text-transform:uppercase;font-weight:800}
.history-engine-meta .v{font-size:11px;color:#17202a;font-weight:800;margin-top:3px}
@media(max-width:800px){.history-engine-meta{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.history-engine-meta{grid-template-columns:1fr}.history-engine-controls select{min-width:100%}}


/* V8.6 – Twelve Data HistoricalDataProvider */
.api-provider{margin:12px 0;border:1px solid var(--line);border-radius:9px;background:#fff;padding:12px}
.api-provider h4{margin:0;font-size:12px;color:#17202a}
.api-provider .sub{font-size:10px;color:#687789;line-height:1.45;margin-top:4px}
.api-grid{display:grid;grid-template-columns:1.1fr .8fr .8fr .8fr;gap:8px;margin-top:10px}
.api-field label{display:block;font-size:8px;font-weight:800;color:#687789;text-transform:uppercase;margin-bottom:4px}
.api-field input,.api-field select{width:100%;box-sizing:border-box;border:1px solid var(--line);border-radius:7px;background:#fff;color:#17202a;padding:8px 9px;font-size:10px}
.api-key-row{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:10px}
.api-key-row input{width:100%;box-sizing:border-box;border:1px solid var(--line);border-radius:7px;padding:8px 9px;font-size:10px}
.api-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:10px}
.api-actions button{border:1px solid #2f6f9f;border-radius:7px;background:#2f6f9f;color:#fff;padding:8px 11px;font-size:10px;font-weight:800;cursor:pointer}
.api-actions button.secondary{background:#fff;color:#2f6f9f}
.api-status{font-size:10px;color:#687789;line-height:1.45}
.api-status.ok{color:#237a43}.api-status.err{color:#a04a36}.api-status.wait{color:#8a651f}
.api-note{margin-top:10px;background:#f7f9fb;border-left:4px solid #7b93a8;border-radius:6px;padding:9px 11px;font-size:9px;color:#536678;line-height:1.5}
@media(max-width:850px){.api-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.api-grid{grid-template-columns:1fr}.api-key-row{grid-template-columns:1fr}}


/* V8.6.1 – API-nyckel utan lösenordsfält */
.api-key-masked{-webkit-text-security:disc;text-security:disc}


/* V8.8 historical replay */
.replay-box{margin-top:12px;border:1px solid var(--line);border-radius:9px;background:#fff;padding:12px}
.replay-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:10px}
.replay-head h4{margin:0;font-size:12px}
.replay-head p{margin:3px 0 0;font-size:10px;color:#687789;line-height:1.45}
.replay-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.replay-card{border:1px solid var(--line);border-radius:8px;background:#fafbfc;padding:10px}
.replay-card .k{font-size:8px;color:#687789;text-transform:uppercase;font-weight:800}
.replay-card .v{font-size:14px;font-weight:800;margin-top:4px}
.replay-card .s{font-size:9px;color:#687789;line-height:1.4;margin-top:4px}
.replay-note{margin-top:9px;padding:9px 11px;border-left:4px solid #d79b22;background:#fff8e8;border-radius:6px;font-size:10px;line-height:1.45}
@media(max-width:850px){.replay-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}


/* V8.9 – minut-för-minut snapshotmotor utan framtidsdata */
.snapshot-box{margin-top:12px;border:1px solid var(--line);border-radius:9px;background:#fff;padding:12px}
.snapshot-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:10px}
.snapshot-head h4{margin:0;font-size:12px}
.snapshot-head p{margin:3px 0 0;font-size:10px;color:#687789;line-height:1.45}
.snapshot-controls{display:flex;gap:8px;align-items:end;flex-wrap:wrap;margin:10px 0}
.snapshot-controls label{font-size:8px;font-weight:800;color:#687789;text-transform:uppercase;display:block;margin-bottom:4px}
.snapshot-controls select{min-width:150px}
.snapshot-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.snapshot-card{border:1px solid var(--line);border-radius:8px;background:#fafbfc;padding:10px}
.snapshot-card .k{font-size:8px;color:#687789;text-transform:uppercase;font-weight:800}
.snapshot-card .v{font-size:14px;font-weight:800;margin-top:4px}
.snapshot-card .s{font-size:9px;color:#687789;line-height:1.4;margin-top:4px}
.snapshot-ok{margin-top:9px;padding:9px 11px;border-left:4px solid #2f8a57;background:#eef8f2;border-radius:6px;font-size:10px;line-height:1.45}
@media(max-width:850px){.snapshot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}


/* V8.10 – faktabaserad historisk snapshotbedömning */
.hist-assess{margin-top:12px;border:1px solid var(--line);border-radius:9px;background:#fff;padding:12px}
.hist-assess-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:10px}
.hist-assess-head h4{margin:0;font-size:12px}
.hist-assess-head p{margin:3px 0 0;font-size:10px;color:#687789;line-height:1.45}
.hist-assess-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.hist-assess-card{border:1px solid var(--line);border-radius:8px;background:#fafbfc;padding:10px}
.hist-assess-card .k{font-size:8px;color:#687789;text-transform:uppercase;font-weight:800}
.hist-assess-card .v{font-size:13px;font-weight:800;margin-top:4px}
.hist-assess-card .s{font-size:9px;color:#687789;line-height:1.4;margin-top:4px}
.hist-block{margin-top:9px;padding:9px 11px;border-left:4px solid #d79b22;background:#fff8e8;border-radius:6px;font-size:10px;line-height:1.45}
@media(max-width:850px){.hist-assess-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}


/* V8.11 batchanalys */
.batch-box{margin-top:12px;border:1px solid var(--line);border-radius:9px;background:#fff;padding:12px}.batch-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:10px}.batch-head h4{margin:0;font-size:12px}.batch-head p{margin:3px 0 0;font-size:10px;color:#687789;line-height:1.45}.batch-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.batch-card{border:1px solid var(--line);border-radius:8px;background:#fafbfc;padding:10px}.batch-card .k{font-size:8px;color:#687789;text-transform:uppercase;font-weight:800}.batch-card .v{font-size:14px;font-weight:800;margin-top:4px}.batch-card .s{font-size:9px;color:#687789;line-height:1.4;margin-top:4px}.batch-table{width:100%;border-collapse:collapse;margin-top:10px;font-size:9px}.batch-table th,.batch-table td{border-bottom:1px solid var(--line);padding:7px 6px;text-align:right}.batch-table th:first-child,.batch-table td:first-child{text-align:left}.batch-note{margin-top:9px;padding:9px 11px;border-left:4px solid #4b82b2;background:#f3f8fc;border-radius:6px;font-size:10px;line-height:1.45}@media(max-width:950px){.batch-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* V8.12 – sammanhängande villkor grupperas till separata historiska händelser */
.event-box{margin-top:12px;border:1px solid var(--line);border-radius:9px;background:#fff;padding:12px}
.event-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:10px}
.event-head h4{margin:0;font-size:12px}
.event-head p{margin:3px 0 0;font-size:10px;color:#687789;line-height:1.45}
.event-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.event-card{border:1px solid var(--line);border-radius:8px;background:#fafbfc;padding:10px}
.event-card .k{font-size:8px;color:#687789;text-transform:uppercase;font-weight:800}
.event-card .v{font-size:14px;font-weight:800;margin-top:4px}
.event-card .s{font-size:9px;color:#687789;line-height:1.4;margin-top:4px}
.event-table{width:100%;border-collapse:collapse;margin-top:10px;font-size:9px}
.event-table th,.event-table td{border-bottom:1px solid var(--line);padding:7px 6px;text-align:right}
.event-table th:first-child,.event-table td:first-child{text-align:left}
.event-note{margin-top:9px;padding:9px 11px;border-left:4px solid #2f8a57;background:#eef8f2;border-radius:6px;font-size:10px;line-height:1.45}
@media(max-width:950px){.event-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}


/* V8.13 – jämförelse av verifierbara faktakombinationer */
.combo-box{margin-top:12px;border:1px solid var(--line);border-radius:9px;background:#fff;padding:12px}
.combo-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:10px}
.combo-head h4{margin:0;font-size:12px}
.combo-head p{margin:3px 0 0;font-size:10px;color:#687789;line-height:1.45}
.combo-table{width:100%;border-collapse:collapse;margin-top:8px;font-size:9px}
.combo-table th,.combo-table td{border-bottom:1px solid var(--line);padding:8px 6px;text-align:right;vertical-align:top}
.combo-table th:first-child,.combo-table td:first-child{text-align:left}
.combo-table .best{font-weight:800}
.combo-note{margin-top:9px;padding:9px 11px;border-left:4px solid #4b82b2;background:#f3f8fc;border-radius:6px;font-size:10px;line-height:1.45}


/* V8.14 – stabilitet/varaktighetstest */
.stability-box{margin-top:12px;border:1px solid var(--line);border-radius:9px;background:#fff;padding:12px}
.stability-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:10px}
.stability-head h4{margin:0;font-size:12px}
.stability-head p{margin:3px 0 0;font-size:10px;color:#687789;line-height:1.45}
.stability-table{width:100%;border-collapse:collapse;margin-top:8px;font-size:9px}
.stability-table th,.stability-table td{border-bottom:1px solid var(--line);padding:8px 6px;text-align:right;vertical-align:top}
.stability-table th:first-child,.stability-table td:first-child{text-align:left}
.stability-note{margin-top:9px;padding:9px 11px;border-left:4px solid #4b82b2;background:#f3f8fc;border-radius:6px;font-size:10px;line-height:1.45}


/* V8.15 – simulerade trade-kandidater från verifierade faktahändelser */
.tradebt-box{margin-top:12px;border:1px solid var(--line);border-radius:9px;background:#fff;padding:12px}
.tradebt-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:10px}
.tradebt-head h4{margin:0;font-size:12px}
.tradebt-head p{margin:3px 0 0;font-size:10px;color:#687789;line-height:1.45}
.tradebt-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.tradebt-card{border:1px solid var(--line);border-radius:8px;background:#fafbfc;padding:10px}
.tradebt-card .k{font-size:8px;color:#687789;text-transform:uppercase;font-weight:800}
.tradebt-card .v{font-size:14px;font-weight:800;margin-top:4px}
.tradebt-card .s{font-size:9px;color:#687789;line-height:1.4;margin-top:4px}
.tradebt-table{width:100%;border-collapse:collapse;margin-top:10px;font-size:9px}
.tradebt-table th,.tradebt-table td{border-bottom:1px solid var(--line);padding:7px 6px;text-align:right}
.tradebt-table th:first-child,.tradebt-table td:first-child{text-align:left}
.tradebt-warn{margin-top:9px;padding:9px 11px;border-left:4px solid #d79b22;background:#fff8e8;border-radius:6px;font-size:10px;line-height:1.45}
@media(max-width:950px){.tradebt-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}


/* V8.16 – slutrapport och validering */
.finalv8-box{margin-top:12px;border:1px solid var(--line);border-radius:9px;background:#fff;padding:12px}
.finalv8-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:10px}
.finalv8-head h4{margin:0;font-size:12px}
.finalv8-head p{margin:3px 0 0;font-size:10px;color:#687789;line-height:1.45}
.finalv8-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.finalv8-card{border:1px solid var(--line);border-radius:8px;background:#fafbfc;padding:10px}
.finalv8-card .k{font-size:8px;color:#687789;text-transform:uppercase;font-weight:800}
.finalv8-card .v{font-size:14px;font-weight:800;margin-top:4px}
.finalv8-card .s{font-size:9px;color:#687789;line-height:1.4;margin-top:4px}
.finalv8-section{margin-top:10px;border:1px solid var(--line);border-radius:8px;padding:10px}
.finalv8-section h5{margin:0 0 7px;font-size:10px}
.finalv8-list{margin:0;padding-left:18px;font-size:10px;line-height:1.55}
.finalv8-good{border-left:4px solid #2f8a57;background:#eef8f2}
.finalv8-warn{border-left:4px solid #d79b22;background:#fff8e8}
.finalv8-info{border-left:4px solid #4b82b2;background:#f3f8fc}
@media(max-width:900px){.finalv8-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}


/* V9.1 – optimeringslaboratorium med train/validation-split */
.opt-box{margin-top:12px;border:1px solid var(--line);border-radius:9px;background:#fff;padding:12px}
.opt-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:10px}
.opt-head h4{margin:0;font-size:12px}
.opt-head p{margin:3px 0 0;font-size:10px;color:#687789;line-height:1.45}
.opt-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.opt-card{border:1px solid var(--line);border-radius:8px;background:#fafbfc;padding:10px}
.opt-card .k{font-size:8px;color:#687789;text-transform:uppercase;font-weight:800}
.opt-card .v{font-size:14px;font-weight:800;margin-top:4px}
.opt-card .s{font-size:9px;color:#687789;line-height:1.4;margin-top:4px}
.opt-table{width:100%;border-collapse:collapse;margin-top:10px;font-size:9px}
.opt-table th,.opt-table td{border-bottom:1px solid var(--line);padding:7px 6px;text-align:right;vertical-align:top}
.opt-table th:first-child,.opt-table td:first-child{text-align:left}
.opt-good{margin-top:9px;padding:9px 11px;border-left:4px solid #2f8a57;background:#eef8f2;border-radius:6px;font-size:10px;line-height:1.45}
.opt-warn{margin-top:9px;padding:9px 11px;border-left:4px solid #d79b22;background:#fff8e8;border-radius:6px;font-size:10px;line-height:1.45}
@media(max-width:950px){.opt-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}


/* V9.2 – blockhämtning av större historiskt underlag */
.bulk92{margin-top:10px;border:1px solid var(--line);border-radius:9px;background:#fff;padding:12px}.bulk92 h4{margin:0;font-size:12px}.bulk92 p{margin:4px 0 10px;font-size:10px;color:#687789;line-height:1.45}.bulk92-grid{display:grid;grid-template-columns:1fr .8fr .8fr .8fr auto;gap:8px;align-items:end}.bulk92 label{display:block;font-size:8px;font-weight:800;color:#687789;text-transform:uppercase;margin-bottom:4px}.bulk92 input,.bulk92 select{width:100%;box-sizing:border-box;border:1px solid var(--line);border-radius:6px;padding:8px;font-size:10px;background:#fff}.bulk92 button{border:0;border-radius:6px;padding:9px 12px;background:#2779b7;color:#fff;font-size:9px;font-weight:800;cursor:pointer;white-space:nowrap}.bulk92-status{margin-top:8px;font-size:10px;color:#687789}.bulk92-progress{margin-top:8px;height:7px;border-radius:999px;background:#edf1f4;overflow:hidden}.bulk92-progress>div{height:100%;width:0;background:#2779b7;transition:width .2s}.bulk92-note{margin-top:9px;padding:9px 11px;border-left:4px solid #4b82b2;background:#f3f8fc;border-radius:6px;font-size:10px;line-height:1.45}@media(max-width:950px){.bulk92-grid{grid-template-columns:1fr 1fr}}

/* V9.3 — Aktiekortets beslutsvy: enkel instrumentpanel, analys under huven */
.v93-decision{border:1px solid #dfe4ea;border-radius:14px;background:#fff;padding:22px;margin-bottom:16px;box-shadow:0 3px 12px rgba(16,24,40,.04)}
.v93-kicker{font-size:11px;font-weight:800;letter-spacing:.7px;color:#697386;margin-bottom:8px}
.v93-status{font-size:32px;font-weight:900;line-height:1.05;margin:3px 0 10px}
.v93-status.kop,.v93-status.behall{color:#087443}.v93-status.koplage{color:#19875f}.v93-status.bevaka,.v93-status.saljbevaka{color:#a66b00}.v93-status.avvakta,.v93-status.saljlage{color:#b54708}.v93-status.salj{color:#b42318}
.v93-lead{font-size:15px;line-height:1.55;color:#344054;max-width:850px}
.v93-grid{display:grid;grid-template-columns:1.15fr .7fr 1.15fr;gap:12px;margin-top:16px}
.v93-panel{background:#f7f8fa;border:1px solid #e4e7ec;border-radius:10px;padding:14px}
.v93-panel h4{margin:0 0 6px;font-size:11px;letter-spacing:.5px;color:#697386}
.v93-panel p{margin:0;font-size:13px;line-height:1.5;color:#344054}.v93-strength-value{font-size:24px;font-weight:900;line-height:1.1;color:#344054}.v93-strength-label{margin-top:4px;font-size:11px;font-weight:800;color:#697386}.v93-strength-note{margin-top:6px;font-size:9px;line-height:1.35;color:#7b8794}
.v93-details{margin-top:12px;border-top:1px solid #e4e7ec;padding-top:10px}
.v93-details summary{cursor:pointer;font-size:12px;font-weight:800;color:#475467;user-select:none}
.v93-details .buy-decision-body,.v93-details .buy-sections,.v93-details .signal-history-box{margin-top:12px}
@media(max-width:800px){.v93-grid{grid-template-columns:1fr}.v93-status{font-size:27px}}

/* V10.1 — riktig marknadsdata: källtest i Aktiekortet */
.live101{border:1px solid #cddff4;background:#f8fbff;border-radius:12px;padding:14px 16px;margin:0 0 14px}
.live101-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:10px}.live101-head h3{margin:0 0 3px;font-size:15px;color:#163a63}.live101-head p{margin:0;color:#5d6878;font-size:11px;line-height:1.45}.live101-badge{white-space:nowrap;border:1px solid #b8d2ee;background:#eaf4ff;color:#245d91;border-radius:999px;padding:5px 9px;font-size:10px;font-weight:800}.live101-controls{display:grid;grid-template-columns:minmax(220px,1.6fr) minmax(120px,.7fr) minmax(100px,.5fr) auto;gap:8px;align-items:end}.live101-controls label{display:block;font-size:9px;font-weight:800;color:#667085;margin-bottom:4px}.live101-controls input{width:100%;box-sizing:border-box;border:1px solid #d5dae2;background:#fff;border-radius:6px;padding:8px 9px;font-size:12px}.live101-controls button{border:0;border-radius:6px;background:#1467a8;color:#fff;font-weight:800;padding:9px 12px;cursor:pointer}.live101-status{margin-top:9px;font-size:11px;line-height:1.45;color:#667085}.live101-status.ok{color:#176b48}.live101-status.err{color:#a33a32}.live101-status.wait{color:#8a6418}.live101-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px;margin-top:10px}.live101-card{background:#fff;border:1px solid #e3e8ef;border-radius:8px;padding:9px}.live101-card .k{font-size:8px;font-weight:800;color:#758093;text-transform:uppercase}.live101-card .v{font-size:15px;font-weight:850;color:#17202a;margin-top:3px}.live101-card .s{font-size:9px;color:#7a8493;margin-top:2px}.live101-note{margin-top:9px;border-top:1px solid #dfe7f0;padding-top:8px;font-size:10px;color:#667085;line-height:1.45}.live101-missing{font-weight:700;color:#9a651b}@media(max-width:900px){.live101-controls{grid-template-columns:1fr 1fr}.live101-grid{grid-template-columns:repeat(2,1fr)}}

/* V11: gamla testmoduler döljs i Nasdaq-läge. Verifierade ersättningskort renderas separat. */
body.v11-nasdaq-detail .assistantbox,
body.v11-nasdaq-detail .marketcompare,
body.v11-nasdaq-detail .lowergrid > .detailcard:nth-child(2),
body.v11-nasdaq-detail .lowergrid + .lowergrid,
body.v11-nasdaq-detail .detailcard:has(h3:nth-child(1)){}
.v11-verified-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}
.v11-card{border:1px solid #dfe5ec;border-radius:10px;padding:16px;background:#fff}
.v11-card h3{margin:0 0 12px;font-size:16px}.v11-full{grid-column:1/-1}.v11-muted{color:#697386;font-size:12px;line-height:1.5}.v11-badge{display:inline-block;padding:4px 8px;border-radius:999px;background:#edf4f8;font-weight:800;font-size:11px}.v11-ok{background:#e8f7ef;color:#16734d}.v11-warn{background:#fff4d6;color:#8a5b00}
@media(max-width:800px){.v11-verified-grid{grid-template-columns:1fr}.v11-full{grid-column:auto}}

/* V11.2.16 — endast packning av verifierade boxar.
   Två oberoende kolumner gör att boxarna ligger direkt efter varandra utan tomma grid-rader. */
body.v11-nasdaq-detail .lowergrid > .v11-verified-grid{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:start}
body.v11-nasdaq-detail .v11-verified-col{display:flex;flex-direction:column;gap:14px;min-width:0}
body.v11-nasdaq-detail .v11-verified-col > .v11-card{width:auto;align-self:stretch}
body.v11-nasdaq-detail .v11-verified-col > .v11-full{grid-column:auto}
@media(max-width:800px){body.v11-nasdaq-detail .lowergrid > .v11-verified-grid{grid-template-columns:1fr}}

/* V11.4.2 — layout only.
   När Nasdaq-data är inläst packas den verifierade delen i två oberoende
   kolumner. Kortens innehåll, storlek och datalogik ändras inte. */
body.v11-nasdaq-detail .v113-data-layout{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
  align-items:start;
}
body.v11-nasdaq-detail .v113-data-col{
  display:flex;
  flex-direction:column;
  gap:14px;
  min-width:0;
}
body.v11-nasdaq-detail .v113-data-col > .detailcard,
body.v11-nasdaq-detail .v113-data-col > .v11-card,
body.v11-nasdaq-detail .v113-data-col > .live101{
  width:auto;
  margin:0;
  align-self:stretch;
  box-sizing:border-box;
}
@media(max-width:800px){
  body.v11-nasdaq-detail .v113-data-layout{grid-template-columns:1fr}
}


/* V11.2.16 — endast de tre äldre informationsboxarna görs kompaktare.
   Ingen annan layout eller datalogik påverkas. */
body.v11-nasdaq-detail .detailcard.legacy-compact-box{padding:12px 14px}
body.v11-nasdaq-detail .detailcard.legacy-compact-box h3{margin:0 0 6px;font-size:15px}
body.v11-nasdaq-detail .detailcard.legacy-compact-box .metricrow{padding:6px 0}
body.v11-nasdaq-detail .detailcard.legacy-compact-box [style*="padding:7px 0"]{padding:4px 0 !important}
body.v11-nasdaq-detail .detailcard.legacy-compact-box [style*="padding-top:9px"]{padding-top:6px !important}
body.v11-nasdaq-detail .detailcard.legacy-compact-box [style*="margin-top:12px"]{margin-top:8px !important}
body.v11-nasdaq-detail .detailcard.legacy-compact-box [style*="margin-top:10px"]{margin-top:6px !important}
body.v11-nasdaq-detail .detailcard.legacy-compact-box [style*="margin-bottom:7px"]{margin-bottom:5px !important}

.period-right-stack{display:flex;flex-direction:column;gap:16px;align-self:start;min-width:0}
.period-right-stack>.detailcard{width:auto;align-self:stretch}
@media(max-width:760px){.period-right-stack{gap:16px}}

/* V11.8.2 Scanner status only — confirmations remain on stock card */
.scanner-confirm-badge{display:inline-flex;align-items:center;gap:4px;margin-left:6px;padding:2px 7px;border:1px solid #d8e1ea;border-radius:999px;background:#f7f9fb;font-size:10px;font-weight:700;white-space:nowrap;color:#536273}
.scanner-confirm-badge strong{color:#1f3347}
.scanner-assistant-wrap{display:flex;align-items:center;justify-content:flex-end;gap:4px;flex-wrap:wrap}

/* V11.9.1 – Översikt */
.positions-summary{display:grid;grid-template-columns:repeat(5,minmax(140px,1fr));gap:10px;padding:16px 18px;border-bottom:1px solid var(--line)}
.positions-summary .ps{border:1px solid var(--line);border-radius:10px;padding:12px;background:#fff}.positions-summary .k{font-size:10px;text-transform:uppercase;font-weight:800;color:#697386}.positions-summary .v{font-size:20px;font-weight:850;color:#17202a;margin-top:4px}.positions-summary .v.pos{color:#087443}.positions-summary .v.neg{color:#c0392b}
.positions-empty{padding:34px 20px;text-align:center;color:#697386}.positions-table td,.positions-table th{white-space:nowrap}.positions-table tr{cursor:pointer}.positions-table .pos{color:#087443;font-weight:800}.positions-table .neg{color:#c0392b;font-weight:800}.positions-help{padding:12px 18px;border-top:1px solid var(--line);font-size:11px;color:#697386;background:#fafbfd}
@media(max-width:1000px){.positions-summary{grid-template-columns:repeat(2,1fr)}}

/* V11.10.3 – Historik + CSV-export fix */
.tradehist-filters{display:flex;gap:10px;align-items:end;flex-wrap:wrap;padding:14px 18px;border-bottom:1px solid var(--line);background:#fafbfd}
.tradehist-filter{display:flex;flex-direction:column;gap:5px}.tradehist-filter label{font-size:9px;text-transform:uppercase;font-weight:800;color:#697386}.tradehist-filter select,.tradehist-filter input{border:1px solid var(--line);border-radius:7px;padding:7px 9px;background:#fff;color:#17202a;font-size:11px}
.tradehist-summary{display:grid;grid-template-columns:repeat(6,minmax(120px,1fr));gap:10px;padding:16px 18px;border-bottom:1px solid var(--line)}
.tradehist-summary .hs{border:1px solid var(--line);border-radius:10px;padding:11px;background:#fff}.tradehist-summary .k{font-size:9px;text-transform:uppercase;font-weight:800;color:#697386}.tradehist-summary .v{font-size:18px;font-weight:850;margin-top:4px;color:#17202a}.tradehist-summary .pos{color:#087443}.tradehist-summary .neg{color:#c0392b}
.tradehist-table td,.tradehist-table th{white-space:nowrap}.tradehist-table .pos{color:#087443;font-weight:800}.tradehist-table .neg{color:#c0392b;font-weight:800}.tradehist-empty{padding:34px 20px;text-align:center;color:#697386}.close-position-btn{background:#fff;border:1px solid #d9a3a0!important;color:#a93226!important}
.tradehist-export{margin-left:auto;border:1px solid #a8b8c8;background:#fff;color:#17324d;border-radius:8px;padding:8px 12px;font-size:11px;font-weight:800;cursor:pointer}.tradehist-export:hover{background:#f2f6fa}.tradehist-clearall{border:1px solid #d9a3a0;background:#fff;color:#a93226;border-radius:8px;padding:8px 12px;font-size:11px;font-weight:800;cursor:pointer}.tradehist-clearall:hover{background:#fff5f5}.hist-info{display:inline-flex;align-items:center;justify-content:center;width:15px;height:15px;border:1px solid #94a3b8;border-radius:50%;font-size:10px;font-weight:900;color:#64748b;cursor:help;margin-left:4px;vertical-align:1px}.hist-delete{border:0;background:transparent;cursor:pointer;font-size:16px;line-height:1;padding:6px;border-radius:6px}.hist-delete:hover{background:#fff1f2}
@media(max-width:1000px){.tradehist-summary{grid-template-columns:repeat(3,1fr)}}@media(max-width:650px){.tradehist-summary{grid-template-columns:repeat(2,1fr)}}

/* V11.10.14 – Scanner-rubrikernas informationsrutor hålls inom viewporten */
.scanner-head-tip .info-box{position:fixed;left:auto;top:auto;right:auto;max-width:min(380px,calc(100vw - 24px));width:380px;z-index:9999}
@media(max-width:700px){.scanner-head-tip .info-box{width:min(320px,calc(100vw - 24px));left:auto;right:auto;top:auto}}

/* V11.10.19 – Historikens informationsrutor använder samma mörka tooltip som övriga gränssnittet */
.hist-tip{margin-left:4px}
.hist-tip .hist-info{display:inline-flex;vertical-align:middle;margin-left:0}
.hist-tip .info-box{left:22px;right:auto;top:-8px;width:300px;max-width:min(300px,calc(100vw - 24px));text-transform:none;letter-spacing:normal}
.hist-tip .info-box b{color:#fff}


/* V11.10.38 – Supabase-inloggning för privat Lyzeo-miljö */
body.auth-pending > header, body.auth-pending > main,
body.auth-locked > header, body.auth-locked > main{display:none!important}
#lyzeoAuthGate{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:28px;background:#f5f6f8}
#lyzeoAuthGate[hidden]{display:none!important}
.lyzeo-login-card{width:min(420px,100%);background:#fff;border:1px solid #e4e7ec;border-radius:14px;padding:30px;box-shadow:0 10px 30px rgba(16,24,40,.08)}
.lyzeo-login-brand{font-size:26px;font-weight:800;margin:0 0 5px;color:#17202a}.lyzeo-login-sub{color:#697386;margin:0 0 24px}
.lyzeo-login-card label{display:block;font-size:12px;font-weight:700;margin:14px 0 6px;color:#344054}
.lyzeo-login-card input,.lyzeo-login-card select{width:100%;border:1px solid #cfd5df;border-radius:8px;padding:11px 12px;font:inherit;outline:none}
.lyzeo-login-card input:focus,.lyzeo-login-card select:focus{border-color:#2459a9;box-shadow:0 0 0 3px rgba(36,89,169,.10)}
.lyzeo-login-card select{border:1px solid #cfd5df;border-radius:8px;padding:11px 12px;font:inherit;background:#fff;outline:none}
.lyzeo-login-card button{width:100%;margin-top:18px;border:0;border-radius:8px;padding:11px 14px;background:#2459a9;color:#fff;font-weight:800;cursor:pointer}
.lyzeo-login-card button:disabled{opacity:.6;cursor:wait}.lyzeo-login-error{min-height:20px;margin-top:12px;color:#c43d3d;font-size:12px}
.lyzeo-login-note{margin-top:16px;color:#697386;font-size:11px;line-height:1.5}
.lyzeo-login-link{display:block;margin-top:12px;text-align:center;color:#2459a9;font-size:13px;font-weight:700;cursor:pointer;text-decoration:none}
.lyzeo-login-link:hover{text-decoration:underline}
.lyzeo-request-actions{display:flex;gap:10px;margin-top:18px}.lyzeo-request-actions button{margin-top:0}.lyzeo-request-actions .secondary{background:#eef2f7;color:#344054}
.lyzeo-login-success{min-height:20px;margin-top:12px;color:#137333;font-size:12px;line-height:1.5}
.lyzeo-admin-table{width:100%;border-collapse:collapse;margin-top:14px}.lyzeo-admin-table th,.lyzeo-admin-table td{padding:11px 12px;border-bottom:1px solid var(--line);text-align:left}.lyzeo-admin-table th{font-size:12px;color:var(--muted);background:#fafbfc}
.lyzeo-admin-actions{display:flex;gap:8px;flex-wrap:wrap}.lyzeo-admin-actions button{border:1px solid #cfd5df;background:#fff;border-radius:7px;padding:7px 10px;font-weight:700;cursor:pointer}.lyzeo-admin-actions button.reject{color:#b42318}
.lyzeo-status-pill{display:inline-block;padding:4px 8px;border-radius:999px;background:#fff4cc;font-size:11px;font-weight:800}
.lyzeo-profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.lyzeo-profile-grid label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:700;color:#344054}.lyzeo-profile-grid .wide{grid-column:1/-1}.lyzeo-profile-grid input,.lyzeo-profile-grid select{border:1px solid #cfd5df;border-radius:8px;padding:10px 11px;font:inherit;background:#fff}.lyzeo-profile-grid input:disabled{background:#f5f6f8;color:#697386}@media(max-width:650px){.lyzeo-profile-grid{grid-template-columns:1fr}.lyzeo-profile-grid .wide{grid-column:auto}}
#lyzeoLogout{border:1px solid #cfd5df;background:#fff;border-radius:8px;padding:7px 11px;font-weight:700;color:#344054;cursor:pointer;margin-left:10px}
.top-right{display:flex;align-items:center;gap:8px}


/* LYZEO public startsida + modal login — public hero */
#lyzeoLanding{position:fixed;inset:0;min-height:100vh;background:#f7f9fc;color:#0f172a;overflow:hidden;z-index:99990}
#lyzeoLanding[hidden]{display:none!important}
.lyz-public-hero{position:absolute;inset:0;background-image:url("../assets/hero.png");background-size:cover;background-position:center top;background-repeat:no-repeat}
/* Mask the controls that belong to the commercial mockup. The public friend-access page only keeps Logga in. */
.lyz-mask{position:absolute;z-index:2;pointer-events:none;-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);background:rgba(247,250,253,.46)}
.lyz-mask-nav{left:27.5%;top:1.7%;width:27%;height:8.5%;border-radius:18px}
.lyz-mask-actions{right:2.5%;top:1.4%;width:23.5%;height:9%;border-radius:18px}
.lyz-mask-cta{left:3.5%;top:57.2%;width:33.5%;height:10.8%;border-radius:22px;background:rgba(244,247,249,.34)}
.lyz-land-login{position:absolute;z-index:4;right:3.7%;top:2.45%;width:9.5%;min-width:118px;height:5.4%;min-height:48px;border:0;border-radius:12px;background:transparent;color:transparent;font-size:0;box-shadow:none;cursor:pointer}
.lyz-land-login:hover{background:rgba(255,255,255,.06)}
body.auth-pending > #lyzeoLanding,body.auth-landing > #lyzeoLanding,body.auth-locked > #lyzeoLanding{display:block}
body:not(.auth-pending):not(.auth-landing):not(.auth-locked) > #lyzeoLanding{display:none}
#lyzeoAuthGate{position:fixed;inset:0;z-index:100000;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:28px;background:rgba(15,23,42,.10);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.lyzeo-login-card{position:relative;box-shadow:0 24px 70px rgba(15,23,42,.25)}
.lyz-login-close{position:absolute;right:16px;top:14px;border:0!important;background:transparent!important;color:#64748b!important;width:34px!important;height:34px;padding:0!important;margin:0!important;font-size:24px!important;font-weight:400!important;cursor:pointer!important}
@media(max-width:900px){.lyz-public-hero{background-position:56% center}.lyz-mask-nav{display:none}.lyz-mask-actions{right:0;top:0;width:44%;height:11%}.lyz-land-login{right:4%;top:2.2%;min-width:118px;height:46px;font-size:14px}.lyz-mask-cta{left:0;top:55%;width:45%;height:13%}}
@media(max-width:650px){.lyz-public-hero{background-size:auto 100%;background-position:61% center}.lyz-mask-actions{width:52%}.lyz-mask-cta{display:none}}


/* LYZEO PUBLIC LANDING - clean hero */
#lyzeoLanding{position:fixed;inset:0;z-index:99990;background:#fff;overflow:hidden}
.lyz-public-hero{position:absolute;inset:0;background-image:url("../assets/hero.png");background-size:100% 100%;background-position:center top;background-repeat:no-repeat}
.lyz-mask{display:none!important}
.lyz-land-login{position:absolute;z-index:5;right:3.35%;top:2.4%;width:10.2%;height:6.2%;min-width:0;border:0!important;border-radius:12px;background:transparent!important;color:transparent!important;box-shadow:none!important;cursor:pointer}
body.auth-pending > #lyzeoLanding,body.auth-landing > #lyzeoLanding,body.auth-locked > #lyzeoLanding{display:block}
body:not(.auth-pending):not(.auth-landing):not(.auth-locked) > #lyzeoLanding{display:none}
#lyzeoAuthGate{position:fixed;inset:0;z-index:100000;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:28px;background:rgba(15,23,42,.10);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.lyzeo-login-card{position:relative;box-shadow:0 24px 70px rgba(15,23,42,.25)}
.lyz-login-close{position:absolute;right:16px;top:14px;border:0!important;background:transparent!important;color:#64748b!important;width:34px!important;height:34px;padding:0!important;margin:0!important;font-size:24px!important;font-weight:400!important;cursor:pointer!important}
/* Mobil startsida: desktop-heron lämnas helt orörd. Under 700 px används en egen
   responsiv komposition med samma inbäddade hero som visuell produktbild. */
.lyz-mobile-content{display:none}
@media(max-width:700px){
  #lyzeoLanding{background:linear-gradient(180deg,#eef6ff 0%,#f8fbff 56%,#fff 100%)}
  .lyz-public-hero{display:block;inset:auto 0 0 0;width:100%;height:42%;background-size:auto 100%;background-position:70% center;background-repeat:no-repeat}
  .lyz-mobile-content{display:flex;position:absolute;z-index:2;inset:0;flex-direction:column;padding:22px 20px 18px;overflow:hidden}
  .lyz-mobile-top{display:flex;align-items:center;justify-content:space-between;padding-right:112px;min-height:46px}
  .lyz-mobile-brand{display:flex;align-items:flex-end;gap:9px;font-weight:900;font-size:25px;letter-spacing:.02em;color:#071a36}
  .lyz-mobile-bars{display:flex;align-items:flex-end;gap:3px;height:28px}
  .lyz-mobile-bars i{display:block;width:6px;border-radius:2px 2px 0 0;background:#1682ff}
  .lyz-mobile-bars i:nth-child(1){height:11px}.lyz-mobile-bars i:nth-child(2){height:19px}.lyz-mobile-bars i:nth-child(3){height:28px}
  .lyz-mobile-copy{padding-top:38px;max-width:360px}
  .lyz-mobile-kicker{margin:0 0 12px;font-size:10px;font-weight:800;letter-spacing:.22em;color:#667085}
  .lyz-mobile-copy h1{margin:0;font-size:clamp(38px,11vw,52px);line-height:.96;letter-spacing:-.055em;color:#071a36}
  .lyz-mobile-copy h1 span{display:block;color:#1677f2;margin-top:5px}
  .lyz-mobile-copy p{margin:18px 0 0;max-width:335px;font-size:15px;line-height:1.48;color:#50627a}
  .lyz-mobile-device{flex:1;min-height:250px;margin:22px -20px -18px;position:relative;pointer-events:none}
  .lyz-mobile-device:after{content:"";position:absolute;z-index:3;left:0;right:0;top:0;height:64px;background:linear-gradient(180deg,#f8fbff 0%,rgba(248,251,255,0) 100%)}
  .lyz-land-login{z-index:5;right:20px;top:22px;width:96px;height:44px;min-width:96px;border:1px solid rgba(15,23,42,.12)!important;border-radius:10px;background:#fff!important;color:#0f172a!important;box-shadow:0 6px 18px rgba(15,23,42,.08)!important;font-size:14px;font-weight:800}
  #lyzeoAuthGate{padding:16px}
  .lyzeo-login-card{width:min(360px,100%);padding:24px 20px;border-radius:14px}
}
@media(max-width:380px){
  .lyz-mobile-content{padding-left:16px;padding-right:16px}
  .lyz-mobile-copy{padding-top:28px}
  .lyz-mobile-copy h1{font-size:36px}
  .lyz-mobile-copy p{font-size:14px}
  .lyz-land-login{right:16px;top:20px;width:90px;min-width:90px;height:42px}
  .lyz-mobile-device{margin-left:-16px;margin-right:-16px}
}

/* Landing page: exakt en viewport, ingen meningslös sidscroll. */
html:has(body.auth-pending),html:has(body.auth-landing),html:has(body.auth-locked),
body.auth-pending,body.auth-landing,body.auth-locked{
  width:100%;height:100%;margin:0;overflow:hidden!important;overscroll-behavior:none;
}
body.auth-pending #lyzeoLanding,body.auth-landing #lyzeoLanding,body.auth-locked #lyzeoLanding{
  width:100vw;height:100vh;height:100dvh;min-height:0;overflow:hidden;
}
body.auth-pending .lyz-public-hero,body.auth-landing .lyz-public-hero,body.auth-locked .lyz-public-hero{
  width:100%;height:100%;
}
#lyzeoAuthGate{height:100vh;height:100dvh;min-height:0;box-sizing:border-box;overflow:auto;}


/* Lyzeo stock detail: allow long verified values and timestamps to wrap inside cards. */
.v11-nasdaq-detail .detailgrid > *,
.v11-nasdaq-detail .detailcard,
.v11-nasdaq-detail .keylevels-grid,
.v11-nasdaq-detail .keylevel { min-width:0; max-width:100%; box-sizing:border-box; }
.v11-nasdaq-detail .keylevels-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.v11-nasdaq-detail .keylevel b {
  display:block;
  white-space:normal;
  overflow-wrap:anywhere;
  word-break:normal;
  line-height:1.45;
}
.v11-nasdaq-detail .detailcard p,
.v11-nasdaq-detail .detailcard .note,
.v11-nasdaq-detail .holding-panel,
.v11-nasdaq-detail .v93-card { overflow-wrap:anywhere; }
@media(max-width:760px) {
  .v11-nasdaq-detail .keylevels-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:440px) {
  .v11-nasdaq-detail .keylevels-grid { grid-template-columns:minmax(0,1fr); }
}


/* Keep the actionable assistant visible while scrolling the wide scanner table. */
#scanner .tablewrap { overflow-x:auto; }
#scanner table th:last-child,#scanner table td:last-child {
  position:sticky;right:0;z-index:2;min-width:118px;
  background:#fff;box-shadow:-3px 0 6px rgba(23,32,42,.09);
}
#scanner table thead th:last-child { z-index:3;background:#f5f7fa; }
#scanner tbody tr.has-holding td:last-child { background:#eaf5ff; }
#scanner tbody tr:hover td:last-child { background:#eef4fc; }

/* Keep the two assistant summaries readable and aligned, without a large blank gap. */
#scanner .buy-scan-summary{display:flex;align-items:flex-start;justify-content:flex-start;gap:12px 22px;padding:14px 18px}
#scanner .buy-scan-summary .summary-group{display:flex;flex:0 1 auto;align-items:center;justify-content:flex-start;gap:7px;flex-wrap:wrap;min-width:0}
#scanner .buy-scan-summary .summary-group.holding-summary{margin-left:0;padding-left:20px;border-left:1px solid var(--line)}
#scanner .buy-scan-summary .summary-title{white-space:nowrap}
#scanner .buy-scan-summary .summary-chip{white-space:nowrap}
#scanner .tablewrap table th:last-child,#scanner .tablewrap table td:last-child{min-width:146px;box-sizing:border-box;text-align:center}
#scanner .tablewrap table th:last-child{white-space:nowrap}
@media(max-width:1100px){#scanner .buy-scan-summary .summary-group.holding-summary{padding-left:0;border-left:0;flex-basis:100%}}

/* Scanner repair: sticky Assistant covered the entire Riktning column.
   Keep both as ordinary independent columns in the horizontally scrollable table. */
#scanner .tablewrap table th:last-child,
#scanner .tablewrap table td:last-child{
  position:static;right:auto;z-index:auto;box-shadow:none;
  min-width:146px;width:auto;
}
#scanner .tablewrap table th:nth-last-child(2),
#scanner .tablewrap table td:nth-last-child(2){
  min-width:158px;width:auto;text-align:center;
}
#scanner .tablewrap table th:nth-last-child(2) .scanner-header-category,
#scanner .tablewrap table th:last-child .scanner-header-category{
  display:block;max-width:100%;margin-top:5px;
}
#scanner .buy-scan-summary{display:flex;flex-direction:column;align-items:stretch;gap:9px}
#scanner .buy-scan-summary .summary-group,
#scanner .buy-scan-summary .summary-group.holding-summary{
  margin:0;padding:0;border:0;flex-basis:auto;width:100%;
}
#scanner .buy-scan-summary .summary-group.holding-summary{
  border-top:1px solid var(--line);padding-top:9px;
}

/* Pin BOTH status columns as a pair. A single pinned assistant obscured Riktning;
   neither pinned obscures the other when right offsets match column widths. */
#scanner .tablewrap{overflow-x:auto!important;position:relative}
#scanner .tablewrap table{min-width:1320px}
#scanner .tablewrap table th:last-child,
#scanner .tablewrap table td:last-child{
  position:sticky!important;right:0!important;z-index:3!important;
  width:144px!important;min-width:144px!important;max-width:144px!important;
  box-sizing:border-box!important;background:#fff!important;
  text-align:center;box-shadow:none!important;
}
#scanner .tablewrap table th:nth-last-child(2),
#scanner .tablewrap table td:nth-last-child(2){
  position:sticky!important;right:144px!important;z-index:3!important;
  width:156px!important;min-width:156px!important;max-width:156px!important;
  box-sizing:border-box!important;background:#fff!important;
  text-align:center;box-shadow:-4px 0 7px rgba(23,32,42,.10)!important;
}
#scanner .tablewrap table thead th:last-child,
#scanner .tablewrap table thead th:nth-last-child(2){
  z-index:5!important;background:#f5f7fa!important;
}
#scanner .tablewrap table tbody tr.has-holding td:last-child,
#scanner .tablewrap table tbody tr.has-holding td:nth-last-child(2){
  background:#eaf5ff!important;
}
#scanner .tablewrap table tbody tr:hover td:last-child,
#scanner .tablewrap table tbody tr:hover td:nth-last-child(2){
  background:#eef4fc!important;
}
#scanner .tablewrap table td:last-child .buy-scan,
#scanner .tablewrap table td:nth-last-child(2) .direction{
  max-width:100%;box-sizing:border-box;white-space:normal;line-height:1.25;
}
#scanner .tablewrap table th:last-child .scanner-header-category,
#scanner .tablewrap table th:nth-last-child(2) .scanner-header-category{
  width:100%;box-sizing:border-box;
}

/* Three independent, non-overlapping right-hand Scanner columns.
   Activity must not disappear beneath the pinned Direction and Assistant. */
#scanner .tablewrap table th:nth-last-child(3),
#scanner .tablewrap table td:nth-last-child(3){
 position:sticky!important;right:300px!important;z-index:3!important;
 width:124px!important;min-width:124px!important;max-width:124px!important;
 box-sizing:border-box!important;background:#fff!important;text-align:center!important;
 box-shadow:-4px 0 7px rgba(23,32,42,.10)!important;
}
#scanner .tablewrap table thead th:nth-last-child(3){
 z-index:5!important;background:#f5f7fa!important;
}
#scanner .tablewrap table tbody tr.has-holding td:nth-last-child(3){
 background:#eaf5ff!important;
}
#scanner .tablewrap table tbody tr:hover td:nth-last-child(3){
 background:#eef4fc!important;
}
#scanner .tablewrap table th:nth-last-child(3) .scanner-header-category{
 display:block;width:100%;max-width:100%;box-sizing:border-box;margin-top:5px;
}
#scanner .tablewrap table td:nth-last-child(3) .activity{
 max-width:100%;box-sizing:border-box;
}
