/* Tokens de diseño compartidos por public/index.html y public/admin/index.html */
:root{
  --bg:#0b0a08; --bg-2:#12100d;
  --ink:#ece5d8; --ink-dim:#98907f; --ink-faint:#57503f;
  --vela:#e0a24e; --vela-deep:#c98a37; --vela-pale:#7d6a52;
  --line:rgba(236,229,216,.09); --line-2:rgba(236,229,216,.05);
  --serif:'Fraunces', Georgia, 'Times New Roman', serif;
  --mono:'IBM Plex Mono', ui-monospace, monospace;
  --ease:cubic-bezier(.22,.61,.36,1);
  --slow:900ms;
  --ok:#7fae7a; --err:#c9645a;
}
*{box-sizing:border-box;margin:0;padding:0}
html,body{height:100%}
body{
  background:var(--bg); color:var(--ink); font-family:var(--serif);
  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
  min-height:100dvh;
}
a{color:inherit}

.act{display:inline-flex; align-items:center; gap:12px; padding:14px 26px;
  font-family:var(--mono); font-size:13px; letter-spacing:2px; text-transform:uppercase; color:var(--ink);
  background:transparent; border:1px solid var(--line); border-radius:2px; cursor:pointer;
  transition:border-color .5s var(--ease), color .5s var(--ease), background .5s var(--ease), box-shadow .6s var(--ease);}
.act:hover{color:var(--vela); border-color:rgba(224,162,78,.5); background:rgba(224,162,78,.05); box-shadow:0 0 44px -14px rgba(224,162,78,.55);}
.act:focus-visible{outline:2px solid var(--vela); outline-offset:3px}
.act[disabled]{opacity:.4; cursor:not-allowed}
.act.ghost{border-color:transparent; color:var(--ink-dim); text-transform:none; letter-spacing:.3px; font-size:13px; padding:8px 4px}
.act.ghost:hover{background:transparent; box-shadow:none}

@media (prefers-reduced-motion: reduce){ *{animation-duration:.01ms !important; transition-duration:.12s !important} }
