:root{--bg: #f7f7f8;--surface: #ffffff;--border: #e0e0e4;--text: #18181b;--muted: #71717a;--accent: #2d2d30;--accent-hover: #d7d7d7;--on-accent: #ffffff;--accent-soft: rgba(45, 45, 48, .08);--accent-mid: rgba(45, 45, 48, .15);--success: #1a7f5a;--error: #b84a4a;font-family:DM Sans,system-ui,-apple-system,sans-serif}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}#root{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:0}select{font:inherit;color:inherit;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:.65rem 2rem .65rem .85rem;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236b6b73' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .6rem center}select:hover,select:focus{border-color:var(--accent);outline:none}select option{background:var(--surface);color:var(--text)}button{font:inherit;font-weight:600;color:var(--on-accent);background:var(--accent);border:none;border-radius:8px;padding:.75rem 1.5rem;cursor:pointer;transition:background .2s}button:hover{background:var(--accent-hover)}button:disabled{opacity:.6;cursor:not-allowed}.card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:2rem;max-width:420px;width:100%;box-shadow:0 2px 12px #0000000f}.card:has(.result-table-wrap){max-width:min(95vw,920px)}.card-header{display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.card-header>div{flex:1;min-width:0}.card h1{margin:0 0 .25rem;font-size:1.5rem;font-weight:700;text-align:center}.card .sub{margin:0 0 1.5rem;color:var(--muted);font-size:.9rem}.card-header .sub{margin-bottom:0}.btn-secondary{background:transparent;color:var(--accent);border:1px solid var(--accent);padding:.5rem 1rem;font-size:.875rem;white-space:nowrap}.btn-secondary:hover:not(:disabled){background:var(--accent-soft)}.success-msg{margin:0 0 1rem;padding:.5rem .75rem;background:#2d9d7826;color:var(--success);font-size:.875rem;border-radius:8px}.form{display:flex;flex-direction:column;gap:1rem}.form label{display:flex;flex-direction:column;gap:.35rem}.form label span{font-size:.85rem;font-weight:500;color:var(--muted)}.form select{min-width:0}.form button{margin-top:.5rem}.error{color:var(--error);font-size:.9rem;margin:0}.error-block{padding:.6rem .75rem;background:#c75c5c1f;border-radius:8px;margin-bottom:1rem}.hint{font-size:.875rem;margin-bottom:1rem}.hint code{font-size:.8em;padding:.1rem .35rem;background:var(--border);border-radius:4px}.result{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border)}.result-block{margin-bottom:1.5rem}.result-block:last-child{margin-bottom:0}.result .message{margin:0 0 .5rem;color:var(--text)}.result .average{font-size:1.5rem;font-weight:700;color:var(--accent);margin:0 0 .25rem}.result .muted{margin:0;font-size:.85rem;color:var(--muted)}.muted{color:var(--muted);margin:0}.result-table-wrap{margin-top:1rem;overflow-x:auto}.result-table-wrap+.result-table-wrap{margin-top:1.5rem}.result-table-title{margin:0 0 .5rem;font-size:1rem;font-weight:600;color:var(--text)}.vehicle-link{color:var(--accent);text-decoration:none}.vehicle-link:hover{text-decoration:underline}.result-table{width:100%;border-collapse:collapse;font-size:.8rem}.result-table th,.result-table td{padding:.5rem .6rem;text-align:left;border-bottom:1px solid var(--border)}.result-table th{font-weight:600;color:var(--muted);white-space:nowrap}.result-table td{color:var(--text)}.result-table tbody tr:hover{background:#0000000a}.admin-nav{margin-bottom:1.5rem}.admin-link{color:var(--accent);font-size:.9rem;text-decoration:none}.admin-link:hover{text-decoration:underline}.admin-section{margin-bottom:1.5rem}.admin-section h2{margin:0 0 .75rem;font-size:1.1rem;font-weight:600}.admin-list{margin:0 0 1rem;padding-left:1.25rem;color:var(--muted);font-size:.9rem;line-height:1.6}.admin-stats{display:grid;grid-template-columns:auto 1fr;gap:.25rem 1rem;margin:1rem 0 0;font-size:.9rem}.admin-stats dt{color:var(--muted)}.admin-stats dd{margin:0;font-weight:600}.result-success{background:#2d9d7814;border-radius:8px;padding:1rem}.result-error{background:#c75c5c14;border-radius:8px;padding:1rem}.landing{width:100%;min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:.5rem 1rem 1.5rem}.landing-progress-wrap{width:100%;max-width:480px;margin-bottom:1rem;position:relative;height:6px;background:var(--border);border-radius:3px;overflow:hidden}.landing-progress-bar{position:absolute;left:0;top:0;height:100%;background:var(--accent);border-radius:3px;transition:width .3s ease}.landing-progress-text{position:absolute;right:0;top:-1.5rem;font-size:.75rem;color:var(--muted)}.landing-card{background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:2rem;max-width:480px;width:100%;box-shadow:0 4px 24px #00000014;animation:landingFade .35s ease;overflow:hidden}.landing-card:has(.landing-step--intro){padding-top:0}@media (max-width: 480px){.landing-card{padding:1rem;border-radius:16px}.landing-card:has(.landing-step--intro){padding-top:0}}.landing-card:has(.marca-grid){max-width:540px}.landing-card--success{text-align:center;padding:2.5rem}@keyframes landingFade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.intro-brand{margin:0 -2rem 1.25rem;padding:1rem 2rem;background:#000;display:flex;align-items:center;justify-content:center}@media (max-width: 480px){.intro-brand{margin:0 -1rem 1.25rem;padding:.85rem 1rem}}.landing-logo{display:block;max-width:150px;height:auto}.landing-step{display:flex;flex-direction:column;gap:1.25rem}.landing-step--intro{text-align:center;gap:0}.intro-text{margin-bottom:1.5rem}.landing-hero-title{margin:0 0 .5rem;font-size:clamp(1.5rem,5vw,2rem);font-weight:800;color:var(--text);line-height:1.2;letter-spacing:-.02em}.landing-hero-sub{margin:0;color:var(--muted);font-size:1rem;line-height:1.4}.intro-features{display:flex;flex-direction:column;gap:0;margin-bottom:1.75rem;text-align:left}.intro-feature{display:flex;align-items:flex-start;gap:.85rem;padding:.85rem 0;border-bottom:1px solid var(--border)}.intro-feature:last-child{border-bottom:none}.intro-feature-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:10px;background:#fff;border:1px solid var(--border);color:var(--text);box-shadow:0 1px 3px #0000000a}.intro-feature div{display:flex;flex-direction:column;gap:.1rem}.intro-feature strong{font-size:.9rem;font-weight:600;color:var(--text)}.intro-feature span{font-size:.82rem;color:var(--muted);line-height:1.35}.intro-trust{margin:.6rem 0 0;font-size:.8rem;color:var(--muted)}.landing-cta{display:inline-block;padding:.95rem 2rem;font-size:1rem;font-weight:600;color:var(--on-accent);background:var(--text);border:none;border-radius:12px;cursor:pointer;transition:background .2s,transform .15s,box-shadow .2s;text-decoration:none;letter-spacing:.01em}.landing-cta:hover{background:var(--accent-hover);transform:scale(1.02);box-shadow:0 4px 16px #0000001f}.landing-link-secondary{display:inline-block;margin-top:.5rem;font-size:.875rem;color:var(--muted);text-decoration:none}.landing-link-secondary:hover{color:var(--accent)}.landing-step-title{margin:0;font-size:1.35rem;font-weight:700;color:var(--text)}.landing-step-sub{margin:0 0 .25rem;color:var(--muted);font-size:.9rem}.landing-price-estimate{padding:1rem;background:var(--accent-soft);border-radius:12px;border:1px solid var(--accent-mid)}.landing-price-label{margin:0 0 .25rem;font-size:.85rem;color:var(--muted)}.landing-price-value{margin:0;font-size:1.35rem;font-weight:700;color:var(--accent)}.landing-price-value--ref{font-size:1rem;color:var(--text)}.landing-step-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:.5rem;flex-wrap:wrap}.landing-step-actions .landing-cta,.landing-step-actions .btn-secondary{margin:0}.cita-step .landing-step-sub{margin-bottom:1.25rem}.cita-date-picker{margin-bottom:1.5rem}.cita-date-label,.cita-time-label{margin:0 0 .6rem;font-size:.9rem;font-weight:600;color:var(--text)}.cita-date-row{display:flex;gap:.5rem;flex-wrap:nowrap;overflow-x:auto;padding-bottom:.25rem;-webkit-overflow-scrolling:touch}.cita-date-card{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:.15rem;padding:.75rem .5rem;border-radius:12px;border:1.5px solid var(--border);background:var(--surface);color:var(--text);font:inherit;cursor:pointer;transition:border-color .2s,background .2s,color .2s}.cita-date-card:hover{border-color:var(--accent);background:var(--accent-soft)}.cita-date-card--selected{background:var(--text);border-color:var(--text);color:#fff}.cita-date-card--selected:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:#fff}.cita-date-weekday{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.02em;opacity:.9}.cita-date-num{font-size:1.25rem;font-weight:700;line-height:1.1}.cita-date-month{font-size:.7rem;color:var(--muted)}.cita-date-card--selected .cita-date-month{color:#ffffffd9}.cita-time-picker{margin-bottom:1rem}.cita-time-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.cita-time-slot{padding:.7rem 1rem;border-radius:10px;border:1.5px solid var(--border);background:var(--surface);color:var(--text);font:inherit;font-size:.95rem;font-weight:500;cursor:pointer;transition:border-color .2s,background .2s}.cita-time-slot:hover{border-color:var(--accent);background:var(--accent-soft)}.cita-time-slot--selected{border-color:var(--text);background:var(--text);color:#fff}.cita-time-slot--selected:hover{border-color:var(--accent-hover);background:var(--accent-hover);color:#fff}.landing-input,.landing-select{font:inherit;color:inherit;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:.65rem .85rem;width:100%}.landing-input:hover,.landing-input:focus,.landing-select:hover,.landing-select:focus{border-color:var(--accent);outline:none}.landing-select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236b6b73' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .6rem center}.landing-options{display:flex;gap:.5rem;flex-wrap:wrap}.landing-options--three .landing-option{flex:1;min-width:0}.landing-option{padding:.6rem 1rem;font:inherit;font-weight:500;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:8px;cursor:pointer;transition:border-color .2s,background .2s}.landing-option:hover{border-color:var(--accent)}.landing-option--active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.landing-stars{display:flex;gap:.25rem;font-size:1.75rem}.landing-star{padding:.2rem;background:none;border:none;color:var(--border);cursor:pointer;transition:color .15s,transform .15s;line-height:1}.landing-star:hover{color:var(--accent);transform:scale(1.15)}.landing-star--active,.landing-star--active:hover{color:var(--accent)}.landing-star-label{display:block;margin-top:.25rem;font-size:.8rem;color:var(--muted)}.landing-summary{display:flex;flex-direction:column;gap:1.25rem;padding:1rem 0}.landing-summary section h3{margin:0 0 .35rem;font-size:.8rem;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.03em}.landing-summary section p{margin:0;font-size:.95rem;color:var(--text);line-height:1.5}.landing-summary-price{margin-top:.35rem!important;font-weight:600;color:var(--text)!important}.landing-benefit{margin-top:1rem;color:var(--success);font-weight:500}.marca-search-input{font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:.6rem .85rem;width:100%;margin-bottom:.75rem}.marca-search-input::placeholder{color:var(--muted)}.marca-search-input:hover,.marca-search-input:focus{border-color:var(--accent);outline:none}.marca-ver-mas{width:100%;margin-top:.75rem;padding:.65rem;font:inherit;font-weight:500;color:var(--muted);background:transparent;border:1px dashed var(--border);border-radius:8px;cursor:pointer;transition:border-color .2s,color .2s}.marca-ver-mas:hover{border-color:var(--accent);color:var(--accent)}.marca-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}@media (max-width: 419px){.marca-grid{gap:.5rem;grid-auto-rows:100px;align-items:stretch}}@media (min-width: 420px){.marca-grid{grid-template-columns:repeat(4,1fr)}}.marca-card{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;padding:.9rem .5rem;background:var(--surface);border:2px solid var(--border);border-radius:12px;cursor:pointer;transition:border-color .2s,background .2s,transform .15s;font:inherit;color:var(--text);min-height:95px;min-width:0}@media (max-width: 419px){.marca-card{height:100%;min-height:0;padding:.5rem .35rem}}.marca-card:hover{border-color:var(--accent);background:var(--accent-soft)}.marca-card--selected{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 2px var(--accent)}.marca-card-logo{display:flex;align-items:center;justify-content:center;width:56px;height:56px;flex-shrink:0}.marca-card-logo img{width:100%;height:100%;object-fit:contain}@media (max-width: 480px){.marca-card-logo{width:44px;height:44px}}.marca-card-fallback{width:56px;height:56px;border-radius:50%;background:var(--border);color:var(--muted);font-weight:700;font-size:1.25rem;display:flex;align-items:center;justify-content:center}@media (max-width: 480px){.marca-card-fallback{width:44px;height:44px;font-size:1rem}}.marca-card--selected .marca-card-fallback{background:var(--accent);color:var(--on-accent)}.marca-card-name{font-size:.7rem;font-weight:600;text-align:center;line-height:1.2;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width: 419px){.marca-card-name{font-size:.65rem;line-height:1.15}}.marca-otros-wrap{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:.35rem}.marca-otros-label{font-size:.85rem;font-weight:500;color:var(--muted)}.landing-step-vehicle{transition:opacity .2s ease}.landing-step-vehicle.landing-step--fade{opacity:0}.vehicle-back-link{align-self:flex-start;margin:-.25rem 0 .5rem;padding:0;font:inherit;font-size:.875rem;color:var(--muted);background:none;border:none;cursor:pointer;text-decoration:none}.vehicle-back-link:hover{color:var(--accent)}.vehicle-selected-marca{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;padding:.75rem 1rem;background:var(--accent-soft);border-radius:12px;border:1px solid var(--border)}.vehicle-selected-marca--small{margin-bottom:.75rem;padding:.5rem .75rem}.vehicle-selected-logo{display:flex;align-items:center;justify-content:center;width:48px;height:48px;flex-shrink:0}.vehicle-selected-marca--small .vehicle-selected-logo{width:36px;height:36px}.vehicle-selected-logo img{width:100%;height:100%;object-fit:contain}.vehicle-selected-name{font-weight:600;color:var(--text)}.vehicle-selected-marca--small .vehicle-selected-name{font-size:.9rem}.vehicle-summary-card{margin-bottom:1.25rem;padding:1rem 1.25rem;background:var(--accent-soft);border-radius:12px;border:1px solid var(--border)}.vehicle-summary-label{font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:0 0 .5rem}.vehicle-summary-content{display:flex;flex-direction:column;gap:.25rem}.vehicle-summary-marca{display:flex;align-items:center;gap:.5rem;font-weight:600;color:var(--text);font-size:1.05rem}.vehicle-summary-marca img{width:28px;height:28px;object-fit:contain}.vehicle-summary-detail{font-size:.9rem;color:var(--muted);padding-left:2.25rem}.offer-step{text-align:center}.offer-header{margin-bottom:.25rem}.offer-greeting{margin:0 0 .15rem;font-size:.95rem;color:var(--muted)}.offer-headline{margin:0;font-size:1.15rem;font-weight:700;color:var(--text)}.offer-price-card{margin:.75rem auto 0;padding:1.15rem 1.5rem;max-width:22rem;border-radius:16px;background:linear-gradient(135deg,#2d2d3014,#2d2d3005);border:1.5px solid var(--border)}.offer-price-value{margin:0;font-size:clamp(1.65rem,5vw,2.4rem);font-weight:800;color:var(--text);letter-spacing:-.01em;line-height:1.1}.offer-price-loading,.offer-price-fallback{margin:0;color:var(--muted);font-size:.95rem}.offer-divider{width:3rem;height:2px;margin:1.25rem auto;background:var(--border);border-radius:1px}.offer-section-title{margin:0 0 .85rem;font-size:1rem;font-weight:600;color:var(--text)}.offer-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;text-align:center}@media (max-width: 520px){.offer-grid{grid-template-columns:1fr}}.offer-card{position:relative;display:flex;flex-direction:column;align-items:center;gap:.15rem;padding:1.1rem .85rem 1rem;border-radius:14px;border:1.5px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.offer-card:hover:not(:disabled){transform:translateY(-2px);border-color:var(--accent);box-shadow:0 8px 20px #0000000f}.offer-card:disabled{opacity:.5;cursor:not-allowed}.offer-card--active{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 2.5px #2d2d3033}.offer-card-icon{font-size:1.5rem;line-height:1;margin-bottom:.15rem}.offer-card-badge{display:inline-block;padding:.18rem .6rem;border-radius:999px;font-size:.68rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:#fff;background:var(--accent)}.offer-card-badge--premium{background:#52525b}.offer-card-title{margin:.35rem 0 0;font-size:1rem;font-weight:700}.offer-card-time{margin:.1rem 0 0;font-size:.82rem;color:var(--muted)}.offer-card-price{margin:.4rem 0 0;font-size:1.05rem;font-weight:700;color:var(--text)}.offer-card-desc{margin:.15rem 0 0;font-size:.78rem;color:var(--muted)}.offer-decline{display:inline-block;margin-top:1rem;padding:0;font:inherit;font-size:.85rem;color:var(--muted);background:none;border:none;cursor:pointer;text-decoration:underline;text-underline-offset:3px;transition:color .15s}.offer-decline:hover{color:var(--text)}.offer-decline--active{color:var(--text);font-weight:600}.pills-wrap{display:flex;flex-wrap:wrap;gap:.5rem}.pills-wrap--years{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.pills-wrap--years .pill{width:100%;min-width:0;min-height:3.25rem;padding:.75rem 1rem;text-align:center}.pills-wrap--modelo{display:grid;grid-template-columns:1fr;gap:.5rem}.pills-wrap--modelo .pill{width:100%;min-width:0}.pills-wrap--ref{display:grid;grid-template-columns:1fr;gap:.5rem}.pills-wrap--ref .pill{width:100%}.pill{padding:.5rem 1rem;font:inherit;font-size:.9rem;font-weight:500;color:var(--text);background:var(--surface);border:2px solid var(--border);border-radius:999px;cursor:pointer;transition:border-color .2s,background .2s}.pill:hover{border-color:var(--accent);background:var(--accent-soft)}.pill--selected{border-color:var(--accent);background:var(--accent-mid);color:var(--text);font-weight:600}.pill--long{min-width:5.5rem;min-height:2.75rem;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;box-sizing:border-box}.app-nav{position:fixed;top:0;right:0;padding:.75rem 1.25rem;display:flex;gap:1rem;z-index:10;font-size:.9rem}.app-nav a{color:var(--muted);text-decoration:none}.app-nav a:hover{color:var(--accent)}
