/* ------------------------------------------------------------------
   Sistema Eduardo — capa visual heredada del portal de la empresa.
   Generado por scripts/heredar_css.py. NO editar a mano: se regenera.

   Lo específico de RH se ha descartado y las imágenes de fondo alojadas
   en el Storage del proyecto de la empresa se han sustituido por
   var(--fondo), para que este portal no dependa de aquella infraestructura.

   Para poner una foto de fondo, basta con redefinir --fondo:
       :root { --fondo: url("../img/fondo.jpg"); }
   Mientras no exista, se usa un degradado y no hay peticiones rotas.
   ------------------------------------------------------------------ */

:root {
  --fondo: radial-gradient(120% 120% at 20% 0%, #1b2436 0%, #0d1119 55%, #070a10 100%);
}

:root {--orange:#f47b34;--orange-dark:#d96820;--orange-light:rgba(244,123,52,0.2);}
* {margin:0;padding:0;box-sizing:border-box;}
html,body {margin:0;padding:0;width:100%;height:100%;overflow:hidden;overscroll-behavior:none;}
body {font-family:'Montserrat',sans-serif;height:100%;color:white;background-size:cover;background-position:center;background-attachment:fixed;}
/* THEME TOGGLE */
.theme-toggle {flex-shrink:0;width:36px;height:36px;border-radius:10px;background:transparent;border:1px solid rgba(255,255,255,0.3);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all 0.2s;color:rgba(255,255,255,0.65);}
.theme-toggle:hover {background:rgba(var(--orange-rgb),0.2);color:white;transform:scale(1.08);}
[data-theme="light"] .theme-toggle {background:transparent!important;border-color:rgba(60,40,24,0.2)!important;color:rgba(60,40,24,0.6)!important;}
[data-theme="light"] .theme-toggle:hover {background:rgba(var(--orange-rgb),0.15)!important;border-color:rgba(var(--orange-rgb),0.3)!important;color:rgba(60,40,24,0.6)!important;transform:scale(1.08);}
#incognito-btn {display:none;}
.incog-val {transition:filter 0.25s;display:inline-block;}
html[data-incognito] .incog-val {filter:blur(7px);padding:6px 10px;margin:-6px -10px;}
html[data-incognito] .s-val {overflow:visible!important;}
html[data-incognito] .incog-bar {opacity:0;}
#incognito-btn.active {background:rgba(var(--orange-rgb),0.25)!important;border-color:rgba(var(--orange-rgb),0.6)!important;color:var(--orange)!important;}
.toggle-dark {display:flex;}
.toggle-light {display:none;}
[data-theme="light"] .toggle-dark {display:none;}
[data-theme="light"] .toggle-light {display:flex;}
/* LOGIN */
#login-screen {position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;overflow:hidden;background-size:cover;background-position:center;transition:opacity 0.5s ease;}
#login-screen::before {display:none;}
[data-theme="light"] #login-screen {background:var(--fondo) center/cover no-repeat!important;}
.login-card {position:relative;z-index:1;width:380px;padding:52px 40px;border-radius:20px;background:rgba(255,255,255,0.13);border:1px solid rgba(255,255,255,0.28);backdrop-filter:blur(40px) saturate(180%);-webkit-backdrop-filter:blur(40px) saturate(180%);box-shadow:0 16px 48px rgba(0,0,0,0.5),inset 0 1px 0 rgba(255,255,255,0.2);}
[data-theme="light"] .login-card {background:rgba(255,245,235,0.65);border-color:rgba(255,255,255,0.5);box-shadow:0 8px 40px rgba(0,0,0,0.18),inset 0 1px 0 rgba(255,255,255,0.8);}
@media (prefers-color-scheme:light) {
  .login-card {background:rgba(255,245,235,0.65);border-color:rgba(255,255,255,0.5);box-shadow:0 8px 40px rgba(0,0,0,0.18),inset 0 1px 0 rgba(255,255,255,0.8);}
}
.login-logo {text-align:center;margin-bottom:16px;}
.login-logo svg {width:220px;height:auto;}
.login-divider {width:32px;height:2px;background:var(--orange);margin:16px auto;border-radius:2px;}
.login-subtitle {font-family:'Josefin Sans',sans-serif;font-size:11px;letter-spacing:3px;text-transform:uppercase;text-align:center;color:rgba(255,255,255,0.5);margin-bottom:24px;}
.form-group {margin-bottom:16px;}
.form-group label {display:block;font-size:10px;letter-spacing:2.5px;text-transform:uppercase;color:rgba(255,255,255,0.5);margin-bottom:7px;font-weight:600;font-family:'Josefin Sans',sans-serif;}
.form-group input {width:100%;padding:13px 16px;background:rgba(255,255,255,0.08);border:1px solid rgba(255,255,255,0.2);border-radius:10px;color:white;font-family:'Josefin Sans',sans-serif;font-size:13px;letter-spacing:0.3px;transition:all 0.2s;outline:none;}
.form-group input:focus {border-color:var(--orange);background:rgba(var(--orange-rgb),0.1);}
.form-group input::placeholder {color:rgba(255,255,255,0.3);}
input[type="password"]::-ms-reveal,input[type="password"]::-ms-clear {display:none;}
/* Leaflet popup — reset white box so glassmorphism shows */
.leaflet-popup-content-wrapper {background:transparent!important;border:none!important;box-shadow:none!important;padding:0!important;border-radius:0!important;}
.leaflet-popup-content {margin:0!important;width:auto!important;}
.leaflet-popup-tip-container {display:none!important;}
.leaflet-container a.leaflet-popup-close-button {display:none!important;}
.leaflet-control-zoom {border:none!important;box-shadow:none!important;}
.leaflet-control-zoom a {width:32px!important;height:32px!important;line-height:32px!important;border-radius:8px!important;border:1px solid rgba(255,255,255,0.15)!important;background:rgba(30,25,40,0.75)!important;backdrop-filter:blur(12px)!important;-webkit-backdrop-filter:blur(12px)!important;color:rgba(255,255,255,0.8)!important;font-size:0!important;display:flex!important;align-items:center!important;justify-content:center!important;margin-bottom:4px!important;transition:background 0.15s!important;}
.leaflet-control-zoom a:hover {background:rgba(60,50,80,0.9)!important;color:white!important;}
[data-theme="light"] .leaflet-control-zoom a {background:rgba(255,252,248,0.85)!important;border-color:rgba(120,90,65,0.2)!important;color:rgba(40,25,15,0.75)!important;}
[data-theme="light"] .leaflet-control-zoom a:hover {background:rgba(255,248,240,1)!important;}
[data-theme="light"] .login-subtitle {color:#6e6058;}
[data-theme="light"] .form-group label {color:#6e6058;}
[data-theme="light"] .form-group input {background:rgba(255,255,255,0.45);border-color:rgba(var(--orange-rgb),0.2);color:#3d342c;}
[data-theme="light"] .form-group input:focus {border-color:var(--orange);background:rgba(var(--orange-rgb),0.08);}
[data-theme="light"] .form-group input::placeholder {color:rgba(60,40,24,0.35);}
@media (prefers-color-scheme:light) {
  .login-subtitle {color:#6e6058;}
  .form-group label {color:#6e6058;}
  .form-group input {background:rgba(255,255,255,0.45);border-color:rgba(var(--orange-rgb),0.2);color:#3d342c;}
  .form-group input:focus {border-color:var(--orange);background:rgba(var(--orange-rgb),0.08);}
  .form-group input::placeholder {color:rgba(60,40,24,0.35);}
}
.btn-login {width:100%;padding:16px 15px 14px;margin-top:20px;background:linear-gradient(135deg,var(--orange) 0%,var(--orange-claro) 100%);color:white;border:none;border-radius:10px;cursor:pointer;font-family:'Josefin Sans',sans-serif;font-weight:600;font-size:12px;letter-spacing:2px;text-transform:uppercase;transition:all 0.2s;box-shadow:0 4px 20px rgba(var(--orange-rgb),0.35);}
.btn-login:hover {transform:translateY(-1px);box-shadow:0 6px 28px rgba(var(--orange-rgb),0.45);}
[data-theme="light"] .btn-login {background:rgba(var(--orange-rgb),0.28);border:1px solid rgba(var(--orange-rgb),0.7);color:var(--orange-dark);box-shadow:none;}
[data-theme="light"] .btn-login:hover {background:rgba(var(--orange-rgb),0.4);box-shadow:none;}
@media (prefers-color-scheme:light) {
  .btn-login {background:rgba(var(--orange-rgb),0.28);border:1px solid rgba(var(--orange-rgb),0.7);color:var(--orange-dark);box-shadow:none;}
  .btn-login:hover {background:rgba(var(--orange-rgb),0.4);}
}
.login-error {color:#ff7070;font-size:12px;text-align:center;margin-top:12px;min-height:16px;}
.btn-forgot {background:none;border:none;cursor:pointer;font-family:'Josefin Sans',sans-serif;font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:rgba(255,255,255,0.35);padding:8px 0 0;transition:color 0.2s;width:100%;text-align:center;}
.btn-forgot:hover {color:rgba(255,255,255,0.65);}
[data-theme="light"] .btn-forgot {color:#8a7e74;}
[data-theme="light"] .btn-forgot:hover {color:#6e6058;}
[data-theme="light"] #toggle-pass svg,[data-theme="light"] #toggle-pass svg * {stroke:#6e6058 !important;}
@media (prefers-color-scheme:light) {
  .btn-forgot {color:#8a7e74;}
  .btn-forgot:hover {color:#6e6058;}
  #toggle-pass svg,#toggle-pass svg * {stroke:#6e6058 !important;}
}
.login-reset-msg {font-family:'Josefin Sans',sans-serif;font-size:11px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;text-align:center;padding:0 14px;border-radius:10px;border:1px solid transparent;max-height:0;overflow:hidden;opacity:0;transition:max-height 0.35s ease,opacity 0.3s ease,padding 0.3s ease,margin-top 0.3s ease;line-height:1.5;margin-top:0;}
.login-reset-msg.visible {max-height:120px;opacity:1;padding:15px 14px 13px;margin-top:10px;}
.login-reset-msg.clickable:hover {filter:brightness(1.08);}
@keyframes shake {0%,100%{transform:translateX(0)}25%{transform:translateX(-6px)}75%{transform:translateX(6px)}}
@keyframes spin {from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
@keyframes immoBarShimmer {0%{background-position:200% center}100%{background-position:-200% center}}
.login-reset-msg.ok {background:rgba(40,167,69,0.15);border-color:rgba(40,167,69,0.5);color:rgba(255,255,255,0.85);}
.login-reset-msg.err {background:rgba(220,53,69,0.15);border-color:rgba(220,53,69,0.5);color:rgba(255,100,80,0.95);}
[data-theme="light"] .login-reset-msg.ok {background:rgba(40,167,69,0.12);border-color:rgba(40,167,69,0.45);color:#3a7a4a;}
[data-theme="light"] .login-reset-msg.err {background:rgba(220,53,69,0.1);border-color:rgba(220,53,69,0.45);color:#c0392b;}
@media (prefers-color-scheme:light) {
  .login-reset-msg.ok {background:rgba(40,167,69,0.12);border-color:rgba(40,167,69,0.45);color:#3a7a4a;}
  .login-reset-msg.err {background:rgba(220,53,69,0.1);border-color:rgba(220,53,69,0.45);color:#c0392b;}
}
/* APP */
#app {display:none;height:100vh;overflow:hidden;position:relative;z-index:1;}
/* SIDEBAR */
.sidebar {position:fixed;left:0;top:0;bottom:0;width:256px;background:var(--sidebar-bg,rgba(255,255,255,0.08));border-right:1px solid rgba(255,255,255,0.18);backdrop-filter:blur(40px) saturate(180%);-webkit-backdrop-filter:blur(40px) saturate(180%);display:flex;flex-direction:column;z-index:100;transform:translateZ(0);}
[data-theme="light"] .sidebar {background:var(--sidebar-bg-lt,rgba(255,245,235,0.65));border-right-color:rgba(255,255,255,0.5);}
[data-theme="light"] .sidebar-logo {border-bottom-color:rgba(255,255,255,0.3);}
[data-theme="light"] .sidebar-bottom {border-top-color:rgba(255,255,255,0.3);}
.sidebar-logo {padding:18px 16px 14px;border-bottom:1px solid rgba(255,255,255,0.12);}
.sidebar-logo svg {width:90%;height:auto;display:block;margin:0 auto;}
.sidebar-tag {font-family:'Josefin Sans',sans-serif;font-size:9px;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,0.25);margin-top:8px;text-align:center;}
[data-theme="light"] .sidebar-tag {color:rgba(60,40,24,0.85);}
.sidebar-nav {flex:1;padding:18px 0;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none;position:relative;}
.sidebar-nav::-webkit-scrollbar {display:none;}
.sidebar-scrollbar {position:absolute;right:3px;width:5px;pointer-events:none;opacity:0;transition:opacity 0.4s ease 0.1s;z-index:101;border-radius:3px;overflow:hidden;}
.sidebar:hover .sidebar-scrollbar {opacity:1;transition:opacity 0.25s ease;}
.sidebar-scrollbar-thumb {position:absolute;right:0;width:5px;border-radius:3px;background:rgba(255,255,255,0.32);}
[data-theme="light"] .sidebar-scrollbar-thumb {background:rgba(60,40,24,0.25);}
.nav-group {padding:0 12px;margin-bottom:4px;}
.nav-group-label {font-family:'Josefin Sans',sans-serif;font-size:9px;letter-spacing:2.5px;text-transform:uppercase;color:rgba(255,255,255,0.25);padding:10px 10px 6px;font-weight:600;}
[data-theme="light"] .nav-group-label {color:rgba(60,40,24,0.85);}
.nav-item {display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:8px;cursor:pointer;color:rgba(255,255,255,0.5);font-family:'Josefin Sans',sans-serif;font-size:13px;font-weight:400;letter-spacing:0.5px;transition:all 0.2s;user-select:none;border:1px solid transparent;margin-bottom:2px;}
.nav-item:hover {background:rgba(255,255,255,0.06);color:rgba(255,255,255,0.85);}
.nav-item.active {background:rgba(var(--orange-rgb),0.15);border-color:rgba(var(--orange-rgb),0.3);color:var(--orange);}
[data-theme="light"] .nav-item {color:rgba(60,40,24,0.6);}
[data-theme="light"] .nav-item:hover {color:rgba(40,25,15,0.9);}
.nav-item .ni {width:18px;height:18px;flex-shrink:0;display:flex;align-items:center;justify-content:center;}
.sidebar-bottom {padding:16px;border-top:1px solid rgba(255,255,255,0.12);}
.user-card {display:flex;align-items:center;gap:10px;margin-bottom:12px;}
.user-av {width:36px;height:36px;border-radius:10px;flex-shrink:0;background:linear-gradient(135deg,var(--orange),var(--orange-claro));display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;color:white;font-family:'Josefin Sans',sans-serif;}
.user-name {font-family:'Josefin Sans',sans-serif;font-size:13px;color:white;font-weight:600;letter-spacing:0.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
[data-theme="light"] .user-name {color:rgba(40,25,15,0.9);}
.user-role {font-family:'Josefin Sans',sans-serif;font-size:11px;color:rgba(255,255,255,0.3);letter-spacing:1px;}
[data-theme="light"] .user-role {color:rgba(60,40,24,0.8);}
.btn-logout {width:100%;padding:10px 9px 8px;background:rgba(var(--orange-rgb),0.15);border:1px solid rgba(var(--orange-rgb),0.3);border-radius:8px;color:var(--orange);font-size:11px;cursor:pointer;transition:all 0.2s;letter-spacing:1.5px;text-transform:uppercase;font-family:'Josefin Sans',sans-serif;font-weight:600;}
.btn-logout:hover {background:#dc3545;border-color:#dc3545;color:white;}
[data-theme="light"] .btn-logout {background:rgba(220,53,69,0.12);border-color:rgba(220,53,69,0.35);color:#dc3545;}
[data-theme="light"] .btn-logout:hover {background:#dc3545;border-color:#dc3545;color:white;}
.btn-bugreport:hover {background:#8e44ad!important;border-color:#8e44ad!important;color:white!important;}
[data-theme="light"] .btn-bugreport {background:rgba(142,68,173,0.12)!important;border-color:rgba(142,68,173,0.4)!important;color:#8e44ad!important;}
[data-theme="light"] .btn-bugreport:hover {background:#8e44ad!important;border-color:#8e44ad!important;color:white!important;}
.btn-suggestion:hover {background:#28a745!important;border-color:#28a745!important;color:white!important;}
[data-theme="light"] .btn-suggestion {background:rgba(40,167,69,0.12)!important;border-color:rgba(40,167,69,0.35)!important;color:#28a745!important;}
[data-theme="light"] .btn-suggestion:hover {background:#28a745!important;border-color:#28a745!important;color:white!important;}
.ptoggle {width:40px;height:22px;border-radius:11px;background:rgba(255,255,255,0.15);cursor:pointer;position:relative;transition:background 0.25s;flex-shrink:0;}
.ptoggle.on {background:rgba(40,167,69,0.22);box-shadow:0 0 0 1.5px rgba(40,167,69,0.55);}
.ptoggle-k {position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:white;transition:transform 0.25s;box-shadow:0 1px 4px rgba(0,0,0,0.35);}
.ptoggle.on .ptoggle-k {transform:translateX(18px);background:#28a745;}
[data-theme="light"] .ptoggle {background:rgba(60,40,24,0.15);}
[data-theme="light"] .ptoggle.on {background:rgba(40,167,69,0.18);box-shadow:0 0 0 1.5px rgba(40,167,69,0.5);}
/* MAIN */
.main {position:fixed;left:256px;right:0;top:0;bottom:0;padding:36px 40px;overflow-y:auto;z-index:1;scrollbar-width:none;-ms-overflow-style:none;transform:translateZ(0);background:transparent!important;}
.page {display:none;animation:fadeIn 0.2s ease;}
.page.active {display:block;}
.main::-webkit-scrollbar {display:none;}
@keyframes fadeIn {from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
.page-head {margin-bottom:28px;}
.page-title {font-family:'Josefin Sans',sans-serif;font-size:28px;font-weight:700;letter-spacing:1px;color:white;text-transform:uppercase;text-shadow:0 2px 12px rgba(0,0,0,0.5);}
.page-sub {font-family:'Josefin Sans',sans-serif;color:rgba(255,255,255,0.75);font-size:12px;letter-spacing:1px;margin-top:5px;font-weight:400;text-shadow:0 1px 10px rgba(0,0,0,0.6);}
.sec-title {font-family:'Josefin Sans',sans-serif;font-size:14px;font-weight:600;letter-spacing:2px;color:rgba(255,255,255,0.9);margin-bottom:14px;text-transform:uppercase;text-shadow:0 1px 8px rgba(0,0,0,0.4);}
.card {border-radius:14px;padding:24px;margin-bottom:20px;}
.form-card {border-radius:14px;padding:24px;margin-bottom:20px;}
.card-title {font-family:'Josefin Sans',sans-serif;font-size:11px;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,0.4);margin-bottom:16px;font-weight:600;}
/* STATS */
.stats-row {display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px;}
.widget-close-btn {position:absolute;top:10px;right:10px;width:26px;height:26px;border-radius:50%;background:rgba(255,255,255,0.13);backdrop-filter:blur(16px) saturate(180%);-webkit-backdrop-filter:blur(16px) saturate(180%);border:1px solid rgba(255,255,255,0.32);box-shadow:0 2px 12px rgba(0,0,0,0.22),inset 0 1px 0 rgba(255,255,255,0.38);color:rgba(255,255,255,0.82);cursor:pointer;opacity:0;transition:opacity 0.25s ease 0s,transform 0.2s ease;display:flex;align-items:center;justify-content:center;padding:0;z-index:10;flex-shrink:0;}
.widget-close-btn:hover {background:rgba(var(--orange-rgb),0.38)!important;border-color:rgba(var(--orange-rgb),0.55)!important;box-shadow:0 4px 16px rgba(var(--orange-rgb),0.32),inset 0 1px 0 rgba(255,255,255,0.28)!important;color:white!important;transform:scale(1.18) rotate(90deg);transition:all 0.18s ease 0s!important;}
.adash-card:hover .widget-close-btn,.stat:hover .widget-close-btn,.widget-wrap:hover .widget-close-btn,[data-widget]:hover>.widget-close-btn {opacity:1;transition:opacity 0.3s ease 1s,transform 0.2s ease;}
[data-theme="light"] .widget-close-btn {background:rgba(255,255,255,0.58);border-color:rgba(120,90,65,0.22);box-shadow:0 2px 10px rgba(0,0,0,0.08),inset 0 1px 0 rgba(255,255,255,0.9);color:rgba(60,40,24,0.55);}
[data-theme="light"] .widget-close-btn:hover {background:rgba(var(--orange-rgb),0.18)!important;border-color:rgba(var(--orange-rgb),0.4)!important;color:var(--orange)!important;}
@keyframes widget-dismiss {0%{opacity:1;transform:scale(1);max-height:var(--wh);margin-bottom:var(--wm);}40%{opacity:0;transform:scale(0.97);}100%{opacity:0;transform:scale(0.97);max-height:0;margin-bottom:0;padding-top:0;padding-bottom:0;}}
.widget-sucking {animation:widget-dismiss 0.35s ease forwards;pointer-events:none;overflow:hidden;}
.stat {border-radius:14px;padding:20px;position:relative;background:var(--card-bg,rgba(255,255,255,0.07));backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,0.18);box-shadow:0 8px 32px rgba(0,0,0,0.4),inset 0 1px 0 rgba(255,255,255,0.12);}
[data-theme="light"] .stat {background:var(--card-bg-lt,rgba(255,248,242,0.42))!important;border-color:rgba(255,255,255,0.35)!important;box-shadow:0 4px 24px rgba(0,0,0,0.1),inset 0 1px 0 rgba(255,255,255,0.45)!important;}
.stat .s-label,.s-label {font-family:'Josefin Sans',sans-serif;font-size:11px;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,0.55);font-weight:700;}
[data-theme="light"] .stat .s-label,[data-theme="light"] .s-label {color:rgba(30,20,10,0.45) !important;}
.stat .s-val,.s-val {font-family:'Josefin Sans',sans-serif;font-size:34px;font-weight:700;color:white;margin:4px 0 2px;line-height:1;}
[data-theme="light"] .stat .s-val,[data-theme="light"] .s-val {color:#3d342c !important;}
.stat .s-note,.s-note {font-family:'Josefin Sans',sans-serif;font-size:12px;color:rgba(255,255,255,0.35);}
[data-theme="light"] .stat .s-note,[data-theme="light"] .s-note {color:#3d2a1e !important;}
.stat .s-bar {height:2px;background:rgba(255,255,255,0.08);border-radius:2px;margin-top:14px;}
.stat .s-fill {height:100%;border-radius:2px;}
/* TWO COL */
.two-col {display:grid;grid-template-columns:1fr 1fr;gap:16px;}
/* QA BUTTONS */
.qa-btn {display:flex;align-items:center;gap:12px;width:100%;padding:13px 14px;border-radius:10px;border:1.5px solid rgba(255,255,255,0.1);background:rgba(255,255,255,0.06);cursor:pointer;margin-bottom:8px;transition:all 0.2s;font-family:'Montserrat',sans-serif;text-align:left;color:white;}
.qa-btn:hover {border-color:var(--orange);}
[data-theme="light"] .qa-btn {border-color:rgba(var(--orange-rgb),0.2) !important;background:rgba(255,255,255,0.25) !important;}
.qa-icon {font-size:18px;}
.qa-label {font-family:'Josefin Sans',sans-serif;font-size:13px;font-weight:600;letter-spacing:0.5px;color:white;}
[data-theme="light"] .qa-label {color:#3d342c !important;}
.qa-sub {font-size:11px;color:rgba(255,255,255,0.4);margin-top:1px;}
[data-theme="light"] .qa-sub {color:#3d2a1e !important;}
/* WELCOME */
.welcome-strip {border-radius:16px;padding:32px 36px;margin-bottom:24px;position:relative;overflow:visible;background:var(--card-bg,rgba(255,255,255,0.07));backdrop-filter:blur(40px) saturate(180%);-webkit-backdrop-filter:blur(40px) saturate(180%);border:1px solid rgba(255,255,255,0.18);box-shadow:0 8px 32px rgba(0,0,0,0.4),inset 0 1px 0 rgba(255,255,255,0.12);}
.welcome-strip::after {display:none;}
.welcome-strip>* {position:relative;z-index:1;}
.ws-greeting {font-family:'Josefin Sans',sans-serif;font-size:28px;color:white;font-weight:700;letter-spacing:1px;text-transform:uppercase;}
.ws-date {font-family:'Josefin Sans',sans-serif;font-size:13px;margin-top:5px;color:rgba(255,255,255,0.5);}
.ws-accent {color:inherit;}
[data-theme="light"] .welcome-strip {background:var(--card-bg-lt,rgba(255,248,242,0.42))!important;border-color:rgba(255,255,255,0.35)!important;box-shadow:0 4px 24px rgba(0,0,0,0.1),inset 0 1px 0 rgba(255,255,255,0.45)!important;}
#page-dashboard .card,#page-dashboard .stat,#page-dashboard .welcome-strip {background:rgba(255,255,255,0.07);backdrop-filter:blur(40px) saturate(180%)!important;-webkit-backdrop-filter:blur(40px) saturate(180%)!important;border-color:rgba(255,255,255,0.18)!important;box-shadow:0 8px 32px rgba(0,0,0,0.4),inset 0 1px 0 rgba(255,255,255,0.12)!important;}
[data-theme="light"] #page-dashboard .card,[data-theme="light"] #page-dashboard .stat,[data-theme="light"] #page-dashboard .welcome-strip {background:rgba(255,248,242,0.42);border-color:rgba(255,255,255,0.35)!important;box-shadow:0 4px 24px rgba(0,0,0,0.1),inset 0 1px 0 rgba(255,255,255,0.45)!important;}
.adash-card {border-radius:14px;padding:24px;margin-bottom:0;background:var(--card-bg,rgba(255,255,255,0.07));backdrop-filter:blur(24px) saturate(160%);-webkit-backdrop-filter:blur(24px) saturate(160%);border:1px solid rgba(255,255,255,0.18);box-shadow:0 8px 32px rgba(0,0,0,0.4),inset 0 1px 0 rgba(255,255,255,0.12);}
[data-theme="light"] .adash-card {background:var(--card-bg-lt,rgba(255,248,242,0.42))!important;border-color:rgba(255,255,255,0.35)!important;box-shadow:0 4px 24px rgba(0,0,0,0.1),inset 0 1px 0 rgba(255,255,255,0.45)!important;color:rgba(40,25,15,0.85);}
.adash-card .card-title {font-family:'Josefin Sans',sans-serif;font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,0.55);margin-bottom:16px;}
[data-theme="light"] .adash-card .card-title {color:rgba(30,20,10,0.45)!important;}
[data-theme="light"] .ws-greeting {color:#3d342c;}
[data-theme="light"] .ws-date {color:rgba(60,40,24,0.85);}
/* ADMIN ALERT */
.admin-alert-banner {display:none;background:rgba(255,255,255,0.07);backdrop-filter:blur(40px) saturate(180%);-webkit-backdrop-filter:blur(40px) saturate(180%);border:1px solid rgba(255,255,255,0.18);border-radius:12px;padding:16px 20px;margin-bottom:20px;cursor:pointer;transition:all 0.2s;align-items:center;gap:14px;box-shadow:0 8px 32px rgba(0,0,0,0.4),inset 0 1px 0 rgba(255,255,255,0.12);}
.admin-alert-banner.visible {display:flex;}
.admin-alert-banner:hover {border-color:rgba(var(--orange-rgb),0.6);}
.aab-icon {font-size:22px;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,0.55);}
[data-theme="light"] .aab-icon {color:rgba(30,20,10,0.45);}
.aab-text {flex:1;}
.aab-title {font-family:'Josefin Sans',sans-serif;font-size:13px;font-weight:600;color:var(--orange);letter-spacing:0.5px;}
.aab-sub {font-size:12px;color:rgba(255,255,255,0.5);margin-top:3px;}
[data-theme="light"] .aab-sub {color:rgba(60,40,24,0.85);}
[data-theme="light"] .admin-alert-banner {background:rgba(255,248,242,0.42) !important;border-color:rgba(255,255,255,0.35) !important;box-shadow:0 4px 24px rgba(0,0,0,0.1),inset 0 1px 0 rgba(255,255,255,0.45) !important;}
.aab-arrow {font-size:18px;color:var(--orange);opacity:0.6;}
/* FORMS */
.frow {display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px;}
.field {position:relative;}
.field label {display:block;font-family:'Josefin Sans',sans-serif;font-size:10px;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,0.4);margin-bottom:7px;font-weight:600;min-height:14px;line-height:1.2;}
[data-theme="light"] .field label {color:#8a7868 !important;}
.field input,.field select,.field textarea {width:100%;padding:11px 14px;border:1.5px solid rgba(255,255,255,0.12);border-radius:9px;font-family:'Montserrat',sans-serif;font-size:13px;color:white;background:rgba(255,255,255,0.08);transition:all 0.2s;outline:none;}
.field input:focus,.field select:focus,.field textarea:focus {border-color:var(--orange);}
.field input::placeholder,.field textarea::placeholder {color:rgba(255,255,255,0.25);}
.field select option {background:#1a2030;color:white;}
.field textarea {resize:none;min-height:80px;overflow:hidden;}
[data-theme="light"] .field input,[data-theme="light"] .field select,[data-theme="light"] .field textarea {background:rgba(255,255,255,0.28) !important;border-color:rgba(var(--orange-rgb),0.2) !important;color:#3d342c !important;}
[data-theme="light"] .field input::placeholder,[data-theme="light"] .field textarea::placeholder {color:#a89080 !important;}
[data-theme="light"] .ep-bd-disp {color:#3d342c !important;}
.btn-primary {padding:13px 26px 11px;background:var(--orange);color:white;border:none;border-radius:9px;font-family:'Josefin Sans',sans-serif;font-size:11px;letter-spacing:2px;text-transform:uppercase;cursor:pointer;transition:all 0.2s;font-weight:600;box-shadow:0 3px 12px rgba(var(--orange-rgb),0.3);}
.btn-primary:hover {background:var(--orange-dark);transform:translateY(-1px);}
.btn-secondary {padding:11px 20px 9px;background:transparent;color:rgba(255,255,255,0.5);border:1px solid rgba(255,255,255,0.2);border-radius:9px;font-family:'Josefin Sans',sans-serif;font-size:11px;letter-spacing:1px;text-transform:uppercase;cursor:pointer;transition:all 0.2s;}
.btn-secondary:hover {border-color:var(--orange);color:var(--orange);}
/* BADGES */
.badge {font-family:'Josefin Sans',sans-serif;padding:4px 11px;border-radius:20px;font-size:10px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;}
.badge.pending {background:rgba(var(--orange-rgb),0.15);color:var(--orange);}
.badge.approved {background:rgba(39,174,96,0.15);color:#27ae60;}
.badge.rejected {background:rgba(220,53,69,0.12);color:#dc3545;}
/* REQUEST LIST */
.req-list {display:flex;flex-direction:column;gap:10px;}
.req-item {border-radius:12px;padding:18px 20px;display:flex;align-items:center;gap:14px;transition:all 0.2s;margin-bottom:10px;}
.req-item:last-child {margin-bottom:0;}
.req-item:hover {box-shadow:0 4px 20px rgba(0,0,0,0.2);}
[data-theme="light"] .req-item {background:rgba(255,248,242,0.25)!important;border:1.5px dashed rgba(120,90,65,0.55)!important;box-shadow:none!important;}
.req-dates {font-family:'Josefin Sans',sans-serif;font-size:14px;color:white;font-weight:600;min-width:220px;}
[data-theme="light"] .req-dates {color:#3d342c !important;}
.req-days {font-family:'Josefin Sans',sans-serif;font-size:11px;color:rgba(255,255,255,0.4);margin-top:2px;font-weight:500;letter-spacing:0.5px;}
[data-theme="light"] .req-days {color:#3d2a1e !important;}
.req-type {flex:1;}
.req-type-lbl {font-family:'Josefin Sans',sans-serif;font-size:13px;color:white;font-weight:600;letter-spacing:0.5px;}
[data-theme="light"] .req-type-lbl {color:#3d342c !important;}
.req-note {font-size:12px;color:rgba(255,255,255,0.4);margin-top:2px;}
[data-theme="light"] .req-note {color:#3d2a1e !important;}
.req-user-tag {font-size:11px;color:rgba(255,255,255,0.4);background:rgba(255,255,255,0.08);padding:2px 8px;border-radius:4px;font-weight:500;}
[data-theme="light"] .req-user-tag {color:rgba(60,40,24,0.85)!important;background:rgba(60,40,24,0.07)!important;}
/* BALANCE */
.balance-card {border-radius:16px;padding:24px 28px;margin-bottom:24px;background:rgba(255,255,255,0.07);backdrop-filter:blur(40px) saturate(180%);-webkit-backdrop-filter:blur(40px) saturate(180%);border:1px solid rgba(255,255,255,0.18);position:relative;overflow:hidden;box-shadow:0 4px 24px rgba(0,0,0,0.3);}
.balance-card::after {content:'';position:absolute;right:-20px;top:-20px;width:160px;height:160px;border-radius:50%;background:rgba(var(--orange-rgb),0.08);pointer-events:none;}
[data-theme="light"] .balance-card {background:rgba(255,248,242,0.42) !important;border-color:rgba(255,255,255,0.35) !important;box-shadow:0 4px 24px rgba(0,0,0,0.1),inset 0 1px 0 rgba(255,255,255,0.45) !important;}
.bal-label {font-family:'Josefin Sans',sans-serif;font-size:10px;letter-spacing:2.5px;text-transform:uppercase;color:rgba(255,255,255,0.4);font-weight:600;margin-bottom:8px;}
[data-theme="light"] .bal-label {color:rgba(60,30,10,0.6) !important;}
.bal-main {display:flex;align-items:baseline;gap:8px;margin-bottom:20px;}
.bal-num {font-family:'Josefin Sans',sans-serif;font-size:56px;font-weight:700;color:var(--orange);line-height:1;letter-spacing:-1px;}
[data-theme="light"] .bal-num {color:var(--orange) !important;}
.bal-unit {font-size:16px;color:rgba(255,255,255,0.5);font-weight:400;}
[data-theme="light"] .bal-unit {color:rgba(60,30,10,0.6) !important;}
.bal-pills {display:flex;gap:10px;flex-wrap:wrap;}
.bal-pill {font-family:'Josefin Sans',sans-serif;padding:6px 14px;border-radius:20px;font-size:12px;font-weight:600;display:flex;align-items:center;gap:6px;letter-spacing:0.5px;}
.bal-pill.consumed {background:rgba(220,53,69,0.15);color:#ff7070;border:1px solid rgba(220,53,69,0.2);}
.bal-pill.pending {background:rgba(var(--orange-rgb),0.15);color:var(--orange);border:1px solid rgba(var(--orange-rgb),0.2);}
.bal-pill.approved {background:rgba(39,174,96,0.15);color:#2ecc71;border:1px solid rgba(39,174,96,0.2);}
/* CALENDAR */
.cal-dual {display:grid;grid-template-columns:1fr 1fr;gap:24px;}
@media(max-width:900px) {
  .cal-dual {grid-template-columns:1fr;}
  #cal-month-2 {display:none;}
}
.cal-hdr {display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;padding-right:36px;}
.cal-month-header {margin-bottom:12px;}
.cal-month-label {font-family:'Josefin Sans',sans-serif;font-size:14px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:white;}
[data-theme="light"] .cal-month-label {color:#3d342c;}
.cal-navs {display:flex;gap:6px;}
.cal-nav-btn {width:30px;height:30px;border-radius:7px;border:1.5px solid rgba(255,255,255,0.15);background:rgba(255,255,255,0.06);color:white;cursor:pointer;font-size:13px;display:flex;align-items:center;justify-content:center;transition:all 0.2s;}
.cal-nav-btn:hover {border-color:var(--orange);color:var(--orange);}
.cal-grid {display:grid;grid-template-columns:repeat(7,1fr);gap:2px;}
.cal-dl {text-align:center;font-family:'Josefin Sans',sans-serif;font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:rgba(255,255,255,0.3);padding:6px 0;font-weight:600;}
[data-theme="light"] .cal-dl {color:rgba(60,40,24,0.85);}
.cal-d {aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:12px;border-radius:7px;cursor:default;transition:all 0.15s;position:relative;color:white;}
[data-theme="light"] .cal-d {color:#3d342c;}
.cal-d.today {background:var(--orange);color:white;font-weight:600;}
.cal-d.holiday {color:var(--orange);font-weight:700;position:relative;cursor:help;}
.cal-d.holiday::before {content:'';position:absolute;bottom:3px;left:50%;transform:translateX(-50%);width:4px;height:4px;border-radius:50%;background:var(--orange);}
.cal-d.past {color:rgba(255,255,255,0.2);}
[data-theme="light"] .cal-d.past {color:rgba(0,0,0,0.15);}
.cal-d.wkend {color:rgba(255,255,255,0.3);}
[data-theme="light"] .cal-d.wkend {color:rgba(60,40,24,0.3);}
.cal-d.other-m {color:rgba(255,255,255,0.15);}
[data-theme="light"] .cal-d.other-m {color:rgba(0,0,0,0.1);}
.cal-d.selected {background:rgba(var(--orange-rgb),0.3);color:var(--orange);font-weight:500;}
.cal-d.sel-start {background:var(--orange);color:white;border-radius:7px 0 0 7px;}
.cal-d.sel-end {background:var(--orange);color:white;border-radius:0 7px 7px 0;}
.cal-d.sel-start.sel-end {border-radius:7px;}
.cal-d.bday::before {content:'';position:absolute;top:3px;right:3px;width:5px;height:5px;border-radius:50%;background:#e91e8c;opacity:0.85;}
.cal-legend {display:flex;gap:16px;margin-top:14px;font-size:11px;color:rgba(255,255,255,0.4);align-items:center;flex-wrap:wrap;}
[data-theme="light"] .cal-legend {color:rgba(60,40,24,0.8);}
.cal-legend span {display:flex;align-items:center;gap:6px;}
.leg-dot {width:12px;height:12px;border-radius:3px;flex-shrink:0;}
.day-counter {padding:8px 18px;border-radius:20px;text-align:center;background:rgba(var(--orange-rgb),0.15);color:var(--orange);border:1px solid rgba(var(--orange-rgb),0.4);font-weight:700;font-size:13px;font-family:'Josefin Sans',sans-serif;white-space:nowrap;display:flex;align-items:center;gap:6px;justify-content:center;letter-spacing:0.3px;transition:all 0.2s;}
.day-counter.empty {background:rgba(var(--orange-rgb),0.08);color:var(--orange);border:1px solid rgba(var(--orange-rgb),0.25);font-weight:400;font-size:12px;}
[data-theme="light"] .day-counter.empty {background:rgba(var(--orange-rgb),0.07);border-color:rgba(var(--orange-rgb),0.22);}
.exp-line {display:flex;flex-direction:row;gap:10px;align-items:end;background:rgba(255,255,255,0.06);padding:12px 14px;border-radius:10px;}
.exp-f-desc {flex:1 1 0;min-width:60px;}
.exp-f-cat {flex:0 0 130px;width:130px;}
.exp-f-km {flex:0 0 0;width:0;overflow:hidden;opacity:0;transition:flex-basis 0.3s cubic-bezier(0.4,0,0.2,1),opacity 0.25s ease;}
.exp-f-km .proj-acc-lbl,.exp-f-km input {white-space:nowrap;}
.exp-line.is-km .exp-f-km {flex:0 0 110px;width:110px;opacity:1;}
.exp-f-amt {flex:0 0 110px;width:110px;}
[data-theme="light"] .exp-line {background:rgba(255,255,255,0.18) !important;border:1px solid rgba(var(--orange-rgb),0.12);}
.btn-rm {width:34px;height:32px;border-radius:7px;border:1px solid rgba(220,53,69,0.2);background:rgba(220,53,69,0.08);color:#dc3545;cursor:pointer;font-size:17px;display:flex;align-items:center;justify-content:center;transition:all 0.2s;flex-shrink:0;align-self:end;}
.btn-rm:hover {background:#dc3545;color:white;}
.btn-ok {width:34px;height:32px;border-radius:7px;border:1px solid rgba(39,174,96,0.3);background:rgba(39,174,96,0.1);color:#27ae60;cursor:pointer;font-size:18px;font-weight:700;display:flex;align-items:center;justify-content:center;transition:all 0.2s;flex-shrink:0;align-self:end;}
.btn-ok:hover {background:#27ae60;color:white;}
.btn-update-line {width:34px;height:32px;border-radius:7px;border:1px solid rgba(var(--orange-rgb),0.5);background:rgba(var(--orange-rgb),0.15);color:var(--orange);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all 0.2s;flex-shrink:0;align-self:end;}
.btn-update-line:hover {background:var(--orange);color:white;}
.btn-add-exp {padding:11px 18px 9px;border:1.5px dashed rgba(255,255,255,0.15);background:transparent;border-radius:9px;color:rgba(255,255,255,0.4);font-family:'Josefin Sans',sans-serif;font-size:12px;letter-spacing:1px;cursor:pointer;transition:all 0.2s;}
.btn-add-exp:hover {border-color:var(--orange);color:var(--orange);}
.km-hint {font-size:10px;color:var(--orange);margin-top:3px;font-weight:600;letter-spacing:0.5px;}
.edit-actions {display:flex;gap:10px;align-items:center;padding-top:4px;}
.btn-cancel-edit {padding:11px 18px 9px;background:rgba(255,255,255,0.06);color:rgba(255,255,255,0.5);border:1px solid rgba(255,255,255,0.18);border-radius:9px;font-family:'Josefin Sans',sans-serif;font-size:11px;font-weight:600;letter-spacing:1px;text-transform:uppercase;cursor:pointer;transition:all 0.2s;}
.btn-cancel-edit:hover {background:rgba(255,255,255,0.1);color:white;border-color:rgba(255,255,255,0.35);}
/* DROP ZONE */
.drop-zone {border:1.5px dashed rgba(255,255,255,0.15);border-radius:10px;padding:16px 20px;margin-top:14px;text-align:center;cursor:pointer;transition:all 0.2s;position:relative;background:rgba(255,255,255,0.04);}
.drop-zone:hover,.drop-zone.dragover {border-color:var(--orange);background:rgba(var(--orange-rgb),0.06);}
.drop-zone input[type="file"] {position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer;width:100%;height:100%;}
.drop-zone-label {font-size:12px;color:rgba(255,255,255,0.4);pointer-events:none;}
.drop-zone-label strong {color:var(--orange);}
.drop-zone-icon {font-size:22px;margin-bottom:6px;}
.attachments-list {display:flex;flex-wrap:wrap;gap:10px;margin-top:12px;}
.attachment-chip {display:flex;align-items:center;gap:9px;padding:9px 14px 8px;background:rgba(var(--orange-rgb),0.82);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,0.25);border-radius:22px;font-family:'Josefin Sans',sans-serif;font-size:13px;color:#fff;font-weight:600;letter-spacing:0.3px;box-shadow:0 3px 12px rgba(var(--orange-rgb),0.3);}
.attachment-chip svg {opacity:1!important;width:15px!important;height:15px!important;}
.chip-rm {cursor:pointer;display:inline-flex;align-items:center;justify-content:center;width:21px;height:21px;border-radius:50%;background:rgba(255,255,255,0.28);color:#fff;flex-shrink:0;margin-left:2px;transition:transform 0.15s,background 0.15s;}
.chip-rm:hover {transform:scale(1.15);background:rgba(255,255,255,0.45);}
@keyframes chipIn {from{opacity:0;transform:translateY(-16px) scale(0.85);}to{opacity:1;transform:translateY(0) scale(1);}}
.attachment-chip.chip-in {animation:chipIn 0.35s cubic-bezier(0.34,1.4,0.64,1);}
.chip-rm:hover {color:#dc3545;}
.vtype-tab {flex:1;padding:12px;border-radius:10px;border:1px solid rgba(255,255,255,0.1);background:rgba(20,24,32,0.55);backdrop-filter:blur(20px) saturate(150%);cursor:pointer;text-align:center;transition:all 0.2s;font-family:'Josefin Sans',sans-serif;font-size:13px;font-weight:600;letter-spacing:0.5px;color:rgba(255,255,255,0.5);box-shadow:0 4px 24px rgba(0,0,0,0.3);}
[data-theme="light"] .vtype-tab {color:#3d342c !important;}
.vtype-tab:hover {border-color:var(--orange);color:rgba(255,255,255,0.85);}
[data-theme="light"] .vtype-tab:hover {color:var(--orange) !important;}
.vtype-tab.active {background:rgba(var(--orange-rgb),0.15);border-color:var(--orange);color:var(--orange);}
.vtab-icon {font-size:22px;display:block;margin-bottom:4px;}
.search-btn-row {display:flex;gap:10px;align-items:center;flex-wrap:wrap;}
.btn-search-sncf {display:flex;align-items:center;gap:8px;padding:12px 20px 10px;background:var(--orange);color:white;border:none;border-radius:9px;font-family:'Josefin Sans',sans-serif;font-size:12px;font-weight:600;letter-spacing:1px;cursor:pointer;transition:all 0.2s;text-transform:uppercase;text-decoration:none;box-shadow:0 3px 12px rgba(var(--orange-rgb),0.3);}
.btn-search-sncf:hover {background:var(--orange-dark);transform:translateY(-1px);}
.btn-search-flights {display:flex;align-items:center;gap:8px;padding:12px 20px 10px;background:#1a73e8;color:white;border:none;border-radius:9px;font-family:'Josefin Sans',sans-serif;font-size:12px;font-weight:600;letter-spacing:1px;cursor:pointer;transition:all 0.2s;text-transform:uppercase;text-decoration:none;}
.btn-search-flights:hover {background:#1557b0;transform:translateY(-1px);}
.search-hint {font-size:11px;color:rgba(255,255,255,0.4);font-style:italic;}
[data-theme="light"] .search-hint {color:rgba(60,40,24,0.8) !important;}
.vrc-title {font-family:'Josefin Sans',sans-serif;font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--orange);font-weight:600;margin-bottom:12px;}
.vrc-fields {display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;}
.vi-type {font-size:28px;}
.vi-route {font-family:'Josefin Sans',sans-serif;font-size:15px;font-weight:700;color:white;letter-spacing:0.5px;}
[data-theme="light"] .vi-route {color:#3d342c !important;}
.vi-details {font-size:12px;color:rgba(255,255,255,0.4);margin-top:3px;}
[data-theme="light"] .vi-details {color:#3d2a1e !important;}
.vi-price {font-family:'Josefin Sans',sans-serif;font-size:20px;font-weight:700;color:var(--orange);white-space:nowrap;}
/* CITY AUTOCOMPLETE */
.city-input-wrap {position:relative;}
.city-dropdown {position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:200;background:rgba(15,18,28,0.95);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid rgba(255,255,255,0.15);border-radius:10px;box-shadow:0 8px 40px rgba(0,0,0,0.5);overflow:hidden;display:none;max-height:200px;overflow-y:auto;}
[data-theme="light"] .city-dropdown {background:rgba(255,245,235,0.97) !important;border-color:rgba(var(--orange-rgb),0.2) !important;}
.city-dropdown.open {display:block;}
.city-option {padding:10px 14px;cursor:pointer;font-size:13px;color:white;font-family:'Josefin Sans',sans-serif;letter-spacing:0.5px;transition:background 0.15s;display:flex;align-items:center;gap:8px;}
[data-theme="light"] .city-option {color:#3d342c !important;}
.city-option:hover {background:rgba(var(--orange-rgb),0.15);color:var(--orange);}
.city-flag {display:inline-flex;align-items:center;justify-content:center;font-size:9px;font-weight:700;letter-spacing:0.8px;min-width:22px;height:16px;border-radius:3px;background:rgba(255,255,255,0.1);color:rgba(255,255,255,0.45);font-family:'Josefin Sans',sans-serif;flex-shrink:0;padding:0 3px;}
[data-theme="light"] .city-flag {background:rgba(0,0,0,0.07);color:rgba(40,25,15,0.45);}
/* DATE INPUT */
.date-input-wrap {position:relative;display:flex;align-items:center;}
.date-input-wrap input {padding-right:36px !important;cursor:pointer;}
.date-icon {position:absolute;right:10px;font-size:14px;cursor:pointer;opacity:0.5;}
.vdp-header {display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;}
.vdp-title {font-family:'Josefin Sans',sans-serif;font-size:13px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,0.9);flex:1;text-align:center;}
[data-theme="light"] .vdp-title {color:rgba(40,40,45,0.9);}
.vdp-nav {width:22px;height:22px;border:none;background:none;cursor:pointer;font-size:14px;font-weight:700;color:rgba(255,255,255,0.5);transition:color 0.2s;display:flex;align-items:center;justify-content:center;line-height:1;padding:0;}
.vdp-nav:hover {color:var(--orange);}
[data-theme="light"] .vdp-nav {color:rgba(40,40,45,0.45);}
[data-theme="light"] .vdp-nav:hover {color:var(--orange);}
.vdp-grid {display:grid;grid-template-columns:repeat(7,1fr);gap:2px;}
.vdp-dl {text-align:center;font-family:'Josefin Sans',sans-serif;font-size:9px;letter-spacing:1.5px;text-transform:uppercase;color:rgba(255,255,255,0.28);padding:5px 0;font-weight:700;}
[data-theme="light"] .vdp-dl {color:rgba(40,40,45,0.45);}
.vdp-day {aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:12px;border-radius:7px;cursor:pointer;transition:all 0.15s;color:rgba(255,255,255,0.82);font-family:'Josefin Sans',sans-serif;font-weight:600;}
[data-theme="light"] .vdp-day {color:rgba(40,40,45,0.85);}
.vdp-day:hover {background:rgba(var(--orange-rgb),0.18);color:var(--orange);}
.vdp-day.today {background:rgba(var(--orange-rgb),0.2);color:var(--orange);font-weight:700;border:1px solid rgba(var(--orange-rgb),0.4);}
.vdp-day.selected {background:none;color:white;font-weight:700;text-shadow:0 0 6px rgba(255,255,255,1),0 0 16px rgba(255,255,255,1),0 0 50px rgba(255,255,255,0.9),0 0 100px rgba(255,255,255,0.7),0 0 180px rgba(255,255,255,0.5),0 0 280px rgba(255,255,255,0.25);}
.vdp-day.past {opacity:0.2;cursor:default;pointer-events:none;}
.vdp-day.past-ok {opacity:0.55;}
.immo-hist-row {overflow:hidden;max-height:70px;opacity:1;transition:max-height 0.32s cubic-bezier(0.4,0,0.2,1),opacity 0.25s ease;}
.vdp-day.other {opacity:0.2;}
.vdp-day.taken {background:rgba(231,76,60,0.2)!important;color:#e74c3c!important;cursor:not-allowed!important;pointer-events:none;border:1px solid rgba(231,76,60,0.3);}
[data-theme="light"] .vdp-day.taken {background:rgba(231,76,60,0.12)!important;color:#c0392b!important;border-color:rgba(231,76,60,0.25)!important;}
.vdp-day.wkend {color:rgba(255,255,255,0.35);}
.vdp-day.holiday,.vdp-day.holiday.wkend {color:var(--orange)!important;font-weight:700;position:relative;}
.vdp-day.holiday::after {content:'';position:absolute;bottom:3px;left:50%;transform:translateX(-50%);width:3px;height:3px;border-radius:50%;background:var(--orange);}
.vdp-day.holiday:hover {background:rgba(var(--orange-rgb),0.18);}
[data-theme="light"] .vdp-day.wkend {color:rgba(40,40,45,0.3);}
.vdp-day.holiday.wkend {opacity:0.7;}
[data-theme="light"] .vdp-day.wkend {color:rgba(40,40,45,0.3);}
/* ADMIN */
.admin-badge {font-family:'Josefin Sans',sans-serif;display:inline-flex;align-items:center;gap:6px;background:rgba(var(--orange-rgb),0.12);color:var(--orange);padding:4px 10px;border-radius:20px;font-size:10px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;margin-bottom:20px;border:1px solid rgba(var(--orange-rgb),0.25);}
.tabs {display:inline-flex;gap:4px;margin-bottom:16px;background:rgba(0,0,0,0.3);backdrop-filter:blur(10px);padding:4px;border-radius:10px;border:1px solid rgba(255,255,255,0.08);}
[data-theme="light"] .tabs {background:rgba(255,248,242,0.6) !important;border-color:rgba(var(--orange-rgb),0.18) !important;backdrop-filter:blur(10px);}
.tab {padding:8px 16px;border-radius:7px;font-size:12px;font-weight:600;cursor:pointer;transition:all 0.2s;color:rgba(255,255,255,0.4);letter-spacing:1px;border:none;background:transparent;font-family:'Josefin Sans',sans-serif;text-transform:uppercase;}
.tab.active {background:rgba(var(--orange-rgb),0.2);color:white;box-shadow:0 1px 6px rgba(0,0,0,0.3);border:1px solid rgba(var(--orange-rgb),0.3);}
[data-theme="light"] .tab {color:rgba(60,40,24,0.8) !important;}
[data-theme="light"] .tab.active {background:rgba(255,255,255,0.8) !important;color:#3d342c !important;}
.btn-approve {padding:7px 14px 5px;background:rgba(39,174,96,0.12);color:#27ae60;border:1px solid rgba(39,174,96,0.2);border-radius:7px;font-family:'Josefin Sans',sans-serif;font-size:11px;cursor:pointer;transition:all 0.2s;font-weight:600;letter-spacing:0.5px;}
.btn-approve:hover {background:#27ae60;color:white;}
.btn-reject {padding:7px 14px 5px;background:rgba(220,53,69,0.08);color:#dc3545;border:1px solid rgba(220,53,69,0.15);border-radius:7px;font-family:'Josefin Sans',sans-serif;font-size:11px;cursor:pointer;transition:all 0.2s;font-weight:600;letter-spacing:0.5px;}
.btn-reject:hover {background:#dc3545;color:white;}
[data-theme="light"] .btn-approve {background:rgba(39,174,96,0.25)!important;border-color:rgba(39,174,96,0.6)!important;color:#1a7a45!important;}
[data-theme="light"] .btn-approve:hover {background:#27ae60!important;color:white!important;border-color:#27ae60!important;}
[data-theme="light"] .btn-reject {background:rgba(220,53,69,0.15)!important;border-color:rgba(220,53,69,0.35)!important;}
[data-theme="light"] .btn-reject:hover {background:#dc3545!important;color:white!important;border-color:#dc3545!important;}
.admin-actions {display:flex;gap:8px;margin-left:auto;}
.item-chevron {color:rgba(255,255,255,0.35);transition:transform 0.3s;flex-shrink:0;opacity:0.4;}
[data-theme="light"] .item-chevron {color:rgba(60,40,24,0.35)!important;}
.btn-save-days {padding:9px 16px 7px;background:var(--orange);color:white;border:none;border-radius:8px;font-family:'Josefin Sans',sans-serif;font-size:11px;font-weight:600;cursor:pointer;transition:all 0.2s;letter-spacing:1px;}
.btn-save-days:hover {background:var(--orange-dark);}
.vai-header {display:flex;align-items:center;gap:12px;margin-bottom:10px;}
.vai-route {font-family:'Josefin Sans',sans-serif;font-size:15px;font-weight:700;color:white;}
[data-theme="light"] .vai-route {color:#3d342c;}
.vai-details {font-size:12px;font-family:'Josefin Sans',sans-serif;color:rgba(255,255,255,0.4);margin-top:3px;}
[data-theme="light"] .vai-details {color:#3d2a1e;}
.vai-price {font-family:'Josefin Sans',sans-serif;font-size:20px;font-weight:700;color:white;}
[data-theme="light"] .vai-price {color:#3d342c;}
.vai-footer {display:flex;align-items:center;gap:12px;flex-wrap:wrap;}
.create-user-grid {display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:12px;align-items:end;}
/* UTILS */
.empty-state {text-align:center;padding:40px;color:rgba(255,255,255,0.3);font-size:13px;}
.empty-icon {font-size:36px;margin-bottom:12px;}
.loading {text-align:center;padding:40px;color:rgba(255,255,255,0.3);font-size:13px;}
.toast {position:fixed;bottom:28px;right:28px;background:rgba(255,255,255,0.08);backdrop-filter:blur(40px) saturate(180%);-webkit-backdrop-filter:blur(40px) saturate(180%);color:rgba(255,255,255,0.69);padding:14px 20px;border-radius:16px;font-family:'Josefin Sans',sans-serif;font-size:13px;font-weight:600;letter-spacing:0.3px;border:1px solid rgba(255,255,255,0.18);box-shadow:0 8px 32px rgba(0,0,0,0.45),inset 0 1px 0 rgba(255,255,255,0.12);opacity:0;transform:translateY(10px) scale(0.97);transition:opacity 0.25s ease,transform 0.25s ease;z-index:9999;pointer-events:none;max-width:320px;}
[data-theme="light"] .toast {background:rgba(228,222,218,0.52);color:rgba(40,25,15,0.66);border-color:rgba(255,255,255,0.65);box-shadow:0 16px 48px rgba(0,0,0,0.22),0 4px 16px rgba(0,0,0,0.12),inset 0 1px 0 rgba(255,255,255,0.7);}
[data-theme="light"] #confirm-modal {background:rgba(255,248,242,0.45);border-color:rgba(120,90,65,0.22);box-shadow:0 24px 64px rgba(0,0,0,0.18),inset 0 1px 0 rgba(255,255,255,0.75);}
#confirm-msg {color:rgba(255,255,255,0.5);}
[data-theme="light"] #confirm-msg {color:rgba(60,40,24,0.6);}
[data-theme="light"] #confirm-cancel {background:rgba(40,167,69,0.12);border-color:rgba(40,167,69,0.35);color:#28a745;}
[data-theme="light"] #confirm-ok {background:rgba(220,53,69,0.12);border-color:rgba(220,53,69,0.35);color:#dc3545;}
[data-theme="light"] #bg-preview-exit {background:rgba(228,222,218,0.72)!important;color:rgba(40,25,15,0.82)!important;border-color:rgba(255,255,255,0.65)!important;box-shadow:0 16px 48px rgba(0,0,0,0.22),0 4px 16px rgba(0,0,0,0.12),inset 0 1px 0 rgba(255,255,255,0.7)!important;}
[data-theme="light"] #bg-preview-exit button {color:rgba(40,25,15,0.82)!important;border-color:rgba(120,90,65,0.15)!important;}
[data-theme="light"] #bg-preview-exit button:hover {background:rgba(120,90,65,0.07)!important;}
.toast.show {opacity:1;transform:translateY(0) scale(1);}
@keyframes slideIn {from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}
.exp-line.new-line {animation:slideIn 0.25s ease forwards;}
body {background: var(--fondo) center center / cover no-repeat fixed;}
body::before {content:''; position:fixed; inset:0; z-index:0; background:var(--body-overlay,linear-gradient(160deg,rgba(10,10,20,0.6) 0%,rgba(20,10,10,0.45) 50%,rgba(10,15,25,0.65) 100%)); pointer-events:none;}
[data-theme="light"] body::before {background:var(--body-overlay-lt,rgba(240,220,200,0.10));}
#login-screen {background: var(--fondo) center/cover no-repeat;}
.exp-line .field label {color:rgba(255,255,255,0.5) !important;}
.btn-add-exp {color:rgba(255,255,255,0.55) !important; border-color:rgba(255,255,255,0.2) !important;}
.drop-zone-label {color:rgba(255,255,255,0.5) !important;}
.drop-zone {border-color:rgba(255,255,255,0.25) !important;}
.card-title {color:rgba(255,255,255,0.45) !important;}
[data-theme="light"] .exp-line .field label {color:rgba(40,25,15,0.55) !important;}
[data-theme="light"] .btn-add-exp {color:rgba(40,25,15,0.5) !important; border-color:rgba(40,25,15,0.2) !important;}
[data-theme="light"] .btn-add-exp:hover {color:var(--orange) !important; border-color:var(--orange) !important;}
[data-theme="light"] .drop-zone-label {color:rgba(40,25,15,0.5) !important;}
[data-theme="light"] .card-title {color:rgba(40,25,15,0.45) !important;}
[data-theme="light"] .about-text {color:rgba(60,40,24,0.8) !important;}
[data-theme="light"] .about-strong {color:#3d342c !important;}
[data-theme="light"] .attachment-chip {color:#fff !important; background:rgba(var(--orange-rgb),0.82) !important; border-color:rgba(255,255,255,0.4) !important;}
[data-theme="light"] .drop-zone {border-color:rgba(40,25,15,0.25) !important; background:rgba(255,255,255,0.2) !important;}
[data-theme="light"] .drop-zone:hover {border-color:var(--orange) !important;}
/* ── SUBSECTION LABELS (lignes de dépenses, justificatifs) ── */
[data-theme="light"] .form-card > div[style*="letter-spacing:2px"],
[data-theme="light"] .form-card > div[style*="letter-spacing: 2px"] {color: rgba(40,25,15,0.6) !important;
  text-shadow: none !important;}
/* ── ALL TEXT OUTSIDE GLASS CARDS → white with shadow ── */
[data-theme="light"] .sec-title {color: white !important;
  text-shadow: 0 1px 12px rgba(0,0,0,0.55) !important;}
[data-theme="light"] .page-sub {color: rgba(255,255,255,0.8) !important;
  text-shadow: 0 1px 10px rgba(0,0,0,0.5) !important;}
[data-theme="light"] .page-title {color: white !important;
  text-shadow: 0 2px 14px rgba(0,0,0,0.5) !important;}
.dp-float {position:absolute;top:calc(100% + 6px);left:0;z-index:1500;margin:0!important;animation:dpFadeIn 0.2s ease;}
/* ── REMOVE ORANGE BORDERS FROM INPUTS/FIELDS ── */
.field input, .field select, .field textarea,
.exp-line input, .exp-line select {border-color: rgba(255,255,255,0.12) !important;}
[data-theme="light"] .field input,
[data-theme="light"] .field select,
[data-theme="light"] .field textarea,
[data-theme="light"] .exp-line input,
[data-theme="light"] .exp-line select {border-color: rgba(0,0,0,0.1) !important;}
/* Keep orange only on focus */
.field input:focus, .field select:focus, .field textarea:focus,
.exp-line input:focus, .exp-line select:focus {border-color: var(--orange) !important;}
/* Remove orange from date-input-wrap icon area */
.date-input-wrap input {border-color: rgba(255,255,255,0.12) !important;}
[data-theme="light"] .date-input-wrap input {border-color: rgba(0,0,0,0.1) !important;}
.date-input-wrap input:focus {border-color: var(--orange) !important;}
/* ── EXP-LINE same neutral border ── */
.exp-line {border: 1px solid rgba(255,255,255,0.1) !important;}
[data-theme="light"] .exp-line {border-color: rgba(0,0,0,0.08) !important;}
/* ── PLACEHOLDER TEXT — warm dark gray in light, soft gray in dark ── */
.field input::placeholder,
.field textarea::placeholder,
.exp-line input::placeholder {color: rgba(255,255,255,0.28) !important;}
[data-theme="light"] .field input::placeholder,
[data-theme="light"] .field textarea::placeholder,
[data-theme="light"] .exp-line input::placeholder {color: rgba(40,25,15,0.38) !important;}
/* ── INPUT TEXT VALUE (filled) — same warm dark gray ── */
[data-theme="light"] .field input,
[data-theme="light"] .field select,
[data-theme="light"] .field textarea,
[data-theme="light"] .exp-line input,
[data-theme="light"] .exp-line select {color: rgba(40,25,15,0.75) !important;}
/* ── EXP-LINE button alignment fix ── */
.exp-line {align-items: end !important;}
.btn-rm, .btn-ok {align-self: end !important;
  margin-bottom: 0 !important;
  flex-shrink: 0;}
/* Field inside exp-line: label + input stack, button aligns to input bottom */
.exp-line .field {display: flex;
  flex-direction: column;}
/* Target all edit-total-* spans in light mode */
[data-theme="light"] [id^="edit-total-"] {color: #3d342c !important;}
/* ── ANNULER button — gray dark ── */
.btn-cancel-edit {background: rgba(0,0,0,0.08) !important;
  color: rgba(40,25,15,0.55) !important;
  border-color: rgba(40,25,15,0.2) !important;}
[data-theme="dark"] .btn-cancel-edit {background: rgba(255,255,255,0.06) !important;
  color: rgba(255,255,255,0.4) !important;
  border-color: rgba(255,255,255,0.15) !important;}
.btn-cancel-edit:hover {background: rgba(0,0,0,0.12) !important;
  color: rgba(40,25,15,0.8) !important;
  border-color: rgba(40,25,15,0.35) !important;}
[data-theme="dark"] .btn-cancel-edit:hover {background: rgba(255,255,255,0.1) !important;
  color: rgba(255,255,255,0.7) !important;
  border-color: rgba(255,255,255,0.3) !important;}
/* Also fix the TOTAL label in edit panel light mode */
[data-theme="light"] .edit-actions [style*="rgba(255,255,255,0.45)"] {color: rgba(40,25,15,0.5) !important;}
/* ── ANNULER — definitive gray ── */
.btn-cancel-edit {background: rgba(120,110,100,0.15) !important;
  color: rgba(80,65,55,0.7) !important;
  border: 1px solid rgba(80,65,55,0.25) !important;}
[data-theme="dark"] .btn-cancel-edit {background: rgba(255,255,255,0.07) !important;
  color: rgba(255,255,255,0.38) !important;
  border: 1px solid rgba(255,255,255,0.14) !important;}
.btn-cancel-edit:hover {background: rgba(100,90,80,0.22) !important;
  color: rgba(60,45,35,0.9) !important;
  border-color: rgba(80,65,55,0.4) !important;}
[data-theme="dark"] .btn-cancel-edit:hover {background: rgba(255,255,255,0.12) !important;
  color: rgba(255,255,255,0.65) !important;
  border-color: rgba(255,255,255,0.28) !important;}
/* ── ANNULER — white text, centered ── */
.btn-cancel-edit {background: rgba(120,110,100,0.15) !important;
  color: white !important;
  border: 1px solid rgba(80,65,55,0.25) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;}
[data-theme="dark"] .btn-cancel-edit {background: rgba(255,255,255,0.07) !important;
  color: white !important;
  border: 1px solid rgba(255,255,255,0.14) !important;}
.btn-cancel-edit:hover {background: rgba(100,90,80,0.25) !important;
  color: white !important;}
[data-theme="dark"] .btn-cancel-edit:hover {background: rgba(255,255,255,0.12) !important;
  color: white !important;}
.btn-cancel-edit {padding: 11px 18px 9px !important;}
/* ── FIXED BACKGROUND SYSTEM (no-jump) ── */
.page-bg {display:none;}
[data-theme="light"] .admin-warn-txt {color:rgba(60,40,24,0.85)!important;}
/* === PROJETS === */
.proj-stats {display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px;}
.proj-stat {background:rgba(255,255,255,0.07);border:1px solid rgba(255,255,255,0.18);border-radius:14px;padding:18px 20px;backdrop-filter:blur(40px) saturate(180%);-webkit-backdrop-filter:blur(40px) saturate(180%);box-shadow:0 8px 32px rgba(0,0,0,0.4),inset 0 1px 0 rgba(255,255,255,0.12);}
[data-theme="light"] .proj-stat {background:rgba(255,248,242,0.42)!important;border-color:rgba(255,255,255,0.35)!important;box-shadow:0 4px 24px rgba(0,0,0,0.1),inset 0 1px 0 rgba(255,255,255,0.45)!important;}
.proj-stat-val {font-family:'Josefin Sans',sans-serif;font-size:28px;font-weight:700;color:var(--orange);}
.proj-stat-lbl {font-size:11px;color:rgba(255,255,255,0.4);margin-top:4px;font-family:'Josefin Sans',sans-serif;letter-spacing:0.5px;}
[data-theme="light"] .proj-stat-lbl {color:rgba(40,25,15,0.5);}
.proj-filters {display:flex;align-items:center;gap:10px;margin-bottom:16px;flex-wrap:wrap;}
.proj-filter-select {background:rgba(255,255,255,0.05);border:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25'%3e%3crect x='0.75' y='0.75' width='calc(100%25 - 1.5px)' height='calc(100%25 - 1.5px)' fill='none' rx='11.25' ry='11.25' stroke='%23ffffff' stroke-opacity='.22' stroke-width='1.5' stroke-dasharray='5 3.5' stroke-linecap='round'/%3e%3c/svg%3e");background-size:100% 100%;background-repeat:no-repeat;background-position:0 0;border-radius:12px;color:rgba(255,255,255,0.75);font-family:'Josefin Sans',sans-serif;font-size:13px;letter-spacing:1px;padding:0 16px;cursor:pointer;outline:none;height:36px;box-sizing:border-box;appearance:none;-webkit-appearance:none;text-align:center;text-align-last:center;max-width:210px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
[data-theme="light"] .proj-filter-select {background-color:rgba(255,255,255,0.4)!important;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25'%3e%3crect x='0.75' y='0.75' width='calc(100%25 - 1.5px)' height='calc(100%25 - 1.5px)' fill='none' rx='11.25' ry='11.25' stroke='%23785a41' stroke-opacity='.45' stroke-width='1.5' stroke-dasharray='5 3.5' stroke-linecap='round'/%3e%3c/svg%3e")!important;color:rgba(40,25,15,0.82);}
.proj-search {flex:1;min-width:160px;background:rgba(255,255,255,0.05);border:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25'%3e%3crect x='0.75' y='0.75' width='calc(100%25 - 1.5px)' height='calc(100%25 - 1.5px)' fill='none' rx='11.25' ry='11.25' stroke='%23ffffff' stroke-opacity='.22' stroke-width='1.5' stroke-dasharray='5 3.5' stroke-linecap='round'/%3e%3c/svg%3e");background-size:100% 100%;background-repeat:no-repeat;background-position:0 0;border-radius:12px;color:rgba(255,255,255,0.75);font-family:'Josefin Sans',sans-serif;font-size:13px;letter-spacing:1px;padding:0 16px;outline:none;height:36px;box-sizing:border-box;}
[data-theme="light"] .proj-search {background-color:rgba(255,255,255,0.4)!important;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25'%3e%3crect x='0.75' y='0.75' width='calc(100%25 - 1.5px)' height='calc(100%25 - 1.5px)' fill='none' rx='11.25' ry='11.25' stroke='%23785a41' stroke-opacity='.45' stroke-width='1.5' stroke-dasharray='5 3.5' stroke-linecap='round'/%3e%3c/svg%3e")!important;color:rgba(40,25,15,0.82);}
.proj-search::placeholder {color:rgba(255,255,255,0.3);}
[data-theme="light"] .proj-search::placeholder {color:rgba(60,45,30,0.35);}
.proj-table-wrap {overflow-x:auto;border-radius:12px;border:1.5px dashed rgba(255,255,255,0.18);background:rgba(255,255,255,0.04);}
[data-theme="light"] .proj-table-wrap {border:1.5px dashed rgba(120,90,65,0.45);background:rgba(255,248,242,0.25);}
.proj-table {width:100%;border-collapse:collapse;font-size:13px;}
.proj-table th {font-family:'Josefin Sans',sans-serif;font-size:11px;letter-spacing:1px;text-transform:uppercase;color:rgba(255,255,255,0.55);padding:10px 14px;text-align:left;border-bottom:1px solid rgba(255,255,255,0.08);white-space:nowrap;}
[data-theme="light"] .proj-table th {color:rgba(40,25,15,0.6);border-bottom-color:rgba(0,0,0,0.07);}
.proj-table td {padding:11px 14px;border-bottom:1px solid rgba(255,255,255,0.05);vertical-align:middle;color:rgba(255,255,255,0.75);font-family:'Josefin Sans',sans-serif;font-size:13px;}
[data-theme="light"] .proj-table td {border-bottom-color:rgba(0,0,0,0.05);color:rgba(40,25,15,0.8);font-size:13px;}
.proj-table tr:last-child td {border-bottom:none;}
.proj-table tr:hover td {background:rgba(255,255,255,0.03);}
[data-theme="light"] .proj-table tr:hover td {background:rgba(0,0,0,0.02);}
.proj-acc-wrap {display:flex;flex-direction:column;gap:8px;}
.proj-acc-item {border:1.5px dashed rgba(255,255,255,0.18);border-radius:12px;background:rgba(255,255,255,0.09);overflow:hidden;flex-shrink:0;}
[data-theme="light"] .proj-acc-item {border:1.5px dashed rgba(120,90,65,0.45);background:rgba(255,248,242,0.45);color:rgba(40,25,15,0.85);}
.proj-acc-hdr {display:flex;align-items:center;gap:12px;padding:16px 22px;cursor:pointer;user-select:none;}
.proj-acc-chev {transition:transform 0.3s;opacity:0.4;flex-shrink:0;}
.proj-acc-item.open .proj-acc-chev {transform:rotate(180deg);}
.proj-acc-body {max-height:0;overflow:hidden;transition:max-height 0.42s ease;}
.proj-acc-item.open .proj-acc-body {max-height:20000px;}
.proj-acc-inner {padding:18px;border-top:1px solid rgba(255,255,255,0.08);}
[data-theme="light"] .proj-acc-inner {border-top-color:rgba(120,90,65,0.12);}
.proj-acc-sec-title {font-family:'Josefin Sans',sans-serif;font-size:11px;letter-spacing:2px;text-transform:uppercase;opacity:0.85;font-weight:700;margin-bottom:14px;margin-top:22px;padding-top:0;border-top:none;}
.proj-acc-sec-title:first-child {margin-top:0;}
[data-theme="light"] .proj-acc-sec-title {border-top-color:rgba(120,90,65,0.1);color:rgba(60,40,24,0.85);}
.proj-acc-grid {display:grid;grid-template-columns:repeat(4,1fr);gap:8px 12px;margin-bottom:4px;align-items:stretch;}
.proj-acc-f {display:flex;flex-direction:column;gap:4px;justify-content:space-between;}
.proj-acc-f.span2 {grid-column:span 2;}
.proj-acc-f.span3 {grid-column:span 3;}
.proj-acc-f.span4 {grid-column:span 4;}
.proj-acc-lbl {font-family:'Josefin Sans',sans-serif;font-size:9px;letter-spacing:1.5px;text-transform:uppercase;opacity:0.85;font-weight:700;}
.proj-acc-inp,.proj-acc-sel {width:100%;height:30px;padding:2px 9px 0;border-radius:7px;border:1px solid rgba(255,255,255,0.1);background:rgba(255,255,255,0.05);color:rgba(255,255,255,0.82);font-family:'Josefin Sans',sans-serif;font-size:13px;outline:none;box-sizing:border-box;}
[data-theme="light"] .proj-acc-inp,[data-theme="light"] .proj-acc-sel {border-color:rgba(120,90,65,0.18);background:rgba(255,255,255,0.4);color:rgba(40,25,15,0.85);}
.proj-acc-inp[type=date] {color-scheme:light dark;}
.proj-acc-inp[type=time] {color-scheme:dark;color:rgba(255,255,255,0.82)!important;}
.proj-acc-inp::placeholder {font-size:12px;letter-spacing:0.3px;}
.proj-msg-ta::placeholder {color:rgba(255,255,255,0.55)!important;}
[data-theme="light"] .proj-msg-ta::placeholder {color:rgba(40,25,15,0.55)!important;}
.proj-msg-editor {outline:none;}
.proj-msg-editor:empty::before {content:attr(data-ph);color:rgba(255,255,255,0.55);pointer-events:none;}
[data-theme="light"] .proj-msg-editor:empty::before {color:rgba(40,25,15,0.55);}
.proj-msg-editor img {max-width:220px;border-radius:6px;margin:4px 0;display:inline-block;vertical-align:bottom;}
.proj-mention {color:var(--orange);font-weight:600;white-space:nowrap;}
.proj-msg-content {line-height:1.55;word-break:break-word;}
.proj-msg-content p,.proj-msg-content div {margin:0;line-height:inherit;}
.proj-msg-content img {max-width:min(220px,100%);border-radius:6px;margin:4px 0;display:block;vertical-align:bottom;}
.proj-emoji-pop {position:fixed;z-index:9999;border-radius:16px;padding:12px;width:252px;display:none;flex-wrap:wrap;gap:3px;justify-content:center;backdrop-filter:blur(24px) saturate(160%);-webkit-backdrop-filter:blur(24px) saturate(160%);max-height:340px;overflow-y:auto;}
.proj-emoji-pop.open {display:flex;}
.proj-emoji-pop .ep-btn {width:34px;height:34px;background:none;border:none;border-radius:8px;cursor:pointer;font-size:21px;display:flex;align-items:center;justify-content:center;transition:background 0.12s;line-height:1;}
.proj-emoji-pop .ep-btn:hover {background:rgba(var(--orange-rgb),0.18);}
.proj-at-drop {position:fixed;z-index:9999;border-radius:10px;padding:6px;box-shadow:0 8px 24px rgba(0,0,0,0.4);min-width:190px;max-height:220px;overflow-y:auto;display:none;}
.proj-at-drop.open {display:block;}
.proj-at-item {display:flex;align-items:center;gap:9px;padding:7px 10px;border-radius:7px;cursor:pointer;font-family:'Josefin Sans',sans-serif;font-size:13px;}
.proj-at-item:hover {background:rgba(var(--orange-rgb),0.12);}
.proj-acc-inp[type=date]::-webkit-datetime-edit,.proj-acc-inp[type=date]::-webkit-datetime-edit-fields-wrapper,.proj-acc-inp[type=date]::-webkit-datetime-edit-day-field,.proj-acc-inp[type=date]::-webkit-datetime-edit-month-field,.proj-acc-inp[type=date]::-webkit-datetime-edit-year-field,.proj-acc-inp[type=date]::-webkit-datetime-edit-text,.proj-acc-inp[type=time]::-webkit-datetime-edit,.proj-acc-inp[type=time]::-webkit-datetime-edit-fields-wrapper,.proj-acc-inp[type=time]::-webkit-datetime-edit-hour-field,.proj-acc-inp[type=time]::-webkit-datetime-edit-minute-field,.proj-acc-inp[type=time]::-webkit-datetime-edit-ampm-field,.proj-acc-inp[type=time]::-webkit-datetime-edit-text {color:rgba(255,255,255,0.82)!important;}
[data-theme="light"] .proj-acc-inp[type=date] {color-scheme:light;accent-color:rgba(90,90,90,0.8);color:rgba(60,60,60,0.85)!important;}
[data-theme="light"] .proj-acc-inp[type=time] {color-scheme:light;color:rgba(40,25,15,0.85)!important;}
[data-theme="light"] .proj-acc-inp[type=date]::-webkit-datetime-edit,[data-theme="light"] .proj-acc-inp[type=date]::-webkit-datetime-edit-fields-wrapper,[data-theme="light"] .proj-acc-inp[type=date]::-webkit-datetime-edit-day-field,[data-theme="light"] .proj-acc-inp[type=date]::-webkit-datetime-edit-month-field,[data-theme="light"] .proj-acc-inp[type=date]::-webkit-datetime-edit-year-field,[data-theme="light"] .proj-acc-inp[type=date]::-webkit-datetime-edit-text,[data-theme="light"] .proj-acc-inp[type=time]::-webkit-datetime-edit,[data-theme="light"] .proj-acc-inp[type=time]::-webkit-datetime-edit-fields-wrapper,[data-theme="light"] .proj-acc-inp[type=time]::-webkit-datetime-edit-hour-field,[data-theme="light"] .proj-acc-inp[type=time]::-webkit-datetime-edit-minute-field,[data-theme="light"] .proj-acc-inp[type=time]::-webkit-datetime-edit-ampm-field,[data-theme="light"] .proj-acc-inp[type=time]::-webkit-datetime-edit-text {color:rgba(40,25,15,0.85)!important;}
input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button {-webkit-appearance:none;margin:0;}
input[type=number] {-moz-appearance:textfield;appearance:textfield;}
.proj-acc-inp[type=number]::-webkit-inner-spin-button,.proj-acc-inp[type=number]::-webkit-outer-spin-button {-webkit-appearance:none;margin:0;}
.proj-acc-inp[type=number] {-moz-appearance:textfield;}
.proj-acc-sel {appearance:none;-webkit-appearance:none;cursor:pointer;}
.proj-acc-sel.sel-empty,select.proj-acc-inp.sel-empty {color:rgba(255,255,255,0.35)!important;}
[data-theme="light"] .proj-acc-sel.sel-empty,[data-theme="light"] select.proj-acc-inp.sel-empty {color:rgba(40,25,15,0.4)!important;}
.proj-acc-factu-grid {display:grid;grid-template-columns:repeat(6,1fr);gap:6px;}
.proj-acc-factu-item {display:flex;flex-direction:column;gap:3px;min-width:0;}
.proj-acc-factu-lbl {font-family:'Josefin Sans',sans-serif;font-size:9px;letter-spacing:1px;text-transform:uppercase;opacity:0.85;font-weight:700;text-align:center;display:block;width:100%;padding-right:29px;box-sizing:border-box;}
.proj-acc-factu-row {display:flex;gap:3px;align-items:center;min-width:0;}
.proj-acc-factu-inp {flex:1;min-width:0;height:26px;padding:0 6px;border-radius:6px;border:1px solid rgba(255,255,255,0.1);background:rgba(255,255,255,0.05);font-family:'Josefin Sans',sans-serif;font-size:11px;color:rgba(255,255,255,0.82);outline:none;box-sizing:border-box;text-align:center;}
.proj-acc-factu-inp::-webkit-inner-spin-button,.proj-acc-factu-inp::-webkit-outer-spin-button {-webkit-appearance:none;margin:0;}
.proj-acc-factu-inp {-moz-appearance:textfield;}
[data-theme="light"] .proj-acc-factu-inp {border-color:rgba(120,90,65,0.18);background:rgba(255,255,255,0.4);color:rgba(40,25,15,0.85);}
.proj-team-chip {display:inline-flex;align-items:center;gap:6px;padding:4px 8px 4px 5px;border-radius:20px;background:rgba(var(--orange-rgb),0.1);border:1px solid rgba(var(--orange-rgb),0.25);font-family:'Josefin Sans',sans-serif;font-size:11px;}
[data-theme="light"] .proj-team-chip {background:rgba(var(--orange-rgb),0.08);border-color:rgba(var(--orange-rgb),0.3);color:rgba(40,25,15,0.8);}
.proj-team-chip-rm {background:transparent;border:none;color:rgba(255,255,255,0.35);cursor:pointer;font-size:15px;line-height:1;padding:0 0 0 2px;transition:color 0.15s;}
[data-theme="light"] .proj-team-chip-rm {color:rgba(40,25,15,0.3);}
.proj-team-chip-rm:hover {color:rgba(244,70,52,0.9);}
.proj-hours-table {width:100%;border-collapse:collapse;font-family:'Josefin Sans',sans-serif;font-size:11px;}
.proj-hours-table th {padding:5px 7px;text-align:center;font-size:9px;letter-spacing:1px;text-transform:uppercase;opacity:0.6;font-weight:700;border-bottom:1px solid rgba(255,255,255,0.07);}
.proj-hours-table th:first-child {text-align:left;}
.proj-hours-table td {padding:6px 7px;border-bottom:1px solid rgba(255,255,255,0.04);color:rgba(255,255,255,0.75);text-align:center;}
.proj-hours-table td:first-child {text-align:left;white-space:nowrap;}
[data-theme="light"] .proj-hours-table th {border-bottom-color:rgba(120,90,65,0.12);color:rgba(40,25,15,0.5);}
[data-theme="light"] .proj-hours-table td {border-bottom-color:rgba(120,90,65,0.06);color:rgba(40,25,15,0.75);}
.proj-nom {font-weight:500;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.proj-prog {max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.proj-badge {display:inline-block;padding:2px 8px;border-radius:20px;font-family:'Josefin Sans',sans-serif;font-size:10px;letter-spacing:0.5px;font-weight:600;}
.proj-resp {display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:8px;background:rgba(var(--orange-rgb),0.2);border:1px solid rgba(var(--orange-rgb),0.4);font-family:'Josefin Sans',sans-serif;font-size:11px;font-weight:700;color:var(--orange);}
.proj-amount {font-size:12px;font-weight:500;white-space:nowrap;}
.proj-actions {display:flex;gap:6px;align-items:center;}
.proj-btn-edit {background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.1);border-radius:6px;color:rgba(255,255,255,0.5);cursor:pointer;padding:5px;line-height:0;transition:all 0.15s;}
.proj-btn-edit:hover {background:rgba(255,255,255,0.12);color:rgba(255,255,255,0.9);}
[data-theme="light"] .proj-btn-edit {background:rgba(0,0,0,0.04);border-color:rgba(0,0,0,0.1);color:rgba(40,25,15,0.5);}
[data-theme="light"] .proj-btn-edit:hover {background:rgba(0,0,0,0.08);color:rgba(40,25,15,0.9);}
.proj-btn-del {background:rgba(244,70,52,0.08);border:1px solid rgba(244,70,52,0.2);border-radius:6px;color:rgba(244,80,52,0.7);cursor:pointer;padding:5px;line-height:0;transition:all 0.15s;}
.proj-btn-del:hover {background:rgba(244,70,52,0.2);color:rgb(244,80,52);}
/* Modal */
.proj-modal-bg {display:none;position:fixed;inset:0;background:rgba(0,0,0,0.78);z-index:2000;align-items:center;justify-content:center;}
.proj-modal-bg.open {display:flex;}
.proj-modal {background:rgba(255,255,255,0.07);backdrop-filter:blur(40px) saturate(180%);-webkit-backdrop-filter:blur(40px) saturate(180%);border:1px solid rgba(255,255,255,0.18);box-shadow:0 8px 32px rgba(0,0,0,0.5),inset 0 1px 0 rgba(255,255,255,0.12);border-radius:18px;padding:28px;width:min(680px,96vw);max-height:90vh;overflow-y:auto;}
[data-theme="light"] .proj-modal {background:rgba(255,248,242,0.75);border-color:rgba(0,0,0,0.1);box-shadow:0 8px 32px rgba(0,0,0,0.15),inset 0 1px 0 rgba(255,255,255,0.8);color:rgba(40,25,15,0.85);}
.proj-modal-title {font-family:'Josefin Sans',sans-serif;font-size:18px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:rgba(255,255,255,0.9);margin-bottom:20px;line-height:1.5;}
[data-theme="light"] .proj-modal-title {color:rgba(30,20,10,0.9);}
.proj-form-grid {display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.proj-form-grid .full {grid-column:1/-1;}
.proj-field label {display:block;font-family:'Josefin Sans',sans-serif;font-size:10px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:rgba(255,255,255,0.55);margin-bottom:5px;}
[data-theme="light"] .proj-field label {color:rgba(40,25,15,0.75);}
.proj-field input,.proj-field select {width:100%;background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.1);border-radius:7px;color:rgba(255,255,255,0.85);font-family:'Josefin Sans',sans-serif;font-size:13px;padding:0 10px;height:32px;outline:none;transition:border-color 0.2s;box-sizing:border-box;}
.proj-field textarea {width:100%;background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.1);border-radius:7px;color:rgba(255,255,255,0.85);font-family:'Josefin Sans',sans-serif;font-size:13px;padding:8px 10px;outline:none;transition:border-color 0.2s;box-sizing:border-box;resize:vertical;}
.proj-field input:focus,.proj-field select:focus,.proj-field textarea:focus {border-color:var(--orange);}
.proj-field input[type=date] {color-scheme:dark;}
.proj-field input[type=date]::-webkit-datetime-edit,.proj-field input[type=date]::-webkit-datetime-edit-fields-wrapper,.proj-field input[type=date]::-webkit-datetime-edit-day-field,.proj-field input[type=date]::-webkit-datetime-edit-month-field,.proj-field input[type=date]::-webkit-datetime-edit-year-field,.proj-field input[type=date]::-webkit-datetime-edit-text {color:rgba(255,255,255,0.85)!important;}
[data-theme="light"] .proj-field input,[data-theme="light"] .proj-field select {background:rgba(255,255,255,0.6);border-color:rgba(0,0,0,0.12);color:rgba(30,20,10,0.9);}
[data-theme="light"] .proj-field input[type=date] {color-scheme:light;}
[data-theme="light"] .proj-field input[type=date]::-webkit-datetime-edit,[data-theme="light"] .proj-field input[type=date]::-webkit-datetime-edit-fields-wrapper,[data-theme="light"] .proj-field input[type=date]::-webkit-datetime-edit-day-field,[data-theme="light"] .proj-field input[type=date]::-webkit-datetime-edit-month-field,[data-theme="light"] .proj-field input[type=date]::-webkit-datetime-edit-year-field,[data-theme="light"] .proj-field input[type=date]::-webkit-datetime-edit-text {color:rgba(40,25,15,0.9)!important;}
[data-theme="light"] .proj-field textarea {background:rgba(255,255,255,0.6);border-color:rgba(0,0,0,0.12);color:rgba(30,20,10,0.9);}
.proj-modal-footer {display:flex;gap:10px;justify-content:flex-end;margin-top:20px;}
/* Import preview */
.import-preview {max-height:300px;overflow:auto;margin:16px 0;border-radius:8px;border:1px solid rgba(255,255,255,0.1);}
[data-theme="light"] .import-preview {border-color:rgba(0,0,0,0.08);}
/* Josefin Sans uppercase centering fix for small buttons */
.josefin-btn {display:inline-flex;align-items:center;gap:5px;font-family:'Josefin Sans',sans-serif;font-size:10px;font-weight:700;letter-spacing:1px;text-transform:uppercase;padding:11px 22px 9px;border-radius:8px;cursor:pointer;flex-shrink:0;transition:all .15s;}
.josefin-btn svg {flex-shrink:0;margin-bottom:1px;}
/* ── CROSS-BROWSER DASHED BORDERS — dashboard rappels ── */
#dash-reminders .proj-acc-item {border:none!important;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25'%3e%3crect x='0.75' y='0.75' width='calc(100%25 - 1.5px)' height='calc(100%25 - 1.5px)' fill='none' rx='11.25' ry='11.25' stroke='%23ffffff' stroke-opacity='.18' stroke-width='1.5' stroke-dasharray='5 3.5' stroke-linecap='round'/%3e%3c/svg%3e")!important;background-size:100% 100%!important;background-repeat:no-repeat!important;background-position:0 0!important;}
[data-theme="light"] #dash-reminders .proj-acc-item {border:none!important;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25'%3e%3crect x='0.75' y='0.75' width='calc(100%25 - 1.5px)' height='calc(100%25 - 1.5px)' fill='none' rx='11.25' ry='11.25' stroke='%23785a41' stroke-opacity='.45' stroke-width='1.5' stroke-dasharray='5 3.5' stroke-linecap='round'/%3e%3c/svg%3e")!important;background-color:rgba(255,248,242,0.45)!important;}
/* GPU tile caching — site-wide anti-flicker (own compositing layer per card/accordion) */
.main .proj-acc-wrap {transform:translateZ(0);}
.main .adash-card {transform:translateZ(0);}
.main .proj-acc-item {transform:translateZ(0);}
.main .stat {transform:translateZ(0);}
#page-profil .window-swatch,#page-profil .color-swatch,#page-profil .tint-swatch,#page-profil .fontsize-swatch {transform:translateZ(0);}
/* ── CROSS-BROWSER DASHED BORDER — sujet drop zone ── */
.reu-sujet-dz {border:none!important;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25'%3e%3crect x='1' y='1' width='calc(100%25 - 2px)' height='calc(100%25 - 2px)' fill='none' rx='13' ry='13' stroke='%23ffffff' stroke-opacity='.22' stroke-width='2' stroke-dasharray='6 4' stroke-linecap='round'/%3e%3c/svg%3e")!important;background-size:100% 100%!important;background-repeat:no-repeat!important;background-position:0 0!important;}
[data-theme="light"] .reu-sujet-dz {background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25'%3e%3crect x='1' y='1' width='calc(100%25 - 2px)' height='calc(100%25 - 2px)' fill='none' rx='13' ry='13' stroke='%23785a41' stroke-opacity='.35' stroke-width='2' stroke-dasharray='6 4' stroke-linecap='round'/%3e%3c/svg%3e")!important;}
/* Projets admin accordion — SVG dashed border (prevents Chrome rasterization flicker) */
#projets-content .proj-acc-item {border:none!important;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25'%3e%3crect x='0.75' y='0.75' width='calc(100%25 - 1.5px)' height='calc(100%25 - 1.5px)' fill='none' rx='11.25' ry='11.25' stroke='%23ffffff' stroke-opacity='.18' stroke-width='1.5' stroke-dasharray='5 3.5' stroke-linecap='round'/%3e%3c/svg%3e")!important;background-size:100% 100%!important;background-repeat:no-repeat!important;background-position:0 0!important;}
[data-theme="light"] #projets-content .proj-acc-item {border:none!important;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25'%3e%3crect x='0.75' y='0.75' width='calc(100%25 - 1.5px)' height='calc(100%25 - 1.5px)' fill='none' rx='11.25' ry='11.25' stroke='%23785a41' stroke-opacity='.45' stroke-width='1.5' stroke-dasharray='5 3.5' stroke-linecap='round'/%3e%3c/svg%3e")!important;background-color:rgba(255,248,242,0.45)!important;}
[data-theme="light"] #mesprojets-content .proj-acc-item {border:none!important;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25'%3e%3crect x='0.75' y='0.75' width='calc(100%25 - 1.5px)' height='calc(100%25 - 1.5px)' fill='none' rx='11.25' ry='11.25' stroke='%23785a41' stroke-opacity='.45' stroke-width='1.5' stroke-dasharray='5 3.5' stroke-linecap='round'/%3e%3c/svg%3e")!important;background-color:rgba(255,248,242,0.45)!important;}
/* Gestion des dépenses : pas de couche GPU (évite le décalage avec le zoom de police) */
#depenses-content .proj-acc-item,#depenses-content .proj-acc-wrap {transform:none!important;}
/* Empêche le débordement de la grille de détail (colonnes 1fr qui ne rétrécissent pas) */
#depenses-content .proj-acc-grid {grid-template-columns:repeat(4,minmax(0,1fr))!important;}
#depenses-content .proj-acc-f {min-width:0;}
#depenses-content .proj-acc-inp {min-width:0;max-width:100%;}
#depenses-content .proj-acc-inner {min-width:0;overflow:hidden;}
/* Gestion des dépenses proj-acc-item — SVG dashed border */
#depenses-content .proj-acc-item {border:none!important;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25'%3e%3crect x='0.75' y='0.75' width='calc(100%25 - 1.5px)' height='calc(100%25 - 1.5px)' fill='none' rx='11.25' ry='11.25' stroke='%23ffffff' stroke-opacity='.18' stroke-width='1.5' stroke-dasharray='5 3.5' stroke-linecap='round'/%3e%3c/svg%3e")!important;background-size:100% 100%!important;background-repeat:no-repeat!important;background-position:0 0!important;}
[data-theme="light"] #depenses-content .proj-acc-item {border:none!important;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25'%3e%3crect x='0.75' y='0.75' width='calc(100%25 - 1.5px)' height='calc(100%25 - 1.5px)' fill='none' rx='11.25' ry='11.25' stroke='%23785a41' stroke-opacity='.45' stroke-width='1.5' stroke-dasharray='5 3.5' stroke-linecap='round'/%3e%3c/svg%3e")!important;background-color:rgba(255,248,242,0.45)!important;}
/* Profile page proj-acc-item — SVG dashed border (Safari-safe) */
#page-profil .proj-acc-item {border:none!important;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25'%3e%3crect x='0.75' y='0.75' width='calc(100%25 - 1.5px)' height='calc(100%25 - 1.5px)' fill='none' rx='11.25' ry='11.25' stroke='%23ffffff' stroke-opacity='.18' stroke-width='1.5' stroke-dasharray='5 3.5' stroke-linecap='round'/%3e%3c/svg%3e")!important;background-size:100% 100%!important;background-repeat:no-repeat!important;background-position:0 0!important;}
[data-theme="light"] #page-profil .proj-acc-item {border:none!important;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25'%3e%3crect x='0.75' y='0.75' width='calc(100%25 - 1.5px)' height='calc(100%25 - 1.5px)' fill='none' rx='11.25' ry='11.25' stroke='%23785a41' stroke-opacity='.45' stroke-width='1.5' stroke-dasharray='5 3.5' stroke-linecap='round'/%3e%3c/svg%3e")!important;background-color:rgba(255,248,242,0.45)!important;}
/* MOBILE BLOCK */
#mobile-block {display:none;position:fixed;top:0;left:0;right:0;bottom:0;z-index:99999;align-items:center;justify-content:center;touch-action:none;background:linear-gradient(180deg,#000000 0%,#0d0818 40%,#2c2839 100%);}
#mobile-block.show {display:flex;}
@media (hover:none) and (pointer:coarse) {
  #mobile-block {display:flex;}
}
.mobile-card {position:relative;z-index:1;width:min(88vw,360px);padding:44px 36px 40px;border-radius:24px;background:rgba(255,255,255,0.12);border:1px solid rgba(255,255,255,0.18);backdrop-filter:blur(40px) saturate(160%);-webkit-backdrop-filter:blur(40px) saturate(160%);box-shadow:0 8px 32px rgba(0,0,0,0.3),inset 0 1px 0 rgba(255,255,255,0.15);text-align:center;}
.mobile-logo-svg {width:min(62vw,240px);height:auto;margin:0 auto 28px;display:block;}
.mobile-divider {width:32px;height:2px;background:var(--orange);margin:0 auto 20px;border-radius:2px;}
.mobile-title {font-family:'Josefin Sans',sans-serif;font-size:17px;font-weight:600;letter-spacing:2.5px;text-transform:uppercase;color:rgba(255,255,255,0.9);margin-bottom:14px;}
.mobile-msg {font-family:'Josefin Sans',sans-serif;font-size:17px;font-weight:400;letter-spacing:0.3px;line-height:1.75;color:rgba(255,255,255,0.7);margin-bottom:24px;}
.mobile-msg strong {color:rgba(255,255,255,0.95);font-weight:600;}
.mobile-footer {font-family:'Josefin Sans',sans-serif;font-size:12px;letter-spacing:2.5px;text-transform:uppercase;color:rgba(255,255,255,0.5);}
$ {css}
$ {css}
$ {css}
.proj-report-groups {display:block}
@media (min-width:640px) {
  .proj-report-groups {display:grid;grid-template-columns:1fr 1fr;gap:0 28px}
}
.st0,.st1 {fill:#231f20}
.st1 {fill-rule:evenodd}
