/* Sorti de sav.php le 19/09/2026.
 *
 * Les feuilles etaient ecrites dans les pages, ce qui obligeait la
 * politique de securite a autoriser 'unsafe-inline' sur style-src : toute
 * injection de HTML devenait alors une injection de style. En fichier, le
 * navigateur peut les mettre en cache, et la politique peut se fermer.
 *
 * Deplace sans une modification : ce qui suit est le bloc d'origine. */

/* ── full-viewport lock ── */
html,body{height:100%;overflow:hidden;}
.app{height:100vh;overflow:hidden;}
.main{height:100vh;min-height:0;overflow:hidden;display:flex;flex-direction:column;}
.sav-shell{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;}

/* ── page header ── */
.sav-page-header{display:flex;align-items:center;padding:var(--space-5) var(--space-8) 0;flex-shrink:0;}
.sav-page-kicker{font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--psg-gold-dark,#b8860b);margin-bottom:2px;}
.sav-page-title{font-size:1.5rem;font-weight:900;color:var(--psg-navy);margin:0;line-height:1.1;}
.sav-page-sub{font-size:.8rem;color:var(--grey-400);font-weight:600;margin-top:3px;}

/* ── type strip — floating card like cmd-stats ── */
.sav-cats{display:flex;gap:2px;padding:0 var(--space-5);border-bottom:2px solid var(--grey-100);background:#fff;flex-shrink:0;margin:var(--space-5) var(--space-8) 0;border-radius:10px;border:1px solid #d9d9d9;}
.sav-cat{display:inline-flex;align-items:center;gap:6px;padding:12px 16px;font-size:.8rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--grey-400);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:color .15s,border-color .15s;white-space:nowrap;}
.sav-cat:hover{color:var(--grey-700);}
.sav-cat.active{color:var(--psg-navy);border-bottom-color:var(--psg-navy);}
.sav-cat svg{width:14px;height:14px;flex-shrink:0;}
.sav-cat-count{font-size:.65rem;font-weight:800;background:var(--grey-100);border-radius:999px;padding:1px 7px;color:var(--grey-500);}
.sav-cat.active .sav-cat-count{background:var(--psg-navy);color:#fff;}
/* SAV ouverts = rouge */
.sav-cat.sav-danger{color:#dc2626;}
.sav-cat.sav-danger .sav-cat-count{background:#fee2e2;color:#dc2626;}
.sav-cat.sav-danger.active{border-bottom-color:#dc2626;}
.sav-cat.sav-danger.active .sav-cat-count{background:#dc2626;color:#fff;}

/* ── content ── */
.sav-content{flex:1;min-height:0;overflow-y:auto;padding:var(--space-5) var(--space-8);background:var(--grey-100);}

/* ── toolbar ── */
.sav-toolbar{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-5) var(--space-5);border-bottom:1px solid var(--grey-100);}
.sav-search{flex:1;max-width:420px;}

/* ── table ── */
.sav-table{width:100%;border-collapse:collapse;font-size:.875rem;}
.sav-table th{padding:10px 14px;font-weight:800;font-size:.68rem;text-transform:uppercase;letter-spacing:.05em;color:var(--grey-500);border-bottom:2px solid var(--grey-100);white-space:nowrap;text-align:left;}
.sav-table td{padding:11px 14px;border-bottom:1px solid var(--grey-50);vertical-align:middle;color:var(--grey-700);font-weight:600;}
.sav-table tbody tr{cursor:pointer;transition:background .1s;}
.sav-table tbody tr:hover{background:var(--grey-50);}
.sav-table tbody tr:last-child td{border-bottom:0;}
.type-badge{display:inline-flex;align-items:center;border-radius:999px;padding:3px 9px;font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;}
.type-sav{background:#fee2e2;color:#991b1b;}
.type-info{background:#dbeafe;color:#1e40af;}
.type-generic{background:var(--grey-100);color:var(--grey-600);}
.type-reply{background:#e0e7ff;color:#3730a3;}
.sav-msg{max-width:320px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--grey-500);font-size:.82rem;font-weight:500;}
.sav-empty{padding:60px;text-align:center;color:var(--grey-400);font-weight:700;}
.order-link{color:var(--psg-navy);font-weight:800;text-decoration:none;}
.order-link:hover{color:var(--psg-red);}

/* ── pagination ── */
.sav-pagination{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);border-top:1px solid var(--grey-100);}
.sav-pagination-right{display:flex;align-items:center;gap:var(--space-2);margin-left:auto;}
