/* ── GOBLINVAULT MAIN CSS ───────────────────────────────────────────────── */
:root {
  --bg:#0d0b09;--bg2:#161210;--bg3:#1e1815;--bg4:#271f18;--bg5:#301f10;
  --border:#2e2218;--border2:#4a3222;--border3:#6a4830;
  --gold:#b8822a;--gold2:#d4a040;--gold3:#e8c060;
  --red:#b03428;--red2:#d44030;
  --green:#268a52;--green2:#30b060;
  --blue:#2470a8;--blue2:#3090cc;
  --amber:#c07020;--amber2:#e09030;
  --unique:#c8902a;--set:#2a9a58;--magic:#6858c8;--rare:#c8a820;--rune:#c89818;
  --text:#ccc0a8;--text2:#968070;--text3:#605040;--white:#f0e8d8;
  --online:#30cc60;--away:#e09030;--offline:#505050;
  --font-body:'Inter',system-ui,sans-serif;
  --font-display:'Cinzel',serif;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:15px;line-height:1.5;min-height:100vh;overflow-x:hidden;}
body::before{content:'';position:fixed;inset:0;background:radial-gradient(ellipse at 15% 60%,rgba(160,40,0,0.05) 0%,transparent 55%),radial-gradient(ellipse at 85% 15%,rgba(200,140,40,0.04) 0%,transparent 50%);pointer-events:none;z-index:0;}
#app{position:relative;z-index:1;}
.hidden{display:none!important;}

/* ── NAV ── */
nav{border-bottom:1px solid var(--border2);position:sticky;top:0;background:rgba(13,11,9,0.97);backdrop-filter:blur(10px);z-index:100;}
.nav-inner{max-width:1280px;margin:0 auto;padding:0 16px;display:flex;align-items:center;justify-content:space-between;height:52px;gap:10px;flex-wrap:wrap;}
.logo{font-family:var(--font-display);font-size:18px;font-weight:900;color:var(--gold2);letter-spacing:3px;cursor:pointer;white-space:nowrap;display:flex;align-items:center;gap:0;}
.logo-tld{color:var(--gold);font-size:13px;letter-spacing:2px;margin-left:1px;}
.nav-links{display:flex;gap:5px;align-items:center;flex-wrap:wrap;}
.nav-btn{background:none;border:1px solid var(--border2);color:var(--text2);padding:5px 11px;cursor:pointer;font-family:var(--font-body);font-size:12px;font-weight:500;letter-spacing:0.5px;transition:all 0.15s;text-transform:uppercase;border-radius:2px;}
.nav-btn:hover,.nav-btn.active{border-color:var(--gold);color:var(--gold2);background:rgba(200,140,40,0.08);}
.post-btn{background:var(--gold)!important;color:#0d0b09!important;border-color:var(--gold2)!important;font-weight:600;}
.post-btn:hover{background:var(--gold2)!important;}
.wallet-badge{display:flex;align-items:center;gap:5px;padding:5px 10px;border:1px solid var(--border2);color:var(--gold3);font-size:12px;font-weight:600;cursor:pointer;border-radius:2px;transition:all 0.15s;}
.wallet-badge::before{content:'◈';opacity:0.7;}
.wallet-badge:hover{border-color:var(--gold);}
.user-pill{display:flex;align-items:center;gap:6px;padding:5px 10px;border:1px solid var(--border2);color:var(--text2);font-size:12px;cursor:pointer;border-radius:2px;transition:all 0.15s;}
.user-pill:hover{border-color:var(--gold);color:var(--gold2);}
.inbox-btn{position:relative;}
.inbox-dot{position:absolute;top:3px;right:3px;width:6px;height:6px;background:var(--red2);border-radius:50%;}

/* ── PAGE LAYOUT ── */
.page-wrap{max-width:1280px;margin:0 auto;padding:0 16px;}
.page{display:none;padding:24px 0;}
.page.active{display:block;}
.section-header{display:flex;align-items:baseline;gap:14px;margin-bottom:18px;flex-wrap:wrap;}
.section-title{font-family:var(--font-display);font-size:17px;color:var(--gold2);letter-spacing:2px;text-transform:uppercase;}
.section-sub{color:var(--text3);font-size:12px;}

/* ── FORMS & INPUTS ── */
.filters{display:flex;gap:10px;flex-wrap:wrap;padding:12px 14px;background:var(--bg2);border:1px solid var(--border);}
.filter-group{display:flex;flex-direction:column;gap:4px;}
.filter-label{font-size:10px;color:var(--text3);text-transform:uppercase;letter-spacing:1px;font-weight:600;}
select,input[type=text],input[type=number],input[type=password],input[type=email],textarea{background:var(--bg3);border:1px solid var(--border2);color:var(--text);padding:7px 10px;font-family:var(--font-body);font-size:13px;outline:none;border-radius:2px;width:100%;}
select:focus,input:focus,textarea:focus{border-color:var(--gold);}
select option{background:var(--bg3);}
textarea{resize:vertical;min-height:70px;}
label{font-size:10px;text-transform:uppercase;letter-spacing:0.8px;color:var(--text3);font-weight:600;display:block;margin-bottom:4px;}
.form-group{display:flex;flex-direction:column;margin-bottom:14px;}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.form-row.three{grid-template-columns:1fr 1fr 1fr;}
.form-row.four{grid-template-columns:1fr 1fr 1fr 1fr;}
.help-text{font-size:11px;color:var(--text3);margin-top:3px;}
.field-error{font-size:11px;color:var(--red2);margin-top:3px;}

/* ── BUTTONS ── */
.btn{padding:8px 16px;cursor:pointer;font-family:var(--font-body);font-size:12px;font-weight:600;letter-spacing:0.5px;text-transform:uppercase;transition:all 0.15s;border:none;border-radius:2px;display:inline-flex;align-items:center;gap:6px;}
.btn:disabled{opacity:0.4;cursor:not-allowed;}
.btn-gold{background:var(--gold);color:#0d0b09;}
.btn-gold:hover:not(:disabled){background:var(--gold2);}
.btn-green{background:var(--green);color:var(--white);}
.btn-green:hover:not(:disabled){background:var(--green2);}
.btn-outline{background:none;border:1px solid var(--border2);color:var(--text2);}
.btn-outline:hover:not(:disabled){border-color:var(--gold);color:var(--gold2);}
.btn-red{background:var(--red);color:var(--white);}
.btn-red:hover:not(:disabled){background:var(--red2);}
.btn-amber{background:var(--amber);color:var(--white);}
.btn-amber:hover:not(:disabled){background:var(--amber2);}
.btn-ghost{background:none;border:none;color:var(--text3);padding:4px 8px;}
.btn-ghost:hover{color:var(--gold2);}
.btn-sm{padding:4px 10px;font-size:11px;}
.btn-full{width:100%;justify-content:center;}
.btn-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap;}

/* ── TAGS / BADGES ── */
.tag{padding:4px 10px;border:1px solid var(--border2);font-size:11px;cursor:pointer;text-transform:uppercase;letter-spacing:0.5px;color:var(--text3);transition:all 0.12s;background:var(--bg3);font-weight:500;border-radius:2px;}
.tag:hover{border-color:var(--gold);color:var(--gold2);}
.tag.active{border-color:var(--gold);color:var(--gold2);background:rgba(200,140,40,0.1);}
.tag-row{display:flex;gap:5px;flex-wrap:wrap;}
.sort-btn{padding:4px 10px;border:1px solid var(--border2);font-size:11px;cursor:pointer;text-transform:uppercase;letter-spacing:0.5px;color:var(--text3);background:var(--bg3);font-weight:500;border-radius:2px;}
.sort-btn.active{color:var(--gold2);border-color:var(--gold);}
.lt-badge{display:inline-flex;align-items:center;font-size:10px;padding:2px 6px;border-radius:2px;text-transform:uppercase;letter-spacing:0.4px;font-weight:600;}
.lt-fixed{background:rgba(36,112,168,0.12);color:#60a8e0;border:1px solid rgba(36,112,168,0.2);}
.lt-auction{background:rgba(104,88,200,0.12);color:#9080e8;border:1px solid rgba(104,88,200,0.2);}
.lt-offers{background:rgba(38,138,82,0.1);color:#50c080;border:1px solid rgba(38,138,82,0.2);}
.mbadge{display:inline-block;font-size:9px;padding:1px 4px;border-radius:2px;margin-right:2px;font-weight:600;letter-spacing:0.3px;}
.mb-sc{background:rgba(38,138,82,0.15);color:#50c080;border:1px solid rgba(38,138,82,0.25);}
.mb-hc{background:rgba(176,52,40,0.15);color:#d86050;border:1px solid rgba(176,52,40,0.25);}
.mb-l{background:rgba(200,152,24,0.12);color:var(--gold);border:1px solid rgba(200,152,24,0.2);}
.mb-nl{background:rgba(70,70,70,0.2);color:var(--text3);border:1px solid var(--border);}
.mb-mode{background:rgba(70,70,70,0.15);color:var(--text3);border:1px solid var(--border);font-size:9px;padding:1px 5px;border-radius:2px;}
.q-label{font-size:10px;text-transform:uppercase;letter-spacing:0.3px;font-family:var(--font-display);font-weight:600;}
.q-unique{color:var(--unique);}
.q-set{color:var(--set);}
.q-magic{color:var(--magic);}
.q-rare{color:var(--rare);}
.q-rune{color:var(--rune);}
.ostatus{font-size:10px;padding:2px 6px;border-radius:2px;text-transform:uppercase;letter-spacing:0.4px;font-weight:600;}
.os-escrowed{background:rgba(184,130,42,0.1);color:var(--gold);border:1px solid rgba(184,130,42,0.3);}
.os-complete{background:rgba(38,138,82,0.1);color:var(--green2);border:1px solid rgba(38,138,82,0.3);}
.os-disputed{background:rgba(176,52,40,0.1);color:var(--red2);border:1px solid rgba(176,52,40,0.3);}
.os-handoff{background:rgba(36,112,168,0.1);color:var(--blue2);border:1px solid rgba(36,112,168,0.3);}
.os-pending{background:rgba(100,100,100,0.1);color:var(--text3);border:1px solid var(--border);}

/* ── PRESENCE ── */
.presence{width:7px;height:7px;border-radius:50%;flex-shrink:0;display:inline-block;}
.presence-online{background:var(--online);box-shadow:0 0 5px rgba(48,204,96,0.4);}
.presence-away{background:var(--away);}
.presence-offline{background:var(--offline);}

/* ── ITEM LIST ── */
.item-list{border:1px solid var(--border);border-radius:3px;overflow:hidden;}
.list-header{display:grid;padding:8px 14px;background:var(--bg3);border-bottom:1px solid var(--border2);font-size:10px;color:var(--text3);text-transform:uppercase;letter-spacing:0.8px;font-weight:600;gap:0;}
.lh-r{text-align:right;}
.lh-c{text-align:center;}
.row-wrap{border-bottom:1px solid var(--border);}
.row-wrap:last-child{border-bottom:none;}
.list-row{display:grid;padding:10px 14px;align-items:center;cursor:pointer;transition:background 0.1s;background:var(--bg2);gap:0;}
.list-row:hover,.list-row.open{background:var(--bg3);}
.row-name{font-family:var(--font-display);font-size:13px;color:var(--white);line-height:1.3;}
.row-subtype{font-size:11px;color:var(--text3);margin-top:1px;}
.row-price{font-family:var(--font-display);font-size:13px;color:var(--gold2);text-align:right;line-height:1.3;}
.price-sub{font-size:10px;color:var(--text3);font-family:var(--font-body);display:block;font-weight:400;}
.price-bn{font-size:11px;color:#50c080;display:block;}
.row-seller{text-align:right;}
.seller-name-cell{font-size:12px;color:var(--text2);display:flex;align-items:center;justify-content:flex-end;gap:5px;}
.seller-rep-cell{font-size:10px;color:var(--text3);display:block;text-align:right;margin-top:1px;}
.row-time{font-size:11px;color:var(--text3);text-align:center;}
.ending{color:var(--red2)!important;font-weight:600;}
.row-chevron{font-size:11px;color:var(--text3);text-align:center;transition:transform 0.2s;user-select:none;}
.row-chevron.open{transform:rotate(180deg);}

/* Market columns */
.market-grid{grid-template-columns:68px 1fr 140px 120px 115px 125px 58px 28px;}
/* Auction columns */
.auction-grid{grid-template-columns:68px 1fr 130px 85px 115px 115px 75px 28px;}

/* ── EXPAND PANEL ── */
.expand-panel{display:none;padding:0 14px 16px;background:var(--bg3);border-top:1px solid var(--border);}
.expand-panel.open{display:block;}
.expand-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px;padding-top:14px;}
.expand-stat-title{font-size:10px;text-transform:uppercase;letter-spacing:0.8px;color:var(--text3);margin-bottom:7px;font-weight:600;}
.expand-stat-line{display:flex;justify-content:space-between;font-size:13px;color:var(--text2);padding:4px 0;border-bottom:1px solid var(--border);}
.expand-stat-line:last-child{border-bottom:none;}
.stat-val{color:#68c890;}
.expand-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin-top:14px;padding-top:14px;border-top:1px solid var(--border);}
.offer-row{display:flex;gap:6px;align-items:center;}
.offer-row input{width:120px;}

/* ── SELLER CARD ── */
.seller-card{display:flex;align-items:center;gap:10px;padding:10px;background:var(--bg4);border:1px solid var(--border2);margin-bottom:10px;border-radius:2px;}
.seller-avatar{width:34px;height:34px;border-radius:50%;background:var(--bg3);border:1px solid var(--border2);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:13px;color:var(--gold2);flex-shrink:0;font-weight:600;}
.sc-name{font-size:13px;color:var(--white);font-weight:500;}
.sc-stats{font-size:11px;color:var(--text3);margin-top:1px;}
.sc-trust{font-size:11px;color:var(--gold);margin-top:1px;}
.sc-presence{display:flex;align-items:center;gap:5px;font-size:11px;margin-top:3px;}

/* ── AFFIX FILTER ── */
.affix-filter-bar{display:flex;gap:8px;flex-wrap:wrap;align-items:center;padding:9px 14px;background:var(--bg2);border:1px solid var(--border);border-top:none;margin-bottom:14px;}
.affix-chip{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;background:rgba(104,88,200,0.15);border:1px solid rgba(104,88,200,0.35);font-size:11px;color:#9080e8;border-radius:2px;}
.affix-chip .remove{cursor:pointer;color:var(--text3);font-size:13px;line-height:1;}
.affix-chip .remove:hover{color:var(--red2);}
.affix-add{display:flex;gap:6px;align-items:center;}
.affix-add select,.affix-add input{font-size:12px;padding:4px 8px;width:auto;}
.affix-add-btn{padding:4px 10px;font-size:11px;text-transform:uppercase;background:rgba(104,88,200,0.15);border:1px solid rgba(104,88,200,0.35);color:#9080e8;cursor:pointer;font-weight:500;border-radius:2px;}

/* ── BID HISTORY ── */
.bid-row{display:flex;justify-content:space-between;font-size:12px;padding:3px 0;border-bottom:1px solid var(--border);}
.bid-row:last-child{border-bottom:none;}
.bid-who{color:var(--text2);}
.bid-amt{color:var(--gold2);font-family:var(--font-display);font-size:12px;}
.bid-time{color:var(--text3);}

/* ── ISO ── */
.iso-list{border:1px solid var(--border);border-radius:3px;overflow:hidden;}
.iso-row{padding:11px 14px;border-bottom:1px solid var(--border);background:var(--bg2);display:grid;grid-template-columns:1fr 150px 130px 75px;gap:0;align-items:center;transition:background 0.1s;}
.iso-row:last-child{border-bottom:none;}
.iso-row:hover{background:var(--bg3);}
.iso-name{font-family:var(--font-display);font-size:13px;color:var(--white);}
.iso-stats{font-size:11px;color:var(--text3);margin-top:1px;}
.iso-budget{font-family:var(--font-display);font-size:13px;color:var(--gold2);text-align:right;}
.iso-buyer{font-size:11px;color:var(--text2);text-align:right;}
.iso-time{font-size:11px;color:var(--text3);text-align:right;}

/* ── INBOX ── */
.inbox-list{border:1px solid var(--border);border-radius:3px;overflow:hidden;margin-bottom:14px;}
.inbox-row{padding:11px 14px;border-bottom:1px solid var(--border);background:var(--bg2);cursor:pointer;transition:background 0.1s;display:flex;gap:11px;align-items:flex-start;}
.inbox-row:last-child{border-bottom:none;}
.inbox-row:hover{background:var(--bg3);}
.inbox-row.unread .inbox-subject{color:var(--white);font-weight:500;}
.inbox-avatar{width:34px;height:34px;border-radius:50%;background:var(--bg3);border:1px solid var(--border2);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:13px;color:var(--gold2);flex-shrink:0;font-weight:600;}
.inbox-body{flex:1;min-width:0;}
.inbox-subject{font-size:13px;color:var(--text2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.inbox-preview{font-size:11px;color:var(--text3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px;}
.inbox-meta{font-size:11px;color:var(--text3);text-align:right;flex-shrink:0;}
.unread-dot{width:7px;height:7px;background:var(--gold2);border-radius:50%;margin-top:4px;margin-left:auto;}

/* ── THREAD VIEW ── */
.thread-wrap{background:var(--bg2);border:1px solid var(--border);padding:14px;border-radius:2px;}
.thread-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:11px;}
.thread-title{font-family:var(--font-display);font-size:14px;color:var(--gold2);}

/* ── TRADE TICKET ── */
.trade-ticket{padding:12px;background:var(--bg4);border:1px solid var(--border2);margin:10px 0;border-radius:2px;}
.tt-title{font-family:var(--font-display);font-size:11px;color:var(--gold2);margin-bottom:9px;letter-spacing:1px;text-transform:uppercase;}
.tt-amount{font-family:var(--font-display);font-size:16px;color:var(--gold3);margin-bottom:10px;}
.tt-amount span{font-size:11px;color:var(--text3);}
.trade-steps{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:10px;}
.ts{font-size:10px;padding:3px 8px;border:1px solid var(--border);color:var(--text3);border-radius:2px;font-weight:500;text-transform:uppercase;letter-spacing:0.5px;}
.ts.done{border-color:var(--green);color:var(--green2);}
.ts.current{border-color:var(--gold);color:var(--gold2);}
.confirm-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px;}
.confirm-side{padding:10px;background:var(--bg3);border:1px solid var(--border);border-radius:2px;}
.confirm-side-title{font-size:10px;text-transform:uppercase;letter-spacing:0.8px;color:var(--text3);margin-bottom:6px;font-weight:600;}
.confirm-status{display:flex;align-items:center;gap:6px;font-size:12px;margin-bottom:8px;}
.confirm-tick{width:16px;height:16px;border-radius:50%;border:1px solid var(--border2);display:flex;align-items:center;justify-content:center;font-size:10px;flex-shrink:0;}
.confirm-tick.confirmed{background:var(--green);border-color:var(--green2);color:var(--white);}
.confirm-tick.waiting{background:var(--bg4);border-color:var(--border2);color:var(--text3);}
.escrow-note{font-size:11px;color:var(--text3);margin-top:8px;padding-top:8px;border-top:1px solid var(--border);}

/* ── MESSAGES ── */
.msg-thread{max-height:260px;overflow-y:auto;display:flex;flex-direction:column;gap:7px;padding:10px 0;}
.msg{padding:8px 11px;max-width:80%;font-size:13px;line-height:1.5;border-radius:3px;}
.msg.mine{background:rgba(184,130,42,0.1);border:1px solid rgba(184,130,42,0.2);align-self:flex-end;}
.msg.them{background:var(--bg3);border:1px solid var(--border);align-self:flex-start;color:var(--text2);}
.msg.system{background:rgba(70,70,70,0.15);border:1px solid var(--border);align-self:center;color:var(--text3);font-size:11px;text-align:center;max-width:100%;width:100%;}
.msg-who{font-size:10px;color:var(--text3);margin-bottom:2px;font-weight:600;}
.msg-input-row{display:flex;gap:7px;margin-top:9px;}
.msg-input-row input{flex:1;}

/* ── WALLET ── */
.wallet-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;margin-bottom:18px;}
.wallet-card{background:var(--bg2);border:1px solid var(--border);padding:18px;border-radius:2px;}
.wc-title{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:var(--text3);margin-bottom:5px;font-weight:600;}
.wc-amount{font-family:var(--font-display);font-size:26px;color:var(--gold2);}
.wc-amount span{font-size:12px;color:var(--text3);margin-left:4px;}
.wc-sub{font-size:11px;color:var(--text3);margin-top:3px;}
.hg-packages{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-bottom:14px;}
.hg-pkg{background:var(--bg2);border:1px solid var(--border);padding:14px;text-align:center;cursor:pointer;transition:all 0.15s;border-radius:2px;}
.hg-pkg:hover{border-color:var(--gold);}
.hg-pkg.popular{border-color:var(--gold);background:rgba(184,130,42,0.05);}
.hg-amount{font-family:var(--font-display);font-size:17px;color:var(--gold2);}
.hg-price{font-size:13px;color:var(--text2);margin-top:3px;}
.hg-bonus{font-size:11px;color:var(--green2);margin-top:2px;}
.hg-rate{font-size:10px;color:var(--text3);margin-top:3px;}

/* ── TABS ── */
.tabs{display:flex;border-bottom:1px solid var(--border);margin-bottom:18px;}
.tab{padding:8px 16px;cursor:pointer;font-size:12px;text-transform:uppercase;letter-spacing:0.5px;color:var(--text3);border-bottom:2px solid transparent;transition:all 0.15s;font-weight:500;}
.tab:hover{color:var(--text2);}
.tab.active{color:var(--gold2);border-bottom-color:var(--gold2);}

/* ── TX TABLE ── */
.tx-table{width:100%;border-collapse:collapse;}
.tx-table th{text-align:left;font-size:10px;text-transform:uppercase;letter-spacing:0.8px;color:var(--text3);padding:6px 0;border-bottom:1px solid var(--border);font-weight:600;}
.tx-table td{padding:8px 0;border-bottom:1px solid var(--border);font-size:13px;color:var(--text2);}
.tx-table tr:last-child td{border-bottom:none;}
.tx-in{color:var(--green2)!important;}
.tx-out{color:var(--red2)!important;}

/* ── POST FORM ── */
.post-form{max-width:700px;}
.post-card{background:var(--bg2);border:1px solid var(--border);padding:24px;border-radius:2px;margin-bottom:14px;}
.post-card-title{font-family:var(--font-display);font-size:13px;color:var(--gold2);letter-spacing:1px;text-transform:uppercase;margin-bottom:16px;padding-bottom:10px;border-bottom:1px solid var(--border);}
.listing-type-selector{display:flex;border:1px solid var(--border2);border-radius:2px;overflow:hidden;margin-bottom:16px;}
.lts-btn{flex:1;padding:9px;text-align:center;cursor:pointer;font-size:12px;text-transform:uppercase;letter-spacing:0.5px;color:var(--text3);background:var(--bg3);border:none;border-right:1px solid var(--border2);transition:all 0.12s;font-weight:500;}
.lts-btn:last-child{border-right:none;}
.lts-btn.active{background:rgba(184,130,42,0.15);color:var(--gold2);}
.auction-fields{padding:12px;background:var(--bg3);border:1px solid var(--border);border-radius:2px;margin-top:10px;}
.auction-fields.hidden{display:none;}
.stat-rows{display:flex;flex-direction:column;gap:6px;}
.stat-row-item{display:flex;gap:6px;align-items:center;}
.stat-row-item select{flex:1;}
.stat-row-item input{width:90px;}

/* ── OCR / UPLOAD ── */
.upload-zone{border:2px dashed var(--border2);padding:28px;text-align:center;cursor:pointer;transition:all 0.15s;color:var(--text3);border-radius:3px;position:relative;}
.upload-zone:hover,.upload-zone.dragover{border-color:var(--gold);color:var(--gold2);background:rgba(184,130,42,0.04);}
.upload-zone-icon{font-size:28px;display:block;margin-bottom:8px;}
.upload-zone-text{font-size:13px;margin-bottom:4px;}
.upload-zone-sub{font-size:11px;color:var(--text3);}
.ocr-spinner{display:none;position:absolute;inset:0;background:rgba(13,11,9,0.85);align-items:center;justify-content:center;flex-direction:column;gap:8px;border-radius:3px;}
.ocr-spinner.active{display:flex;}
.spinner{width:24px;height:24px;border:2px solid var(--border2);border-top-color:var(--gold2);border-radius:50%;animation:spin 0.8s linear infinite;}
@keyframes spin{to{transform:rotate(360deg);}}
.ocr-status{font-size:12px;color:var(--gold2);}
.ocr-result{margin-top:10px;padding:10px;background:var(--bg3);border:1px solid var(--border);border-radius:2px;font-size:12px;}
.ocr-field-highlight{animation:highlightPop 1s ease-out;}
@keyframes highlightPop{0%{background:rgba(184,130,42,0.3);}100%{background:transparent;}}
.ocr-flag{border-color:var(--amber)!important;background:rgba(192,112,32,0.08)!important;}
.img-preview{max-width:100%;max-height:180px;border:1px solid var(--border2);border-radius:2px;display:block;margin-top:8px;}

/* ── AUTH ── */
.auth-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;}
.auth-card{background:var(--bg2);border:1px solid var(--border);padding:36px;width:100%;max-width:400px;border-radius:3px;text-align:center;}
.auth-logo{font-family:var(--font-display);font-size:26px;color:var(--gold2);margin-bottom:4px;}
.auth-sub{color:var(--text3);font-size:11px;letter-spacing:2px;margin-bottom:28px;text-transform:uppercase;}
.auth-tabs{display:flex;border-bottom:1px solid var(--border);margin-bottom:20px;}
.auth-tab{flex:1;padding:8px;cursor:pointer;font-size:12px;text-transform:uppercase;letter-spacing:0.5px;color:var(--text3);border-bottom:2px solid transparent;transition:all 0.15s;font-weight:500;}
.auth-tab.active{color:var(--gold2);border-bottom-color:var(--gold2);}
.auth-form{display:flex;flex-direction:column;gap:12px;text-align:left;}
.auth-divider{text-align:center;color:var(--text3);font-size:12px;margin:4px 0;}
.auth-footer{margin-top:14px;font-size:13px;color:var(--text3);}
.username-preview{font-family:var(--font-display);font-size:18px;color:var(--gold2);text-align:center;margin:8px 0;}

/* ── PROFILE ── */
.profile-header{display:flex;gap:20px;align-items:flex-start;padding:20px;background:var(--bg2);border:1px solid var(--border);margin-bottom:18px;border-radius:2px;}
.profile-avatar-lg{width:64px;height:64px;border-radius:50%;background:var(--bg3);border:2px solid var(--gold);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:24px;color:var(--gold2);font-weight:600;flex-shrink:0;}
.profile-name{font-family:var(--font-display);font-size:20px;color:var(--gold2);}
.profile-tag{font-size:13px;color:var(--text3);margin-top:2px;}
.profile-rep{font-size:13px;color:var(--gold);margin-top:4px;}
.profile-stats{display:flex;gap:20px;margin-top:8px;flex-wrap:wrap;}
.profile-stat{font-size:12px;color:var(--text3);}
.profile-stat span{color:var(--text2);font-size:14px;display:block;}

/* ── MODALS ── */
.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.7);z-index:500;display:flex;align-items:center;justify-content:center;padding:20px;}
.modal{background:var(--bg2);border:1px solid var(--border2);padding:24px;width:100%;max-width:480px;border-radius:3px;position:relative;}
.modal-title{font-family:var(--font-display);font-size:15px;color:var(--gold2);margin-bottom:16px;letter-spacing:1px;}
.modal-close{position:absolute;top:12px;right:12px;background:none;border:none;color:var(--text3);font-size:18px;cursor:pointer;padding:4px;}
.modal-close:hover{color:var(--red2);}

/* ── EMPTY / LOADING ── */
.empty{text-align:center;padding:48px 20px;color:var(--text3);}
.empty-icon{font-size:36px;display:block;margin-bottom:10px;opacity:0.25;}
.loading-row{padding:12px 14px;display:flex;gap:12px;border-bottom:1px solid var(--border);}
.skel{background:var(--bg3);border-radius:2px;animation:skelPulse 1.4s ease-in-out infinite;}
@keyframes skelPulse{0%,100%{opacity:0.3;}50%{opacity:0.7;}}

/* ── TOAST ── */
.toast{position:fixed;bottom:22px;right:22px;z-index:999;background:var(--bg3);border:1px solid var(--gold);color:var(--gold2);padding:11px 16px;font-family:var(--font-display);font-size:11px;letter-spacing:1px;opacity:0;transform:translateY(6px);transition:all 0.2s;pointer-events:none;border-radius:2px;max-width:320px;}
.toast.show{opacity:1;transform:translateY(0);}
.toast.error{border-color:var(--red2);color:var(--red2);}
.toast.success{border-color:var(--green2);color:var(--green2);}

/* ── SCROLLBAR ── */
::-webkit-scrollbar{width:4px;}
::-webkit-scrollbar-track{background:var(--bg);}
::-webkit-scrollbar-thumb{background:var(--border2);border-radius:2px;}
::-webkit-scrollbar-thumb:hover{background:var(--gold);}

/* ── GAME SELECTOR ── */
.game-selector{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px;}
.game-tag{padding:5px 12px;border:1px solid var(--border2);font-size:11px;cursor:pointer;text-transform:uppercase;letter-spacing:0.5px;color:var(--text3);transition:all 0.12s;background:var(--bg3);font-weight:500;border-radius:2px;display:flex;align-items:center;gap:5px;}
.game-tag:hover{border-color:var(--gold);color:var(--gold2);}
.game-tag.active{border-color:var(--gold);color:var(--gold2);background:rgba(200,140,40,0.1);}

/* ── DIVIDER ── */
.divider{height:1px;background:var(--border);margin:16px 0;}
.section-divider{height:1px;background:var(--border2);margin:20px 0;}

/* ── RESPONSIVE ── */
@media(max-width:900px){
  .market-grid,.auction-grid{grid-template-columns:60px 1fr 110px 100px 55px 26px!important;}
  .col-mode,.col-lt,.col-seller{display:none!important;}
  .wallet-grid{grid-template-columns:1fr 1fr;}
  .hg-packages{grid-template-columns:1fr 1fr;}
  .expand-grid{grid-template-columns:1fr 1fr;}
  .confirm-grid{grid-template-columns:1fr;}
  .form-row{grid-template-columns:1fr!important;}
}
@media(max-width:600px){
  .market-grid,.auction-grid{grid-template-columns:1fr 95px 26px!important;}
  .col-quality,.col-time,.col-mode,.col-lt,.col-seller{display:none!important;}
  .wallet-grid{grid-template-columns:1fr;}
  .hg-packages{grid-template-columns:1fr 1fr;}
  .expand-grid{grid-template-columns:1fr;}
  .iso-row{grid-template-columns:1fr 110px 26px;}
  .nav-inner{height:auto;padding:8px 16px;}
}

/* ── LCG MONOSPACE ── */
.lcg-mono{font-family:'Roboto Mono',monospace;font-size:11px;letter-spacing:1px;font-weight:500;}
.lcg-amount{font-family:'Roboto Mono',monospace;font-weight:500;}

/* ── NAV SIGNOUT same size ── */
.nav-signout{font-size:12px!important;padding:5px 11px!important;}

/* ── WALLET BADGE updated ── */
.wallet-badge{display:flex;align-items:center;gap:5px;padding:5px 11px;border:1px solid var(--border2);color:var(--gold3);font-size:12px;font-weight:500;cursor:pointer;border-radius:2px;transition:all 0.15s;}
.wallet-badge:hover{border-color:var(--gold);}

/* ── PRICE INDICATOR ── */
.price-indicator{display:flex;align-items:center;gap:8px;margin-top:5px;font-size:11px;padding:5px 8px;border-radius:2px;}
.price-indicator.green{background:rgba(38,138,82,0.1);color:var(--green2);border:1px solid rgba(38,138,82,0.2);}
.price-indicator.amber{background:rgba(192,112,32,0.1);color:var(--amber2);border:1px solid rgba(192,112,32,0.2);}
.price-indicator.red{background:rgba(176,52,40,0.1);color:var(--red2);border:1px solid rgba(176,52,40,0.2);}

/* ── ANALYTICS ── */
.analytics-panel{background:var(--bg2);border:1px solid var(--border);padding:16px;border-radius:2px;margin-bottom:16px;}
.analytics-title{font-family:var(--font-display);font-size:12px;color:var(--gold2);letter-spacing:1px;text-transform:uppercase;margin-bottom:12px;}
.analytics-stat{display:flex;justify-content:space-between;font-size:12px;padding:5px 0;border-bottom:1px solid var(--border);color:var(--text2);}
.analytics-stat:last-child{border-bottom:none;}
.analytics-val{color:var(--gold2);font-family:'Roboto Mono',monospace;font-size:11px;}
.analytics-chart{display:flex;align-items:flex-end;gap:3px;height:40px;margin-top:10px;}
.chart-bar{flex:1;background:var(--border2);border-radius:1px;transition:background 0.15s;cursor:pointer;min-width:4px;}
.chart-bar:hover{background:var(--gold);}

/* ── MY LISTINGS PAGE ── */
.listings-table{width:100%;border-collapse:collapse;}
.listings-table th{text-align:left;font-size:10px;text-transform:uppercase;letter-spacing:0.8px;color:var(--text3);padding:7px 0;border-bottom:1px solid var(--border);font-weight:600;}
.listings-table td{padding:9px 0;border-bottom:1px solid var(--border);font-size:13px;color:var(--text2);}
.listings-table tr:last-child td{border-bottom:none;}
