*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:#0f1115;color:#e6e6e6}.app{max-width:1100px;margin:0 auto;padding:24px}h1{margin-bottom:4px}.subtitle{color:#9aa0a6;margin-bottom:24px}.card{background:#1a1d24;border:1px solid #2a2f3a;border-radius:12px;padding:20px;margin-bottom:20px}input,button{font:inherit;padding:10px 14px;border-radius:8px;border:1px solid #2a2f3a;background:#0f1115;color:#e6e6e6}input{width:100%}button{background:#3b82f6;border-color:#3b82f6;color:#fff;cursor:pointer;white-space:nowrap;transition:background .15s}button:hover:not(:disabled){background:#2563eb}button:disabled{opacity:.5;cursor:not-allowed}button.secondary{background:transparent;border-color:#2a2f3a}button.secondary:hover:not(:disabled){background:#1a1d24}button.danger{background:#b91c1c;border-color:#b91c1c}button.danger:hover:not(:disabled){background:#991b1b}.row{display:flex;gap:12px;align-items:center}.row>*{flex:1}.label{font-size:12px;color:#9aa0a6;margin-bottom:4px;text-transform:uppercase;letter-spacing:.5px}.error{color:#f87171;margin-top:8px;font-size:13px}.success{color:#34d399;margin-top:8px;font-size:13px}.muted{color:#9aa0a6;font-size:12px}.lot-card{display:flex;gap:16px;padding:16px;background:#12151a;border:1px solid #2a2f3a;border-radius:10px}.lot-img{width:100px;height:100px;object-fit:cover;border-radius:8px;flex-shrink:0}.lot-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.lot-title{font-size:15px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lot-meta{display:flex;align-items:center;gap:16px;font-size:13px;margin-top:4px}.lot-timer{font-size:13px}.bid-form{margin-top:16px}.input-with-suffix{position:relative;flex:1}.input-with-suffix input{padding-right:32px}.input-with-suffix .suffix{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:#9aa0a6;font-size:14px;pointer-events:none}.converted{flex:0 0 auto;min-width:90px;text-align:center;font-variant-numeric:tabular-nums}.lot-placeholder{border:1px dashed #2a2f3a;border-radius:10px;padding:40px;text-align:center}.table-wrap{padding:0;overflow:hidden}.bids-table{width:100%;border-collapse:collapse;font-size:13px}.bids-table th,.bids-table td{padding:10px 12px;text-align:left;border-bottom:1px solid #2a2f3a;white-space:nowrap}.bids-table thead th{color:#9aa0a6;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;background:#1a1d24}.th-sort{cursor:pointer;-webkit-user-select:none;user-select:none}.th-sort:hover{color:#e6e6e6}.bids-table tbody tr{transition:background .15s}.bids-table tbody tr:hover{background:#12151a}.bids-table tbody tr:last-child td{border-bottom:none}.td-lot{max-width:0;width:100%;overflow:hidden;text-overflow:ellipsis}.td-lot-inner{display:flex;align-items:center;gap:10px;min-width:0}.td-amount{font-variant-numeric:tabular-nums}.td-email{font-size:12px;color:#9aa0a6}.btn-sm{padding:4px 10px;font-size:12px}.filter-select{font:inherit;font-size:12px;padding:4px 10px;border-radius:8px;border:1px solid #2a2f3a;background:#0f1115;color:#e6e6e6;cursor:pointer}.bid-thumb{width:48px;height:48px;border-radius:6px;flex-shrink:0;overflow:hidden;background:#2a2f3a}.bid-thumb img{width:100%;height:100%;object-fit:cover;display:block}.bid-thumb-empty{background:#2a2f3a}.td-lot-text{min-width:0;flex:1}.bid-title{display:block;color:#e6e6e6;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500}.bid-title:hover{color:#93c5fd}.lot-id{font-size:10px;color:#6b7280;cursor:pointer;font-family:monospace}.lot-id:hover{color:#93c5fd}.lot-id:active:after{content:" ✓"}.btn-delete{background:transparent;border:none;color:#6b7280;font-size:14px;padding:2px 6px;cursor:pointer;border-radius:4px;line-height:1}.btn-delete:hover{color:#f87171;background:#f871711a}.tag{display:inline-block;padding:3px 10px;border-radius:999px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.tag.PLACED{background:#064e3b;color:#34d399}.tag.PENDING{background:#1e3a8a;color:#93c5fd}.tag.PENDING_APPROVAL{background:#78350f;color:#fcd34d}.tag.FAILED,.tag.LOST,.tag.CANCELLED,.tag.OUTBID,.tag.REJECTED{background:#7f1d1d;color:#fca5a5}.tag.WON{background:#14532d;color:#86efac}.countdown{color:#fcd34d;font-variant-numeric:tabular-nums}.countdown.ended{color:#f87171}.editable{cursor:pointer;border-bottom:1px dashed #3b4555}.editable:hover{color:#e6e6e6}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:100}.modal{background:#1a1d24;border:1px solid #2a2f3a;border-radius:12px;padding:24px;width:400px;max-width:90vw}textarea{font:inherit;padding:10px 14px;border-radius:8px;border:1px solid #2a2f3a;background:#0f1115;color:#e6e6e6;resize:vertical}.status-filters{display:flex;flex-wrap:wrap;gap:6px}.status-chip{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:999px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;cursor:pointer;border:1px solid #2a2f3a;background:transparent;color:#9aa0a6;transition:all .15s;-webkit-user-select:none;user-select:none}.status-chip input{display:none}.status-chip.active.PENDING_APPROVAL{background:#78350f;color:#fcd34d;border-color:#78350f}.status-chip.active.PENDING,.status-chip.active.PLACED{background:#064e3b;color:#34d399;border-color:#064e3b}.status-chip.active.FAILED,.status-chip.active.LOST,.status-chip.active.CANCELLED,.status-chip.active.OUTBID,.status-chip.active.REJECTED{background:#7f1d1d;color:#fca5a5;border-color:#7f1d1d}.status-chip.active.WON{background:#14532d;color:#86efac;border-color:#14532d}.tabs{display:flex;gap:8px;margin-bottom:16px}.tabs button{flex:0}
