html [hidden]{display:none!important}
:root{font-family:Inter,system-ui,sans-serif;color:#e5e7eb;background:#0b1020}*{box-sizing:border-box}body{margin:0}.center{min-height:100vh;display:grid;place-items:center;padding:20px}.card,.hero{background:#121a2d;border:1px solid #25304a;border-radius:16px;padding:20px}.auth{width:min(420px,100%)}h1{letter-spacing:.08em;font-size:22px}label{display:grid;gap:6px;margin:12px 0;color:#aab4c8}input,select,button{font:inherit;border-radius:10px;border:1px solid #33415f;padding:11px;background:#0e1628;color:#fff}button{cursor:pointer;background:#2563eb;border-color:#2563eb}button.ghost,nav button{background:transparent;border-color:transparent}header{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:12px 24px;border-bottom:1px solid #25304a;flex-wrap:wrap;background:rgba(11,16,32,.97)}header select{margin-left:16px}.right{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.pill{padding:7px 10px;border-radius:999px;background:#182238}.green{color:#4ade80}.yellow{color:#facc15}.red{color:#f87171}.grey{color:#94a3b8}nav{padding:0 24px;border-bottom:1px solid #25304a;background:rgba(11,16,32,.97);display:flex;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin}nav button{flex:0 0 auto;white-space:nowrap}nav button.active{border-bottom:2px solid #60a5fa;border-radius:0}main{max-width:1100px;margin:auto;padding:24px}.hero h2{font-size:40px;margin:8px 0}.grid{display:grid;grid-template-columns:1.4fr 1fr;gap:18px;margin-top:18px}.muted,small{color:#94a3b8}.provider,.position{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid #25304a}.formgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.formgrid button{grid-column:1/-1}.rule{margin-top:18px;padding:14px;background:#0e1628;border-radius:10px}@media(max-width:700px){.grid,.formgrid{grid-template-columns:1fr}header{padding:14px}header select{margin:10px 0 0;width:100%}main{padding:14px}.hero h2{font-size:32px}}
.tablewrap{overflow-x:auto}table{width:100%;border-collapse:collapse;margin:8px 0 16px}th,td{text-align:left;padding:10px 8px;border-bottom:1px solid #263244;white-space:nowrap}.num{text-align:right}.quality{font-size:.78rem;font-weight:700;padding:3px 7px;border-radius:999px;background:#273244}.quality.fresh{background:#123b2c}.quality.delayed{background:#4a3b12}.quality.stale{background:#4a2020}.quality.no_data,.quality.unknown{background:#343b48}.fxbox{padding:12px 0}.fxbox small{margin-left:8px;opacity:.75}
.positive{color:#4ade80}.negative{color:#f87171}.position .metrics{text-align:right}.position .metrics small{display:block;margin-top:3px}.wide{grid-column:1/-1}.txgrid{grid-template-columns:1.5fr 1fr;margin-top:0;margin-bottom:18px}.danger{background:transparent;border-color:#7f1d1d;color:#fca5a5;padding:6px 9px}.statline{display:flex;justify-content:space-between;padding:9px 0;border-bottom:1px solid #25304a}@media(max-width:700px){.txgrid{grid-template-columns:1fr}}

textarea{width:100%;font:inherit;border-radius:10px;border:1px solid #33415f;padding:11px;background:#0e1628;color:#fff;resize:vertical;min-height:120px}code{color:#cbd5e1}.actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.sourcebadge{font-size:.75rem;padding:2px 6px;border-radius:7px;background:#273244;color:#cbd5e1}
.summarygrid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:16px 0}.kpi{background:#121a2d;border:1px solid #25304a;border-radius:14px;padding:16px;display:grid;gap:5px}.kpi>b{font-size:1.25rem}.hero-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.allocrow{padding:10px 0;border-bottom:1px solid #25304a}.allocrow>div:first-child{display:flex;justify-content:space-between;gap:12px}.allocbar{height:7px;background:#263244;border-radius:99px;overflow:hidden;margin:6px 0}.allocbar i{display:block;height:100%;background:#60a5fa;border-radius:99px}.allocrow small{display:block;text-align:right}hr{border:0;border-top:1px solid #25304a;margin:20px 0}@media(max-width:850px){.summarygrid{grid-template-columns:repeat(2,1fr)}}@media(max-width:520px){.summarygrid{grid-template-columns:1fr}}
.compactinput{width:110px;padding:8px}.checkcell{text-align:center}.checkcell input{width:auto;padding:0;transform:scale(1.15)}.ghostline{background:transparent;border-color:#33415f}.notice{padding:14px;border-radius:10px;margin:10px 0 16px}.notice.warn{background:#302811;border:1px solid #66551e}.recommendhero{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:12px 0}.recommendhero>div{background:#0e1628;border-radius:10px;padding:12px;display:grid;gap:4px}.historyrow{display:grid;grid-template-columns:220px 1fr;gap:14px;padding:12px 0;border-bottom:1px solid #25304a}button:disabled{opacity:.5;cursor:not-allowed}@media(max-width:800px){.recommendhero{grid-template-columns:repeat(2,1fr)}.historyrow{grid-template-columns:1fr}}@media(max-width:520px){.recommendhero{grid-template-columns:1fr}}

.cardtitle{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.cardtitle h3{margin-bottom:4px}.cardtitle p{margin-top:4px}.timinghero{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:14px 0}.timinghero>div{background:#0e1628;border-radius:10px;padding:12px;display:grid;gap:5px}.timingdays{display:flex;gap:8px;overflow-x:auto;padding:4px 0 14px}.daychip{min-width:112px;background:#0e1628;border:1px solid #25304a;border-radius:10px;padding:10px;display:grid;gap:3px}.daychip small{white-space:nowrap}.daychip.today{border-color:#60a5fa}.daychip.base{box-shadow:inset 0 -2px 0 #a78bfa}.daychip.weekend{opacity:.62}.daychip.passed{opacity:.48}@media(max-width:800px){.timinghero{grid-template-columns:repeat(2,1fr)}}@media(max-width:520px){.timinghero{grid-template-columns:1fr}}
.decisionhero{display:grid;grid-template-columns:1.3fr repeat(3,1fr);gap:10px;margin:14px 0}.decisionhero>div{background:#0e1628;border:1px solid #25304a;border-radius:12px;padding:14px;display:grid;gap:5px}.decisionhero .primary{border-color:#4f46e5}.decisionallocation{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:12px}.decisionallocation>div{background:#10182a;border-radius:10px;padding:10px}.decisionallocation small{display:block}.factorlist{display:grid;gap:4px;min-width:230px}.factor{font-size:.82rem;color:#cbd5e1}.factor .pts{font-weight:700}.factor .pos{color:#86efac}.factor .neg{color:#fca5a5}.scoreformula{font-size:.86rem;color:#94a3b8;margin-top:8px}.reinforcement-label{display:block;color:#94a3b8;font-size:.78rem;margin-top:3px}.decisionstate{display:inline-flex;align-items:center;width:max-content;border-radius:999px;padding:4px 9px;font-size:.82rem;background:#263244}.decisionstate.execute{background:#12351f;color:#bbf7d0}.decisionstate.wait{background:#332b0f;color:#fde68a}.decisionstate.data{background:#3a1e1e;color:#fecaca}@media(max-width:1050px){.decisionhero{grid-template-columns:repeat(2,1fr)}.decisionallocation{grid-template-columns:repeat(3,1fr)}}@media(max-width:650px){.decisionhero,.decisionallocation{grid-template-columns:1fr}}

/* V2.1 — timing sem scroll horizontal + ciclo de vida das recomendações */
.timingdays{display:grid;grid-template-columns:repeat(auto-fit,minmax(104px,1fr));gap:8px;overflow:visible;padding:4px 0 14px}
.daychip{min-width:0}
.timingassets{display:grid;gap:12px;margin-top:8px}
.timingasset{background:#0e1628;border:1px solid #25304a;border-radius:12px;padding:14px;display:grid;gap:12px}
.timingasset-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}
.timingasset-title{display:flex;align-items:center;gap:9px;flex-wrap:wrap;font-size:1.05rem}
.timingscore{text-align:right;display:grid;gap:2px}.timingscore b{font-size:1.15rem}
.timingmetrics{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}
.timingmetrics>div{background:#121a2d;border-radius:9px;padding:9px;display:grid;gap:3px;min-width:0}
.timingmetrics small{white-space:normal}.motorreading{border-top:1px solid #25304a;padding-top:10px}.motorreading>small{display:block;margin-bottom:7px;font-weight:700}.factorlist{min-width:0;display:grid;gap:6px}.factor{line-height:1.35;white-space:normal}
.recommendationitem{border:1px solid #25304a;background:#0e1628;border-radius:12px;padding:14px;margin:10px 0;display:grid;gap:9px}
.rec-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.rec-head>div:first-child{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.rec-head small{width:100%}
.recstate{display:inline-flex;padding:3px 8px;border-radius:999px;font-size:.78rem;font-weight:700}.recstate.proposed{background:#273244}.recstate.accepted{background:#15334b;color:#bfdbfe}.recstate.executed{background:#12351f;color:#bbf7d0}.recstate.skipped{background:#3a2525;color:#fecaca}.recstate.expired{background:#343b48;color:#cbd5e1}
.rec-actions{display:flex;gap:8px;flex-wrap:wrap}.rec-actions button{padding:7px 10px}.recaccept{background:#2563eb;border-color:#2563eb}.rec-summary{line-height:1.45}.rec-meta,.rec-event{font-size:.84rem;color:#94a3b8}.rec-event{padding-top:7px;border-top:1px solid #25304a}.rec-event span{color:#cbd5e1}
@media(max-width:900px){.timingmetrics{grid-template-columns:repeat(3,1fr)}}
@media(max-width:600px){.timingmetrics{grid-template-columns:repeat(2,1fr)}.timingasset-head,.rec-head{display:grid}.timingscore{text-align:left}.rec-actions{margin-top:4px}}

/* V2.2 — reconciliação recomendação ↔ execução real */
.reconcilebox{border:1px solid #2f3c57;background:#10182a;border-radius:10px;padding:12px;display:grid;gap:10px}.reconcilebox.empty{grid-template-columns:auto 1fr;align-items:baseline}.reconcilebox.empty small{grid-column:1/-1}.reconcilekpis{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.reconcilekpis>div{background:#121a2d;border-radius:9px;padding:9px;display:grid;gap:3px}.compacttable table{font-size:.86rem;margin:0}.compacttable th,.compacttable td{padding:7px 6px}.recontxs{display:grid;gap:5px}.recontx{display:flex;justify-content:space-between;gap:10px;padding:6px 0;border-top:1px solid #25304a;font-size:.84rem}.unlink{background:transparent;border:0;color:#fca5a5;padding:2px 5px;text-decoration:underline}.rec-actions button:disabled{opacity:.45}.rec-actions button[title]{cursor:not-allowed}@media(max-width:750px){.reconcilekpis{grid-template-columns:repeat(2,1fr)}.recontx{display:grid}.reconcilebox.empty{grid-template-columns:1fr}}

/* V2.3 — Execution Planner */
.executionbox{border:1px solid #384766;background:#0d1729;border-radius:12px;padding:14px;display:grid;gap:12px}.executiontitle{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.executiontitle>div{display:grid;gap:4px}.executionkpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.executionkpis>div,.executionmetrics>div{background:#121a2d;border-radius:9px;padding:9px;display:grid;gap:3px}.executionassets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.executionasset{border:1px solid #25304a;background:#10182a;border-radius:10px;padding:11px;display:grid;gap:8px}.executionasset-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.executionmetrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.executionwarnings{padding:9px;border-radius:9px;background:#302811;border:1px solid #66551e;color:#fde68a}.executionnote{font-size:.86rem;color:#94a3b8;border-top:1px solid #25304a;padding-top:9px}@media(max-width:800px){.executionkpis,.executionassets{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.executionkpis,.executionassets,.executionmetrics{grid-template-columns:1fr}.executiontitle{display:grid}}

/* V2.4 — Execution Readiness */
.executionactions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;border-top:1px solid #25304a;padding-top:10px}
.brokerprice{margin:0;display:grid;grid-template-columns:1fr minmax(120px,180px);align-items:center;gap:10px;color:#cbd5e1}.brokerprice input{margin:0;padding:8px}
.executionhistory{border-top:1px solid #25304a;padding-top:8px}.executionhistory summary{cursor:pointer;color:#cbd5e1}.executionhistory div{font-size:.8rem;color:#94a3b8;padding:3px 0}
.quality.broker{background:#193452;color:#bfdbfe}
@media(max-width:560px){.brokerprice{grid-template-columns:1fr}.executionactions{display:grid}}


/* V2.5 — Broker Price Confirmation + Final Execution Sheet */
.quality.review{background:#4a1d30;color:#fecdd3;border:1px solid #9f1239}
.assetbadges{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.readinesssummary{display:grid;grid-template-columns:1.3fr .65fr .65fr 1.4fr;gap:8px}.readinesssummary>div{background:#121a2d;border-radius:9px;padding:10px;display:grid;gap:4px}.readinesssummary b{line-height:1.3}.executionwarnings{display:grid;gap:5px}.executionwarnings>div{padding-top:4px;border-top:1px solid rgba(253,230,138,.18)}
.finalsheet{border:1px solid #3b4b69;background:#0a1324;border-radius:12px;padding:12px;display:grid;gap:8px}.finalsheet-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.finalsheet-head>div{display:grid;gap:3px}.finalrow{display:grid;grid-template-columns:1fr 1.2fr 1.2fr auto;gap:10px;align-items:center;padding:9px 0;border-top:1px solid #25304a}.finalrow>div{display:grid;gap:2px}.finalsheet-total{display:grid;grid-template-columns:1fr auto 1fr auto;gap:8px;align-items:center;border-top:1px solid #3b4b69;padding-top:9px}.finalsheet-total span:nth-of-type(2){margin-left:16px}
@media(max-width:900px){.readinesssummary{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.readinesssummary{grid-template-columns:1fr}.finalsheet{padding:10px}.finalsheet-head{display:grid}.finalrow{grid-template-columns:1fr 1fr}.finalrow>span{justify-self:start}.finalsheet-total{grid-template-columns:1fr auto}.finalsheet-total span:nth-of-type(2){margin-left:0}.assetbadges{justify-content:flex-start}}


/* V2.6 — Portfolio Analytics Engine */
.analyticskpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:12px}.analyticskpis>div{background:#0e1628;border:1px solid #25304a;border-radius:10px;padding:12px;display:grid;gap:4px}.analysisnote{background:#10182a;border:1px solid #2f3c57;border-radius:10px;padding:12px;line-height:1.45}.analyticsgrid{align-items:start}.corrpair{display:flex;justify-content:space-between;gap:14px;border-bottom:1px solid #25304a;padding:9px 0}.corrmatrix{min-width:560px}.corrmatrix th,.corrmatrix td{text-align:center}.corrmatrix tbody th{text-align:left}.corrmatrix td{font-variant-numeric:tabular-nums}.corrmatrix .corr-high{background:rgba(239,68,68,.14)}.corrmatrix .corr-mid{background:rgba(245,158,11,.11)}.corrmatrix .corr-low{background:rgba(59,130,246,.08)}.corrmatrix .corr-neg{background:rgba(34,197,94,.10)}
@media(max-width:900px){.analyticskpis{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.analyticskpis{grid-template-columns:1fr}}

/* V2.7 — ETF Look-through */
.exposurelist{display:grid;gap:9px}.exposurerow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 12px;align-items:center}.exposurerow>div:first-child{display:grid;gap:2px}.exposurerow small{color:#94a3b8;font-size:.75rem}.exposurebar{grid-column:1/-1;height:5px;background:#172036;border-radius:999px;overflow:hidden}.exposurebar i{display:block;height:100%;background:linear-gradient(90deg,#4f46e5,#60a5fa);border-radius:999px}.corrpair span{display:grid;gap:2px}.corrpair small{color:#94a3b8}.quality.full{background:#12351f;color:#bbf7d0}.quality.partial{background:#332b0f;color:#fde68a}

/* V2.7.1 provider diagnostics */
.provider-error{display:block;max-width:360px;margin-top:6px;color:var(--muted,#9aa4c7);font-size:.74rem;line-height:1.25;white-space:normal;overflow-wrap:anywhere}


/* V2.8 — Capital Efficiency Engine */
.capitalcontrol{display:flex;align-items:end;gap:8px;flex-wrap:wrap}.capitalcontrol label{margin:0;min-width:150px}.capitalcontrol input{margin-top:5px}.efficiencytable td{font-variant-numeric:tabular-nums}.efficiencytable .positive{color:#86efac}.efficiencytable .negative{color:#fca5a5}@media(max-width:760px){.capitalcontrol{width:100%;display:grid;grid-template-columns:1fr auto}.efficiencytable{min-width:900px}}


/* V2.9 — Tax Engine Portugal */
.taxdate{display:flex;gap:8px;align-items:end;flex-wrap:wrap}.taxdate label{margin:0}.taxdate input{margin-top:5px}.taxaggregation{margin-top:12px;border:1px solid #2f3c57;background:#10182a;border-radius:10px;padding:12px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.taxaggregation>div{display:grid;gap:4px}.taxaggregation p{grid-column:1/-1;margin:0;color:#aab5d6}.taxlottable{min-width:980px}.taxgrid{align-items:start}.taxdividend,.taxrule{display:grid;gap:4px;padding:9px 0;border-top:1px solid #25304a}.taxdividend small,.taxrule span{color:#94a3b8;line-height:1.4}.taxlimits{margin:0;padding-left:20px;display:grid;gap:8px;color:#cbd5e1}.taxPositionRows .positive,.taxlottable .positive{color:#86efac}.taxPositionRows .negative,.taxlottable .negative{color:#fca5a5}@media(max-width:800px){.taxaggregation{grid-template-columns:1fr}.taxdate{width:100%}}

/* V3.0 — Backtesting Engine */
.backtestform{margin-top:12px}.backtestgrid{align-items:start}.backtestchart{margin-top:14px;border:1px solid #25304a;background:#0e1628;border-radius:12px;padding:12px;overflow:hidden}.backtestchart svg{width:100%;height:260px;display:block}.backtestlegend{display:flex;gap:16px;flex-wrap:wrap;margin-top:8px;color:#cbd5e1;font-size:.84rem}.backtestlegend i{display:inline-block;width:18px;height:3px;border-radius:2px;margin-right:6px;vertical-align:middle}.backtesttable td,.backtestmonthly td{font-variant-numeric:tabular-nums}.backtestmonthly{min-width:900px}.btmethod{display:grid;gap:10px}.btmethod>div{padding:9px 0;border-top:1px solid #25304a}.btmethod b{display:block;margin-bottom:3px}.btwarnings{margin:0;padding-left:20px;display:grid;gap:9px;color:#cbd5e1}.btmeta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:12px 0}.btmeta>div{background:#0e1628;border-radius:9px;padding:10px;display:grid;gap:3px}@media(max-width:850px){.btmeta{grid-template-columns:repeat(2,1fr)}}@media(max-width:520px){.btmeta{grid-template-columns:1fr}.backtestchart svg{height:210px}}


/* V3.1 — Walk-forward Validation */
.walkforwardcard{border-color:#3d4d73}.wfprofiles{margin-top:14px;border-top:1px solid #25304a;padding-top:12px}.wfprofiles h4{margin:0 0 9px}.wfprofilegrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.wfprofilegrid>div{background:#0e1628;border:1px solid #25304a;border-radius:10px;padding:10px;display:grid;grid-template-columns:1fr auto;gap:3px 10px;align-items:center}.wfprofilegrid span{display:grid;gap:2px}.wfprofilegrid>div>small{grid-column:2}.wftable{min-width:1180px}.wftable td{font-variant-numeric:tabular-nums}.wftable small{color:#94a3b8}@media(max-width:800px){.wfprofilegrid{grid-template-columns:1fr}}


/* V3.2 — Projections Engine */
.projectionform{margin-top:12px}.projectiongrid{align-items:start}.projectionchart{margin-top:14px;border:1px solid #25304a;background:#0e1628;border-radius:12px;padding:12px;overflow:hidden}.projectionchart svg{width:100%;height:270px;display:block}.projectiontable td,#projectionMilestoneRows td,#projectionComparisonRows td{font-variant-numeric:tabular-nums}@media(max-width:700px){.projectionchart svg{height:220px}.projectiontable{min-width:820px}}


/* V3.3 — AI Analyst */
.aihero{border-color:#405382}.aigrid{align-items:start}.aiform{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:end}.aiform label{margin:0}.aiform .wide{grid-column:1/-1}.aiform textarea{width:100%;resize:vertical}.aitoggle{display:flex!important;gap:8px;align-items:center;color:#cbd5e1}.aitoggle input{width:auto;margin:0}.airules{display:grid;gap:10px}.airules>div{border-top:1px solid #25304a;padding:10px 0;display:grid;gap:3px}.airules span{color:#94a3b8;line-height:1.45}.airesponse{white-space:pre-wrap;line-height:1.62;background:#0b1425;border:1px solid #2f3c57;border-radius:10px;padding:16px;color:#dbe6ff}.aihistory{display:grid;gap:9px}.aihistoryitem{border-top:1px solid #25304a;padding:10px 0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 12px}.aihistoryitem span{display:grid;gap:2px}.aihistoryitem small{color:#94a3b8}.aihistoryitem button{align-self:center}.aistatus{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}.aistatus>div{background:#0e1628;border-radius:9px;padding:10px;display:grid;gap:3px}.aierror{margin-top:10px;background:#3b1e24;border:1px solid #7f1d1d;color:#fecaca;border-radius:9px;padding:10px}@media(max-width:760px){.aiform{grid-template-columns:1fr}.aistatus{grid-template-columns:1fr}.aihistoryitem{grid-template-columns:1fr}}


/* V3.4 — Revolut Importer */
.revolutimport{border-color:#465b8b}.revolutcontrols{display:flex;gap:10px;align-items:end;flex-wrap:wrap;margin-top:12px}.revolutcontrols label{margin:0;min-width:280px;flex:1}.revolutcontrols input[type=file]{padding:8px;background:#0d1527}.importsummary{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:8px;margin:12px 0}.importsummary>div{background:#0e1628;border:1px solid #25304a;border-radius:10px;padding:10px;display:grid;gap:3px}.revoluttable{min-width:1180px}.revoluttable td{vertical-align:top;font-variant-numeric:tabular-nums}.revoluttable input[type=checkbox]{width:auto}.importhistory{margin-top:12px;border-top:1px solid #25304a;padding-top:10px}.importhistory summary{cursor:pointer;color:#cbd5e1}.importhistoryrow{display:grid;grid-template-columns:1fr auto;gap:10px;padding:8px 0;border-top:1px solid #25304a}.importhistoryrow span{display:grid;gap:2px}.importhistoryrow small{color:#94a3b8}@media(max-width:760px){.importsummary{grid-template-columns:1fr 1fr}.revolutcontrols{display:grid}.importhistoryrow{grid-template-columns:1fr}}@media(max-width:480px){.importsummary{grid-template-columns:1fr}}

/* V3.4.1 — AI Strategy Planner */
.strategyhero{border-color:#5167a5}.strategyform{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}.strategyform label{margin:0}.strategyform .wide{grid-column:1/-1}.strategyform textarea{width:100%;resize:vertical}.strategyactions{grid-column:1/-1;display:flex;gap:10px;align-items:center;flex-wrap:wrap}.strategyresult{border-color:#445886}.strategygrid{align-items:start;margin-top:12px}.strategylist{display:grid;gap:8px}.strategyitem{border-top:1px solid #25304a;padding:9px 0;display:grid;gap:3px}.strategyitem small{color:#94a3b8;line-height:1.4}.strategyalternatives{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.strategyalternative{border:1px solid #2f3c57;background:#0e1628;border-radius:10px;padding:11px;display:grid;gap:5px}.strategytable td{vertical-align:top}.strategyhistory{display:grid;gap:8px}.strategyhistoryrow{border-top:1px solid #25304a;padding:10px 0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px}.strategyhistoryrow span{display:grid;gap:2px}.strategyhistoryrow small{color:#94a3b8}.strategyhistorytext{grid-column:1/-1;white-space:pre-wrap;line-height:1.5;background:#0b1425;border:1px solid #2f3c57;border-radius:9px;padding:12px}.quality.approved{background:#12351f;color:#bbf7d0}.quality.rejected{background:#3b1e24;color:#fecaca}
@media(max-width:900px){.strategyform{grid-template-columns:repeat(2,1fr)}.strategyalternatives{grid-template-columns:1fr}}@media(max-width:600px){.strategyform{grid-template-columns:1fr}.strategyform .wide,.strategyactions{grid-column:1}.strategyactions{display:grid}.strategyhistoryrow{grid-template-columns:1fr}.strategytable{min-width:820px}}


/* V3.4.5 — mini gráficos interativos por posição */
.positioncard{display:block;padding:16px 0}.position-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.position-ident{display:flex;align-items:flex-start;gap:14px;min-width:0}.position-copy{display:block;min-width:0}.position-copy b{display:block;font-size:1.05rem}.position-copy small{display:block;margin-top:3px}.asset-logo-badge{position:relative;display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;min-width:52px;border-radius:50%;overflow:hidden;background:#fff;border:1px solid rgba(255,255,255,.16);box-shadow:inset 0 0 0 1px rgba(255,255,255,.04)}.asset-logo-img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;display:block;z-index:2;background:#fff;padding:8px}.asset-logo-fallback{position:relative;z-index:1;font-size:.82rem;font-weight:800;letter-spacing:.03em;color:#334155;text-transform:uppercase}.asset-logo-badge.fallback{background:#eef2ff}.mini-chart-shell{margin-top:12px;padding-top:10px;border-top:1px solid #1f2a42}.position-chart{min-height:166px}.position-chart-meta,.position-chart-foot{display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap}.position-chart-meta{padding:0 2px 6px}.position-chart-foot{padding:4px 2px 0}.chart-canvas{position:relative;width:100%;min-width:0}.chart-canvas svg{display:block;width:100%;height:auto;min-height:126px;touch-action:pan-y}.chart-tooltip{position:absolute;top:8px;z-index:2;display:grid;gap:1px;min-width:110px;padding:7px 9px;border-radius:9px;background:#0b1020e8;border:1px solid #33415f;pointer-events:none}.chart-tooltip b{font-size:13px}.chart-tooltip span{font-size:11px;color:#94a3b8}.chart-loading,.chart-error{display:grid;place-items:center;min-height:145px;color:#94a3b8;font-size:13px}.chart-error{color:#fca5a5}.chart-ranges{display:grid;grid-template-columns:repeat(6,1fr);gap:5px;margin-top:6px}.chart-range{min-width:0;padding:7px 3px;border-radius:8px;background:transparent;border-color:transparent;color:#94a3b8;font-size:12px}.chart-range.active{background:#1e293b;border-color:#475569;color:#fff}.position-chart-foot small{font-size:11px}.position-chart-meta small{font-size:11px}.position-chart-meta b{font-size:13px}@media(max-width:700px){.position-head{gap:10px}.position-ident{gap:10px}.asset-logo-badge{width:44px;height:44px;min-width:44px}.position-head .metrics{max-width:52%}.position-chart{min-height:150px}.chart-canvas svg{min-height:118px}.chart-ranges{gap:2px}.chart-range{padding:8px 1px;font-size:11px}}

/* V3.4.5 — marcadores de compra nos mini-gráficos */
.chart-controls{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;margin-top:6px}.chart-controls .chart-ranges{margin-top:0}.chart-marker-toggle{min-width:104px;padding:7px 10px;border-radius:8px;background:transparent;border:1px solid #33415f;color:#94a3b8;font-size:12px;white-space:nowrap}.chart-marker-toggle span,.buy-marker-legend{color:#3b82f6}.chart-marker-toggle.active{color:#dbeafe;border-color:#3b82f6;background:#172554}.buy-marker{fill:#3b82f6;stroke:#dbeafe;stroke-width:1.8;pointer-events:none}.buy-marker-hit{cursor:pointer}.buy-marker-count{fill:#93c5fd;font-size:9px;font-weight:700;pointer-events:none}.chart-tooltip{max-width:220px}.chart-tooltip span{line-height:1.35}.buy-marker-legend{margin-left:auto}.chart-marker-toggle:focus-visible,.buy-marker-hit:focus-visible{outline:2px solid #60a5fa;outline-offset:2px}@media(max-width:700px){.chart-controls{grid-template-columns:1fr}.chart-marker-toggle{justify-self:start;min-height:38px}.chart-tooltip{max-width:200px}}



/* V3.4.6 — países consolidados: bandeiras raster locais + nomes pt-PT */
.country-label{display:inline-flex;align-items:center;gap:8px;min-width:0}.country-label>span:last-child{min-width:0;overflow-wrap:anywhere}
.country-rows{display:flex;flex-direction:column;gap:2px;margin-top:4px}
.country-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 2px;min-height:62px;border-bottom:1px solid rgba(148,163,184,.12)}
.country-row:last-child{border-bottom:0}
.country-row-main{display:flex;align-items:center;gap:14px;min-width:0;flex:1}
.country-row-copy{display:flex;flex-direction:column;min-width:0;gap:2px}
.country-name{font-size:1.04rem;font-weight:650;line-height:1.2;white-space:normal;overflow-wrap:anywhere}
.country-row-copy small{font-size:.73rem;color:var(--muted);line-height:1.2}
.country-value{font-size:1.02rem;font-variant-numeric:tabular-nums;color:#d7def2;white-space:nowrap;margin-left:auto}
.country-flag-badge{position:relative;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;min-width:40px;border-radius:50%;overflow:hidden;background:#20273a;border:1px solid rgba(255,255,255,.16);box-shadow:inset 0 0 0 1px rgba(255,255,255,.03)}
.country-code-fallback{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:.72rem;font-weight:800;color:#dbe4f7;letter-spacing:.02em}
.country-flag-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;z-index:1}
.country-flag-badge.fallback{background:#252b3c}.country-globe{font-size:1.18rem;line-height:1}
@media(max-width:620px){.country-row{padding:11px 0;gap:12px;min-height:58px}.country-row-main{gap:12px}.country-flag-badge{width:38px;height:38px;min-width:38px}.country-name{font-size:1rem}.country-value{font-size:.96rem}}


.company-rows{display:flex;flex-direction:column;gap:2px;margin-top:4px}
.company-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 2px;min-height:62px;border-bottom:1px solid rgba(148,163,184,.12)}
.company-row:last-child{border-bottom:0}
.company-row-main{display:flex;align-items:center;gap:14px;min-width:0;flex:1}
.company-row-copy{display:flex;flex-direction:column;min-width:0;gap:2px}
.company-name{font-size:1rem;font-weight:600;line-height:1.2;color:var(--text)}
.company-row-copy small{font-size:.73rem;color:var(--muted);line-height:1.2}
.company-value{font-size:1rem;font-weight:700;color:var(--text);white-space:nowrap}
.company-logo-badge{position:relative;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;min-width:40px;border-radius:50%;overflow:hidden;background:#fff;border:1px solid rgba(255,255,255,.16);box-shadow:inset 0 0 0 1px rgba(255,255,255,.04)}
.company-logo-img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;display:block;z-index:2;background:#fff;padding:7px}
.company-logo-fallback{position:relative;z-index:1;font-size:.78rem;font-weight:800;letter-spacing:.03em;color:#334155;text-transform:uppercase}
.company-logo-badge.fallback{background:#eef2ff}
@media(max-width:620px){.company-row{padding:11px 0;gap:12px;min-height:58px}.company-row-main{gap:12px}.company-logo-badge{width:38px;height:38px;min-width:38px}.company-name{font-size:1rem}.company-value{font-size:.96rem}}

/* V3.5 — Gestão, multi-utilizador e administração */
.management-grid{align-items:start}
.management-row{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:10px 0;border-bottom:1px solid #25304a}
.management-row:last-child{border-bottom:0}
.management-row span{display:grid;gap:2px;min-width:0}
.management-row small{word-break:break-word}
.inline-actions{display:flex;gap:6px;flex-wrap:wrap}
.inline-actions button{padding:6px 8px;font-size:.78rem}
.admin-only[hidden]{display:none!important}
#adminOverview{grid-template-columns:repeat(5,minmax(0,1fr))}
#adminUsersRows select{min-width:92px;padding:7px}
@media(max-width:800px){#adminOverview{grid-template-columns:repeat(2,minmax(0,1fr))}.management-row{align-items:flex-start;flex-direction:column}.inline-actions{width:100%}}
.report-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.report-actions button{min-width:150px}.report-risk-grid{display:grid;gap:2px}.report-risk-grid .statline:last-child{border-bottom:0}@media(max-width:620px){.report-actions{display:grid;grid-template-columns:1fr}.report-actions button{width:100%}}

/* V4.0 — Alertas e notificações */
.navbadge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;margin-left:5px;border-radius:999px;background:#dc2626;color:#fff;font-size:.72rem;font-weight:700}.navbadge[hidden]{display:none}.alert-rule-list,.notification-list{display:grid;gap:8px}.alert-rule-row,.notification-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 14px;align-items:center;padding:11px 0;border-bottom:1px solid #25304a}.alert-rule-row:last-child,.notification-row:last-child{border-bottom:0}.alert-rule-main,.notification-main{display:grid;gap:3px;min-width:0}.alert-rule-main small,.notification-main small{color:#94a3b8;line-height:1.35}.alert-rule-actions,.notification-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.alert-rule-actions button,.notification-actions button{padding:6px 8px;font-size:.78rem}.alert-switch{display:inline-flex;align-items:center;gap:6px;font-size:.82rem;color:#cbd5e1}.alert-switch input{width:auto}.notification-row.unread{background:linear-gradient(90deg,rgba(37,99,235,.08),transparent);border-left:3px solid #60a5fa;padding-left:10px}.notification-severity{display:inline-flex;width:9px;height:9px;border-radius:50%;margin-right:7px;background:#60a5fa}.notification-severity.warning{background:#facc15}.notification-severity.error{background:#f87171}.notification-severity.info{background:#60a5fa}.notification-meta{display:flex;gap:8px;flex-wrap:wrap}.notification-category{font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:#93c5fd}.alert-value{font-variant-numeric:tabular-nums}.alert-state-true{color:#facc15}.alert-state-false{color:#86efac}.alert-state-unknown{color:#94a3b8}@media(max-width:700px){.alert-rule-row,.notification-row{grid-template-columns:1fr}.alert-rule-actions,.notification-actions{justify-content:flex-start}}

/* V4.0.1 — Branding + topo fixo */
.app-topbar{position:sticky;top:0;z-index:1000;background:rgba(11,16,32,.97);backdrop-filter:blur(12px);box-shadow:0 8px 24px rgba(0,0,0,.18)}
.login-brand{display:grid;justify-items:center;gap:12px;margin-bottom:8px}.login-brand h1{margin:0;text-align:center}
.header-brand{display:flex;align-items:center;gap:12px;min-width:0}.header-title{display:flex;align-items:center;gap:4px;flex-wrap:wrap;min-width:0}
.brand-logo-wrap{display:inline-flex;align-items:center;justify-content:center;overflow:hidden;background:transparent;flex:0 0 auto}.brand-logo{display:block;width:100%;height:100%;object-fit:contain;border-radius:inherit}.brand-logo-fallback{font-weight:800;letter-spacing:.04em;color:#e5e7eb;white-space:nowrap}
.brand-logo-login{width:92px;height:104px;border-radius:18px}.brand-logo-login .brand-logo-fallback{font-size:2rem}.brand-logo-menu{width:44px;height:50px;border-radius:12px}.brand-logo-menu .brand-logo-fallback{font-size:1rem}
@media(max-width:700px){.app-topbar header{padding:10px 14px}.header-brand{width:100%;align-items:flex-start}.header-title{flex:1}.header-title b{display:block;width:100%}.header-title select{margin-left:0}.brand-logo-menu{width:40px;height:46px}nav{padding:0 10px}.brand-logo-login{width:82px;height:93px}}

/* V4.0.4: consistent contrast, compact navigation and responsive layouts. */
:root{color-scheme:dark;--focus:#a5b4fc}
*{box-sizing:border-box}html{scroll-padding-top:100px}body{margin:0;background:#0b1020;color:#e7edf8;font-family:Inter,"Segoe UI",system-ui,sans-serif;font-size:14px;line-height:1.55;-webkit-font-smoothing:antialiased}
[hidden]{display:none!important}header{position:relative;top:auto;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;align-items:center;background:#0e1528;border-bottom:1px solid #26324a;padding:18px 28px;box-shadow:none}
.header-brand,.header-title,header .right{min-width:0;display:flex;align-items:center;gap:16px;flex-wrap:wrap}.header-title b{font-size:15px;letter-spacing:.025em}.app-version{color:#a5b4fc;font-size:12px;white-space:nowrap}.brand-logo-wrap{flex-shrink:0}.header-title select{margin:0;min-width:180px;max-width:100%;background:#151e33}header .right{gap:12px;font-size:13px}#countdown{font-variant-numeric:tabular-nums;color:#a4b2cb}#who{color:#c6d1e4}
nav{position:sticky;top:0;z-index:30;display:flex;flex-wrap:wrap;gap:4px;overflow:visible;padding:9px 24px;background:#0e1528f5;backdrop-filter:blur(12px);border-bottom:1px solid #27324b;box-shadow:0 6px 18px #0002}
nav button{flex:0 0 auto;padding:9px 13px;color:#aebbd3;background:transparent;border:1px solid transparent!important;border-radius:9px!important;font-size:13px;font-weight:600;white-space:nowrap;min-height:40px}
nav button:hover{color:#f3f6ff;background:#1c2842}nav button.active{color:#f1f0ff;background:#35326b;border-color:#625dab!important;box-shadow:inset 0 1px 0 #ffffff12}
main{max-width:1440px;margin:0 auto;padding:28px;min-width:0}main:focus{outline:none}section{min-width:0}.grid,.tx-grid,.summarygrid,.formgrid{min-width:0}.grid>*{min-width:0}.card,.hero,.kpi{background:#121b2e;border:1px solid #28334b;border-radius:16px;box-shadow:0 8px 24px #00000014}.card{padding:24px;margin-bottom:18px}.hero{padding:28px;background:linear-gradient(115deg,#182444,#181c38);border-color:#3a4467}.hero h2{font-size:clamp(32px,4vw,46px);line-height:1.2;letter-spacing:-.035em;margin:12px 0 16px;font-variant-numeric:tabular-nums}.hero p{margin-bottom:0;color:#b6c4dd}.hero-meta{gap:12px;flex-wrap:wrap}.summarygrid{gap:14px;margin:16px 0 22px}.kpi{padding:20px}.kpi>b{font-size:23px;line-height:1.35;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.kpi small{color:#afbdd5}.positive,.green{color:#74dfb0}.negative,.red{color:#ff999f}.yellow{color:#f2cf78}.muted,small{color:#a5b4ce}h3{font-size:18px;letter-spacing:-.015em;margin-top:0;margin-bottom:16px;line-height:1.35}h4{font-size:15px}p{max-width:100%;color:#bcc8dc}p,small,.notice{overflow-wrap:anywhere}
button,input,select,textarea{font:inherit}button{cursor:pointer;min-height:40px;border-radius:9px;transition:background .15s,border-color .15s;background:#6355cf;color:#fff;border:1px solid #7c70df;padding:9px 14px}button:hover{background:#7566e2}button.ghost{background:transparent;border-color:#36425d;color:#d8e2f4}button.danger{color:#ffa4ab;background:#432331;border-color:#73414e}button:disabled{cursor:not-allowed;opacity:.48}input,select,textarea{max-width:100%;min-width:0;border-radius:9px;background:#0b1324;color:#eff4ff;border:1px solid #394760;padding:11px 12px;min-height:44px}input:hover,select:hover,textarea:hover{border-color:#687593}input:focus,select:focus,textarea:focus{border-color:#a5b4fc;outline:3px solid #a5b4fc25}button:focus-visible,a:focus-visible{outline:3px solid #b4bfff;outline-offset:3px}.formgrid{gap:14px}label{font-size:13px;color:#c6d2e7}input[type=checkbox]{min-height:auto;accent-color:#a5b4fc}input[type=file]{padding:9px}
.tablewrap{max-width:100%;overflow:auto;border:1px solid #2a3650;border-radius:11px;margin:12px 0 18px;scrollbar-color:#566388 #111a2e}table{margin:0;width:100%;font-size:13px;font-variant-numeric:tabular-nums}thead{background:#1a2640}th{font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:#b8c7e2;font-weight:650;padding:13px 14px}td{padding:12px 14px;border-bottom:1px solid #27334c;vertical-align:top}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#ffffff04}td small{font-size:11px}td button{min-height:34px;padding:6px 10px}table .quality{font-size:10px}.quality,.pill{letter-spacing:.02em;font-size:11px;padding:5px 9px;border-radius:7px}.quality.stale,.quality.delayed{background:#493c22;color:#f4d590}.quality.fresh{background:#163f35;color:#85eac7}.positioncard{background:#0f182b;border:1px solid #2a3650;border-radius:12px;padding:18px;margin:0 0 14px}.position-head{gap:16px;align-items:flex-start}.position-ident{min-width:0}.position-copy{min-width:0}.position-copy>small{font-size:12px}.position .metrics{flex-shrink:0}.position .metrics>b{font-size:20px;letter-spacing:-.02em}.position .metrics small{font-size:11px}.asset-logo-badge{background:#1c2943;border:1px solid #384667}.provider{padding:13px 0;gap:16px;align-items:flex-start}.provider small{max-width:72%;line-height:1.5}.notice{border-radius:10px;padding:14px 16px;line-height:1.6}.actions{gap:10px;flex-wrap:wrap}.app-status{position:fixed;right:24px;bottom:24px;z-index:90;max-width:min(540px,calc(100vw - 32px));display:flex;align-items:center;gap:18px;background:#35283e;border:1px solid #a07396;border-radius:12px;padding:14px 16px;box-shadow:0 16px 48px #0007;color:#fff}.app-status button{background:transparent;border:0;flex-shrink:0;font-size:22px;padding:0 6px}.app-status span{overflow-wrap:anywhere}
@media(min-width:1200px){#dashboard>.grid{grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr)}#positions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}#positions .positioncard{margin:0}#positions .position-head{flex-direction:column}#positions .metrics{text-align:left}#positions .position-ident{min-height:68px}}
@media(max-width:900px){header{padding:16px 20px}nav{padding:8px 16px;gap:3px}nav button{padding:8px 11px}main{padding:20px}.grid,.tx-grid{grid-template-columns:minmax(0,1fr)}.card{padding:20px}.summarygrid{grid-template-columns:repeat(2,minmax(0,1fr))}.header-title{gap:10px}.header-title select{width:auto}}
@media(max-width:520px){header{padding:14px;gap:12px}.header-brand{width:100%;gap:12px}.header-title{flex:1;gap:6px}.header-title b{font-size:13px}.header-title select{width:100%;min-width:0;font-size:13px;min-height:38px;padding:7px 10px}.brand-logo-wrap{width:42px;height:42px}header .right{width:100%;justify-content:space-between;font-size:12px;gap:6px}#countdown{display:none}nav{position:relative;padding:10px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}nav button{padding:8px 3px;min-width:0;font-size:11px;white-space:normal;line-height:1.2;min-height:38px}main{padding:14px}.card{padding:16px;border-radius:13px}.hero{padding:22px}.hero-meta{align-items:flex-start}.summarygrid{gap:9px;margin:12px 0 16px}.kpi{padding:14px}.kpi>b{font-size:20px}.kpi small{font-size:11px}.formgrid{grid-template-columns:minmax(0,1fr)}.position-head{flex-direction:column;gap:12px}.position .metrics{text-align:left}.positioncard{padding:15px}.provider{flex-wrap:wrap;gap:6px}.provider small{max-width:100%}.app-status{right:16px;bottom:16px}input,select,textarea{font-size:16px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}


@media(min-width:521px) and (max-width:1199px){nav{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:5px}nav button{min-width:0;padding:10px 5px;white-space:normal}}
@media(max-width:520px){.revolutcontrols{grid-template-columns:minmax(0,1fr)}.revolutcontrols>*{min-width:0;width:100%}.decisionhero{grid-template-columns:minmax(0,1fr)}.decisionhero>*{min-width:0}.decisionstate{white-space:normal;overflow-wrap:anywhere}}
@media(max-width:520px){.revolutcontrols label{min-width:0;width:100%}.decisionhero .primary,.recommendationitem,.rec-head{grid-template-columns:minmax(0,1fr)}.decisionhero .primary>*,.recommendationitem>*,.rec-head>*,.executiontitle>*{min-width:0}.recommendationitem{overflow-wrap:anywhere}}
@media(max-width:520px){.decisionhero .decisionstate{width:auto;max-width:100%;display:block}}
