/* LOGIMISSION V3.0.8 — Uniformisation des pages internes.
   Les tableaux de bord exacts (images validées) ne sont PAS modifiés.
   Aucun changement de permission, données, API, action ou structure du formulaire public.
   Chaque rubrique interne reprend son thème en restant lisible et responsive. */
:root[data-theme="clair"]{
 --v308-hl:#5a9b6c;--v308-hl2:#d6eacb;--v308-ink:#243927;
 --v308-surface:#fffdf7;--v308-surface2:#f4f4e9;--v308-txt:#213627;
 --v308-outline:#cbd9c7;--v308-glass:#ffffffeb;--v308-shadow:#224b2820;
 --v308-hero:url('./assets/mairie-facade-originale.jpg');--v308-scenery:none;
 --v308-decor:linear-gradient(120deg,#f7f4e9,#e9eee1);
 --v308-sheen:linear-gradient(105deg,transparent,#fff9,transparent);
}
:root[data-theme="neo"]{
 --v308-hl:#2bd8ff;--v308-hl2:#ad54ff;--v308-ink:#f5faff;
 --v308-surface:linear-gradient(145deg,#13295c 0%,#101d48 57%,#0b193f 100%);--v308-surface2:#162757;--v308-txt:#f0f7ff;
 --v308-outline:#338ce8;--v308-glass:#0d2553dd;--v308-shadow:#138dff48;
 --v308-hero:url('./assets/v308-banner-neo.webp');--v308-scenery:url('./assets/v308-scenery-neo.webp');
 --v308-decor:linear-gradient(125deg,#071739,#102a72 50%,#28105f);
 --v308-sheen:linear-gradient(110deg,transparent 12%,#05c9ff1e 40%,#b847ff14 75%,transparent);
}
:root[data-theme="foret"]{
 --v308-hl:#b0e17d;--v308-hl2:#6ca46d;--v308-ink:#f2fdeb;
 --v308-surface:linear-gradient(145deg,#153c2a 0%,#102c20 65%,#092319 100%);--v308-surface2:#193e2a;--v308-txt:#edf9e7;
 --v308-outline:#4a8554;--v308-glass:#092c1bdf;--v308-shadow:#2e7d3c40;
 --v308-hero:url('./assets/v308-banner-foret.webp');--v308-scenery:url('./assets/v308-scenery-foret.webp');
 --v308-decor:linear-gradient(125deg,#071f13,#0f3c22 54%,#0c2918);
 --v308-sheen:linear-gradient(110deg,transparent,#9ef07613 45%,transparent);
}
:root[data-theme="noel"]{
 --v308-hl:#ffa1a4;--v308-hl2:#d99d5f;--v308-ink:#fff8f4;
 --v308-surface:linear-gradient(155deg,#4d2638 0%,#271f32 59%,#171b30 100%);--v308-surface2:#3e2634;--v308-txt:#fff4ee;
 --v308-outline:#9b5c67;--v308-glass:#2b1926e8;--v308-shadow:#bd51585c;
 --v308-hero:url('./assets/v308-banner-noel.webp');--v308-scenery:url('./assets/v308-scenery-noel.webp');
 --v308-decor:linear-gradient(120deg,#2e1725,#411f33 56%,#171b30);
 --v308-sheen:linear-gradient(115deg,transparent,#ffcca21d 48%,transparent);
}
:root[data-theme="porsche"]{
 --v308-hl:#ff354e;--v308-hl2:#d91b35;--v308-ink:#f8f7f8;
 --v308-surface:linear-gradient(145deg,#222226,#121418 56%,#191218 100%);--v308-surface2:#242327;--v308-txt:#fdf9fa;
 --v308-outline:#c43149;--v308-glass:#111216ed;--v308-shadow:#fa234249;
 --v308-hero:url('./assets/v308-banner-porsche.webp');--v308-scenery:url('./assets/v308-scenery-porsche.webp');
 --v308-decor:linear-gradient(115deg,#0b0c0f,#251016 55%,#101014);
 --v308-sheen:repeating-linear-gradient(135deg,transparent 0,transparent 4px,#fff1 5px,transparent 6px);
}
:root[data-theme="samurai"]{
 --v308-hl:#ff4960;--v308-hl2:#d92449;--v308-ink:#fff7f5;
 --v308-surface:linear-gradient(140deg,#331822,#191422 63%,#160d1c 100%);--v308-surface2:#32202c;--v308-txt:#fff2f5;
 --v308-outline:#ca344b;--v308-glass:#180e1ae9;--v308-shadow:#f01d4f47;
 --v308-hero:url('./assets/v308-banner-samurai.webp');--v308-scenery:url('./assets/v308-scenery-samurai.webp');
 --v308-decor:linear-gradient(110deg,#150c17,#361325 48%,#0e1019);
 --v308-sheen:repeating-linear-gradient(-35deg,transparent 0,transparent 10px,#e5375712 11px,transparent 12px);
}
/* Main page frame, preserving the dashboard screenshot as-is. */
:root[data-theme] .v308-subpage .main{
 position:relative;isolation:isolate;min-width:0;
 background:radial-gradient(ellipse at 91% 8%,var(--v308-shadow),transparent 39%),var(--v308-decor)!important;
}
:root[data-theme] .v308-subpage .main::before{
 content:"";pointer-events:none;position:absolute;inset:0 0 auto 0;height:350px;z-index:-1;
 background:var(--v308-sheen);opacity:.6;
}
/* Large cinematic hero taking imagery directly from the exact reference image. */
:root[data-theme] .v308-subpage .topbar{
 position:relative;isolation:isolate;min-height:132px;display:flex;align-items:center;
 padding:23px 26px!important;margin:0 0 21px!important;gap:15px;
 border:1px solid var(--v308-outline);border-radius:18px;overflow:hidden;
 background:var(--v308-decor);box-shadow:0 12px 29px #0005,0 0 0 1px var(--v308-shadow),inset 0 1px #ffffff1a;
}
:root[data-theme] .v308-subpage .topbar::before{
 content:"";position:absolute;inset:0;pointer-events:none;z-index:0;
 background:linear-gradient(90deg,var(--v308-glass) 0%,var(--v308-glass) 39%,transparent 83%),var(--v308-sheen);
}
:root[data-theme] .v308-subpage .topbar::after{
 content:"";position:absolute;z-index:-1;pointer-events:none;inset:0 0 0 auto;width:66%;
 background-image:var(--v308-hero);background-size:cover;background-position:center 39%;
 -webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 38%,#000 100%);
 mask-image:linear-gradient(90deg,transparent 0%,#000 38%,#000 100%);opacity:.92;
}
:root[data-theme] .v308-subpage .topbar>div{position:relative;z-index:1}
:root[data-theme] .v308-subpage .topbar>div:first-child{max-width:60%;min-width:0}
:root[data-theme] .v308-subpage .topbar .eyebrow{font-size:10px;letter-spacing:1.6px;text-transform:uppercase;color:var(--v308-hl)}
:root[data-theme] .v308-subpage .topbar .heading{font-weight:850;letter-spacing:-1px;font-size:clamp(24px,2.7vw,35px);color:var(--v308-ink);text-shadow:0 2px 10px #0006}
:root[data-theme="clair"] .v308-subpage .topbar .heading{text-shadow:none}
:root[data-theme] .v308-subpage .topbar .subheading{font-size:12px;color:var(--v3-muted);max-width:42em;line-height:1.5;margin-top:5px}
:root[data-theme] .v308-subpage .topbar .top-actions{margin-left:auto;justify-content:flex-end;max-width:45%;flex-wrap:wrap;gap:7px}
:root[data-theme] .v308-subpage .v302-current-date,
:root[data-theme] .v308-subpage .role-pill,
:root[data-theme] .v308-subpage .top-actions .ghost{
 background:var(--v308-glass)!important;color:var(--v308-txt)!important;border:1px solid var(--v308-outline)!important;
 border-radius:999px;box-shadow:0 3px 14px #0003;min-height:34px;
}
/* Cards and sections share the same identity as the matching dashboard. */
:root[data-theme] .v308-subpage .main .card,
:root[data-theme] .v308-subpage .main .timeline-card{
 position:relative;background:var(--v308-surface)!important;border:1px solid var(--v308-outline)!important;
 border-radius:15px!important;box-shadow:0 7px 24px #0004,0 0 0 1px var(--v308-shadow),inset 0 1px #ffffff18;
 min-width:0;
}
:root[data-theme] .v308-subpage .main .card.pad{padding:20px 22px!important}
:root[data-theme] .v308-subpage .main .card-head{display:flex;gap:12px;border-bottom:1px solid var(--v308-outline);padding-bottom:13px;margin-bottom:15px;min-width:0;flex-wrap:wrap}
:root[data-theme] .v308-subpage .main .card-title,
:root[data-theme] .v308-subpage .main h2{color:var(--v308-txt);font-weight:820;letter-spacing:-.3px}
:root[data-theme] .v308-subpage .main .card-title{font-size:18px}
:root[data-theme] .v308-subpage .main .card-head::before{
 content:"";height:19px;width:4px;border-radius:99px;background:var(--v308-hl);box-shadow:0 0 13px var(--v308-shadow);flex:0 0 4px;
}
:root[data-theme] .v308-subpage .main .page-stack{gap:19px}
:root[data-theme] .v308-subpage .main .card:hover{border-color:var(--v308-hl)!important}
:root[data-theme] .v308-subpage .main .metric{min-height:112px}
:root[data-theme] .v308-subpage .main .metric-icon{border:1px solid var(--v308-outline);background:var(--v308-surface2)}
:root[data-theme] .v308-subpage .main .metric-value{color:var(--v308-txt)}
:root[data-theme] .v308-subpage .main .metric-label{color:var(--v3-muted);font-weight:700}
/* Reusable buttons, tables, filters, forms, directory cards, modal surfaces. */
:root[data-theme] .v308-subpage .main .btn:not(.danger):not(.slate),
:root[data-theme] .v308-subpage .main .table-action:not(.danger-action){
 border:1px solid var(--v308-outline);border-radius:10px;
 box-shadow:inset 0 1px #ffffff23,0 3px 13px #0002;
 transition:filter .16s,transform .16s,box-shadow .16s;
}
:root[data-theme] .v308-subpage .main .btn:not(.secondary):not(.slate):not(.danger),
:root[data-theme] .v308-subpage .main .btn:not(.secondary):not(.slate):not(.danger):hover{
 background:linear-gradient(125deg,var(--v3-primary),var(--v3-nav));color:var(--v3-primaryText);
}
:root[data-theme] .v308-subpage .main button:hover:not(:disabled){filter:brightness(1.15)}
:root[data-theme] .v308-subpage .main button:active:not(:disabled){transform:translateY(1px)}
:root[data-theme] .v308-subpage .main :is(.field,input:not([type="checkbox"]),textarea,select){
 background:var(--v308-surface2);border:1px solid var(--v308-outline);color:var(--v308-txt);border-radius:10px;
}
:root[data-theme] .v308-subpage :is(.field,input,textarea,select):focus-visible{outline:2px solid var(--v308-hl);outline-offset:2px}
:root[data-theme] .v308-subpage .main .table-wrap{border:1px solid var(--v308-outline);border-radius:13px;overflow-x:auto;max-width:100%;background:var(--v308-glass)}
:root[data-theme] .v308-subpage .main .table{width:100%;border-collapse:separate;border-spacing:0;min-width:500px}
:root[data-theme] .v308-subpage .main .table thead th{background:var(--v308-surface2);color:var(--v308-txt);font-size:11px;letter-spacing:.5px;text-transform:uppercase;font-weight:770;border-bottom:2px solid var(--v308-outline);padding:14px 11px}
:root[data-theme] .v308-subpage .main .table tbody tr{background:transparent}
:root[data-theme] .v308-subpage .main .table tbody tr:nth-child(even){background:#ffffff06}
:root[data-theme="clair"] .v308-subpage .main .table tbody tr:nth-child(even){background:#10240907}
:root[data-theme] .v308-subpage .main .table td{border-bottom:1px solid var(--v308-outline);padding:12px 11px;color:var(--v308-txt);font-size:12px}
:root[data-theme] .v308-subpage .main .table tbody tr:hover{background:var(--v308-shadow)}
:root[data-theme] .v308-subpage .main .list-item{border-bottom:1px solid var(--v308-outline);padding:14px 4px}
:root[data-theme] .v308-subpage .main .notice:not(.demo),
:root[data-theme] .v308-subpage .main .empty:not(.alert){background:var(--v308-surface2);border:1px solid var(--v308-outline);border-radius:11px;color:var(--v308-txt);padding:13px}
:root[data-theme] .v308-subpage .main .notice.demo{border:1px solid var(--v308-outline);border-radius:11px}
:root[data-theme] .v308-subpage .main .v25-ranking{border:1px solid var(--v308-outline);border-radius:13px;background:var(--v308-surface);box-shadow:0 6px 17px var(--v308-shadow)}
:root[data-theme] .v308-subpage .main .ticket-list{gap:10px}
:root[data-theme] .v308-subpage .main .ticket{background:var(--v308-surface2)!important;border:1px solid var(--v308-outline);border-left:4px solid var(--v308-hl);border-radius:11px!important;padding:13px;box-shadow:0 4px 10px #0001;color:var(--v308-txt)}
:root[data-theme] .v308-subpage .main .ticket .ticket-name{color:var(--v308-txt);font-weight:750}
:root[data-theme] .v308-subpage .main .ticket :is(.ticket-desc,.ticket-actors,.ticket-actor-label){color:var(--v3-muted)}
:root[data-theme] .v308-subpage .main .ticket.urgent:not(.v27-ticket-done):not(.v27-ticket-cancelled){border-left:5px solid #ed4855!important;background:linear-gradient(110deg,#611c2b,var(--v308-surface2))!important}
:root[data-theme="clair"] .v308-subpage .main .ticket.urgent:not(.v27-ticket-done):not(.v27-ticket-cancelled){background:#ffe9e9!important}
:root[data-theme] .v308-subpage .main .ticket.v27-ticket-claimed{border-left-color:#eda943!important}
:root[data-theme] .v308-subpage .main .ticket.v27-ticket-done{border-left-color:#98a0ab!important}
:root[data-theme] .v308-subpage .main .ticket.v27-ticket-cancelled{border-left-color:#30a374!important}
:root[data-theme] .v308-subpage .main .ticket.urgent .ticket-code{color:#9d233b;background:#ffdee5}
:root[data-theme] .v308-subpage .main :is(.v30mod-row,.v30mod-chat-list,.v30mod-perm-table td,.v30mod-perm-table th){border-color:var(--v308-outline)}
:root[data-theme] .v308-subpage .main .v30mod-chat-list{background:var(--v308-glass)}
:root[data-theme] .v308-subpage .main .v30mod-msg{border-bottom-color:var(--v308-outline)}
:root[data-theme] .v308-subpage .main .v30mod-plan{border-color:var(--v308-outline);background-color:var(--v308-surface2)}
:root[data-theme] .modal{background:var(--v308-surface,var(--v3-panel));border:1px solid var(--v308-outline,var(--v3-border));box-shadow:0 25px 75px #000a,0 0 22px var(--v308-shadow,#0003)}
/* Sidebar decoration for the two new premium themes, plus cohesive styling for all. */
:root[data-theme] .v308-subpage .sidebar{border-right:1px solid var(--v308-outline)}
:root[data-theme] .v308-subpage .nav-section summary{letter-spacing:.9px;border-bottom:1px solid #ffffff16;font-weight:780}
:root[data-theme] .v308-subpage .nav-btn.active{border:1px solid var(--v308-hl);box-shadow:inset 0 1px #ffffff35,0 0 16px var(--v308-shadow)}
:root[data-theme] .v308-subpage .sidebar::after{
 content:"";position:absolute;display:block;left:0;bottom:110px;width:100%;height:165px;
 background:var(--v308-scenery) left bottom/contain no-repeat;opacity:.80;pointer-events:none;
 -webkit-mask-image:linear-gradient(180deg,transparent,#000 28%,#000);mask-image:linear-gradient(180deg,transparent,#000 28%,#000);
}
:root[data-theme="noel"] .v308-subpage .sidebar::after{height:220px;bottom:0;background:url('./assets/noel-reference-chalet.jpg') center bottom/100% auto no-repeat;opacity:.92}
:root[data-theme="neo"] .v308-subpage .sidebar::after{height:110px;opacity:.9}
:root[data-theme="clair"] .v308-subpage .sidebar::after{display:none}
:root[data-theme="porsche"] .v308-subpage .v3-masthead,
:root[data-theme="samurai"] .v308-subpage .v3-masthead{background:var(--v308-decor)!important;border-bottom:2px solid var(--v308-hl);box-shadow:0 5px 22px var(--v308-shadow)}
:root[data-theme="porsche"] .v308-subpage .v3-mast-photo,
:root[data-theme="samurai"] .v308-subpage .v3-mast-photo{
 background:linear-gradient(90deg,var(--v3-mast,transparent),transparent 22%),var(--v308-hero) center/cover no-repeat!important;
 filter:none!important;opacity:1;
}
:root[data-theme="porsche"] .v308-subpage .v3-mast-brand em,
:root[data-theme="samurai"] .v308-subpage .v3-mast-brand em{background:linear-gradient(110deg,#b70925,#e73a4f);color:#fff}
:root[data-theme="porsche"] .v308-subpage .main .card,
:root[data-theme="samurai"] .v308-subpage .main .card{border-radius:8px!important;clip-path:polygon(0 12px,12px 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%)}
:root[data-theme="porsche"] .v308-subpage .main .btn:not(.danger),
:root[data-theme="samurai"] .v308-subpage .main .btn:not(.danger){border-radius:5px;clip-path:polygon(0 6px,6px 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%)}
:root[data-theme="porsche"] .v308-subpage .sidebar{background:linear-gradient(150deg,#0b0c10,#211117 62%,#0c0c10)!important}
:root[data-theme="samurai"] .v308-subpage .sidebar{background:linear-gradient(150deg,#160c16,#2b0f1c 68%,#130d16)!important}
:root[data-theme="porsche"] .v308-subpage .main .card-head::before{transform:skew(-20deg)}
:root[data-theme="samurai"] .v308-subpage .main .card-head::before{transform:skew(-20deg)}
:root[data-theme="noel"] .v308-subpage .main .card{border-top:3px solid #bd7c86!important}
:root[data-theme="noel"] .v308-subpage .main .card-head::before{content:'❄';height:auto;width:auto;color:#ffe0dd;background:none;box-shadow:none;font-size:17px}
:root[data-theme="foret"] .v308-subpage .main .card-head::before{content:'❧';width:auto;height:auto;color:#c8e995;background:none;font-size:21px;box-shadow:none}
:root[data-theme="neo"] .v308-subpage .main .card{box-shadow:0 0 16px #0770ff49,inset 0 1px #ffffff18,0 7px 28px #0004}
:root[data-theme="foret"] .v308-subpage .main .card{box-shadow:0 0 14px #79b44d26,0 7px 28px #0004}
:root[data-theme="noel"] .v308-subpage .topbar{border-top:3px solid #bf6975}
/* Phone/tablet: maintain legible inputs, tables and existing swipeable bottom navigation. */
@media (max-width:1000px){
 :root[data-theme] .v308-subpage .topbar{min-height:118px;padding:18px!important}
 :root[data-theme] .v308-subpage .topbar .top-actions{max-width:52%}
 :root[data-theme] .v308-subpage .topbar .heading{font-size:26px}
 :root[data-theme] .v308-subpage .topbar::after{width:54%}
}
@media(max-width:760px){
 :root[data-theme] .v308-subpage .main{padding:13px 11px calc(112px + env(safe-area-inset-bottom))!important}
 :root[data-theme] .v308-subpage .topbar{min-height:140px;align-items:flex-start;flex-direction:column;gap:10px;border-radius:14px;padding:16px!important;margin-bottom:14px!important}
 :root[data-theme] .v308-subpage .topbar::after{width:75%;opacity:.45}
 :root[data-theme] .v308-subpage .topbar::before{background:linear-gradient(90deg,var(--v308-glass),#0000 140%)}
 :root[data-theme] .v308-subpage .topbar>div:first-child{max-width:100%}
 :root[data-theme] .v308-subpage .topbar .heading{font-size:23px;line-height:1.18}
 :root[data-theme] .v308-subpage .topbar .subheading{font-size:11px}
 :root[data-theme] .v308-subpage .topbar .top-actions{width:100%;max-width:100%;margin:0;justify-content:flex-start;flex-wrap:wrap}
 :root[data-theme] .v308-subpage .main .card.pad{padding:15px 13px!important}
 :root[data-theme] .v308-subpage .main .card-head{align-items:flex-start;gap:7px}
 :root[data-theme] .v308-subpage .main .card-title{font-size:16px}
 :root[data-theme] .v308-subpage .main .ticket{display:grid;grid-template-columns:minmax(0,1fr)!important;padding:12px!important;gap:11px}
 :root[data-theme] .v308-subpage .main .table{min-width:520px}
 :root[data-theme] .v308-subpage .mobile-bottom-nav{background:var(--v308-glass);border-top:1px solid var(--v308-outline);backdrop-filter:blur(15px)}
 :root[data-theme] .v308-subpage .mobile-bottom-item.active{color:var(--v308-hl);background:var(--v308-shadow);border-color:var(--v308-outline)}
 :root[data-theme] .v308-subpage .main .page-stack{gap:12px}
}
@media(prefers-reduced-motion:reduce){:root[data-theme] .v308-subpage .main button{transition:none}}
