.economy-entry { width: 100%; min-height: 42px; margin-top: 8px; padding: 9px 10px; border: 1px solid #b48743; border-radius: 11px; background: #f7e6ae; color: #674822; font: 700 12px 'Trebuchet MS', sans-serif; cursor: pointer; }
.processor-entry { background: #dfe9c2; border-color: #81975b; color: #40582f; }
.marketplace-entry { background: #ffe7aa; }
.economy-entry:disabled { opacity: .55; cursor: not-allowed; }
.economy-dialog { width: min(680px, calc(100% - 28px)); max-width: none; max-height: calc(100dvh - 32px - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px)); margin: auto; padding: 0; overflow: auto; overscroll-behavior: contain; border: 2px solid #9c7b43; border-radius: 20px; background: #faf7e9; color: #433c28; box-shadow: 0 18px 60px #203a2855; font-family: 'Trebuchet MS', -apple-system, sans-serif; }
.economy-dialog::backdrop { background: #1f332a9e; }
.marketplace-dialog { width: min(820px, calc(100% - 28px)); }
.economy-dialog-header { position: sticky; top: 0; z-index: 4; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 18px 22px 14px; background: #eef0d4; border-bottom: 1px solid #d4d8b7; }
.economy-dialog-header h2 { margin: 4px 0 0; color: #39562f; font-size: 23px; }
.economy-eyebrow { color: #74804d; font-size: 10px; font-weight: 800; letter-spacing: 1.4px; }
.economy-close { flex: 0 0 44px; width: 44px; height: 44px; border: 1px solid #bac79f; border-radius: 12px; background: #fffef2; color: #456037; font-size: 28px; cursor: pointer; }
.economy-intro { display: flex; justify-content: space-between; align-items: center; gap: 18px; padding: 16px 22px 10px; }
.economy-intro p { margin: 0; max-width: 520px; color: #6f674f; font-size: 14px; line-height: 1.5; }
.protection-chip,.market-wallet { flex: 0 0 auto; padding: 8px 10px; border: 1px solid #d3ba72; border-radius: 10px; background: #ffedb8; color: #75501e; font-size: 12px; }
.protection-chip b,.market-wallet b { font-size: 16px; font-variant-numeric: tabular-nums; }
.economy-rule { margin: 0 22px 14px; padding: 10px 12px; border-left: 4px solid #7b9b57; background: #eef2da; color: #596348; font-size: 13px; line-height: 1.5; }
.economy-controls { min-width: 0; margin: 0; padding: 0 22px 18px; border: 0; }
.economy-card-list,.market-list { display: grid; gap: 10px; }
.processor-card,.market-card { display: grid; grid-template-columns: 48px minmax(0,1fr) auto; align-items: center; gap: 12px; padding: 13px; border: 1px solid #ddd4b2; border-radius: 14px; background: #fffdf3; }
.economy-crop-icon { width: 48px; height: 48px; display: grid; place-items: center; border-radius: 13px; background: #e9efd1; font-size: 29px; }
.economy-card-copy h3,.market-card h3 { margin: 0 0 4px; color: #40572f; font-size: 16px; }
.economy-card-copy p,.market-card p { margin: 0; color: #73684d; font-size: 13px; line-height: 1.4; }
.processor-actions,.market-buy-actions { display: flex; align-items: end; gap: 8px; }
.processor-actions label,.market-buy-actions label,.market-create-form label { color: #76694e; font-size: 12px; }
.processor-actions input,.market-buy-actions input,.market-create-form input,.market-create-form select { display: block; width: 96px; min-height: 44px; margin-top: 4px; padding: 8px 9px; border: 1px solid #c9c19e; border-radius: 9px; background: #fff; color: #3e4f31; font-size: 16px; }
.processor-actions button,.market-buy-actions button,.market-create-form button,.market-cancel { min-height: 44px; padding: 9px 13px; border: 1px solid #4d6c38; border-radius: 9px; background: #587a40; color: #fff; font: 700 13px 'Trebuchet MS',sans-serif; cursor: pointer; }
.economy-empty { margin: 4px 22px 18px; padding: 18px; border: 1px dashed #bbc69c; border-radius: 13px; background: #f0f3dc; color: #65724d; text-align: center; font-size: 14px; }
.economy-message { min-height: 20px; margin: 0 22px 18px; color: #416532; font-size: 13px; line-height: 1.5; }
.economy-tabs { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; margin: 4px 22px 16px; padding: 4px; border-radius: 12px; background: #e5e8d0; }
.economy-tabs button { min-height: 44px; border: 0; border-radius: 9px; background: transparent; color: #5d6748; font: 700 14px 'Trebuchet MS',sans-serif; cursor: pointer; }
.economy-tabs button[aria-pressed='true'] { background: #fffef5; color: #36512c; box-shadow: 0 2px 4px #3c542914; }
.market-create-form { display: grid; grid-template-columns: minmax(150px,1.2fr) 110px 150px auto; align-items: end; gap: 10px; padding: 14px; border: 1px solid #d9d2ae; border-radius: 14px; background: #f5f2df; }
.market-create-form input,.market-create-form select { width: 100%; }
.market-create-form button { background: #af7226; border-color: #9e641e; }
.my-listings-title { margin: 20px 0 10px; color: #52633d; font-size: 15px; }
.market-card { grid-template-columns: 48px minmax(0,1fr) minmax(150px,auto); }
.market-card-meta { display: flex; flex-wrap: wrap; gap: 6px 12px; margin-top: 5px; color: #897a5b; font-size: 12px; }
.market-price { color: #885817; font-weight: 800; }
.market-cancel { background: #fff5df; border-color: #c79a59; color: #86591d; }
.economy-dialog button:disabled,.economy-dialog input:disabled,.economy-dialog select:disabled { opacity: .55; cursor: not-allowed; }
body.economy-modal-open { overflow: hidden; }

@media (max-width: 680px) {
  .economy-dialog,.marketplace-dialog { width: calc(100% - 16px); max-height: calc(100dvh - 16px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px)); }
  .economy-dialog-header { padding: 15px 16px 12px; }
  .economy-dialog-header h2 { font-size: 20px; }
  .economy-intro { align-items: flex-start; padding: 14px 16px 10px; }
  .economy-rule { margin-left: 16px; margin-right: 16px; }
  .economy-controls { padding-left: 16px; padding-right: 16px; }
  .processor-card,.market-card { grid-template-columns: 44px minmax(0,1fr); }
  .processor-actions,.market-buy-actions,.market-cancel { grid-column: 1 / -1; }
  .processor-actions,.market-buy-actions { display: grid; grid-template-columns: minmax(0,1fr) minmax(130px,1fr); }
  .processor-actions input,.market-buy-actions input { width: 100%; }
  .market-create-form { grid-template-columns: 1fr 1fr; }
  .market-create-form label:first-child,.market-create-form button { grid-column: 1 / -1; }
  .economy-tabs { margin-left: 16px; margin-right: 16px; }
}
