:root {
    --bg:#eef0f4;--bg-raised:#f6f7f9;--bg-card:#ffffff;--bg-input:#f0f1f4;
    --border:#dde0e6;--border-hover:#c5c9d2;
    --text:#1a1d23;--text-muted:#5f6575;--text-dim:#8b90a0;
    --accent:#2563eb;--accent-hover:#1d4ed8;--accent-light:#eff4ff;
    --danger:#ef4444;--whatsapp:#25d366;--whatsapp-h:#1ebe57;
    --success:#16a34a;--warning:#f59e0b;
    --shadow-sm:0 1px 2px rgba(0,0,0,.05);--shadow:0 2px 8px rgba(0,0,0,.07);--shadow-lg:0 4px 20px rgba(0,0,0,.10);
    --max-w:1340px;--pad:1.5rem;--radius:8px;--radius-lg:12px;
    --font:'Plus Jakarta Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
    --fast:150ms ease;--base:250ms ease;
}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{font-size:16px;scroll-behavior:smooth;-webkit-font-smoothing:antialiased}
body{font-family:var(--font);font-weight:400;line-height:1.6;color:var(--text);background:var(--bg);min-height:100vh;display:flex;flex-direction:column}
main{flex:1;padding-bottom:3rem}
img{display:block;max-width:100%;height:auto}
a{color:var(--accent);text-decoration:none;transition:color var(--fast)}
a:hover{color:var(--accent-hover)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.container{width:100%;max-width:var(--max-w);margin:0 auto;padding:0 var(--pad)}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.6875rem 1.375rem;font-family:var(--font);font-size:.8125rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase;border:1px solid transparent;border-radius:var(--radius);cursor:pointer;transition:all var(--fast);text-decoration:none;line-height:1.4}
.btn--primary{background:var(--accent);color:#fff;border-color:var(--accent)}
.btn--primary:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:#fff}
.btn--outline{background:var(--bg-card);color:var(--text-muted);border-color:var(--border)}
.btn--outline:hover{border-color:var(--accent);color:var(--accent)}
.btn--whatsapp{background:var(--whatsapp);color:#fff;border-color:var(--whatsapp);text-transform:none;font-size:.9375rem;padding:.875rem 1.5rem}
.btn--whatsapp:hover{background:var(--whatsapp-h);border-color:var(--whatsapp-h);color:#fff}
.btn--full{width:100%}

.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.95);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--border);box-shadow:var(--shadow-sm)}
.site-header__inner{display:flex;align-items:center;justify-content:space-between;height:60px}
.site-header__logo{font-size:1.125rem;font-weight:800;color:var(--text);text-decoration:none;letter-spacing:-.02em}
.site-header__logo:hover{color:var(--accent)}
.site-nav{display:flex;align-items:center;gap:1.75rem}
.site-nav__link{display:flex;align-items:center;gap:.35rem;font-size:.8125rem;font-weight:600;color:var(--text-muted);letter-spacing:.04em;padding:.25rem 0;border-bottom:2px solid transparent;transition:all var(--fast)}
.site-nav__link:hover,.site-nav__link--active{color:var(--text);border-bottom-color:var(--accent)}
.site-nav__badge{font-size:.625rem;font-weight:700;background:var(--accent);color:#fff;padding:.1rem .4rem;border-radius:99px;line-height:1.4}
.site-header__mobile-toggle{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:4px}
.site-header__mobile-toggle span{width:20px;height:2px;background:var(--text);border-radius:1px}
@media(max-width:768px){
    .site-nav{display:none;position:absolute;top:60px;left:0;right:0;background:var(--bg-card);border-bottom:1px solid var(--border);flex-direction:column;padding:.75rem var(--pad);gap:0;box-shadow:var(--shadow-lg)}
    .site-nav--open{display:flex}
    .site-nav__link{padding:.75rem 0;border-bottom:1px solid var(--border);width:100%}
    .site-header__mobile-toggle{display:flex}
}

.site-footer{background:var(--bg-card);border-top:1px solid var(--border);padding:2rem 0;margin-top:auto;box-shadow:0 -1px 4px rgba(0,0,0,.03)}
.site-footer__inner{display:flex;justify-content:space-between;align-items:start;gap:2rem;flex-wrap:wrap}
.site-footer__logo{font-size:.9375rem;font-weight:700;color:var(--text)}
.site-footer__tagline{font-size:.75rem;color:var(--text-dim);margin-top:.125rem}
.site-footer__links{display:flex;gap:1.5rem}
.site-footer__links a{font-size:.8125rem;color:var(--text-muted)}
.site-footer__links a:hover{color:var(--accent)}
.site-footer__legal p,.site-footer__note{font-size:.6875rem;color:var(--text-dim)}
@media(max-width:640px){.site-footer__inner{flex-direction:column;align-items:center;text-align:center}}

.error-box{text-align:center;padding:4rem 2rem}
.error-box h1{font-size:2.5rem;font-weight:800;color:var(--text-dim);margin-bottom:.5rem}
.error-box p{color:var(--text-muted);margin-bottom:1.5rem}
.empty-state{text-align:center;padding:3rem 2rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}
.empty-state h2{font-size:1.125rem;font-weight:700;margin-bottom:.375rem}
.empty-state p{color:var(--text-muted);margin-bottom:1.25rem;font-size:.875rem}
.loading-state{text-align:center;padding:4rem 2rem}
.loading-spinner{width:32px;height:32px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite;margin:0 auto 1rem}
@keyframes spin{to{transform:rotate(360deg)}}

.breadcrumb{padding:1rem 0;font-size:.8125rem;color:var(--text-dim)}
.breadcrumb a{color:var(--text-muted)}
.breadcrumb a:hover{color:var(--accent)}
.breadcrumb__sep{margin:0 .5rem}

.pagination{display:flex;align-items:center;justify-content:center;gap:.375rem;padding:2rem 0 .5rem;flex-wrap:wrap}
.pagination__link{display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:38px;padding:0 .625rem;font-size:.8125rem;font-weight:500;color:var(--text-muted);background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);transition:all var(--fast);text-decoration:none;box-shadow:var(--shadow-sm)}
.pagination__link:hover{border-color:var(--accent);color:var(--accent)}
.pagination__link--active{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:700}
.pagination__link--active:hover{color:#fff}
.pagination__dots{color:var(--text-dim);padding:0 .25rem}

.vehicle-list{display:flex;flex-direction:column;gap:.75rem}
.vehicle-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;transition:border-color var(--fast),box-shadow var(--base);box-shadow:var(--shadow-sm)}
.vehicle-card:hover{border-color:var(--border-hover);box-shadow:var(--shadow)}
.vehicle-card__link{display:flex;text-decoration:none;color:inherit}
.vehicle-card__image-wrap{flex-shrink:0;width:260px;min-height:160px;background:var(--bg-raised);overflow:hidden}
.vehicle-card__image{width:100%;height:100%;object-fit:cover;transition:transform var(--base)}
.vehicle-card:hover .vehicle-card__image{transform:scale(1.03)}
.vehicle-card__no-image{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:.8125rem;color:var(--text-dim);background:var(--bg-input)}
.vehicle-card__body{flex:1;padding:1rem 1.25rem;display:flex;flex-direction:column;justify-content:center;min-width:0}
.vehicle-card__top{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}
.vehicle-card__title{font-size:.9375rem;font-weight:700;color:var(--text);line-height:1.35;margin-bottom:.375rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.vehicle-card__fav{flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--border);border-radius:50%;color:var(--text-dim);cursor:pointer;transition:all var(--fast)}
.vehicle-card__fav:hover,.vehicle-card__fav--active{color:var(--danger);border-color:var(--danger)}
.vehicle-card__fav--active svg{fill:var(--danger)}
.vehicle-card__meta{display:flex;flex-wrap:wrap;gap:.25rem .125rem;font-size:.75rem;color:var(--text-muted);margin-bottom:.625rem}
.vehicle-card__meta span{white-space:nowrap}
.vehicle-card__meta span:not(:last-child)::after{content:'\00b7';margin-left:.5rem;color:var(--text-dim)}
.vehicle-card__prices{display:flex;flex-wrap:wrap;align-items:baseline;gap:.375rem .75rem}
.vehicle-card__price--eur{font-size:1rem;font-weight:700;color:var(--accent)}
.vehicle-card__price--usd{font-size:.8125rem;color:var(--text-muted)}
.vehicle-card__price--krw{font-size:.6875rem;color:var(--text-dim)}
@media(max-width:640px){
    .vehicle-card__link{flex-direction:column}
    .vehicle-card__image-wrap{width:100%;min-height:180px;max-height:200px}
}

::-webkit-scrollbar{width:7px}
::-webkit-scrollbar-track{background:var(--bg)}
::-webkit-scrollbar-thumb{background:var(--border-hover);border-radius:4px}
::-webkit-scrollbar-thumb:hover{background:var(--text-dim)}
