:root{
  --fondo:#f6f3ee; --papel:#fff; --tinta:#1d1b18; --suave:#6b665e; --linea:#e6e0d6;
  --naranja:#e8590c; --naranja2:#ff7a2e; --verde:#14855a; --verdeF:#e3f4ec; --rojo:#c92a2a; --rojoF:#fdecec;
  --ambar:#b7791f; --ambarF:#fdf3e1; --sombra:0 1px 2px rgba(0,0,0,.05),0 6px 24px rgba(0,0,0,.06);
  --r:14px; color-scheme:light;
}
@media (prefers-color-scheme:dark){:root{
  --fondo:#141311; --papel:#1d1c19; --tinta:#f2eee8; --suave:#a39d93; --linea:#33302b;
  --verdeF:#123326; --rojoF:#3a1717; --ambarF:#3a2c12; --sombra:0 1px 2px rgba(0,0,0,.3); color-scheme:dark;
}}
*{box-sizing:border-box}
html,body{margin:0}
body{background:var(--fondo);color:var(--tinta);font:15px/1.45 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;-webkit-font-smoothing:antialiased}
a{color:var(--naranja)}
h1,h2,h3{margin:0;line-height:1.15}
.mono{font-family:ui-monospace,"Cascadia Mono",Consolas,monospace}
.muted{color:var(--suave)}
.card{background:var(--papel);border:1px solid var(--linea);border-radius:var(--r);box-shadow:var(--sombra);padding:20px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--linea);background:var(--papel);color:var(--tinta);
  font:inherit;font-weight:600;padding:10px 16px;border-radius:10px;cursor:pointer;text-decoration:none;white-space:nowrap}
.btn:hover{border-color:var(--suave)}
.btn.pri{background:var(--naranja);border-color:var(--naranja);color:#fff}
.btn.pri:hover{background:var(--naranja2)}
.btn.ok{background:var(--verde);border-color:var(--verde);color:#fff}
.btn.chico{padding:6px 10px;font-size:13px;border-radius:8px}
.btn:disabled{opacity:.5;cursor:default}
input,select,textarea{font:inherit;color:var(--tinta);background:var(--papel);border:1px solid var(--linea);border-radius:10px;padding:10px 12px;width:100%}
input:focus,select:focus,textarea:focus{outline:2px solid color-mix(in srgb,var(--naranja) 40%,transparent);border-color:var(--naranja)}
label{display:block;font-size:13px;font-weight:600;color:var(--suave);margin:0 0 6px}
.campo{margin-bottom:14px}
.fila{display:flex;gap:12px;flex-wrap:wrap}
.fila>*{flex:1 1 160px}
.chip{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:99px;font-size:12px;font-weight:700;white-space:nowrap}
.chip::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
.chip.pendiente{background:var(--ambarF);color:var(--ambar)}
.chip.pagado{background:var(--verdeF);color:var(--verde)}
.chip.vencido,.chip.anulado{background:color-mix(in srgb,var(--suave) 14%,transparent);color:var(--suave)}
.chip.mal{background:var(--rojoF);color:var(--rojo)}
.toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:var(--tinta);color:var(--papel);padding:10px 18px;border-radius:10px;font-weight:600;z-index:99;opacity:0;transition:opacity .2s;pointer-events:none;max-width:calc(100vw - 32px)}
.toast.ver{opacity:1}
