/* Meditronic Bolivia — Panel interno
   Extiende assets/css/styles.css (identidad visual real del sitio).
   Reutiliza las mismas variables y componentes: .btn, .card, .field,
   .filter, .page-intro, .d-item, .subtotal, etc. */

body.panel-body{background:var(--soft);}

/* ===== Login ===== */
.login-screen{
  min-height:100vh;
  background:var(--navy);
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
  position:relative;
  overflow:hidden;
}
.login-screen .rings{right:-180px;top:-200px;width:600px;height:600px;}
.login-card{
  position:relative;
  z-index:1;
  width:100%;
  max-width:420px;
  background:#fff;
  border-radius:var(--radius);
  padding:40px 36px;
  box-shadow:0 30px 60px -20px rgba(0,0,0,.45);
}
.login-card img{height:40px;margin-bottom:22px;}
.login-card h1{font-size:24px;margin-bottom:6px;}
.login-card .lead{color:var(--muted);font-size:14.5px;margin-bottom:26px;}
.login-error{
  display:none;
  background:#FDEBE0;
  color:var(--orange,#C2410C);
  font-size:13.5px;
  padding:12px 14px;
  border-radius:12px;
  margin-top:14px;
}
.login-error.show{display:block;}
.login-foot{margin-top:22px;font-size:12.5px;color:var(--muted);text-align:center;}

/* ===== Panel header ===== */
.panel-topbar{
  background:var(--navy);
  color:#fff;
}
.panel-topbar .wrap{
  display:flex;align-items:center;justify-content:space-between;gap:16px;height:72px;
}
.panel-topbar .brand-row{display:flex;align-items:center;gap:12px;}
.panel-topbar .brand-row img{height:32px;width:auto;max-width:none;flex:none;object-fit:contain;background:#fff;border-radius:10px;padding:6px 10px;}
.panel-topbar .brand-row span{font-size:13px;color:rgba(255,255,255,.7);}
.panel-topbar .who{font-size:13px;color:rgba(255,255,255,.75);}
.panel-topbar .btn-ghost{height:40px;padding:0 18px;}

/* ===== Intro / pestañas del panel (navy, igual que page-intro) ===== */
.panel-intro{position:relative;background:var(--navy);color:#fff;overflow:hidden;}
.panel-intro .rings{right:-160px;top:-220px;width:560px;height:560px;}
.panel-intro .inner{position:relative;padding-block:30px 26px;}
.panel-intro h1{font-size:clamp(26px,3.4vw,36px);margin:10px 0 6px;}
.panel-intro p{font-size:15px;color:rgba(255,255,255,.75);max-width:560px;}
.panel-intro .tab{color:#fff;}
.panel-intro .tab[aria-selected=true]{background:#fff;color:var(--navy);}

section.ppanel{display:none;}
section.ppanel.active{display:block;}

/* .filter en styles.css está pensado para fondo navy (page-intro).
   En el panel los chips de categoría y descuento van sobre fondo
   claro, así que se redefinen aquí. */
.filter{border:1px solid var(--line);background:#fff;color:var(--navy);}
.filter:hover{background:var(--soft);color:var(--navy);}
.filter[aria-pressed=true]{background:var(--navy);color:#fff;border-color:var(--navy);}

/* ===== Resultado de disponibilidad ===== */
.result-count{font-size:14px;color:var(--muted);margin:24px 0 16px;}
.card .card-media{height:200px;}
.card-media img{position:relative;z-index:1;max-width:62%;max-height:150px;object-fit:contain;mix-blend-mode:multiply;}
.card-qty{font-size:12px;color:var(--muted);margin-top:-2px;}

/* ===== Cotizar ===== */
.quote-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:28px;padding-block:32px 72px;}
@media (max-width:860px){.quote-layout{grid-template-columns:1fr;}}
.manual-row{display:flex;gap:10px;margin-top:16px;flex-wrap:wrap;}
.manual-row input{flex:1 1 120px;height:46px;border-radius:12px;border:1px solid #C9D2DF;padding:0 14px;font-size:14px;background:#fff;}

.cart-list{display:flex;flex-direction:column;gap:0;}
.d-item .qty-box{display:flex;align-items:center;gap:6px;}
.qty-box button{width:26px;height:26px;border-radius:8px;border:1px solid var(--line);background:#fff;cursor:pointer;font-size:14px;color:var(--navy);}
.qty-box span{min-width:16px;text-align:center;font-weight:700;font-size:13px;}
.remove-btn{background:none;border:none;color:var(--orange,#C2410C);cursor:pointer;font-size:12px;font-weight:700;}

.quoteresult textarea{
  width:100%;min-height:230px;border-radius:16px;border:1px solid var(--line);
  background:var(--soft);padding:16px;font-family:"Courier New",Consolas,monospace;
  font-size:12.5px;color:var(--navy);
}
.actions-row{display:flex;gap:10px;margin-top:14px;flex-wrap:wrap;}
.actions-row > *{flex:1;}
.ok-msg{color:#1FAF5A;font-size:13px;margin-top:10px;font-weight:700;}
.err-msg{color:#B91C1C;font-size:13px;margin-top:10px;font-weight:700;}
.hint{font-size:12px;color:var(--muted);margin-top:10px;}

.status-msg{color:var(--muted);font-size:14px;padding:48px 0;text-align:center;}
