@charset "UTF-8";
:root {
  --bg: #f4f6f7; --surface: #ffffff; --surface-2: #f8fafb; --surface-3: #eef2f4;
  --text: #101719; --text-2: #4d5b60; --text-3: #7c8a8f; --border: #dfe5e7;
  --nav: #0d1416; --nav-2: #151e21; --nav-text: #a9b4b7; --nav-strong: #fff;
  --green: #41c96f; --green-dark: #1c8f48; --cyan: #20a8d8; --cyan-dark: #087da8;
  --danger: #d94343; --warning: #c88716; --success: #218a4c;
  --shadow: 0 1px 2px rgba(10,20,24,.04), 0 8px 24px rgba(10,20,24,.04);
  --radius: 10px; --sidebar: 256px; --topbar: 64px;
}
html[data-theme="dark"] {
  --bg:#0d1214; --surface:#131a1d; --surface-2:#182124; --surface-3:#202a2e;
  --text:#f5f7f7; --text-2:#b1bdc0; --text-3:#7f9095; --border:#293438;
  --nav:#080c0e; --nav-2:#11181a; --nav-text:#95a3a7; --nav-strong:#fff;
  --shadow:0 1px 2px rgba(0,0,0,.22),0 10px 30px rgba(0,0,0,.14);
}
*{box-sizing:border-box} html{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--text);background:var(--bg)} body{margin:0;background:var(--bg);color:var(--text);font-size:14px;line-height:1.5} a{color:inherit;text-decoration:none} button,input{font:inherit} button{color:inherit}.no-scroll{overflow:hidden}
svg{display:block}.app-shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar);background:var(--nav);color:var(--nav-text);z-index:60;display:flex;flex-direction:column;border-right:1px solid rgba(255,255,255,.06)}
.sidebar-brand{height:78px;display:flex;align-items:center;padding:0 18px;border-bottom:1px solid rgba(255,255,255,.07);position:relative}.brand-link{display:flex;align-items:center;width:100%}.brand-link img{width:184px;max-height:54px;object-fit:contain;object-position:left center;filter:brightness(0) invert(1)}.sidebar-close{display:none;position:absolute;right:12px;top:20px}.sidebar-context{margin:14px 14px 5px;padding:8px 10px;border:1px solid rgba(255,255,255,.08);border-radius:7px;background:rgba(255,255,255,.03);display:flex;align-items:center;gap:7px;font-size:10px;letter-spacing:.1em;color:#d6dfe1}.context-dot{width:7px;height:7px;border-radius:50%;background:linear-gradient(135deg,var(--green),var(--cyan));box-shadow:0 0 0 3px rgba(65,201,111,.1)}.version{margin-left:auto;color:#6f7e82}.sidebar-nav{overflow-y:auto;padding:8px 9px 20px;flex:1;scrollbar-width:thin;scrollbar-color:#293438 transparent}.nav-section{margin:0 0 10px}.nav-section-title{display:flex;align-items:center;gap:8px;padding:8px 9px 5px;color:#6f7c80;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.nav-section-title svg{opacity:.75}.nav-items{display:grid;gap:1px}.nav-item{height:31px;display:flex;align-items:center;padding:0 9px 0 33px;border-radius:6px;font-size:12.5px;color:var(--nav-text);position:relative}.nav-item:hover{color:#fff;background:rgba(255,255,255,.045)}.nav-item.active{background:#1a272b;color:#fff;font-weight:600}.nav-item.active:before{content:"";position:absolute;left:9px;width:3px;height:14px;border-radius:4px;background:linear-gradient(180deg,var(--green),var(--cyan))}.nav-count{margin-left:auto;background:#2b393d;color:#c9d4d7;border-radius:9px;padding:0 6px;font-size:10px;line-height:18px}.sidebar-footer{padding:10px;border-top:1px solid rgba(255,255,255,.07);display:grid;gap:8px}.hermes-mini{border:0;background:linear-gradient(135deg,rgba(32,168,216,.11),rgba(65,201,111,.09));border:1px solid rgba(69,185,199,.16);border-radius:8px;color:#fff;padding:9px 10px;display:flex;align-items:center;gap:9px;text-align:left;cursor:pointer}.hermes-mini-icon{width:30px;height:30px;border-radius:7px;display:grid;place-items:center;background:linear-gradient(135deg,var(--cyan),var(--green));color:#071013}.hermes-mini span:last-child{display:grid}.hermes-mini strong{font-size:11px;letter-spacing:.08em}.hermes-mini small{font-size:10px;color:#849599}.user-card{display:flex;align-items:center;gap:8px;padding:6px}.avatar{width:31px;height:31px;border-radius:50%;display:grid;place-items:center;background:#202c30;color:#fff;font-size:11px;font-weight:700}.user-meta{display:grid;min-width:0;flex:1}.user-meta strong{font-size:11.5px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-meta small{font-size:10.5px;color:#718085}.icon-button{width:34px;height:34px;border:0;border-radius:7px;background:transparent;display:grid;place-items:center;cursor:pointer;color:var(--text-2)}.icon-button:hover{background:var(--surface-3);color:var(--text)}.sidebar .icon-button:hover{background:rgba(255,255,255,.07);color:#fff}
.main-area{margin-left:var(--sidebar);min-height:100vh}.topbar{height:var(--topbar);position:sticky;top:0;z-index:40;background:color-mix(in srgb,var(--surface) 92%,transparent);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 24px}.topbar-left,.topbar-actions{display:flex;align-items:center;gap:8px}.mobile-menu{display:none}.search-trigger{width:320px;height:36px;padding:0 10px;border:1px solid var(--border);border-radius:7px;background:var(--surface-2);display:flex;align-items:center;gap:8px;color:var(--text-3);cursor:pointer;text-align:left}.search-trigger span{flex:1}.search-trigger kbd{font-family:inherit;font-size:10px;border:1px solid var(--border);background:var(--surface);border-radius:4px;padding:2px 5px;color:var(--text-3)}.live-status{display:flex;align-items:center;gap:6px;color:var(--text-3);font-size:11.5px;padding-right:8px}.live-status i,.hermes-status i{width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 0 3px rgba(65,201,111,.1)}.notification-button{position:relative}.notification-button>i{position:absolute;right:7px;top:6px;width:6px;height:6px;border-radius:50%;background:var(--danger);border:2px solid var(--surface)}.hermes-button{height:34px;border:1px solid color-mix(in srgb,var(--cyan) 28%,var(--border));background:linear-gradient(135deg,color-mix(in srgb,var(--cyan) 7%,var(--surface)),color-mix(in srgb,var(--green) 5%,var(--surface)));border-radius:7px;display:flex;align-items:center;gap:7px;padding:0 10px;font-size:11px;font-weight:800;letter-spacing:.05em;color:var(--cyan-dark);cursor:pointer}.content-area{padding:30px 32px 50px;max-width:1700px;margin:0 auto}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:0 0 24px}.page-heading h1{font-size:28px;letter-spacing:-.035em;line-height:1.1;margin:5px 0 7px}.page-heading p{margin:0;color:var(--text-2);max-width:720px}.eyebrow,.panel-kicker{display:block;font-size:10px;font-weight:800;letter-spacing:.12em;color:var(--text-3);text-transform:uppercase}.eyebrow.light{color:#90a1a5}.heading-actions{display:flex;gap:8px}.primary-button,.secondary-button{min-height:36px;border-radius:7px;padding:0 13px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-weight:650;font-size:12.5px;cursor:pointer}.primary-button{border:1px solid #101719;background:#101719;color:#fff}.primary-button:hover{background:#202a2d}.secondary-button{border:1px solid var(--border);background:var(--surface);color:var(--text)}.secondary-button:hover{background:var(--surface-2)}
.priority-strip{border:1px solid var(--border);background:var(--surface);border-radius:var(--radius);display:grid;grid-template-columns:180px repeat(3,1fr);margin-bottom:16px;overflow:hidden;box-shadow:var(--shadow)}.priority-label{padding:14px 16px;background:var(--surface-2);display:grid;align-content:center}.priority-label span{font-size:9px;font-weight:800;letter-spacing:.12em;color:var(--text-3)}.priority-label strong{font-size:12px;margin-top:2px}.priority-item{display:flex;align-items:center;gap:10px;padding:12px 14px;border-left:1px solid var(--border);min-width:0}.priority-item:hover{background:var(--surface-2)}.priority-item>i{width:7px;height:7px;border-radius:50%;flex:0 0 auto}.priority-item.danger>i{background:var(--danger)}.priority-item.warning>i{background:var(--warning)}.priority-item.info>i{background:var(--cyan)}.priority-item span{display:grid;min-width:0}.priority-item strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.priority-item small{font-size:10.5px;color:var(--text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--border);background:var(--surface);border-radius:var(--radius);overflow:hidden;margin-bottom:16px;box-shadow:var(--shadow)}.kpi-card{padding:15px 16px;min-height:104px;border-right:1px solid var(--border);border-bottom:1px solid var(--border)}.kpi-card:nth-child(4n){border-right:0}.kpi-card:nth-child(n+5){border-bottom:0}.kpi-top{display:flex;align-items:center;justify-content:space-between;color:var(--text-3);font-size:11px}.metric-dot{width:6px;height:6px;border-radius:50%;background:var(--text-3)}.metric-dot.positive{background:var(--success)}.metric-dot.danger{background:var(--danger)}.metric-dot.warning{background:var(--warning)}.kpi-card>strong{display:block;font-size:23px;letter-spacing:-.035em;margin:9px 0 3px}.metric-detail{font-size:10.5px;color:var(--text-3)}.metric-detail.positive{color:var(--success)}.metric-detail.danger{color:var(--danger)}.metric-detail.warning{color:var(--warning)}.dashboard-grid{display:grid;gap:16px;margin-bottom:16px}.primary-grid{grid-template-columns:minmax(0,1.65fr) minmax(330px,.75fr)}.secondary-grid{grid-template-columns:1.25fr 1fr}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.panel-header{min-height:63px;display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--border)}.panel-header h2{font-size:15px;margin:2px 0 0;letter-spacing:-.015em}.panel-kicker.cyan{color:var(--cyan-dark)}.text-link{display:flex;align-items:center;gap:5px;color:var(--text-2);font-size:11.5px}.text-link:hover{color:var(--text)}.planning-list{display:grid}.planning-row{display:grid;grid-template-columns:105px 1fr 130px 86px;align-items:center;gap:12px;padding:14px 16px;border-bottom:1px solid var(--border)}.planning-row:last-child{border-bottom:0}.planning-time{font-variant-numeric:tabular-nums;color:var(--text-2);font-size:11px}.planning-main{display:grid}.planning-main strong{font-size:12.5px}.planning-main span{font-size:10.5px;color:var(--text-3);margin-top:2px}.planning-vehicle{font-size:10.5px;color:var(--text-2)}.status-badge{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:3px 8px;font-size:10px;font-weight:650;white-space:nowrap;border:1px solid var(--border);background:var(--surface-2);color:var(--text-2)}.status-badge.success{border-color:rgba(33,138,76,.2);background:rgba(33,138,76,.07);color:var(--success)}.status-badge.danger{border-color:rgba(217,67,67,.2);background:rgba(217,67,67,.07);color:var(--danger)}.status-badge.neutral{color:var(--text-2)}.hermes-brief-panel{background:linear-gradient(145deg,color-mix(in srgb,var(--surface) 96%,var(--cyan)),color-mix(in srgb,var(--surface) 96%,var(--green)))}.hermes-status{display:flex;align-items:center;gap:6px;color:var(--text-3);font-size:10.5px}.brief-copy{padding:16px}.brief-copy>p{margin:0 0 15px;color:var(--text-2);font-size:12px}.brief-action{display:grid;grid-template-columns:26px 1fr;gap:9px;padding:10px 0;border-top:1px solid var(--border)}.brief-action>span{font-size:9px;color:var(--cyan-dark);font-weight:800;padding-top:2px}.brief-action p{margin:0;font-size:11.5px;color:var(--text-2)}.brief-action strong{color:var(--text)}.hermes-wide-button{margin:0 16px 16px;width:calc(100% - 32px);height:36px;border:1px solid color-mix(in srgb,var(--cyan) 22%,var(--border));border-radius:7px;background:var(--surface);display:flex;align-items:center;justify-content:center;gap:8px;color:var(--cyan-dark);font-size:11.5px;font-weight:700;cursor:pointer}.worksite-list{display:grid}.worksite-row{padding:14px 16px;border-bottom:1px solid var(--border)}.worksite-row:last-child{border-bottom:0}.worksite-head,.worksite-foot{display:flex;align-items:center;justify-content:space-between;gap:10px}.worksite-head span{display:grid}.worksite-head strong{font-size:12px}.worksite-head small{font-size:10.5px;color:var(--text-3);margin-top:2px}.worksite-head b{font-size:11px}.progress-track{height:4px;background:var(--surface-3);border-radius:999px;overflow:hidden}.progress-track span{display:block;height:100%;background:linear-gradient(90deg,var(--cyan),var(--green));border-radius:999px}.worksite-row>.progress-track{margin:10px 0 8px}.worksite-foot{font-size:10px;color:var(--text-3)}.worksite-foot strong{color:var(--text-2)}.text-positive{color:var(--success)!important}.text-warning{color:var(--warning)!important}.activity-list{padding:3px 16px}.activity-row{display:grid;grid-template-columns:42px 9px 1fr;gap:8px;align-items:flex-start;padding:11px 0;border-bottom:1px solid var(--border);position:relative}.activity-row:last-child{border-bottom:0}.activity-time{font-size:10px;color:var(--text-3);font-variant-numeric:tabular-nums}.activity-row>i{width:7px;height:7px;border-radius:50%;background:var(--cyan);margin-top:4px;box-shadow:0 0 0 3px color-mix(in srgb,var(--cyan) 12%,transparent)}.activity-row div{display:grid}.activity-row strong{font-size:11.5px}.activity-row small{font-size:10.5px;color:var(--text-3);margin-top:2px}.live-status.compact{padding:0;font-size:10px}
.module-heading{margin-bottom:18px}.module-stats{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--border);background:var(--surface);border-radius:var(--radius);overflow:hidden;margin-bottom:16px;box-shadow:var(--shadow)}.module-stats article{padding:15px 16px;border-right:1px solid var(--border);display:grid}.module-stats article:last-child{border-right:0}.module-stats span{font-size:10.5px;color:var(--text-3)}.module-stats strong{font-size:20px;letter-spacing:-.03em;margin:6px 0 2px}.module-stats small{font-size:10px;color:var(--text-3)}.data-panel{overflow:hidden}.table-toolbar{height:54px;padding:0 14px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border)}.table-search{width:310px;height:34px;border:1px solid var(--border);background:var(--surface-2);border-radius:7px;padding:0 9px;display:flex;align-items:center;gap:7px;color:var(--text-3)}.table-search input{border:0;outline:0;background:transparent;color:var(--text);width:100%;font-size:12px}.table-count{font-size:10.5px;color:var(--text-3)}.table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse;min-width:780px}.data-table th{height:38px;padding:0 14px;text-align:left;background:var(--surface-2);border-bottom:1px solid var(--border);font-size:9.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--text-3);font-weight:750;white-space:nowrap}.data-table td{height:50px;padding:8px 14px;border-bottom:1px solid var(--border);font-size:11.5px;color:var(--text-2);white-space:nowrap}.data-table tr:last-child td{border-bottom:0}.data-table tbody tr:hover{background:var(--surface-2)}.data-table td:first-child{color:var(--text);font-weight:620}.table-progress{min-width:130px;display:flex;align-items:center;gap:8px}.table-progress .progress-track{width:80px}.table-progress strong{font-size:10px;color:var(--text-2)}.empty-module{padding:70px 24px;text-align:center;display:grid;justify-items:center}.empty-icon{width:52px;height:52px;border-radius:14px;display:grid;place-items:center;color:var(--cyan-dark);background:linear-gradient(145deg,color-mix(in srgb,var(--cyan) 9%,var(--surface)),color-mix(in srgb,var(--green) 8%,var(--surface)));border:1px solid var(--border);margin-bottom:14px}.empty-module h2{font-size:20px;margin:7px 0}.empty-module p{max-width:650px;color:var(--text-2);margin:0 0 18px}
.modal-backdrop{position:fixed;inset:0;background:rgba(5,10,12,.58);backdrop-filter:blur(3px);z-index:100;display:none;align-items:flex-start;justify-content:center;padding-top:12vh}.modal-backdrop.show{display:flex}.search-modal{width:min(680px,calc(100% - 28px));background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:0 30px 80px rgba(0,0,0,.22);overflow:hidden}.search-modal-input{height:56px;padding:0 12px;display:flex;align-items:center;gap:9px;border-bottom:1px solid var(--border);color:var(--text-3)}.search-modal-input input{flex:1;border:0;outline:0;background:transparent;color:var(--text);font-size:14px}.search-hint{padding:8px 13px;background:var(--surface-2);border-bottom:1px solid var(--border);font-size:9.5px;color:var(--text-3);letter-spacing:.04em}.search-results{max-height:420px;overflow:auto;padding:6px}.search-result{display:grid;grid-template-columns:72px 1fr 18px;gap:10px;align-items:center;padding:10px;border-radius:7px}.search-result:hover{background:var(--surface-2)}.search-result-type{font-size:9px;font-weight:700;color:var(--cyan-dark);text-transform:uppercase;letter-spacing:.05em}.search-result>span:nth-child(2){display:grid}.search-result strong{font-size:12px}.search-result small{font-size:10.5px;color:var(--text-3)}.search-arrow{color:var(--text-3)}.search-empty{padding:40px;text-align:center;color:var(--text-3)}
.hermes-backdrop{position:fixed;inset:0;background:rgba(5,10,12,.24);z-index:88;opacity:0;visibility:hidden;transition:.2s}.hermes-backdrop.show{opacity:1;visibility:visible}.hermes-panel{position:fixed;top:0;right:0;bottom:0;width:min(430px,100%);background:var(--surface);border-left:1px solid var(--border);z-index:90;display:flex;flex-direction:column;transform:translateX(100%);transition:transform .22s ease;box-shadow:-18px 0 45px rgba(0,0,0,.11)}.hermes-panel.open{transform:translateX(0)}.hermes-header{height:70px;display:flex;align-items:center;justify-content:space-between;padding:0 16px;border-bottom:1px solid var(--border)}.hermes-title{display:flex;align-items:center;gap:10px}.hermes-logo{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:linear-gradient(135deg,var(--cyan),var(--green));color:#071013}.hermes-title div{display:grid}.hermes-title strong{font-size:13px;letter-spacing:.08em}.hermes-title small{font-size:10px;color:var(--text-3)}.hermes-body{flex:1;overflow:auto;padding:16px}.hermes-message{display:grid;grid-template-columns:30px 1fr;gap:9px;margin-bottom:14px}.msg-avatar{width:28px;height:28px;border-radius:7px;display:grid;place-items:center;background:var(--surface-3);font-size:10px;font-weight:800}.hermes-message.assistant .msg-avatar{background:linear-gradient(135deg,color-mix(in srgb,var(--cyan) 20%,var(--surface)),color-mix(in srgb,var(--green) 18%,var(--surface)));color:var(--cyan-dark)}.hermes-message>div{border:1px solid var(--border);background:var(--surface-2);padding:10px 11px;border-radius:8px}.hermes-message p{margin:0;font-size:11.5px;color:var(--text-2)}.hermes-message ol{margin:8px 0 0;padding-left:18px;font-size:11px;color:var(--text-2)}.hermes-message.user>div{background:color-mix(in srgb,var(--cyan) 7%,var(--surface));border-color:color-mix(in srgb,var(--cyan) 18%,var(--border))}.hermes-suggestions{display:flex;gap:6px;flex-wrap:wrap;padding:10px 14px 0}.hermes-suggestions button{border:1px solid var(--border);background:var(--surface-2);border-radius:999px;padding:5px 8px;font-size:9.5px;color:var(--text-2);cursor:pointer}.hermes-input{display:flex;gap:7px;margin:10px 14px;border:1px solid var(--border);border-radius:8px;padding:5px 5px 5px 10px;background:var(--surface-2)}.hermes-input input{flex:1;border:0;outline:0;background:transparent;color:var(--text);font-size:11.5px}.hermes-disclaimer{text-align:center;font-size:9px;color:var(--text-3);padding:0 12px 10px;margin:0}
.login-page{min-height:100vh;background:#0b1214}.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(420px,.9fr)}.login-brand-panel{position:relative;background:radial-gradient(circle at 80% 15%,rgba(32,168,216,.18),transparent 28%),radial-gradient(circle at 25% 80%,rgba(65,201,111,.13),transparent 28%),#0c1416;color:#fff;padding:42px 50px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}.login-brand-panel:after{content:"";position:absolute;right:-170px;bottom:-180px;width:520px;height:520px;border:1px solid rgba(255,255,255,.05);border-radius:50%;box-shadow:0 0 0 70px rgba(255,255,255,.018),0 0 0 140px rgba(255,255,255,.012)}.login-brand-top{display:flex;align-items:center;justify-content:space-between;position:relative;z-index:1}.login-brand-top img{width:210px;filter:brightness(0) invert(1)}.login-brand-top span{font-size:9px;letter-spacing:.14em;color:#6f858a;border:1px solid rgba(255,255,255,.09);padding:6px 8px;border-radius:5px}.login-brand-copy{max-width:700px;position:relative;z-index:1}.login-brand-copy h1{font-size:clamp(45px,5.5vw,78px);letter-spacing:-.055em;line-height:.98;margin:12px 0 22px;font-weight:650}.login-brand-copy p{max-width:600px;color:#9aabad;font-size:15px;line-height:1.7}.login-brand-bottom{display:flex;gap:45px;position:relative;z-index:1}.login-brand-bottom div{display:grid}.login-brand-bottom strong{font-size:22px}.login-brand-bottom span{font-size:10px;color:#71858a;text-transform:uppercase;letter-spacing:.08em}.login-form-panel{background:#f5f7f7;display:grid;place-items:center;padding:35px}.login-form-wrap{width:min(420px,100%)}.login-badge{display:inline-flex;font-size:9px;font-weight:800;letter-spacing:.1em;color:#5c6d71;border:1px solid #dce2e4;background:#fff;border-radius:5px;padding:6px 8px}.login-form-wrap h2{font-size:34px;letter-spacing:-.045em;margin:23px 0 4px;color:#101719}.login-intro{color:#6f7e82;margin:0 0 25px}.form-error{padding:10px 12px;border:1px solid rgba(217,67,67,.25);background:rgba(217,67,67,.06);color:#b53232;border-radius:7px;margin-bottom:14px;font-size:12px}.login-form{display:grid;gap:14px}.login-form label{display:grid;gap:6px;font-size:11px;color:#4d5b60;font-weight:650}.login-form input{height:43px;border:1px solid #dce2e4;border-radius:7px;background:#fff;color:#101719;padding:0 11px;outline:0}.login-form input:focus{border-color:#56a8bf;box-shadow:0 0 0 3px rgba(32,168,216,.08)}.login-submit{height:44px;margin-top:5px;justify-content:space-between;padding:0 13px}.demo-credentials{margin-top:22px;padding:12px;border:1px solid #dce2e4;border-radius:8px;background:#fff;display:grid;grid-template-columns:1fr auto;gap:5px 12px;align-items:center}.demo-credentials span{grid-row:span 2;font-size:10px;color:#7c8a8f;text-transform:uppercase;letter-spacing:.08em}.demo-credentials code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10.5px;color:#4d5b60}.login-security{text-align:center;color:#8a979a;font-size:9.5px;margin-top:20px}
@media (max-width:1200px){.kpi-grid{grid-template-columns:repeat(2,1fr)}.kpi-card:nth-child(2n){border-right:0}.kpi-card:nth-child(n+5){border-bottom:1px solid var(--border)}.kpi-card:nth-child(n+7){border-bottom:0}.primary-grid,.secondary-grid{grid-template-columns:1fr}.priority-strip{grid-template-columns:160px 1fr 1fr}.priority-item:last-child{grid-column:2/4;border-top:1px solid var(--border)}.login-shell{grid-template-columns:1fr 480px}.login-brand-panel{padding:35px}}
@media (max-width:900px){:root{--sidebar:260px}.sidebar{transform:translateX(-100%);transition:transform .2s}.sidebar.open{transform:translateX(0)}.sidebar-close{display:grid}.sidebar-overlay{position:fixed;inset:0;background:rgba(4,8,10,.45);z-index:55;opacity:0;visibility:hidden;transition:.2s}.sidebar-overlay.show{opacity:1;visibility:visible}.main-area{margin-left:0}.mobile-menu{display:grid}.content-area{padding:24px 18px 45px}.topbar{padding:0 14px}.search-trigger{width:250px}.login-shell{grid-template-columns:1fr}.login-brand-panel{display:none}.login-form-panel{min-height:100vh}}
@media (max-width:700px){.topbar{height:58px}.search-trigger{width:38px;padding:0;justify-content:center}.search-trigger span,.search-trigger kbd,.live-status,.hermes-button span{display:none}.content-area{padding:20px 12px 40px}.page-heading{align-items:flex-start;flex-direction:column;margin-bottom:18px}.page-heading h1{font-size:24px}.heading-actions{width:100%}.heading-actions>*{flex:1}.priority-strip{grid-template-columns:1fr}.priority-label{padding:11px 13px}.priority-item{border-left:0;border-top:1px solid var(--border)}.priority-item:last-child{grid-column:auto}.kpi-grid{grid-template-columns:repeat(2,1fr)}.kpi-card{padding:13px 12px;min-height:94px}.kpi-card>strong{font-size:19px}.planning-row{grid-template-columns:1fr auto;gap:5px 8px;padding:12px}.planning-time{grid-column:1/2}.planning-main{grid-column:1/2}.planning-vehicle{display:none}.planning-row .status-badge{grid-column:2;grid-row:1/3}.panel-header{padding:12px}.module-stats{grid-template-columns:1fr}.module-stats article{border-right:0;border-bottom:1px solid var(--border)}.module-stats article:last-child{border-bottom:0}.table-toolbar{padding:0 10px}.table-search{width:220px}.login-form-panel{padding:22px}.login-form-wrap h2{font-size:30px}}

/* Employee workspace */
.employee-table-link{color:var(--cyan-dark);font-weight:700}.employee-table-link:hover{text-decoration:underline}.employee-header{padding:20px 22px;display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:12px}.employee-identity{display:flex;align-items:center;gap:16px}.employee-avatar-large{width:62px;height:62px;border-radius:14px;background:linear-gradient(135deg,color-mix(in srgb,var(--cyan) 16%,var(--surface-2)),color-mix(in srgb,var(--green) 14%,var(--surface-2)));border:1px solid var(--border);display:grid;place-items:center;font-size:20px;font-weight:800;color:var(--cyan-dark)}.employee-title-line{display:flex;align-items:center;gap:10px}.employee-title-line h1{font-size:25px;letter-spacing:-.035em;margin:0}.employee-identity p{margin:3px 0 8px;color:var(--text-2)}.employee-quick-meta{display:flex;flex-wrap:wrap;gap:6px 16px;color:var(--text-3);font-size:11px}.employee-subnav{position:sticky;top:calc(var(--topbar) + 8px);z-index:30;display:flex;gap:3px;overflow-x:auto;padding:6px;border:1px solid var(--border);background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(10px);border-radius:9px;margin-bottom:14px;box-shadow:var(--shadow);scrollbar-width:thin}.employee-subnav a{white-space:nowrap;padding:7px 9px;border-radius:6px;color:var(--text-2);font-size:10.5px;font-weight:650}.employee-subnav a:hover,.employee-subnav a.active{background:var(--surface-3);color:var(--text)}.employee-overview-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px}.employee-kpi{padding:14px 15px;display:grid;gap:2px}.employee-kpi>span{font-size:10px;color:var(--text-3);text-transform:uppercase;letter-spacing:.07em}.employee-kpi>strong{font-size:16px;letter-spacing:-.02em;margin-top:4px}.employee-kpi>small{font-size:10.5px;color:var(--text-3)}.employee-section{margin-bottom:14px;scroll-margin-top:126px}.employee-section-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.employee-info-grid{display:grid;grid-template-columns:repeat(2,1fr)}.employee-info-item{padding:13px 15px;border-right:1px solid var(--border);border-bottom:1px solid var(--border);display:grid;gap:3px;min-width:0}.employee-info-item:nth-child(2n){border-right:0}.employee-info-item:nth-last-child(-n+2){border-bottom:0}.employee-info-item span{font-size:9.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3)}.employee-info-item strong{font-size:11.5px;overflow-wrap:anywhere}.document-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:12px}.document-card{border:1px solid var(--border);background:var(--surface-2);border-radius:8px;padding:13px;display:grid;grid-template-columns:34px 1fr auto;gap:10px;align-items:start}.document-card-icon{width:32px;height:32px;border-radius:7px;display:grid;place-items:center;background:var(--surface-3);color:var(--cyan-dark)}.document-card>div:nth-child(2){display:grid}.document-card strong{font-size:11.5px}.document-card small{font-size:10px;color:var(--text-3)}.document-card dl{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:2px 0 0}.document-card dl div{display:grid}.document-card dt{font-size:9px;color:var(--text-3);text-transform:uppercase;letter-spacing:.05em}.document-card dd{margin:1px 0 0;font-size:10.5px;font-weight:650}.document-card>.status-badge{grid-column:1/-1;justify-self:start}.employee-small-button{min-height:28px;padding:0 8px;font-size:10px}.employee-balance-grid{display:grid;grid-template-columns:repeat(2,1fr)}.employee-balance-grid div{padding:18px;border-right:1px solid var(--border);border-bottom:1px solid var(--border);display:grid}.employee-balance-grid div:nth-child(2n){border-right:0}.employee-balance-grid div:nth-last-child(-n+2){border-bottom:0}.employee-balance-grid span{font-size:10px;color:var(--text-3)}.employee-balance-grid strong{font-size:18px;margin-top:4px}.compact-list{display:grid}.compact-list-row{padding:13px 15px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:12px}.compact-list-row:last-child{border-bottom:0}.compact-list-row>div{display:grid}.compact-list-row strong{font-size:11.5px}.compact-list-row small{font-size:10px;color:var(--text-3)}.employee-security-note{border:1px solid color-mix(in srgb,var(--warning) 28%,var(--border));background:color-mix(in srgb,var(--warning) 6%,var(--surface));border-radius:8px;padding:11px 13px;display:flex;gap:12px;align-items:flex-start;color:var(--text-2);font-size:10.5px}.employee-security-note strong{color:var(--warning);white-space:nowrap}.employee-security-note span{line-height:1.5}
@media (max-width:1100px){.employee-overview-grid{grid-template-columns:repeat(2,1fr)}.employee-section-grid{grid-template-columns:1fr}.document-card-grid{grid-template-columns:1fr 1fr}}
@media (max-width:700px){.employee-header{align-items:flex-start;flex-direction:column;padding:15px}.employee-identity{align-items:flex-start}.employee-avatar-large{width:48px;height:48px;border-radius:11px;font-size:16px}.employee-title-line h1{font-size:21px}.employee-quick-meta{display:grid;gap:2px}.employee-subnav{top:66px}.employee-overview-grid{grid-template-columns:1fr 1fr}.employee-info-grid{grid-template-columns:1fr}.employee-info-item{border-right:0}.employee-info-item:nth-last-child(-n+2){border-bottom:1px solid var(--border)}.employee-info-item:last-child{border-bottom:0}.document-card-grid{grid-template-columns:1fr}.employee-security-note{flex-direction:column;gap:3px}}

/* === Employee list refinement: single entry point + dense operational overview === */
.employee-name-cell{display:flex;align-items:center;gap:10px;min-width:190px;text-decoration:none;color:inherit}.employee-name-cell>span:last-child{display:flex;flex-direction:column;gap:2px}.employee-name-cell strong{font-size:13px;color:var(--text)}.employee-name-cell small{font-size:11px;color:var(--muted)}.employee-list-avatar{width:34px;height:34px;border-radius:9px;display:inline-flex!important;align-items:center;justify-content:center;flex:0 0 34px;background:linear-gradient(145deg,rgba(0,174,239,.13),rgba(68,180,90,.12));border:1px solid rgba(0,174,239,.18);font-size:12px;font-weight:800;color:var(--accent)}
body:has(.employee-name-cell) .data-table{min-width:1650px}body:has(.employee-name-cell) .data-table th,body:has(.employee-name-cell) .data-table td{white-space:nowrap;padding-top:13px;padding-bottom:13px}body:has(.employee-name-cell) .data-table tbody tr{cursor:pointer}body:has(.employee-name-cell) .data-table tbody tr:hover{background:rgba(0,174,239,.045)}
.employee-subnav{position:sticky;top:72px;z-index:18;background:var(--surface);border:1px solid var(--border);box-shadow:0 8px 24px rgba(15,23,42,.05)}
@media(max-width:900px){body:has(.employee-name-cell) .data-table{min-width:1500px}.employee-subnav{top:64px}}

/* === Employee profile V3 — clean, tabbed and admin-controlled === */
.employee-profile-bar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;margin-bottom:14px}
.employee-profile-main{display:flex;align-items:center;gap:12px;min-width:0}.employee-back-link{width:32px;height:32px;display:grid;place-items:center;border:1px solid var(--border);border-radius:7px;color:var(--text-2);font-size:16px}.employee-back-link:hover{background:var(--surface-3);color:var(--text)}
.employee-profile-copy{min-width:0}.employee-profile-title{display:flex;align-items:center;gap:9px;min-width:0}.employee-profile-title h1{margin:0;font-size:22px;line-height:1.15;letter-spacing:-.03em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.employee-profile-copy p{margin:5px 0 0;color:var(--text-3);font-size:11px}.employee-profile-copy p span{margin:0 5px;color:var(--border-strong)}.employee-profile-actions{display:flex;gap:8px;flex:0 0 auto}
.employee-save-notice{margin:0 0 14px;padding:10px 13px;border:1px solid color-mix(in srgb,var(--green) 34%,var(--border));background:color-mix(in srgb,var(--green) 7%,var(--surface));border-radius:8px;color:var(--text-2);font-size:11px;font-weight:650}
.employee-workspace{display:grid;grid-template-columns:245px minmax(0,1fr);gap:14px;align-items:start}.employee-profile-nav{position:sticky;top:calc(var(--topbar) + 14px);overflow:hidden}.employee-nav-heading{padding:14px 14px 10px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:8px}.employee-nav-heading span{font-size:11px;font-weight:750}.employee-nav-heading small{font-size:9px;color:var(--text-3);letter-spacing:.04em}.employee-profile-nav nav{padding:6px}.employee-profile-nav nav a{min-height:37px;display:flex;align-items:center;gap:9px;padding:0 9px;border-radius:6px;color:var(--text-2);font-size:10.5px;font-weight:650}.employee-profile-nav nav a:hover{background:var(--surface-3);color:var(--text)}.employee-profile-nav nav a.active{background:color-mix(in srgb,var(--cyan) 9%,var(--surface));color:var(--cyan-dark);font-weight:750}.employee-nav-icon{width:22px;display:grid;place-items:center;flex:0 0 22px;color:var(--text-3)}.employee-profile-nav nav a.active .employee-nav-icon{color:var(--cyan-dark)}.employee-nav-security{border-top:1px solid var(--border);padding:11px 12px;display:flex;align-items:flex-start;gap:7px;color:var(--text-3);font-size:9.5px;line-height:1.45}
.employee-profile-content{min-width:0}.employee-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin:3px 0 14px}.employee-section-heading h2{font-size:21px;letter-spacing:-.03em;margin:2px 0 3px}.employee-section-heading p{margin:0;color:var(--text-3);font-size:11px}.admin-access-pill{padding:6px 8px;border-radius:6px;background:color-mix(in srgb,var(--green) 8%,var(--surface));border:1px solid color-mix(in srgb,var(--green) 25%,var(--border));color:var(--green);font-size:9.5px;font-weight:700;white-space:nowrap}
.employee-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:12px}.employee-summary-card{padding:14px 15px;display:grid;gap:3px;min-height:94px}.employee-summary-card>span{font-size:9.5px;color:var(--text-3);text-transform:uppercase;letter-spacing:.06em}.employee-summary-card>strong{font-size:15px;letter-spacing:-.02em;margin-top:4px;overflow-wrap:anywhere}.employee-summary-card>small{font-size:9.5px;color:var(--text-3)}
.employee-clean-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}.employee-clean-card{overflow:hidden}.employee-clean-card-head{padding:14px 16px;border-bottom:1px solid var(--border);display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.employee-clean-card-head h3{margin:2px 0 0;font-size:14px;letter-spacing:-.015em}.employee-clean-card-head p{margin:4px 0 0;color:var(--text-3);font-size:10px}.employee-clean-list,.employee-detail-list{margin:0}.employee-clean-list>div{display:grid;grid-template-columns:150px 1fr;gap:12px;padding:11px 15px;border-bottom:1px solid var(--border)}.employee-clean-list>div:last-child{border-bottom:0}.employee-clean-list dt,.employee-detail-list dt{font-size:10px;color:var(--text-3)}.employee-clean-list dd,.employee-detail-list dd{margin:0;font-size:11px;font-weight:650;color:var(--text);overflow-wrap:anywhere}.employee-detail-list{display:grid;grid-template-columns:1fr 1fr}.employee-detail-list>div{padding:14px 16px;border-right:1px solid var(--border);border-bottom:1px solid var(--border);display:grid;gap:4px;min-width:0}.employee-detail-list>div:nth-child(2n){border-right:0}.employee-detail-list>div:nth-last-child(-n+2){border-bottom:0}.employee-alerts-card{margin-bottom:12px}.employee-status-lines{display:grid}.employee-status-lines>div{display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:9px;align-items:center;padding:11px 15px;border-bottom:1px solid var(--border);font-size:10.5px}.employee-status-lines>div:last-child{border-bottom:0}.employee-status-lines strong{font-size:10.5px}.employee-status-dot{width:7px;height:7px;border-radius:50%;background:var(--text-3)}.employee-status-dot.success{background:var(--green)}.employee-status-dot.neutral{background:var(--cyan)}
.employee-document-list{display:grid;gap:8px}.employee-document-row{display:grid;grid-template-columns:36px minmax(220px,1fr) 145px 145px auto;gap:12px;align-items:center;padding:12px 14px}.employee-document-icon{width:34px;height:34px;border-radius:7px;display:grid;place-items:center;background:var(--surface-3);color:var(--cyan-dark)}.employee-document-copy{display:grid;gap:2px}.employee-document-copy strong{font-size:11.5px}.employee-document-copy small,.employee-document-row>div:not(.employee-document-copy):not(.employee-document-icon) span{font-size:9.5px;color:var(--text-3)}.employee-document-row>div:not(.employee-document-copy):not(.employee-document-icon){display:grid;gap:2px}.employee-document-row>div:not(.employee-document-copy):not(.employee-document-icon) strong{font-size:10.5px}
.employee-edit-panel{margin-top:12px;overflow:hidden}.employee-edit-form{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:16px}.employee-edit-form label{display:grid;gap:5px}.employee-edit-form label>span{font-size:9.5px;color:var(--text-3);font-weight:650}.employee-edit-form input{height:39px;border:1px solid var(--border);border-radius:6px;background:var(--surface-2);color:var(--text);padding:0 10px;outline:0;font:inherit;font-size:11px}.employee-edit-form input:focus{border-color:var(--cyan);box-shadow:0 0 0 3px color-mix(in srgb,var(--cyan) 10%,transparent)}.employee-edit-actions{grid-column:1/-1;display:flex;justify-content:flex-end;border-top:1px solid var(--border);padding-top:12px;margin-top:2px}
@media(max-width:1150px){.employee-workspace{grid-template-columns:220px minmax(0,1fr)}.employee-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.employee-document-row{grid-template-columns:36px minmax(180px,1fr) 120px auto}.employee-document-row>div:nth-of-type(4){display:none}}
@media(max-width:850px){.employee-workspace{grid-template-columns:1fr}.employee-profile-nav{position:static}.employee-profile-nav nav{display:flex;overflow-x:auto;gap:3px}.employee-profile-nav nav a{white-space:nowrap;flex:0 0 auto}.employee-nav-heading,.employee-nav-security{display:none}.employee-clean-grid{grid-template-columns:1fr}.employee-profile-bar{align-items:flex-start}.employee-profile-actions{width:100%;justify-content:flex-end}.employee-profile-bar{flex-wrap:wrap}.employee-document-row{grid-template-columns:36px minmax(0,1fr) auto}.employee-document-row>div:nth-of-type(3),.employee-document-row>div:nth-of-type(4){display:none}}
@media(max-width:620px){.employee-profile-title{align-items:flex-start;flex-direction:column;gap:5px}.employee-profile-title h1{font-size:19px}.employee-profile-actions{display:grid;grid-template-columns:1fr 1fr}.employee-profile-actions>*{justify-content:center}.employee-summary-grid{grid-template-columns:1fr 1fr}.employee-detail-list{grid-template-columns:1fr}.employee-detail-list>div{border-right:0}.employee-detail-list>div:nth-last-child(-n+2){border-bottom:1px solid var(--border)}.employee-detail-list>div:last-child{border-bottom:0}.employee-edit-form{grid-template-columns:1fr}.employee-edit-actions{grid-column:1}.employee-clean-list>div{grid-template-columns:1fr;gap:3px}.employee-section-heading{align-items:flex-start;flex-direction:column}.admin-access-pill{white-space:normal}.employee-summary-card{min-height:86px;padding:12px}}

/* ========================================================================
   CEGEWATT CRM — Employee module V4
   Clean, restrained, information-dense and admin-controlled.
   ======================================================================== */

.is-placeholder{color:var(--text-3)!important;font-weight:600!important}

/* Employee roster */
.emp4-list-heading{margin-bottom:20px}
.emp4-roster-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow);overflow:hidden;margin-bottom:18px}
.emp4-roster-stats article{min-height:108px;padding:18px 20px;display:flex;flex-direction:column;justify-content:center;border-right:1px solid var(--border)}
.emp4-roster-stats article:last-child{border-right:0}
.emp4-roster-stats span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);font-weight:750}
.emp4-roster-stats strong{font-size:22px;letter-spacing:-.03em;margin:7px 0 1px}
.emp4-roster-stats small{font-size:10.5px;color:var(--text-3)}
.emp4-roster-panel{overflow:hidden}
.emp4-roster-toolbar{min-height:76px;padding:16px 18px;display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid var(--border)}
.emp4-roster-toolbar h2{font-size:15px;margin:3px 0 0;letter-spacing:-.02em}
.emp4-roster-search{width:min(390px,100%);height:38px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);display:flex;align-items:center;gap:9px;padding:0 11px;color:var(--text-3)}
.emp4-roster-search:focus-within{border-color:color-mix(in srgb,var(--cyan) 55%,var(--border));box-shadow:0 0 0 3px color-mix(in srgb,var(--cyan) 9%,transparent)}
.emp4-roster-search input{width:100%;border:0;outline:0;background:transparent;color:var(--text);font-size:12px}
.emp4-roster-scroll{overflow-x:auto;scrollbar-width:thin;scrollbar-color:var(--border) transparent}
.emp4-roster-table{min-width:1460px}
.emp4-roster-grid{display:grid;grid-template-columns:minmax(250px,1.55fr) minmax(175px,1.05fr) minmax(190px,1.08fr) minmax(190px,1.1fr) minmax(185px,1.08fr) minmax(190px,1.08fr) minmax(150px,.85fr);align-items:center;column-gap:18px}
.emp4-roster-head{min-height:42px;padding:0 18px;background:var(--surface-2);border-bottom:1px solid var(--border);color:var(--text-3);font-size:9.5px;text-transform:uppercase;letter-spacing:.07em;font-weight:750}
.emp4-roster-row{min-height:82px;padding:13px 18px;border-bottom:1px solid var(--border);transition:background .15s ease,box-shadow .15s ease;position:relative}
.emp4-roster-row:last-child{border-bottom:0}
.emp4-roster-row:hover{background:color-mix(in srgb,var(--cyan) 3.5%,var(--surface));box-shadow:inset 3px 0 0 var(--cyan)}
.emp4-roster-person{display:flex;align-items:center;gap:12px;min-width:0}
.emp4-roster-avatar{width:42px;height:42px;border-radius:10px;display:grid;place-items:center;flex:0 0 42px;background:var(--surface-3);border:1px solid var(--border);color:var(--cyan-dark);font-size:12px;font-weight:800;letter-spacing:.03em}
.emp4-roster-person-copy,.emp4-roster-cell{display:flex;flex-direction:column;gap:4px;min-width:0}
.emp4-roster-person-copy strong,.emp4-roster-cell strong{font-size:11.5px;line-height:1.35;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.emp4-roster-person-copy strong b{font-weight:800;letter-spacing:.02em}
.emp4-roster-person-copy small,.emp4-roster-cell small{font-size:9.75px;line-height:1.35;color:var(--text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.emp4-roster-activity{align-items:flex-start}
.emp4-roster-activity .status-badge{margin-bottom:2px}

/* Employee profile */
.emp4-breadcrumb{display:flex;align-items:center;gap:8px;margin:-2px 0 12px;color:var(--text-3);font-size:10.5px}
.emp4-breadcrumb a:hover{color:var(--text)}
.emp4-breadcrumb strong{color:var(--text-2);font-weight:650}
.emp4-profile-head{overflow:hidden;margin-bottom:14px}
.emp4-profile-topline{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 24px}
.emp4-profile-identity{display:flex;align-items:center;gap:16px;min-width:0}
.emp4-profile-avatar{width:58px;height:58px;border-radius:14px;display:grid;place-items:center;flex:0 0 58px;background:var(--surface-3);border:1px solid var(--border);color:var(--cyan-dark);font-size:16px;font-weight:800;letter-spacing:.04em}
.emp4-profile-titlebox{min-width:0}
.emp4-profile-name-row{display:flex;align-items:center;gap:10px;min-width:0}
.emp4-profile-name-row h1{margin:0;font-size:25px;line-height:1.15;letter-spacing:-.035em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.emp4-profile-titlebox p{margin:7px 0 0;display:flex;align-items:center;gap:8px;color:var(--text-3);font-size:11px;flex-wrap:wrap}
.emp4-profile-titlebox p i{width:3px;height:3px;border-radius:50%;background:var(--border-strong,#c6d0d3)}
.emp4-profile-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}
.emp4-profile-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--border);background:var(--surface-2)}
.emp4-profile-facts>div{min-height:72px;padding:14px 18px;display:flex;flex-direction:column;justify-content:center;gap:5px;border-right:1px solid var(--border);min-width:0}
.emp4-profile-facts>div:last-child{border-right:0}
.emp4-profile-facts span{font-size:9.5px;text-transform:uppercase;letter-spacing:.07em;color:var(--text-3);font-weight:750}
.emp4-profile-facts strong{font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.emp4-save-notice{display:flex;align-items:center;gap:8px;margin:0 0 14px;padding:11px 13px;border-radius:8px;border:1px solid color-mix(in srgb,var(--green) 28%,var(--border));background:color-mix(in srgb,var(--green) 7%,var(--surface));color:var(--text-2);font-size:11px;font-weight:650}

/* Profile tabs */
.emp4-tabs{display:flex;align-items:stretch;gap:2px;padding:5px;overflow-x:auto;margin-bottom:24px;scrollbar-width:thin;scrollbar-color:var(--border) transparent}
.emp4-tabs a{height:42px;display:flex;align-items:center;gap:7px;padding:0 11px;border-radius:7px;color:var(--text-2);white-space:nowrap;flex:0 0 auto;transition:background .15s ease,color .15s ease}
.emp4-tabs a span{color:var(--text-3)}
.emp4-tabs a strong{font-size:10.5px;font-weight:650}
.emp4-tabs a:hover{background:var(--surface-2);color:var(--text)}
.emp4-tabs a.active{background:color-mix(in srgb,var(--cyan) 8%,var(--surface));color:var(--cyan-dark)}
.emp4-tabs a.active span{color:var(--cyan-dark)}
.emp4-tabs a.active strong{font-weight:750}

/* Profile content */
.emp4-content{min-width:0}
.emp4-section-title{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:0 0 16px}
.emp4-section-title h2{font-size:22px;line-height:1.2;letter-spacing:-.03em;margin:4px 0 5px}
.emp4-section-title p{margin:0;color:var(--text-3);font-size:11px}
.emp4-admin-pill{display:inline-flex;align-items:center;gap:6px;padding:7px 9px;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--text-3);font-size:9.5px;font-weight:650;white-space:nowrap}

.emp4-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow);overflow:hidden;margin-bottom:16px}
.emp4-kpis article{min-height:112px;padding:18px 20px;display:flex;flex-direction:column;justify-content:center;border-right:1px solid var(--border);min-width:0}
.emp4-kpis article:last-child{border-right:0}
.emp4-kpis article>span{font-size:9.5px;text-transform:uppercase;letter-spacing:.07em;color:var(--text-3);font-weight:750}
.emp4-kpis article>strong{font-size:16px;line-height:1.3;letter-spacing:-.02em;margin:8px 0 3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.emp4-kpis article>small{font-size:9.75px;color:var(--text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.emp4-two-col{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}
.emp4-card{overflow:hidden;margin-bottom:16px}
.emp4-two-col .emp4-card{margin-bottom:0}
.emp4-card-head{min-height:70px;padding:16px 20px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:16px}
.emp4-card-head h3{font-size:14px;letter-spacing:-.015em;margin:3px 0 0}
.emp4-card-head>a{font-size:10px;color:var(--cyan-dark);font-weight:650;white-space:nowrap}
.emp4-card-head>a:hover{color:var(--text)}
.emp4-fields{display:grid;padding:22px 20px;gap:24px 28px}
.emp4-fields-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.emp4-fields-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.emp4-field{display:flex;flex-direction:column;gap:7px;min-width:0}
.emp4-field>span{font-size:9.5px;text-transform:uppercase;letter-spacing:.055em;color:var(--text-3);font-weight:700}
.emp4-field>strong{font-size:12px;line-height:1.45;overflow-wrap:anywhere}
.emp4-compliance-list{display:grid;grid-template-columns:1fr 1fr}
.emp4-compliance-list>div{min-height:92px;padding:18px 20px;display:grid;align-content:center;grid-template-columns:1fr auto;gap:3px 10px;border-right:1px solid var(--border);border-bottom:1px solid var(--border)}
.emp4-compliance-list>div:nth-child(2n){border-right:0}
.emp4-compliance-list>div:nth-last-child(-n+2){border-bottom:0}
.emp4-compliance-list span{font-size:10px;color:var(--text-3)}
.emp4-compliance-list strong{grid-row:1/3;grid-column:2;font-size:24px;letter-spacing:-.04em;align-self:center}
.emp4-compliance-list small{font-size:9.5px;color:var(--text-3)}
.emp4-check-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--border)}
.emp4-check-item{min-height:92px;background:var(--surface);padding:16px 18px;display:grid;grid-template-columns:22px 1fr;grid-template-rows:auto auto;column-gap:9px;align-content:center}
.emp4-check-icon{grid-row:1/3;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:800;background:var(--surface-3);color:var(--text-3)}
.emp4-check-item.done .emp4-check-icon{background:color-mix(in srgb,var(--green) 12%,var(--surface));color:var(--green-dark)}
.emp4-check-item strong{font-size:10.5px}
.emp4-check-item small{font-size:9.5px;color:var(--text-3);margin-top:2px}

/* Edit panel — hidden until admin deliberately opens it */
.emp4-edit-panel{margin-top:16px;overflow:hidden}
.emp4-edit-panel>summary{list-style:none;min-height:76px;padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer}
.emp4-edit-panel>summary::-webkit-details-marker{display:none}
.emp4-edit-panel>summary>span:first-child{display:grid;gap:3px}
.emp4-edit-panel>summary strong{font-size:13px}
.emp4-edit-panel>summary small{font-size:10px;color:var(--text-3)}
.emp4-edit-chevron{font-size:20px;color:var(--text-3);transition:transform .2s ease}
.emp4-edit-panel[open] .emp4-edit-chevron{transform:rotate(180deg)}
.emp4-edit-form{border-top:1px solid var(--border);padding:22px 20px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 18px}
.emp4-edit-form label{display:flex;flex-direction:column;gap:7px;min-width:0}
.emp4-edit-form label>span{font-size:9.5px;text-transform:uppercase;letter-spacing:.055em;color:var(--text-3);font-weight:700}
.emp4-edit-form input{height:40px;border:1px solid var(--border);border-radius:7px;background:var(--surface-2);color:var(--text);padding:0 11px;outline:0;font-size:11.5px}
.emp4-edit-form input:focus{border-color:color-mix(in srgb,var(--cyan) 60%,var(--border));box-shadow:0 0 0 3px color-mix(in srgb,var(--cyan) 9%,transparent)}
.emp4-edit-actions{grid-column:1/-1;border-top:1px solid var(--border);padding-top:16px;display:flex;justify-content:flex-end}

/* Empty states and document rows */
.emp4-empty{min-height:260px;padding:44px 24px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.emp4-empty-icon{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;background:var(--surface-3);color:var(--text-3);margin-bottom:14px}
.emp4-empty h3{margin:0 0 6px;font-size:15px}
.emp4-empty p{margin:0;max-width:480px;color:var(--text-3);font-size:11px;line-height:1.6}
.emp4-doc-list{display:grid;gap:10px}
.emp4-doc-row{min-height:74px;padding:13px 15px;display:grid;grid-template-columns:40px minmax(240px,1fr) minmax(120px,.55fr) minmax(120px,.55fr) auto;gap:16px;align-items:center}
.emp4-doc-icon{width:38px;height:38px;border-radius:9px;background:var(--surface-3);display:grid;place-items:center;color:var(--cyan-dark)}
.emp4-doc-name,.emp4-doc-row>div:not(.emp4-doc-icon):not(.emp4-doc-name){display:flex;flex-direction:column;gap:4px;min-width:0}
.emp4-doc-name strong{font-size:11.5px}
.emp4-doc-name small,.emp4-doc-row>div:not(.emp4-doc-icon):not(.emp4-doc-name) span{font-size:9.5px;color:var(--text-3)}
.emp4-doc-row>div:not(.emp4-doc-icon):not(.emp4-doc-name) strong{font-size:10.5px}

/* Ensure profile tables breathe more than generic tables */
.emp4-content .data-table th{padding:12px 16px;font-size:9.5px}
.emp4-content .data-table td{padding:15px 16px;font-size:11px}

/* Responsive employee module */
@media(max-width:1280px){
  .emp4-roster-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .emp4-roster-stats article:nth-child(2){border-right:0}
  .emp4-roster-stats article:nth-child(-n+2){border-bottom:1px solid var(--border)}
  .emp4-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .emp4-kpis article:nth-child(2){border-right:0}
  .emp4-kpis article:nth-child(-n+2){border-bottom:1px solid var(--border)}
  .emp4-check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .emp4-fields-3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .emp4-edit-form{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:980px){
  .emp4-profile-topline{align-items:flex-start;flex-direction:column}
  .emp4-profile-actions{width:100%;justify-content:flex-end}
  .emp4-profile-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .emp4-profile-facts>div:nth-child(2){border-right:0}
  .emp4-profile-facts>div:nth-child(-n+2){border-bottom:1px solid var(--border)}
  .emp4-two-col{grid-template-columns:1fr}
  .emp4-doc-row{grid-template-columns:40px minmax(220px,1fr) minmax(120px,.55fr) auto}
  .emp4-doc-row>div:nth-of-type(4){display:none}
}
@media(max-width:720px){
  .emp4-roster-stats{grid-template-columns:1fr}
  .emp4-roster-stats article{border-right:0!important;border-bottom:1px solid var(--border)}
  .emp4-roster-stats article:last-child{border-bottom:0}
  .emp4-roster-toolbar{align-items:flex-start;flex-direction:column}
  .emp4-roster-search{width:100%}
  .emp4-profile-topline{padding:18px}
  .emp4-profile-identity{align-items:flex-start}
  .emp4-profile-avatar{width:50px;height:50px;flex-basis:50px;border-radius:12px}
  .emp4-profile-name-row{align-items:flex-start;flex-direction:column;gap:7px}
  .emp4-profile-name-row h1{font-size:21px;white-space:normal}
  .emp4-profile-actions{display:grid;grid-template-columns:1fr 1fr}
  .emp4-profile-actions>*{justify-content:center}
  .emp4-profile-facts{grid-template-columns:1fr}
  .emp4-profile-facts>div{border-right:0!important;border-bottom:1px solid var(--border)}
  .emp4-profile-facts>div:last-child{border-bottom:0}
  .emp4-section-title{align-items:flex-start;flex-direction:column}
  .emp4-admin-pill{white-space:normal}
  .emp4-kpis{grid-template-columns:1fr}
  .emp4-kpis article{border-right:0!important;border-bottom:1px solid var(--border)}
  .emp4-kpis article:last-child{border-bottom:0}
  .emp4-fields-2,.emp4-fields-3{grid-template-columns:1fr}
  .emp4-compliance-list{grid-template-columns:1fr}
  .emp4-compliance-list>div{border-right:0!important;border-bottom:1px solid var(--border)!important}
  .emp4-compliance-list>div:last-child{border-bottom:0!important}
  .emp4-check-grid{grid-template-columns:1fr}
  .emp4-edit-form{grid-template-columns:1fr}
  .emp4-doc-row{grid-template-columns:40px minmax(0,1fr) auto}
  .emp4-doc-row>div:nth-of-type(3),.emp4-doc-row>div:nth-of-type(4){display:none}
}

/* ========================================================================
   CEGEWATT CRM — Employee module V5
   Employee quick access, persistent admin editing and GPS time clock.
   ======================================================================== */

/* Sidebar employee quick links */
.nav-subitems{display:grid;gap:1px;margin:2px 0 5px 33px;padding-left:10px;border-left:1px solid rgba(255,255,255,.08)}
.nav-subitem{min-height:27px;display:flex;align-items:center;padding:4px 8px;border-radius:5px;color:#829094;font-size:10.25px;line-height:1.25;letter-spacing:.01em;position:relative}
.nav-subitem:hover{background:rgba(255,255,255,.04);color:#e8eef0}
.nav-subitem.active{background:rgba(32,168,216,.10);color:#fff;font-weight:650}
.nav-subitem.active:before{content:"";position:absolute;left:-11px;width:2px;height:14px;border-radius:4px;background:linear-gradient(180deg,var(--green),var(--cyan))}

/* Admin form refinements */
.emp4-edit-form input,.emp4-edit-form select{height:42px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);color:var(--text);padding:0 11px;outline:0;font-size:11.5px;width:100%}
.emp4-edit-form input:focus,.emp4-edit-form select:focus{border-color:color-mix(in srgb,var(--cyan) 60%,var(--border));box-shadow:0 0 0 3px color-mix(in srgb,var(--cyan) 9%,transparent)}
.emp5-error-notice{border-color:color-mix(in srgb,var(--danger) 30%,var(--border));background:color-mix(in srgb,var(--danger) 7%,var(--surface));color:var(--danger)}

/* Pointage */
.emp5-pointage-heading{align-items:center}
.emp5-live-pill{display:inline-flex;align-items:center;gap:7px;height:30px;padding:0 10px;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--text-3);font-size:9.5px;font-weight:650;white-space:nowrap}
.emp5-live-pill i{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px color-mix(in srgb,var(--green) 10%,transparent)}
.emp5-clock-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(340px,.8fr);gap:16px;margin-bottom:16px}
.emp5-clock-card,.emp5-map-card{overflow:hidden}
.emp5-clock-card-head{min-height:105px;padding:20px 22px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:20px;background:linear-gradient(180deg,color-mix(in srgb,var(--surface-2) 72%,var(--surface)),var(--surface))}
.emp5-clock-card-head h3{margin:4px 0 4px;font-size:18px;letter-spacing:-.025em}
.emp5-clock-card-head p{margin:0;color:var(--text-3);font-size:10.5px;max-width:600px}
.emp5-current-time{font-size:28px;line-height:1;font-weight:760;letter-spacing:-.04em;color:var(--text);font-variant-numeric:tabular-nums;white-space:nowrap}
.emp5-timeclock-form{padding:20px 22px 18px}
.emp5-worksite-field{display:grid;gap:7px;margin-bottom:14px}
.emp5-worksite-field>span{font-size:9.5px;text-transform:uppercase;letter-spacing:.065em;color:var(--text-3);font-weight:750}
.emp5-worksite-field input{height:44px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);color:var(--text);padding:0 12px;outline:0;font-size:12px}
.emp5-worksite-field input:focus{border-color:color-mix(in srgb,var(--cyan) 55%,var(--border));box-shadow:0 0 0 3px color-mix(in srgb,var(--cyan) 8%,transparent)}
.emp5-allowance-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px}
.emp5-toggle-card{min-height:64px;border:1px solid var(--border);border-radius:9px;background:var(--surface);display:grid;grid-template-columns:24px 1fr;align-items:center;gap:10px;padding:10px 12px;cursor:pointer;transition:border-color .15s ease,background .15s ease}
.emp5-toggle-card:hover{border-color:color-mix(in srgb,var(--cyan) 35%,var(--border));background:var(--surface-2)}
.emp5-toggle-card input{position:absolute;opacity:0;pointer-events:none}
.emp5-toggle-box{width:22px;height:22px;border-radius:6px;border:1px solid var(--border);background:var(--surface-2);display:grid;place-items:center}
.emp5-toggle-card input:checked+.emp5-toggle-box{border-color:var(--cyan-dark);background:var(--cyan-dark)}
.emp5-toggle-card input:checked+.emp5-toggle-box:after{content:"✓";color:#fff;font-size:12px;font-weight:800}
.emp5-toggle-card>span:last-child{display:grid;gap:2px;min-width:0}
.emp5-toggle-card strong{font-size:10.5px}
.emp5-toggle-card small{font-size:9.25px;color:var(--text-3)}
.emp5-clock-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.emp5-action-button{min-height:84px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);padding:13px 14px;display:grid;grid-template-columns:34px 1fr;grid-template-rows:auto auto;column-gap:10px;align-items:center;text-align:left;cursor:pointer;transition:transform .15s ease,border-color .15s ease,background .15s ease;box-shadow:none}
.emp5-action-button>span{grid-row:1/3;width:34px;height:34px;border-radius:8px;display:grid;place-items:center;background:var(--surface-3);color:var(--text-3)}
.emp5-action-button strong{font-size:11.5px;line-height:1.25;align-self:end}
.emp5-action-button small{font-size:9.25px;color:var(--text-3);align-self:start;margin-top:2px}
.emp5-action-button:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--cyan) 35%,var(--border));background:var(--surface-2)}
.emp5-action-button.primary{border-color:color-mix(in srgb,var(--cyan) 32%,var(--border));background:color-mix(in srgb,var(--cyan) 6%,var(--surface))}
.emp5-action-button.primary>span{background:color-mix(in srgb,var(--cyan) 12%,var(--surface));color:var(--cyan-dark)}
.emp5-action-button.danger{border-color:color-mix(in srgb,var(--danger) 24%,var(--border))}
.emp5-action-button.danger>span{background:color-mix(in srgb,var(--danger) 9%,var(--surface));color:var(--danger)}
.emp5-action-button.wide{grid-column:1/-1}
.emp5-action-button:disabled{opacity:.58;cursor:wait;transform:none}
.emp5-action-button.is-loading strong:after{content:" · localisation…";font-weight:500;color:var(--text-3)}
.emp5-location-status{margin-top:14px;min-height:38px;padding:9px 10px;border-top:1px solid var(--border);display:flex;align-items:center;gap:8px;color:var(--text-3);font-size:9.5px;line-height:1.45}
.emp5-location-status.locating{color:var(--cyan-dark)}
.emp5-location-status.error{color:var(--danger)}
.emp5-day-complete{grid-column:1/-1;min-height:78px;border:1px solid color-mix(in srgb,var(--green) 22%,var(--border));border-radius:10px;background:color-mix(in srgb,var(--green) 6%,var(--surface));display:flex;align-items:center;gap:12px;padding:14px}
.emp5-day-complete>span{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--green) 13%,var(--surface));color:var(--green-dark)}
.emp5-day-complete>div{display:grid;gap:3px}
.emp5-day-complete strong{font-size:12px}.emp5-day-complete small{font-size:9.75px;color:var(--text-3)}

.emp5-map-card{display:flex;flex-direction:column;min-height:100%}
.emp5-map-card-head{min-height:72px;padding:15px 17px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:12px}
.emp5-map-card-head h3{font-size:13px;margin:3px 0 0}.emp5-map-card-head>span{font-size:10px;color:var(--text-3);font-variant-numeric:tabular-nums}
.emp5-mini-map{width:100%;height:246px;border:0;background:var(--surface-3);filter:saturate(.82) contrast(.95)}
.emp5-map-meta{display:grid;grid-template-columns:1fr 1fr;padding:0 16px}
.emp5-map-meta>div{min-height:70px;padding:13px 0;display:flex;flex-direction:column;gap:4px;border-bottom:1px solid var(--border)}
.emp5-map-meta>div:nth-child(odd){padding-right:14px;border-right:1px solid var(--border)}
.emp5-map-meta>div:nth-child(even){padding-left:14px}
.emp5-map-meta>div:last-child{grid-column:1/-1;border-right:0;border-bottom:0;padding-left:0;padding-right:0}
.emp5-map-meta span{font-size:9px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);font-weight:700}
.emp5-map-meta strong{font-size:10.5px;line-height:1.45;overflow-wrap:anywhere}
.emp5-map-empty{flex:1;min-height:330px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:28px;color:var(--text-3)}
.emp5-map-empty>span{width:52px;height:52px;border-radius:14px;background:var(--surface-3);display:grid;place-items:center;margin-bottom:12px;color:var(--cyan-dark)}
.emp5-map-empty strong{font-size:12px;color:var(--text);margin-bottom:4px}.emp5-map-empty p{font-size:10px;max-width:260px;margin:0;line-height:1.55}

.emp5-day-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow:hidden;box-shadow:var(--shadow);margin-bottom:16px}
.emp5-day-summary article{min-height:96px;padding:16px 18px;display:flex;flex-direction:column;justify-content:center;border-right:1px solid var(--border)}
.emp5-day-summary article:last-child{border-right:0}
.emp5-day-summary span{font-size:9.25px;text-transform:uppercase;letter-spacing:.065em;color:var(--text-3);font-weight:750}
.emp5-day-summary strong{font-size:20px;letter-spacing:-.035em;margin:5px 0 1px;min-height:30px;display:flex;align-items:center}
.emp5-day-summary small{font-size:9.5px;color:var(--text-3)}

.emp5-report-card{overflow:hidden;margin-bottom:24px}
.emp5-report-head{min-height:78px;padding:16px 18px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:16px}
.emp5-report-head h3{font-size:14px;margin:3px 0 2px}.emp5-report-head p{font-size:9.75px;color:var(--text-3);margin:0}
.emp5-report-count{font-size:9.5px;color:var(--text-3);border:1px solid var(--border);border-radius:999px;padding:5px 8px;white-space:nowrap}
.emp5-report-empty{min-height:130px;display:grid;place-items:center;color:var(--text-3);font-size:10.5px;padding:24px;text-align:center}
.emp5-timeline{padding:4px 18px 10px}
.emp5-timeline-item{display:grid;grid-template-columns:30px 1fr;gap:12px;position:relative;padding:13px 0}
.emp5-timeline-item:not(:last-child):before{content:"";position:absolute;left:14px;top:40px;bottom:-3px;width:1px;background:var(--border)}
.emp5-timeline-dot{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--surface-3);border:1px solid var(--border);color:var(--cyan-dark);font-size:9px;font-weight:800;z-index:1}
.emp5-timeline-main{min-width:0;padding-top:2px}
.emp5-timeline-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.emp5-timeline-title strong{font-size:11px}.emp5-timeline-title time{font-size:10px;color:var(--text-3);font-variant-numeric:tabular-nums}
.emp5-timeline-main>p{margin:4px 0 6px;font-size:10px;color:var(--text-2)}
.emp5-timeline-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;color:var(--text-3);font-size:9px}.emp5-timeline-meta>span{display:inline-flex;align-items:center;gap:4px}
.emp5-small-badge{padding:2px 5px;border:1px solid var(--border);border-radius:999px;background:var(--surface-2);color:var(--text-2)!important;font-weight:650}
.emp5-history-heading{margin-top:28px}

@media(max-width:1180px){
  .emp5-clock-layout{grid-template-columns:1fr}
  .emp5-map-card{min-height:0}
  .emp5-mini-map{height:220px}
}
@media(max-width:820px){
  .nav-subitems{margin-left:29px}
  .emp5-day-summary{grid-template-columns:1fr 1fr}
  .emp5-day-summary article:nth-child(2){border-right:0}.emp5-day-summary article:nth-child(-n+2){border-bottom:1px solid var(--border)}
}
@media(max-width:620px){
  .emp5-pointage-heading{align-items:flex-start}.emp5-live-pill{white-space:normal;height:auto;min-height:30px}
  .emp5-clock-card-head{align-items:flex-start;padding:17px 16px}.emp5-current-time{font-size:22px}
  .emp5-timeclock-form{padding:16px}
  .emp5-allowance-row,.emp5-clock-actions{grid-template-columns:1fr}
  .emp5-action-button.wide{grid-column:auto}
  .emp5-mini-map{height:190px}
  .emp5-map-meta{grid-template-columns:1fr}.emp5-map-meta>div,.emp5-map-meta>div:nth-child(odd),.emp5-map-meta>div:nth-child(even),.emp5-map-meta>div:last-child{grid-column:auto;padding:12px 0;border-right:0;border-bottom:1px solid var(--border)}.emp5-map-meta>div:last-child{border-bottom:0}
  .emp5-day-summary{grid-template-columns:1fr 1fr}.emp5-day-summary article{min-height:84px;padding:13px}.emp5-day-summary strong{font-size:17px}
  .emp5-report-head{align-items:flex-start}.emp5-report-count{display:none}
}
.nav-item.child-active{color:#e8eef0;font-weight:600}.nav-item.child-active:after{content:"";margin-left:auto;width:5px;height:5px;border-radius:50%;background:var(--cyan)}

/* CEGEWATT CRM V6 — édition RH autonome + pointage simplifié */
.emp6-fields-grid{gap:0!important}
.emp6-editable-field{min-height:108px;padding:18px 20px;border-right:1px solid var(--border);border-bottom:1px solid var(--border);display:flex;flex-direction:column;justify-content:center;position:relative;background:var(--surface)}
.emp6-fields-grid .emp6-editable-field:nth-child(3n){border-right:0}
.emp6-field-topline{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px}
.emp6-field-topline>span{font-size:9px;text-transform:uppercase;letter-spacing:.075em;color:var(--text-3);font-weight:760}
.emp6-editable-field>strong{font-size:12.5px;line-height:1.45;overflow-wrap:anywhere;font-weight:650}
.emp6-pencil-button{width:28px;height:28px;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--text-3);display:grid;place-items:center;cursor:pointer;opacity:.62;transition:all .15s ease}
.emp6-editable-field:hover .emp6-pencil-button{opacity:1;border-color:var(--border);background:var(--surface-2);color:var(--cyan-dark)}
.emp6-quick-edit{margin-top:12px;padding-top:12px;border-top:1px solid var(--border);display:grid;gap:9px}
.emp6-quick-edit[hidden]{display:none!important}
.emp6-quick-edit input,.emp6-quick-edit select{width:100%;height:39px;border:1px solid var(--border);border-radius:7px;background:var(--surface-2);color:var(--text);padding:0 10px;font-size:11px;outline:0}
.emp6-quick-edit input:focus,.emp6-quick-edit select:focus{border-color:color-mix(in srgb,var(--cyan) 55%,var(--border));box-shadow:0 0 0 3px color-mix(in srgb,var(--cyan) 8%,transparent)}
.emp6-quick-actions{display:flex;gap:7px;align-items:center}
.emp6-save-mini,.emp6-cancel-mini{height:31px;padding:0 10px;border-radius:6px;font-size:9.5px;font-weight:700;cursor:pointer}
.emp6-save-mini{border:1px solid var(--cyan-dark);background:var(--cyan-dark);color:#fff}
.emp6-cancel-mini{border:1px solid var(--border);background:var(--surface);color:var(--text-2)}

.emp6-route-entry{border:1px solid var(--border);border-radius:10px;background:var(--surface-2);padding:14px;margin:0 0 12px}
.emp6-route-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin-bottom:11px}
.emp6-route-heading>div{display:grid;gap:3px}.emp6-route-heading strong{font-size:11.5px}.emp6-route-heading small{font-size:9px;color:var(--text-3)}
.emp6-route-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.emp6-route-grid label{display:grid;gap:6px}.emp6-route-grid label>span{font-size:9px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);font-weight:720}
.emp6-number-suffix{height:42px;border:1px solid var(--border);border-radius:8px;background:var(--surface);display:flex;align-items:center;overflow:hidden}
.emp6-number-suffix input{min-width:0;flex:1;height:100%;border:0;background:transparent;color:var(--text);padding:0 11px;font-size:12px;outline:0}
.emp6-number-suffix em{padding:0 11px;border-left:1px solid var(--border);font-size:9.5px;color:var(--text-3);font-style:normal}
.emp6-day-details-save{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 0 15px;margin-bottom:15px;border-bottom:1px solid var(--border)}
.emp6-day-details-save small{font-size:9px;color:var(--text-3);text-align:right;line-height:1.45}
.emp6-save-day-details{flex:0 0 auto}
.emp6-location-permission{margin:14px 0 0;border:1px solid color-mix(in srgb,var(--warning) 28%,var(--border));background:color-mix(in srgb,var(--warning) 5%,var(--surface));border-radius:10px;padding:13px;display:grid;grid-template-columns:38px 1fr;gap:11px}
.emp6-location-permission[hidden]{display:none!important}
.emp6-geo-icon{width:38px;height:38px;border-radius:9px;background:color-mix(in srgb,var(--warning) 10%,var(--surface));color:var(--warning);display:grid;place-items:center}
.emp6-location-permission>div:last-child{display:grid;gap:5px}.emp6-location-permission strong{font-size:11px}.emp6-location-permission p{font-size:9.5px;color:var(--text-3);line-height:1.55;margin:0;max-width:720px}.emp6-location-permission .secondary-button{justify-self:start;margin-top:4px}

@media(max-width:900px){
  .emp6-fields-grid .emp6-editable-field{border-right:0}
  .emp6-fields-grid{grid-template-columns:1fr 1fr!important}
  .emp6-fields-grid .emp6-editable-field:nth-child(odd){border-right:1px solid var(--border)}
}
@media(max-width:620px){
  .emp6-fields-grid{grid-template-columns:1fr!important}
  .emp6-fields-grid .emp6-editable-field{border-right:0!important;min-height:94px;padding:15px 16px}
  .emp6-route-grid{grid-template-columns:1fr}
  .emp6-route-heading{align-items:flex-start;flex-direction:column;gap:4px}
  .emp6-day-details-save{align-items:flex-start;flex-direction:column}.emp6-day-details-save small{text-align:left}
}

/* V7 — Pointage fiable, indemnités exclusives et rapports comptables */
.emp7-allowance-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin:2px 0 8px}.emp7-allowance-heading>span{font-size:10px;font-weight:750;color:var(--text)}.emp7-allowance-heading small{font-size:9px;color:var(--text-3)}
.emp7-radio-row{grid-template-columns:repeat(3,minmax(0,1fr))!important}.emp7-radio-card input[type="radio"]{position:absolute;opacity:0;pointer-events:none}.emp7-radio-card:has(input:checked){border-color:color-mix(in srgb,var(--cyan) 45%,var(--border));background:color-mix(in srgb,var(--cyan) 6%,var(--surface))}.emp7-radio-card:has(input:checked) .emp5-toggle-box{border-color:var(--cyan-dark);background:var(--cyan-dark);box-shadow:inset 0 0 0 4px var(--surface)}
.emp5-action-button:disabled{opacity:.55;cursor:wait}.emp5-location-status.success{border-color:color-mix(in srgb,var(--success) 30%,var(--border));color:var(--success)}
.emp7-monthly-report-card{margin:18px 0 24px;padding:18px;display:flex;align-items:center;justify-content:space-between;gap:24px;background:linear-gradient(135deg,color-mix(in srgb,var(--surface) 98%,var(--cyan)),color-mix(in srgb,var(--surface) 98%,var(--green)))}.emp7-monthly-report-copy{max-width:720px}.emp7-monthly-report-copy h3{margin:3px 0 5px;font-size:15px}.emp7-monthly-report-copy p{margin:0;color:var(--text-3);font-size:10.5px;line-height:1.55}.emp7-monthly-report-actions{display:flex;align-items:end;gap:9px;flex:0 0 auto}.emp7-monthly-report-actions label{display:grid;gap:5px}.emp7-monthly-report-actions label span{font-size:9px;color:var(--text-3);font-weight:700}.emp7-monthly-report-actions input{height:37px;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--text);padding:0 9px}

.report7-hero{padding:22px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:14px}.report7-hero h1{margin:3px 0 5px;font-size:24px;letter-spacing:-.03em}.report7-hero p{margin:0;color:var(--text-3);font-size:11px}.report7-toolbar{padding:13px 15px;display:flex;justify-content:space-between;align-items:end;gap:14px;margin-bottom:14px}.report7-month-form,.report7-actions{display:flex;align-items:end;gap:9px}.report7-month-form label{display:grid;gap:5px}.report7-month-form label span{font-size:9px;color:var(--text-3);font-weight:700}.report7-month-form input,.report7-settings-form input{height:39px;border:1px solid var(--border);border-radius:7px;background:var(--surface-2);color:var(--text);padding:0 10px;outline:0}.report7-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border:1px solid var(--border);border-radius:12px;background:var(--surface);overflow:hidden;margin-bottom:14px;box-shadow:var(--shadow)}.report7-summary article{padding:14px 15px;border-right:1px solid var(--border);display:grid;gap:5px}.report7-summary article:last-child{border-right:0}.report7-summary span{font-size:9px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);font-weight:750}.report7-summary strong{font-size:17px;letter-spacing:-.02em}.report7-table-panel{margin-bottom:14px}.report7-table{min-width:1180px}.report7-empty{padding:30px;text-align:center;color:var(--text-3)}.report7-send-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:32px}.report7-settings-form{padding:16px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.report7-settings-form label{display:grid;gap:5px}.report7-settings-form label span{font-size:9px;color:var(--text-3);font-weight:700}.report7-settings-form button{grid-column:1/-1;justify-self:start}.report7-validation-body{padding:16px;display:grid;gap:14px}.report7-validation-body>p{margin:0;color:var(--text-2);font-size:11px;line-height:1.6}.report7-validation-body>small{color:var(--text-3);font-size:9px;line-height:1.5}.report7-send-button{width:100%;justify-content:center}.report7-send-button:disabled{opacity:.45;cursor:not-allowed}.report7-valid-state{display:flex;gap:10px;align-items:flex-start;padding:12px;border:1px solid color-mix(in srgb,var(--success) 25%,var(--border));border-radius:9px;background:color-mix(in srgb,var(--success) 5%,var(--surface));color:var(--success)}.report7-valid-state>div{display:grid;gap:3px}.report7-valid-state strong{font-size:11px}.report7-valid-state span{font-size:9.5px;color:var(--text-3)}

@media(max-width:980px){.emp7-radio-row{grid-template-columns:1fr!important}.emp7-monthly-report-card{align-items:flex-start;flex-direction:column}.emp7-monthly-report-actions{width:100%;flex-wrap:wrap}.report7-summary{grid-template-columns:repeat(2,1fr)}.report7-summary article{border-bottom:1px solid var(--border)}.report7-send-grid{grid-template-columns:1fr}}
@media(max-width:620px){.emp7-allowance-heading{align-items:flex-start;flex-direction:column;gap:3px}.emp7-monthly-report-actions{align-items:stretch;flex-direction:column}.report7-hero,.report7-toolbar{align-items:flex-start;flex-direction:column}.report7-month-form{width:100%;align-items:stretch;flex-direction:column}.report7-summary{grid-template-columns:1fr}.report7-settings-form{grid-template-columns:1fr}.report7-settings-form button{grid-column:auto}}

/* ===== Documentation technique V11 ===== */
.techdoc-heading { margin-bottom: 22px; }
.techdoc-category-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin-bottom: 18px;
}
.techdoc-category-card {
    display: flex;
    align-items: center;
    gap: 12px;
    min-height: 82px;
    padding: 16px;
    border: 1px solid var(--border);
    border-radius: 14px;
    background: var(--panel);
    color: var(--text);
    text-decoration: none;
    transition: border-color .18s ease, transform .18s ease, box-shadow .18s ease;
}
.techdoc-category-card:hover {
    border-color: rgba(33, 183, 190, .55);
    transform: translateY(-1px);
    box-shadow: 0 10px 28px rgba(15, 23, 42, .06);
}
.techdoc-category-card > span:nth-child(2) { min-width: 0; flex: 1; }
.techdoc-category-card strong { display: block; font-size: 14px; margin-bottom: 3px; }
.techdoc-category-card small { display: block; color: var(--muted); font-size: 12px; }
.techdoc-category-icon {
    width: 38px;
    height: 38px;
    border-radius: 10px;
    display: grid;
    place-items: center;
    color: #0aa7af;
    background: rgba(18, 186, 194, .10);
}
.techdoc-arrow { color: var(--muted); font-size: 17px; }
.techdoc-workspace {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(340px, 400px);
    gap: 18px;
    align-items: start;
}
.techdoc-library,
.techdoc-assistant {
    border: 1px solid var(--border);
    border-radius: 16px;
    background: var(--panel);
}
.techdoc-library { padding: 20px; }
.techdoc-section-head {
    display: flex;
    justify-content: space-between;
    align-items: end;
    gap: 18px;
    padding-bottom: 18px;
    border-bottom: 1px solid var(--border);
}
.techdoc-section-head h2 { margin: 3px 0 5px; font-size: 20px; }
.techdoc-section-head p { margin: 0; color: var(--muted); font-size: 13px; }
.techdoc-global-search {
    min-width: 300px;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 0 12px;
    min-height: 42px;
    border: 1px solid var(--border);
    border-radius: 10px;
    background: var(--bg-soft);
    color: var(--muted);
}
.techdoc-global-search input {
    width: 100%;
    border: 0;
    outline: 0;
    background: transparent;
    color: var(--text);
    font: inherit;
    font-size: 13px;
}
.techdoc-category-sections { display: grid; gap: 16px; padding-top: 18px; }
.techdoc-manufacturer-section {
    scroll-margin-top: 90px;
    padding: 18px;
    border: 1px solid var(--border);
    border-radius: 14px;
    background: var(--bg-soft);
}
.techdoc-manufacturer-head { margin-bottom: 14px; }
.techdoc-manufacturer-head h3 { margin: 4px 0 5px; font-size: 17px; }
.techdoc-manufacturer-head p { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.55; }
.techdoc-manufacturer-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}
.techdoc-manufacturer-card {
    padding: 14px;
    border: 1px solid var(--border);
    border-radius: 12px;
    background: var(--panel);
}
.techdoc-manufacturer-title { display: flex; align-items: center; gap: 10px; }
.techdoc-maker-avatar {
    width: 34px;
    height: 34px;
    border-radius: 9px;
    display: grid;
    place-items: center;
    background: #0f1720;
    color: #fff;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .06em;
}
.techdoc-manufacturer-title strong { display: block; font-size: 13px; }
.techdoc-manufacturer-title small { display: block; color: var(--muted); font-size: 11px; margin-top: 2px; }
.techdoc-mini-list { display: grid; gap: 5px; margin-top: 12px; }
.techdoc-mini-list span { display: flex; align-items: center; gap: 6px; color: var(--muted); font-size: 11px; }
.techdoc-empty-maker { margin: 12px 0 0; color: var(--muted); font-size: 11px; font-style: italic; }
.techdoc-assistant {
    position: sticky;
    top: 18px;
    min-height: 640px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}
.techdoc-assistant-head {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 15px 16px;
    border-bottom: 1px solid var(--border);
}
.techdoc-ai-mark {
    width: 34px;
    height: 34px;
    border-radius: 10px;
    display: grid;
    place-items: center;
    color: #062d2f;
    background: linear-gradient(135deg, #42d7ca, #2fb6dc);
}
.techdoc-assistant-head > div:nth-child(2) { flex: 1; }
.techdoc-assistant-head strong { display: block; font-size: 13px; }
.techdoc-assistant-head small { display: block; margin-top: 2px; color: var(--muted); font-size: 11px; }
.techdoc-clear-chat { font-size: 11px; color: var(--muted); text-decoration: none; }
.techdoc-chat {
    flex: 1;
    min-height: 430px;
    max-height: 600px;
    overflow: auto;
    padding: 16px;
    background: var(--bg-soft);
}
.techdoc-welcome { text-align: center; padding: 44px 12px 20px; }
.techdoc-welcome-icon {
    width: 46px;
    height: 46px;
    margin: 0 auto 12px;
    border-radius: 14px;
    display: grid;
    place-items: center;
    color: #0aa7af;
    background: rgba(18, 186, 194, .10);
}
.techdoc-welcome h3 { margin: 0 0 7px; font-size: 17px; }
.techdoc-welcome p { margin: 0 auto; max-width: 290px; color: var(--muted); font-size: 12px; line-height: 1.55; }
.techdoc-suggestions { display: grid; gap: 7px; margin-top: 18px; }
.techdoc-suggestions button {
    width: 100%;
    padding: 9px 10px;
    border: 1px solid var(--border);
    border-radius: 9px;
    background: var(--panel);
    color: var(--text);
    text-align: left;
    font: inherit;
    font-size: 11px;
    cursor: pointer;
}
.techdoc-message { display: flex; flex-direction: column; margin-bottom: 13px; }
.techdoc-message.user { align-items: flex-end; }
.techdoc-message.assistant { align-items: flex-start; }
.techdoc-message-bubble {
    max-width: 90%;
    padding: 10px 12px;
    border: 1px solid var(--border);
    border-radius: 12px;
    background: var(--panel);
}
.techdoc-message.user .techdoc-message-bubble {
    border-color: rgba(13, 167, 175, .22);
    background: rgba(13, 167, 175, .10);
}
.techdoc-message-bubble p { margin: 0; font-size: 12px; line-height: 1.55; }
.techdoc-message-bubble time { display: block; margin-top: 5px; color: var(--muted); font-size: 9px; }
.techdoc-result-list { width: 100%; display: grid; gap: 7px; margin-top: 8px; }
.techdoc-result-card {
    display: grid;
    gap: 3px;
    padding: 10px;
    border: 1px solid var(--border);
    border-radius: 10px;
    background: var(--panel);
}
.techdoc-result-card span { color: #0aa7af; font-size: 9px; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }
.techdoc-result-card strong { font-size: 11px; line-height: 1.35; }
.techdoc-result-card small { color: var(--muted); font-size: 10px; }
.techdoc-result-card em { color: var(--muted); font-size: 10px; }
.techdoc-result-card a { color: #0aa7af; font-size: 10px; font-weight: 700; text-decoration: none; }
.techdoc-chat-form {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 8px;
    padding: 12px;
    border-top: 1px solid var(--border);
}
.techdoc-chat-form textarea {
    min-height: 48px;
    max-height: 110px;
    resize: vertical;
    padding: 10px 11px;
    border: 1px solid var(--border);
    border-radius: 10px;
    background: var(--bg-soft);
    color: var(--text);
    font: inherit;
    font-size: 12px;
    outline: none;
}
.techdoc-chat-form .primary-button { align-self: end; min-width: 44px; height: 44px; padding: 0; justify-content: center; }
.techdoc-ai-note { margin: 0; padding: 0 14px 12px; color: var(--muted); font-size: 9px; line-height: 1.45; }

@media (max-width: 1220px) {
    .techdoc-category-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .techdoc-workspace { grid-template-columns: 1fr; }
    .techdoc-assistant { position: static; min-height: 560px; }
}
@media (max-width: 760px) {
    .techdoc-category-grid { grid-template-columns: 1fr; }
    .techdoc-library { padding: 14px; }
    .techdoc-section-head { align-items: stretch; flex-direction: column; }
    .techdoc-global-search { min-width: 0; width: 100%; }
    .techdoc-manufacturer-grid { grid-template-columns: 1fr; }
    .techdoc-manufacturer-section { padding: 14px; }
}

/* ===== Chantiers + rapports d'intervention V12 ===== */
.worksites-heading { margin-bottom: 20px; }
.worksite-kpis,
.worksite-detail-kpis {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin-bottom: 18px;
}
.worksite-kpis article,
.worksite-detail-kpis article {
    padding: 16px 18px;
    border: 1px solid var(--border);
    border-radius: 14px;
    background: var(--panel);
}
.worksite-kpis span,
.worksite-detail-kpis span { display: block; color: var(--muted); font-size: 11px; margin-bottom: 7px; }
.worksite-kpis strong,
.worksite-detail-kpis strong { display: block; font-size: 20px; letter-spacing: -.02em; }
.worksite-kpis small,
.worksite-detail-kpis small { display: block; color: var(--muted); font-size: 10px; margin-top: 5px; }
.worksites-panel { overflow: hidden; }
.worksites-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 18px 20px;
    border-bottom: 1px solid var(--border);
}
.worksites-toolbar h2 { margin: 3px 0 0; font-size: 18px; }
.worksites-search {
    min-width: 330px;
    min-height: 42px;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 0 12px;
    border: 1px solid var(--border);
    border-radius: 10px;
    background: var(--bg-soft);
    color: var(--muted);
}
.worksites-search input { width: 100%; border: 0; outline: 0; background: transparent; color: var(--text); font: inherit; font-size: 12px; }
.worksites-client-groups { display: grid; gap: 16px; padding: 18px; }
.worksite-client-group { border: 1px solid var(--border); border-radius: 14px; overflow: hidden; background: var(--panel); }
.worksite-client-header {
    display: grid;
    grid-template-columns: 38px minmax(0, 1fr) auto;
    align-items: center;
    gap: 11px;
    padding: 14px 16px;
    background: var(--bg-soft);
    border-bottom: 1px solid var(--border);
}
.worksite-client-avatar { width: 38px; height: 38px; border-radius: 10px; display: grid; place-items: center; background: #0f1720; color: #fff; font-size: 11px; font-weight: 800; letter-spacing: .06em; }
.worksite-client-header span { display: block; color: var(--muted); font-size: 9px; text-transform: uppercase; letter-spacing: .08em; font-weight: 800; }
.worksite-client-header h3 { margin: 2px 0 0; font-size: 14px; }
.worksite-client-header > strong { color: var(--muted); font-size: 11px; font-weight: 600; }
.worksite-list { display: grid; }
.worksite-row {
    display: grid;
    grid-template-columns: minmax(280px, 1.8fr) repeat(4, minmax(95px, .55fr)) auto;
    align-items: center;
    gap: 14px;
    padding: 15px 16px;
    color: var(--text);
    text-decoration: none;
    border-bottom: 1px solid var(--border);
    transition: background .16s ease;
}
.worksite-row:last-child { border-bottom: 0; }
.worksite-row:hover { background: color-mix(in srgb, var(--bg-soft) 78%, transparent); }
.worksite-main { display: flex; align-items: flex-start; gap: 10px; min-width: 0; }
.worksite-main > div { min-width: 0; }
.worksite-main strong { display: block; font-size: 13px; line-height: 1.35; }
.worksite-main small { display: block; margin-top: 4px; color: var(--muted); font-size: 10px; line-height: 1.45; }
.worksite-status-dot { width: 8px; height: 8px; margin-top: 5px; border-radius: 50%; background: #a8b0b4; box-shadow: 0 0 0 4px rgba(168,176,180,.12); flex: 0 0 auto; }
.worksite-status-dot.is-active { background: #18b47b; box-shadow: 0 0 0 4px rgba(24,180,123,.12); }
.worksite-meta span { display: block; color: var(--muted); font-size: 9px; margin-bottom: 4px; }
.worksite-meta strong { display: block; font-size: 11px; font-weight: 700; }
.worksite-open { color: #0aa7af; font-size: 11px; font-weight: 800; white-space: nowrap; }

.worksite-detail-heading { margin-bottom: 18px; }
.worksite-detail-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(310px, 370px); gap: 18px; align-items: start; }
.worksite-detail-main { display: grid; gap: 18px; }
.worksite-info-panel,
.worksite-documents-panel { overflow: hidden; }
.worksite-section-head { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 18px 20px; border-bottom: 1px solid var(--border); }
.worksite-section-head h2 { margin: 3px 0 4px; font-size: 18px; }
.worksite-section-head p { margin: 0; color: var(--muted); font-size: 11px; line-height: 1.5; }
.worksite-info-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); padding: 2px 20px 20px; }
.worksite-info-grid article { min-height: 84px; padding: 17px 14px 14px 0; border-bottom: 1px solid var(--border); }
.worksite-info-grid article:nth-last-child(-n+3) { border-bottom: 0; }
.worksite-info-grid span { display: block; color: var(--muted); font-size: 9px; text-transform: uppercase; letter-spacing: .08em; font-weight: 800; }
.worksite-info-grid strong { display: block; margin-top: 8px; font-size: 12px; line-height: 1.5; }
.worksite-info-grid .is-placeholder { color: var(--muted); font-style: italic; font-weight: 500; }
.worksite-document-list { display: grid; padding: 8px 20px 20px; }
.worksite-document-list article { display: grid; grid-template-columns: 38px minmax(0, 1fr) auto; align-items: center; gap: 11px; padding: 13px 0; border-bottom: 1px solid var(--border); }
.worksite-document-list article:last-child { border-bottom: 0; }
.worksite-doc-icon { width: 38px; height: 38px; border-radius: 10px; display: grid; place-items: center; background: rgba(14, 165, 173, .09); color: #0aa7af; }
.worksite-document-list strong { display: block; font-size: 12px; }
.worksite-document-list small { display: block; margin-top: 3px; color: var(--muted); font-size: 10px; }
.worksite-hermes-panel { position: sticky; top: 18px; overflow: hidden; border: 1px solid var(--border); border-radius: 16px; background: var(--panel); }
.worksite-hermes-head { display: flex; align-items: center; gap: 10px; padding: 15px 16px; border-bottom: 1px solid var(--border); }
.worksite-hermes-icon { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 10px; background: linear-gradient(135deg,#40d4c7,#2baed7); color: #06383a; }
.worksite-hermes-head strong { display: block; font-size: 12px; }
.worksite-hermes-head small { display: block; margin-top: 2px; color: var(--muted); font-size: 10px; }
.worksite-hermes-body { padding: 18px; }
.worksite-hermes-state { display: inline-flex; padding: 5px 8px; border-radius: 999px; background: rgba(14,165,173,.09); color: #0aa7af; font-size: 9px; font-weight: 800; text-transform: uppercase; letter-spacing: .07em; }
.worksite-hermes-body h3 { margin: 14px 0 7px; font-size: 17px; }
.worksite-hermes-body > p { margin: 0; color: var(--muted); font-size: 11px; line-height: 1.65; }
.worksite-hermes-fields { display: grid; gap: 7px; margin: 16px 0; }
.worksite-hermes-fields span { position: relative; padding: 8px 10px 8px 26px; border: 1px solid var(--border); border-radius: 9px; background: var(--bg-soft); font-size: 10px; }
.worksite-hermes-fields span::before { content: '✓'; position: absolute; left: 9px; color: #0aa7af; font-weight: 900; }
.worksite-hermes-action { width: 100%; justify-content: center; }
.worksite-hermes-note { display: block; margin-top: 10px; color: var(--muted); font-size: 9px; line-height: 1.5; }

.intervention-heading { margin-bottom: 18px; }
.intervention-layout { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 18px; align-items: start; }
.intervention-form { display: grid; gap: 16px; }
.intervention-section { overflow: hidden; }
.intervention-section-head { padding: 18px 20px; border-bottom: 1px solid var(--border); }
.intervention-section-head h2 { margin: 3px 0 4px; font-size: 18px; }
.intervention-section-head p { margin: 0; color: var(--muted); font-size: 11px; }
.intervention-grid { display: grid; gap: 14px 16px; padding: 18px 20px 20px; }
.intervention-grid.cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.intervention-grid.cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.intervention-grid .full { grid-column: 1 / -1; }
.intervention-grid .span-2 { grid-column: span 2; }
.field-group { display: grid; gap: 6px; }
.field-group > span { color: var(--text-2); font-size: 10px; font-weight: 800; }
.field-group > small { color: var(--muted); font-size: 9px; }
.field-group input,
.field-group select,
.field-group textarea {
    width: 100%;
    border: 1px solid var(--border);
    border-radius: 10px;
    background: var(--bg-soft);
    color: var(--text);
    font: inherit;
    font-size: 12px;
    line-height: 1.5;
    outline: 0;
    padding: 10px 11px;
}
.field-group textarea { resize: vertical; min-height: 92px; }
.field-group input:focus,
.field-group select:focus,
.field-group textarea:focus { border-color: rgba(13,167,175,.62); box-shadow: 0 0 0 3px rgba(13,167,175,.08); }
.intervention-form-actions { display: flex; align-items: center; gap: 10px; padding: 4px 0 18px; }
.intervention-sidebar { position: sticky; top: 18px; display: grid; gap: 14px; }
.intervention-side-card { padding: 17px; }
.intervention-side-card h3 { margin: 4px 0 10px; font-size: 15px; }
.intervention-side-card ol { margin: 0; padding-left: 18px; color: var(--muted); font-size: 10px; line-height: 1.65; }
.intervention-empty { margin: 0; color: var(--muted); font-size: 10px; }
.intervention-recent-list { display: grid; gap: 7px; }
.intervention-recent-list a { display: grid; gap: 2px; padding: 9px 10px; border: 1px solid var(--border); border-radius: 9px; background: var(--bg-soft); color: var(--text); text-decoration: none; }
.intervention-recent-list strong { font-size: 10px; }
.intervention-recent-list span { color: var(--muted); font-size: 9px; }
.intervention-recent-list small { margin-top: 2px; color: #0aa7af; font-size: 8px; font-weight: 800; }
.form-notice { margin-bottom: 14px; padding: 11px 13px; border-radius: 10px; font-size: 11px; font-weight: 700; }
.form-notice.success { color: #08734f; background: rgba(24,180,123,.09); border: 1px solid rgba(24,180,123,.2); }
.form-notice.danger { color: #b42318; background: rgba(213,55,55,.08); border: 1px solid rgba(213,55,55,.18); }

@media (max-width: 1200px) {
    .worksite-row { grid-template-columns: minmax(260px, 1.7fr) repeat(2, minmax(100px, .6fr)) auto; }
    .worksite-row .worksite-meta:nth-of-type(3),
    .worksite-row .worksite-meta:nth-of-type(4) { display: none; }
    .worksite-detail-grid { grid-template-columns: 1fr; }
    .worksite-hermes-panel { position: static; }
    .intervention-layout { grid-template-columns: 1fr; }
    .intervention-sidebar { position: static; grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 820px) {
    .worksite-kpis,
    .worksite-detail-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .worksites-toolbar { align-items: stretch; flex-direction: column; }
    .worksites-search { min-width: 0; width: 100%; }
    .worksite-row { grid-template-columns: 1fr auto; gap: 10px; }
    .worksite-row .worksite-meta { display: none !important; }
    .worksite-info-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .worksite-info-grid article:nth-last-child(-n+3) { border-bottom: 1px solid var(--border); }
    .intervention-grid.cols-2,
    .intervention-grid.cols-3 { grid-template-columns: 1fr; }
    .intervention-grid .span-2,
    .intervention-grid .full { grid-column: auto; }
    .intervention-sidebar { grid-template-columns: 1fr; }
}
@media (max-width: 560px) {
    .worksite-kpis,
    .worksite-detail-kpis { grid-template-columns: 1fr; }
    .worksites-client-groups { padding: 12px; }
    .worksite-client-header { grid-template-columns: 34px 1fr; }
    .worksite-client-header > strong { grid-column: 2; }
    .worksite-row { padding: 13px; }
    .worksite-open { display: none; }
    .worksite-info-grid { grid-template-columns: 1fr; }
    .worksite-section-head { align-items: flex-start; flex-direction: column; }
    .intervention-grid { padding: 15px; }
    .intervention-form-actions { align-items: stretch; flex-direction: column; }
    .intervention-form-actions .primary-button,
    .intervention-form-actions .secondary-button { justify-content: center; width: 100%; }
}

/* V13 - Finance documentaire et indemnites kilometriques */
.finance13-heading{align-items:flex-start}.finance13-flow-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:16px;margin-bottom:16px}.finance13-upload,.finance13-hermes-card{padding:0}.finance13-upload-form{padding:18px;display:grid;gap:14px}.finance13-dropzone{min-height:170px;border:1px dashed color-mix(in srgb,var(--cyan) 35%,var(--border));border-radius:10px;background:linear-gradient(180deg,color-mix(in srgb,var(--cyan) 3%,var(--surface)),var(--surface-2));display:grid;place-items:center;text-align:center;align-content:center;gap:6px;cursor:pointer;padding:22px}.finance13-dropzone:hover{border-color:var(--cyan)}.finance13-dropzone input{margin-top:8px;max-width:100%}.finance13-drop-icon{width:42px;height:42px;border-radius:10px;display:grid;place-items:center;background:color-mix(in srgb,var(--cyan) 11%,var(--surface));color:var(--cyan-dark)}.finance13-dropzone strong{font-size:14px}.finance13-dropzone>span:not(.finance13-drop-icon){font-size:12px;color:var(--text-3)}.finance13-hermes-card{padding:18px}.finance13-hermes-head{display:flex;align-items:center;gap:10px;padding-bottom:16px;border-bottom:1px solid var(--border)}.finance13-hermes-head>div{display:grid}.finance13-hermes-head strong{font-size:13px}.finance13-hermes-head small{font-size:11px;color:var(--text-3)}.finance13-steps{list-style:none;margin:16px 0;padding:0;display:grid;gap:14px}.finance13-steps li{display:flex;gap:10px;align-items:flex-start}.finance13-steps li>span{width:24px;height:24px;border-radius:7px;display:grid;place-items:center;background:var(--surface-3);font-size:11px;font-weight:800;flex:0 0 auto}.finance13-steps li>div{display:grid;gap:2px}.finance13-steps strong{font-size:12px}.finance13-steps small{font-size:11px;color:var(--text-3);line-height:1.45}.finance13-drive-note{margin-top:16px;border:1px solid var(--border);background:var(--surface-2);border-radius:8px;padding:11px;display:flex;gap:8px;align-items:flex-start;color:var(--text-2);font-size:11px;line-height:1.5}.finance13-documents{overflow:hidden}.finance13-search{width:310px}.finance13-empty{padding:58px 20px;text-align:center;display:grid;justify-items:center;gap:7px;color:var(--text-3)}.finance13-empty span{width:52px;height:52px;border-radius:12px;background:var(--surface-2);display:grid;place-items:center}.finance13-empty h3{margin:4px 0 0;color:var(--text);font-size:15px}.finance13-empty p{margin:0;font-size:12px}.finance13-doc-list{display:grid}.finance13-doc-row{display:grid;grid-template-columns:minmax(220px,1.25fr) minmax(380px,1.7fr) minmax(210px,.8fr);gap:18px;padding:16px 18px;border-top:1px solid var(--border);align-items:center}.finance13-doc-row:hover{background:var(--surface-2)}.finance13-doc-main{display:flex;align-items:center;gap:10px;min-width:0}.finance13-doc-icon{width:38px;height:38px;border-radius:9px;background:var(--surface-3);display:grid;place-items:center;color:var(--cyan-dark);flex:0 0 auto}.finance13-doc-main>div{display:grid;min-width:0}.finance13-doc-main strong{font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.finance13-doc-main small{font-size:10.5px;color:var(--text-3)}.finance13-doc-meta{display:grid;grid-template-columns:1.35fr .8fr .65fr;gap:12px}.finance13-doc-meta span{display:grid;min-width:0}.finance13-doc-meta small{font-size:9.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3)}.finance13-doc-meta strong{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.finance13-doc-state{display:grid;justify-items:start;gap:5px}.finance13-drive-path{font-size:10.5px;color:var(--text-2);display:flex;align-items:center;gap:5px}.finance13-doc-state>small{font-size:10px;color:var(--text-3)}
.mileage13-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:16px}.mileage13-summary article{background:var(--surface);border:1px solid var(--border);border-radius:9px;padding:15px 16px;display:grid;gap:4px}.mileage13-summary span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);font-weight:700}.mileage13-summary strong{font-size:22px;letter-spacing:-.03em}.mileage13-summary small{font-size:10.5px;color:var(--text-3)}.mileage13-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.5fr);gap:16px;margin-bottom:16px}.mileage13-form-card,.mileage13-help{overflow:hidden}.mileage13-form{padding:18px;display:grid;gap:16px}.mileage13-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.mileage13-form-grid label,.report7-settings-form label{display:grid;gap:6px}.mileage13-form-grid label>span,.report7-settings-form label>span{font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:var(--text-3);font-weight:700}.mileage13-form-grid input,.report7-settings-form input{height:40px;border:1px solid var(--border);border-radius:7px;background:var(--surface-2);color:var(--text);padding:0 11px;font:inherit;font-size:12.5px}.mileage13-wide{grid-column:1/-1}.mileage13-unit-input{display:flex;border:1px solid var(--border);border-radius:7px;background:var(--surface-2);overflow:hidden}.mileage13-unit-input input{border:0!important;border-radius:0!important;flex:1}.mileage13-unit-input span{display:flex;align-items:center;padding:0 12px;border-left:1px solid var(--border);font-size:11px;color:var(--text-3)}.mileage13-live-calc{border:1px solid color-mix(in srgb,var(--green) 22%,var(--border));background:color-mix(in srgb,var(--green) 4%,var(--surface));border-radius:9px;padding:13px 15px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:3px 12px}.mileage13-live-calc span{font-size:11px;color:var(--text-2)}.mileage13-live-calc strong{font-size:21px;grid-row:1/3;grid-column:2}.mileage13-live-calc small{font-size:10.5px;color:var(--text-3)}.mileage13-help{padding:18px}.mileage13-help h2{margin:5px 0 18px;font-size:18px}.mileage13-help-list{display:grid;gap:15px}.mileage13-help-list>span{display:flex;gap:10px}.mileage13-help-list b{width:25px;height:25px;border-radius:7px;background:var(--surface-3);display:grid;place-items:center;font-size:10px;flex:0 0 auto}.mileage13-help-list div{display:grid;gap:2px}.mileage13-help-list strong{font-size:12px}.mileage13-help-list small{font-size:11px;color:var(--text-3);line-height:1.45}.mileage13-history{overflow:hidden}.mileage13-table th,.mileage13-table td{white-space:nowrap}.mileage13-report-hero{margin-bottom:16px}.mileage13-report-summary{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:1200px){.finance13-doc-row{grid-template-columns:1fr}.finance13-doc-meta{grid-template-columns:repeat(3,minmax(0,1fr))}.finance13-flow-grid,.mileage13-layout{grid-template-columns:1fr}.mileage13-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.finance13-search{width:100%}.finance13-doc-meta,.mileage13-form-grid,.mileage13-summary,.mileage13-report-summary{grid-template-columns:1fr}.mileage13-wide{grid-column:auto}.finance13-doc-row{padding:14px}.finance13-dropzone{min-height:145px}}

/* V14 — Finance: chantier recognition and profitability linkage */
.finance13-profitability-note{display:flex;gap:12px;align-items:flex-start;margin:0 0 18px;padding:15px 17px;border:1px solid rgba(40,185,166,.24);background:rgba(40,185,166,.07);border-radius:12px;color:var(--text,#172126)}
.finance13-profitability-note svg{flex:0 0 auto;margin-top:2px;color:#24a994}
.finance13-profitability-note div{display:grid;gap:4px}
.finance13-profitability-note strong{font-size:14px}
.finance13-profitability-note span{font-size:13px;line-height:1.55;color:var(--muted,#66747a)}
.finance13-doc-meta a{color:inherit;text-decoration:none;border-bottom:1px solid rgba(40,185,166,.4)}
.finance13-doc-meta a:hover{color:#14947f}

/* V15 — indemnités kilométriques automatiques depuis le planning */
.mileage15-report-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:16px}.mileage15-report-card{padding:18px;display:flex;flex-direction:column;align-items:flex-start;gap:8px}.mileage15-report-card h2{font-size:17px;margin:0}.mileage15-report-card p{font-size:11.5px;color:var(--text-3);margin:0 0 6px;line-height:1.55;min-height:36px}.mileage15-detection-panel{margin-bottom:16px}.mileage15-empty{padding:34px 18px}.report7-month-form select{height:38px;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:7px;padding:0 30px 0 10px}
@media (max-width:900px){.mileage15-report-actions{grid-template-columns:1fr}.mileage15-report-card p{min-height:0}}

/* V16 — Bibliothèque des rapports d'intervention */
.reports-library-heading { margin-bottom: 22px; }
.reports-library-kpis { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin-bottom:18px; }
.reports-library-kpi { background:var(--panel, #fff); border:1px solid var(--border, #dde4e7); border-radius:14px; padding:18px 20px; min-height:118px; display:flex; flex-direction:column; justify-content:center; box-shadow:0 8px 24px rgba(22,34,40,.035); }
.reports-library-kpi span { color:var(--muted, #718087); font-size:12px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; }
.reports-library-kpi strong { margin:7px 0 2px; font-size:31px; line-height:1; color:var(--text, #10191d); }
.reports-library-kpi small { color:var(--muted, #718087); font-size:13px; }
.reports-library-toolbar { margin-bottom:18px; padding:18px; }
.reports-library-filters { display:grid; grid-template-columns:minmax(260px,1.6fr) minmax(220px,1fr) minmax(220px,1fr) auto; gap:14px; align-items:end; }
.reports-filter-actions { display:flex; gap:8px; align-items:center; padding-bottom:1px; }
.reports-library-panel { overflow:hidden; }
.reports-library-panel-head { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:20px 22px; border-bottom:1px solid var(--border, #e1e7ea); }
.reports-library-panel-head h2 { margin:4px 0 0; font-size:19px; }
.reports-admin-note { display:inline-flex; align-items:center; gap:7px; color:var(--muted, #718087); font-size:12px; }
.reports-library-list { display:flex; flex-direction:column; }
.report-library-card { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:20px 22px; border-bottom:1px solid var(--border, #e8edef); transition:background .16s ease; }
.report-library-card:last-child { border-bottom:0; }
.report-library-card:hover { background:rgba(35,190,177,.025); }
.report-library-main { display:flex; min-width:0; gap:18px; flex:1; }
.report-library-date { width:58px; min-width:58px; height:70px; border:1px solid var(--border, #dfe6e9); border-radius:12px; display:flex; flex-direction:column; align-items:center; justify-content:center; background:var(--bg-soft, #f8fafb); }
.report-library-date span { font-size:22px; line-height:1; font-weight:800; color:var(--text, #10191d); }
.report-library-date small { margin-top:4px; color:#20a99b; font-weight:800; font-size:10px; letter-spacing:.08em; }
.report-library-date em { margin-top:2px; color:var(--muted, #718087); font-style:normal; font-size:10px; }
.report-library-content { min-width:0; flex:1; }
.report-library-title-row { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; }
.report-reference { display:block; margin-bottom:4px; color:#20a99b; font-size:11px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.report-library-title-row h3 { margin:0; font-size:17px; color:var(--text, #10191d); }
.report-library-badges { display:flex; gap:7px; flex-wrap:wrap; justify-content:flex-end; }
.status-pill { display:inline-flex; align-items:center; min-height:25px; padding:4px 9px; border-radius:999px; font-size:11px; font-weight:750; white-space:nowrap; }
.status-linked { color:#18766d; background:#eaf8f5; border:1px solid #c9ede6; }
.status-independent { color:#66737a; background:#f2f5f6; border:1px solid #e1e7e9; }
.status-follow-up { color:#9a5a08; background:#fff5df; border:1px solid #f5dfaa; }
.report-library-meta { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px 18px; margin-top:14px; }
.report-library-meta span { min-width:0; color:var(--text, #253238); font-size:13px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.report-library-meta strong { display:block; margin-bottom:3px; color:var(--muted, #78868c); font-size:10px; letter-spacing:.045em; text-transform:uppercase; }
.report-library-summary { margin:13px 0 0; color:var(--muted, #69787e); font-size:13px; line-height:1.55; }
.report-library-actions { display:flex; align-items:center; gap:8px; flex-wrap:wrap; justify-content:flex-end; }
.report-library-actions form { margin:0; }
.secondary-button.compact, .danger-button.compact { min-height:36px; padding:8px 11px; border-radius:9px; font-size:12px; }
.danger-button { display:inline-flex; align-items:center; justify-content:center; gap:7px; border:1px solid #efc8c8; background:#fff7f7; color:#b62f2f; cursor:pointer; font:inherit; font-weight:700; text-decoration:none; }
.danger-button:hover { background:#fff0f0; border-color:#e9aaaa; }
.reports-empty-state { padding:64px 24px; text-align:center; display:flex; flex-direction:column; align-items:center; }
.reports-empty-icon { width:54px; height:54px; border-radius:15px; display:grid; place-items:center; color:#1aa698; background:#eaf8f5; margin-bottom:14px; }
.reports-empty-state h3 { margin:0 0 6px; }
.reports-empty-state p { margin:0 0 18px; color:var(--muted, #718087); }
@media (max-width: 1180px) {
  .reports-library-kpis { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .reports-library-filters { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .report-library-card { align-items:flex-start; flex-direction:column; }
  .report-library-actions { width:100%; justify-content:flex-start; padding-left:76px; }
}
@media (max-width: 760px) {
  .reports-library-kpis { grid-template-columns:1fr 1fr; gap:10px; }
  .reports-library-kpi { padding:15px; min-height:102px; }
  .reports-library-filters { grid-template-columns:1fr; }
  .reports-library-panel-head { align-items:flex-start; flex-direction:column; }
  .report-library-card { padding:17px; }
  .report-library-main { gap:12px; }
  .report-library-date { width:50px; min-width:50px; height:64px; }
  .report-library-title-row { flex-direction:column; gap:9px; }
  .report-library-badges { justify-content:flex-start; }
  .report-library-meta { grid-template-columns:1fr 1fr; }
  .report-library-actions { padding-left:62px; }
}
@media (max-width: 480px) {
  .reports-library-kpis { grid-template-columns:1fr; }
  .report-library-meta { grid-template-columns:1fr; }
  .report-library-actions { padding-left:0; }
  .report-library-actions > *, .report-library-actions form, .report-library-actions button { width:100%; }
}

/* V17 — Tableau de bord indemnités kilométriques */
.mileage17-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin:0 0 20px;padding:4px 2px 0}.mileage17-hero-copy{max-width:820px}.mileage17-hero h1{margin:5px 0 8px;font-size:30px;line-height:1.05;letter-spacing:-.045em}.mileage17-hero p{margin:0;color:var(--text-3);font-size:12.5px;line-height:1.7;max-width:760px}.mileage17-sync-form{flex:0 0 auto}.mileage17-period-bar{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;padding:14px 16px;margin-bottom:16px}.mileage17-period-nav{display:flex;align-items:center;gap:12px}.mileage17-period-nav>div{display:grid;gap:2px;min-width:118px;text-align:center}.mileage17-period-nav span,.mileage17-month-picker label{font-size:9px;text-transform:uppercase;letter-spacing:.09em;color:var(--text-3);font-weight:800}.mileage17-period-nav strong{font-size:15px;letter-spacing:-.02em}.mileage17-arrow{width:34px;height:34px;border:1px solid var(--border);border-radius:8px;display:grid;place-items:center;background:var(--surface-2);color:var(--text);text-decoration:none;font-size:16px}.mileage17-arrow:hover{border-color:color-mix(in srgb,var(--cyan) 35%,var(--border));background:color-mix(in srgb,var(--cyan) 4%,var(--surface-2))}.mileage17-month-picker{display:flex;align-items:center;justify-content:flex-end;gap:9px}.mileage17-month-picker input{height:38px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);color:var(--text);padding:0 10px;font:inherit;font-size:12px}.mileage17-report-link{white-space:nowrap}.mileage17-kpis{display:grid;grid-template-columns:1.35fr repeat(4,minmax(0,1fr));gap:11px;margin-bottom:16px}.mileage17-kpi{min-width:0;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:17px 17px 15px;display:grid;gap:5px;box-shadow:0 1px 1px rgba(12,20,30,.02)}.mileage17-kpi span{font-size:9.5px;text-transform:uppercase;letter-spacing:.09em;color:var(--text-3);font-weight:800}.mileage17-kpi strong{font-size:23px;line-height:1.1;letter-spacing:-.045em}.mileage17-kpi small{font-size:10.5px;color:var(--text-3)}.mileage17-kpi-primary{background:linear-gradient(135deg,color-mix(in srgb,var(--cyan) 7%,var(--surface)),var(--surface));border-color:color-mix(in srgb,var(--cyan) 23%,var(--border))}.mileage17-main-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,.65fr);gap:16px;margin-bottom:16px}.mileage17-manual-card,.mileage17-report-card,.mileage17-planning-card,.mileage17-history-card,.mileage17-report-table-card,.mileage17-email-card,.mileage17-validation-card{overflow:hidden}.mileage17-card-header{padding:17px 18px 15px;border-bottom:1px solid var(--border);align-items:flex-start}.mileage17-card-header h2{margin:4px 0 4px;font-size:17px;letter-spacing:-.025em}.mileage17-card-header p{margin:0;color:var(--text-3);font-size:11.5px;line-height:1.55}.mileage17-manual-form{padding:18px}.mileage17-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px}.mileage17-field-grid label,.mileage17-email-form label{display:grid;gap:7px}.mileage17-field-grid label>span,.mileage17-email-form label>span{font-size:9.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);font-weight:800}.mileage17-field-grid input,.mileage17-email-form input{width:100%;height:42px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);color:var(--text);padding:0 12px;font:inherit;font-size:12.5px;outline:none;transition:border-color .15s,box-shadow .15s}.mileage17-field-grid input:focus,.mileage17-email-form input:focus{border-color:color-mix(in srgb,var(--cyan) 52%,var(--border));box-shadow:0 0 0 3px color-mix(in srgb,var(--cyan) 9%,transparent)}.mileage17-unit-field{display:flex;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);overflow:hidden}.mileage17-unit-field input{border:0!important;border-radius:0!important;box-shadow:none!important}.mileage17-unit-field em{display:flex;align-items:center;padding:0 12px;border-left:1px solid var(--border);color:var(--text-3);font-size:11px;font-style:normal}.mileage17-form-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:16px;padding-top:15px;border-top:1px solid var(--border)}.mileage17-form-footer>span{font-size:11px;color:var(--text-3)}.mileage17-report-card{padding:20px;display:flex;flex-direction:column;align-items:flex-start;gap:9px;background:linear-gradient(180deg,color-mix(in srgb,var(--green) 3%,var(--surface)),var(--surface))}.mileage17-report-card h2{margin:3px 0 0;font-size:19px;letter-spacing:-.03em}.mileage17-report-card>p{margin:0 0 3px;color:var(--text-3);font-size:11.5px;line-height:1.65}.mileage17-report-stats{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:6px 0}.mileage17-report-stats>div{border:1px solid var(--border);border-radius:8px;padding:11px;background:var(--surface-2);display:grid;gap:3px}.mileage17-report-stats span{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);font-weight:800}.mileage17-report-stats strong{font-size:15px}.mileage17-report-card>.primary-button{width:100%;justify-content:center;margin-top:auto}.mileage17-report-card>small{font-size:10px;color:var(--text-3);line-height:1.45}.mileage17-planning-card{margin-bottom:16px}.mileage17-planning-list{display:grid}.mileage17-planning-row{display:grid;grid-template-columns:52px minmax(180px,1fr) minmax(200px,1fr) auto;align-items:center;gap:18px;padding:14px 18px;border-top:1px solid var(--border)}.mileage17-planning-row:first-child{border-top:0}.mileage17-planning-row>div:not(.mileage17-date-chip){display:grid;gap:3px}.mileage17-planning-row span:not(.status-badge){font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);font-weight:800}.mileage17-planning-row strong{font-size:12px}.mileage17-date-chip{width:42px;height:46px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);display:grid;place-items:center;padding:5px}.mileage17-date-chip strong{font-size:16px;line-height:1}.mileage17-date-chip span{font-size:8px!important;line-height:1}.mileage17-empty{padding:34px 18px;text-align:center;color:var(--text-3);font-size:11.5px;line-height:1.6}.mileage17-table-wrap{overflow-x:auto}.mileage17-table{min-width:960px}.mileage17-table th{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);font-weight:800;padding-top:11px;padding-bottom:11px}.mileage17-table td{vertical-align:middle;padding-top:13px;padding-bottom:13px}.mileage17-table td small{display:block;margin-top:3px;color:var(--text-3);font-size:10px}.mileage17-route{display:flex;align-items:center;gap:7px;min-width:260px}.mileage17-route strong{font-size:11.5px}.mileage17-route span{color:var(--text-3)}.mileage17-actions{text-align:right;width:42px}.mileage17-delete{width:28px;height:28px;border:1px solid var(--border);border-radius:7px;background:transparent;color:var(--text-3);cursor:pointer;font-size:18px;line-height:1}.mileage17-delete:hover{color:#d95d5d;border-color:color-mix(in srgb,#d95d5d 35%,var(--border));background:color-mix(in srgb,#d95d5d 5%,var(--surface))}.mileage17-report-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px 22px;margin-bottom:16px}.mileage17-report-hero h1{margin:5px 0 6px;font-size:24px;letter-spacing:-.035em}.mileage17-report-hero p{margin:0;color:var(--text-3);font-size:11.5px}.mileage17-report-toolbar{display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;padding:14px 16px;margin-bottom:16px}.mileage17-report-kpis{grid-template-columns:1.35fr repeat(3,minmax(0,1fr))}.mileage17-status-text{font-size:20px!important}.mileage17-status-text.is-valid{color:var(--green)}.mileage17-report-table-card{margin-bottom:16px}.mileage17-send-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}.mileage17-email-form{padding:18px;display:grid;grid-template-columns:1fr 1fr auto;align-items:end;gap:13px}.mileage17-validation-card{padding-bottom:18px}.mileage17-validation-card>form,.mileage17-validation-card>small,.mileage17-validation-note,.mileage17-valid-state{margin-left:18px;margin-right:18px}.mileage17-validation-note{margin-top:18px;margin-bottom:14px;padding:12px 14px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);color:var(--text-3);font-size:11px;line-height:1.55}.mileage17-valid-state{display:flex;align-items:flex-start;gap:10px;margin-top:18px;margin-bottom:14px;padding:13px 14px;border:1px solid color-mix(in srgb,var(--green) 28%,var(--border));border-radius:8px;background:color-mix(in srgb,var(--green) 5%,var(--surface));color:var(--green)}.mileage17-valid-state>div{display:grid;gap:3px}.mileage17-valid-state strong{font-size:12px}.mileage17-valid-state span{font-size:10.5px;color:var(--text-3)}.mileage17-send-button{width:100%;justify-content:center}.mileage17-validation-card>small{display:block;margin-top:9px;font-size:9.5px;color:var(--text-3)}
@media(max-width:1250px){.mileage17-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.mileage17-kpi-primary{grid-column:span 1}.mileage17-main-grid{grid-template-columns:1fr}.mileage17-report-card{min-height:0}.mileage17-email-form{grid-template-columns:1fr 1fr}.mileage17-email-form .secondary-button{grid-column:1/-1;justify-self:start}.mileage17-report-toolbar,.mileage17-period-bar{grid-template-columns:1fr auto}.mileage17-month-picker{justify-content:flex-start}.mileage17-report-link{grid-column:2;grid-row:1/3}}
@media(max-width:900px){.mileage17-hero{align-items:flex-start;flex-direction:column}.mileage17-kpis,.mileage17-report-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.mileage17-planning-row{grid-template-columns:52px 1fr auto}.mileage17-planning-row>div:nth-child(3){grid-column:2/4}.mileage17-send-grid{grid-template-columns:1fr}.mileage17-report-hero{align-items:flex-start;flex-direction:column}.mileage17-report-toolbar,.mileage17-period-bar{grid-template-columns:1fr}.mileage17-report-link{grid-column:auto;grid-row:auto}.mileage17-month-picker{justify-content:flex-start}}
@media(max-width:650px){.mileage17-hero h1{font-size:26px}.mileage17-kpis,.mileage17-report-kpis,.mileage17-field-grid{grid-template-columns:1fr}.mileage17-kpi{padding:15px}.mileage17-form-footer{align-items:stretch;flex-direction:column}.mileage17-form-footer .primary-button{justify-content:center}.mileage17-period-nav{justify-content:space-between}.mileage17-month-picker{display:grid;grid-template-columns:1fr auto}.mileage17-month-picker label{grid-column:1/-1}.mileage17-month-picker input{min-width:0}.mileage17-planning-row{grid-template-columns:46px 1fr;gap:12px}.mileage17-planning-row>div:nth-child(3){grid-column:2}.mileage17-planning-row>.status-badge{grid-column:2;justify-self:start}.mileage17-email-form{grid-template-columns:1fr}.mileage17-email-form .secondary-button{grid-column:auto}.mileage17-report-toolbar{padding:12px}.mileage17-report-hero{padding:17px}.mileage17-card-header{padding:15px}.mileage17-manual-form{padding:15px}}

/* CEGEWATT CRM V18 — pages financières et maintenance épurées */
.v18-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin:2px 0 24px}.v18-page-head h1{margin:5px 0 7px;font-size:30px;line-height:1.08;letter-spacing:-.045em}.v18-page-head p{margin:0;color:var(--text-3);font-size:13px;line-height:1.65;max-width:720px}.v18-period-row{display:flex;align-items:center;gap:10px;padding:12px 0 18px;border-bottom:1px solid var(--border);margin-bottom:20px}.v18-icon-btn{width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--border);border-radius:8px;color:var(--text);text-decoration:none;background:var(--surface)}.v18-period-title{display:grid;gap:1px;min-width:95px;text-align:center}.v18-period-title span{font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:var(--text-3);font-weight:800}.v18-period-title strong{font-size:15px}.v18-month-form{display:flex;align-items:center;gap:8px;margin-left:auto}.v18-month-form input{height:36px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);padding:0 10px;font:inherit;font-size:12px}.v18-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--border);border:1px solid var(--border);border-radius:10px;overflow:hidden;margin-bottom:20px}.v18-metrics article{background:var(--surface);padding:18px 20px;display:grid;gap:5px;min-height:100px;align-content:center}.v18-metrics span,.v18-report-stats span{font-size:9.5px;text-transform:uppercase;letter-spacing:.09em;color:var(--text-3);font-weight:800}.v18-metrics strong{font-size:24px;line-height:1;letter-spacing:-.04em}.v18-metrics small{font-size:11px;color:var(--text-3)}.v18-mileage-layout{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(280px,.7fr);gap:18px;margin-bottom:20px}.v18-card{overflow:hidden}.v18-card-head,.v18-table-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px;border-bottom:1px solid var(--border)}.v18-card-head h2,.v18-table-head h2{margin:3px 0 0;font-size:17px;letter-spacing:-.025em}.v18-trip-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 16px;padding:20px}.v18-trip-form label,.v18-report-filters label{display:grid;gap:7px}.v18-trip-form label>span,.v18-report-filters label>span{font-size:9.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);font-weight:800}.v18-trip-form input,.v18-report-filters input,.v18-report-filters select{width:100%;height:42px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);color:var(--text);padding:0 12px;font:inherit;font-size:12.5px;outline:none}.v18-trip-form input:focus,.v18-report-filters input:focus,.v18-report-filters select:focus{border-color:color-mix(in srgb,var(--cyan) 48%,var(--border));box-shadow:0 0 0 3px color-mix(in srgb,var(--cyan) 8%,transparent)}.v18-form-end{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:2px}.v18-form-end small{color:var(--text-3);font-size:11px}.v18-summary-list{margin:0;padding:10px 20px 14px}.v18-summary-list>div{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px 0;border-bottom:1px solid var(--border)}.v18-summary-list>div:last-child{border-bottom:0}.v18-summary-list dt{color:var(--text-3);font-size:11.5px}.v18-summary-list dd{margin:0;font-weight:700;font-size:12.5px}.v18-full-btn{margin:0 20px 20px;width:calc(100% - 40px);justify-content:center}.v18-table-card,.v18-reports-card{overflow:hidden}.v18-count,.v18-admin-note{font-size:11px;color:var(--text-3)}.v18-table-wrap{overflow:auto}.v18-data-table{width:100%;border-collapse:collapse;min-width:900px}.v18-data-table th{padding:11px 16px;text-align:left;font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);background:var(--surface-2);border-bottom:1px solid var(--border)}.v18-data-table td{padding:15px 16px;border-bottom:1px solid var(--border);font-size:12px;vertical-align:middle}.v18-data-table tbody tr:last-child td{border-bottom:0}.v18-data-table small{display:block;margin-top:3px;color:var(--text-3);font-size:10.5px}.v18-route{display:flex;align-items:center;gap:7px;white-space:nowrap}.v18-route span{color:var(--text-3)}.v18-source{display:inline-flex;align-items:center;height:24px;padding:0 8px;border-radius:999px;font-size:9.5px;font-weight:800}.v18-source.is-planning{color:#0f766e;background:rgba(15,118,110,.08)}.v18-source.is-manual{color:#5f6870;background:rgba(95,104,112,.08)}.v18-delete-btn{width:32px;height:32px;border:0;border-radius:7px;display:grid;place-items:center;background:transparent;color:var(--text-3);cursor:pointer}.v18-delete-btn:hover{background:rgba(196,61,61,.08);color:#b63d3d}.v18-empty-state{padding:56px 20px;text-align:center;display:grid;justify-items:center;gap:8px;color:var(--text-3)}.v18-empty-state strong{font-size:15px;color:var(--text)}.v18-empty-state span{font-size:12px;max-width:460px}.v18-empty-state .primary-button{margin-top:8px}.v18-empty-inline{padding:28px 20px;color:var(--text-3);font-size:12px}

.v18-report-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--border);border:1px solid var(--border);border-radius:10px;overflow:hidden;margin-bottom:18px}.v18-report-stats article{background:var(--surface);padding:16px 18px;display:flex;align-items:baseline;justify-content:space-between;gap:12px}.v18-report-stats strong{font-size:24px;letter-spacing:-.04em}.v18-report-filter-card{padding:14px;margin-bottom:18px}.v18-report-filters{display:grid;grid-template-columns:minmax(260px,1.6fr) minmax(190px,1fr) minmax(180px,.8fr) auto auto;gap:10px;align-items:end}.v18-search-wide{min-width:0}.v18-reports-list{display:flex;flex-direction:column}.v18-report-row{display:grid;grid-template-columns:125px minmax(0,1fr) auto auto;align-items:center;gap:22px;padding:18px 20px;border-bottom:1px solid var(--border)}.v18-report-row:last-child{border-bottom:0}.v18-report-row:hover{background:color-mix(in srgb,var(--cyan) 2.5%,var(--surface))}.v18-report-date{display:grid;gap:4px}.v18-report-date strong{font-size:12px}.v18-report-date span{font-size:9.5px;color:var(--text-3);font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.v18-report-main{min-width:0}.v18-report-title{display:flex;align-items:baseline;gap:9px;min-width:0}.v18-report-title h3{margin:0;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v18-report-title span{font-size:12px;color:var(--text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v18-report-meta{display:flex;align-items:center;gap:8px 16px;flex-wrap:wrap;margin-top:8px}.v18-report-meta span{font-size:10.5px;color:var(--text-3)}.v18-report-flags{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}.v18-followup{display:inline-flex;align-items:center;height:24px;padding:0 8px;border-radius:999px;font-size:9.5px;font-weight:800;color:#9a6700;background:rgba(234,179,8,.12)}.v18-report-actions{display:flex;align-items:center;gap:5px}.v18-report-actions form{margin:0}

@media(max-width:1100px){.v18-metrics,.v18-report-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.v18-mileage-layout{grid-template-columns:1fr}.v18-report-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.v18-report-row{grid-template-columns:110px minmax(0,1fr) auto}.v18-report-actions{grid-column:2/4;justify-content:flex-end}}
@media(max-width:760px){.v18-page-head{align-items:flex-start;flex-direction:column}.v18-period-row{flex-wrap:wrap}.v18-month-form{margin-left:0}.v18-metrics,.v18-report-stats{grid-template-columns:1fr 1fr}.v18-trip-form{grid-template-columns:1fr}.v18-form-end{align-items:stretch;flex-direction:column}.v18-report-filters{grid-template-columns:1fr}.v18-report-row{grid-template-columns:1fr;gap:10px}.v18-report-flags,.v18-report-actions{grid-column:auto;justify-content:flex-start}.v18-report-title{align-items:flex-start;flex-direction:column;gap:3px}}
@media(max-width:520px){.v18-metrics,.v18-report-stats{grid-template-columns:1fr}.v18-period-row>.primary-button{width:100%;justify-content:center}.v18-month-form{width:100%;display:grid;grid-template-columns:1fr auto}.v18-trip-form{padding:16px}.v18-card-head,.v18-table-head{padding:16px}.v18-report-row{padding:16px}}

/* V19 — Stock & matériel */
.stock-overview-line,.vehicle-hero-line{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin:10px 0 28px}.stock-overview-line>div,.vehicle-hero-line>div{padding:18px 22px;border-right:1px solid var(--border)}.stock-overview-line>div:last-child,.vehicle-hero-line>div:last-child{border-right:0}.stock-overview-line span,.vehicle-hero-line span{display:block;color:var(--text-muted);font-size:12px;margin-bottom:7px}.stock-overview-line strong,.vehicle-hero-line strong{font-size:22px;letter-spacing:-.03em}.stock-danger{color:#c64040!important}.stock-ok{color:#18865d!important}.vehicle-clean-list{border-top:1px solid var(--border);margin-bottom:32px}.vehicle-clean-row{display:grid;grid-template-columns:44px minmax(260px,1.3fr) minmax(160px,.7fr) minmax(160px,.65fr) 24px;gap:18px;align-items:center;padding:18px 8px;border-bottom:1px solid var(--border);color:inherit;text-decoration:none;transition:background .15s ease}.vehicle-clean-row:hover{background:var(--surface-soft)}.vehicle-mark{width:38px;height:38px;border:1px solid var(--border);display:grid;place-items:center;border-radius:9px;color:var(--text-muted)}.vehicle-primary strong,.vehicle-meta strong{display:block}.vehicle-primary span,.vehicle-meta span{display:block;color:var(--text-muted);font-size:12px;margin-top:4px}.vehicle-arrow{color:var(--text-muted)}.clean-section{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:26px;margin-bottom:26px}.clean-section-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:22px}.clean-section-head h2{margin:4px 0 0;font-size:19px}.clean-section-head p{margin:7px 0 0;color:var(--text-muted);font-size:13px}.stock-count-badge{min-width:32px;height:32px;padding:0 10px;border-radius:999px;background:#fff0f0;color:#b72f2f;display:grid;place-items:center;font-weight:700}.stock-alert-list{border-top:1px solid var(--border)}.stock-alert-row{display:grid;grid-template-columns:12px 1fr auto;gap:12px;align-items:center;padding:13px 0;border-bottom:1px solid var(--border);color:inherit;text-decoration:none}.stock-alert-dot{width:7px;height:7px;border-radius:50%;background:#d64646}.stock-alert-row strong,.stock-alert-row small{display:block}.stock-alert-row small{color:var(--text-muted);margin-top:3px}.inventory-category{margin-top:30px}.inventory-category:first-of-type{margin-top:0}.inventory-category-title{display:flex;justify-content:space-between;align-items:center;padding-bottom:10px;border-bottom:1px solid var(--border)}.inventory-category-title h3{margin:0;font-size:14px}.inventory-category-title span{font-size:12px;color:var(--text-muted)}.inventory-check-list{display:flex;flex-direction:column}.inventory-check-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;padding:14px 0;border-bottom:1px solid var(--border)}.inventory-item-main strong,.inventory-item-main small{display:block}.inventory-item-main small{font-size:12px;color:var(--text-muted);margin-top:4px}.inventory-state-actions{display:flex;gap:7px}.inventory-state-actions form{margin:0}.inventory-state{height:34px;padding:0 10px;border-radius:8px;border:1px solid var(--border);background:transparent;color:var(--text-muted);display:flex;align-items:center;gap:6px;cursor:pointer}.inventory-state.ok.active{background:#e8f7f0;border-color:#b9e4cf;color:#187650}.inventory-state.missing.active{background:#fff0f0;border-color:#efc6c6;color:#bd3737}.stock-two-column{display:grid;grid-template-columns:1.25fr .75fr;gap:24px}.vehicle-doc-form{display:grid;grid-template-columns:180px 1fr auto;gap:10px;margin-bottom:18px}.vehicle-doc-form select,.vehicle-doc-form input,.clean-form-grid input{min-height:42px;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:8px;padding:0 12px}.vehicle-doc-list{border-top:1px solid var(--border)}.vehicle-doc-row{display:grid;grid-template-columns:28px 1fr auto;gap:10px;align-items:center;padding:12px 0;border-bottom:1px solid var(--border);color:inherit;text-decoration:none}.vehicle-doc-row strong,.vehicle-doc-row small{display:block}.vehicle-doc-row small,.vehicle-doc-row time{font-size:12px;color:var(--text-muted)}.empty-clean{color:var(--text-muted);font-size:13px}.clean-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.clean-form-grid label{display:flex;flex-direction:column;gap:7px;font-size:12px;color:var(--text-muted)}.span-2{grid-column:span 2}.clean-notice{border:1px solid var(--border);border-radius:10px;padding:13px 16px;margin:0 0 20px;font-size:13px}.clean-notice.success{background:#ecf8f2;color:#176a4a;border-color:#c6e8d8}.clean-notice.muted{color:var(--text-muted)}.central-inventory-table{border-top:1px solid var(--border)}.central-inventory-head,.central-inventory-row{display:grid;grid-template-columns:1fr 170px 150px;gap:18px;padding:13px 6px;border-bottom:1px solid var(--border);align-items:center}.central-inventory-head{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.central-inventory-row{font-size:13px}.inventory-neutral-status{color:var(--text-muted)}
@media(max-width:900px){.vehicle-clean-row{grid-template-columns:38px 1fr 22px}.vehicle-meta{display:none}.stock-two-column{grid-template-columns:1fr}.vehicle-doc-form{grid-template-columns:1fr}.stock-overview-line,.vehicle-hero-line{grid-template-columns:1fr}.stock-overview-line>div,.vehicle-hero-line>div{border-right:0;border-bottom:1px solid var(--border)}.stock-overview-line>div:last-child,.vehicle-hero-line>div:last-child{border-bottom:0}.central-inventory-head{display:none}.central-inventory-row{grid-template-columns:1fr auto}.central-inventory-row span:last-child{grid-column:1/-1}.inventory-check-row{grid-template-columns:1fr}.inventory-state-actions{justify-content:flex-start}}

/* Commercial V20 */
.commercial-heading{margin-bottom:28px}.commercial-heading h1{max-width:760px}.commercial-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px}.commercial-section-head h2{font-size:20px;margin:4px 0 0}.commercial-document-shell{display:grid;gap:22px}.commercial-doc-main,.commercial-lines-panel,.commercial-client-create,.commercial-clients-list,.commercial-client-profile,.commercial-salon-list,.commercial-salon-create,.commercial-coming-soon{background:var(--surface,#fff);border:1px solid var(--border,#e5e7eb);border-radius:16px;padding:28px}.commercial-document-number{font-weight:700;font-size:14px;padding:8px 12px;border:1px solid var(--border,#e5e7eb);border-radius:8px;color:var(--text-muted,#64748b)}.commercial-form-grid,.commercial-client-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 24px}.commercial-form-grid .full,.commercial-client-profile-grid .full{grid-column:1/-1}.commercial-form-actions{display:flex;justify-content:flex-end;gap:10px}.commercial-lines-table{overflow-x:auto}.commercial-line{display:grid;grid-template-columns:minmax(260px,2.4fr) 80px 90px 120px 90px 120px 32px;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid var(--border,#e5e7eb)}.commercial-line-head{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted,#64748b);font-weight:700;padding-top:0}.commercial-line input,.commercial-line select{width:100%;min-height:40px;border:1px solid var(--border,#e5e7eb);border-radius:8px;background:transparent;padding:8px 10px;color:inherit}.commercial-line strong{text-align:right;font-size:13px}.commercial-line-remove{border:0;background:transparent;font-size:22px;color:#94a3b8;cursor:pointer}.commercial-doc-footer-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.6fr);gap:22px}.commercial-doc-notes,.commercial-total-card{background:var(--surface,#fff);border:1px solid var(--border,#e5e7eb);border-radius:16px;padding:24px}.commercial-doc-notes{display:grid;gap:18px}.commercial-total-card{display:grid;gap:14px;align-content:start}.commercial-total-card>div{display:flex;justify-content:space-between;align-items:center;color:var(--text-muted,#64748b)}.commercial-total-card>div strong{color:var(--text,#0f172a);font-size:16px}.commercial-grand-total{padding-top:14px;border-top:1px solid var(--border,#e5e7eb)}.commercial-grand-total strong{font-size:24px!important}.commercial-save-button{width:100%;justify-content:center;margin-top:8px}.commercial-client-create{margin-bottom:22px}.commercial-client-search{display:flex;align-items:center;gap:8px;border:1px solid var(--border,#e5e7eb);padding:0 12px;border-radius:9px;min-width:280px}.commercial-client-search input{border:0;background:transparent;outline:0;width:100%;min-height:40px;color:inherit}.commercial-client-table{display:grid}.commercial-client-row{display:grid;grid-template-columns:42px minmax(180px,1.2fr) minmax(160px,1fr) minmax(180px,1fr) minmax(140px,.8fr) auto 24px;gap:18px;align-items:center;padding:18px 4px;border-top:1px solid var(--border,#e5e7eb);text-decoration:none;color:inherit}.commercial-client-row:hover{background:rgba(15,23,42,.025)}.commercial-client-monogram,.commercial-client-profile-avatar{display:grid;place-items:center;width:42px;height:42px;border-radius:11px;background:#0f172a;color:#fff;font-weight:700;font-size:13px}.commercial-client-main,.commercial-client-row>span:not(.commercial-client-monogram):not(.status-pill):not(.commercial-row-arrow){display:grid;gap:3px}.commercial-client-row small{color:var(--text-muted,#64748b);font-size:11px}.commercial-client-row strong{font-size:13px;font-weight:600}.commercial-row-arrow{color:#94a3b8;font-size:18px}.commercial-client-summary{display:flex;align-items:center;gap:18px;padding-bottom:24px;margin-bottom:24px;border-bottom:1px solid var(--border,#e5e7eb)}.commercial-client-summary>div{flex:1}.commercial-client-summary h2{margin:3px 0 4px}.commercial-client-profile-avatar{width:54px;height:54px;border-radius:14px}.commercial-salon-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(320px,.7fr);gap:22px}.commercial-salon-row{display:grid;grid-template-columns:58px minmax(220px,1fr) auto;gap:16px 20px;align-items:center;padding:20px 0;border-top:1px solid var(--border,#e5e7eb)}.commercial-salon-row:first-of-type{border-top:0}.commercial-salon-row p{grid-column:2/-1;margin:0;color:var(--text-muted,#64748b);font-size:13px}.commercial-salon-date{width:54px;height:58px;border:1px solid var(--border,#e5e7eb);border-radius:10px;display:grid;place-items:center;align-content:center}.commercial-salon-date strong{font-size:18px}.commercial-salon-date small{font-size:10px;color:var(--text-muted,#64748b)}.commercial-salon-main{display:grid;gap:4px}.commercial-salon-main span{font-size:13px;color:var(--text-muted,#64748b)}.commercial-salon-create form{display:grid;gap:15px;margin-top:24px}.commercial-coming-soon{text-align:center;min-height:320px;display:grid;place-items:center;align-content:center;gap:10px}.commercial-coming-soon span{width:54px;height:54px;border-radius:14px;background:#f1f5f9;display:grid;place-items:center}.commercial-coming-soon h2{margin:0}.commercial-coming-soon p{max-width:620px;color:var(--text-muted,#64748b)}
@media(max-width:1100px){.commercial-doc-footer-grid,.commercial-salon-layout{grid-template-columns:1fr}.commercial-client-row{grid-template-columns:42px 1fr 1fr auto 24px}.commercial-client-row>span:nth-child(4),.commercial-client-row>span:nth-child(5){display:none}}
@media(max-width:760px){.commercial-doc-main,.commercial-lines-panel,.commercial-client-create,.commercial-clients-list,.commercial-client-profile,.commercial-salon-list,.commercial-salon-create{padding:20px}.commercial-form-grid,.commercial-client-profile-grid{grid-template-columns:1fr}.commercial-line{grid-template-columns:minmax(220px,1.8fr) 70px 85px 110px 85px 110px 32px}.commercial-client-row{grid-template-columns:42px 1fr auto 20px;gap:12px}.commercial-client-row>span:nth-child(3),.commercial-client-row>span:nth-child(4),.commercial-client-row>span:nth-child(5){display:none}.commercial-client-search{min-width:0;width:100%}.commercial-section-head{flex-direction:column}.commercial-client-summary{align-items:flex-start;flex-wrap:wrap}}

/* ========================================================================
   CEGEWATT CRM — Stock & véhicules V21
   Employee-first UX: minimal text, large touch targets, immediate status.
   ======================================================================== */
.stock-page-heading{margin-bottom:20px}
.stock-page-heading h1{font-size:30px;margin-bottom:6px}
.stock-page-heading p{font-size:13px;color:var(--text-3)}

.stock-summary-bar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--border);border-radius:10px;background:var(--surface);overflow:hidden;margin-bottom:22px}
.stock-summary-item{min-height:76px;padding:14px 18px;display:flex;flex-direction:column;justify-content:center;gap:4px;border-right:1px solid var(--border)}
.stock-summary-item:last-child{border-right:0}
.stock-summary-item span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);font-weight:750}
.stock-summary-item strong{font-size:21px;letter-spacing:-.03em}
.stock-summary-item.has-alert strong{color:var(--danger)}

.vehicle-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:26px}
.vehicle-card{display:flex;flex-direction:column;min-height:286px;padding:20px;border:1px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:0 1px 2px rgba(10,20,24,.025);transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease}
.vehicle-card:hover{border-color:color-mix(in srgb,var(--cyan) 34%,var(--border));box-shadow:0 7px 24px rgba(10,20,24,.055);transform:translateY(-1px)}
.vehicle-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px}
.vehicle-card-icon{width:38px;height:38px;border-radius:9px;background:var(--surface-2);border:1px solid var(--border);display:grid;place-items:center;color:var(--text-2)}
.vehicle-card-status{display:inline-flex;align-items:center;min-height:27px;padding:0 9px;border-radius:999px;font-size:10.5px;font-weight:750}
.vehicle-card-status.is-ok{background:color-mix(in srgb,var(--success) 9%,var(--surface));color:var(--success)}
.vehicle-card-status.is-alert{background:color-mix(in srgb,var(--danger) 8%,var(--surface));color:var(--danger)}
.vehicle-card-main{margin:22px 0 18px}
.vehicle-card-main h2{font-size:20px;letter-spacing:-.025em;margin:0 0 4px}
.vehicle-card-main p{margin:0;color:var(--text-3);font-size:12px}
.vehicle-card-details{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:15px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.vehicle-card-details>div{display:grid;gap:4px;min-width:0}
.vehicle-card-details span{font-size:9.5px;text-transform:uppercase;letter-spacing:.07em;color:var(--text-3);font-weight:750}
.vehicle-card-details strong{font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.vehicle-card-progress{display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px;margin:16px 0}
.vehicle-card-progress-line{height:4px;background:var(--surface-3);border-radius:999px;overflow:hidden}
.vehicle-card-progress-line span{display:block;height:100%;background:linear-gradient(90deg,var(--cyan),var(--green));border-radius:inherit}
.vehicle-card-progress small{font-size:10px;color:var(--text-3)}
.vehicle-card-action{margin-top:auto;display:flex;align-items:center;justify-content:space-between;color:var(--text-2);font-size:11.5px;font-weight:700;padding-top:3px}

.stock-priority-panel{background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow:hidden;margin-bottom:28px}
.stock-priority-head{min-height:66px;padding:14px 18px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border)}
.stock-priority-head h2{margin:3px 0 0;font-size:15px}
.stock-priority-count{width:30px;height:30px;border-radius:50%;background:color-mix(in srgb,var(--danger) 9%,var(--surface));color:var(--danger);display:grid;place-items:center;font-size:11px;font-weight:800}
.stock-priority-list{display:grid}
.stock-priority-row{display:grid;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:57px;padding:10px 18px;border-bottom:1px solid var(--border)}
.stock-priority-row:last-child{border-bottom:0}
.stock-priority-row:hover{background:var(--surface-2)}
.stock-priority-dot{width:7px;height:7px;border-radius:50%;background:var(--danger)}
.stock-priority-row div{display:grid;gap:2px;min-width:0}
.stock-priority-row strong{font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.stock-priority-row small{font-size:10px;color:var(--text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.stock-priority-missing{color:var(--danger);font-size:11px;font-weight:800}

.vehicle-page-head{margin:0 0 18px}
.vehicle-back-link{display:inline-flex;color:var(--text-3);font-size:11px;margin-bottom:15px}
.vehicle-back-link:hover{color:var(--text)}
.vehicle-title-row{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}
.vehicle-title-row h1{font-size:29px;line-height:1.1;letter-spacing:-.035em;margin:5px 0 6px}
.vehicle-title-row p{margin:0;color:var(--text-3);font-size:12px}
.vehicle-main-status{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:0 11px;border-radius:999px;font-size:11px;font-weight:800;white-space:nowrap}
.vehicle-main-status.is-ok{background:color-mix(in srgb,var(--success) 9%,var(--surface));color:var(--success)}
.vehicle-main-status.is-alert{background:color-mix(in srgb,var(--danger) 8%,var(--surface));color:var(--danger)}
.stock-inline-notice{margin:-2px 0 14px;border:1px solid color-mix(in srgb,var(--success) 20%,var(--border));background:color-mix(in srgb,var(--success) 5%,var(--surface));color:var(--success);border-radius:8px;padding:10px 12px;font-size:11px;font-weight:700}

.vehicle-quick-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));background:var(--surface);border:1px solid var(--border);border-radius:10px;overflow:hidden;margin-bottom:12px}
.vehicle-quick-summary>div{min-height:68px;padding:13px 17px;display:flex;flex-direction:column;justify-content:center;gap:4px;border-right:1px solid var(--border)}
.vehicle-quick-summary>div:last-child{border-right:0}
.vehicle-quick-summary span{font-size:9.5px;text-transform:uppercase;letter-spacing:.07em;color:var(--text-3);font-weight:750}
.vehicle-quick-summary strong{font-size:14px}

.vehicle-section-nav{display:flex;align-items:center;gap:4px;padding:4px;background:var(--surface);border:1px solid var(--border);border-radius:9px;margin-bottom:18px;overflow-x:auto}
.vehicle-section-nav a{min-height:36px;padding:0 13px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;color:var(--text-2);font-size:11px;font-weight:700;white-space:nowrap}
.vehicle-section-nav a:hover{background:var(--surface-2);color:var(--text)}
.vehicle-section-nav a.active{background:var(--surface-3);color:var(--text)}

.vehicle-check-shell,.vehicle-simple-panel{background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow:hidden;margin-bottom:28px}
.vehicle-check-intro,.vehicle-simple-head{padding:20px 22px 18px;border-bottom:1px solid var(--border)}
.vehicle-check-intro h2,.vehicle-simple-head h2{font-size:18px;letter-spacing:-.02em;margin:4px 0 5px}
.vehicle-check-intro p,.vehicle-simple-head p{margin:0;color:var(--text-3);font-size:11.5px}
.vehicle-category-tabs{display:flex;gap:5px;padding:10px 12px;border-bottom:1px solid var(--border);overflow-x:auto;scrollbar-width:thin;scrollbar-color:var(--border) transparent;background:var(--surface-2)}
.vehicle-category-tabs a{display:inline-flex;align-items:center;gap:7px;min-height:36px;padding:0 11px;border-radius:7px;color:var(--text-2);font-size:10.5px;font-weight:700;white-space:nowrap;flex:0 0 auto}
.vehicle-category-tabs a:hover{background:var(--surface);color:var(--text)}
.vehicle-category-tabs a.active{background:var(--surface);color:var(--text);box-shadow:0 0 0 1px var(--border)}
.vehicle-category-tabs a.active.alert{color:var(--danger)}
.vehicle-category-tabs b{min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:var(--surface-3);display:grid;place-items:center;font-size:9px;color:var(--text-3)}
.vehicle-category-tabs a.alert b{background:color-mix(in srgb,var(--danger) 9%,var(--surface));color:var(--danger)}

.vehicle-check-toolbar{min-height:62px;padding:12px 17px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--border)}
.vehicle-check-toolbar>div{display:grid;gap:2px}
.vehicle-check-toolbar h3{font-size:13px;margin:0}
.vehicle-check-toolbar span{font-size:10px;color:var(--text-3)}
.vehicle-mark-all{height:34px;padding:0 11px;border:1px solid color-mix(in srgb,var(--success) 26%,var(--border));border-radius:7px;background:color-mix(in srgb,var(--success) 6%,var(--surface));color:var(--success);display:inline-flex;align-items:center;gap:6px;font-size:10.5px;font-weight:800;cursor:pointer}
.vehicle-mark-all:hover{background:color-mix(in srgb,var(--success) 10%,var(--surface))}

.vehicle-checklist{display:grid}
.vehicle-check-item{display:grid;grid-template-columns:9px minmax(0,1fr) auto;align-items:center;gap:13px;min-height:65px;padding:10px 16px;border-bottom:1px solid var(--border)}
.vehicle-check-item:last-child{border-bottom:0}
.vehicle-check-item:hover{background:color-mix(in srgb,var(--surface-2) 70%,transparent)}
.vehicle-check-status-dot{width:7px;height:7px;border-radius:50%;background:var(--text-3)}
.vehicle-check-item.is-ok .vehicle-check-status-dot{background:var(--success)}
.vehicle-check-item.is-missing .vehicle-check-status-dot{background:var(--danger)}
.vehicle-check-copy{display:grid;gap:2px;min-width:0}
.vehicle-check-copy strong{font-size:12px;line-height:1.35}
.vehicle-check-copy small{font-size:9.5px;color:var(--text-3)}
.vehicle-check-copy .vehicle-check-note{color:var(--warning);font-weight:700}
.vehicle-check-actions{display:flex;gap:6px}
.vehicle-check-actions form{margin:0}
.vehicle-choice{height:36px;min-width:74px;padding:0 10px;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--text-3);display:inline-flex;align-items:center;justify-content:center;gap:5px;font-size:10.5px;font-weight:800;cursor:pointer}
.vehicle-choice:hover{background:var(--surface-2);color:var(--text)}
.vehicle-choice.yes.active{background:color-mix(in srgb,var(--success) 8%,var(--surface));border-color:color-mix(in srgb,var(--success) 30%,var(--border));color:var(--success)}
.vehicle-choice.no.active{background:color-mix(in srgb,var(--danger) 7%,var(--surface));border-color:color-mix(in srgb,var(--danger) 27%,var(--border));color:var(--danger)}

.vehicle-empty-state{min-height:190px;padding:34px 20px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.vehicle-empty-state>span{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--success) 8%,var(--surface));color:var(--success);margin-bottom:10px}
.vehicle-empty-state strong{font-size:13px}
.vehicle-empty-state p{font-size:10.5px;color:var(--text-3);margin:4px 0 0}
.vehicle-empty-state.compact{min-height:130px}

.vehicle-upload-simple{display:grid;grid-template-columns:210px minmax(260px,1fr) auto;align-items:end;gap:10px;padding:16px 22px;border-bottom:1px solid var(--border);background:var(--surface-2)}
.vehicle-upload-simple label,.vehicle-info-form label{display:grid;gap:6px}
.vehicle-upload-simple label>span,.vehicle-info-form label>span{font-size:9.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);font-weight:750}
.vehicle-upload-simple select,.vehicle-upload-simple input,.vehicle-info-form input{height:40px;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--text);padding:0 11px;outline:0;font-size:11.5px}
.vehicle-upload-simple select:focus,.vehicle-upload-simple input:focus,.vehicle-info-form input:focus{border-color:color-mix(in srgb,var(--cyan) 55%,var(--border));box-shadow:0 0 0 3px color-mix(in srgb,var(--cyan) 8%,transparent)}
.vehicle-document-table{display:grid}
.vehicle-document-row{display:grid;grid-template-columns:34px minmax(0,1fr) auto 24px;align-items:center;gap:10px;min-height:62px;padding:10px 20px;border-bottom:1px solid var(--border)}
.vehicle-document-row:last-child{border-bottom:0}
.vehicle-document-row:hover{background:var(--surface-2)}
.vehicle-document-icon{width:32px;height:32px;border-radius:7px;background:var(--surface-2);display:grid;place-items:center;color:var(--text-3)}
.vehicle-document-row div{display:grid;gap:2px;min-width:0}
.vehicle-document-row strong{font-size:11.5px}
.vehicle-document-row small,.vehicle-document-row time{font-size:9.5px;color:var(--text-3)}
.vehicle-document-row small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.vehicle-document-open{color:var(--text-3)}

.vehicle-info-panel{max-width:920px}
.vehicle-info-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:20px 22px}
.vehicle-info-form .wide{grid-column:1/-1}
.vehicle-info-actions{display:flex;justify-content:flex-end;padding-top:6px}

/* Central inventory pages */
.stock-catalog-shell{background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow:hidden}
.stock-catalog-head{min-height:68px;padding:14px 18px;display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid var(--border)}
.stock-catalog-head h2{margin:3px 0 0;font-size:15px}
.stock-catalog-count{font-size:11px;color:var(--text-3)}
.stock-catalog-list{display:grid}
.stock-catalog-row{display:grid;grid-template-columns:minmax(0,1fr) 100px 120px;align-items:center;gap:14px;min-height:54px;padding:10px 18px;border-bottom:1px solid var(--border)}
.stock-catalog-row:last-child{border-bottom:0}
.stock-catalog-row strong{font-size:11.5px}
.stock-catalog-row span{font-size:10px;color:var(--text-3)}
.stock-catalog-status{justify-self:end;display:inline-flex;align-items:center;min-height:25px;padding:0 8px;border-radius:999px;background:var(--surface-2);color:var(--text-3)!important;font-weight:700}

@media(max-width:900px){
  .vehicle-card-grid{grid-template-columns:1fr}
  .vehicle-upload-simple{grid-template-columns:1fr}
  .vehicle-upload-simple .primary-button{justify-self:start}
}

@media(max-width:680px){
  .stock-summary-bar,.vehicle-quick-summary{grid-template-columns:1fr 1fr}
  .stock-summary-item:nth-child(2),.vehicle-quick-summary>div:nth-child(2){border-right:0}
  .stock-summary-item:last-child,.vehicle-quick-summary>div:last-child{grid-column:1/-1;border-top:1px solid var(--border);border-right:0}
  .vehicle-card-grid{gap:10px}
  .vehicle-card{min-height:0;padding:16px}
  .vehicle-card-main{margin:17px 0 14px}
  .vehicle-card-details{grid-template-columns:1fr}
  .vehicle-title-row{align-items:flex-start;flex-direction:column;gap:10px}
  .vehicle-title-row h1{font-size:24px}
  .vehicle-main-status{align-self:flex-start}
  .vehicle-check-intro,.vehicle-simple-head{padding:17px 16px 15px}
  .vehicle-category-tabs{padding:8px}
  .vehicle-check-toolbar{padding:11px 12px}
  .vehicle-check-item{grid-template-columns:8px minmax(0,1fr);gap:10px;padding:12px;min-height:0}
  .vehicle-check-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;margin-left:18px}
  .vehicle-check-actions form{width:100%}
  .vehicle-choice{width:100%;height:42px}
  .vehicle-info-form{grid-template-columns:1fr;padding:16px}
  .vehicle-info-form .wide{grid-column:1}
  .vehicle-document-row{grid-template-columns:32px minmax(0,1fr) 20px;padding:10px 14px}
  .vehicle-document-row time{display:none}
  .stock-catalog-row{grid-template-columns:minmax(0,1fr) auto;padding:10px 14px}
  .stock-catalog-row>span:nth-child(2){display:none}
}

/* V22 — checklist véhicule simplifiée et rapport de contrôle */
.stock-inline-notice.is-error{border-color:color-mix(in srgb,var(--danger) 24%,var(--border));background:color-mix(in srgb,var(--danger) 5%,var(--surface));color:var(--danger)}
.vehicle-validation-success{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:12px;margin:0 0 14px;padding:12px 14px;border:1px solid color-mix(in srgb,var(--success) 22%,var(--border));border-radius:10px;background:color-mix(in srgb,var(--success) 5%,var(--surface))}
.vehicle-validation-icon{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--success) 11%,var(--surface));color:var(--success)}
.vehicle-validation-success>div{display:grid;gap:2px;min-width:0}
.vehicle-validation-success strong{font-size:12px}
.vehicle-validation-success span{font-size:10px;color:var(--text-3)}
.vehicle-check-intro-v22{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}
.vehicle-check-progress-copy{display:grid;justify-items:end;gap:2px;white-space:nowrap}
.vehicle-check-progress-copy strong{font-size:17px;letter-spacing:-.02em}
.vehicle-check-progress-copy span{font-size:10px;color:var(--text-3)}
.vehicle-check-progressbar{height:4px;background:var(--surface-3);overflow:hidden}
.vehicle-check-progressbar span{display:block;height:100%;background:var(--cyan);transition:width .2s ease}
.vehicle-category-tabs b.complete{background:color-mix(in srgb,var(--success) 10%,var(--surface));color:var(--success)}
.vehicle-check-toolbar-v22{min-height:58px}
.vehicle-category-missing-count{display:inline-flex!important;align-items:center;justify-content:center;min-height:25px;padding:0 8px;border-radius:999px;background:color-mix(in srgb,var(--danger) 7%,var(--surface));color:var(--danger)!important;font-weight:800}
.vehicle-check-item.is-unchecked .vehicle-check-status-dot{background:var(--border)}
.vehicle-check-item.is-unchecked .vehicle-check-copy strong{color:var(--text-2)}
.vehicle-choice{min-width:96px;height:38px;padding:0 10px;gap:7px}
.vehicle-choice-box{width:17px;height:17px;border:1px solid var(--border);border-radius:4px;display:grid;place-items:center;flex:0 0 auto;background:var(--surface)}
.vehicle-choice.yes.active .vehicle-choice-box{border-color:var(--success);background:var(--success);color:#fff}
.vehicle-choice.no.active .vehicle-choice-box{border-color:var(--danger);background:var(--danger);color:#fff}
.vehicle-choice.yes.active{background:color-mix(in srgb,var(--success) 5%,var(--surface))}
.vehicle-choice.no.active{background:color-mix(in srgb,var(--danger) 5%,var(--surface))}
.vehicle-check-submitbar{position:sticky;bottom:0;z-index:4;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 16px;border-top:1px solid var(--border);background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(10px)}
.vehicle-check-submitcopy{display:grid;gap:2px}
.vehicle-check-submitcopy strong{font-size:12px}
.vehicle-check-submitcopy span{font-size:10px;color:var(--text-3)}
.vehicle-validate-button{min-width:190px}
.vehicle-validate-button:disabled{opacity:.42;cursor:not-allowed;filter:saturate(.4)}
.vehicle-control-history{display:grid}
.vehicle-control-row{display:grid;grid-template-columns:110px minmax(0,1fr) auto 18px;align-items:center;gap:14px;min-height:64px;padding:10px 18px;border-bottom:1px solid var(--border);color:var(--text)}
.vehicle-control-row:last-child{border-bottom:0}
.vehicle-control-row:hover{background:var(--surface-2)}
.vehicle-control-row time{display:grid;gap:2px;font-size:10.5px;font-weight:800}
.vehicle-control-row time small{font-size:9.5px;color:var(--text-3);font-weight:600}
.vehicle-control-row>div{display:grid;gap:2px;min-width:0}
.vehicle-control-row>div strong{font-size:11.5px}
.vehicle-control-row>div span{font-size:9.5px;color:var(--text-3)}
.vehicle-control-result{display:inline-flex;align-items:center;justify-content:center;min-height:27px;padding:0 9px;border-radius:999px;font-size:10px;font-weight:800;white-space:nowrap}
.vehicle-control-result.has-missing{background:color-mix(in srgb,var(--danger) 7%,var(--surface));color:var(--danger)}
.vehicle-control-result.is-complete{background:color-mix(in srgb,var(--success) 8%,var(--surface));color:var(--success)}
.vehicle-control-arrow{color:var(--text-3)}

.vehicle-report-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin-bottom:18px}
.vehicle-report-page-head h1{font-size:29px;letter-spacing:-.035em;margin:5px 0 6px}
.vehicle-report-page-head p{margin:0;color:var(--text-3);font-size:12px}
.vehicle-report-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--border);border-radius:10px;overflow:hidden;background:var(--surface);margin-bottom:10px}
.vehicle-report-meta>div,.vehicle-report-summary>div{display:grid;gap:4px;padding:14px 16px;border-right:1px solid var(--border)}
.vehicle-report-meta>div:last-child,.vehicle-report-summary>div:last-child{border-right:0}
.vehicle-report-meta span,.vehicle-report-summary span{font-size:9px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);font-weight:800}
.vehicle-report-meta strong{font-size:12px}
.vehicle-report-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--border);border-radius:10px;overflow:hidden;background:var(--surface);margin-bottom:16px}
.vehicle-report-summary strong{font-size:20px;letter-spacing:-.03em}
.vehicle-report-content{background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow:hidden;margin-bottom:28px}
.vehicle-report-title-row{padding:18px 20px;border-bottom:1px solid var(--border)}
.vehicle-report-title-row h2{font-size:17px;margin:4px 0 0;letter-spacing:-.02em}
.vehicle-report-groups{display:grid}
.vehicle-report-group{border-bottom:1px solid var(--border)}
.vehicle-report-group:last-child{border-bottom:0}
.vehicle-report-group-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:11px 18px;background:var(--surface-2);border-bottom:1px solid var(--border)}
.vehicle-report-group-head strong{font-size:11.5px}
.vehicle-report-group-head span{font-size:9.5px;color:var(--text-3)}
.vehicle-report-missing-row{display:grid;grid-template-columns:8px minmax(0,1fr);align-items:center;gap:10px;padding:11px 18px;border-bottom:1px solid var(--border)}
.vehicle-report-missing-row:last-child{border-bottom:0}
.vehicle-report-missing-dot{width:7px;height:7px;border-radius:50%;background:var(--danger)}
.vehicle-report-missing-row>div{display:grid;gap:2px}
.vehicle-report-missing-row strong{font-size:11.5px}
.vehicle-report-missing-row small{font-size:9.5px;color:var(--text-3)}
.vehicle-report-complete{display:flex;align-items:center;gap:12px;padding:24px 20px}
.vehicle-report-complete>span{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--success) 9%,var(--surface));color:var(--success)}
.vehicle-report-complete>div{display:grid;gap:3px}
.vehicle-report-complete strong{font-size:12.5px}
.vehicle-report-complete p{margin:0;color:var(--text-3);font-size:10px}

@media(max-width:680px){
  .vehicle-validation-success{grid-template-columns:36px minmax(0,1fr)}
  .vehicle-validation-success .secondary-button{grid-column:1/-1;width:100%;justify-content:center}
  .vehicle-check-intro-v22{align-items:flex-start;flex-direction:column;gap:14px}
  .vehicle-check-progress-copy{justify-items:start}
  .vehicle-check-item{grid-template-columns:8px minmax(0,1fr)}
  .vehicle-check-actions{margin-left:18px}
  .vehicle-check-submitbar{align-items:stretch;flex-direction:column;padding:12px}
  .vehicle-validate-button{width:100%;min-width:0;height:44px}
  .vehicle-control-row{grid-template-columns:78px minmax(0,1fr) auto;padding:10px 12px;gap:10px}
  .vehicle-control-arrow{display:none}
  .vehicle-report-page-head{align-items:flex-start;flex-direction:column}
  .vehicle-report-page-head .secondary-button{width:100%;justify-content:center}
  .vehicle-report-meta,.vehicle-report-summary{grid-template-columns:1fr}
  .vehicle-report-meta>div,.vehicle-report-summary>div{border-right:0;border-bottom:1px solid var(--border)}
  .vehicle-report-meta>div:last-child,.vehicle-report-summary>div:last-child{border-bottom:0}
}

@media print{
  .sidebar,.topbar,.sidebar-overlay,.no-print,.vehicle-back-link{display:none!important}
  .main-area,.content-area{margin:0!important;padding:0!important;width:100%!important;max-width:none!important}
  body{background:#fff!important;color:#111!important}
  .vehicle-report-content,.vehicle-report-meta,.vehicle-report-summary{box-shadow:none!important;border-color:#d8d8d8!important}
}

/* =========================================================
   V23 — DOSSIER SOCIÉTÉ / DOCUMENTS CEGEWATT
   ========================================================= */
.company23-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:18px}
.company23-heading h1{margin:4px 0 7px;font-size:31px;letter-spacing:-.04em}
.company23-heading p{margin:0;color:var(--text-3);font-size:12px;max-width:620px;line-height:1.6}
.company23-identity{display:grid;grid-template-columns:92px minmax(0,1fr) 210px;align-items:center;gap:20px;padding:22px 24px;border:1px solid var(--border);border-radius:14px;background:var(--surface);margin-bottom:12px}
.company23-brandmark{height:68px;display:grid;place-items:center;border-right:1px solid var(--border);padding-right:20px}
.company23-brandmark img{max-width:66px;max-height:55px;object-fit:contain}
.company23-identity-main{min-width:0}
.company23-identity-main>span{font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);font-weight:800}
.company23-identity-main h2{margin:4px 0 6px;font-size:21px;letter-spacing:-.03em}
.company23-identity-main p{margin:0;color:var(--text-3);font-size:10.5px;line-height:1.6}
.company23-completion{display:grid;grid-template-columns:auto 1fr;align-items:end;gap:2px 9px;padding-left:22px;border-left:1px solid var(--border)}
.company23-completion strong{font-size:25px;line-height:1;letter-spacing:-.04em}
.company23-completion span{font-size:9.5px;color:var(--text-3);font-weight:700}
.company23-completion i{grid-column:1/-1;height:5px;background:var(--surface-3);border-radius:999px;overflow:hidden;margin-top:8px}
.company23-completion i b{display:block;height:100%;border-radius:999px;background:var(--accent)}
.company23-tabs{display:flex;align-items:center;gap:4px;padding:4px;border:1px solid var(--border);border-radius:10px;background:var(--surface);margin-bottom:18px;overflow-x:auto}
.company23-tabs a{height:34px;padding:0 14px;display:inline-flex;align-items:center;border-radius:7px;color:var(--text-3);font-size:10.5px;font-weight:800;white-space:nowrap}
.company23-tabs a:hover{color:var(--text);background:var(--surface-2)}
.company23-tabs a.active{color:var(--text);background:var(--surface-2);box-shadow:0 1px 2px rgba(15,23,42,.05)}
.company23-summary-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--border);border-radius:12px;overflow:hidden;background:var(--surface);margin-bottom:14px}
.company23-summary-strip>div{display:grid;gap:5px;padding:14px 17px;border-right:1px solid var(--border)}
.company23-summary-strip>div:last-child{border-right:0}
.company23-summary-strip span{font-size:9px;letter-spacing:.05em;text-transform:uppercase;color:var(--text-3);font-weight:800}
.company23-summary-strip strong{font-size:20px;letter-spacing:-.035em}
.company23-doc-list{display:grid;border:1px solid var(--border);border-radius:14px;overflow:hidden;background:var(--surface);margin-bottom:16px}
.company23-doc-row{display:grid;grid-template-columns:38px minmax(220px,1.4fr) minmax(150px,.8fr) auto;align-items:center;gap:14px;min-height:76px;padding:12px 16px;border-bottom:1px solid var(--border)}
.company23-doc-row:last-child{border-bottom:0}
.company23-doc-row:hover{background:var(--surface-2)}
.company23-doc-icon{width:36px;height:36px;border-radius:9px;display:grid;place-items:center;background:var(--surface-2);color:var(--text-2)}
.company23-doc-row.has-document .company23-doc-icon{background:color-mix(in srgb,var(--success) 8%,var(--surface));color:var(--success)}
.company23-doc-title{display:grid;gap:3px;min-width:0}
.company23-doc-title strong{font-size:11.5px}
.company23-doc-title small{font-size:9.5px;color:var(--text-3);line-height:1.5}
.company23-doc-status{display:grid;justify-items:start;gap:4px}
.company23-doc-status small{font-size:9px;color:var(--text-3)}
.company23-state{height:24px;padding:0 8px;display:inline-flex;align-items:center;border-radius:999px;font-size:9px;font-weight:800}
.company23-state.ready{background:color-mix(in srgb,var(--success) 8%,var(--surface));color:var(--success)}
.company23-state.missing{background:var(--surface-2);color:var(--text-3)}
.company23-state.expired{background:color-mix(in srgb,var(--danger) 8%,var(--surface));color:var(--danger)}
.company23-state.soon{background:color-mix(in srgb,#f59e0b 10%,var(--surface));color:#b26a00}
.company23-doc-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;white-space:nowrap}
.company23-text-link{font-size:10px;font-weight:800;color:var(--accent)}
.company23-history{margin-top:16px;margin-bottom:16px;overflow:hidden}
.company23-history-list{display:grid}
.company23-history-row{display:grid;grid-template-columns:minmax(0,1fr) 95px 76px auto;align-items:center;gap:14px;padding:11px 16px;border-top:1px solid var(--border)}
.company23-history-row>div:first-child{display:grid;gap:2px;min-width:0}
.company23-history-row strong{font-size:10.5px}
.company23-history-row span{font-size:9px;color:var(--text-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.company23-history-row>a,.company23-delete{font-size:9.5px;font-weight:800;color:var(--accent);background:none;border:0;padding:0;cursor:pointer}
.company23-delete{color:var(--danger)}
.company23-upload-panel{margin-top:16px;overflow:hidden}
.company23-upload-form{display:grid;grid-template-columns:1.15fr .8fr 1.35fr 1fr auto;align-items:end;gap:12px;padding:16px}
.company23-upload-form label{display:grid;gap:6px}
.company23-upload-form label>span,.company23-profile-form label>span,.company23-drive-form label>span{font-size:9px;color:var(--text-3);font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.company23-upload-form input,.company23-upload-form select,.company23-profile-form input,.company23-profile-form textarea,.company23-drive-form input{width:100%;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:8px;padding:0 10px;min-height:38px;font:inherit;font-size:10.5px}
.company23-profile-form textarea{padding:10px;resize:vertical}
.company23-info-panel{overflow:hidden}
.company23-profile-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:18px}
.company23-profile-form label{display:grid;gap:7px}
.company23-profile-form label.wide{grid-column:1/-1}
.company23-profile-actions{grid-column:1/-1;display:flex;justify-content:flex-end;padding-top:4px}
.company23-profile-readonly{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--border)}
.company23-profile-readonly>div{display:grid;gap:5px;padding:16px;border-right:1px solid var(--border);border-bottom:1px solid var(--border)}
.company23-profile-readonly>div:nth-child(3n){border-right:0}
.company23-profile-readonly span{font-size:9px;color:var(--text-3);font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.company23-profile-readonly strong{font-size:11px;line-height:1.5}
.company23-drive-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:14px}
.company23-drive-card,.company23-hermes-flow{padding:20px}
.company23-drive-head{display:flex;align-items:center;gap:11px;margin-bottom:12px}
.company23-drive-head h2{font-size:16px;margin:3px 0 0;letter-spacing:-.02em}
.company23-drive-card>p{margin:0 0 16px;color:var(--text-3);font-size:10.5px;line-height:1.65}
.company23-drive-form{display:grid;gap:12px;padding:14px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2)}
.company23-drive-form label{display:grid;gap:6px}
.company23-drive-status{display:flex;align-items:flex-start;gap:10px;padding-top:16px;margin-top:16px;border-top:1px solid var(--border)}
.company23-status-dot{width:8px;height:8px;border-radius:50%;background:var(--text-3);margin-top:4px;flex:0 0 auto}
.company23-status-dot.pending{background:#f59e0b}
.company23-drive-status>div{display:grid;gap:3px}
.company23-drive-status strong{font-size:10.5px}
.company23-drive-status small{font-size:9.5px;color:var(--text-3);line-height:1.5}
.company23-flow-list{display:grid;border-top:1px solid var(--border)}
.company23-flow-list>div{display:grid;grid-template-columns:28px minmax(0,1fr);gap:10px;padding:13px 0;border-bottom:1px solid var(--border)}
.company23-flow-list>div>span{width:24px;height:24px;display:grid;place-items:center;border-radius:50%;background:var(--surface-2);font-size:9px;font-weight:900;color:var(--text-2)}
.company23-flow-list p{display:grid;gap:3px;margin:0}
.company23-flow-list strong{font-size:10.5px}
.company23-flow-list small{font-size:9.5px;color:var(--text-3);line-height:1.5}

@media(max-width:1100px){
  .company23-doc-row{grid-template-columns:38px minmax(0,1fr) auto}
  .company23-doc-status{display:none}
  .company23-upload-form{grid-template-columns:repeat(2,minmax(0,1fr))}
  .company23-upload-form .primary-button{width:max-content}
  .company23-profile-form,.company23-profile-readonly{grid-template-columns:repeat(2,minmax(0,1fr))}
  .company23-profile-readonly>div:nth-child(3n){border-right:1px solid var(--border)}
  .company23-profile-readonly>div:nth-child(2n){border-right:0}
}
@media(max-width:780px){
  .company23-heading{align-items:flex-start;flex-direction:column}
  .company23-heading .primary-button{width:100%;justify-content:center}
  .company23-identity{grid-template-columns:68px minmax(0,1fr);padding:16px}
  .company23-brandmark{height:52px;padding-right:14px}
  .company23-completion{grid-column:1/-1;border-left:0;border-top:1px solid var(--border);padding:14px 0 0}
  .company23-summary-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
  .company23-summary-strip>div:nth-child(2){border-right:0}
  .company23-summary-strip>div:nth-child(-n+2){border-bottom:1px solid var(--border)}
  .company23-doc-row{grid-template-columns:34px minmax(0,1fr);gap:10px;padding:12px}
  .company23-doc-actions{grid-column:2;justify-content:flex-start}
  .company23-history-row{grid-template-columns:minmax(0,1fr) auto}
  .company23-history-row>span{display:none}
  .company23-history-row form{grid-column:2}
  .company23-upload-form,.company23-profile-form,.company23-profile-readonly,.company23-drive-layout{grid-template-columns:1fr}
  .company23-profile-readonly>div,.company23-profile-readonly>div:nth-child(3n),.company23-profile-readonly>div:nth-child(2n){border-right:0}
}
@media(max-width:520px){
  .company23-heading h1{font-size:27px}
  .company23-doc-title small{display:none}
  .company23-doc-row{min-height:66px}
  .company23-doc-actions .secondary-button{height:32px;padding:0 9px}
  .company23-upload-form{padding:12px}
}

/* =========================================================
   V24 — Centre d'alertes HERMES
   ========================================================= */
.alerts24-heading {
    margin-bottom: 22px;
}

.alerts24-heading p {
    max-width: 760px;
}

.alerts24-flash {
    margin: 0 0 18px;
    padding: 12px 15px;
    border: 1px solid rgba(24, 164, 92, .22);
    background: rgba(24, 164, 92, .07);
    color: var(--text);
    border-radius: 10px;
    font-size: 13px;
    font-weight: 700;
}

.alerts24-summary {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    border: 1px solid var(--border);
    background: var(--surface);
    border-radius: 14px;
    overflow: hidden;
    margin-bottom: 18px;
}

.alerts24-summary article {
    min-height: 112px;
    padding: 18px 20px;
    border-right: 1px solid var(--border);
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 5px;
}

.alerts24-summary article:last-child {
    border-right: 0;
}

.alerts24-summary span {
    color: var(--text-muted);
    font-size: 12px;
    font-weight: 700;
}

.alerts24-summary strong {
    color: var(--text);
    font-size: 28px;
    line-height: 1;
    letter-spacing: -.03em;
}

.alerts24-summary small {
    color: var(--text-soft);
    font-size: 11px;
}

.alerts24-summary-main {
    background: linear-gradient(135deg, rgba(218, 54, 51, .08), rgba(218, 54, 51, .015));
}

.alerts24-summary-main strong {
    color: #c83e3a;
}

.alerts24-hermes {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 14px;
    padding: 15px 17px;
    margin-bottom: 18px;
    border: 1px solid rgba(0, 163, 201, .22);
    background: rgba(0, 163, 201, .045);
    border-radius: 12px;
}

.alerts24-hermes-mark {
    width: 38px;
    height: 38px;
    border-radius: 10px;
    display: grid;
    place-items: center;
    color: #008eae;
    background: rgba(0, 163, 201, .1);
}

.alerts24-hermes-copy {
    min-width: 0;
    display: grid;
    gap: 3px;
}

.alerts24-hermes-copy > span {
    color: #008eae;
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .08em;
}

.alerts24-hermes-copy strong {
    color: var(--text);
    font-size: 14px;
    line-height: 1.35;
}

.alerts24-hermes-copy small {
    color: var(--text-muted);
    font-size: 11px;
}

.alerts24-hermes-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: var(--text);
    font-size: 12px;
    font-weight: 800;
    text-decoration: none;
    white-space: nowrap;
}

.alerts24-filters {
    display: flex;
    gap: 7px;
    overflow-x: auto;
    padding: 1px 1px 10px;
    margin-bottom: 10px;
    scrollbar-width: thin;
}

.alerts24-filters a {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 38px;
    padding: 0 12px;
    border: 1px solid var(--border);
    border-radius: 10px;
    background: var(--surface);
    color: var(--text-muted);
    text-decoration: none;
    font-size: 11px;
    font-weight: 750;
    transition: border-color .15s ease, color .15s ease, background .15s ease;
}

.alerts24-filters a:hover,
.alerts24-filters a.active {
    color: var(--text);
    border-color: rgba(0, 163, 201, .34);
    background: rgba(0, 163, 201, .055);
}

.alerts24-filters b {
    min-width: 20px;
    height: 20px;
    padding: 0 6px;
    border-radius: 999px;
    background: var(--surface-soft);
    color: var(--text-soft);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 10px;
}

.alerts24-filters a.active b {
    background: rgba(0, 163, 201, .14);
    color: #008eae;
}

.alerts24-manual-form {
    margin: 6px 0 20px;
    padding: 18px;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 13px;
}

.alerts24-manual-form[hidden] {
    display: none !important;
}

.alerts24-manual-head {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 16px;
    margin-bottom: 16px;
}

.alerts24-manual-head h2 {
    margin: 3px 0 0;
    font-size: 18px;
}

.alerts24-manual-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.alerts24-manual-grid label {
    display: grid;
    gap: 7px;
}

.alerts24-manual-grid label > span {
    color: var(--text-muted);
    font-size: 11px;
    font-weight: 750;
}

.alerts24-manual-grid input,
.alerts24-manual-grid select,
.alerts24-manual-grid textarea {
    width: 100%;
    min-height: 42px;
    border: 1px solid var(--border);
    background: var(--surface-soft);
    color: var(--text);
    border-radius: 9px;
    padding: 10px 11px;
    font: inherit;
    font-size: 13px;
}

.alerts24-manual-grid textarea {
    resize: vertical;
}

.alerts24-manual-grid .span-2 {
    grid-column: 1 / -1;
}

.alerts24-manual-actions {
    display: flex;
    justify-content: flex-end;
}

.alerts24-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 300px;
    gap: 18px;
    align-items: start;
}

.alerts24-main,
.alerts24-side {
    border: 1px solid var(--border);
    background: var(--surface);
    border-radius: 14px;
}

.alerts24-main {
    overflow: hidden;
}

.alerts24-list-head {
    min-height: 76px;
    padding: 17px 18px;
    border-bottom: 1px solid var(--border);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
}

.alerts24-list-head h2 {
    margin: 3px 0 0;
    color: var(--text);
    font-size: 18px;
    letter-spacing: -.02em;
}

.alerts24-refresh {
    color: var(--text-soft);
    font-size: 10px;
    font-weight: 700;
    white-space: nowrap;
}

.alerts24-list {
    display: grid;
}

.alerts24-row {
    position: relative;
    display: grid;
    grid-template-columns: 36px minmax(0, 1fr) 138px;
    align-items: center;
    gap: 13px;
    padding: 15px 18px;
    border-bottom: 1px solid var(--border);
    min-height: 94px;
}

.alerts24-row:last-child {
    border-bottom: 0;
}

.alerts24-row::before {
    content: '';
    position: absolute;
    left: 0;
    top: 17px;
    bottom: 17px;
    width: 3px;
    border-radius: 0 4px 4px 0;
    background: #8d98a4;
}

.alerts24-row.tone-critical::before { background: #c73c39; }
.alerts24-row.tone-high::before { background: #dd8a23; }
.alerts24-row.tone-medium::before { background: #d0ad2d; }
.alerts24-row.tone-low::before { background: #5f8f75; }

.alerts24-row-icon {
    width: 34px;
    height: 34px;
    border-radius: 9px;
    display: grid;
    place-items: center;
    color: var(--text-soft);
    background: var(--surface-soft);
}

.alerts24-row-main {
    min-width: 0;
}

.alerts24-row-topline {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 7px;
    margin-bottom: 5px;
}

.alerts24-domain {
    color: var(--text-soft);
    font-size: 9px;
    font-weight: 850;
    text-transform: uppercase;
    letter-spacing: .06em;
}

.alerts24-priority,
.alerts24-source {
    min-height: 19px;
    padding: 0 7px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    font-size: 9px;
    font-weight: 800;
}

.alerts24-priority.critical { color: #bd332f; background: rgba(203, 56, 53, .09); }
.alerts24-priority.high { color: #b86f15; background: rgba(221, 138, 35, .11); }
.alerts24-priority.medium { color: #94770f; background: rgba(208, 173, 45, .11); }
.alerts24-priority.low { color: #4d7d64; background: rgba(95, 143, 117, .11); }

.alerts24-source {
    color: var(--text-soft);
    background: var(--surface-soft);
}

.alerts24-row-main > strong {
    display: block;
    color: var(--text);
    font-size: 13px;
    line-height: 1.35;
}

.alerts24-row-main p {
    margin: 4px 0 0;
    color: var(--text-muted);
    font-size: 11px;
    line-height: 1.45;
}

.alerts24-row-side {
    text-align: right;
    display: grid;
    justify-items: end;
    gap: 3px;
}

.alerts24-row-side b {
    color: var(--text);
    font-size: 11px;
}

.alerts24-row-side small {
    color: var(--text-soft);
    font-size: 10px;
}

.alerts24-row-side a {
    margin-top: 5px;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    color: #008eae;
    font-size: 10px;
    font-weight: 800;
    text-decoration: none;
}

.alerts24-row-side .alerts24-delete {
    margin-top: 1px;
    color: #b14c48;
    font-weight: 700;
}

.alerts24-empty {
    min-height: 260px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    gap: 7px;
    padding: 30px;
}

.alerts24-empty > span {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    color: #4a8b66;
    background: rgba(74, 139, 102, .1);
}

.alerts24-empty strong {
    color: var(--text);
    font-size: 14px;
}

.alerts24-empty small {
    max-width: 420px;
    color: var(--text-muted);
    line-height: 1.5;
}

.alerts24-side {
    position: sticky;
    top: 82px;
    padding: 16px;
}

.alerts24-side-head {
    display: flex;
    align-items: center;
    gap: 10px;
    padding-bottom: 14px;
    border-bottom: 1px solid var(--border);
}

.alerts24-side-icon {
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    border-radius: 9px;
    color: #008eae;
    background: rgba(0, 163, 201, .09);
}

.alerts24-side-head div {
    display: grid;
    gap: 2px;
}

.alerts24-side-head strong {
    color: var(--text);
    font-size: 12px;
}

.alerts24-side-head small {
    color: var(--text-soft);
    font-size: 10px;
}

.alerts24-top-list {
    display: grid;
}

.alerts24-top-list > div {
    display: grid;
    grid-template-columns: 25px minmax(0, 1fr);
    gap: 9px;
    padding: 13px 0;
    border-bottom: 1px solid var(--border);
}

.alerts24-top-list > div > span {
    color: #008eae;
    font-size: 10px;
    font-weight: 850;
    padding-top: 2px;
}

.alerts24-top-list p {
    margin: 0;
    display: grid;
    gap: 3px;
}

.alerts24-top-list strong {
    color: var(--text);
    font-size: 11px;
    line-height: 1.35;
}

.alerts24-top-list small {
    color: var(--text-muted);
    font-size: 10px;
    line-height: 1.4;
}

.alerts24-watch-note {
    margin-top: 14px;
    padding: 12px;
    display: grid;
    grid-template-columns: 22px minmax(0, 1fr);
    gap: 8px;
    color: var(--text-soft);
    background: var(--surface-soft);
    border-radius: 9px;
}

.alerts24-watch-note p {
    margin: 0;
    display: grid;
    gap: 3px;
}

.alerts24-watch-note strong {
    color: var(--text);
    font-size: 10px;
}

.alerts24-watch-note span {
    color: var(--text-muted);
    font-size: 9px;
    line-height: 1.5;
}

@media (max-width: 1120px) {
    .alerts24-layout {
        grid-template-columns: 1fr;
    }
    .alerts24-side {
        position: static;
    }
}

@media (max-width: 820px) {
    .alerts24-summary {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .alerts24-summary article:nth-child(2) {
        border-right: 0;
    }
    .alerts24-summary article:nth-child(-n+2) {
        border-bottom: 1px solid var(--border);
    }
    .alerts24-hermes {
        grid-template-columns: auto minmax(0, 1fr);
    }
    .alerts24-hermes-link {
        display: none;
    }
    .alerts24-row {
        grid-template-columns: 34px minmax(0, 1fr);
    }
    .alerts24-row-side {
        grid-column: 2;
        justify-items: start;
        text-align: left;
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 7px 10px;
    }
    .alerts24-row-side a {
        margin-top: 0;
    }
}

@media (max-width: 560px) {
    .alerts24-summary {
        grid-template-columns: 1fr 1fr;
    }
    .alerts24-summary article {
        min-height: 92px;
        padding: 14px;
    }
    .alerts24-summary strong {
        font-size: 24px;
    }
    .alerts24-manual-grid {
        grid-template-columns: 1fr;
    }
    .alerts24-manual-grid .span-2 {
        grid-column: auto;
    }
    .alerts24-row {
        padding: 14px;
        gap: 10px;
    }
    .alerts24-list-head {
        min-height: 68px;
        padding: 14px;
    }
    .alerts24-refresh {
        display: none;
    }
}

/* ========================================================================
   CEGEWATT CRM — V25 Planning mensuel
   ======================================================================== */
.planning25-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:20px}.planning25-head h1{margin:5px 0 6px;font-size:28px;letter-spacing:-.035em;line-height:1.1}.planning25-head p{margin:0;color:var(--text-2);max-width:720px}.planning25-flash{min-height:44px;margin-bottom:14px;padding:10px 13px;border-radius:9px;display:flex;align-items:center;gap:8px;font-size:12px;font-weight:650}.planning25-flash.success{background:rgba(33,138,76,.08);color:var(--success);border:1px solid rgba(33,138,76,.18)}.planning25-flash.error{background:rgba(217,67,67,.08);color:var(--danger);border:1px solid rgba(217,67,67,.18)}
.planning25-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--border);border-radius:11px;background:var(--surface);overflow:hidden;margin-bottom:16px;box-shadow:var(--shadow)}.planning25-summary article{min-height:94px;padding:15px 17px;border-right:1px solid var(--border);display:grid;align-content:center;gap:2px}.planning25-summary article:last-child{border-right:0}.planning25-summary span{font-size:10px;font-weight:750;color:var(--text-3);text-transform:uppercase;letter-spacing:.07em}.planning25-summary strong{font-size:22px;letter-spacing:-.03em}.planning25-summary small{font-size:10.5px;color:var(--text-3)}.planning25-hermes-summary{background:linear-gradient(135deg,color-mix(in srgb,var(--cyan) 5%,var(--surface)),color-mix(in srgb,var(--green) 4%,var(--surface)))}.planning25-hermes-summary strong{font-size:14px;letter-spacing:-.01em}.planning25-hermes-summary span{color:var(--cyan-dark)}
.planning25-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:16px;align-items:start}.planning25-calendar-card,.planning25-form-card,.planning25-hermes-note{border:1px solid var(--border);background:var(--surface);border-radius:11px;box-shadow:var(--shadow)}.planning25-calendar-card{overflow:hidden}.planning25-calendar-toolbar{min-height:68px;padding:12px 14px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:12px}.planning25-month-nav{display:flex;align-items:center;gap:10px}.planning25-month-nav>a{width:34px;height:34px;border:1px solid var(--border);border-radius:7px;display:grid;place-items:center;font-size:22px;color:var(--text-2);background:var(--surface)}.planning25-month-nav>a:hover{background:var(--surface-2);color:var(--text)}.planning25-month-nav>div{display:grid;min-width:170px}.planning25-month-nav span{font-size:9px;color:var(--text-3);font-weight:800;text-transform:uppercase;letter-spacing:.09em}.planning25-month-nav strong{font-size:15px;letter-spacing:-.02em}.planning25-calendar-scroll{overflow:auto}.planning25-calendar{min-width:930px;display:grid;grid-template-columns:54px repeat(7,minmax(122px,1fr))}.planning25-week-head,.planning25-day-head{height:36px;display:flex;align-items:center;justify-content:center;background:var(--surface-2);border-bottom:1px solid var(--border);color:var(--text-3);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.planning25-week-head{border-right:1px solid var(--border)}.planning25-week-number{min-height:132px;border-right:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--surface-2);display:flex;justify-content:center;padding-top:13px}.planning25-week-number span{height:23px;padding:0 7px;border-radius:999px;background:var(--surface);border:1px solid var(--border);display:flex;align-items:center;color:var(--text-3);font-size:9px;font-weight:800}.planning25-day{min-height:132px;padding:8px;border-right:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--surface);min-width:0}.planning25-day:nth-child(8n){border-right:0}.planning25-day.outside{background:color-mix(in srgb,var(--surface-2) 55%,var(--surface));color:var(--text-3)}.planning25-day.today{box-shadow:inset 0 0 0 1px var(--cyan)}.planning25-day-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.planning25-day-top>span{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:750}.planning25-day.today .planning25-day-top>span{background:#101719;color:#fff}.planning25-day-top>a{width:24px;height:24px;border-radius:6px;display:grid;place-items:center;color:var(--text-3);opacity:0}.planning25-day:hover .planning25-day-top>a{opacity:1}.planning25-day-top>a:hover{background:var(--surface-3);color:var(--text)}.planning25-events{display:grid;gap:4px}.planning25-event{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:5px;padding:5px 6px;border-left:2px solid var(--cyan);border-radius:5px;background:color-mix(in srgb,var(--cyan) 6%,var(--surface-2));min-width:0}.planning25-event:hover{background:color-mix(in srgb,var(--cyan) 10%,var(--surface-2))}.planning25-event>span{font-size:8.5px;color:var(--cyan-dark);font-weight:800;padding-top:1px}.planning25-event>strong{font-size:9.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.planning25-event>small{grid-column:2;color:var(--text-3);font-size:8.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.planning25-more{font-size:9px;color:var(--text-3);font-weight:700;padding:2px 5px}
.planning25-side{display:grid;gap:10px;position:sticky;top:80px}.planning25-form-card{overflow:hidden}.planning25-form-head{min-height:66px;padding:13px 14px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:10px}.planning25-form-head h2{font-size:15px;margin:2px 0 0;letter-spacing:-.02em}.planning25-close-edit{font-size:10px;font-weight:750;color:var(--text-3)}.planning25-readonly{margin:12px 12px 0;padding:9px 10px;border-radius:7px;background:var(--surface-2);color:var(--text-2);font-size:10.5px}.planning25-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:13px 14px 0}.planning25-form-grid label{display:grid;gap:5px}.planning25-form-grid label>span,.planning25-technicians legend{font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.07em;color:var(--text-3)}.planning25-form-grid input,.planning25-form-grid select,.planning25-form-grid textarea{width:100%;min-height:38px;border:1px solid var(--border);border-radius:7px;background:var(--surface-2);color:var(--text);padding:8px 9px;font:inherit;font-size:11.5px}.planning25-form-grid textarea{resize:vertical}.planning25-form-grid .span-2{grid-column:1/-1}.planning25-technicians{border:0;margin:0;padding:13px 14px 0}.planning25-technicians legend{padding:0 0 7px}.planning25-technicians>div{display:grid;grid-template-columns:1fr 1fr;gap:6px}.planning25-technicians label{min-width:0;min-height:40px;border:1px solid var(--border);border-radius:7px;background:var(--surface-2);padding:5px 7px;display:grid;grid-template-columns:auto 26px minmax(0,1fr);align-items:center;gap:5px;cursor:pointer}.planning25-technicians label.selected{border-color:color-mix(in srgb,var(--cyan) 55%,var(--border));background:color-mix(in srgb,var(--cyan) 5%,var(--surface))}.planning25-technicians input{margin:0}.planning25-avatar{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:var(--surface-3);color:var(--text-2);font-size:8px;font-weight:800}.planning25-technicians strong{font-size:9.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.planning25-save{width:calc(100% - 28px);margin:14px}.planning25-delete-form{display:flex;justify-content:center}.planning25-delete-form button{border:0;background:transparent;color:var(--danger);font-size:10px;font-weight:750;display:inline-flex;align-items:center;gap:5px;padding:6px 8px;cursor:pointer}.planning25-hermes-note{padding:11px 12px;display:grid;grid-template-columns:30px minmax(0,1fr);gap:9px;align-items:start}.planning25-hermes-note>span{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;color:var(--cyan-dark);background:color-mix(in srgb,var(--cyan) 8%,var(--surface-2))}.planning25-hermes-note>div{display:grid;gap:2px}.planning25-hermes-note strong{font-size:10.5px}.planning25-hermes-note small{font-size:9.5px;color:var(--text-3);line-height:1.45}
@media(max-width:1280px){.planning25-layout{grid-template-columns:1fr}.planning25-side{position:static;grid-template-columns:minmax(0,1fr) 280px}.planning25-form-card{grid-row:1/3}.planning25-hermes-note{grid-column:2}.planning25-delete-form{grid-column:2}}
@media(max-width:900px){.planning25-summary{grid-template-columns:1fr 1fr}.planning25-summary article:nth-child(2){border-right:0}.planning25-summary article:nth-child(-n+2){border-bottom:1px solid var(--border)}.planning25-side{grid-template-columns:1fr}.planning25-form-card{grid-row:auto}.planning25-hermes-note,.planning25-delete-form{grid-column:auto}.planning25-head{align-items:flex-start;flex-direction:column}.planning25-head .primary-button{width:100%}}
@media(max-width:560px){.planning25-summary{grid-template-columns:1fr 1fr}.planning25-summary article{min-height:82px;padding:12px}.planning25-summary strong{font-size:19px}.planning25-calendar-toolbar{align-items:flex-start}.planning25-calendar-actions{display:none}.planning25-form-grid{grid-template-columns:1fr}.planning25-form-grid .span-2{grid-column:auto}.planning25-technicians>div{grid-template-columns:1fr}.planning25-head h1{font-size:25px}.planning25-calendar{min-width:820px}}

/* V26 — Planning : clic direct sur une date + saisie en popup */
.planning26-head{align-items:center}.planning26-head>div{max-width:760px}.planning26-summary{margin-bottom:18px}.planning26-calendar-wrap{display:block}.planning26-calendar-card{width:100%}.planning26-calendar-toolbar{position:relative}.planning26-calendar-hint{display:flex;align-items:center;gap:8px;color:var(--text-3);font-size:10px}.planning26-calendar-hint>span{width:26px;height:26px;border-radius:7px;background:color-mix(in srgb,var(--cyan) 8%,var(--surface-2));color:var(--cyan-dark);display:grid;place-items:center}.planning26-calendar-hint>strong{color:var(--text-2);font-size:10px}.planning26-calendar-hint>small{font-size:9.5px}.planning26-calendar{min-width:980px}.planning26-day{position:relative;text-decoration:none;color:inherit;transition:background .15s ease,box-shadow .15s ease}.planning26-day-clickable{cursor:pointer}.planning26-day-clickable:hover{background:color-mix(in srgb,var(--cyan) 3.5%,var(--surface));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--cyan) 35%,transparent)}.planning26-day-clickable:focus-visible{outline:2px solid var(--cyan);outline-offset:-2px}.planning26-day-top>span{transition:transform .15s ease}.planning26-day-clickable:hover .planning26-day-top>span{transform:translateY(-1px)}.planning26-day-add{width:24px;height:24px;border:0;border-radius:6px;background:transparent;color:var(--text-3);display:grid;place-items:center;cursor:pointer;opacity:0;transition:opacity .15s ease,background .15s ease,color .15s ease}.planning26-day-clickable:hover .planning26-day-add,.planning26-day-add:focus-visible{opacity:1}.planning26-day-add:hover{background:var(--surface-3);color:var(--text)}

.planning26-modal{position:fixed;inset:0;z-index:9999;display:none;align-items:center;justify-content:center;padding:24px}.planning26-modal.is-open{display:flex}.planning26-modal-backdrop{position:absolute;inset:0;background:rgba(13,18,20,.54);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}.planning26-modal-panel{position:relative;width:min(820px,100%);max-height:min(860px,calc(100vh - 48px));overflow:auto;background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:0 28px 80px rgba(0,0,0,.24)}.planning-modal-open{overflow:hidden}.planning26-modal-head{position:sticky;top:0;z-index:3;min-height:82px;padding:17px 20px;border-bottom:1px solid var(--border);display:flex;align-items:flex-start;justify-content:space-between;gap:18px;background:color-mix(in srgb,var(--surface) 96%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.planning26-modal-head h2{margin:3px 0 1px;font-size:20px;letter-spacing:-.03em}.planning26-modal-head small{font-size:10.5px;color:var(--text-3);font-weight:700}.planning26-modal-close{width:34px;height:34px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);color:var(--text-2);font-size:22px;line-height:1;cursor:pointer;display:grid;place-items:center}.planning26-modal-close:hover{background:var(--surface-3);color:var(--text)}.planning26-modal-form{display:block}.planning26-modal-section{padding:18px 20px;border-bottom:1px solid var(--border)}.planning26-modal-section-primary{padding-top:20px}.planning26-section-title{display:grid;grid-template-columns:30px minmax(0,1fr);gap:10px;align-items:start;margin-bottom:14px}.planning26-section-title>span{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;background:var(--surface-2);border:1px solid var(--border);color:var(--text-3);font-size:9px;font-weight:850}.planning26-section-title>div{display:grid;gap:1px}.planning26-section-title strong{font-size:12px;letter-spacing:-.01em}.planning26-section-title small{font-size:10px;color:var(--text-3)}.planning26-form-grid{padding:0;gap:12px}.planning26-form-grid input,.planning26-form-grid select,.planning26-form-grid textarea{min-height:42px;background:var(--surface);font-size:12px}.planning26-technicians{padding:0}.planning26-technicians>div{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.planning26-technicians label{min-height:48px;padding:6px 8px;grid-template-columns:auto 28px minmax(0,1fr);background:var(--surface);transition:border-color .15s ease,background .15s ease}.planning26-technicians label:hover{border-color:color-mix(in srgb,var(--cyan) 35%,var(--border))}.planning26-technicians label.selected{background:color-mix(in srgb,var(--cyan) 5%,var(--surface));border-color:color-mix(in srgb,var(--cyan) 60%,var(--border))}.planning26-technicians .planning25-avatar{width:27px;height:27px;font-size:8.5px}.planning26-technicians strong{font-size:10px}.planning26-more-options{border-bottom:1px solid var(--border)}.planning26-more-options summary{list-style:none;cursor:pointer;padding:14px 20px;font-size:10.5px;font-weight:750;color:var(--text-2);display:flex;align-items:center;justify-content:space-between}.planning26-more-options summary::-webkit-details-marker{display:none}.planning26-more-options summary:after{content:'+';font-size:17px;color:var(--text-3);font-weight:400}.planning26-more-options[open] summary:after{content:'−'}.planning26-extra-grid{padding:0 20px 18px}.planning26-modal-actions{position:sticky;bottom:0;z-index:3;min-height:68px;padding:12px 20px;display:flex;align-items:center;justify-content:space-between;gap:14px;background:color-mix(in srgb,var(--surface) 96%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.planning26-modal-actions>div{display:flex;align-items:center;gap:8px}.planning26-delete-trigger{border:0;background:transparent;color:var(--danger);font-size:10px;font-weight:750;display:inline-flex;align-items:center;gap:6px;cursor:pointer;padding:8px 0}.planning26-hidden-delete{display:none}

@media(max-width:900px){.planning26-calendar-hint{display:none}.planning26-technicians>div{grid-template-columns:repeat(2,minmax(0,1fr))}.planning26-modal{padding:12px}.planning26-modal-panel{max-height:calc(100vh - 24px)}}
@media(max-width:560px){.planning26-head .primary-button{width:100%}.planning26-modal{padding:0;align-items:flex-end}.planning26-modal-panel{width:100%;max-height:94vh;border-radius:16px 16px 0 0;border-bottom:0}.planning26-modal-head{min-height:72px;padding:14px 15px}.planning26-modal-head h2{font-size:18px}.planning26-modal-section{padding:16px 15px}.planning26-form-grid{grid-template-columns:1fr}.planning26-form-grid .span-2{grid-column:auto}.planning26-technicians>div{grid-template-columns:1fr 1fr}.planning26-more-options summary{padding:13px 15px}.planning26-extra-grid{padding:0 15px 16px}.planning26-modal-actions{padding:10px 15px;align-items:stretch;flex-direction:column-reverse}.planning26-modal-actions>div{width:100%}.planning26-modal-actions>div>*{flex:1}.planning26-delete-trigger{justify-content:center}.planning26-calendar{min-width:820px}.planning26-day-add{opacity:1}}
.planning26-outside-day-link{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:750;color:var(--text-3);text-decoration:none}.planning26-outside-day-link:hover{background:var(--surface-3);color:var(--text)}

/* =========================================================
   V27 — Espace salarié & factures d'achat salarié
   ========================================================= */
.v27-employee-dashboard-head,
.v27-employee-finance-head {
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:24px;
  margin:0 0 28px;
}
.v27-employee-dashboard-head h1,
.v27-employee-finance-head h1 { margin:6px 0 8px; font-size:clamp(30px,4vw,46px); letter-spacing:-.045em; }
.v27-employee-dashboard-head p,
.v27-employee-finance-head p { margin:0; color:var(--text-muted); max-width:680px; }

.v27-employee-focus-grid {
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(300px,.8fr);
  gap:18px;
  margin-bottom:18px;
}
.v27-today-card,
.v27-clock-card,
.v27-upcoming-card,
.v27-personal-summary,
.v27-upload-card,
.v27-hermes-process,
.v27-invoice-history {
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:16px;
  box-shadow:0 8px 24px rgba(15,23,42,.035);
}
.v27-today-card,
.v27-clock-card { padding:24px; min-height:260px; }
.v27-today-card > header,
.v27-clock-card > header {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  padding-bottom:18px;
  border-bottom:1px solid var(--border);
}
.v27-today-card > header span,
.v27-clock-card > header span { color:var(--text-muted); font-size:13px; font-weight:700; text-transform:uppercase; letter-spacing:.06em; }
.v27-today-card > header strong { font-size:14px; }
.v27-assignment-main { padding:24px 0 18px; }
.v27-assignment-time { display:inline-flex; margin-bottom:10px; color:var(--accent); font-size:13px; font-weight:800; }
.v27-assignment-main h2 { margin:0 0 7px; font-size:26px; letter-spacing:-.035em; }
.v27-assignment-main p { margin:0; color:var(--text-muted); }
.v27-assignment-meta { display:flex; flex-wrap:wrap; gap:10px; }
.v27-assignment-meta span { min-width:125px; padding:10px 12px; background:var(--surface-2); border-radius:10px; }
.v27-assignment-meta small,
.v27-clock-kpis small,
.v27-personal-lines small { display:block; color:var(--text-muted); font-size:11px; margin-bottom:3px; }
.v27-assignment-meta strong { font-size:13px; }
.v27-empty-focus { min-height:160px; display:flex; align-items:center; justify-content:center; flex-direction:column; gap:8px; text-align:center; color:var(--text-muted); }
.v27-empty-focus strong { color:var(--text); }

.v27-clock-card { display:flex; flex-direction:column; }
.v27-clock-card p { color:var(--text-muted); line-height:1.6; margin:20px 0; }
.v27-clock-state { font-size:14px; }
.v27-clock-state.working { color:#138a57; }
.v27-clock-state.on_break { color:#b7791f; }
.v27-clock-state.finished { color:#4b5563; }
.v27-clock-kpis { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; margin-bottom:18px; }
.v27-clock-kpis span { padding:12px; border:1px solid var(--border); border-radius:10px; background:var(--surface-2); }
.v27-clock-kpis strong { font-size:14px; }
.v27-clock-card .secondary-button { margin-top:auto; width:fit-content; }

.v27-quick-actions { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-bottom:18px; }
.v27-quick-actions a { display:flex; align-items:center; gap:13px; min-height:82px; padding:16px; background:var(--surface); border:1px solid var(--border); border-radius:14px; color:inherit; text-decoration:none; transition:border-color .18s ease, transform .18s ease, box-shadow .18s ease; }
.v27-quick-actions a:hover { transform:translateY(-1px); border-color:rgba(28,160,181,.36); box-shadow:0 10px 26px rgba(15,23,42,.05); }
.v27-quick-actions a > span { width:38px; height:38px; display:grid; place-items:center; border-radius:10px; background:rgba(28,160,181,.09); color:var(--accent); flex:0 0 auto; }
.v27-quick-actions strong { display:block; font-size:14px; }
.v27-quick-actions small { display:block; margin-top:3px; color:var(--text-muted); line-height:1.35; }

.v27-employee-dashboard-grid { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(280px,.55fr); gap:18px; }
.v27-upcoming-card,
.v27-personal-summary { padding:22px; }
.v27-section-head { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:18px; }
.v27-section-head h2 { margin:4px 0 0; font-size:21px; letter-spacing:-.025em; }
.v27-upcoming-list { display:flex; flex-direction:column; }
.v27-upcoming-list article { display:grid; grid-template-columns:52px minmax(0,1fr) auto; align-items:center; gap:14px; padding:14px 0; border-top:1px solid var(--border); }
.v27-upcoming-list article:first-child { border-top:0; }
.v27-upcoming-date { width:48px; height:48px; display:flex; flex-direction:column; align-items:center; justify-content:center; border-radius:10px; background:var(--surface-2); }
.v27-upcoming-date strong { font-size:18px; line-height:1; }
.v27-upcoming-date small { margin-top:4px; color:var(--text-muted); font-size:9px; font-weight:800; }
.v27-upcoming-main strong { display:block; font-size:14px; }
.v27-upcoming-main span { display:block; margin-top:4px; color:var(--text-muted); font-size:12px; }
.v27-upcoming-time { font-size:13px; font-weight:800; }
.v27-personal-summary h2 { margin:6px 0 18px; font-size:23px; }
.v27-personal-lines { display:flex; flex-direction:column; }
.v27-personal-lines span { padding:13px 0; border-top:1px solid var(--border); }
.v27-personal-lines span:first-child { border-top:0; }
.v27-personal-lines strong,
.v27-personal-lines a { font-size:14px; }

.v27-invoice-layout { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(310px,.7fr); gap:18px; margin-bottom:18px; }
.v27-upload-card,
.v27-hermes-process { padding:24px; }
.v27-upload-card > header { display:flex; align-items:center; gap:14px; margin-bottom:20px; }
.v27-upload-card > header h2,
.v27-hermes-process h2 { margin:0 0 4px; font-size:22px; letter-spacing:-.025em; }
.v27-upload-card > header p { margin:0; color:var(--text-muted); }
.v27-step { width:36px; height:36px; display:grid; place-items:center; border-radius:10px; background:#111827; color:#fff; font-size:12px; font-weight:800; }
.v27-upload-form { display:flex; flex-direction:column; gap:14px; }
.v27-employee-lock { display:flex; align-items:center; gap:12px; padding:12px 14px; border:1px solid var(--border); border-radius:12px; background:var(--surface-2); }
.v27-employee-lock > span { width:38px; height:38px; display:grid; place-items:center; border-radius:50%; background:#111827; color:#fff; font-weight:800; font-size:12px; }
.v27-employee-lock small { display:block; color:var(--text-muted); margin-bottom:2px; }
.v27-file-drop { position:relative; min-height:180px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:8px; text-align:center; padding:24px; border:1.5px dashed #b8c1cc; border-radius:14px; background:linear-gradient(180deg,rgba(248,250,252,.7),rgba(248,250,252,.28)); cursor:pointer; transition:border-color .18s ease, background .18s ease; }
.v27-file-drop:hover { border-color:var(--accent); background:rgba(28,160,181,.04); }
.v27-file-drop input { position:absolute; inset:0; opacity:0; cursor:pointer; }
.v27-file-icon { width:46px; height:46px; display:grid; place-items:center; border-radius:12px; background:rgba(28,160,181,.09); color:var(--accent); }
.v27-file-drop strong { font-size:15px; }
.v27-file-drop small { color:var(--text-muted); }
.v27-meta-details { border-top:1px solid var(--border); padding-top:14px; }
.v27-meta-details summary { cursor:pointer; font-weight:750; font-size:13px; }
.v27-meta-details summary small { color:var(--text-muted); font-weight:500; margin-left:6px; }
.v27-meta-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-top:16px; }
.v27-upload-submit { width:fit-content; }
.v27-hermes-process > .panel-kicker { display:block; margin-bottom:5px; }
.v27-hermes-process ol { list-style:none; padding:0; margin:20px 0; }
.v27-hermes-process li { display:flex; gap:12px; padding:13px 0; border-top:1px solid var(--border); }
.v27-hermes-process li:first-child { border-top:0; }
.v27-hermes-process li > span { width:28px; height:28px; display:grid; place-items:center; border-radius:8px; background:rgba(28,160,181,.1); color:var(--accent); font-size:11px; font-weight:800; }
.v27-hermes-process li strong { display:block; font-size:14px; }
.v27-hermes-process li small { display:block; margin-top:3px; color:var(--text-muted); line-height:1.45; }
.v27-hermes-process > p { margin:18px 0 0; color:var(--text-muted); font-size:12px; line-height:1.6; }

.v27-invoice-history { padding:22px; }
.v27-employee-filter select { min-width:220px; height:40px; border:1px solid var(--border); border-radius:9px; background:var(--surface); color:var(--text); padding:0 12px; }
.v27-empty-state { min-height:150px; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; gap:7px; color:var(--text-muted); }
.v27-empty-state strong { color:var(--text); }
.v27-invoice-table-wrap { overflow:auto; }
.v27-invoice-table { width:100%; border-collapse:collapse; min-width:920px; }
.v27-invoice-table th { padding:11px 12px; text-align:left; color:var(--text-muted); font-size:10px; text-transform:uppercase; letter-spacing:.06em; border-bottom:1px solid var(--border); }
.v27-invoice-table td { padding:14px 12px; border-bottom:1px solid var(--border); vertical-align:middle; font-size:13px; }
.v27-invoice-table td strong { display:block; }
.v27-invoice-table td small { display:block; margin-top:3px; color:var(--text-muted); }
.v27-invoice-table code { display:inline-block; max-width:300px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; padding:4px 6px; border-radius:6px; background:var(--surface-2); font-size:11px; }

.planning26-day-readonly { cursor:default; }

@media (max-width:1100px) {
  .v27-quick-actions { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .v27-invoice-layout { grid-template-columns:1fr; }
}
@media (max-width:860px) {
  .v27-employee-focus-grid,
  .v27-employee-dashboard-grid { grid-template-columns:1fr; }
}
@media (max-width:640px) {
  .v27-employee-dashboard-head,
  .v27-employee-finance-head { align-items:flex-start; flex-direction:column; margin-bottom:20px; }
  .v27-employee-dashboard-head .primary-button { width:100%; justify-content:center; }
  .v27-today-card,
  .v27-clock-card,
  .v27-upcoming-card,
  .v27-personal-summary,
  .v27-upload-card,
  .v27-hermes-process,
  .v27-invoice-history { border-radius:13px; padding:18px; }
  .v27-quick-actions { grid-template-columns:1fr; }
  .v27-meta-grid { grid-template-columns:1fr; }
  .v27-clock-kpis { grid-template-columns:1fr; }
  .v27-upcoming-list article { grid-template-columns:48px minmax(0,1fr); }
  .v27-upcoming-time { grid-column:2; }
  .v27-file-drop { min-height:150px; }
}

/* ========================================================================
   CEGEWATT CRM — V28 global polish, access security and invitations
   ======================================================================== */
:root{
  --brand-cyan:#20a8d8;
  --brand-green:#41c96f;
  --focus-ring:0 0 0 3px color-mix(in srgb,var(--brand-cyan) 18%,transparent);
}

/* Coloured logo: readable on the dark sidebar without altering the original asset. */
.sidebar-brand{height:84px;padding:12px 14px;background:linear-gradient(180deg,#0d1517,#0d1416)}
.brand-link{width:100%;min-height:56px;padding:7px 10px;border-radius:11px;background:#fff;border:1px solid rgba(255,255,255,.08);box-shadow:0 8px 22px rgba(0,0,0,.13)}
.brand-link img{width:176px;max-height:44px;filter:none!important;object-fit:contain;object-position:left center}
.login-v28 .login-brand-top img{filter:none!important;background:#fff;border-radius:12px;padding:9px 12px;width:224px;box-shadow:0 12px 30px rgba(0,0,0,.14)}

/* Global breathing room and consistent hierarchy. */
.content-area{padding:28px 34px 56px;max-width:1640px}
.page-heading{margin-bottom:22px;align-items:flex-start}
.page-heading h1{font-size:27px;margin-top:6px}
.page-heading p{font-size:12px;line-height:1.65;color:var(--text-3);max-width:780px}
.panel,.card,.commercial-client-create,.commercial-clients-list{border-color:color-mix(in srgb,var(--border) 92%,var(--text-3));box-shadow:0 1px 2px rgba(10,20,24,.025),0 10px 30px rgba(10,20,24,.025)}
.panel-header{min-height:66px;padding:15px 18px}
.panel-header h2{font-size:14px}

/* Consistent controls and unmistakable click targets. */
button,a,input,select,textarea{transition:border-color .15s ease,background .15s ease,color .15s ease,box-shadow .15s ease,transform .15s ease}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none;box-shadow:var(--focus-ring);border-color:color-mix(in srgb,var(--brand-cyan) 58%,var(--border))}
.primary-button{background:#121a1d;border-color:#121a1d;box-shadow:0 1px 2px rgba(0,0,0,.08)}
.primary-button:hover{background:#1d292d;transform:translateY(-1px)}
.secondary-button:hover{border-color:color-mix(in srgb,var(--brand-cyan) 24%,var(--border));background:color-mix(in srgb,var(--brand-cyan) 3%,var(--surface))}
input,select,textarea{font-size:12px}

/* Tables: lighter visual weight and clearer row scanning. */
.data-table th{font-size:9.5px;letter-spacing:.055em;color:var(--text-3);background:var(--surface-2);padding:11px 15px}
.data-table td{padding:14px 15px;border-bottom-color:color-mix(in srgb,var(--border) 84%,transparent)}
.data-table tbody tr:hover{background:color-mix(in srgb,var(--brand-cyan) 2.8%,var(--surface))}
.table-wrap{scrollbar-width:thin;scrollbar-color:var(--border) transparent}

/* Sidebar uses brand colour only as a guide, not as decoration overload. */
.nav-item.active{background:linear-gradient(90deg,rgba(32,168,216,.10),rgba(65,201,111,.045));color:#fff}
.nav-item.active:before{background:linear-gradient(180deg,var(--brand-cyan),var(--brand-green))}
.nav-subitem.active{background:rgba(32,168,216,.08)}
.hermes-mini{background:linear-gradient(135deg,rgba(32,168,216,.09),rgba(65,201,111,.055))}

/* Login: calmer, less marketing-heavy, more professional. */
.login-v28 .login-brand-panel{background:radial-gradient(circle at 82% 12%,rgba(32,168,216,.15),transparent 29%),radial-gradient(circle at 20% 86%,rgba(65,201,111,.10),transparent 28%),#0b1315}
.login-v28 .login-brand-copy h1{font-size:clamp(44px,5vw,70px);font-weight:620}
.login-v28 .login-form-panel{background:#f6f8f8}
.login-help-card{margin-top:18px;padding:13px 14px;border:1px solid #dce3e5;border-radius:9px;background:#fff;display:grid;gap:3px;color:#607176}
.login-help-card strong{font-size:11px;color:#1a2529}
.login-help-card span{font-size:10.5px;line-height:1.5}

/* Account activation. */
.account-activation-page{min-height:100vh;background:#f3f6f7;display:grid;place-items:center;padding:28px}
.activation-shell{width:min(660px,100%);display:grid;gap:14px}
.activation-brand{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:0 4px}
.activation-brand img{width:190px;height:auto}
.activation-brand span{font-size:9px;font-weight:800;letter-spacing:.12em;color:#728287}
.activation-card{background:#fff;border:1px solid #dfe5e7;border-radius:14px;padding:30px;box-shadow:0 18px 60px rgba(14,27,31,.07)}
.activation-card h1{font-size:28px;letter-spacing:-.04em;margin:7px 0 8px;color:#11191c}
.activation-card>p{margin:0 0 20px;color:#6f7f84;line-height:1.65}
.activation-identity{margin:18px 0;padding:13px;border:1px solid #e1e7e9;border-radius:10px;background:#f8fafb;display:flex;align-items:center;gap:11px}
.activation-avatar{width:40px;height:40px;border-radius:10px;display:grid;place-items:center;background:linear-gradient(135deg,rgba(32,168,216,.12),rgba(65,201,111,.10));color:#087da8;font-size:12px;font-weight:800}
.activation-identity div{display:grid}.activation-identity strong{font-size:12px}.activation-identity small{font-size:10.5px;color:#7b8a8f;margin-top:2px}
.activation-form{display:grid;gap:13px}
.activation-form label{display:grid;gap:6px;font-size:10.5px;font-weight:700;color:#4f6065}
.activation-form input{height:44px;border:1px solid #dce3e5;border-radius:8px;background:#fff;padding:0 11px;outline:0}
.password-rules{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:2px 0 4px}
.password-rules span{position:relative;padding-left:18px;font-size:10px;color:#8a989c}
.password-rules span:before{content:'•';position:absolute;left:4px;color:#b8c2c5}
.password-rules span.ok{color:#218a4c}.password-rules span.ok:before{content:'✓';color:#218a4c;font-weight:800;left:1px}
.activation-main-action{width:100%;min-height:43px;margin-top:4px;justify-content:space-between}
.activation-expiry{margin:16px 0 0!important;font-size:9.5px;color:#93a0a4!important;text-align:center}
.activation-success-mark{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:rgba(65,201,111,.12);color:#218a4c;font-size:22px;font-weight:900;margin-bottom:16px}

/* Admin accounts & invitations. */
.v28-page-heading{margin-bottom:18px}
.v28-security-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:var(--surface);border:1px solid var(--border);border-radius:11px;overflow:hidden;margin-bottom:16px}
.v28-security-summary article{min-height:98px;padding:17px 18px;display:flex;flex-direction:column;justify-content:center;border-right:1px solid var(--border)}
.v28-security-summary article:last-child{border-right:0}
.v28-security-summary span{font-size:9.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);font-weight:750}
.v28-security-summary strong{font-size:20px;letter-spacing:-.035em;margin:6px 0 1px}
.v28-security-summary small{font-size:10px;color:var(--text-3);line-height:1.4}
.v28-invite-result{margin-bottom:16px;padding:17px 18px;border:1px solid color-mix(in srgb,var(--brand-green) 30%,var(--border));border-radius:11px;background:linear-gradient(135deg,color-mix(in srgb,var(--brand-green) 5%,var(--surface)),var(--surface))}
.v28-invite-result-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.v28-invite-result-head h2{margin:3px 0 0;font-size:15px}
.v28-invite-link-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.v28-invite-link-row input{height:41px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text-2);padding:0 11px;min-width:0}
.v28-invite-actions{display:flex;align-items:center;gap:10px;margin-top:10px}.v28-invite-actions small{margin-left:auto;color:var(--text-3);font-size:9.5px}
.v28-accounts-panel{background:var(--surface);border:1px solid var(--border);border-radius:11px;overflow:hidden}
.v28-accounts-head{min-height:70px;padding:15px 18px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--border)}
.v28-accounts-head h2{font-size:15px;margin:3px 0 0}.v28-muted{font-size:10px;color:var(--text-3)}
.v28-account-list{display:grid}
.v28-account-row{min-height:96px;padding:14px 18px;display:grid;grid-template-columns:42px minmax(190px,1fr) minmax(170px,.8fr) minmax(170px,.8fr) minmax(390px,1.5fr);gap:14px;align-items:center;border-bottom:1px solid var(--border)}
.v28-account-row:last-child{border-bottom:0}.v28-account-row:hover{background:color-mix(in srgb,var(--brand-cyan) 2.5%,var(--surface))}
.v28-account-avatar{width:40px;height:40px;border-radius:10px;display:grid;place-items:center;background:var(--surface-3);color:var(--cyan-dark);font-size:11px;font-weight:850}
.v28-account-person,.v28-account-state,.v28-account-invite-status{display:grid;gap:3px;min-width:0}.v28-account-person strong,.v28-account-state strong,.v28-account-invite-status strong{font-size:11px}.v28-account-person small,.v28-account-state small,.v28-account-invite-status small{font-size:9.5px;color:var(--text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.v28-account-state{position:relative;padding-left:15px}.v28-state-dot{position:absolute;left:0;top:5px;width:7px;height:7px;border-radius:50%;background:#aeb8bb}.v28-state-dot.is-active{background:var(--green);box-shadow:0 0 0 3px rgba(65,201,111,.10)}.v28-state-dot.is-disabled{background:var(--danger)}
.v28-account-actions{display:grid;grid-template-columns:minmax(170px,1fr) auto auto;gap:7px;align-items:end}.v28-email-inline{display:grid;gap:4px}.v28-email-inline span{font-size:8.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);font-weight:750}.v28-email-inline input{height:36px;border:1px solid var(--border);border-radius:7px;background:var(--surface-2);color:var(--text);padding:0 9px;min-width:0}
.v28-text-danger,.v28-text-success{min-height:36px;border:0;background:transparent;font-size:10px;font-weight:750;cursor:pointer;padding:0 4px}.v28-text-danger{color:var(--danger)}.v28-text-success{color:var(--success)}
.alerts24-delete-form{margin:0}.alerts24-delete{border:0;background:transparent;cursor:pointer;font:inherit}

/* General mobile polish. */
@media(max-width:1180px){
  .v28-security-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.v28-security-summary article:nth-child(2){border-right:0}.v28-security-summary article:nth-child(-n+2){border-bottom:1px solid var(--border)}
  .v28-account-row{grid-template-columns:42px minmax(180px,1fr) minmax(150px,.8fr) minmax(300px,1.4fr)}.v28-account-invite-status{display:none}
}
@media(max-width:850px){
  .content-area{padding:22px 18px 48px}.page-heading{flex-direction:column}.heading-actions{width:100%;flex-wrap:wrap}
  .v28-account-row{grid-template-columns:42px minmax(0,1fr) auto}.v28-account-state{grid-column:3}.v28-account-actions{grid-column:1/-1;grid-template-columns:minmax(0,1fr) auto auto;padding-left:56px}
  .activation-card{padding:24px}.activation-brand{padding:0}.activation-brand img{width:170px}
}
@media(max-width:620px){
  .sidebar-brand{padding-right:54px}.brand-link img{width:158px}.content-area{padding:18px 12px 42px}.page-heading h1{font-size:24px}
  .v28-security-summary{grid-template-columns:1fr}.v28-security-summary article{border-right:0;border-bottom:1px solid var(--border)}.v28-security-summary article:last-child{border-bottom:0}
  .v28-account-row{grid-template-columns:40px minmax(0,1fr);gap:10px}.v28-account-state{grid-column:2}.v28-account-actions{grid-column:1/-1;padding-left:0;grid-template-columns:1fr}.v28-text-danger,.v28-text-success{text-align:left;padding:0}
  .v28-invite-link-row{grid-template-columns:1fr}.v28-invite-actions{align-items:flex-start;flex-direction:column}.v28-invite-actions small{margin-left:0}
  .activation-shell{gap:10px}.activation-brand span{display:none}.activation-card{padding:20px;border-radius:12px}.password-rules{grid-template-columns:1fr}
}

/* V28 final audit polish: first-run setup, invitation states and compact clarity. */
.login-setup-card{margin:18px 0 8px;padding:16px;border:1px solid #dce5e7;border-radius:10px;background:#fff;display:grid;gap:6px}.login-setup-card strong{font-size:12px;color:#182326}.login-setup-card span{font-size:10.5px;line-height:1.55;color:#718186}.login-setup-card .primary-button{margin-top:7px;width:100%;justify-content:space-between}
.v28-state-dot.is-pending{background:#e8a628;box-shadow:0 0 0 3px rgba(232,166,40,.11)}
.v28-account-pending-note{min-height:36px;display:flex;align-items:center;color:var(--text-3);font-size:9.5px;font-weight:700;padding:0 4px}
.admin-setup-page .activation-card{border-top:3px solid transparent;border-image:linear-gradient(90deg,var(--brand-cyan),var(--brand-green)) 1}
.notice.success{margin-bottom:14px;padding:11px 13px;border:1px solid rgba(65,201,111,.26);border-radius:9px;background:rgba(65,201,111,.07);color:#1d7542;font-size:11px;font-weight:650}
.feature-state{min-height:34px;padding:0 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);color:var(--text-3);font-size:9.5px;font-weight:700;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.hermes-feature-state{border-color:color-mix(in srgb,var(--brand-cyan) 18%,var(--border));color:var(--cyan-dark);background:color-mix(in srgb,var(--brand-cyan) 4%,var(--surface))}

/* V31 — Finance préparée pour saisie progressive sans documents lourds */
.finance31-heading{align-items:flex-start;gap:18px}.finance31-heading-actions{display:flex;gap:10px;flex-wrap:wrap}.finance31-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 16px}.finance31-summary>div{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:14px 16px;display:grid;gap:4px}.finance31-summary small{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);font-weight:800}.finance31-summary strong{font-size:22px;color:var(--text)}.finance31-upload-panel{margin-bottom:16px;overflow:hidden}.finance31-upload-form{padding:18px;display:grid;grid-template-columns:minmax(260px,.9fr) minmax(320px,1.1fr) auto;gap:16px;align-items:end}.finance31-dropzone{border:1px dashed color-mix(in srgb,var(--cyan) 35%,var(--border));background:linear-gradient(180deg,color-mix(in srgb,var(--cyan) 3%,var(--surface)),var(--surface));border-radius:12px;min-height:118px;display:grid;justify-items:center;align-content:center;gap:5px;cursor:pointer;text-align:center}.finance31-dropzone span{width:38px;height:38px;border-radius:10px;background:color-mix(in srgb,var(--cyan) 10%,var(--surface));display:grid;place-items:center;color:var(--cyan-dark)}.finance31-dropzone input{max-width:230px;font-size:11px}.finance31-dropzone strong{font-size:13px}.finance31-dropzone small{font-size:11px;color:var(--text-3)}.finance31-upload-fields{display:grid;grid-template-columns:170px minmax(0,1fr);gap:12px}.finance31-upload-fields label,.finance31-worksite-form{display:grid;gap:6px}.finance31-upload-fields span,.finance31-worksite-form small,.finance31-cell small{font-size:9.5px;text-transform:uppercase;letter-spacing:.07em;color:var(--text-3);font-weight:800}.finance31-browser{overflow:hidden}.finance31-browser-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:18px;border-bottom:1px solid var(--border)}.finance31-browser-head h2{margin:2px 0 0;font-size:17px}.finance31-search{height:38px;min-width:360px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2);display:flex;align-items:center;gap:8px;padding:0 11px}.finance31-search input{border:0;background:transparent;outline:0;width:100%;font-size:12px;color:var(--text)}.finance31-month-tabs{display:flex;gap:8px;overflow-x:auto;padding:13px 18px;border-bottom:1px solid var(--border);background:var(--surface-2)}.finance31-month-tabs a{flex:0 0 auto;text-decoration:none;color:var(--text-2);background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:8px 11px;font-size:11px;font-weight:750;display:flex;gap:7px;align-items:center}.finance31-month-tabs a span{min-width:19px;height:19px;border-radius:999px;background:var(--surface-3);display:grid;place-items:center;font-size:10px}.finance31-month-tabs a.active{border-color:color-mix(in srgb,var(--cyan) 55%,var(--border));color:var(--cyan-dark);box-shadow:0 0 0 3px color-mix(in srgb,var(--cyan) 9%,transparent)}.finance31-month-tabs a.is-empty{opacity:.55}.finance31-empty{padding:56px 20px;text-align:center;display:grid;justify-items:center;gap:8px;color:var(--text-3)}.finance31-empty span{width:52px;height:52px;border-radius:13px;background:var(--surface-2);display:grid;place-items:center}.finance31-empty h3{margin:4px 0 0;color:var(--text);font-size:15px}.finance31-empty p{margin:0;font-size:12px}.finance31-month-groups{display:grid}.finance31-month-group+.finance31-month-group{border-top:1px solid var(--border)}.finance31-month-title{display:flex;justify-content:space-between;align-items:center;padding:18px 18px 8px}.finance31-month-title h3{margin:0;font-size:15px}.finance31-month-title span{font-size:11px;color:var(--text-3)}.finance31-table{display:grid}.finance31-row{display:grid;grid-template-columns:minmax(250px,1.45fr) minmax(150px,.75fr) minmax(90px,.42fr) minmax(260px,1.2fr) auto;gap:14px;align-items:center;padding:14px 18px;border-top:1px solid var(--border)}.finance31-row:hover{background:var(--surface-2)}.finance31-cell{min-width:0;display:grid;gap:4px}.finance31-cell span{font-size:12px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.finance31-file-cell{display:flex;align-items:center;gap:10px}.finance31-file-cell>div{display:grid;gap:2px;min-width:0}.finance31-file-cell strong{font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.finance31-file-cell small{font-size:10.5px;color:var(--text-3);text-transform:none;letter-spacing:0;font-weight:500}.finance31-file-icon{width:36px;height:36px;border-radius:9px;background:var(--surface-3);display:grid;place-items:center;color:var(--cyan-dark);flex:0 0 auto}.finance31-worksite-form>div{display:flex;gap:7px;align-items:center}.finance31-worksite-form select{min-width:0;max-width:230px}.finance31-actions{display:flex;justify-content:flex-end;gap:7px;white-space:nowrap}.all-docs-table .finance31-row{grid-template-columns:minmax(250px,1.35fr) minmax(100px,.5fr) minmax(130px,.65fr) minmax(170px,.85fr) auto}
@media(max-width:1180px){.finance31-upload-form{grid-template-columns:1fr}.finance31-row,.all-docs-table .finance31-row{grid-template-columns:1fr}.finance31-actions{justify-content:flex-start}.finance31-worksite-form>div{align-items:stretch}.finance31-worksite-form select{max-width:none;width:100%}.finance31-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.finance31-search{min-width:0;width:100%}.finance31-browser-head{display:grid}}
@media(max-width:720px){.finance31-summary,.finance31-upload-fields{grid-template-columns:1fr}.finance31-heading-actions{width:100%}.finance31-heading-actions a{flex:1;justify-content:center}.finance31-row{padding:13px}.finance31-month-title{padding:15px 13px 6px}.finance31-month-tabs{padding:12px 13px}.finance31-browser-head{padding:15px 13px}.finance31-upload-form{padding:14px}.finance31-worksite-form>div{display:grid}.finance31-actions{display:grid;grid-template-columns:1fr 1fr}.finance31-actions a{text-align:center;justify-content:center}}

/* V32 — chantiers, HERMES et chiffre d'affaires */
.v32-heading-clean p{max-width:720px;line-height:1.55}.v32-compact-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.v32-compact-kpis article,.ca-card{border:1px solid var(--border);background:var(--surface);border-radius:14px;padding:16px;box-shadow:var(--shadow)}.v32-compact-kpis span,.ca-card span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);font-weight:800}.v32-compact-kpis strong,.ca-card strong{display:block;margin:8px 0 2px;font-size:24px;letter-spacing:-.04em}.v32-compact-kpis small,.ca-card small{color:var(--text-3);font-size:11px}.worksite-create-panel{margin-bottom:16px}.v32-worksite-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:18px}.v32-worksite-form .full{grid-column:1/-1}.v32-worksites-panel{overflow:visible}.v32-worksites-toolbar{gap:14px;align-items:center}.v32-client-tabs{display:flex;gap:8px;overflow:auto;padding:12px 16px;border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--surface-2)}.v32-client-tabs button{border:1px solid var(--border);background:var(--surface);border-radius:999px;padding:8px 11px;white-space:nowrap;color:var(--text-2);font-size:11px;font-weight:750;cursor:pointer}.v32-client-tabs button.active{border-color:color-mix(in srgb,var(--cyan) 32%,var(--border));background:linear-gradient(135deg,color-mix(in srgb,var(--cyan) 12%,var(--surface)),color-mix(in srgb,var(--green) 8%,var(--surface)));color:var(--text)}.v32-client-tabs b{margin-left:5px;color:var(--cyan-dark)}.v32-worksite-client-group{margin:0;border-bottom:1px solid var(--border)}.v32-worksite-client-header{padding:16px}.v32-worksite-row{display:grid;grid-template-columns:minmax(260px,1fr) 110px 130px 110px 76px;gap:12px;align-items:center;padding:14px 16px}.v32-hermes-inline{margin-top:16px;padding:16px 18px;display:flex;align-items:center;justify-content:space-between;gap:14px}.v32-hermes-inline h2{margin:2px 0 5px;font-size:15px}.v32-hermes-inline p{margin:0;color:var(--text-3);font-size:11.5px;line-height:1.6}.intervention-hermes-create{display:grid;grid-template-columns:minmax(260px,.7fr) 1fr;gap:16px;align-items:center;margin-bottom:16px;padding:16px}.intervention-hermes-copy h2{margin:3px 0 6px;font-size:16px}.intervention-hermes-copy p{margin:0;color:var(--text-3);font-size:11.5px;line-height:1.55}.intervention-hermes-form{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end}.intervention-hermes-form textarea{width:100%;min-height:82px;border:1px solid var(--border);border-radius:10px;padding:11px;background:var(--surface-2);color:var(--text);font-size:12px;resize:vertical}.intervention-attachments{border:1px dashed var(--border);border-radius:12px;padding:12px;display:grid;gap:8px;background:var(--surface-2)}.intervention-attachments strong{font-size:12px}.intervention-attachments span{display:flex;align-items:center;gap:7px;font-size:11px;color:var(--text-2)}.ca-dashboard-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.ca-card.primary strong{color:var(--cyan-dark)}.ca-card.success strong{color:var(--success)}.ca-card.warning strong{color:var(--warning)}.ca-card.danger strong{color:var(--danger)}.ca-panel-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px;border-bottom:1px solid var(--border)}.ca-panel-head h2{margin:2px 0 0;font-size:15px}.ca-search{display:flex;align-items:center;gap:8px;border:1px solid var(--border);border-radius:10px;padding:0 10px;background:var(--surface-2);min-width:290px}.ca-search input{height:38px;border:0;background:transparent;outline:0;color:var(--text);font-size:12px;width:100%}.ca-table-wrap{overflow:auto}.ca-table{width:100%;border-collapse:collapse}.ca-table th{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);font-weight:800;text-align:left;background:var(--surface-2);padding:11px 14px;border-bottom:1px solid var(--border)}.ca-table td{padding:13px 14px;border-bottom:1px solid var(--border);font-size:12px;vertical-align:middle}.ca-table td strong{display:block;font-size:12px}.ca-table td small{display:block;margin-top:3px;color:var(--text-3);font-size:10.5px}@media(max-width:900px){.v32-compact-kpis,.ca-dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v32-worksite-row{grid-template-columns:1fr}.v32-worksite-row .worksite-meta{display:flex;justify-content:space-between}.intervention-hermes-create{grid-template-columns:1fr}.intervention-hermes-form{grid-template-columns:1fr}.ca-panel-head{align-items:stretch;flex-direction:column}.ca-search{min-width:0}}@media(max-width:620px){.v32-compact-kpis,.ca-dashboard-grid,.v32-worksite-form{grid-template-columns:1fr}.v32-hermes-inline{align-items:stretch;flex-direction:column}.v32-hermes-inline .secondary-button{justify-content:center}}


/* V33 — sécurité invitations et chantiers administrables */
.v33-mail-status{margin:0 0 10px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--brand-cyan) 22%,var(--border));border-radius:9px;background:color-mix(in srgb,var(--brand-cyan) 5%,var(--surface));font-size:11px;color:var(--text-2);font-weight:650}
.v33-worksite-row{color:var(--text);text-decoration:none}
.v33-worksite-main-link{text-decoration:none;color:inherit;min-width:0}
.v33-worksite-actions{display:grid;gap:6px;justify-items:end;align-items:center}
.v33-delete-worksite-form{margin:0}.v33-delete-link{border:0;background:transparent;color:var(--danger);font-size:10px;font-weight:800;cursor:pointer;padding:4px 0}.v33-delete-link:hover{text-decoration:underline}
.danger-button{min-height:38px;border:1px solid color-mix(in srgb,var(--danger) 35%,var(--border));background:color-mix(in srgb,var(--danger) 7%,var(--surface));color:var(--danger);border-radius:9px;padding:0 12px;font-size:11px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.danger-button:hover{background:color-mix(in srgb,var(--danger) 11%,var(--surface))}.v33-delete-worksite-detail{margin:0;display:inline-flex}
.activation-card>p{font-size:12px;color:#718186;line-height:1.55;margin:0 0 14px}
@media(max-width:900px){.v33-worksite-actions{justify-items:start}.v33-worksite-row{gap:10px}.v33-worksite-main-link{display:flex}}

/* V36 — verrouillage admin et inscriptions salariés. */
.activation-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.v36-admin-lock-panel{background:var(--surface);border:1px solid var(--border);border-radius:12px;margin-bottom:16px;padding:16px 18px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.v36-admin-lock-panel h2{font-size:15px;margin:4px 0 5px;letter-spacing:-.025em}.v36-admin-lock-panel p{margin:0;color:var(--text-3);font-size:11px;line-height:1.5;max-width:680px}
.v36-admin-lock-card{min-width:290px;background:var(--surface-2);border:1px solid var(--border);border-radius:10px;padding:10px 12px;display:grid;grid-template-columns:40px 1fr auto;gap:10px;align-items:center}.v36-admin-lock-card div{display:grid;gap:2px}.v36-admin-lock-card strong{font-size:11px}.v36-admin-lock-card small{font-size:9.5px;color:var(--text-3)}
.v36-account-details{display:grid;gap:4px;min-width:0}.v36-account-details span{font-size:9.5px;color:var(--text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v36-delete-account{border:0;background:transparent;color:var(--danger);font-size:10px;font-weight:800;cursor:pointer;text-align:left;padding:8px 0}.v36-delete-account:hover{text-decoration:underline}.account-activation-page .activation-form .activation-grid label{min-width:0}
@media(max-width:1250px){.v28-account-row{grid-template-columns:42px minmax(160px,.9fr) minmax(160px,.8fr) minmax(150px,.7fr) minmax(320px,1.3fr)}}
@media(max-width:980px){.v36-admin-lock-panel{align-items:flex-start;flex-direction:column}.v36-admin-lock-card{width:100%;min-width:0}.v28-account-row{grid-template-columns:42px minmax(0,1fr) minmax(160px,.9fr) minmax(300px,1.4fr)}.v36-account-details{grid-column:2}.v28-account-invite-status{display:none}}
@media(max-width:760px){.v28-account-row{grid-template-columns:40px minmax(0,1fr)}.v36-account-details,.v28-account-state,.v28-account-actions{grid-column:2}.activation-grid{grid-template-columns:1fr}.v36-admin-lock-card{grid-template-columns:40px 1fr}.v36-admin-lock-card .status-pill{grid-column:1/-1;justify-self:start}}
.v28-account-row{grid-template-columns:42px minmax(150px,.85fr) minmax(160px,.85fr) minmax(145px,.7fr) minmax(155px,.7fr) minmax(390px,1.55fr)}
@media(max-width:1250px){.v28-account-row{grid-template-columns:42px minmax(160px,.9fr) minmax(160px,.8fr) minmax(150px,.7fr) minmax(320px,1.3fr)}.v28-account-actions{grid-column:1/-1;padding-left:56px}.v36-account-details{grid-column:auto}}
@media(max-width:980px){.v28-account-row{grid-template-columns:42px minmax(0,1fr) minmax(160px,.9fr)}.v28-account-actions{grid-column:1/-1}.v36-account-details{grid-column:2}.v28-account-invite-status{display:none}}
@media(max-width:760px){.v28-account-row{grid-template-columns:40px minmax(0,1fr)}.v36-account-details,.v28-account-state,.v28-account-actions{grid-column:2}.v28-account-actions{padding-left:0;grid-template-columns:1fr}.activation-grid{grid-template-columns:1fr}}

/* V37 — setup administrateur par email uniquement. */
.v37-admin-mail-card{gap:12px}.v37-admin-mail-form{margin-top:2px;display:grid}.v37-admin-mail-form .primary-button{width:100%;justify-content:space-between}
.admin-setup-page .activation-card .primary-button[href]{text-decoration:none}

/* V38 - documents salariés et planning chantier rapide */
.emp38-upload-box{margin:0 0 16px;border-style:solid}
.emp38-upload-box summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:10px;padding:16px 18px;color:var(--text)}
.emp38-upload-box summary::-webkit-details-marker{display:none}
.emp38-upload-box summary>span{width:30px;height:30px;border-radius:10px;background:color-mix(in srgb,var(--cyan) 10%,var(--surface-2));display:grid;place-items:center;color:var(--cyan)}
.emp38-upload-box summary strong{font-size:13px}.emp38-upload-box summary small{margin-left:auto;color:var(--text-3);font-size:11px}
.emp38-upload-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:0 18px 18px}.emp38-upload-form .full{grid-column:1/-1}
.emp38-doc-list{display:grid;gap:10px;margin:0 0 16px;padding:12px}.emp38-doc-row{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:12px 14px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}
.emp38-doc-main{display:flex;align-items:flex-start;gap:11px;min-width:0}.emp38-doc-main>span{width:30px;height:30px;border-radius:10px;background:var(--surface-2);display:grid;place-items:center;color:var(--text-2);flex:0 0 auto}.emp38-doc-main div{display:grid;gap:3px;min-width:0}.emp38-doc-main strong{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.emp38-doc-main small{font-size:11px;color:var(--text-3)}.emp38-doc-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}.emp38-doc-actions form{display:inline}
.planning38-new-worksite{display:none;grid-column:1/-1;border:1px dashed color-mix(in srgb,var(--cyan) 35%,var(--border));border-radius:14px;padding:14px;background:color-mix(in srgb,var(--cyan) 4%,var(--surface));gap:12px}.planning38-new-worksite.is-visible{display:grid}.planning38-new-worksite-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:2px}.planning38-new-worksite-head strong{font-size:12px}.planning38-new-worksite-head small{color:var(--text-3);font-size:10px}.planning38-new-worksite-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.planning38-new-worksite-grid .full{grid-column:1/-1}
.worksite38-edit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.worksite38-edit-grid .full{grid-column:1/-1}.worksite38-edit-grid .span-2{grid-column:span 2}.worksite38-edit-section{grid-column:1/-1;margin:10px 0 2px;padding-top:12px;border-top:1px solid var(--border)}.worksite38-edit-section strong{display:block;font-size:12px;letter-spacing:.02em;text-transform:uppercase;color:var(--text-2)}.worksite38-edit-section small{display:block;color:var(--text-3);font-size:11px;margin-top:2px}
@media(max-width:800px){.emp38-upload-form,.planning38-new-worksite-grid,.worksite38-edit-grid{grid-template-columns:1fr}.emp38-doc-row{align-items:flex-start;flex-direction:column}.emp38-doc-actions{justify-content:flex-start}.worksite38-edit-grid .span-2{grid-column:1}.emp38-upload-box summary{align-items:flex-start;flex-wrap:wrap}.emp38-upload-box summary small{margin-left:40px;width:100%}}

/* V39 — Planning période, alertes et tâches épurées */
.planning39-event{border-left-width:3px;border-left-style:solid;background:var(--surface);}
.planning39-color-1{border-left-color:#22a4d8;background:rgba(34,164,216,.065)}
.planning39-color-2{border-left-color:#4fae73;background:rgba(79,174,115,.065)}
.planning39-color-3{border-left-color:#7c6ff0;background:rgba(124,111,240,.06)}
.planning39-color-4{border-left-color:#d99b37;background:rgba(217,155,55,.07)}
.planning39-color-5{border-left-color:#d85f74;background:rgba(216,95,116,.06)}
.planning39-color-6{border-left-color:#54a89e;background:rgba(84,168,158,.065)}
.planning39-color-7{border-left-color:#7aa14b;background:rgba(122,161,75,.065)}
.planning39-color-8{border-left-color:#9a7b55;background:rgba(154,123,85,.065)}
.planning39-weekdays{display:flex!important;align-items:center;gap:10px;min-height:42px;padding:0 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}
.planning39-weekdays input{width:auto!important;min-height:auto!important}.planning39-weekdays span{font-size:11px;font-weight:750;color:var(--text-2)}
.planning39-period-preview{font-size:11px;font-weight:750;color:var(--text-3)}
.alerts39-heading-actions{display:flex;gap:8px;align-items:center}.alerts39-heading-actions form{margin:0}.ghost-button{min-height:38px;border:1px solid var(--border);border-radius:9px;background:transparent;color:var(--text-2);font-size:11px;font-weight:750;padding:0 12px;cursor:pointer}.ghost-button:hover{background:var(--surface-2);color:var(--text)}
.tasks39-heading{align-items:flex-start}.tasks39-summary{display:grid;grid-template-columns:1.25fr repeat(3,1fr);gap:12px;margin:16px 0 18px}.tasks39-summary article{border:1px solid var(--border);border-radius:14px;background:var(--surface);padding:16px;display:grid;gap:3px}.tasks39-summary article.is-main{background:linear-gradient(135deg,color-mix(in srgb,var(--cyan) 11%,var(--surface)),var(--surface));border-color:color-mix(in srgb,var(--cyan) 22%,var(--border))}.tasks39-summary span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);font-weight:800}.tasks39-summary strong{font-size:28px;letter-spacing:-.05em}.tasks39-summary small{font-size:11px;color:var(--text-3)}.tasks39-flash{border:1px solid color-mix(in srgb,var(--green) 28%,var(--border));background:color-mix(in srgb,var(--green) 7%,var(--surface));border-radius:12px;padding:11px 13px;font-size:12px;font-weight:750;margin:12px 0;color:var(--text)}
.tasks39-form-panel{border:1px solid var(--border);border-radius:16px;background:var(--surface);padding:18px;margin:18px 0}.tasks39-form-panel[hidden]{display:none}.tasks39-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px}.tasks39-section-head h2{margin:2px 0 0;font-size:18px}.tasks39-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.tasks39-form label{display:grid;gap:6px}.tasks39-form label>span{font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3)}.tasks39-form input,.tasks39-form select,.tasks39-form textarea{border:1px solid var(--border);border-radius:10px;background:var(--surface);min-height:42px;padding:0 12px;color:var(--text);font:inherit;font-size:12px}.tasks39-form textarea{padding-top:10px;resize:vertical}.tasks39-form .span-2{grid-column:span 2}.tasks39-form-actions{display:flex;justify-content:flex-end;align-items:end}.tasks39-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:18px;align-items:start}.tasks39-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.tasks39-column{border:1px solid var(--border);border-radius:16px;background:var(--surface);min-height:300px;padding:12px;display:flex;flex-direction:column;gap:10px}.tasks39-column>header{display:flex;justify-content:space-between;align-items:center;padding:2px 2px 8px;border-bottom:1px solid var(--border)}.tasks39-column>header span{font-size:12px;font-weight:850}.tasks39-column>header b{min-width:26px;height:22px;border-radius:99px;display:grid;place-items:center;background:var(--surface-2);font-size:11px}.tasks39-empty{border:1px dashed var(--border);border-radius:12px;padding:16px;text-align:center;color:var(--text-3);font-size:12px}.tasks39-card{border:1px solid var(--border);border-radius:13px;background:var(--surface);padding:13px;display:grid;gap:9px;border-left:3px solid var(--border)}.tasks39-card.priority-critical,.tasks39-card.priority-urgent{border-left-color:#c73c39}.tasks39-card.priority-high{border-left-color:#dd8a23}.tasks39-card.priority-medium{border-left-color:#d0ad2d}.tasks39-card.priority-low{border-left-color:#5f8f75}.tasks39-card-top{display:flex;gap:8px;justify-content:space-between;align-items:center}.tasks39-card-top span,.tasks39-card-top b{font-size:9.5px;text-transform:uppercase;letter-spacing:.07em;font-weight:850;color:var(--text-3)}.tasks39-card strong{font-size:13px;line-height:1.25}.tasks39-card p{font-size:11.5px;color:var(--text-3);margin:0;line-height:1.45}.tasks39-meta{display:flex;flex-wrap:wrap;gap:6px}.tasks39-meta span{font-size:10px;font-weight:800;color:var(--text-2);background:var(--surface-2);border:1px solid var(--border);border-radius:99px;padding:5px 8px}.tasks39-link{font-size:11px;font-weight:800;color:var(--cyan-dark);text-decoration:none}.tasks39-actions{display:flex;flex-wrap:wrap;gap:6px;border-top:1px solid var(--border);padding-top:8px}.tasks39-actions form{margin:0}.tasks39-actions button{border:0;background:var(--surface-2);border-radius:8px;min-height:28px;padding:0 8px;font-size:10px;font-weight:800;color:var(--text-2);cursor:pointer}.tasks39-actions button:hover{background:var(--surface-3);color:var(--text)}.tasks39-hermes{border:1px solid color-mix(in srgb,var(--cyan) 18%,var(--border));border-radius:16px;background:linear-gradient(180deg,color-mix(in srgb,var(--cyan) 5%,var(--surface)),var(--surface));padding:14px;position:sticky;top:90px}.tasks39-hermes-head{display:flex;gap:10px;align-items:center;margin-bottom:12px}.tasks39-hermes-head>svg{color:var(--cyan-dark)}.tasks39-hermes-head strong{display:block;font-size:13px}.tasks39-hermes-head small{font-size:10.5px;color:var(--text-3)}.tasks39-suggestions{display:grid;gap:10px}.tasks39-suggestions>div{border:1px solid var(--border);background:var(--surface);border-radius:13px;padding:11px;display:grid;gap:5px}.tasks39-suggestions span{font-size:9.5px;font-weight:850;text-transform:uppercase;color:var(--text-3)}.tasks39-suggestions strong{font-size:12px}.tasks39-suggestions small{font-size:10.5px;color:var(--text-3);line-height:1.4}.tasks39-suggestions form{margin:5px 0 0}.tasks39-suggestions button{width:100%;min-height:32px;border:1px solid var(--border);background:var(--surface-2);border-radius:8px;font-size:10.5px;font-weight:850;cursor:pointer;color:var(--text-2)}.tasks39-note{margin-top:12px;border-top:1px solid var(--border);padding-top:12px;display:grid;gap:3px}.tasks39-note strong{font-size:11px}.tasks39-note span{font-size:10.5px;line-height:1.45;color:var(--text-3)}.tasks39-hermes-empty{font-size:12px;color:var(--text-3)}
@media(max-width:1100px){.tasks39-layout{grid-template-columns:1fr}.tasks39-hermes{position:relative;top:auto}.tasks39-board{grid-template-columns:1fr}.tasks39-summary{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.tasks39-summary,.tasks39-form{grid-template-columns:1fr}.tasks39-form .span-2{grid-column:auto}.alerts39-heading-actions{width:100%;flex-direction:column;align-items:stretch}.alerts39-heading-actions form,.alerts39-heading-actions button{width:100%}}

/* V40 — tâches, alertes, planning et comptes plus professionnels */
.tasks40-heading{align-items:flex-start}.tasks40-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0 18px}.tasks40-kpis article{border:1px solid var(--border);background:var(--surface);border-radius:14px;padding:15px;display:grid;gap:3px}.tasks40-kpis span,.tasks40-form span,.tasks40-list-head small{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);font-weight:850}.tasks40-kpis strong{font-size:24px;letter-spacing:-.04em}.tasks40-kpis small{font-size:11px;color:var(--text-3)}.tasks40-flash{border:1px solid color-mix(in srgb,var(--green) 28%,var(--border));background:color-mix(in srgb,var(--green) 7%,var(--surface));border-radius:12px;padding:11px 13px;font-size:12px;font-weight:750;margin:12px 0;color:var(--text)}
.tasks40-form-panel{border:1px solid var(--border);border-radius:16px;background:var(--surface);padding:18px;margin:18px 0}.tasks40-form-panel[hidden]{display:none}.tasks40-form-panel header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;border-bottom:1px solid var(--border);padding-bottom:14px;margin-bottom:16px}.tasks40-form-panel h2{margin:2px 0 3px;font-size:18px}.tasks40-form-panel p{margin:0;color:var(--text-3);font-size:12px}.tasks40-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.tasks40-form label{display:grid;gap:7px}.tasks40-form input,.tasks40-form select,.tasks40-form textarea{border:1px solid var(--border);background:var(--surface-2);border-radius:10px;min-height:42px;padding:0 12px;color:var(--text);font:inherit;font-size:12px}.tasks40-form textarea{padding-top:11px;resize:vertical}.tasks40-form .span-2{grid-column:span 2}.tasks40-form .span-4{grid-column:1/-1}.tasks40-form-actions{display:flex;justify-content:flex-end;gap:10px;align-items:center}.tasks40-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:18px;align-items:start}.tasks40-main-list,.tasks40-hermes{border:1px solid var(--border);border-radius:16px;background:var(--surface);padding:14px}.tasks40-list-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:4px 2px 14px;border-bottom:1px solid var(--border)}.tasks40-list-head h2{font-size:17px;margin:2px 0 0}.tasks40-empty{border:1px dashed var(--border);border-radius:12px;padding:22px;text-align:center;color:var(--text-3);font-size:13px;margin-top:14px}.tasks40-table{display:grid;gap:0}.tasks40-row{display:grid;grid-template-columns:130px minmax(240px,1fr) 135px 98px 100px 250px;gap:14px;align-items:center;padding:13px 4px;border-bottom:1px solid var(--border)}.tasks40-row:last-child{border-bottom:0}.tasks40-row-head{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);font-weight:850;padding-top:12px;padding-bottom:9px}.tasks40-row>div:first-child strong{display:block;font-size:12px}.tasks40-row>div:first-child small{display:block;color:var(--text-3);font-size:11px;margin-top:2px}.tasks40-title{display:grid;gap:3px}.tasks40-title strong{font-size:13px;line-height:1.25}.tasks40-title small{font-size:11.5px;color:var(--text-3);line-height:1.4}.tasks40-title a{font-size:11px;font-weight:800;color:var(--cyan-dark);text-decoration:none}.tasks40-pill,.tasks40-status,.tasks40-priority{display:inline-flex;align-items:center;width:max-content;max-width:100%;border:1px solid var(--border);background:var(--surface-2);border-radius:999px;padding:5px 8px;font-size:10px;font-weight:850;color:var(--text-2)}.tasks40-priority.critical,.tasks40-priority.urgent{background:#fff2f2;border-color:#efb7b6;color:#a22724}.tasks40-priority.high{background:#fff7ec;border-color:#ecc58c;color:#9b5a0c}.tasks40-priority.medium{background:#fffbea;border-color:#e6d68d;color:#806800}.tasks40-priority.low{background:#eef8f2;border-color:#add9bf;color:#246842}.tasks40-actions{display:flex;flex-wrap:wrap;gap:6px}.tasks40-actions form{margin:0}.tasks40-actions button{border:1px solid var(--border);background:var(--surface-2);border-radius:8px;min-height:30px;padding:0 9px;font-size:10.5px;font-weight:850;color:var(--text-2);cursor:pointer}.tasks40-actions button:hover{background:var(--surface-3);color:var(--text)}.tasks40-actions button.danger{border-color:#efb7b6;background:#fff2f2;color:#a22724}.tasks40-done{margin-top:12px;border:1px solid var(--border);border-radius:12px;background:var(--surface-2);padding:10px}.tasks40-done summary{cursor:pointer;font-size:12px;font-weight:850}.tasks40-done p{display:flex;justify-content:space-between;gap:12px;margin:8px 0 0;font-size:12px;color:var(--text-3)}.tasks40-hermes{position:sticky;top:90px;background:linear-gradient(180deg,color-mix(in srgb,var(--cyan) 5%,var(--surface)),var(--surface))}.tasks40-hermes>header{display:flex;gap:10px;align-items:center;border-bottom:1px solid var(--border);padding-bottom:12px;margin-bottom:12px}.tasks40-hermes>header svg{color:var(--cyan-dark)}.tasks40-hermes strong{font-size:13px}.tasks40-hermes small{font-size:10.5px;color:var(--text-3)}.tasks40-suggestions{display:grid;gap:10px}.tasks40-suggestions article{border:1px solid var(--border);background:var(--surface);border-radius:13px;padding:12px;display:grid;gap:6px}.tasks40-suggestions article>span{font-size:9.5px;font-weight:850;text-transform:uppercase;color:var(--text-3)}.tasks40-suggestions button{width:100%;min-height:34px;border:1px solid color-mix(in srgb,var(--cyan) 30%,var(--border));background:color-mix(in srgb,var(--cyan) 8%,var(--surface));border-radius:9px;font-size:11px;font-weight:850;color:var(--cyan-dark);cursor:pointer}.tasks40-hermes-empty{font-size:12px;color:var(--text-3)}
.alerts40-task-button{border:1px solid color-mix(in srgb,var(--cyan) 34%,var(--border));background:color-mix(in srgb,var(--cyan) 10%,var(--surface));color:var(--cyan-dark);border-radius:8px;min-height:30px;padding:0 10px;font-size:10.5px;font-weight:850;cursor:pointer}.alerts40-delete-button{border:1px solid #efb7b6;background:#fff2f2;color:#a22724;border-radius:8px;min-height:30px;padding:0 10px;font-size:10.5px;font-weight:850;cursor:pointer}.alerts24-delete-form{margin:0}
.planning40-tabs{display:flex;gap:8px;margin:14px 0 16px;border:1px solid var(--border);background:var(--surface);border-radius:14px;padding:6px;width:max-content;max-width:100%}.planning40-tabs a{padding:9px 13px;border-radius:10px;text-decoration:none;color:var(--text-2);font-size:12px;font-weight:850}.planning40-tabs a.is-active{background:color-mix(in srgb,var(--cyan) 12%,var(--surface));color:var(--cyan-dark)}.planning40-task-option{display:flex!important;align-items:center;gap:9px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2);padding:10px 12px}.planning40-task-option input{min-height:auto}.planning40-task-option span{font-size:12px;font-weight:800;color:var(--text-2)}.planning40-personal-team fieldset{display:none}.planning40-personal-team:after{content:'Cette entrée sera ajoutée uniquement au planning personnel de Gael Charpin.';display:block;border:1px dashed var(--border);border-radius:12px;background:var(--surface-2);padding:12px;color:var(--text-3);font-size:12px;font-weight:750}
.v40-admin-create-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:18px 0}.v40-create-panel{border:1px solid var(--border);border-radius:16px;background:var(--surface);padding:18px;display:grid;gap:16px}.v40-create-panel h2{font-size:18px;margin:3px 0}.v40-create-panel p{margin:0;color:var(--text-3);font-size:12px}.v40-create-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.v40-create-form label{display:grid;gap:6px}.v40-create-form span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);font-weight:850}.v40-create-form input{border:1px solid var(--border);background:var(--surface-2);border-radius:10px;min-height:42px;padding:0 12px;color:var(--text)}.v40-create-form .span-2{grid-column:1/-1}.v40-create-form button{grid-column:1/-1}.v40-delete-employee{border:1px solid #efb7b6!important;background:#fff2f2!important;color:#a22724!important;border-radius:8px;min-height:30px;padding:0 9px;font-size:10.5px;font-weight:850;cursor:pointer}
@media(max-width:1180px){.tasks40-layout{grid-template-columns:1fr}.tasks40-hermes{position:relative;top:auto}.tasks40-row{grid-template-columns:110px minmax(210px,1fr) 110px 90px 90px 1fr}.v40-admin-create-grid{grid-template-columns:1fr}}
@media(max-width:820px){.tasks40-kpis{grid-template-columns:1fr 1fr}.tasks40-form{grid-template-columns:1fr}.tasks40-form .span-2,.tasks40-form .span-4{grid-column:auto}.tasks40-row,.tasks40-row-head{grid-template-columns:1fr}.tasks40-row-head{display:none}.tasks40-row{border:1px solid var(--border);border-radius:13px;padding:13px;margin-top:10px}.tasks40-actions{justify-content:flex-start}.planning40-tabs{width:100%;justify-content:stretch}.planning40-tabs a{flex:1;text-align:center}.v40-create-form{grid-template-columns:1fr}.v40-create-form .span-2{grid-column:auto}}

/* ========================================================================
   CEGEWATT CRM — Tasks V41 refined interface
   Objectif : lisible, sobre, utilisable rapidement, sans tableau lourd.
   ======================================================================== */
.tasks41-heading{align-items:flex-start;margin-bottom:18px}.tasks41-shell{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:18px;align-items:start}.tasks41-main{min-width:0}.tasks41-topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 12px}.tasks41-tabs{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.tasks41-tabs span{min-height:32px;display:inline-flex;align-items:center;gap:7px;border:1px solid var(--border);background:var(--surface);border-radius:999px;padding:0 11px;font-size:11px;font-weight:800;color:var(--text-2)}.tasks41-tabs span.is-active{background:#101719;border-color:#101719;color:#fff}.tasks41-tabs b{font-size:10px;min-width:20px;height:20px;border-radius:999px;display:grid;place-items:center;background:var(--surface-2);color:var(--text)}.tasks41-tabs span.is-active b{background:rgba(255,255,255,.16);color:#fff}.tasks41-sort-note{font-size:10.5px;font-weight:800;color:var(--text-3);text-transform:uppercase;letter-spacing:.08em}.tasks41-flash{border:1px solid color-mix(in srgb,var(--green) 28%,var(--border));background:color-mix(in srgb,var(--green) 7%,var(--surface));border-radius:10px;padding:11px 13px;font-size:12px;font-weight:750;margin:0 0 14px;color:var(--text)}.tasks41-list-panel,.tasks41-create-card,.tasks41-hermes{border:1px solid var(--border);background:var(--surface);border-radius:14px;box-shadow:var(--shadow);overflow:hidden}.tasks41-list-header{min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;border-bottom:1px solid var(--border)}.tasks41-list-header h2,.tasks41-create-card h2{font-size:16px;margin:2px 0 0;letter-spacing:-.015em}.tasks41-list-header small{font-size:11px;color:var(--text-3);font-weight:700}.tasks41-empty{min-height:230px;display:grid;place-items:center;text-align:center;gap:4px;padding:40px;color:var(--text-3)}.tasks41-empty strong{font-size:14px;color:var(--text)}.tasks41-empty span{font-size:12px}.tasks41-groups{display:grid;gap:0}.tasks41-group{border-bottom:1px solid var(--border)}.tasks41-group:last-child{border-bottom:0}.tasks41-group-title{height:38px;display:flex;align-items:center;justify-content:space-between;background:var(--surface-2);padding:0 18px;border-bottom:1px solid var(--border)}.tasks41-group-title span{font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.09em;color:var(--text-3)}.tasks41-group-title b{min-width:22px;height:22px;border-radius:999px;display:grid;place-items:center;border:1px solid var(--border);background:var(--surface);font-size:10px;color:var(--text-2)}.tasks41-items{display:grid}.tasks41-item{display:grid;grid-template-columns:122px minmax(0,1fr) auto;gap:18px;align-items:center;padding:16px 18px;border-bottom:1px solid var(--border);position:relative}.tasks41-item:last-child{border-bottom:0}.tasks41-item:before{content:"";position:absolute;left:0;top:14px;bottom:14px;width:3px;border-radius:0 999px 999px 0;background:var(--border)}.tasks41-item.tone-critical:before,.tasks41-item.tone-urgent:before{background:var(--danger)}.tasks41-item.tone-high:before{background:var(--warning)}.tasks41-item.tone-medium:before{background:#d0ad2d}.tasks41-item.tone-low:before{background:var(--green-dark)}.tasks41-item:hover{background:var(--surface-2)}.tasks41-date{display:grid;gap:3px;align-content:center}.tasks41-date strong{font-size:12px;letter-spacing:-.01em}.tasks41-date span{font-size:11px;color:var(--text-3)}.tasks41-body{display:grid;gap:8px;min-width:0}.tasks41-title-line{display:flex;align-items:flex-start;gap:10px;justify-content:space-between}.tasks41-title-line strong{font-size:13px;line-height:1.3;letter-spacing:-.01em}.tasks41-body p{margin:0;color:var(--text-3);font-size:11.5px;line-height:1.45;max-width:760px}.tasks41-meta{display:flex;flex-wrap:wrap;gap:6px}.tasks41-meta span,.tasks41-meta a{min-height:22px;display:inline-flex;align-items:center;border:1px solid var(--border);background:var(--surface);border-radius:999px;padding:0 8px;font-size:10px;font-weight:800;color:var(--text-3)}.tasks41-meta a{color:var(--cyan-dark);border-color:color-mix(in srgb,var(--cyan) 28%,var(--border));background:color-mix(in srgb,var(--cyan) 6%,var(--surface))}.tasks41-priority{flex:0 0 auto;display:inline-flex;align-items:center;border-radius:999px;border:1px solid var(--border);padding:4px 8px;font-size:9.5px;font-weight:900;text-transform:uppercase;letter-spacing:.06em;color:var(--text-2);background:var(--surface-2)}.tasks41-priority.critical,.tasks41-priority.urgent{background:#fff2f2;border-color:#efb7b6;color:#a22724}.tasks41-priority.high{background:#fff7ec;border-color:#ecc58c;color:#9b610e}.tasks41-priority.medium{background:#fffbe8;border-color:#eadc93;color:#806610}.tasks41-priority.low{background:#effaf3;border-color:#b8dfc6;color:#1f7a43}html[data-theme="dark"] .tasks41-priority.critical,html[data-theme="dark"] .tasks41-priority.urgent{background:rgba(217,67,67,.12);border-color:rgba(217,67,67,.34);color:#ff9b9b}html[data-theme="dark"] .tasks41-priority.high{background:rgba(200,135,22,.12);border-color:rgba(200,135,22,.32);color:#ffc56f}html[data-theme="dark"] .tasks41-priority.low{background:rgba(65,201,111,.10);border-color:rgba(65,201,111,.30);color:#91e5ae}.tasks41-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;min-width:176px}.tasks41-actions form{margin:0}.tasks41-actions button{width:100%;min-height:30px;border:1px solid var(--border);border-radius:8px;background:var(--surface);font-size:10.5px;font-weight:850;color:var(--text-2);cursor:pointer}.tasks41-actions button:hover{background:var(--surface-3);color:var(--text)}.tasks41-actions button.ok{border-color:color-mix(in srgb,var(--green) 35%,var(--border));background:color-mix(in srgb,var(--green) 7%,var(--surface));color:var(--green-dark)}.tasks41-actions button.danger{border-color:color-mix(in srgb,var(--danger) 35%,var(--border));background:color-mix(in srgb,var(--danger) 6%,var(--surface));color:var(--danger)}.tasks41-side{display:grid;gap:14px;position:sticky;top:82px}.tasks41-create-card{padding:17px}.tasks41-create-card header{padding-bottom:14px;border-bottom:1px solid var(--border);margin-bottom:14px}.tasks41-create-card p{margin:3px 0 0;color:var(--text-3);font-size:11.5px}.tasks41-form{display:grid;gap:12px}.tasks41-form label{display:grid;gap:6px}.tasks41-form label span{font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3)}.tasks41-form input,.tasks41-form select,.tasks41-form textarea{width:100%;border:1px solid var(--border);background:var(--surface-2);border-radius:9px;min-height:41px;padding:0 11px;color:var(--text);font:inherit;font-size:12px;outline:0}.tasks41-form textarea{padding-top:10px;resize:vertical;line-height:1.45}.tasks41-form input:focus,.tasks41-form select:focus,.tasks41-form textarea:focus{border-color:color-mix(in srgb,var(--cyan) 58%,var(--border));box-shadow:0 0 0 3px color-mix(in srgb,var(--cyan) 9%,transparent);background:var(--surface)}.tasks41-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.tasks41-form .primary-button{width:100%;height:42px}.tasks41-hermes{padding:15px}.tasks41-hermes header{display:flex;gap:10px;align-items:center;padding-bottom:13px;border-bottom:1px solid var(--border);margin-bottom:12px}.tasks41-hermes-icon{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;background:linear-gradient(135deg,color-mix(in srgb,var(--cyan) 14%,var(--surface)),color-mix(in srgb,var(--green) 11%,var(--surface)));color:var(--cyan-dark);border:1px solid color-mix(in srgb,var(--cyan) 20%,var(--border))}.tasks41-hermes strong{display:block;font-size:13px}.tasks41-hermes small{font-size:10.5px;color:var(--text-3)}.tasks41-suggestions{display:grid;gap:9px}.tasks41-suggestions article{border:1px solid var(--border);border-radius:12px;background:var(--surface-2);padding:12px;display:grid;gap:8px}.tasks41-suggestions article>div{display:grid;gap:4px}.tasks41-suggestions span{font-size:9.5px;font-weight:900;text-transform:uppercase;letter-spacing:.07em;color:var(--cyan-dark)}.tasks41-suggestions strong{font-size:12.2px;line-height:1.3}.tasks41-suggestions p{margin:0;color:var(--text-3);font-size:11px;line-height:1.45}.tasks41-suggestions form{margin:0}.tasks41-suggestions button{width:100%;height:34px;border:1px solid color-mix(in srgb,var(--cyan) 34%,var(--border));background:color-mix(in srgb,var(--cyan) 7%,var(--surface));color:var(--cyan-dark);border-radius:8px;font-size:11px;font-weight:850;cursor:pointer}.tasks41-suggestions button:hover{background:color-mix(in srgb,var(--cyan) 12%,var(--surface))}.tasks41-hermes-empty{margin:0;color:var(--text-3);font-size:12px;line-height:1.5}.tasks41-done{margin-top:12px;border:1px solid var(--border);border-radius:12px;background:var(--surface);overflow:hidden}.tasks41-done summary{cursor:pointer;padding:12px 15px;font-weight:850;font-size:12px;color:var(--text-2)}.tasks41-done div{border-top:1px solid var(--border);padding:7px 15px}.tasks41-done p{display:flex;justify-content:space-between;gap:10px;margin:0;padding:8px 0;border-bottom:1px solid var(--border);font-size:11.5px}.tasks41-done p:last-child{border-bottom:0}.tasks41-done span{color:var(--text-3)}@media(max-width:1180px){.tasks41-shell{grid-template-columns:1fr}.tasks41-side{position:relative;top:auto;grid-template-columns:1fr 1fr}.tasks41-item{grid-template-columns:110px minmax(0,1fr)}}@media(max-width:860px){.tasks41-topbar{align-items:flex-start;flex-direction:column}.tasks41-sort-note{display:none}.tasks41-side{grid-template-columns:1fr}.tasks41-item{grid-template-columns:1fr;gap:10px}.tasks41-date{display:flex;justify-content:space-between;gap:10px}.tasks41-actions{display:flex;flex-wrap:wrap;min-width:0}.tasks41-actions form{flex:1 1 110px}.tasks41-title-line{align-items:flex-start;flex-direction:column}.tasks41-form-grid{grid-template-columns:1fr}}@media(max-width:560px){.tasks41-tabs{display:grid;grid-template-columns:1fr 1fr;width:100%}.tasks41-tabs span{justify-content:space-between}.tasks41-list-header{align-items:flex-start;flex-direction:column}.tasks41-group-title{padding:0 14px}.tasks41-item{padding:14px}.tasks41-create-card,.tasks41-hermes{padding:14px}}

/* V42 — Tâches alignées sur le design Alertes */
.tasks42-heading p{max-width:780px}.tasks42-summary{margin-top:16px}.tasks42-hermes-strip{margin-top:14px}.tasks42-filters{margin-top:18px}.tasks42-create-form{margin-top:16px}.tasks42-form-grid input,.tasks42-form-grid select,.tasks42-form-grid textarea{font-size:12px}.tasks42-row .alerts24-row-main>strong{letter-spacing:-.012em}.tasks42-row .alerts24-row-main p{max-width:720px}.tasks42-side-actions{gap:7px}.tasks42-action-button{border:1px solid color-mix(in srgb,var(--cyan) 26%,var(--border));background:color-mix(in srgb,var(--cyan) 6%,var(--surface));color:var(--cyan-dark);border-radius:8px;min-height:30px;padding:0 10px;font-size:10.5px;font-weight:850;cursor:pointer}.tasks42-action-button.waiting{border-color:color-mix(in srgb,var(--warning) 30%,var(--border));background:color-mix(in srgb,var(--warning) 7%,var(--surface));color:#99610f}.tasks42-action-button.done{border-color:color-mix(in srgb,var(--green) 35%,var(--border));background:color-mix(in srgb,var(--green) 7%,var(--surface));color:var(--green-dark)}.tasks42-suggestion-list>div{align-items:start}.tasks42-suggestion-form{grid-column:1 / -1;margin:8px 0 0 42px}.tasks42-suggestion-form button{min-width:130px}.tasks42-hermes-panel{position:sticky;top:90px}
@media(max-width:900px){.tasks42-hermes-panel{position:relative;top:auto}.tasks42-suggestion-form{margin-left:0}.tasks42-side-actions{align-items:flex-start}}

/* V42 — Administration documentation technique */
.tech-admin-panel{border:1px solid var(--border);background:var(--surface);border-radius:16px;box-shadow:var(--shadow);padding:18px;margin:16px 0 18px}.tech-admin-panel[hidden]{display:none}.tech-admin-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;border-bottom:1px solid var(--border);padding-bottom:14px;margin-bottom:14px}.tech-admin-head h2{margin:2px 0 4px;font-size:18px}.tech-admin-head p{margin:0;color:var(--text-3);font-size:12px;line-height:1.45}.tech-admin-grid{display:grid;grid-template-columns:1.15fr 1.15fr .8fr;gap:14px;align-items:start}.tech-admin-card{border:1px solid var(--border);border-radius:14px;background:var(--surface-2);padding:14px;display:grid;gap:11px}.tech-admin-card h3{margin:0 0 2px;font-size:14px;letter-spacing:-.01em}.tech-admin-card label{display:grid;gap:6px}.tech-admin-card label span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:850;color:var(--text-3)}.tech-admin-card input,.tech-admin-card select,.tech-admin-card textarea{width:100%;border:1px solid var(--border);border-radius:9px;background:var(--surface);color:var(--text);font:inherit;font-size:12px;min-height:40px;padding:0 11px;outline:0}.tech-admin-card textarea{padding-top:10px;resize:vertical}.tech-admin-card input:focus,.tech-admin-card select:focus,.tech-admin-card textarea:focus{border-color:color-mix(in srgb,var(--cyan) 55%,var(--border));box-shadow:0 0 0 3px color-mix(in srgb,var(--cyan) 8%,transparent)}.tech-admin-actions{display:flex;gap:8px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.tech-admin-actions.split{justify-content:flex-start}.danger-inline{border:1px solid color-mix(in srgb,var(--danger) 38%,var(--border));background:color-mix(in srgb,var(--danger) 7%,var(--surface));color:var(--danger);border-radius:9px;min-height:36px;padding:0 11px;font-size:11px;font-weight:850;cursor:pointer}.tech-admin-danger small{color:var(--text-3);font-size:11px;line-height:1.45}.techdoc-manufacturer-head{gap:12px}.techdoc-manufacturer-title strong{line-height:1.25}
@media(max-width:1100px){.tech-admin-grid{grid-template-columns:1fr}}@media(max-width:680px){.tech-admin-panel{padding:14px}.tech-admin-head{align-items:flex-start}.tech-admin-actions{justify-content:stretch}.tech-admin-actions button,.tech-admin-actions .secondary-button,.tech-admin-actions .primary-button{width:100%}}

/* ===== Documentation technique V43 : documents par fabricant ===== */
.techdoc-manufacturer-card-v43 {
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.techdoc-manufacturer-title-v43 {
    padding-bottom: 10px;
    border-bottom: 1px solid var(--border);
}
.techdoc-documents-v43 {
    display: grid;
    gap: 8px;
}
.techdoc-document-row-v43 {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 12px;
    padding: 10px 0;
    border-bottom: 1px solid rgba(148, 163, 184, .18);
}
.techdoc-document-row-v43:last-child { border-bottom: 0; }
.techdoc-document-main-v43 { min-width: 0; display: grid; gap: 3px; }
.techdoc-document-main-v43 span {
    width: fit-content;
    padding: 3px 7px;
    border-radius: 999px;
    background: rgba(18, 186, 194, .10);
    color: #0aa7af;
    font-size: 9px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .08em;
}
.techdoc-document-main-v43 strong {
    font-size: 12px;
    line-height: 1.35;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.techdoc-document-main-v43 small {
    color: var(--muted);
    font-size: 10px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.techdoc-document-actions-v43 {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
    justify-content: flex-end;
}
.techdoc-document-actions-v43 form { margin: 0; }
.secondary-button.compact,
.primary-button.compact,
.danger-inline.compact {
    min-height: 30px;
    padding: 6px 9px;
    border-radius: 8px;
    font-size: 11px;
    line-height: 1;
}
.techdoc-upload-details-v43 {
    margin-top: 2px;
    border-top: 1px solid var(--border);
    padding-top: 10px;
}
.techdoc-upload-details-v43 summary {
    display: flex;
    align-items: center;
    gap: 6px;
    width: fit-content;
    cursor: pointer;
    color: #0aa7af;
    font-size: 12px;
    font-weight: 800;
    list-style: none;
}
.techdoc-upload-details-v43 summary::-webkit-details-marker { display: none; }
.techdoc-inline-upload-v43 {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin-top: 12px;
    padding: 12px;
    border: 1px solid var(--border);
    border-radius: 12px;
    background: var(--bg-soft);
}
.techdoc-inline-upload-v43 label { display: grid; gap: 5px; }
.techdoc-inline-upload-v43 label.full { grid-column: 1 / -1; }
.techdoc-inline-upload-v43 label span {
    color: var(--muted);
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .06em;
}
.techdoc-inline-upload-v43 input,
.techdoc-inline-upload-v43 select {
    width: 100%;
    min-height: 38px;
    border: 1px solid var(--border);
    border-radius: 9px;
    background: var(--panel);
    color: var(--text);
    padding: 8px 10px;
    font: inherit;
    font-size: 12px;
}
.techdoc-inline-upload-v43 button { grid-column: 1 / -1; justify-self: start; }
.techdoc-empty-maker-v43 {
    padding: 10px 0 0;
    margin: 0;
}
@media (max-width: 900px) {
    .techdoc-document-row-v43 { grid-template-columns: 1fr; align-items: start; }
    .techdoc-document-actions-v43 { justify-content: flex-start; }
    .techdoc-inline-upload-v43 { grid-template-columns: 1fr; }
}

/* V44 — Mode hors ligne salarié */
.offline-status-online i{background:var(--green,#22c55e)!important}.offline-status-offline{color:#b45309;background:#fff7ed;border-color:#fed7aa}.offline-status-offline i{background:#f97316!important}.offline-toast{position:fixed;right:22px;bottom:22px;z-index:5000;max-width:360px;padding:12px 14px;border-radius:12px;background:#111827;color:#fff;box-shadow:0 18px 45px rgba(15,23,42,.2);font-size:13px;line-height:1.35;opacity:0;transform:translateY(12px);transition:.22s ease}.offline-toast.show{opacity:1;transform:translateY(0)}.offline-toast.success{background:#065f46}.offline-toast.danger{background:#991b1b}.offline-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.offline-big-status{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;border:1px solid var(--border);font-size:12px;font-weight:700;background:var(--surface);color:var(--text-2)}.offline-big-status:before{content:"";width:8px;height:8px;border-radius:99px;background:#94a3b8}.offline-big-status.is-online:before{background:#16a34a}.offline-big-status.is-offline:before{background:#f97316}.offline-dashboard-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:18px 0}.offline-stat-card{display:grid;gap:4px;padding:18px}.offline-stat-card span{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);font-weight:800}.offline-stat-card strong{font-size:24px;letter-spacing:-.04em;color:var(--text)}.offline-stat-card small{color:var(--text-3);font-size:12px;line-height:1.4}.offline-queue-panel{padding:18px}.offline-panel-actions{display:flex;gap:8px;flex-wrap:wrap}.offline-queue-list{display:grid;gap:8px;margin-top:14px}.offline-queue-row{display:grid;grid-template-columns:minmax(0,1fr) 90px auto;gap:14px;align-items:center;padding:12px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.offline-queue-row strong{font-size:13px}.offline-queue-row small{display:block;color:var(--text-3);font-size:11.5px;margin-top:2px}.offline-queue-row>span{font-size:12px;color:var(--text-3);text-align:right}.offline-empty-state{display:grid;gap:4px;place-items:center;text-align:center;min-height:110px;color:var(--text-3);border:1px dashed var(--border);border-radius:14px;background:var(--surface-2);padding:22px}.offline-empty-state strong{color:var(--text);font-size:14px}.offline-help-card{margin-top:16px;padding:18px}.offline-help-card ul{margin:12px 0 0;padding-left:18px;color:var(--text-2);display:grid;gap:8px;font-size:13px}.offline-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.offline-panel{padding:28px;text-align:center;display:grid;place-items:center;gap:8px}.offline-empty-icon{width:54px;height:54px;display:grid;place-items:center;border-radius:18px;background:linear-gradient(135deg,rgba(7,182,212,.14),rgba(34,197,94,.12));font-size:26px;color:var(--cyan-dark)}.offline-form-note{margin:10px 14px 0;padding:10px 12px;border-radius:10px;background:rgba(7,182,212,.07);border:1px solid rgba(7,182,212,.16);font-size:12px;color:var(--text-2)}.offline-cache-link{border:0;background:transparent;padding:0;margin-left:10px;cursor:pointer}.offline-cache-link:disabled{opacity:.65;cursor:default}.emp38-doc-actions{gap:6px;flex-wrap:wrap}.text-warning{color:#b45309!important}@media(max-width:900px){.offline-dashboard-grid{grid-template-columns:1fr}.offline-hero{display:grid}.offline-queue-row{grid-template-columns:1fr;gap:8px}.offline-queue-row>span{text-align:left}.offline-toast{left:14px;right:14px;bottom:14px;max-width:none}}

/* V46 — Maintenance app */
.appmaint-heading{align-items:flex-start}.appmaint-message{margin:14px 0;padding:13px 15px;border-radius:14px;font-size:13px;font-weight:750}.appmaint-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:18px 0}.appmaint-card{border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:var(--shadow);padding:18px;display:grid;gap:16px}.appmaint-card-head{display:flex;align-items:flex-start;gap:13px;border-bottom:1px solid var(--border);padding-bottom:14px}.appmaint-card-head>span{width:40px;height:40px;border-radius:14px;background:linear-gradient(135deg,rgba(18,186,194,.13),rgba(79,174,115,.11));display:grid;place-items:center;color:var(--cyan-dark);flex:0 0 auto}.appmaint-card-head h2{font-size:17px;margin:1px 0 4px;letter-spacing:-.025em}.appmaint-card-head p{margin:0;color:var(--text-3);font-size:12px;line-height:1.45}.appmaint-form{display:grid;gap:12px}.appmaint-form>label:not(.appmaint-choice):not(.appmaint-check){display:grid;gap:6px}.appmaint-form>label>span{font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3)}.appmaint-form input[type=file]{border:1px dashed color-mix(in srgb,var(--cyan) 30%,var(--border));border-radius:14px;background:color-mix(in srgb,var(--cyan) 4%,var(--surface));padding:14px;font-size:12px;color:var(--text-2)}.appmaint-choice{display:grid;grid-template-columns:18px 1fr;gap:10px;align-items:flex-start;padding:13px;border:1px solid var(--border);border-radius:14px;background:var(--surface-2);cursor:pointer}.appmaint-choice input{margin-top:2px}.appmaint-choice strong{display:block;font-size:13px;margin-bottom:3px}.appmaint-choice small{display:block;font-size:11px;color:var(--text-3);line-height:1.35}.appmaint-check{display:grid;grid-template-columns:18px 1fr;gap:10px;align-items:start;font-size:12px;color:var(--text-2);line-height:1.45}.appmaint-check input{margin-top:2px}.appmaint-warning{font-size:11px;line-height:1.45;color:var(--text-3)}.appmaint-note{padding:18px;margin:18px 0}.appmaint-note h2,.appmaint-history h2{font-size:17px;margin:0;letter-spacing:-.02em}.appmaint-rules{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px}.appmaint-rules div{border:1px solid var(--border);border-radius:14px;background:var(--surface-2);padding:12px;display:grid;gap:4px}.appmaint-rules strong{font-size:12px}.appmaint-rules span{font-size:11px;color:var(--text-3);line-height:1.4}.appmaint-history{padding:18px;margin-bottom:24px}.appmaint-history-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:12px}.appmaint-history-list{display:grid;gap:8px}.appmaint-history-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--border)}.appmaint-history-row:last-child{border-bottom:0}.appmaint-history-row strong{font-size:13px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.appmaint-history-row small{display:block;color:var(--text-3);font-size:11px;margin-top:3px}.appmaint-history-row>span{font-size:11px;color:var(--text-3);font-weight:800;text-transform:uppercase;letter-spacing:.06em}@media(max-width:980px){.appmaint-grid{grid-template-columns:1fr}.appmaint-rules{grid-template-columns:1fr 1fr}}@media(max-width:620px){.appmaint-rules{grid-template-columns:1fr}.appmaint-card{padding:15px}.appmaint-history-row{grid-template-columns:1fr}.appmaint-history-row>span{text-align:left}}
