/* =================================
   TRÉSORERIE — STYLE VOLANT RAMILLOIS
   Palette et mise en page reprises de « page-simple » du site du club.
   Modifiez les couleurs dans les variables ci-dessous.
   ================================= */

/* Mode sombre (par défaut) */
:root{
  --outer:#121212; --bg:#1e1e1e; --fg:#ffffff; --card:#2a2a2a; --mut:#3f3f3f;
  --lnk:#4c8dff; --lnk-h:#6ca3ff;
  --in:#4cd07d; --out:#ff7b72; --ok:#4cd07d; --warn:#f0a030; --bad:#ff7b72;
  color-scheme:dark;
}
/* Mode clair */
:root[data-theme=light]{
  --outer:#b4b4b5; --bg:#cbcbcc; --fg:#1a1a1a; --card:#dcdcdd; --mut:#a9a9aa;
  --lnk:#1877F2; --lnk-h:#0d5dbf;
  --in:#08702d; --out:#a8201a; --ok:#08702d; --warn:#9a5a00; --bad:#a8201a;
  color-scheme:light;
}

html{background:var(--outer)}
body{margin:0;padding:1rem;font:16px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;background:var(--outer);color:var(--fg)}

/* Contenu */
.page-simple{max-width:1280px;width:100%;box-sizing:border-box;margin:0 auto;padding:20px;
  text-align:left;line-height:1.6;border-radius:12px;background:var(--bg);color:var(--fg)}

/* Titres et paragraphes */
.page-simple h1{font-size:1.5em;font-weight:700;line-height:1.3;margin:1.5rem 0 1rem}
.page-simple h2{font-size:1.25em;font-weight:600;line-height:1.4;margin:1.5rem 0 1rem}
.page-simple h3{font-size:1.1em;font-weight:600;line-height:1.4;margin:1rem 0 .5rem}
p{margin:0 0 1rem}

/* Liens */
a{color:var(--lnk);text-decoration:underline;font-weight:600;transition:color .2s ease}
a:hover{color:var(--lnk-h)}

/* En-tête : logo + menu */
.brand a{display:flex;align-items:center;gap:.8rem;text-decoration:none;color:var(--fg);font-weight:700;font-size:1.15em}
.brand img{height:52px;width:auto}
.brand small{display:block;font-weight:400;font-size:.7em;opacity:.8}
nav{margin:.6rem 0 1rem;padding-bottom:.6rem;border-bottom:1px solid var(--mut)}
nav a{margin-right:1rem;text-decoration:none;white-space:nowrap;display:inline-block}
nav a:hover{text-decoration:underline}
nav a.right{float:right;margin:0 0 0 1rem}
a[title=Modifier],a.att{text-decoration:none}

/* Tableaux */
table{width:100%;border-collapse:collapse}
td,th{padding:.35rem;border-bottom:1px solid var(--mut);text-align:left}
tfoot td{font-weight:700;border-top:2px solid var(--fg)}
.r{text-align:right}
.in{color:var(--in)}
.out{color:var(--out)}
.nowrap{white-space:nowrap}
.verdict-green{color:var(--ok)}
.verdict-orange{color:var(--warn)}
.verdict-red{color:var(--bad)}
tr.filters td{padding:.2rem;border-bottom:2px solid var(--mut)}
tr.filters input,tr.filters select{width:100%;box-sizing:border-box;margin-bottom:.15rem}

/* Formulaires */
form.add{display:flex;flex-wrap:wrap;gap:.4rem;margin:1rem 0}
form.stack{flex-direction:column;align-items:flex-start}
form.tight{margin:0}
form.inline,form.desc{display:inline}
form.desc input{width:18rem;max-width:100%}
input,select,button,textarea{padding:.4rem;font:inherit;background:var(--card);color:var(--fg);border:1px solid var(--mut);border-radius:6px}
input:focus,select:focus,textarea:focus{outline:2px solid var(--lnk);outline-offset:0}
button{cursor:pointer}
button:hover{border-color:var(--lnk)}
fieldset.box{border:1px solid var(--mut);border-radius:6px}

/* Ligne qui vient d'être modifiée */
@keyframes flash{from{background:rgba(76,141,255,.35)}to{background:transparent}}
tr.flash{animation:flash 2.5s ease-out}

/* Cartes et graphiques */
.cards{display:flex;gap:1rem;margin:1rem 0;flex-wrap:wrap}
.card{flex:1;min-width:150px;padding:1rem;border:1px solid var(--mut);border-radius:8px;background:var(--card)}
.pies{display:flex;gap:1rem;flex-wrap:wrap}
.pies>div{flex:1;min-width:300px}

/* Connexion */
.login{max-width:340px;margin:4rem auto}
.login label{display:block;margin:.6rem 0}
.login input{width:100%;box-sizing:border-box;margin-top:.2rem}
.login-logo{height:64px;width:auto}
.err{color:var(--bad)}

/* Éléments réservés au mobile / menu */
.only-m,.nav-toggle{display:none}

/* Mobile */
@media (max-width:760px){
  body{padding:.4rem}
  .page-simple{padding:12px;border-radius:10px}
  .page-simple h1{font-size:1.3em}
  .brand img{height:40px}
  input,select,button,textarea{padding:.6rem}

  /* menu repliable */
  .nav-toggle{display:block;width:100%;margin:.4rem 0}
  nav{display:none;margin:0 0 1rem}
  nav.open{display:flex;flex-direction:column}
  nav a,nav a.right{float:none;margin:0;padding:.65rem .3rem;border-bottom:1px solid var(--mut)}
  .only-m{display:inline-block}

  /* formulaires et cartes */
  form.add input,form.add select,form.add button{flex:1 1 140px;min-width:0}
  form.stack input,form.stack select{width:100%;box-sizing:border-box}
  .cards{gap:.6rem}
  .card{flex:1 1 40%;min-width:0;box-sizing:border-box;padding:.7rem}
  .pies>div{min-width:100%}
  .login{margin:1.5rem auto}

  /* tableaux : défilement horizontal par défaut */
  table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}

  /* listes (mouvements, événements...) : une carte par ligne */
  table.stack-m{overflow:visible}
  table.stack-m tbody,table.stack-m thead,table.stack-m tfoot{display:block}
  table.stack-m .hdr,table.stack-m thead{display:none}
  table.stack-m tr{display:block;margin:.6rem 0;padding:.4rem .7rem;border:1px solid var(--mut);border-radius:8px;background:var(--card)}
  table.stack-m td{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.25rem 0;border:0;text-align:right}
  table.stack-m td::before{content:attr(data-label);font-weight:600;text-align:left;opacity:.75;flex:none}
  table.stack-m td:empty{display:none}
  table.stack-m td form{flex:1;margin:0}
  table.stack-m td form input,table.stack-m td form select{width:100%;max-width:none;box-sizing:border-box}
  table.stack-m td form.inline{flex:none}
  table.stack-m td.nowrap{justify-content:flex-end;gap:1rem}
  table.stack-m tr.filters{display:none}
  table.stack-m tr.filters.show{display:block}
  table.stack-m tr.filters td{display:block;text-align:left}
  table.stack-m tr.filters td::before{display:block;margin-bottom:.15rem}
  table.stack-m tfoot tr{display:flex;justify-content:space-between;margin:0;padding:.35rem 0;border:0;border-top:1px solid var(--mut);border-radius:0;background:none}
  table.stack-m tfoot td{display:block;padding:0;font-weight:700}
  table.stack-m tfoot td::before{content:none}
}

/* Impression : toujours en clair, sans menu ni formulaires */
@media print{
  :root,:root[data-theme=dark],:root[data-theme=light]{--outer:#fff;--bg:#fff;--fg:#1a1a1a;--card:#fff;--mut:#ccc;--in:#08702d;--out:#a8201a;--lnk:#1a4fa0}
  body{padding:0}
  .page-simple{padding:0;border-radius:0}
  nav,form,a[title=Modifier],.noprint,.nav-toggle,.only-m{display:none}
}
