/* ============================================================
   Rentygo — thème admin (Atelier technique) aligné au back-office
   Surcharge des variables CSS de l'admin Django 5 + polish.
   ============================================================ */
:root,
html[data-theme="light"],
html[data-theme="dark"]{
  --rg-teal:#383A4E; --rg-teal-d:#2B2D3C; --rg-teal-l:#EAF1F0;
  --rg-coral:#F38181; --rg-coral-d:#E06B6B; --rg-coral-l:#FDECEC;
  --rg-mint:#95E1D3;

  --primary:#383A4E;
  --secondary:#2B2D3C;
  --accent:#F38181;
  --primary-fg:#ffffff;

  --body-fg:#383A4E;
  --body-bg:#F4FBFB;
  --body-quiet-color:#6E7180;
  --body-loud-color:#23252f;

  --header-color:#ffffff;
  --header-branding-color:#ffffff;
  --header-bg:#383A4E;
  --header-link-color:#ffffff;

  --breadcrumbs-fg:#cdd6e6;
  --breadcrumbs-link-fg:#ffffff;
  --breadcrumbs-bg:#2B2D3C;

  --link-fg:#2B2D3C;
  --link-hover-color:#E06B6B;
  --link-selected-fg:#383A4E;

  --hairline-color:#e7eaec;
  --border-color:#e1e5e7;

  --button-fg:#ffffff;
  --button-bg:#383A4E;
  --button-hover-bg:#2B2D3C;
  --default-button-bg:#383A4E;
  --default-button-hover-bg:#2B2D3C;
  --close-button-bg:#8A8D9B;
  --close-button-hover-bg:#6E7180;
  --delete-button-bg:#DC2626;
  --delete-button-hover-bg:#b91c1c;

  --object-tools-fg:#ffffff;
  --object-tools-bg:#383A4E;
  --object-tools-hover-bg:#2B2D3C;

  --message-success-bg:#e7f6ec;
  --message-warning-bg:#fdf0dc;
  --message-error-bg:#fbe9e9;

  --darkened-bg:#f4f7f6;
  --selected-bg:#EAF1F0;
  --selected-row:#FDECEC;

  --font-family-primary:"Jost",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}
/* Force le rendu clair Rentygo même si le thème système est sombre */
@media (prefers-color-scheme: dark){
  html[data-theme="auto"]{
    --body-fg:#383A4E; --body-bg:#F4FBFB; --body-loud-color:#23252f; --body-quiet-color:#6E7180;
    --darkened-bg:#f4f7f6; --selected-bg:#EAF1F0; --hairline-color:#e7eaec; --border-color:#e1e5e7;
    --link-fg:#2B2D3C; --link-hover-color:#E06B6B;
  }
}

body{font-family:var(--font-family-primary);font-size:14px}

/* En-tête */
#header{padding:12px 24px;box-shadow:0 1px 0 rgba(0,0,0,.06)}
#branding h1, #site-name{font-weight:700}
#site-name a, #branding h1 a{
  font-family:'Playfair Display',Georgia,serif;font-weight:700;font-size:22px;letter-spacing:.3px;color:#fff}
#user-tools{font-size:12.5px}
#user-tools a{border-bottom-color:rgba(255,255,255,.35)}
#user-tools a:hover{color:#fff;border-bottom-color:#fff}

/* Fil d'ariane */
div.breadcrumbs{padding:9px 24px;font-size:12.5px}

/* Modules en cartes arrondies */
.module{border:1px solid var(--hairline-color);border-radius:10px;overflow:hidden;background:#fff;
  box-shadow:0 1px 2px rgba(20,30,40,.04)}
.module caption,
.module h2, .module table caption{
  background:#f5f8f7;color:#33433e;font-weight:600;font-size:12.5px;
  text-transform:none;letter-spacing:0;padding:11px 14px;border-bottom:1px solid var(--hairline-color)}
.module h2 a.section:link, .module h2 a.section:visited{color:#33433e}

/* Tableaux (change list) */
#content-main .module table{border-collapse:collapse}
thead th{background:#f7faf9;color:#6E7180;font-weight:500;border-bottom:1px solid var(--hairline-color)}
tbody tr td, tbody tr th{border-bottom:1px solid #eef1f0}
tbody tr:hover{background:#f7faf9}
tr.row1{background:#fff} tr.row2{background:#fcfdfd}

/* Boutons & outils */
.button, input[type=submit], input[type=button], .submit-row input, a.button{
  border-radius:9px;padding:8px 14px;font-weight:500;font-size:13px}
.object-tools a{border-radius:9px;font-weight:500;text-transform:none;letter-spacing:0;
  padding:7px 13px;font-size:12.5px}
.object-tools a:before{opacity:.9}
a.addlink, a.changelink, a.viewlink{font-weight:500}
.submit-row{border-radius:10px;background:#f5f8f7;border:1px solid var(--hairline-color)}
.submit-row a.deletelink{border-radius:9px}

/* Champs de formulaire */
input[type=text], input[type=password], input[type=email], input[type=url],
input[type=number], input[type=tel], textarea, select, .vTextField{
  border:1px solid #d9dee0;border-radius:8px;padding:7px 9px;font-size:13px}
input:focus, textarea:focus, select:focus{outline:none;border-color:var(--rg-teal);
  box-shadow:0 0 0 3px rgba(56,58,78,.12)}
fieldset.module{padding-bottom:6px}
.form-row{border-bottom:1px solid #f0f3f2}
.aligned label{color:#33433e}
.help, .helptext{color:#6E7180}

/* Liens d'action / colonne */
.viewlink, .addlink, .changelink, .deletelink{border-radius:6px}

/* Pagination & filtres */
.paginator a, .paginator .this-page{border-radius:7px;padding:3px 9px}
#changelist-filter{border-radius:10px;background:#fff;border:1px solid var(--hairline-color)}
#changelist-filter h2{background:#383A4E;color:#fff;border-radius:10px 10px 0 0;text-transform:none;
  font-weight:600;letter-spacing:0}
#changelist-filter li.selected a{color:var(--rg-coral-d)}

/* Sélecteur de date/heure, calendrier */
.calendarbox, .clockbox{border-radius:10px;overflow:hidden}

/* Messages */
ul.messagelist li{border-radius:9px;font-size:13px}

/* Tableau de bord d'accueil (app list) */
.dashboard #content{max-width:1100px}
.dashboard .module table th{width:auto}
.app-cautions .model-reservation th a{font-weight:600}

/* Boutons "Ajouter/Historique" en haut des fiches */
.object-tools{margin-top:-1.4em}

/* Petits raccourcis visuels Rentygo */
a:link, a:visited{color:var(--link-fg)}
a:hover{color:var(--link-hover-color)}
.selector-chosen h2, .selector-available h2{background:#f5f8f7;color:#33433e}

/* ===== Bouton Annuler (submit row) ===== */
.submit-row a.rg-cancel{display:inline-block;background:#fff;border:1px solid #d7dce3;color:#56607a;padding:8px 15px;border-radius:9px;text-decoration:none;font-weight:500;margin-left:6px}
.submit-row a.rg-cancel:hover{background:#f4f6f8;color:#2c3142}

/* ===== Responsive Atelier technique (mobile / tablette) ===== */
@media (max-width: 880px){
  #content, #content-main, .colM{margin:0 !important}
  .aligned label{display:block;float:none;width:auto !important;text-align:left;padding:0 0 4px}
  form .aligned .form-row > div,
  form .aligned .form-row > p,
  form .aligned .form-row > ul{margin-left:0 !important;padding-left:0 !important}
  .form-row input[type=text],.form-row input[type=email],.form-row input[type=number],
  .form-row input[type=url],.form-row input[type=tel],.form-row textarea,.form-row select,
  .vTextField{max-width:100% !important;width:100% !important;box-sizing:border-box}
  fieldset.module{padding:12px !important}
  .submit-row{display:flex;flex-wrap:wrap;gap:8px}
  .submit-row input,.submit-row a{flex:1 1 auto;text-align:center;margin:0 !important}
  /* tables admin scrollables */
  #changelist .results{overflow-x:auto}
}
/* sections repliables plus lisibles */
fieldset.collapse h2{cursor:pointer}
