/* Sistema de Rendiciones — Orocash. Mobile-first, negro #121212 / dorado #C8A035 */
:root{
  --negro:#121212; --panel:#1c1c1c; --panel2:#242424; --borde:#333;
  --dorado:#C8A035; --texto:#e6e6e6; --texto2:#9e9e9e;
  --verde:#4caf50; --rojo:#ef5350; --ambar:#ffb300;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--negro);color:var(--texto);
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  font-size:16px;line-height:1.45;min-height:100vh;display:flex;flex-direction:column}
.barra{display:flex;align-items:center;justify-content:space-between;gap:8px;
  padding:12px 16px;background:#0d0d0d;border-bottom:1px solid var(--borde);
  position:sticky;top:0;z-index:50}
.marca{color:var(--dorado);font-weight:700;letter-spacing:.08em;text-decoration:none;font-size:.95rem}
.marca span{color:var(--texto);font-weight:400}
.nav{display:flex;gap:14px;flex-wrap:wrap}
.nav a{color:var(--texto2);text-decoration:none;font-size:.85rem}
.nav a:active,.nav a:hover{color:var(--dorado)}
.contenido{flex:1;width:100%;max-width:760px;margin:0 auto;padding:16px 16px 40px}
.pie{text-align:center;color:#555;font-size:.75rem;padding:14px}
h1{color:var(--dorado);font-size:1.25rem;margin:8px 0 16px}
h2{color:var(--dorado);font-size:1.05rem;margin:20px 0 10px}
p{margin:8px 0}
a{color:var(--dorado)}

/* Tarjetas y listas */
.tarjeta{background:var(--panel);border:1px solid var(--borde);border-radius:10px;
  padding:14px;margin-bottom:12px}
.tarjeta.enlace{display:block;text-decoration:none;color:var(--texto)}
.tarjeta.enlace:active{background:var(--panel2)}
.fila-lista{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.fila-lista .titulo{font-weight:600}
.fila-lista .detalle{color:var(--texto2);font-size:.85rem;width:100%}
.monto{font-variant-numeric:tabular-nums;font-weight:700}
.monto.positivo{color:var(--verde)}
.monto.negativo{color:var(--rojo)}

/* Accesos del inicio */
.accesos{display:grid;grid-template-columns:1fr;gap:12px;margin-bottom:20px}
@media(min-width:560px){.accesos{grid-template-columns:repeat(3,1fr)}}
.acceso{background:var(--panel);border:1px solid var(--dorado);border-radius:12px;
  padding:18px 14px;text-align:center;text-decoration:none;color:var(--texto)}
.acceso b{display:block;color:var(--dorado);margin-bottom:4px;font-size:1rem}
.acceso small{color:var(--texto2)}

/* Formularios */
label{display:block;margin:12px 0 4px;color:var(--texto2);font-size:.85rem}
input,select,textarea{width:100%;padding:12px;border-radius:8px;border:1px solid var(--borde);
  background:var(--panel2);color:var(--texto);font-size:1rem}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--dorado)}
textarea{min-height:80px;resize:vertical}
.boton{display:inline-block;width:100%;padding:13px;border:none;border-radius:8px;
  background:var(--dorado);color:#121212;font-weight:700;font-size:1rem;cursor:pointer;
  text-align:center;text-decoration:none;margin-top:14px}
.boton:disabled{opacity:.5}
.boton.secundario{background:transparent;color:var(--dorado);border:1px solid var(--dorado)}
.boton.peligro{background:transparent;color:var(--rojo);border:1px solid var(--rojo)}
.boton.chico{width:auto;padding:8px 14px;font-size:.85rem;margin-top:0}
.botonera{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}
.botonera .boton{width:auto;flex:1;min-width:120px}

/* Pastillas de estado */
.pastilla{display:inline-block;padding:2px 10px;border-radius:999px;font-size:.75rem;font-weight:600}
.pastilla.gris{background:#2e2e2e;color:#bbb}
.pastilla.ambar{background:#3a2f00;color:var(--ambar)}
.pastilla.verde{background:#0f2c11;color:var(--verde)}
.pastilla.rojo{background:#331113;color:var(--rojo)}
.pastilla.dorado{background:#2e2408;color:var(--dorado)}

/* Mensajes */
.mensaje{padding:12px;border-radius:8px;margin:12px 0;font-size:.9rem}
.mensaje.error{background:#331113;color:var(--rojo);border:1px solid var(--rojo)}
.mensaje.exito{background:#0f2c11;color:var(--verde);border:1px solid var(--verde)}
.mensaje.aviso{background:#3a2f00;color:var(--ambar);border:1px solid var(--ambar)}

/* Gastos */
.gasto{display:flex;gap:12px;align-items:flex-start}
.gasto img.mini{width:56px;height:56px;object-fit:cover;border-radius:8px;border:1px solid var(--borde)}
.gasto .datos{flex:1;min-width:0}
.alerta-gasto{color:var(--ambar);font-size:.8rem;display:block;margin-top:2px}

/* Zona de captura de foto */
.captura{border:2px dashed var(--dorado);border-radius:12px;padding:22px;text-align:center;
  color:var(--texto2);cursor:pointer;margin:10px 0}
.captura.procesando{opacity:.6;pointer-events:none}
#vistaPrevia{max-width:100%;border-radius:10px;margin-top:10px;display:none}
.origen-ia{font-size:.75rem;color:var(--ambar)}

/* Tablas (finanzas escritorio) */
.tabla{width:100%;border-collapse:collapse;font-size:.9rem}
.tabla th,.tabla td{padding:8px;border-bottom:1px solid var(--borde);text-align:left}
.tabla th{color:var(--dorado);font-weight:600}

/* Pestañas */
.pestanas{display:flex;gap:8px;overflow-x:auto;padding-bottom:6px;margin-bottom:14px}
.pestanas a{white-space:nowrap;padding:8px 14px;border-radius:999px;border:1px solid var(--borde);
  color:var(--texto2);text-decoration:none;font-size:.85rem}
.pestanas a.activa{border-color:var(--dorado);color:var(--dorado);font-weight:600}

/* Resumen de diferencia */
.resumen-dif{display:flex;justify-content:space-between;padding:10px 0;border-top:1px solid var(--borde)}
.resumen-dif:first-child{border-top:none}

/* Cargador */
.cargando{display:inline-block;width:18px;height:18px;border:3px solid var(--borde);
  border-top-color:var(--dorado);border-radius:50%;animation:girar 1s linear infinite;vertical-align:middle}
@keyframes girar{to{transform:rotate(360deg)}}

/* Login */
.caja-login{max-width:380px;margin:8vh auto 0}
.caja-login .logo{text-align:center;color:var(--dorado);font-weight:700;letter-spacing:.12em;
  font-size:1.2rem;margin-bottom:20px}
.caja-login .logo span{color:var(--texto);font-weight:400}
