/* style.css - point d'entrée unique demandé (agrège et étend le design système existant) */
@import url('app.css');

/* Couche thème / tokens additionnels (extensible) */
:root { --gradient-primary: linear-gradient(135deg,var(--color-primary),#1d4ed8); }

/* Cards génériques */
.card-modern{background:var(--color-surface);border:1px solid var(--color-border);border-radius:18px;padding:1rem 1.1rem;box-shadow:var(--shadow-sm);position:relative;display:flex;flex-direction:column;gap:.75rem;}
.card-modern.headered> .card-header{display:flex;align-items:center;gap:.6rem;margin:-1rem -1.1rem .85rem;padding:.85rem 1.1rem;border-bottom:1px solid var(--color-border);background:linear-gradient(90deg,#f8fafc,#f1f5f9);} 
.card-header h3,.card-header h4{font-size:.8rem;font-weight:700;letter-spacing:.4px;margin:0;color:var(--color-text);} 
.card-actions{margin-left:auto;display:flex;align-items:center;gap:.45rem;}

/* Tableau standard générique (utilise data-table si présent) */
.table-container{position:relative;}

/* Pagination utilitaire */
.pager{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;margin-top:.85rem;}
.pager button{min-width:34px;height:34px;border:1px solid var(--color-border);background:var(--color-surface);border-radius:10px;font-size:.65rem;font-weight:600;color:var(--color-text-muted);cursor:pointer;transition:var(--transition-fast);} 
.pager button.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary);} 
.pager button:hover:not(.active){background:var(--color-primary-soft);color:var(--color-primary);} 

/* Form layout spécifique 'form-page' */
.form-page-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.1rem;}
.form-actions{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:flex-end;margin-top:.5rem;}

/* Mixte section spacing */
.section-stack{display:flex;flex-direction:column;gap:1.4rem;}

/* Accent headings */
.accent-title{font-size:.85rem;font-weight:700;letter-spacing:.5px;display:flex;align-items:center;gap:.5rem;color:var(--color-text);} 
.accent-title:before{content:"";width:6px;height:18px;border-radius:4px;background:var(--gradient-primary);} 

/* Utilitaires supplémentaires */
.shadow-hover{transition:var(--transition-fast);} .shadow-hover:hover{box-shadow:var(--shadow-lg);} 
.divider{height:1px;background:var(--color-border);margin:1rem 0;} 

/* Mobile tweaks */
@media (max-width:640px){.form-actions{justify-content:stretch;} .form-actions .btn{flex:1 1 auto;} }

/* Tri colonnes (tables) */
.sortable{cursor:pointer;position:relative;user-select:none;}
.sortable:after{content:"";position:absolute;right:6px;top:50%;width:6px;height:6px;border-right:2px solid #64748b;border-bottom:2px solid #64748b;transform:translateY(-70%) rotate(45deg);opacity:.4;transition:var(--transition-fast);} 
.sorted-asc:after{transform:translateY(-30%) rotate(225deg);opacity:1;border-color:var(--color-primary);} 
.sorted-desc:after{transform:translateY(-70%) rotate(45deg);opacity:1;border-color:var(--color-primary);} 
