
:root{--gris:#ededed;--naranja:#ff8000;--borde:#d9d9d9;--sombra:0 8px 24px #0002}*{box-sizing:border-box}body{font-family:Arial,sans-serif;background:var(--gris);margin:0;padding:18px;color:#222}h2,h3{text-align:center;margin:10px 0}.sub{text-align:center;color:#555}.panel{background:white;padding:14px;margin:14px 0;border-radius:12px;box-shadow:var(--sombra);display:flex;gap:10px;flex-wrap:wrap;align-items:center}select,input,textarea,button{padding:8px 10px;border:1px solid var(--borde);border-radius:8px;background:white}button{cursor:pointer;font-weight:700;transition:.15s}button:hover{background:#f7f7f7;transform:translateY(-1px)}.pri{background:var(--naranja);border-color:var(--naranja);color:white}.dark{background:#222;color:white;border-color:#222}textarea{min-width:330px;min-height:42px;flex:1}#grafica{width:100%;height:580px;background:white;border-radius:12px;box-shadow:var(--sombra)}.selwrap{display:grid;grid-template-columns:180px minmax(330px,1fr) auto auto auto;gap:10px;width:100%;align-items:start}#conduccionesSelect{width:100%;min-height:132px}.nota,.contador{font-size:12px;color:#666;margin-top:4px}.chips{display:flex;gap:8px;flex-wrap:wrap;width:100%}.chip{border:1px solid var(--borde);border-radius:999px;padding:5px 9px;background:#fafafa;font-size:12px}.grid{display:grid;grid-template-columns:repeat(5,minmax(220px,1fr));gap:12px;width:100%}.col{background:#fff;border:1px solid var(--borde);border-radius:12px;padding:10px}.col h4{margin:0 0 8px;padding-bottom:7px;border-bottom:3px solid var(--naranja);display:flex;justify-content:space-between}.badge{background:#222;color:#fff;border-radius:999px;padding:2px 7px;font-size:11px}.item{display:flex;gap:6px;align-items:flex-start;margin:7px 0;font-size:12px;line-height:1.2}.sw{font-size:16px;line-height:12px}.kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(160px,1fr));gap:12px;width:100%}.kpi{border:1px solid var(--borde);border-radius:14px;padding:12px;background:#fff;box-shadow:0 4px 12px #0001;cursor:default}.kpi:hover{outline:3px solid #ff800055}.kpi .lbl{font-size:12px;color:#555;font-weight:700;text-transform:uppercase}.kpi .val{font-size:26px;font-weight:800;margin:4px 0}.kpi .ideal-val{color:var(--naranja)}.kpi .desc{font-size:12px;color:#666}.ralenti{border-top:5px solid #dc3545}.inercia{border-top:5px solid #0d6efd}.verde{border-top:5px solid #198754}.alto{border-top:5px solid #ff8000}.mse{border-top:5px solid #6f42c1}@media(max-width:1150px){.selwrap{grid-template-columns:1fr}.grid,.kpi-grid{grid-template-columns:1fr 1fr}}@media(max-width:700px){.grid,.kpi-grid{grid-template-columns:1fr}#grafica{height:520px}}

/* ===== TEPU polish + Mobile UX + records ===== */
body{background:linear-gradient(180deg,#ededed 0%,#f7f7f7 100%)}
h2{letter-spacing:.2px;position:relative}h2:after{content:"";display:block;width:78px;height:4px;background:var(--naranja);border-radius:99px;margin:8px auto 0}.sub{font-weight:600}.panel{border:1px solid rgba(255,128,0,.10);position:relative}.panel:before{content:"";position:absolute;left:14px;right:14px;top:0;height:3px;background:linear-gradient(90deg,var(--naranja),rgba(255,128,0,.15));border-radius:0 0 99px 99px;opacity:.65}select:focus,input:focus,textarea:focus{outline:2px solid rgba(255,128,0,.25);border-color:var(--naranja)}.badge{background:var(--naranja)!important}.chip{border-color:rgba(255,128,0,.28);background:#fff7ef}.chip.auto{background:#fff3e6;border-color:#ff8000;color:#9a4b00;font-weight:700}.pri{box-shadow:0 6px 14px rgba(255,128,0,.25)}.col{transition:.15s}.col:hover{border-color:rgba(255,128,0,.45);box-shadow:0 8px 18px rgba(255,128,0,.10)}.kpi{transition:.15s}.kpi:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(255,128,0,.12)}.item span:last-child{overflow-wrap:anywhere;word-break:normal}.col button{width:auto;min-width:82px}.panel.records-panel{overflow:hidden}
@media(max-width:700px){body{padding:10px}h2{font-size:22px}.sub{font-size:13px;line-height:1.35}.panel{padding:12px;margin:10px 0;border-radius:14px}.selwrap{grid-template-columns:1fr!important;gap:8px}select,input,textarea,button{width:100%;font-size:15px;padding:11px 12px}#conduccionesSelect{min-height:155px}.kpi-grid{grid-template-columns:1fr 1fr!important;gap:9px}.kpi{padding:10px;border-radius:12px}.kpi .lbl{font-size:10px}.kpi .val{font-size:21px}.kpi .desc{font-size:10px}.grid{grid-template-columns:1fr!important;gap:10px}.panel.records-panel{padding:10px;background:transparent;box-shadow:none;border:0}.panel.records-panel:before{display:none}.col{padding:10px;border-radius:16px;background:#fff;box-shadow:0 6px 18px rgba(0,0,0,.07);overflow:hidden}.col h4{font-size:15px;align-items:center;line-height:1.2}.col h4 .badge{font-size:12px;padding:4px 9px}.col>button{width:calc(50% - 4px)!important;display:inline-block;margin:8px 2px 4px;padding:10px 8px;border-color:rgba(255,128,0,.35);color:#0d6efd;background:#fff}.item{background:#fafafa;border:1px solid #eee;border-left:4px solid var(--naranja);border-radius:12px;padding:9px 8px;margin:8px 0;font-size:12px;align-items:flex-start}.item input{width:auto!important;margin-top:2px;flex:0 0 auto}.item .sw{flex:0 0 auto;margin-top:2px}.item span:last-child{display:block;max-width:100%;line-height:1.25;overflow-wrap:anywhere}#grafica{height:72vh;min-height:560px;border:1px solid rgba(255,128,0,.18)}.nota,.contador{font-size:11px}.chips{gap:6px}.chip{font-size:11px}}
@media(max-width:420px){.kpi-grid{grid-template-columns:1fr!important}#grafica{height:76vh;min-height:590px}}


/* ===== Knowledge sections redesign ===== */
.knowledge-panel{width:100%;background:linear-gradient(135deg,#ffffff 0%,#fff8f1 100%);border:1px solid rgba(255,128,0,.18);border-radius:18px;padding:18px;margin:16px 0;box-shadow:0 10px 30px rgba(33,33,33,.08);position:relative;overflow:hidden}.knowledge-panel:before{content:"";position:absolute;inset:0 auto 0 0;width:6px;background:linear-gradient(180deg,#ff8000,#ffb36a)}.knowledge-header{width:100%;padding-left:6px;margin-bottom:12px}.knowledge-header .eyebrow{display:inline-flex;background:#fff0df;color:#9a4b00;border:1px solid rgba(255,128,0,.24);border-radius:999px;padding:5px 10px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.6px}.knowledge-header h3{text-align:left;margin:10px 0 4px;font-size:20px}.knowledge-header p{margin:0;color:#5f6368;font-size:13px;line-height:1.45}.physics-grid{display:grid;grid-template-columns:repeat(4,minmax(170px,1fr));gap:12px;width:100%}.physics-card{background:rgba(255,255,255,.86);border:1px solid rgba(0,0,0,.08);border-radius:16px;padding:14px;min-height:190px;transition:.18s ease;box-shadow:0 6px 18px rgba(0,0,0,.05);position:relative;overflow:hidden}.physics-card:after{content:"";position:absolute;right:-30px;bottom:-30px;width:90px;height:90px;border-radius:50%;background:rgba(255,128,0,.08);transition:.18s}.physics-card:hover{transform:translateY(-4px);box-shadow:0 14px 32px rgba(255,128,0,.16);border-color:rgba(255,128,0,.45)}.physics-card:hover:after{transform:scale(1.45);background:rgba(255,128,0,.14)}.physics-card h4{margin:8px 0 7px;font-size:16px}.physics-card p{margin:0;color:#4f4f4f;font-size:12.5px;line-height:1.46}.zone-tag{display:inline-block;font-size:11px;font-weight:800;border-radius:999px;padding:4px 9px;background:#f3f4f6;color:#333}.physics-card.idle{border-top:4px solid #dc3545}.physics-card.inertia{border-top:4px solid #0d6efd}.physics-card.green{border-top:4px solid #198754}.physics-card.wear{border-top:4px solid #ff8000}.metric-strip{display:grid;grid-template-columns:repeat(4,minmax(190px,1fr));gap:12px;width:100%}.metric-card{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:16px;padding:14px;transition:.18s ease;box-shadow:0 6px 18px rgba(0,0,0,.05);position:relative}.metric-card:hover{transform:translateY(-3px);box-shadow:0 16px 34px rgba(0,0,0,.10);border-color:rgba(255,128,0,.42)}.metric-card.featured{background:linear-gradient(135deg,#fff 0%,#fff2e6 100%);border-color:rgba(255,128,0,.35)}.metric-dot{display:inline-block;width:12px;height:12px;border-radius:50%;margin-bottom:8px;box-shadow:0 0 0 4px rgba(255,128,0,.08)}.metric-dot.march{background:#20c997}.metric-dot.idle{background:#dc3545}.metric-dot.wear{background:#ff8000}.metric-dot.mse{background:#6f42c1}.metric-card h4{margin:0 0 7px;font-size:15px}.metric-card p{margin:0;color:#555;font-size:12.8px;line-height:1.45}@media(max-width:1100px){.physics-grid,.metric-strip{grid-template-columns:repeat(2,minmax(220px,1fr))}}@media(max-width:700px){.knowledge-panel{padding:14px 12px 14px 16px;border-radius:16px;margin:12px 0}.knowledge-header h3{font-size:17px}.knowledge-header p{font-size:12px}.physics-grid,.metric-strip{grid-template-columns:1fr;gap:10px}.physics-card,.metric-card{min-height:unset;padding:12px}.physics-card p,.metric-card p{font-size:12px}.zone-tag{font-size:10px}.knowledge-panel:before{width:5px}}


/* ===== PNG mobile professional export ===== */
#pngExportModal{position:fixed;inset:0;background:rgba(0,0,0,.68);z-index:999999;display:none;align-items:center;justify-content:center;padding:14px}#pngExportModal.show{display:flex}.pngExportCard{width:min(920px,96vw);max-height:92vh;background:#fff;border-radius:18px;box-shadow:0 24px 80px rgba(0,0,0,.38);overflow:hidden;border:1px solid rgba(255,128,0,.30)}.pngExportHead{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;background:#fff8f1;border-bottom:1px solid #eee}.pngExportHead h3{margin:0;text-align:left;font-size:16px}.pngExportClose{width:auto!important;padding:8px 10px!important;border:1px solid #ddd!important;background:#fff!important;color:#222!important}.pngExportBody{padding:12px;overflow:auto;max-height:66vh}.pngExportBody img{width:100%;height:auto;display:block;background:#fff;border:1px solid #eee;border-radius:12px}.pngExportHint{margin:10px 0 0;color:#555;font-size:12px;line-height:1.35}.pngExportActions{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:12px;background:#fff;border-top:1px solid #eee}.pngExportActions button,.pngExportActions a{text-decoration:none;text-align:center;border-radius:10px;border:1px solid #ddd;background:#fff;color:#0d6efd;font-weight:800;padding:11px 12px;font-size:14px}.pngExportActions .primary{background:#ff8000!important;border-color:#ff8000!important;color:#fff!important}@media(max-width:700px){#pngExportModal{padding:0}.pngExportCard{width:100vw;height:100vh;max-height:100vh;border-radius:0}.pngExportHead{padding:12px}.pngExportBody{max-height:70vh}.pngExportActions{grid-template-columns:1fr;position:sticky;bottom:0}.pngExportActions button,.pngExportActions a{width:100%}}


/* ===== Opción 4 PRO: automático + corrección manual mínima ===== */
.carga-panel{align-items:flex-end}.field-mini{display:flex;flex-direction:column;gap:4px;min-width:150px}.field-mini label{font-size:11px;font-weight:800;color:#555;text-transform:uppercase;letter-spacing:.35px}.field-mini input,.field-mini select{width:100%;height:38px}.mini-help{font-size:10.5px;color:#777;line-height:1.15}.grid{grid-template-columns:repeat(6,minmax(210px,1fr))}.col.route-card{padding:11px;border-radius:16px;background:linear-gradient(180deg,#fff 0%,#fffaf5 100%);border-color:rgba(255,128,0,.22)}.route-sub{font-size:11px;color:#666;margin:-2px 0 8px;line-height:1.25}.record-row{display:grid;grid-template-columns:auto 12px 1fr auto;gap:7px;align-items:center;width:100%;background:#fff;border:1px solid #eee;border-radius:12px;padding:7px;margin:7px 0}.record-row input[type="checkbox"]{width:auto!important;margin:0}.record-name{font-weight:700;color:#222;line-height:1.2;overflow-wrap:anywhere}.route-pill{font-size:10px;font-weight:900;border-radius:999px;padding:3px 7px;background:#fff3e6;color:#9a4b00;border:1px solid #ffd1a3;white-space:nowrap}.edit-btn{min-width:58px!important;padding:6px 8px!important;font-size:11px!important;background:#fff!important;border-color:#ddd!important;color:#0d6efd!important}.edit-box{display:none;grid-column:1/-1;background:#fafafa;border:1px dashed rgba(255,128,0,.38);border-radius:12px;padding:8px;margin-top:5px}.record-row.editing .edit-box{display:grid;grid-template-columns:1fr 1fr 130px auto;gap:7px}.edit-box input,.edit-box select{width:100%;font-size:12px;padding:7px 8px}.save-btn{background:#ff8000!important;color:#fff!important;border-color:#ff8000!important;min-width:72px!important;font-size:11px!important;padding:7px 9px!important}.class-chip{display:inline-flex;gap:4px;align-items:center;font-size:10px;color:#777;margin-top:3px}.panel.records-panel{overflow:visible}
@media(max-width:1240px){.grid{grid-template-columns:repeat(3,minmax(220px,1fr))}}
@media(max-width:900px){.grid{grid-template-columns:repeat(2,minmax(220px,1fr))}.record-row.editing .edit-box{grid-template-columns:1fr}.save-btn{width:100%!important}.field-mini{min-width:100%;width:100%}}
@media(max-width:700px){.grid{grid-template-columns:1fr!important}.record-row{grid-template-columns:auto 12px 1fr auto;padding:9px}.record-name{font-size:12px}.route-pill{font-size:9.5px}.edit-btn{min-width:54px!important}.carga-panel{align-items:stretch}.field-mini label{font-size:10px}.field-mini input,.field-mini select{height:auto}.mini-help{font-size:10px}}


/* ===== Historial de análisis / descarga PRO ===== */
.analysis-download-panel{width:100%;margin:18px 0 8px}.analysis-card{position:relative;display:grid;grid-template-columns:1.35fr 1.1fr auto;gap:14px;align-items:center;background:linear-gradient(135deg,#ffffff 0%,#fff7ef 62%,#ededed 100%);border:1px solid rgba(255,128,0,.28);border-radius:22px;padding:17px 18px 17px 20px;box-shadow:0 14px 34px rgba(32,32,32,.10);overflow:hidden}.analysis-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:7px;background:linear-gradient(180deg,#ff8000,#ffb15c,#ff8000)}.analysis-card:after{content:"";position:absolute;right:-55px;top:-55px;width:150px;height:150px;border-radius:50%;background:rgba(255,128,0,.10);pointer-events:none}.analysis-copy{position:relative;z-index:1}.analysis-kicker{display:inline-flex;align-items:center;gap:6px;background:#fff0df;color:#994d00;border:1px solid rgba(255,128,0,.26);border-radius:999px;padding:5px 10px;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.5px}.analysis-copy h3{text-align:left;margin:9px 0 3px;font-size:20px}.analysis-copy p{margin:0;color:#5f6368;font-size:12.5px;line-height:1.35}.analysis-meta{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;background:rgba(255,255,255,.68);border:1px solid rgba(255,128,0,.14);border-radius:16px;padding:10px}.analysis-field label{display:block;font-size:10px;font-weight:900;color:#8a4a08;text-transform:uppercase;letter-spacing:.35px;margin-bottom:4px}.analysis-field input{width:100%;font-size:12px;padding:8px 9px;border-radius:10px;background:#fff}.analysis-summary{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,minmax(78px,1fr));gap:7px;margin-top:9px}.analysis-chip{background:#fff;border:1px solid rgba(255,128,0,.18);border-radius:13px;padding:8px 9px;min-height:52px}.analysis-chip b{display:block;font-size:11px;color:#777;margin-bottom:3px}.analysis-chip span{font-size:13px;font-weight:900;color:#222;overflow-wrap:anywhere}.analysis-actions{position:relative;z-index:1;display:flex;flex-direction:column;gap:7px;align-items:stretch}.analysis-download{background:#ff8000!important;color:#fff!important;border-color:#ff8000!important;border-radius:14px!important;padding:13px 16px!important;min-width:170px!important;box-shadow:0 9px 20px rgba(255,128,0,.24)}.analysis-download:hover{background:#e87400!important;transform:translateY(-1px)}.analysis-note{font-size:10.5px;color:#7a4a19;text-align:center;line-height:1.25}.analysis-empty{color:#777!important;font-weight:700!important}
@media(max-width:1150px){.analysis-card{grid-template-columns:1fr}.analysis-actions{align-items:flex-start}.analysis-download{width:auto!important}.analysis-summary{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.analysis-card{border-radius:18px;padding:15px 13px 15px 17px}.analysis-copy h3{font-size:17px}.analysis-copy p{font-size:12px}.analysis-meta{grid-template-columns:1fr}.analysis-summary{grid-template-columns:1fr 1fr}.analysis-download{width:100%!important}.analysis-actions{align-items:stretch}.analysis-chip{padding:8px}.analysis-chip span{font-size:12px}}


/* ===== Selector superior TECH refinado ===== */
.selector-panel{position:relative;display:block;overflow:hidden;padding:18px;border:1px solid rgba(255,128,0,.18);background:linear-gradient(135deg,#ffffff 0%,#fffaf5 52%,#f5f5f5 100%)}.selector-panel:before{display:none}.selector-glow{position:absolute;right:-90px;top:-90px;width:230px;height:230px;border-radius:50%;background:radial-gradient(circle,rgba(255,128,0,.22),rgba(255,128,0,0) 68%);pointer-events:none}.selector-head{position:relative;z-index:1;margin-bottom:14px}.selector-kicker{display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(255,128,0,.30);background:#fff0df;color:#9a4b00;border-radius:999px;padding:5px 11px;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.55px}.selector-head h3{text-align:left;margin:8px 0 3px;font-size:20px}.selector-head p{margin:0;color:#5f6368;font-size:12.8px;line-height:1.4}.selector-grid{position:relative;z-index:1;grid-template-columns:minmax(180px,.65fr) minmax(360px,1.45fr) minmax(170px,.46fr)!important;align-items:stretch}.selector-card{background:rgba(255,255,255,.84);border:1px solid rgba(255,128,0,.18);border-radius:17px;padding:12px;box-shadow:0 8px 18px rgba(0,0,0,.04);transition:.18s ease}.selector-card:hover{border-color:rgba(255,128,0,.42);box-shadow:0 16px 30px rgba(255,128,0,.12);transform:translateY(-1px)}.selector-card label{display:block;font-size:11px;font-weight:900;color:#8a4a08;text-transform:uppercase;letter-spacing:.42px;margin-bottom:7px}.selector-card select{width:100%;border-radius:12px}.selector-list-card #conduccionesSelect{min-height:132px;border-color:rgba(255,128,0,.24);background:linear-gradient(180deg,#fff,#fffdf9)}.selector-actions{display:grid;grid-template-columns:1fr;gap:8px;align-content:center}.selector-actions button{border-radius:14px!important;padding:12px 13px!important;min-width:unset!important;position:relative;overflow:hidden}.selector-actions button:active{transform:scale(.985)!important}.tech-main{background:linear-gradient(135deg,#ff8000,#ff9d3b)!important;border-color:#ff8000!important;box-shadow:0 10px 22px rgba(255,128,0,.28)!important}.tech-main:after,.tech-secondary:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.42),transparent);transform:translateX(-120%);transition:.35s}.tech-main:hover:after,.tech-secondary:hover:after{transform:translateX(120%)}.tech-secondary{background:#fff!important;border-color:rgba(255,128,0,.28)!important;color:#9a4b00!important}.tech-secondary:hover{background:#fff7ef!important;border-color:#ff8000!important;box-shadow:0 8px 18px rgba(255,128,0,.12)}.selector-chips{position:relative;z-index:1;margin-top:12px}.selector-chips .chip{box-shadow:0 5px 13px rgba(255,128,0,.08)}
@media(max-width:1150px){.selector-grid{grid-template-columns:1fr!important}.selector-actions{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.selector-panel{padding:14px}.selector-head h3{font-size:17px}.selector-head p{font-size:12px}.selector-actions{grid-template-columns:1fr}.selector-card{padding:11px;border-radius:15px}.selector-list-card #conduccionesSelect{min-height:150px}.selector-actions button{width:100%!important}}


/* ===== Header Auditoria PRO ===== */
.app-hero{position:relative;overflow:hidden;margin:0 0 16px;padding:24px 18px;border-radius:24px;background:linear-gradient(135deg,#ffffff 0%,#fff7ef 56%,#ededed 100%);border:1px solid rgba(255,128,0,.22);box-shadow:0 16px 38px rgba(32,32,32,.10)}.app-hero:before{content:"";position:absolute;left:0;top:0;bottom:0;width:8px;background:linear-gradient(180deg,#ff8000,#ffb562,#ff8000)}.app-hero:after{content:"";position:absolute;right:-80px;top:-80px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(255,128,0,.18),rgba(255,128,0,0) 68%);pointer-events:none}.hero-orbit{position:absolute;right:70px;bottom:-55px;width:180px;height:180px;border-radius:50%;border:1px solid rgba(255,128,0,.18);box-shadow:0 0 0 18px rgba(255,128,0,.04),0 0 0 40px rgba(255,128,0,.025)}.hero-content{position:relative;z-index:1;max-width:960px;margin:auto;text-align:center}.hero-eyebrow{display:inline-flex;border:1px solid rgba(255,128,0,.28);background:#fff0df;color:#9a4b00;border-radius:999px;padding:6px 12px;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.65px}.app-hero h1{margin:10px 0 0;font-size:clamp(34px,6vw,62px);line-height:.95;font-weight:950;letter-spacing:1.5px;color:#222}.app-hero h2{margin:6px 0 0;font-size:clamp(18px,2.6vw,30px);letter-spacing:.3px;color:#ff8000}.app-hero h2:after{display:none}.app-hero p{margin:8px 0 0;color:#555;font-size:clamp(13px,1.7vw,16px);font-weight:700}
/* ===== Carga manual / archivos PRO ===== */
.manual-panel{position:relative;display:block;overflow:hidden;padding:18px;border:1px solid rgba(255,128,0,.18);background:linear-gradient(135deg,#ffffff 0%,#fffdf9 50%,#ededed 100%)}.manual-panel:before{display:none}.manual-bg{position:absolute;left:-80px;bottom:-90px;width:230px;height:230px;border-radius:50%;background:radial-gradient(circle,rgba(255,128,0,.18),rgba(255,128,0,0) 70%);pointer-events:none}.manual-head{position:relative;z-index:1;margin-bottom:14px}.manual-kicker{display:inline-flex;align-items:center;background:#fff0df;color:#9a4b00;border:1px solid rgba(255,128,0,.28);border-radius:999px;padding:5px 11px;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.55px}.manual-head h3{text-align:left;margin:8px 0 3px;font-size:20px}.manual-head p{margin:0;color:#5f6368;font-size:12.8px;line-height:1.4}.manual-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(160px,.8fr) minmax(160px,.8fr) minmax(170px,.9fr) minmax(320px,1.55fr);gap:10px;align-items:stretch}.manual-card{background:rgba(255,255,255,.88);border:1px solid rgba(255,128,0,.18);border-radius:17px;padding:12px;box-shadow:0 8px 18px rgba(0,0,0,.04);transition:.18s ease}.manual-card:hover{border-color:rgba(255,128,0,.42);box-shadow:0 16px 30px rgba(255,128,0,.12);transform:translateY(-1px)}.manual-card label{display:block;font-size:11px;font-weight:900;color:#8a4a08;text-transform:uppercase;letter-spacing:.42px;margin-bottom:7px}.manual-card input,.manual-card select,.manual-card textarea{width:100%;border-radius:12px;border-color:rgba(255,128,0,.22);background:#fff}.manual-card textarea{min-width:0;min-height:82px;resize:vertical}.manual-help{font-size:10.5px;color:#7a4a19;margin-top:6px;line-height:1.25}.rpm-card{grid-column:auto}.manual-actions{grid-column:1/-1;display:grid;grid-template-columns:repeat(8,minmax(110px,1fr));gap:8px;margin-top:2px}.manual-actions button{border-radius:14px!important;padding:11px 10px!important;min-width:unset!important;position:relative;overflow:hidden;background:#fff;border-color:rgba(255,128,0,.28);color:#784305}.manual-actions button:hover{background:#fff7ef!important;border-color:#ff8000!important;box-shadow:0 8px 18px rgba(255,128,0,.12)}.manual-actions button:active{transform:scale(.985)!important}.manual-actions button:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.45),transparent);transform:translateX(-120%);transition:.35s}.manual-actions button:hover:after{transform:translateX(120%)}.manual-primary{background:linear-gradient(135deg,#ff8000,#ff9d3b)!important;border-color:#ff8000!important;color:#fff!important;box-shadow:0 10px 22px rgba(255,128,0,.28)!important}.manual-danger{background:#222!important;color:#fff!important;border-color:#222!important}.manual-danger:hover{background:#3a3a3a!important;border-color:#3a3a3a!important}.manual-footer-note{position:relative;z-index:1;margin-top:10px;padding:9px 11px;border-radius:13px;background:#fff7ef;border:1px solid rgba(255,128,0,.18);color:#7a4a19;font-size:12px;font-weight:700}

/* ===== Header institucional tipo footer ===== */
.ado-app-header{position:relative;margin:-18px -18px 18px;background:linear-gradient(135deg,#5a2b86 0%,#4b2475 48%,#34185f 100%);border-top:4px solid #e41c2c;color:#fff;overflow:hidden;box-shadow:0 18px 42px rgba(33,20,54,.22)}.ado-app-header:before{content:"";position:absolute;right:-100px;top:-130px;width:330px;height:330px;border-radius:50%;background:radial-gradient(circle,rgba(255,128,0,.18),rgba(255,128,0,.02) 44%,transparent 70%);pointer-events:none}.ado-app-header:after{content:"";position:absolute;left:-90px;bottom:-120px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.08),transparent 68%);pointer-events:none}.ado-header-inner{position:relative;z-index:1;max-width:1290px;margin:0 auto;padding:44px 24px 38px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:26px;align-items:center}.ado-header-kicker{display:inline-flex;align-items:center;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.08);color:#fff;border-radius:999px;padding:7px 13px;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.75px}.ado-header-copy h1{margin:13px 0 0;color:#fff;font-weight:950;font-size:clamp(36px,6vw,72px);line-height:.9;letter-spacing:1.8px;text-align:left}.ado-header-subtitle{margin-top:10px;color:#ffb15c;font-size:clamp(18px,2.4vw,31px);font-weight:950;letter-spacing:.35px}.ado-header-copy p{max-width:760px;margin:9px 0 0;color:rgba(255,255,255,.80);font-size:clamp(13px,1.45vw,16px);font-weight:700;line-height:1.35}.ado-header-mark{width:142px;height:142px;border-radius:32px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);display:grid;place-items:center;position:relative;box-shadow:inset 0 0 0 1px rgba(255,128,0,.10),0 18px 50px rgba(0,0,0,.16)}.ado-header-mark span{position:absolute;border-radius:999px;border:2px solid rgba(255,128,0,.46)}.ado-header-mark span:nth-child(1){width:92px;height:92px}.ado-header-mark span:nth-child(2){width:58px;height:58px;border-color:rgba(255,255,255,.32)}.ado-header-mark span:nth-child(3){width:12px;height:12px;background:#ff8000;border-color:#ff8000;box-shadow:0 0 0 9px rgba(255,128,0,.16)}
/* neutraliza el header anterior si queda CSS heredado */
.app-hero,.hero-content,.hero-orbit,.hero-eyebrow{all:unset}
@media(max-width:800px){.ado-app-header{margin:-10px -10px 12px}.ado-header-inner{grid-template-columns:1fr;padding:34px 20px 30px}.ado-header-mark{display:none}.ado-header-copy h1{text-align:left}.ado-header-kicker{font-size:10px;line-height:1.25}.ado-header-copy p{font-size:12.5px}}
@media(max-width:430px){.ado-header-inner{padding:30px 18px 26px}.ado-header-copy h1{font-size:40px}.ado-header-subtitle{font-size:19px}.ado-header-kicker{border-radius:15px}}


/* ===== Header compacto final: estándar, limpio y pro ===== */
.ado-app-header.compact-header{margin:-18px -18px 14px;background:linear-gradient(135deg,#542783 0%,#4b2475 54%,#33175d 100%);border-top:4px solid #e41c2c;color:#fff;min-height:92px;box-shadow:0 10px 26px rgba(33,20,54,.18)}.ado-app-header.compact-header:before{right:-68px;top:-90px;width:210px;height:210px;background:radial-gradient(circle,rgba(255,128,0,.14),rgba(255,128,0,.02) 44%,transparent 70%)}.ado-app-header.compact-header:after{display:none}.compact-header .ado-header-inner{max-width:1290px;min-height:88px;padding:15px 24px 14px;display:flex;align-items:center;justify-content:space-between;gap:18px}.compact-header .ado-header-copy{display:flex;flex-direction:column;justify-content:center;min-width:0}.compact-header .ado-header-kicker,.compact-header .ado-header-copy p{display:none!important}.compact-header .ado-header-copy h1{margin:0;color:#fff;text-align:left;font-size:clamp(28px,3.1vw,44px);line-height:.95;font-weight:950;letter-spacing:1.2px}.compact-header .ado-header-subtitle{margin-top:4px;color:#ffb15c;font-size:clamp(15px,1.7vw,22px);font-weight:950;letter-spacing:.25px}.compact-header .ado-header-mark{appearance:none;-webkit-appearance:none;cursor:pointer;flex:0 0 auto;width:70px;height:70px;border-radius:20px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.065);display:grid;place-items:center;position:relative;box-shadow:inset 0 0 0 1px rgba(255,128,0,.10),0 12px 30px rgba(0,0,0,.13);transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease, background .22s ease}.compact-header .ado-header-mark span{position:absolute;border-radius:999px;border:2px solid rgba(255,128,0,.52);transition:transform .26s ease, border-color .22s ease, box-shadow .22s ease, opacity .22s ease}.compact-header .ado-header-mark span:nth-child(1){width:48px;height:48px}.compact-header .ado-header-mark span:nth-child(2){width:30px;height:30px;border-color:rgba(255,255,255,.33)}.compact-header .ado-header-mark span:nth-child(3){width:9px;height:9px;background:#ff8000;border-color:#ff8000;box-shadow:0 0 0 7px rgba(255,128,0,.14)}.compact-header .ado-header-mark:hover{transform:translateY(-2px) scale(1.035);background:rgba(255,255,255,.095);border-color:rgba(255,128,0,.40);box-shadow:inset 0 0 0 1px rgba(255,128,0,.16),0 16px 34px rgba(255,128,0,.18)}.compact-header .ado-header-mark:hover span:nth-child(1){transform:scale(1.08) rotate(12deg);border-color:rgba(255,128,0,.88);box-shadow:0 0 18px rgba(255,128,0,.20)}.compact-header .ado-header-mark:hover span:nth-child(2){transform:scale(.92) rotate(-12deg);border-color:rgba(255,255,255,.58)}.compact-header .ado-header-mark:hover span:nth-child(3){transform:scale(1.28);box-shadow:0 0 0 9px rgba(255,128,0,.20),0 0 18px rgba(255,128,0,.55)}.compact-header .ado-header-mark:active{transform:scale(.98)}.compact-header .ado-header-mark:focus-visible{outline:3px solid rgba(255,128,0,.45);outline-offset:3px}
@media(max-width:800px){.ado-app-header.compact-header{margin:-10px -10px 12px;min-height:76px}.compact-header .ado-header-inner{min-height:72px;padding:11px 16px}.compact-header .ado-header-copy h1{font-size:30px;letter-spacing:.8px}.compact-header .ado-header-subtitle{font-size:15px}.compact-header .ado-header-mark{width:54px;height:54px;border-radius:16px}.compact-header .ado-header-mark span:nth-child(1){width:37px;height:37px}.compact-header .ado-header-mark span:nth-child(2){width:23px;height:23px}.compact-header .ado-header-mark span:nth-child(3){width:7px;height:7px}}
@media(max-width:430px){.compact-header .ado-header-inner{gap:10px}.compact-header .ado-header-copy h1{font-size:25px}.compact-header .ado-header-subtitle{font-size:13px}.compact-header .ado-header-mark{width:46px;height:46px;border-radius:14px}.compact-header .ado-header-mark span:nth-child(1){width:31px;height:31px}.compact-header .ado-header-mark span:nth-child(2){width:19px;height:19px}.compact-header .ado-header-mark span:nth-child(3){width:6px;height:6px}}


/* ===== Export simple CSV + responsive action refinement ===== */
.manual-actions{grid-template-columns:repeat(auto-fit,minmax(128px,1fr))!important}.manual-actions button[onclick="descargarCSVSimple()"]{background:#fffaf5!important;border-color:rgba(255,128,0,.42)!important;color:#9a4b00!important}.analysis-actions .secondary-download{background:#fff!important;color:#9a4b00!important;border-color:rgba(255,128,0,.38)!important;box-shadow:0 7px 16px rgba(255,128,0,.10)!important}.analysis-actions .secondary-download:hover{background:#fff7ef!important;color:#7a3d00!important;border-color:#ff8000!important}.analysis-note{margin-top:2px}
@media(max-width:700px){.manual-actions{grid-template-columns:1fr 1fr!important}}
@media(max-width:430px){.manual-actions{grid-template-columns:1fr!important}}
/* ===== Selector de conducción ideal independiente ===== */
.ideal-card select{margin-bottom:8px}.ideal-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px}.ideal-actions button{width:100%!important;min-width:0!important;border-radius:12px!important;padding:9px 8px!important;border-color:rgba(255,128,0,.32)!important;background:#fff!important;color:#8a4a08!important;font-size:12px}.ideal-actions button:hover{background:#fff7ef!important;border-color:#ff8000!important}.ideal-actions button:nth-child(2){background:#222!important;color:#fff!important;border-color:#222!important}
@media(max-width:700px){.ideal-actions{grid-template-columns:1fr}.ideal-actions button{font-size:13px}}



/* ===== Fecha por conducción + encabezado inteligente de gráfica ===== */
.chart-smart-title{width:100%;background:linear-gradient(135deg,#fff 0%,#fff7ef 62%,#f4f4f4 100%);border:1px solid rgba(255,128,0,.24);border-left:7px solid #ff8000;border-radius:18px;padding:14px 16px;margin:14px 0 10px;box-shadow:0 10px 26px rgba(32,32,32,.08);display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center}.chart-smart-title .title-eyebrow{display:inline-flex;background:#fff0df;color:#9a4b00;border:1px solid rgba(255,128,0,.25);border-radius:999px;padding:4px 9px;font-size:10px;font-weight:950;text-transform:uppercase;letter-spacing:.55px}.chart-smart-title h3{margin:7px 0 2px;text-align:left;font-size:19px}.chart-smart-title p{margin:0;color:#5f6368;font-size:12.5px;font-weight:700}.chart-date-badge{background:#222;color:#fff;border-radius:16px;padding:10px 13px;text-align:center;min-width:124px;box-shadow:0 8px 18px rgba(0,0,0,.12)}.chart-date-badge b{display:block;font-size:10px;text-transform:uppercase;color:#ffb15c;letter-spacing:.6px}.chart-date-badge span{display:block;font-size:18px;font-weight:950;margin-top:2px}.record-date{display:inline-flex;margin-top:5px;background:#fff0df;border:1px solid rgba(255,128,0,.28);color:#8a4a08;border-radius:999px;padding:3px 8px;font-size:10.5px;font-weight:900}.fecha-mini{color:#8a4a08;font-weight:900}.date-muted{color:#777;font-weight:700}@media(max-width:700px){.chart-smart-title{grid-template-columns:1fr;padding:12px 13px;border-radius:16px}.chart-smart-title h3{font-size:16px}.chart-date-badge{width:100%;min-width:0}.chart-date-badge span{font-size:16px}}


/* ===== Ajuste fino final: tarjetas de rutas responsive + edición cómoda ===== */
.records-panel{padding:12px;align-items:stretch;background:linear-gradient(135deg,#fff 0%,#fff8f1 100%)}
.records-panel .grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(265px,1fr))!important;gap:12px!important;align-items:start;width:100%}
.col.route-card{min-width:0;padding:12px;border-radius:18px;background:linear-gradient(180deg,#ffffff 0%,#fffaf5 100%);border:1px solid rgba(255,128,0,.24);box-shadow:0 8px 22px rgba(0,0,0,.06);overflow:hidden}
.col.route-card:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(255,128,0,.13)}
.route-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 8px;padding-bottom:8px;border-bottom:3px solid var(--naranja)}
.route-card-head h4{margin:0!important;padding:0!important;border:0!important;display:flex!important;align-items:center;gap:7px;min-width:0;font-size:15px;line-height:1.1}
.route-title-main{font-weight:950;letter-spacing:.2px;white-space:nowrap}
.route-date-head{margin-left:auto;font-size:11px;font-weight:950;color:#8a4a08;background:#fff0df;border:1px solid rgba(255,128,0,.34);border-radius:999px;padding:4px 8px;white-space:nowrap;box-shadow:0 4px 10px rgba(255,128,0,.08)}
.route-sub{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 9px;color:#666;font-size:11px;line-height:1.25}
.route-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-bottom:8px}
.route-actions button{width:100%!important;min-width:0!important;border-radius:12px!important;padding:8px 9px!important;border-color:rgba(255,128,0,.30)!important;color:#8a4a08!important;background:#fff!important}
.route-actions button:hover{background:#fff7ef!important;border-color:#ff8000!important}
.record-row{grid-template-columns:auto 12px minmax(0,1fr) auto auto;gap:7px;padding:8px;border-radius:14px;border-color:rgba(0,0,0,.07);box-shadow:0 3px 10px rgba(0,0,0,.03)}
.record-name{font-size:12px;line-height:1.25}
.record-date{width:max-content;max-width:100%}
.edit-box{background:#fffdf9;border:1px dashed rgba(255,128,0,.48);border-radius:14px;padding:10px;margin-top:8px}
.record-row.editing .edit-box{display:grid!important;grid-template-columns:1fr!important;gap:8px!important}
.edit-box input,.edit-box select{height:38px;font-size:13px;padding:9px 10px;border-radius:11px;background:#fff}
.save-btn{width:100%!important;border-radius:12px!important;padding:10px!important}
.manual-grid{grid-template-columns:minmax(135px,.65fr) minmax(135px,.60fr) minmax(135px,.65fr) minmax(190px,.95fr) minmax(150px,.75fr) minmax(300px,1.45fr)!important}
.fecha-card input{font-weight:800;color:#8a4a08}
/* 1. REGLA BASE (Se queda en su columna para la Línea 4) */
.rpm-card {
  width: 100%;
  min-width: 300px;
  grid-column: auto; /* Que fluya normal en la Línea 4 */
}

/* ★ LA MAGIA: Si el grid detecta que los campos de Línea 2 están presentes/visibles ★ */
/* (Cambia '.clase-de-tu-campo-ruta' por la clase real que tenga el select de "Ruta de Línea 2") */
.manual-grid:has(.clase-de-tu-campo-ruta) .rpm-card {
  grid-column: 1 / -1 !important; /* Ahora sí, oblígala a abarcar toda la fila 2 */
}

/* 2. Tu regla para pantallas hasta 1250px (Esto se queda igual) */
@media(max-width: 1250px) {
  .records-panel .grid {
    grid-template-columns: repeat(auto-fit, minmax(245px, 1fr)) !important;
  }
  .manual-grid {
    grid-template-columns: repeat(2, minmax(210px, 1fr)) !important;
  }
  .rpm-card {
    grid-column: 1 / -1 !important;
  }
}

/* 3. Pantallas móviles (Esto se queda igual) */
@media(max-width:700px) {
  .records-panel { padding:8px!important }
  .records-panel .grid { grid-template-columns:1fr!important }
  .route-card-head { align-items:flex-start }
  .route-date-head { font-size:10.5px; padding:4px 7px }
  .record-row { grid-template-columns:auto 12px minmax(0,1fr) auto; gap:7px }
  .record-row .edit-btn { grid-column:4 }
  .record-row .route-pill { display:none }
  .manual-grid { grid-template-columns:1fr!important }
  .rpm-card { grid-column:auto!important }
}
@media(max-width:700px){.records-panel{padding:8px!important}.records-panel .grid{grid-template-columns:1fr!important}.route-card-head{align-items:flex-start}.route-date-head{font-size:10.5px;padding:4px 7px}.record-row{grid-template-columns:auto 12px minmax(0,1fr) auto;gap:7px}.record-row .edit-btn{grid-column:4}.record-row .route-pill{display:none}.manual-grid{grid-template-columns:1fr!important}.rpm-card{grid-column:auto!important}}


/* ===== Multi-linea: portada, selector y modelos L2 ===== */
.linea-header-switch{display:flex;gap:7px;margin-top:9px}.linea-header-switch button{width:auto;padding:7px 13px;border-radius:999px;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.08);color:#fff;font-size:12px}.linea-header-switch button.active{background:#ff8000;border-color:#ff8000;box-shadow:0 6px 15px rgba(255,128,0,.3)}
.linea-cover{position:fixed;inset:0;z-index:1000000;background:#261044;display:grid;grid-template-columns:1fr 1fr;overflow:hidden}.linea-cover.hidden{display:none}.cover-half{border:0;border-radius:0;color:#fff;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;padding:30px}.cover-half:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.10),transparent 52%)}.cover-l2{background:linear-gradient(135deg,#ff8000,#bf5200)}.cover-l4{background:linear-gradient(135deg,#65329a,#351660)}.cover-content{position:relative;z-index:1;text-align:center;max-width:520px}.cover-kicker{font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:2px;opacity:.82}.cover-half h2{font-size:clamp(46px,8vw,100px);margin:12px 0 8px;color:#fff}.cover-half h2:after{background:#fff}.cover-half p{font-size:15px;line-height:1.5;opacity:.88}.cover-half:hover{transform:none;filter:brightness(1.06)}.cover-route-list{display:flex;gap:6px;flex-wrap:wrap;justify-content:center;margin-top:18px}.cover-route-list span{border:1px solid rgba(255,255,255,.3);background:rgba(255,255,255,.1);padding:5px 8px;border-radius:999px;font-size:11px}
.model-insight-panel{background:linear-gradient(135deg,#231331,#4b2475);color:#fff;border-radius:20px;padding:17px 18px;margin:14px 0;box-shadow:0 12px 28px rgba(42,20,72,.2)}.model-insight-head span{font-size:10px;font-weight:900;text-transform:uppercase;color:#ffb15c;letter-spacing:.7px}.model-insight-head h3{text-align:left;margin:6px 0 12px}.model-insight-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:9px}.model-insight-grid div{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:13px;padding:10px}.model-insight-grid b{display:block;font-size:10px;text-transform:uppercase;color:#ffb15c;margin-bottom:4px}.model-insight-grid strong{font-size:13px}.modelo-card{border-color:rgba(101,50,154,.35)!important;background:#faf6ff!important}
body.linea-2 .ado-app-header.compact-header{background:linear-gradient(135deg,#c85600,#ff8000 54%,#8c3900)}body.linea-2 .ado-app-header.compact-header{border-top-color:#4b2475}
@media(max-width:800px){.linea-cover{grid-template-columns:1fr;grid-template-rows:1fr 1fr}.cover-half{padding:18px}.cover-half h2{font-size:42px;margin:7px}.cover-half p{font-size:12px}.cover-route-list{margin-top:9px}.linea-header-switch{margin-top:6px}.linea-header-switch button{padding:5px 9px;font-size:10px}.model-insight-grid{grid-template-columns:1fr 1fr}.model-insight-grid div:last-child{grid-column:1/-1}}

/* ===== FINAL VISUAL SYSTEM 2026 ===== */
:root{--brand:#ED7D31;--brand2:#b94f13;--ink:#231f20;--surface:#fffaf6;--surface2:#fff3eb;--line:rgba(237,125,49,.22);--glow:rgba(237,125,49,.22);--header1:#d96722;--header2:#8e370d}
body{background:radial-gradient(circle at 90% 8%,var(--glow),transparent 28%),linear-gradient(180deg,var(--surface2),#fff 38%,var(--surface));color:var(--ink);transition:background .35s ease;color-scheme:light}
body.linea-2{--brand:#E2211C;--brand2:#5B2360;--ink:#291b2b;--surface:#f8fbff;--surface2:#eef5fb;--line:rgba(91,35,96,.20);--glow:rgba(226,33,28,.12);--header1:#5B2360;--header2:#2f1035}
.panel,.manual-card,.route-card,.kpi,.chart-smart-title,.analysis-card{border-color:var(--line)!important}
.panel:before{background:linear-gradient(90deg,var(--brand),var(--brand2),transparent)!important}.badge,.manual-primary,.analysis-download,.linea-header-switch button.active{background:linear-gradient(135deg,var(--brand),var(--brand2))!important;border-color:transparent!important}.kpi .ideal-val,.fecha-mini{color:var(--brand)!important}
.manual-panel,.records-panel,.analysis-card,.chart-smart-title{background:linear-gradient(140deg,rgba(255,255,255,.98),var(--surface2))!important}.manual-card,.col.route-card{background:linear-gradient(160deg,#fff,var(--surface))!important}.manual-card:hover,.col.route-card:hover,.kpi:hover{border-color:var(--brand)!important;box-shadow:0 16px 34px var(--glow)!important}.manual-card label,.manual-help,.analysis-note,.route-date-head{color:var(--brand2)!important}.manual-card input,.manual-card select,.manual-card textarea{border-color:var(--line)!important}.manual-card input:focus,.manual-card select:focus,.manual-card textarea:focus{outline-color:var(--glow)!important;border-color:var(--brand)!important}.route-card-head{border-color:var(--brand)!important}.route-pill,.record-date,.manual-kicker,.analysis-kicker,.title-eyebrow{background:var(--surface2)!important;color:var(--brand2)!important;border-color:var(--line)!important}.route-actions button,.ideal-actions button,.manual-actions button{border-color:var(--line)!important;color:var(--brand2)!important}.route-actions button:hover,.ideal-actions button:hover,.manual-actions button:hover{background:var(--surface2)!important;border-color:var(--brand)!important}
/* technological header */
.ado-app-header.compact-header,.linea-2 .ado-app-header.compact-header{background:linear-gradient(115deg,var(--header2),var(--header1) 48%,var(--brand2))!important;border-top:4px solid var(--brand)!important;box-shadow:0 16px 42px color-mix(in srgb,var(--brand2) 28%,transparent)!important;isolation:isolate}
.ado-app-header.compact-header:before{content:""!important;display:block!important;position:absolute;inset:0!important;width:auto!important;height:auto!important;border-radius:0!important;background:linear-gradient(90deg,transparent 49.5%,rgba(255,255,255,.055) 50%,transparent 50.5%),linear-gradient(0deg,transparent 49.5%,rgba(255,255,255,.045) 50%,transparent 50.5%)!important;background-size:42px 42px!important;opacity:.8}
.ado-app-header.compact-header:after{content:""!important;display:block!important;position:absolute;inset:-80% 42% auto -10%;height:250%;background:linear-gradient(110deg,transparent 34%,rgba(255,255,255,.13) 47%,transparent 61%);transform:rotate(-5deg);pointer-events:none}
.compact-header .ado-header-inner{position:relative;z-index:2}.compact-header .ado-header-copy h1{text-shadow:0 4px 18px rgba(0,0,0,.28);letter-spacing:2px}.compact-header .ado-header-subtitle{color:#fff!important;opacity:.88}.linea-header-switch{padding:4px;background:rgba(0,0,0,.16);border:1px solid rgba(255,255,255,.14);border-radius:999px;width:max-content;backdrop-filter:blur(12px)}.linea-header-switch button{border:0!important;background:transparent!important;box-shadow:none!important}.linea-header-switch button.active{box-shadow:0 6px 16px rgba(0,0,0,.25)!important}.compact-header .ado-header-mark{background:linear-gradient(145deg,rgba(255,255,255,.15),rgba(255,255,255,.03))!important;backdrop-filter:blur(14px);border-color:rgba(255,255,255,.22)!important}.compact-header .ado-header-mark span:nth-child(1){border-color:var(--brand)!important}.compact-header .ado-header-mark span:nth-child(3){background:var(--brand)!important;border-color:var(--brand)!important;box-shadow:0 0 0 7px color-mix(in srgb,var(--brand) 22%,transparent),0 0 20px var(--brand)!important}
/* line 2 model insight */
body.linea-2 .model-insight-panel{background:linear-gradient(125deg,#46184c,#5B2360 52%,#E2211C)!important;border:1px solid rgba(255,255,255,.16);box-shadow:0 15px 36px rgba(91,35,96,.25)}body.linea-2 .model-insight-grid div{background:rgba(243,248,255,.10)}body.linea-2 .model-insight-grid b{color:#ffd7d5}.modelo-card{border-color:var(--line)!important;background:linear-gradient(145deg,#fff,var(--surface2))!important}
/* cover with dark transparent hover mask */
.cover-l2{background:linear-gradient(145deg,#5B2360,#E2211C)!important}.cover-l4{background:linear-gradient(145deg,#9d3f12,#ED7D31)!important}.cover-half{transition:filter .35s ease,transform .35s ease!important}.cover-half:after{content:"";position:absolute;inset:0;background:rgba(4,8,18,0);transition:background .38s ease,backdrop-filter .38s ease;z-index:0}.cover-half:hover{filter:none!important;transform:none!important}.cover-half:hover:after{background:rgba(3,7,16,.20);backdrop-filter:saturate(.92)}.cover-half:hover .cover-content{transform:translateY(-5px) scale(1.015)}.cover-content{transition:transform .38s cubic-bezier(.2,.8,.2,1);z-index:2!important}.cover-half:before{z-index:1;background:linear-gradient(135deg,rgba(255,255,255,.14),transparent 42%,rgba(0,0,0,.12))!important}.cover-route-list{font-weight:800;line-height:1.5}.cover-half h2{text-shadow:0 8px 26px rgba(0,0,0,.32)}
/* KPI polish */
.kpi{position:relative;overflow:hidden;background:linear-gradient(155deg,#fff,var(--surface))!important}.kpi:after{content:"";position:absolute;width:80px;height:80px;right:-36px;bottom:-42px;border-radius:50%;background:var(--glow)}.kpi .val,.kpi .lbl,.kpi .desc{position:relative;z-index:1}.ralenti{border-top-color:#E2211C!important}.inercia{border-top-color:var(--brand2)!important}.verde{border-top-color:#278c68!important}.alto{border-top-color:var(--brand)!important}.mse{border-top-color:#76508c!important}
/* mobile-first final refinement */
@media(max-width:700px){body{padding:8px}.ado-app-header.compact-header{margin:-8px -8px 10px!important;border-radius:0 0 20px 20px}.compact-header .ado-header-inner{padding:12px 12px 13px!important;align-items:center!important}.compact-header .ado-header-copy h1{font-size:24px!important}.compact-header .ado-header-subtitle{font-size:12px!important}.linea-header-switch{gap:2px;margin-top:7px}.linea-header-switch button{width:auto!important;padding:6px 9px!important;font-size:10px!important}.compact-header .ado-header-mark{display:grid!important;width:50px!important;height:50px!important;border-radius:16px!important}.manual-panel{padding:13px!important}.manual-head h3{font-size:18px}.manual-grid{gap:8px!important}.manual-card{padding:10px!important;border-radius:14px!important}.manual-actions{gap:7px!important}.kpi-grid{display:flex!important;overflow-x:auto;scroll-snap-type:x mandatory;padding:2px 2px 10px;gap:9px!important}.kpi{min-width:185px;scroll-snap-align:start}.chart-smart-title{margin:10px 0 8px!important}.model-insight-panel{padding:14px!important}.model-insight-grid{display:flex!important;overflow-x:auto;scroll-snap-type:x mandatory}.model-insight-grid div{min-width:170px;scroll-snap-align:start}.linea-cover{grid-template-columns:1fr!important;grid-template-rows:1fr 1fr!important}.cover-half{min-height:0;padding:13px!important}.cover-half h2{font-size:38px!important}.cover-half p{margin:5px 0;font-size:11px!important}.cover-route-list{font-size:9px;margin-top:7px!important}.records-panel .grid{gap:8px!important}#grafica{border-radius:16px!important}}
@media(max-width:390px){.compact-header .ado-header-mark{width:44px!important;height:44px!important}.compact-header .ado-header-copy h1{font-size:21px!important}.linea-header-switch button{padding:5px 7px!important}.kpi{min-width:168px}}


/* ===== AURA TECH MINIMAL · final optimization ===== */
:root{--radius-xl:28px;--radius-lg:20px;--glass:rgba(255,255,255,.72);--hairline:rgba(30,30,35,.08)}
html{scroll-behavior:smooth}body{font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text","Segoe UI",Arial,sans-serif;letter-spacing:-.012em}.panel,.chart-smart-title,.analysis-card,.model-insight-panel{border-radius:var(--radius-xl)!important;box-shadow:0 1px 1px rgba(0,0,0,.03),0 18px 55px rgba(31,24,38,.08)!important}.manual-card,.kpi,.col.route-card,.analysis-chip{border-radius:var(--radius-lg)!important;box-shadow:0 1px 1px rgba(0,0,0,.03),0 8px 24px rgba(31,24,38,.055)!important}.manual-panel{backdrop-filter:blur(22px) saturate(1.12)}button,select,input,textarea{font-family:inherit}button{transition:transform .22s cubic-bezier(.2,.8,.2,1),box-shadow .22s ease,background .22s ease!important}button:active{transform:scale(.975)!important}.manual-actions button,.ideal-actions button,.route-actions button{background:rgba(255,255,255,.82)!important;backdrop-filter:blur(12px)}.manual-primary{background:linear-gradient(135deg,var(--brand),var(--brand2))!important}.chart-smart-title{backdrop-filter:blur(18px)}#grafica{border-radius:28px!important;box-shadow:0 1px 1px rgba(0,0,0,.03),0 22px 60px rgba(31,24,38,.09)!important;overflow:hidden}.chart-date-badge{background:linear-gradient(145deg,#252229,#0d0c0f)!important;border:1px solid rgba(255,255,255,.10)}.manual-footer-note{border-radius:16px!important}.excel-route-note{display:none;grid-column:1/-1;padding:11px 13px;border-radius:16px;background:linear-gradient(135deg,rgba(91,35,96,.08),rgba(226,33,28,.07));border:1px solid rgba(91,35,96,.15);font-size:12px;color:#5B2360;font-weight:750}.linea-2 .excel-route-note{display:block}.excel-route-note b{color:#E2211C}.excel-load-button{position:relative}.excel-load-button:before{content:"XLSX";position:absolute;right:8px;top:6px;font-size:8px;font-weight:900;letter-spacing:.5px;opacity:.48}
@media(max-width:700px){.panel,.chart-smart-title,.analysis-card,.model-insight-panel{border-radius:22px!important}.manual-card,.kpi,.col.route-card{border-radius:17px!important}.manual-head p{max-width:92%;line-height:1.45}.manual-actions button{min-height:48px}.excel-route-note{font-size:11px;line-height:1.4}#grafica{border-radius:20px!important}}


/* ===== AJUSTES SOLICITADOS: RDC/RDU, Safari KPI, zonas exactas y fecha mobile ===== */
.kpi{cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}
.kpi:hover,.kpi.is-active,.kpi:focus-visible{outline:3px solid color-mix(in srgb,var(--brand) 38%,transparent);transform:translateY(-2px);box-shadow:0 14px 30px var(--glow)!important}
.kpi:focus-visible{outline-offset:3px}
.performance-row{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:6px}
.performance-chip{min-width:0;padding:6px 8px;border:1px solid var(--line);border-radius:10px;background:var(--surface2);font-size:10px;color:var(--brand2);font-weight:900;overflow-wrap:anywhere}
.performance-chip b{display:block;color:#666;font-size:9px;letter-spacing:.35px;margin-bottom:2px}
.edit-box .edit-rdc,.edit-box .edit-rdu{border-left:4px solid var(--brand)!important}
.fecha-card{min-width:0;overflow:hidden;background:linear-gradient(145deg,#fff,var(--surface2))!important}
.fecha-card input[type="date"]{display:block;width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box;-webkit-appearance:none;appearance:none;overflow:hidden;text-overflow:ellipsis}
.analysis-field{min-width:0}.analysis-field input[type="date"]{width:100%;max-width:100%;min-width:0;box-sizing:border-box;-webkit-appearance:none;appearance:none}
@supports (-webkit-touch-callout:none){.kpi:hover{outline:0}.kpi.is-active,.kpi:focus-visible{outline:3px solid color-mix(in srgb,var(--brand) 42%,transparent)}}
@media(max-width:700px){.manual-card,.fecha-card{min-width:0!important;max-width:100%!important}.fecha-card input[type="date"]{font-size:16px!important;padding:11px 9px!important}.performance-row{grid-template-columns:1fr 1fr}.edit-box .edit-rdc,.edit-box .edit-rdu{width:100%!important;max-width:100%!important}}
@media(max-width:360px){.performance-row{grid-template-columns:1fr}}


/* ===== TARJETAS DE RUTA · ACABADO FINAL PREMIUM ===== */
.records-panel{padding:16px!important;background:linear-gradient(145deg,rgba(255,255,255,.96),var(--surface2))!important;border:1px solid var(--line)!important}
.records-panel .grid{grid-template-columns:repeat(auto-fit,minmax(290px,1fr))!important;gap:16px!important}
.col.route-card{position:relative;isolation:isolate;padding:15px!important;border:1px solid color-mix(in srgb,var(--brand) 21%,transparent)!important;border-radius:24px!important;background:linear-gradient(155deg,rgba(255,255,255,.98),var(--surface) 70%,var(--surface2))!important;box-shadow:0 2px 3px rgba(20,16,24,.03),0 14px 36px rgba(31,24,38,.075)!important;overflow:hidden!important;transition:transform .28s cubic-bezier(.2,.8,.2,1),box-shadow .28s ease,border-color .28s ease!important}
.col.route-card:before{content:"";position:absolute;z-index:-1;inset:0 0 auto;height:72px;background:linear-gradient(115deg,color-mix(in srgb,var(--brand) 11%,transparent),transparent 62%);pointer-events:none}
.col.route-card:after{content:"";position:absolute;z-index:-1;right:-54px;top:-58px;width:140px;height:140px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--brand) 15%,transparent),transparent 68%);pointer-events:none}
.col.route-card:hover{transform:translateY(-5px)!important;border-color:color-mix(in srgb,var(--brand) 58%,transparent)!important;box-shadow:0 3px 5px rgba(20,16,24,.04),0 24px 55px var(--glow)!important}
.route-card-head{min-height:43px;margin:0 0 10px!important;padding:0 0 11px!important;border-bottom:1px solid color-mix(in srgb,var(--brand) 30%,transparent)!important;position:relative}
.route-card-head:after{content:"";position:absolute;left:0;bottom:-1px;width:62px;height:3px;border-radius:99px;background:linear-gradient(90deg,var(--brand),var(--brand2))}
.route-title-main{font-size:17px!important;font-weight:950!important;letter-spacing:.35px!important;color:var(--ink)}
.route-card-head .badge{min-width:26px;padding:4px 8px!important;text-align:center;box-shadow:0 5px 13px var(--glow)}
.route-date-head{padding:5px 9px!important;border-radius:999px!important;background:rgba(255,255,255,.78)!important;backdrop-filter:blur(10px);box-shadow:0 5px 14px rgba(31,24,38,.06)!important}
.route-sub{margin:0 0 10px!important;color:#777!important;font-size:10.5px!important;font-weight:750;letter-spacing:.15px}
.route-actions{gap:8px!important;margin-bottom:11px!important}
.route-actions button{min-height:37px;border-radius:12px!important;font-size:11px!important;font-weight:900!important;letter-spacing:.25px;box-shadow:0 4px 11px rgba(31,24,38,.04)}
.record-row{position:relative;grid-template-columns:auto 10px minmax(0,1fr) auto auto!important;gap:8px!important;align-items:start!important;margin:9px 0!important;padding:11px!important;border:1px solid rgba(30,30,35,.075)!important;border-radius:17px!important;background:linear-gradient(145deg,rgba(255,255,255,.95),rgba(255,255,255,.72))!important;box-shadow:0 5px 16px rgba(31,24,38,.045)!important;transition:border-color .22s ease,box-shadow .22s ease,transform .22s ease!important}
.record-row:hover{border-color:color-mix(in srgb,var(--brand) 36%,transparent)!important;box-shadow:0 10px 24px var(--glow)!important;transform:translateY(-1px)}
.record-row input[type="checkbox"]{appearance:none;-webkit-appearance:none;width:18px!important;height:18px!important;margin:0!important;border:1.5px solid color-mix(in srgb,var(--brand) 48%,#aaa)!important;border-radius:6px!important;background:#fff!important;display:grid;place-content:center;cursor:pointer}
.record-row input[type="checkbox"]:checked{background:linear-gradient(135deg,var(--brand),var(--brand2))!important;border-color:transparent!important}
.record-row input[type="checkbox"]:checked:after{content:"✓";font-size:12px;line-height:1;color:#fff;font-weight:950}
.record-row .sw{font-size:14px!important;line-height:18px!important;text-shadow:0 2px 7px currentColor}
.record-name{font-size:12.5px!important;line-height:1.35!important;font-weight:850!important;color:var(--ink)!important}
.class-chip{margin-top:5px!important;padding:3px 7px;border-radius:999px;background:rgba(120,120,130,.07);color:#737078!important;font-size:9.5px!important;font-weight:800}
.record-date{margin-top:6px!important;padding:4px 8px!important;font-size:9.5px!important;box-shadow:none!important}
.performance-row{gap:7px!important;margin-top:8px!important}
.performance-chip{position:relative;padding:9px 10px 8px!important;border:1px solid color-mix(in srgb,var(--brand) 23%,transparent)!important;border-radius:13px!important;background:linear-gradient(145deg,#fff,var(--surface2))!important;color:var(--ink)!important;font-size:13px!important;font-variant-numeric:tabular-nums;box-shadow:0 4px 12px rgba(31,24,38,.045);overflow:hidden}
.performance-chip:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg,var(--brand),var(--brand2))}
.performance-chip b{display:block!important;margin:0 0 3px!important;color:var(--brand2)!important;font-size:9px!important;font-weight:950!important;letter-spacing:.75px!important;text-transform:uppercase}
.route-pill{padding:4px 8px!important;border-radius:999px!important;font-size:9px!important;box-shadow:0 4px 10px var(--glow)}
.edit-btn{align-self:start;min-width:54px!important;padding:7px 9px!important;border-radius:10px!important;color:var(--brand2)!important;border-color:var(--line)!important;font-weight:900!important}
.edit-btn:hover{color:#fff!important;background:linear-gradient(135deg,var(--brand),var(--brand2))!important;border-color:transparent!important}
.edit-box{margin-top:10px!important;padding:11px!important;border:1px solid color-mix(in srgb,var(--brand) 28%,transparent)!important;border-radius:16px!important;background:linear-gradient(145deg,rgba(255,255,255,.98),var(--surface2))!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.8)}
.edit-box input,.edit-box select{height:42px!important;border:1px solid var(--line)!important;border-radius:12px!important;background:#fff!important;box-shadow:0 3px 9px rgba(31,24,38,.035)}
.edit-box .edit-rdc,.edit-box .edit-rdu{border-left:4px solid var(--brand)!important;font-weight:850}
.save-btn{min-height:42px!important;border-radius:12px!important;background:linear-gradient(135deg,var(--brand),var(--brand2))!important;color:#fff!important;border:0!important;box-shadow:0 9px 20px var(--glow)!important}
@media(max-width:700px){.records-panel{padding:9px!important}.records-panel .grid{gap:10px!important}.col.route-card{padding:12px!important;border-radius:20px!important}.route-title-main{font-size:16px!important}.record-row{grid-template-columns:auto 10px minmax(0,1fr) auto!important;padding:10px!important}.record-row .edit-btn{grid-column:4!important}.performance-row{grid-template-columns:1fr 1fr!important}.performance-chip{padding:8px 9px!important}.record-name{font-size:12px!important}}
@media(max-width:370px){.performance-row{grid-template-columns:1fr!important}.route-date-head{font-size:9.5px!important}.record-row{gap:6px!important}}


/* ===== TARJETAS V3 · RENDIMIENTOS SUPERIORES MINIMALISTAS ===== */
.records-panel .grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))!important;gap:15px!important}
.col.route-card{--card-accent:var(--brand);--card-accent2:var(--brand2);padding:14px!important;border-radius:23px!important;background:linear-gradient(155deg,#fff 0%,color-mix(in srgb,var(--surface2) 62%,#fff) 100%)!important}
body.linea-2 .col.route-card{--card-accent:#E2211C;--card-accent2:#5B2360;border-color:rgba(91,35,96,.22)!important;background:linear-gradient(145deg,#fff 0%,#fff 46%,#fbf6fc 100%)!important;box-shadow:0 14px 34px rgba(91,35,96,.09)!important}
body.linea-2 .col.route-card:before{background:linear-gradient(110deg,rgba(226,33,28,.11),rgba(255,255,255,.88) 48%,rgba(91,35,96,.10))!important}
body.linea-2 .route-card-head:after{background:linear-gradient(90deg,#E2211C,#5B2360)!important}
body.linea-2 .route-card-head .badge{background:linear-gradient(135deg,#E2211C,#5B2360)!important}
.record-row{display:block!important;margin:9px 0!important;padding:0!important;border-radius:18px!important;overflow:hidden!important;background:#fff!important;border:1px solid color-mix(in srgb,var(--card-accent2) 14%,transparent)!important;box-shadow:0 7px 20px rgba(31,24,38,.055)!important}
.record-row:hover{transform:translateY(-2px)!important;border-color:color-mix(in srgb,var(--card-accent) 40%,transparent)!important;box-shadow:0 13px 28px color-mix(in srgb,var(--card-accent2) 13%,transparent)!important}
.performance-row{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:0!important;margin:0!important;border-bottom:1px solid color-mix(in srgb,var(--card-accent2) 12%,transparent)!important;background:linear-gradient(90deg,color-mix(in srgb,var(--card-accent) 7%,#fff),#fff 46%,color-mix(in srgb,var(--card-accent2) 7%,#fff))!important}
.performance-chip{position:relative!important;display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;align-items:center!important;gap:7px!important;min-width:0!important;min-height:42px!important;margin:0!important;padding:8px 11px!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;overflow:hidden!important}
.performance-chip:first-child{border-right:1px solid color-mix(in srgb,var(--card-accent2) 13%,transparent)!important}
.performance-chip:before{content:""!important;position:absolute!important;left:0!important;right:auto!important;top:8px!important;bottom:8px!important;width:3px!important;border-radius:99px!important;background:var(--card-accent)!important}
.performance-rdc:before{left:auto!important;right:0!important;background:var(--card-accent2)!important}
.performance-chip b{display:inline-grid!important;place-items:center!important;width:30px!important;height:22px!important;margin:0!important;border-radius:8px!important;background:color-mix(in srgb,var(--card-accent) 11%,#fff)!important;color:var(--card-accent)!important;font-size:9px!important;line-height:1!important;letter-spacing:.7px!important;font-weight:950!important}
.performance-rdc b{background:color-mix(in srgb,var(--card-accent2) 10%,#fff)!important;color:var(--card-accent2)!important}
.performance-chip strong{display:block!important;min-width:0!important;color:var(--ink)!important;font-size:15px!important;line-height:1.1!important;font-weight:950!important;text-align:right!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;font-variant-numeric:tabular-nums!important}
.performance-empty strong{color:#96919a!important;font-size:18px!important;font-weight:700!important}
.record-main{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;gap:9px!important;align-items:start!important;padding:11px!important}
.record-select{display:flex!important;align-items:center!important;gap:6px!important;padding-top:1px!important}
.record-copy{min-width:0!important}
.record-name{margin:0!important;font-size:12px!important;line-height:1.35!important;font-weight:900!important;overflow-wrap:anywhere!important;word-break:normal!important}
.record-meta{display:flex!important;flex-wrap:wrap!important;gap:5px!important;align-items:center!important;margin-top:7px!important}
.class-chip,.record-date{display:inline-flex!important;width:auto!important;max-width:100%!important;margin:0!important;padding:4px 7px!important;border-radius:999px!important;font-size:9px!important;line-height:1!important;font-weight:850!important;white-space:nowrap!important}
.class-chip{background:color-mix(in srgb,var(--card-accent2) 7%,#f7f7f8)!important;color:var(--card-accent2)!important}
.record-date{background:color-mix(in srgb,var(--card-accent) 7%,#fff)!important;color:color-mix(in srgb,var(--card-accent) 78%,#333)!important}
.record-tools{display:flex!important;flex-direction:column!important;align-items:flex-end!important;gap:7px!important}
.route-pill{margin:0!important;background:color-mix(in srgb,var(--card-accent2) 8%,#fff)!important;color:var(--card-accent2)!important;border-color:color-mix(in srgb,var(--card-accent2) 20%,transparent)!important}
.edit-btn{margin:0!important;min-width:52px!important;padding:7px 8px!important;border-radius:10px!important;color:var(--card-accent2)!important}
.record-row.editing .edit-box{display:grid!important;margin:0 10px 10px!important;padding:10px!important}
@media(max-width:700px){.records-panel .grid{grid-template-columns:1fr!important}.col.route-card{padding:12px!important}.performance-chip{min-height:44px!important;padding:8px 10px!important}.performance-chip strong{font-size:14px!important}.record-main{grid-template-columns:auto minmax(0,1fr) auto!important;padding:10px!important}.record-row .edit-btn{grid-column:auto!important}.route-pill{display:inline-flex!important}}
@media(max-width:390px){.performance-chip{padding:7px 8px!important;gap:5px!important}.performance-chip b{width:27px!important}.performance-chip strong{font-size:12px!important}.record-main{gap:7px!important}.route-pill{display:none!important}.edit-btn{min-width:48px!important;font-size:10px!important}.record-name{font-size:11.5px!important}}


/* ===== MEJORA TRONCAL Y GRID 3 COLUMNAS ===== */
@media(min-width:1101px){.records-panel .grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(min-width:701px) and (max-width:1100px){.records-panel .grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:700px){.records-panel .grid{grid-template-columns:1fr!important}}

/* ===== Línea 2: carga CSV segmentada ===== */
.l2-dataset-panel{display:none;grid-column:1/-1;border:1px solid rgba(91,35,96,.18);border-radius:20px;padding:14px;background:linear-gradient(135deg,#fff,#f8f3fa);box-shadow:0 8px 22px rgba(91,35,96,.07)}
body.linea-2 .l2-dataset-panel{display:block}.l2-dataset-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:11px}.l2-dataset-head h4{margin:0;color:#5B2360;font-size:15px}.l2-dataset-head p{margin:3px 0 0;color:#6f6871;font-size:11.5px}.l2-dataset-status{font-size:11px;font-weight:900;color:#5B2360;background:#f3eaf5;border:1px solid rgba(91,35,96,.16);border-radius:999px;padding:6px 10px;white-space:nowrap}.l2-filter-grid{display:grid;grid-template-columns:auto repeat(3,minmax(150px,1fr)) auto;gap:9px;align-items:end}.l2-filter-field{display:flex;flex-direction:column;gap:5px;min-width:0}.l2-filter-field label{font-size:10px;font-weight:950;color:#5B2360;text-transform:uppercase;letter-spacing:.4px}.l2-filter-field select{width:100%;min-width:0}.l2-load-btn,.l2-add-btn{min-height:40px;border-radius:12px!important}.l2-add-btn{background:linear-gradient(135deg,#E2211C,#5B2360)!important;color:#fff!important;border:0!important}.l2-dataset-help{margin-top:9px;font-size:10.5px;color:#766d78;line-height:1.35}.l2-dataset-help b{color:#E2211C}
@media(max-width:1000px){.l2-filter-grid{grid-template-columns:1fr 1fr}.l2-load-btn,.l2-add-btn{width:100%!important}}
@media(max-width:700px){.l2-dataset-head{align-items:flex-start;flex-direction:column}.l2-filter-grid{grid-template-columns:1fr}.l2-dataset-panel{padding:11px;border-radius:16px}.l2-dataset-status{white-space:normal}}


/* ===== Integración MySQL Línea 2 ===== */
.db-nav-link{display:inline-flex;align-items:center;padding:7px 13px;border-radius:999px;color:#fff;text-decoration:none;font-size:12px;font-weight:850;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25)}
.l2-dataset-status.sql-ok{color:#116846;background:#e9f7f1;border-color:#b9e6d2}
.l2-dataset-status.sql-error{color:#a51f1b;background:#fdecec;border-color:#f4c3c0}
.l2-load-btn.loading{opacity:.65;pointer-events:none}
.sql-data-note{display:flex;align-items:center;gap:7px;margin-top:9px;color:#5B2360;font-size:11px;font-weight:800}.sql-data-note:before{content:"";width:8px;height:8px;border-radius:50%;background:#16845b;box-shadow:0 0 0 5px rgba(22,132,91,.10)}
