:root{--bg:#f3eee8;--ink:#171717;--muted:#756f69;--panel:#fffdf9;--line:#d8cec5;--burgundy:#68233c;--shadow:0 10px 30px rgba(22,18,17,.09);--star:#F2C200;--marvel:#F03D0E;--dc:#476BFF;--minecraft:#00C45B;--hp:#BA5AED;--castle:#FF7500;--ninjago:#FF578B;--other:#7BD6DC}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}.hidden{display:none!important}.shell{min-height:100vh}.topbar{position:sticky;top:0;z-index:20;background:rgba(255,253,249,.95);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.toprow{max-width:1540px;margin:auto;padding:18px 24px 13px;display:flex;align-items:center;justify-content:space-between;gap:18px}.brand{font-weight:950;letter-spacing:.075em;font-size:18px}.brand span{color:var(--burgundy)}.sub{font-size:12px;color:var(--muted);margin-top:3px}.userbar{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--muted)}.nav{max-width:1540px;margin:auto;padding:0 24px 12px;display:flex;gap:8px;overflow:auto}.navbtn{border:1px solid var(--line);background:#fff;border-radius:999px;padding:9px 14px;font-weight:800;white-space:nowrap}.navbtn.active{background:#171717;color:#fff;border-color:#171717}.main{max-width:1540px;margin:auto;padding:22px 24px 60px}.eyebrow{font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.12em;color:var(--burgundy);margin-bottom:5px}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.metric{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:16px;position:relative;overflow:hidden}.metric.heroMetric:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--burgundy)}.metric .label{font-size:10px;text-transform:uppercase;letter-spacing:.09em;color:var(--muted);font-weight:800}.metric .value{font-size:26px;font-weight:950;margin-top:5px}.metric .hint{font-size:11px;color:var(--muted);margin-top:4px;line-height:1.35}.positive{color:#187a49}.negative{color:#a62a38}.dashboardGrid{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:12px;margin-bottom:18px}.commandCard{background:linear-gradient(135deg,#fffdf9,#f9eee7)}.commandCard h3,.card h3{margin:4px 0 8px}.progress{height:7px;background:#e9dfd6;border-radius:999px;overflow:hidden;margin-top:14px}.progress span{display:block;height:100%;background:var(--burgundy);border-radius:999px}.cardhead{display:flex;justify-content:space-between;align-items:center;font-size:12px;margin-bottom:6px}.cardhead span{font-size:10px;color:var(--muted)}.rankrow{display:grid;grid-template-columns:22px 38px 1fr auto;gap:8px;align-items:center;width:100%;padding:8px 0;border:0;border-top:1px solid var(--line);background:transparent;text-align:left}.rankrow:hover .rankname b{text-decoration:underline}.ranknum{font-size:10px;color:var(--muted);font-weight:900}.rankrow img{width:36px;height:36px;object-fit:contain;background:white;border-radius:8px}.rankname{min-width:0}.rankname b,.rankname small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rankname b{font-size:11px}.rankname small{font-size:9px;color:var(--muted)}.rankrow strong{font-size:11px}.toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:8px 0 13px}.field,input,select,textarea{background:var(--panel);color:var(--ink);border:1px solid var(--line);border-radius:12px;padding:10px 12px}input.search{min-width:260px;flex:1}.btn{border:0;border-radius:12px;padding:10px 13px;font-weight:850;background:#171717;color:#fff;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.btn.secondary{background:var(--panel);color:var(--ink);border:1px solid var(--line)}.btn.danger{background:#9d2434}.iconbtn{border:0;border-radius:8px;padding:7px 9px;font-size:11px}.sectiontitle{display:flex;align-items:end;justify-content:space-between;gap:16px;margin:18px 0 12px}.sectiontitle h2{margin:0;font-size:24px}.count{font-size:12px;color:var(--muted)}.filterchips{display:flex;gap:7px;overflow:auto;padding-bottom:4px}.chip{border:1px solid var(--line);background:var(--panel);padding:7px 10px;border-radius:999px;font-size:10px;font-weight:850;white-space:nowrap}.chip.active{border-color:var(--chip,#171717);box-shadow:inset 0 -3px 0 var(--chip,#171717)}.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(205px,1fr));gap:14px}.fig{background:var(--panel);border:3px solid var(--theme,#aaa);border-radius:18px;overflow:hidden;cursor:pointer;transition:.15s transform,.15s box-shadow;position:relative}.fig:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.thumb{height:175px;background:#fff;display:flex;align-items:center;justify-content:center;padding:14px}.thumb img{max-width:100%;max-height:100%;object-fit:contain}.figbody{padding:12px 13px 14px}.tag{display:inline-block;color:white;background:var(--theme,#777);font-size:9px;font-weight:900;letter-spacing:.05em;padding:4px 7px;border-radius:999px;margin-bottom:8px;text-transform:uppercase}.name{font-weight:850;line-height:1.2;min-height:38px}.id{font-size:11px;color:var(--muted);margin-top:4px}.row{display:flex;justify-content:space-between;align-items:end;gap:8px;margin-top:10px}.price{font-size:20px;font-weight:900}.roi{font-size:11px;color:#187a49;font-weight:750}.pager{display:flex;justify-content:center;align-items:center;gap:10px;margin:24px 0}.card{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:18px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.empty{padding:45px 20px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:18px;background:rgba(255,255,255,.35)}.tablewrap{overflow:auto;border:1px solid var(--line);border-radius:16px;background:var(--panel)}table{width:100%;border-collapse:collapse}th,td{padding:11px 12px;border-bottom:1px solid var(--line);text-align:left;font-size:12px}th{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);background:#f7f2ec}.clickrow{cursor:pointer}.clickrow:hover{background:#fbf7f2}.tablefigure{display:flex;align-items:center;gap:9px;min-width:210px}.tablefigure img{width:38px;height:38px;object-fit:contain;background:white;border-radius:8px}.tablefigure span b,.tablefigure span small{display:block}.tablefigure span small{color:var(--muted);margin-top:2px}.loginwrap{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 15% 15%,#fff8ef 0,transparent 38%),var(--bg)}.login{width:min(440px,100%);background:var(--panel);border:1px solid var(--line);border-radius:24px;padding:26px;box-shadow:var(--shadow)}.login h1{margin:8px 0 4px}.login p{color:var(--muted);font-size:13px;line-height:1.5}.login input{width:100%;margin:6px 0}.status{font-size:12px;margin-top:10px;color:var(--muted)}.status.err{color:#9d2434}.modal{position:fixed;inset:0;background:rgba(20,18,17,.72);display:none;align-items:center;justify-content:center;padding:16px;z-index:50;overscroll-behavior:contain}.modal.open{display:flex}.modalbox{width:min(980px,100%);height:min(760px,calc(100vh - 32px));max-height:min(760px,calc(100vh - 32px));overflow:hidden;display:flex;flex-direction:column;background:var(--panel);border-radius:24px;border:1px solid var(--line);box-shadow:0 30px 90px rgba(0,0,0,.25)}.modalhead{padding:16px 18px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;flex:0 0 auto;background:var(--panel);z-index:2}.modalbody{padding:18px;overflow-y:auto;overflow-x:hidden;flex:1 1 auto;min-height:0;overscroll-behavior:contain}.detailhero{display:grid;grid-template-columns:260px 1fr;gap:22px}.detailhero h2{margin:7px 0}.detailimg{height:260px;background:white;border:3px solid var(--theme,#aaa);border-radius:18px;display:flex;align-items:center;justify-content:center;padding:18px}.detailimg img{max-width:100%;max-height:100%;object-fit:contain}.kv{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:14px}.kv>div{background:#f7f2ec;border-radius:12px;padding:10px}.kv small{display:block;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.07em}.kv b{display:block;margin-top:3px}.actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.detailLower{margin-top:14px}.detailLower p{font-size:12px;color:var(--muted);line-height:1.5}.factline{display:flex;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding:8px 0;font-size:11px}.factline span{color:var(--muted)}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.formgrid .full{grid-column:1/-1}.formgrid input,.formgrid select,.formgrid textarea{width:100%}.addFlow h3{margin:4px 0 12px}.idpreview{display:flex;align-items:center;gap:10px;padding:10px;background:#f7f2ec;border-radius:12px;font-size:11px;color:var(--muted);min-height:56px}.idpreview img{width:42px;height:42px;object-fit:contain;background:white;border-radius:8px}.idpreview span b,.idpreview span small{display:block}.idpreview small{color:var(--muted);margin-top:2px}.watchgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:14px}.watchcard{background:var(--panel);border:1px solid var(--line);border-top:5px solid var(--theme);border-radius:18px;padding:15px}.watchtop{display:grid;grid-template-columns:84px 1fr;gap:12px;align-items:center}.watchtop img{width:84px;height:84px;object-fit:contain;background:white;border-radius:12px}.watchtop h3{margin:1px 0 4px}.watchmetrics{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:13px 0}.watchmetrics div{background:#f7f2ec;border-radius:10px;padding:9px}.watchmetrics small,.watchmetrics b{display:block}.watchmetrics small{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.07em}.watchcard p{font-size:12px;color:var(--muted);line-height:1.45;min-height:35px}.researchHero{padding:20px}.researchHero h3{margin:0 0 6px}.researchSearch{display:flex;gap:8px;margin:14px 0}.researchSearch input{flex:1}.researchHit{display:grid;grid-template-columns:150px 1fr;gap:16px;border-top:3px solid var(--theme);padding-top:15px;margin-top:14px}.researchHit>img{width:150px;height:150px;object-fit:contain;background:white;border-radius:14px}.researchHit h3{margin:2px 0}.hitfacts{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0}.hitfacts span{font-size:10px;border:1px solid var(--line);border-radius:999px;padding:5px 7px}.newResearch{margin-top:14px}.researchList{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--panel)}.researchrow{display:grid;grid-template-columns:100px 230px 1fr 20px;gap:12px;align-items:center;width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;padding:12px;text-align:left}.researchrow:hover{background:#fbf7f2}.researchrow span b,.researchrow span small{display:block}.researchrow small{color:var(--muted);margin-top:3px}.rating{font-size:9px;font-weight:900;text-transform:uppercase;color:var(--burgundy)}.researchcopy{font-size:11px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.briefingEmpty{display:grid;grid-template-columns:110px 1fr;gap:20px;align-items:center;padding:28px}.briefIcon,.briefStamp{background:#171717;color:white;font-weight:950;letter-spacing:.07em;text-align:center;border-radius:16px}.briefIcon{width:100px;height:100px;display:grid;place-items:center;font-size:24px}.briefingHeader{display:grid;grid-template-columns:100px 1fr;gap:20px;align-items:center;background:linear-gradient(135deg,#fffdf9,#f7ece5)}.briefStamp{padding:20px 8px;line-height:1.15}.briefingHeader h1{margin:0 0 6px;font-size:28px}.briefingHeader p{margin:0;color:var(--muted);line-height:1.5}.briefingItems{margin-top:12px;background:var(--panel);border:1px solid var(--line);border-radius:18px;overflow:hidden}.briefitem{display:grid;grid-template-columns:150px 1fr;gap:20px;padding:18px;border-bottom:1px solid var(--line)}.briefcat{font-size:9px;text-transform:uppercase;letter-spacing:.09em;font-weight:900;color:var(--burgundy)}.briefitem h3{margin:0 0 5px}.briefitem p{margin:0 0 8px;color:var(--muted);font-size:12px;line-height:1.5}.recommendation{border-left:3px solid var(--burgundy);padding-left:10px;font-size:12px;font-weight:750}.textlink{border:0;background:transparent;padding:0;color:var(--burgundy);font-size:11px;font-weight:800}.archiveTitle{margin-top:24px}.archive{display:grid;gap:8px}.archive .card{display:flex;justify-content:space-between;gap:14px;padding:12px 15px;font-size:12px}.marketNotice{margin-bottom:12px}.marketNotice p{margin-bottom:0}.muted{color:var(--muted)}.small{font-size:12px}.toast{position:fixed;right:18px;bottom:18px;background:#171717;color:#fff;padding:12px 15px;border-radius:12px;box-shadow:var(--shadow);z-index:80;display:none}.toast.show{display:block}code{font-size:11px;background:#eee5dd;padding:2px 5px;border-radius:5px}
@media(max-width:1050px){.dashboardGrid{grid-template-columns:1fr 1fr}.commandCard{grid-column:1/-1}.metrics{grid-template-columns:1fr 1fr}}
@media(max-width:900px){.grid2{grid-template-columns:1fr}.detailhero{grid-template-columns:1fr}.detailimg{height:220px}.toprow{align-items:flex-start}.userbar{display:none}.kv{grid-template-columns:1fr 1fr}.researchrow{grid-template-columns:90px 1fr 20px}.researchcopy{display:none}.briefitem{grid-template-columns:1fr;gap:6px}}
@media(max-width:620px){.main,.toprow,.nav{padding-left:14px;padding-right:14px}.metrics,.dashboardGrid{grid-template-columns:1fr}.metric .value{font-size:24px}.gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.thumb{height:145px}.name{font-size:13px}.formgrid{grid-template-columns:1fr}.formgrid .full{grid-column:auto}.watchgrid{grid-template-columns:1fr}.researchHit{grid-template-columns:1fr}.researchHit>img{width:100%;height:180px}.briefingEmpty,.briefingHeader{grid-template-columns:1fr}.briefIcon{width:76px;height:76px}.briefingHeader h1{font-size:23px}.researchSearch{flex-direction:column}.filterchips{margin-right:-14px}.rankrow{grid-template-columns:20px 34px 1fr auto}.kv{grid-template-columns:1fr 1fr}}

@media(max-width:700px){.modal{padding:8px}.modalbox{height:calc(100vh - 16px);max-height:calc(100vh - 16px);border-radius:16px}.modalbody{padding:14px}}
body.modalOpen{overflow:hidden}.coverageBadge{display:inline-block;margin-left:6px;padding:3px 7px;border-radius:999px;background:#f4e8d9;color:#6e3326;font-size:9px;letter-spacing:.04em;vertical-align:middle}.pendingValue{color:#a55b18!important;font-weight:700}
.detailtabs{display:flex;gap:6px;position:sticky;top:-18px;z-index:4;background:var(--panel);padding:0 0 12px;margin:0 0 16px;border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:none}.detailtabs::-webkit-scrollbar{display:none}.detailtab{border:1px solid var(--line);background:#fffaf5;color:#282421;border-radius:999px;padding:9px 13px;font:inherit;font-size:11px;font-weight:800;white-space:nowrap;cursor:pointer}.detailtab.active{background:#171717;color:white;border-color:#171717}.modalSection{margin:0 0 14px}.marketDetailCard{margin-bottom:14px}.marketKv{margin-top:12px}.signalBox{display:flex;justify-content:space-between;gap:15px;align-items:center;border-top:1px solid var(--line);padding-top:12px;margin-top:12px;font-size:12px}.signalBox span{color:var(--burgundy);font-weight:800}.detailHistory{margin-top:14px}
/* V8.4 Research intelligence */
.researchSearchWrap{position:relative}
.researchSuggest{position:absolute;left:0;right:0;top:48px;z-index:15;background:var(--panel);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);overflow:hidden;max-height:390px;overflow-y:auto}
.suggestRow{width:100%;border:0;border-bottom:1px solid var(--line);background:var(--panel);padding:10px 12px;display:flex;align-items:center;gap:10px;text-align:left}
.suggestRow:last-child{border-bottom:0}.suggestRow:hover{background:#f8f2ec}
.suggestRow img{width:44px;height:44px;object-fit:contain;background:white;border-radius:8px;flex:0 0 auto}.suggestRow span{min-width:0}.suggestRow b,.suggestRow small{display:block}.suggestRow b{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.suggestRow small{font-size:10px;color:var(--muted);margin-top:2px}
.investmentRead{margin-top:14px;background:#f7f2ec;border-radius:16px;padding:14px}.investTop{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.investTop>div{background:var(--panel);border:1px solid var(--line);border-radius:11px;padding:10px}.investTop small,.investTop strong,.investTop span{display:block}.investTop small{font-size:8px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.investTop strong{font-size:13px;margin-top:3px}.investTop span{font-size:9px;color:var(--muted);margin-top:2px}.investmentRead p{font-size:12px;line-height:1.45;margin:12px 0 0}.forecastNote{font-size:10px;color:var(--muted);margin-top:9px;border-top:1px solid var(--line);padding-top:8px}
@media(max-width:780px){.investTop{grid-template-columns:1fr 1fr}.researchSuggest{top:96px}}
/* V8.5 history + momentum */
.marketDetailHead{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.marketDetailHead h3{margin:2px 0 7px}.entryBox{background:#171717;color:#fff;border-radius:14px;padding:10px 13px;min-width:170px}.entryBox small,.entryBox b{display:block}.entryBox small{font-size:8px;text-transform:uppercase;letter-spacing:.08em;opacity:.72}.entryBox b{margin-top:3px}.momentumPill,.trendBadge{display:inline-flex;align-items:center;border-radius:999px;padding:5px 8px;font-size:9px;font-weight:850;background:#efe8df;color:#5d554d}.momentumPill.hot,.trendBadge.hot{background:#e8f5ec;color:#11653b}.momentumPill.cool,.trendBadge.cool{background:#f9e8e8;color:#9d2434}.chartGrid{display:grid;grid-template-columns:1fr;gap:12px;margin:14px 0}.miniChart,.chartEmpty{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:14px}.chartEmpty{color:var(--muted);font-size:11px}.chartHead{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.chartHead b,.chartHead small{display:block}.chartHead small{font-size:9px;color:var(--muted);margin-top:2px}.chartHead strong{font-size:13px}.chartHead .up{color:#187a49;font-size:10px}.chartHead .down{color:#a62a38;font-size:10px}.miniChart svg{width:100%;height:150px;display:block;margin-top:5px}.chartAxis{stroke:#d8cec5;stroke-width:1}.chartLine{stroke:#68233c;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.chartDot{fill:#171717}.chartRange{display:flex;justify-content:space-between;gap:10px;font-size:9px;color:var(--muted)}.briefStats{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.briefStats span{font-size:9px;background:#f4e8df;border-radius:999px;padding:5px 8px;color:#5d554d;font-weight:800}
@media(max-width:700px){.marketDetailHead{flex-direction:column}.entryBox{width:100%}}

/* V8.6 opportunity universe */
.opportunityGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:16px}
.opportunityCard{position:relative;display:grid;grid-template-columns:100px 1fr;gap:16px;background:#fff;border:2px solid var(--theme);border-radius:18px;padding:16px;box-shadow:0 8px 24px rgba(20,25,40,.06)}
.opportunityCard>img{width:100px;height:120px;object-fit:contain;background:#f6f7f9;border-radius:12px}
.oppRank{position:absolute;top:10px;left:10px;width:28px;height:28px;border-radius:999px;background:#111;color:#fff;display:grid;place-items:center;font-weight:800;font-size:12px}
.oppTop{display:flex;justify-content:space-between;gap:8px;align-items:center}.oppBody h3{margin:7px 0 2px}
.ownership,.statusPill{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:11px;font-weight:800;background:#eef1f5}.ownership.owned{background:#e8f6ed;color:#176a35}.ownership.notowned{background:#fff2db;color:#8b5800}
.oppRating{display:flex;justify-content:space-between;gap:12px;align-items:end;margin:12px 0}.oppRating strong{font-size:18px}.oppRating span{font-size:11px;color:#68707d;text-align:right}
.oppMetrics{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:10px 0 12px}.oppMetrics div{background:#f6f7f9;padding:8px;border-radius:10px}.oppMetrics small{display:block;color:#737b87;font-size:10px}.oppMetrics b{font-size:12px}
.autocompleteWrap{position:relative}
@media(max-width:700px){.opportunityCard{grid-template-columns:80px 1fr}.opportunityCard>img{width:80px;height:100px}.oppMetrics{grid-template-columns:repeat(2,1fr)}}

/* V8.7 accounting, alerts & quality */
.checkrow{display:flex;align-items:center;gap:10px;font-size:13px;color:#47505c}
.checkrow input{width:auto}
.qualitySummary{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-bottom:18px}
.qualitySummary .card{display:flex;justify-content:space-between;align-items:end}
.qualitySummary b{font-size:24px}
.qualityTag{display:inline-flex;padding:4px 8px;border-radius:999px;background:#fff0df;color:#8b5700;font-size:11px;font-weight:800}
.tableSub{display:block;color:#7a8290;margin-top:3px}
.sellHold{margin-right:6px}

/* V8.8 intelligence layer */
.reasonChips{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0}.reasonChips span{font-size:9px;font-weight:800;background:#f6efe8;border:1px solid var(--line);border-radius:999px;padding:5px 7px;color:#5d554d}.targetLine{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:8px 10px;border-radius:10px;background:#f7f2ec;margin:9px 0;font-size:10px}.targetLine.hit{background:#e8f5ec;color:#11653b}.coverageGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.coverageCard b{display:block;font-size:26px;margin-top:5px}.coverageCard p{font-size:10px;color:var(--muted);line-height:1.4;margin:8px 0 0}@media(max-width:950px){.coverageGrid{grid-template-columns:1fr 1fr}}@media(max-width:620px){.coverageGrid{grid-template-columns:1fr}}

/* V8.9 qualitative intelligence */
.intelScoreRow,.qualStrip{display:flex;align-items:center;gap:10px;margin:10px 0 12px}
.intelScoreRow small,.qualStrip small{display:block;color:var(--muted);margin-top:2px}
.intelScore{min-width:58px;height:58px;border-radius:14px;border:1px solid var(--line);background:#f6f1eb;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1}
.intelScore b{font-size:22px}
.intelScore span{font-size:8px;font-weight:900;letter-spacing:.08em;margin-top:4px}
.intelScore.strong{background:#e9f5ed;color:#155f3c;border-color:#b9dbc6}
.intelScore.risk{background:#faece9;color:#8a3328;border-color:#e8c0ba}
.intelScore.compact{min-width:52px;height:52px}
.intelScore.compact b{font-size:19px}
.intelExplainer{display:flex;gap:9px;align-items:flex-start;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:#faf7f3;margin-bottom:14px;font-size:10px}
.intelExplainer span{color:var(--muted)}
.reasonChips .riskChip{background:#faece9;color:#8a3328;border-color:#e8c0ba}
.marketReasons span{background:#eef2f7;color:#44536a}
.coverageGrid{grid-template-columns:repeat(5,minmax(0,1fr))}
@media(max-width:1100px){.coverageGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.coverageGrid{grid-template-columns:1fr}}

/* V8.10 research prioritization + divergence */
.researchQueue{margin:14px 0}
.queueRows{display:grid;gap:6px;margin-top:10px}
.queueRow{width:100%;display:grid;grid-template-columns:28px minmax(180px,1fr) minmax(180px,1.4fr);gap:10px;align-items:center;text-align:left;border:1px solid var(--line);background:#fff;border-radius:10px;padding:9px 10px;cursor:pointer}
.queueRow:hover{background:#faf7f3}
.queueRow>strong{font-size:15px;color:var(--muted)}
.queueRow span b,.queueRow span small{display:block}
.queueRow span small{font-size:9px;color:var(--muted);margin-top:2px}
.queueRow em{font-size:9px;color:#61584f;font-style:normal;text-align:right}
.qualityQueue{margin-bottom:16px}
.divergenceBox{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px 12px;margin:10px 0;border:1px solid var(--line);border-radius:11px;background:#faf7f3}
.divergenceBox small,.divergenceBox b{display:block}
.divergenceBox small{font-size:9px;color:var(--muted)}
.divergenceBox b{font-size:12px;margin-top:2px}
.divergenceBox span{font-size:9px;font-weight:800;text-align:right;color:var(--muted)}
.divergenceBox.active{background:#fff4e5;border-color:#e8c99d}
.coverageGrid{grid-template-columns:repeat(6,minmax(0,1fr))}
@media(max-width:1200px){.coverageGrid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:850px){.queueRow{grid-template-columns:24px 1fr}.queueRow em{grid-column:2;text-align:left}.coverageGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.coverageGrid{grid-template-columns:1fr}}

/* V8.11 final consolidation */
.navbtn{position:relative}
.navBadge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#b23a2b;color:white;font-size:9px;font-weight:900;margin-left:5px}
.valuationKv>div{min-height:92px}
.valuationKv small:last-child{display:block;margin-top:3px;line-height:1.25}
.reviewBar{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--line);border-radius:12px;padding:10px 12px;margin-bottom:14px;background:#edf6ef}
.reviewBar.stale{background:#fff3e3;border-color:#e8c99d}
.reviewBar span b,.reviewBar span small{display:block}
.reviewBar span small{color:var(--muted);margin-top:2px}
.alertSummary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:15px}
.alertSummary .card b{display:block;font-size:24px;margin-top:4px}
.alertList{display:grid;gap:9px}
.alertItem{display:grid;grid-template-columns:140px 1fr auto;gap:14px;align-items:start;border:1px solid var(--line);background:#fff;border-radius:14px;padding:13px}
.alertItem.unread{border-color:#d7ad63;box-shadow:inset 4px 0 0 #e2ae42}
.alertItem h3{margin:0 0 4px;font-size:14px}.alertItem p{margin:0 0 7px;font-size:10px;color:var(--muted)}
.alertType{font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;padding:6px 8px;border-radius:999px;background:#f3efe9;width:max-content}
.alertType.buy_zone{background:#e7f5eb;color:#17603d}.alertType.breakout{background:#fff0dc;color:#94500f}.alertType.supply_compression{background:#eaf0fb;color:#315d9d}
.alertMeta{display:flex;flex-wrap:wrap;gap:8px 14px;font-size:9px;color:var(--muted);margin-bottom:5px}
.coverageGrid{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:900px){.alertItem{grid-template-columns:1fr}.alertSummary{grid-template-columns:1fr 1fr 1fr}.coverageGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.alertSummary,.coverageGrid{grid-template-columns:1fr}}

/* V8.12A home visual consolidation */
.portfolioHome{background:#0b0b0b;margin:-22px -24px -60px;padding:22px 24px 60px;min-height:calc(100vh - 120px);color:#f7f4ef}
.portfolioHome .homeMetrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:14px}
.portfolioHome .homeWidget{border:0;box-shadow:none;color:#111;border-radius:24px}
.portfolioHome .widgetLavender{background:#b9aecb}.portfolioHome .widgetMint{background:#d8e3d6}.portfolioHome .widgetYellow{background:#f0dc27}.portfolioHome .widgetPurple{background:#a99cbc}
.portfolioHome .metric{padding:22px 24px;min-height:205px}.portfolioHome .metric.heroMetric:before{display:none}.portfolioHome .metric .label{font-size:12px;font-weight:600;color:#242220;letter-spacing:.08em}.portfolioHome .metric .value{font-size:clamp(42px,4.8vw,78px);line-height:.94;font-weight:500;letter-spacing:-.045em;margin-top:18px;white-space:nowrap}.portfolioHome .metric .hint{font-size:12px;font-weight:400;color:#383431;line-height:1.45;margin-top:12px;max-width:92%}.portfolioHome .metric .positive,.portfolioHome .metric .negative{color:#111}.portfolioHome .coverageBadge{background:rgba(255,255,255,.5);color:#111}
.collectionMap{padding:22px 24px;margin-bottom:14px}.collectionMapWhite{background:#fff!important;color:#111!important}.collectionMapHead{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.collectionMapHead h3{font-size:32px;font-weight:500;letter-spacing:-.03em;margin:3px 0}.collectionMapHead p,.collectionMapNote{font-size:12px;color:#2f2b2e;margin:0}.collectionMapNote{padding-top:6px}.collectionMap .eyebrow{color:#342939;font-weight:650}.collectionMapBody{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:26px;align-items:start;margin-top:18px}.brickField{display:grid;grid-template-rows:repeat(13,15px);grid-auto-flow:column;grid-auto-columns:15px;gap:3px;justify-content:start;align-content:start;min-height:231px;overflow:visible}.collectionBrick{position:relative;width:15px;height:15px;flex:0 0 15px;border:0;border-radius:2px;background:var(--brick);padding:0;opacity:0;transform:translateY(-7px) scale(.45);animation:brickConnect .32s cubic-bezier(.2,.85,.25,1.2) forwards;animation-delay:calc(var(--i) * 1ms);box-shadow:inset 0 0 0 1px rgba(0,0,0,.16)}.collectionBrick:hover{z-index:8;transform:scale(1.25)!important;box-shadow:0 0 0 2px #fff,0 6px 18px rgba(0,0,0,.35)}.collectionBrick:after{content:attr(data-tip);position:absolute;left:50%;bottom:calc(100% + 8px);transform:translateX(-50%) translateY(4px);background:#111;color:#fff;padding:7px 9px;border-radius:8px;font-size:10px;font-weight:500;line-height:1.25;white-space:nowrap;opacity:0;pointer-events:none;transition:.12s;z-index:30}.collectionBrick:hover:after{opacity:1;transform:translateX(-50%) translateY(0)}@keyframes brickConnect{70%{opacity:1;transform:translateY(1px) scale(1.08)}100%{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.collectionBrick{animation:none;opacity:1;transform:none}}
.brickLegend{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 18px;align-content:start}.legendRow{display:flex;gap:9px;align-items:center;padding:4px 0}.legendSwatch{width:14px;height:14px;border-radius:3px;background:var(--brick);box-shadow:inset 0 0 0 1px rgba(0,0,0,.18)}.legendRow span:last-child{min-width:0}.legendRow b,.legendRow small{display:block}.legendRow b{font-size:11px;font-weight:600}.legendRow small{font-size:9px;color:#4a4349;margin-top:1px}
.portfolioHome .homeRanks{grid-template-columns:1fr 1fr;margin-bottom:18px}.portfolioHome .homeRanks .card{padding:20px 22px}.portfolioHome .homeRanks .cardhead b{font-size:15px;font-weight:600}.portfolioHome .homeRanks .cardhead span{color:#413b37}.portfolioHome .rankrow{border-top-color:rgba(20,20,20,.2)}.portfolioHome .rankname b,.portfolioHome .rankrow strong{font-weight:600}.portfolioHome .rankname small,.portfolioHome .ranknum{color:#4d4742}
.portfolioHome .homeSearchRail{width:100%;display:grid;grid-template-columns:minmax(180px,260px) minmax(0,1fr) auto;gap:12px;align-items:end;margin:16px 0 14px;background:transparent}.portfolioHome .homeSearchRail select{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.55);border-radius:999px;padding:10px 38px 10px 14px}.portfolioHome .homeSearchRail input.search{background:transparent;color:#fff;border:0;border-bottom:2px solid #fff;border-radius:0;padding:10px 2px;min-width:0}.portfolioHome .homeSearchRail input.search::placeholder{color:rgba(255,255,255,.55)}.portfolioHome .homeSearchRail .btn{background:#fff;color:#111;border-radius:999px;padding:11px 18px;font-weight:650}
.portfolioHome .homeFilterChips{width:100%;justify-content:space-between;gap:10px;padding:3px 0 8px;margin:0;overflow:auto}.portfolioHome .homeFilterChips .chip{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.48);font-weight:550;padding:8px 12px}.portfolioHome .homeFilterChips .chip.active{border:3px solid var(--chip,#fff);box-shadow:none;padding:6px 10px}.portfolioHome .sectiontitle{color:#fff}.portfolioHome .count{color:rgba(255,255,255,.65)}
.portfolioHome .gallery{gap:14px}.portfolioHome .fig{background:#111;border-width:7px;border-color:var(--theme);border-radius:20px;box-shadow:none}.portfolioHome .fig:hover{box-shadow:0 12px 30px rgba(0,0,0,.4);transform:translateY(-3px)}.portfolioHome .thumb{height:170px;padding:24px;background:#fff}.portfolioHome .thumb img{max-width:88%;max-height:88%}.portfolioHome .figbody{background:#111;color:#fff}.portfolioHome .name{font-weight:600}.portfolioHome .id,.portfolioHome .fig .muted{color:rgba(255,255,255,.6)}.portfolioHome .price{font-weight:600}.portfolioHome .roi{font-weight:500;color:#97d9ad}.portfolioHome .pager .secondary{background:transparent;color:#fff;border-color:rgba(255,255,255,.5)}.portfolioHome .pager .muted{color:rgba(255,255,255,.65)}
@media(max-width:1050px){.portfolioHome .homeMetrics{grid-template-columns:repeat(3,minmax(0,1fr))}.portfolioHome .collectionMapBody{grid-template-columns:1fr}.brickLegend{grid-template-columns:repeat(2,minmax(0,1fr))}.portfolioHome .homeRanks{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.portfolioHome .homeRanks{grid-template-columns:1fr}.collectionMapHead{display:block}.collectionMapNote{margin-top:6px}}

/* V8.12B unified acquisition flow */
.addPickupSingle{max-width:760px;margin:0 auto;padding:22px}.addPickupSingle h3{font-size:28px;font-weight:650;letter-spacing:-.025em;margin:4px 0 5px}.addPickupSingle>p{margin:0 0 16px}.addPickupSingle .idpreview{min-height:72px}.addPickupSingle .idpreview img{width:54px;height:54px}.addPickupSingle .btn.full{min-height:46px;font-size:14px}.addPickupSingle .researchSuggest{top:46px}

/* collection map 12A.1 */
@media(max-width:1350px){.collectionMapBody{grid-template-columns:minmax(0,1fr) 300px}.brickField{grid-template-rows:repeat(15,15px)}}
@media(max-width:1050px){.collectionMapBody{grid-template-columns:1fr}.brickLegend{grid-template-columns:repeat(4,minmax(0,1fr))}.brickField{grid-template-rows:repeat(18,15px)}}
@media(max-width:700px){.brickLegend{grid-template-columns:repeat(2,minmax(0,1fr))}.brickField{grid-template-rows:repeat(24,12px);grid-auto-columns:12px;gap:2px}.collectionBrick{width:12px;height:12px;flex-basis:12px}}


/* V8.12C final home polish */

/* Header / navigation */
.topbar{background:#0b0b0b;border-bottom:1px solid rgba(255,255,255,.14);color:#fff}
.toprow,.nav{max-width:none;padding-left:14px;padding-right:14px}
.brand{color:#fff}.brand span{color:#d8a5b7}
.sub,.userbar{color:rgba(255,255,255,.62)}
.topbar .btn.secondary{background:transparent;color:#fff;border-color:rgba(255,255,255,.42)}
.navbtn{background:transparent;color:#fff;border-color:rgba(255,255,255,.36);font-weight:600}
.navbtn.active{background:#fff;color:#111;border-color:#fff}

/* Equal outer gutters and widget spacing */
.main:has(.portfolioHome){max-width:none;margin:0;padding:14px 14px 60px;background:#0b0b0b}
.portfolioHome{margin:0;padding:0;min-height:calc(100vh - 120px)}

/* KPI row: always 3 columns */
.portfolioHome .homeMetrics{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px}
.portfolioHome .metric{min-width:0}
.portfolioHome .metric .value{font-size:clamp(26px,4.8vw,78px)}
@media(max-width:760px){
  .portfolioHome .homeMetrics{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .portfolioHome .metric{padding:14px 12px;min-height:150px}
  .portfolioHome .metric .label{font-size:9px}
  .portfolioHome .metric .value{font-size:clamp(22px,7vw,42px);margin-top:12px}
  .portfolioHome .metric .hint{font-size:9px;line-height:1.3}
}

/* Collection composition */
.collectionMapWhite{background:#fff!important;color:#111!important}
.collectionMapBody{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:26px;align-items:start;margin-top:18px}
.brickField{display:flex;align-items:flex-start;gap:7px;min-height:231px;overflow:hidden}
.themeBrickChunk{display:grid;grid-template-rows:repeat(13,15px);grid-auto-flow:column;grid-auto-columns:15px;gap:3px;align-content:start;flex:0 0 auto}
.brickLegend{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px 18px;align-content:start}
@media(max-width:1350px){
  .collectionMapBody{grid-template-columns:minmax(0,1fr) 300px}
  .themeBrickChunk{grid-template-rows:repeat(15,14px);grid-auto-columns:14px;gap:3px}
  .collectionBrick{width:14px;height:14px;flex-basis:14px}
}
@media(max-width:1050px){
  .collectionMapBody{grid-template-columns:1fr}
  .brickLegend{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .brickField{overflow-x:auto;padding-bottom:5px}
}
@media(max-width:700px){
  .themeBrickChunk{grid-template-rows:repeat(20,11px);grid-auto-columns:11px;gap:2px}
  .collectionBrick{width:11px;height:11px;flex-basis:11px}
}

/* Search / sort alignment */
.portfolioHome .homeSearchRail{width:100%;grid-template-columns:minmax(180px,260px) minmax(0,1fr) auto;gap:14px;align-items:center;padding:0 14px;margin:16px 0 14px}
.portfolioHome .homeSearchRail select,.portfolioHome .homeSearchRail input.search{align-self:center;margin:0}
@media(max-width:760px){
  .portfolioHome .homeSearchRail{grid-template-columns:minmax(135px,32%) minmax(0,1fr) auto;gap:9px;padding:0 8px}
  .portfolioHome .homeSearchRail select{min-width:0;width:100%;font-size:11px;padding-right:26px}
  .portfolioHome .homeSearchRail .btn{font-size:10px;padding:9px 10px}
}

/* Theme filter bar */
.portfolioHome .homeFilterChips{display:grid;grid-template-columns:repeat(9,minmax(max-content,1fr));align-items:center;justify-items:center;gap:10px;width:100%}
.portfolioHome .homeFilterChips .chip{width:max-content}
.portfolioHome .homeFilterChips .chip.active{border-width:3px;box-shadow:none}
@media(max-width:950px){.portfolioHome .homeFilterChips{display:flex;justify-content:space-between;overflow-x:auto}}

/* Gallery cards */
.portfolioHome .fig{background:#fff;border-width:8px;border-color:var(--theme)}
.portfolioHome .thumb{height:170px;padding:28px;background:#fff}
.portfolioHome .thumb img{max-width:84%;max-height:84%}
.portfolioHome .figbody{background:var(--theme);color:var(--themeText)}
.portfolioHome .figbody .tag{color:var(--themeText);background:rgba(255,255,255,.30);border:1px solid currentColor;font-weight:650}
.portfolioHome .figbody .name,.portfolioHome .figbody .price{color:var(--themeText)}
.portfolioHome .figbody .id,.portfolioHome .figbody .valueSource,.portfolioHome .figbody .roi{color:var(--themeText);opacity:.74}
.portfolioHome .figbody .roi{font-weight:650}


/* V8.13 Testing Candidate */

/* Wordmark uses KPI type treatment and is fully white */
.brand,.brand span{
  color:#fff!important;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  font-weight:500!important;
}

/* Universal home gutters */
.main:has(.portfolioHome){
  padding-left:14px!important;
  padding-right:14px!important;
}
.portfolioHome>*{
  max-width:100%;
}
.portfolioHome .homeMetrics,
.portfolioHome .collectionMap,
.portfolioHome .homeRanks,
.portfolioHome .homeUtilityGrid,
.portfolioHome .homeSearchRail,
.portfolioHome .homeFilterChips,
.portfolioHome>.sectiontitle,
.portfolioHome>.gallery,
.portfolioHome>.pager{
  margin-left:0!important;
  margin-right:0!important;
}

/* Collection composition: continuous packed field with legend beneath */
.collectionMapBody{display:block!important}
.brickField{
  display:grid!important;
  grid-template-rows:repeat(13,15px)!important;
  grid-auto-flow:column!important;
  grid-auto-columns:15px!important;
  gap:3px!important;
  width:100%;
  min-height:231px;
  justify-content:start;
  align-content:start;
  overflow-x:auto!important;
  overflow-y:visible!important;
  padding-bottom:4px;
}
.themeBrickChunk{display:contents!important}
.brickLegend{
  display:flex!important;
  flex-wrap:nowrap!important;
  align-items:center;
  justify-content:space-between;
  gap:16px!important;
  width:100%;
  margin-top:16px;
  overflow-x:auto;
  padding-bottom:3px;
}
.legendRow{flex:0 0 auto!important;white-space:nowrap}
@media(max-width:1350px){
  .brickField{grid-template-rows:repeat(15,14px)!important;grid-auto-columns:14px!important}
  .collectionBrick{width:14px!important;height:14px!important;flex-basis:14px!important}
}
@media(max-width:700px){
  .brickField{grid-template-rows:repeat(20,11px)!important;grid-auto-columns:11px!important;gap:2px!important}
  .collectionBrick{width:11px!important;height:11px!important;flex-basis:11px!important}
}

/* Rankings: three parallel widgets */
.portfolioHome .homeRanks{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:14px!important;
}
@media(max-width:950px){
  .portfolioHome .homeRanks{grid-template-columns:repeat(3,minmax(260px,1fr))!important;overflow-x:auto}
}

/* Add Figure + Figure Highlight bento row */
.homeUtilityGrid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
  margin-bottom:18px;
}
.homeAddWidget,.figureHighlight{
  padding:24px;
  border-radius:24px;
  min-height:430px;
}
.homeAddWidget h3,.figureHighlight h3{
  margin:2px 0 8px;
  font-size:28px;
  font-weight:500;
  letter-spacing:-.025em;
}
.widgetIntro{
  margin:0 0 16px;
  max-width:720px;
  font-size:12px;
  line-height:1.45;
}
.homePickupForm{display:grid;gap:10px}
.homePickupSearchWrap{position:relative}
.homePickupForm input,.homePickupForm textarea{
  width:100%;
  background:rgba(255,255,255,.72);
  border:1px solid rgba(20,20,20,.20);
}
.homePickupPreview{
  min-height:58px;
  padding:9px 11px;
  background:rgba(255,255,255,.45);
  border-radius:12px;
  display:flex;
  align-items:center;
  gap:10px;
  font-size:11px;
}
.homePickupPreview img{width:42px;height:42px;object-fit:contain;background:#fff;border-radius:8px}
.homePickupPreview span b,.homePickupPreview span small{display:block}
.homePickupPreview span small{margin-top:2px;opacity:.72}
.homePickupFields{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.homePickupButton{width:100%;background:#111;color:#fff}
.figureHighlight{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(180px,.8fr);
  gap:18px;
  align-items:center;
}
.figureHighlightCopy p{font-size:13px;line-height:1.55;max-width:640px}
.highlightId{font-size:11px;opacity:.68;margin-bottom:12px}
.highlightFacts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:18px 0}
.highlightFacts>div{background:rgba(255,255,255,.42);border-radius:12px;padding:10px}
.highlightFacts small,.highlightFacts b{display:block}
.highlightFacts small{font-size:9px;text-transform:uppercase;letter-spacing:.06em;opacity:.68}
.highlightFacts b{font-size:17px;margin-top:3px}
.figureHighlightImage{
  height:330px;
  background:#fff;
  border-radius:18px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:18px;
}
.figureHighlightImage img{height:100%;width:auto;max-width:100%;object-fit:contain}
@media(max-width:900px){
  .homeUtilityGrid{grid-template-columns:1fr 1fr}
  .homeAddWidget,.figureHighlight{padding:16px;min-height:390px}
  .figureHighlight{grid-template-columns:1fr}
  .figureHighlightImage{height:170px;grid-row:1}
  .homePickupFields{grid-template-columns:1fr}
}

/* Gallery image fit is height-driven */
.portfolioHome .thumb{
  padding:18px 24px!important;
}
.portfolioHome .thumb img{
  height:100%!important;
  width:auto!important;
  max-height:100%!important;
  max-width:100%!important;
  object-fit:contain!important;
}

/* Search rail now only has sort + search */
.portfolioHome .homeSearchRail{
  grid-template-columns:minmax(180px,260px) minmax(0,1fr)!important;
}
@media(max-width:760px){
  .portfolioHome .homeSearchRail{
    grid-template-columns:minmax(135px,32%) minmax(0,1fr)!important;
  }
}

/* V8.14 testing fixes */

/* Continuous collection grid; key below */
.collectionMapBody{display:block!important}
.brickField{
  display:grid!important;
  grid-template-rows:repeat(13,15px)!important;
  grid-auto-flow:column!important;
  grid-auto-columns:15px!important;
  gap:3px!important;
  width:100%!important;
  justify-content:start!important;
  align-content:start!important;
  overflow-x:auto!important;
  overflow-y:visible!important;
  min-height:231px!important;
}
.themeBrickChunk{display:contents!important}
.brickLegend{
  display:flex!important;
  flex-wrap:nowrap!important;
  justify-content:space-between!important;
  align-items:center!important;
  gap:14px!important;
  width:100%!important;
  margin-top:16px!important;
  overflow-x:auto!important;
  padding-bottom:4px;
}
.legendRow{flex:0 0 auto!important;white-space:nowrap!important}

/* 3 ranking widgets always visible */
.portfolioHome .homeRanks{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:14px!important;
  overflow:visible!important;
  width:100%!important;
}
.portfolioHome .homeRanks>.homeWidget{min-width:0!important}

/* Add Figure + Figure Highlight bento row */
.homeUtilityGrid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:14px 0 20px}
.homeAddWidget,.figureHighlight{padding:24px;border-radius:24px;min-height:430px}
.homeAddWidget h3,.figureHighlight h3{margin:2px 0 8px;font-size:28px;font-weight:500;letter-spacing:-.025em}
.widgetIntro{margin:0 0 16px;font-size:12px;line-height:1.45}
.homePickupForm{display:grid;gap:10px}
.homePickupForm input,.homePickupForm textarea{width:100%;background:rgba(255,255,255,.72);border:1px solid rgba(20,20,20,.20)}
.homePickupPreview{min-height:58px;padding:9px 11px;background:rgba(255,255,255,.45);border-radius:12px;display:flex;align-items:center;gap:10px;font-size:11px}
.homePickupPreview img{width:42px;height:42px;object-fit:contain;background:#fff;border-radius:8px}
.homePickupPreview span b,.homePickupPreview span small{display:block}
.homePickupFields{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.homePickupButton{width:100%;background:#111;color:#fff}
.figureHighlight{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(180px,.8fr);gap:18px;align-items:center}
.figureHighlightCopy p{font-size:13px;line-height:1.55}
.highlightId{font-size:11px;opacity:.68;margin-bottom:12px}
.highlightFacts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:18px 0}
.highlightFacts>div{background:rgba(255,255,255,.42);border-radius:12px;padding:10px}
.highlightFacts small,.highlightFacts b{display:block}.highlightFacts small{font-size:9px;text-transform:uppercase;letter-spacing:.06em;opacity:.68}.highlightFacts b{font-size:17px;margin-top:3px}
.figureHighlightImage{height:330px;background:#fff;border-radius:18px;display:flex;align-items:center;justify-content:center;padding:18px}
.figureHighlightImage img{height:100%;width:auto;max-width:100%;object-fit:contain}

/* Gallery controls immediately above gallery */
.portfolioHome .homeSearchRail{margin-top:20px!important;margin-bottom:12px!important;grid-template-columns:minmax(180px,260px) minmax(0,1fr)!important}
.portfolioHome .homeFilterChips{
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:center!important;
  align-items:center!important;
  gap:10px 14px!important;
  width:100%!important;
  margin-top:0!important;
  margin-bottom:18px!important;
  overflow:visible!important;
}
.portfolioHome .homeFilterChips .chip{flex:0 0 auto!important;width:auto!important}

/* Remove stray standalone Add Figure control */
#addHolding{display:none!important}

/* Gallery cards fill to theme-colored bottom */
.portfolioHome .fig{display:flex!important;flex-direction:column!important;overflow:hidden!important;background:var(--theme)!important}
.portfolioHome .thumb{flex:0 0 auto!important;padding:18px 24px!important}
.portfolioHome .thumb img{height:100%!important;width:auto!important;max-height:100%!important;max-width:100%!important;object-fit:contain!important}
.portfolioHome .figbody{flex:1 1 auto!important;display:flex!important;flex-direction:column!important;background:var(--theme)!important;min-height:0!important}
.portfolioHome .figbody .row{margin-top:auto!important}

/* Keep bento rows inside equal page gutters */
.main:has(.portfolioHome){padding-left:14px!important;padding-right:14px!important}
.portfolioHome .homeMetrics,.portfolioHome .collectionMap,.portfolioHome .homeRanks,.portfolioHome .homeUtilityGrid,.portfolioHome .homeSearchRail,.portfolioHome .homeFilterChips,.portfolioHome>.sectiontitle,.portfolioHome>.gallery,.portfolioHome>.pager{margin-left:0!important;margin-right:0!important;box-sizing:border-box}

@media(max-width:950px){
  .portfolioHome .homeRanks{grid-template-columns:repeat(3,minmax(220px,1fr))!important;overflow-x:auto!important}
  .homeUtilityGrid{grid-template-columns:1fr 1fr}
  .homeAddWidget,.figureHighlight{padding:16px}
}
@media(max-width:760px){
  .homePickupFields{grid-template-columns:1fr}
  .figureHighlight{grid-template-columns:1fr}
  .figureHighlightImage{height:180px;grid-row:1}
  .portfolioHome .homeSearchRail{grid-template-columns:minmax(135px,32%) minmax(0,1fr)!important}
}


/* V8.15 Figure Highlight editorial refinement */
.figureHighlight{
  grid-template-columns:minmax(0,1.1fr) minmax(260px,.9fr)!important;
  min-height:520px!important;
  align-items:stretch!important;
}
.figureHighlightCopy{
  min-height:100%;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  padding:4px 0;
}
.highlightTop{
  align-self:flex-start;
  padding-top:4px;
}
.highlightTop h3{
  margin-top:10px!important;
  margin-bottom:6px!important;
  font-size:clamp(30px,3vw,52px)!important;
  line-height:1.02;
}
.highlightBottom{
  align-self:stretch;
  padding-bottom:4px;
}
.highlightDescription{
  max-width:700px;
  font-size:14px!important;
  line-height:1.48!important;
  margin:0 0 14px!important;
}
.highlightContext{
  display:grid;
  grid-template-columns:1fr;
  gap:8px;
  margin:0 0 14px;
}
.highlightContext>div{
  background:rgba(255,255,255,.36);
  border-radius:12px;
  padding:10px 12px;
}
.highlightContext small{
  display:block;
  font-size:9px;
  letter-spacing:.08em;
  font-weight:800;
  opacity:.6;
  margin-bottom:3px;
}
.highlightContext b,.highlightContext span{
  font-size:11px;
  line-height:1.35;
}
.figureHighlightImage{
  height:auto!important;
  min-height:470px!important;
  align-self:stretch!important;
  padding:10px!important;
}
.figureHighlightImage img{
  height:100%!important;
  max-height:100%!important;
  width:auto!important;
  max-width:100%!important;
  object-fit:contain!important;
}
@media(max-width:900px){
  .figureHighlight{
    grid-template-columns:minmax(0,1fr) minmax(220px,.85fr)!important;
    min-height:470px!important;
  }
  .figureHighlightImage{min-height:420px!important}
  .highlightTop h3{font-size:clamp(26px,4vw,42px)!important}
}
@media(max-width:700px){
  .figureHighlight{grid-template-columns:1fr!important}
  .figureHighlightImage{min-height:260px!important;height:300px!important;grid-row:1}
  .figureHighlightCopy{gap:28px}
}


/* V8.16 layout refinements */

/* Responsive collection mosaic: no horizontal scroll; box grows vertically */
.brickField{
  display:grid!important;
  grid-template-columns:repeat(auto-fit, minmax(11px, 15px))!important;
  grid-auto-flow:row!important;
  grid-template-rows:none!important;
  grid-auto-rows:15px!important;
  gap:3px!important;
  width:100%!important;
  min-height:0!important;
  overflow:visible!important;
  justify-content:stretch!important;
  align-content:start!important;
}
.collectionBrick{
  width:100%!important;
  height:15px!important;
  min-width:0!important;
}
@media(max-width:1350px){
  .brickField{
    grid-template-columns:repeat(auto-fit,minmax(10px,14px))!important;
    grid-auto-rows:14px!important;
  }
  .collectionBrick{height:14px!important}
}
@media(max-width:700px){
  .brickField{
    grid-template-columns:repeat(auto-fit,minmax(8px,11px))!important;
    grid-auto-rows:11px!important;
    gap:2px!important;
  }
  .collectionBrick{height:11px!important}
}

/* Figure Highlight becomes a large-format gallery card */
.figureHighlight{
  display:flex!important;
  flex-direction:column!important;
  min-height:0!important;
  align-items:stretch!important;
}
.figureHighlightImage{
  order:1;
  width:100%!important;
  height:390px!important;
  min-height:390px!important;
  background:#fff!important;
  border-radius:18px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:16px!important;
  margin-bottom:18px!important;
}
.figureHighlightImage img{
  height:100%!important;
  width:auto!important;
  max-height:100%!important;
  max-width:100%!important;
  object-fit:contain!important;
}
.figureHighlightCopy{
  order:2;
  display:block!important;
  min-height:0!important;
  padding:0!important;
}
.figureHighlightCopy h3{
  margin:8px 0 4px!important;
  font-size:clamp(28px,2.5vw,44px)!important;
  line-height:1.03!important;
}
.highlightId{margin-bottom:14px!important}
.highlightDescription{margin-bottom:14px!important}
.highlightContext{margin-bottom:14px!important}
.highlightFacts{margin:14px 0!important}
@media(max-width:900px){
  .figureHighlightImage{height:320px!important;min-height:320px!important}
}
@media(max-width:700px){
  .figureHighlightImage{height:260px!important;min-height:260px!important}
}

/* Gallery card meta pill: theme left, BrickLink ID right */
.portfolioHome .figMetaPill{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  width:100%!important;
  box-sizing:border-box!important;
  gap:12px!important;
  padding-left:12px!important;
  padding-right:12px!important;
}
.portfolioHome .figMetaPill span{
  font-size:inherit!important;
  font-weight:inherit!important;
}
.portfolioHome .qtyLine{
  font-size:11px;
  color:var(--themeText);
  opacity:.72;
  margin-top:auto;
  margin-bottom:4px;
}
.portfolioHome .figbody .row{
  margin-top:0!important;
}

/* Extra breathing room before gallery controls */
.portfolioHome .homeSearchRail{
  margin-top:34px!important;
  margin-bottom:20px!important;
}
.portfolioHome .homeFilterChips{
  margin-top:0!important;
  margin-bottom:18px!important;
}


/* V8.17 compact Figure Highlight + LEGO brick map */

/* Match Figure Highlight height more closely to Add Figure */
.homeUtilityGrid{align-items:stretch!important}
.homeAddWidget,.figureHighlight{min-height:0!important;height:auto!important}
.figureHighlight{display:flex!important;flex-direction:column!important}
.figureHighlightImage{
  height:260px!important;
  min-height:260px!important;
  margin-bottom:14px!important;
  padding:10px!important;
}
.figureHighlightCopy{
  display:flex!important;
  flex-direction:column!important;
  gap:0!important;
}
.figureHighlightCopy h3{
  margin:7px 0 3px!important;
  font-size:clamp(26px,2vw,38px)!important;
}
.highlightId{margin-bottom:10px!important}
.highlightSummary,.highlightDetail{
  font-size:12px!important;
  line-height:1.45!important;
  margin:0 0 8px!important;
}
.highlightDetail{opacity:.78}
.figureHighlight .highlightFacts,
.figureHighlight .highlightContext{display:none!important}
.figureHighlight .highlightOpen{margin-top:4px!important}

/* Collection map: 3:1 brick-like rectangles, touching edge-to-edge */
.brickField{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(18px,1fr))!important;
  grid-auto-flow:row!important;
  grid-template-rows:none!important;
  grid-auto-rows:6px!important;
  gap:0!important;
  width:100%!important;
  overflow:visible!important;
  min-height:0!important;
}
.collectionBrick{
  width:100%!important;
  height:6px!important;
  min-width:0!important;
  border-radius:1px!important;
  border:0!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.28),
    inset 0 -1px 0 rgba(0,0,0,.10)!important;
  transform-origin:center bottom;
  opacity:0;
  animation:brickDropSnap 620ms cubic-bezier(.18,.78,.24,1.12) forwards!important;
  animation-delay:calc(var(--i) * 5ms)!important;
}

/* Clear fall -> contact -> snap/settle */
@keyframes brickDropSnap{
  0%{opacity:0;transform:translateY(-42px) scaleY(.94)}
  60%{opacity:1;transform:translateY(2px) scaleY(1.08)}
  78%{transform:translateY(-2px) scaleY(.96)}
  90%{transform:translateY(1px) scaleY(1.03)}
  100%{opacity:1;transform:translateY(0) scaleY(1)}
}

@media(max-width:1350px){
  .brickField{
    grid-template-columns:repeat(auto-fit,minmax(15px,1fr))!important;
    grid-auto-rows:5px!important;
  }
  .collectionBrick{height:5px!important}
}
@media(max-width:700px){
  .brickField{
    grid-template-columns:repeat(auto-fit,minmax(12px,1fr))!important;
    grid-auto-rows:4px!important;
  }
  .collectionBrick{height:4px!important}
}


/* V8.18 collection map scale + column build */

/* Balanced vertical breathing room around the brick field */
.collectionMapHead{
  margin-bottom:16px!important;
}
.brickField{
  margin-top:16px!important;
  margin-bottom:16px!important;
}

/* Desktop target: ~80 bricks across for stronger presence */
.brickField{
  display:grid!important;
  grid-template-columns:repeat(80,minmax(0,1fr))!important;
  grid-auto-rows:auto!important;
  gap:0!important;
  width:100%!important;
}
.collectionBrick{
  width:100%!important;
  aspect-ratio:3 / 1!important;
  height:auto!important;
  min-width:0!important;
  min-height:0!important;
  border-radius:1px!important;
  animation-name:brickColumnDropSnap!important;
  animation-duration:620ms!important;
  animation-timing-function:cubic-bezier(.18,.78,.24,1.12)!important;
  animation-fill-mode:forwards!important;
  /* Column dominates timing; row adds a subtle vertical wave */
  animation-delay:calc((var(--col) * 14ms) + (var(--row) * 7ms))!important;
}

@keyframes brickColumnDropSnap{
  0%{
    opacity:0;
    transform:translateY(-38px) scaleY(.92);
  }
  58%{
    opacity:1;
    transform:translateY(2px) scaleY(1.09);
  }
  76%{
    transform:translateY(-2px) scaleY(.96);
  }
  90%{
    transform:translateY(1px) scaleY(1.03);
  }
  100%{
    opacity:1;
    transform:translateY(0) scaleY(1);
  }
}

/* Maintain usable brick size as the page narrows */
@media(max-width:1250px){
  .brickField{grid-template-columns:repeat(64,minmax(0,1fr))!important}
}
@media(max-width:850px){
  .brickField{grid-template-columns:repeat(48,minmax(0,1fr))!important}
}
@media(max-width:600px){
  .brickField{grid-template-columns:repeat(36,minmax(0,1fr))!important}
}


/* V8.19 brick-map timing refinement
   - slower build
   - clear top-to-bottom order within each column
   - columns advance left-to-right with slight overlap */
.collectionBrick{
  animation-duration: 880ms !important;
  animation-delay: calc((var(--col) * 45ms) + (var(--row) * 16ms)) !important;
}
@keyframes brickColumnDropSnap{
  0%{
    opacity:0;
    transform:translateY(-52px) scaleY(.88);
  }
  52%{
    opacity:1;
    transform:translateY(4px) scaleY(1.10);
  }
  72%{
    transform:translateY(-2px) scaleY(.97);
  }
  88%{
    transform:translateY(1px) scaleY(1.02);
  }
  100%{
    opacity:1;
    transform:translateY(0) scaleY(1);
  }
}


/* V8.20 final palette + larger collection stack */
:root{
  --dbc-blue:#0E78BE;
  --dbc-offwhite:#F2EFE8;
  --dbc-sky:#A9D5EC;
  --dbc-green:#129A54;
  --dbc-mint:#AEE7D9;
  --dbc-terra:#BF5A43;
  --dbc-pink:#F2A6CF;
  --dbc-orange:#F25832;
  --dbc-yellow:#F5D84A;
  --dbc-black:#0B0B0B;
}

/* Preserve global black canvas + white collection box */
body,.portfolioHome,.main:has(.portfolioHome){background:var(--dbc-black)!important}
.collectionMapWhite{background:#fff!important;color:#111!important}

/* Bento palette */
.widgetLavender{background:var(--dbc-sky)!important;color:#111!important}
.widgetMint{background:var(--dbc-mint)!important;color:#111!important}
.widgetYellow{background:var(--dbc-yellow)!important;color:#111!important}
.homeAddWidget{background:var(--dbc-sky)!important;color:#111!important}
.figureHighlight{background:var(--dbc-mint)!important;color:#111!important}

/* Supporting UI accents */
.textlink,.highlightOpen{color:#7A2346!important}
.coverageBadge{background:rgba(255,255,255,.55)!important;color:#111!important}

/* Theme palette remap */
/* Existing theme colors are overridden at the card/swatch level via CSS variables. */
.portfolioHome .fig[style*="--theme:#f4c400"],
.portfolioHome .fig[style*="--theme:#f2c300"]{--theme:var(--dbc-yellow)!important;--themeText:#111!important}

/* Collection stack: target ~28 columns / ~30 rows at max width */
.brickField{
  grid-template-columns:repeat(28,minmax(0,1fr))!important;
  grid-auto-rows:auto!important;
  width:100%!important;
  gap:0!important;
  overflow:visible!important;
}
.collectionBrick{
  aspect-ratio:3 / 1!important;
  width:100%!important;
  height:auto!important;
}

/* Responsive step-down keeps bricks visually substantial */
@media(max-width:1500px){.brickField{grid-template-columns:repeat(26,minmax(0,1fr))!important}}
@media(max-width:1200px){.brickField{grid-template-columns:repeat(22,minmax(0,1fr))!important}}
@media(max-width:900px){.brickField{grid-template-columns:repeat(18,minmax(0,1fr))!important}}
@media(max-width:650px){.brickField{grid-template-columns:repeat(14,minmax(0,1fr))!important}}

/* Re-map gallery body colors to new palette by theme name classes/inline theme colors using more specific selectors */
.portfolioHome .figbody,.portfolioHome .fig{transition:background-color .15s,border-color .15s}

/* Theme chips/key swatches continue to inherit themeColor() output; these CSS mappings harmonize the dominant legacy colors */
[style*="#f4c400"],[style*="#f2c300"]{--brick:var(--dbc-yellow)!important;--chip:var(--dbc-yellow)!important}
[style*="#4b6fff"]{--brick:var(--dbc-blue)!important;--chip:var(--dbc-blue)!important}
[style*="#61ccd3"]{--brick:var(--dbc-sky)!important;--chip:var(--dbc-sky)!important}
[style*="#00b85a"]{--brick:var(--dbc-green)!important;--chip:var(--dbc-green)!important}
[style*="#ff7100"]{--brick:var(--dbc-orange)!important;--chip:var(--dbc-orange)!important}
[style*="#ed3b13"]{--brick:var(--dbc-terra)!important;--chip:var(--dbc-terra)!important}
[style*="#a84be0"]{--brick:var(--dbc-pink)!important;--chip:var(--dbc-pink)!important}
[style*="#ef4d82"]{--brick:var(--dbc-pink)!important;--chip:var(--dbc-pink)!important}


/* V8.21 Vasakronan palette + true column-major brick assembly */
:root{
  --vasa-yellow:#FCC010;
  --vasa-orange:#F4971B;
  --vasa-red:#E9473A;
  --vasa-wine:#CD2E55;
  --vasa-pink:#F6BCD0;
  --vasa-grey:#DEDCDD;
  --vasa-greygreen:#9DBFAE;
  --vasa-green:#8DC04E;
  --vasa-forest:#13955F;
  --vasa-darkgreen:#335F4B;
  --vasa-steel:#627E8B;
  --vasa-darkblue:#4153A1;
  --vasa-blue:#438ECC;
  --vasa-turquoise:#1EB8D1;
  --vasa-lake:#088EA7;
}

/* Brighter bento accents while preserving black canvas + white composition card */
body,.portfolioHome,.main:has(.portfolioHome){background:#0B0B0B!important}
.collectionMapWhite{background:#fff!important;color:#111!important}
.widgetLavender,.homeAddWidget{background:var(--vasa-blue)!important;color:#fff!important}
.widgetMint,.figureHighlight{background:var(--vasa-greygreen)!important;color:#111!important}
.widgetYellow{background:var(--vasa-yellow)!important;color:#111!important}
.widgetPurple{background:var(--vasa-wine)!important;color:#fff!important}
.textlink,.highlightOpen{color:var(--vasa-wine)!important}

/* True column-major physical stack.
   26 rows => 813 figures resolve to ~32 columns at maximum desktop width. */
.brickField{
  display:grid!important;
  grid-template-rows:repeat(26,auto)!important;
  grid-template-columns:none!important;
  grid-auto-flow:column!important;
  grid-auto-columns:minmax(0,1fr)!important;
  gap:0!important;
  width:100%!important;
  min-height:0!important;
  overflow:visible!important;
  justify-content:stretch!important;
  align-content:start!important;
}
.collectionBrick{
  width:100%!important;
  height:auto!important;
  aspect-ratio:3 / 1!important;
  min-width:0!important;
  min-height:0!important;
  border:0!important;
  border-radius:1px!important;
  opacity:0;
  transform-origin:center bottom;
  animation:brickTrueStack 720ms cubic-bezier(.16,.80,.22,1.08) forwards!important;
  /* One brick at a time, strictly in DOM order: top-to-bottom, then next column. */
  animation-delay:calc(var(--i) * 22ms)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.24),inset 0 -1px 0 rgba(0,0,0,.10)!important;
}
@keyframes brickTrueStack{
  0%{opacity:0;transform:translateY(-34px) scaleY(.90)}
  58%{opacity:1;transform:translateY(2px) scaleY(1.08)}
  78%{transform:translateY(-1px) scaleY(.97)}
  91%{transform:translateY(.5px) scaleY(1.02)}
  100%{opacity:1;transform:translateY(0) scaleY(1)}
}

/* Keep roughly the same visual footprint as width decreases by adding rows, not shrinking into hairlines. */
@media(max-width:1500px){.brickField{grid-template-rows:repeat(30,auto)!important}}
@media(max-width:1200px){.brickField{grid-template-rows:repeat(34,auto)!important}}
@media(max-width:900px){.brickField{grid-template-rows:repeat(40,auto)!important}}
@media(max-width:650px){.brickField{grid-template-rows:repeat(48,auto)!important}}


/* V8.22 brick animation speed refinement */
/* Same column-major sequence and snap motion, exactly 2x faster. */
.collectionBrick{
  animation-duration:440ms!important;
  animation-delay:calc((var(--col) * 22.5ms) + (var(--row) * 8ms))!important;
}

/* V8.23 collection footprint refinement
   Keep V8.22 animation speed, but reduce brick size so the full stack
   fits the intended max-width bento footprint. */
.brickField{
  grid-template-rows:repeat(21, auto)!important;
  grid-auto-flow:column!important;
  grid-auto-columns:minmax(0,1fr)!important;
  grid-template-columns:none!important;
  width:100%!important;
  max-height:340px!important;
  overflow:hidden!important;
}
.collectionBrick{
  width:100%!important;
  aspect-ratio:3 / 1!important;
  height:auto!important;
}

/* ~40 columns / ~21 rows at max width for ~800 figures */
@media(min-width:1251px){
  .brickField{
    grid-template-rows:repeat(21, auto)!important;
  }
}
@media(max-width:1250px){
  .brickField{
    grid-template-rows:repeat(24, auto)!important;
    max-height:none!important;
  }
}
@media(max-width:850px){
  .brickField{
    grid-template-rows:repeat(28, auto)!important;
  }
}
@media(max-width:600px){
  .brickField{
    grid-template-rows:repeat(34, auto)!important;
  }
}

/* V8.24 medium brick animation pacing
   Fixes the broken V8.22/V8.23 stagger override by using --i,
   which is present on every brick. Keeps strict DOM-order stacking. */
.collectionBrick{
  animation-duration:560ms!important;
  animation-delay:calc(var(--i) * 10ms)!important;
}


/* DAY 4 — unified system */
#view:not(.portfolioHome){background:#0b0b0b;color:#fff;min-height:calc(100vh - 130px);padding:18px 14px 60px}
#view:not(.portfolioHome) .sectiontitle{color:#fff}
#view:not(.portfolioHome) .card,
.day4Bento{
  border:0!important;
  border-radius:24px!important;
  background:#F6BCD0;
  color:#111;
  box-shadow:none!important;
}
#view:not(.portfolioHome) .card:nth-of-type(3n+1){background:#A9D5EC}
#view:not(.portfolioHome) .card:nth-of-type(3n+2){background:#9DBFAE}
#view:not(.portfolioHome) .card:nth-of-type(3n){background:#FCC010}
#view:not(.portfolioHome) .muted{color:rgba(20,20,20,.62)}
#view:not(.portfolioHome) .toolbar{background:transparent;border:0}
#view:not(.portfolioHome) input,
#view:not(.portfolioHome) textarea,
#view:not(.portfolioHome) select{background:#fff;color:#111;border-color:rgba(0,0,0,.18)}
#view:not(.portfolioHome) .empty{background:#151515;color:#cfcfcf;border:1px solid #333;border-radius:20px}
.day4Bento{padding:22px;margin-bottom:18px}
.opportunitySection{background:#A9D5EC}
.watchManager{background:#9DBFAE}
.day4Opportunity{background:#fff!important;color:#111!important;border:6px solid var(--theme)!important}
.watchListTabs{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}
.watchListTabs .chip{background:rgba(255,255,255,.48);border:1px solid rgba(0,0,0,.28);color:#111}
.watchListTabs .chip.active{border:3px solid #111}
.watchListTabs small{opacity:.65;margin-left:4px}
.watchListHeader{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin:8px 0 14px}
.watchListHeader h3{font-size:30px;margin:0 0 4px;font-weight:500}
.watchListHeader p{margin:0;opacity:.7}
.watchRule{background:rgba(255,255,255,.42);padding:12px 16px;border-radius:16px;min-width:160px}
.watchRule small,.watchRule b,.watchRule span{display:block}.watchRule b{font-size:30px}.watchRule span{font-size:10px}
.watchTools{display:grid;grid-template-columns:1.3fr .7fr;gap:12px;margin:14px 0 18px}
.day4WatchGrid{grid-template-columns:repeat(3,minmax(0,1fr))}
.day4WatchCard{background:#fff!important;color:#111!important;border:0!important}
.promotionHit{background:#FCC010;color:#111;border-radius:10px;padding:8px 10px;font-weight:700;font-size:11px;margin:8px 0}
.researchToolGrid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:18px}
.researchToolCard{margin:0;min-height:420px}
.valueCalc{background:#438ECC;color:#fff}
.rarityCalc{background:#8DC04E;color:#111}
.researchToolCard h2,.marketIntroCopy h2{font-size:30px;font-weight:500;margin:4px 0 8px}
.researchToolCard p{font-size:12px;line-height:1.45}
.researchToolCard textarea,.researchToolCard input{width:100%;margin:8px 0}
.toolToggle{display:flex;gap:8px;margin:10px 0}
.toolToggle .chip{background:transparent;color:inherit;border:1px solid currentColor}
.toolToggle .chip.active{background:#fff;color:#111;border-color:#fff}
.toolResult{margin-top:14px}
.calcTotal{background:rgba(255,255,255,.18);border-radius:14px;padding:12px;margin-bottom:8px}
.calcTotal small,.calcTotal b,.calcTotal span{display:block}.calcTotal b{font-size:34px}.calcTotal span{font-size:10px;opacity:.75}
.calcRows{max-height:220px;overflow:auto;background:rgba(255,255,255,.12);border-radius:14px}
.calcRow{display:flex;justify-content:space-between;gap:12px;padding:9px 11px;border-bottom:1px solid rgba(255,255,255,.2)}
.calcRow span b,.calcRow span small{display:block}.calcRow small{opacity:.7}
.rarityResult{display:grid;grid-template-columns:140px 1fr;gap:16px;align-items:center;background:rgba(255,255,255,.35);border-radius:16px;padding:14px}
.rarityScore{text-align:center}.rarityScore b{font-size:58px;line-height:1}.rarityScore span{font-size:16px}.rarityScore em{display:block;font-style:normal;font-weight:700;margin-top:5px}
.rarityBreakdown{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:10px 0}.rarityBreakdown span{background:rgba(255,255,255,.42);padding:7px;border-radius:9px;font-size:10px}.rarityBreakdown b{display:block;font-size:18px}
.toolPending{background:rgba(255,255,255,.35);padding:14px;border-radius:14px}.toolPending b,.toolPending span{display:block}.toolPending span{font-size:11px;margin-top:4px}
.day4FormCard{padding:22px}
@media(max-width:1000px){.day4WatchGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.researchToolGrid{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.watchTools,.researchToolGrid{grid-template-columns:1fr}.day4WatchGrid{grid-template-columns:1fr}.watchListHeader{display:block}.watchRule{margin-top:10px}.rarityResult{grid-template-columns:1fr}}

/* V9.1 Portfolio Figures + Parts */
.portfolioSplit{font-size:11px;font-weight:650;opacity:.72;margin-top:4px}
.portfolioModeRow{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:24px 14px 8px}
.portfolioModeSwitch{display:inline-flex;background:#151515;border:1px solid #2b2b2b;border-radius:999px;padding:4px;gap:4px}
.portfolioModeSwitch button{border:0;background:transparent;color:#aaa;border-radius:999px;padding:9px 15px;font-weight:700;cursor:pointer}
.portfolioModeSwitch button.active{background:#fff;color:#111}
.portfolioModeSwitch span{opacity:.55;margin-left:5px;font-size:10px}
.importPartsBtn{white-space:nowrap}
.portfolioSubhead{font-size:11px;opacity:.55;margin-top:2px}
.partColorField{display:grid;grid-template-columns:1fr 160px;gap:10px;margin-top:8px}
.partColorField.hidden{display:none}
.partColorName{font-size:11px;opacity:.68;margin-top:-2px;margin-bottom:4px}
.partCard .thumb img{object-fit:contain}
.partDetailHero{display:grid;grid-template-columns:180px 1fr;gap:18px;align-items:center;margin-bottom:18px}
.partDetailHero img{width:180px;height:180px;object-fit:contain;background:#fff;border-radius:18px}
.holdingrow{display:flex;justify-content:space-between;gap:14px;padding:9px 0;border-bottom:1px solid rgba(0,0,0,.12)}
.brickHoverCard{position:fixed;z-index:99999;display:flex;align-items:center;gap:10px;max-width:250px;min-width:140px;padding:8px 10px;background:#111;color:#fff;border-radius:12px;box-shadow:0 12px 30px rgba(0,0,0,.38);opacity:0;pointer-events:none;transform:translateY(4px);transition:opacity .08s ease,transform .08s ease}
.brickHoverCard.show{opacity:1;transform:none}
.brickHoverCard img{width:46px;height:46px;object-fit:contain;background:#fff;border-radius:8px;flex:0 0 46px}
.brickHoverCard span{font-size:11px;line-height:1.25;font-weight:700}
.collectionBrick:after{display:none!important}
@media(max-width:700px){.portfolioModeRow{align-items:stretch;flex-direction:column}.portfolioModeSwitch{width:max-content}.partColorField{grid-template-columns:1fr}.partDetailHero{grid-template-columns:110px 1fr}.partDetailHero img{width:110px;height:110px}}

/* V9.2 Portfolio polish */
.portfolioGalleryTitle{margin-top:28px!important;margin-bottom:8px!important}
.portfolioGalleryTitle + .portfolioModeRow{margin-top:8px!important}
.clickableHighlight{cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,filter .16s ease}
.clickableHighlight:hover{transform:translateY(-2px);filter:brightness(1.025);box-shadow:0 10px 26px rgba(0,0,0,.18)!important}
.clickableHighlight:focus-visible{outline:3px solid #fff;outline-offset:4px}
.partPending .thumb{position:relative;background:#f5f2ec!important}
.partPending .thumb.imagePending:after{content:'Image pending';position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#777;font-size:11px;font-weight:700}
.partPending .name{opacity:.72}
.partHoldingsCard .cardhead>div{display:flex;flex-direction:column;gap:3px}
.partHoldingsCard .cardhead small{font-size:10px;opacity:.6;font-weight:500}
.editableHolding{align-items:center}
.holdingCost{display:flex;align-items:center;gap:8px;min-width:190px;justify-content:flex-end}
.holdingCost span{font-size:10px;opacity:.62;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.holdingCost input{width:105px!important;margin:0!important;padding:8px 9px!important;background:#fff!important;color:#111!important;border:1px solid rgba(0,0,0,.18)!important;border-radius:10px!important}
.partCostActions{display:flex;align-items:center;gap:10px;padding-top:14px}
@media(max-width:700px){.editableHolding{align-items:flex-start;flex-direction:column}.holdingCost{width:100%;justify-content:space-between}.holdingCost input{width:130px!important}}

/* V9.4 Opportunities + Watchlist + universal dossier */
.portfolioGalleryHeader{align-items:center!important}
.portfolioGalleryHeader .portfolioModeSwitch{margin-left:auto}

.opportunitiesTitle{margin:6px 0 18px!important}
.opportunitiesTitle h2,.watchSectionTitle h2,.portfolioGalleryHeader h2{font-size:34px!important;font-weight:700;letter-spacing:-.03em;color:#fff}
.compactOpportunityGrid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-bottom:34px}
.marketOpportunityCard{background:#fff;color:#111;border:4px solid var(--theme,#627E8B);border-radius:20px;overflow:hidden;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease;min-width:0}
.marketOpportunityCard:hover{transform:translateY(-3px);box-shadow:0 12px 30px rgba(0,0,0,.28)}
.marketOpportunityImage{height:190px;background:#fff;display:flex;align-items:center;justify-content:center;padding:16px}
.marketOpportunityImage img{max-width:100%;max-height:100%;object-fit:contain}
.marketOpportunityBody{padding:13px 14px 16px}
.oppCompactTop{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:10px;margin-bottom:5px}
.oppCompactTop .tag{margin:0}
.marketOpportunityBody h3{font-size:17px;line-height:1.18;margin:6px 0 3px;min-height:40px}
.oppCompactPrices{display:flex;align-items:baseline;gap:8px;margin-top:13px}
.oppCompactPrices strong{font-size:24px}.oppCompactPrices span{font-size:10px;color:#777}
.oppActionWord{margin-top:11px;font-size:12px;font-weight:950;letter-spacing:.05em;text-transform:uppercase;color:#111}

.watchSectionTitle{margin:10px 0 10px!important}
.watchManager{background:#13955F!important;color:#fff!important;padding:20px!important}
.watchManager .muted,.watchManager p{color:rgba(255,255,255,.75)!important}
.watchManagerTop{display:flex;align-items:center;justify-content:space-between;gap:12px}
.watchManager .watchListTabs{margin:0;display:flex;gap:8px;flex-wrap:wrap}
.watchManager .watchListTabs .chip{background:rgba(255,255,255,.22);border:1px solid rgba(255,255,255,.55);color:#fff}
.watchManager .watchListTabs .chip.active{background:#fff;color:#111;border:3px solid #111}
.watchManager .btn{background:#111;color:#fff}
.watchListHeader{margin:18px 0 14px}
.watchListHeader h3{color:#fff}
.watchRule{background:rgba(255,255,255,.78);color:#111}
.watchToolsSingle{max-width:620px;margin:10px 0 18px}
.watchToolsSingle input{width:100%;background:#fff!important;color:#111!important}
.compactWatchGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.compactWatchCard{background:#fff!important;color:#111!important;border:0!important;border-top:5px solid var(--theme)!important;border-radius:18px;padding:12px;min-height:0}
.watchIdentity{display:grid;grid-template-columns:62px 1fr;gap:10px;align-items:center}
.watchIdentity img{width:62px;height:62px;object-fit:contain;background:#fff;border-radius:10px}
.watchIdentity h3{font-size:15px;line-height:1.15;margin:1px 0 3px}.watchIdentity .tag{margin:0 0 3px}
.compactWatchMetrics{display:flex;gap:14px;align-items:center;margin:9px 0 2px;padding:8px 9px;background:#f5f1ec;border-radius:10px}
.compactWatchMetrics span small,.compactWatchMetrics span b{display:block}.compactWatchMetrics small{font-size:8px;letter-spacing:.07em;text-transform:uppercase;color:#777}.compactWatchMetrics b{font-size:14px}
.compactWatchMetrics em{margin-left:auto;background:#FCC010;color:#111;border-radius:999px;padding:4px 7px;font-size:8px;font-style:normal;font-weight:900;text-transform:uppercase}
.watchThesis{font-size:10px!important;line-height:1.35;margin:8px 0 0!important;color:#666!important;min-height:0!important}
.compactWatchActions{margin-top:9px!important}.compactWatchActions .btn{padding:8px 10px;font-size:10px}.compactWatchActions .secondary{background:#fff!important;color:#111!important}

/* one canonical, long-form figure dossier */
.modalbox:has(.universalDossier){width:min(1180px,100%);height:min(900px,calc(100vh - 32px));max-height:min(900px,calc(100vh - 32px))}
.universalDossier{color:#111}
.dossierHero{display:grid;grid-template-columns:minmax(260px,360px) 1fr;gap:28px;align-items:start}
.dossierImage{height:360px;background:#fff;border:4px solid var(--theme,#627E8B);border-radius:20px;display:flex;align-items:center;justify-content:center;padding:22px}
.dossierImage img{max-width:100%;max-height:100%;object-fit:contain}
.dossierHeroCopy h1{font-size:34px;line-height:1.06;margin:7px 0 6px;letter-spacing:-.03em}
.dossierId{color:#777;font-size:14px;margin-bottom:16px}
.dossierPrimaryMetrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.dossierPrimaryMetrics>div,.dossierFacts>div,.dossierReadGrid>div{background:#f5f1ec;border-radius:12px;padding:11px}
.dossierPrimaryMetrics small,.dossierFacts small,.dossierReadGrid small{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.07em;color:#777}
.dossierPrimaryMetrics b,.dossierFacts b,.dossierReadGrid b{display:block;margin-top:3px}
.dossierPrimaryMetrics b{font-size:20px}
.dossierActionWord{font-size:22px;font-weight:950;letter-spacing:.04em;margin-top:16px;text-transform:uppercase}
.dossierHeroActions{margin-top:12px!important}
.dossierSection{margin-top:26px;padding-top:20px;border-top:1px solid #ded6ce}
.dossierSection h2{font-size:20px;margin:0 0 12px}
.dossierSectionHead{display:flex;align-items:end;justify-content:space-between;gap:12px}.dossierSectionHead span{font-size:10px;color:#777}
.dossierFacts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.dossierChart .chartCard{margin:0!important;background:#fff!important;border:1px solid #ded6ce!important}
.dossierTwoCol{display:grid;grid-template-columns:1fr 1fr;gap:18px}.dossierTwoCol .dossierSection{min-width:0}
.dossierReadGrid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.dossierSection p{font-size:12px;line-height:1.55;color:#615b56}
.holdingRows{margin-top:12px}.holdingRow{display:flex;justify-content:space-between;gap:14px;padding:9px 0;border-bottom:1px solid #e8e0d8;font-size:11px}
.relatedVariants{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}.relatedVariants button{border:1px solid #ded6ce;border-radius:12px;background:#fff;padding:8px;text-align:left}.relatedVariants img{width:100%;height:100px;object-fit:contain}.relatedVariants span,.relatedVariants small{display:block}.relatedVariants span{font-size:10px;font-weight:800;line-height:1.2}.relatedVariants small{font-size:9px;color:#777;margin-top:3px}

@media(max-width:1200px){.compactOpportunityGrid{grid-template-columns:repeat(4,minmax(0,1fr))}.compactWatchGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.compactOpportunityGrid{grid-template-columns:repeat(3,minmax(0,1fr))}.dossierHero{grid-template-columns:240px 1fr}.dossierImage{height:260px}.dossierFacts{grid-template-columns:repeat(2,minmax(0,1fr))}.relatedVariants{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.compactOpportunityGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.compactWatchGrid{grid-template-columns:1fr}.watchManagerTop{align-items:flex-start;flex-direction:column}.dossierHero{grid-template-columns:1fr}.dossierImage{height:280px}.dossierPrimaryMetrics{grid-template-columns:1fr 1fr}.dossierTwoCol{grid-template-columns:1fr}.relatedVariants{grid-template-columns:repeat(2,minmax(0,1fr))}.portfolioGalleryHeader{align-items:flex-start!important}.portfolioGalleryHeader .portfolioModeSwitch{margin-left:0}}

/* V9.4.1 Watchlist table redesign */
.watchTableWrap{background:#fff;border-radius:18px;overflow:hidden;border:1px solid rgba(0,0,0,.12)}
.watchTableHeader,.watchTableRow{display:grid;grid-template-columns:minmax(300px,2.2fr) minmax(100px,.7fr) minmax(100px,.7fr) minmax(110px,.8fr) minmax(180px,1.35fr) auto;align-items:center;gap:12px}
.watchTableHeader{padding:9px 14px;background:rgba(0,0,0,.045);font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:rgba(0,0,0,.55)}
.watchTableRow{position:relative;padding:11px 14px;background:#fff;border-top:1px solid rgba(0,0,0,.1);cursor:pointer;transition:background .12s ease}
.watchTableRow:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--theme)}
.watchTableRow:hover{background:#faf8f4}
.watchRowFigure{display:flex;align-items:center;gap:11px;min-width:0}
.watchRowFigure img{width:48px;height:48px;object-fit:contain;background:#fff;border-radius:9px;flex:0 0 auto}
.watchRowFigure>div{min-width:0}.watchRowFigure .tag{margin:0 0 4px;padding:3px 6px;font-size:8px}.watchRowFigure b,.watchRowFigure small{display:block}.watchRowFigure b{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.watchRowFigure small{font-size:9px;color:#6f6f6f;margin-top:2px}
.watchCell small{display:none}.watchCell b{display:block;font-size:12px}.watchCell em{display:inline-block;margin-top:3px;font-style:normal;font-size:8px;font-weight:900;text-transform:uppercase;background:#FCC010;border-radius:999px;padding:3px 6px}
.watchNote{min-width:0}.watchNote span{display:block;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#444}
.watchRowActions{display:flex;justify-content:flex-end}.watchRowActions .btn{padding:8px 11px;font-size:10px;white-space:nowrap}
@media(max-width:1050px){.watchTableHeader{display:none}.watchTableRow{grid-template-columns:minmax(240px,1.7fr) repeat(3,minmax(95px,.6fr)) auto}.watchNote{grid-column:1/-2}.watchNote small,.watchCell small{display:block;font-size:8px;text-transform:uppercase;letter-spacing:.07em;color:#777;margin-bottom:2px}}
@media(max-width:720px){.watchTableRow{grid-template-columns:1fr 1fr;gap:10px}.watchRowFigure{grid-column:1/-1}.watchNote{grid-column:1/-1}.watchRowActions{grid-column:1/-1;justify-content:flex-start}.watchCell small{display:block;font-size:8px;text-transform:uppercase;letter-spacing:.07em;color:#777;margin-bottom:2px}}


/* V9.4.2 Watchlist header polish */
.watchListHeader{display:block!important;margin:18px 0 12px!important}
.watchListHeader h3{margin:0 0 4px!important}
.watchRule{display:none!important}
.watchRuleInline{margin-top:5px;font-size:11px;line-height:1.35;color:rgba(255,255,255,.72);font-weight:500}
.watchRuleInline b{color:#fff;font-weight:750}
.watchToolsSingle{margin:14px 0 18px}
.watchSearchRail{width:min(760px,100%)}
.watchSearchRail input.search{width:100%;min-width:0;background:transparent!important;color:#fff!important;border:0!important;border-bottom:2px solid rgba(255,255,255,.95)!important;border-radius:0!important;padding:10px 2px!important;box-shadow:none!important}
.watchSearchRail input.search::placeholder{color:rgba(255,255,255,.58)!important}
.watchSearchRail input.search:focus{outline:none;border-bottom-color:#fff!important}
.watchSearchRail .researchSuggest{top:46px}

/* V9.5 dossier interaction + visual polish */
.dossierHero{align-items:stretch!important;gap:0!important}
.dossierImage{border-radius:20px 0 0 20px!important;border-right:0!important;min-height:420px;height:auto!important}
.dossierHeroCopy{background:var(--theme);color:var(--themeText);border-radius:0 20px 20px 0;padding:24px 26px;display:flex;flex-direction:column;justify-content:space-between;min-height:420px}
.dossierHeroCopy h1{font-size:46px!important;font-weight:950!important;letter-spacing:-.045em!important;line-height:.98!important;margin:10px 0 8px!important;color:var(--themeText)}
.dossierHeroCopy .dossierId{color:color-mix(in srgb,var(--themeText) 68%,transparent)!important}
.dossierThemeTag{background:var(--themeText)!important;color:var(--theme)!important}
.dossierPrimaryMetrics>div{background:rgba(255,255,255,.78)!important;color:#111!important}
.dossierPrimaryMetrics small{color:#68625c!important}
.dossierActionWord{color:var(--themeText)!important;margin-top:18px!important}
.dossierHeroActions{margin-top:auto!important;padding-top:18px;align-items:flex-end}
.dossierHeroActions .btn{border-radius:12px;padding:10px 13px}
.dossierActionPrimary{background:#111!important;color:#fff!important}
.dossierActionSecondary{background:rgba(255,255,255,.86)!important;color:#111!important;border:1px solid rgba(0,0,0,.16)!important}
.dossierActionSecondary:hover{background:#fff!important}
.dossierInlinePanel{margin-top:14px;background:#f5f1ec;border-radius:18px;padding:16px;border:1px solid #ded6ce}
.inlineEditorHead{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.inlineEditorHead h3{margin:0;font-size:20px}
.inlineHoldingRows{display:grid;gap:8px;margin-bottom:12px}.inlineHoldingRow{display:flex;align-items:center;justify-content:space-between;gap:16px;background:#fff;border-radius:12px;padding:10px 12px}.inlineHoldingRow label{display:flex;align-items:center;gap:8px;font-size:10px;font-weight:800}.inlineHoldingRow input{width:120px}
.priceHistorySection{border-top:0!important}
.dossierChartFrame{background:var(--theme);padding:10px;border-radius:18px;margin-bottom:10px}
.dossierChartCanvas{background:#fff;border-radius:12px;padding:8px 10px 10px;overflow:hidden}
.dossierChartCanvas svg{display:block;width:100%;height:auto;min-height:240px}
.chartGrid{stroke:#e8e2dc;stroke-width:1}.chartAxisText{font-size:11px;fill:#766f69}.priceSegment{stroke-width:5;stroke-linecap:round}.priceSegment.priceUp{stroke:#13955F}.priceSegment.priceDown{stroke:#E9473A}.pricePoint{fill:#111;stroke:#fff;stroke-width:2}.targetPriceLine{stroke:#438ECC;stroke-width:3;stroke-dasharray:10 8}.targetPriceLabel{font-size:11px;font-weight:800;fill:#438ECC}.chartLegend{display:flex;gap:16px;flex-wrap:wrap;padding:6px 4px 0;font-size:10px;color:#5e5853}.chartLegend span{display:flex;align-items:center;gap:6px}.legendLine{display:inline-block;width:24px;height:3px;border-radius:99px}.legendLine.up{background:#13955F}.legendLine.down{background:#E9473A}.legendLine.target{height:0;border-top:3px dashed #438ECC}
.dossierChartEmpty{background:#fff;color:#777;border-radius:12px;padding:58px 20px;text-align:center;font-size:14px;border:1px dashed #ded6ce}
.priceHistoryTable{margin-top:10px}
.relatedSection{border-top:0!important;padding-top:8px!important}
.relatedVariants{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:12px!important}.relatedVariants button{border:4px solid var(--variantTheme,#627E8B)!important;border-radius:16px!important;padding:10px!important;text-align:center!important;transition:transform .14s ease,box-shadow .14s ease}.relatedVariants button:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(0,0,0,.13)}.relatedVariants img{height:120px!important}.relatedVariants span{font-size:11px!important;margin-top:7px;text-align:center}.relatedVariants small{text-align:center!important}
.researchNotesSection{padding-bottom:4px}
@media(max-width:900px){.dossierHero{grid-template-columns:230px 1fr!important}.dossierImage,.dossierHeroCopy{min-height:330px}.dossierHeroCopy h1{font-size:36px!important}.relatedVariants{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:700px){.dossierHero{grid-template-columns:1fr!important}.dossierImage{border-radius:20px 20px 0 0!important;border-right:4px solid var(--theme,#627E8B)!important;border-bottom:0!important;min-height:280px}.dossierHeroCopy{border-radius:0 0 20px 20px!important;min-height:0}.dossierHeroCopy h1{font-size:34px!important}.dossierHeroActions{align-items:stretch}.dossierHeroActions .btn{flex:1 1 46%}.inlineHoldingRow{align-items:flex-start;flex-direction:column}.relatedVariants{grid-template-columns:repeat(2,minmax(0,1fr))!important}}

/* V9.5.1 dossier typography refinement */
.dossierHeroCopy h1{color:#4f4b48!important}
.dossierHeroCopy .dossierId{color:#4f4b48!important}
.dossierHeroCopy .dossierPrimaryMetrics small,
.dossierHeroCopy .dossierActionWord,
.dossierHeroCopy .dossierPrimaryMetrics>div small{color:#8b8580!important}
.dossierHeroCopy .dossierPrimaryMetrics>div b{color:#4f4b48!important}

/* V9.5.2: equal cards, aligned price/status and final text polish. */
.compactOpportunityGrid{grid-auto-rows:390px;align-items:stretch}
.marketOpportunityCard{height:100%;display:flex;flex-direction:column}
.marketOpportunityImage{flex:0 0 190px}
.marketOpportunityBody{flex:1;min-height:0;display:flex;flex-direction:column}
.marketOpportunityBody h3{height:40px;min-height:40px;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;flex-shrink:0}
.oppFooter{margin-top:auto;padding-top:12px}
.oppPriceStatusRow{display:flex;align-items:baseline;justify-content:space-between;gap:8px;min-height:29px}
.oppPriceStatusRow strong{font-size:24px;flex:0 0 auto;line-height:1.2}
.oppPriceStatusRow .oppActionWord{margin:0;text-align:right;white-space:nowrap;font-size:10px;letter-spacing:.025em}
.oppSoldAverage{font-size:10px;color:#666;margin-top:5px}
.dossierHeroCopy h1{font-weight:500!important;color:#111!important}
.dossierHeroCopy .dossierId,.dossierHeroCopy .dossierPrimaryMetrics>div b{color:#111!important}
.dossierHeroCopy .dossierPrimaryMetrics small,.dossierHeroCopy .dossierPrimaryMetrics>div small,.dossierHeroCopy .dossierActionWord{color:#333!important}
.dossierHeroActions .btn{white-space:nowrap}
.homeAddWidget .eyebrow{color:#fff!important}
.figureHighlight .eyebrow,.figureHighlight .highlightId{color:#111!important;opacity:1}
@media(max-width:480px){.compactOpportunityGrid{grid-template-columns:1fr}}

/* V9.5.3: Watchlist row text colors. */
.watchTableRow .watchRowFigure b,.watchTableRow .watchRowFigure small{color:#6f6f6f!important}
.watchTableRow .watchCell b,.watchTableRow .watchCell small,.watchTableRow .watchNote span{color:#767676!important}

/* Match Collection Composition label typography across the portfolio widgets. */
.collectionMap .eyebrow,.homeAddWidget .eyebrow,.figureHighlight .eyebrow{font-size:10px;font-weight:650;text-transform:uppercase;letter-spacing:.12em;margin-bottom:5px}

/* V9.6: figure-only portfolio outlook and transparent research controls. */
.portfolioHome .projectedCollection{background:#13955F;color:#fff;padding:26px 28px;margin-bottom:14px;min-width:0}
.projectionHead{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.projectedCollection .eyebrow{font-size:10px;font-weight:650;letter-spacing:.12em;text-transform:uppercase;color:#fff;margin-bottom:5px}
.projectionHead h3{margin:3px 0 8px;font-size:32px;font-weight:500;letter-spacing:-.03em;color:#fff}
.projectionHead p{margin:0;font-size:12px;color:#fff;line-height:1.5}
.projectionBadge{border:1px solid rgba(255,255,255,.35);border-radius:999px;padding:8px 12px;white-space:nowrap;font-size:10px;color:#fff}
.projectionMetrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:28px 0 14px}
.projectionMetrics>div{min-width:0;border-left:1px solid rgba(255,255,255,.35);padding-left:18px}
.projectionMetrics small,.projectionMetrics b,.projectionMetrics span{display:block}
.projectionMetrics small{font-size:11px;color:#fff;margin-bottom:8px}
.projectionMetrics b{font-size:clamp(24px,3vw,40px);font-weight:500;letter-spacing:-.035em;overflow-wrap:anywhere;color:#fff}
.projectionMetrics span{font-size:10px;color:#fff;margin-top:7px;line-height:1.5}
.projectionChart{overflow-x:auto;overscroll-behavior-x:contain}
.projectionChart svg{display:block;width:100%;min-width:600px;height:auto}
.projectionGridLine{stroke:#fff;stroke-opacity:.2;stroke-width:1}
.projectionAxis{fill:#fff;font-size:12px}
.projectionBand{fill:#fff;fill-opacity:.22}
.projectionLine{fill:none;stroke:#fff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.projectionWhisker{stroke:#fff;stroke-width:1.5;stroke-opacity:.5}
.projectionDot{fill:#fff;stroke:#13955F;stroke-width:2}
.projectionChart rect:focus{outline:none;fill:#fff;fill-opacity:.06;stroke:#fff;stroke-width:1}
.projectionHover{font-size:11px;min-height:18px;color:#fff;margin-top:8px}
.projectionLegend{display:flex;flex-wrap:wrap;gap:12px 22px;font-size:10px;color:#fff;line-height:1.6;margin-top:12px}
.projectionLegend>span{display:flex;align-items:center;gap:7px}
.projectionLegend i{display:inline-block;width:22px;height:3px;background:#fff;border-radius:2px}
.projectionLegend i.band{height:10px;background:rgba(255,255,255,.22)}
.projectionEmpty{padding:50px 20px;text-align:center;color:#fff;font-size:13px}
.projectionDetails{border-top:1px solid rgba(255,255,255,.35);margin-top:22px;padding-top:18px}
.projectionDetails summary{cursor:pointer;font-size:12px;font-weight:600;color:#fff}
.projectionDetails p{font-size:12px;line-height:1.65;color:#fff;max-width:900px}
.projectionControls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:end;gap:12px;margin:16px 0}
.projectionControls label{font-size:10px;color:#fff;display:grid;gap:7px}
.projectedCollection input{min-width:0;background:rgba(255,255,255,.08);color:#fff;border:1px solid rgba(255,255,255,.35)}
.projectedCollection .btn{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.65);font-size:11px;white-space:nowrap}
.projectedCollection .btn.secondary{background:transparent;color:#fff;border-color:rgba(255,255,255,.35)}
.projectionActions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:16px 0}
.projectionResearch{background:transparent;border-color:rgba(255,255,255,.35);margin-top:18px;max-height:420px;overflow:auto}
.projectionResearch table{width:100%;min-width:660px;color:#fff;font-size:12px}
.projectionResearch th{color:#fff;background:#13955F;position:sticky;top:0;font-size:10px;text-align:left;z-index:1}
.projectionResearch td,.projectionResearch th{padding:12px 10px;border-bottom:1px solid rgba(255,255,255,.35)}
.projectionResearch td small{display:block;color:#fff;font-size:10px;margin-top:5px}
.projectionEditor p{line-height:1.6}.projectionEditor a{display:inline-block;margin-bottom:16px}.projectionEditor input,.projectionEditor textarea{width:100%}
@media(max-width:700px){.portfolioHome .projectedCollection{padding:22px 18px}.projectionHead{flex-direction:column;gap:12px}.projectionHead h3{font-size:27px}.projectionMetrics{gap:12px}.projectionMetrics>div{padding-left:10px}.projectionMetrics b{font-size:24px}.projectionControls{grid-template-columns:1fr 1fr}.projectionControls .btn{white-space:normal}}
@media(max-width:430px){.projectionMetrics{grid-template-columns:1fr}.projectionMetrics>div{padding:0 0 12px;border-left:0;border-bottom:1px solid rgba(255,255,255,.35)}.projectionControls{grid-template-columns:1fr}}

/* V9.6.1: crisp, light brick edges replace the inset shading and hover shadow. */
.collectionBrick,.collectionBrick:hover{border:0!important;box-shadow:none!important}
/* Painted quarter-pixel edges avoid browsers rounding a fractional border up. */
.collectionBrick:before{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;background:linear-gradient(#000,#000) top / 100% .25px no-repeat,linear-gradient(#000,#000) bottom / 100% .25px no-repeat,linear-gradient(#000,#000) left / .25px 100% no-repeat,linear-gradient(#000,#000) right / .25px 100% no-repeat}

/* Watchlist tabs retain their fills and outlines without the inherited chip shadow. */
.watchManager .watchListTabs .chip,
.watchManager .watchListTabs .chip:hover,
.watchManager .watchListTabs .chip:focus,
.watchManager .watchListTabs .chip.active{box-shadow:none!important}

/* Working draft: BrickLink wanted-list import. */
.watchManagerActions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.watchManagerActions .btn.secondary{background:#fff;color:#111;border:1px solid #111;box-shadow:none}
.wantedImport p{font-size:12px;line-height:1.6}.wantedField{display:grid;gap:7px;margin:14px 0;font-size:12px;font-weight:600}
.wantedField input,.wantedField textarea,.wantedField select{width:100%;min-width:0}
.wantedImport .checkrow{display:flex;gap:9px;align-items:center;font-size:12px}.wantedImport .checkrow input{width:auto}
.wantedPreviewCount{font-size:12px;font-weight:700;margin:18px 0 10px}.wantedPreviewTable{max-height:360px;overflow:auto}.wantedPreviewTable table{min-width:560px}
.wantedPreviewTable th{position:sticky;top:0;z-index:1}.wantedPreviewTable td small{display:block;color:#666;margin-top:4px}.wantedPreviewTable input{width:auto}
.wantedSkipped{font-size:12px;margin:14px 0}.wantedImport li{line-height:1.6}.wantedResult .btn{margin:10px 8px 0 0}
.watchNote span{white-space:pre-line}
@media(max-width:700px){.watchManagerActions{justify-content:flex-start;width:100%}}

/* Pending research-widget polish. */
.researchToolCard .eyebrow{color:#fff!important}
.researchToolCard .portfolioModeSwitch button{box-shadow:none!important}

/* Separate market research from the pending-request status widget. */
.researchHero + .requestStrip{margin-top:14px}
.requestStrip{display:flex;align-items:center;flex-wrap:wrap;gap:14px}

/* Pending rarity result redesign */
.rarityCalc .rarityResult{display:block;background:#fff;color:#171717;border-radius:18px;padding:24px}
.rarityVisuals{display:flex;justify-content:center;align-items:center;gap:28px;flex-wrap:wrap}
.rarityThumbnail{width:160px;height:180px;padding:14px;background:#f5f5f6;border-radius:16px;display:grid;place-items:center}
.rarityThumbnail img{max-width:100%;max-height:100%;object-fit:contain}
.rarityWheel{width:180px;height:180px;position:relative;flex:none}
.rarityWheel svg{width:100%;height:100%;transform:rotate(-90deg)}
.rarityWheel circle{fill:none;stroke-width:8}.rarityWheelTrack{stroke:#e5e5e5}.rarityWheelFill{stroke:#171717;stroke-linecap:round}
.rarityWheel>div{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}
.rarityWheel b{font-size:52px;line-height:1.15}.rarityWheel span{font-size:15px;color:#727272;margin-top:6px}
.rarityIdentity{text-align:center;margin:24px 0}.rarityCalc .rarityIdentity h3{margin:0;font-size:26px}.rarityCalc .rarityIdentity p{color:#727272;font-size:14px;margin:9px 0 16px}
.rarityBadge{display:inline-block;background:#f6f6f6;border:1px solid #dedede;border-radius:999px;padding:9px 18px;font-size:14px;font-weight:650}
.rarityPrice{display:flex;justify-content:center;align-items:baseline;flex-wrap:wrap;gap:8px;margin-top:20px}.rarityPrice b{font-size:24px}.rarityPrice span{color:#727272;font-size:13px}
.rarityCalc .rarityBreakdown{display:block;margin:24px 0 0;border-top:1px solid #e5e5e5;padding-top:20px}
.rarityBreakdown h4{font-size:18px;margin:0 0 18px}.rarityFactor{padding:16px 0;border-bottom:1px solid #ececec}.rarityFactor:last-child{border-bottom:0;padding-bottom:0}
.rarityFactorHeading{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:15px}
.rarityCalc .rarityFactorHeading span{background:none;padding:0;border-radius:0;font-size:13px;color:#727272}.rarityCalc .rarityFactorHeading b{display:inline;font-size:15px}.rarityFactorHeading strong{color:#171717}
.rarityFactorTrack{height:6px;background:#e5e5e5;border-radius:99px;margin-top:12px;overflow:hidden}.rarityCalc .rarityFactorTrack span{display:block;height:100%;padding:0;background:#171717;border-radius:99px}
.rarityCalc .rarityFactor p{font-size:13px;color:#727272;line-height:1.5;margin:12px 0 0}
@media(max-width:480px){.rarityCalc .rarityResult{padding:18px}.rarityVisuals{gap:16px}.rarityThumbnail{width:120px;height:140px}.rarityWheel{width:140px;height:140px}.rarityWheel b{font-size:42px}}

/* Pending collection calculator result layout */
.valueCalc #valueCalcInput{height:116px;min-height:90px;resize:vertical}
.valueCalc .calcRows{max-height:none;overflow:visible;background:transparent;display:grid;gap:10px;border-radius:0}
.valueCalc .calcRow{display:grid;grid-template-columns:64px minmax(0,1fr) auto;align-items:center;gap:14px;padding:16px;background:#fff;color:#171717;border:1px solid #dedede;border-radius:16px}
.calcThumbnail{height:72px;width:64px;padding:7px;border:1px solid #e5e5e5;border-radius:12px;display:grid;place-items:center}.calcThumbnail img{max-height:100%;max-width:100%;object-fit:contain}
.calcIdentity{min-width:0}.calcIdentity>b{display:block;font-size:15px;line-height:1.35}.valueCalc .calcIdentity small{display:block;font-size:11px;color:#737373;opacity:1;margin:5px 0}.valueCalc .calcIdentity .calcSource{font-size:10px;margin-top:0}
.calcBLLink{display:inline-block;color:#505050;font-size:11px;text-decoration:underline;text-underline-offset:3px}
.calcRowActions{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:12px}.calcRowActions strong{font-size:19px;white-space:nowrap}.calcAddInventory{border:0;background:none;color:#171717;font-weight:650;font-size:12px;padding:3px 0;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.valueCalc .calcTotal{display:flex;align-items:center;justify-content:space-between;gap:16px;background:#f1f1f1;color:#171717;padding:18px;border-radius:16px;margin:12px 0 0}.valueCalc .calcTotal small{font-size:12px;color:#727272}.valueCalc .calcTotal span{font-size:17px;font-weight:650;opacity:1;margin-top:6px}.valueCalc .calcTotal b{font-size:30px;white-space:nowrap}.calcCompletion{font-size:12px;margin:12px 0}
@media(max-width:540px){.valueCalc .calcRow{grid-template-columns:54px minmax(0,1fr);gap:12px;padding:12px}.calcThumbnail{width:54px;height:64px}.calcRowActions{grid-column:2;flex-direction:row;align-items:center;justify-content:space-between;gap:10px;text-align:left}.valueCalc .calcTotal{flex-wrap:wrap}}

/* Stack research tools; each card follows its own content height. */
.researchToolGrid{grid-template-columns:minmax(0,1fr);align-items:start}
.researchToolGrid .researchToolCard{min-height:0;height:auto}

/* Research detail shared by each bulk calculator figure result. */
.calcResearchDetail{grid-column:1/-1;border-top:1px solid #e5e5e5;padding-top:16px;margin-top:4px;color:#171717}
.valueCalc .calcResearchDetail p{color:#444;font-size:13px}.calcResearchDetail .hitfacts{display:flex;flex-wrap:wrap;gap:8px;font-size:11px;color:#666}
.calcResearchDetail .investmentRead{margin-top:14px}.calcResearchDetail .investTop{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:14px}
.calcResearchDetail .investTop small,.calcResearchDetail .investTop span{color:#666}.calcResearchDetail .investTop strong{color:#171717}
.calcResearchDetail .actions{flex-wrap:wrap;gap:8px}.calcResearchDetail .actions .btn{font-size:12px;padding:9px 12px}

/* Compact research results; detailed analysis opens per figure. */
.calcResearchAccordion{grid-column:1/-1;border-top:1px solid #e5e5e5;padding-top:10px}
.calcResearchAccordion>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;font-size:12px;font-weight:650;color:#505050;list-style:none}
.calcResearchAccordion>summary::-webkit-details-marker{display:none}
.calcResearchAccordion>summary span{font-size:18px;transition:transform .15s}
.calcResearchAccordion[open]>summary span{transform:rotate(180deg)}
.calcResearchAccordion .calcResearchDetail{border-top:0;margin-top:0;padding-top:14px}
.calcResearchAccordion>summary:focus-visible{outline:2px solid #171717;outline-offset:4px;border-radius:3px}

/* Full summary card toggles research; actions stay separate. */
.valueCalc .calcRow{display:block;padding:0}
.valueCalc .calcSummary{display:grid;grid-template-columns:64px minmax(0,1fr) auto 20px;align-items:center;gap:14px;padding:16px;list-style:none;color:#171717}
.valueCalc details.calcRow>.calcSummary{cursor:pointer}
.valueCalc .calcSummary::-webkit-details-marker{display:none}
.valueCalc .calcSummary .calcRowActions{gap:9px}
.valueCalc .calcSummary .calcBLLink{color:#171717;font-weight:650;font-size:12px;padding:3px 0;text-decoration:underline;text-underline-offset:3px}
.valueCalc .calcExpandArrow{font-size:22px;justify-self:center;align-self:center;transition:transform .15s}
.valueCalc .calcResearchAccordion[open]>.calcSummary .calcExpandArrow{transform:rotate(180deg)}
.valueCalc .calcResearchAccordion>.calcResearchDetail{margin:0 16px 16px;padding-top:16px;border-top:1px solid #e5e5e5}
.valueCalc .calcResearchAccordion>.calcSummary:focus-visible{outline:2px solid #171717;outline-offset:3px;border-radius:14px}
@media(max-width:540px){.valueCalc .calcSummary{grid-template-columns:54px minmax(0,1fr) 20px;gap:12px;padding:12px}.valueCalc .calcSummary .calcRowActions{grid-column:2;grid-row:2;flex-direction:column;align-items:flex-start;gap:7px}.valueCalc .calcExpandArrow{grid-column:3;grid-row:1/3}.valueCalc .calcResearchAccordion>.calcResearchDetail{margin:0 12px 12px}}

.valueCalc>p code{color:#000}

.rarityResultActions{display:flex;flex-direction:column;align-items:center;gap:9px;margin-top:18px}
.rarityResultActions .calcBLLink{color:#171717;font-weight:650;font-size:12px;padding:3px 0;text-decoration:underline;text-underline-offset:3px}

/* Composition geometry: consistent tracks, no cropped bricks or stretched rows. */
.collectionMap .brickField{display:grid!important;grid-auto-flow:column!important;grid-template-columns:none!important;grid-template-rows:repeat(21,max-content)!important;grid-auto-columns:minmax(0,1fr)!important;grid-auto-rows:auto!important;gap:0!important;align-items:start!important;align-content:start!important;justify-content:start!important;min-height:0!important;max-height:none!important;height:auto!important;overflow:visible!important}
.collectionMap .collectionBrick{display:block!important;box-sizing:border-box!important;width:100%!important;height:auto!important;min-width:0!important;min-height:0!important;max-height:none!important;aspect-ratio:3/1!important;margin:0!important;padding:0!important;border-radius:0!important;align-self:start!important}
.collectionMap .collectionBrick:hover{transform:scale(1.25)!important;z-index:8!important}
.collectionMap .brickLegend{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))!important;gap:14px 18px!important;width:100%!important;min-width:0!important;overflow:visible!important;white-space:normal!important}
.collectionMap .legendRow{min-width:0!important}.collectionMap .legendRow b{overflow-wrap:anywhere}
@media(max-width:1250px){.collectionMap .brickField{grid-template-rows:repeat(24,max-content)!important}}
@media(max-width:850px){.collectionMap .brickField{grid-template-rows:repeat(28,max-content)!important}}
@media(max-width:600px){.collectionMap .brickField{grid-template-rows:repeat(34,max-content)!important}.collectionMap .brickLegend{grid-template-columns:repeat(2,minmax(0,1fr))!important}}

/* Research summaries: remove the accordion arrow and its reserved column. */
.valueCalc .calcSummary{grid-template-columns:64px minmax(0,1fr) auto}
@media(max-width:540px){.valueCalc .calcSummary{grid-template-columns:54px minmax(0,1fr)}}

/* Barely tinted accordion hover; foreground content stays fully opaque. */
.valueCalc .calcResearchAccordion>.calcSummary{border-radius:15px;transition:background-color .15s ease}
@media(hover:hover){.valueCalc .calcResearchAccordion>.calcSummary:hover{background-color:#f8f8f8}}
@media(prefers-reduced-motion:reduce){.valueCalc .calcResearchAccordion>.calcSummary{transition:none}}

/* Researched weekly briefing: clear sources and readable archives. */
.briefSource{display:inline-block;color:inherit;text-decoration:underline;text-underline-offset:3px;font-weight:600;overflow-wrap:anywhere;margin-top:6px}
.briefingHeader p,.briefitem p,.briefitem .recommendation{line-height:1.65;overflow-wrap:anywhere}
.briefArchive{text-align:left;width:100%;color:inherit;cursor:pointer}
.briefArchive:hover{border-color:#171717}
.briefArchive:focus-visible,.briefRefresh:focus-visible{outline:2px solid currentColor;outline-offset:3px}
.briefRefresh{color:#fff!important;font-size:12px!important;align-self:center}
.briefcat{color:#fff!important}

/* Market briefing as one green editorial panel, including every story/source. */
.marketBriefPanel{background:var(--vasa-yellow,#FCC010);border-radius:26px;padding:26px;color:#000}
.marketBriefPanel .briefingHeader{display:block;background:transparent!important;border:0;padding:0 0 22px;color:#000!important}
.marketBriefPanel .briefTitleRow{display:flex;align-items:baseline;justify-content:space-between;gap:24px}
.marketBriefPanel .briefTitleRow h1{font-size:30px;font-weight:500;letter-spacing:normal;line-height:1.2;color:#000!important;margin:4px 0 8px}
.marketBriefPanel .briefTitleRow time{font-size:12px;font-weight:400;color:#000;white-space:nowrap}
.marketBriefPanel .briefingHeader p{color:#000!important;font-size:12px;font-weight:400;line-height:1.45;margin:14px 0 0;max-width:1000px}
.marketBriefPanel .briefingItems{margin:0;background:transparent!important;border:0;border-radius:0;overflow:visible}
.marketBriefPanel .briefitem{display:block;padding:24px 0;border-bottom:0;border-top:1px solid #fff;background:transparent!important;color:#000!important}
.marketBriefPanel .briefitem.hasBriefImage{display:grid;grid-template-columns:180px minmax(0,1fr);gap:24px;align-items:center}
.marketBriefPanel .briefcat{color:#000!important;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.12em;margin-bottom:5px}
.marketBriefPanel .briefitem h3{color:#000!important;font-size:21px;font-weight:500;letter-spacing:normal;line-height:1.3;margin:4px 0 8px}
.marketBriefPanel .briefitem p,.marketBriefPanel .recommendation,.marketBriefPanel .textlink,.marketBriefPanel .briefSource{color:#000!important;font-size:12px;font-weight:400;line-height:1.45}
.marketBriefPanel .recommendation{border-left:2px solid #000;padding-left:12px;margin-top:14px;font-weight:500}
.marketBriefPanel .briefVisual{margin:0;min-width:0}
.marketBriefPanel .briefVisual img{display:block;width:100%;height:auto;aspect-ratio:1 / 1;object-fit:contain;background:#fff;border-radius:12px;padding:10px}
.marketBriefPanel .briefVisual figcaption{font-size:10px;color:#000;margin-top:7px}
.marketBriefPanel .briefSource{margin-top:8px;font-weight:650}
.marketBriefPanel .textlink{font-weight:650}
@media(max-width:700px){.marketBriefPanel{padding:20px}.marketBriefPanel .briefTitleRow{flex-direction:column;gap:8px}.marketBriefPanel .briefTitleRow h1{font-size:24px}.marketBriefPanel .briefitem.hasBriefImage{grid-template-columns:110px minmax(0,1fr);gap:16px}.marketBriefPanel .briefVisual img{height:auto}}
@media(max-width:450px){.marketBriefPanel .briefitem.hasBriefImage{grid-template-columns:1fr}.marketBriefPanel .briefVisual{max-width:200px}.marketBriefPanel .briefVisual img{height:auto}}

/* Preserve archive pills; place title left and date right. */
.archive .briefArchive{align-items:center;color:#000!important}
.briefArchive>span{min-width:0;text-align:left}
.briefArchiveDate{margin-left:auto;flex-shrink:0;font-weight:750;text-align:right;color:#000}

/* Explicit shared geometry prevents intrinsic grid-track stretching. */
.collectionMap .brickField{grid-template-columns:repeat(var(--brick-columns,39),minmax(0,1fr))!important;grid-template-rows:repeat(var(--brick-rows,21),var(--brick-height,8px))!important;grid-auto-columns:auto!important;grid-auto-rows:var(--brick-height,8px)!important;align-items:stretch!important}
.collectionMap .collectionBrick{height:100%!important;aspect-ratio:auto!important;align-self:stretch!important}
.collectionMap .collectionBrick:before{background:linear-gradient(#000,#000) top / 100% .5px no-repeat,linear-gradient(#000,#000) left / .5px 100% no-repeat}

/* Sources close each story, after the analysis and recommendation. */
.marketBriefPanel .briefSources{margin-top:14px;color:#000;font-size:12px;line-height:1.45}
.marketBriefPanel .briefSources .briefSource{display:inline-block;margin:4px 0}

/* Compact Market trend reference. */
.marketTrendKey{display:flex;flex-wrap:wrap;gap:9px 22px;margin:4px 0 18px;font-size:11px;line-height:1.5;color:#aaa}
.marketTrendKey>span{display:flex;flex-wrap:wrap;gap:6px}
.marketTrendKey b{color:#ddd;font-weight:600}
.marketTrendKey>small{flex-basis:100%;font-size:10px;color:#999}

/* Market tools and table share one green bento. */
#view .marketBento{background:var(--vasa-greygreen,#9DBFAE)!important;color:#111!important;padding:24px;border-radius:26px;min-width:0}
.marketBento .toolbar{margin:18px 0 14px}
.marketBento .marketTrendKey,.marketBento .marketTrendKey>small{color:#333}
.marketBento .marketTrendKey b{color:#111}
.marketBento .watchSearchRail input.search{color:#111!important;border-bottom-color:#111!important}
.marketBento .watchSearchRail input.search::placeholder{color:#444!important}
.marketBento .watchSearchRail input.search:focus{border-bottom-color:#111!important}
.marketBento .tablewrap{margin:0;max-width:100%;overflow-x:auto}
.marketBento .tablewrap td,.marketBento .tablefigure b{color:#111!important}
.marketBento .tablefigure small{color:#666!important}
@media(max-width:700px){#view .marketBento{padding:20px 16px}}

.marketBento .marketSortButton{display:flex;align-items:center;white-space:nowrap;gap:6px;width:100%;border:0;background:transparent;color:inherit;padding:0;text-align:left;font:inherit;text-transform:inherit;letter-spacing:inherit;font-weight:inherit}
.marketSortButton span{font-size:12px;opacity:.45}
.marketBento th[aria-sort="ascending"] .marketSortButton,.marketBento th[aria-sort="descending"] .marketSortButton{color:#111}
.marketBento th[aria-sort="ascending"] span,.marketBento th[aria-sort="descending"] span{opacity:1}
.marketSortButton:focus-visible{outline:2px solid #111;outline-offset:5px;border-radius:2px}

/* Explicit table contrast overrides inherited white text. */
#view .marketBento .tablewrap table{color:#111!important}
#view .marketBento .tablewrap td,#view .marketBento .tablewrap td b,#view .marketBento .tablewrap td span{color:#111!important}
#view .marketBento .tablewrap th,#view .marketBento .tablewrap th button{color:#444!important}
#view .marketBento .tablefigure small{color:#555!important}
#view .marketBento .marketWatchlisted{text-align:center;width:52px}
.marketWatchlisted span{font-size:15px;font-weight:650}

#view .marketBento .tablewrap td .watchlistedStar{color:var(--vasa-yellow,#FCC010)!important;font-size:15px}

/* Market intro: explanation left, reference key right. */
.marketIntroGrid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:26px;margin-bottom:24px}
.marketIntroCopy{min-width:0}
.marketIntroCopy>p{margin:12px 0 0;line-height:1.5}
.marketIntroGrid .marketTrendKey{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 20px;margin:0;padding-left:26px;border-left:1px solid #111;align-content:start}
.marketTrendColumn{display:grid;gap:12px;align-content:start;min-width:0}
.marketTrendColumn>span{display:block;line-height:1.4}
.marketTrendColumn>span>b{display:block;margin-bottom:2px}
.marketIntroGrid .marketTrendKey>small{grid-column:1/-1;margin-top:4px}
@media(max-width:700px){.marketIntroGrid{grid-template-columns:1fr;gap:18px}.marketIntroGrid .marketTrendKey{border-left:0;border-top:1px solid #111;padding:18px 0 0}}

#view .marketBento .marketFloorLink{color:#111;text-decoration:underline;text-underline-offset:3px}
#view .marketBento .marketFloorLink:hover{opacity:.7}

#view .marketBento .tablewrap .marketWatchHeader{width:52px;padding-left:10px;padding-right:10px}
#view .marketBento .tablewrap .marketWatchHeader button{color:#111!important;justify-content:center;font-size:15px;letter-spacing:0}

@media(max-width:480px){.marketIntroGrid .marketTrendKey{grid-template-columns:1fr}}

/* Alerts: readable text on white cards and figure identity. */
#view .alertItem,#view .alertItem h3{color:#111}
#view .alertItem p,#view .alertItem .alertMeta,#view .alertItem .alertMeta span{color:#444}
#view .alertItem .textlink{color:#111!important}
.alertIdentity{display:grid;gap:12px;justify-items:start}
.alertThumbnail{width:64px;height:64px;object-fit:contain;background:#fff;border-radius:8px}
@media(max-width:900px){.alertIdentity{display:flex;align-items:center;gap:14px}}

/* Data Quality: the full palette with consistent dark text. */
#view .coverageGrid .coverageCard{color:#111!important}
#view .coverageGrid .coverageCard small,#view .coverageGrid .coverageCard b,#view .coverageGrid .coverageCard p{color:#111!important}
#view .coverageGrid .coverageCard:nth-child(1){background:var(--vasa-blue)!important}
#view .coverageGrid .coverageCard:nth-child(2){background:var(--vasa-greygreen)!important}
#view .coverageGrid .coverageCard:nth-child(3){background:var(--vasa-yellow)!important}
#view .coverageGrid .coverageCard:nth-child(4){background:var(--vasa-orange)!important}
#view .coverageGrid .coverageCard:nth-child(5){background:var(--vasa-pink)!important}
#view .coverageGrid .coverageCard:nth-child(6){background:var(--vasa-turquoise)!important}
#view .coverageGrid .coverageCard:nth-child(7){background:var(--vasa-green)!important}
#view .coverageGrid .coverageCard:nth-child(8){background:var(--vasa-grey)!important}
#view .coverageGrid .progress{background:rgba(255,255,255,.72)}
#view .coverageGrid .progress span{background:var(--vasa-darkgreen,#335F4B)}

.packagedHoldingNote{display:block;margin-top:6px;line-height:1.5;color:inherit}.packagedHoldingNote a{color:inherit;text-decoration:underline}

/* Blue dossier hero: white typography on dark surfaces. */
.dossierBlue .dossierHeroCopy{color:#fff!important}
.dossierBlue .dossierHeroCopy h1,.dossierBlue .dossierHeroCopy .dossierId,
.dossierBlue .dossierHeroCopy .dossierActionWord,
.dossierBlue .dossierHeroCopy .dossierPrimaryMetrics small,
.dossierBlue .dossierHeroCopy .dossierPrimaryMetrics>div b{color:#fff!important}
.dossierBlue .dossierHeroCopy .dossierPrimaryMetrics>div{background:rgba(0,0,0,.15)!important;color:#fff!important;border:1px solid rgba(255,255,255,.4)}
.dossierBlue .dossierHeroCopy .dossierThemeTag{background:transparent!important;color:#fff!important;border:1px solid #fff}
.dossierBlue .dossierHeroCopy .dossierActionSecondary{background:transparent!important;color:#fff!important;border:1px solid #fff!important}
.dossierBlue .dossierHeroCopy .dossierActionSecondary:hover{background:rgba(0,0,0,.12)!important}

.confirmedAlertSummary{grid-template-columns:repeat(2,minmax(0,1fr))}
#view .confirmedAlertSummary .card,#view .confirmedAlertSummary .card small,#view .confirmedAlertSummary .card b{color:#111!important}
.alertType.rapid_rise{background:#e7f5eb;color:#17603d}
.alertCriteria{font-size:12px;line-height:1.5;color:#ddd;margin:0 0 18px}
.readAlertHistory{margin-top:22px}.readAlertHistory>summary{cursor:pointer;margin-bottom:14px;color:#fff}

/* V9.12.1 — dossier theme reassignment */
.dossierThemeFact select{width:100%;margin-top:4px;padding:7px 9px;border:1px solid var(--theme,#aaa);border-radius:9px;background:#fff;color:#111;font-size:12px;font-weight:800}.dossierThemeFact select:disabled{opacity:.6;cursor:wait}.dossierThemeHint{display:block;margin-top:5px;color:var(--muted);font-size:9px;line-height:1.2}.dossierBlue .dossierThemeFact select{background:rgba(255,255,255,.96);color:#111}

/* Destructive portfolio action: readable on every dossier theme, including blues. */
.dossierHeroActions .dossierDeleteAction{background:#fff1f1!important;color:#9d2434!important;border:1px solid #b63747!important;font-weight:800}
.dossierHeroActions .dossierDeleteAction:hover{background:#ffe0e0!important;color:#801a29!important}
.dossierHeroActions .dossierDeleteAction:disabled{opacity:.6;cursor:wait}

/* V9.12.3: per-copy removal from the figure dossier */
.dossierHoldingRow{align-items:center;flex-wrap:wrap}
.dossierHoldingRow>span{flex:1;min-width:190px;line-height:1.6}
.dossierHoldingActions{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap}
.dossierRemoveHolding{font:inherit;font-weight:700;color:#9d2434;background:#fff1f1;border:1px solid #b63747;border-radius:7px;padding:7px 10px;cursor:pointer;white-space:nowrap}
.dossierRemoveHolding:hover{background:#ffe0e0}
.dossierRemoveHolding:disabled{opacity:.55;cursor:wait}

/* Phase 3D Scanner Health */
.healthMetrics{margin-top:20px}.healthPanels{margin-top:14px}.healthLine{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:12px 0;border-bottom:1px solid var(--line);font-size:12px}.healthLine strong{font-weight:850;text-align:right;overflow-wrap:anywhere}.healthThemeCard{margin-top:14px}.healthThemeGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 20px;margin-top:12px}.healthTheme>div:first-child{display:flex;justify-content:space-between;gap:10px;font-size:12px}.healthTheme span{color:var(--muted)}.healthBar{height:7px;background:#efe7df;border-radius:10px;overflow:hidden;margin:8px 0 12px}.healthBar span{height:100%;background:var(--burgundy);display:block;border-radius:10px}@media(max-width:700px){.healthThemeGrid{grid-template-columns:1fr}}

/* V9.12.6 Opportunities radar + Data Quality paging */
.oppViewTabs{display:flex;gap:9px;flex-wrap:wrap;margin:14px 0 8px}.oppViewDescription{margin:0 0 20px}.oppRadarDetail{border-top:1px solid rgba(120,120,120,.2);padding:12px 0 8px;margin-top:12px;display:grid;gap:6px;font-size:12px}.oppRadarDetail>div{display:flex;justify-content:space-between;gap:6px;flex-wrap:wrap}.oppRadarDetail em{font-style:normal;font-weight:700}.oppRadarDetail small{line-height:1.5;opacity:.73}.oppRadarPill{display:inline-flex;width:max-content;border-radius:14px;padding:5px 9px;background:#e5f0ea;color:#205b46;font-weight:800;font-size:11px;letter-spacing:.04em}.qualityPager{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;padding:15px 12px 24px;color:var(--muted,#666)}.qualityPagerButtons{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.qualityPagerButtons .btn:disabled{opacity:.4;cursor:not-allowed}

/* DBC 9.13.0: Workshop and acquisition history */
.workshopGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(265px,1fr));gap:16px;margin:18px 0}.workshopCard{display:flex;flex-direction:column;gap:12px}.workshopHead{display:flex;gap:13px;align-items:center}.workshopHead img{width:85px;height:85px;object-fit:contain;background:#fff;border-radius:14px}.workshopHead h3{font-size:1.05rem;margin:5px 0}.workshopChecks{display:grid;gap:5px}.workshopChecks span{font-size:.85rem;color:#876b55}.workshopChecks .complete{color:#25774f}.workshopCard button{margin-top:auto}.acquisitionTimeline{border:1px solid #dcd4cc;border-radius:12px;padding:14px;margin:14px 0}.acquisitionTimelineRow{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid #e9e4dc}.acquisitionTimelineRow:last-child{border-bottom:0}.inlineHoldingRow{flex-wrap:wrap}.inlineHoldingRow label{min-width:150px;flex:1}.inlineHoldingRow input{width:100%}#qualityModeWorkshop[aria-pressed=true],#qualityModeTable[aria-pressed=true]{background:#191919;color:white}

.historicalBaselinePanel{margin-top:20px;padding:16px;border:1px solid #ddd3ca;border-radius:14px}.historicalBaselinePanel .dossierSectionHead{display:flex;align-items:center;justify-content:space-between;gap:10px}.baselineMarker{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.baselineMarker b{font-size:23px}.baselineMarker span{color:#756f6b}.suggestionLine{background:#eaf4eb;color:#182d1d;padding:13px;border-radius:12px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}.suggestionLine small{font-size:12px;opacity:.75}

/* V9.13.2: rapid-review dossier workshop */
.workshopV2Summary,.workshopActions{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.workshopV2Summary{margin:14px 0;padding:12px 16px;border-radius:10px;background:var(--surface,#f1eee9)}.workshopV2Summary span{font-size:12px;opacity:.7}.workshopHint{display:grid;gap:7px;background:rgba(39,147,95,.08);padding:12px;border-radius:12px;border:1px solid rgba(39,147,95,.2)}.workshopHint small{font-size:11px;opacity:.8}.workshopHint .btn{justify-self:start}.workshopMilestone{padding:10px;border-radius:8px;background:rgba(145,145,145,.08)}.workshopActions .btn{flex:1}

/* V9.13.3 — earned, saved-data Workshop achievements and research discoveries */
.workshopRewards{margin:16px 0;padding:18px;border:1px solid var(--border,#dedad4);border-radius:16px;background:var(--surface,#f9f7f4)}
.workshopRewardsTitle{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-bottom:12px}.workshopRewardsTitle span{font-size:12px;opacity:.7}
.workshopBadgeGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:9px}
.workshopBadge{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid #dedbd5;border-radius:12px;background:rgba(145,145,145,.045)}
.workshopBadge>span{font-size:24px;line-height:1}.workshopBadge strong,.workshopBadge small{display:block}.workshopBadge small{font-size:11px;opacity:.75;margin-top:3px}
.workshopBadge.locked{opacity:.62}.workshopBadge.unlocked{border-color:rgba(39,147,95,.5);background:rgba(39,147,95,.085)}.workshopBadge.unlocked>span{color:#25865b}
.workshopDiscovery{padding:11px 12px;border-radius:10px;background:rgba(145,145,145,.07)}.workshopDiscovery summary{cursor:pointer;font-size:12px;font-weight:600;line-height:1.5}.workshopDiscovery ul{margin:10px 0 0;padding-left:19px;font-size:12px;line-height:1.6}.workshopDiscovery li+li{margin-top:4px}


/* V9.13.4 — accessible, consistent theme colors across dossier workshop. */
#view .workshopRewards,#view .workshopRewards *,
#view .workshopV2Summary,#view .workshopV2Summary *{color:#181818!important}
#view .workshopRewards{background:#f8f6f2!important;border-color:#d3ccc3!important}
#view .workshopBadge{background:#f0eeea!important;border:1px solid #c9c3bb!important;opacity:1!important}
#view .workshopBadge.unlocked{background:#e3efe6!important;border-color:#72ad8a!important}
#view .workshopBadge small,#view .workshopRewardsTitle span,#view .workshopV2Summary span{color:#4d4d4d!important;opacity:1!important}
#view .workshopBadge.unlocked>span{color:#166a41!important}
#view .workshopV2Summary{background:#f2f0ec!important;border:1px solid #c9c4bd}
#view .workshopCard{color:#151515!important;border:1px solid rgba(0,0,0,.22)!important;box-shadow:0 2px 0 rgba(0,0,0,.12)}
#view .workshopCard.workshopThemeStarWars{background:#ffc611!important}
#view .workshopCard.workshopThemeHeroes{background:#a6d4e9!important}
#view .workshopCard.workshopThemeNinjago{background:#f1b9b4!important}
#view .workshopCard.workshopThemePotter{background:#e8bac5!important}
#view .workshopCard.workshopThemeCastle{background:#aad2b8!important}
#view .workshopCard.workshopThemeNeutral{background:#e8e5df!important}
#view .workshopCard h3,#view .workshopCard strong,#view .workshopCard small,
#view .workshopCard .workshopHead,#view .workshopCard .workshopChecks span,
#view .workshopCard .workshopDiscovery,#view .workshopCard .workshopDiscovery *{color:#151515!important;opacity:1!important}
#view .workshopCard .workshopChecks .complete{color:#145c37!important;font-weight:700}
#view .workshopCard .workshopChecks span:not(.complete){color:#49392d!important}
#view .workshopCard .progress{background:#fff9ed!important;border:1px solid rgba(0,0,0,.15);height:9px}
#view .workshopCard .progress span{background:#742443!important}
#view .workshopCard .workshopDiscovery,#view .workshopCard .workshopHint{background:rgba(255,255,255,.33)!important;border:1px solid rgba(0,0,0,.18)!important}
#view .workshopCard .btn{background:#fffaf3!important;color:#161616!important;border:1px solid #897f73!important;font-weight:750}
#view .workshopCard .btn:hover{background:white!important;border-color:#161616!important}
#view .workshopCard .workshopHead img{background:#fff!important;border:1px solid rgba(0,0,0,.1)}
.investmentTimelineChart .purchaseChartHalo{fill:#fff;stroke:#136b48;stroke-width:1.5}
.investmentTimelineChart .purchaseChartDot{fill:#117247;stroke:#fff;stroke-width:1.5}
.investmentTimelineChart .baselineChartDiamond{fill:#8656bc;stroke:#fff;stroke-width:2}
.investmentTimelineChart .legendPoint{width:11px;height:11px;display:inline-block;vertical-align:middle;margin-right:5px}
.investmentTimelineChart .legendPoint.purchase{background:#117247;border-radius:50%}
.investmentTimelineChart .legendPoint.baseline{background:#8656bc;transform:rotate(45deg);width:9px;height:9px;margin-right:9px}
.investmentTimelineChart .chartUndatedNotice{display:block;font-size:12px;color:#654d7e;padding-top:8px}
.investmentTimelineChart .investmentChartNote{margin:10px 0 0;color:#555;line-height:1.5}

/* V9.13.5: recent-market zoom independent from earlier acquisitions */
.dossierChartViews .marketZoomIntro{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 16px;margin:8px 0 12px;color:#262626}.dossierChartViews .marketZoomIntro span{font-size:13px;color:#666}.dossierChartViews .fullTimelineDetails{margin-top:16px;border:1px solid #d5cec5;border-radius:14px;padding:12px 14px}.dossierChartViews .fullTimelineDetails>summary{cursor:pointer;font-weight:700;color:#292929}.dossierChartViews .fullTimelineDetails[open]>summary{margin-bottom:14px}.dossierChartViews .dossierChartFrame{margin:0}.dossierChartViews .pricePoint{r:5px;stroke:#fff;stroke-width:1.5}.dossierChartViews .investmentChartNote{color:#535353}

/* V9.13.6 — focused workshop review and theme progress */
.workshopFilters{display:flex;flex-wrap:wrap;align-items:end;gap:12px;margin:16px 0;background:#f5f2ec;border:1px solid #cec8bf;border-radius:14px;padding:16px;color:#171717}
.workshopFilters label{display:flex;flex-direction:column;gap:5px;min-width:170px;flex:1;font-size:13px;font-weight:700;color:#171717}
.workshopFilters select{width:100%;min-height:42px;border:1px solid #827a71;border-radius:9px;background:#fff;color:#191919;padding:8px 10px;font:inherit}
.workshopFilters .btn{min-height:42px;color:#171717!important;background:#fff!important;border-color:#827a71!important}
.workshopThemeOverview{background:#f6f4ef;border:1px solid #cbc3ba;border-radius:14px;padding:14px 18px;color:#1a1a1a;margin:14px 0}
.workshopThemeOverview summary{cursor:pointer;font-weight:800;color:#171717}
.workshopThemeStats{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin-top:15px}
.workshopThemeStat{display:grid;gap:5px;padding:12px;border:1px solid #d6d0c9;border-radius:10px;background:#fff;color:#171717}
.workshopThemeStat strong,.workshopThemeStat span{color:#171717!important}
.workshopThemeStat span{font-size:12px}
.workshopThemeStat .progress{height:7px;background:#e0dcd5;border-radius:9px;overflow:hidden}
.workshopThemeStat .progress span{display:block;height:100%;background:#28754e}

/* V9.13.7 — comparison bridge between personal acquisition and verified market observations */
.investmentTimelineChart .acquisitionComparisonBridge{stroke:#117247;stroke-width:2.75;stroke-dasharray:8 7;opacity:.76;stroke-linecap:round}
.investmentTimelineChart .legendLine.comparison{display:inline-block;width:29px;border-top:3px dashed #117247;vertical-align:middle;margin-right:5px}

/* V9.13.8 — Batch suggestions */
.workshopBatchPanel{background:#f8f6f2;color:#181818;border:1px solid #c8c2b8;border-radius:16px;padding:18px;margin:16px 0;display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.workshopBatchPanel strong{color:#181818;font-size:19px}.workshopBatchPanel p{color:#444;margin:5px 0 0;font-size:14px}.workshopBatchActions{display:flex;gap:8px;flex-wrap:wrap}.workshopBatchPanel .btn{color:#171717;background:#fff;border:1px solid #777}.workshopBatchCheck{display:flex;align-items:center;gap:8px;font-weight:700;font-size:13px;color:#171717!important;margin-bottom:6px}.workshopBatchCheck input{accent-color:#136b48;width:18px;height:18px}

/* V9.13.9 — evidence-based enrichment cues */
#view .workshopCard .workshopEvidence{margin-top:12px;border:1px solid rgba(0,0,0,.25);border-radius:10px;padding:10px 12px;background:rgba(255,255,255,.48)!important;color:#181818!important}
#view .workshopCard .workshopEvidence summary{font-size:14px;font-weight:800;cursor:pointer;color:#181818!important}
#view .workshopCard .workshopEvidence li{font-size:13px;color:#262626!important;margin-top:6px}
/* V9.14.0 scanner usage panel */
.healthApiCard{margin-top:18px}
.healthApiTotals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.healthApiTotals>div{background:var(--surface-2,rgba(127,127,127,.06));border:1px solid rgba(127,127,127,.24);padding:14px;border-radius:10px;display:flex;flex-direction:column;gap:6px}
.healthApiTotals small{color:var(--muted,#888);font-size:12px}
.healthApiTotals strong{font-size:22px;font-weight:750;font-variant-numeric:tabular-nums}
.healthApiTrack{height:11px;background:rgba(128,128,128,.2);overflow:hidden;border-radius:999px;margin:16px 0 11px}
.healthApiTrack span{display:block;height:100%;background:#2c955b;border-radius:inherit}
.healthApiCard .apiWarn{color:#b36b10;font-weight:700}
@media(max-width:640px){.healthApiTotals{grid-template-columns:1fr}.healthApiTotals strong{font-size:20px}}

/* V9.14.4 Buy Next shortlist */
.buyNextSummary{display:flex;gap:12px;align-items:center;flex-wrap:wrap;background:#fff;border:1px solid #d7d0c6;border-radius:12px;padding:14px 18px;margin:10px 0 18px;color:#161616}
.buyNextSummary span{color:#494949;font-size:13px}
.buyNextRank{font-size:13px;font-weight:800;color:#223f32;margin-bottom:5px}
@media(max-width:700px){.buyNextSummary{display:block}.buyNextSummary span{display:block;margin-top:5px}}

/* V9.14.5 — Buy Next cards must grow to fit their evidence and price sections. */
.compactOpportunityGrid.buyNextGrid{grid-auto-rows:auto;align-items:stretch}
.buyNextGrid .marketOpportunityCard{height:auto;min-height:0;overflow:visible;display:flex;flex-direction:column}
.buyNextGrid .marketOpportunityBody{flex:1 0 auto;min-height:0;display:flex;flex-direction:column}
.buyNextGrid .oppRadarDetail{flex-shrink:0;min-height:0}
.buyNextGrid .oppFooter{margin-top:auto;flex-shrink:0;padding-bottom:3px}

/* V9.14.6 Buy Next evidence */
.buyNextGrid .buyNextEvidence{font-size:.82rem;line-height:1.4;color:#34453d;margin:8px 0 10px;padding:8px 10px;border-left:3px solid #238357;background:#f1f7f2;border-radius:4px;white-space:normal}
.buyNextGrid .buyNextRank{font-weight:800;line-height:1.35}

/* V9.14.7: Buy Next is an evidence-rich two-column grid, responsive to its own available width. */
.buyNextResponsiveContainer{container-type:inline-size;width:100%;min-width:0}
.compactOpportunityGrid.buyNextGrid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:auto;gap:20px;align-items:stretch}
.buyNextGrid .marketOpportunityCard{height:auto;min-width:0;max-width:100%;overflow:hidden}
.buyNextGrid .marketOpportunityImage{height:220px;flex:0 0 220px;padding:14px}
.buyNextGrid .marketOpportunityBody{min-width:0;padding:18px 20px 20px;gap:0}
.buyNextGrid .marketOpportunityBody h3{height:auto;min-height:0;max-height:none;display:block;overflow-wrap:anywhere;line-height:1.25;margin:7px 0 5px;font-size:20px}
.buyNextGrid .oppRadarDetail{min-width:0;overflow-wrap:anywhere;word-break:normal;gap:8px;font-size:13px}
.buyNextGrid .oppRadarDetail>div{min-width:0;flex-wrap:wrap;justify-content:flex-start;gap:7px 12px;line-height:1.5}
.buyNextGrid .oppRadarDetail>div.buyNextRank{display:block;line-height:1.5}
.buyNextGrid .buyNextEvidence{padding:10px 12px;margin:8px 0 10px;line-height:1.55}
.buyNextGrid .oppRadarPill{max-width:100%;white-space:normal;overflow-wrap:anywhere}
.buyNextGrid .oppPriceStatusRow{flex-wrap:wrap;align-items:baseline;gap:6px 12px}
.buyNextGrid .oppPriceStatusRow strong{max-width:100%;overflow-wrap:anywhere}
.buyNextGrid .oppPriceStatusRow .oppActionWord{white-space:normal;overflow-wrap:anywhere}
@container (max-width:980px){.compactOpportunityGrid.buyNextGrid{grid-template-columns:minmax(0,1fr);gap:16px}}
@container (max-width:530px){.buyNextGrid .marketOpportunityBody{padding:14px 15px 17px}.buyNextGrid .marketOpportunityImage{height:185px;flex-basis:185px}.buyNextGrid .marketOpportunityBody h3{font-size:18px}}

/* V9.15.0 consolidated intelligence additions */
.scanDelta .dossierFacts>div{min-width:0}.scanDeltaChange{display:block;margin-top:5px;font-size:.83rem;color:var(--text-muted,#6a707d);overflow-wrap:anywhere}.buyNextCollector{margin-top:7px;border-top:1px solid rgba(40,40,40,.15);padding-top:7px;font-size:.84em;font-weight:600;overflow-wrap:anywhere}

/* V9.16 Showdown */
.showdownPanel,.showdownRanking{margin:20px 0;padding:24px;border:1px solid #aaa5;border-radius:18px;background:var(--surface,#fff);color:inherit}
.showdownHeading{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap}.showdownHeading label{display:grid;gap:5px}.showdownHeading select{padding:10px;border-radius:9px;max-width:210px}.showdownStats{font-size:13px;opacity:.8;margin:15px 0}.showdownArena{display:grid;grid-template-columns:minmax(0,1fr) 40px minmax(0,1fr);gap:12px;align-items:center;overflow:hidden;padding:8px 18px 25px}.showdownFighter{display:flex;flex-direction:column;align-items:center;gap:12px;cursor:pointer;min-width:0;min-height:300px;padding:18px;border-radius:15px;border:3px solid var(--fighter-theme,#aaa);background:#fbfaf7;color:#161616;position:relative;will-change:transform}.showdownFighter img{width:100%;max-width:170px;height:180px;object-fit:contain}.showdownFighter strong{text-align:center;font-size:17px;overflow-wrap:anywhere}.showdownFighter small{color:#444}.showdownPick{margin-top:auto;font-weight:bold;border:1px solid #444;border-radius:10px;padding:9px 16px}.showdownVs{font-weight:900;text-align:center}.showdownControls{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.showdownControls small{opacity:.7}.showdownRankGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));gap:9px}.showdownRankCard{display:flex;align-items:center;gap:12px;padding:9px;text-align:left;border:1px solid #aaa6;border-radius:10px;background:transparent;color:inherit;cursor:pointer;min-width:0}.showdownRankCard img{width:52px;height:60px;object-fit:contain}.showdownRankCard span:last-child{min-width:0}.showdownRankCard b{display:block;overflow-wrap:anywhere}.showdownRankCard small{display:block;opacity:.7}.showdownPlace{font-weight:900;font-size:18px}.watchlistManagement{margin-top:30px}.showdownVictory{z-index:2;animation:dbcWinner .42s ease-out forwards}.showdownDefeat{animation:dbcLoser .42s ease-in forwards}@keyframes dbcWinner{0%{transform:translateX(0) rotate(0)}45%{transform:translateX(17px) rotate(-5deg) scale(1.055)}100%{transform:translateX(0) rotate(0)}}@keyframes dbcLoser{0%{transform:translateX(0) rotate(0);opacity:1}40%{transform:translateX(10px) rotate(9deg)}100%{transform:translateX(130%) rotate(31deg);opacity:0}}@media(max-width:650px){.showdownPanel,.showdownRanking{padding:12px}.showdownArena{grid-template-columns:minmax(0,1fr) 18px minmax(0,1fr);gap:5px;padding:2px 0 15px}.showdownFighter{padding:8px;min-height:255px}.showdownFighter img{height:115px}.showdownFighter strong{font-size:13px}.showdownVs{font-size:11px}}@media(prefers-reduced-motion:reduce){.showdownVictory,.showdownDefeat{animation:none!important}}

/* V9.16.2 Watchlist: consistent light surfaces and dark, legible type */
#view .showdownPanel,#view .showdownRanking{background:#fff;color:#171717}
#view .showdownPanel h2,#view .showdownRanking h2,#view .showdownPanel p,#view .showdownRanking p,#view .showdownHeading label,#view .showdownStats,#view .showdownVs,#view .showdownControls small{color:#171717}
#view .showdownPanel .muted,#view .showdownRanking .muted{color:#606060}
#view .showdownStats{opacity:1;color:#5e5e5e}
#view .showdownRankCard{background:#fff;color:#171717;border-color:#d9d9d9}
#view .showdownRankCard b,#view .showdownPlace{color:#171717}
#view .showdownRankCard small{color:#606060;opacity:1}
#view .showdownRankCard:hover{background:#f6f6f6;border-color:#989898}
#view .showdownHeading select{background:#fff;color:#171717;border:1px solid #b6b6b6}
.showdownRankingHeader{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-bottom:14px}
.showdownRankingHeader>div:first-child{flex:1 1 320px;min-width:0}
.showdownRankingHeader h2{margin:0 0 8px}
.showdownRankingHeader p{margin:0}
.showdownProgress{width:230px;max-width:100%;flex:0 1 230px;display:grid;gap:7px;color:#171717}
.showdownProgressLabel{display:flex;justify-content:space-between;gap:8px;font-size:12px}
.showdownProgressLabel span{font-variant-numeric:tabular-nums}
.showdownProgressTrack{height:11px;overflow:hidden;border-radius:100px;background:#e8e8e8}
.showdownProgressTrack>span{display:block;height:100%;border-radius:100px;background:#208e5b;transition:width .25s ease}
.showdownProgress>small{font-size:11px;text-align:right;color:#666}
/* Each side displays the appropriate figure-theme tint. On voting the winning color claims the arena. */
#view .showdownArena{position:relative;isolation:isolate;border-radius:16px;background:linear-gradient(90deg,color-mix(in srgb,var(--arena-left) 25%,white) 0%,color-mix(in srgb,var(--arena-left) 25%,white) 50%,color-mix(in srgb,var(--arena-right) 25%,white) 50%,color-mix(in srgb,var(--arena-right) 25%,white) 100%)}
#view .showdownArena::before{content:"";position:absolute;inset:0;z-index:-1;background:color-mix(in srgb,var(--arena-winner,var(--arena-left)) 25%,white);clip-path:inset(0 100% 0 0);pointer-events:none;border-radius:inherit}
#view .showdownArena.showdownTakeover::before{animation:dbcThemeClaim .42s ease-out forwards}
@keyframes dbcThemeClaim{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}
#view .showdownFighter{background:#fbfaf7;color:#171717}
@media(max-width:650px){.showdownProgress{flex:1 1 100%;width:100%}}
@media(prefers-reduced-motion:reduce){#view .showdownArena.showdownTakeover::before{animation:none;clip-path:inset(0 0 0 0)}.showdownProgressTrack>span{transition:none}}


/* V9.16.3 — Entire showdown widget is a theme-color arena.
   A diagonal division follows opposing theme colors, while an animated
   winner layer expands over both sections. Ranking cards stay unchanged. */
#view .showdownPanel{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  border:1px solid rgba(0,0,0,.15);
  background:linear-gradient(114deg,
    color-mix(in srgb,var(--arena-left,#FCC010) 55%,white) 0%,
    color-mix(in srgb,var(--arena-left,#FCC010) 55%,white) 50%,
    color-mix(in srgb,var(--arena-right,#FCC010) 55%,white) 50.1%,
    color-mix(in srgb,var(--arena-right,#FCC010) 55%,white) 100%);
  color:#171717;
}
#view .showdownPanel::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:color-mix(in srgb,var(--arena-winner,var(--arena-left,#FCC010)) 55%,white);
  clip-path:polygon(-12% 0,-2% 0,8% 100%,-12% 100%);
}
#view .showdownPanel > *{position:relative;z-index:1}
#view .showdownPanel.showdownTakeoverLeft::before{animation:dbcPanelClaimLeft .42s ease-out forwards}
#view .showdownPanel.showdownTakeoverRight::before{animation:dbcPanelClaimRight .42s ease-out forwards}
@keyframes dbcPanelClaimLeft{
  from{clip-path:polygon(-12% 0,-2% 0,8% 100%,-12% 100%)}
  to{clip-path:polygon(-12% 0,110% 0,110% 100%,-12% 100%)}
}
@keyframes dbcPanelClaimRight{
  from{clip-path:polygon(102% 0,112% 0,112% 100%,92% 100%)}
  to{clip-path:polygon(-12% 0,112% 0,112% 100%,-12% 100%)}
}
#view .showdownArena{background:transparent;border-radius:0;isolation:auto}
#view .showdownArena::before{display:none}
#view .showdownFighter{background:rgba(255,255,255,.72);backdrop-filter:blur(3px);color:#171717}
#view .showdownPanel .showdownControls .btn.secondary{background:rgba(255,255,255,.78);color:#171717;border-color:rgba(0,0,0,.22)}
#view .showdownPanel .showdownHeading select{background:rgba(255,255,255,.90)}
@media(prefers-reduced-motion:reduce){
  #view .showdownPanel.showdownTakeoverLeft::before,
  #view .showdownPanel.showdownTakeoverRight::before{animation:none;clip-path:inset(0)}
}

/* V9.16.4 — Knock losing figure offscreen on its own side. */
.showdownDefeatLeft{animation:dbcLoserLeft .42s ease-in forwards}
@keyframes dbcLoserLeft{
  0%{transform:translateX(0) rotate(0);opacity:1}
  40%{transform:translateX(-10px) rotate(-9deg)}
  100%{transform:translateX(-130%) rotate(-31deg);opacity:0}
}
@media(prefers-reduced-motion:reduce){.showdownDefeatLeft{animation:none!important}}

/* V9.16.5 — 10-second black gut-choice timer across the themed showdown panel.
   Each new matchup gets a fresh bar; timed-out rounds skip, never vote. */
#view .showdownPanel .showdownCountdown{
  height:9px; width:100%; margin:0 0 19px;
  border-radius:999px; overflow:hidden; background:transparent;
  border:0;
}
#view .showdownPanel .showdownCountdownBar{
  display:block; height:100%; width:100%; background:#111; border-radius:999px;
  transform-origin:left center;
  animation:dbcShowdownCountdown 5s linear both;
}
@keyframes dbcShowdownCountdown{from{transform:scaleX(1)}to{transform:scaleX(0)}}

/* V9.16.6 — Market introduction in DBC dark blue; preserve the neutral table. */
#view .marketBento{background:#18365B!important;color:#fff!important;}
#view .marketBento .marketIntroGrid,
#view .marketBento .marketIntroGrid h2,
#view .marketBento .marketIntroGrid p,
#view .marketBento .marketIntroGrid .muted,
#view .marketBento .marketTrendKey,
#view .marketBento .marketTrendKey span,
#view .marketBento .marketTrendKey b,
#view .marketBento .marketTrendKey small{color:#fff!important;}
#view .marketBento .marketIntroGrid p,
#view .marketBento .marketTrendKey span,
#view .marketBento .marketTrendKey small{opacity:.88;}
#view .marketBento .tablewrap{background:#f8f5f0;color:#111!important;}
/* Temporary collection audit */
.audit{max-width:1320px;margin:0 auto;padding:30px 20px 60px;color:var(--text,#e6eaf0)}.auditHeading{display:flex;justify-content:space-between;align-items:start;gap:12px}.auditHeading h1{margin:6px 0;font-size:30px}.auditHeading p{margin-top:0}.auditProgress{border:1px solid #ffffff27;border-radius:15px;padding:20px 23px;margin:20px 0;background:var(--card,#18202b)}.auditProgressTop{display:flex;align-items:center;justify-content:space-between;font-size:20px;margin-bottom:15px}.auditTrack{height:20px;background:#858b8e33;border-radius:30px;overflow:hidden}.auditTrack span{display:block;height:100%;background:#208f61;border-radius:30px;transition:width .2s}.auditProgressFoot{text-align:center;color:var(--muted,#a8b1c1);margin-top:9px}.auditTabs{display:flex;gap:8px;margin:20px 0}.auditTabs button{background:transparent;border:1px solid #ffffff33;border-radius:9px;color:inherit;padding:10px 16px;cursor:pointer}.auditTabs button.active{background:#208f61;color:#fff;border-color:#208f61}.auditTools{display:flex;gap:10px;flex-wrap:wrap}.auditTools input{flex:2;min-width:200px}.auditTools select{flex:1;min-width:170px}.auditTools input,.auditTools select,.auditControl input,.auditControl select{background:var(--card,#17202c);color:inherit;border:1px solid #ffffff35;padding:11px;border-radius:8px;min-height:42px}.auditCount{margin:18px 0 10px;color:var(--muted,#a8b1c1);font-size:13px}.auditRows{display:grid;gap:8px}.auditRow{display:flex;gap:16px;align-items:center;padding:13px;border:1px solid #ffffff24;background:var(--card,#18202b);border-radius:11px}.auditRow img{width:68px;height:75px;object-fit:contain;flex-shrink:0}.auditDescription{flex:1;min-width:150px}.auditDescription strong{display:block;font-size:15px}.auditDescription .muted{font-size:12px}.auditId{font-size:12px;color:#7bafee;font-weight:700}.auditRowValue{font-size:20px;font-weight:700;margin-top:5px}.auditRowValue small{font-size:11px;font-weight:400;color:var(--muted,#a8b1c1)}.auditInputs{display:flex;align-items:end;gap:9px;flex:2}.auditControl{display:flex;flex-direction:column;gap:5px;min-width:110px}.auditControl label{font-size:11px;color:var(--muted,#a8b1c1)}.auditControl input[type=number]{width:100px}.auditNote{flex:1}.auditNote input{width:100%;min-width:130px}.auditPaging{display:flex;align-items:center;justify-content:center;gap:16px;margin:20px}.auditReconcile{margin-top:34px;padding:23px;border:1px solid #ffffff30;border-radius:12px}.auditReconcile h2{margin-top:0}.auditError{padding:12px;border:1px solid #f77777;color:#ffb6b6;border-radius:8px}.auditEmpty{padding:40px;text-align:center}.audit button:disabled{opacity:.4;cursor:not-allowed}@media(max-width:850px){.auditRow{flex-wrap:wrap}.auditInputs{flex-basis:100%;flex-wrap:wrap}.auditDescription{flex:1}.auditNote{flex-basis:100%}} 

/* Collection Audit simplified checkboxes */
.auditRow{transition:background .14s,border-color .14s;}
.auditRow.auditChecked{background:rgba(25,126,81,.11);border-color:rgba(47,185,117,.63)}
.auditCheckWrap{flex:0 0 42px;display:flex;justify-content:center;align-items:center;cursor:pointer;position:relative}
.auditCheckWrap input{width:33px;height:33px;cursor:pointer;appearance:none;border:2px solid #8d9aaa;border-radius:8px;background:transparent;margin:0;transition:background .13s}
.auditCheckWrap input:checked{background:#208f61;border-color:#3dd28b}
.auditCheckWrap input:focus-visible{outline:3px solid #93c5fd;outline-offset:3px}
.auditCheckVisual{position:absolute;color:#fff;font-size:24px;font-weight:800;opacity:0;pointer-events:none;line-height:1}
.auditCheckWrap input:checked+.auditCheckVisual{opacity:1}
.auditInputs{flex:1.2;min-width:180px}
.auditNote{width:100%}
.auditNote input{min-height:42px}
@media(max-width:850px){.auditCheckWrap{flex-basis:38px}.auditInputs{flex-basis:100%;padding-left:48px}}

/* Collection Audit V3: match Portfolio controls and theme-color checklist cards. */
.audit .auditSearchRail{width:100%;margin:12px 0 14px;display:flex;gap:10px;align-items:center}
.audit .auditSearchRail select{flex:0 1 270px;min-width:190px}
.audit .auditSearchRail input.search{flex:1;min-width:210px;width:auto}
.audit .auditThemeChips{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:14px}
.audit .auditThemeChips .chip{cursor:pointer}
.audit .auditRow{background:var(--audit-theme);color:var(--audit-ink);border:2px solid color-mix(in srgb,var(--audit-theme) 75%,#ffffff);box-shadow:none}
.audit .auditRow.auditChecked{background:var(--audit-theme);border:3px solid #42d58c;box-shadow:inset 0 0 0 2px rgba(0,0,0,.22)}
.audit .auditDescription strong,.audit .auditDescription .muted,.audit .auditId,.audit .auditRowValue,.audit .auditRowValue small,.audit .auditControl label{color:var(--audit-ink)!important}
.audit .auditDescription .muted,.audit .auditRowValue small,.audit .auditControl label{opacity:.85}
.audit .auditCheckWrap input{background:#fff;border-color:rgba(0,0,0,.35)}
.audit .auditCheckWrap input:checked{background:#197a50;border-color:#dcffed}
.audit .auditNote input{background:#fff!important;color:#171717!important;border:1px solid #b5bac5!important}
.audit .auditNote input::placeholder{color:#757575!important;opacity:1}
.audit .auditRow img{background:#fff;border-radius:5px;padding:3px}
@media(max-width:650px){.audit .auditSearchRail{flex-wrap:wrap}.audit .auditSearchRail select,.audit .auditSearchRail input.search{flex:1 1 100%;width:100%}}

/* Collection Audit V4: identical outlined theme-filter behavior to Portfolio. */
.audit .auditThemeChips{width:100%;justify-content:space-between;gap:10px;padding:3px 0 8px;margin:0 0 14px;overflow:auto}
.audit .auditThemeChips .chip,
.audit .auditThemeChips .chip:not(.active){background:transparent!important;color:#fff!important;border:1px solid rgba(255,255,255,.48)!important;box-shadow:none!important;font-weight:550;padding:8px 12px}
.audit .auditThemeChips .chip.active{background:transparent!important;color:#fff!important;border:3px solid var(--chip,#fff)!important;box-shadow:none!important;padding:6px 10px}
.audit .auditThemeChips .chip:focus-visible{outline:2px solid #fff;outline-offset:3px}
@media(min-width:951px){.audit .auditThemeChips{display:grid;grid-template-columns:repeat(9,minmax(max-content,1fr));align-items:center;justify-items:center}.audit .auditThemeChips .chip{width:max-content}}
@media(max-width:950px){.audit .auditThemeChips{display:flex;justify-content:space-between;overflow-x:auto}}
