/* ============================================================
   Portal de Cotizaciones — Alitter
   Sistema de diseño basado en Alitter2026 (dark premium / glass)
   ============================================================ */
:root{
  --bg:#0a0a0f; --bg-alt:#0e0d16; --bg-card:rgba(255,255,255,.04); --bg-card-hover:rgba(255,255,255,.07);
  --sidebar:#0c0b12;
  --line:rgba(255,255,255,.08); --line-strong:rgba(255,255,255,.18);
  --text:#f6f6f9; --text-2:#d4d4dc; --text-muted:#9b9aa6; --text-soft:#6e6c78;
  --red:#D81E2D; --red-hover:#b3141f; --red-deep:#8C0716; --red-bright:#FF1F2F;
  --red-50:rgba(216,30,45,.12); --red-100:rgba(216,30,45,.30);
  --r-sm:6px; --r-md:10px; --r-lg:14px; --r-xl:20px;
  --shadow-lg:0 14px 30px rgba(0,0,0,.55); --shadow-red:0 14px 32px -8px rgba(216,30,45,.55);
  --sans:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --mono:'JetBrains Mono',ui-monospace,'Consolas',monospace;
  --sbw:300px;
}
*,*::before,*::after{box-sizing:border-box;}
html,body{margin:0;}
body{background:var(--bg);color:var(--text);font-family:var(--sans);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased;}
a{color:inherit;text-decoration:none;transition:color .15s;}
h1,h2,h3,h4,h5{margin:0 0 1rem;line-height:1.12;letter-spacing:-.025em;font-weight:700;}

/* aurora */
.bg-aurora{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden;background:var(--bg);}
.bg-aurora::before{content:"";position:absolute;inset:-10%;
  background:radial-gradient(circle at 80% 18%,rgba(216,30,45,.26),transparent 38%),
    radial-gradient(circle at 90% 60%,rgba(234,88,12,.14),transparent 40%),
    radial-gradient(circle at 60% 90%,rgba(245,158,11,.10),transparent 42%);
  animation:aur 20s ease-in-out infinite alternate;filter:blur(24px);}
@keyframes aur{0%{transform:translate(0,0) scale(1);}100%{transform:translate(-2vw,-1vh) scale(1.08);}}

/* layout */
.app{display:grid;grid-template-columns:var(--sbw) 1fr;min-height:100vh;}

/* sidebar */
.sidebar{position:sticky;top:0;height:100vh;background:rgba(12,11,18,.85);backdrop-filter:blur(18px);
  border-right:1px solid var(--line);display:flex;flex-direction:column;overflow:hidden;}
.sb-brand{display:flex;align-items:center;gap:.6rem;padding:1.25rem 1.35rem;border-bottom:1px solid var(--line);font-weight:800;font-size:1.1rem;letter-spacing:-.02em;}
.sb-brand .logo-mark{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;color:#fff;font-weight:800;
  background:linear-gradient(135deg,var(--red),var(--red-deep));box-shadow:0 6px 16px -6px rgba(216,30,45,.6);}
.sb-brand small{display:block;font-size:.62rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--text-soft);font-family:var(--mono);margin-top:1px;}
.sb-client{padding:1rem 1.35rem;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:.7rem;}
.sb-client .ava{width:40px;height:40px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid var(--line);display:grid;place-items:center;font-size:1.1rem;color:#ffabb3;flex-shrink:0;}
.sb-client .nm{font-weight:600;font-size:.92rem;line-height:1.2;}
.sb-client .fl{font-family:var(--mono);font-size:.7rem;color:var(--text-soft);}
.sb-nav{flex:1;overflow-y:auto;padding:.85rem .8rem;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.14) transparent;}
.sb-nav::-webkit-scrollbar{width:6px;}
.sb-nav::-webkit-scrollbar-track{background:transparent;}
.sb-nav::-webkit-scrollbar-thumb{background:rgba(255,255,255,.12);border-radius:99px;}
.sb-nav::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.22);}
.sb-nav .grp{font-family:var(--mono);font-size:.64rem;letter-spacing:.12em;text-transform:uppercase;color:var(--text-soft);padding:.5rem .65rem .35rem;}
.nav-link2{display:flex;align-items:center;gap:.7rem;padding:.6rem .7rem;border-radius:var(--r-md);color:var(--text-muted);font-size:.9rem;font-weight:500;cursor:pointer;transition:.15s;border:1px solid transparent;}
.nav-link2 i{font-size:1rem;width:20px;text-align:center;opacity:.8;}
.nav-link2:hover{background:rgba(255,255,255,.05);color:var(--text);}
.nav-link2.active{background:rgba(216,30,45,.14);border-color:rgba(216,30,45,.4);color:#ffabb3;}
.nav-link2.active i{opacity:1;color:var(--red-bright);}
.sb-foot{padding:1rem 1.1rem;border-top:1px solid var(--line);}

/* main */
.main{min-width:0;display:flex;flex-direction:column;}
.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 2rem;background:rgba(10,10,15,.7);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);}
.topbar .crumb{font-family:var(--mono);font-size:.78rem;color:var(--text-muted);}
.topbar .crumb b{color:var(--text);}
.cot-select{display:inline-flex;align-items:center;gap:.5rem;background:var(--bg-card);border:1px solid var(--line-strong);border-radius:999px;padding:.35rem .9rem;font-size:.82rem;color:var(--text-2);cursor:pointer;position:relative;}
.cot-menu{position:absolute;right:0;top:115%;background:#141019;border:1px solid var(--line-strong);border-radius:var(--r-md);padding:.4rem;min-width:280px;z-index:30;display:none;box-shadow:var(--shadow-lg);}
.cot-menu.open{display:block;}
.cot-menu a{display:block;padding:.55rem .7rem;border-radius:var(--r-sm);color:var(--text-2);font-size:.85rem;}
.cot-menu a:hover{background:rgba(255,255,255,.06);color:#fff;}
.cot-menu a .mono{font-family:var(--mono);font-size:.72rem;color:var(--text-soft);display:block;}
.hamb{display:none;background:var(--bg-card);border:1px solid var(--line-strong);color:#fff;border-radius:var(--r-md);width:40px;height:40px;font-size:1.2rem;}
.content{padding:2.75rem 2rem 4rem;}
.panel{max-width:880px;margin:0 auto;display:none;animation:fade .35s ease;}
.panel.active{display:block;}
@keyframes fade{from{opacity:0;transform:translateY(8px);}to{opacity:1;transform:none;}}

/* headers */
.eyebrow{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--mono);font-size:.72rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:#ffabb3;background:var(--red-50);padding:.35rem .75rem;border-radius:999px;border:1px solid var(--red-100);margin-bottom:1.1rem;}
.eyebrow .dot{width:6px;height:6px;border-radius:50%;background:var(--red);box-shadow:0 0 0 3px rgba(216,30,45,.3);}
.sec-title{font-size:clamp(1.7rem,2.6vw,2.2rem);font-weight:800;letter-spacing:-.03em;margin:0 0 .6rem;}
.sec-lead{color:var(--text-muted);font-size:1.05rem;max-width:62ch;margin:0 0 2.25rem;}
.accent{background:linear-gradient(120deg,#ff5c6c,#ff8a3d 50%,#fcd34d);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;}

/* botones */
.btn{border-radius:var(--r-md);font-weight:500;font-family:var(--sans);padding:.65rem 1.15rem;display:inline-flex;align-items:center;gap:.5rem;border:1px solid transparent;font-size:.92rem;transition:.15s;cursor:pointer;text-decoration:none;}
.btn-lg{padding:.85rem 1.5rem;font-size:1rem;}
.btn-block{width:100%;justify-content:center;}
.btn-cta{background:var(--red);color:#fff!important;border-color:var(--red);box-shadow:0 1px 2px rgba(216,30,45,.2),inset 0 1px 0 rgba(255,255,255,.18);}
.btn-cta:hover{background:var(--red-hover);box-shadow:var(--shadow-red);transform:translateY(-1px);}
.btn-ghost{background:var(--bg-card);color:var(--text)!important;border-color:var(--line-strong);}
.btn-ghost:hover{border-color:var(--text);transform:translateY(-1px);}

/* bienvenida */
.welcome-hero{padding:1rem 0 .5rem;}
.welcome-hero h1{font-size:clamp(2.1rem,4vw,3.1rem);font-weight:800;letter-spacing:-.035em;line-height:1.05;margin:.8rem 0 1rem;}
.welcome-hero .lead{color:var(--text-2);font-size:1.12rem;max-width:60ch;line-height:1.7;}
.about{background:var(--bg-card);border:1px solid var(--line);border-radius:var(--r-lg);padding:1.6rem 1.75rem;margin:2rem 0;backdrop-filter:blur(8px);display:flex;gap:1.1rem;}
.about .ic{font-size:1.5rem;color:#ffabb3;flex-shrink:0;margin-top:.1rem;}
.about h4{font-size:1.05rem;margin:0 0 .35rem;}
.about p{color:var(--text-muted);font-size:.95rem;margin:0;}
.howto-title{font-family:var(--mono);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--text-soft);margin:2.5rem 0 1rem;}
.howto{display:grid;grid-template-columns:repeat(2,1fr);gap:.85rem;}
.howto-card{display:flex;gap:.85rem;align-items:flex-start;background:var(--bg-card);border:1px solid var(--line);border-radius:var(--r-md);padding:1rem 1.1rem;cursor:pointer;transition:.2s;backdrop-filter:blur(8px);}
.howto-card:hover{transform:translateY(-2px);border-color:var(--line-strong);background:var(--bg-card-hover);}
.howto-card .n{width:30px;height:30px;border-radius:8px;background:rgba(255,255,255,.06);border:1px solid var(--line);display:grid;place-items:center;font-family:var(--mono);font-size:.82rem;color:#ffabb3;flex-shrink:0;}
.howto-card h5{font-size:.95rem;margin:0 0 .15rem;font-weight:600;}
.howto-card p{color:var(--text-muted);font-size:.82rem;margin:0;line-height:1.45;}
.welcome-cta{display:flex;gap:.7rem;flex-wrap:wrap;margin-top:2.5rem;}
.meta-row{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.5rem;}
.meta-pill{display:inline-flex;align-items:center;gap:.5rem;background:var(--bg-card);border:1px solid var(--line);border-radius:999px;padding:.45rem .9rem;font-size:.82rem;color:var(--text-2);}
.meta-pill i{color:#ffabb3;}
.badge-estado{font-family:var(--mono);font-size:.72rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;padding:.3rem .7rem;border-radius:999px;display:inline-flex;align-items:center;gap:.4rem;background:rgba(245,158,11,.15);border:1px solid rgba(245,158,11,.4);color:#fcd34d;}
.badge-estado .bdot{width:7px;height:7px;border-radius:50%;background:#fcd34d;box-shadow:0 0 8px #fcd34d;}

/* feature cards */
.grid-feat{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;}
.feature-card{background:var(--bg-card);border:1px solid var(--line);border-radius:var(--r-lg);padding:1.5rem;transition:.25s;backdrop-filter:blur(8px);}
.feature-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg);border-color:var(--line-strong);background:var(--bg-card-hover);}
.feature-icon{width:44px;height:44px;border-radius:var(--r-md);display:grid;place-items:center;font-size:1.25rem;margin-bottom:1.1rem;background:var(--fb,rgba(216,30,45,.15));color:var(--fc,#ffabb3);border:1px solid var(--fbd,rgba(216,30,45,.35));}
.feature-card h4{font-size:1.05rem;margin-bottom:.4rem;font-weight:600;}
.feature-card p{color:var(--text-muted);font-size:.92rem;margin:0;line-height:1.55;}
.f-red{--fb:rgba(216,30,45,.15);--fc:#ffabb3;--fbd:rgba(216,30,45,.4);}
.f-amber{--fb:rgba(245,158,11,.15);--fc:#fcd34d;--fbd:rgba(245,158,11,.4);}
.f-teal{--fb:rgba(13,148,136,.15);--fc:#5eead4;--fbd:rgba(13,148,136,.4);}
.f-navy{--fb:rgba(96,165,250,.15);--fc:#93c5fd;--fbd:rgba(96,165,250,.4);}
.f-orange{--fb:rgba(234,88,12,.15);--fc:#fdba74;--fbd:rgba(234,88,12,.4);}
.f-plum{--fb:rgba(192,132,252,.15);--fc:#d8b4fe;--fbd:rgba(192,132,252,.4);}

/* stack pills */
.stack-pills{display:flex;flex-wrap:wrap;gap:.5rem;}
.stack-pills span{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);color:#c9c9d0;font-family:var(--mono);font-size:.82rem;padding:.45rem .8rem;border-radius:var(--r-sm);}
.stack-pills .featured{background:rgba(216,30,45,.18);border-color:rgba(216,30,45,.45);color:#ffabb3;}

/* timeline vertical */
.vtimeline{position:relative;padding-left:2.2rem;}
.vtimeline::before{content:"";position:absolute;left:13px;top:8px;bottom:8px;width:2px;background:linear-gradient(180deg,rgba(255,171,179,.5),rgba(252,211,77,.5),rgba(94,234,212,.5),rgba(147,197,253,.5));}
.vstep{position:relative;padding:0 0 1.6rem;}
.vstep:last-child{padding-bottom:0;}
.vstep .vnum{position:absolute;left:-2.2rem;width:28px;height:28px;border-radius:50%;background:var(--bg);border:2px solid var(--pc,var(--red));color:var(--pc,var(--red));display:grid;place-items:center;font-weight:700;font-size:.8rem;box-shadow:0 0 0 4px rgba(10,10,15,.7);}
.vstep .vcard{background:var(--bg-card);border:1px solid var(--line);border-radius:var(--r-md);padding:1.1rem 1.3rem;backdrop-filter:blur(8px);}
.vstep h4{font-size:1.02rem;margin:0 0 .15rem;font-weight:600;}
.vstep .dias{font-family:var(--mono);font-size:.72rem;color:var(--text-soft);margin-bottom:.5rem;}
.vstep p{color:var(--text-muted);font-size:.9rem;margin:0;}
.p-red{--pc:#ffabb3;} .p-amber{--pc:#fcd34d;} .p-teal{--pc:#5eead4;} .p-navy{--pc:#93c5fd;}

/* entregables */
.deliv{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,1fr);gap:.7rem 1.5rem;}
.deliv li{display:flex;gap:.6rem;align-items:flex-start;color:var(--text-2);font-size:.95rem;padding:.35rem 0;}
.deliv li i{color:#5eead4;margin-top:3px;flex-shrink:0;}

/* inversión */
.gcard{background:var(--bg-card);border:1px solid var(--line);border-radius:var(--r-lg);backdrop-filter:blur(8px);}
.inv-table{width:100%;border-collapse:collapse;}
.inv-table thead th{font-family:var(--mono);font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-soft);text-align:left;padding:.75rem 1.1rem;border-bottom:1px solid var(--line-strong);font-weight:500;}
.inv-table thead th.num{text-align:right;}
.inv-table tbody td{padding:1rem 1.1rem;border-bottom:1px solid var(--line);font-size:.93rem;vertical-align:top;}
.inv-table tbody td .c-desc{color:var(--text-muted);font-size:.82rem;margin-top:.2rem;}
.inv-table td.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;}
.inv-totals{margin:1.2rem 1.1rem 0 auto;max-width:340px;}
.inv-totals .row-t{display:flex;justify-content:space-between;padding:.45rem 0;font-size:.93rem;color:var(--text-2);}
.inv-totals .row-t.grand{border-top:1px solid var(--line-strong);margin-top:.4rem;padding-top:.9rem;font-size:1.2rem;font-weight:800;color:#fff;}
.inv-totals .row-t.grand .amt{color:#ffabb3;}

/* info cards */
.info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;}
.info-card{background:var(--bg-card);border:1px solid var(--line);border-radius:var(--r-lg);padding:1.4rem;backdrop-filter:blur(8px);}
.info-card .ic{font-size:1.35rem;color:#ffabb3;margin-bottom:.6rem;}
.info-card h5{font-size:.98rem;font-weight:600;margin:0 0 .35rem;}
.info-card p{color:var(--text-muted);font-size:.88rem;margin:0;line-height:1.5;}

/* faq */
.faq-item{background:var(--bg-card);border:1px solid var(--line);border-radius:var(--r-lg);margin-bottom:.7rem;backdrop-filter:blur(8px);}
.faq-item[open]{border-color:rgba(216,30,45,.4);}
.faq-item summary{list-style:none;cursor:pointer;padding:1.1rem 1.35rem;display:grid;grid-template-columns:1fr 24px;align-items:center;gap:1rem;font-weight:600;}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item .fic{transition:transform .25s;color:var(--text-muted);}
.faq-item[open] .fic{transform:rotate(45deg);color:#ffabb3;}
.faq-a{padding:0 1.35rem 1.2rem;color:var(--text-muted);font-size:.92rem;line-height:1.65;}

.panel-nav{display:flex;justify-content:space-between;gap:1rem;margin-top:3rem;padding-top:1.75rem;border-top:1px solid var(--line);}

/* responsive */
.sb-backdrop{display:none;}
@media(max-width:900px){
  .app{grid-template-columns:1fr;}
  .sidebar{position:fixed;left:0;top:0;width:84%;max-width:320px;z-index:60;transform:translateX(-100%);transition:transform .25s;}
  .sidebar.open{transform:none;box-shadow:0 0 60px rgba(0,0,0,.6);}
  .hamb{display:grid;place-items:center;}
  .sb-backdrop.show{display:block;position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:55;}
  .content{padding:1.75rem 1.15rem 3rem;}
  .grid-feat,.howto,.info-grid,.deliv{grid-template-columns:1fr;}
}

/* ============================================================
   LOGIN
   ============================================================ */
.login-wrap{min-height:100vh;display:grid;place-items:center;padding:1.5rem;}
.login-card{width:100%;max-width:420px;background:var(--bg-card);border:1px solid var(--line);border-radius:var(--r-xl);padding:2.5rem;backdrop-filter:blur(12px);box-shadow:var(--shadow-lg);}
.login-card .lb{display:flex;align-items:center;gap:.6rem;font-weight:800;font-size:1.25rem;margin-bottom:.4rem;}
.login-card .lb .logo-mark{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;color:#fff;font-weight:800;background:linear-gradient(135deg,var(--red),var(--red-deep));box-shadow:0 6px 16px -6px rgba(216,30,45,.6);}
.login-card .lb small{display:block;font-size:.6rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--text-soft);font-family:var(--mono);}
.login-card h1{font-size:1.5rem;margin:1.5rem 0 .3rem;font-weight:800;letter-spacing:-.02em;}
.login-card .sub{color:var(--text-muted);font-size:.92rem;margin-bottom:1.75rem;}
.field{margin-bottom:1.1rem;}
.field label{display:block;font-family:var(--mono);font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.45rem;}
.field input{width:100%;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.14);color:var(--text);border-radius:var(--r-md);padding:.8rem .9rem;font-size:.98rem;font-family:var(--sans);transition:.15s;}
.field input:focus{outline:none;border-color:var(--red);box-shadow:0 0 0 3px rgba(216,30,45,.2);background:rgba(255,255,255,.06);}
.login-error{background:rgba(216,30,45,.12);border:1px solid rgba(216,30,45,.4);color:#ffabb3;border-radius:var(--r-md);padding:.7rem .9rem;font-size:.88rem;margin-bottom:1.1rem;}
.login-foot{margin-top:1.5rem;text-align:center;color:var(--text-soft);font-size:.78rem;font-family:var(--mono);}

/* ============================================================
   ADMIN (lista simple)
   ============================================================ */
.admin-wrap{max-width:1100px;margin:0 auto;padding:2.5rem 1.5rem;}
.admin-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;gap:1rem;flex-wrap:wrap;}
.admin-table{width:100%;border-collapse:collapse;background:var(--bg-card);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;}
.admin-table th{font-family:var(--mono);font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;color:var(--text-soft);text-align:left;padding:.9rem 1.1rem;border-bottom:1px solid var(--line-strong);font-weight:500;}
.admin-table td{padding:.9rem 1.1rem;border-bottom:1px solid var(--line);font-size:.92rem;}
.admin-table tr:hover td{background:rgba(255,255,255,.03);}
.chip-estado{font-family:var(--mono);font-size:.68rem;text-transform:uppercase;padding:.25rem .6rem;border-radius:999px;border:1px solid var(--line-strong);color:var(--text-2);}

/* topnav admin */
.adm-topnav{display:flex;gap:.4rem;margin:1.25rem 0 2rem;flex-wrap:wrap;}
.adm-topnav a{padding:.5rem .95rem;border-radius:var(--r-md);color:var(--text-muted);font-size:.9rem;font-weight:500;border:1px solid transparent;display:inline-flex;align-items:center;gap:.5rem;}
.adm-topnav a:hover{background:rgba(255,255,255,.05);color:var(--text);}
.adm-topnav a.active{background:rgba(216,30,45,.14);border-color:rgba(216,30,45,.4);color:#ffabb3;}

/* tarjetas / formularios admin */
.adm-card{background:var(--bg-card);border:1px solid var(--line);border-radius:var(--r-lg);padding:1.5rem;margin-bottom:1.25rem;backdrop-filter:blur(8px);}
.adm-card > h3{font-size:1.05rem;font-weight:700;margin:0 0 1.1rem;display:flex;align-items:center;gap:.55rem;}
.adm-card > h3 i{color:#ffabb3;}
.adm-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;}
.adm-grid .full{grid-column:1 / -1;}
.field textarea,.field select{width:100%;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.14);color:var(--text);border-radius:var(--r-md);padding:.7rem .9rem;font-size:.95rem;font-family:var(--sans);transition:.15s;}
.field textarea:focus,.field select:focus{outline:none;border-color:var(--red);box-shadow:0 0 0 3px rgba(216,30,45,.2);}
.field textarea{min-height:90px;resize:vertical;}
.field select option{background:#141019;color:var(--text);}
.row-inline{display:flex;gap:.6rem;align-items:flex-end;flex-wrap:wrap;}
.row-inline .field{margin-bottom:0;flex:1;min-width:140px;}
.btn-sm{padding:.4rem .8rem;font-size:.84rem;}
.btn-danger{background:transparent;color:#ff8a93!important;border-color:rgba(216,30,45,.4);}
.btn-danger:hover{background:rgba(216,30,45,.15);border-color:rgba(216,30,45,.6);}
.mini-table{width:100%;border-collapse:collapse;margin-bottom:1rem;}
.mini-table td{padding:.6rem .7rem;border-bottom:1px solid var(--line);font-size:.9rem;vertical-align:top;}
.mini-table td:last-child{text-align:right;width:1%;white-space:nowrap;}
.mini-empty{color:var(--text-soft);font-size:.86rem;font-style:italic;padding:.4rem 0 1rem;}
.adm-flash{background:rgba(216,30,45,.12);border:1px solid rgba(216,30,45,.4);color:#ffabb3;border-radius:var(--r-md);padding:.7rem .9rem;font-size:.88rem;margin-bottom:1rem;}
.btn-link-row{display:flex;gap:.4rem;}

/* ============================================================
   IMPRESIÓN / PDF
   ============================================================ */
@media print{
  .sidebar,.topbar,.panel-nav,.welcome-cta,.sb-backdrop,.hamb{display:none!important;}
  .app{grid-template-columns:1fr;}
  body{background:#fff;color:#111;}
  .panel{display:block!important;max-width:none;page-break-after:always;}
  .bg-aurora{display:none;}
}
