
/* ============================================================
   AVR Golf Corporativo - Estilos Principales
   ============================================================ */

:root {
  --avr-green: #1a6b2f;
  --avr-green-dark: #134d22;
  --avr-green-light: #e8f5e9;
  --avr-gold: #c9a84c;
  --avr-gold-light: #fdf6e3;
  --sidebar-w: 0px;
}

body { background: #f4f6f9; font-family: 'Segoe UI', system-ui, sans-serif; }

/* ----- NAVBAR ----- */
.bg-avr { background: linear-gradient(135deg, var(--avr-green-dark) 0%, var(--avr-green) 100%) !important; }
.navbar { min-height: 64px; }
.nav-logo-wrap { width: 40px; height: 40px; background: white; border-radius: 8px; display:flex; align-items:center; justify-content:center; overflow:hidden; }

/* ----- MAIN CONTENT ----- */
.main-content { margin-top: 80px; padding: 1.5rem; min-height: calc(100vh - 80px); }

/* ----- LOGIN ----- */
.login-body { background: linear-gradient(135deg, #0f3d1a 0%, #1a6b2f 50%, #2d8a4e 100%); min-height: 100vh; display:flex; align-items:center; justify-content:center; }
.login-wrapper { width: 100%; max-width: 420px; padding: 1rem; }
.login-card { background: white; border-radius: 20px; padding: 2.5rem; box-shadow: 0 20px 60px rgba(0,0,0,.3); }
.login-logo { text-align: center; margin-bottom: 2rem; }
.logo-placeholder { margin: 0 auto; width: 80px; height: 80px; background: var(--avr-green-light); border-radius: 50%; display:flex; align-items:center; justify-content:center; }

/* ----- CARDS ----- */
.card { border: none; border-radius: 12px; box-shadow: 0 2px 15px rgba(0,0,0,.07); transition: box-shadow .2s; }
.card:hover { box-shadow: 0 4px 25px rgba(0,0,0,.12); }
.card-header { border-radius: 12px 12px 0 0 !important; font-weight: 600; }

/* ----- STATS ----- */
.stat-card { border-radius: 16px; color: white; padding: 1.5rem; }
.stat-card .stat-icon { font-size: 2.5rem; opacity: .8; }
.stat-card .stat-value { font-size: 2rem; font-weight: 700; }
.stat-card .stat-label { opacity: .85; font-size: .9rem; }

/* ----- STATUS BADGES ----- */
.badge-pendiente { background: #fff3cd; color: #856404; }
.badge-parcial { background: #cff4fc; color: #055160; }
.badge-pagado { background: #d1e7dd; color: #0a3622; }
.badge-normal { background: #e2e3e5; color: #41464b; }
.badge-urgente { background: #fff3cd; color: #664d03; }
.badge-critico { background: #f8d7da; color: #842029; }

/* ----- OC FORM ----- */
.oc-form-card { border-left: 4px solid var(--avr-green); }
.partidas-table thead { background: var(--avr-green); color: white; }
.partidas-table .btn-remove-row { padding: .2rem .5rem; }
.folio-display { font-size: 1.8rem; font-weight: 700; color: var(--avr-green); }

/* ----- OC PREVIEW ----- */
.oc-preview { background: white; padding: 2rem; border: 1px solid #dee2e6; font-size: .85rem; }
.oc-preview .oc-header { border-bottom: 3px solid var(--avr-green); padding-bottom: 1rem; margin-bottom: 1rem; }
.oc-preview .oc-logo { max-height: 60px; }
.oc-preview table { font-size: .82rem; }

/* ----- TABLE ----- */
.table-hover tbody tr:hover { background-color: var(--avr-green-light); }

/* ----- SIDEBAR (historial) ----- */
.history-timeline { border-left: 3px solid var(--avr-green); padding-left: 1rem; }
.history-item { position: relative; margin-bottom: 1.2rem; }
.history-item::before { content:''; position:absolute; left:-1.35rem; top:.3rem; width:12px; height:12px; border-radius:50%; background:var(--avr-green); border: 2px solid white; box-shadow: 0 0 0 2px var(--avr-green); }

/* ----- PRIORIDAD COLORS ----- */
tr.prioridad-urgente { border-left: 4px solid #ffc107; }
tr.prioridad-critico { border-left: 4px solid #dc3545; }

/* ----- RESPONSIVE ----- */
@media (max-width: 768px) {
  .main-content { padding: .8rem; }
  .folio-display { font-size: 1.3rem; }
}

/* ----- SELECT2 ----- */
.select2-container--bootstrap-5 .select2-selection { min-height: 38px; }

/* ----- PRINT ----- */
@media print {
  .navbar, .main-content > .d-flex, .btn, .no-print { display: none !important; }
  .main-content { margin: 0; padding: 0; }
  .oc-preview { border: none; }
}
