@import url('https://fonts.googleapis.com/css2?family=Anton&family=Archivo:wght@400;500;600;700&family=Space+Mono:wght@400;700&display=swap');
:root{
  --album:#F2E9D8; --album-line:#D8C9A8; --ink:#1C2B1E;
  --pitch:#1F4A34; --pitch-dark:#153726;
  --gold:#C9962C; --gold-dark:#8E6A1B;
  --coral:#C1440E; --coral-dark:#7A2B08;
  --paper:#FBF6EA; --chip:#FFFFFF; --shadow:rgba(28,43,30,0.14);
}
*{box-sizing:border-box;}
body{margin:0;}
.app{background:var(--album);background-image:radial-gradient(circle at 1px 1px, var(--album-line) 1px, transparent 0);background-size:22px 22px;font-family:'Archivo',sans-serif;color:var(--ink);padding:24px 20px 40px;min-height:100vh;}
.wrap{max-width:640px;margin:0 auto;}
.masthead{text-align:center;margin-bottom:20px;}
.masthead .eyebrow{font-family:'Space Mono',monospace;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--pitch);opacity:.75;}
.masthead h1{font-family:'Anton',sans-serif;font-weight:400;font-size:32px;letter-spacing:.02em;margin:2px 0 4px;color:var(--pitch-dark);text-transform:uppercase;}
.masthead .sub{font-size:13px;color:var(--ink);opacity:.65;}

.hero-pitch{margin-bottom:18px;}
.hero-pitch>p{font-size:14px;line-height:1.55;text-align:center;max-width:520px;margin:0 auto 18px;opacity:.85;}
.hero-features{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;}
.hero-feature{background:var(--chip);border:1.5px solid var(--ink);border-radius:12px;box-shadow:3px 3px 0 var(--shadow);padding:14px 12px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;}
.hero-feature-icon{font-size:22px;line-height:1;}
.hero-feature strong{font-family:'Anton',sans-serif;font-weight:400;font-size:13px;text-transform:uppercase;letter-spacing:.02em;color:var(--pitch-dark);}
.hero-feature span{font-size:11.5px;line-height:1.4;opacity:.75;}
@media (max-width:560px){.hero-features{grid-template-columns:1fr;}}

.card{background:var(--chip);border:1.5px solid var(--ink);border-radius:12px;box-shadow:3px 3px 0 var(--shadow);padding:18px;margin-bottom:16px;}
.card h2{font-family:'Anton',sans-serif;font-weight:400;font-size:18px;text-transform:uppercase;margin:0 0 12px;color:var(--pitch-dark);}
.panel-sub{font-family:'Archivo',sans-serif;font-size:13px;opacity:.7;margin:-6px 0 4px;}
label{display:block;font-family:'Space Mono',monospace;font-size:11px;text-transform:uppercase;opacity:.65;margin:10px 0 4px;}
input[type="text"],input[type="email"],input[type="password"],input[type="number"],select,textarea{
  width:100%;font-family:'Archivo',sans-serif;font-size:14px;padding:9px 11px;border:1.5px solid var(--ink);border-radius:8px;background:var(--paper);color:var(--ink);
}
textarea{resize:vertical;min-height:70px;}
.row2{display:flex;gap:10px;}
.row2 > *{flex:1;}
button{font-family:'Anton',sans-serif;font-weight:400;font-size:14px;letter-spacing:.03em;text-transform:uppercase;border-radius:999px;padding:9px 20px;cursor:pointer;border:2px solid var(--gold-dark);background:var(--gold);color:#3A2A05;}
button:hover{background:#D9A939;}
button.ghost{background:transparent;border:1.5px solid var(--ink);color:var(--ink);font-family:'Space Mono',monospace;font-size:11px;text-transform:uppercase;letter-spacing:.04em;padding:7px 14px;}
button:disabled{opacity:.4;cursor:not-allowed;}
.error{color:var(--coral-dark);font-family:'Space Mono',monospace;font-size:12px;margin-top:8px;}

.topbar{display:flex;align-items:center;gap:10px;margin-bottom:16px;font-family:'Space Mono',monospace;font-size:12px;}
.topbar .who{opacity:.75;flex:1;}

.google-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;background:#fff;color:#3c4043;border:1.5px solid var(--ink);font-family:'Archivo',sans-serif;font-weight:600;font-size:13.5px;text-transform:none;letter-spacing:0;padding:10px 16px;}
.google-btn:hover{background:#f7f7f7;}

.account-menu{position:relative;flex-shrink:0;}
.account-menu-btn{width:36px;height:36px;padding:0;border-radius:50%;border:none;background:none;display:block;}
.account-menu-btn .avatar{width:100%;height:100%;}
.account-menu-btn:hover .avatar{filter:brightness(1.1);}
.account-menu-dropdown{position:absolute;top:44px;right:0;z-index:30;background:var(--paper);border:1.5px solid var(--ink);border-radius:12px;box-shadow:3px 3px 0 var(--shadow);padding:8px;display:flex;flex-direction:column;gap:6px;min-width:170px;}
.account-menu-dropdown.hidden{display:none;}
.account-menu-dropdown button{width:100%;text-align:center;}
.auth-divider{display:flex;align-items:center;gap:10px;margin:14px 0;font-family:'Space Mono',monospace;font-size:10px;text-transform:uppercase;opacity:.5;}
.auth-divider::before,.auth-divider::after{content:"";flex:1;height:1px;background:var(--album-line);}

.terms-agree{margin-top:14px;}
.checkbox-label{display:flex;align-items:flex-start;gap:8px;font-family:'Archivo',sans-serif;font-size:13px;color:var(--ink);text-transform:none;cursor:pointer;}
.checkbox-label input[type="checkbox"]{width:auto;margin-top:2px;flex-shrink:0;}
.link-btn{background:none;border:none;padding:0;margin:0;font-family:inherit;font-size:inherit;font-weight:700;text-transform:none;letter-spacing:0;color:var(--pitch-dark);text-decoration:underline;cursor:pointer;}
.terms-modal{max-width:600px;}
.terms-body h3{font-family:'Anton',sans-serif;font-weight:400;font-size:14px;text-transform:uppercase;margin:16px 0 4px;color:var(--pitch-dark);}
.terms-body h3:first-child{margin-top:0;}
.terms-body p{font-family:'Archivo',sans-serif;font-size:13px;line-height:1.55;margin:0;opacity:.85;}

.region-head{font-family:'Anton',sans-serif;font-weight:400;font-size:13px;text-transform:uppercase;color:var(--pitch-dark);margin-top:16px;display:flex;flex-direction:column;gap:2px;}
.region-head .hint{font-family:'Archivo',sans-serif;font-size:11px;opacity:.65;text-transform:none;letter-spacing:0;}

.profile-modal{max-width:460px;}

.guidelines-modal{max-width:620px;}
.guidelines-list{list-style:none;counter-reset:guideline;margin:0;padding:0;}
.guidelines-list li{counter-increment:guideline;display:flex;gap:14px;padding:14px 0;border-bottom:1px solid var(--album-line);}
.guidelines-list li:last-child{border-bottom:none;}
.guidelines-list li::before{content:counter(guideline);flex-shrink:0;width:26px;height:26px;border-radius:50%;background:var(--pitch);color:#fff;font-family:'Anton',sans-serif;font-size:13px;display:flex;align-items:center;justify-content:center;}
.guidelines-list h3{font-family:'Anton',sans-serif;font-weight:400;font-size:14.5px;text-transform:uppercase;margin:0 0 4px;color:var(--pitch-dark);}
.guidelines-list p{font-family:'Archivo',sans-serif;font-size:13px;line-height:1.5;margin:0;opacity:.85;}

.tabs{display:flex;gap:0;margin-bottom:16px;border:2px solid var(--pitch-dark);border-radius:999px;overflow:hidden;background:var(--paper);}
.tabs button{position:relative;flex:1;border:none;border-radius:0;background:transparent;color:var(--pitch-dark);}
.tabs button.active{background:var(--pitch);color:#fff;}

.envelope-badge{position:absolute;top:2px;right:10px;display:flex;align-items:center;gap:2px;background:#D93636;color:#fff;border-radius:999px;padding:1px 6px;font-family:'Space Mono',monospace;font-size:10px;font-weight:700;line-height:1.5;border:1.5px solid var(--paper);}

/* Stacks the countdown timer and unread-message envelope in the top-right
   corner of an offer card without them overlapping each other. */
.offer-topright{position:absolute;top:14px;right:16px;display:flex;flex-direction:column;align-items:flex-end;gap:4px;}
.offer-topright .envelope-badge{position:static;}

.subtabs{display:flex;gap:0;margin:10px 0 14px;border:1.5px solid var(--pitch-dark);border-radius:999px;overflow:hidden;background:var(--paper);}
.subtabs button{flex:1;border:none;border-radius:0;background:transparent;color:var(--pitch-dark);font-size:12px;padding:7px 14px;}
.subtabs button.active{background:var(--pitch);color:#fff;}

.list{display:flex;flex-direction:column;gap:10px;}
.row-head{display:flex;align-items:center;gap:10px;margin-bottom:6px;}
.team-name{font-family:'Anton',sans-serif;font-size:15px;text-transform:uppercase;color:var(--pitch-dark);}

.chevron{display:inline-block;font-size:9px;color:var(--pitch-dark);transition:transform .15s ease;transform:rotate(0deg);}
.card.collapsed .chevron{transform:rotate(-90deg);}
.card.collapsed .row-head{margin-bottom:0;}
.card.collapsed .trade-stacks{display:none;}
.trade-chips-collapsed{display:none;}
.card.collapsed .trade-chips-collapsed{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;}
.card:not(.collapsed) .trade-chips-collapsed{display:none;}

.list-section-head{margin:4px 2px 10px;}
.list-section-head h2{font-family:'Anton',sans-serif;font-weight:400;font-size:16px;text-transform:uppercase;margin:0 0 8px;color:var(--pitch-dark);}
.list-section-head input[type="text"]{margin:0;}
#trader-detail-search{margin:10px 0 14px;}

.card.clickable{cursor:pointer;}
.flag{font-size:20px;}
.chips{display:flex;flex-wrap:wrap;gap:6px;}
.chip{font-family:'Space Mono',monospace;font-size:13px;font-weight:700;padding:4px 9px;border-radius:6px;border:1.5px dashed var(--pitch);color:var(--pitch-dark);background:#EFF6EE;display:inline-flex;align-items:center;gap:5px;}
.chip .qty{background:var(--gold);color:#3A2A05;border-radius:999px;font-size:10px;padding:0 5px;}
.variant-tag{font-family:'Space Mono',monospace;font-size:9px;text-transform:uppercase;letter-spacing:.03em;opacity:.75;border:1px solid var(--ink);border-radius:999px;padding:0 5px;margin-left:2px;}

.trade-stacks{display:flex;flex-wrap:wrap;gap:14px 16px;}
.trade-stack{position:relative;flex:none;}
.trade-card{position:absolute;top:0;left:0;width:64px;height:82px;border:2px solid var(--ink);border-radius:10px;box-shadow:2px 2px 0 var(--shadow);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:6px;}
.trade-card.back{box-shadow:none;border:none;}
.trade-card-number{font-family:'Anton',sans-serif;font-size:16px;color:var(--ink);}
.trade-card-variant{font-family:'Space Mono',monospace;font-size:8px;font-weight:700;text-transform:uppercase;background:rgba(255,255,255,.65);border:1px solid var(--ink);border-radius:999px;padding:1px 6px;}
.trade-card-qty{position:absolute;top:4px;left:4px;font-family:'Space Mono',monospace;font-size:9px;font-weight:700;background:var(--gold);color:#3A2A05;border-radius:999px;padding:1px 5px;}
.trade-card-x{position:absolute;top:2px;right:4px;background:none;border:none;font-family:'Archivo',sans-serif;font-weight:700;font-size:13px;color:var(--coral-dark);cursor:pointer;padding:0;line-height:1;}
.trade-stack.viewable{cursor:pointer;}
.qty-stepper.view-only{justify-content:center;}

.hint{font-family:'Archivo',sans-serif;text-transform:none;font-size:11px;opacity:.7;letter-spacing:0;}

.number-grid{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px;}
.num-card-big{position:relative;width:52px;height:68px;display:flex;align-items:center;justify-content:center;border:2px solid var(--ink);border-radius:10px;background:var(--paper);box-shadow:3px 3px 0 var(--shadow);font-family:'Anton',sans-serif;font-size:22px;color:var(--pitch-dark);cursor:pointer;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;transition:transform .12s,box-shadow .12s,background .12s;}
.num-card-big:hover{background:#EFF6EE;}
.num-card-big.pressing{transform:scale(.93);background:var(--gold);box-shadow:1px 1px 0 var(--shadow);}
.num-card-big.selected{background:var(--coral);border-color:var(--coral-dark);color:#fff;}
.num-card-big.has-some::after{content:"";position:absolute;top:6px;right:6px;width:8px;height:8px;border-radius:999px;background:var(--gold);border:1.5px solid var(--paper);}

#add-trade-number-grid .num-card-big.has-some{background:var(--pitch);border-color:var(--pitch-dark);color:#fff;}
#add-trade-number-grid .num-card-big.has-some:hover{background:var(--pitch-dark);}
#add-trade-number-grid .num-card-big.has-some::after{content:none;}
#add-trade-number-grid .num-card-big.has-some.selected{background:var(--coral);border-color:var(--coral-dark);}

.card-detail-modal{max-width:700px;}
.card-detail-modal .modal-head{position:relative;justify-content:center;text-align:center;padding:20px 48px 16px;}
.card-detail-modal .modal-close{position:absolute;right:16px;top:16px;}
.card-detail-heading{display:flex;flex-direction:column;align-items:center;gap:4px;}
.card-detail-eyebrow{font-family:'Space Mono',monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;opacity:.6;color:var(--pitch-dark);}
.card-detail-modal .modal-head h2{display:flex;align-items:center;gap:10px;font-size:24px;}
.card-detail-flag{font-size:28px;line-height:1;}
.card-detail-number{font-family:'Space Mono',monospace;background:var(--pitch);color:#fff;border-radius:999px;padding:2px 12px;font-size:16px;}
.card-detail-body{flex-direction:column;padding:20px 24px;overflow-y:auto;}
.card-detail-body .expand-head{font-family:'Space Mono',monospace;font-size:11px;text-transform:uppercase;letter-spacing:.04em;opacity:.7;margin-bottom:14px;text-align:center;}

.variant-card-row{display:flex;gap:16px;flex-wrap:wrap;justify-content:center;}
.variant-col{display:flex;flex-direction:column;align-items:center;gap:10px;}
.qty-stepper{display:flex;align-items:center;gap:8px;}
.qty-btn{width:28px;height:28px;flex:none;padding:0;border-radius:999px;border:2px solid var(--ink);background:var(--paper);color:var(--ink);font-family:'Anton',sans-serif;font-size:16px;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;}
.qty-btn:hover{background:var(--gold);border-color:var(--gold-dark);}
.qty-value{min-width:20px;text-align:center;font-family:'Space Mono',monospace;font-weight:700;font-size:16px;color:var(--pitch-dark);}
.variant-card{width:156px;min-height:300px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;border:2.5px solid var(--ink);border-radius:16px;box-shadow:5px 5px 0 var(--shadow);padding:18px 12px;}
.variant-card-label{font-family:'Space Mono',monospace;font-size:13px;font-weight:700;text-transform:uppercase;text-align:center;line-height:1.3;}
.variant-card-rarity{font-family:'Archivo',sans-serif;font-size:11px;font-weight:700;text-align:center;line-height:1.35;margin-top:auto;padding:6px 9px;border-radius:8px;background:rgba(0,0,0,.35);color:#fff;}
.variant-card-check{display:block;width:32px;height:32px;}

.variant-card.expand-toggle{cursor:pointer;user-select:none;justify-content:center;transition:transform .1s,box-shadow .1s;}
.variant-card.expand-toggle .variant-card-check::before{content:"";display:block;width:32px;height:32px;border-radius:999px;border:2.5px solid var(--ink);background:rgba(255,255,255,.6);}
.variant-card.expand-toggle.selected{transform:translate(-2px,-2px);box-shadow:8px 8px 0 var(--shadow);}
.variant-card.expand-toggle.selected .variant-card-check::before{background:var(--pitch);border-color:var(--pitch-dark);content:"✓";color:#fff;display:flex;align-items:center;justify-content:center;font-size:20px;line-height:26px;}
.variant-card.expand-toggle.disabled{opacity:.55;cursor:default;}
.chip button.x{background:none;border:none;font-family:'Archivo',sans-serif;font-weight:700;font-size:12px;color:var(--coral-dark);cursor:pointer;padding:0;}

.browse-filters{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;}
.browse-filters label{margin-top:0;}
.browse-filters select{margin:0;}
.trader-flag{margin-left:2px;}
@media (max-width:640px){.browse-filters{grid-template-columns:repeat(2,1fr);}}

.browse-table-wrap{border:1.5px solid var(--ink);border-radius:12px;box-shadow:3px 3px 0 var(--shadow);background:var(--chip);overflow-x:auto;overflow-y:hidden;}
.browse-table{width:100%;border-collapse:collapse;min-width:560px;}
.browse-table thead th{position:sticky;top:0;background:var(--pitch);color:#fff;font-family:'Space Mono',monospace;font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;text-align:left;padding:10px 12px;white-space:nowrap;}
.browse-table tbody td{padding:9px 12px;border-bottom:1px solid var(--album-line);font-family:'Archivo',sans-serif;font-size:13px;color:var(--ink);vertical-align:middle;white-space:nowrap;}
.browse-table tbody tr:last-child td{border-bottom:none;}
.browse-table tbody tr:nth-child(even){background:#F6F1E4;}
.browse-table tbody tr.row-clickable{cursor:pointer;}
.browse-table tbody tr.row-clickable:hover{background:#DCEEDB;}
.browse-table tbody tr.row-clickable:hover .col-trader{text-decoration:underline;}
.browse-table .col-team{display:flex;align-items:center;gap:8px;font-family:'Anton',sans-serif;text-transform:uppercase;font-size:13px;color:var(--pitch-dark);}
.browse-table .col-number{font-family:'Space Mono',monospace;font-weight:700;}
.browse-table .col-type .variant-tag{margin-left:0;}
.browse-table .col-qty{font-family:'Space Mono',monospace;font-weight:700;color:var(--pitch-dark);}
.browse-table .col-trader{font-family:'Anton',sans-serif;text-transform:uppercase;font-size:12.5px;color:var(--pitch-dark);}
.hidden{display:none;}

.trader-row{display:flex;align-items:center;gap:8px;justify-content:flex-start;padding:10px 0;border-bottom:1px solid var(--album-line);}
.trader-row .name{font-family:'Anton',sans-serif;text-transform:uppercase;font-size:14px;color:var(--pitch-dark);}
.trader-row .name.clickable{cursor:pointer;}
.trader-row .name.clickable:hover{text-decoration:underline;}
.trader-row .meta{font-family:'Space Mono',monospace;font-size:11px;opacity:.6;flex:1;}
.trader-row button{margin-left:auto;}

.status-dot{display:inline-block;width:9px;height:9px;border-radius:50%;flex-shrink:0;}
.status-dot.online{background:#4E9E5C;box-shadow:0 0 0 3px rgba(78,158,92,.25);}
.status-dot.offline{background:#B7B0A2;}

.avatar-wrap{position:relative;display:inline-flex;width:38px;height:38px;flex-shrink:0;}
.avatar{width:100%;height:100%;border-radius:50%;background:var(--pitch);color:#fff;display:flex;align-items:center;justify-content:center;font-family:'Anton',sans-serif;font-size:14px;letter-spacing:.5px;border:1.5px solid var(--ink);}
.avatar-wrap .status-dot{position:absolute;top:-1px;right:-1px;width:11px;height:11px;border:2px solid var(--paper);}
.avatar-flag{position:absolute;bottom:-3px;left:-3px;font-size:13px;line-height:1;background:var(--paper);border:1.5px solid var(--ink);border-radius:50%;width:18px;height:18px;display:flex;align-items:center;justify-content:center;}
#trader-list .avatar-wrap{width:34px;height:34px;}
#trader-list .avatar-flag{width:16px;height:16px;font-size:11px;}
#trader-list .avatar{font-size:13px;}
#trader-detail-name{display:flex;align-items:center;gap:8px;}
.trader-detail-status{font-family:'Space Mono',monospace;font-size:11px;text-transform:none;opacity:.6;margin-left:2px;}

.offer-card{position:relative;border:1.5px solid var(--ink);border-radius:12px;background:var(--chip);box-shadow:3px 3px 0 var(--shadow);padding:14px 130px 14px 16px;margin-bottom:12px;}
.offer-card .status{display:inline-block;font-family:'Space Mono',monospace;font-size:10px;text-transform:uppercase;padding:2px 8px;border-radius:999px;margin-bottom:8px;}
.status-pending{background:var(--gold);color:#3A2A05;}
.status-accepted{background:#97C459;color:#173404;}
.status-rejected{background:#F09595;color:#501313;}
.status-countered{background:#85B7EB;color:#042C53;}
.status-expired{background:#D93636;color:#fff;}
.status-cancelled{background:#D8D2C4;color:#5A5546;}

.offer-timer{display:flex;flex-direction:column;align-items:flex-end;gap:2px;}
.offer-timer-label{font-family:'Space Mono',monospace;font-size:10px;text-transform:uppercase;opacity:.55;}
.offer-timer-value{font-family:'Anton',sans-serif;font-weight:400;font-size:40px;line-height:1;letter-spacing:.5px;color:var(--pitch-dark);font-variant-numeric:tabular-nums;}
.offer-timer.expiring .offer-timer-value{color:#C23B3B;}
.offer-side{margin:6px 0;}
.offer-side .label{font-family:'Space Mono',monospace;font-size:10px;text-transform:uppercase;opacity:.6;margin-bottom:4px;}
.offer-actions{display:flex;gap:8px;margin-top:10px;}
.offer-actions button{padding:6px 14px;font-size:12px;}

.thread-toggle{margin-top:10px;padding:5px 12px;font-size:11px;}
.message-thread{margin-top:10px;border-top:1px solid var(--album-line);padding-top:10px;}
.message-list{display:flex;flex-direction:column;gap:6px;max-height:180px;overflow-y:auto;margin-bottom:8px;padding-right:2px;}
.message-bubble{font-family:'Archivo',sans-serif;font-size:12.5px;line-height:1.4;padding:6px 10px;border-radius:10px;max-width:80%;word-break:break-word;}
.message-bubble.from-me{align-self:flex-end;background:var(--pitch);color:#fff;border-bottom-right-radius:2px;}
.message-bubble.from-them{align-self:flex-start;background:var(--album);border:1px solid var(--album-line);border-bottom-left-radius:2px;}
.message-compose{display:flex;gap:6px;}
.message-compose input{flex:1;padding:7px 10px;font-size:12.5px;border:1.5px solid var(--ink);border-radius:8px;font-family:'Archivo',sans-serif;}
.message-compose button{padding:6px 14px;font-size:12px;}

.overlay{position:fixed;inset:0;background:rgba(28,43,30,0.55);display:none;align-items:center;justify-content:center;padding:20px;z-index:50;}
.overlay.open{display:flex;}
.modal{background:var(--paper);border:2px solid var(--ink);border-radius:16px;max-width:760px;width:100%;max-height:88vh;display:flex;flex-direction:column;overflow:hidden;}
.modal-head{display:flex;align-items:center;justify-content:space-between;padding:16px 20px 12px;border-bottom:1.5px solid var(--album-line);}
.modal-head h2{font-family:'Anton',sans-serif;font-weight:400;font-size:19px;text-transform:uppercase;margin:0;color:var(--pitch-dark);}
.modal-close{font-family:'Archivo',sans-serif;font-size:20px;background:none;border:none;cursor:pointer;color:var(--ink);opacity:.6;}
.modal-body{display:flex;overflow:hidden;flex:1;}
.modal-col{flex:1;display:flex;flex-direction:column;min-width:0;padding:14px 16px;overflow-y:auto;}
.modal-col + .modal-col{border-left:1.5px solid var(--album-line);}
.modal-col h3{font-family:'Space Mono',monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase;margin:0 0 8px;opacity:.7;}
.mchip{font-family:'Space Mono',monospace;font-size:12px;font-weight:700;padding:3px 8px;border-radius:6px;border:1.5px dashed var(--pitch);cursor:pointer;user-select:none;display:inline-block;margin:0 5px 5px 0;transition:box-shadow .1s;}
/* Background/text color come from the variant color as an inline style now,
   so "selected" is shown as a solid gold ring rather than a background
   swap (which would otherwise hide the card's color). */
.mchip.selected{border-color:var(--gold-dark);box-shadow:0 0 0 3px var(--gold);}
.modal-foot{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;border-top:1.5px solid var(--album-line);gap:12px;flex-wrap:wrap;}

.info-modal{max-width:380px;}
.info-modal .modal-body{display:block;}
.info-modal .modal-foot{border-top:none;padding-top:4px;}
.info-message{font-family:'Archivo',sans-serif;font-size:14.5px;line-height:1.5;color:var(--pitch-dark);text-align:center;margin:0;}
.money-input{display:flex;align-items:center;gap:6px;}
.money-input input{width:90px;}
