:root{--negro:#0a0a0a;--blanco:#ffffff;--gris-1:#f4f4f4;--gris-2:#e5e5e5;--gris-3:#8a8a8a;--gris-4:#3a3a3a}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--gris-1);color:var(--negro);font-family:ui-sans-serif,system-ui,-apple-system,Helvetica Neue,Arial,sans-serif}a{color:inherit}.cabecera{background:var(--negro);color:var(--blanco);padding:14px 24px;display:flex;align-items:center;justify-content:space-between}.cabecera img{height:18px;width:auto}.cabecera nav a{color:var(--gris-2);margin-left:16px;text-decoration:none;font-size:14px}main{max-width:1080px;margin:0 auto;padding:24px 16px 64px}h1{font-size:22px;margin:8px 0 16px}h2{font-size:16px;margin:28px 0 10px;text-transform:uppercase;letter-spacing:1px;color:var(--gris-4)}.tarjeta{background:var(--blanco);border:1px solid var(--gris-2);padding:16px;margin-bottom:16px}.cifras{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:12px;gap:12px}.cifra{background:var(--blanco);border:1px solid var(--gris-2);padding:14px}.cifra b{display:block;font-size:20px;margin-top:4px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cifra span{font-size:12px;color:var(--gris-3);text-transform:uppercase;letter-spacing:1px}table{width:100%;border-collapse:collapse;background:var(--blanco);font-size:14px}td,th{text-align:left;padding:8px 10px;border-bottom:1px solid var(--gris-2)}td.num,th.num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.tabla{overflow-x:auto;border:1px solid var(--gris-2)}.boton,button{background:var(--negro);color:var(--blanco);border:0;padding:9px 14px;font-size:14px;cursor:pointer}button.secundario{background:var(--blanco);color:var(--negro);border:1px solid var(--negro)}button:disabled{opacity:.5;cursor:not-allowed}input,select{padding:9px 10px;border:1px solid var(--gris-3);font-size:14px;background:var(--blanco)}form.fila{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.etiqueta{display:inline-block;padding:2px 8px;border:1px solid var(--gris-3);font-size:12px}.aviso{border-left:3px solid var(--negro);background:var(--blanco);padding:10px 14px;margin:12px 0;font-size:14px}.error{border-left-color:#000;background:var(--gris-2)}.centro{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:16px}.caja{width:100%;max-width:380px;background:var(--blanco);border:1px solid var(--gris-2);padding:28px}.caja button,.caja input{width:100%;margin-top:10px}.muted{color:var(--gris-3);font-size:13px}