@import"https://fonts.googleapis.com/css2?family=Barlow:wght@400;500;600;700;800&family=Barlow+Condensed:wght@600;700;800&family=Inter:wght@400;500;600&display=swap";:root{--red: #D32F2F;--red-dark: #B71C1C;--red-light: #FFEBEE;--red-mid: #EF5350;--bg: #F5F6F8;--surface: #FFFFFF;--surface-2: #F0F1F4;--border: #E0E2E8;--text: #1A1D23;--text-2: #4A5060;--text-3: #8A90A0;--sidebar-bg: #111318;--sidebar-text: #C8CAD4;--sidebar-active: #D32F2F;--sidebar-hover: #1E2128;--header-h: 60px;--sidebar-w: 260px;--radius: 8px;--shadow: 0 1px 4px rgba(0,0,0,.08), 0 2px 12px rgba(0,0,0,.04);--shadow-lg: 0 4px 24px rgba(0,0,0,.12);--font-head: "Barlow Condensed", "Barlow", sans-serif;--font-body: "Inter", "Barlow", sans-serif}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;font-family:var(--font-body);background:var(--bg);color:var(--text)}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.login-bg-photo{position:fixed;top:0;right:0;bottom:0;left:0;background-image:url(https://images.pexels.com/photos/36288093/pexels-photo-36288093.jpeg?auto=compress&cs=tinysrgb&h=650&w=940);background-size:cover;background-position:center 30%;animation:subtleZoom 20s ease-in-out infinite alternate;z-index:0}@keyframes subtleZoom{0%{transform:scale(1)}to{transform:scale(1.08)}}.login-bg-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,#0a0a0ab8,#1e0a0a99,#8c0f0f8c);z-index:1}.login-bg-grid{position:fixed;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:52px 52px;z-index:2;pointer-events:none}.login-center{position:relative;z-index:10;display:flex;flex-direction:column;align-items:center;gap:24px;width:100%;max-width:460px;padding:20px 16px;animation:fadeUp .7s ease both}.login-brand{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center}.login-brand-logo{height:62px;object-fit:contain;filter:drop-shadow(0 3px 14px rgba(0,0,0,.55));animation:fadeDown .6s ease both}.login-brand-sep{width:40px;height:3px;background:var(--red);border-radius:2px;opacity:.9}.login-brand-tagline{font-family:var(--font-head);font-size:.8rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#fff9}.login-card{width:100%;background:#fffffff5;border-radius:16px;padding:40px 40px 32px;box-shadow:0 8px 40px #00000059,0 1px #fffc inset;border:1px solid rgba(255,255,255,.6);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);animation:fadeUp .65s .1s ease both}.login-card:before{content:"";display:block;height:4px;background:linear-gradient(90deg,var(--red),var(--red-mid));border-radius:4px 4px 0 0;margin:-40px -40px 32px}.login-card-header{margin-bottom:28px}.login-card-title{font-family:var(--font-head);font-size:1.9rem;font-weight:800;color:var(--text);letter-spacing:.02em;line-height:1;text-transform:uppercase}.login-card-sub{font-size:.85rem;color:var(--text-3);margin-top:6px}.login-form{width:100%;display:flex;flex-direction:column;gap:16px}.form-group{display:flex;flex-direction:column;gap:5px}.form-group label{font-size:.75rem;font-weight:700;color:var(--text-2);text-transform:uppercase;letter-spacing:.08em}.form-group input{padding:12px 14px;border:1.5px solid var(--border);border-radius:var(--radius);font-size:.95rem;font-family:var(--font-body);color:var(--text);background:var(--surface);transition:border-color .2s,box-shadow .2s;outline:none}.form-group input:focus{border-color:var(--red);box-shadow:0 0 0 3px #d32f2f1a}.btn-login{margin-top:8px;padding:14px;background:linear-gradient(135deg,var(--red) 0%,#c62828 100%);color:#fff;border:none;border-radius:var(--radius);font-size:.95rem;font-weight:700;font-family:var(--font-head);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;width:100%;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 4px 18px #d32f2f61;transition:box-shadow .2s,transform .15s,background .2s}.btn-login:hover:not(:disabled){background:linear-gradient(135deg,#c62828,#b71c1c);box-shadow:0 6px 24px #d32f2f80;transform:translateY(-1px)}.btn-login:disabled{opacity:.75;cursor:not-allowed}.btn-arrow{font-size:1.1rem;line-height:1;opacity:.85}.login-spinner{display:inline-block;width:18px;height:18px;border:2.5px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:spin .75s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.login-forgot{text-align:center;margin-top:4px;font-size:.83rem;color:var(--text-3)}.login-forgot a{color:var(--red);text-decoration:none;font-weight:600}.login-forgot a:hover{text-decoration:underline}.login-error{background:var(--red-light);color:var(--red-dark);border:1px solid rgba(211,47,47,.25);border-radius:var(--radius);padding:10px 14px;font-size:.85rem;font-weight:500}.login-demo-hint{margin-top:20px;padding:10px 14px;background:var(--surface-2);border-radius:8px;font-size:.78rem;color:var(--text-3);text-align:center;border:1px dashed var(--border)}.login-demo-hint span{font-weight:700;color:var(--text-2)}.login-badges{display:flex;align-items:center;gap:10px;animation:fadeUp .6s .3s ease both}.login-badge-item{font-size:.72rem;font-weight:600;color:#ffffff80;letter-spacing:.04em}.login-badge-dot{width:3px;height:3px;border-radius:50%;background:#ffffff4d}@media (max-width: 520px){.login-card{padding:32px 24px 24px}.login-card:before{margin:-32px -24px 24px}.login-center{max-width:100%}}.app-shell{display:flex;height:100vh;overflow:hidden}.sidebar{width:var(--sidebar-w);flex-shrink:0;background:#fff;border-right:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden;position:relative;z-index:100;transition:width .25s ease;box-shadow:1px 0 8px #0000000a}.sidebar.collapsed{width:64px}.sidebar-logo{padding:20px 16px 16px;display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--border);flex-shrink:0;min-height:70px;background:#fff}.sidebar-logo--collapsed{padding:16px 10px;min-height:62px}.sidebar-logo-img{height:38px;width:auto;object-fit:contain;display:block;transition:height .25s ease}.sidebar.collapsed .sidebar-logo-img{height:26px}.sidebar-scroll{flex:1;overflow-y:auto;overflow-x:hidden;padding:6px 0 16px}.sidebar-scroll::-webkit-scrollbar{width:3px}.sidebar-scroll::-webkit-scrollbar-track{background:transparent}.sidebar-scroll::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.sidebar-section-label{padding:14px 16px 4px;font-size:.62rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text-3);white-space:nowrap;overflow:hidden}.nav-item{display:flex;align-items:center;gap:9px;padding:8px 12px 8px 14px;margin:1px 6px;border-radius:7px;cursor:pointer;color:var(--text-2);font-size:.84rem;font-weight:500;font-family:var(--font-body);transition:background .14s,color .14s,border-color .14s;white-space:nowrap;overflow:hidden;border-left:2px solid transparent;list-style:none;-webkit-user-select:none;user-select:none}.nav-item:hover{background:#fff5f5;color:var(--red);border-left-color:#d32f2f59}.nav-item.active{background:#ffebee;color:var(--red);border-left-color:var(--red);font-weight:600}.nav-item svg{width:15px;height:15px;flex-shrink:0;color:var(--text-3);transition:color .14s}.nav-item:hover svg,.nav-item.active svg{color:var(--red)}.nav-label{overflow:hidden;text-overflow:ellipsis;flex:1}.sidebar-footer{padding:12px 14px;border-top:1px solid var(--border);flex-shrink:0;background:#fff}.sidebar-footer-user{display:flex;align-items:center;gap:10px}.avatar-circle{width:32px;height:32px;border-radius:50%;background:var(--red);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.8rem;flex-shrink:0;font-family:var(--font-head)}.footer-user-info{overflow:hidden;flex:1}.footer-user-name{font-size:.82rem;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.footer-user-role{font-size:.72rem;color:var(--text-3)}.main-area{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}.header{height:var(--header-h);background:var(--surface);border-bottom:1px solid var(--border);display:flex;align-items:center;padding:0 24px;gap:16px;flex-shrink:0;box-shadow:0 1px 3px #0000000a;position:relative;z-index:200}.header-toggle{background:none;border:none;cursor:pointer;color:var(--text-2);padding:6px;border-radius:6px;display:flex;align-items:center;transition:background .15s}.header-toggle:hover{background:var(--surface-2)}.header-breadcrumb{flex:1;display:flex;align-items:center;gap:8px}.header-module{font-family:var(--font-head);font-weight:700;font-size:1.1rem;color:var(--text);letter-spacing:.02em}.header-right{display:flex;align-items:center;gap:8px}.icon-btn{background:none;border:none;cursor:pointer;color:var(--text-2);padding:7px;border-radius:6px;display:flex;align-items:center;transition:background .15s,color .15s;position:relative}.icon-btn:hover{background:var(--surface-2);color:var(--red)}.notif-badge{position:absolute;top:4px;right:4px;width:8px;height:8px;background:var(--red);border-radius:50%;border:1.5px solid var(--surface)}.notif-center-wrap{position:relative;display:flex;align-items:center}.notif-bell-btn{z-index:201}.notif-count-badge{position:absolute;top:0;right:0;min-width:16px;height:16px;padding:0 4px;background:var(--red);color:#fff;font-size:.62rem;font-weight:700;border-radius:999px;border:1.5px solid var(--surface);display:flex;align-items:center;justify-content:center;line-height:1;pointer-events:none}.notif-backdrop-mobile{display:none}.notif-panel{position:absolute;top:calc(100% + 8px);right:0;width:min(420px,calc(100vw - 24px));max-height:min(70vh,560px);background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:0 12px 40px #00000026;z-index:1000;display:flex;flex-direction:column;overflow:hidden}.notif-panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:14px 16px;border-bottom:1px solid var(--border)}.notif-panel-unread{display:block;font-size:.75rem;color:var(--text-3);margin-top:2px}.notif-panel-actions{display:flex;align-items:center;gap:4px}.notif-filters{display:flex;gap:6px;padding:10px 12px;border-bottom:1px solid var(--border);flex-wrap:wrap}.notif-filter-btn{border:1px solid var(--border);background:var(--surface-2);color:var(--text-2);border-radius:999px;padding:4px 12px;font-size:.75rem;cursor:pointer}.notif-filter-btn.active{background:var(--red);border-color:var(--red);color:#fff}.notif-list{overflow-y:auto;flex:1;padding:8px}.notif-empty{padding:24px 16px;text-align:center;color:var(--text-3);font-size:.86rem}.notif-item{display:flex;gap:10px;padding:10px 12px;border-radius:8px;margin-bottom:6px;border:1px solid transparent;transition:background .15s}.notif-item.is-unread{background:#f5f9ff;border-color:#bbdefb}.notif-item.is-read{opacity:.85}.notif-item-icon{position:relative;width:32px;height:32px;border-radius:8px;background:var(--surface-2);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--text-2)}.notif-item-alert{position:absolute;top:-2px;right:-2px;color:var(--red)}.notif-item-body{flex:1;min-width:0}.notif-item-title{font-weight:600;font-size:.84rem;margin-bottom:2px}.notif-item-message{font-size:.78rem;color:var(--text-2);line-height:1.35}.notif-item-meta{display:flex;align-items:center;gap:8px;margin-top:6px;font-size:.72rem;color:var(--text-3)}.notif-prio-tag{text-transform:uppercase;font-weight:700;font-size:.62rem;padding:1px 6px;border-radius:4px}.notif-priority-urgent .notif-prio-tag,.notif-priority-urgent.notif-item{border-left:3px solid #C62828}.notif-priority-urgent .notif-prio-tag{background:#ffebee;color:#c62828}.notif-priority-high .notif-prio-tag,.notif-priority-high.notif-item{border-left:3px solid #E65100}.notif-priority-high .notif-prio-tag{background:#fff3e0;color:#e65100}.notif-priority-normal .notif-prio-tag{background:#e3f2fd;color:#1565c0}.notif-priority-low .notif-prio-tag{background:#f5f5f5;color:#757575}.notif-item-actions{display:flex;gap:6px;margin-top:8px;flex-wrap:wrap}@media (max-width: 768px){.notif-backdrop-mobile{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;z-index:999}.notif-panel{position:fixed;top:var(--header-h);right:0;left:0;width:100%;max-height:calc(100vh - var(--header-h));border-radius:0 0 12px 12px}}.header-avatar{width:34px;height:34px;border-radius:50%;background:var(--red);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.82rem;cursor:pointer;font-family:var(--font-head);margin-left:4px;border:none;padding:0}.user-profile-menu{position:relative;margin-left:4px}.user-profile-trigger{display:inline-flex!important;align-items:center;gap:2px;padding-right:2px!important}.user-profile-trigger.is-open{box-shadow:0 0 0 2px #d32f2f40}.user-profile-chevron{opacity:.85;margin-right:2px}.user-profile-dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:260px;max-width:min(320px,calc(100vw - 24px));background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-lg);z-index:1100;padding:8px 0;animation:fadeIn .15s ease}.user-profile-dropdown-head{display:flex;align-items:center;gap:12px;padding:10px 14px 12px}.user-profile-dropdown-avatar{width:40px;height:40px;border-radius:50%;background:var(--red);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.85rem;font-family:var(--font-head);flex-shrink:0}.user-profile-dropdown-meta{min-width:0;display:flex;flex-direction:column;gap:2px}.user-profile-dropdown-meta strong{font-size:.88rem;font-weight:700;color:var(--text);line-height:1.25;word-break:break-word}.user-profile-dropdown-meta>span:not(.user-profile-dropdown-role){font-size:.76rem;color:var(--text-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-profile-dropdown-role{font-size:.7rem!important;font-weight:600;color:var(--red)!important;text-transform:capitalize}.user-profile-dropdown-divider{height:1px;background:var(--border);margin:4px 0}.user-profile-dropdown-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 14px;border:none;background:none;cursor:pointer;font-family:var(--font-body);font-size:.84rem;color:var(--text);text-align:left}.user-profile-dropdown-item:hover{background:var(--surface-2)}.user-profile-dropdown-item.is-danger{color:var(--red)}.user-profile-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:1200;display:flex;align-items:center;justify-content:center;padding:16px}.user-profile-modal{width:100%;max-width:520px;max-height:90vh;overflow-y:auto;padding:20px 22px}.user-profile-modal--sm{max-width:420px}.user-profile-modal-head{display:flex;align-items:center;gap:14px;margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid var(--border)}.user-profile-modal-avatar{width:52px;height:52px;border-radius:50%;background:var(--red);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:1rem;font-family:var(--font-head);flex-shrink:0}.user-profile-modal-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.dashboard-period-label{margin:6px 0 0;font-size:.8rem;font-weight:600;color:var(--text-2)}.dashboard-last-update{margin:4px 0 0;font-size:.72rem;color:var(--text-3);display:flex;align-items:center;gap:8px;flex-wrap:wrap}.dashboard-updated-badge{display:inline-flex;padding:2px 8px;border-radius:999px;background:#e8f5e9;color:#2e7d32;font-size:.68rem;font-weight:700}.dashboard-refreshing-dot{width:6px;height:6px;border-radius:50%;background:var(--red);animation:pulse 1s ease infinite}.dashboard-spin{animation:spin .8s linear infinite}@media (max-width: 768px){.dashboard-page-header{flex-direction:column;align-items:flex-start!important;gap:12px}.user-profile-modal-grid{grid-template-columns:1fr}.user-profile-dropdown{right:-8px}}.page-content{flex:1;overflow-x:hidden;overflow-y:auto;padding:28px;background:var(--bg);max-width:100%;box-sizing:border-box}.page-content::-webkit-scrollbar{width:6px}.page-content::-webkit-scrollbar-track{background:transparent}.page-content::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.page-header{margin-bottom:24px}.page-title{font-family:var(--font-head);font-size:1.7rem;font-weight:800;color:var(--text);letter-spacing:.02em;text-transform:uppercase}.page-subtitle{font-size:.87rem;color:var(--text-3);margin-top:4px}.card{background:var(--surface);border-radius:var(--radius);border:1px solid var(--border);box-shadow:var(--shadow);padding:20px;overflow:hidden}.card-title{font-family:var(--font-head);font-size:1rem;font-weight:700;color:var(--text);text-transform:uppercase;letter-spacing:.05em;margin-bottom:16px;display:flex;align-items:center;gap:8px}.card-title svg{color:var(--red);flex-shrink:0}.stat-grid,.stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px;margin-bottom:24px}.stat-card{background:var(--surface);border-radius:var(--radius);border:1px solid var(--border);padding:20px;display:flex;align-items:flex-start;gap:14px;box-shadow:var(--shadow);transition:box-shadow .2s,transform .2s}.stat-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.stat-icon{width:44px;height:44px;border-radius:10px;background:var(--red-light);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--red)}.stat-icon.blue{background:#e3f2fd;color:#1565c0}.stat-icon.green{background:#e8f5e9;color:#2e7d32}.stat-icon.orange{background:#fff3e0;color:#e65100}.stat-icon.purple{background:#f3e5f5;color:#6a1b9a}.stat-value{font-family:var(--font-head);font-size:1.7rem;font-weight:800;color:var(--text);line-height:1}.stat-label{font-size:.8rem;color:var(--text-3);margin-top:4px;font-weight:500}.stat-delta{font-size:.75rem;margin-top:6px;font-weight:600;display:flex;align-items:center;gap:3px}.stat-delta.up{color:#2e7d32}.stat-delta.down{color:var(--red)}.table-wrap{overflow-x:auto;border-radius:var(--radius)}table{width:100%;border-collapse:collapse;font-size:.875rem}thead tr{background:var(--surface-2);border-bottom:1.5px solid var(--border)}th{text-align:left;padding:10px 14px;font-size:.75rem;font-weight:700;color:var(--text-3);text-transform:uppercase;letter-spacing:.07em;white-space:nowrap}td{padding:11px 14px;color:var(--text);border-bottom:1px solid var(--border);vertical-align:middle}tbody tr:hover{background:#fafbfc}tbody tr:last-child td{border-bottom:none}.btn{display:inline-flex;align-items:center;gap:6px;padding:9px 16px;border-radius:var(--radius);font-size:.875rem;font-weight:600;font-family:var(--font-body);cursor:pointer;border:1.5px solid transparent;transition:all .15s;white-space:nowrap}.btn-primary{background:var(--red);color:#fff;border-color:var(--red)}.btn-primary:hover{background:var(--red-dark);border-color:var(--red-dark)}.btn-secondary{background:var(--surface);color:var(--text);border-color:var(--border)}.btn-secondary:hover{background:var(--surface-2);border-color:var(--text-3)}.btn-ghost{background:none;color:var(--text-2);border-color:transparent}.btn-ghost:hover{background:var(--surface-2);color:var(--text)}.btn-sm{padding:6px 12px;font-size:.8rem}.btn svg{width:15px;height:15px}.badge{display:inline-flex;align-items:center;padding:3px 9px;border-radius:20px;font-size:.75rem;font-weight:600;letter-spacing:.02em}.badge-green{background:#e8f5e9;color:#2e7d32}.badge-red{background:var(--red-light);color:var(--red-dark)}.badge-orange{background:#fff3e0;color:#e65100}.badge-blue{background:#e3f2fd;color:#1565c0}.badge-grey{background:var(--surface-2);color:var(--text-2)}.form-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;margin-bottom:16px}.form-field{display:flex;flex-direction:column;gap:5px}.form-field label{font-size:.8rem;font-weight:600;color:var(--text-2);text-transform:uppercase;letter-spacing:.05em}.form-field input,.form-field select,.form-field textarea{padding:9px 12px;border:1.5px solid var(--border);border-radius:var(--radius);font-size:.9rem;font-family:var(--font-body);color:var(--text);background:var(--surface);transition:border-color .2s;outline:none}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--red)}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px}@media (max-width: 900px){.grid-2,.grid-3{grid-template-columns:1fr}}.flex-between{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.mt-4{margin-top:16px}.mt-6{margin-top:24px}.mb-4{margin-bottom:16px}.gap-2{gap:8px}.flex{display:flex;align-items:center}.divider{border:none;border-top:1px solid var(--border);margin:16px 0}.text-red{color:var(--red)}.text-muted{color:var(--text-3);font-size:.85rem}.text-sm{font-size:.85rem}.font-bold{font-weight:700}.progress-bar-wrap{height:6px;background:var(--surface-2);border-radius:3px;overflow:hidden}.progress-bar-fill{height:100%;background:var(--red);border-radius:3px;transition:width .4s ease}.progress-bar-fill.green{background:#4caf50}.progress-bar-fill.orange{background:#ff9800}@keyframes fadeDown{0%{opacity:0;transform:translateY(-14px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInLeft{0%{transform:translate(-100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideInBottom{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.animate-fade-in{animation:fadeIn .4s ease both}.dash-task-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:199;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:fadeIn .2s ease}.sidebar-overlay.visible{display:block}.sidebar-close-btn{display:none;position:absolute;top:14px;right:12px;background:var(--surface-2);border:none;border-radius:6px;padding:6px;cursor:pointer;color:var(--text-2);z-index:10;transition:background .15s}.sidebar-close-btn:hover{background:var(--border)}@media (max-width: 1024px){:root{--sidebar-w: 230px}.page-content{padding:20px}.stat-grid,.stats-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}.form-row{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}}@media (max-width: 768px){.sidebar{position:fixed;top:0;left:0;height:100%;width:280px!important;z-index:200;transform:translate(-100%);transition:transform .28s cubic-bezier(.25,.46,.45,.94);box-shadow:none}.sidebar.mobile-open{transform:translate(0);box-shadow:4px 0 32px #00000038;animation:none}.sidebar-close-btn{display:flex;align-items:center;justify-content:center}.sidebar-logo{padding:18px 44px 16px 16px}.nav-item{padding:11px 14px;font-size:.9rem;min-height:44px}.nav-item svg{width:18px;height:18px}.sidebar-section-label{padding:16px 16px 5px;font-size:.65rem}.header{padding:0 14px;gap:10px;position:sticky;top:0;z-index:100}.header-toggle{padding:8px;min-width:40px;min-height:40px;border-radius:8px}.header-breadcrumb .text-muted{display:none}.header-breadcrumb>svg{display:none}.header-module{font-size:1rem;letter-spacing:.01em}.header-right{gap:4px}.icon-btn{padding:8px;min-width:36px;min-height:36px}.main-area{overflow:auto}.page-content{padding:14px}.page-title{font-size:1.35rem}.page-subtitle{font-size:.82rem}.stat-grid,.stats-grid{grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:16px}.stat-card{padding:14px 12px;gap:10px}.stat-icon{width:38px;height:38px;border-radius:8px}.stat-value{font-size:1.35rem}.stat-label{font-size:.74rem}.card{padding:14px}.table-wrap{overflow-x:visible;background:transparent;border-radius:0;box-shadow:none}.table-wrap table{min-width:0;width:100%;border-collapse:separate;border-spacing:0 8px}.table-wrap thead{display:none}.table-wrap tbody tr{display:block;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:2px;padding:4px 0;transition:box-shadow .18s}.table-wrap tbody tr:hover{box-shadow:var(--shadow-lg);background:#fafbfc}.table-wrap tbody td{display:flex;align-items:center;justify-content:space-between;padding:7px 14px;font-size:.875rem;border-bottom:1px solid var(--surface-2);min-height:36px}.table-wrap tbody td:last-child{border-bottom:none}.table-wrap tbody td:first-child{padding:10px 14px 8px;font-weight:600;font-size:.92rem;border-bottom:1px solid var(--border);background:var(--surface-2);border-radius:var(--radius) var(--radius) 0 0}.table-wrap tbody td[data-label]:before{content:attr(data-label);font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text-3);white-space:nowrap;margin-right:10px;flex-shrink:0;min-width:90px}.table-wrap tbody td:not([data-label]){justify-content:flex-end;gap:8px;padding-top:8px;padding-bottom:8px}.table-wrap tbody td{white-space:normal!important;word-break:normal;overflow-wrap:anywhere}.table-wrap tbody td[data-label]>*,.table-wrap tbody td[data-label]>div{flex:1;min-width:0;text-align:right;word-break:normal;overflow-wrap:anywhere}.table-wrap tbody td .badge,.table-wrap tbody td span{white-space:nowrap}.table-wrap tbody td:first-child>div{text-align:left}.table-wrap tbody td[data-label=Chantier]{max-width:none!important;overflow:visible!important;text-overflow:clip!important}.table-wrap tbody td[data-label=Chantier]>*{max-width:none!important;overflow:visible!important;white-space:normal!important}th{padding:9px 10px;font-size:.7rem}.btn{min-height:40px;padding:9px 14px;font-size:.875rem}.btn-sm{min-height:34px;padding:6px 10px;font-size:.78rem}.form-row,.grid-2,.grid-3{grid-template-columns:1fr;gap:12px}.flex-between{gap:8px}.page-header{flex-direction:column;align-items:flex-start!important;gap:10px}.form-field input,.form-field select,.form-field textarea{padding:11px 13px;font-size:.95rem;min-height:44px}.form-group input,.form-group select,.form-group textarea{padding:12px 14px;font-size:.95rem;min-height:44px}select{min-height:44px}.card>div[style*="display: flex"][style*=gap],.card>div[style*="display:flex"][style*=gap]{flex-direction:column!important;align-items:stretch!important}.card input[type=text],.card input[placeholder],.card select{width:100%!important;min-width:0!important;flex:none!important}.table-wrap .btn-sm .btn-label{display:none}.table-wrap td .btn-sm,.table-wrap td button{min-width:34px;min-height:34px;padding:6px;border-radius:8px}.page-header .btn-primary,.page-header .btn{width:100%;justify-content:center}.page-header>div[style*="display: flex"] .btn,.page-header>div[style*="display:flex"] .btn{flex:1}[style*="display: flex"][style*=borderBottom]{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}[style*="display: flex"][style*=borderBottom]::-webkit-scrollbar{display:none}.dash-grid,.dash-grid--finance,.dash-grid--activity,[style*="grid-template-columns: repeat(3"]{grid-template-columns:1fr!important}[style*="grid-template-columns: repeat(4"]{grid-template-columns:repeat(2,1fr)!important}[style*="grid-template-columns: 2fr 1fr 1fr"],[style*="grid-template-columns: 1fr 1fr 1fr"],[style*="grid-template-columns: 2fr 1fr"],[style*="grid-template-columns: 3fr 1fr"],[style*="grid-template-columns: 1fr 320px"],[style*="grid-template-columns: 1fr 300px"],[style*="grid-template-columns: 1fr 340px"],[style*="grid-template-columns: 1fr 360px"]{grid-template-columns:1fr!important}.page-content .stat-card{padding:14px}.dash-grid>.card,.dash-grid>.stat-card{min-width:0}.dash-grid svg[viewBox="0 0 130 130"]{width:100px!important;height:100px!important}.dash-grid--projets .card,.dash-grid--rh .card,.dash-grid--activity .card{padding:14px}.dash-task-title{white-space:normal!important;overflow:visible!important;text-overflow:clip!important}.page-content>div>.stat-grid,.page-content>div>.stats-grid{grid-template-columns:repeat(2,1fr)}.dash-grid--activity [style*="display: 'flex'"][style*="gap: 10"]{flex-wrap:wrap}[style*="display: flex"][style*="justifyContent: space-between"][style*=marginTop]{flex-direction:column!important;align-items:center!important;gap:10px!important}}@media (max-width: 480px){.page-content{padding:10px}.finance-module .finance-dash-kpi-grid{grid-template-columns:repeat(2,1fr)!important;gap:8px}.finance-module .finance-kpi-strip .stat-card,.inventaire-module .finance-kpi-strip .stat-card{flex:0 0 min(132px,44vw)}.finance-module .page-title,.inventaire-module .page-title{font-size:1.15rem}.rh-ext-page .finance-kpi-strip .stat-card{flex:0 0 min(132px,44vw)}.rh-ext-page .page-title{font-size:1.15rem}.stat-grid,.stats-grid{grid-template-columns:repeat(2,1fr);gap:8px}.stat-card{padding:12px 10px;gap:8px}.stat-icon{width:34px;height:34px}.stat-value{font-size:1.2rem}.header{padding:0 10px;gap:8px}.header-module{font-size:.92rem}.card{padding:12px}.btn-primary-full{width:100%;justify-content:center}.table-wrap tbody td{padding:6px 12px;font-size:.84rem}.table-wrap tbody td[data-label]:before{min-width:76px;font-size:.65rem}.table-wrap tbody td:first-child{padding:9px 12px 7px;font-size:.88rem}.badge{font-size:.7rem;padding:2px 7px}}.ouv-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:1000;display:flex;align-items:center;justify-content:center;padding:16px;overflow-y:auto}.ouv-modal-box{background:#fff;border-radius:14px;width:100%;max-width:760px;box-shadow:0 8px 48px #00000038;max-height:92vh;display:flex;flex-direction:column;overflow:hidden}.ouv-modal-header{padding:20px 28px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;flex-shrink:0;gap:12px}.ouv-modal-tabs{display:flex;gap:0;border-bottom:1px solid var(--border);padding-left:28px;flex-shrink:0;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.ouv-modal-tabs::-webkit-scrollbar{display:none}.ouv-tab-btn{padding:10px 16px;border:none;border-bottom:2px solid transparent;background:none;cursor:pointer;font-family:var(--font-body);font-size:.875rem;font-weight:500;color:var(--text-2);white-space:nowrap;transition:color .15s,border-color .15s}.ouv-tab-btn:hover{color:var(--text)}.ouv-tab-btn.active{color:var(--red);border-bottom-color:var(--red);font-weight:700}.ouv-modal-body{padding:24px 28px;overflow-y:auto;flex:1}.ouv-identite-grid{display:grid;grid-template-columns:100px 1fr;gap:24px;align-items:start}.ouv-fields-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.ouv-filter-card{padding:14px 16px;margin-bottom:16px}.ouv-filter-bar{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.ouv-search-wrap{position:relative;flex:1 1 200px;min-width:160px}.ouv-search-icon{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--text-3);pointer-events:none}.ouv-search-input{padding:8px 10px 8px 32px;border:1.5px solid var(--border);border-radius:6px;font-size:.85rem;width:100%;outline:none;background:#fff;box-sizing:border-box;font-family:var(--font-body);color:var(--text);transition:border-color .15s}.ouv-search-input:focus{border-color:var(--red)}.ouv-filter-select{padding:8px 10px;border:1.5px solid var(--border);border-radius:6px;font-size:.85rem;background:#fff;cursor:pointer;color:var(--text-3);font-family:var(--font-body);min-height:36px}.ouv-filter-clear{display:flex;align-items:center;gap:4px;color:var(--red)}.ouv-filter-count{margin-left:auto;font-size:.8rem;color:var(--text-3);white-space:nowrap}.ouv-modal-footer{padding:16px 28px;border-top:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;flex-shrink:0;background:#fff}@media (max-width: 768px){[class*=modal-overlay],[class*=modal-backdrop],[class*=overlay]{align-items:flex-end!important;padding:0!important}[class*=modal-container],[class*=modal-box],[class*=modal-content]{width:100%!important;max-width:100%!important;max-height:92vh!important;border-radius:20px 20px 0 0!important;animation:slideInBottom .3s cubic-bezier(.25,.46,.45,.94) both!important;overflow-y:auto!important}.ouv-modal-overlay{align-items:flex-end;padding:0}.ouv-modal-box{border-radius:20px 20px 0 0;max-width:100%;max-height:92vh;animation:slideInBottom .3s cubic-bezier(.25,.46,.45,.94) both}.ouv-modal-header{padding:16px}.ouv-modal-tabs{padding-left:0}.ouv-tab-btn{padding:10px 12px;font-size:.82rem}.ouv-modal-body{padding:16px}.ouv-identite-grid,.ouv-fields-grid{grid-template-columns:1fr}.ouv-scanner-label{display:none}.ouv-modal-footer{padding:12px 16px;flex-wrap:wrap;gap:10px}.ouv-filter-bar{flex-direction:column;align-items:stretch;gap:8px}.ouv-search-wrap{flex:none;min-width:0;width:100%}.ouv-search-input{font-size:.95rem;min-height:44px;padding-top:11px;padding-bottom:11px}.ouv-filter-select{width:100%;font-size:.95rem;min-height:44px}.ouv-filter-count{margin-left:0;text-align:right}}.rh-ext-page{min-width:0}.rh-ext-stat-grid{margin-bottom:16px}.rh-ext-filter-card{margin-bottom:12px;padding:14px 20px}.rh-ext-filter-bar{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.rh-ext-filter-bar select,.rh-ext-filter-bar input[type=date],.rh-ext-filter-bar input[type=search],.rh-ext-filter-bar input[type=text]{padding:7px 12px;border:1.5px solid var(--border);border-radius:var(--radius);font-size:.85rem;font-family:var(--font-body);background:#fff;outline:none;color:var(--text)}.rh-ext-search-wrap{position:relative;flex:1 1 180px;min-width:140px}.rh-ext-search-wrap input{padding-left:34px!important;width:100%;box-sizing:border-box}.rh-ext-filter-btn-end{margin-left:auto}.rh-ext-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:9000;display:flex;align-items:center;justify-content:center;padding:16px}.rh-ext-modal-box{width:100%;max-width:720px;max-height:92vh;overflow-y:auto;padding:24px}.rh-ext-modal-box--sm{max-width:440px}.rh-ext-modal-box--md{max-width:560px}.rh-ext-modal-box--lg{max-width:680px}.rh-ext-modal-box--xl{max-width:960px}.rh-pay-detail-modal{padding:20px 24px 24px}.rh-pay-detail-modal .rh-detail-table-card{padding:16px 14px 12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}.rh-pay-detail-modal .rh-attendance-detail-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:6px}.rh-pay-detail-modal .rh-attendance-detail-scroll table{min-width:820px;width:100%;font-size:.82rem}.rh-pay-detail-modal .rh-attendance-detail-scroll th{white-space:nowrap;font-size:.68rem;letter-spacing:.04em;padding:10px;background:var(--surface-2, #F5F5F5)}.rh-pay-detail-modal .rh-attendance-detail-scroll td{padding:10px;vertical-align:middle;white-space:nowrap}.rh-pay-detail-modal .rh-attendance-detail-scroll td[data-label=Notes]{white-space:normal;max-width:140px;min-width:100px}.rh-pay-detail-modal .rh-att-detail-actions{display:flex;gap:4px;flex-wrap:nowrap;justify-content:flex-end}.rh-pay-detail-modal .rh-att-detail-actions .btn{padding:5px 8px;min-width:32px}.rh-pay-detail-header{position:relative;overflow:hidden;border:1.5px solid var(--border)!important;box-shadow:var(--shadow)}.rh-pay-detail-header:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--red)}.rh-pay-detail-kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.rh-attendance-table--striped tbody tr:nth-child(2n){background:var(--surface-2, #F8F9FA)}.rh-attendance-table--striped tbody tr:hover{background:var(--red-light, #FFF5F5)}@media (max-width: 768px){.rh-pay-detail-kpi-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 480px){.rh-pay-detail-kpi-grid{grid-template-columns:1fr}}.rh-ext-actions{display:flex;gap:4px;flex-wrap:wrap}.rh-ext-action-btn{font-size:.72rem;padding:4px 8px;border:none;border-radius:6px;cursor:pointer;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:4px;white-space:nowrap}.payment-row-actions{display:flex;flex-wrap:wrap;gap:6px;align-items:center;justify-content:flex-end}.payment-row-actions .btn{display:inline-flex;align-items:center;gap:4px;white-space:nowrap;font-size:.78rem}.payment-actions-cell{min-width:280px}@media (max-width: 768px){.payment-row-actions{flex-direction:column;align-items:stretch;width:100%}.payment-row-actions .btn{width:100%;justify-content:center;min-height:40px}.payment-actions-cell{min-width:0}.table-wrap tbody td.payment-actions-cell:before{content:"Actions";font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text-3);align-self:flex-start;margin-bottom:4px}.table-wrap tbody td.payment-actions-cell{flex-direction:column;align-items:stretch}}.rh-ext-totals-bar{display:flex;justify-content:flex-end;margin-top:12px;padding:10px 16px;background:#fff5f5;border-radius:8px;gap:32px}.rh-ext-detail-tabs{display:flex;gap:0;border-bottom:1.5px solid var(--border);margin-bottom:16px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.rh-ext-detail-tabs::-webkit-scrollbar{display:none}.rh-ext-detail-tab-btn{padding:8px 16px;border:none;cursor:pointer;background:none;font-family:var(--font-body);font-size:.875rem;white-space:nowrap;flex-shrink:0;transition:color .15s,border-color .15s}.rh-ext-detail-header-actions{display:flex;gap:8px;flex-shrink:0}.rh-ext-fields-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.rh-ext-toast{position:fixed;bottom:24px;right:24;z-index:9999;max-width:min(380px,calc(100vw - 32px))}@media (max-width: 768px){.rh-ext-col-index{display:none!important}.rh-ext-filter-card{padding:12px 14px}.rh-ext-filter-bar{flex-direction:column;align-items:stretch}.rh-ext-filter-bar select,.rh-ext-filter-bar input[type=date],.rh-ext-filter-bar input[type=search],.rh-ext-filter-bar input[type=text],.rh-ext-search-wrap{width:100%;min-width:0;flex:none}.rh-ext-filter-bar select,.rh-ext-filter-bar input{min-height:44px;font-size:.95rem}.rh-ext-filter-btn-end{margin-left:0;width:100%}.rh-ext-filter-btn-end .btn{width:100%;justify-content:center}.rh-ext-modal-overlay{align-items:flex-end;padding:0}.rh-ext-modal-box{border-radius:20px 20px 0 0!important;max-height:92vh;padding:16px;animation:slideInBottom .3s cubic-bezier(.25,.46,.45,.94) both}.table-wrap tbody td:first-child[data-label]:before{display:none}.table-wrap tbody td.rh-ext-actions-cell{flex-direction:column;align-items:stretch;padding:10px 14px}.table-wrap tbody td.rh-ext-actions-cell:before{content:"Actions";font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text-3);align-self:flex-start;margin-bottom:4px}.rh-ext-actions{flex-direction:column;width:100%}.rh-ext-action-btn{width:100%;min-height:40px;font-size:.82rem!important;padding:8px 12px!important}.rh-ext-totals-bar{flex-direction:column;gap:12px;align-items:stretch}.rh-ext-stat-grid[style*=grid-template-columns]{grid-template-columns:repeat(2,1fr)!important}.rh-ext-detail-header-actions{width:100%;flex-direction:column}.rh-ext-detail-header-actions .btn{width:100%;justify-content:center}.rh-ext-fields-grid{grid-template-columns:1fr}.rh-ext-toast{left:16px;right:16px;bottom:16px}.table-wrap tbody td[data-label=Notes],.table-wrap tbody td[data-label=Description]{white-space:normal!important;max-width:none!important;overflow:visible!important;text-overflow:unset!important}.table-wrap tbody td[data-label="Chef chantier"]:before,.table-wrap tbody td[data-label="Montant sup"]:before,.table-wrap tbody td[data-label="Heures sup"]:before,.table-wrap tbody td[data-label=Sous-traitant]:before{min-width:88px}}.rh-ext-info-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.rh-ext-tab-bar{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:16px}@media (max-width: 768px){.rh-ext-info-grid{grid-template-columns:1fr}.rh-ext-tab-bar{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:4px}.rh-ext-tab-bar .btn{white-space:nowrap;flex-shrink:0}.rh-ext-page .page-header.flex-between>div:first-child{flex-direction:column;align-items:flex-start!important;gap:8px}.rh-ext-page .finance-sub-hide-mobile,.rh-ext-page .rh-ext-hide-mobile{display:none}.rh-ext-page .finance-page-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:100%}.rh-ext-page .finance-page-actions--solo{grid-template-columns:1fr;max-width:160px}.rh-ext-page .finance-page-actions .btn{width:auto!important;flex:none!important;justify-content:center;padding:8px 10px;font-size:.75rem;min-height:38px}.rh-ext-page .finance-page-actions .btn-primary{grid-column:1 / -1;font-size:.82rem}.rh-ext-page .finance-page-actions .btn-secondary,.rh-ext-page .finance-page-actions .btn-ghost:not(.btn-primary){font-size:0;gap:0;padding:8px}.rh-ext-page .finance-page-actions .btn-secondary svg,.rh-ext-page .finance-page-actions .btn-ghost:not(.btn-primary) svg{width:16px;height:16px}.rh-ext-page .stats-grid.finance-kpi-strip,.rh-ext-page .stat-grid.finance-kpi-strip{display:flex!important;flex-wrap:nowrap;overflow-x:auto;gap:10px;margin-bottom:14px;padding-bottom:4px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;grid-template-columns:unset!important}.rh-ext-page .finance-kpi-strip::-webkit-scrollbar{display:none}.rh-ext-page .finance-kpi-strip .stat-card{flex:0 0 min(140px,42vw);scroll-snap-align:start;flex-direction:column;align-items:flex-start;padding:12px 11px;gap:8px;margin:0}.rh-ext-page .finance-kpi-strip .stat-icon{width:32px;height:32px}.rh-ext-page .finance-kpi-strip .stat-value{font-size:.95rem!important;word-break:break-word}.rh-ext-page .finance-kpi-strip .stat-label{font-size:.68rem;line-height:1.25}.rh-ext-page .rh-ext-group-card{padding:12px 14px!important;margin-bottom:10px!important}.rh-ext-page .rh-ext-group-head{margin-bottom:10px!important;padding-bottom:8px!important}.rh-ext-page .rh-ext-group-head-inner>div:first-child>div:first-child{font-size:.92rem!important}.rh-ext-page .rh-ext-group-actions .btn{font-size:0;padding:8px;min-width:36px;min-height:36px;justify-content:center}.rh-ext-page .rh-ext-group-actions .btn svg{width:15px;height:15px}.rh-ext-page .rh-ext-profile-card{padding:14px 16px!important}.rh-ext-page .rh-ext-profile-card h1{font-size:1.15rem!important}.rh-ext-page .rh-ext-table-card{padding:12px 14px!important}.rh-ext-page .rh-ext-table-card .card-title{font-size:.88rem;margin-bottom:10px!important}.rh-ext-page .payment-row-actions{flex-wrap:wrap;gap:6px}.rh-ext-page .payment-row-actions .btn-secondary,.rh-ext-page .payment-row-actions .btn-ghost{font-size:0;padding:8px;min-width:34px;min-height:34px}.rh-ext-page .payment-row-actions .btn-secondary svg,.rh-ext-page .payment-row-actions .btn-ghost svg{width:14px;height:14px}.rh-ext-page .table-wrap tbody td[data-label=CIN],.rh-ext-page .table-wrap tbody td[data-label=Tel],.rh-ext-page .table-wrap tbody td[data-label=Telephone],.rh-ext-page .table-wrap tbody td[data-label=Fonction],.rh-ext-page .table-wrap tbody td[data-label=Chantier],.rh-ext-page .table-wrap tbody td[data-label=Badge],.rh-ext-page .table-wrap tbody td[data-label="Projet / chantier"],.rh-ext-page .table-wrap tbody td[data-label="Chef chantier"],.rh-ext-page .table-wrap tbody td[data-label=Présences],.rh-ext-page .table-wrap tbody td[data-label=Retard],.rh-ext-page .table-wrap tbody td[data-label="Équiv. jours"],.rh-ext-page .table-wrap tbody td[data-label=Date],.rh-ext-page .table-wrap tbody td[data-label=Projet],.rh-ext-page .table-wrap tbody td[data-label="Tarif/h"],.rh-ext-page .table-wrap tbody td[data-label="Heures sup"],.rh-ext-page .table-wrap tbody td[data-label="CIN / Passeport"],.rh-ext-page .table-wrap tbody td[data-label="Projets actifs"],.rh-ext-page .table-wrap tbody td[data-label=Prestations],.rh-ext-page .table-wrap tbody td[data-label="Total payé"],.rh-ext-page .table-wrap tbody td[data-label=Brut],.rh-ext-page .table-wrap tbody td[data-label=Avances],.rh-ext-page .table-wrap tbody td[data-label=Retenues],.rh-ext-page .table-wrap tbody td[data-label=Type],.rh-ext-page .table-wrap tbody td[data-label=Lignes],.rh-ext-page .table-wrap tbody td[data-label=Source],.rh-ext-page .table-wrap tbody td[data-label=Destination],.rh-ext-page .table-wrap tbody td[data-label=Qté],.rh-ext-page .table-wrap tbody td[data-label=Notes]{display:none}.rh-ext-page .table-wrap tbody td{padding:6px 12px;min-height:32px}.rh-ext-page .ouv-filter-card{padding:12px 14px!important}.rh-ext-page .table-wrap tbody td.rh-ext-actions-cell{flex-direction:row;align-items:center;justify-content:flex-end;gap:4px}.rh-ext-page .table-wrap tbody td.rh-ext-actions-cell:before{display:none}.rh-ext-page .table-wrap tbody td.rh-ext-actions-cell .rh-ext-actions{flex-direction:row;flex-wrap:wrap;width:auto;justify-content:flex-end}.rh-ext-page .table-wrap tbody tr.rh-ext-compact-row,.rh-ext-page .table-wrap tbody tr.rh-payroll-row{display:grid;grid-template-columns:1fr;grid-template-rows:auto auto;padding:0}.rh-ext-page .table-wrap tbody tr.rh-ext-compact-row td[data-label=Ouvrier],.rh-ext-page .table-wrap tbody tr.rh-ext-compact-row td[data-label=Sous-traitant],.rh-ext-page .table-wrap tbody tr.rh-payroll-row td[data-label=Ouvrier]{grid-column:1;grid-row:1;border-radius:var(--radius) var(--radius) 0 0!important;min-width:0}.rh-ext-page .table-wrap tbody tr.rh-ext-compact-row td[data-label=Ouvrier] button,.rh-ext-page .table-wrap tbody tr.rh-ext-compact-row td[data-label=Sous-traitant] button,.rh-ext-page .table-wrap tbody tr.rh-payroll-row td[data-label=Ouvrier] button{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.rh-ext-page .table-wrap tbody tr.rh-ext-compact-row td.payment-actions-cell,.rh-ext-page .table-wrap tbody tr.rh-payroll-row td.payment-actions-cell{grid-column:1;grid-row:2;border-bottom:1px solid var(--border);background:var(--surface-2);border-radius:0;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;padding:6px 10px!important;min-height:auto!important;min-width:0;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.rh-ext-page .table-wrap tbody tr.rh-ext-compact-row td.payment-actions-cell::-webkit-scrollbar,.rh-ext-page .table-wrap tbody tr.rh-payroll-row td.payment-actions-cell::-webkit-scrollbar{display:none}.rh-ext-page .table-wrap tbody tr.rh-ext-compact-row td.payment-actions-cell:before,.rh-ext-page .table-wrap tbody tr.rh-payroll-row td.payment-actions-cell:before{display:none!important}.rh-ext-page .table-wrap tbody tr.rh-ext-compact-row td:not([data-label=Ouvrier]):not([data-label=Sous-traitant]):not(.payment-actions-cell),.rh-ext-page .table-wrap tbody tr.rh-payroll-row td:not([data-label=Ouvrier]):not(.payment-actions-cell){grid-column:1 / -1}.rh-ext-page .table-wrap tbody tr.rh-ext-compact-row .payment-row-actions,.rh-ext-page .table-wrap tbody tr.rh-payroll-row .payment-row-actions{flex-direction:row!important;flex-wrap:nowrap!important;align-items:center!important;justify-content:flex-start!important;width:max-content!important;min-width:100%;gap:6px!important}.rh-ext-page .table-wrap tbody tr.rh-ext-compact-row .payment-row-actions .btn,.rh-ext-page .table-wrap tbody tr.rh-payroll-row .payment-row-actions .btn{width:auto!important;min-width:32px!important;min-height:32px!important;padding:6px!important;justify-content:center!important;font-size:0!important;gap:0!important;flex-shrink:0}.rh-ext-page .table-wrap tbody tr.rh-ext-compact-row .payment-row-actions .btn svg,.rh-ext-page .table-wrap tbody tr.rh-payroll-row .payment-row-actions .btn svg{width:14px;height:14px;flex-shrink:0}.rh-ext-page .finance-page-actions--duo{grid-template-columns:1fr 1fr!important;max-width:none!important}.rh-ext-page .finance-page-actions--duo .btn{width:100%!important;min-height:38px}.rh-ext-btn-correction{border:1.5px dashed var(--border)!important;color:var(--text-3)!important}}@media (max-width: 768px){.table-wrap table{min-width:0}[style*="position: sticky"],[style*="position:sticky"]{position:static!important;top:auto!important}[style*="grid-template-columns: 1fr 320px"],[style*="grid-template-columns: 1fr 300px"],[style*="grid-template-columns: 1fr 340px"],[style*="grid-template-columns: 1fr 360px"],[style*="grid-template-columns: 2fr 1fr"],[style*="grid-template-columns: 3fr 1fr"],[style*="display: grid"][style*="grid-template-columns: 1fr 1fr"],[style*="display:grid"][style*="grid-template-columns:1fr 1fr"]{grid-template-columns:1fr!important}[style*="width: 760px"],[style*="width: 720px"],[style*="width: 700px"],[style*="width: 680px"],[style*="maxWidth: 760px"],[style*="maxWidth: 700px"]{width:100%!important;max-width:100%!important;border-radius:20px 20px 0 0!important}[style*="position: fixed"][style*="zIndex: 2000"],[style*="position: fixed"][style*="z-index: 2000"],[style*="position:fixed"][style*="zIndex:2000"]{align-items:flex-end!important;padding:0!important}[style*="position: fixed"][style*="inset: 0"][style*="display: flex"],[style*="position:fixed"][style*="inset:0"][style*="display:flex"]{align-items:flex-end!important}[style*="position: fixed"][style*="zIndex: 9000"],[style*="position: fixed"][style*="zIndex: 1000"],[style*="position:fixed"][style*="zIndex:9000"],[style*="position:fixed"][style*="zIndex:1000"]{align-items:flex-end!important;padding:0!important}}.rh-emp-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:1000;display:flex;align-items:center;justify-content:center;padding:16px}.rh-emp-modal-box{background:#fff;border-radius:14px;padding:32px;width:100%;max-width:540px;box-shadow:0 8px 40px #0003;max-height:90vh;overflow-y:auto}.rh-emp-modal-header{margin-bottom:20px}.rh-emp-modal-title{font-family:var(--font-head);font-weight:800;font-size:1.3rem;text-transform:uppercase;letter-spacing:.03em;margin:0}.rh-emp-modal-close{background:none;border:none;cursor:pointer;color:var(--text-3);padding:4px;display:flex;align-items:center;justify-content:center}.rh-emp-modal-form{display:flex;flex-direction:column;gap:14px}.rh-emp-modal-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.rh-emp-modal-box .form-group label{font-size:.7rem;font-weight:800;color:var(--text-3);text-transform:uppercase;letter-spacing:.08em}.rh-emp-field-error{color:var(--red);font-size:.75rem;margin-top:2px}.rh-emp-modal-footer{display:flex;gap:10px;justify-content:flex-end;margin-top:8px}.rh-emp-spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.rh-emp-field-date::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.7}@media (max-width: 520px){.rh-emp-modal-row{grid-template-columns:1fr}.rh-emp-modal-box{padding:24px 20px;border-radius:14px 14px 0 0;max-height:92vh}.rh-emp-modal-overlay{align-items:flex-end;padding:0}}.rh-emp-docs-drawer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:1100}.rh-emp-docs-drawer{position:fixed;top:0;right:0;bottom:0;width:min(920px,96vw);background:#fff;box-shadow:-8px 0 40px #0000002e;z-index:1101;display:flex;flex-direction:column;animation:rhDocsSlideIn .22s ease}@keyframes rhDocsSlideIn{0%{transform:translate(100%)}to{transform:translate(0)}}.rh-emp-docs-drawer-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:20px 24px;border-bottom:1px solid var(--border);flex-shrink:0}.rh-emp-docs-drawer-title{font-family:var(--font-head);font-weight:800;font-size:1.05rem;text-transform:uppercase;letter-spacing:.03em;margin:6px 0 0;line-height:1.3}.rh-emp-docs-drawer-body{flex:1;overflow-y:auto;padding:20px 24px 28px}.rh-emp-docs-info-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px;padding:14px 16px;background:var(--surface-2);border-radius:10px;border:1px solid var(--border)}.rh-emp-docs-info-label{font-size:.68rem;font-weight:700;color:var(--text-3);text-transform:uppercase;letter-spacing:.03em}.rh-emp-docs-info-value{font-weight:600;font-size:.88rem;margin-top:4px}.rh-emp-docs-stats{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:18px}.rh-emp-docs-stat{flex:1;min-width:120px;padding:12px 14px;border:1px solid var(--border);border-radius:8px;background:#fff}.rh-emp-docs-stat-num{display:block;font-family:var(--font-head);font-weight:800;font-size:1.2rem;color:var(--text-1)}.rh-emp-docs-stat-lbl{display:block;font-size:.72rem;color:var(--text-3);margin-top:2px}.rh-emp-docs-upload-panel{margin-bottom:18px;padding:14px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2)}.rh-emp-docs-dropzone{background:#fff;border:2px dashed var(--border);border-radius:8px;padding:22px 20px;text-align:center;cursor:pointer;transition:border-color .15s,background .15s}.rh-emp-docs-dropzone.rh-emp-docs-drop-active{border-color:var(--red);background:#fff8f8}.rh-emp-docs-section{margin-bottom:20px}.rh-emp-docs-section-title{display:flex;align-items:center;gap:8px;font-family:var(--font-head);font-size:.82rem;font-weight:800;text-transform:uppercase;letter-spacing:.03em;margin:0 0 10px;padding-bottom:8px;border-bottom:1px solid var(--border)}.rh-emp-docs-section-count{margin-left:auto;font-size:.72rem;font-weight:700;color:var(--text-3);background:var(--surface-2);padding:2px 8px;border-radius:99px}.rh-emp-docs-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.rh-emp-docs-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:#fff}.rh-emp-docs-item-icon{color:var(--red);flex-shrink:0}.rh-emp-docs-item-main{flex:1;min-width:0}.rh-emp-docs-item-name{font-weight:600;font-size:.85rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rh-emp-docs-item-meta{display:flex;flex-wrap:wrap;gap:6px;font-size:.72rem;color:var(--text-3);margin-top:3px}.rh-emp-docs-item-actions{display:flex;gap:2px;flex-shrink:0}.rh-emp-docs-empty{font-size:.82rem;color:var(--text-3);padding:8px 4px 4px}.rh-emp-docs-empty-state{text-align:center;padding:32px 16px;border:2px dashed var(--border);border-radius:10px;margin-top:8px}@media (max-width: 768px){.rh-emp-docs-info-grid{grid-template-columns:1fr 1fr}.rh-emp-docs-drawer{width:100vw}}.cin-id-frame{position:relative;width:100%;aspect-ratio:85.6 / 54;min-height:140px;max-height:220px;border:2px solid var(--red);border-radius:10px;background:linear-gradient(180deg,#fafafa,#f0f0f0);overflow:hidden;box-sizing:border-box}.cin-id-frame:before,.cin-id-frame:after{content:"";position:absolute;width:18px;height:18px;border-color:var(--red);border-style:solid;z-index:2;pointer-events:none}.cin-id-frame:before{top:6px;left:6px;border-width:3px 0 0 3px;border-radius:4px 0 0}.cin-id-frame:after{bottom:6px;right:6px;border-width:0 3px 3px 0;border-radius:0 0 4px}.cin-id-frame.has-img{background:#fff;border-style:solid}.cin-id-frame-hint{position:absolute;left:0;right:0;bottom:8px;text-align:center;font-size:.68rem;font-weight:600;color:var(--text-3);padding:0 10px;z-index:1;pointer-events:none}.cin-id-frame-img{width:100%;height:100%;object-fit:contain;display:block;background:#fff}.cin-id-frame-empty{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--text-3);font-size:.8rem}.cin-doc-zone-wrap{display:flex;flex-direction:column;gap:8px;width:100%;min-width:0}.cin-doc-zone{cursor:pointer;border-radius:10px;transition:box-shadow .15s;outline:none}.cin-doc-zone:hover{box-shadow:0 2px 12px #d32f2f1f}.cin-doc-zone:focus-visible{box-shadow:0 0 0 3px #d32f2f40}.cin-doc-zone-frame{min-height:150px}.cin-doc-zone-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;height:100%;min-height:130px;padding:16px 12px;text-align:center;box-sizing:border-box}.cin-doc-zone-icon{width:52px;height:52px;border-radius:50%;background:#ffebee;color:var(--red);display:flex;align-items:center;justify-content:center;flex-shrink:0}.cin-doc-zone-title{display:block;font-family:var(--font-head);font-size:.82rem;font-weight:800;color:var(--text);line-height:1.3}.cin-doc-zone-sub{display:block;font-size:.72rem;color:var(--text-3);line-height:1.35}.cin-doc-zone-hint{display:block;font-size:.65rem;color:var(--text-3);margin-top:2px;line-height:1.3}.cin-doc-zone-rescan{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;gap:6px;background:#00000073;color:#fff;font-size:.78rem;font-weight:700;opacity:0;transition:opacity .15s;z-index:3}.cin-doc-zone.has-img:hover .cin-doc-zone-rescan{opacity:1}.cin-doc-zone-clear{position:absolute;top:8px;right:8px;z-index:4;width:24px;height:24px;border-radius:50%;border:none;background:#0000008c;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;transition:background .15s}.cin-doc-zone-clear:hover{background:var(--red)}.cin-doc-zone-gallery{display:inline-flex;align-items:center;justify-content:center;gap:6px;align-self:flex-start;padding:7px 14px;font-size:.78rem;font-weight:600;font-family:var(--font-body);color:var(--text-2);background:var(--surface);border:1.5px solid var(--border);border-radius:6px;cursor:pointer;transition:border-color .15s,color .15s}.cin-doc-zone-gallery:hover{border-color:var(--red);color:var(--red)}.cin-doc-analyze-btn{width:100%;justify-content:center;min-height:44px;gap:8px}@media (max-width: 768px){.cin-doc-analyze-btn{width:100%}.cin-id-frame{max-height:none;min-height:120px}}@keyframes cin-spin{to{transform:rotate(360deg)}}@keyframes cin-flash{0%{opacity:.9}to{opacity:0}}@keyframes cin-corner-pulse{0%,to{opacity:1}50%{opacity:.5}}.cin-spin{animation:cin-spin .75s linear infinite}.cin-scanner-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;display:flex;align-items:center;justify-content:center;animation:fadeIn .15s ease}.cin-scanner-overlay--dark{background:#000}.cin-scanner-overlay:not(.cin-scanner-overlay--dark){background:#000000b8;padding:16px}.cin-camera-feed{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;display:block}.cin-mask-svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.cin-vf-frame{position:absolute;left:9%;right:9%;top:50%;aspect-ratio:85.6 / 54;transform:translateY(-50%);border-radius:11px;pointer-events:none;z-index:10;transition:box-shadow .3s ease}.cin-vf-frame--ready{box-shadow:0 0 0 2px #4caf50,0 0 16px #4caf5066}.cin-vf-corner{position:absolute;width:24px;height:24px;border-color:var(--red);border-style:solid;transition:border-color .25s}.cin-vf-frame--ready .cin-vf-corner{border-color:#4caf50}.cin-vf-corner--tl{top:-2px;left:-2px;border-width:3px 0 0 3px;border-radius:6px 0 0}.cin-vf-corner--tr{top:-2px;right:-2px;border-width:3px 3px 0 0;border-radius:0 6px 0 0}.cin-vf-corner--bl{bottom:-2px;left:-2px;border-width:0 0 3px 3px;border-radius:0 0 0 6px}.cin-vf-corner--br{bottom:-2px;right:-2px;border-width:0 3px 3px 0;border-radius:0 0 6px}.cin-vf-label{position:absolute;bottom:8px;left:0;right:0;text-align:center;font-family:var(--font-head);font-size:.65rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#ffffffa6;text-shadow:0 1px 4px rgba(0,0,0,.8);pointer-events:none}.cin-capture-flash{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:11px;background:#fff;animation:cin-flash .3s ease forwards;pointer-events:none;z-index:2}.cin-top-bar{position:absolute;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:16px 18px;background:linear-gradient(to bottom,rgba(0,0,0,.78) 0%,transparent 100%);z-index:20}.cin-side-badge-wrap{display:flex;align-items:center;gap:8px}.cin-side-badge{font-family:var(--font-head);font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:4px 12px;border-radius:20px}.cin-side-badge--recto{background:var(--red);color:#fff}.cin-side-badge--verso{background:#1565c0;color:#fff}.cin-step-label{font-size:.68rem;font-weight:600;color:#ffffff80;letter-spacing:.06em}.cin-close-btn{background:#ffffff1f;border:1px solid rgba(255,255,255,.2);border-radius:8px;padding:7px;cursor:pointer;color:#fff;display:flex;align-items:center;justify-content:center;transition:background .15s;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.cin-close-btn:hover{background:#ffffff3d}.cin-indicators{position:absolute;top:calc(50% - min(82vw,740px) * (54 / 85.6) / 2 - 44px);left:0;right:0;display:flex;justify-content:center;gap:20px;z-index:20}.cin-ind{display:flex;align-items:center;gap:5px}.cin-ind-dot{width:8px;height:8px;border-radius:50%;background:#ffffff40;transition:background .25s,box-shadow .25s;flex-shrink:0}.cin-ind.ok .cin-ind-dot{background:#4caf50;box-shadow:0 0 6px #4caf50b3}.cin-ind.warn .cin-ind-dot{background:#ff9800;box-shadow:0 0 6px #ff980099}.cin-ind.off .cin-ind-dot{background:#fff3}.cin-ind-label{font-size:.62rem;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:#ffffff8c}.cin-progress-bar-wrap{position:absolute;top:calc(50% + min(82vw,740px) * (54 / 85.6) / 2 + 14px);left:9%;right:9%;height:3px;background:#ffffff26;border-radius:2px;overflow:hidden;z-index:20}.cin-progress-bar{height:100%;background:var(--red);border-radius:2px;transition:width .1s linear,background .25s}.cin-progress-bar-wrap.ready .cin-progress-bar{background:#4caf50}.cin-hint-bar{position:absolute;bottom:32px;left:0;right:0;display:flex;flex-direction:column;align-items:center;gap:4px;z-index:20;pointer-events:none}.cin-hint-text{font-family:var(--font-head);font-size:.95rem;font-weight:700;color:#fffffff5;text-shadow:0 1px 8px rgba(0,0,0,.9);letter-spacing:.01em}.cin-hint-tap{font-size:.68rem;color:#fff6;text-shadow:0 1px 4px rgba(0,0,0,.7)}.cin-hint-side{font-size:.62rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#ffffff73}.cin-scanner-live{align-items:stretch;justify-content:flex-end}.cin-scanner-actions{position:fixed;left:0;right:0;bottom:0;z-index:50;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px 12px;padding:14px 16px calc(14px + env(safe-area-inset-bottom,0px));background:linear-gradient(to top,rgba(0,0,0,.94) 0%,rgba(0,0,0,.75) 55%,transparent 100%);pointer-events:auto;box-sizing:border-box}.cin-action-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:10px 16px;border-radius:10px;border:1.5px solid rgba(255,255,255,.25);background:#ffffff1a;color:#fff;font-family:var(--font-body);font-size:.8rem;font-weight:700;cursor:pointer;transition:background .15s,transform .1s,opacity .15s;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);-webkit-tap-highlight-color:transparent}.cin-action-btn:active:not(:disabled){transform:scale(.96)}.cin-action-btn:disabled{opacity:.45;cursor:not-allowed}.cin-action-btn--ghost{background:#ffffff14}.cin-action-btn--ghost:hover:not(:disabled){background:#ffffff2e}.cin-action-btn--primary{flex:1 1 100%;max-width:100%;min-height:48px;background:var(--red);border-color:var(--red);box-shadow:0 4px 16px #d32f2f73}.cin-action-btn--primary:hover:not(:disabled){background:var(--red-dark, #c62828)}.cin-action-btn--capture{width:76px;height:76px;min-height:76px;padding:0;border-radius:50%;border:4px solid rgba(255,255,255,.95);background:var(--red);flex-shrink:0;box-shadow:0 4px 28px #d32f2f8c;font-size:0;order:0}.cin-action-btn--capture svg{width:32px;height:32px;flex-shrink:0}.cin-action-btn--capture.ready{background:#4caf50;border-color:#fff;box-shadow:0 4px 28px #4caf508c}.cin-action-btn--capture:hover:not(:disabled){background:#e53935}.cin-action-btn--capture.ready:hover:not(:disabled){background:#43a047}.cin-scanner-live .cin-vf-frame{pointer-events:auto;cursor:pointer;z-index:15}.cin-scanner-live .cin-vf-frame:active{transform:translateY(-50%) scale(.995)}.cin-scanner-live .cin-hint-bar{bottom:calc(118px + env(safe-area-inset-bottom,0px))}.cin-side-switch{position:fixed;left:50%;transform:translate(-50%);bottom:calc(108px + env(safe-area-inset-bottom,0px));z-index:45;display:flex;gap:6px;padding:4px;background:#0000008c;border-radius:10px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.cin-side-switch-btn{padding:8px 18px;border:none;border-radius:7px;background:transparent;color:#ffffffa6;font-size:.78rem;font-weight:700;cursor:pointer}.cin-side-switch-btn.active.recto{background:var(--red);color:#fff}.cin-side-switch-btn.active.verso{background:#1565c0;color:#fff}.cin-capture-thumbs{position:fixed;top:72px;right:12px;z-index:45;display:flex;flex-direction:column;gap:8px}.cin-capture-thumb{display:flex;flex-direction:column;align-items:center;gap:4px;padding:6px;border:2px solid rgba(255,255,255,.25);border-radius:8px;background:#00000080;cursor:pointer}.cin-capture-thumb.active{border-color:var(--red)}.cin-capture-thumb img{width:56px;height:35px;object-fit:cover;border-radius:4px;display:block}.cin-capture-thumb span{font-size:.62rem;font-weight:700;color:#fff;text-transform:uppercase}.cin-camera-feed--off{opacity:0}.cin-camera-placeholder{position:absolute;top:0;right:0;bottom:0;left:0;background:#111;z-index:1}.cin-camera-loading,.cin-camera-blocked{position:absolute;top:0;right:0;bottom:0;left:0;z-index:25;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:24px;text-align:center;color:#fff;background:#000000e0}.cin-camera-blocked p{margin:0;font-size:.88rem;max-width:320px;line-height:1.45}.cin-https-banner{position:absolute;top:56px;left:12px;right:12px;z-index:30;padding:10px 12px;border-radius:8px;background:#ff9800eb;color:#1a1a1a;font-size:.75rem;font-weight:600;text-align:center}.cin-recto-mini{position:absolute;top:72px;left:16px;display:flex;flex-direction:column;align-items:center;gap:3px;z-index:20}.cin-recto-mini img{width:70px;height:44px;object-fit:cover;border-radius:5px;border:1.5px solid rgba(255,255,255,.55);box-shadow:0 2px 10px #0000008c}.cin-recto-mini span{font-size:.58rem;font-weight:700;text-transform:uppercase;color:#4caf50;letter-spacing:.08em;text-shadow:0 1px 4px rgba(0,0,0,.7)}.cin-upload-box{display:flex;flex-direction:column;align-items:center;gap:14px;z-index:20}.cin-upload-title{font-family:var(--font-head);font-size:1.05rem;font-weight:800;color:#fff;text-transform:uppercase;letter-spacing:.05em}.cin-upload-sub{font-size:.8rem;color:#ffffff80}.cin-upload-previews{display:flex;gap:12px;margin-top:6px}.cin-upload-thumb{width:96px;height:60px;object-fit:cover;border-radius:8px;border:1.5px solid rgba(255,255,255,.2);box-shadow:0 2px 14px #0000008c}.cin-scanner-box{background:#fff;border-radius:16px;width:100%;max-width:560px;max-height:92vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #00000059;overflow:hidden;animation:fadeUp .2s ease both}.cin-scanner-header{padding:18px 22px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.cin-scanner-icon-wrap{width:36px;height:36px;border-radius:8px;background:#ffebee;display:flex;align-items:center;justify-content:center;flex-shrink:0}.cin-scanner-close{background:var(--surface-2);border:none;border-radius:8px;padding:7px;cursor:pointer;color:var(--text-2);display:flex;align-items:center;justify-content:center;transition:background .15s}.cin-scanner-close:hover{background:var(--border)}.cin-scanner-body{flex:1;overflow-y:auto;padding:20px 22px;display:flex;flex-direction:column;gap:16px}.cin-scanner-footer{padding:14px 22px;border-top:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;gap:10px;flex-shrink:0;background:#fff}.cin-alert{display:flex;align-items:flex-start;gap:8px;padding:10px 14px;border-radius:8px;font-size:.82rem;font-weight:500;line-height:1.4}.cin-alert--warn{background:#fff3e0;border:1px solid #FFCC80;color:#e65100}.cin-alert--error{background:#ffebee;border:1px solid #FFCDD2;color:var(--red-dark)}.cin-panels{display:grid;grid-template-columns:1fr 1fr;gap:14px}.cin-panel{display:flex;flex-direction:column;gap:8px}.cin-panel-label{display:flex;align-items:center;gap:8px}.cin-panel-badge{font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.09em;padding:2px 8px;border-radius:20px}.cin-panel-badge.recto{background:#ffebee;color:var(--red)}.cin-panel-badge.verso{background:#e3f2fd;color:#1565c0}.cin-panel-sublabel{font-size:.75rem;color:var(--text-3)}.cin-panel-preview{aspect-ratio:85.6 / 54;border:1.5px dashed var(--border);border-radius:8px;background:var(--bg);display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative;transition:border-color .15s}.cin-panel-preview.has-img{border-style:solid;border-color:var(--red);background:#fff}.cin-preview-placeholder{display:flex;flex-direction:column;align-items:center;gap:6px}.cin-preview-placeholder span{font-size:.72rem;color:var(--text-3)}.cin-preview-img{width:100%;height:100%;object-fit:contain;display:block}.cin-preview-clear{position:absolute;top:6px;right:6px;background:#0000008c;border:none;border-radius:50%;width:22px;height:22px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#fff;transition:background .15s}.cin-preview-clear:hover{background:var(--red)}.cin-panel-actions{display:flex;gap:6px}@media (max-width: 768px){.cin-scanner-overlay:not(.cin-scanner-overlay--dark){align-items:flex-end;padding:0}.cin-scanner-box{border-radius:20px 20px 0 0;max-width:100%;max-height:94vh;animation:slideInBottom .28s cubic-bezier(.25,.46,.45,.94) both}.cin-panels{grid-template-columns:1fr}.cin-scanner-header,.cin-scanner-footer{padding:14px 16px}.cin-scanner-body{padding:16px}.cin-scanner-footer{flex-wrap:wrap}.cin-scanner-footer .btn-primary{flex:1;justify-content:center}.cin-indicators{top:calc(50% - 82vw * (54 / 85.6) / 2 - 40px)}.cin-progress-bar-wrap{top:calc(50% + 82vw * (54 / 85.6) / 2 + 12px)}.cin-scanner-live .cin-hint-bar{bottom:calc(128px + env(safe-area-inset-bottom,0px))}.cin-hint-text{font-size:.85rem}.cin-recto-mini img{width:58px;height:36px}.cin-scanner-actions{padding-bottom:calc(18px + env(safe-area-inset-bottom,0px))}.cin-action-btn--capture{width:80px;height:80px;min-height:80px}.cin-side-switch{bottom:calc(118px + env(safe-area-inset-bottom,0px))}}.ocr-toast{position:fixed;bottom:28px;left:50%;transform:translate(-50%);z-index:9999;display:flex;align-items:center;gap:8px;padding:10px 20px;border-radius:24px;background:#2e7d32;color:#fff;font-size:.84rem;font-family:var(--font-body);font-weight:600;box-shadow:0 4px 20px #00000038;pointer-events:none;animation:ocr-toast-in .25s ease;white-space:nowrap}@keyframes ocr-toast-in{0%{opacity:0;transform:translate(-50%) translateY(12px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.docs-layout-with-sidebar{display:grid;grid-template-columns:200px 1fr;gap:16px;align-items:start}.docs-layout-full{display:grid;grid-template-columns:1fr;gap:16px}@media (max-width: 900px){.docs-layout-with-sidebar{grid-template-columns:1fr}.docs-sidebar-card{display:flex!important;flex-direction:row!important;overflow-x:auto!important;overflow-y:hidden!important;gap:6px!important;padding:8px 12px!important;flex-wrap:nowrap!important;-webkit-overflow-scrolling:touch;scrollbar-width:none}.docs-sidebar-card::-webkit-scrollbar{display:none}.docs-sidebar-card>.docs-sidebar-label{display:none!important;flex:none!important;min-height:0!important;padding:0!important;border:none!important}.docs-sidebar-card>div:not(.docs-sidebar-label){flex-shrink:0!important;white-space:nowrap!important;border-radius:20px!important;padding:5px 12px!important;font-size:.8rem!important;border:1.5px solid var(--border)!important;background:var(--surface)!important;min-height:32px!important;display:inline-flex!important;align-items:center!important;gap:5px!important}.docs-sidebar-card>div[data-active=true]{background:var(--red-light)!important;border-color:var(--red)!important;color:var(--red)!important}}@media (max-width: 768px){[style*="grid-template-columns: 1fr 320px"]{grid-template-columns:1fr!important}.page-header .btn{font-size:.78rem}.docs-upload-zone{padding:20px 14px}}.mes-docs-folder-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}.mes-docs-folder-card{position:relative;border:1.5px solid var(--border);border-radius:10px;padding:14px 12px;background:var(--surface);cursor:pointer;transition:border-color .15s,box-shadow .15s;min-height:110px}.mes-docs-folder-card:hover{border-color:var(--red);box-shadow:var(--shadow-sm)}.mes-docs-folder-icon{color:var(--red);margin-bottom:8px}.mes-docs-folder-name{font-weight:700;font-size:.84rem;line-height:1.3;word-break:break-word}.mes-docs-folder-meta{font-size:.7rem;color:var(--text-3);margin-top:4px}.mes-docs-folder-count{font-size:.68rem;color:var(--text-3);margin-top:6px}.mes-docs-folder-actions{position:absolute;top:6px;right:6px;display:flex;gap:2px}.mes-docs-mobile-only{display:none!important}.mes-docs-desktop-only{display:block}.inv-stock-mobile-only{display:none!important}.inv-stock-desktop-only{display:block}.inv-depot-mobile-only{display:none!important}.inv-depot-desktop-only{display:block}.inv-depot-mobile-list{padding:0!important;overflow:hidden}.inv-depot-mobile-row{display:flex;align-items:center;gap:10px;padding:12px 14px;min-height:52px;border-bottom:1px solid var(--border);cursor:pointer}.inv-depot-mobile-row:last-child{border-bottom:none}.inv-depot-mobile-row:active{background:var(--surface-2)}.inv-depot-mobile-icon{width:32px;height:32px;min-width:32px;border-radius:8px;background:var(--red-light);display:flex;align-items:center;justify-content:center;flex-shrink:0}.inv-depot-mobile-body{flex:1;min-width:0}.inv-depot-mobile-body strong{display:block;font-size:.86rem;font-weight:700;color:var(--text);line-height:1.25;word-break:break-word}.inv-depot-mobile-body span{display:block;font-size:.72rem;color:var(--text-3);margin-top:2px}.inv-depot-mobile-btn{padding:4px!important;min-width:32px!important;min-height:32px!important;flex-shrink:0}.rh-ext-desktop-only{display:block}.rh-ext-mobile-only{display:none!important}.rh-ext-mobile-list{padding:0!important;overflow:hidden}.rh-ext-mobile-row{display:flex;align-items:center;gap:8px;padding:10px 12px;min-height:48px;border-bottom:1px solid var(--border)}.rh-ext-mobile-row:last-child{border-bottom:none}.rh-ext-mobile-row-main{flex:1;min-width:0;display:flex;align-items:center;gap:8px;border:none;background:none;padding:0;margin:0;text-align:left;cursor:pointer;font-family:inherit}.rh-ext-mobile-row-main strong{display:block;font-size:.86rem;font-weight:700;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rh-ext-mobile-row-main span{display:block;font-size:.72rem;color:var(--text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rh-ext-mobile-row-actions{display:flex;align-items:center;gap:0;flex-shrink:0}.rh-ext-mobile-row-actions .btn{padding:4px!important;min-width:30px!important;min-height:30px!important;width:30px;height:30px}.rh-ext-group-card{margin-bottom:16px}.rh-ext-group-head{margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--border)}.rh-ext-group-head-inner{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;align-items:flex-start}.rh-ext-group-actions{display:flex;gap:8px;flex-wrap:wrap}.rh-ext-profile-card{padding:24px 28px;margin-bottom:16px}.rh-ext-table-card .card-title{margin-bottom:16px}.inv-stock-mobile-list{padding:0!important;overflow:hidden}.inv-stock-mobile-row{display:flex;align-items:center;gap:8px;padding:8px 10px;min-height:44px;border-bottom:1px solid var(--border)}.inv-stock-mobile-row:last-child{border-bottom:none}.inv-stock-mobile-icon{width:28px;height:28px;min-width:28px;border-radius:6px;background:var(--red-light);color:var(--red);display:flex;align-items:center;justify-content:center;flex-shrink:0}.inv-stock-mobile-name{flex:1;min-width:0;border:none;background:none;padding:0;margin:0;text-align:left;font-family:var(--font-body);font-weight:600;font-size:.84rem;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}.inv-stock-mobile-status{width:8px;height:8px;min-width:8px;border-radius:50%;flex-shrink:0}.inv-stock-mobile-status.is-active{background:#2e7d32}.inv-stock-mobile-status.is-inactive{background:var(--text-3)}.inv-stock-mobile-actions{display:flex;align-items:center;gap:0;flex-shrink:0}.inv-stock-mobile-btn{padding:4px!important;min-width:30px!important;min-height:30px!important;width:30px;height:30px;display:inline-flex!important;align-items:center;justify-content:center}.inv-stock-mobile-btn--danger{color:var(--red)!important}@media (max-width: 768px){.mes-docs-mobile-only{display:flex!important;flex-direction:column;gap:10px}.mes-docs-desktop-only{display:none!important}.inv-stock-mobile-only{display:block!important}.inv-stock-desktop-only{display:none!important}.inv-depot-mobile-only{display:block!important}.inv-depot-desktop-only{display:none!important}.inventaire-module .inv-depot-mobile-row{padding:10px 12px}.inventaire-module .inv-depot-mobile-body strong{font-family:var(--font-head);font-size:.82rem}.rh-ext-mobile-only{display:block!important}.rh-ext-desktop-only{display:none!important}.mes-docs-folder-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}}@media (max-width: 768px){.table-wrap tbody td[data-label=Catégorie]:before,.table-wrap tbody td[data-label=Taille]:before,.table-wrap tbody td[data-label=Accès]:before,.table-wrap tbody td[data-label=Statut]:before,.table-wrap tbody td[data-label="Téléch."]:before{min-width:76px}.table-wrap tbody td[data-label=Département]:before,.table-wrap tbody td[data-label="Uploadé le"]:before,.table-wrap tbody td[data-label=Modifié]:before,.table-wrap tbody td[data-label="Partagé par"]:before,.table-wrap tbody td[data-label="Partagé avec"]:before,.table-wrap tbody td[data-label="Date partage"]:before,.table-wrap tbody td[data-label=Expiration]:before,.table-wrap tbody td[data-label=Permissions]:before,.table-wrap tbody td[data-label=Token]:before,.table-wrap tbody td[data-label="Créé le"]:before,.table-wrap tbody td[data-label=Accès]:before{min-width:90px}.table-wrap tbody td[data-label="Supprimé par"]:before,.table-wrap tbody td[data-label="Date suppression"]:before,.table-wrap tbody td[data-label="Expiration définitive"]:before{min-width:110px}}.finance-kpi-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr))}.finance-kpi-grid .stat-value{font-size:1.25rem;word-break:break-all;overflow-wrap:anywhere;line-height:1.2}.finance-dashboard{display:flex;flex-direction:column;gap:14px}.finance-dashboard-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:48px;color:var(--text-3)}.finance-dash-header{flex-wrap:wrap;gap:10px}.finance-dash-section{margin:0}.finance-dash-kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.finance-dash-kpi{padding:14px 16px!important;box-shadow:0 2px 10px #0000000d;border:1px solid var(--border);transition:transform .15s ease,box-shadow .15s ease}.finance-dash-kpi:hover{transform:translateY(-1px);box-shadow:0 4px 14px #00000014}.finance-dash-kpi-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.finance-dash-kpi-icon{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center}.finance-dash-kpi-value{font-size:1.2rem;font-weight:800;color:var(--text);line-height:1.2;margin-bottom:4px}.finance-dash-kpi-label{font-size:.72rem;color:var(--text-3);text-transform:uppercase;letter-spacing:.03em;margin-bottom:6px}.finance-evolution{font-size:.72rem;font-weight:700}.finance-evolution-up{color:#2e7d32}.finance-evolution-down{color:#c62828}.finance-evolution-ref{font-weight:500;color:var(--text-3)}.finance-dash-card{padding:16px 18px!important;box-shadow:0 2px 10px #0000000a}.finance-dash-card-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid var(--border)}.finance-dash-card-head h2{margin:0;font-size:.92rem;font-weight:800;color:var(--text);text-transform:uppercase;letter-spacing:.02em}.finance-dash-card-sub{font-size:.75rem;color:var(--text-3)}.finance-dash-split{display:grid;grid-template-columns:1fr 1fr;gap:14px}.finance-dash-alert{padding:12px 14px!important;color:var(--red);font-size:.86rem}.finance-chart-empty{padding:28px 16px;text-align:center;color:var(--text-3);font-size:.84rem;background:var(--surface-2);border-radius:8px}.finance-chart-legend{display:flex;gap:18px;justify-content:center;margin-top:8px;font-size:.76rem;color:var(--text-2)}.finance-chart-legend span{display:inline-flex;align-items:center;gap:6px}.finance-chart-legend i{display:inline-block;width:14px;height:3px;border-radius:2px}.finance-treasury-chart{width:100%;max-width:100%;height:auto;display:block}.finance-donut-wrap{display:grid;grid-template-columns:140px 1fr;gap:16px;align-items:start}.finance-donut-svg{width:140px;height:140px}.finance-donut-legend{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.finance-donut-legend li{display:grid;grid-template-columns:10px 1fr auto auto;gap:8px;align-items:center;font-size:.78rem}.finance-donut-dot{width:8px;height:8px;border-radius:50%}.finance-donut-label{color:var(--text-2)}.finance-donut-val{font-weight:700;color:var(--text)}.finance-donut-pct{color:var(--text-3);min-width:32px;text-align:right}.finance-dash-table-wrap{padding:0}.finance-dash-table{font-size:.8rem}.finance-dash-table thead th{background:#3a3a3a;color:#fff;font-size:.72rem;text-transform:uppercase;letter-spacing:.03em}.finance-dash-table tbody tr:nth-child(2n){background:#f8f8f8}.finance-amount-out{color:#c62828;font-weight:700;text-align:right}.finance-timeline{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0}.finance-timeline-item{display:grid;grid-template-columns:36px 1fr auto;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--border)}.finance-timeline-item:last-child{border-bottom:none}.finance-timeline-dot{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center}.finance-timeline-title{font-size:.72rem;font-weight:700;text-transform:uppercase;color:var(--text-3);letter-spacing:.03em}.finance-timeline-desc{font-size:.86rem;font-weight:600;color:var(--text);margin-top:2px}.finance-timeline-meta{display:flex;gap:12px;font-size:.74rem;color:var(--text-3);margin-top:3px}.finance-timeline-amount{font-size:.88rem;font-weight:800;white-space:nowrap}.finance-timeline-amount.in{color:#2e7d32}.finance-timeline-amount.out{color:#c62828}.finance-project-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}.finance-project-item{padding-bottom:12px;border-bottom:1px solid var(--border)}.finance-project-item:last-child{border-bottom:none;padding-bottom:0}.finance-project-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.finance-project-name{font-size:.84rem;font-weight:700;color:var(--text)}.finance-project-pct{font-size:.78rem;font-weight:700;color:var(--text-2)}.finance-progress-track{height:8px;background:#eceef2;border-radius:99px;overflow:hidden;margin-bottom:6px}.finance-progress-fill{height:100%;background:linear-gradient(90deg,#1565c0,#1976d2);border-radius:99px;transition:width .4s ease}.finance-progress-fill.over{background:linear-gradient(90deg,#c62828,#d32f2f)}.finance-project-stats{display:flex;flex-wrap:wrap;gap:10px 16px;font-size:.74rem;color:var(--text-3)}.finance-forecast{display:flex;flex-direction:column;gap:8px}.finance-forecast-row,.finance-forecast-total{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;border-radius:8px;font-size:.84rem}.finance-forecast-row{background:var(--surface-2)}.finance-forecast-row.plus strong{color:#2e7d32}.finance-forecast-row.minus strong{color:#c62828}.finance-forecast-total{margin-top:6px;background:#1a1a1a;color:#fff;font-weight:700}.finance-forecast-total strong{font-size:1rem;color:#fff}.finance-page-header{flex-wrap:wrap;gap:10px}.finance-page-actions{display:flex;gap:8px;flex-wrap:wrap}.finance-page-actions--solo{flex-wrap:nowrap}.finance-toolbar-inner{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.finance-detail-grid{display:grid;grid-template-columns:1fr 300px;gap:16px;align-items:start}.inventaire-module .finance-detail-grid{grid-template-columns:1fr 280px}.finance-detail-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.finance-kpi-strip{margin-bottom:20px}@media (max-width: 1200px){.finance-dash-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 900px){.finance-dash-split{grid-template-columns:1fr}.finance-donut-wrap{grid-template-columns:1fr;justify-items:center}}@media (max-width: 768px){.finance-kpi-grid,.finance-dash-kpi-grid{grid-template-columns:repeat(2,1fr)!important;gap:10px}.finance-dash-kpi-value{font-size:1rem}.finance-timeline-item{grid-template-columns:32px 1fr;grid-template-rows:auto auto}.finance-timeline-amount{grid-column:2;justify-self:start;margin-top:4px}.finance-kpi-grid .stat-value{font-size:1rem}.table-wrap tbody td[data-label=Référence]:before,.table-wrap tbody td[data-label=Date]:before,.table-wrap tbody td[data-label=Mode]:before{min-width:76px}.table-wrap tbody td[data-label=Libellé]:before,.table-wrap tbody td[data-label=Catégorie]:before,.table-wrap tbody td[data-label=Fournisseur]:before,.table-wrap tbody td[data-label=Montant]:before,.table-wrap tbody td[data-label=Statut]:before,.table-wrap tbody td[data-label=Nom]:before,.table-wrap tbody td[data-label=Description]:before{min-width:86px}.table-wrap tbody td[data-label=Bénéficiaire]:before,.table-wrap tbody td[data-label=Comptabilisé]:before,.table-wrap tbody td[data-label="Date prévue"]:before,.table-wrap tbody td[data-label="Date création"]:before,.table-wrap tbody td[data-label="Charges liées"]:before,.table-wrap tbody td[data-label="Mode paiement"]:before{min-width:100px}.finance-detail-grid,.finance-detail-fields,[style*="grid-template-columns: 1fr 300px"],[style*="grid-template-columns: 1fr 1fr"][style*="gap: 12"]{grid-template-columns:1fr!important}.finance-module .finance-sub-hide-mobile{display:none}.finance-module .finance-page-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:100%}.finance-module .finance-page-actions--solo{grid-template-columns:1fr;max-width:160px}.finance-module .finance-page-actions .btn{width:auto!important;flex:none!important;justify-content:center;padding:8px 10px;font-size:.75rem;min-height:38px}.finance-module .finance-page-actions .btn-primary{grid-column:1 / -1;font-size:.82rem}.finance-module .finance-page-actions .btn-secondary,.finance-module .finance-page-actions .btn-ghost:not(.btn-primary){font-size:0;gap:0;padding:8px}.finance-module .finance-page-actions .btn-secondary svg,.finance-module .finance-page-actions .btn-ghost:not(.btn-primary) svg{width:16px;height:16px}.finance-module .finance-toolbar{padding:12px 14px!important}.finance-module .finance-toolbar-inner{flex-direction:column;align-items:stretch;gap:10px}.finance-module .finance-toolbar-inner select,.finance-module .finance-toolbar-inner input{width:100%!important;max-width:none!important}.finance-module .finance-toolbar-filters{display:flex;flex-wrap:wrap;gap:8px}.finance-module .finance-toolbar-filters .btn{flex:1 1 calc(33.333% - 6px);min-width:0;justify-content:center;padding:7px 8px;font-size:.72rem}.finance-module .finance-kpi-strip{display:flex!important;flex-wrap:nowrap;overflow-x:auto;gap:10px;margin-bottom:14px;padding-bottom:4px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none}.finance-module .finance-kpi-strip::-webkit-scrollbar{display:none}.finance-module .finance-kpi-strip .stat-card{flex:0 0 min(148px,42vw);scroll-snap-align:start;flex-direction:column;align-items:flex-start;padding:12px 11px;gap:8px;margin:0}.finance-module .finance-kpi-strip .stat-icon{width:32px;height:32px}.finance-module .finance-kpi-strip .stat-value{font-size:.95rem!important;word-break:break-word}.finance-module .finance-kpi-strip .stat-label{font-size:.68rem;line-height:1.25}.finance-module .finance-kpi-strip .stat-sub{display:none}.finance-module .finance-dash-kpi{padding:11px 12px!important}.finance-module .finance-dash-kpi-top>svg{display:none}.finance-module .finance-evolution-ref{display:none}.finance-module .finance-dash-card{padding:12px 14px!important}.finance-module .finance-dash-card-head{flex-direction:column;align-items:flex-start;gap:4px;margin-bottom:10px;padding-bottom:8px}.finance-module .finance-dash-card-head h2{font-size:.82rem}.finance-module .finance-timeline-item{padding:10px 0;gap:10px}.finance-module .finance-timeline-desc{font-size:.82rem}.finance-module .finance-project-stats{flex-direction:column;gap:4px}.finance-module .finance-form-row{grid-template-columns:1fr!important;gap:12px}.finance-module .table-wrap tbody td[data-label=Catégorie],.finance-module .table-wrap tbody td[data-label=Fournisseur],.finance-module .table-wrap tbody td[data-label=Projet],.finance-module .table-wrap tbody td[data-label=Mode],.finance-module .table-wrap tbody td[data-label=Comptabilisé],.finance-module .table-wrap tbody td[data-label=Description],.finance-module .table-wrap tbody td[data-label="Date création"],.finance-module .table-wrap tbody td[data-label=Contrepartie],.finance-module .table-wrap tbody td[data-label=Paiement]{display:none}.finance-module .table-wrap tbody td{padding:6px 12px;min-height:32px}.finance-module .table-wrap tbody td:first-child{padding:9px 12px 7px}.finance-module .card[style*="background: #E3F2FD"],.finance-module .card[style*="background:#E3F2FD"],.finance-module .card[style*="background: #E8F5E9"],.finance-module .card[style*="background:#E8F5E9"],.finance-module .card[style*="background: #FFF3E0"],.finance-module .card[style*="background:#FFF3E0"]{padding:12px 14px!important;font-size:.82rem}.inventaire-module .finance-sub-hide-mobile{display:none}.inventaire-module .finance-page-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:100%}.inventaire-module .finance-page-actions--solo{grid-template-columns:1fr;max-width:160px}.inventaire-module .finance-page-actions .btn{width:auto!important;flex:none!important;justify-content:center;padding:8px 10px;font-size:.75rem;min-height:38px}.inventaire-module .finance-page-actions .btn-primary{grid-column:1 / -1;font-size:.82rem}.inventaire-module .finance-page-actions .btn-secondary,.inventaire-module .finance-page-actions .btn-ghost:not(.btn-primary){font-size:0;gap:0;padding:8px}.inventaire-module .finance-page-actions .btn-secondary svg,.inventaire-module .finance-page-actions .btn-ghost:not(.btn-primary) svg{width:16px;height:16px}.inventaire-module .depots-page-actions{grid-template-columns:1fr auto;align-items:center}.inventaire-module .depots-page-actions .btn-primary{grid-column:auto;font-size:.82rem}.inventaire-module .depots-page-actions .btn-ghost .btn-label{font-size:.75rem}.inventaire-module .finance-detail-actions{display:flex;align-items:center;gap:8px}.inventaire-module .finance-detail-actions h2{font-size:.92rem;line-height:1.25}.inventaire-module .finance-detail-actions .btn-secondary,.inventaire-module .finance-detail-actions .btn-ghost{font-size:0;padding:8px;min-width:36px;min-height:36px}.inventaire-module .finance-detail-actions .btn-secondary svg,.inventaire-module .finance-detail-actions .btn-ghost svg{width:15px;height:15px}.inventaire-module .finance-toolbar{padding:12px 14px!important}.inventaire-module .finance-toolbar-inner{flex-direction:column;align-items:stretch;gap:10px}.inventaire-module .finance-toolbar-inner select,.inventaire-module .finance-toolbar-inner input{width:100%!important;max-width:none!important}.inventaire-module .finance-kpi-strip{display:flex!important;flex-wrap:nowrap;overflow-x:auto;gap:10px;margin-bottom:14px;padding-bottom:4px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none}.inventaire-module .finance-kpi-strip::-webkit-scrollbar{display:none}.inventaire-module .finance-kpi-strip .stat-card{flex:0 0 min(148px,42vw);scroll-snap-align:start;flex-direction:column;align-items:flex-start;padding:12px 11px;gap:8px;margin:0}.inventaire-module .finance-kpi-strip .stat-icon{width:32px;height:32px}.inventaire-module .finance-kpi-strip .stat-value{font-size:.95rem!important;word-break:break-word}.inventaire-module .finance-kpi-strip .stat-label{font-size:.68rem;line-height:1.25}.inventaire-module .finance-kpi-strip .stat-sub{display:none}.inventaire-module .finance-form-row,.inventaire-module .finance-detail-grid,.inventaire-module .finance-detail-fields,.inventaire-module .inv-alerts-grid{grid-template-columns:1fr!important}.inventaire-module .inv-alerts-grid>div{padding:10px 12px!important}.inventaire-module .inv-stock-mobile-name{white-space:normal;line-height:1.25}.inventaire-module .inv-stock-mobile-name strong{display:block;font-family:var(--font-head);font-size:.76rem;color:var(--red);margin-bottom:1px}.inventaire-module .inv-stock-mobile-name span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inventaire-module .inv-stock-mobile-row{padding:10px 12px;align-items:flex-start}.inventaire-module .inv-stock-mobile-actions{flex-wrap:wrap;max-width:102px;justify-content:flex-end}.inventaire-module .table-wrap tbody td[data-label=Code-barres],.inventaire-module .table-wrap tbody td[data-label=Type],.inventaire-module .table-wrap tbody td[data-label=Catégorie],.inventaire-module .table-wrap tbody td[data-label="État op."],.inventaire-module .table-wrap tbody td[data-label="Lieu stock"],.inventaire-module .table-wrap tbody td[data-label="Dernier mouvement"],.inventaire-module .table-wrap tbody td[data-label="Dernier scan"],.inventaire-module .table-wrap tbody td[data-label=Département],.inventaire-module .table-wrap tbody td[data-label="Type stock"],.inventaire-module .table-wrap tbody td[data-label=Description],.inventaire-module .table-wrap tbody td[data-label=Lignes],.inventaire-module .table-wrap tbody td[data-label=Source],.inventaire-module .table-wrap tbody td[data-label=Destination],.inventaire-module .table-wrap tbody td[data-label=Date],.inventaire-module .table-wrap tbody td[data-label=Dépôt],.inventaire-module .table-wrap tbody td[data-label="Min."],.inventaire-module .table-wrap tbody td[data-label=État],.inventaire-module .table-wrap tbody td[data-label="Valeur u."],.inventaire-module .table-wrap tbody td[data-label="Valeur tot."],.inventaire-module .table-wrap tbody td[data-label=Notes]{display:none}.inventaire-module .table-wrap tbody td{padding:6px 12px;min-height:32px}.inventaire-module .table-wrap tbody td:first-child{padding:9px 12px 7px}}.prospects-header{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:12px}.prospects-kpi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:12px}.prospects-kpi-card{display:flex;align-items:center;gap:12px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;box-shadow:var(--shadow-sm, 0 1px 4px rgba(0,0,0,.07))}.prospects-search-block{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:12px 16px;margin-bottom:12px;display:flex;flex-direction:column;gap:10px;box-shadow:var(--shadow-sm, 0 1px 4px rgba(0,0,0,.07))}.prospects-search-row{position:relative;display:flex;align-items:center}.prospects-search-icon{position:absolute;left:11px;color:var(--text-3);pointer-events:none;flex-shrink:0}.prospects-search-input{width:100%;height:44px;padding:0 12px 0 34px;border:1.5px solid var(--border);border-radius:var(--radius);font-size:.9rem;font-family:var(--font-body);background:#fff;outline:none;transition:border-color .15s;box-sizing:border-box}.prospects-search-input:focus{border-color:var(--red)}.prospects-filters-row{display:grid;grid-template-columns:1fr;gap:8px}.prospects-filter-wrap{position:relative;display:flex;align-items:center}.prospects-filter-icon{position:absolute;left:11px;color:var(--text-3);pointer-events:none}.prospects-filter-select{width:100%;height:40px;padding:0 30px;border:1.5px solid var(--border);border-radius:var(--radius);font-size:.875rem;font-family:var(--font-body);background:#fff;outline:none;cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23999' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.prospects-filter-select:focus{border-color:var(--red)}.prospects-mobile-list{display:none}.prospects-table-desktop{display:block}@media (max-width: 768px){.prospects-header{flex-direction:column;align-items:stretch}.prospects-add-btn{width:100%;justify-content:center;height:46px;font-size:.95rem}.prospects-kpi-grid{grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:10px}.prospects-kpi-card{padding:10px 12px;gap:9px}.prospects-kpi-card .stat-value{font-size:1.3rem}.prospects-kpi-card .stat-label{font-size:.72rem}.prospects-kpi-card .stat-icon{width:32px;height:32px;min-width:32px}.prospects-search-block{padding:10px 12px;gap:8px;margin-bottom:10px}.prospects-search-input{height:44px;font-size:.875rem}.prospects-filters-row{grid-template-columns:1fr}.prospects-filter-select{height:40px}.prospects-table-desktop{display:none!important}.prospects-mobile-list{display:flex;flex-direction:column;gap:8px}.prospect-mobile-card{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);padding:12px 14px;display:flex;flex-direction:column;gap:8px}.pmc-top{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.pmc-identity{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}.pmc-name{font-family:var(--font-head);font-weight:700;font-size:.95rem;color:var(--text-1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pmc-sub{font-size:.75rem;color:var(--text-3)}.pmc-actions{display:flex;gap:4px;flex-shrink:0}.pmc-btn{width:34px!important;height:34px!important;padding:0!important;display:flex!important;align-items:center!important;justify-content:center!important;border-radius:8px!important}.pmc-meta{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.pmc-meta-item{font-size:.78rem;color:var(--text-2)}.pmc-action{background:#f5f5f5;padding:2px 7px;border-radius:4px;font-size:.73rem;color:var(--text-2)}.pmc-date{color:var(--text-3);font-size:.72rem;margin-left:auto}}.logistique-tabs{display:flex;gap:0;margin-bottom:20px;border-bottom:2px solid var(--border);overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.logistique-tabs::-webkit-scrollbar{display:none}.logistique-tab{display:flex;align-items:center;gap:6px;padding:10px 18px;border:none;cursor:pointer;font-family:var(--font-body);font-weight:600;font-size:.875rem;background:none;color:var(--text-2);border-bottom:2px solid transparent;margin-bottom:-2px;transition:color .15s,border-color .15s;white-space:nowrap;flex-shrink:0}.logistique-tab--active{color:var(--red);border-bottom-color:var(--red)}.crm-table-desktop,.crm-table-desktop.crm-table-scroll{display:block;max-width:100%}.crm-mobile-only{display:none!important}.crm-filter-bar.card{padding:12px 16px;overflow:hidden;max-width:100%;box-sizing:border-box}.crm-filter-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;width:100%;min-width:0}.crm-filter-search{flex:1 1 100%;min-width:0;position:relative}.crm-filter-search-icon{position:absolute;left:11px;top:50%;transform:translateY(-50%);color:var(--text-3);pointer-events:none;z-index:1}.crm-filter-input{width:100%;box-sizing:border-box;padding:9px 12px 9px 34px;border:1.5px solid var(--border);border-radius:6px;font-size:.875rem;font-family:var(--font-body);background:#fff;color:var(--text);min-height:40px}.crm-filter-input:focus{outline:none;border-color:var(--red)}.crm-filter-select{flex:1 1 auto;min-width:120px;max-width:100%;padding:9px 10px;border:1.5px solid var(--border);border-radius:6px;font-size:.84rem;font-family:var(--font-body);background:#fff;color:var(--text);min-height:40px;box-sizing:border-box}.crm-filter-select--sm{min-width:130px;flex:0 1 150px}.crm-filter-select--md{min-width:160px;flex:0 1 180px}.crm-filter-count{flex:0 0 auto;margin-left:auto;font-size:.8rem;font-weight:600;color:var(--text-3);white-space:nowrap;padding-left:8px}.crm-compact-list,.crm-doc-list,.crm-client-list{display:flex;flex-direction:column;gap:10px;padding:12px;max-width:100%;box-sizing:border-box}.crm-compact-row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:12px 14px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.crm-compact-main{flex:1;min-width:0}.crm-compact-title{font-weight:700;font-size:.9rem;color:var(--text);margin-bottom:4px;word-break:break-word}.crm-compact-meta{font-size:.8rem;color:var(--text-3);line-height:1.4}.crm-compact-actions,.crm-doc-actions{display:flex;flex-wrap:wrap;gap:4px;flex-shrink:0}.crm-doc-card{padding:14px 16px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.crm-doc-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}.crm-doc-ref{font-family:var(--font-head);font-weight:800;font-size:.82rem;color:var(--red)}.crm-doc-title{font-weight:700;font-size:.92rem;margin-bottom:6px;word-break:break-word}.crm-doc-meta{font-size:.78rem;color:var(--text-3);line-height:1.45;margin-bottom:10px}.crm-doc-footer{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;padding-top:10px;border-top:1px solid var(--border)}.crm-doc-amount{display:block;font-family:var(--font-head);font-weight:800;font-size:1rem;color:var(--text)}.crm-doc-amount-sub{display:block;font-size:.72rem;color:var(--text-3);margin-top:2px}.crm-icon-btn{min-width:36px;min-height:36px;padding:6px 8px!important}.crm-table-desktop .table-wrap{overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch}@media (min-width: 1024px){.crm-filter-row{flex-wrap:nowrap}.crm-filter-search{flex:1 1 auto;min-width:220px;max-width:none}.crm-filter-select,.crm-filter-select--sm,.crm-filter-select--md{flex:0 0 auto;width:auto;max-width:200px}.crm-filter-count{margin-left:auto;flex-shrink:0}.page-content .stat-grid,.page-content .stats-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important}.page-content .stats-grid:has(.stat-card:nth-child(6)){grid-template-columns:repeat(6,minmax(0,1fr))!important}.crm-table-desktop .table-wrap table,.crm-table-desktop .table-wrap thead,.crm-table-desktop .table-wrap tbody tr,.crm-table-desktop .table-wrap tbody td{display:revert}}@media (max-width: 1023px){.crm-table-desktop,.crm-table-desktop.crm-table-scroll{display:none!important}.crm-mobile-only{display:block!important}.crm-compact-list.crm-mobile-only,.crm-doc-list.crm-mobile-only,.crm-client-list.crm-mobile-only{display:flex!important;flex-direction:column}.page-content .stat-grid,.page-content .stats-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.crm-filter-count{margin-left:0;width:100%;text-align:right;padding-top:4px}}@media (max-width: 768px){.page-content .stat-grid,.page-content .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.crm-filter-select,.crm-filter-select--sm,.crm-filter-select--md{flex:1 1 calc(50% - 6px);min-width:0}}@media (max-width: 480px){.page-content .stat-grid,.page-content .stats-grid{grid-template-columns:1fr!important}.crm-filter-select,.crm-filter-select--sm,.crm-filter-select--md{flex:1 1 100%}}.log-desktop-table{display:block}.log-mobile-list{display:none}.log-mobile-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:12px 14px;box-shadow:var(--shadow)}.log-mobile-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:10px}.log-mobile-card-title{font-family:var(--font-head);font-weight:800;font-size:.95rem;color:var(--red);letter-spacing:.03em}.log-mobile-card-sub{font-size:.82rem;color:var(--text-2);margin-top:2px}.log-mobile-card-badges{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.log-mobile-card-meta{display:grid;grid-template-columns:1fr 1fr;gap:6px 12px;margin-bottom:12px;font-size:.82rem}.log-mobile-meta-row{display:flex;flex-direction:column;gap:2px}.log-mobile-meta-row>span:first-child{font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3)}.log-mobile-meta-row>span:last-child{font-weight:600;color:var(--text);word-break:break-word}.log-mobile-card-actions{display:flex;flex-wrap:wrap;gap:8px;padding-top:10px;border-top:1px solid var(--border)}.log-mobile-card-actions .btn{min-height:40px;flex:1 1 auto;justify-content:center}.projets-table-desktop{display:block}.projets-mobile-list{display:none}.projet-mobile-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:12px 14px;box-shadow:var(--shadow)}.projet-mobile-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:10px}.projet-mobile-ref{font-family:var(--font-head);font-weight:800;font-size:.82rem;color:var(--red);letter-spacing:.04em}.projet-mobile-nom{font-weight:700;font-size:.95rem;margin-top:2px}.projet-mobile-client{font-size:.8rem;color:var(--text-2);margin-top:2px}.projet-mobile-badges{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.projet-mobile-retard{font-size:.68rem;color:var(--red);font-weight:700}.projet-mobile-meta{display:grid;grid-template-columns:1fr 1fr;gap:8px 12px;font-size:.82rem;margin-bottom:12px}.projet-mobile-meta>div{display:flex;flex-direction:column;gap:4px}.projet-mobile-meta>div>span:first-child{font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3)}.projet-mobile-actions{display:flex;flex-wrap:wrap;gap:8px;padding-top:10px;border-top:1px solid var(--border)}.projet-mobile-actions .btn{min-height:40px;flex:1 1 calc(50% - 4px);justify-content:center}@media (max-width: 900px){.logistique-module .stat-grid,.projets-module .stat-grid{grid-template-columns:repeat(2,1fr)!important}}@media (max-width: 768px){.logistique-module .page-header,.projets-module .page-header{flex-direction:column;align-items:stretch}.logistique-module .page-header>div:last-child,.projets-module .page-header>div:last-child{width:100%;justify-content:stretch}.logistique-module .page-header .btn,.projets-module .page-header .btn{flex:1;justify-content:center}.logistique-tab{padding:10px 14px;font-size:.8rem}.log-desktop-table,.projets-table-desktop{display:none!important}.log-mobile-list,.projets-mobile-list{display:flex;flex-direction:column;gap:10px;padding:12px}.logistique-module .card[style*="padding: 14px"],.projets-module .card[style*="padding: 14px"]{padding:12px!important}.logistique-module .card>div[style*=flexWrap],.projets-module .card>div[style*=flexWrap]{flex-direction:column;align-items:stretch!important}.logistique-module .card input,.logistique-module .card select,.projets-module .card input,.projets-module .card select{width:100%!important;max-width:none!important;min-width:0!important}}@media (max-width: 480px){.log-mobile-card-meta,.projet-mobile-meta{grid-template-columns:1fr}.projet-mobile-actions .btn,.log-mobile-card-actions .btn{flex:1 1 100%}}.taches-kpi-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))!important}.taches-kpi-grid--compact{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))!important}.taches-kpi-section-label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);margin:0 0 6px 2px}.taches-stat-card--compact .stat-value{font-size:1.35rem!important}.taches-stat-card--compact .stat-label{font-size:.68rem!important}.taches-stat-card--compact .stat-body{padding:10px 8px!important}.taches-toolbar-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}.taches-toolbar-row--tabs-only{justify-content:flex-end}.taches-display-filter{display:flex;align-items:center;gap:8px;font-size:.84rem;font-weight:600;color:var(--text-2)}.taches-view-tabs{display:flex;border:1.5px solid var(--border);border-radius:var(--radius);overflow:hidden}.taches-view-tabs button{padding:6px 12px;border:none;cursor:pointer;background:#fff;color:var(--text-2);font-family:var(--font-body);font-weight:600;font-size:.78rem}.taches-view-tabs button.active{background:var(--red);color:#fff}.taches-relance-btn{background:#fff!important;border:1.5px solid #1565C0!important;color:#1565c0!important;padding:4px 7px!important;min-width:32px}.taches-relance-info{background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:12px 14px;font-size:.84rem;display:flex;flex-direction:column;gap:6px}.taches-relance-info span{font-weight:700;color:var(--text-3);margin-right:6px}.taches-relance-modal{max-width:480px}.taches-confirm-modal{max-width:420px}.taches-empty-inline{text-align:center;padding:20px 0;color:var(--text-3);font-size:.85rem}.taches-dg-empty-hint{text-align:center;color:var(--text-3);font-size:.82rem;margin:4px 0 12px;font-style:italic}.taches-filters{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.taches-list{display:flex;flex-direction:column;gap:8px}.taches-row{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;background:var(--bg);border-radius:8px;border:1px solid var(--border);transition:border-color .15s,box-shadow .15s}.taches-row--urgent-dg{border:2px solid var(--red)!important;box-shadow:0 0 0 1px #d32f2f1f;background:#fffbfb}.taches-row--done{opacity:.78;background:#f9fbf9}.taches-row-check{accent-color:var(--red);width:16px;height:16px;cursor:pointer;margin-top:3px;flex-shrink:0}.taches-row-body{flex:1;min-width:0}.taches-row-title-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.taches-row-title{font-weight:600;font-size:.9rem}.taches-urgent-badge{font-size:.62rem!important;letter-spacing:.04em}.taches-row-desc{font-size:.8rem;color:var(--text-3);margin-top:2px}.taches-dg-note{font-size:.75rem;color:var(--red);margin-top:4px;font-style:italic}.taches-row-meta{display:flex;gap:12px;margin-top:5px;font-size:.77rem;color:var(--text-3);flex-wrap:wrap}.taches-row-meta span{display:inline-flex;align-items:center;gap:3px}.taches-row-actions{display:flex;gap:6px;flex-shrink:0;align-items:center;flex-wrap:wrap;justify-content:flex-end}.taches-dg-push-btn{background:#fff!important;border:1.5px solid var(--red)!important;color:var(--red)!important;padding:4px 7px!important;min-width:32px}.taches-dg-push-btn.is-active{background:var(--red)!important;color:#fff!important}.taches-statut-select:focus{outline:2px solid rgba(211,47,47,.25)}.taches-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:1000;display:flex;align-items:center;justify-content:center;padding:16px}.taches-modal{width:100%;max-width:520px;max-height:90vh;overflow-y:auto;padding:24px}.taches-form-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.badge-purple{background:#f3e5f5;color:#6a1b9a}@media (max-width: 768px){.taches-row{flex-direction:column;gap:10px}.taches-row-actions{width:100%;justify-content:flex-start;padding-top:8px;border-top:1px solid var(--surface-2)}.taches-form-grid-2{grid-template-columns:1fr}.taches-kpi-grid{grid-template-columns:repeat(2,1fr)!important}}.exec-agenda-root{position:relative}.exec-agenda-header-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.exec-agenda-view-toggle{display:flex;border:1.5px solid var(--border);border-radius:var(--radius);overflow:hidden}.exec-agenda-view-toggle button{padding:7px 12px;border:none;cursor:pointer;background:#fff;color:var(--text-2);font-family:var(--font-body);font-weight:600;font-size:.8rem}.exec-agenda-view-toggle button.active{background:var(--red);color:#fff}.exec-agenda-export-menu{position:absolute;right:0;top:100%;margin-top:4px;z-index:50;padding:8px;min-width:160px;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;gap:2px}.exec-agenda-kpi-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))!important}.exec-agenda-kpi .stat-value{font-size:1.35rem}.exec-agenda-nav-bar{display:flex;align-items:center;justify-content:center;gap:12px;padding:10px 16px;margin-bottom:16px}.exec-agenda-period-label{font-family:var(--font-head);font-weight:800;font-size:1rem;min-width:180px;text-align:center;text-transform:uppercase;letter-spacing:.04em}.exec-agenda-notifications{margin-bottom:16px;padding:12px 16px;border-left:3px solid var(--red)}.exec-agenda-notif-row{display:flex;justify-content:space-between;align-items:center;font-size:.82rem;padding:4px 0}.exec-agenda-month-layout{display:grid;grid-template-columns:1fr 300px;gap:16px;align-items:start}.exec-agenda-calendar-card{padding:16px}.exec-agenda-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:4px}.exec-agenda-weekdays div{text-align:center;font-size:.72rem;font-weight:700;color:var(--text-3);text-transform:uppercase}.exec-agenda-month-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}.exec-agenda-day-cell{min-height:72px;padding:4px 5px;border-radius:7px;cursor:pointer;border:1.5px solid transparent;transition:background .12s}.exec-agenda-day-cell:hover{background:var(--surface-2)}.exec-agenda-day-cell.is-today{background:#fff5f5;border-color:#d32f2f40}.exec-agenda-day-cell.is-selected{background:#ffebee;border-color:var(--red)}.exec-agenda-day-cell--empty{min-height:0;cursor:default}.exec-agenda-day-num{font-weight:700;font-size:.82rem;text-align:center;margin-bottom:3px}.exec-agenda-more{font-size:.6rem;color:var(--text-3);text-align:center}.exec-agenda-side-panel{padding:14px}.exec-agenda-side-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.exec-agenda-side-list{display:flex;flex-direction:column;gap:8px;max-height:520px;overflow-y:auto}.exec-agenda-side-item{padding:10px;border-radius:8px;border-left:3px solid}.exec-agenda-side-item-head{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.exec-agenda-week-cards{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.exec-agenda-week-day-card{padding:10px 8px;min-height:120px}.exec-agenda-week-day-card.is-today{border-color:var(--red);box-shadow:0 0 0 1px #d32f2f26}.exec-agenda-week-day-head{text-align:center;font-size:.72rem;margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid var(--border)}.exec-agenda-week-day-head strong{display:block;font-size:.9rem;color:var(--red)}.exec-agenda-week-day-body{display:flex;flex-direction:column;gap:3px}.exec-agenda-day-wrap{padding:12px 16px}.exec-agenda-day-row{display:grid;grid-template-columns:56px 1fr;min-height:52px;border-bottom:1px solid var(--surface-2)}.exec-agenda-day-hour{font-size:.72rem;color:var(--text-3);padding-top:8px;text-align:right;padding-right:10px}.exec-agenda-day-slot{padding:4px 0}.exec-agenda-day-event{display:flex;align-items:center;gap:8px;margin-bottom:4px}.exec-agenda-day-actions{display:flex;gap:2px;flex-shrink:0}.exec-agenda-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;background:#00000073;display:flex;align-items:center;justify-content:center;padding:16px}.exec-agenda-modal{width:100%;max-width:640px;max-height:92vh;overflow-y:auto;padding:0}.exec-agenda-modal-head{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--border);position:sticky;top:0;background:#fff;z-index:1}.exec-agenda-form{padding:20px}.exec-agenda-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.exec-agenda-form-grid label{display:block;font-size:.7rem;font-weight:800;color:var(--text-3);text-transform:uppercase;letter-spacing:.06em;margin-bottom:5px}.exec-agenda-form-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:18px}.exec-agenda-err{color:var(--red);font-size:.7rem;margin-top:3px;display:block}.exec-agenda-toast{position:fixed;bottom:24px;right:24px;z-index:9999;color:#fff;padding:12px 20px;border-radius:10px;box-shadow:0 4px 20px #00000038;font-size:.88rem;font-weight:600;max-width:360px}.exec-agenda-toast--success{background:#2e7d32}.exec-agenda-toast--error{background:#d32f2f}.exec-agenda-toast--info{background:#1565c0}@media (max-width: 900px){.exec-agenda-month-layout{grid-template-columns:1fr}.exec-agenda-side-panel{max-height:none}.exec-agenda-kpi-grid{grid-template-columns:repeat(2,1fr)!important}}@media (max-width: 768px){.exec-agenda-header-actions{width:100%}.exec-agenda-view-toggle{flex:1}.exec-agenda-view-toggle button{flex:1;padding:8px 6px;font-size:.75rem}.exec-agenda-form-grid{grid-template-columns:1fr}.exec-agenda-day-cell{min-height:56px}.exec-agenda-period-label{font-size:.85rem;min-width:0}.exec-agenda-week-cards{grid-template-columns:repeat(2,1fr)}}.crm-devis-menu-trigger{min-width:34px;min-height:34px;padding:4px 8px!important}.crm-devis-actions-menu{background:#fff;border:1px solid var(--border);border-radius:10px;box-shadow:0 12px 36px #00000024;padding:6px;max-height:min(70vh,420px);overflow-y:auto}.crm-devis-menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:9px 12px;border:none;background:transparent;border-radius:7px;font-size:.84rem;font-weight:500;color:var(--text);cursor:pointer;text-align:left}.crm-devis-menu-item:hover:not(.crm-devis-menu-item--disabled){background:var(--bg)}.crm-devis-menu-item--danger{color:var(--red)}.crm-devis-menu-item--disabled{opacity:.45;cursor:not-allowed}.crm-devis-menu-item--statut{justify-content:space-between;font-weight:600}.crm-devis-menu-divider{height:1px;background:var(--border);margin:4px 6px}.crm-devis-menu-statuts{padding:2px 4px 6px}.crm-devis-menu-statut{display:block;width:100%;padding:7px 12px 7px 28px;border:none;background:transparent;border-radius:6px;font-size:.8rem;color:var(--text-2);text-align:left;cursor:pointer}.crm-devis-menu-statut:hover{background:var(--bg)}.crm-devis-menu-statut--active{color:var(--red);font-weight:700;background:#fff5f5}.crm-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:10050;display:flex;align-items:center;justify-content:center;padding:16px}.crm-modal{background:#fff;border-radius:12px;width:100%;max-width:720px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 16px 48px #0000002e;overflow:hidden}.crm-modal-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;border-bottom:1px solid var(--border)}.crm-modal-title{font-family:var(--font-head);font-size:1.05rem;font-weight:800;margin:0}.crm-modal-body{padding:18px 20px;overflow-y:auto}.crm-modal-footer{padding:12px 20px;border-top:1px solid var(--border);display:flex;justify-content:flex-end}.crm-devis-preview-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px 20px;font-size:.86rem}.crm-preview-label{display:block;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);margin-bottom:3px}.crm-preview-section-title{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);margin-bottom:10px}.crm-devis-preview-lines{display:flex;flex-direction:column;gap:8px}.crm-devis-preview-line{padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:#fafafa}.crm-devis-preview-line--titre{background:#f5f5f5;border-left:3px solid var(--red);font-weight:800;text-transform:uppercase;font-size:.82rem;color:var(--red)}.crm-devis-preview-line-head{display:flex;justify-content:space-between;gap:10px;font-weight:600;font-size:.86rem}.crm-devis-preview-line-meta{font-size:.78rem;color:var(--text-3);margin-top:4px}.crm-devis-preview-line-desc{font-size:.78rem;color:var(--text-2);margin-top:6px}.crm-devis-preview-totals{margin-top:18px;padding-top:14px;border-top:2px solid var(--border);display:flex;flex-direction:column;gap:6px;font-size:.88rem}.crm-devis-preview-totals>div{display:flex;justify-content:space-between;gap:12px}.crm-devis-preview-total-ttc{font-family:var(--font-head);font-weight:800;color:var(--red);font-size:1rem;margin-top:4px}:root{font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}html,body{height:100%}body{margin:0}@keyframes slideInRight{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}
