/* Desguaces CatalogoCoches.com v1.0 */
#desguaces-app { font-family:'Montserrat','Open Sans',sans-serif; color:#010101; background:#F6F7F9; border-radius:12px; overflow:hidden; box-shadow:0 2px 16px rgba(1,1,1,.07); margin-bottom:40px; }

.dsg-header { background:#fff; border-bottom:1px solid rgba(1,1,1,.08); padding:22px 28px; }
.dsg-header-inner { display:flex; align-items:center; max-width:1200px; margin:0 auto; }
.dsg-header-title { display:flex; align-items:center; gap:14px; color:#e67e22; }
.dsg-header-title h1 { font-size:24px; font-weight:700; margin:0 0 4px; color:#010101; line-height:1.2; }
.dsg-header-title p  { font-size:13px; color:#666; margin:0; }

.dsg-tabs { background:#fff; border-bottom:2px solid rgba(1,1,1,.08); padding:0 28px; }
.dsg-tabs-inner { display:flex; max-width:1200px; margin:0 auto; }
.dsg-tab { display:flex; align-items:center; gap:7px; padding:16px 22px; border:none; border-bottom:3px solid transparent; background:transparent; font-family:inherit; font-size:14px; font-weight:600; color:#666; cursor:pointer; transition:color .15s,border-color .15s; white-space:nowrap; margin-bottom:-2px; outline:none !important; box-shadow:none !important; }
.dsg-tab:hover { color:#e67e22; }
.dsg-tab:focus, .dsg-tab:active { outline:none; box-shadow:none; }
.dsg-tab.active { color:#e67e22; border-bottom-color:#e67e22; }

.dsg-panel { display:none; }
.dsg-panel.active { display:block; }

/* BUSCADOR */
.dsg-filtros { background:#fff; border-bottom:1px solid rgba(1,1,1,.08); padding:16px 28px; display:flex; align-items:flex-end; gap:12px; flex-wrap:wrap; }
.dsg-filter-group { display:flex; flex-direction:column; gap:6px; flex:1; min-width:200px; }
.dsg-filter-group label { font-size:11px; font-weight:700; color:#444; text-transform:uppercase; letter-spacing:.5px; }
.dsg-filter-group select { height:44px; border:1.5px solid #CAD0D9; border-radius:8px; padding:0 32px 0 12px; font-size:14px; font-family:inherit; color:#010101; background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23999' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right 12px center; cursor:pointer; transition:border-color .15s; outline:none; appearance:none; -webkit-appearance:none; }
.dsg-filter-group select:focus { border-color:#e67e22; }
.dsg-btn-geo { height:44px; padding:0 16px; border:1.5px solid #e67e22; border-radius:8px; background:#fff; color:#e67e22; font-size:13px; font-weight:600; font-family:inherit; cursor:pointer; display:flex; align-items:center; gap:6px; transition:all .15s; white-space:nowrap; outline:none; }
.dsg-btn-geo:hover { background:#e67e22; color:#fff; }

.dsg-main { display:grid; grid-template-columns:1fr 360px; gap:20px; max-width:1200px; margin:0 auto; padding:20px 28px; box-sizing:border-box; }
.dsg-mapa-wrap { position:relative; border-radius:12px; overflow:hidden; box-shadow:0 2px 8px rgba(1,1,1,.08); }
#dsg-map { width:100%; height:700px; background:#e8eef4; }
.dsg-map-msg { position:absolute; inset:0; background:rgba(255,255,255,.93); display:flex; flex-direction:column; align-items:center; justify-content:center; gap:16px; z-index:1000; border-radius:12px; }
.dsg-map-msg p { font-size:14px; color:#666; text-align:center; max-width:260px; margin:0; line-height:1.5; }

.dsg-lista-wrap { background:#fff; border-radius:12px; box-shadow:0 2px 8px rgba(1,1,1,.08); display:flex; flex-direction:column; overflow:hidden; height:700px; }
.dsg-list-header { padding:12px 16px; border-bottom:1px solid rgba(1,1,1,.07); background:#F6F7F9; flex-shrink:0; }
.dsg-list-header span { font-size:13px; font-weight:700; color:#333; }
#dsg-list { flex:1; overflow-y:auto; }
.dsg-card { padding:14px 16px; border-bottom:1px solid rgba(1,1,1,.06); cursor:pointer; transition:background .12s; }
.dsg-card:hover { background:#FFF5EE; }
.dsg-card-nombre { font-size:13px; font-weight:700; color:#010101; margin:0 0 4px; }
.dsg-card-dir    { font-size:12px; color:#555; margin:0 0 8px; line-height:1.4; }
.dsg-card-tags   { display:flex; gap:6px; flex-wrap:wrap; }
.dsg-tag         { font-size:11px; font-weight:600; padding:3px 8px; border-radius:4px; background:#F6F7F9; color:#555; }
.dsg-tag.blue    { background:rgba(230,126,34,.1); color:#e67e22; }
.dsg-tag-link    { text-decoration:none; }
.dsg-tag-link:hover { background:rgba(230,126,34,.2); }
.dsg-empty   { display:flex; flex-direction:column; align-items:center; justify-content:center; padding:40px 20px; gap:12px; color:#888; font-size:13px; text-align:center; }
.dsg-loading { display:flex; flex-direction:column; align-items:center; justify-content:center; padding:40px 20px; gap:16px; font-size:14px; color:#666; }
.dsg-spinner { width:28px; height:28px; border:3px solid rgba(230,126,34,.2); border-top-color:#e67e22; border-radius:50%; animation:dsg-spin .7s linear infinite; }
@keyframes dsg-spin { to { transform:rotate(360deg); } }

/* INFO */
.dsg-info-wrap { max-width:900px; margin:0 auto; padding:32px 28px; }
.dsg-info-intro { background:rgba(230,126,34,.06); border-left:4px solid #e67e22; border-radius:0 8px 8px 0; padding:20px 24px; margin-bottom:32px; }
.dsg-info-intro h2 { font-size:18px; font-weight:700; color:#010101; margin:0 0 10px; }
.dsg-info-intro p { font-size:14px; color:#333; line-height:1.7; margin:0; }

.dsg-pasos h2, .dsg-faqs h2 { font-size:20px; font-weight:700; color:#010101; margin:0 0 20px; }
.dsg-pasos-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-bottom:36px; }
.dsg-paso { background:#fff; border-radius:12px; padding:20px; box-shadow:0 2px 8px rgba(1,1,1,.06); display:flex; gap:16px; align-items:flex-start; }
.dsg-paso-num { width:32px; height:32px; border-radius:50%; background:#e67e22; color:#fff; font-size:15px; font-weight:700; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.dsg-paso-titulo { font-size:14px; font-weight:700; color:#010101; margin-bottom:6px; }
.dsg-paso-desc   { font-size:13px; color:#555; line-height:1.6; }

.dsg-faqs { margin-bottom:32px; }
.dsg-faq { background:#fff; border-radius:10px; padding:18px 20px; margin-bottom:10px; box-shadow:0 1px 4px rgba(1,1,1,.05); }
.dsg-faq-q { font-size:14px; font-weight:700; color:#010101; margin-bottom:8px; }
.dsg-faq-a { font-size:13px; color:#555; line-height:1.6; }

.dsg-cta { text-align:center; }
.dsg-btn-primary { height:48px; padding:0 32px; border:none; border-radius:8px; background:#e67e22; color:#fff; font-size:15px; font-weight:700; font-family:inherit; cursor:pointer; transition:background .15s; outline:none; }
.dsg-btn-primary:hover { background:#d35400; }

/* RESPONSIVE */
@media (max-width:900px) {
    .dsg-main { grid-template-columns:1fr; padding:16px; }
    #dsg-map { height:380px; }
    .dsg-lista-wrap { height:360px; }
    .dsg-pasos-grid { grid-template-columns:1fr; }
}
@media (max-width:600px) {
    .dsg-header { padding:16px; }
    .dsg-tabs { padding:0 10px; }
    .dsg-tab { padding:14px 12px; font-size:12px; }
    .dsg-filtros { padding:12px 14px; }
    .dsg-filter-group { min-width:100%; }
    .dsg-btn-geo { width:100%; justify-content:center; }
    .dsg-info-wrap { padding:20px 14px; }
}
