:root{--bg: #0f172a;--bg-soft: #1e293b;--bg-card: #1e293b;--border: #334155;--text: #e2e8f0;--text-dim: #94a3b8;--accent: #38bdf8;--verde: #22c55e;--amarillo: #eab308;--rojo: #ef4444;--gris: #64748b;--pujar: #16a34a;--skip: #dc2626}*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}html,body,#root{height:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}img{display:block;max-width:100%}.login-wrap{min-height:100%;display:flex;align-items:center;justify-content:center;padding:24px}.login-card{width:100%;max-width:360px;background:var(--bg-card);border:1px solid var(--border);border-radius:18px;padding:32px 24px;display:flex;flex-direction:column;gap:12px;text-align:center}.login-logo{font-size:44px}.login-card h1{font-size:22px}.login-sub{color:var(--text-dim);font-size:14px;margin-bottom:8px}.login-card input,.search,.bid-edit-row input{width:100%;background:var(--bg);border:1px solid var(--border);border-radius:12px;padding:14px 16px;color:var(--text);font-size:16px}.login-card input:focus,.search:focus{outline:2px solid var(--accent);border-color:transparent}.login-card button[type=submit]{background:var(--accent);color:#03263a;font-weight:700;font-size:16px;border-radius:12px;padding:14px}.login-card button:disabled{opacity:.5}.login-error{color:var(--rojo);font-size:14px}.app{max-width:720px;margin:0 auto}.top{position:sticky;top:0;background:var(--bg);padding:14px 14px 8px;border-bottom:1px solid var(--border);z-index:10}.top-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.top-row h1{font-size:20px}.top-actions{display:flex;gap:8px}.icon-btn{width:40px;height:40px;border-radius:10px;background:var(--bg-soft);border:1px solid var(--border);font-size:18px}.search{margin-bottom:10px}.tabs{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px}.tab{white-space:nowrap;padding:8px 12px;border-radius:999px;background:var(--bg-soft);border:1px solid var(--border);font-size:13px;color:var(--text-dim)}.tab--active{background:var(--accent);color:#03263a;border-color:transparent;font-weight:700}.tab-count{display:inline-block;min-width:18px;padding:0 5px;margin-left:4px;border-radius:999px;background:#0000002e;font-size:11px}.list{padding:12px;display:flex;flex-direction:column;gap:12px}.state{text-align:center;color:var(--text-dim);padding:40px 0}.state--err{color:var(--rojo)}.state button{color:var(--accent);text-decoration:underline;margin-left:6px}.card{display:block;width:100%;text-align:left;background:var(--bg-card);border:1px solid var(--border);border-radius:16px;overflow:hidden}.card:active{transform:scale(.99)}.card-photo{position:relative;aspect-ratio:16 / 10;background:#0b1220}.card-photo img{width:100%;height:100%;object-fit:cover}.card-photo--empty{display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-dim);font-size:14px}.badge{position:absolute;top:10px;font-size:11px;font-weight:700;padding:4px 8px;border-radius:999px;background:#0f172acc;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.badge--verde{left:10px;color:var(--verde)}.badge--amarillo{left:10px;color:var(--amarillo)}.badge--rojo{left:10px;color:var(--rojo)}.badge--gris{left:10px;color:var(--gris)}.badge--estado{right:10px;color:var(--text)}.badge--vencida{top:38px;right:10px;color:#fff;background:#dc2626e6}.card-body{padding:12px 14px 14px}.card-title{font-size:16px;font-weight:700}.card-sub{font-size:13px;color:var(--text-dim);margin:2px 0 10px}.card-lot{font-size:12px;color:var(--accent);margin:-6px 0 8px;text-decoration:none;display:inline-block}.card-date{font-size:13px;font-weight:600;color:var(--text);margin:0 0 10px}.card-figs{display:flex;gap:10px}.fig{flex:1}.fig-label{display:block;font-size:11px;color:var(--text-dim)}.fig-val{font-size:14px;font-weight:600}.fig-val.pos{color:var(--verde)}.detail{max-width:720px;margin:0 auto;padding-bottom:96px}.detail-head{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:12px 14px;background:var(--bg);border-bottom:1px solid var(--border)}.detail-head .badge{position:static}.back{font-size:16px;color:var(--accent);font-weight:600}.detail-gallery{display:flex;gap:8px;overflow-x:auto;padding:12px 14px;scroll-snap-type:x mandatory}.detail-gallery img{width:88%;flex:0 0 auto;aspect-ratio:16/10;object-fit:cover;border-radius:14px;scroll-snap-align:center}.detail-gallery .card-photo--empty{height:180px;width:100%}.detail-body{padding:4px 16px;display:flex;flex-direction:column;gap:16px}.detail-body h2{font-size:22px}.detail-estado{font-size:14px;color:var(--text-dim);margin-top:-10px}.profit-box{background:var(--bg-card);border:1px solid var(--border);border-radius:16px;padding:16px}.profit-main{display:flex;flex-direction:column;gap:4px;margin-bottom:14px}.profit-main span{font-size:13px;color:var(--text-dim)}.profit-main strong{font-size:24px}.profit-main strong.pos{color:var(--verde)}.profit-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 16px}.drow{display:flex;justify-content:space-between;gap:12px;font-size:14px;padding:4px 0;border-bottom:1px solid rgba(51,65,85,.4)}.drow:last-child{border-bottom:none}.drow-label{color:var(--text-dim)}.drow-val{font-weight:600;text-align:right}.detail-section{background:var(--bg-card);border:1px solid var(--border);border-radius:16px;padding:8px 16px}.lot-link{display:block;text-align:center;padding:12px;border:1px solid var(--accent);color:var(--accent);border-radius:12px;text-decoration:none;font-weight:600}.btn--unavailable{width:100%;margin-top:10px;background:transparent;border:1px solid var(--border);color:var(--text-dim)}.bid-edit-row{display:flex;gap:8px;align-items:stretch}.bid-edit-row input{flex:1;min-width:0;padding:14px 16px;font-size:17px;font-weight:600;border-radius:12px;border:1px solid var(--border);background:var(--bg-soft);color:var(--text)}.bid-edit-row .btn{width:auto;flex:0 0 auto;padding:0 14px;font-size:14px}.btn{border-radius:12px;padding:14px;font-size:15px;font-weight:700}.btn--ghost{width:100%;background:var(--bg-soft);border:1px solid var(--border);color:var(--text)}.btn--save{background:var(--accent);color:#03263a;padding:14px 18px}.btn:disabled{opacity:.5}.action-bar{position:fixed;bottom:0;left:0;right:0;max-width:720px;margin:0 auto;display:flex;gap:12px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:linear-gradient(to top,var(--bg) 75%,transparent)}.action-bar .btn{flex:1}.btn--pujar{background:var(--pujar);color:#fff}.btn--skip{background:var(--skip);color:#fff}.decided-note{position:fixed;bottom:78px;left:0;right:0;text-align:center;font-size:13px;color:var(--text-dim)}
