@font-face{font-family:Garet;font-weight:400;font-style:normal;src:url(Garet-Book.woff2) format("woff2");font-display:swap}
@font-face{font-family:Garet;font-weight:400;font-style:italic;src:url(Garet-Book-Italic.woff2) format("woff2");font-display:swap}
@font-face{font-family:Garet;font-weight:800;font-style:normal;src:url(Garet-Heavy.woff2) format("woff2");font-display:swap}
@font-face{font-family:Garet;font-weight:800;font-style:italic;src:url(Garet-Heavy-Italic.woff2) format("woff2");font-display:swap}
:root{
  --bg:#FAF7F4; --surface:#FFFFFF; --surface-2:#F7F2EE; --border:#E9E1DC;
  --text:#333333; --text-muted:#6F6A68; --text-faint:#938B86;
  --orange:#FA5528; --orange-deep:#E9471E; --magenta:#BE006E; --magenta-deep:#96004F;
  --orange-tint:#FFF0EB; --magenta-tint:#FFF0F8;
  --ok:#1B8F5A; --ok-tint:#E1F3EA; --warn:#B98400; --warn-tint:#FBF0D6; --wait:#6F6A68; --wait-tint:#F1F1F1;
  --shadow-card:0 20px 60px rgba(51,51,51,0.08);
  --shadow-soft:0 8px 30px rgba(51,51,51,0.06);
  --shadow-orange:0 14px 30px rgba(250,85,40,0.28);
  --muted:var(--text-muted); --accent:var(--orange);
}
body{font-family:Garet,Arial,"Helvetica Neue",sans-serif;}
input,select,textarea,button{font-family:inherit;}

/* ---- Background like Translation Agent ---- */
body{
  background:
    radial-gradient(circle at 94% 16%, rgba(190,0,110,0.13), transparent 34%),
    radial-gradient(circle at 12% 100%, rgba(250,85,40,0.13), transparent 35%),
    linear-gradient(135deg, #fffdfc 0%, #faf6f2 44%, #fff6f9 100%) !important;
  background-attachment:fixed !important; min-height:100vh;
  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
}

/* ---- App shell (shell.js) ---- */
body.has-shell{padding-left:272px;}
.shell-sidebar{position:fixed;left:0;top:0;bottom:0;width:272px;padding:28px 20px;background:rgba(255,255,255,0.55);border-right:1px solid var(--border);backdrop-filter:blur(8px);z-index:20;overflow-y:auto;}
.shell-brand{display:flex;align-items:center;gap:12px;margin:0 0 36px 8px;text-decoration:none;color:var(--text);}
.shell-dot{width:36px;height:36px;border-radius:50%;flex:none;background:linear-gradient(180deg,transparent 0 49%,rgba(51,51,51,0.18) 50% 51%,transparent 52%),linear-gradient(90deg,#FA5528 0 50%,#BE006E 50% 100%);box-shadow:0 8px 20px rgba(190,0,110,0.18);}
.shell-brand b{display:block;font-weight:800;font-size:19px;letter-spacing:-0.02em;line-height:1;}
.shell-brand small{display:block;margin-top:5px;font-size:12px;color:var(--text-muted);}
.shell-section{font-size:11px;font-weight:800;letter-spacing:0.18em;color:var(--text-faint);margin:0 0 12px 12px;}
.shell-nav{display:flex;flex-direction:column;gap:6px;}
.shell-nav a{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:16px;color:var(--text-muted);text-decoration:none;font-size:17px;transition:background .15s,color .15s;}
.shell-nav a:hover{background:rgba(255,255,255,0.9);color:var(--text);}
.shell-nav a.active{background:#333;color:#fff;box-shadow:0 16px 34px rgba(51,51,51,0.18);}
.shell-actions{position:fixed;top:20px;right:24px;display:flex;align-items:center;gap:10px;z-index:30;}
.shell-lang{display:flex;gap:2px;padding:4px;background:#fff;border:1px solid var(--border);border-radius:999px;box-shadow:var(--shadow-soft);}
.shell-lang button{border:none;background:none;border-radius:999px;padding:8px 14px;font-size:14px;font-weight:800;color:var(--text-faint);cursor:pointer;}
.shell-lang button[aria-pressed=true]{background:#333;color:#fff;}
.shell-logout{display:flex;align-items:center;gap:8px;padding:11px 20px;background:rgba(255,255,255,0.9);border:1px solid var(--border);border-radius:999px;box-shadow:var(--shadow-soft);color:var(--text-muted);text-decoration:none;font-size:15px;}
.shell-logout:hover{color:var(--text);}

/* old topbar bits replaced by the shell */
.has-shell .brand,.has-shell .topbar-sub,.has-shell #comptesLink,.has-shell #serverLink,.has-shell #deconnexionLink,.has-shell #langSelect,.has-shell #livePillText{display:none !important;}
.has-shell .topbar{background:transparent !important;border-bottom:none !important;height:84px !important;padding:0 340px 0 32px !important;position:static !important;justify-content:flex-end;}
.has-shell .live-pill,.has-shell .count-pill{background:#fff;border:1px solid var(--border);border-radius:999px;padding:9px 16px;box-shadow:var(--shadow-soft);font-size:14px;}
.has-shell #uploadToggle{background:linear-gradient(135deg,#FA5528,#BE006E);color:#fff;border:none;box-shadow:var(--shadow-orange);font-weight:800;padding:11px 20px;}
.has-shell .card,.has-shell table,.has-shell form{border-radius:18px;box-shadow:var(--shadow-soft);}

@media (max-width:900px){
  body.has-shell{padding-left:0;}
  .shell-sidebar{position:static;width:auto;border-right:none;border-bottom:1px solid var(--border);padding:16px;}
  .shell-nav{flex-direction:row;flex-wrap:wrap;}
  .shell-actions{position:static;justify-content:flex-end;padding:12px 16px 0;}
  .has-shell .topbar{padding:0 16px !important;}
}

/* ---- Revue (vertical) tags: oval chips, one colour per revue ---- */
.tag{border-radius:999px !important;padding:5px 13px !important;font-weight:600 !important;}
.tag.vertical{background:var(--magenta-tint);color:var(--magenta-deep);}
.tag.vertical[data-v="Budget & Droits"]{background:#F6E4F0;color:#96004F;}
.tag.vertical[data-v="Test-Achats"]{background:#FFE7DE;color:#C23A14;}
.tag.vertical[data-v="Test-Sante"]{background:#DDF3E8;color:#13704A;}
.tag.vertical[data-v="Test-Connect"]{background:#DFEBFB;color:#1F55A4;}
.tag.canal{border-radius:999px !important;}
.tag{display:inline-block;font-size:14px;}
.tag.canal{background:var(--orange-tint);color:var(--orange-deep);}

/* ---- Custom dropdowns (shell.js enhanceSelects), like Translation Agent ---- */
.dd{position:relative;width:100%;}
.dd-native{position:absolute !important;left:0;bottom:0;width:1px !important;height:1px !important;padding:0 !important;border:0 !important;opacity:0;pointer-events:none;}
.dd-btn{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;background:#fff;border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow-soft);font-size:16px;font-weight:800;color:var(--text);cursor:pointer;text-align:left;}
.dd-btn:hover{border-color:#DDD2CB;}
.dd-btn:focus-visible{outline:2px solid var(--orange);outline-offset:2px;}
.dd-btn svg{flex:none;color:var(--text-muted);transition:transform .15s;}
.dd.open .dd-btn svg{transform:rotate(180deg);}
.dd-list{display:none;position:absolute;left:0;right:0;top:calc(100% + 8px);background:#fff;border:1px solid var(--border);border-radius:20px;box-shadow:var(--shadow-card);padding:8px;max-height:300px;overflow-y:auto;z-index:80;}
.dd.open .dd-list{display:block;}
.dd-opt{padding:12px 14px;border-radius:12px;font-size:16px;font-weight:800;color:var(--text);cursor:pointer;}
.dd-opt:hover{background:var(--bg);}
.dd-opt.sel{background:var(--orange-tint);color:var(--orange-deep);}
.has-shell .upload-panel{top:96px !important;width:min(580px,calc(100vw - 320px)) !important;border-radius:24px !important;box-shadow:var(--shadow-card) !important;padding:24px !important;}
.has-shell .upload-panel input:not([type=file]){border-radius:14px !important;padding:12px 14px !important;background:#fff !important;}
.has-shell .upload-panel form{box-shadow:none !important;border:none !important;background:none !important;padding:0 !important;border-radius:0 !important;}
.upload-panel button[type=submit]{background:linear-gradient(135deg,#FA5528,#BE006E) !important;color:#fff !important;border:none !important;border-radius:999px !important;padding:12px 26px !important;font-size:16px !important;font-weight:800 !important;box-shadow:var(--shadow-orange);cursor:pointer;}
.upload-panel button[type=button]{border-radius:999px !important;padding:12px 22px !important;font-size:16px !important;background:#fff !important;border:1px solid var(--border) !important;cursor:pointer;}
.dd-label{flex:1;min-width:0;white-space:normal;line-height:1.3;}
.dd-opt{white-space:normal;line-height:1.3;}
