/* ==========================================================================
   cards.css - Estilos para tarjetas (v4 - DNI/ID sin fondo, sin logo footer)
   ========================================================================== */

/* --- Dashboard Principal Cards (home.php) --- */
/* ... (Sin cambios) ... */
.home-dashboard-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 2.5rem; } .dashboard-card.modern { background-color: var(--secondary-color); border-radius: var(--card-border-radius); border: 1px solid transparent; box-shadow: 0 4px 8px var(--shadow-color); padding: 1.8rem 1.5rem; text-align: center; display: flex; flex-direction: column; align-items: center; transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease; color: var(--text-color); } .dashboard-card.modern:hover { transform: translateY(-5px); box-shadow: 0 7px 14px var(--hover-shadow-color); border-color: var(--primary-light); color: var(--primary-dark); } .dashboard-card.modern .card-icon-container { width: 65px; height: 65px; border-radius: 50%; background-color: var(--primary-light); display: flex; align-items: center; justify-content: center; margin-bottom: 1.2rem; color: var(--primary-dark); flex-shrink: 0; transition: background-color 0.3s ease; } .dashboard-card.modern .card-icon { font-size: 1.8rem; line-height: 1; transition: color 0.3s ease; } .dashboard-card.modern .card-icon i { font-size: inherit; line-height: inherit; } .dashboard-card.modern .card-title { font-size: 1.25rem; margin-bottom: 0.5rem; font-weight: 600; color: inherit; } .dashboard-card.modern .card-description { font-size: 0.88rem; color: var(--text-muted); line-height: 1.5; } .dashboard-card.card-clubes .card-icon-container { background-color: var(--icon-bg-clubes); color: var(--icon-color-clubes); } .dashboard-card.card-deportistas .card-icon-container { background-color: var(--icon-bg-deportistas); color: var(--icon-color-deportistas); } .dashboard-card.card-actividades .card-icon-container { background-color: var(--icon-bg-actividades); color: var(--icon-color-actividades); } .dashboard-card.card-licencia .card-icon-container { background-color: var(--icon-bg-licencia); color: var(--icon-color-licencia); }

/* --- Club Dashboard Summary Cards --- */
/* ... (Sin cambios) ... */
.summary-card { background-color: var(--secondary-color); border-radius: var(--card-border-radius); padding: 1.5rem; border: 1px solid var(--border-color); box-shadow: 0 2px 5px var(--shadow-color); display: flex; align-items: center; gap: 1rem; } .summary-card .card-icon-container { width: 55px; height: 55px; border-radius: 50%; background-color: var(--primary-light); display: flex; align-items: center; justify-content: center; color: var(--primary-dark); flex-shrink: 0; margin-bottom: 0; } .summary-card .card-icon { font-size: 1.6rem; } .summary-card .card-content { display: flex; flex-direction: column; text-align: left;} .summary-card .card-value { font-size: 1.8rem; font-weight: 600; color: var(--primary-dark); line-height: 1.2; } .summary-card .card-label { font-size: 0.9rem; color: var(--text-muted); } .category-summary .card-label { font-size: 0.95rem; color: var(--text-color); } ul.category-list { list-style: none; padding: 0; margin: 5px 0 0 0; font-size: 0.85rem; } ul.category-list li { margin-bottom: 3px; color: var(--text-muted); } ul.category-list li strong { color: var(--text-color); }

/* --- Club Dashboard Action Cards --- */
/* ... (Sin cambios) ... */
.action-card { display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 1.5rem 1rem; background-color: var(--secondary-color); border: 1px solid var(--border-color); border-radius: var(--card-border-radius); box-shadow: 0 2px 4px var(--shadow-color); color: var(--text-color); transition: all 0.2s ease-in-out; text-align: center; } .action-card:hover { transform: translateY(-3px); box-shadow: 0 5px 10px var(--hover-shadow-color); color: var(--primary-dark); border-color: var(--primary-light); } .action-card.disabled { opacity: 0.6; pointer-events: none; background-color: #f8f9fa; } .action-icon { font-size: 2rem; margin-bottom: 0.8rem; color: var(--primary-color); } .action-card span { font-weight: 500; font-size: 0.95rem; }

/* --- Home & Athlete Dashboard Widgets --- */
/* ... (Sin cambios) ... */
.dashboard-widget { background-color: var(--secondary-color); border-radius: var(--widget-border-radius); padding: 1.3rem 1.6rem; border: 1px solid var(--border-color); box-shadow: 0 3px 7px var(--shadow-color); display: flex; flex-direction: column; height: 100%; } .dashboard-widget h4 { font-size: 1.15rem; border-bottom: 1px solid var(--border-color); padding-bottom: 0.6rem; margin-bottom: 1rem; font-weight: 600; color: var(--primary-dark); } .dashboard-widget h4 i { color: var(--primary-color); font-size: 1em; } .widget-list { list-style: none; padding: 0; margin: 0; flex-grow: 1; max-height: 350px; overflow-y: auto; scrollbar-width: thin; scrollbar-color: var(--border-color) var(--secondary-color); } .widget-list::-webkit-scrollbar { width: 6px; } .widget-list::-webkit-scrollbar-track { background: var(--secondary-color); border-radius: 3px;} .widget-list::-webkit-scrollbar-thumb { background-color: var(--border-color); border-radius: 3px; } .widget-list::-webkit-scrollbar-thumb:hover { background-color: #ccc; } .widget-list-item { display: flex; align-items: flex-start; padding: 0.6rem 0.1rem; border-bottom: 1px solid var(--border-color); transition: background-color 0.2s ease; } .widget-list-item:last-child { border-bottom: none; } .list-item-icon { flex-shrink: 0; width: 28px; margin-right: 0.9rem; color: var(--primary-color); margin-top: 6px; text-align: center; font-size: 1rem; } .notice-icon { color: #E67E22; } .event-icon { color: #3498DB; } .widget-list-item .list-item-content { flex-grow: 1; padding: 0.4rem 0.7rem; border-radius: 4px; transition: background-color 0.2s ease; background-color: transparent; } .notice-list .list-item-content { background-color: var(--notice-item-bg); } .event-list .list-item-content { background-color: var(--event-item-bg); } .list-item-title { display: block; font-weight: 600; color: var(--text-color); font-size: 0.95rem; margin-bottom: 0.2rem; line-height: 1.4; } .list-item-title:hover { color: var(--primary-dark); text-decoration: underline; } .list-item-date { display: block; font-size: 0.8rem; color: var(--text-muted); } .event-location { font-size: inherit; color: var(--text-muted); white-space: normal; margin-left: 0.3em; } .event-location i { margin-right: 3px; font-size: 0.9em; } .widget-footer { text-align: right; margin-top: 1rem; padding-top: 0.8rem; border-top: 1px solid var(--border-color); } .widget-footer a { font-size: 0.85rem; font-weight: 600; } .widget-footer a i { font-size: 0.8em; margin-left: 4px; transition: transform 0.2s ease; } .widget-footer a:hover i { transform: translateX(3px); } .widget-error-msg, .widget-empty-msg { padding: 1rem; text-align: center; font-size: 0.9rem; color: var(--text-muted); }
.license-widget .license-details p { margin-bottom: 0.6rem; font-size: 0.95rem; } .license-widget .license-details p strong { font-weight: 600; color: var(--text-color); margin-right: 5px; } .license-widget .license-details .status-badge { margin-left: 5px; } .widget-actions { margin-top: 1.5rem; padding-top: 1rem; border-top: 1px solid var(--border-color); display: flex; gap: 0.8rem; } .quick-actions-widget .actions-grid { margin-top: 1rem; } .quick-actions-widget .action-card { padding: 1.2rem 1rem;}


/* ==========================================================================
   Tarjeta Licencia Digital (licencia_digital_detalle.php)
   ========================================================================== */
.license-card-page-container .button-primary, .license-card-page-container .button-secondary, .license-card-page-container .button-outline { margin: 0 5px; }
.license-card-wrapper { max-width: 570px; margin: 2rem auto; padding: 1rem; background-color: var(--background-color); }
.judo-card { border-radius: 14px; box-shadow: 0 4px 12px rgba(0, 62, 41, 0.12); width: 100%; padding: 0; position: relative; overflow: hidden; border: 2px solid var(--primary-dark); background: var(--card-beige-bg, #f3ecd4); display: flex; flex-direction: column; font-family: Arial, Helvetica, sans-serif; }
.card-header { background: var(--primary-color); color: var(--text-light); padding: 10px 20px 8px 15px; border-bottom: 2px solid var(--primary-dark); display: flex; align-items: center; position: relative; z-index: 10; }
.header-logo img { height: 44px; width: 44px; border-radius: 6px; border: 1px solid var(--primary-dark); background: #fff; margin-right: 10px; }
.header-info { flex: 1; padding-left: 10px; } .fed-title { font-weight: bold; color: var(--text-light); font-size: 1em; margin-bottom: 2px; letter-spacing: 0.5px; text-shadow: 0 1px 1px rgba(0, 0, 0, 0.2); } .lic-label { color: var(--text-light); font-size: 0.9em; font-weight: 600; line-height: 1.2; letter-spacing: .2px; } .lic-label span { text-transform: uppercase; } .header-chip img { height: 28px; width: 38px; margin-left: 10px; }
.card-main { background: var(--card-beige-bg, #f3ecd4); padding: 15px 20px 10px 20px; position: relative; z-index: 10; flex: 1; } .main-row { margin-bottom: 8px; } .main-row-space { display: flex; flex-direction: row; justify-content: space-between; align-items: flex-end; gap: 15px; } .dni-group, .num-group { display: flex; flex-direction: column; }

/* --- ESTILOS CORREGIDOS: DNI y ID FANJYDA Label y Value --- */
.dni-label, .num-label {
    font-size: .8em;
    color: var(--text-muted); /* Color más suave para etiqueta */
    font-weight: 600;
    margin-bottom: 1px; /* Menos espacio bajo etiqueta */
}
.dni-value, .num-value {
    font-weight: bold;
    color: var(--text-color); /* Color de texto principal */
    letter-spacing: 0.5px;
    font-size: 1.1em;
    display: block;
    margin-top: 0;
    /* Eliminadas propiedades de fondo, borde, padding, radius */
    background: none;
    border: none;
    padding: 0;
    border-radius: 0;
}
.num-value { /* ID FANJYDA un poco más destacado */
    font-size: 1.2em;
    color: var(--primary-dark); /* Verde oscuro */
}
/* --- FIN CORRECCIÓN --- */

.name-row { margin-top: 8px; } .main-name { display: block; font-size: 1.3em; font-weight: bold; color: #222; text-transform: uppercase; letter-spacing: .5px; margin-bottom: 2px; } .main-surname { display: block; font-size: 1.1em; font-weight: 500; color: #222; text-transform: uppercase; letter-spacing: .2px; }
.main-details { margin-top: 10px; display: flex; justify-content: space-between; align-items: flex-end; gap: 20px; font-size: 0.9em; padding-top: 8px; border-top: 1px dashed #bba; } .main-details > div { } .detail-label { color: #777; display: block; font-size: 0.8em; margin-bottom: -2px; } .detail-value { color: #222; font-weight: 600; display: block; } .club-row { margin-top: 5px; } .club-row .detail-value { color: var(--primary-dark); font-weight: bold; font-size: 0.95em; text-transform: uppercase; }
.card-footer { width: 100%; background: var(--primary-color); color: var(--white); display: flex; align-items: flex-end; justify-content: space-between; position: relative; padding: 8px 15px 8px 20px; min-height: 55px; z-index: 10; }
.footer-barcode { flex-grow: 1; margin-right: 15px; display: flex; align-items: flex-end; } .footer-barcode svg { display: block; max-width: 100%; height: 38px; }
.footer-qr { background: #fff; border-radius: 6px; box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2); padding: 4px; line-height: 0; flex-shrink: 0; } #qr-container { width: 60px; height: 60px; display: flex; align-items: center; justify-content: center; } #qr-container img { max-width: 100%; max-height: 100%; }
/* Eliminado el estilo para .footer-escudo ya que se quitó del HTML */
.license-actions { text-align: center; margin-top: 2rem; padding-bottom: 1rem; }

/* --- Evento Próximo Destacado --- */
ul.widget-list.event-list li.widget-list-item.event-proximo-destacado {
    position: relative;
    background: linear-gradient(135deg, #fff3e0 0%, #ffe0b2 100%) !important;
    border-left: 4px solid #ff9800 !important;
    padding: 0.8rem 0.5rem !important;
}

ul.widget-list.event-list li.widget-list-item.event-proximo-destacado .list-item-content {
    background-color: transparent !important;
    background: transparent !important;
    padding: 0.4rem 0.7rem;
    border-radius: 4px;
}

ul.widget-list.event-list li.widget-list-item.event-proximo-destacado .list-item-icon.event-icon {
    color: #f57c00 !important;
    font-size: 1.1rem !important;
}

ul.widget-list.event-list li.widget-list-item.event-proximo-destacado .list-item-title.event-name {
    font-weight: 700 !important;
    color: #e65100 !important;
}

/* --- Responsive Cards --- */
/* ... (Sin cambios en responsive) ... */
@media (max-width: 992px) { .home-dashboard-grid { gap: 1.8rem; } .summary-cards-container { grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 1rem; } .summary-card { padding: 1rem; } .summary-card .card-icon-container { width: 45px; height: 45px; } .summary-card .card-icon { font-size: 1.3rem;} .summary-card .card-value { font-size: 1.6rem;} .actions-grid { grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); } } @media (max-width: 768px) { .home-dashboard-grid { gap: 1.2rem; } .dashboard-widget { padding: 1.2rem 1rem; } .notice-list, .event-list { max-height: 280px; font-size: 0.9rem; } .widget-list-item { padding: 0.7rem 0.1rem; } .list-item-icon { margin-right: 0.5rem; width: 20px; font-size: 0.9rem; } .list-item-title { font-size: 0.9rem; line-height: 1.3; } .list-item-date { font-size: 0.75rem; margin-top: 2px; } .event-location { font-size: 0.75rem; } .widget-footer { font-size: 0.8rem; } .summary-cards-container { grid-template-columns: 1fr; gap: 1rem; } .summary-card { flex-direction: row; align-items: center; padding: 0.8rem 1rem;} .summary-card .card-icon-container { width: 40px; height: 40px; } .summary-card .card-icon { font-size: 1.1rem;} .summary-card .card-value { font-size: 1.3rem;} .summary-card .card-label { font-size: 0.8rem;} .actions-grid { grid-template-columns: repeat(2, 1fr); gap: 0.8rem;} .action-card { padding: 1rem 0.5rem; } .action-icon { font-size: 1.6rem; margin-bottom: 0.5rem; } .action-card span { font-size: 0.85rem; } .widget-actions { flex-direction: column; gap: 0.5rem; align-items: stretch;} .widget-actions .button-primary, .widget-actions .button-outline { width: 100%; margin-left: 0 !important;} .license-card-wrapper { max-width: 95%; margin: 1.5rem auto; } .card-header { padding: 8px 12px 6px 10px; flex-wrap: wrap; } .header-info { padding-left: 8px; flex-basis: 100%; order: 3; text-align: center; padding-top: 5px;} .header-logo { order: 1; } .header-chip { order: 2; margin-left: auto;} .fed-title { font-size: 0.9em; } .lic-label { font-size: 0.75em; } .card-main { padding: 12px 15px 8px 15px; } .main-row-space { flex-direction: column; align-items: flex-start; gap: 8px;} .name-row { flex-direction: column; gap: 0px; margin-top: 10px;} .main-name { font-size: 1.1em; } .main-surname { font-size: 0.95em; } .main-details { flex-direction: column; gap: 8px; margin-top: 12px; align-items: flex-start;} .detail-value { font-size: 0.9em; } .club-row .detail-value { font-size: 0.9em; } .card-footer { padding: 6px 10px 6px 15px; min-height: 50px;} .footer-barcode svg { height: 30px; } #qr-container { width: 45px; height: 45px; padding: 3px;} /* .footer-escudo ya no existe */ .license-actions .button-primary, .license-actions .button-outline { width: 80%; margin-bottom: 0.5rem;} }