:root{--red:#d71920;--red-dark:#aa1117;--ink:#172033;--muted:#6f7d92;--line:#dce3ed;--bg:#eef2f7;--white:#fff;--shadow:0 18px 42px rgba(23,32,51,.10);--radius:22px;--sidebar:286px}*{box-sizing:border-box}html{min-height:100%;background:#eef2f7}body{margin:0;min-height:100vh;color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;background:radial-gradient(circle at 2% 0%,rgba(215,25,32,.13),transparent 28%),radial-gradient(circle at 92% 8%,rgba(35,52,74,.09),transparent 24%),linear-gradient(135deg,#fafbfe 0%,#eef2f7 58%,#e7ebf1 100%)}body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.28;background-image:linear-gradient(rgba(31,42,61,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(31,42,61,.055) 1px,transparent 1px);background-size:34px 34px;mask-image:linear-gradient(#000,transparent 75%)}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}.hidden{display:none!important}.app-shell{position:relative;z-index:1;display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr);gap:18px;max-width:1840px;margin:auto;padding:12px 18px 24px}.sidebar{position:sticky;top:12px;height:calc(100vh - 24px);display:flex;flex-direction:column;padding:20px 18px 16px;border:1px solid rgba(210,219,231,.9);border-radius:28px;background:rgba(255,255,255,.90);box-shadow:var(--shadow);backdrop-filter:blur(16px);overflow:auto}.sidebar-close{display:none}.sidebar-logo{display:grid;place-items:center;min-height:122px}.sidebar-logo img{width:124px;height:124px;object-fit:contain;filter:drop-shadow(0 8px 13px rgba(23,32,51,.12))}.sidebar-divider{height:1px;margin:4px 28px 18px;background:var(--line)}.side-nav{display:grid;gap:7px}.new-sale-button,.side-link{display:flex;align-items:center;gap:13px;min-height:49px;padding:0 15px;border-radius:15px;font-weight:850;color:#334158;transition:.16s ease}.new-sale-button{margin-bottom:9px;color:#fff;background:linear-gradient(135deg,var(--red),var(--red-dark));box-shadow:0 13px 25px rgba(215,25,32,.22)}.new-sale-button:hover,.side-link:hover{transform:translateY(-1px)}.new-sale-button.active{box-shadow:0 0 0 4px rgba(215,25,32,.12),0 13px 25px rgba(215,25,32,.22)}.side-link:hover,.side-link.active{background:#f4f6fa;color:#172033}.side-link.active{box-shadow:inset 3px 0 var(--red)}.side-link svg,.new-sale-button svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}.sidebar-spacer{flex:1;min-height:20px}.side-user-card{display:grid;grid-template-columns:42px 1fr;gap:10px;align-items:center;padding:10px;border:1px solid #d5deea;border-radius:16px;background:rgba(255,255,255,.8)}.side-user-card strong,.side-user-card span{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.side-user-card strong{font-size:.88rem}.side-user-card span{margin-top:2px;color:var(--muted);font-size:.74rem;font-weight:750}.avatar{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;overflow:hidden;background:linear-gradient(135deg,#29364a,#111827);color:#fff;font-size:.78rem;font-weight:900}.avatar.small{width:34px;height:34px}.avatar img{width:100%;height:100%;object-fit:cover}.switch-panel-link,.install-button{margin:0 0 9px;padding:9px 12px;border:1px solid #d4ddea;border-radius:12px;background:#fff;color:#44516a;text-align:center;font-weight:800;font-size:.78rem;cursor:pointer}.install-button{width:100%}.main-column{min-width:0}.topbar{position:sticky;top:12px;z-index:30;min-height:82px;padding:13px 18px;display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid rgba(210,219,231,.9);border-radius:27px;background:rgba(255,255,255,.88);box-shadow:var(--shadow);backdrop-filter:blur(16px)}.topbar-left{display:flex;align-items:center;gap:12px}.topbar h1{margin:0;font-size:clamp(1.15rem,2vw,1.45rem);letter-spacing:-.035em}.topbar-actions{display:flex;align-items:center;gap:10px}.logout-button,.mobile-menu-button{position:relative;display:grid;place-items:center;height:48px;border:1px solid #d4ddea;border-radius:16px;background:#fff;color:#344258;cursor:pointer}.top-user-pill{height:48px;display:flex;align-items:center;gap:9px;padding:5px 13px 5px 6px;border:1px solid #d4ddea;border-radius:16px;background:#fff}.top-user-pill strong{font-size:.85rem;white-space:nowrap}.logout-button{padding:0 16px;color:#b1181e;font-weight:900}.mobile-menu-button{display:none;width:46px}.content-card{margin-top:18px;min-height:calc(100vh - 132px);border:1px solid rgba(210,219,231,.92);border-radius:27px;background:rgba(255,255,255,.91);box-shadow:var(--shadow);overflow:hidden}.content-breadcrumb{padding:20px 24px;border-bottom:1px solid var(--line);font-size:1rem}.content-breadcrumb span{color:#768399;font-weight:780}.content-breadcrumb strong{color:var(--ink)}.module-content{padding:22px}.module-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px}.module-heading h2{margin:4px 0 6px;font-size:clamp(1.45rem,2.5vw,2rem);letter-spacing:-.045em}.module-heading p{margin:0;max-width:760px;color:var(--muted);line-height:1.5}.eyebrow{color:var(--red-dark);font-size:.7rem;font-weight:950;letter-spacing:.11em;text-transform:uppercase}.status-chip{display:inline-flex;padding:7px 10px;border-radius:999px;border:1px solid #d9e1ec;background:#f6f8fb;color:#627089;font-size:.7rem;font-weight:900;text-transform:uppercase}.status-chip.admin{color:#9d1117;background:#fff1f2;border-color:#fecdd3}.dashboard-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.metric-card,.panel-box,.module-placeholder{border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 7px 20px rgba(23,32,51,.055)}.metric-card{padding:20px}.metric-card.accent{border-color:rgba(215,25,32,.45);box-shadow:0 0 0 3px rgba(215,25,32,.08),0 7px 20px rgba(23,32,51,.055)}.metric-card strong{display:block;font-size:2rem;line-height:1;letter-spacing:-.05em}.metric-card span{display:block;margin-top:9px;color:var(--muted);font-size:.78rem;font-weight:850;text-transform:uppercase;letter-spacing:.035em}.two-column-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.panel-box{padding:18px}.panel-box-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:15px}.panel-box-head h3{margin:3px 0 0;font-size:1.04rem}.empty-state{min-height:300px;display:grid;place-items:center;align-content:center;text-align:center;padding:30px;color:var(--muted);border:1px dashed #cdd6e3;border-radius:17px;background:#f9fafc}.empty-state.compact{min-height:220px}.empty-state strong{color:#26334a;font-size:1rem}.empty-state p{max-width:480px;margin:7px 0 0;line-height:1.5}.empty-icon{width:42px;height:42px;margin-bottom:10px;display:grid;place-items:center;border-radius:14px;background:#fff;border:1px solid var(--line);color:var(--red);font-weight:950}.btn{min-height:42px;padding:0 15px;border:1px solid transparent;border-radius:13px;font-weight:850;cursor:pointer}.btn.primary{background:linear-gradient(135deg,var(--red),var(--red-dark));color:#fff}.btn.secondary{background:#fff;border-color:#d4ddea;color:#3c4960}.btn.full{width:100%}.btn:disabled{opacity:.55;cursor:not-allowed}.link-btn{display:grid;place-items:center}.sales-form{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.form-grid label,.login-form label{display:grid;gap:7px;color:#4c5a70;font-size:.75rem;font-weight:850;text-transform:uppercase;letter-spacing:.04em}.form-grid input,.form-grid select,.form-grid textarea,.table-toolbar input,.table-toolbar select,.login-form input{width:100%;min-height:44px;padding:10px 12px;border:1px solid #cfd8e5;border-radius:12px;background:#fff;color:var(--ink);outline:none}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus,.login-form input:focus{border-color:rgba(215,25,32,.6);box-shadow:0 0 0 4px rgba(215,25,32,.1)}.form-grid textarea{min-height:104px;resize:vertical}.full-field{grid-column:1/-1}.optional{color:#8a96a8;font-size:.63rem}.module-placeholder{min-height:480px;display:grid;place-items:center;align-content:center;text-align:center;padding:34px}.module-placeholder h3{margin:12px 0 6px;font-size:1.25rem}.module-placeholder p{max-width:650px;margin:0;color:var(--muted);line-height:1.55}.placeholder-mark{width:88px;height:88px;display:grid;place-items:center;border-radius:25px;background:linear-gradient(145deg,#fff,#eceff4);border:1px solid #d3dce8;box-shadow:0 15px 30px rgba(23,32,51,.10);font-size:1.4rem;font-weight:950;color:var(--red)}.file-note{margin-top:18px;padding:8px 12px;border-radius:10px;background:#f1f4f8;color:#657289;font-size:.8rem}.filter-pills,.settings-tabs{display:flex;gap:7px;flex-wrap:wrap}.filter-pills button,.settings-tabs button{border:1px solid #d4ddea;border-radius:999px;background:#fff;padding:8px 12px;color:#526078;font-weight:800;cursor:pointer}.filter-pills button.active,.settings-tabs button.active{border-color:rgba(215,25,32,.35);background:#fff1f2;color:#b1181e}.table-toolbar{display:grid;grid-template-columns:1fr 220px;gap:12px;margin-bottom:15px}.settings-tabs{margin-bottom:14px}.loading-state{margin:auto;color:var(--muted)}.login-screen{position:relative;z-index:1;min-height:100vh;display:grid;place-items:center;padding:20px}.login-card{width:min(430px,100%);padding:28px;border:1px solid rgba(210,219,231,.9);border-radius:28px;background:rgba(255,255,255,.93);box-shadow:0 25px 65px rgba(23,32,51,.16);backdrop-filter:blur(18px)}.login-logo-wrap{width:140px;height:140px;margin:0 auto 10px;display:grid;place-items:center}.login-logo-wrap.small{width:104px;height:104px}.login-logo-wrap img{width:100%;height:100%;object-fit:contain}.login-copy{text-align:center}.login-copy h1,.access-card h1{margin:4px 0 7px;font-size:1.8rem;letter-spacing:-.045em}.login-copy p,.access-card p{margin:0 0 18px;color:var(--muted);line-height:1.5}.login-form{display:grid;gap:13px;margin-top:20px}.alert{padding:11px 12px;border-radius:12px;font-size:.83rem;font-weight:750}.alert.error{border:1px solid #fecdd3;background:#fff1f2;color:#a11319}.back-link{display:block;margin-top:15px;text-align:center;color:#69768a;font-size:.78rem;font-weight:800}.access-card{text-align:center}.sidebar-overlay{position:fixed;z-index:80;inset:0;background:rgba(15,23,42,.52);backdrop-filter:blur(3px)}@media(max-width:1100px){.dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sales-form{grid-template-columns:1fr}.top-user-pill strong{display:none}.top-user-pill{padding-right:6px}}@media(max-width:820px){.app-shell{display:block;padding:8px}.sidebar{position:fixed;z-index:90;top:8px;left:8px;width:min(310px,calc(100vw - 34px));height:calc(100dvh - 16px);transform:translateX(calc(-100% - 18px));transition:transform .22s ease}.sidebar.open{transform:translateX(0)}.sidebar-close{position:absolute;right:12px;top:12px;width:36px;height:36px;display:grid;place-items:center;border:1px solid #d4ddea;border-radius:12px;background:#fff;font-size:1.5rem;color:#48566e}.mobile-menu-button{display:grid}.topbar{top:8px;min-height:68px;padding:9px 11px;border-radius:20px}.content-card{margin-top:10px;min-height:calc(100vh - 96px);border-radius:20px}.content-breadcrumb{padding:15px 16px}.module-content{padding:15px}.logout-button{height:44px;padding:0 12px}.top-user-pill{display:none}.two-column-grid{grid-template-columns:1fr}.module-heading{flex-direction:column}.table-toolbar{grid-template-columns:1fr}.sidebar-logo{min-height:105px}.sidebar-logo img{width:105px;height:105px}}@media(max-width:560px){.topbar h1{font-size:1rem}.topbar-actions{gap:6px}.logout-button{font-size:.78rem}.dashboard-grid{grid-template-columns:1fr 1fr;gap:8px}.metric-card{padding:15px}.metric-card strong{font-size:1.55rem}.metric-card span{font-size:.66rem}.form-grid{grid-template-columns:1fr}.full-field{grid-column:auto}.module-heading h2{font-size:1.5rem}.module-heading p{font-size:.88rem}.module-placeholder{min-height:420px}.content-breadcrumb{font-size:.88rem}}

/* =========================================================
   VISTA MÓVIL APP · MISMA ESTRUCTURA DEL PANEL DE TALLER
   Solo cambia el contenido y los accesos del panel de ventas.
========================================================= */
.mobile-bottom-nav,
.mobile-profile-modal{display:none}

@media (max-width:760px){
  html,body{width:100%;overflow-x:hidden;-webkit-text-size-adjust:100%;overscroll-behavior-x:none}
  body.is-authenticated{background:radial-gradient(circle at 0 0,rgba(215,25,32,.10),transparent 34%),linear-gradient(180deg,#fff 0%,#f5f7fb 46%,#eef2f7 100%)}
  body.is-authenticated.profile-open{overflow:hidden}

  body.is-authenticated .app-shell{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:calc(78px + env(safe-area-inset-top)) 12px calc(100px + env(safe-area-inset-bottom))!important;
  }

  body.is-authenticated .sidebar,
  body.is-authenticated .sidebar-overlay,
  body.is-authenticated .mobile-menu-button{display:none!important}

  body.is-authenticated .main-column{width:100%;min-width:0}

  body.is-authenticated .app-topbar{
    position:fixed!important;
    top:0!important;
    left:0!important;
    right:0!important;
    z-index:120!important;
    display:grid!important;
    grid-template-columns:42px minmax(0,1fr) 42px 48px!important;
    align-items:center!important;
    gap:8px!important;
    min-height:calc(64px + env(safe-area-inset-top))!important;
    margin:0!important;
    padding:calc(10px + env(safe-area-inset-top)) 14px 10px!important;
    border:0!important;
    border-bottom:1px solid rgba(207,216,229,.86)!important;
    border-radius:0 0 24px 24px!important;
    background:rgba(255,255,255,.88)!important;
    box-shadow:0 12px 26px rgba(17,24,39,.08)!important;
    backdrop-filter:blur(18px) saturate(1.18)!important;
    -webkit-backdrop-filter:blur(18px) saturate(1.18)!important;
  }

  body.is-authenticated .topbar-actions{display:contents!important}

  body.is-authenticated .topbar-greeting{
    grid-column:2!important;
    grid-row:1!important;
    min-width:0!important;
    display:block!important;
  }
  body.is-authenticated .topbar-greeting h1{
    display:block!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    font-size:1.02rem!important;
    line-height:1.1!important;
    letter-spacing:-.04em!important;
  }

  body.is-authenticated .top-user-pill{
    grid-column:1!important;
    grid-row:1!important;
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
    min-height:42px!important;
    padding:0!important;
    display:grid!important;
    place-items:center!important;
    border-radius:999px!important;
    background:rgba(255,255,255,.96)!important;
    border:1px solid rgba(207,216,229,.96)!important;
    box-shadow:0 5px 12px rgba(17,24,39,.07)!important;
    overflow:hidden!important;
    cursor:pointer!important;
  }
  body.is-authenticated .top-user-avatar{width:36px!important;height:36px!important;margin:0!important;border-radius:999px!important;font-size:.72rem!important}
  body.is-authenticated .top-user-text{display:none!important}

  body.is-authenticated .logout-button{
    grid-column:4!important;
    grid-row:1!important;
    width:48px!important;
    height:42px!important;
    min-width:48px!important;
    min-height:42px!important;
    padding:0!important;
    border-radius:15px!important;
    display:grid!important;
    place-items:center!important;
    background:linear-gradient(135deg,var(--red),var(--red-dark))!important;
    color:#fff!important;
    border:1px solid rgba(167,15,22,.18)!important;
    box-shadow:0 8px 18px rgba(215,25,32,.18)!important;
    font-size:.70rem!important;
    font-weight:900!important;
  }

  body.is-authenticated .content-card{
    margin-top:0!important;
    min-height:calc(100dvh - 176px)!important;
    border-radius:22px!important;
    border:1px solid rgba(210,219,231,.92)!important;
    background:rgba(255,255,255,.94)!important;
    box-shadow:0 12px 28px rgba(17,24,39,.075)!important;
    overflow:hidden!important;
  }
  body.is-authenticated .content-breadcrumb{display:none!important}
  body.is-authenticated .module-content{padding:14px!important}
  body.is-authenticated .module-heading{gap:10px!important;margin-bottom:14px!important}
  body.is-authenticated .module-heading h2{font-size:1.42rem!important}
  body.is-authenticated .module-heading p{font-size:.86rem!important;line-height:1.42!important}
  body.is-authenticated input,
  body.is-authenticated select,
  body.is-authenticated textarea{font-size:16px!important}

  body.is-authenticated .mobile-bottom-nav{
    position:fixed!important;
    left:10px!important;
    right:10px!important;
    bottom:calc(9px + env(safe-area-inset-bottom))!important;
    z-index:125!important;
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr)) 48px repeat(3,minmax(0,1fr))!important;
    align-items:end!important;
    gap:1px!important;
    min-height:66px!important;
    padding:7px 6px 6px!important;
    border-radius:25px!important;
    background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(255,255,255,.80))!important;
    border:1px solid rgba(197,207,222,.92)!important;
    box-shadow:0 18px 36px rgba(17,24,39,.16),inset 0 1px 0 rgba(255,255,255,.92)!important;
    backdrop-filter:blur(22px) saturate(1.2)!important;
    -webkit-backdrop-filter:blur(22px) saturate(1.2)!important;
  }

  body.is-authenticated .mobile-nav-btn{
    position:relative!important;
    min-width:0!important;
    min-height:50px!important;
    padding:5px 1px 4px!important;
    border-radius:17px!important;
    display:grid!important;
    place-items:center!important;
    align-content:center!important;
    gap:3px!important;
    color:#263445!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
    font-size:.52rem!important;
    font-weight:900!important;
    letter-spacing:-.02em!important;
    line-height:1!important;
    text-decoration:none!important;
  }
  body.is-authenticated .mobile-nav-btn svg{width:21px!important;height:21px!important;fill:none!important;stroke:currentColor!important;stroke-width:2.25!important;stroke-linecap:round!important;stroke-linejoin:round!important}
  body.is-authenticated .mobile-nav-btn > span:not(.mobile-plus-circle){font-size:.55rem!important;font-weight:900!important}
  body.is-authenticated .mobile-nav-btn.active{color:var(--red)!important;background:rgba(215,25,32,.085)!important;box-shadow:inset 0 0 0 1px rgba(215,25,32,.08)!important}

  body.is-authenticated .mobile-nav-brand{
    align-self:center!important;
    width:48px!important;
    height:56px!important;
    display:grid!important;
    place-items:center!important;
    margin-top:-7px!important;
  }
  body.is-authenticated .mobile-nav-brand img{width:44px!important;height:44px!important;object-fit:contain!important;border-radius:13px!important;filter:drop-shadow(0 7px 13px rgba(17,24,39,.17))!important}

  body.is-authenticated .mobile-nav-plus{margin-top:-11px!important}
  body.is-authenticated .mobile-plus-circle{
    width:42px!important;
    height:42px!important;
    display:grid!important;
    place-items:center!important;
    border-radius:999px!important;
    background:linear-gradient(135deg,var(--red),var(--red-dark))!important;
    color:#fff!important;
    box-shadow:0 10px 20px rgba(215,25,32,.24)!important;
    font-size:1.55rem!important;
    line-height:1!important;
    font-weight:500!important;
  }
  body.is-authenticated .mobile-nav-plus.active .mobile-plus-circle{box-shadow:0 0 0 4px rgba(215,25,32,.13),0 10px 20px rgba(215,25,32,.24)!important}
  body.is-authenticated .mobile-profile-modal{
    position:fixed!important;
    inset:0!important;
    z-index:220!important;
    display:grid!important;
    align-items:end!important;
  }
  body.is-authenticated .mobile-profile-modal[hidden]{display:none!important}
  body.is-authenticated .mobile-profile-backdrop{position:absolute!important;inset:0!important;border:0!important;background:rgba(15,23,42,.50)!important;backdrop-filter:blur(4px)!important;-webkit-backdrop-filter:blur(4px)!important}
  body.is-authenticated .mobile-profile-sheet{
    position:relative!important;
    z-index:1!important;
    width:100%!important;
    max-height:86dvh!important;
    padding:12px 16px calc(18px + env(safe-area-inset-bottom))!important;
    border-radius:28px 28px 0 0!important;
    background:#fff!important;
    border:1px solid rgba(207,216,229,.92)!important;
    box-shadow:0 -20px 48px rgba(15,23,42,.20)!important;
    animation:ventasSheetIn .20s ease-out!important;
  }
  body.is-authenticated .mobile-profile-handle{width:46px;height:5px;margin:0 auto 15px;border-radius:999px;background:#d8dee8}
  body.is-authenticated .mobile-profile-close{position:absolute;right:15px;top:14px;width:38px;height:38px;border:1px solid #d4ddea;border-radius:13px;background:#fff;color:#44516a;font-size:1.4rem;cursor:pointer}
  body.is-authenticated .mobile-profile-user{display:grid;grid-template-columns:58px 1fr;gap:13px;align-items:center;padding:4px 48px 17px 2px;border-bottom:1px solid var(--line)}
  body.is-authenticated .mobile-profile-avatar{width:58px!important;height:58px!important;font-size:.92rem!important}
  body.is-authenticated .mobile-profile-user h2{margin:0 0 4px;font-size:1.12rem;letter-spacing:-.03em}
  body.is-authenticated .mobile-profile-user p{margin:0;color:var(--muted);font-size:.82rem;font-weight:800}
  body.is-authenticated .mobile-profile-actions{display:grid;gap:9px;padding-top:15px}
  body.is-authenticated .mobile-profile-actions a,
  body.is-authenticated .mobile-profile-actions button{min-height:48px;padding:0 14px;display:flex;align-items:center;border:1px solid #d4ddea;border-radius:14px;background:#fff;color:#334158;font-weight:850;text-align:left;text-decoration:none;cursor:pointer}
  body.is-authenticated .mobile-profile-actions a.switch{border-color:rgba(215,25,32,.28);background:#fff5f5;color:#aa1117}
  body.is-authenticated .mobile-profile-actions button.danger{justify-content:center;border-color:rgba(180,35,24,.24);background:#fff5f5;color:#b42318}

  @keyframes ventasSheetIn{from{transform:translateY(22px);opacity:.55}to{transform:translateY(0);opacity:1}}
}

@media (max-width:390px){
  body.is-authenticated .mobile-bottom-nav{left:6px!important;right:6px!important;grid-template-columns:repeat(4,minmax(0,1fr)) 42px repeat(3,minmax(0,1fr))!important;padding-left:4px!important;padding-right:4px!important}
  body.is-authenticated .mobile-nav-btn{font-size:.47rem!important}
  body.is-authenticated .mobile-nav-btn svg{width:19px!important;height:19px!important}
  body.is-authenticated .mobile-nav-brand{width:42px!important}
  body.is-authenticated .mobile-nav-brand img{width:39px!important;height:39px!important}
  body.is-authenticated .mobile-plus-circle{width:38px!important;height:38px!important}
}

/* =========================================================
   CATÁLOGO COMERCIAL Y CONFIGURACIÓN
========================================================= */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.catalog-heading{align-items:center}.catalog-admin-panel{padding:18px}.catalog-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) 180px 170px;gap:12px;margin-bottom:16px}.catalog-toolbar label,.catalog-form-grid label,.catalog-browser-search{display:grid;gap:7px}.catalog-toolbar label>span,.catalog-form-grid label>span{color:#58667d;font-size:.7rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.catalog-toolbar input,.catalog-toolbar select,.catalog-form-grid input,.catalog-form-grid select,.catalog-browser-search input{width:100%;min-height:44px;padding:10px 12px;border:1px solid #cfd8e5;border-radius:12px;background:#fff;color:var(--ink);outline:none}.catalog-toolbar input:focus,.catalog-toolbar select:focus,.catalog-form-grid input:focus,.catalog-form-grid select:focus,.catalog-browser-search input:focus{border-color:rgba(215,25,32,.62);box-shadow:0 0 0 4px rgba(215,25,32,.10)}.catalog-admin-list{display:grid;gap:11px}.catalog-admin-row{display:grid;grid-template-columns:112px minmax(0,1fr) auto;gap:15px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 5px 15px rgba(23,32,51,.045)}.catalog-admin-row.inactive{opacity:.66;background:#f7f8fa}.catalog-admin-cover{width:112px;height:82px;border-radius:14px;overflow:hidden;display:grid;place-items:center;background:#eef2f7;border:1px solid #d9e1ec;color:#7b8798;font-size:.72rem;font-weight:850}.catalog-admin-cover img{width:100%;height:100%;object-fit:contain;background:#fff}.catalog-admin-main{min-width:0}.catalog-admin-title{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.catalog-admin-title h3{margin:3px 0 0;font-size:1.05rem;letter-spacing:-.025em}.status-chip.off{background:#f1f3f6;color:#667085;border-color:#d7dde6}.catalog-admin-values{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:13px}.catalog-admin-values span{min-width:0;padding:9px 10px;border-radius:12px;background:#f7f9fc;border:1px solid #e3e8ef}.catalog-admin-values small,.catalog-admin-values strong{display:block}.catalog-admin-values small{color:#7a8799;font-size:.64rem;font-weight:900;text-transform:uppercase}.catalog-admin-values strong{margin-top:4px;color:#27344b;font-size:.78rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.catalog-admin-actions{display:grid;gap:8px}.btn.danger-outline{background:#fff;color:#b1181e;border-color:#efb9bd}.catalog-inline-message{margin:0 0 14px;padding:11px 13px;border-radius:12px;font-size:.83rem;font-weight:800}.catalog-inline-message.success{color:#067647;background:#ecfdf3;border:1px solid #abefc6}.catalog-inline-message.error{color:#b42318;background:#fff1f2;border:1px solid #fecdd3}.catalog-modal{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:18px}.catalog-modal.hidden{display:none!important}.catalog-modal-backdrop{position:absolute;inset:0;border:0;background:rgba(15,23,42,.56);backdrop-filter:blur(5px)}.catalog-modal-card{position:relative;z-index:1;width:min(980px,100%);max-height:min(92vh,920px);display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden;border:1px solid rgba(255,255,255,.45);border-radius:25px;background:#fff;box-shadow:0 30px 80px rgba(15,23,42,.30)}.catalog-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:18px 20px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,#fff,#f7f9fc)}.catalog-modal-head h2{margin:3px 0 0;font-size:1.35rem}.catalog-modal-close{width:40px;height:40px;border:1px solid #d6deea;border-radius:12px;background:#fff;color:#344054;font-size:1.4rem;cursor:pointer}.catalog-model-form{overflow:auto;padding:20px}.catalog-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.catalog-active-check{display:flex;align-items:center;gap:10px;margin:15px 0;padding:12px 13px;border:1px solid var(--line);border-radius:14px;background:#f8fafc;color:#344054;font-weight:800}.catalog-active-check input{width:18px;height:18px;accent-color:var(--red)}.catalog-upload-section{margin-top:14px;padding:16px;border:1px solid var(--line);border-radius:18px;background:#f9fafc}.catalog-upload-title{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:13px}.catalog-upload-title h3{margin:3px 0 0}.catalog-upload-title p{margin:0;color:var(--muted);font-size:.78rem}.catalog-upload-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.catalog-file-field{display:grid;gap:6px;padding:12px;border:1px dashed #c5cfdd;border-radius:14px;background:#fff;cursor:pointer}.catalog-file-field strong{font-size:.85rem}.catalog-file-field span{color:var(--muted);font-size:.7rem}.catalog-file-field input{width:100%;font-size:.76rem}.catalog-current-media{margin-top:17px}.catalog-current-media h3{font-size:.95rem}.catalog-media-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.catalog-media-item{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:14px;background:#fff}.catalog-media-item img,.catalog-media-item video{display:block;width:100%;height:150px;object-fit:contain;background:#eef2f6}.catalog-media-item>div{padding:9px 10px}.catalog-media-item strong,.catalog-media-item span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.catalog-media-item strong{font-size:.78rem}.catalog-media-item span{margin-top:3px;color:var(--muted);font-size:.66rem}.catalog-media-item button{position:absolute;right:7px;top:7px;padding:6px 8px;border:0;border-radius:9px;background:rgba(167,15,22,.92);color:#fff;font-size:.65rem;font-weight:900;cursor:pointer}.catalog-media-empty{grid-column:1/-1;padding:20px;border:1px dashed #cad3df;border-radius:13px;text-align:center;color:var(--muted)}.catalog-modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:16px;padding-top:15px;border-top:1px solid var(--line)}body.catalog-modal-open{overflow:hidden}.catalog-browser{display:grid;gap:16px}.catalog-browser-toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center}.catalog-browser-search{width:min(340px,100%)}.catalog-browser-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.catalog-browser-empty{grid-column:1/-1}.catalog-model-card{overflow:hidden;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 8px 22px rgba(23,32,51,.065);transition:transform .16s ease,box-shadow .16s ease}.catalog-model-card:hover{transform:translateY(-2px);box-shadow:0 15px 30px rgba(23,32,51,.10)}.catalog-model-card>button{width:100%;padding:0;border:0;background:transparent;text-align:left;cursor:pointer;color:inherit}.catalog-model-image{height:210px;display:grid;place-items:center;padding:12px;background:linear-gradient(180deg,#fff,#f2f4f8);border-bottom:1px solid var(--line)}.catalog-model-image img{width:100%;height:100%;object-fit:contain}.catalog-card-no-image{width:92px;height:92px;display:grid;place-items:center;border-radius:24px;background:#fff;border:1px solid #d5dde8;color:var(--red);font-size:1.4rem;font-weight:950}.catalog-model-copy{padding:16px}.catalog-model-copy h3{margin:5px 0 10px;font-size:1.18rem;letter-spacing:-.03em}.catalog-model-price{display:block;font-size:1.32rem;letter-spacing:-.035em}.catalog-model-registration{display:flex;flex-wrap:wrap;gap:6px;margin-top:11px}.catalog-model-registration span{padding:6px 8px;border-radius:9px;background:#f4f6f9;color:#667085;font-size:.68rem;font-weight:850}.catalog-viewer-card{width:min(1050px,100%)}.catalog-viewer-content{overflow:auto;padding:18px}.catalog-viewer-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.catalog-viewer-gallery img,.catalog-viewer-gallery video{width:100%;height:330px;object-fit:contain;border:1px solid var(--line);border-radius:16px;background:#eef2f6}.catalog-viewer-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:15px}.catalog-viewer-values div{padding:13px;border:1px solid var(--line);border-radius:14px;background:#f8fafc}.catalog-viewer-values span,.catalog-viewer-values strong{display:block}.catalog-viewer-values span{color:var(--muted);font-size:.68rem;font-weight:900;text-transform:uppercase}.catalog-viewer-values strong{margin-top:5px;font-size:1rem}.catalog-viewer-note{margin:14px 0 0;color:var(--muted);font-size:.8rem}.catalog-viewer-no-media{padding:45px;border:1px dashed #cbd5e1;border-radius:16px;text-align:center;color:var(--muted)}

@media(max-width:1050px){.catalog-admin-row{grid-template-columns:92px minmax(0,1fr)}.catalog-admin-cover{width:92px;height:76px}.catalog-admin-actions{grid-column:1/-1;display:flex;justify-content:flex-end}.catalog-browser-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-admin-values{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.catalog-heading{align-items:stretch}.catalog-heading .btn{width:100%}.catalog-toolbar{grid-template-columns:1fr}.catalog-admin-row{grid-template-columns:76px minmax(0,1fr);gap:10px;padding:10px}.catalog-admin-cover{width:76px;height:68px}.catalog-admin-title{display:block}.catalog-admin-title .status-chip{margin-top:7px}.catalog-admin-values{grid-template-columns:1fr 1fr}.catalog-admin-actions{display:grid;grid-template-columns:1fr 1fr}.catalog-form-grid{grid-template-columns:1fr}.catalog-upload-title{display:block}.catalog-upload-title p{margin-top:7px}.catalog-upload-grid,.catalog-media-grid{grid-template-columns:1fr}.catalog-modal{padding:0}.catalog-modal-card{width:100%;height:100dvh;max-height:none;border-radius:0}.catalog-model-form{padding:15px 13px 110px}.catalog-modal-head{padding:14px}.catalog-browser-toolbar{display:grid}.catalog-browser-search{width:100%}.catalog-browser-grid{grid-template-columns:1fr}.catalog-model-image{height:210px}.catalog-viewer-gallery{grid-template-columns:1fr}.catalog-viewer-gallery img,.catalog-viewer-gallery video{height:260px}.catalog-viewer-values{grid-template-columns:1fr}.catalog-viewer-content{padding:13px 13px 105px}}


/* =========================================================
   CONFIGURACIÓN V2 · MODELOS, FINANCIACIÓN Y ACCESORIOS
========================================================= */
.config-main-tabs{margin-bottom:18px}.config-tab-panel{display:grid;gap:15px}.config-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.config-section-head h3{margin:4px 0 5px;font-size:1.24rem;letter-spacing:-.03em}.config-section-head p{margin:0;color:var(--muted);line-height:1.45}.finance-options-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.finance-option-card{display:grid;grid-template-columns:58px minmax(0,1fr) auto;gap:14px;align-items:center;padding:17px;border:1px solid var(--line);border-radius:19px;background:#fff;box-shadow:0 7px 20px rgba(23,32,51,.055)}.finance-option-card.disabled{opacity:.66;background:#f7f8fa}.finance-option-icon{width:58px;height:58px;display:grid;place-items:center;border-radius:17px;background:#fff1f2;color:var(--red-dark);border:1px solid #fecdd3;font-weight:950}.finance-option-card h3{margin:4px 0 5px}.finance-option-card p{margin:0;color:var(--muted);font-size:.84rem}.card-rates-panel{scroll-margin-top:110px}.simple-admin-list{display:grid;gap:9px}.simple-admin-row{display:grid;grid-template-columns:minmax(150px,1fr) 120px 100px auto;gap:13px;align-items:center;padding:13px 14px;border:1px solid var(--line);border-radius:15px;background:#fff}.simple-admin-row.inactive{opacity:.62;background:#f7f8fa}.simple-admin-row h3{margin:3px 0 0}.rate-interest{font-size:1.15rem;color:#172033}.simple-admin-actions{display:flex;gap:7px}.accessory-toolbar{display:grid;grid-template-columns:1fr 190px;gap:12px;margin-bottom:15px}.accessory-toolbar label{display:grid;gap:7px}.accessory-toolbar label>span{color:#58667d;font-size:.7rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.accessory-toolbar input,.accessory-toolbar select{width:100%;min-height:44px;padding:10px 12px;border:1px solid #cfd8e5;border-radius:12px;background:#fff;color:var(--ink);outline:none}.accessory-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.accessory-admin-card{display:grid;grid-template-columns:105px minmax(0,1fr);gap:13px;padding:12px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 5px 15px rgba(23,32,51,.045)}.accessory-admin-card.inactive{opacity:.62;background:#f7f8fa}.accessory-admin-image{grid-row:1/3;width:105px;height:105px;display:grid;place-items:center;overflow:hidden;border:1px solid #d9e1ec;border-radius:15px;background:#f5f7fa;color:#7b8798;font-size:.72rem;font-weight:850}.accessory-admin-image img{width:100%;height:100%;object-fit:contain;background:#fff}.accessory-admin-copy{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:start}.accessory-admin-copy h3{margin:4px 0 0;font-size:1rem}.accessory-admin-copy>strong{font-size:1.05rem}.accessory-admin-copy .status-chip{grid-column:1/-1;width:max-content}.accessory-admin-actions{grid-column:2;display:flex;justify-content:flex-end;gap:7px}.compact-modal{width:min(720px,100%)}.accessory-image-field{align-self:end}.accessory-current-image{display:grid;grid-template-columns:92px minmax(0,1fr) auto;gap:12px;align-items:center;margin-top:14px;padding:11px;border:1px solid var(--line);border-radius:15px;background:#f8fafc}.accessory-current-image img{width:92px;height:76px;object-fit:contain;border:1px solid var(--line);border-radius:11px;background:#fff}.accessory-current-image strong,.accessory-current-image span{display:block}.accessory-current-image span{margin-top:4px;color:var(--muted);font-size:.72rem}.model-accessories-section{margin-top:14px;padding:16px;border:1px solid var(--line);border-radius:18px;background:#fff}.model-accessory-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.model-accessory-option{display:grid;grid-template-columns:18px 54px minmax(0,1fr);gap:9px;align-items:center;padding:9px;border:1px solid #dfe5ee;border-radius:13px;background:#f9fafc;cursor:pointer}.model-accessory-option input{width:18px;height:18px;accent-color:var(--red)}.model-accessory-thumb{width:54px;height:45px;display:grid;place-items:center;overflow:hidden;border:1px solid #dce3ed;border-radius:9px;background:#fff;color:#8a96a8;font-size:.58rem;font-weight:900}.model-accessory-thumb img{width:100%;height:100%;object-fit:contain}.model-accessory-option strong,.model-accessory-option small{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.model-accessory-option strong{font-size:.78rem}.model-accessory-option small{margin-top:3px;color:var(--muted);font-size:.68rem}.model-accessory-empty{grid-column:1/-1;padding:17px;border:1px dashed #cbd5e1;border-radius:12px;color:var(--muted);text-align:center}.model-accessory-empty.error{color:#b42318;background:#fff1f2}
@media(max-width:900px){.finance-options-grid,.accessory-admin-grid{grid-template-columns:1fr}.simple-admin-row{grid-template-columns:1fr auto auto}.simple-admin-actions{grid-column:1/-1;justify-content:flex-end}}
@media(max-width:760px){.config-section-head{display:grid}.config-section-head .btn{width:100%}.finance-option-card{grid-template-columns:50px minmax(0,1fr)}.finance-option-card .btn{grid-column:1/-1;width:100%}.accessory-toolbar{grid-template-columns:1fr}.accessory-admin-card{grid-template-columns:78px minmax(0,1fr)}.accessory-admin-image{width:78px;height:78px}.accessory-admin-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}.simple-admin-row{grid-template-columns:1fr auto}.simple-admin-row .status-chip{grid-column:1}.simple-admin-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}.model-accessory-options{grid-template-columns:1fr}.accessory-current-image{grid-template-columns:72px minmax(0,1fr)}.accessory-current-image img{width:72px;height:64px}.accessory-current-image .btn{grid-column:1/-1;width:100%}}

/* Configuración de turnos */
.turn-settings-grid{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(380px,1.2fr);gap:15px;align-items:start}.turn-capacity-card,.turn-calendar-editor{display:grid;gap:15px}.turn-capacity-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.turn-capacity-fields label,.turn-blocked-day-form label{display:grid;gap:7px}.turn-capacity-fields label>span,.turn-blocked-day-form label>span{color:#58667d;font-size:.7rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.turn-capacity-fields input,.turn-blocked-day-form input{width:100%;min-height:44px;padding:10px 12px;border:1px solid #cfd8e5;border-radius:12px;background:#fff;color:var(--ink);outline:none}.turn-capacity-fields small{color:var(--muted);font-size:.68rem;line-height:1.35}.turn-capacity-card>.btn{justify-self:start}.turn-blocked-day-form{display:grid;grid-template-columns:155px minmax(180px,1fr) auto;gap:10px;align-items:end}.turn-blocked-days-list{display:grid;gap:8px}.turn-blocked-day-row{display:grid;grid-template-columns:minmax(150px,.7fr) minmax(180px,1fr) auto;gap:12px;align-items:center;padding:11px 12px;border:1px solid #f0c4c6;border-radius:14px;background:#fff7f7}.turn-blocked-day-row strong{color:#971e24;text-transform:capitalize}.turn-blocked-day-row span{color:#677489;font-size:.78rem}.turn-blocked-days-empty{padding:18px;border:1px dashed #cbd5e1;border-radius:14px;color:var(--muted);text-align:center}
@media(max-width:900px){.turn-settings-grid{grid-template-columns:1fr}}
@media(max-width:620px){.turn-capacity-fields,.turn-blocked-day-form{grid-template-columns:1fr}.turn-capacity-card>.btn,.turn-blocked-day-form>.btn{width:100%}.turn-blocked-day-row{grid-template-columns:1fr auto}.turn-blocked-day-row span{grid-column:1}}

/* =========================================================
   COTIZADOR AP · VISTA DETALLE Y FLYERS
========================================================= */
.module-cotizador-ap .content-breadcrumb{padding:12px 18px;background:rgba(255,255,255,.72)}
.module-cotizador-ap .module-content{padding:16px}
.ap-quoter-module{min-width:0}
.ap-catalog-toolbar{margin-bottom:16px}
.ap-quote-view{min-width:0}
.ap-quote-topline{display:flex;align-items:center;justify-content:flex-start;gap:14px;margin-bottom:14px}
.ap-back-button{border:1px solid #d4ddea;border-radius:13px;background:#fff;color:#334158;min-height:42px;padding:0 14px;font-weight:850;cursor:pointer;box-shadow:0 4px 12px rgba(23,32,51,.05)}
.ap-back-button:hover{border-color:rgba(215,25,32,.35);color:#b1181e}
.ap-quote-breadcrumb{display:flex;align-items:center;justify-content:flex-start;gap:7px;min-width:0;color:#8a94a6;font-size:.78rem;font-weight:800;text-align:left;text-transform:uppercase}
.ap-quote-breadcrumb button{appearance:none;border:0;background:transparent;padding:4px 2px;color:#596579;font:inherit;text-transform:inherit;cursor:pointer;border-radius:6px}
.ap-quote-breadcrumb button:hover,.ap-quote-breadcrumb button:focus-visible{color:#b1181e;text-decoration:underline;text-underline-offset:3px;outline:none}
.ap-quote-breadcrumb strong{min-width:0;max-width:280px;overflow:hidden;color:#182236;text-overflow:ellipsis;white-space:nowrap}
.ap-quote-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(390px,.9fr);gap:16px;align-items:start}
.ap-product-card,.ap-quote-card{border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:0 8px 22px rgba(23,32,51,.06)}
.ap-product-card{padding:20px;position:sticky;top:112px}
.ap-product-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:12px}
.ap-product-head h2{margin:5px 0 0;font-size:clamp(1.55rem,2.4vw,2.2rem);letter-spacing:-.05em}
.ap-product-price{font-size:1.22rem;font-weight:950;color:#111827;white-space:nowrap}
.ap-media-stage{min-height:430px;display:grid;place-items:center;border-radius:19px;background:linear-gradient(180deg,#fbfcfe,#f4f6f9);overflow:hidden;border:1px solid #e1e7ef}
.ap-media-stage img,.ap-media-stage video{display:block;width:100%;height:430px;object-fit:contain;background:#fff}
.ap-media-empty{color:var(--muted);font-weight:750;text-align:center;padding:35px}
.ap-media-controls{display:grid;grid-template-columns:38px minmax(0,1fr) 38px;gap:9px;align-items:center;margin-top:12px}
.ap-media-arrow{width:38px;height:44px;border:1px solid #d4ddea;border-radius:13px;background:#fff;color:#334158;font-size:1.45rem;cursor:pointer}
.ap-media-thumbs{display:flex;gap:9px;overflow-x:auto;padding:2px;scrollbar-width:thin}
.ap-media-thumbs button{position:relative;flex:0 0 76px;height:65px;padding:0;border:2px solid transparent;border-radius:13px;background:#f6f8fb;overflow:hidden;cursor:pointer;color:#fff}
.ap-media-thumbs button.active{border-color:var(--red);box-shadow:0 0 0 3px rgba(215,25,32,.08)}
.ap-media-thumbs img{width:100%;height:100%;object-fit:cover;background:#fff}
.ap-video-thumb-icon{position:absolute;inset:0;display:grid;place-items:center;background:rgba(15,23,42,.72);font-size:1.35rem}
.ap-media-thumbs small{position:absolute;left:0;right:0;bottom:5px;font-size:.6rem;font-weight:900;text-align:center}
.ap-share-media-button{width:100%;margin-top:12px}
.ap-config-column{display:grid;gap:14px;min-width:0}
.ap-quote-card{padding:18px}
.ap-card-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:15px}
.ap-card-title-row h3{margin:4px 0 0;font-size:1.08rem;letter-spacing:-.025em}
.ap-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.ap-choice-block{display:grid;gap:8px}
.ap-field-label{display:block;color:#4b586e;font-size:.74rem;font-weight:900;text-transform:uppercase;letter-spacing:.045em}
.ap-segmented{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.ap-segmented button{min-height:43px;border:1px solid #cfd8e5;border-radius:12px;background:#fff;color:#425069;font-weight:900;cursor:pointer}
.ap-segmented button.active{border-color:rgba(215,25,32,.55);background:#fff2f2;color:#b1181e;box-shadow:0 0 0 3px rgba(215,25,32,.07)}
.ap-card-payment-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:14px;margin-top:15px;padding-top:15px;border-top:1px solid var(--line)}
.ap-advance-field,.ap-installments-block{display:grid;gap:7px}
.ap-money-input-wrap{display:grid;grid-template-columns:30px minmax(0,1fr);align-items:center;border:1px solid #cfd8e5;border-radius:12px;background:#fff;overflow:hidden}
.ap-money-input-wrap>span{display:grid;place-items:center;height:44px;background:#f6f8fb;color:#667085;font-weight:900}
.ap-money-input-wrap input{height:44px;border:0!important;border-radius:0!important;box-shadow:none!important;padding:0 10px!important;font-weight:850}
.ap-advance-field small,.ap-installments-block small{color:#778499;font-size:.72rem;line-height:1.35}
.ap-installment-options{display:flex;flex-wrap:wrap;gap:7px}
.ap-installment-options button{min-width:66px;min-height:57px;padding:6px 9px;border:1px solid #d4ddea;border-radius:12px;background:#fff;color:#344258;cursor:pointer;display:grid;place-items:center;gap:0}
.ap-installment-options button strong{font-size:1rem}
.ap-installment-options button span,.ap-installment-options button small{font-size:.62rem;color:#7a879a}
.ap-installment-options button.active{border-color:rgba(215,25,32,.55);background:#fff2f2;color:#b1181e;box-shadow:0 0 0 3px rgba(215,25,32,.07)}
.ap-installment-options button.active span,.ap-installment-options button.active small{color:#b1181e}
.ap-no-rates{color:#a11319;font-size:.78rem;font-weight:850}
.ap-accessories-card{padding:0;overflow:hidden}
.ap-accessories-toggle{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:15px 18px;border:0;background:#fff;color:inherit;text-align:left;cursor:pointer}
.ap-accessories-toggle:hover{background:#fbfcfd}
.ap-accessories-toggle:focus-visible{outline:3px solid rgba(215,25,32,.16);outline-offset:-3px}
.ap-accessories-toggle:disabled{cursor:default}
.ap-accessories-toggle:disabled:hover{background:#fff}
.ap-accessories-toggle h3{margin:4px 0 0;font-size:1.08rem;letter-spacing:-.025em}
.ap-accessories-toggle h3 span{display:inline-grid;min-width:23px;height:23px;place-items:center;margin-left:5px;padding:0 6px;border-radius:999px;background:#fff0f1;color:#b1181e;font-size:.7rem;vertical-align:2px}
.ap-accessories-toggle-action{min-height:38px;display:inline-flex;align-items:center;gap:9px;padding:4px 5px 4px 12px;border:1px solid #d8dee7;border-radius:999px;background:#f6f8fa;color:#4c586a;font-size:.72rem;font-weight:900;white-space:nowrap;box-shadow:0 2px 5px rgba(31,41,55,.04);transition:border-color .18s ease,background .18s ease,transform .18s ease}
.ap-accessories-chevron{position:relative;display:grid;width:28px;height:28px;place-items:center;border-radius:50%;background:#e30613;color:#fff;box-shadow:0 4px 10px rgba(227,6,19,.22);transition:background .18s ease,transform .18s ease}
.ap-accessories-chevron::before{content:"";width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translate(-1px,-1px);transition:transform .18s ease}
.ap-accessories-card.is-expanded .ap-accessories-chevron::before{transform:rotate(-135deg) translate(-1px,-1px)}
.ap-accessories-toggle:hover .ap-accessories-toggle-action{border-color:rgba(227,6,19,.35);background:#fff5f5;transform:translateY(-1px)}
.ap-accessories-card.is-expanded .ap-accessories-toggle-action{border-color:rgba(227,6,19,.3);background:#fff4f4;color:#a40b14}
.ap-accessories-toggle:disabled .ap-accessories-toggle-action{border-color:#e2e5e9;background:#f7f8f9;color:#99a1ac;box-shadow:none;transform:none}
.ap-accessories-toggle:disabled .ap-accessories-chevron{background:#b8bec7;box-shadow:none}
.ap-accessories-panel{padding:14px 18px 18px;border-top:1px solid var(--line);background:#fcfcfd}
.ap-accessories-panel[hidden]{display:none}
.ap-personal-catalog-share{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 14px;align-items:center;padding:14px 18px;border-top:1px solid #f0c9cc;background:linear-gradient(135deg,#fff7f7,#fff)}
.ap-personal-catalog-share small,.ap-personal-catalog-share strong{display:block}.ap-personal-catalog-share small{margin-bottom:3px;color:#a90f16;font-size:.61rem;font-weight:950;letter-spacing:.12em}.ap-personal-catalog-share strong{font-size:.82rem}.ap-personal-catalog-share .btn{min-height:39px;font-size:.75rem}
.ap-accessories-list{display:grid;gap:9px}
.ap-accessory-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:10px;border:1px solid #dbe2ec;border-radius:15px;background:#fff;transition:.15s ease}
.ap-accessory-row.selected{border-color:rgba(215,25,32,.35);background:#fff7f7;box-shadow:0 0 0 3px rgba(215,25,32,.05)}
.ap-accessory-row.unavailable{background:#f5f6f7;opacity:.68}
.ap-accessory-row.unavailable .ap-accessory-select{cursor:not-allowed}
.ap-accessory-row.unavailable .ap-accessory-copy small{color:#b1181e;font-weight:850}
.ap-accessory-select{display:grid;grid-template-columns:20px 52px minmax(0,1fr);gap:10px;align-items:center;cursor:pointer;min-width:0}
.ap-accessory-select input{width:18px;height:18px;accent-color:var(--red)}
.ap-accessory-image{width:52px;height:52px;border-radius:12px;overflow:hidden;display:grid;place-items:center;background:#f5f7fa;border:1px solid #e0e6ee;color:var(--red);font-weight:950}
.ap-accessory-image img{width:100%;height:100%;object-fit:contain;background:#fff}
.ap-accessory-copy{min-width:0}
.ap-accessory-copy strong,.ap-accessory-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ap-accessory-copy strong{font-size:.87rem;color:#253149}
.ap-accessory-copy small{margin-top:3px;color:#7a879a;font-size:.68rem}
.ap-accessory-price{font-size:.84rem;white-space:nowrap}
.ap-accessory-flyer-button{min-height:34px;padding:0 10px;border:1px solid #d4ddea;border-radius:10px;background:#fff;color:#b1181e;font-size:.72rem;font-weight:900;cursor:pointer}
.ap-accessory-empty{padding:18px;border:1px dashed #ccd5e2;border-radius:14px;background:#f9fafc;color:var(--muted);text-align:center}
.ap-quote-summary{display:grid;gap:0}
.ap-quote-summary>div{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:9px 0;border-bottom:1px solid #edf0f4;color:#526078;font-size:.82rem}
.ap-quote-summary>div strong{color:#172033;text-align:right}
.ap-quote-summary .positive{color:#16803a}
.ap-quote-summary .ap-summary-total{margin-top:5px;padding:14px 0 5px;border-bottom:0;color:#172033;font-weight:900}
.ap-quote-summary .ap-summary-total strong{font-size:1.4rem;color:var(--red)}
.ap-summary-caption{display:block;margin-top:7px;color:#748196;text-align:right;font-size:.72rem}
.ap-quote-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}
.ap-flyer-modal-card{width:min(760px,96vw);max-height:94dvh}
.ap-flyer-modal-body{padding:16px;overflow:auto;background:#f5f7fa}
.ap-flyer-preview{display:grid;place-items:center;min-height:320px}
.ap-flyer-preview img{display:block;width:min(440px,100%);height:auto;border-radius:18px;box-shadow:0 18px 40px rgba(15,23,42,.18)}
.ap-flyer-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:15px}
.ap-share-note{margin:10px 0 0;color:#768399;font-size:.74rem;line-height:1.4;text-align:center}

@media(max-width:1180px){
  .ap-quote-layout{grid-template-columns:1fr}
  .ap-product-card{position:static}
  .ap-media-stage,.ap-media-stage img,.ap-media-stage video{height:390px;min-height:390px}
}

@media(max-width:760px){
  .module-cotizador-ap .module-content{padding:10px!important}
  .module-cotizador-ap .content-card{overflow:visible!important;background:transparent!important;border:0!important;box-shadow:none!important}
  .ap-catalog-toolbar{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
  .ap-catalog-toolbar .catalog-browser-search{width:100%}
  .ap-quote-topline{align-items:flex-start;flex-direction:column}
    .ap-quote-breadcrumb{justify-content:flex-start;width:100%;text-align:left;font-size:.72rem}
  .ap-product-card,.ap-quote-card{border-radius:18px;padding:13px}
  .ap-product-head{align-items:flex-start;flex-direction:column}
  .ap-product-price{font-size:1.05rem}
  .ap-media-stage,.ap-media-stage img,.ap-media-stage video{height:300px;min-height:300px}
  .ap-media-controls{grid-template-columns:34px minmax(0,1fr) 34px}
  .ap-media-arrow{width:34px}
  .ap-media-thumbs button{flex-basis:64px;height:57px}
    .ap-choice-grid,.ap-card-payment-fields{grid-template-columns:1fr}
    .ap-accessories-toggle{grid-template-columns:minmax(0,1fr) auto auto;padding:14px 13px;gap:8px}
    .ap-accessories-toggle-action>span:first-child{display:none}
    .ap-accessories-toggle-action{min-height:38px;padding:4px}
    .ap-accessories-panel{padding:12px 13px 14px}
    .ap-personal-catalog-share{grid-template-columns:1fr;padding:13px}.ap-personal-catalog-share .btn{width:100%}
    .ap-accessory-row{grid-template-columns:minmax(0,1fr) auto}
  .ap-accessory-price{grid-column:2;grid-row:1}
  .ap-accessory-flyer-button{grid-column:1/-1;width:100%}
  .ap-quote-actions,.ap-flyer-actions{grid-template-columns:1fr}
  .ap-flyer-modal-card{width:100%;height:100dvh;max-height:none;border-radius:0}
  .ap-flyer-modal-body{padding-bottom:calc(20px + env(safe-area-inset-bottom))}
}


/* =========================================================
   COTIZADOR AP · SPECH, ACCESORIOS ORDENADOS Y FLYERS 9:16
========================================================= */
.catalog-textarea-field textarea{
  width:100%;
  min-height:112px;
  resize:vertical;
  padding:12px 13px;
  border:1px solid #cfd8e5;
  border-radius:13px;
  background:#fff;
  color:var(--ink);
  line-height:1.5;
  outline:none
}
.catalog-textarea-field textarea:focus{
  border-color:rgba(215,25,32,.58);
  box-shadow:0 0 0 4px rgba(215,25,32,.09)
}
.catalog-textarea-field small{
  color:#7a879a;
  font-size:.71rem;
  line-height:1.4;
  text-transform:none;
  letter-spacing:0
}
.accessory-admin-description{
  margin:7px 0 0;
  color:#738097;
  font-size:.76rem;
  line-height:1.4;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden
}
.ap-speech-button{
  border-color:rgba(215,25,32,.32)!important;
  background:#fff7f7!important;
  color:#a8171d!important
}
.ap-speech-modal-card{
  width:min(680px,calc(100vw - 24px));
  max-height:min(86dvh,720px);
  background:linear-gradient(180deg,#fff 0%,#f5f7fa 100%)
}
.ap-speech-modal-head p{
  margin:5px 0 0;
  color:var(--muted);
  font-size:.82rem;
  font-weight:750
}
.ap-speech-modal-content{
  overflow:auto;
  padding:22px;
  overscroll-behavior:contain
}
.ap-speech-modal-content p{
  margin:0;
  color:#344258;
  font-size:1rem;
  font-weight:650;
  line-height:1.75;
  white-space:pre-wrap
}
.ap-accessories-list{
  max-height:274px;
  overflow-y:auto;
  padding-right:5px;
  overscroll-behavior:contain;
  scrollbar-width:thin;
  scrollbar-color:#bdc6d3 transparent
}
.ap-accessories-list::-webkit-scrollbar{width:7px}
.ap-accessories-list::-webkit-scrollbar-thumb{
  border-radius:999px;
  background:#bdc6d3
}
.ap-accessories-list::-webkit-scrollbar-track{background:transparent}
.ap-accessory-copy small{
  white-space:normal;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  line-height:1.3
}
.ap-flyer-preview img{
  width:min(390px,100%);
  border-radius:22px;
  box-shadow:0 24px 58px rgba(15,23,42,.24)
}
@media(max-width:760px){
  .ap-speech-modal-card{width:100%;height:100dvh;max-height:none;border-radius:0}
  .ap-speech-modal-content{padding:18px 16px calc(28px + env(safe-area-inset-bottom))}
  .ap-speech-modal-content p{font-size:.94rem;line-height:1.68}
  .ap-accessories-list{max-height:390px}
  .ap-flyer-preview img{width:min(360px,100%)}
}


/* =========================================================
   FLYERS COMERCIALES V4 · PREVISUALIZACIÓN
========================================================= */
.ap-flyer-modal-body{
  background:
    radial-gradient(circle at 85% 5%,rgba(215,25,32,.12),transparent 31%),
    linear-gradient(145deg,#eef2f7,#dde3ea)
}
.ap-flyer-preview{
  padding:18px;
  border:1px solid rgba(185,196,211,.75);
  border-radius:24px;
  background:rgba(255,255,255,.58);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.85)
}
.ap-flyer-preview img{
  width:min(405px,100%);
  border-radius:24px;
  box-shadow:0 30px 72px rgba(15,23,42,.30)
}
@media(max-width:760px){
  .ap-flyer-preview{padding:10px;border-radius:18px}
  .ap-flyer-preview img{width:min(370px,100%);border-radius:19px}
}


/* =========================================================
   DATOS TÉCNICOS · CONFIGURACIÓN Y COTIZADOR AP
========================================================= */
.technical-config-launch{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto;
  align-items:center;
  gap:12px;
  padding:15px;
  border:1px solid #d9e1ec;
  border-radius:16px;
  background:linear-gradient(135deg,#fbfcfe,#f4f6fa);
}
.technical-config-launch>div{display:grid;gap:4px}
.technical-config-launch strong{font-size:1rem;color:#243047}
.technical-config-launch small{color:var(--muted);line-height:1.4;text-transform:none;letter-spacing:0}
.technical-data-editor-card{width:min(1050px,calc(100vw - 28px));max-height:92dvh}
.technical-data-editor-body{padding:18px 20px 22px;overflow:auto}
.technical-editor-note{margin:0 0 16px;padding:12px 14px;border-radius:13px;background:#f5f7fa;color:#59677d;line-height:1.45}
.technical-form-group{padding:16px;margin-bottom:14px;border:1px solid #dce3ed;border-radius:18px;background:#fff}
.technical-form-group>header{display:flex;align-items:center;gap:10px;margin-bottom:14px}
.technical-form-group h3{margin:0;font-size:1rem}
.technical-group-icon{
  width:38px;height:38px;display:grid;place-items:center;border-radius:12px;
  background:#fff1f2;color:#b1181e;font-weight:950;border:1px solid #fecdd3
}
.technical-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.technical-form-grid label{display:grid;gap:6px;color:#4c5a70;font-size:.72rem;font-weight:850;text-transform:uppercase;letter-spacing:.035em}
.technical-form-grid input{width:100%;min-height:43px;padding:10px 12px;border:1px solid #cfd8e5;border-radius:12px;background:#fff;color:var(--ink);outline:none}
.technical-form-grid input:focus{border-color:rgba(215,25,32,.6);box-shadow:0 0 0 4px rgba(215,25,32,.1)}

.ap-product-action-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-top:12px}
.ap-product-action-row .btn{width:100%;margin:0}
.ap-share-media-button{min-width:0}
.ap-technical-data-button{border-color:rgba(215,25,32,.35)!important;color:#a8171d!important;background:#fff7f7!important}

.ap-technical-modal-card{
  width:min(920px,calc(100vw - 24px));
  max-height:92dvh;
  overflow:hidden;
  background:linear-gradient(180deg,#ffffff 0%,#f4f6f9 100%);
}
.ap-technical-modal-head{background:#fff}
.ap-technical-modal-head p{margin:5px 0 0;color:var(--muted);font-size:.82rem;font-weight:750}
.ap-technical-data-content{padding:18px;overflow:auto;max-height:calc(92dvh - 102px)}
.ap-technical-flyer-brand{
  position:relative;overflow:hidden;margin-bottom:16px;padding:20px 22px;border-radius:21px;
  background:linear-gradient(135deg,#151d2c 0%,#263247 68%,#aa1117 160%);color:#fff;
  box-shadow:0 16px 32px rgba(23,32,51,.18)
}
.ap-technical-flyer-brand:after{content:"";position:absolute;right:-35px;top:-55px;width:150px;height:150px;border:28px solid rgba(255,255,255,.07);border-radius:50%}
.ap-technical-flyer-brand span{display:block;font-size:.68rem;font-weight:950;letter-spacing:.16em;color:#ffb5b8}
.ap-technical-flyer-brand strong{display:block;margin-top:5px;font-size:clamp(1.25rem,3vw,2rem);letter-spacing:-.04em}
.ap-technical-group{margin-bottom:14px;padding:15px;border:1px solid #dbe2ec;border-radius:19px;background:#fff;box-shadow:0 8px 20px rgba(23,32,51,.055)}
.ap-technical-group>header{display:flex;align-items:center;gap:11px;margin-bottom:13px}
.ap-technical-group>header small{display:block;color:#9b1a20;font-size:.61rem;font-weight:950;letter-spacing:.12em;text-transform:uppercase}
.ap-technical-group h3{margin:2px 0 0;font-size:1rem}
.ap-technical-group-icon,.ap-technical-item-icon{
  flex:0 0 auto;display:grid;place-items:center;border-radius:13px;background:#fff1f2;color:#b1181e;border:1px solid #fecdd3
}
.ap-technical-group-icon{width:42px;height:42px}
.ap-technical-item-icon{width:37px;height:37px}
.ap-technical-group-icon svg,.ap-technical-item-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.ap-technical-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.ap-technical-item{display:grid;grid-template-columns:37px minmax(0,1fr);gap:10px;align-items:center;min-height:67px;padding:10px;border:1px solid #e1e6ee;border-radius:14px;background:linear-gradient(145deg,#fff,#fafbfc)}
.ap-technical-item-copy{display:block;min-width:0}
.ap-technical-item-copy small{display:block;color:#7b8799;font-size:.64rem;font-weight:850;text-transform:uppercase;letter-spacing:.035em}
.ap-technical-item-copy strong{display:block;margin-top:3px;color:#202c40;font-size:.88rem;line-height:1.3;overflow-wrap:anywhere}

@media(max-width:760px){
  .technical-config-launch{grid-template-columns:1fr}
  .technical-config-launch .btn{width:100%}
  .technical-config-launch .status-chip{justify-self:start}
  .technical-form-grid{grid-template-columns:1fr}
  .ap-product-action-row{grid-template-columns:1fr}
  .ap-product-action-row .btn{padding:0 8px;font-size:.73rem}
  .ap-technical-data-content{padding:12px}
  .ap-technical-grid{grid-template-columns:1fr}
  .ap-technical-flyer-brand{padding:17px}
}


/* =========================================================
   DATOS GENERALES Y SELECTOR DE GASTOS · COTIZADOR AP
========================================================= */
.config-section-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.sales-data-modal-card{width:min(620px,calc(100vw - 28px))}
.sales-data-form{padding:20px}
.sales-data-intro{margin:0 0 18px;color:var(--muted);line-height:1.5}
.ap-registration-options{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:6px!important}
.ap-registration-options button{min-width:0!important;padding:0 5px!important;font-size:.68rem!important;letter-spacing:-.015em!important;white-space:nowrap!important}
@media(max-width:560px){
  .config-section-actions{width:100%;display:grid;grid-template-columns:auto 1fr}
  .config-section-actions .btn{width:100%;padding:0 10px}
  .ap-registration-options{gap:4px!important}
  .ap-registration-options button{font-size:.59rem!important;padding:0 2px!important}
}


/* QJ: exactamente las mismas medidas del Cotizador AP */
.qj-quoter-module{width:100%}
.qj-payment-options{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.qj-payment-options button{
  min-width:0;
  padding-left:6px;
  padding-right:6px;
  font-size:.78rem;
}
.qj-prendario-preview{cursor:default}
@media(max-width:460px){
  .qj-payment-options{gap:5px!important}
  .qj-payment-options button{
    padding-left:2px;
    padding-right:2px;
    font-size:.70rem!important;
  }
}

/* Módulo Repuestos compartido */
.module-repuestos .content-card{overflow:visible}.module-repuestos .module-content{padding:12px}.repuestos-module-frame{height:calc(100dvh - 165px);min-height:650px;border:1px solid #dce3ed;border-radius:20px;overflow:hidden;background:#f7f9fc}.repuestos-module-frame iframe{display:block;width:100%;height:100%;border:0}@media(max-width:820px){.module-repuestos .module-content{padding:6px}.repuestos-module-frame{height:calc(100dvh - 145px);min-height:560px;border-radius:14px}}


/* Vinculación de accesorios con el módulo Repuestos */
.accessory-part-lookup{display:grid;gap:9px;padding:13px;border:1px solid #dce3ed;border-radius:16px;background:#f8fafc}
.accessory-part-lookup label{display:grid;gap:7px}
.accessory-part-lookup small{color:#748197;font-size:.72rem;line-height:1.4;text-transform:none;letter-spacing:0}
.accessory-code-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px}
.accessory-code-row .btn{min-width:104px}
.accessory-lookup-result{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:8px;padding:10px;border:1px solid #b7e4cf;border-radius:13px;background:#f0fdf6}
.accessory-lookup-result>div{min-width:0;padding:7px 8px;border-radius:10px;background:rgba(255,255,255,.72)}
.accessory-lookup-result span,.accessory-lookup-result strong{display:block}
.accessory-lookup-result span{color:#5f6f67;font-size:.65rem;font-weight:900;text-transform:uppercase}
.accessory-lookup-result strong{margin-top:4px;color:#1d4736;font-size:.78rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.accessory-lookup-result.error{display:block;border-color:#fecdd3;background:#fff1f2;color:#b42318;font-size:.8rem;font-weight:800}
.accessory-code-chip{display:inline-flex;margin-top:5px;padding:4px 7px;border-radius:8px;background:#eef2f7;color:#344258;font:800 .68rem ui-monospace,SFMono-Regular,Consolas,monospace}
.accessory-code-chip.warning{background:#fff7ed;color:#9a5200}
.accessory-code-chip.universal{background:#ecf8f0;color:#176b3a}
@media(max-width:760px){
  .accessory-code-row{grid-template-columns:1fr}
  .accessory-code-row .btn{width:100%}
  .accessory-lookup-result{grid-template-columns:1fr}
}

/* Accesorios vinculados: el precio se consulta siempre desde Repuestos */
.accessory-synced-price-field input[readonly]{background:#f4f7fa;color:#172033;font-weight:900;cursor:not-allowed}
.accessory-synced-price-field small{color:#66758b;font-size:.72rem;line-height:1.4;text-transform:none;letter-spacing:0;font-weight:700}
.accessory-sync-chip{display:inline-flex;width:max-content;padding:5px 8px;border-radius:999px;background:#ecfdf5;color:#087552;font-size:.65rem;font-weight:900;text-transform:uppercase}
.accessory-sync-chip.warning{background:#fff7ed;color:#9a5200}

/* Atajos */
.shortcut-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.shortcut-card{display:grid;grid-template-columns:66px minmax(0,1fr) auto;gap:16px;align-items:center;padding:20px;border:1px solid var(--line);border-radius:21px;background:#fff;box-shadow:0 8px 22px rgba(23,32,51,.06)}
.shortcut-icon{width:66px;height:66px;display:grid;place-items:center;border-radius:19px;border:1px solid #fecdd3;background:#fff1f2;color:var(--red-dark)}
.shortcut-icon svg{width:31px;height:31px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.shortcut-copy h3{margin:4px 0 5px;font-size:1.08rem}
.shortcut-copy p{margin:0;color:var(--muted);font-size:.84rem;line-height:1.45}
#patentRequestMessage{margin-top:13px}

/* Clientes con datos para patentamiento */
.client-toolbar{margin-bottom:15px}
.client-toolbar label{display:grid;gap:7px}
.client-toolbar label>span{color:#58667d;font-size:.7rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase}
.client-toolbar input{width:100%;min-height:44px;padding:10px 12px;border:1px solid #cfd8e5;border-radius:12px;background:#fff;color:var(--ink);outline:none}
.client-toolbar input:focus{border-color:rgba(215,25,32,.6);box-shadow:0 0 0 4px rgba(215,25,32,.1)}
.patent-clients-list{display:grid;gap:10px}
.patent-client-row{display:grid;grid-template-columns:minmax(260px,1.35fr) minmax(190px,1fr) minmax(150px,.75fr) auto;gap:14px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:17px;background:#fff}
.patent-client-identity{display:grid;grid-template-columns:46px minmax(0,1fr);gap:11px;align-items:center}
.patent-client-avatar{width:46px;height:46px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(135deg,#29364a,#111827);color:#fff;font-size:.76rem;font-weight:950}
.patent-client-identity h3{margin:0;font-size:.94rem}
.patent-client-identity p,.patent-client-contact span,.patent-client-meta span{display:block;margin:4px 0 0;color:var(--muted);font-size:.72rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.patent-client-contact,.patent-client-meta{min-width:0}
.patent-client-contact strong,.patent-client-meta strong{display:block;font-size:.78rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.patent-client-actions{display:flex;justify-content:flex-end;gap:7px}
.patent-client-actions .btn{min-height:38px;display:grid;place-items:center;padding:0 11px;font-size:.74rem;white-space:nowrap}
.patent-client-modal-card{width:min(940px,100%)}
.patent-documents-section{margin-top:16px;padding:16px;border:1px solid var(--line);border-radius:18px;background:#f8fafc}
.patent-document-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}
.patent-document-grid article{padding:11px;border:1px solid #d8e0eb;border-radius:15px;background:#fff}
.patent-document-grid article>strong{display:block;margin-bottom:8px;font-size:.78rem;text-transform:uppercase}
.patent-document-grid img{display:block;width:100%;aspect-ratio:1.586/1;object-fit:contain;border:1px solid var(--line);border-radius:11px;background:#eef2f7}
.patent-document-grid article>div{display:flex;gap:7px;margin-top:9px}
.patent-document-grid .btn{min-height:38px;display:grid;place-items:center;flex:1;font-size:.73rem}

@media(max-width:1180px){
  .patent-client-row{grid-template-columns:minmax(240px,1.2fr) minmax(180px,1fr) auto}
  .patent-client-meta{display:none}
}
@media(max-width:820px){
  .shortcut-grid{grid-template-columns:1fr}
  .shortcut-card{grid-template-columns:56px minmax(0,1fr)}
  .shortcut-icon{width:56px;height:56px}
  .shortcut-card>.btn{grid-column:1/-1;width:100%}
  .patent-client-row{grid-template-columns:1fr}
  .patent-client-actions{justify-content:stretch}
  .patent-client-actions .btn{flex:1}
  .patent-document-grid{grid-template-columns:1fr}
}
@media(max-width:520px){
  .patent-client-actions{display:grid;grid-template-columns:1fr 1fr}
  .patent-client-actions .btn.primary{grid-column:1/-1}
}

/* Formulario de patentamiento integrado al panel */
.patent-form-modal{position:fixed;inset:0;z-index:260;display:grid;place-items:center;padding:18px}
.patent-form-modal.hidden{display:none!important}
.patent-form-modal-backdrop{position:absolute;inset:0;border:0;background:rgba(15,23,42,.68);backdrop-filter:blur(7px)}
.patent-form-modal-card{position:relative;z-index:1;width:min(1040px,100%);height:min(94dvh,960px);display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden;border:1px solid rgba(255,255,255,.5);border-radius:25px;background:#f3f6fa;box-shadow:0 35px 95px rgba(15,23,42,.38)}
.patent-form-modal-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 16px;border-bottom:1px solid var(--line);background:#fff}
.patent-form-modal-head h2{margin:2px 0 0;font-size:1.16rem}
.patent-form-frame-wrap{position:relative;min-height:0;background:#eef2f7}
.patent-form-frame-loading{position:absolute;inset:0;z-index:1;display:grid;place-items:center;color:#64748b;font-weight:850}
.patent-form-frame-wrap iframe{width:100%;height:100%;display:block;border:0;opacity:0;background:#eef2f7;transition:opacity .15s ease}
.patent-form-frame-wrap iframe.is-ready{opacity:1}
body.patent-form-modal-open{overflow:hidden}
@media(max-width:760px){
  .patent-form-modal{padding:0}
  .patent-form-modal-card{width:100%;height:100dvh;max-height:none;border:0;border-radius:0}
  .patent-form-modal-head{padding:10px 12px}
}

/* Datos bancarios */
.shortcut-icon.bank{background:#f3f4f6;border-color:#d7dde6;color:#111827}
#bankShortcutMessage{margin-top:13px}
.sales-data-modal-card{width:min(880px,calc(100vw - 28px))}
.sales-data-form{max-height:calc(92vh - 78px);overflow:auto}
.sales-bank-settings{margin-top:20px;padding:17px;border:1px solid var(--line);border-radius:19px;background:#f8fafc}
.sales-bank-settings-head{display:grid;grid-template-columns:minmax(0,1fr) 82px;gap:16px;align-items:center;margin-bottom:14px}
.sales-bank-settings-head h3{margin:3px 0 5px}
.sales-bank-settings-head p{margin:0;color:var(--muted);font-size:.8rem;line-height:1.45}
.sales-bank-settings-head img{display:block;width:82px;height:104px;object-fit:cover;object-position:top;border:1px solid #d7dee9;border-radius:12px;background:#fff}
.sales-bank-warning{margin-bottom:14px;padding:11px 12px;border:1px solid #f0c36d;border-radius:12px;background:#fff8e8;color:#7a4b00;font-size:.76rem;font-weight:750;line-height:1.45}
.sales-bank-grid input{text-transform:uppercase}
.bank-data-modal{position:fixed;inset:0;z-index:270;display:grid;place-items:center;padding:18px}
.bank-data-modal.hidden{display:none!important}
.bank-data-modal-backdrop{position:absolute;inset:0;border:0;background:rgba(15,23,42,.7);backdrop-filter:blur(7px)}
.bank-data-modal-card{position:relative;z-index:1;width:min(940px,100%);max-height:94dvh;display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden;border:1px solid rgba(255,255,255,.5);border-radius:25px;background:#fff;box-shadow:0 35px 95px rgba(15,23,42,.4)}
.bank-data-modal-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 17px;border-bottom:1px solid var(--line);background:#fff}
.bank-data-modal-head h2{margin:2px 0 0;font-size:1.2rem}
.bank-data-modal-content{min-height:0;display:grid;grid-template-columns:minmax(300px,1fr) 330px;gap:18px;overflow:auto;padding:18px;background:#f2f5f9}
.bank-flyer-preview{display:grid;place-items:center;min-height:0;padding:12px;border:1px solid #d8e0eb;border-radius:18px;background:#fff}
.bank-flyer-preview img{display:block;width:100%;height:min(70dvh,760px);object-fit:contain}
.bank-share-panel{align-self:start;padding:20px;border:1px solid #d8e0eb;border-radius:18px;background:#fff;box-shadow:0 8px 22px rgba(23,32,51,.06)}
.bank-share-panel>strong{display:block;margin:7px 0 10px;padding:13px;border:1px dashed #e49ba0;border-radius:13px;background:#fff5f5;color:#a80f16;font-size:1.15rem;letter-spacing:.035em;text-align:center;word-break:break-word}
.bank-share-panel>p{margin:0 0 16px;color:var(--muted);font-size:.8rem;line-height:1.5}
.bank-share-actions{display:grid;gap:9px}
.bank-share-actions .btn{width:100%}
body.bank-data-modal-open{overflow:hidden}
@media(max-width:760px){
  .sales-bank-settings-head{grid-template-columns:1fr 70px}
  .sales-bank-settings-head img{width:70px;height:90px}
  .bank-data-modal{padding:0}
  .bank-data-modal-card{width:100%;height:100dvh;max-height:none;border:0;border-radius:0}
  .bank-data-modal-content{grid-template-columns:1fr;padding:12px}
  .bank-flyer-preview img{height:auto;max-height:none}
  .bank-share-panel{position:sticky;bottom:0}
}

/* Navegación PWA móvil compartida con el panel de Taller */
@media (max-width: 820px) {
  html,
  body {
    width: 100%;
    overflow-x: hidden;
    -webkit-text-size-adjust: 100%;
    overscroll-behavior-x: none;
  }

  body.is-authenticated {
    padding: 0;
    background:
      radial-gradient(circle at 0 0, rgba(215, 25, 32, .10), transparent 34%),
      linear-gradient(180deg, #fff 0%, #f5f7fb 48%, #eef2f7 100%);
  }

  body.is-authenticated.sidebar-open { overflow: hidden; }

  body.is-authenticated .app-shell {
    display: block !important;
    z-index: auto !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: calc(76px + env(safe-area-inset-top)) 10px calc(94px + env(safe-area-inset-bottom)) !important;
  }

  body.is-authenticated .sidebar {
    position: fixed !important;
    z-index: 150 !important;
    top: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    width: min(320px, 88vw) !important;
    height: 100dvh !important;
    display: flex !important;
    padding-top: calc(18px + env(safe-area-inset-top)) !important;
    border-radius: 0 26px 26px 0 !important;
    transform: translateX(-105%) !important;
    transition: transform .24s ease !important;
    box-shadow: 22px 0 48px rgba(15, 23, 42, .22) !important;
  }

  body.is-authenticated .sidebar.open { transform: translateX(0) !important; }
  body.is-authenticated .sidebar-overlay:not([hidden]) {
    z-index: 140 !important;
    display: block !important;
  }

  body.is-authenticated .app-topbar {
    position: fixed !important;
    z-index: 120 !important;
    top: 0 !important;
    right: 0 !important;
    left: 0 !important;
    min-height: calc(64px + env(safe-area-inset-top)) !important;
    display: grid !important;
    grid-template-columns: 44px minmax(0, 1fr) 44px !important;
    align-items: center !important;
    gap: 9px !important;
    padding: calc(10px + env(safe-area-inset-top)) 12px 10px !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(207, 216, 229, .9) !important;
    border-radius: 0 0 22px 22px !important;
    background: rgba(255, 255, 255, .92) !important;
    box-shadow: 0 10px 24px rgba(17, 24, 39, .09) !important;
    backdrop-filter: blur(18px) saturate(1.15) !important;
    -webkit-backdrop-filter: blur(18px) saturate(1.15) !important;
  }

  body.is-authenticated .topbar-left,
  body.is-authenticated .topbar-actions { display: contents !important; }

  body.is-authenticated .mobile-menu-button {
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    display: grid !important;
    border-radius: 14px !important;
  }

  body.is-authenticated .mobile-menu-button svg {
    width: 22px;
    height: 22px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
  }

  body.is-authenticated .topbar-greeting h1 {
    grid-column: 2 !important;
    grid-row: 1 !important;
    min-width: 0 !important;
    display: block !important;
    overflow: hidden !important;
    font-size: 1rem !important;
    line-height: 1.12 !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  body.is-authenticated .top-user-pill {
    grid-column: 3 !important;
    grid-row: 1 !important;
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
    padding: 0 !important;
    display: grid !important;
    place-items: center !important;
    overflow: hidden !important;
    border-radius: 50% !important;
    box-shadow: 0 5px 12px rgba(17, 24, 39, .08) !important;
  }

  body.is-authenticated .top-user-avatar {
    width: 38px !important;
    height: 38px !important;
  }

  body.is-authenticated .top-user-text,
  body.is-authenticated .logout-button { display: none !important; }

  body.is-authenticated .content-card {
    min-height: calc(100dvh - 172px) !important;
    margin-top: 0 !important;
    border-radius: 21px !important;
  }

  body.is-authenticated .content-breadcrumb { display: none !important; }
  body.is-authenticated .module-content { padding: 14px !important; }
  body.is-authenticated input,
  body.is-authenticated select,
  body.is-authenticated textarea { font-size: 16px !important; }

  body.is-authenticated .mobile-bottom-nav {
    position: fixed !important;
    z-index: 125 !important;
    right: 8px !important;
    bottom: calc(8px + env(safe-area-inset-bottom)) !important;
    left: 8px !important;
    min-height: 68px !important;
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    align-items: center !important;
    gap: 2px !important;
    padding: 6px !important;
    border: 1px solid rgba(197, 207, 222, .94) !important;
    border-radius: 23px !important;
    background: rgba(255, 255, 255, .92) !important;
    box-shadow: 0 16px 34px rgba(17, 24, 39, .17) !important;
    backdrop-filter: blur(20px) saturate(1.18) !important;
    -webkit-backdrop-filter: blur(20px) saturate(1.18) !important;
  }

  body.is-authenticated .mobile-nav-btn {
    min-width: 0 !important;
    min-height: 52px !important;
    display: grid !important;
    place-items: center !important;
    align-content: center !important;
    gap: 4px !important;
    padding: 4px 1px !important;
    border: 0 !important;
    border-radius: 16px !important;
    background: transparent !important;
    color: #526078 !important;
    font-size: inherit !important;
    line-height: 1 !important;
  }

  body.is-authenticated .mobile-nav-btn svg {
    width: 21px !important;
    height: 21px !important;
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 2 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
  }

  body.is-authenticated .mobile-nav-btn small {
    max-width: 100%;
    overflow: hidden;
    font-size: clamp(.5rem, 2.25vw, .62rem);
    font-weight: 900;
    letter-spacing: -.025em;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  body.is-authenticated .mobile-nav-btn.active {
    background: #fff1f2 !important;
    color: #a11319 !important;
    box-shadow: inset 0 0 0 1px rgba(215, 25, 32, .08) !important;
  }

  body.is-authenticated .mobile-nav-brand {
    width: 54px !important;
    height: 58px !important;
    display: grid !important;
    place-items: center !important;
    justify-self: center !important;
    margin-top: -12px !important;
    border-radius: 17px !important;
    background: #fff !important;
    box-shadow: 0 9px 20px rgba(17, 24, 39, .15) !important;
  }

  body.is-authenticated .mobile-nav-brand img {
    width: 49px !important;
    height: 49px !important;
    object-fit: contain !important;
    border-radius: 0 !important;
    filter: none !important;
  }

  body.is-authenticated a,
  body.is-authenticated button { touch-action: manipulation; }
}

@media (max-width: 370px) {
  body.is-authenticated .app-shell { padding-right: 7px !important; padding-left: 7px !important; }
  body.is-authenticated .mobile-bottom-nav { right: 5px !important; left: 5px !important; padding-right: 3px !important; padding-left: 3px !important; }
  body.is-authenticated .mobile-nav-btn svg { width: 19px !important; height: 19px !important; }
  body.is-authenticated .mobile-nav-brand { width: 47px !important; height: 54px !important; }
  body.is-authenticated .mobile-nav-brand img { width: 43px !important; height: 43px !important; }
}
@font-face{font-family:"AP Display";src:url("../fonts/BarlowCondensed-ExtraBold.ttf?v=20260728editorial1") format("truetype");font-style:normal;font-weight:800;font-display:swap}
@font-face{font-family:"AP Text";src:url("../fonts/Manrope-Variable.ttf?v=20260728editorial1") format("truetype");font-style:normal;font-weight:200 800;font-display:swap}

/* Acciones rápidas del panel de Ventas, con el mismo estilo que Taller */
.sales-quick-create-row{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:2px 0 14px}
body.ap-pro .sales-quick-create-row .new-sale-button,
body.ap-pro .sales-quick-create-row .new-activation-button{min-width:0;min-height:44px;margin:0;padding:0 7px;display:flex;align-items:center;justify-content:center;gap:2px;border-radius:10px;font-size:.76rem;font-weight:750;white-space:nowrap;box-shadow:none}
body.ap-pro .sales-quick-create-row .new-sale-button{border:0;background:var(--red);color:#fff}
body.ap-pro .sales-quick-create-row .new-activation-button{border:1px solid #d6dadd;background:#fff;color:#25282d;cursor:pointer}
body.ap-pro .sales-quick-create-row .new-sale-button span[aria-hidden],
body.ap-pro .sales-quick-create-row .new-activation-button span[aria-hidden]{font-size:1rem;line-height:1}
body.ap-pro .sales-quick-create-row .new-sale-button:hover,
body.ap-pro .sales-quick-create-row .new-activation-button:hover{filter:brightness(.97);transform:none}

/* Configuración de la PWA para tablet / tótem */
.tablet-config-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;align-items:start}.tablet-config-block{padding:16px}.tablet-config-block .panel-box-head{align-items:flex-start}.tablet-config-block .panel-box-head p{margin:5px 0 0;color:var(--muted);font-size:.78rem;line-height:1.4}.tablet-admin-list{display:grid;gap:10px;margin-top:14px}.tablet-admin-card{display:grid;grid-template-columns:92px minmax(0,1fr) auto;gap:12px;align-items:center;padding:11px;border:1px solid var(--line);border-radius:17px;background:#fff}.tablet-admin-card.inactive{opacity:.6;background:#f7f8fa}.tablet-admin-thumb{width:92px;height:86px;display:grid;place-items:center;overflow:hidden;border:1px solid #dce3ec;border-radius:13px;background:#f4f6f9;color:#8b96a7;font-size:.65rem;font-weight:900;text-align:center}.tablet-admin-thumb.flyer{height:116px}.tablet-admin-thumb img{width:100%;height:100%;object-fit:contain;background:#fff}.tablet-admin-copy{min-width:0}.tablet-admin-copy h4{margin:3px 0 5px;font-size:.95rem}.tablet-admin-copy p{margin:0;color:var(--muted);font-size:.72rem;line-height:1.4}.tablet-admin-copy .status-chip{margin-top:8px}.tablet-admin-actions{display:grid;gap:6px}.tablet-admin-actions .btn{min-height:36px;padding:7px 10px;font-size:.7rem}.tablet-accessory-picker{margin-top:15px;padding:15px;border:1px solid var(--line);border-radius:17px;background:#f8fafc}.tablet-accessory-picker h3{margin:4px 0 12px}.tablet-current-preview{display:grid;grid-template-columns:110px minmax(0,1fr);gap:12px;align-items:center;margin-top:14px;padding:11px;border:1px solid var(--line);border-radius:15px;background:#f8fafc}.tablet-current-preview img{width:110px;height:150px;object-fit:contain;border:1px solid var(--line);border-radius:11px;background:#fff}.tablet-current-preview strong,.tablet-current-preview span{display:block}.tablet-current-preview span{margin-top:4px;color:var(--muted);font-size:.72rem}
@media(max-width:1050px){.tablet-config-grid{grid-template-columns:1fr}}@media(max-width:760px){.tablet-admin-card{grid-template-columns:76px minmax(0,1fr)}.tablet-admin-thumb{width:76px;height:76px}.tablet-admin-thumb.flyer{height:96px}.tablet-admin-actions{grid-column:1/-1;display:flex;justify-content:flex-end}}

/* Ajustes del salvapantallas de la vidriera. */
.tablet-screensaver-block{grid-column:1/-1;transition:opacity .2s ease,border-color .2s ease}
.tablet-screensaver-block.is-off{border-color:#d7dbe2;background:#f8f9fb}
.tablet-screensaver-switch{flex:0 0 auto;display:grid;grid-template-columns:50px auto;align-items:center;gap:8px;cursor:pointer;user-select:none}
.tablet-screensaver-switch input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.tablet-screensaver-switch span{position:relative;width:50px;height:28px;border-radius:999px;background:#c7ccd4;box-shadow:inset 0 1px 3px rgba(16,24,40,.18);transition:background .2s ease}
.tablet-screensaver-switch span:after{content:"";position:absolute;left:3px;top:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 2px 7px rgba(16,24,40,.25);transition:transform .2s ease}
.tablet-screensaver-switch input:checked+span{background:#e01620}
.tablet-screensaver-switch input:checked+span:after{transform:translateX(22px)}
.tablet-screensaver-switch input:focus-visible+span{outline:3px solid rgba(224,22,32,.22);outline-offset:2px}
.tablet-screensaver-switch b{font-size:.76rem}
.tablet-timing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-top:16px}
.tablet-timing-grid>label{display:block;padding:14px;border:1px solid var(--line);border-radius:16px;background:#fff}
.tablet-timing-grid>label>span{display:block;margin-bottom:9px;color:var(--muted);font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.tablet-timing-grid>label>div{display:flex;align-items:center;gap:9px}
.tablet-timing-grid input{width:130px;height:46px;padding:0 12px;border:1px solid #ccd3dd;border-radius:11px;background:#f8fafc;font-size:1.08rem;font-weight:900}
.tablet-timing-grid small{color:#333b48;font-size:.76rem;font-weight:800}
.tablet-timing-grid em{display:block;margin-top:8px;color:var(--muted);font-size:.68rem;font-style:normal}
.tablet-settings-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:14px}
.tablet-settings-actions .catalog-inline-message{flex:1;margin:0}
@media(max-width:680px){.tablet-screensaver-block .panel-box-head{gap:14px}.tablet-screensaver-switch{grid-template-columns:50px}.tablet-screensaver-switch b{grid-column:1;text-align:center;font-size:.66rem}.tablet-timing-grid{grid-template-columns:1fr}.tablet-settings-actions{align-items:stretch;flex-direction:column}.tablet-settings-actions .btn{width:100%}}

.tablet-header-flyers-block{grid-column:1/-1}
.tablet-header-flyers-block .tablet-admin-card{grid-template-columns:180px minmax(0,1fr) auto}
.tablet-admin-thumb.header-flyer{width:180px;height:60px;border-radius:10px}
.tablet-current-preview.header-flyer-preview{grid-template-columns:240px minmax(0,1fr)}
.tablet-current-preview.header-flyer-preview img{width:240px;height:80px;object-fit:contain}
@media(max-width:760px){
  .tablet-header-flyers-block .tablet-admin-card{grid-template-columns:112px minmax(0,1fr)}
  .tablet-admin-thumb.header-flyer{width:112px;height:38px}
  .tablet-current-preview.header-flyer-preview{grid-template-columns:1fr}
  .tablet-current-preview.header-flyer-preview img{width:100%;height:auto;aspect-ratio:3/1}
}

/* Leads recibidos desde la tablet. */
.tablet-leads-panel{margin-bottom:16px}
.tablet-leads-panel .panel-box-head p{margin:5px 0 0;color:var(--muted);font-size:.78rem}
.tablet-leads-head-actions{display:flex;align-items:center;gap:8px}
.tablet-leads-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.tablet-lead-card{display:grid;grid-template-columns:88px minmax(0,1fr);overflow:hidden;border:1px solid var(--line);border-radius:18px;background:#fff}
.tablet-lead-card.is-new{border-color:rgba(215,25,32,.35);box-shadow:0 0 0 3px rgba(215,25,32,.06)}
.tablet-lead-kind{display:grid;place-items:center;align-content:center;gap:7px;padding:12px;background:#f3f5f8;color:#48566d;text-align:center}
.tablet-lead-kind.loan{background:linear-gradient(145deg,#fff1f2,#ffe1e3);color:#a90f16}
.tablet-lead-kind.quote{background:linear-gradient(145deg,#eefbf3,#dff6e8);color:#227844}
.tablet-lead-kind>span{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:#fff;font-size:.8rem;font-weight:950;box-shadow:0 5px 13px rgba(23,32,51,.08)}
.tablet-lead-kind.quote>span{font-size:1.35rem}
.tablet-lead-kind small{font-size:.62rem;font-weight:950;text-transform:uppercase;letter-spacing:.04em}
.tablet-lead-main{min-width:0;padding:13px}
.tablet-lead-title{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.tablet-lead-title h4{margin:3px 0 0;font-size:1rem}.tablet-lead-title time{color:var(--muted);font-size:.66rem;white-space:nowrap}
.tablet-lead-contact{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}
.tablet-lead-contact>a,.tablet-lead-contact>span{min-width:0;padding:9px 10px;border:1px solid var(--line);border-radius:12px;background:#f8fafc;text-decoration:none}
.tablet-lead-contact small,.tablet-lead-contact strong{display:block}.tablet-lead-contact small{color:var(--muted);font-size:.61rem;text-transform:uppercase}.tablet-lead-contact strong{margin-top:3px;color:#26334a;font-size:.82rem;overflow-wrap:anywhere}
.tablet-lead-quote{margin-top:10px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding-top:10px;border-top:1px solid var(--line)}
.tablet-lead-quote>div{min-width:0;padding:8px 9px;border-radius:10px;background:#f5f7fa}
.tablet-lead-quote small,.tablet-lead-quote strong{display:block}.tablet-lead-quote small{color:var(--muted);font-size:.57rem;text-transform:uppercase;line-height:1.3}.tablet-lead-quote strong{margin-top:3px;color:#344258;font-size:.69rem;line-height:1.3;overflow-wrap:anywhere}
.tablet-lead-quote .total{background:#fff0f1}.tablet-lead-quote .total strong{color:#a90f16;font-size:.76rem}
@media(max-width:1050px){.tablet-leads-list{grid-template-columns:1fr}}
@media(max-width:560px){.tablet-leads-panel .panel-box-head{align-items:stretch;flex-direction:column}.tablet-leads-head-actions{justify-content:space-between}.tablet-lead-card{grid-template-columns:70px minmax(0,1fr)}.tablet-lead-kind{padding:8px}.tablet-lead-main{padding:11px}.tablet-lead-contact{grid-template-columns:1fr}.tablet-lead-quote{grid-template-columns:repeat(2,minmax(0,1fr))}.tablet-lead-quote .total{grid-column:1/-1}}
/* Editor normalizado de accesorios/kits. */
.catalog-inline-message.warning{color:#7a4b00;background:#fff8e8;border:1px solid #f0c36d}
.accessory-components-editor{display:grid;gap:12px;margin-bottom:16px;padding:14px;border:1px solid var(--line,#d9dee7);border-radius:14px;background:#f8fafc}
.accessory-components-editor>header{display:flex;align-items:center;justify-content:space-between;gap:12px}
.accessory-components-editor>header>div{display:grid;gap:3px}
.accessory-components-editor>header span{font-weight:800;color:#172033}
.accessory-components-editor small{color:#667085}
.accessory-components-actions{display:flex;grid-auto-flow:column;gap:8px}
.accessory-components-list{display:grid;gap:10px}
.accessory-component-row{display:grid;grid-template-columns:minmax(250px,1fr) minmax(230px,1.1fr) 94px auto;gap:10px;align-items:end;padding:12px;border:1px solid #dfe4ec;border-radius:12px;background:#fff}
.accessory-component-code,.accessory-component-product,.accessory-component-quantity{display:grid;min-width:0;gap:6px}
.accessory-component-code>span,.accessory-component-product>span,.accessory-component-quantity>span{color:#58667d;font-size:.68rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase}
.accessory-component-code-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}
.accessory-component-row input{width:100%;min-width:0;min-height:42px;padding:9px 10px;border:1px solid #cfd8e5;border-radius:10px;background:#fff;color:var(--ink);outline:none}
.accessory-component-row input:focus{border-color:rgba(215,25,32,.62);box-shadow:0 0 0 3px rgba(215,25,32,.10)}
.accessory-component-result{min-height:42px;display:flex;align-items:center;padding:8px 10px;border-radius:9px;background:#f1f5f9;color:#475467;font-size:.82rem;line-height:1.35;overflow-wrap:anywhere}
.accessory-component-result.is-valid{background:#ecfdf3;color:#067647}
.accessory-component-result.is-error{background:#fef3f2;color:#b42318}
.accessory-component-remove{white-space:nowrap}
.accessory-price-adjustment{padding:12px;border:1px solid #d8dee9;border-radius:12px;background:#fff}
.accessory-price-adjustment label{display:grid;gap:6px;color:#58667d;font-size:.72rem;font-weight:850}
.accessory-price-adjustment input{max-width:260px;min-height:42px;padding:9px 10px;border:1px solid #cfd8e5;border-radius:10px;color:var(--ink)}
.accessory-price-summary{display:grid;gap:7px;padding-top:9px;border-top:1px solid #dfe4ec}
.accessory-price-summary p{display:flex;justify-content:flex-end;align-items:center;gap:16px;margin:0;color:#667085}
.accessory-price-summary strong{min-width:145px;color:#172033;text-align:right}
.accessory-price-summary .final{padding-top:7px;border-top:1px solid #e4e8ef;color:#172033;font-weight:900}
.accessory-price-summary .final strong{font-size:1.15rem;color:#087443}
@media(max-width:780px){.accessory-component-row{grid-template-columns:minmax(0,1fr) 110px}.accessory-component-code,.accessory-component-product{grid-column:1/-1}.accessory-component-quantity{grid-column:1}.accessory-component-remove{grid-column:2}.accessory-components-editor>header{align-items:flex-start;flex-direction:column}.accessory-components-actions{width:100%;grid-auto-flow:row;grid-template-columns:1fr 1fr}.accessory-components-editor>header .btn{width:100%}}
@media(max-width:520px){.accessory-components-editor{padding:11px}.accessory-component-row{grid-template-columns:1fr}.accessory-component-code,.accessory-component-product,.accessory-component-quantity,.accessory-component-remove{grid-column:1}.accessory-component-remove{width:100%}.accessory-components-actions{display:grid;grid-template-columns:1fr}.accessory-price-summary p{justify-content:space-between}.accessory-price-summary strong{min-width:0}.catalog-model-form{padding:14px}.catalog-form-grid{grid-template-columns:1fr}.catalog-form-grid .full-field{grid-column:1}}

/* Tanda H · configuración económica de Service */
.service-settings-tabs{display:flex;gap:8px;overflow:auto;padding:5px;border:1px solid var(--line);border-radius:15px;background:#f5f7fa}.service-settings-tabs button{min-height:40px;padding:8px 15px;border:0;border-radius:11px;background:transparent;color:#5e6979;font-weight:900;white-space:nowrap}.service-settings-tabs button.active{background:#fff;color:var(--red-dark);box-shadow:0 5px 15px rgba(23,32,51,.09)}
.service-qj-models,.service-rate-list{display:grid;gap:13px}.service-qj-card{padding:17px}.service-qj-price-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.service-qj-price-grid label{display:grid;gap:6px;padding:11px;border:1px solid var(--line);border-radius:13px;background:#f8fafc}.service-qj-price-grid label>span,.service-rate-fields label>span,.service-interval-form label>span{color:#58667d;font-size:.68rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.service-qj-price-grid label>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px}.service-qj-price-grid input,.service-rate-fields input,.service-rate-fields select,.service-interval-form input{width:100%;min-height:42px;padding:9px 10px;border:1px solid #cfd8e5;border-radius:10px;background:#fff}.service-qj-price-grid small.pending{color:#b54708;font-weight:850}.service-qj-price-grid small.configured{color:#067647;font-weight:850}
.service-rate-form{display:grid;gap:13px;padding:17px}.service-rate-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}.service-rate-fields label,.service-interval-form label{display:grid;gap:6px}.service-rate-group{padding:16px}.service-rate-rows{display:grid;gap:7px}.service-rate-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center;width:100%;padding:11px 13px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);text-align:left}.service-rate-row.inactive{opacity:.55;background:#f5f6f8}.service-rate-row small{color:var(--muted)}.service-gap-warning{margin:7px 0;padding:8px 10px;border-radius:9px;background:#fff4e8;color:#934c00;font-size:.75rem;font-weight:800}
.service-interval-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.service-interval-form{display:grid;gap:12px;padding:17px}
@media(max-width:900px){.service-qj-price-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-rate-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.service-qj-price-grid,.service-rate-fields,.service-interval-grid{grid-template-columns:1fr}.service-rate-row{grid-template-columns:1fr auto}.service-rate-row small{grid-column:1/-1}.service-qj-price-grid label>div{grid-template-columns:1fr}.service-qj-price-grid .btn{width:100%}}

/* Tarjetas compactas administrables de Mi Moto. */
.mi-moto-config-block{padding:18px}.mi-moto-config-block .panel-box-head p{max-width:680px;margin:5px 0 0;color:var(--muted);font-size:.78rem;line-height:1.45}.mi-moto-cards-admin{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:15px}.mi-moto-admin-card{display:grid;grid-template-columns:112px minmax(0,1fr) auto;gap:13px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 7px 22px rgba(30,42,68,.05)}.mi-moto-admin-card.inactive{opacity:.62;background:#f7f8fa}.mi-moto-admin-thumb{width:112px;aspect-ratio:4/3;display:grid;place-items:center;overflow:hidden;border:1px solid #dde3eb;border-radius:14px;background:linear-gradient(145deg,#f6f8fb,#edf1f6);color:#8692a4;font-size:.67rem;font-weight:900;text-align:center}.mi-moto-admin-thumb img{width:100%;height:100%;object-fit:cover}.mi-moto-admin-copy{min-width:0}.mi-moto-admin-copy h4{margin:3px 0 5px;font-size:.96rem}.mi-moto-admin-copy>p{display:-webkit-box;overflow:hidden;margin:0;color:var(--muted);font-size:.72rem;line-height:1.4;-webkit-line-clamp:2;-webkit-box-orient:vertical}.mi-moto-admin-meta{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-top:9px}.mi-moto-admin-meta>strong{color:#ad1118;font-size:.78rem}.mi-moto-admin-meta>span:not(.status-chip){max-width:180px;overflow:hidden;color:#5d6878;font-size:.65rem;text-overflow:ellipsis;white-space:nowrap}.mi-moto-current-preview img{width:110px;height:82px;object-fit:cover}
@media(max-width:1280px){.mi-moto-cards-admin{grid-template-columns:1fr}}@media(max-width:680px){.mi-moto-config-block{padding:14px}.mi-moto-admin-card{grid-template-columns:82px minmax(0,1fr);padding:10px}.mi-moto-admin-thumb{width:82px}.mi-moto-admin-card .tablet-admin-actions{grid-column:1/-1}.mi-moto-admin-meta>span:not(.status-chip){max-width:135px}}
