/* Portfolio workspace: catalog variants are positions; saved copies are units. */
:root{--holding-ink:#17211c;--holding-muted:#626e67;--holding-line:#e3e9e5;--holding-green:#087443;--holding-red:#b63342;--holding-surface:#f5f8f6}
body.in-app:has(#view-inventory:not([hidden])),body.in-app:has(#view-collection:not([hidden])),body.portfolio-workbench{background:#fff;color:var(--holding-ink)}
.in-app :is(#view-inventory,#view-collection){max-width:1160px;padding:40px 28px 80px;margin:auto}
.holdings-page-head{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:0 0 30px}
.in-app .holdings-page-head .app-page-title{font-size:28px;font-weight:650;margin:0 0 8px}
.holdings-page-head p{font-size:14px;color:var(--holding-muted);margin:0;line-height:1.6}
.holdings-action{display:inline-flex;justify-content:center;align-items:center;min-height:44px;padding:12px 22px;border-radius:24px;background:var(--holding-green);color:#fff!important;text-decoration:none;white-space:nowrap;font-size:14px;font-weight:650}
.holdings-links{display:flex;gap:28px;flex-wrap:wrap;padding:18px 0;margin:0 0 28px;border-bottom:1px solid var(--holding-line);font-size:14px}
.holdings-links a{min-height:44px;display:inline-flex;align-items:center;color:var(--holding-ink)!important;text-decoration:none;font-weight:600}
.holdings-links a:hover{text-decoration:underline;text-underline-offset:6px}
.in-app :is(#collection-overview,#inventory-overview){background:transparent;border:0;border-radius:0;padding:0;margin:0 0 32px;box-shadow:none}
.in-app :is(#collection-overview,#inventory-overview) .overview-label{font-size:14px;color:var(--holding-muted);margin:0 0 8px}
.in-app :is(#collection-overview,#inventory-overview) .overview-value{font-size:clamp(42px,5vw,64px);letter-spacing:-.055em;font-weight:500;line-height:1.1;margin:8px 0 16px;font-variant-numeric:tabular-nums}
.in-app .collection-balance{max-width:850px;border:0;padding:0;background:transparent;margin-top:24px}
.in-app .collection-balance h2{font-size:15px;font-weight:550;color:var(--holding-muted)}
.in-app .collection-balance svg{width:100%;height:180px;color:var(--holding-green);display:block}
.in-app .collection-balance .hint{max-width:80ch;font-size:12px}
.in-app :is(#view-inventory,#view-collection) .hint{color:var(--holding-muted);line-height:1.6}
.in-app :is(#seller-nav,#hub-platforms,[data-type-filters]) .chip{border:0;border-radius:0;background:transparent;color:var(--holding-muted);padding:12px 14px;font-weight:600;min-height:44px;box-shadow:none}
.in-app :is(#seller-nav,#hub-platforms,[data-type-filters]) .chip.active{color:var(--holding-green);border-bottom:2px solid var(--holding-green);background:transparent}
.in-app #seller-nav{border-bottom:1px solid var(--holding-line);margin:28px 0 16px;gap:4px}
.in-app .inventory-query{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:16px 0}
.in-app #inventory-search{flex:1;min-width:200px;max-width:100%;margin:0;background:var(--holding-surface);border:1px solid var(--holding-line);border-radius:24px;padding:12px 18px}
.in-app :is(#view-inventory,#view-collection) :is(input,select){border-color:var(--holding-line);border-radius:8px;min-height:44px}
.in-app #inventory-totals,.in-app #collection-totals{font-size:12px;font-weight:400;border:0;border-radius:0;padding:14px 0;background:transparent;color:var(--holding-muted);margin:0}
.in-app #inventory-list{border-top:1px solid var(--holding-line);margin-top:22px}
.in-app #inventory-list>li{border:0;border-bottom:1px solid var(--holding-line);border-radius:0;background:white;padding:22px 0;box-shadow:none;gap:16px}
.in-app #inventory-list .row-body{display:grid;grid-template-columns:minmax(0,1fr) 200px;gap:24px;align-items:center}
.in-app #inventory-list .row-open{grid-template-columns:56px minmax(0,1fr);gap:20px;align-items:center}
.in-app #inventory-list .row-open>.thumb-frame{width:56px;max-width:56px;height:64px;background:var(--holding-surface);border:0;border-radius:8px}
.in-app #inventory-list .name{font-weight:650;font-size:16px;line-height:1.5}
.in-app #inventory-list .sub{font-size:12px;color:var(--holding-muted);line-height:1.6}
.in-app #inventory-list .row-estimate{text-align:right;margin:0}
.holding-position{font-size:13px;font-variant-numeric:tabular-nums;line-height:1.6;color:var(--holding-ink)}
.holding-position strong{font-size:14px;font-weight:550}.holding-position small{display:block;font-size:11px;color:var(--holding-muted)}
.in-app #inventory-list .compact-valuation{margin:8px 0 0}.in-app #inventory-list .compact-valuation strong{font-size:20px;font-weight:550}
.in-app #inventory-list .compact-valuation small{font-size:11px}
.in-app #inventory-list .pill,.in-app #inventory-list .type-pill{font-size:10px;font-weight:500;box-shadow:none;border:0;background:var(--holding-surface);color:var(--holding-muted)}
.in-app #collection-wall{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px;border-top:1px solid var(--holding-line)}
.in-app #collection-wall .wall-card{border:0;border-bottom:1px solid var(--holding-line);border-radius:0;box-shadow:none;padding:22px 0;background:#fff}
.in-app #collection-wall .wall-open{display:grid;grid-template-columns:80px minmax(0,1fr);gap:20px;align-items:center}
.in-app #collection-wall .art-frame{height:100px;background:var(--holding-surface);border-radius:8px}
.in-app #collection-wall .wall-copy{padding:0;min-width:0}.in-app #collection-wall .wall-name{font-size:16px;margin-bottom:6px}
.in-app #collection-wall .compact-valuation{margin:8px 0}.in-app #collection-wall .compact-valuation strong{font-size:22px;font-weight:500}
.in-app #collection-wall .card-market-history{padding:8px 0;border-color:var(--holding-line);margin:8px 0 0}
.in-app #collection-wall .provenance-badge{font-size:10px;color:var(--holding-muted);background:transparent;border:0;padding:0}
.in-app #collection-wall.is-empty{display:block}.in-app .collection-search{max-width:520px}
.in-app #ebay-list-bar{padding:16px;border:1px solid var(--holding-line);border-radius:10px;background:var(--holding-surface);margin-top:20px}
.in-app #btn-export{background:white;color:var(--holding-ink);border:1px solid var(--holding-line);border-radius:22px;width:auto;padding:12px 24px}
.in-app #sales-metrics,.in-app #inventory-metrics{border-top:1px solid var(--holding-line);padding-top:24px}
.in-app .metric-grid{gap:20px}.in-app .metric-grid>*{border-color:var(--holding-line);box-shadow:none;background:#fff;border-radius:8px}
body.portfolio-workbench>header{background:#fff;color:var(--holding-ink);border-bottom:1px solid var(--holding-line)}
.portfolio-workbench>header .mk-logo{color:#d01012}.portfolio-workbench>header .back{color:var(--holding-ink);border-color:var(--holding-line);border-radius:22px}
.portfolio-workbench main{max-width:1160px;padding:40px 28px}.portfolio-workbench .intro{margin:0 0 24px}.portfolio-workbench .intro h1{font-size:28px;font-weight:600;font-family:Archivo,Arial,sans-serif}
.portfolio-workbench .portfolio-overview{grid-template-columns:minmax(0,2fr) minmax(240px,1fr);gap:48px}
.portfolio-workbench .portfolio-overview>section,.portfolio-workbench #portfolio>section{border:0;border-radius:0;padding:0;background:transparent;box-shadow:none}
.portfolio-workbench #portfolio>section{padding-top:28px;border-top:1px solid var(--holding-line);margin-bottom:36px}
.portfolio-workbench .portfolio-balance{font-size:64px;font-family:Archivo,Arial,sans-serif;font-weight:500;letter-spacing:-.055em}
.portfolio-workbench .portfolio-accounting{background:var(--holding-surface)!important;padding:24px!important;border-radius:10px!important}
.portfolio-workbench .line-chart polyline{stroke:var(--holding-green)}.portfolio-workbench .line-chart circle{fill:var(--holding-green)}
.portfolio-workbench .history .ranges button[aria-pressed=true]{background:var(--holding-green);border-color:var(--holding-green);color:white}
.portfolio-workbench .holding{border-top:1px solid var(--holding-line);padding:22px 0}.portfolio-workbench .catalog-photo{border-radius:8px;background:var(--holding-surface)}
.portfolio-workbench .holding-details-open{color:var(--holding-green)}.portfolio-workbench .market-change.up{color:var(--holding-green)}.portfolio-workbench .market-change.down{color:var(--holding-red)}
.holdings-links a:focus-visible,.holdings-action:focus-visible{outline:3px solid #156bc4;outline-offset:4px}
@media(max-width:760px){
.in-app :is(#view-inventory,#view-collection),.portfolio-workbench main{padding:28px 16px 64px}
.holdings-page-head{align-items:start;gap:16px}.holdings-page-head p{font-size:12px;max-width:30ch}.holdings-action{padding:10px 16px;font-size:12px}
.in-app .holdings-page-head .app-page-title,.portfolio-workbench .intro h1{font-size:24px}.holdings-links{gap:20px;margin-bottom:24px;font-size:12px;padding:6px 0}
.in-app #inventory-list .row-body{grid-template-columns:minmax(0,1fr);gap:10px}.in-app #inventory-list .row-open{grid-template-columns:44px minmax(0,1fr);gap:12px}
.in-app #inventory-list .row-open>.thumb-frame{width:44px;height:54px}.in-app #inventory-list .row-estimate{margin-left:56px;display:flex;align-items:start;justify-content:space-between;gap:12px;text-align:left}
.in-app #inventory-list .row-estimate .compact-valuation{margin:0;text-align:right}.in-app #inventory-list .compact-valuation strong{font-size:18px}
.in-app #inventory-list .name{font-size:14px}.in-app #inventory-list>li{padding:18px 0;gap:10px}
.in-app #collection-wall{grid-template-columns:1fr}.in-app #collection-wall .wall-open{grid-template-columns:64px minmax(0,1fr);gap:16px}.in-app #collection-wall .art-frame{height:84px}
.in-app #collection-wall .wall-name{font-size:15px}.in-app .inventory-filters{width:100%;display:flex;flex-wrap:wrap}.in-app .inventory-filters select{flex:1;min-width:90px}
.portfolio-workbench .portfolio-overview{display:block}.portfolio-workbench .portfolio-balance{font-size:48px}.portfolio-workbench .portfolio-accounting{margin:28px 0;padding:18px!important}
}
@media(max-width:360px){.holdings-page-head{flex-wrap:wrap}.holdings-action{min-height:44px}.in-app #inventory-list .row-estimate{flex-wrap:wrap}.in-app #inventory-list .row-estimate .compact-valuation{text-align:left}}
@media(prefers-reduced-motion:reduce){.holdings-action,.wall-card,.holding{transition:none}}
.holdings-demo-banner{position:relative;z-index:100;background:#edf6f0;color:#17462e;text-align:center;padding:10px 16px;font:12px/1.5 Archivo,Arial,sans-serif;border-bottom:1px solid #cde2d4}
.in-app .holdings-balance-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:48px;align-items:start;padding:12px 0 24px}
.in-app .holdings-balance-grid .collection-balance{margin:0}.in-app .holdings-balance-grid .collection-balance svg{height:130px}
.in-app .holdings-balance-grid .collection-balance>a{color:var(--holding-green);font-size:12px}
.in-app #view-inventory>.filters{max-width:320px}.in-app #inventory-search{flex:1 1 320px}
.in-app .inventory-query .inventory-filters{flex:1 1 420px;display:flex;flex-wrap:wrap;gap:8px;margin:0;max-width:none}
.in-app .inventory-query .inventory-filters select{flex:1;min-width:120px;max-width:100%;margin:0}
.in-app #collection-wall .art-type,.in-app #collection-wall .art-status,.in-app #collection-wall .avail{display:none}
.in-app #collection-wall .art-frame img{object-fit:contain;padding:6px;width:100%;height:100%}
.in-app #collection-wall .qty-badge{font-size:10px;padding:2px 4px;bottom:4px;right:4px}
.in-app #inventory-list .sold-on-label{text-transform:none;font-size:12px;letter-spacing:0;color:var(--holding-muted)}
.in-app #inventory-list .sold-on{margin:0 0 12px}.in-app #inventory-list .sold-on-btn{border-color:var(--holding-line);border-radius:20px;font-size:12px;min-height:44px}
@media(max-width:760px){.in-app .holdings-balance-grid{grid-template-columns:1fr;gap:24px;padding:0}.in-app .holdings-balance-grid .collection-balance svg{height:140px}.in-app #view-inventory>.filters{max-width:none}.in-app .inventory-query .inventory-filters{flex:1 1 100%}.in-app .inventory-query .inventory-filters select{min-width:140px}}
.in-app .inventory-query{flex-direction:row}
.portfolio-workbench>header .mk-logo>span:last-child{color:#d01012}
.in-app :is(#item-sheet,#copies-sheet,#sale-modal) .card{border-color:var(--holding-line);border-radius:14px;background:#fff;box-shadow:0 16px 60px #17211c18}
.in-app #item-sheet .sheet-head{border-bottom:1px solid var(--holding-line);background:#fff}
.in-app :is(#item-sheet,#sale-modal) :is(input,select,textarea){border-color:var(--holding-line);border-radius:8px;background:#fff}
.in-app :is(#item-sheet,#sale-modal) .primary{background:var(--holding-green);border-color:var(--holding-green);color:#fff;border-radius:24px}
.in-app #item-delete{color:var(--holding-red);border-color:var(--holding-red);background:#fff}

.owned-photo-gallery { display:grid; grid-template-columns:repeat(auto-fit,minmax(120px,1fr)); gap:12px; margin:12px 0; }
.owned-photo-gallery a { display:block; min-width:0; }
.owned-photo-gallery img { display:block; width:100%; height:220px; object-fit:contain; background:#f5f7f6; border-radius:8px; }
