@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;700;800;900&family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap');

  :root{
    --ink:#0B0E14;
    --surface:#12161F;
    --surface2:#181D28;
    --line:#242B38;
    --text:#F1F3F8;
    --muted:#8A93A6;
    --amber:#FFB454;
    --amber-deep:#E89A36;
    --mint:#5EE6A0;
    --rose:#FF6B7A;
    --holo1:#7FD8E8;
    --holo2:#C792EA;
    --holo3:#FFD479;
  }
  *{box-sizing:border-box;}
  html,body{margin:0;padding:0;height:100%;background:var(--ink);color:var(--text);font-family:'Inter',sans-serif;-webkit-tap-highlight-color:transparent;}
  body{display:flex;justify-content:center;}
  #app{width:100%;max-width:430px;height:100vh;height:100dvh;background:var(--ink);position:relative;display:flex;flex-direction:column;overflow:hidden;}

  .display{font-family:'Barlow Condensed',sans-serif;font-weight:900;letter-spacing:0.01em;}
  .mono{font-family:'JetBrains Mono',monospace;}

  /* TOP BAR */
  .topbar{padding:18px 18px 14px;display:flex;align-items:baseline;justify-content:space-between;border-bottom:1px solid var(--line);}
  .brand{display:flex;align-items:center;gap:9px;}
  .brand .mark{width:11px;height:11px;border-radius:50%;background:linear-gradient(135deg,var(--holo1),var(--holo2) 50%,var(--holo3));}
  .brand .name{font-family:'Barlow Condensed';font-weight:800;font-size:21px;letter-spacing:0.02em;}
  .topbar .stand{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:0.08em;}

  main{flex:1;overflow-y:auto;padding:16px 16px 110px;}

  /* BOTTOM NAV */
  .navbar{flex-shrink:0;background:rgba(18,22,31,0.92);backdrop-filter:blur(10px);border-top:1px solid var(--line);display:flex;padding:8px 10px calc(8px + env(safe-area-inset-bottom, 0px));z-index:50;}
  .navbtn{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;padding:6px 0;background:none;border:none;color:var(--muted);font-family:'Inter';font-size:11px;font-weight:600;cursor:pointer;}
  .navbtn svg{width:21px;height:21px;}
  .navbtn.active{color:var(--amber);}
  .navbtn.active svg path, .navbtn.active svg rect, .navbtn.active svg circle{stroke:var(--amber);}

  /* SCAN SCREEN */
  .scan-frame{position:relative;width:100%;aspect-ratio:1/1;border-radius:18px;background:var(--surface);border:1px solid var(--line);overflow:hidden;display:flex;align-items:center;justify-content:center;}
  .scan-frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
  .corner{position:absolute;width:26px;height:26px;border-color:var(--amber);opacity:0.85;}
  .corner.tl{top:14px;left:14px;border-top:3px solid;border-left:3px solid;border-radius:6px 0 0 0;}
  .corner.tr{top:14px;right:14px;border-top:3px solid;border-right:3px solid;border-radius:0 6px 0 0;}
  .corner.bl{bottom:14px;left:14px;border-bottom:3px solid;border-left:3px solid;border-radius:0 0 0 6px;}
  .corner.br{bottom:14px;right:14px;border-bottom:3px solid;border-right:3px solid;border-radius:0 0 6px 0;}
  .scan-hint{color:var(--muted);font-size:13px;text-align:center;padding:0 30px;}
  .scan-line{position:absolute;left:8%;right:8%;height:2px;background:linear-gradient(90deg,transparent,var(--amber),transparent);box-shadow:0 0 10px var(--amber);animation:sweep 1.3s ease-in-out infinite;}
  @keyframes sweep{0%{top:12%;}50%{top:88%;}100%{top:12%;}}

  .capture-input{display:none;}
  .scan-btn{margin-top:18px;width:100%;padding:16px;border-radius:14px;background:var(--amber);color:#1A1304;border:none;font-family:'Barlow Condensed';font-weight:800;font-size:17px;letter-spacing:0.02em;cursor:pointer;}
  .scan-btn:active{transform:scale(0.98);}
  .scan-sub{text-align:center;color:var(--muted);font-size:12px;margin-top:10px;line-height:1.5;}

  /* RESULT CARD */
  .result{margin-top:18px;border-radius:18px;padding:1.5px;background:linear-gradient(135deg,var(--holo1),var(--holo2),var(--holo3),var(--holo1));background-size:300% 300%;animation:holo 6s linear infinite;}
  @keyframes holo{0%{background-position:0% 50%;}100%{background-position:300% 50%;}}
  .result-inner{background:var(--surface);border-radius:17px;padding:16px;}
  .result-top{display:flex;gap:12px;}
  .thumb{width:64px;height:64px;border-radius:10px;object-fit:cover;flex-shrink:0;background:var(--surface2);}
  .rname{font-weight:700;font-size:16px;line-height:1.25;}
  .rset{color:var(--muted);font-size:12px;margin-top:3px;}
  .rcond{display:inline-block;margin-top:6px;font-size:10px;padding:2px 7px;border-radius:20px;background:var(--surface2);color:var(--mint);font-weight:600;letter-spacing:0.03em;}

  .price-sources{display:flex;gap:8px;margin-top:14px;}
  .psource{flex:1;background:var(--surface2);border-radius:10px;padding:9px 8px;text-align:center;}
  .psource .plabel{font-size:9.5px;color:var(--muted);text-transform:uppercase;letter-spacing:0.05em;}
  .psource .pval{font-family:'JetBrains Mono';font-weight:600;font-size:13.5px;margin-top:3px;}

  .suggested{margin-top:14px;display:flex;align-items:center;justify-content:space-between;background:var(--surface2);border-radius:12px;padding:12px 14px;}
  .suggested .slabel{font-size:11px;color:var(--muted);}
  .price-edit{display:flex;align-items:center;gap:6px;}
  .price-edit span{font-size:22px;color:var(--amber);font-weight:700;}
  .price-edit input{width:78px;background:none;border:none;color:var(--amber);font-family:'Barlow Condensed';font-weight:900;font-size:26px;text-align:right;}
  .price-edit input:focus{outline:none;}

  .add-cart-btn{margin-top:14px;width:100%;padding:14px;border-radius:12px;background:var(--mint);border:none;color:#072017;font-weight:700;font-size:15px;cursor:pointer;}
  .rescan-link{text-align:center;margin-top:10px;color:var(--muted);font-size:12.5px;text-decoration:underline;cursor:pointer;}

  /* CART STICKY */
  .cart-bar{position:fixed;bottom:74px;left:50%;transform:translateX(-50%);width:calc(100% - 32px);max-width:398px;background:var(--amber);border-radius:14px;padding:13px 16px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 8px 24px rgba(0,0,0,0.4);z-index:40;cursor:pointer;}
  .cart-bar.hidden{display:none;}
  .cart-bar .ctext{color:#1A1304;font-weight:700;font-size:14px;}
  .cart-bar .camount{color:#1A1304;font-family:'Barlow Condensed';font-weight:900;font-size:18px;}

  /* CHECKOUT SHEET */
  .sheet-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.55);z-index:60;display:none;align-items:flex-end;justify-content:center;}
  .sheet-overlay.show{display:flex;}
  .sheet{width:100%;max-width:430px;background:var(--surface);border-radius:20px 20px 0 0;padding:20px;max-height:80vh;overflow-y:auto;}
  .sheet h3{font-family:'Barlow Condensed';font-size:20px;font-weight:800;margin:0 0 12px;}
  .cart-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid var(--line);}
  .cart-row .ci-name{font-size:13.5px;font-weight:600;}
  .cart-row .ci-sub{font-size:11px;color:var(--muted);}
  .cart-row .ci-price{font-family:'JetBrains Mono';font-weight:600;}
  .cart-row .rm{color:var(--rose);font-size:11px;margin-left:10px;cursor:pointer;background:none;border:none;}
  .cart-total{display:flex;justify-content:space-between;align-items:center;padding:16px 0 6px;}
  .cart-total .tlabel{font-size:13px;color:var(--muted);}
  .cart-total .tval{font-family:'Barlow Condensed';font-weight:900;font-size:26px;color:var(--amber);}
  .checkout-btn{width:100%;padding:16px;border-radius:14px;background:var(--mint);border:none;color:#072017;font-weight:800;font-size:16px;margin-top:10px;cursor:pointer;}
  .close-sheet{width:100%;padding:13px;background:none;border:none;color:var(--muted);font-size:13px;margin-top:6px;cursor:pointer;}
  .empty-cart{color:var(--muted);font-size:13px;text-align:center;padding:30px 0;}

  /* INVENTORY */
  .inv-search{width:100%;padding:12px 14px;border-radius:12px;background:var(--surface);border:1px solid var(--line);color:var(--text);font-size:14px;margin-bottom:14px;}
  .inv-search:focus{outline:none;border-color:var(--amber);}
  .inv-row{display:flex;align-items:center;gap:11px;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:11px 12px;margin-bottom:8px;}
  .inv-swatch{width:38px;height:38px;border-radius:8px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-family:'Barlow Condensed';font-weight:800;font-size:14px;color:#0B0E14;}
  .inv-info{flex:1;min-width:0;}
  .inv-name{font-size:13.5px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
  .inv-meta{font-size:11px;color:var(--muted);font-family:'JetBrains Mono';margin-top:2px;}
  .inv-right{text-align:right;}
  .inv-price-input{width:62px;background:var(--surface2);border:1px solid var(--line);color:var(--amber);font-family:'JetBrains Mono';font-weight:600;font-size:13px;text-align:right;border-radius:6px;padding:4px 6px;}
  .inv-price-input:focus{outline:none;border-color:var(--amber);}
  .qty-pill{display:flex;align-items:center;gap:7px;margin-top:5px;justify-content:flex-end;}
  .qbtn{width:20px;height:20px;border-radius:5px;background:var(--surface2);border:1px solid var(--line);color:var(--text);font-size:13px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;}
  .qty-val{font-family:'JetBrains Mono';font-size:12px;min-width:18px;text-align:center;}
  .low-stock{color:var(--rose) !important;}
  .section-label{font-size:11px;text-transform:uppercase;letter-spacing:0.08em;color:var(--muted);margin:18px 0 8px;font-weight:600;}
  .section-label:first-child{margin-top:0;}

  /* SALES */
  .stat-row{display:flex;gap:10px;margin-bottom:18px;}
  .stat-box{flex:1;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:12px 14px;}
  .stat-box .slabel2{font-size:10.5px;color:var(--muted);text-transform:uppercase;letter-spacing:0.05em;}
  .stat-box .sval{font-family:'Barlow Condensed';font-weight:900;font-size:24px;margin-top:3px;color:var(--text);}
  .stat-box.green .sval{color:var(--mint);}
  .sale-card{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:13px 14px;margin-bottom:8px;}
  .sale-top{display:flex;justify-content:space-between;align-items:baseline;}
  .sale-time{font-size:11px;color:var(--muted);font-family:'JetBrains Mono';}
  .sale-total{font-family:'Barlow Condensed';font-weight:800;font-size:17px;color:var(--mint);}
  .sale-items{font-size:12px;color:var(--muted);margin-top:5px;line-height:1.5;}
  .empty-state{text-align:center;padding:50px 20px;color:var(--muted);}
  .empty-state .em-icon{font-size:30px;margin-bottom:8px;}

  .toast{position:fixed;top:18px;left:50%;transform:translateX(-50%) translateY(-60px);background:var(--mint);color:#072017;font-weight:700;font-size:13px;padding:11px 18px;border-radius:30px;z-index:100;transition:transform 0.3s ease;box-shadow:0 6px 18px rgba(0,0,0,0.3);}
  .toast.show{transform:translateX(-50%) translateY(0);}

  .src-note{font-size:11px;color:var(--muted);text-align:center;margin-top:16px;line-height:1.6;padding:0 6px;}
  .src-note b{color:var(--text);}

  /* MODE TOGGLE */
  .mode-toggle{display:flex;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:4px;margin-bottom:14px;}
  .mode-btn{flex:1;text-align:center;padding:9px 0;border-radius:9px;border:none;background:none;color:var(--muted);font-weight:600;font-size:12.5px;cursor:pointer;}
  .mode-btn.active{background:var(--surface2);color:var(--text);}
  .mode-btn.active.qr{color:var(--holo1);}

  .manual-serial{display:flex;gap:8px;margin-top:12px;}
  .manual-serial input{flex:1;background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:11px 12px;color:var(--text);font-family:'JetBrains Mono';font-size:13px;}
  .manual-serial input:focus{outline:none;border-color:var(--holo1);}
  .manual-serial button{padding:11px 16px;border-radius:10px;background:var(--surface2);border:1px solid var(--line);color:var(--text);font-weight:600;font-size:12.5px;cursor:pointer;}

  .scan-error{color:var(--rose);font-size:12.5px;text-align:center;margin-top:10px;}
  .source-badge{display:inline-flex;align-items:center;gap:5px;font-size:10.5px;font-weight:700;padding:3px 9px;border-radius:20px;margin-top:8px;letter-spacing:0.03em;}
  .source-badge.qr{background:rgba(127,216,232,0.14);color:var(--holo1);}
  .source-badge.ai{background:rgba(255,180,84,0.14);color:var(--amber);}
  .source-badge.manual{background:rgba(138,147,166,0.16);color:var(--muted);}

  /* LABEL MODAL (inventory) */
  .label-btn{background:none;border:1px solid var(--line);color:var(--muted);font-size:10px;border-radius:7px;padding:3px 7px;cursor:pointer;margin-top:5px;}
  .label-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.6);z-index:120;display:none;align-items:center;justify-content:center;}
  .label-overlay.show{display:flex;}
  .label-card{background:#fff;border-radius:16px;padding:22px;width:260px;text-align:center;color:#0B0E14;position:relative;z-index:121;}
  .label-card .lname{font-family:'Barlow Condensed';font-weight:800;font-size:15px;margin-top:10px;}
  .label-card .lmeta{font-family:'JetBrains Mono';font-size:11px;color:#555;margin-top:2px;}
  .label-card .lserial{font-family:'JetBrains Mono';font-size:13px;font-weight:700;margin-top:10px;letter-spacing:0.04em;}
  #qrCanvasHolder{display:flex;justify-content:center;margin-top:4px;}
  .label-actions{display:flex;gap:8px;margin-top:16px;}
  .label-actions button{flex:1;padding:10px;border-radius:10px;border:none;font-weight:700;font-size:12.5px;cursor:pointer;}
  .dl-btn{background:#0B0E14;color:#fff;}
  .close-btn{background:#EAEAEA;color:#0B0E14;}

  /* CSV IMPORT */
  .inv-toolbar{display:flex;gap:8px;margin-bottom:14px;}
  .inv-toolbar .inv-search{margin-bottom:0;}
  .import-btn{flex-shrink:0;padding:0 16px;border-radius:12px;background:var(--surface2);border:1px solid var(--line);color:var(--holo1);font-weight:700;font-size:13px;cursor:pointer;}
  .import-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.6);z-index:75;display:none;align-items:flex-end;justify-content:center;}
  .import-overlay.show{display:flex;}
  .import-sheet{width:100%;max-width:430px;background:var(--surface);border-radius:20px 20px 0 0;padding:20px;max-height:85vh;overflow-y:auto;}
  .import-sheet h3{font-family:'Barlow Condensed';font-size:20px;font-weight:800;margin:0 0 4px;}
  .import-sub{font-size:12px;color:var(--muted);margin-bottom:16px;line-height:1.5;}
  .map-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 0;border-bottom:1px solid var(--line);}
  .map-row .map-label{font-size:13px;font-weight:600;flex-shrink:0;width:110px;}
  .map-row select{flex:1;background:var(--surface2);border:1px solid var(--line);color:var(--text);border-radius:8px;padding:8px 9px;font-size:12.5px;}
  .preview-table{margin-top:16px;font-size:11px;color:var(--muted);overflow-x:auto;}
  .preview-table table{border-collapse:collapse;width:100%;}
  .preview-table th{text-align:left;color:var(--text);font-weight:600;padding:5px 8px;border-bottom:1px solid var(--line);white-space:nowrap;}
  .preview-table td{padding:5px 8px;border-bottom:1px solid var(--line);white-space:nowrap;}
  .import-confirm-btn{width:100%;padding:14px;border-radius:12px;background:var(--mint);border:none;color:#072017;font-weight:800;font-size:15px;margin-top:16px;cursor:pointer;}
  .csv-input{display:none;}

  /* PAYMENT METHOD */
  .pay-toggle{display:flex;gap:7px;margin:14px 0 4px;}
  .pay-btn{flex:1;padding:11px 0;border-radius:10px;border:1px solid var(--line);background:var(--surface2);color:var(--muted);font-weight:700;font-size:12.5px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:5px;}
  .pay-btn.active{background:var(--amber);color:#1A1304;border-color:var(--amber);}
  .pay-label{font-size:11px;color:var(--muted);margin-top:14px;}
  .pay-chip{display:inline-flex;align-items:center;gap:5px;font-size:10px;font-weight:700;padding:2px 8px;border-radius:20px;background:var(--surface2);color:var(--muted);margin-left:6px;}

  /* COST / MARGIN */
  .cost-row{display:flex;align-items:center;gap:5px;margin-top:4px;justify-content:flex-end;}
  .cost-row label{font-size:9.5px;color:var(--muted);}
  .inv-cost-input{width:50px;background:var(--surface2);border:1px solid var(--line);color:var(--muted);font-family:'JetBrains Mono';font-weight:500;font-size:11.5px;text-align:right;border-radius:6px;padding:3px 5px;}
  .inv-cost-input:focus{outline:none;border-color:var(--mint);}
  .margin-tag{font-size:9.5px;font-weight:700;padding:1px 6px;border-radius:8px;margin-top:3px;display:inline-block;}
  .margin-good{background:rgba(94,230,160,0.14);color:var(--mint);}
  .margin-low{background:rgba(255,107,122,0.14);color:var(--rose);}

  /* COMP TAB */
  .pct-chips{display:flex;gap:6px;margin-top:10px;}
  .pct-chip{flex:1;padding:9px 0;text-align:center;border-radius:9px;background:var(--surface2);border:1px solid var(--line);color:var(--muted);font-weight:700;font-size:12.5px;cursor:pointer;}
  .pct-chip.active{background:var(--holo2);color:#1A1304;border-color:var(--holo2);}
  .margin-preview{margin-top:10px;background:rgba(94,230,160,0.08);border:1px solid rgba(94,230,160,0.25);border-radius:12px;padding:12px 14px;text-align:center;}
  .margin-preview .mp-val{font-family:'Barlow Condensed';font-weight:900;font-size:22px;color:var(--mint);}
  .margin-preview .mp-label{font-size:10.5px;color:var(--muted);text-transform:uppercase;letter-spacing:0.05em;}
  .margin-preview.bad{background:rgba(255,107,122,0.08);border-color:rgba(255,107,122,0.25);}
  .margin-preview.bad .mp-val{color:var(--rose);}
  .comp-list-section{margin-top:20px;}
  .comp-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(5px,1.8vw,8px);margin-top:10px;}
  .comp-totals .stat-box{padding:clamp(8px,2.4vw,10px) clamp(7px,2.5vw,12px);min-width:0;}
  .comp-totals .slabel2{font-size:clamp(8px,2.4vw,10.5px);line-height:1.15;}
  .comp-totals .sval{font-size:clamp(13px,4.3vw,18px);line-height:1;word-break:normal;white-space:nowrap;letter-spacing:-0.02em;}
  .profit-stat-head{display:flex;align-items:center;justify-content:space-between;gap:6px;}
  .profit-toggle-btn{background:none;border:none;color:var(--muted);font-size:15px;line-height:1;cursor:pointer;padding:0;flex-shrink:0;}
  .add-inv-btn{width:100%;padding:15px;border-radius:13px;background:linear-gradient(135deg,var(--holo1),var(--holo2));border:none;color:#0B0E14;font-weight:800;font-size:15px;margin-top:12px;cursor:pointer;}
  .sales-link-btn{width:100%;padding:11px;border-radius:11px;background:var(--surface);border:1px solid var(--line);color:var(--mint);font-weight:700;font-size:12.5px;margin-bottom:14px;cursor:pointer;}
  .comp-list-btn{width:100%;padding:13px 14px;border-radius:13px;background:var(--surface);border:1px solid var(--line);color:var(--holo1);font-weight:800;font-size:13px;margin-bottom:14px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:8px;}
  .comp-list-btn .count{color:var(--muted);font-weight:700;}
  #compListOverlay{align-items:stretch;}
  .comp-list-sheet{width:100%;max-width:430px;height:100vh;height:100dvh;max-height:none;border-radius:0;padding:0;overflow:hidden;display:flex;flex-direction:column;}
  .comp-list-head{padding:calc(12px + env(safe-area-inset-top,0px)) clamp(14px,4.6vw,20px) 14px;background:linear-gradient(180deg,rgba(255,255,255,0.04),rgba(255,255,255,0));border-bottom:1px solid var(--line);}
  .comp-list-tabs{display:flex;justify-content:center;gap:clamp(28px,12vw,54px);color:var(--muted);font-size:clamp(11.5px,3.4vw,13px);margin-bottom:16px;}
  .comp-list-tabs span.active{color:var(--holo2);position:relative;font-weight:800;}
  .comp-list-tabs span.active:after{content:'';position:absolute;left:-16px;right:-16px;bottom:-12px;height:3px;border-radius:6px;background:var(--holo2);}
  .comp-offer-kicker{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:0.08em;font-weight:800;}
  .comp-offer-total{font-family:'Barlow Condensed';font-size:clamp(34px,12vw,42px);line-height:0.95;font-weight:900;margin-top:8px;color:var(--text);letter-spacing:-0.03em;}
  .comp-offer-sub{color:var(--muted);font-size:clamp(11.5px,3.4vw,13px);margin-top:6px;}
  .comp-apply{display:flex;align-items:center;gap:clamp(5px,1.8vw,8px);padding:12px clamp(14px,4.6vw,20px);border-bottom:1px solid var(--line);overflow-x:auto;}
  .comp-apply-label{font-size:clamp(10.5px,3.1vw,12px);color:var(--muted);white-space:nowrap;}
  .comp-apply-input{width:clamp(52px,15vw,64px);min-width:clamp(52px,15vw,64px);background:var(--surface2);border:1px solid var(--line);border-radius:10px;padding:9px 6px;color:var(--holo2);font-family:'Barlow Condensed';font-size:clamp(17px,5vw,20px);font-weight:900;text-align:center;}
  .comp-apply-input:focus{outline:none;border-color:var(--holo2);}
  .comp-apply-chip{min-width:clamp(48px,14vw,58px);padding:10px 0;border-radius:10px;background:var(--surface2);border:1px solid var(--line);color:var(--muted);font-weight:800;font-size:clamp(11px,3.2vw,13px);cursor:pointer;}
  .comp-apply-chip.active{background:rgba(199,146,234,0.16);border-color:var(--holo2);color:var(--holo2);}
  .comp-list-body{overflow-y:auto;padding:0 0 16px;}
  .comp-line-card{display:grid;grid-template-columns:clamp(42px,13vw,58px) minmax(0,1fr) clamp(28px,8vw,34px);gap:clamp(7px,2.4vw,10px);padding:clamp(13px,4vw,16px) clamp(14px,4.6vw,20px);border-bottom:1px solid var(--line);align-items:start;}
  .comp-line-thumb{width:clamp(40px,12vw,56px);height:clamp(56px,16vw,76px);border-radius:8px;background:var(--surface2);object-fit:cover;display:flex;align-items:center;justify-content:center;font-family:'Barlow Condensed';font-weight:900;color:#0B0E14;font-size:clamp(16px,5vw,20px);overflow:hidden;}
  .comp-line-title{display:flex;align-items:center;gap:clamp(5px,1.8vw,8px);flex-wrap:wrap;min-height:22px;min-width:0;}
  .comp-line-name{font-size:clamp(12px,3.65vw,13.5px);font-weight:700;line-height:1.2;min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;}
  .comp-line-badge{background:var(--rose);color:#fff;border-radius:7px;padding:3px 7px;font-size:clamp(9.5px,2.8vw,11px);font-weight:800;letter-spacing:0.03em;}
  .comp-line-edit{color:var(--muted);font-size:clamp(14px,4vw,18px);}
  .comp-line-meta{font-size:clamp(9.5px,2.9vw,10.5px);color:var(--muted);margin-top:3px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
  .comp-line-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(50px,.72fr);gap:clamp(5px,1.7vw,7px);margin-top:10px;}
  .comp-field label{display:block;font-size:clamp(8px,2.4vw,9.5px);color:var(--muted);text-transform:uppercase;letter-spacing:0.06em;margin-bottom:4px;}
  .comp-field-box{height:clamp(34px,10.5vw,42px);border-radius:9px;background:var(--surface2);border:1px solid var(--line);display:flex;align-items:center;gap:clamp(3px,1.2vw,5px);padding:0 clamp(5px,1.8vw,9px);min-width:0;}
  .comp-field-box span{color:var(--muted);font-family:'JetBrains Mono';font-size:clamp(10px,3vw,13px);}
  .comp-field-box input{width:100%;background:none;border:none;color:var(--text);font-family:'JetBrains Mono';font-weight:700;font-size:clamp(10.5px,3.3vw,14px);text-align:right;min-width:0;letter-spacing:-0.03em;}
  .comp-field-box input:focus{outline:none;}
  .comp-field-box.pct input{color:var(--holo2);font-family:'JetBrains Mono';font-size:clamp(16px,5.2vw,20px);font-weight:600;}
  .comp-remove-btn{width:clamp(28px,8vw,34px);height:clamp(28px,8vw,34px);border-radius:50%;background:var(--surface2);border:none;color:var(--muted);font-size:clamp(18px,6vw,24px);line-height:1;cursor:pointer;}
  .comp-back-btn{background:none;border:none;color:var(--holo1);font-weight:800;font-size:13px;padding:0 0 12px;cursor:pointer;}
  .cond-price-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(4px,1.4vw,5px);margin-top:8px;}
  .cond-price-chip{background:var(--surface2);border:1px solid var(--line);border-radius:9px;padding:clamp(6px,1.9vw,7px) 2px;text-align:center;cursor:pointer;color:var(--text);min-width:0;}
  .cond-price-chip.active{border-color:var(--amber);background:rgba(255,180,84,0.12);box-shadow:0 0 0 1px rgba(255,180,84,0.12) inset;}
  .cond-price-chip b{display:block;font-size:clamp(9px,2.7vw,10px);color:var(--text);line-height:1;}
  .cond-price-chip span{display:block;font-size:clamp(7.5px,2.25vw,9.5px);color:var(--muted);font-family:'JetBrains Mono';margin-top:3px;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:-0.04em;}
  .cond-select{display:none;}
  .comp-list-footer{padding:12px 20px calc(14px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line);background:var(--surface);}
  .comp-empty{padding:34px 20px;text-align:center;color:var(--muted);font-size:13px;line-height:1.5;}


  @media (max-width: 360px){
    .comp-list-head{padding-left:12px;padding-right:12px;}
    .comp-apply{padding-left:12px;padding-right:12px;}
    .comp-line-card{grid-template-columns:38px minmax(0,1fr) 28px;padding-left:12px;padding-right:12px;gap:7px;}
    .comp-line-thumb{width:38px;height:54px;}
    .comp-line-fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 48px;gap:4px;}
    .comp-field-box{padding:0 4px;}
    .comp-field-box input{font-size:10px;}
    .comp-field-box.pct input{font-size:15px;}
    .cond-price-chip{padding:5px 1px;}
    .cond-price-chip span{font-size:7px;}
  }


  /* MARKET PRICE / ADD ITEM */
  .market-row{font-size:10.5px;color:var(--muted);font-family:'JetBrains Mono';margin-bottom:5px;display:flex;align-items:center;justify-content:flex-end;gap:3px;}
  .refresh-btn{background:none;border:none;color:var(--holo1);font-size:12px;cursor:pointer;padding:0 2px;}
  .add-item-btn{flex-shrink:0;padding:0 14px;border-radius:12px;background:var(--surface2);border:1px solid var(--line);color:var(--mint);font-weight:700;font-size:13px;cursor:pointer;}
  .form-row{margin-bottom:12px;}
  .form-row label{font-size:11px;color:var(--muted);display:block;margin-bottom:5px;}
  .form-row input, .form-row select{width:100%;background:var(--surface2);border:1px solid var(--line);color:var(--text);border-radius:9px;padding:10px 11px;font-size:13.5px;}
  .form-row input:focus, .form-row select:focus{outline:none;border-color:var(--mint);}
  .form-grid{display:flex;gap:10px;}
  .form-grid .form-row{flex:1;}

  /* LARGE EDIT ITEM MODAL */
  .inv-row.tappable{cursor:pointer;}
  .inv-readonly-row{font-size:11px;color:var(--muted);font-family:'JetBrains Mono';text-align:right;margin-bottom:3px;}
  .inv-readonly-row b{color:var(--text);font-weight:600;}
  .edit-field-row{margin-bottom:16px;}
  .edit-field-row label{font-size:12px;color:var(--muted);display:block;margin-bottom:6px;text-transform:uppercase;letter-spacing:0.04em;}
  .edit-big-input{width:100%;background:var(--surface2);border:1px solid var(--line);color:var(--text);border-radius:12px;padding:15px 16px;font-size:22px;font-family:'Barlow Condensed';font-weight:700;}
  .edit-big-input:focus{outline:none;border-color:var(--mint);}
  .qty-pill-lg{display:flex;align-items:center;gap:16px;}
  .qbtn-lg{width:46px;height:46px;border-radius:12px;background:var(--surface2);border:1px solid var(--line);color:var(--text);font-size:22px;display:flex;align-items:center;justify-content:center;cursor:pointer;}
  .qty-val-lg{font-family:'Barlow Condensed';font-weight:800;font-size:28px;min-width:44px;text-align:center;}
  .market-display-lg{display:flex;align-items:center;justify-content:space-between;background:var(--surface2);border-radius:12px;padding:14px 16px;margin-bottom:18px;}
  .market-display-lg .mdl-val{font-family:'Barlow Condensed';font-weight:800;font-size:24px;}
  .print-label-btn-lg{width:100%;padding:14px;border-radius:12px;background:var(--surface2);border:1px solid var(--line);color:var(--holo1);font-weight:700;font-size:14.5px;margin-bottom:10px;cursor:pointer;}

  /* CARD SEARCH WITHIN ADD ITEM FORM */
  .card-search-results{margin-top:8px;max-height:260px;overflow-y:auto;}


  /* SECURITY / VENDOR PROFILE */
.privacy-note{background:rgba(94,230,160,0.08);border:1px solid rgba(94,230,160,0.22);border-radius:12px;padding:10px 12px;margin-top:12px;color:var(--muted);font-size:11.5px;line-height:1.45;}
  .privacy-note b{color:var(--mint);}
  .profile-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:14px;margin-bottom:10px;}
  .profile-card h4{margin:0 0 10px;font-family:'Barlow Condensed';font-size:18px;font-weight:800;letter-spacing:0.02em;}
  .profile-row{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--line);font-size:12.5px;}
  .profile-row:last-child{border-bottom:none;}
  .profile-row span:first-child{color:var(--muted);}
  .profile-row span:last-child{text-align:right;font-weight:600;}
  .role-pill{display:inline-flex;align-items:center;gap:5px;border-radius:20px;background:rgba(255,180,84,0.14);color:var(--amber);font-size:10px;font-weight:800;letter-spacing:0.04em;text-transform:uppercase;padding:3px 8px;}
  .control-list{display:grid;gap:8px;margin-top:10px;}
  .control-item{display:flex;gap:8px;align-items:flex-start;color:var(--muted);font-size:12px;line-height:1.45;}
  .control-item .check{color:var(--mint);font-weight:800;}
  .audit-row{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:10px 12px;margin-bottom:8px;}
  .audit-row .audit-action{font-size:12.5px;font-weight:700;}
  .audit-row .audit-meta{font-size:10.5px;color:var(--muted);font-family:'JetBrains Mono';margin-top:4px;line-height:1.5;}


  /* PORTFOLIO / PROFILE DASHBOARD */
  .portfolio-table{width:100%;border-collapse:separate;border-spacing:0 8px;margin-top:8px;}
  .portfolio-table th{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:0.06em;text-align:right;font-weight:700;padding:0 8px 0 0;}
  .portfolio-table th:first-child{text-align:left;padding-left:0;}
  .portfolio-table td{background:var(--surface);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:11px 8px;text-align:right;font-family:'JetBrains Mono';font-size:12px;}
  .portfolio-table td:first-child{border-left:1px solid var(--line);border-radius:12px 0 0 12px;text-align:left;font-family:'Inter';font-weight:700;color:var(--text);}
  .portfolio-table td:last-child{border-right:1px solid var(--line);border-radius:0 12px 12px 0;}
  .portfolio-table .total-row td{background:var(--surface2);color:var(--amber);font-weight:800;}
  .time-filter{display:flex;gap:6px;margin:10px 0 14px;}
  .time-chip{flex:1;padding:9px 0;border-radius:10px;background:var(--surface);border:1px solid var(--line);color:var(--muted);font-weight:800;font-size:12px;cursor:pointer;}
  .time-chip.active{background:var(--amber);border-color:var(--amber);color:#1A1304;}
  .account-menu{position:relative;margin-top:10px;}
  .account-menu-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;padding:14px 15px;border-radius:13px;background:var(--surface);border:1px solid var(--line);color:var(--text);font-weight:800;font-size:14px;cursor:pointer;}
  .account-menu-toggle span{color:var(--muted);font-size:13px;}
  .account-menu-panel{display:none;margin-top:8px;background:var(--surface);border:1px solid var(--line);border-radius:13px;overflow:hidden;}
  .account-menu.show .account-menu-panel{display:block;}
  .account-action{width:100%;display:flex;align-items:center;justify-content:space-between;padding:13px 14px;background:none;border:none;border-bottom:1px solid var(--line);color:var(--text);font-weight:700;font-size:13px;text-align:left;cursor:pointer;}
  .account-action:last-child{border-bottom:none;}
  .account-action small{display:block;color:var(--muted);font-weight:500;margin-top:3px;line-height:1.35;}
  .account-action.danger{color:var(--rose);}


  /* AUTH SPLASH */
  .auth-screen{position:absolute;inset:0;z-index:220;background:radial-gradient(circle at 20% 0%, rgba(127,216,232,0.16), transparent 32%),radial-gradient(circle at 90% 18%, rgba(199,146,234,0.18), transparent 35%),var(--ink);display:flex;align-items:center;justify-content:center;padding:24px;overflow-y:auto;}
  .auth-screen.hidden{display:none;}
  .auth-card{width:100%;max-width:382px;background:rgba(18,22,31,0.94);border:1px solid var(--line);border-radius:24px;padding:24px 22px;box-shadow:0 22px 60px rgba(0,0,0,0.48);}
  .auth-logo{display:flex;align-items:center;gap:10px;margin-bottom:18px;}
  .auth-logo .mark{width:14px;height:14px;border-radius:50%;background:linear-gradient(135deg,var(--holo1),var(--holo2) 50%,var(--holo3));box-shadow:0 0 18px rgba(127,216,232,0.5);}
  .auth-logo .name{font-family:'Barlow Condensed';font-weight:900;font-size:29px;letter-spacing:0.02em;}
  .auth-kicker{font-size:11px;color:var(--amber);text-transform:uppercase;letter-spacing:0.1em;font-weight:800;margin-bottom:6px;}
  .auth-title{font-family:'Barlow Condensed';font-weight:900;font-size:36px;line-height:0.98;margin:0 0 8px;}
  .auth-sub{font-size:13px;color:var(--muted);line-height:1.55;margin-bottom:18px;}
  .auth-benefits{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:18px;}
  .auth-benefit{background:var(--surface2);border:1px solid var(--line);border-radius:12px;padding:10px 11px;font-size:11.5px;color:var(--muted);line-height:1.35;}
  .auth-benefit b{display:block;color:var(--text);font-size:12px;margin-bottom:2px;}
  .auth-divider{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:0.08em;margin:15px 0;}
  .auth-divider:before,.auth-divider:after{content:'';height:1px;background:var(--line);flex:1;}
  .google-auth-shell{width:100%;min-height:46px;display:flex;align-items:center;justify-content:center;}
  .google-demo-btn,.email-auth-btn{width:100%;padding:14px 14px;border-radius:13px;border:1px solid var(--line);background:var(--surface2);color:var(--text);font-weight:800;font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;}
  .google-demo-btn{background:#fff;color:#1f2937;border-color:#fff;}
  .google-g{width:18px;height:18px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-weight:900;color:#4285F4;background:#fff;font-family:Arial, sans-serif;}
  .auth-form{display:flex;flex-direction:column;gap:10px;}
  .auth-form input{width:100%;background:var(--surface2);border:1px solid var(--line);color:var(--text);border-radius:12px;padding:13px 14px;font-size:14px;}
  .auth-form input:focus{outline:none;border-color:var(--amber);}
  .email-auth-btn{background:var(--amber);border-color:var(--amber);color:#1A1304;margin-top:4px;}
  .auth-meta{font-size:11px;color:var(--muted);line-height:1.45;margin-top:12px;text-align:center;}
  .auth-error{display:none;background:rgba(255,107,122,0.12);border:1px solid rgba(255,107,122,0.35);color:var(--rose);border-radius:12px;padding:10px 12px;font-size:12px;line-height:1.4;margin-bottom:12px;}
  .auth-error.show{display:block;}
  .auth-link-btn{background:none;border:none;color:var(--holo1);font-weight:700;cursor:pointer;padding:0;font-size:12px;}
  .auth-mode-toggle{display:flex;background:var(--surface);border:1px solid var(--line);border-radius:13px;padding:4px;margin:0 0 14px;}
  .auth-mode-btn{flex:1;border:none;background:none;color:var(--muted);font-weight:800;font-size:12.5px;border-radius:10px;padding:9px 0;cursor:pointer;}
  .auth-mode-btn.active{background:var(--surface2);color:var(--text);}
  .auth-signup-field.hidden{display:none;}
  .auth-secondary-btn{width:100%;background:none;border:none;color:var(--holo1);font-weight:800;font-size:12.5px;text-align:center;margin-top:10px;cursor:pointer;padding:6px;}
  .auth-form .field-note{font-size:10.5px;color:var(--muted);line-height:1.4;margin:-3px 2px 2px;}


  /* Percent field visual fix: match calculator input font, no bold display font */
  .comp-field-box.pct input{
    font-family:'JetBrains Mono',monospace !important;
    font-weight:600 !important;
    font-size:clamp(12px,3vw,13px) !important;
    color:var(--holo2);
    text-align:right;
  }
  .comp-field-box.pct span{
    font-family:'JetBrains Mono',monospace !important;
    font-weight:500 !important;
    font-size:12px !important;
    color:var(--muted);
  }


  /* FULL-SCREEN SALES LEDGER */
  #salesOverlay{align-items:stretch;}
  .sales-ledger-sheet{
    width:100%;
    max-width:430px;
    height:100vh;
    height:100dvh;
    max-height:none;
    border-radius:0;
    padding:0;
    overflow:hidden;
    display:flex;
    flex-direction:column;
    background:var(--surface);
  }
  .sales-ledger-head{
    padding:calc(14px + env(safe-area-inset-top,0px)) 20px 14px;
    border-bottom:1px solid var(--line);
    background:linear-gradient(180deg,rgba(255,255,255,0.04),rgba(255,255,255,0));
    flex-shrink:0;
  }
  .sales-back-btn{
    background:none;
    border:none;
    color:var(--holo1);
    font-weight:800;
    font-size:13px;
    padding:0;
    margin-bottom:12px;
    cursor:pointer;
  }
  .sales-ledger-title{
    font-family:'Barlow Condensed';
    font-size:22px;
    font-weight:900;
    letter-spacing:0.01em;
    margin:0;
  }
  .sales-ledger-body{
    flex:1;
    overflow-y:auto;
    padding:16px 20px calc(18px + env(safe-area-inset-bottom,0px));
  }
  .sale-detail-list{
    display:grid;
    gap:7px;
    margin-top:10px;
  }
  .sale-detail-row{
    display:grid;
    grid-template-columns:1fr auto;
    gap:10px;
    align-items:start;
    padding:9px 10px;
    border:1px solid var(--line);
    border-radius:10px;
    background:var(--surface2);
  }
  .sale-detail-name{
    font-size:12.5px;
    font-weight:800;
    line-height:1.25;
  }
  .sale-detail-meta{
    font-size:10.5px;
    color:var(--muted);
    margin-top:3px;
    line-height:1.35;
  }
  .sale-detail-price{
    font-family:'JetBrains Mono';
    font-size:12px;
    font-weight:700;
    text-align:right;
    color:var(--text);
  }
  .sale-card.full-ledger{
    padding:14px;
  }


  /* Single-title comp calculator header */
  .comp-list-titlebar{
    display:flex;
    justify-content:center;
    align-items:center;
    color:var(--holo2);
    font-size:13px;
    font-weight:800;
    margin-bottom:18px;
    position:relative;
  }
  .comp-list-titlebar span{
    position:relative;
    padding:0 14px 10px;
  }
  .comp-list-titlebar span:after{
    content:'';
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    height:3px;
    border-radius:6px;
    background:var(--holo2);
  }


  /* PRINT LABEL ACTIONS */
  .label-actions.three-actions{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin-top:16px;}
  .print-btn{background:var(--mint);color:#072017;}
  @media print{
    body *{visibility:hidden !important;}
    #printLabelArea, #printLabelArea *{visibility:visible !important;}
    #printLabelArea{
      position:fixed !important;
      left:0 !important;
      top:0 !important;
      width:100% !important;
      margin:0 !important;
      padding:0 !important;
      background:#fff !important;
      color:#000 !important;
    }
    @page{
      margin:4mm;
    }
  }


  /* Inventory card condition chips */
  .edit-field-row .cond-price-grid{margin-top:2px;}


  /* MOBILE BROWSER HARDENING */
  html{
    min-height:100%;
    min-height:-webkit-fill-available;
    -webkit-text-size-adjust:100%;
  }
  body{
    min-height:100%;
    min-height:-webkit-fill-available;
    overflow:hidden;
    overscroll-behavior:none;
    touch-action:manipulation;
  }
  #app{
    min-height:100vh;
    min-height:100svh;
    min-height:-webkit-fill-available;
  }
  input,select,textarea{
    font-size:16px !important; /* prevents iOS input zoom */
  }
  /* Keep selects native so iOS shows the wheel picker */
  button,input,textarea{
    -webkit-appearance:none;
    appearance:none;
    border-radius:12px;
  }
  select{
    background-color:var(--surface2);
    border:1px solid var(--line);
    color:var(--text);
    border-radius:12px;
    padding:10px 36px 10px 11px;
    font-size:16px;
    width:100%;
    background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%238A93A6' d='M4 6l4 4 4-4z'/%3E%3C/svg%3E");
    background-repeat:no-repeat;
    background-position:right 10px center;
    background-size:16px;
    -webkit-appearance:none;
    appearance:none;
  }
  button{touch-action:manipulation;}
  @supports (-webkit-touch-callout:none){
    #app{height:-webkit-fill-available;}
    .auth-screen{min-height:-webkit-fill-available;}
  }
  .mobile-demo-btn{
    width:100%;
    margin-top:10px;
    padding:13px 14px;
    border:none;
    border-radius:14px;
    background:linear-gradient(135deg,var(--holo1),var(--holo2));
    color:#0B0E14;
    font-weight:900;
    cursor:pointer;
  }
  .mobile-demo-note{
    color:var(--muted);
    font-size:11px;
    line-height:1.45;
    margin-top:8px;
    text-align:center;
  }


  /* TRADE COST BASIS / ACQUISITION SOURCE */
  .source-row{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0 2px;}
  .source-chip{
    border:1px solid var(--line);
    background:var(--surface2);
    color:var(--muted);
    border-radius:999px;
    padding:7px 10px;
    font-size:11px;
    font-weight:800;
    cursor:pointer;
  }
  .source-chip.active{
    border-color:var(--holo2);
    color:var(--text);
    background:rgba(199,146,234,0.14);
    box-shadow:0 0 0 1px rgba(199,146,234,0.18) inset;
  }
  .acq-card{
    border:1px solid var(--line);
    background:rgba(24,29,40,0.72);
    border-radius:14px;
    padding:12px;
    margin:10px 0 14px;
  }
  .acq-card .acq-title{
    font-size:11px;
    color:var(--muted);
    text-transform:uppercase;
    letter-spacing:0.07em;
    font-weight:800;
    margin-bottom:8px;
  }
  .acq-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;}
  .acq-mini{
    border:1px solid var(--line);
    background:var(--surface);
    border-radius:11px;
    padding:9px 10px;
  }
  .acq-mini label{
    display:block;
    font-size:9.5px;
    color:var(--muted);
    text-transform:uppercase;
    letter-spacing:0.06em;
    margin-bottom:4px;
  }
  .acq-mini input{
    width:100%;
    background:transparent;
    border:none;
    color:var(--text);
    font-family:'JetBrains Mono';
    font-weight:700;
    font-size:14px;
    outline:none;
  }
  .trade-pct-row{display:flex;gap:7px;flex-wrap:wrap;margin-top:9px;}
  .trade-pct-chip{
    border:1px solid var(--line);
    background:var(--surface);
    color:var(--muted);
    border-radius:10px;
    padding:8px 10px;
    font-size:11px;
    font-weight:900;
    cursor:pointer;
    min-width:48px;
  }
  .trade-pct-chip.active{
    border-color:var(--amber);
    color:var(--text);
    background:rgba(255,180,84,0.13);
  }
  .acq-note{
    color:var(--muted);
    font-size:11px;
    line-height:1.45;
    margin-top:9px;
  }
  .acq-summary{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
    margin-top:8px;
  }
  .acq-pill{
    display:inline-flex;
    align-items:center;
    gap:4px;
    padding:4px 8px;
    border-radius:999px;
    background:rgba(138,147,166,0.14);
    color:var(--muted);
    font-size:10.5px;
    font-weight:800;
  }
  .acq-pill.trade{
    color:var(--amber);
    background:rgba(255,180,84,0.13);
  }
  .acq-pill.profit{
    color:var(--mint);
    background:rgba(94,230,160,0.12);
  }
  .comp-source-row{
    display:flex;
    align-items:center;
    gap:7px;
    flex-wrap:wrap;
    margin-top:9px;
  }
  .comp-source-label{
    font-size:10px;
    color:var(--muted);
    text-transform:uppercase;
    letter-spacing:0.07em;
    font-weight:800;
  }


  /* COMP BUY / TRADE ACTION FLOW */
  .deal-toggle{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
    margin:14px 0 12px;
  }
  .deal-btn{
    border:1px solid var(--line);
    background:var(--surface2);
    color:var(--muted);
    border-radius:16px;
    padding:13px 12px;
    font-weight:900;
    font-size:15px;
    cursor:pointer;
  }
  .deal-btn.active{
    color:#0B0E14;
    background:linear-gradient(135deg,var(--mint),var(--holo1));
    border-color:rgba(94,230,160,0.75);
  }
  .trade-flow-card{
    border:1px solid rgba(255,180,84,0.32);
    background:rgba(255,180,84,0.075);
    border-radius:18px;
    padding:14px;
    margin-top:12px;
  }
  .trade-flow-title{
    font-size:12px;
    color:var(--amber);
    text-transform:uppercase;
    letter-spacing:0.08em;
    font-weight:900;
    margin-bottom:10px;
  }
  .trade-field-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
  }
  .trade-field{
    background:var(--surface2);
    border:1px solid var(--line);
    border-radius:14px;
    padding:10px 11px;
  }
  .trade-field.full{grid-column:1 / -1;}
  .trade-field label{
    display:block;
    color:var(--muted);
    font-size:10px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:0.07em;
    margin-bottom:5px;
  }
  .trade-field input{
    width:100%;
    border:none;
    background:transparent;
    color:var(--text);
    outline:none;
    font-family:'JetBrains Mono';
    font-weight:800;
    font-size:15px;
  }
  .trade-helper{
    color:var(--muted);
    font-size:11px;
    line-height:1.45;
    margin-top:9px;
  }


  .comp-line-acq-summary{font-size:11px;color:var(--amber);font-weight:800;margin-top:4px;}

  /* SEARCH RESULT SELECTION / SORT / FONT POLISH */
  .sort-select{
    background:var(--surface2);
    border:1px solid var(--line);
    color:var(--text);
    border-radius:14px;
    padding:12px 36px 12px 12px;
    font-size:14px;
    min-width:150px;
    flex:1;
  }
  .selected-search-chip{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    border:1px solid var(--line);
    background:rgba(127,216,232,0.08);
    color:var(--muted);
    border-radius:14px;
    padding:10px 12px;
    margin:0 0 12px;
    font-size:12px;
  }
  .selected-search-chip span{
    color:var(--text);
    font-weight:500;
  }

  /* Keep UltraMargin readable without over-bold UI.
     Logo + clear section headers keep emphasis; cards, values, rows, and controls use one consistent app font. */
  main, main *{
    font-family:'Inter',sans-serif !important;
  }
  .brand .name,
  .auth-logo .name{
    font-family:'Barlow Condensed',sans-serif !important;
    font-weight:900 !important;
  }
  h1,h2,h3,
  .section-label,
  .slabel,
  .trade-flow-title,
  .acq-title,
  .auth-kicker{
    font-family:'Inter',sans-serif !important;
    font-weight:700 !important;
  }
  main b,
  main strong,
  .inv-readonly-row b,
  .inv-name,
  .rname,
  .pval,
  .mp-val,
  .metric-val,
  .qty-val,
  .price-edit input,
  .edit-big-input,
  .navbtn,
  .mode-btn,
  .deal-btn,
  .pct-chip,
  .trade-pct-chip,
  .add-cart-btn,
  .add-item-btn,
  .import-btn,
  .source-chip,
  .margin-tag,
  .acq-pill{
    font-family:'Inter',sans-serif !important;
    font-weight:500 !important;
  }
  .add-cart-btn,
  .add-item-btn,
  .import-btn,
  .email-auth-btn,
  .mobile-demo-btn{
    font-weight:600 !important;
  }


  /* INVENTORY SEARCH ABOVE CONTROLS + TRADE ONLY SOURCE CLEANUP */
  .inv-search-row{
    display:block;
    width:100%;
    margin-bottom:10px;
  }
  .inv-search-row .inv-search{
    width:100%;
  }
  .inv-action-row{
    display:grid;
    grid-template-columns:1fr auto auto;
    gap:10px;
    width:100%;
  }
  .inv-action-row .sort-select{
    min-width:0;
    width:100%;
  }
  .trade-section-label{
    margin-top:14px;
    margin-bottom:8px;
    color:var(--amber);
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:0.08em;
    font-weight:700;
  }


  /* TRADE BALANCE FLOW */
  .trade-balance-box{
    border:1px solid var(--line);
    border-radius:16px;
    background:rgba(24,29,40,0.82);
    padding:12px;
    margin-top:10px;
  }
  .trade-balance-box.good{
    border-color:rgba(94,230,160,0.38);
    background:rgba(94,230,160,0.08);
  }
  .trade-balance-box.bad{
    border-color:rgba(255,91,117,0.42);
    background:rgba(255,91,117,0.08);
  }
  .trade-balance-label{
    color:var(--muted);
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:0.08em;
    margin-bottom:5px;
  }
  .trade-balance-value{
    font-size:22px;
    font-weight:700;
    color:var(--mint);
  }
  .trade-balance-box.bad .trade-balance-value{color:var(--red);}
  .trade-balance-note{
    color:var(--muted);
    font-size:11px;
    line-height:1.45;
    margin-top:4px;
  }


  .inv-toolbar{display:block !important;}
  .inv-action-row{margin-top:10px;}

  /* INVENTORY TAB REPAIR - RENDERS TO MAIN, NOT A MISSING SLOT */
  .inventory-toolbar-repaired{
    display:flex;
    flex-direction:column;
    gap:10px;
    margin:12px 0 12px;
  }
  .inventory-search-repaired{
    width:100%;
    height:48px;
    background:var(--surface2);
    border:1px solid var(--line);
    color:var(--text);
    border-radius:18px;
    padding:0 14px;
    font-size:16px;
    outline:none;
  }
  .inventory-search-repaired::placeholder{color:var(--muted);}
  .inventory-actions-repaired{
    display:grid;
    grid-template-columns:minmax(0,1fr) 72px 106px;
    gap:8px;
    align-items:center;
    width:100%;
    position:relative;
    z-index:4;
  }
  .sort-wrap-repaired{
    position:relative;
    min-width:0;
  }
  .sort-btn-repaired{
    width:100%;
    height:46px;
    display:flex;
    align-items:center;
    gap:8px;
    background:linear-gradient(180deg,rgba(31,37,50,.98),rgba(24,29,40,.98));
    border:1px solid var(--line);
    color:var(--text);
    border-radius:16px;
    padding:0 12px;
    cursor:pointer;
    text-align:left;
  }
  .sort-btn-repaired .icon{color:var(--muted);font-size:15px;}
  .sort-btn-repaired .label{font-size:13px;font-weight:700 !important;white-space:nowrap;}
  .sort-btn-repaired .value{color:var(--muted);font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
  .sort-btn-repaired .caret{margin-left:auto;color:var(--muted);font-size:13px;}
  .sort-menu-repaired{
    display:none;
    position:absolute;
    top:52px;
    left:0;
    right:0;
    z-index:9999;
    background:var(--surface2);
    border:1px solid var(--line);
    border-radius:16px;
    padding:6px;
    box-shadow:0 20px 50px rgba(0,0,0,.5);
  }
  .sort-menu-repaired.show{display:block;}
  .sort-option-repaired{
    width:100%;
    height:38px;
    border:0;
    background:transparent;
    color:var(--muted);
    border-radius:11px;
    text-align:left;
    padding:0 10px;
    font-size:13px;
    cursor:pointer;
  }
  .sort-option-repaired.active{
    background:rgba(127,216,232,.13);
    color:var(--text);
  }
  .inventory-action-repaired{
    height:46px;
    border:1px solid var(--line);
    background:var(--surface2);
    border-radius:16px;
    padding:0 10px;
    white-space:nowrap;
    font-size:12.5px;
    font-weight:700 !important;
    cursor:pointer;
    touch-action:manipulation;
  }
  .inventory-action-repaired.add{color:var(--mint);}
  .inventory-action-repaired.import{color:var(--holo1);}
  .inv-row{cursor:pointer;touch-action:manipulation;}
  .inv-row:active{transform:scale(.995);}
  @media(max-width:430px){
    .inventory-actions-repaired{
      grid-template-columns:minmax(0,1fr) 66px 98px;
      gap:7px;
    }
    .sort-btn-repaired{
      height:44px;
      border-radius:15px;
      padding:0 10px;
      gap:6px;
    }
    .sort-btn-repaired .label,
    .sort-btn-repaired .value{font-size:12px;}
    .inventory-action-repaired{
      height:44px;
      border-radius:15px;
      font-size:12px;
      padding:0 7px;
    }
  }

  /* Compact inventory rows without changing behavior */
  .inv-row{padding:12px !important;border-radius:17px !important;}
  .inv-swatch{width:52px !important;height:52px !important;border-radius:13px !important;font-size:17px !important;}
  .inv-name{font-size:16px !important;line-height:1.15 !important;}
  .inv-meta{font-size:11.5px !important;margin-top:3px !important;line-height:1.25 !important;}
  .inv-right{font-size:11.5px !important;line-height:1.42 !important;}
  .margin-tag{font-size:10.5px !important;padding:3px 7px !important;margin-top:5px !important;}
  .acq-summary{margin-top:5px !important;}
  .acq-pill{font-size:10px !important;padding:3px 7px !important;}


  /* INVENTORY TRADE ECONOMICS */
  .trade-econ-section{
    margin-top:12px;
  }
  .trade-econ-heading{
    margin:12px 0 8px;
    color:var(--amber);
    text-transform:uppercase;
    letter-spacing:.08em;
    font-size:11px;
    font-weight:700;
  }
  .trade-balance-summary{
    margin-top:10px;
    border:1px solid var(--line);
    background:rgba(24,29,40,.8);
    border-radius:16px;
    padding:12px;
  }
  .trade-balance-summary.good{
    border-color:rgba(94,230,160,.38);
    background:rgba(94,230,160,.08);
  }
  .trade-balance-summary.bad{
    border-color:rgba(255,91,117,.42);
    background:rgba(255,91,117,.08);
  }
  .trade-summary-label{
    color:var(--muted);
    font-size:11px;
    letter-spacing:.08em;
    text-transform:uppercase;
    margin-bottom:4px;
  }
  .trade-summary-value{
    color:var(--mint);
    font-size:20px;
    font-weight:700;
  }
  .trade-balance-summary.bad .trade-summary-value{color:var(--red);}
  .trade-summary-note{
    color:var(--muted);
    font-size:11px;
    line-height:1.45;
    margin-top:4px;
  }
  .trade-total-cost{
    margin-top:10px;
    border:1px solid rgba(127,216,232,.28);
    background:rgba(127,216,232,.08);
    border-radius:16px;
    padding:12px;
  }
  .trade-total-cost .cost-value{
    color:var(--holo1);
    font-size:22px;
    font-weight:700;
  }
  .trade-profit-chip{
    margin-top:8px;
    display:inline-flex;
    border-radius:999px;
    padding:5px 10px;
    font-size:12px;
    color:var(--mint);
    background:rgba(94,230,160,.12);
  }
  .trade-profit-chip.bad{
    color:var(--red);
    background:rgba(255,91,117,.12);
  }


  /* ANDROID CAMERA + MOBILE WEB COMPATIBILITY */
  html,body{
    min-height:100%;
    overscroll-behavior-y:none;
  }
  body{
    min-height:100dvh;
  }
  main{
    -webkit-overflow-scrolling:touch;
    overscroll-behavior-y:contain;
  }
  button,label,input,select,textarea{
    touch-action:manipulation;
  }
  input,select,textarea{
    font-size:16px;
  }

  /* Do not use display:none for camera/file inputs.
     Several Android browsers are more reliable when the input remains
     in the accessibility/render tree and a label directly activates it. */
  .android-media-input{
    position:absolute !important;
    width:1px !important;
    height:1px !important;
    padding:0 !important;
    margin:-1px !important;
    overflow:hidden !important;
    clip:rect(0,0,0,0) !important;
    white-space:nowrap !important;
    border:0 !important;
    opacity:.01 !important;
  }
  .scan-action-row{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:9px;
    margin-top:16px;
  }
  .scan-action-label{
    min-height:50px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    border-radius:14px;
    border:1px solid var(--line);
    cursor:pointer;
    user-select:none;
    -webkit-user-select:none;
    font-size:14px;
    font-weight:700;
    text-align:center;
    padding:10px 8px;
  }
  .scan-action-label.camera{
    background:var(--amber);
    color:#1A1304;
    border-color:var(--amber);
  }
  .scan-action-label.upload{
    background:var(--surface2);
    color:var(--holo1);
  }
  .scan-action-label:active{
    transform:scale(.985);
  }
  .android-media-status{
    min-height:18px;
    margin-top:8px;
    color:var(--muted);
    font-size:11.5px;
    line-height:1.4;
    text-align:center;
  }
  .android-media-status.error{
    color:var(--rose);
  }
  .media-loading{
    display:inline-flex;
    align-items:center;
    gap:7px;
    color:var(--amber);
  }

  /* Dynamic viewport-safe bottom sheets on Android Chrome */
  .sheet,
  .import-sheet,
  .edit-item-sheet,
  .sales-sheet{
    max-height:calc(100dvh - 24px) !important;
  }
  .navbar{
    padding-bottom:max(8px, env(safe-area-inset-bottom, 0px));
  }

  @media(max-width:360px){
    .scan-action-row{
      grid-template-columns:1fr;
    }
  }


  /* Scan/Match paired thumbnail preview */
  .scan-match-row{
    display:grid;
    grid-template-columns:repeat(2, minmax(0,1fr));
    gap:10px;
    margin-bottom:12px;
  }
  .scan-match-card{
    border:1px solid var(--line);
    background:rgba(255,255,255,0.02);
    border-radius:14px;
    padding:10px;
  }
  .scan-match-label{
    font-size:11px;
    letter-spacing:.12em;
    text-transform:uppercase;
    color:var(--muted);
    margin-bottom:8px;
  }
  .scan-match-thumb{
    width:100%;
    aspect-ratio:1/1;
    border-radius:12px;
    overflow:hidden;
    border:1px solid rgba(255,255,255,0.06);
    background:#101626;
    display:flex;
    align-items:center;
    justify-content:center;
  }
  .scan-match-thumb img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
  }
  .scan-match-fallback{
    width:100%;
    height:100%;
    display:flex;
    align-items:center;
    justify-content:center;
    font-family:'Barlow Condensed';
    font-weight:800;
    color:#0B0E14;
    font-size:34px;
  }
  .scan-success-note{
    margin-top:8px;
    color:var(--holo1);
    font-size:12px;
  }


  /* PRODUCTION SUPABASE AUTH UX */
  .auth-success{
    display:none;
    background:rgba(94,230,160,0.12);
    border:1px solid rgba(94,230,160,0.35);
    color:var(--mint);
    border-radius:12px;
    padding:10px 12px;
    font-size:12px;
    line-height:1.45;
    margin-bottom:12px;
  }
  .auth-success.show{display:block;}
  .auth-recovery-panel{
    display:flex;
    flex-direction:column;
    gap:10px;
    margin-top:12px;
  }
  .auth-recovery-panel.hidden{display:none;}
  .auth-recovery-panel input{
    width:100%;
    background:var(--surface2);
    border:1px solid var(--line);
    color:var(--text);
    border-radius:12px;
    padding:13px 14px;
    font-size:16px;
  }
  .google-demo-btn.supabase-google{
    width:100%;
    min-height:50px;
    font-size:15px;
  }
  .auth-card button:disabled,
  .auth-card input:disabled{
    opacity:.55;
    cursor:not-allowed;
  }
  .auth-spinner{
    width:16px;
    height:16px;
    border:2px solid rgba(0,0,0,.25);
    border-top-color:currentColor;
    border-radius:50%;
    animation:authSpin .8s linear infinite;
  }
  @keyframes authSpin{to{transform:rotate(360deg)}}


  /* FINAL ANDROID WEB POLISH */
  @supports(height:100svh){
    .auth-screen{min-height:100svh;}
    #app{min-height:100svh;}
  }
  @supports(height:100dvh){
    .auth-screen{min-height:100dvh;}
    #app{min-height:100dvh;}
  }
  @media(max-width:480px){
    .auth-screen{
      align-items:flex-start;
      padding:14px 12px calc(24px + env(safe-area-inset-bottom,0px));
    }
    .auth-card{
      margin:auto 0;
      width:100%;
      max-width:none;
    }
    .auth-form input,
    .auth-recovery-panel input{
      min-height:48px;
      font-size:16px;
    }
    .scan-match-row{
      grid-template-columns:1fr 1fr;
      gap:8px;
    }
    .scan-match-card{padding:8px;}
  }
  @media(display-mode:standalone){
    body{user-select:none;-webkit-user-select:none;}
    input,textarea{user-select:text;-webkit-user-select:text;}
  }


  /* MATCH AUTO-FOCUS + COMP LIST TOUCH SCROLL FIX */
  .match-focus-flash{
    animation:matchFocusFlash 1.15s ease-out;
  }
  @keyframes matchFocusFlash{
    0%{box-shadow:0 0 0 2px rgba(127,216,232,.75),0 0 28px rgba(127,216,232,.20);}
    100%{box-shadow:0 0 0 0 rgba(127,216,232,0),0 0 0 rgba(127,216,232,0);}
  }

  #compListOverlay{
    touch-action:pan-y;
    overscroll-behavior:contain;
  }
  .comp-list-sheet{
    min-height:0 !important;
    overscroll-behavior:contain;
  }
  #compListModalBody{
    display:flex;
    flex:1 1 auto;
    flex-direction:column;
    width:100%;
    min-height:0;
    height:100%;
    overflow:hidden;
  }
  .comp-list-head,
  .comp-apply,
  .comp-list-footer{
    flex:0 0 auto;
  }
  .comp-list-body{
    flex:1 1 auto !important;
    min-height:0 !important;
    overflow-y:auto !important;
    overflow-x:hidden;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior-y:contain;
    touch-action:pan-y;
    padding-bottom:calc(24px + env(safe-area-inset-bottom, 0px)) !important;
  }
  .comp-list-footer{
    position:relative;
    z-index:2;
  }


  /* SELL CART + SALES RECORDS MOBILE SCROLL */
  #sheetOverlay{
    touch-action:pan-y;
    overscroll-behavior:contain;
  }
  #sheetOverlay .cart-sheet{
    width:100%;
    max-width:430px;
    height:min(88dvh, 820px);
    max-height:calc(100dvh - 12px) !important;
    padding:0;
    overflow:hidden !important;
    display:flex;
    flex-direction:column;
    border-radius:20px 20px 0 0;
  }
  #sheetOverlay .cart-sheet > h3{
    flex:0 0 auto;
    margin:0;
    padding:18px 20px 14px;
    border-bottom:1px solid var(--line);
    background:var(--surface);
  }
  #sheetBody{
    display:flex;
    flex:1 1 auto;
    flex-direction:column;
    min-height:0;
    width:100%;
    overflow:hidden;
  }
  .cart-items-scroll{
    flex:1 1 auto;
    min-height:110px;
    overflow-y:auto;
    overflow-x:hidden;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior-y:contain;
    touch-action:pan-y;
    padding:0 20px 8px;
  }
  .cart-checkout-panel{
    flex:0 0 auto;
    padding:10px 20px calc(14px + env(safe-area-inset-bottom, 0px));
    border-top:1px solid var(--line);
    background:var(--surface);
  }
  .cart-checkout-panel .cart-total{
    padding-top:4px;
  }

  /* The ledger body must be the actual flex scroll child. */
  #salesOverlay{
    touch-action:pan-y;
    overscroll-behavior:contain;
  }
  #salesOverlay .sales-ledger-sheet{
    height:100dvh !important;
    max-height:100dvh !important;
    overflow:hidden !important;
  }
  #salesModalBody{
    display:flex;
    flex:1 1 auto;
    flex-direction:column;
    width:100%;
    height:100%;
    min-height:0;
    overflow:hidden;
  }
  .sales-ledger-head{
    flex:0 0 auto;
  }
  .sales-ledger-body{
    flex:1 1 auto !important;
    min-height:0 !important;
    overflow-y:auto !important;
    overflow-x:hidden;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior-y:contain;
    touch-action:pan-y;
    padding-bottom:calc(28px + env(safe-area-inset-bottom, 0px)) !important;
  }

  @media(max-width:430px){
    #sheetOverlay .cart-sheet{
      height:calc(100dvh - 10px);
      max-height:calc(100dvh - 10px) !important;
    }
  }


  /* TOP BANNER REMOVAL SPACING */
  #main > .mode-toggle:first-child,
  #main > .sales-link-btn:first-child,
  #main > .inventory-toolbar-repaired:first-child{
    margin-top:2px;
  }


  /* NON-BLOCKING AUTO-DISMISS TOAST */
  .toast{
    top:auto !important;
    bottom:calc(86px + env(safe-area-inset-bottom, 0px));
    left:50%;
    width:max-content;
    max-width:calc(100vw - 32px);
    opacity:0;
    pointer-events:none;
    transform:translateX(-50%) scale(.98) !important;
    transition:opacity .18s ease, transform .18s ease !important;
    padding:10px 15px;
    border-radius:14px;
    text-align:left;
    line-height:1.35;
    z-index:5000;
  }
  .toast.show{
    opacity:1;
    transform:translateX(-50%) scale(1) !important;
  }


  /* POKEWALLET SECURE API INTEGRATION */
  .api-source-note{
    margin:8px 0 12px;
    color:var(--muted);
    font-size:11.5px;
    line-height:1.45;
  }
  .api-source-note strong{color:var(--holo1);font-weight:700;}
  .captured-search-card{
    display:grid;
    grid-template-columns:78px 1fr;
    gap:12px;
    align-items:center;
    border:1px solid rgba(127,216,232,.28);
    background:rgba(127,216,232,.07);
    border-radius:16px;
    padding:10px;
    margin-bottom:12px;
  }
  .captured-search-card img{
    width:78px;
    height:78px;
    object-fit:cover;
    border-radius:12px;
    border:1px solid var(--line);
  }
  .captured-search-title{
    color:var(--text);
    font-size:13px;
    font-weight:700;
    margin-bottom:4px;
  }
  .captured-search-copy{
    color:var(--muted);
    font-size:11.5px;
    line-height:1.4;
  }
  .pokewallet-variant{
    color:var(--amber);
    font-size:10.5px;
    margin-top:3px;
  }


  /* MARKETPLACE SEARCH PERFORMANCE + PRICE FRESHNESS */
  .market-freshness{
    color:var(--muted);
    white-space:nowrap;
  }
  .market-freshness.stale{
    color:var(--amber);
  }
  .pokewallet-variant{
    line-height:1.45;
  }


  /* AUTOMATIC PHOTO RECOGNITION */
  .recognition-status{
    border:1px solid rgba(127,216,232,.30);
    background:rgba(127,216,232,.08);
    border-radius:14px;
    padding:12px;
    margin:10px 0;
    color:var(--muted);
    font-size:12.5px;
    line-height:1.45;
  }
  .recognition-status strong{
    color:var(--holo1);
    font-weight:700;
  }
  .recognition-status.error{
    border-color:rgba(255,91,117,.35);
    background:rgba(255,91,117,.08);
    color:var(--rose);
  }
  .recognition-loader{
    display:inline-block;
    width:13px;
    height:13px;
    border:2px solid rgba(127,216,232,.25);
    border-top-color:var(--holo1);
    border-radius:50%;
    margin-right:7px;
    vertical-align:-2px;
    animation:recognitionSpin .7s linear infinite;
  }
  @keyframes recognitionSpin{to{transform:rotate(360deg)}}


  /* STRICT SINGLE-METHOD PHOTO WORKFLOW */
  .photo-workflow-card{
    border:1px solid rgba(127,216,232,.34);
    background:rgba(127,216,232,.06);
    border-radius:18px;
    padding:14px;
    margin-bottom:14px;
  }
  .photo-workflow-head{
    display:grid;
    grid-template-columns:76px minmax(0,1fr);
    gap:14px;
    align-items:center;
  }
  .photo-workflow-head img{
    width:76px;
    height:106px;
    object-fit:cover;
    border-radius:12px;
    border:1px solid var(--line);
    background:#0d1220;
  }
  .photo-workflow-title{
    color:var(--text);
    font-size:17px;
    font-weight:700;
    margin-bottom:5px;
  }
  .photo-workflow-copy{
    color:var(--muted);
    font-size:13px;
    line-height:1.45;
  }
  .photo-workflow-state{
    margin-top:12px;
    border-radius:13px;
    padding:11px 12px;
    background:var(--surface2);
    border:1px solid var(--line);
    color:var(--muted);
    font-size:12.5px;
    line-height:1.45;
  }
  .photo-workflow-state.error{
    border-color:rgba(255,91,117,.38);
    background:rgba(255,91,117,.08);
    color:var(--rose);
  }
  .photo-workflow-actions{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:9px;
    margin-top:12px;
  }
  .photo-workflow-actions.one{grid-template-columns:1fr;}
  .photo-workflow-btn{
    min-height:46px;
    border-radius:13px;
    border:1px solid var(--line);
    background:var(--surface2);
    color:var(--holo1);
    font-size:13px;
    font-weight:700;
    padding:10px;
  }
  .photo-workflow-btn.primary{
    background:var(--amber);
    border-color:var(--amber);
    color:#171005;
  }
  .photo-workflow-btn.danger{color:var(--rose);}
  .photo-results-label{
    margin:15px 0 8px;
    color:var(--muted);
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:.12em;
  }
  .manual-photo-reference{
    display:flex;
    gap:10px;
    align-items:center;
    border:1px solid var(--line);
    background:var(--surface2);
    border-radius:14px;
    padding:9px;
    margin-bottom:10px;
  }
  .manual-photo-reference img{
    width:44px;
    height:62px;
    object-fit:cover;
    border-radius:8px;
  }
  .manual-photo-reference span{
    color:var(--muted);
    font-size:12px;
    line-height:1.35;
  }
  @media(max-width:360px){
    .photo-workflow-actions{grid-template-columns:1fr;}
  }


  /* COMP PRICING SOURCE CLEANUP */
  .printing-selector,
  .price-source-selector,
  .market-source-selector,
  [data-role="printing-selector"],
  [data-role="price-source-selector"]{
    display:none !important;
  }


  /* HYBRID OCR + VISUAL RECOGNITION */
  .recognition-evidence{
    margin:14px 0;
    padding:12px;
    border:1px solid rgba(116,211,226,.24);
    border-radius:14px;
    background:rgba(116,211,226,.055);
  }

  .recognition-evidence-title{
    margin-bottom:9px;
    color:var(--cyan);
    font-size:12px;
    font-weight:600;
    letter-spacing:.06em;
    text-transform:uppercase;
  }

  .recognition-evidence-row{
    display:grid;
    grid-template-columns:88px minmax(0,1fr);
    gap:8px;
    padding:5px 0;
    color:var(--text);
    font-size:12px;
    line-height:1.4;
  }

  .recognition-evidence-row > span{
    color:var(--muted);
  }

  .ranked-match-row{
    position:relative;
  }

  .ranked-match-row.recommended{
    border-color:rgba(88,226,164,.42);
    box-shadow:0 0 0 1px rgba(88,226,164,.08);
  }

  .ranked-match-heading{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:8px;
  }

  .match-score{
    flex:0 0 auto;
    padding:4px 7px;
    border-radius:999px;
    border:1px solid var(--line);
    background:rgba(255,255,255,.04);
    color:var(--muted);
    font-family:var(--mono);
    font-size:10px;
    line-height:1;
  }

  .match-score.high{
    border-color:rgba(88,226,164,.38);
    background:rgba(88,226,164,.10);
    color:var(--green);
  }

  .match-score.medium{
    border-color:rgba(255,184,86,.38);
    background:rgba(255,184,86,.10);
    color:var(--orange);
  }

  .match-score.low{
    border-color:rgba(255,102,126,.38);
    background:rgba(255,102,126,.10);
    color:var(--red);
  }

  .match-reasons{
    margin-top:5px;
    color:var(--cyan);
    font-size:10.5px;
    line-height:1.35;
  }

  .match-conflicts{
    margin-top:4px;
    color:var(--red);
    font-size:10.5px;
    line-height:1.35;
  }

  @media (max-width:520px){
    .recognition-evidence-row{
      grid-template-columns:1fr;
      gap:2px;
    }
  }


  .recognition-provider-note{
    margin:-5px 0 12px;
    color:var(--muted);
    font-size:10.5px;
    letter-spacing:.02em;
  }


  /* AUTO MATCH ROUTING + COMPACT CONFIRMATION */
  .compact-ranked-match{
    min-height:auto;
    padding:10px 11px;
    gap:10px;
    cursor:pointer;
  }

  .compact-match-thumb{
    width:30px !important;
    height:42px !important;
    min-width:30px !important;
    border-radius:6px !important;
    object-fit:contain;
    background:#fff;
  }

  .compact-ranked-match .inv-name{
    font-size:15px;
  }

  .compact-ranked-match .inv-meta,
  .compact-ranked-match .pokewallet-variant{
    font-size:10.5px;
  }

  .compact-ranked-match .match-reasons,
  .compact-ranked-match .match-conflicts{
    font-size:9.5px;
    line-height:1.25;
  }

  .compact-match-empty{
    padding:18px 8px;
    font-size:12px;
  }

  .photo-workflow-card .photo-workflow-head > img{
    width:54px;
    height:76px;
    object-fit:contain;
  }

  @media (max-width:520px){
    .compact-ranked-match{
      padding:9px;
    }

    .compact-match-thumb{
      width:26px !important;
      height:37px !important;
      min-width:26px !important;
    }
  }


  /* INDEPENDENT MANUAL SEARCH */
  .manual-search-workflow{
    display:flex;
    flex-direction:column;
    gap:10px;
  }

  .manual-search-heading{
    color:var(--text);
    font-size:17px;
    font-weight:650;
  }

  .manual-search-copy{
    color:var(--muted);
    font-size:12px;
    line-height:1.5;
  }

  .manual-search-workflow .inv-search{
    margin:2px 0 0;
  }


  /* CARD CAPTURE GUIDE + PERFORMANCE */
  .card-capture-guide-preview{
    position:relative;
    height:170px;
    overflow:hidden;
    border-radius:16px;
    background:
      radial-gradient(circle at center, rgba(255,255,255,.08), transparent 58%),
      rgba(0,0,0,.28);
    margin-bottom:12px;
  }

  .card-capture-guide-outline{
    position:absolute;
    left:50%;
    top:50%;
    height:142px;
    aspect-ratio:2.5 / 3.5;
    transform:translate(-50%,-50%);
    border:2px solid rgba(255,255,255,.92);
    border-radius:10px;
    box-shadow:
      0 0 0 999px rgba(0,0,0,.25),
      0 0 18px rgba(255,255,255,.12);
  }

  .card-capture-guide-outline span{
    position:absolute;
    left:50%;
    bottom:8px;
    transform:translateX(-50%);
    width:max-content;
    max-width:160px;
    padding:4px 7px;
    border-radius:999px;
    background:rgba(0,0,0,.65);
    color:#fff;
    font-size:9px;
    letter-spacing:.02em;
  }


  /* INVENTORY TYPE FILTER, SELECTION, SWIPE DELETE */
  .inventory-filter-wrap{
    position:relative;
  }

  .inventory-action-repaired.filter{
    color:var(--holo2);
    position:relative;
  }

  .inventory-action-repaired.filter.active{
    border-color:rgba(126,231,255,.55);
    background:rgba(126,231,255,.08);
  }

  .inventory-filter-dot{
    width:6px;
    height:6px;
    border-radius:999px;
    background:var(--holo2);
    display:inline-block;
    margin-left:5px;
  }

  .inventory-filter-menu{
    position:absolute;
    z-index:80;
    top:calc(100% + 8px);
    left:0;
    min-width:190px;
    padding:7px;
    border:1px solid var(--line);
    border-radius:14px;
    background:var(--panel);
    box-shadow:0 18px 45px rgba(0,0,0,.38);
    display:none;
  }

  .inventory-filter-menu.show{
    display:block;
  }

  .inventory-filter-option{
    width:100%;
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:10px 11px;
    border:0;
    border-radius:10px;
    background:transparent;
    color:var(--muted);
    text-align:left;
    font:inherit;
    cursor:pointer;
  }

  .inventory-filter-option.active{
    background:rgba(126,231,255,.1);
    color:var(--text);
  }

  .inventory-action-repaired.select{
    color:var(--muted);
  }

  .inventory-result-summary{
    margin-top:2px;
  }

  .inventory-selection-bar{
    display:grid;
    grid-template-columns:auto 1fr auto auto;
    gap:8px;
    align-items:center;
    margin-bottom:12px;
    padding:9px;
    border:1px solid var(--line);
    border-radius:14px;
    background:var(--panel);
  }

  .inventory-selection-action,
  .inventory-selection-print,
  .inventory-selection-download,
  .inventory-selection-delete,
  .inventory-selection-done{
    border:1px solid var(--line);
    border-radius:10px;
    background:var(--panel-2);
    color:var(--holo2);
    padding:8px 10px;
    font:inherit;
    font-size:11px;
    font-weight:700;
  }

  .inventory-selection-delete{
    color:#ff6f7d;
  }

  .inventory-selection-print{color:var(--mint);}
  .inventory-selection-download{color:var(--holo1);}

  .inventory-selection-print:disabled,
  .inventory-selection-download:disabled,
  .inventory-selection-delete:disabled{
    opacity:.4;
  }

  .inventory-selection-count{
    color:var(--muted);
    font-size:11px;
  }

  .inventory-swipe-shell{
    position:relative;
    overflow:hidden;
    border-radius:16px;
    margin-bottom:9px;
    background:#b42f3f;
  }

  .inventory-swipe-shell.selected{
    outline:2px solid rgba(126,231,255,.65);
    outline-offset:1px;
  }

  .inventory-swipe-delete{
    position:absolute;
    top:0;
    right:0;
    bottom:0;
    width:82px;
    border:0;
    background:#b42f3f;
    color:#fff;
    font:inherit;
    font-size:12px;
    font-weight:800;
    z-index:1;
  }

  .inventory-swipe-content{
    position:relative;
    z-index:2;
    margin:0 !important;
    background:var(--panel);
    touch-action:pan-y;
    will-change:transform;
  }

  .inventory-select-checkbox{
    width:25px;
    height:25px;
    min-width:25px;
    border:1px solid var(--line);
    border-radius:8px;
    background:var(--panel-2);
    color:#071017;
    font-size:15px;
    font-weight:900;
  }

  .inventory-select-checkbox.checked{
    background:var(--holo2);
    border-color:var(--holo2);
  }

  .inventory-name-line{
    display:flex;
    align-items:center;
    gap:7px;
    flex-wrap:wrap;
  }

  .inventory-type-badge{
    display:inline-flex;
    align-items:center;
    min-height:18px;
    padding:2px 7px;
    border-radius:999px;
    font-size:8.5px;
    font-weight:800;
    letter-spacing:.04em;
    text-transform:uppercase;
    border:1px solid var(--line);
    color:var(--muted);
  }

  .inventory-type-badge.sealed{
    color:#71e3bc;
    border-color:rgba(113,227,188,.4);
    background:rgba(113,227,188,.08);
  }

  .inventory-type-badge.graded{
    color:#e5b7ff;
    border-color:rgba(229,183,255,.42);
    background:rgba(229,183,255,.08);
  }

  .inventory-type-badge.ungraded{
    color:#7ee7ff;
    border-color:rgba(126,231,255,.4);
    background:rgba(126,231,255,.08);
  }

  .inventory-delete-overlay{
    position:fixed;
    inset:0;
    z-index:9999;
    display:none;
    align-items:center;
    justify-content:center;
    padding:22px;
    background:rgba(2,5,10,.72);
    backdrop-filter:blur(8px);
  }

  .inventory-delete-overlay.show{
    display:flex;
  }

  .inventory-delete-dialog{
    width:min(390px,100%);
    border:1px solid rgba(255,111,125,.42);
    border-radius:20px;
    background:var(--panel);
    padding:20px;
    box-shadow:0 24px 70px rgba(0,0,0,.52);
  }

  .inventory-delete-dialog h3{
    margin:0 0 8px;
    color:var(--text);
  }

  .inventory-delete-dialog p{
    margin:0;
    color:var(--muted);
    line-height:1.5;
  }

  .inventory-delete-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
    margin-top:18px;
  }

  .inventory-delete-cancel,
  .inventory-delete-confirm{
    border:1px solid var(--line);
    border-radius:12px;
    padding:11px;
    font:inherit;
    font-weight:800;
  }

  .inventory-delete-cancel{
    background:var(--panel-2);
    color:var(--text);
  }

  .inventory-delete-confirm{
    background:#b42f3f;
    border-color:#d64a5a;
    color:#fff;
  }

  @media(max-width:640px){
    .inventory-selection-bar{
      grid-template-columns:1fr 1fr;
    }

    .inventory-selection-count{
      order:-1;
      grid-column:1 / -1;
    }

    .inventory-filter-menu{
      left:auto;
      right:0;
    }
  }


  /* PROFILE FINANCIAL FORMATTING + CSV EXPORT */
  .profile-dashboard .stat-box .sval{
    font-family:'JetBrains Mono', monospace;
    font-weight:500;
    font-size:clamp(20px,6.5vw,27px);
    line-height:1.12;
    letter-spacing:-.035em;
    overflow-wrap:anywhere;
  }

  .profile-dashboard .portfolio-table td{
    font-weight:400;
    letter-spacing:-.02em;
  }

  .profile-dashboard .portfolio-table td:first-child{
    font-weight:600;
  }

  .profile-dashboard .portfolio-table .total-row td{
    font-weight:600;
  }

  .profile-dashboard .sale-total{
    font-family:'JetBrains Mono', monospace;
    font-weight:500;
  }

  .profile-payment-methods{
    margin-bottom:10px;
  }

  .profile-sale-pills{
    margin-top:6px;
  }

  .account-action.export-records{
    color:var(--holo2);
  }

  .account-action.export-records > span{
    color:var(--holo2);
    font-family:'JetBrains Mono', monospace;
    font-size:11px;
    font-weight:600;
  }

  @media(max-width:430px){
    .profile-dashboard .portfolio-table td{
      padding-left:6px;
      padding-right:6px;
      font-size:10.5px;
    }

    .profile-dashboard .portfolio-table th{
      padding-right:6px;
      font-size:9px;
    }
  }


  /* INVENTORY UI SETTINGS REDESIGN */
  .inventory-collection-header{
    display:grid;
    grid-template-columns:minmax(0,1fr) 54px 54px;
    gap:10px;
    align-items:center;
    margin-bottom:24px;
  }

  .inventory-search-control{
    min-width:0;
    height:54px;
    display:flex;
    align-items:center;
    gap:10px;
    border:1px solid var(--line);
    border-radius:999px;
    background:#080a0f;
    padding:0 16px;
  }

  .inventory-search-icon{
    flex:0 0 auto;
    color:var(--text);
    font-size:28px;
    line-height:1;
    transform:rotate(-18deg);
  }

  .inventory-search-control .inventory-search-repaired{
    min-width:0;
    flex:1;
    height:auto;
    padding:0;
    margin:0;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
    color:var(--text);
    font-size:16px;
  }

  .inventory-search-control .inventory-search-repaired:focus{
    border:0;
    outline:0;
    box-shadow:none;
  }

  .inventory-search-clear{
    width:34px;
    height:34px;
    display:grid;
    place-items:center;
    padding:0;
    border:0;
    background:transparent;
    color:var(--text);
    font-size:32px;
    font-weight:300;
  }

  .inventory-icon-menu-wrap{
    position:relative;
  }

  .inventory-round-icon-button{
    width:54px;
    height:54px;
    display:grid;
    place-items:center;
    border:1px solid var(--line);
    border-radius:999px;
    background:#080a0f;
    color:var(--text);
    font-size:24px;
    font-weight:400;
  }

  .inventory-round-icon-button.active{
    border-color:rgba(126,231,255,.48);
    color:var(--holo2);
  }

  .inventory-sliders-icon{
    width:23px;
    display:grid;
    gap:5px;
  }

  .inventory-sliders-icon i{
    position:relative;
    display:block;
    height:2px;
    border-radius:999px;
    background:currentColor;
  }

  .inventory-sliders-icon i:nth-child(1)::after,
  .inventory-sliders-icon i:nth-child(2)::after,
  .inventory-sliders-icon i:nth-child(3)::after{
    content:'';
    position:absolute;
    top:50%;
    width:6px;
    height:6px;
    border-radius:999px;
    background:currentColor;
    transform:translateY(-50%);
  }

  .inventory-sliders-icon i:nth-child(1)::after{
    left:4px;
  }

  .inventory-sliders-icon i:nth-child(2)::after{
    right:3px;
  }

  .inventory-sliders-icon i:nth-child(3)::after{
    left:9px;
  }

  .inventory-floating-menu{
    position:absolute;
    z-index:120;
    top:calc(100% + 12px);
    right:0;
    left:auto;
    min-width:210px;
    padding:8px;
    border:1px solid rgba(255,255,255,.08);
    border-radius:16px;
    background:#17191e;
    box-shadow:0 24px 60px rgba(0,0,0,.55);
  }

  .inventory-floating-menu .inventory-menu-heading{
    padding:9px 12px 7px;
    color:var(--muted);
    font-size:11px;
    font-weight:700;
    letter-spacing:.08em;
    text-transform:uppercase;
  }

  .inventory-settings-menu{
    display:none;
  }

  .inventory-settings-menu.show{
    display:block;
  }

  .inventory-settings-option,
  .inventory-filter-option,
  .inventory-floating-menu .sort-option-repaired{
    width:100%;
    min-height:52px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    padding:0 14px;
    border:0;
    border-radius:11px;
    background:transparent;
    color:var(--text);
    font:inherit;
    font-size:15px;
    font-weight:400;
    text-align:left;
  }

  .inventory-settings-option + .inventory-settings-option{
    margin-top:3px;
  }

  .inventory-settings-option:hover,
  .inventory-settings-option:active,
  .inventory-filter-option:hover,
  .inventory-filter-option:active,
  .inventory-floating-menu .sort-option-repaired:hover,
  .inventory-floating-menu .sort-option-repaired:active{
    background:rgba(255,255,255,.055);
  }

  .inventory-settings-option.active,
  .inventory-filter-option.active,
  .inventory-floating-menu .sort-option-repaired.active{
    color:var(--holo2);
    background:rgba(126,231,255,.08);
  }

  .inventory-settings-symbol{
    min-width:24px;
    text-align:center;
    color:var(--muted);
    font-size:20px;
    font-weight:400;
  }

  .inventory-filter-from-settings{
    display:none;
  }

  .inventory-filter-from-settings.show{
    display:block;
  }

  .inventory-portfolio-heading{
    display:grid;
    justify-items:center;
    gap:4px;
    margin:8px 0 26px;
    text-align:center;
  }

  .inventory-portfolio-label{
    color:var(--text);
    font-size:19px;
    font-weight:600;
  }

  .inventory-portfolio-count{
    color:var(--text);
    font-family:'JetBrains Mono', monospace;
    font-size:clamp(31px,10vw,44px);
    font-weight:500;
    letter-spacing:-.05em;
  }

  .inventory-result-summary{
    margin:0 0 10px;
    color:var(--muted);
    font-size:11px;
    letter-spacing:.08em;
    text-transform:uppercase;
  }

  /* The red delete layer must remain hidden until the row is swiped. */
  .inventory-swipe-shell{
    background:transparent !important;
    border:1px solid var(--line);
  }

  .inventory-swipe-content{
    background:var(--panel) !important;
    border:0 !important;
  }

  .inventory-swipe-delete{
    background:#b42f3f;
  }

  .inventory-swipe-shell:not(.swipe-open) .inventory-swipe-delete{
    visibility:hidden;
  }

  .inventory-swipe-shell.swipe-open .inventory-swipe-delete{
    visibility:visible;
  }

  .inventory-swipe-shell.selected{
    background:transparent !important;
  }

  @media(max-width:520px){
    .inventory-collection-header{
      grid-template-columns:minmax(0,1fr) 50px 50px;
      gap:8px;
    }

    .inventory-search-control{
      height:50px;
      padding:0 13px;
    }

    .inventory-round-icon-button{
      width:50px;
      height:50px;
    }

    .inventory-search-control .inventory-search-repaired{
      font-size:14px;
    }

    .inventory-floating-menu{
      min-width:194px;
    }
  }


  /* INVENTORY READABILITY + POKEWALLET THUMBNAILS */
  .inventory-list-grid{display:grid;gap:12px;}

  .inventory-list-item{
    position:relative;
    display:grid;
    grid-template-columns:64px minmax(0,1fr) minmax(132px,auto);
    gap:14px;
    align-items:center;
    min-height:112px;
    padding:16px;
    border:1px solid var(--line);
    border-radius:18px;
    background:var(--panel);
    color:var(--text);
    cursor:pointer;
    overflow:hidden;
  }

  .inventory-list-item:active{transform:scale(.995);}

  .inventory-list-item.selected{
    border-color:rgba(126,231,255,.72);
    box-shadow:0 0 0 1px rgba(126,231,255,.25);
  }

  .inventory-list-item .inventory-select-checkbox{
    position:absolute;top:10px;left:10px;z-index:4;
  }

  .inventory-item-thumbnail{
    position:relative;
    width:64px;height:82px;
    display:grid;place-items:center;
    overflow:hidden;
    border:1px solid var(--line);
    border-radius:12px;
    background:var(--panel-2);
  }

  .inventory-item-thumbnail img{
    position:absolute;inset:0;z-index:2;
    width:100%;height:100%;
    object-fit:contain;
    background:#f4f5f7;
  }

  .inventory-thumbnail-placeholder{
    position:absolute;inset:0;z-index:1;
    display:grid;place-items:center;color:var(--muted);
    background:linear-gradient(145deg,rgba(127,216,232,.08),rgba(199,146,234,.08));
  }

  .inventory-thumbnail-fallback{
    display:grid;place-items:center;gap:7px;
  }

  .inventory-thumbnail-initials{
    min-width:34px;height:24px;padding:0 7px;
    display:inline-flex;align-items:center;justify-content:center;
    border:1px solid rgba(255,255,255,.12);border-radius:999px;
    background:rgba(255,255,255,.06);color:var(--text);
    font-size:10px;font-weight:700;letter-spacing:.04em;
  }

  .inventory-placeholder-card{
    position:relative;width:31px;height:43px;
    border:2px solid currentColor;border-radius:4px;
  }

  .inventory-placeholder-card i{
    position:absolute;left:5px;right:5px;top:7px;height:13px;
    border:1px solid currentColor;border-radius:2px;
  }

  .inventory-placeholder-slab{
    position:relative;width:34px;height:49px;
    border:2px solid currentColor;border-radius:5px;
  }

  .inventory-placeholder-slab::before{
    content:'';position:absolute;left:4px;right:4px;top:4px;height:8px;
    border:1px solid currentColor;border-radius:2px;
  }

  .inventory-placeholder-slab i{
    position:absolute;left:7px;right:7px;top:17px;bottom:5px;
    border:1px solid currentColor;border-radius:2px;
  }

  .inventory-placeholder-box{
    position:relative;width:39px;height:31px;
    border:2px solid currentColor;border-radius:4px;
  }

  .inventory-placeholder-box::before{
    content:'';position:absolute;left:50%;top:-2px;bottom:-2px;width:1px;background:currentColor;
  }

  .inventory-placeholder-box i:first-child,
  .inventory-placeholder-box i:last-child{
    position:absolute;left:5px;right:5px;height:1px;background:currentColor;
  }

  .inventory-placeholder-box i:first-child{top:6px;}
  .inventory-placeholder-box i:last-child{bottom:6px;}

  .inventory-item-main{
    min-width:0;display:grid;gap:8px;align-content:center;
  }

  .inventory-item-title-row{
    min-width:0;display:flex;align-items:flex-start;gap:8px;flex-wrap:wrap;
  }

  .inventory-item-name{
    min-width:0;max-width:100%;margin:0;
    color:var(--text);font-size:16px;font-weight:600;line-height:1.25;
    overflow-wrap:anywhere;
  }

  .inventory-item-meta{
    color:var(--muted);font-size:11px;line-height:1.45;overflow-wrap:anywhere;
  }

  .inventory-item-tags{
    min-width:0;display:flex;align-items:center;gap:7px;flex-wrap:wrap;
  }

  .inventory-item-tags .margin-tag,
  .inventory-item-tags .acquisition-pill{margin:0;}

  .inventory-value-grid{
    min-width:132px;margin:0;display:grid;grid-template-columns:1fr;gap:7px;
  }

  .inventory-value-grid>div{
    display:grid;grid-template-columns:50px minmax(0,1fr);gap:8px;align-items:baseline;
  }

  .inventory-value-grid dt,
  .inventory-value-grid dd{margin:0;}

  .inventory-value-grid dt{
    color:var(--muted);font-size:10px;text-align:right;
    text-transform:uppercase;letter-spacing:.04em;
  }

  .inventory-value-grid dd{
    color:var(--text);font-family:'JetBrains Mono',monospace;
    font-size:12px;font-weight:500;text-align:right;white-space:nowrap;
  }

  .inventory-value-grid .low-stock dd{color:var(--warn);}

  .inventory-swipe-delete,
  .inventory-swipe-shell{display:none !important;}

  @media(max-width:640px){
    .inventory-list-item{
      grid-template-columns:58px minmax(0,1fr);
      gap:12px;min-height:0;padding:14px;
    }

    .inventory-item-thumbnail{
      width:58px;height:76px;grid-row:1 / span 2;align-self:start;
    }

    .inventory-value-grid{
      grid-column:2;min-width:0;
      grid-template-columns:repeat(2,minmax(0,1fr));
      gap:7px 12px;padding-top:8px;
      border-top:1px solid rgba(255,255,255,.055);
    }

    .inventory-value-grid>div{grid-template-columns:auto 1fr;gap:6px;}
    .inventory-value-grid dt{text-align:left;}
    .inventory-value-grid dd{text-align:right;}
    .inventory-item-name{font-size:15px;}
  }

  @media(max-width:390px){
    .inventory-list-item{
      grid-template-columns:52px minmax(0,1fr);gap:10px;padding:12px;
    }

    .inventory-item-thumbnail{width:52px;height:69px;}

    .inventory-value-grid{grid-template-columns:1fr;}

    .inventory-value-grid>div{grid-template-columns:50px 1fr;}
    .inventory-value-grid dt{text-align:right;}
  }


  /* INVENTORY SWIPE DELETE RESTORED */
  .inventory-swipe-shell{
    position:relative;
    display:block !important;
    overflow:hidden;
    border:1px solid var(--line);
    border-radius:18px;
    background:transparent !important;
  }

  .inventory-swipe-shell.selected{
    border-color:rgba(126,231,255,.72);
    box-shadow:0 0 0 1px rgba(126,231,255,.25);
  }

  .inventory-swipe-content{
    position:relative;
    z-index:2;
    width:100%;
    border:0 !important;
    border-radius:17px;
    background:var(--panel) !important;
    touch-action:pan-y;
    will-change:transform;
  }

  .inventory-swipe-delete{
    position:absolute;
    z-index:1;
    top:0;
    right:0;
    bottom:0;
    width:84px;
    display:flex !important;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:4px;
    padding:0;
    border:0;
    border-radius:0 17px 17px 0;
    background:#a92f3f;
    color:#fff;
    font:inherit;
    font-size:11px;
    font-weight:700;
    opacity:0;
    pointer-events:none;
    transition:opacity .12s ease;
  }

  .inventory-swipe-delete > span:first-child{
    font-size:18px;
  }

  .inventory-swipe-shell.swipe-open .inventory-swipe-delete{
    opacity:1;
    pointer-events:auto;
  }

  .inventory-swipe-shell:not(.swipe-open) .inventory-swipe-delete{
    opacity:0;
    pointer-events:none;
  }

  .inventory-swipe-shell:not(.swipe-open){
    background:transparent !important;
  }

  .inventory-list-grid{
    gap:12px;
  }


  /* INVENTORY PRODUCT GRID + PROFILE EXPORT P24 */
  .inventory-portfolio-count{
    font-size:clamp(28px,8vw,42px);
    white-space:nowrap;
  }

  .inventory-product-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(245px,1fr));
    gap:14px;
    align-items:stretch;
  }

  .inventory-product-shell{
    min-width:0;
    border-radius:16px;
  }

  .inventory-product-card{
    position:relative;
    min-width:0;
    min-height:430px;
    display:flex;
    flex-direction:column;
    padding:14px;
    border:1px solid var(--line) !important;
    border-radius:15px;
    background:#07090d !important;
    overflow:hidden;
  }

  .inventory-product-card.selected{
    border-color:rgba(126,231,255,.85) !important;
    box-shadow:0 0 0 2px rgba(126,231,255,.28);
  }

  .inventory-card-select-space{
    position:relative;
    min-height:40px;
    margin-bottom:4px;
  }

  .inventory-card-select-space .inventory-select-checkbox{
    position:absolute;
    top:0;
    left:0;
    width:34px;
    height:34px;
    min-width:34px;
    border-radius:9px;
  }

  .inventory-product-image{
    min-height:210px;
    display:grid;
    place-items:center;
    margin-bottom:14px;
    border-radius:12px;
    background:#040507;
    overflow:hidden;
  }

  .inventory-product-image .inventory-item-thumbnail{
    width:100%;
    height:220px;
    border:0;
    border-radius:0;
    background:#040507;
  }

  .inventory-product-image .inventory-item-thumbnail img{
    object-fit:contain;
    padding:6px;
    background:#040507;
  }

  .inventory-product-image .inventory-thumbnail-placeholder{
    transform:scale(1.65);
  }

  .inventory-product-body{
    display:grid;
    gap:7px;
    min-width:0;
  }

  .inventory-product-title-row{
    display:flex;
    align-items:flex-start;
    gap:8px;
    flex-wrap:wrap;
  }

  .inventory-product-name{
    flex:1 1 150px;
    min-width:0;
    margin:0;
    color:var(--text);
    font-size:15px;
    font-weight:600;
    line-height:1.3;
    overflow-wrap:anywhere;
  }

  .inventory-product-meta{
    color:var(--muted);
    font-size:11px;
    line-height:1.4;
  }

  .inventory-product-acquisition{
    min-height:34px;
  }

  .inventory-product-acquisition .acq-summary{
    display:flex;
    flex-wrap:wrap;
    gap:5px;
    margin-top:0 !important;
  }

  .inventory-product-footer{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:12px;
    margin-top:auto;
    padding-top:18px;
  }

  .inventory-product-quantity{
    color:var(--text);
    font-size:11px;
    white-space:nowrap;
  }

  .inventory-product-value-stack{
    min-width:0;
    text-align:right;
  }

  .inventory-product-market{
    color:var(--text);
    font-family:'JetBrains Mono',monospace;
    font-size:18px;
    font-weight:500;
    white-space:nowrap;
  }

  .inventory-product-change{
    margin-top:3px;
    font-size:10px;
    white-space:nowrap;
  }

  .inventory-product-change.positive{color:var(--holo2);}
  .inventory-product-change.negative{color:#ff7d86;}

  .inventory-product-prices{
    display:flex;
    justify-content:space-between;
    gap:10px;
    margin-top:10px;
    padding-top:9px;
    border-top:1px solid rgba(255,255,255,.07);
    color:var(--muted);
    font-size:10px;
  }

  .inventory-selection-panel{
    grid-template-columns:minmax(0,1fr) minmax(110px,1fr) minmax(100px,1fr);
    gap:10px;
    padding:12px;
  }

  .inventory-selection-panel .inventory-selection-count{
    grid-column:1 / -1;
    padding:0 2px 4px;
  }

  .inventory-selection-panel button{
    width:100%;
    min-height:42px;
  }

  .inventory-grid-empty{
    grid-column:1 / -1;
  }

  .profile-export-section{
    margin:22px 0 16px;
  }

  .profile-export-button{
    width:100%;
    min-height:72px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    padding:15px 17px;
    border:1px solid rgba(126,231,255,.35);
    border-radius:16px;
    background:rgba(126,231,255,.07);
    color:var(--holo2);
    text-align:left;
    font:inherit;
    font-weight:700;
  }

  .profile-export-button small{
    display:block;
    margin-top:4px;
    color:var(--muted);
    font-size:10px;
    font-weight:400;
  }

  .profile-export-format{
    flex:0 0 auto;
    font-family:'JetBrains Mono',monospace;
    font-size:11px;
  }

  @media(max-width:560px){
    .inventory-product-grid{
      grid-template-columns:1fr;
    }

    .inventory-product-card{
      min-height:0;
    }

    .inventory-product-image{
      min-height:190px;
    }

    .inventory-product-image .inventory-item-thumbnail{
      height:205px;
    }

    .inventory-selection-panel{
      grid-template-columns:1fr 1fr;
    }

    .inventory-selection-panel .inventory-selection-done{
      grid-column:1 / 2;
    }
  }


  /* INVENTORY MOBILE 2x2 GRID P25 */
  .inventory-product-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:10px !important;
  }

  .inventory-product-shell{
    min-width:0;
    height:100%;
  }

  .inventory-product-card{
    min-width:0;
    min-height:390px;
    height:100%;
    padding:11px;
    border-radius:14px;
  }

  .inventory-product-image{
    width:100%;
    min-height:0;
    height:164px;
    margin-bottom:11px;
    border-radius:10px;
  }

  .inventory-product-image .inventory-item-thumbnail{
    width:100%;
    height:164px;
  }

  .inventory-product-image .inventory-item-thumbnail img{
    width:100%;
    height:100%;
    padding:4px;
    object-fit:contain;
  }

  .inventory-product-image .inventory-thumbnail-placeholder{
    transform:scale(1.3);
  }

  .inventory-product-body{
    gap:5px;
  }

  .inventory-product-title-row{
    display:block;
  }

  .inventory-product-name{
    display:-webkit-box;
    min-height:38px;
    max-height:38px;
    margin:0 0 5px;
    font-size:13px;
    line-height:1.42;
    font-weight:600;
    overflow:hidden;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
  }

  .inventory-product-title-row .inventory-type-badge{
    display:inline-flex;
    max-width:100%;
    margin:0;
    padding:2px 6px;
    font-size:7.5px;
  }

  .inventory-product-meta{
    display:-webkit-box;
    min-height:31px;
    max-height:31px;
    font-size:9.5px;
    line-height:1.55;
    overflow:hidden;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
  }

  .inventory-product-acquisition{
    min-height:27px;
    max-height:27px;
    overflow:hidden;
  }

  .inventory-product-acquisition .acq-summary{
    flex-wrap:nowrap;
    overflow:hidden;
  }

  .inventory-product-acquisition .acq-pill{
    max-width:100%;
    padding:4px 7px;
    font-size:8px;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }

  .inventory-product-footer{
    align-items:flex-end;
    gap:6px;
    margin-top:auto;
    padding-top:11px;
  }

  .inventory-product-quantity{
    font-size:9px;
  }

  .inventory-product-market{
    font-size:15px;
    letter-spacing:-.04em;
  }

  .inventory-product-change{
    max-width:100%;
    margin-top:2px;
    font-size:8.5px;
    overflow:hidden;
    text-overflow:ellipsis;
  }

  .inventory-product-prices{
    display:grid;
    grid-template-columns:1fr;
    gap:3px;
    margin-top:8px;
    padding-top:7px;
    font-size:8.5px;
  }

  .inventory-product-prices span{
    display:flex;
    justify-content:space-between;
    gap:5px;
  }

  .inventory-card-select-space{
    min-height:34px;
    margin-bottom:2px;
  }

  .inventory-card-select-space .inventory-select-checkbox{
    width:30px;
    height:30px;
    min-width:30px;
  }

  .inventory-selection-panel{
    grid-template-columns:1fr 1fr !important;
    gap:8px;
  }

  .inventory-selection-panel .inventory-selection-count{
    grid-column:1 / -1;
  }

  .inventory-swipe-delete{
    width:66px !important;
    font-size:9px !important;
  }

  .inventory-swipe-shell.swipe-open .inventory-swipe-content{
    transform:translateX(-66px) !important;
  }

  @media(min-width:700px){
    .inventory-product-grid{
      gap:14px !important;
    }

    .inventory-product-card{
      min-height:430px;
      padding:14px;
    }

    .inventory-product-image{
      height:220px;
      margin-bottom:14px;
    }

    .inventory-product-image .inventory-item-thumbnail{
      height:220px;
    }

    .inventory-product-name{
      min-height:42px;
      max-height:42px;
      font-size:15px;
      line-height:1.4;
    }

    .inventory-product-meta{
      min-height:34px;
      max-height:34px;
      font-size:11px;
    }

    .inventory-product-market{
      font-size:18px;
    }
  }

  @media(max-width:390px){
    .inventory-product-grid{
      gap:8px !important;
    }

    .inventory-product-card{
      min-height:362px;
      padding:9px;
    }

    .inventory-product-image{
      height:142px;
      margin-bottom:9px;
    }

    .inventory-product-image .inventory-item-thumbnail{
      height:142px;
    }

    .inventory-product-name{
      min-height:35px;
      max-height:35px;
      font-size:12px;
    }

    .inventory-product-meta{
      min-height:28px;
      max-height:28px;
      font-size:8.5px;
    }

    .inventory-product-market{
      font-size:13px;
    }

    .inventory-product-change,
    .inventory-product-prices{
      font-size:7.8px;
    }
  }

  @media(max-width:340px){
    .inventory-product-grid{
      gap:6px !important;
    }

    .inventory-product-card{
      min-height:342px;
      padding:8px;
    }

    .inventory-product-image,
    .inventory-product-image .inventory-item-thumbnail{
      height:128px;
    }

    .inventory-product-name{
      font-size:11px;
    }

    .inventory-product-title-row .inventory-type-badge{
      font-size:6.8px;
    }
  }


  /* INVENTORY FORCED MOBILE 2x2 P26 */
  #inventoryResults .inventory-product-grid{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
    grid-auto-flow:row !important;
    gap:10px !important;
    width:100% !important;
    min-width:0 !important;
  }
  #inventoryResults .inventory-product-grid > .inventory-product-shell{
    display:block !important;
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
    grid-column:auto !important;
  }
  #inventoryResults .inventory-product-card{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
  }
  @media(max-width:430px){
    #inventoryResults .inventory-product-grid{gap:8px !important;}
  }
  @media(max-width:350px){
    #inventoryResults .inventory-product-grid{gap:6px !important;}
  }


  /* INVENTORY GUARANTEED MOBILE 2x2 FLEX LAYOUT P27 */
  #inventoryResults .inventory-product-flex-grid{
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:wrap !important;
    align-items:stretch !important;
    align-content:flex-start !important;
    gap:10px !important;
    width:100% !important;
    min-width:0 !important;
  }

  #inventoryResults .inventory-product-flex-grid > .inventory-product-shell{
    display:block !important;
    flex-grow:0 !important;
    flex-shrink:0 !important;
    flex-basis:calc(50% - 5px) !important;
    width:calc(50% - 5px) !important;
    max-width:calc(50% - 5px) !important;
    min-width:0 !important;
    align-self:stretch !important;
    grid-column:auto !important;
  }

  #inventoryResults .inventory-product-flex-grid > .inventory-product-shell:nth-child(odd),
  #inventoryResults .inventory-product-flex-grid > .inventory-product-shell:nth-child(even){
    margin-left:0 !important;
    margin-right:0 !important;
  }

  #inventoryResults .inventory-product-flex-grid .inventory-product-card{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    height:100% !important;
    box-sizing:border-box !important;
  }

  @media(max-width:430px){
    #inventoryResults .inventory-product-flex-grid{
      gap:8px !important;
    }

    #inventoryResults .inventory-product-flex-grid > .inventory-product-shell{
      flex-basis:calc(50% - 4px) !important;
      width:calc(50% - 4px) !important;
      max-width:calc(50% - 4px) !important;
    }
  }

  @media(max-width:350px){
    #inventoryResults .inventory-product-flex-grid{
      gap:6px !important;
    }

    #inventoryResults .inventory-product-flex-grid > .inventory-product-shell{
      flex-basis:calc(50% - 3px) !important;
      width:calc(50% - 3px) !important;
      max-width:calc(50% - 3px) !important;
    }
  }



  /* P30 TYPOGRAPHY NORMALIZATION
     One app font and one compact footer-scale text size across the UI. */
  :root{
    --app-font-family:'Inter',sans-serif;
    --app-font-size:12px;
  }
  html,body,body *,button,input,select,textarea,option{
    font-family:var(--app-font-family) !important;
    font-size:var(--app-font-size) !important;
  }
  input::placeholder,textarea::placeholder{
    font-family:var(--app-font-family) !important;
    font-size:var(--app-font-size) !important;
  }
  svg,svg *{
    font-family:inherit;
  }

  /* P32: Sell > Manual Search inventory rows use the app's compact type scale. */
  #manualResultsList .manual-inventory-result,
  #manualResultsList .manual-inventory-result *{
    font-family:var(--app-font-family) !important;
    font-size:var(--app-font-size) !important;
    line-height:1.35;
  }


/* P36.3 BULK INVENTORY LABELS */
.print-label-sheet{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  max-height:64vh;
  overflow:auto;
}
.print-label-unit{
  min-width:0;
  padding:12px 8px;
  border:1px solid #d9dce3;
  border-radius:10px;
  background:#fff;
  color:#0B0E14;
  text-align:center;
  break-inside:avoid;
}
.print-label-unit .batch-qr-holder{display:flex;justify-content:center;min-height:150px;}
.print-label-unit .batch-qr-holder canvas,
.print-label-unit .batch-qr-holder img{width:150px!important;height:150px!important;}
.print-label-unit .label-price{font-size:22px;font-weight:700;margin-top:6px;}
@media(max-width:430px){
  .print-label-sheet{grid-template-columns:1fr;}
}
@media print{
  #printLabelArea.print-label-sheet{
    position:static!important;
    width:100%!important;
    display:grid!important;
    grid-template-columns:repeat(2,1fr)!important;
    gap:4mm!important;
    max-height:none!important;
    overflow:visible!important;
    padding:0!important;
  }
  #printLabelArea .print-label-unit{
    border:1px solid #bbb!important;
    border-radius:0!important;
    padding:3mm!important;
    page-break-inside:avoid!important;
  }
}

/* P36.3 stabilization: compact thumbnails, graded pricing notice, pagination */
.inventory-compact-thumbnail{
  position:relative;
  flex:0 0 auto;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  border-radius:8px;
  background:var(--surface2);
  border:1px solid var(--line);
}
.inventory-compact-thumbnail>img{
  position:relative;
  z-index:2;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  background:#fff;
}
.inventory-compact-fallback{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
}
.inventory-compact-thumbnail:not(.image-failed)>img + .inventory-compact-fallback{display:none;}
.inventory-compact-thumbnail.image-failed .inventory-compact-fallback{display:flex;}
.inventory-compact-thumbnail .inventory-thumbnail-fallback{width:100%;height:100%;min-height:0;border:0;border-radius:0;}

.inventory-load-more{
  width:100%;
  margin:12px 0 4px;
  padding:12px 14px;
  border-radius:12px;
  border:1px solid var(--line);
  background:var(--surface);
  color:var(--holo1);
  font-weight:600!important;
  cursor:pointer;
}

.graded-market-warning{
  margin-top:12px;
  border:1px solid rgba(255,180,84,.35);
  background:rgba(255,180,84,.08);
  border-radius:12px;
  padding:12px;
  color:var(--muted);
  line-height:1.45;
}
.graded-market-warning strong{display:block;color:var(--amber);margin-bottom:4px;}
.graded-market-warning input{
  width:100%;
  margin-top:8px;
  background:var(--surface2);
  border:1px solid var(--line);
  color:var(--text);
  border-radius:10px;
  padding:10px 11px;
}

.inventory-selection-panel{
  margin-bottom:14px!important;
  flex-wrap:wrap!important;
  gap:8px!important;
}
.inventory-selection-panel button:disabled{
  opacity:.42;
  cursor:not-allowed;
}
@media(max-width:430px){
  .inventory-selection-panel{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr));
    align-items:stretch!important;
  }
  .inventory-selection-count{grid-column:1 / -1;}
  .inventory-selection-panel button{width:100%;min-height:40px;}
}


/* P36.6 runtime stabilization: selection actions must remain visible on all supported widths. */
.inventory-selection-panel[data-selection-toolbar="p36.6"]{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:8px!important;
  overflow:visible!important;
}
.inventory-selection-panel[data-selection-toolbar="p36.6"] .inventory-selection-count{
  grid-column:1 / -1!important;
}
.inventory-selection-panel[data-selection-toolbar="p36.6"] button{
  display:block!important;
  visibility:visible!important;
  width:100%!important;
  min-width:0!important;
  min-height:42px!important;
}
@media(min-width:700px){
  .inventory-selection-panel[data-selection-toolbar="p36.6"]{
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
  }
  .inventory-selection-panel[data-selection-toolbar="p36.6"] .inventory-selection-count{
    grid-column:1 / -1!important;
  }
}


/* P36.7 inventory detail + physical label export */
.inventory-detail-overview{display:flex;flex-direction:column;gap:14px;margin-bottom:18px;}
.inventory-detail-hero{display:grid;grid-template-columns:92px 1fr;gap:14px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:16px;background:var(--surface2);}
.inventory-detail-art .inventory-item-thumbnail{min-height:88px;height:88px;border-radius:12px;}
.inventory-detail-identity h3{margin:0 0 4px;font-size:16px;}
.inventory-detail-identity>div{color:var(--muted);font-size:12px;}
.inventory-detail-badges{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;}
.inventory-detail-badges span{border:1px solid var(--line);border-radius:999px;padding:4px 8px;font-size:10px;color:var(--text);background:var(--surface);}
.inventory-detail-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}
.inventory-detail-metrics>div{border:1px solid var(--line);border-radius:12px;padding:10px;background:var(--surface2);min-width:0;}
.inventory-detail-metrics span{display:block;color:var(--muted);font-size:10px;margin-bottom:4px;}
.inventory-detail-metrics strong{font-size:13px;overflow-wrap:anywhere;}
.inventory-detail-metrics strong.positive{color:var(--green);}.inventory-detail-metrics strong.negative{color:var(--red);}
.inventory-detail-section-title{font-weight:800;font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin:4px 0 8px;}
.inventory-detail-edit-title{margin-top:18px;padding-top:16px;border-top:1px solid var(--line);}
.inventory-detail-trade{display:flex;flex-direction:column;gap:6px;}
.inventory-purchase-list{display:flex;flex-direction:column;gap:8px;}
.inventory-purchase-record{border:1px solid var(--line);border-radius:12px;padding:10px;background:var(--surface2);}
.inventory-purchase-record-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;}
.inventory-purchase-record-head div{display:flex;flex-direction:column;gap:2px;}.inventory-purchase-record-head span{font-size:10px;color:var(--muted);}
.inventory-purchase-record-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 10px;margin-top:8px;font-size:10px;color:var(--muted);}
.inventory-purchase-record-grid b{color:var(--text);font-weight:700;}.inventory-purchase-notes{font-size:10px;color:var(--muted);margin-top:8px;}
.inventory-detail-empty{padding:12px;border:1px dashed var(--line);border-radius:12px;color:var(--muted);font-size:11px;}
.label-size-picker{margin:12px 0;padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--surface2);}
.label-size-title{font-weight:800;font-size:12px;margin-bottom:8px;}.label-size-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;}
.label-size-btn{border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:10px;padding:9px 6px;font:inherit;font-weight:700;font-size:11px;}
.label-size-btn.active{border-color:var(--holo1);color:var(--holo1);box-shadow:0 0 0 1px color-mix(in srgb,var(--holo1) 40%,transparent);}
.label-size-note{font-size:9px;color:var(--muted);margin-top:8px;line-height:1.35;}
.label-preview-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:6px;}.label-preview-heading span{font-size:10px;color:var(--muted);text-align:right;}
.print-label-sheet.individual-pages{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;background:var(--surface);padding:10px;border-radius:12px;max-height:52vh;overflow:auto;}
.print-label-sheet.individual-pages .print-label-unit{width:100%;height:auto;min-height:0;padding:10px;overflow:hidden;}
@media(max-width:520px){.inventory-detail-hero{grid-template-columns:76px 1fr}.inventory-detail-art .inventory-item-thumbnail{height:74px;min-height:74px}.inventory-detail-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.label-actions.three-actions{grid-template-columns:1fr}.print-label-sheet.individual-pages{grid-template-columns:1fr 1fr}.label-size-options{grid-template-columns:1fr 1fr}}

.physical-label-page{padding:0!important;background:#fff!important;display:flex!important;align-items:center;justify-content:center;overflow:hidden!important;}
.physical-label-image{display:block;width:100%;height:100%;object-fit:fill;}
@media print{
  body *{visibility:hidden!important;}
  #labelOverlay,#labelOverlay *{visibility:visible!important;}
  #labelOverlay{position:static!important;background:#fff!important;inset:auto!important;display:block!important;}
  #labelCardContent{box-shadow:none!important;border:0!important;padding:0!important;margin:0!important;max-width:none!important;width:auto!important;background:#fff!important;}
  #labelCardContent>*:not(#printLabelArea){display:none!important;}
  #printLabelArea{visibility:visible!important;position:static!important;}
  .physical-label-image{width:100%!important;height:100%!important;object-fit:fill!important;}
}
