*{box-sizing:border-box}
:root{
  --gold:#e4c45f;--violet:#7547c9;--text:#faf5e9;--muted:#c8c0d4;
  --line:rgba(255,255,255,.14);--danger:#cf6067;--ok:#9ee5b2;--blue:#8fd0ff;
}
html,body{min-height:100%}
body{margin:0;color:var(--text);font-family:Arial,Helvetica,sans-serif;overflow-x:hidden;background:#090b1d}
.bg-wrap{position:fixed;inset:0;z-index:-10;overflow:hidden}
.bg{position:absolute;inset:0;background:url('fondo_definitivo.png') center center/cover no-repeat}
.veil{position:absolute;inset:0;background:
linear-gradient(180deg,rgba(7,8,24,.10),rgba(7,8,24,.18) 35%,rgba(7,8,24,.43) 100%),
radial-gradient(circle at 50% 0%,rgba(255,255,255,.06),transparent 35%)}

.topbar{
position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;
gap:18px;padding:14px 24px;background:rgba(6,7,20,.78);border-bottom:1px solid var(--line);backdrop-filter:blur(15px)}
.brand{display:flex;align-items:center;gap:12px}.brand strong{display:block}.brand span{display:block;color:var(--muted);font-size:13px;margin-top:3px}
.logo-orb{
width:50px;height:50px;border-radius:50%;display:grid;place-items:center;font-size:20px;
background:radial-gradient(circle at 35% 30%,#f0e5ff,#9971dd 34%,#2e1b63 70%);
border:1px solid #e8ca6c;box-shadow:0 0 30px rgba(139,93,218,.32)}
nav{display:flex;gap:7px;flex-wrap:wrap}
.navbtn{border:0;background:transparent;color:#ece6f4;padding:9px 12px;border-radius:10px;cursor:pointer}
.navbtn.active{background:rgba(228,196,95,.20);color:#ffeaa1}

.shell{max-width:1190px;margin:0 auto;padding:42px 18px 72px}
.screen{display:none}.screen.active{display:block}
.panel,.stat-card{
background:linear-gradient(180deg,rgba(25,27,65,.86),rgba(12,14,38,.91));
border:1px solid var(--line);border-radius:20px;box-shadow:0 18px 55px rgba(0,0,0,.32);backdrop-filter:blur(8px)}
.panel{padding:24px}
.hero-panel{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}

.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:800;color:#e8cc72;margin:0 0 10px}
h1,h2{font-family:Georgia,serif}h1{font-size:clamp(32px,5vw,54px);margin:0 0 14px}h2{margin:0 0 12px}
.lead{font-size:18px;color:#e7e0ef;line-height:1.6}.muted{color:var(--muted)}
.mtop{margin-top:16px}

.status,.pill{display:inline-flex;align-items:center;padding:8px 11px;border-radius:999px;font-size:12px;font-weight:800}
.status.owner{background:rgba(228,196,95,.15);color:#ffe391}
.status.ok{background:rgba(91,198,123,.16);color:var(--ok)}
.status.pending{background:rgba(228,196,95,.13);color:#ffe391}
.status.used{background:rgba(91,198,123,.14);color:var(--ok)}
.pill{background:rgba(255,255,255,.07);color:#e5ddec}

.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:18px 0}
.stat-card{padding:20px}
.stat-card span,.stat-card small{display:block;color:var(--muted)}
.stat-card strong{display:block;font-size:36px;margin:8px 0;color:#ffe18a}

.panel-row{display:flex;align-items:end;justify-content:space-between;gap:18px}
.search{max-width:350px}
input,select{
width:100%;padding:13px 14px;border-radius:11px;border:1px solid rgba(255,255,255,.18);
background:#0d0f29;color:white;font:inherit;outline:none}
label{display:block;margin:18px 0 7px;font-weight:700}

.user-row{
display:grid;grid-template-columns:minmax(220px,1fr) auto auto;gap:12px;align-items:center;
padding-top:16px;margin-top:16px;border-top:1px solid var(--line)}
.user-row b,.user-row small{display:block}.user-row small{color:var(--muted);margin-top:3px}

button{font:inherit}
.primary,.secondary,.smallbtn,.danger{border:0;border-radius:11px;padding:12px 16px;font-weight:800;cursor:pointer}
.primary{background:var(--gold);color:#20173a}
.secondary{background:var(--violet);color:white}
.smallbtn{background:#7547c9;color:white;padding:9px 12px}
.danger{background:#7f3131;color:white}
.danger.ghost{background:rgba(127,49,49,.28);border:1px solid rgba(207,96,103,.3)}
.full{width:100%;margin-top:14px}

.grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.detail-list{display:flex;flex-direction:column;gap:12px}
.detail-list div{display:flex;justify-content:space-between;gap:18px;padding-bottom:10px;border-bottom:1px solid rgba(255,255,255,.08)}
.detail-list span{color:var(--muted)}.green{color:var(--ok)}

.action-strip{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}

.device-list{display:flex;flex-direction:column;gap:12px;margin-top:20px}
.device-card{
display:grid;grid-template-columns:50px minmax(220px,1fr) auto auto;gap:12px;align-items:center;
padding:14px;border-radius:14px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08)}
.device-icon{font-size:27px;text-align:center}
.device-card b,.device-card small{display:block}.device-card small{color:var(--muted);margin-top:3px}
.empty-device{opacity:.72}

.notice{
margin-top:18px;padding:16px 18px;border:1px solid rgba(228,196,95,.35);
background:rgba(228,196,95,.07);border-radius:14px}

.timeline{display:flex;flex-direction:column;gap:0;margin-top:22px}
.event{display:grid;grid-template-columns:20px 1fr;gap:12px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.08)}
.event b,.event small{display:block}.event small{color:var(--muted);margin-top:4px}
.dot{width:11px;height:11px;border-radius:50%;margin-top:4px}.okdot{background:#6dcc8d}.golddot{background:#e4c45f}

.gift-code{
font:900 20px monospace;letter-spacing:.08em;padding:14px;border-radius:10px;background:#0d0f28;
border:1px dashed #c8aa58;text-align:center;margin:18px 0}
.code-row{
display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.08)}
.code-row b,.code-row small{display:block}.code-row small{color:var(--muted);margin-top:4px}

footer{text-align:center;padding:28px;color:#b3aabe;border-top:1px solid var(--line);background:rgba(5,6,16,.60)}

@media(max-width:1000px){
  .stats-grid{grid-template-columns:1fr 1fr}
  .grid2{grid-template-columns:1fr}
}
@media(max-width:850px){
  .topbar{align-items:flex-start;flex-direction:column}
  .hero-panel{align-items:flex-start;flex-direction:column}
  .panel-row{align-items:stretch;flex-direction:column}
  .search{max-width:none}
  .device-card{grid-template-columns:42px 1fr}
  .device-card .pill,.device-card button{grid-column:2}
}
@media(max-width:560px){
  .stats-grid{grid-template-columns:1fr}
  .user-row{grid-template-columns:1fr}
  .shell{padding:22px 12px 50px}
  .panel{padding:20px}
  .topbar{padding:12px}
}

.brand-logo{width:64px;height:64px;object-fit:contain}@media(max-width:850px){.brand-logo{width:56px;height:56px}}


.mzl-switcher{
  position:fixed;right:18px;bottom:82px;z-index:999999;
  display:flex;align-items:center;gap:8px;
  padding:10px 14px;border:1px solid rgba(255,255,255,.28);
  border-radius:999px;background:rgba(8,18,38,.94);
  box-shadow:0 8px 28px rgba(0,0,0,.28);
  backdrop-filter:blur(9px);
  font:600 14px/1.2 Arial,sans-serif
}
.mzl-switcher button{
  appearance:none;border:0;background:none;padding:0;
  color:#d9e5ff;font:inherit;cursor:pointer
}
.mzl-switcher button.is-active{color:#fff;font-weight:800}
.mzl-sep{color:rgba(255,255,255,.45)}
@media(max-width:640px){
  .mzl-switcher{right:10px;bottom:72px;padding:9px 12px;font-size:13px}
}


/* v1.2.0 — panel real */
.mzo-panel-wrap .mzo-owner-tools{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.mzo-panel-wrap .mzo-owner-tools a{color:#fff;text-decoration:none;background:rgba(255,255,255,.08);padding:9px 11px;border-radius:10px;border:1px solid rgba(255,255,255,.12);font-size:13px;font-weight:700}
.mzo-search-form{display:flex;gap:8px;align-items:end;min-width:min(100%,460px)}
.mzo-search-form .search{flex:1}
.mzo-linkbtn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none!important}
.mzo-flash{margin:0 0 18px;padding:13px 15px;border-radius:12px;background:rgba(73,148,99,.20);border:1px solid rgba(109,204,141,.46);color:#dcffe7;font-weight:700}
.mzo-empty{padding:18px 0;color:var(--muted)}
.mzo-inline-form{margin:0}
.mzo-inline-form button{white-space:nowrap}
.mzo-danger-zone{margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}
.code-row{grid-template-columns:minmax(0,1fr) auto auto}
.topbar nav{flex:1;justify-content:center}
@media(max-width:1000px){.topbar nav{justify-content:flex-start}.mzo-owner-tools{width:100%}.mzo-search-form{min-width:0;width:100%}}
@media(max-width:680px){.mzo-search-form{flex-direction:column;align-items:stretch}.code-row{grid-template-columns:1fr}.code-row .status,.code-row form{justify-self:start}}
