:root{--blue:#08a8e5;--cyan:#09d3d0;--navy:#075c80;--ink:#173b57;--line:#dbe8ef;--bg:#f5f9fb}*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--bg)}a{text-decoration:none;color:inherit}.login{min-height:100vh;background:linear-gradient(120deg,#eefcff,#c8f7f6,#eafcff,#bff8f6);background-size:240% 240%;display:grid;place-items:center;animation:loginBackgroundDrift 16s ease-in-out infinite;position:relative;overflow:hidden}
.login:before,.login:after{content:'';position:fixed;border-radius:50%;pointer-events:none;filter:blur(8px);opacity:.22;animation:loginOrbFloat 18s ease-in-out infinite alternate}
.login:before{width:34vw;height:34vw;min-width:280px;min-height:280px;background:#08a8e5;left:-12vw;top:-16vw}
.login:after{width:30vw;height:30vw;min-width:240px;min-height:240px;background:#09d3d0;right:-10vw;bottom:-15vw;animation-delay:-7s}
.login-card{position:relative;z-index:1}
@keyframes loginBackgroundDrift{0%,100%{background-position:0% 45%}50%{background-position:100% 55%}}
@keyframes loginOrbFloat{0%{transform:translate3d(0,0,0) scale(1)}100%{transform:translate3d(4vw,3vh,0) scale(1.08)}}
@media (prefers-reduced-motion:reduce){.login,.login:before,.login:after{animation:none!important}}.login-card{width:390px;background:white;padding:34px;border-radius:10px;box-shadow:0 12px 40px #08769a2c;text-align:center}.login-brand,.app-brand{font-size:28px;letter-spacing:-1px}.login-brand{color:var(--navy);margin-bottom:28px}.field{margin:14px 0;text-align:left}.field label{display:block;font-weight:700;font-size:13px;margin-bottom:7px}.field input,.field textarea,select,.search{width:100%;padding:12px;border:1px solid #cddde6;border-radius:6px;font:inherit;background:#fff}.field textarea{min-height:110px}.btn{display:inline-block;border:0;border-radius:6px;padding:11px 17px;font-weight:700;cursor:pointer;background:linear-gradient(90deg,var(--blue),var(--cyan));color:#fff}.wide{width:100%}.btn.secondary{background:#fff;color:#087eaf;border:1px solid #b9dceb}.btn.danger{background:#fff;color:#b72828;border:1px solid #efcaca}.error{background:#fff0f0;color:#a11;padding:10px;border-radius:5px}.shell{display:grid;grid-template-columns:240px 1fr;min-height:100vh}.side{position:sticky;top:0;height:100vh;background:linear-gradient(180deg,#064f75,#087f9e);color:#fff;padding:25px 0;display:flex;flex-direction:column}.app-brand{padding:0 25px 25px}.side nav{flex:1}.side a,.side summary{display:block;padding:13px 25px;cursor:pointer;list-style:none}.side summary::-webkit-details-marker{display:none}.side summary:after{content:'›';float:right;transition:.2s}.side details[open]>summary:after{transform:rotate(90deg)}.side a:hover,.side summary:hover{background:#ffffff12}.side .sub{padding-left:45px;font-size:14px;background:#003d5c33}.side-bottom{margin-top:auto}.version{font-size:11px;opacity:.72;padding:14px 25px 0}.topbar{height:68px;background:#fff;border-bottom:1px solid var(--line);display:flex;justify-content:flex-end;align-items:center;padding:0 34px;position:sticky;top:0;z-index:10}.user-menu{position:relative}.user-menu summary{display:flex;align-items:center;gap:9px;cursor:pointer;list-style:none}.user-avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--blue),var(--cyan));color:#fff;font-weight:800}.user-pop{position:absolute;right:0;top:46px;width:210px;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 10px 30px #174b6522;padding:7px}.user-pop a{display:block;padding:10px;border-radius:5px}.user-pop a:hover{background:var(--bg)}.main{padding:28px 36px}.muted{color:#6b8596}.card{background:#fff;border:1px solid #e0ebf0;border-radius:8px;box-shadow:0 4px 16px #174b6512;padding:20px;margin-top:18px}.dash-grid{display:grid;grid-template-columns:280px 1fr;gap:20px;margin-top:28px}.stat-card,.quote-card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:28px;box-shadow:0 6px 22px #174b6510}.stat-card{display:flex;flex-direction:column}.stat-num{font-size:52px;font-weight:800;color:var(--blue)}.eyebrow{font-size:11px;font-weight:800;letter-spacing:1px;color:var(--blue)}blockquote{font-size:22px;margin:20px 0 0}.filters,.toolbar{display:flex;gap:10px;align-items:center}.filters .search{flex:1}.filters select{width:210px}.table{width:100%;border-collapse:collapse}.table th{background:#eef5f8;text-align:left;font-size:13px}.table th,.table td{padding:13px;border-bottom:1px solid #e5eef2}.table tr:hover td{background:#f7fcfd}.tabs{display:flex;gap:6px;border-bottom:1px solid #dbe8ef;margin-bottom:20px;overflow:auto}.tab{padding:12px 14px;border-bottom:3px solid transparent;cursor:pointer;white-space:nowrap}.tab.active{color:#078fc5;border-color:#0abbdc;font-weight:700}.panel{display:none}.panel.active{display:block}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px}.checks,.permission-grid{display:grid;gap:10px}.permission-grid{grid-template-columns:repeat(2,1fr);margin:18px 0}.exp-card{border:1px solid #cfe3ec;border-radius:7px;padding:16px;margin:12px 0;background:#fbfeff}.exp-head{display:flex;justify-content:space-between;align-items:center}.period{display:grid;grid-template-columns:1fr 1fr;gap:12px}.monthyear{display:grid;grid-template-columns:90px 1fr;gap:7px}.profile-head{display:grid;grid-template-columns:1fr 160px;gap:20px}.identity{background:linear-gradient(135deg,#0da5e7,#0bd4cc);color:#062d45;padding:25px;font-size:20px}.avatar{width:150px;height:180px;object-fit:cover}.nav-arrows{display:flex;justify-content:space-between;margin-top:20px}.section-title{background:linear-gradient(90deg,var(--blue),var(--cyan));color:#fff;padding:10px 14px;font-weight:700}.tasks li{margin:8px 0}@media(max-width:850px){.shell{grid-template-columns:1fr}.side{display:none}.main{padding:18px}.grid2,.dash-grid{grid-template-columns:1fr}.filters{flex-wrap:wrap}.filters select{width:100%}}
.top{display:flex;align-items:center;justify-content:space-between;border-top:2px solid var(--cyan);padding-top:18px}

.task-help{font-size:12px;color:#6b8596;margin:0 0 8px}.task-editor{display:grid;gap:7px;margin-bottom:10px}.task-row{display:grid;grid-template-columns:42px 1fr repeat(5,34px);gap:5px;align-items:center}.task-row.level-2{padding-left:28px}.task-symbol{font-weight:700;color:#087eaf;white-space:nowrap}.task-row.level-2 .task-symbol{font-weight:400}.task-row input{width:100%;padding:9px;border:1px solid #cddde6;border-radius:5px;font:inherit}.mini{height:34px;border:1px solid #b9dceb;background:#fff;color:#087eaf;border-radius:5px;cursor:pointer}.mini.on{background:#e4f8fd;border-color:#08a8e5}.danger-mini{color:#b72828;border-color:#efcaca}
.app-brand{height:100px;display:flex;align-items:center;justify-content:center;padding:12px 28px 20px}.app-brand img{display:block;width:150px;max-height:62px;object-fit:contain;opacity:.96}.powered{margin:0 20px;padding:14px 0 4px;border-top:1px solid #ffffff35;display:flex;align-items:center;gap:7px;font-size:10px;font-style:italic;color:#d8f4fb;white-space:nowrap}.powered img{width:92px;height:40px;object-fit:contain;opacity:.82;filter:drop-shadow(0 0 4px #ffffff18)}.version{padding-top:5px}.experience-tasks-input{min-height:220px!important;line-height:1.45}.table td a{white-space:nowrap}
/* 0.3.2-build008 — complete employee consultation */
.detail-hero{display:flex;align-items:center;gap:24px}.detail-avatar{width:105px;height:125px;object-fit:cover;border-radius:8px;border:1px solid var(--line)}.detail-trigram{font-size:13px;font-weight:800;letter-spacing:1.5px;color:var(--blue)}.detail-hero h2{margin:5px 0}.detail-job{font-size:18px;font-weight:700;margin-bottom:5px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.detail-section{padding:0;overflow:hidden}.detail-body{padding:18px 20px;line-height:1.5}.detail-body h3{font-size:14px;margin:0 0 7px}.detail-body h3:not(:first-child){margin-top:18px}.pre{white-space:pre-line}.detail-bullets{margin:0;padding-left:22px}.kv-view{display:grid;gap:8px}.soft-view{display:grid;grid-template-columns:1fr 1fr;gap:8px 18px}.experience-view{padding:4px 0 20px;border-bottom:1px solid var(--line);margin-bottom:18px}.experience-view:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}.experience-view-head{display:flex;justify-content:space-between;gap:20px;align-items:baseline}.experience-view-head h3{font-size:17px;margin:0}.period-view{font-weight:700;color:#607e91;white-space:nowrap}.role-view{font-weight:700;color:#087eaf;margin:4px 0 10px}.experience-view-tasks{list-style:none;margin:0;padding:0}.experience-view-tasks li{position:relative;padding-left:20px;margin:6px 0}.experience-view-tasks li:before{position:absolute;left:0;color:#087eaf}.experience-view-tasks .level1:before{content:'◆';font-size:10px;top:3px}.experience-view-tasks .level2{margin-left:24px}.experience-view-tasks .level2:before{content:'○';top:0}.toolbar{flex-wrap:wrap}@media(max-width:850px){.detail-grid{grid-template-columns:1fr}.detail-hero{align-items:flex-start}.soft-view{grid-template-columns:1fr}.experience-view-head{display:block}.period-view{display:block;margin-top:4px}}

.inline-form{display:inline}.link-button{border:0;background:none;padding:0;color:inherit;font:inherit;cursor:pointer}.link-button:hover{text-decoration:underline}.danger-link{color:#b72828}.actions{white-space:nowrap}

/* build009 */
.app-brand img{transform:translateX(-7px)}
.avatar-field{grid-column:1/-1}.avatar-picker{display:flex;gap:14px;flex-wrap:wrap;margin:8px 0 14px}.avatar-option{width:118px;border:2px solid #d7e7ee;border-radius:10px;padding:8px;display:flex!important;flex-direction:column;align-items:center;gap:6px;cursor:pointer;background:#fff;font-size:12px}.avatar-option input{width:auto!important;margin:0}.avatar-option:has(input:checked){border-color:var(--blue);box-shadow:0 0 0 2px #08a8e522}.avatar-option img,.upload-tile{width:86px;height:100px;object-fit:contain;border-radius:7px}.upload-tile{display:grid;place-items:center;background:#f1f6f8;color:var(--blue);font-size:38px;border:1px dashed #b9dceb}.custom-avatar{justify-content:flex-start}

/* 0.4.1-build010 — polished avatar selector */
.avatar-heading{margin-bottom:14px}.avatar-heading>label{font-size:18px!important;margin-bottom:5px!important}.avatar-picker{display:grid;grid-template-columns:repeat(4,minmax(170px,1fr));gap:18px;margin:0}.avatar-option{position:relative;width:auto;min-height:270px;border:1px solid #cfdee6;border-radius:12px;padding:42px 16px 16px;display:flex!important;flex-direction:column;align-items:center;justify-content:flex-start;gap:8px;background:#fff;cursor:pointer;box-shadow:0 1px 2px #173b5708;transition:border-color .15s,box-shadow .15s,background .15s}.avatar-option>input[type=radio]{position:absolute;opacity:0;pointer-events:none}.avatar-radio{position:absolute;right:16px;top:16px;width:23px;height:23px;border:2px solid #8296a4;border-radius:50%;background:#fff}.avatar-option:has(input[type=radio]:checked){border:2px solid var(--blue);padding:41px 15px 15px;box-shadow:0 0 0 3px #08a8e516;background:linear-gradient(180deg,#fbfeff,#f5fcff)}.avatar-option:has(input[type=radio]:checked) .avatar-radio{border-color:#087cff;box-shadow:inset 0 0 0 4px #fff;background:#087cff}.avatar-option img{width:150px;height:175px;object-fit:contain;border-radius:9px}.avatar-option strong{font-size:18px;color:var(--ink)}.avatar-option small{font-size:13px;font-weight:400;color:#6b7f91}.avatar-upload-option{overflow:hidden}.upload-zone{width:100%;height:100%;min-height:205px;border:1px dashed #b7cbd7;border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;padding:18px;text-align:center}.upload-cloud{font-size:48px;line-height:1;color:#607c94;transform:scaleX(1.2)}.upload-button{margin-top:10px;width:100%;padding:11px 10px;border:1px solid #b7cbd7;border-radius:7px;color:#087cff;font-weight:700;background:#fff}.photo-input{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;opacity:0;cursor:pointer;padding:0!important}.avatar-upload-option .avatar-radio{z-index:2}.avatar-upload-option:has(input[type=radio]:checked) .upload-zone{border-color:#8ccfe9}@media(max-width:1200px){.avatar-picker{grid-template-columns:repeat(2,minmax(180px,1fr))}}@media(max-width:700px){.avatar-picker{grid-template-columns:1fr}}

/* 0.4.1-build011 — sidebar alignment fix */
.side{padding-top:0}.app-brand{height:126px;width:100%;padding:24px 0 18px;display:flex;align-items:center;justify-content:center}.app-brand img{width:150px;max-height:66px;object-fit:contain;transform:none!important;margin:0 auto}.side-nav{width:100%}.side-nav .nav-row{height:58px;padding:0 18px;display:grid;grid-template-columns:30px minmax(0,1fr) 20px;column-gap:10px;align-items:center;font-weight:700}.side-nav a.nav-row{grid-template-columns:30px minmax(0,1fr) 20px}.nav-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center}.nav-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.nav-label{display:block;line-height:1.2}.nav-chevron{grid-column:3;justify-self:center;font-size:27px;line-height:1;transition:transform .2s}.side-nav summary:after{content:none!important}.side-nav details[open]>.nav-row .nav-chevron{transform:rotate(90deg)}.side-nav .sub{min-height:48px;padding:0 18px;display:grid;grid-template-columns:40px auto 1fr;align-items:center;column-gap:0;background:#003d5c33;font-size:14px}.side-nav .sub-spacer{width:40px}.side-nav .sub-plus{width:26px;font-size:22px;line-height:1}.side-nav details>summary,.side-nav>a{margin:0}.powered{align-items:center}.version{padding-left:25px}
/* 0.5.1-build013 */
.app-brand{justify-content:flex-start!important;padding-left:18px!important;padding-right:18px!important}.app-brand img{margin:0!important;width:150px!important;object-position:left center!important}
.custom-preview{display:none;width:150px!important;height:145px!important;object-fit:contain!important;border-radius:9px;background:#f7f9fa}.custom-preview.has-image{display:block}.custom-preview.has-image~.upload-empty{display:none}.avatar-upload-option:has(.custom-preview.has-image) .upload-zone{justify-content:flex-start}.avatar-upload-option:has(.custom-preview.has-image) .upload-button{margin-top:auto}.upload-empty{display:flex;flex-direction:column;align-items:center;gap:7px}.template-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:22px}.template-card{margin-top:22px}.template-preview{aspect-ratio:210/297;max-height:430px;margin:auto;background:#fff;border:1px solid #dce8ed;box-shadow:0 5px 18px #173b5718;padding:8%;display:flex;flex-direction:column;gap:5%}.mini-head{display:grid;grid-template-columns:1fr 32% 1fr;gap:5%;align-items:center}.mini-head span{height:2px;background:#0abbdc}.mini-head img{width:100%;max-height:36px;object-fit:contain}.mini-hero{height:23%;display:grid;grid-template-columns:1fr 30% 1fr;gap:5%}.mini-hero i:first-child{background:linear-gradient(135deg,#0aa8e7,#0bd4d0)}.mini-hero i:nth-child(2){background:#e9eef0}.mini-hero i:last-child{border:1px solid #d8e5ea}.template-preview>b{display:block;height:14%;border-top:15px solid #0abbdc;background:#f8fafb}.mini-pair{display:grid;grid-template-columns:1fr 1fr;gap:6%;height:16%}.mini-pair i{border-top:15px solid #0abbdc;background:#f8fafb}.template-meta{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:18px}.template-meta h2{margin:0 0 4px}.template-toggle{border:0;border-radius:999px;padding:8px 12px 8px 7px;display:flex;align-items:center;gap:7px;font-weight:700;cursor:pointer}.template-toggle span{width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0003}.template-toggle.on{background:#c9f4e8;color:#08765d}.template-toggle.off{background:#e9eef1;color:#657985}

.task-title-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.column-toggle{display:inline-flex!important;align-items:center;gap:8px;font-weight:700!important;color:#087eaf;cursor:pointer;white-space:nowrap}.column-toggle input{width:18px;height:18px;accent-color:#08a6e6}

/* 0.7.3-build021 — branding configurable */
.app-brand{height:126px!important;padding:22px 18px 18px!important;display:flex!important;justify-content:flex-start!important;align-items:center!important}
.brand-choice{display:flex;align-items:center;gap:8px;min-width:0}
.app-brand .brand-choice{width:100%;justify-content:flex-start}
.brand-choice img{display:block!important;object-fit:contain!important;transform:none!important;margin:0!important}
.app-brand .brand-axoo{width:102px!important;height:auto!important;max-height:50px!important}
.app-brand .brand-runreal-full{width:150px!important;height:auto!important;max-height:52px!important}
.app-brand .brand-runreal-word{width:91px!important;height:auto!important;max-height:44px!important}
.brand-slash{font-size:26px;font-weight:300;color:#bfeaf2;line-height:1}
.login-site-logo{display:flex;justify-content:center;align-items:center;margin:-12px 0 25px}
.login-site-logo .brand-choice{justify-content:center}
.login-site-logo .brand-axoo{width:135px!important;height:auto!important}
.login-site-logo .brand-runreal-full{width:220px!important;height:auto!important}
.login-site-logo .brand-runreal-word{width:145px!important;height:auto!important}
.login-site-logo .brand-slash{font-size:34px;color:#87ddea}
.brand-settings{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:18px 0 24px}
.brand-option{border:2px solid #d7e6ed;border-radius:10px;padding:14px;text-align:center;cursor:pointer;background:#fff}
.brand-option.selected{border-color:#08a8e5;box-shadow:0 0 0 3px #08a8e51a}
.brand-preview{height:100px;display:flex;align-items:center;justify-content:center;margin-bottom:10px}
.brand-preview img{max-width:85%;max-height:72px;object-fit:contain}
.brand-preview.combined{gap:8px}
.brand-preview.combined img:first-child{max-width:38%}
.brand-preview.combined img:last-child{max-width:39%}
.brand-preview.combined b{font-size:24px;color:#78cfe0}
@media(max-width:900px){.brand-settings{grid-template-columns:1fr}}

.sidebar-brand img{display:block;width:auto;max-width:100%;height:58px;object-fit:contain;object-position:left center}

/* build020 — AXOO seul et RunReal seul utilisent exactement la même hauteur visuelle */
.sidebar-brand .brand-axoo,
.sidebar-brand .brand-runreal,
.sidebar-brand img[src*="axoo"],
.sidebar-brand img[src*="runreal"]{
  height:58px !important;
  width:auto !important;
  max-width:100% !important;
  object-fit:contain !important;
  object-position:left center !important;
}

/* build021 — harmonisation visuelle AXOO / RunReal */
.app-brand .brand-choice.brand-axoo .brand-axoo{
 width:150px!important;height:58px!important;max-height:58px!important;
 object-fit:contain!important;object-position:left center!important;
}
.login-site-logo .brand-choice.brand-axoo .brand-axoo{
 width:220px!important;height:82px!important;max-height:82px!important;
 object-fit:contain!important;object-position:center!important;
}

.login-separator{display:flex;align-items:center;gap:14px;margin:18px 0;color:#7890a1;font-weight:700}.login-separator:before,.login-separator:after{content:"";height:1px;background:#d7e4eb;flex:1}
.microsoft-login{height:54px;border:1px solid #b9c6ce;border-radius:8px;background:#fff;color:#323238;display:flex;align-items:center;justify-content:center;gap:14px;text-decoration:none;font-size:17px;font-weight:600}.microsoft-login:hover{background:#f7f9fa;border-color:#8799a5}
.ms-grid{width:20px;height:20px;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:2px}.ms-grid i:nth-child(1){background:#f25022}.ms-grid i:nth-child(2){background:#7fba00}.ms-grid i:nth-child(3){background:#00a4ef}.ms-grid i:nth-child(4){background:#ffb900}
.config-separator{border:0;border-top:1px solid #dce8ee;margin:32px 0}.switch-line{display:flex;align-items:center;gap:10px;font-weight:700;margin:16px 0}.switch-line input{width:20px;height:20px}
