*{box-sizing:border-box;margin:0;padding:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{scrollbar-width:thin;scrollbar-color:rgba(150,150,180,.35) transparent}*::-webkit-scrollbar{width:8px;height:8px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:#9696b459;border-radius:20px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:background .25s ease-in-out}*::-webkit-scrollbar-thumb:hover{background:#9696b48c}table{border-collapse:collapse}th{max-width:150px}td{max-width:150px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-container{position:relative}.password-wrapper{position:relative;display:flex;align-items:center}.password-wrapper input{width:100%;padding-right:40px}.eye-btn{position:absolute;right:12px;background:none;border:none;cursor:pointer;color:#64748b;display:flex;align-items:center;justify-content:center}.eye-btn:hover{color:#7f00ff}.login-card{background:#ffffffe6;padding:2rem 2.5rem;border-radius:12px;box-shadow:0 10px 30px #00000040;max-width:400px;width:100%}.login-card h1{margin-bottom:1.5rem;font-size:1.8rem;text-align:center}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.3rem;font-weight:600}.form-group input{width:100%;padding:.6rem .8rem;border-radius:6px;border:1px solid #ccc;font-size:.95rem}button[type=submit]{width:100%;padding:.7rem;margin-top:.5rem;border-radius:6px;border:none;font-size:1rem;font-weight:600;cursor:pointer;color:#fff;transition:opacity .2s ease}button[type=submit]:disabled{opacity:.7;cursor:not-allowed}.error-message{margin-top:.8rem;color:#c62828;font-size:.9rem}.success-message{margin-top:.8rem;color:#2e7d32;font-size:.9rem}.forgot-panel{margin-top:1.5rem;padding:1.25rem 1.5rem;border-radius:1rem;border:1px solid #e5e7eb;background:#ffffffe6;box-shadow:0 18px 40px #0f172a1f;font-size:.9rem}.forgot-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:.75rem}.forgot-title{font-size:1rem;font-weight:600;color:#111827;margin:0}.forgot-subtitle{margin:.2rem 0 0;color:#6b7280;font-size:.85rem}.forgot-close{border:none;background:transparent;color:#9ca3af;font-size:1.4rem;line-height:1;cursor:pointer;padding:0}.forgot-close:hover{color:#4b5563}.forgot-button{width:100%;margin-top:.5rem;padding:.65rem 1rem;border-radius:999px;border:none;cursor:pointer}.forgot-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 18px 35px #2563eb73}.forgot-button:disabled{opacity:.7;cursor:default}.forgot-message{margin-top:.6rem;font-size:.82rem}.forgot-message-success{color:#059669}.forgot-message-error{color:#b91c1c}.admin-page{min-height:100vh;background:linear-gradient(135deg,#f5f7ff,#f7f9ff 40%,#fff);color:#111827;overflow-x:clip}.admin-header{position:sticky;top:0;z-index:200;display:flex;align-items:center;justify-content:space-between;padding:18px 28px;background:#ffffffbf;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.admin-logo{font-weight:700;letter-spacing:.08em;font-size:1.1rem;color:#f90}.admin-header-right{display:flex;align-items:center;gap:1rem;font-size:.9rem}.role-pill{padding:.3rem .8rem;border-radius:999px;background:linear-gradient(135deg,#3c00ff,#2b00ff);color:#fff;font-size:.75rem;font-weight:600;text-transform:uppercase}.profile{position:relative}.profile-trigger{display:flex;align-items:center;gap:10px;border:1px solid rgba(17,24,39,.1);background:#fff;border-radius:999px;padding:8px 10px;cursor:pointer;box-shadow:0 10px 26px #00000014}.avatar{width:34px;height:34px;border-radius:999px;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:13px;color:#fff;background:radial-gradient(circle at 30% 30%,#111827,#374151)}.avatar.avatar-lg{width:44px;height:44px;font-size:14px}.profile-name{font-size:13px;color:#111827;font-weight:600;max-width:160px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chev{font-size:12px;opacity:.7;transform:translateY(-1px);transition:transform .15s ease}.chev.open{transform:rotate(180deg) translateY(1px)}.profile-menu{position:absolute;top:calc(100% + 10px);right:0;width:320px;background:#fff;border:1px solid rgba(17,24,39,.1);border-radius:18px;box-shadow:0 28px 70px #0000002e;padding:14px}.profile-head{display:flex;gap:12px;align-items:center;padding:6px 6px 10px}.profile-fullname{font-weight:750;color:#111827}.profile-email{margin-top:2px;font-size:12px;color:#11182799}.profile-sep{height:1px;background:#11182714;margin:10px 0}.profile-item{width:100%;display:block;text-align:left;background:transparent;border:0;padding:10px;border-radius:12px;color:#111827d9;font-size:13px;text-decoration:none;cursor:pointer}.profile-item:hover{background:#7c3aed14;color:#111827}.profile-item.danger{color:#dc2626;font-weight:650}.profile-item.danger:hover{background:#dc26261a}.profile-foot{display:flex;flex-direction:column;gap:4px;padding:10px 6px 2px;font-size:11px;color:#1118278c}.admin-user-label{color:#374151}.table-search{display:flex;justify-content:flex-end;margin-top:10px;margin-bottom:15px}.table-search-inner{display:flex;align-items:center;background:#fff;padding:10px 14px;border-radius:14px;box-shadow:4px 4px 10px #00000014,-4px -4px 10px #ffffffe6;transition:all .25s ease;border:1px solid rgba(180,180,255,.15)}.table-search-inner:focus-within{box-shadow:0 0 8px #9650ff80,inset 0 0 4px #9650ff33;border-color:#a883ff}.table-search-icon{color:#9d5bff;margin-right:8px;transition:transform .2s ease,color .2s ease}.table-search-inner:focus-within .table-search-icon{transform:scale(1.12);color:#7d3cff}.table-search-input{border:none;outline:none;font-size:14px;color:#333;width:220px;background:transparent}.table-search-input::placeholder{color:#b9b9c5}.sortable-header{cursor:pointer;-webkit-user-select:none;user-select:none;text-align:left;font-weight:600}.sortable-header-label{display:inline-flex;align-items:center;gap:.25rem}.sortable-header-icon{display:inline-flex;opacity:.25;transition:opacity .15s ease,transform .15s ease}.sortable-header-icon svg{width:12px;height:12px;stroke:currentColor;stroke-width:2;fill:none}.sortable-header-active .sortable-header-icon{opacity:1;color:#7f00ff}.sortable-header.sort-asc .sortable-header-icon svg{transform:translateY(-1px) rotate(0)}.sortable-header.sort-desc .sortable-header-icon svg{transform:translateY(1px) rotate(180deg)}.btn-outline{padding:.45rem 1rem;border-radius:999px;border:1px solid #d1d5db;background:#fff;font-size:.85rem;cursor:pointer;transition:background .15s ease,box-shadow .15s ease,transform .05s}.btn-outline:hover{background:#f3f4ff;box-shadow:0 5px 18px #94a3b84d;transform:translateY(-1px)}.btn-gradient{padding:.7rem 1.6rem;border-radius:999px;border:none;background-image:linear-gradient(90deg,#0037ff,#0004ff);color:#fff;font-weight:600;font-size:.95rem;cursor:pointer;box-shadow:0 15px 30px #7e22ce66;transition:transform .08s ease,box-shadow .08s ease}.btn-gradient:hover{transform:translateY(-1px);box-shadow:0 20px 35px #7e22ce73}.btn-cancel{padding:.7rem 1.6rem;border-radius:999px;border:1px solid #d1d5db;background:#fff;color:#4b5563;font-weight:600;font-size:.95rem;cursor:pointer;transition:transform .08s ease,box-shadow .08s ease,background .15s}.btn-cancel:hover{background:#f9fafb;transform:translateY(-1px);box-shadow:0 5px 15px #94a3b840}.btn-cancel:active{transform:translateY(0);box-shadow:0 2px 8px #94a3b859}.admin-main{width:100%;box-sizing:border-box;margin:0 auto;padding:1rem 3rem 3rem}.admin-title-block{display:flex;align-items:center;justify-content:space-between;gap:2rem;margin:1.5rem 0 2rem}.admin-title{font-size:2rem;font-weight:800;color:#111827}.admin-subtitle{margin-top:.3rem;color:#6b7280;max-width:540px;font-size:.95rem}.stats-section{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.6rem;margin-bottom:1rem}@media(max-width:1100px){.stats-section{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:600px){.stats-section{grid-template-columns:repeat(2,minmax(0,1fr))}}.stat-card{background:#fff;border-radius:12px;padding:.5rem .7rem;box-shadow:0 18px 40px #0f172a0f;border-top:3px solid rgba(126,34,206,.15)}.stat-label{font-size:.4rem;text-transform:uppercase;letter-spacing:.06em;color:#9ca3af;margin-bottom:.2rem}.stat-value{font-size:.8rem;font-weight:700;color:#111827}.card-full{background:#fff;border-radius:24px;padding:1.5rem 1.8rem 1.8rem;margin:auto 0rem 2rem;box-shadow:0 25px 60px #0f172a14}.card-full-header{margin-bottom:1.2rem}.card-title{font-size:1.3rem;font-weight:700;color:#111827;display:flex;align-items:center;gap:.5rem}.card-title:before{font-size:1.1rem}.card-subtitle{font-size:.9rem;color:#6b7280;margin-top:.1rem}.muted-text{font-size:.9rem;color:#9ca3af}.table-wrapper{margin-top:.8rem;overflow-x:auto}.clients-table{width:100%;border-collapse:collapse;font-size:.9rem}.clients-table thead{background:#f9fafb}.clients-table th,.clients-table td{padding:.75rem .9rem;text-align:left;white-space:nowrap}.clients-table th{font-weight:600;color:#4b5563;border-bottom:1px solid #e5e7eb}.clients-table tbody tr:nth-child(2n){background-color:#f9fafb}.clients-table tbody tr:hover{background-color:#eef2ff}.clients-table td{color:#374151}.table-link{color:#7c3aed;font-weight:500;text-decoration:none}.client-page{min-height:100vh;background:linear-gradient(135deg,#f5f7ff,#f7f9ff 40%,#fff);padding:1.5rem 3rem 3rem}.client-top-bar{max-width:1200px;margin:0 auto 1rem}.back-link{font-size:.9rem;color:#4b5563;text-decoration:none}.back-link:hover{text-decoration:underline}.client-hero{max-width:1200px;margin:0 auto 2rem;align-items:stretch}.client-hero-left{align-self:center}.client-title{font-size:2rem;font-weight:800;color:#111827;margin-bottom:.75rem}.client-title span{color:#4c1d95}.client-subtitle{color:#6b7280;font-size:.95rem;line-height:1.6;margin-bottom:1.2rem}.client-benefits{list-style:none;padding:0;margin:0}.client-benefits li{display:flex;align-items:center;gap:.6rem;font-size:.9rem;color:#111827;margin-bottom:.5rem}.client-benefits li:before{content:"✓";display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:999px;background:linear-gradient(135deg,#1500ff,#1500ff);color:#fff;font-size:.75rem}.client-card{background:#fff;border-radius:26px;padding:1.8rem 2rem;box-shadow:0 25px 60px #0f172a1f}.client-card-title{font-size:1.2rem;font-weight:700;color:#111827}.client-card-subtitle{font-size:.9rem;color:#6b7280;margin-top:.2rem;margin-bottom:1.1rem}.client-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem 1rem;margin-bottom:1.3rem}.info-group{display:flex;flex-direction:column;gap:.25rem;font-size:.85rem}.info-group label{color:#9ca3af;font-weight:500}.info-field{border-radius:10px;border:1px solid #e5e7eb;background:#f9fafb;padding:.55rem .75rem;font-size:.9rem;color:#111827;min-height:2.4rem;display:flex;align-items:center}.badge-project{background:#7e22ce0f;border-color:#7e22ce33;color:#6d28d9;font-weight:600}.client-primary-btn,.dossier-primary-btn{width:100%;margin-top:.4rem}.client-dossiers-section{margin:2rem 2rem auto}.modal-overlay{position:fixed;inset:0;background:#0f172a59;display:flex;align-items:center;justify-content:center;z-index:1000}.client-info-modal{background:linear-gradient(to bottom,#f9fafb,#f3f4ff)}.client-header-left{display:flex;align-items:center;gap:1rem}.client-avatar{width:40px;height:40px;border-radius:999px;background:radial-gradient(circle at 30% 20%,#fff,#433aed);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:.9rem;box-shadow:0 6px 15px #7c3aed59}.client-meta-row{display:flex;gap:1rem;flex-wrap:wrap;margin:0 0 1.25rem;padding:.75rem 1rem;border-radius:.75rem;background:#0f172a05}.client-meta-item{display:inline-flex;gap:.35rem;font-size:.8rem;color:#6b7280}.client-meta-label{text-transform:uppercase;letter-spacing:.08em;font-weight:500;color:#9ca3af}.client-meta-value{font-weight:500;color:#4b5563}.client-info-sections{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:1.75rem}.modal-container{background:linear-gradient(180deg,#f9fafb,#eef2ff);border-radius:1.75rem;width:95%;max-height:90vh;overflow-y:auto;box-shadow:0 26px 60px #0f172a73;padding:1.5rem 1.75rem 1.75rem}.modal-container-wide{max-width:900px}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.modal-header h2{margin:0;font-size:1.3rem;font-weight:600;color:#111827}.modal-close{border:none;background:transparent;font-size:1.6rem;line-height:1;cursor:pointer;color:#9ca3af}.modal-close:hover{color:#4b5563}.client-hero-modal{margin-top:.5rem}.client-card-modal{margin:0 auto;max-width:760px}.project-hero-modal{display:flex;flex-direction:column;gap:24px}.project-card-modal{font-size:15px;line-height:1.6;color:#1f2937;background:#f9fafb;border-radius:14px;padding:20px 22px;border:1px solid #e5e7eb;white-space:pre-wrap;word-break:break-word}.project-card-footer{display:flex;justify-content:flex-end}.client-card-footer-right{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.2rem}.modal-header-with-sub{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.modal-title{font-size:1.3rem;font-weight:600;color:#111827}.modal-subtitle{font-size:.9rem;color:#6b7280;margin-top:.25rem}.message-card-modal{margin:0 auto;max-width:760px}.message-hero-modal{margin-top:.5rem}.message-info-modal{background:linear-gradient(to bottom,#f9fafb,#f3f4ff)}.message-header-left{display:flex;align-items:center;gap:1rem}.message-avatar{width:40px;height:40px;border-radius:999px;background:radial-gradient(circle at 30% 20%,#fff,#3d3aed);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:.9rem;box-shadow:0 6px 15px #7c3aed59}.message-meta-row{display:flex;gap:1rem;flex-wrap:wrap;margin:0 0 1.25rem;padding:.75rem 1rem;border-radius:.75rem;background:#0f172a05}.message-meta-item{display:inline-flex;gap:.35rem;font-size:.8rem;color:#6b7280}.message-meta-label{text-transform:uppercase;letter-spacing:.08em;font-weight:500;color:#9ca3af}.message-meta-value{font-weight:500;color:#4b5563}.message-info-sections{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:1.75rem}.message-info-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.message-label{text-transform:uppercase;font-size:.75rem;letter-spacing:.08em;color:#9ca3af;margin-bottom:.2rem}.message-name{font-size:1.1rem;font-weight:600;color:#111827}.message-badges{display:flex;gap:.5rem;flex-wrap:wrap}.message-delete-footer,.message-card-footer-right{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.2rem}.message-card-footer{display:flex;justify-content:flex-end}.form-grid{display:grid;gap:12px}.form-field span{display:block;font-size:12px;opacity:.75;margin-bottom:6px}.form-field input,.form-field select{width:100%;padding:10px 12px;border-radius:12px;border:1px solid rgba(0,0,0,.12);background:#fff}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:10px}.client-info-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.client-label{text-transform:uppercase;font-size:.75rem;letter-spacing:.08em;color:#9ca3af;margin-bottom:.2rem}.client-name{font-size:1.1rem;font-weight:600;color:#111827}.client-badges{display:flex;gap:.5rem;flex-wrap:wrap}.badge{border-radius:999px;padding:.2rem .7rem;font-size:.75rem;font-weight:500}.badge-project{background:#7c3aed14;color:#7c3aed}.badge-light{background:#f3f4f6;color:#4b5563}.client-info-sections{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:1.5rem}.info-section-title{font-size:.9rem;font-weight:600;color:#4b5563;margin-bottom:.5rem}.btn-cancel{padding:.65rem 1.4rem;border-radius:999px;border:1px solid #e5e7eb;background:#fff;font-size:.9rem;font-weight:500;color:#4b5563;cursor:pointer;transition:background .1s ease,transform .08s ease,box-shadow .08s ease,color .1s ease}.btn-cancel:hover{background:#f3f4f6;transform:translateY(-1px);box-shadow:0 8px 16px #94a3b840}.input-error{color:red!important;border:1px solid red!important}.dossier-hero-modal{padding:6px 26px 26px}.info-section{margin-top:8px}.info-section-title{margin:12px 0;font-size:14px;font-weight:700;color:#0f172abf}.dossier-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 18px}.info-group{display:flex;flex-direction:column;gap:8px}.info-group-full{grid-column:1 / -1}.info-group>label{font-size:12px;font-weight:700;color:#0f172a61}.info-input{width:100%;height:44px;padding:0 14px;border-radius:12px;border:1px solid rgba(15,23,42,.12);background:#fff;color:#0f172ae0;font-size:14px;outline:none;box-shadow:inset 0 1px #ffffffe6,0 1px 2px #0206170a}.info-input::placeholder{color:#0f172a59}.info-input:focus{border-color:#7c3aed8c;box-shadow:0 0 0 4px #7c3aed24,inset 0 1px #ffffffe6}.info-textarea{height:auto;padding:12px 14px;resize:vertical;min-height:92px}select.info-input{appearance:auto;background-color:#fff}.info-choice{display:flex;gap:14px;height:44px;align-items:center;padding:0 10px;border-radius:12px;border:1px solid rgba(15,23,42,.12);background:#fff;box-shadow:inset 0 1px #ffffffe6,0 1px 2px #0206170a}.choice{display:inline-flex!important;align-items:center;gap:8px;font-size:14px;color:#0f172ad9;cursor:pointer}.choice input{width:16px;height:16px;accent-color:#7c3aed}.dossier-card-footer{display:flex;justify-content:flex-end;padding:24px 0 4px}.dossier-card-footer-right{justify-content:center}.form-error{margin:12px 0 0;color:#b91c1c;font-size:13px;text-align:center}.pagination{margin-top:1rem;padding:.75rem 1rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;font-size:.85rem;color:#6b7280}.pagination-info{white-space:nowrap}.pagination-controls{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap}.pagination-btn{border-radius:999px;border:1px solid #e5e7eb;padding:.25rem .7rem;background:#fff;font-size:.8rem;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.pagination-btn:hover:not(:disabled){background:#f3e8ff;border-color:#a855f7;color:#7c3aed}.pagination-btn:disabled{opacity:.4;cursor:default}.pagination-page{min-width:2rem;justify-content:center}.pagination-page-active{background:linear-gradient(135deg,#7c3aed,#ec4899);color:#fff;border-color:transparent;box-shadow:0 4px 10px #7c3aed59}.pagination-ellipsis{padding:0 .25rem;color:#9ca3af}.dossier-info-modal{background:radial-gradient(circle at top left,#f9f5ff,#f7f9ff 35%,#fff);padding:24px 28px 20px;border-radius:24px;box-shadow:0 18px 45px #0f172a1f,0 0 0 1px #94a3b81f}.dossier-header-left{display:flex;align-items:center;gap:16px}.dossier-avatar{padding:10px;height:44px;border-radius:999px;background:radial-gradient(circle at 30% 0,#fff,#8492fc 40%,#493aed);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:14px;box-shadow:0 12px 30px #7c3aed59}.dossier-info-header{margin-top:20px;padding:14px 18px;border-radius:16px;background:#f8fafce6;display:flex;align-items:center;justify-content:space-between;gap:16px}.dossier-label{font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:#9ca3af;margin-bottom:4px}.dossier-intitule{font-size:20px;font-weight:600;color:#111827}.dossier-subtitle-line{margin-top:4px;font-size:13px;color:#6b7280}.dossier-badges{display:flex;align-items:center;gap:8px}.dossier-meta-row{margin-top:12px;padding:10px 18px;border-radius:12px;background:#f9fafb;display:flex;flex-wrap:wrap;gap:16px}.dossier-meta-item{display:inline-flex;flex-direction:row;gap:6px;align-items:baseline;font-size:12px}.dossier-meta-label{text-transform:uppercase;letter-spacing:.08em;font-size:10px;color:#9ca3af}.dossier-meta-value{font-size:12px;font-weight:500;color:#374151}.dossier-hero-modal{margin-top:18px}.dossier-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 20px;margin-top:10px}.dossier-info-grid .info-group-full{grid-column:1 / -1}.info-section{margin-bottom:18px}.info-section-title{font-size:13px;font-weight:600;color:#4b5563;margin-bottom:8px}.info-group label{display:block;font-size:11px;color:#9ca3af;margin-bottom:4px}.info-field{border-radius:10px;background:#fff;padding:8px 10px;font-size:13px;color:#111827;box-shadow:inset 0 0 0 1px #d1d5dbb3}.info-field-link{color:#7c3aed}.dossier-card-footer{margin-top:14px;display:flex;justify-content:flex-end}.dossier-card-footer-right .btn-cancel{min-width:110px;border-radius:999px;padding:8px 18px;font-size:13px;border:none;background:#eef2ff;color:#4f46e5;font-weight:500;box-shadow:0 8px 20px #4f46e533;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease}.dossier-card-footer-right .btn-cancel:hover{transform:translateY(-1px);box-shadow:0 10px 26px #4f46e540}.upload-multi{margin:12px;padding:14px;border-radius:12px;border:1px dashed rgba(15,23,42,.18);background:#0f172a05}.upload-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.upload-title{font-weight:900;color:#0f172adb}.upload-sub{margin-top:4px;font-size:13px;color:#0f172a8c}.upload-type{width:220px;height:42px}.dropzone{border:1px solid rgba(15,23,42,.12);background:#fff;border-radius:12px;padding:18px;cursor:pointer;transition:transform .08s ease,box-shadow .15s ease}.dropzone:hover{box-shadow:0 6px 18px #0206170f}.dropzone.is-dragover{box-shadow:0 0 0 4px #7c3aed24;border-color:#7c3aed8c;transform:translateY(-1px)}.dropzone-icon{font-size:18px}.dropzone-text{color:#0f172ad9}.dropzone-link{color:#7c3aede6;text-decoration:underline}.file-list{margin-top:12px;border:1px solid rgba(15,23,42,.1);background:#fff;border-radius:12px;overflow:hidden}.file-list-head{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:#0f172a08;color:#0f172ab3;font-weight:800;font-size:13px}.link-btn{border:0;background:transparent;cursor:pointer;font-weight:800;color:#7c3aede6}.file-items{list-style:none;margin:0;padding:0}.file-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-top:1px solid rgba(15,23,42,.08)}.file-name{font-weight:800;color:#0f172ad9;max-width:520px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-meta{font-size:12px;color:#0f172a8c}.upload-actions{margin-top:12px;display:flex;align-items:center;gap:12px;justify-content:space-between}.form-success{margin-top:8px;color:#059669;font-size:13px}.collapsible{border:1px solid rgba(15,23,42,.1);background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 8px 22px #0206170d}.collapsible-header{width:100%;height:54px;padding:0 14px 0 16px;border:0;background:linear-gradient(180deg,#7c3aed0f,#7c3aed05);display:flex;align-items:center;justify-content:space-between;cursor:pointer;transition:background .15s ease,transform .08s ease}.collapsible-header:hover{background:linear-gradient(180deg,#7c3aed17,#7c3aed08)}.collapsible-title{font-weight:900;color:#0f172adb;letter-spacing:-.01em}.collapsible-chevron{width:36px;height:36px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;background:#0f172a0a;color:#0f172ab3;transition:transform .18s ease,background .15s ease}.collapsible-header:hover .collapsible-chevron{background:#0f172a0f}.collapsible-content{padding:14px;border-top:1px solid rgba(15,23,42,.08);background:#fff}.upload-multi{margin-top:12px;padding:14px;border-radius:14px;border:1px dashed rgba(15,23,42,.16);background:linear-gradient(180deg,#0f172a05,#0f172a03)}.upload-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:12px}.upload-title{font-weight:950;color:#0f172ae0;font-size:15px}.upload-sub{margin-top:4px;font-size:12.5px;color:#0f172a8c}.upload-type{width:240px;height:42px;border-radius:12px}.dropzone{border:1px solid rgba(15,23,42,.1);background:#fff;border-radius:14px;padding:18px;cursor:pointer;transition:box-shadow .15s ease,transform .08s ease,border-color .15s ease}.dropzone:hover{box-shadow:0 10px 28px #0206170f;transform:translateY(-1px)}.dropzone.is-dragover{border-color:#7c3aed99;box-shadow:0 0 0 4px #7c3aed24,0 10px 28px #02061712}.dropzone-inner{display:grid;gap:6px;justify-items:center;text-align:center}.dropzone-icon{width:38px;height:38px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;background:#7c3aed1a;color:#7c3aedf2;font-size:18px}.dropzone-text{color:#0f172adb;font-size:14px}.dropzone-text strong{font-weight:950}.dropzone-link{color:#7c3aedf2;text-decoration:none;font-weight:850}.dropzone-link:hover{text-decoration:underline}.dropzone-hint{font-size:12px;color:#0f172a73}.file-list{margin-top:12px;border:1px solid rgba(15,23,42,.08);background:#fff;border-radius:14px;overflow:hidden}.file-list-head{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:#0f172a08;color:#0f172ab3;font-weight:900;font-size:12.5px}.link-btn{border:0;background:transparent;cursor:pointer;font-weight:900;color:#7c3aedf2;padding:4px 6px;border-radius:8px}.link-btn:hover{background:#7c3aed14}.file-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-top:1px solid rgba(15,23,42,.06)}.file-main{display:flex;align-items:baseline;gap:10px;min-width:0}.file-name{font-weight:900;color:#0f172ae0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:520px}.file-meta{font-size:12px;color:#0f172a85}.upload-mode{font-size:12px;color:#0f172a8c}.docs-table-wrap{margin-top:12px;overflow:auto;border-radius:14px;border:1px solid rgba(15,23,42,.08);box-shadow:0 10px 26px #0206170d;background:#fff}.docs-table{width:100%;border-collapse:separate;border-spacing:0;font-size:13.5px}.docs-table thead th{position:sticky;top:0;background:#0f172a08;padding:11px 12px;color:#0f172aad;font-weight:950;text-align:left;border-bottom:1px solid rgba(15,23,42,.08)}.docs-table tbody td{padding:10px 12px;border-bottom:1px solid rgba(15,23,42,.06);color:#0f172adb}.docs-table tbody tr:hover{background:#7c3aed0a}.docs-col-action{width:110px;text-align:center}.docs-table tbody td:first-child{font-weight:900;color:#0f172acc}.icon-btn{width:60px;height:36px;border-radius:12px;border:1px solid rgba(15,23,42,.12);background:#fff;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;color:#0f172abf;transition:transform .08s ease,background .15s ease,border-color .15s ease}.icon-btn:hover{background:#0f172a0a;transform:translateY(-1px)}.icon-btn:active{transform:translateY(0)}.icon-btn.danger{color:#b91c1ce6;border-color:#b91c1c2e}.icon-btn.danger:hover{background:#b91c1c0f}@media(max-width:760px){.dossier-info-grid{grid-template-columns:1fr}.modal-title{font-size:22px}.btn-gradient{max-width:100%}}@media(max-width:760px){.upload-head{flex-direction:column;align-items:stretch}.upload-type{width:100%}.upload-actions{flex-direction:column;align-items:stretch}.docs-col-action{width:90px}}@media(max-width:960px){.client-page{padding:1rem 1.5rem 2rem}.client-hero{grid-template-columns:1fr}}@media(max-width:880px){.client-info-sections{grid-template-columns:1fr}.client-header-left{align-items:flex-start}.client-info-header{flex-direction:column;align-items:flex-start;gap:.75rem}}.global-loader{position:fixed;top:0;left:0;width:100%;height:100%;background:#14141ea6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:9999}.loader-card{background:#fff;padding:30px 40px;border-radius:10px;text-align:center;box-shadow:0 15px 35px #0003}.loader-card p{margin-top:15px;font-size:15px;color:#444}.spinner{width:40px;height:40px;border:4px solid #e5e7eb;border-top:4px solid #6366f1;border-radius:50%;animation:spin .9s linear infinite;margin:auto}@keyframes spin{to{transform:rotate(360deg)}}@keyframes company-loader-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.company-loader{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:28px 16px}.company-loader--inline{flex-direction:row;padding:8px 0;gap:10px}.company-loader__logo{object-fit:contain;animation:company-loader-spin 1.1s linear infinite;transform-origin:50% 50%}.company-loader__label{color:#94a3b8;font-size:13px;font-weight:500}@media(prefers-reduced-motion:reduce){.company-loader__logo{animation-duration:2.6s}}.mail-card{background:#ffffffe6;border:1px solid rgba(0,0,0,.06);border-radius:22px;box-shadow:0 12px 40px #11182714;padding:22px;margin:2rem 2rem auto}.mail-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}.mail-title{margin:0;font-size:22px;font-weight:800;letter-spacing:-.02em}.mail-subtitle{margin:6px 0 0;color:#111827a6;font-size:14px}.mail-form{margin-top:10px}.mail-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.mail-field{display:flex;flex-direction:column;gap:6px;margin-top:10px}.mail-field-full{grid-column:1 / -1}.mail-field label{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.mail-input,.mail-textarea{background:#ffffffd9;border:1px solid rgba(0,0,0,.1);border-radius:14px;padding:12px;outline:none;transition:box-shadow .15s ease,border-color .15s ease,transform .05s ease;color:#111827eb}.mail-textarea{resize:vertical;min-height:180px}.mail-input:focus,.mail-textarea:focus{border-color:#3a46ed73;box-shadow:0 0 0 4px #4c3aed1f}.mail-input-error{border-color:#ef44448c;box-shadow:0 0 0 4px #ef44441a}.mail-hint{font-size:12px;color:#1118278c}.mail-hint-error{color:#ef4444e6}.mail-meta{display:flex;justify-content:space-between;gap:10px;margin-top:6px;color:#1118278c;font-size:12px}.mail-alert{margin-top:12px;padding:12px 14px;border-radius:14px;font-weight:600;font-size:14px;border:1px solid transparent}.mail-alert-success{background:#22c55e1a;border-color:#22c55e38;color:#166534f2}.mail-alert-error{background:#ef44441a;border-color:#ef444438;color:#7f1d1df2}.mail-actions{display:flex;justify-content:flex-end;margin-top:14px}.mail-btn{border:1px solid rgba(0,0,0,.1);background:#fff;border-radius:999px;padding:10px 14px;font-weight:700;cursor:pointer;transition:transform .05s ease,box-shadow .15s ease,opacity .15s ease}.mail-btn:disabled{opacity:.55;cursor:not-allowed}.mail-btn-primary{background:linear-gradient(135deg,#3a3aed,#7555f7);color:#fff;border:none;box-shadow:0 10px 22px #463aed38}.mail-btn-primary:hover{transform:translateY(-1px)}.mail-btn-ghost{background:transparent}.mail-upload-btn input[type=file]{display:none}.mail-upload-wrapper{display:flex;flex-direction:column;gap:10px;margin-top:6px}.mail-upload-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:10px;font-weight:600;cursor:pointer;background:linear-gradient(135deg,#5b3aed,#6555f7);color:#fff;transition:all .2s ease;width:fit-content;box-shadow:0 4px 12px #7c3aed40}.mail-upload-btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px #3a3ded59}.mail-upload-btn:active{transform:translateY(0)}.mail-upload-file{display:flex;align-items:center;gap:10px;background:#f5f3ff;padding:8px 12px;border-radius:8px;border:1px solid #e9d5ff}.mail-upload-name{font-weight:600;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mail-upload-size{font-size:12px;color:#6b7280}.mail-upload-remove{margin-left:auto;border:none;background:transparent;color:#ef4444;font-size:16px;cursor:pointer;font-weight:700;transition:.2s}.mail-upload-remove:hover{transform:scale(1.2)}@media(max-width:860px){.mail-grid{grid-template-columns:1fr}}.html-editor-wrapper{border:1px solid rgba(0,0,0,.1);border-radius:14px;overflow:hidden;background:#ffffffd9;transition:box-shadow .15s ease,border-color .15s ease}.html-editor-wrapper:focus-within{border-color:#3a46ed73;box-shadow:0 0 0 4px #4c3aed1f}.html-editor-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:2px;padding:6px 10px;background:#f8fafc;border-bottom:1px solid rgba(0,0,0,.07)}.he-btn{min-width:28px;height:28px;padding:0 6px;border:1px solid transparent;border-radius:6px;background:transparent;cursor:pointer;font-size:12px;font-weight:600;color:#374151;display:inline-flex;align-items:center;justify-content:center;transition:background .12s,border-color .12s;white-space:nowrap}.he-btn:hover:not(:disabled){background:#e5e7eb;border-color:#d1d5db}.he-btn:disabled{opacity:.4;cursor:not-allowed}.he-sep{width:1px;height:20px;background:#d1d5db;margin:0 4px;flex-shrink:0}.he-select{height:28px;padding:0 6px;border:1px solid #d1d5db;border-radius:6px;font-size:12px;background:#fff;cursor:pointer;color:#374151}.he-color-btn{position:relative;flex-direction:column;gap:1px;cursor:pointer;font-weight:800;font-size:13px;padding-bottom:4px}.he-color-bar{position:absolute;bottom:3px;left:5px;right:5px;height:3px;border-radius:2px}.html-editor-area{min-height:260px;max-height:520px;overflow-y:auto;padding:14px 16px;outline:none;font-size:14px;line-height:1.6;color:#111827eb;word-break:break-word}.html-editor-area img{max-width:100%;height:auto}.html-editor-disabled{background:#f8fafc;color:#9ca3af;cursor:not-allowed}.tpl-panel{margin-top:14px;border:1px solid rgba(0,0,0,.09);border-radius:12px;overflow:hidden;background:#fafbfc}.tpl-header{display:flex;align-items:center;gap:10px;padding:10px 16px;cursor:pointer;-webkit-user-select:none;user-select:none;background:#f1f5f9;border-bottom:1px solid transparent;transition:background .12s}.tpl-header:hover{background:#e8edf5}.tpl-title{font-weight:700;font-size:13px;color:#374151}.tpl-count{font-size:11px;color:#6b7280;background:#e5e7eb;padding:1px 8px;border-radius:99px}.tpl-chevron{margin-left:auto;font-size:10px;color:#9ca3af}.tpl-body{padding:14px 16px;border-top:1px solid rgba(0,0,0,.06)}.tpl-save-btn{width:100%;padding:8px 14px;border:2px dashed #c7d2fe;border-radius:8px;background:transparent;color:#4f46e5;font-size:13px;font-weight:600;cursor:pointer;transition:background .12s,border-color .12s;text-align:center}.tpl-save-btn:hover{background:#eef2ff;border-color:#818cf8}.tpl-save-form{display:flex;gap:8px;align-items:center}.tpl-input{flex:1;padding:7px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:13px;outline:none;transition:border-color .12s,box-shadow .12s}.tpl-input:focus{border-color:#818cf8;box-shadow:0 0 0 3px #818cf82e}.tpl-btn-ok{padding:7px 14px;background:linear-gradient(135deg,#4f46e5,#7c3aed);color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap}.tpl-btn-ok:disabled{opacity:.5;cursor:not-allowed}.tpl-btn-cancel{padding:7px 12px;background:transparent;color:#6b7280;border:1px solid #d1d5db;border-radius:8px;font-size:13px;cursor:pointer}.tpl-empty{text-align:center;color:#9ca3af;font-size:13px;padding:12px 0 4px;margin:0}.tpl-list{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}.tpl-item{display:flex;align-items:center;gap:10px;padding:9px 12px;border:1px solid #e5e7eb;border-radius:8px;background:#fff;cursor:pointer;transition:border-color .12s,background .12s,box-shadow .12s}.tpl-item:hover{border-color:#818cf8;background:#f5f3ff;box-shadow:0 2px 8px #4f46e514}.tpl-item-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.tpl-item-name{font-weight:600;font-size:13px;color:#1f2937;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tpl-item-subject{font-size:11px;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tpl-item-del{flex-shrink:0;width:24px;height:24px;border:none;background:transparent;color:#d1d5db;font-size:13px;cursor:pointer;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:color .12s,background .12s}.tpl-item-del:hover{color:#ef4444;background:#fef2f2}.tpl-item-del:disabled{opacity:.4;cursor:not-allowed}.toolbar button.selected{background-color:#0026ff!important;box-shadow:0 3px 5px #0000001a}.toolbar button:hover{background-color:#3f22ce66;box-shadow:0 5px 7px #0000001a}.modal_default_main{border:0!important;border-radius:24px!important;overflow:hidden;background:#f6f7fb!important;box-shadow:0 24px 80px #1118272e,0 4px 18px #1118271a!important}.modal_default_title{background:transparent!important;padding:22px 26px 10px!important;font-size:22px!important;font-weight:800!important;color:#0f172a!important;border-bottom:0!important}.modal_default_content{padding:10px 26px 18px!important;color:#0f172a}.modal_default_form label,.modal_default_form_item_label{font-size:12px!important;font-weight:700!important;color:#64748b!important;margin-bottom:8px!important}.modal_default_main input[type=text],.modal_default_main textarea,.modal_default_main select{width:100%;border-radius:14px!important;border:1px solid rgba(148,163,184,.35)!important;background:#fff!important;padding:12px 14px!important;outline:none!important;box-shadow:0 8px 22px #0f172a0f}.modal_default_main textarea{min-height:140px;resize:vertical}.modal_default_main input:focus,.modal_default_main textarea:focus,.modal_default_main select:focus{border-color:#6055f78c!important;box-shadow:0 10px 26px #5558f72e,0 0 0 4px #a855f71f!important}.modal_default_buttons{padding:10px 26px 22px!important;background:transparent!important;border-top:0!important;display:flex;gap:12px}.modal_default_ok,.modal_default_cancel{border-radius:999px!important;padding:12px 18px!important;font-weight:800!important;border:0!important;cursor:pointer}.modal_default_ok{flex:1;color:#fff!important;background:linear-gradient(90deg,#a83aed,#4649ef)!important;box-shadow:0 18px 40px #7c3aed59!important}.modal_default_cancel{min-width:120px;background:#94a3b82e!important;color:#0f172a!important}.modal_default_cancel:hover{background:#94a3b847!important}.modal_default_ok:hover{filter:brightness(1.02);transform:translateY(-1px)}.modal_default_ok:active,.modal_default_cancel:active{transform:translateY(0)}.list-view{overflow-x:auto}.list-filter{display:inline-flex;margin-bottom:14px}.list-filter button{background:#0008ff;color:#fff;border:0;padding:.4rem .9rem;font-size:13px;font-weight:600;cursor:pointer;margin-right:1px;transition:background .2s}.list-filter button:first-child{border-radius:30px 0 0 30px}.list-filter button:last-child{border-radius:0 30px 30px 0;margin-right:0}.list-filter button.selected{background:#0026ff}.list-filter button:hover{background:#3f22ce66}.list-badge{display:inline-block;padding:3px 10px;border-radius:999px;font-size:11px;font-weight:700}.list-badge--rdv{background:#dcfce7;color:#14532d;border:1px solid #16a34a}.list-badge--client{background:#ede9fe;color:#4c1d95;border:1px solid #8b5cf6}.list-table{width:100%;border-collapse:collapse;font-size:14px}.list-table th,.list-table td{padding:10px 14px;text-align:left;border-bottom:1px solid rgba(148,163,184,.2)}.list-table th{font-size:11px;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.5px;background:#f8fafc}.list-table tr:hover td{background:#f1f5f9}.list-actions{display:flex;gap:8px}.list-btn{padding:5px 12px;border-radius:8px;border:0;font-size:12px;font-weight:600;cursor:pointer;transition:opacity .15s;white-space:nowrap}.list-btn:hover{opacity:.75}.list-btn--edit{background:#e0f2fe;color:#0369a1}.list-btn--delete{background:#fee2e2;color:#991b1b}.list-btn--nav{background:#ede9fe;color:#4c1d95}.list-empty{padding:48px;text-align:center;color:#94a3b8;font-size:15px}.navigator_modal_main{height:240px!important}.navigator_modal_todaysection{height:0px!important;display:none!important}.ugco-info{display:grid;gap:14px}.ugco-info__title{font-size:20px;font-weight:950;color:#0f172a}.ugco-card{background:#ffffffd9;border:1px solid rgba(148,163,184,.22);border-radius:18px;padding:14px;box-shadow:0 12px 28px #0f172a0f}.ugco-row{display:flex;justify-content:space-between;gap:12px;padding:8px 2px}.ugco-row+.ugco-row{border-top:1px dashed rgba(148,163,184,.35)}.ugco-label{font-size:12px;font-weight:900;color:#64748b;text-transform:uppercase;letter-spacing:.4px}.ugco-label--block{margin-bottom:8px}.ugco-value{font-weight:800;color:#0f172a}.ugco-desc{white-space:pre-wrap;color:#0f172a;opacity:.9;line-height:1.55}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#fffc;display:flex;justify-content:center;align-items:center;z-index:9999}.loading-overlay .spinner{border-radius:50%;width:3em;height:3em;animation:spin 1s linear infinite;animation-name:spin;animation-duration:1s;animation-iteration-count:infinite;animation-timing-function:linear;border:double 6px transparent;background-image:linear-gradient(#fff,#fff),radial-gradient(circle at top left,#7f00ff,#e100ff);background-origin:border-box;background-clip:content-box,border-box}.ql-container{box-sizing:border-box;font-family:Helvetica,Arial,sans-serif;font-size:13px;height:100%;margin:0;position:relative}.ql-container.ql-disabled .ql-tooltip{visibility:hidden}.ql-container:not(.ql-disabled) li[data-list=checked]>.ql-ui,.ql-container:not(.ql-disabled) li[data-list=unchecked]>.ql-ui{cursor:pointer}.ql-clipboard{left:-100000px;height:1px;overflow-y:hidden;position:absolute;top:50%}.ql-clipboard p{margin:0;padding:0}.ql-editor{box-sizing:border-box;counter-reset:list-0 list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;line-height:1.42;height:100%;outline:none;overflow-y:auto;padding:12px 15px;tab-size:4;-moz-tab-size:4;text-align:left;white-space:pre-wrap;word-wrap:break-word}.ql-editor>*{cursor:text}.ql-editor p,.ql-editor ol,.ql-editor pre,.ql-editor blockquote,.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6{margin:0;padding:0}@supports (counter-set:none){.ql-editor p,.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6{counter-set:list-0 list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor p,.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6{counter-reset:list-0 list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor table{border-collapse:collapse}.ql-editor td{border:1px solid #000;padding:2px 5px}.ql-editor ol{padding-left:1.5em}.ql-editor li{list-style-type:none;padding-left:1.5em;position:relative}.ql-editor li>.ql-ui:before{display:inline-block;margin-left:-1.5em;margin-right:.3em;text-align:right;white-space:nowrap;width:1.2em}.ql-editor li[data-list=checked]>.ql-ui,.ql-editor li[data-list=unchecked]>.ql-ui{color:#777}.ql-editor li[data-list=bullet]>.ql-ui:before{content:"•"}.ql-editor li[data-list=checked]>.ql-ui:before{content:"☑"}.ql-editor li[data-list=unchecked]>.ql-ui:before{content:"☐"}@supports (counter-set:none){.ql-editor li[data-list]{counter-set:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list]{counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered]{counter-increment:list-0}.ql-editor li[data-list=ordered]>.ql-ui:before{content:counter(list-0,decimal) ". "}.ql-editor li[data-list=ordered].ql-indent-1{counter-increment:list-1}.ql-editor li[data-list=ordered].ql-indent-1>.ql-ui:before{content:counter(list-1,lower-alpha) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-1{counter-set:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-1{counter-reset:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-2{counter-increment:list-2}.ql-editor li[data-list=ordered].ql-indent-2>.ql-ui:before{content:counter(list-2,lower-roman) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-2{counter-set:list-3 list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-2{counter-reset:list-3 list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-3{counter-increment:list-3}.ql-editor li[data-list=ordered].ql-indent-3>.ql-ui:before{content:counter(list-3,decimal) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-3{counter-set:list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-3{counter-reset:list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-4{counter-increment:list-4}.ql-editor li[data-list=ordered].ql-indent-4>.ql-ui:before{content:counter(list-4,lower-alpha) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-4{counter-set:list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-4{counter-reset:list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-5{counter-increment:list-5}.ql-editor li[data-list=ordered].ql-indent-5>.ql-ui:before{content:counter(list-5,lower-roman) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-5{counter-set:list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-5{counter-reset:list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-6{counter-increment:list-6}.ql-editor li[data-list=ordered].ql-indent-6>.ql-ui:before{content:counter(list-6,decimal) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-6{counter-set:list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-6{counter-reset:list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-7{counter-increment:list-7}.ql-editor li[data-list=ordered].ql-indent-7>.ql-ui:before{content:counter(list-7,lower-alpha) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-7{counter-set:list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-7{counter-reset:list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-8{counter-increment:list-8}.ql-editor li[data-list=ordered].ql-indent-8>.ql-ui:before{content:counter(list-8,lower-roman) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-8{counter-set:list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-8{counter-reset:list-9}}.ql-editor li[data-list=ordered].ql-indent-9{counter-increment:list-9}.ql-editor li[data-list=ordered].ql-indent-9>.ql-ui:before{content:counter(list-9,decimal) ". "}.ql-editor .ql-indent-1:not(.ql-direction-rtl){padding-left:3em}.ql-editor li.ql-indent-1:not(.ql-direction-rtl){padding-left:4.5em}.ql-editor .ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:3em}.ql-editor li.ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:4.5em}.ql-editor .ql-indent-2:not(.ql-direction-rtl){padding-left:6em}.ql-editor li.ql-indent-2:not(.ql-direction-rtl){padding-left:7.5em}.ql-editor .ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:6em}.ql-editor li.ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:7.5em}.ql-editor .ql-indent-3:not(.ql-direction-rtl){padding-left:9em}.ql-editor li.ql-indent-3:not(.ql-direction-rtl){padding-left:10.5em}.ql-editor .ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:9em}.ql-editor li.ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:10.5em}.ql-editor .ql-indent-4:not(.ql-direction-rtl){padding-left:12em}.ql-editor li.ql-indent-4:not(.ql-direction-rtl){padding-left:13.5em}.ql-editor .ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:12em}.ql-editor li.ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:13.5em}.ql-editor .ql-indent-5:not(.ql-direction-rtl){padding-left:15em}.ql-editor li.ql-indent-5:not(.ql-direction-rtl){padding-left:16.5em}.ql-editor .ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:15em}.ql-editor li.ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:16.5em}.ql-editor .ql-indent-6:not(.ql-direction-rtl){padding-left:18em}.ql-editor li.ql-indent-6:not(.ql-direction-rtl){padding-left:19.5em}.ql-editor .ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:18em}.ql-editor li.ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:19.5em}.ql-editor .ql-indent-7:not(.ql-direction-rtl){padding-left:21em}.ql-editor li.ql-indent-7:not(.ql-direction-rtl){padding-left:22.5em}.ql-editor .ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:21em}.ql-editor li.ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:22.5em}.ql-editor .ql-indent-8:not(.ql-direction-rtl){padding-left:24em}.ql-editor li.ql-indent-8:not(.ql-direction-rtl){padding-left:25.5em}.ql-editor .ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:24em}.ql-editor li.ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:25.5em}.ql-editor .ql-indent-9:not(.ql-direction-rtl){padding-left:27em}.ql-editor li.ql-indent-9:not(.ql-direction-rtl){padding-left:28.5em}.ql-editor .ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:27em}.ql-editor li.ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:28.5em}.ql-editor li.ql-direction-rtl{padding-right:1.5em}.ql-editor li.ql-direction-rtl>.ql-ui:before{margin-left:.3em;margin-right:-1.5em;text-align:left}.ql-editor table{table-layout:fixed;width:100%}.ql-editor table td{outline:none}.ql-editor .ql-code-block-container{font-family:monospace}.ql-editor .ql-video{display:block;max-width:100%}.ql-editor .ql-video.ql-align-center{margin:0 auto}.ql-editor .ql-video.ql-align-right{margin:0 0 0 auto}.ql-editor .ql-bg-black{background-color:#000}.ql-editor .ql-bg-red{background-color:#e60000}.ql-editor .ql-bg-orange{background-color:#f90}.ql-editor .ql-bg-yellow{background-color:#ff0}.ql-editor .ql-bg-green{background-color:#008a00}.ql-editor .ql-bg-blue{background-color:#06c}.ql-editor .ql-bg-purple{background-color:#93f}.ql-editor .ql-color-white{color:#fff}.ql-editor .ql-color-red{color:#e60000}.ql-editor .ql-color-orange{color:#f90}.ql-editor .ql-color-yellow{color:#ff0}.ql-editor .ql-color-green{color:#008a00}.ql-editor .ql-color-blue{color:#06c}.ql-editor .ql-color-purple{color:#93f}.ql-editor .ql-font-serif{font-family:Georgia,Times New Roman,serif}.ql-editor .ql-font-monospace{font-family:Monaco,Courier New,monospace}.ql-editor .ql-size-small{font-size:.75em}.ql-editor .ql-size-large{font-size:1.5em}.ql-editor .ql-size-huge{font-size:2.5em}.ql-editor .ql-direction-rtl{direction:rtl;text-align:inherit}.ql-editor .ql-align-center{text-align:center}.ql-editor .ql-align-justify{text-align:justify}.ql-editor .ql-align-right{text-align:right}.ql-editor .ql-ui{position:absolute}.ql-editor.ql-blank:before{color:#0009;content:attr(data-placeholder);font-style:italic;left:15px;pointer-events:none;position:absolute;right:15px}.ql-snow.ql-toolbar:after,.ql-snow .ql-toolbar:after{clear:both;content:"";display:table}.ql-snow.ql-toolbar button,.ql-snow .ql-toolbar button{background:none;border:none;cursor:pointer;display:inline-block;float:left;height:24px;padding:3px 5px;width:28px}.ql-snow.ql-toolbar button svg,.ql-snow .ql-toolbar button svg{float:left;height:100%}.ql-snow.ql-toolbar button:active:hover,.ql-snow .ql-toolbar button:active:hover{outline:none}.ql-snow.ql-toolbar input.ql-image[type=file],.ql-snow .ql-toolbar input.ql-image[type=file]{display:none}.ql-snow.ql-toolbar button:hover,.ql-snow .ql-toolbar button:hover,.ql-snow.ql-toolbar button:focus,.ql-snow .ql-toolbar button:focus,.ql-snow.ql-toolbar button.ql-active,.ql-snow .ql-toolbar button.ql-active,.ql-snow.ql-toolbar .ql-picker-label:hover,.ql-snow .ql-toolbar .ql-picker-label:hover,.ql-snow.ql-toolbar .ql-picker-label.ql-active,.ql-snow .ql-toolbar .ql-picker-label.ql-active,.ql-snow.ql-toolbar .ql-picker-item:hover,.ql-snow .ql-toolbar .ql-picker-item:hover,.ql-snow.ql-toolbar .ql-picker-item.ql-selected,.ql-snow .ql-toolbar .ql-picker-item.ql-selected{color:#06c}.ql-snow.ql-toolbar button:hover .ql-fill,.ql-snow .ql-toolbar button:hover .ql-fill,.ql-snow.ql-toolbar button:focus .ql-fill,.ql-snow .ql-toolbar button:focus .ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow.ql-toolbar button:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill{fill:#06c}.ql-snow.ql-toolbar button:hover .ql-stroke,.ql-snow .ql-toolbar button:hover .ql-stroke,.ql-snow.ql-toolbar button:focus .ql-stroke,.ql-snow .ql-toolbar button:focus .ql-stroke,.ql-snow.ql-toolbar button.ql-active .ql-stroke,.ql-snow .ql-toolbar button.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow.ql-toolbar button:hover .ql-stroke-miter,.ql-snow .ql-toolbar button:hover .ql-stroke-miter,.ql-snow.ql-toolbar button:focus .ql-stroke-miter,.ql-snow .ql-toolbar button:focus .ql-stroke-miter,.ql-snow.ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter{stroke:#06c}@media(pointer:coarse){.ql-snow.ql-toolbar button:hover:not(.ql-active),.ql-snow .ql-toolbar button:hover:not(.ql-active){color:#444}.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill{fill:#444}.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter{stroke:#444}}.ql-snow,.ql-snow *{box-sizing:border-box}.ql-snow .ql-hidden{display:none}.ql-snow .ql-out-bottom,.ql-snow .ql-out-top{visibility:hidden}.ql-snow .ql-tooltip{position:absolute;transform:translateY(10px)}.ql-snow .ql-tooltip a{cursor:pointer;text-decoration:none}.ql-snow .ql-tooltip.ql-flip{transform:translateY(-10px)}.ql-snow .ql-formats{display:inline-block;vertical-align:middle}.ql-snow .ql-formats:after{clear:both;content:"";display:table}.ql-snow .ql-stroke{fill:none;stroke:#444;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.ql-snow .ql-stroke-miter{fill:none;stroke:#444;stroke-miterlimit:10;stroke-width:2}.ql-snow .ql-fill,.ql-snow .ql-stroke.ql-fill{fill:#444}.ql-snow .ql-empty{fill:none}.ql-snow .ql-even{fill-rule:evenodd}.ql-snow .ql-thin,.ql-snow .ql-stroke.ql-thin{stroke-width:1}.ql-snow .ql-transparent{opacity:.4}.ql-snow .ql-direction svg:last-child{display:none}.ql-snow .ql-direction.ql-active svg:last-child{display:inline}.ql-snow .ql-direction.ql-active svg:first-child{display:none}.ql-snow .ql-editor h1{font-size:2em}.ql-snow .ql-editor h2{font-size:1.5em}.ql-snow .ql-editor h3{font-size:1.17em}.ql-snow .ql-editor h4{font-size:1em}.ql-snow .ql-editor h5{font-size:.83em}.ql-snow .ql-editor h6{font-size:.67em}.ql-snow .ql-editor a{text-decoration:underline}.ql-snow .ql-editor blockquote{border-left:4px solid #ccc;margin-bottom:5px;margin-top:5px;padding-left:16px}.ql-snow .ql-editor code,.ql-snow .ql-editor .ql-code-block-container{background-color:#f0f0f0;border-radius:3px}.ql-snow .ql-editor .ql-code-block-container{margin-bottom:5px;margin-top:5px;padding:5px 10px}.ql-snow .ql-editor code{font-size:85%;padding:2px 4px}.ql-snow .ql-editor .ql-code-block-container{background-color:#23241f;color:#f8f8f2;overflow:visible}.ql-snow .ql-editor img{max-width:100%}.ql-snow .ql-picker{color:#444;display:inline-block;float:left;font-size:14px;font-weight:500;height:24px;position:relative;vertical-align:middle}.ql-snow .ql-picker-label{cursor:pointer;display:inline-block;height:100%;padding-left:8px;padding-right:2px;position:relative;width:100%}.ql-snow .ql-picker-label:before{display:inline-block;line-height:22px}.ql-snow .ql-picker-options{background-color:#fff;display:none;min-width:100%;padding:4px 8px;position:absolute;white-space:nowrap}.ql-snow .ql-picker-options .ql-picker-item{cursor:pointer;display:block;padding-bottom:5px;padding-top:5px}.ql-snow .ql-picker.ql-expanded .ql-picker-label{color:#ccc;z-index:2}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-fill{fill:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-stroke{stroke:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-options{display:block;margin-top:-1px;top:100%;z-index:1}.ql-snow .ql-color-picker,.ql-snow .ql-icon-picker{width:28px}.ql-snow .ql-color-picker .ql-picker-label,.ql-snow .ql-icon-picker .ql-picker-label{padding:2px 4px}.ql-snow .ql-color-picker .ql-picker-label svg,.ql-snow .ql-icon-picker .ql-picker-label svg{right:4px}.ql-snow .ql-icon-picker .ql-picker-options{padding:4px 0}.ql-snow .ql-icon-picker .ql-picker-item{height:24px;width:24px;padding:2px 4px}.ql-snow .ql-color-picker .ql-picker-options{padding:3px 5px;width:152px}.ql-snow .ql-color-picker .ql-picker-item{border:1px solid transparent;float:left;height:16px;margin:2px;padding:0;width:16px}.ql-snow .ql-picker:not(.ql-color-picker):not(.ql-icon-picker) svg{position:absolute;margin-top:-9px;right:0;top:50%;width:18px}.ql-snow .ql-picker.ql-header .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-font .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-label]:not([data-label=""]):before{content:attr(data-label)}.ql-snow .ql-picker.ql-header{width:98px}.ql-snow .ql-picker.ql-header .ql-picker-label:before,.ql-snow .ql-picker.ql-header .ql-picker-item:before{content:"Normal"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="1"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]:before{content:"Heading 1"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="2"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]:before{content:"Heading 2"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="3"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]:before{content:"Heading 3"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="4"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]:before{content:"Heading 4"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="5"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]:before{content:"Heading 5"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="6"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]:before{content:"Heading 6"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]:before{font-size:2em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]:before{font-size:1.5em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]:before{font-size:1.17em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]:before{font-size:1em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]:before{font-size:.83em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]:before{font-size:.67em}.ql-snow .ql-picker.ql-font{width:108px}.ql-snow .ql-picker.ql-font .ql-picker-label:before,.ql-snow .ql-picker.ql-font .ql-picker-item:before{content:"Sans Serif"}.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=serif]:before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{content:"Serif"}.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=monospace]:before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{content:"Monospace"}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{font-family:Georgia,Times New Roman,serif}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{font-family:Monaco,Courier New,monospace}.ql-snow .ql-picker.ql-size{width:98px}.ql-snow .ql-picker.ql-size .ql-picker-label:before,.ql-snow .ql-picker.ql-size .ql-picker-item:before{content:"Normal"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=small]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{content:"Small"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=large]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{content:"Large"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=huge]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{content:"Huge"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{font-size:10px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{font-size:18px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{font-size:32px}.ql-snow .ql-color-picker.ql-background .ql-picker-item{background-color:#fff}.ql-snow .ql-color-picker.ql-color .ql-picker-item{background-color:#000}.ql-code-block-container{position:relative}.ql-code-block-container .ql-ui{right:5px;top:5px}.ql-toolbar.ql-snow{border:1px solid #ccc;box-sizing:border-box;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;padding:8px}.ql-toolbar.ql-snow .ql-formats{margin-right:15px}.ql-toolbar.ql-snow .ql-picker-label{border:1px solid transparent}.ql-toolbar.ql-snow .ql-picker-options{border:1px solid transparent;box-shadow:#0003 0 2px 8px}.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-label,.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-options{border-color:#ccc}.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item.ql-selected,.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item:hover{border-color:#000}.ql-toolbar.ql-snow+.ql-container.ql-snow{border-top:0}.ql-snow .ql-tooltip{background-color:#fff;border:1px solid #ccc;box-shadow:0 0 5px #ddd;color:#444;padding:5px 12px;white-space:nowrap}.ql-snow .ql-tooltip:before{content:"Visit URL:";line-height:26px;margin-right:8px}.ql-snow .ql-tooltip input[type=text]{display:none;border:1px solid #ccc;font-size:13px;height:26px;margin:0;padding:3px 5px;width:170px}.ql-snow .ql-tooltip a.ql-preview{display:inline-block;max-width:200px;overflow-x:hidden;text-overflow:ellipsis;vertical-align:top}.ql-snow .ql-tooltip a.ql-action:after{border-right:1px solid #ccc;content:"Edit";margin-left:16px;padding-right:8px}.ql-snow .ql-tooltip a.ql-remove:before{content:"Remove";margin-left:8px}.ql-snow .ql-tooltip a{line-height:26px}.ql-snow .ql-tooltip.ql-editing a.ql-preview,.ql-snow .ql-tooltip.ql-editing a.ql-remove{display:none}.ql-snow .ql-tooltip.ql-editing input[type=text]{display:inline-block}.ql-snow .ql-tooltip.ql-editing a.ql-action:after{border-right:0;content:"Save";padding-right:0}.ql-snow .ql-tooltip[data-mode=link]:before{content:"Enter link:"}.ql-snow .ql-tooltip[data-mode=formula]:before{content:"Enter formula:"}.ql-snow .ql-tooltip[data-mode=video]:before{content:"Enter video:"}.ql-snow a{color:#06c}.ql-container.ql-snow{border:1px solid #ccc}.kanban-wrapper{padding:.5rem 0 1rem}.kanban-add-btn{display:inline-flex;align-items:center;gap:.4rem;margin-bottom:1rem;font-size:.85rem}.kanban-board{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;align-items:stretch}@media(max-width:900px){.kanban-board{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.kanban-board{grid-template-columns:1fr}}.kanban-column{background:var(--col-bg, #f8fafc);border:1.5px solid var(--col-border, #cbd5e1);border-radius:10px;padding:.65rem .6rem .75rem;min-height:120px;display:flex;flex-direction:column;transition:box-shadow .15s,border-color .15s}.kanban-column.drag-over{box-shadow:0 0 0 2px var(--col-border, #94a3b8);border-style:dashed}.kanban-col-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.65rem}.kanban-col-title{font-size:.82rem;font-weight:600;color:#374151;letter-spacing:.01em;text-transform:uppercase}.kanban-col-count{font-size:.72rem;font-weight:700;color:#fff;background:#64748b;border-radius:999px;padding:1px 7px;min-width:20px;text-align:center}.kanban-cards{display:flex;flex-direction:column;gap:.5rem;flex:1;min-height:60px}.kanban-empty{font-size:.78rem;color:#94a3b8;text-align:center;padding:1rem 0;border:1.5px dashed #cbd5e1;border-radius:7px}.kanban-card{background:#fff;border:1px solid #e2e8f0;border-radius:7px;padding:.6rem .65rem;cursor:grab;transition:box-shadow .15s,transform .1s;-webkit-user-select:none;user-select:none}.kanban-card:hover{box-shadow:0 2px 8px #00000014}.kanban-card:active{cursor:grabbing;transform:scale(.98);box-shadow:0 4px 16px #00000021}.kanban-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.3rem}.kanban-card-title{font-size:.84rem;font-weight:600;color:#1e293b;line-height:1.3;flex:1}.kanban-card-btns{display:flex;gap:.2rem;opacity:0;transition:opacity .15s;flex-shrink:0}.kanban-card:hover .kanban-card-btns{opacity:1}.kanban-card-desc{font-size:.78rem;color:#64748b;margin:.3rem 0 .4rem;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.kanban-card-meta{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.4rem}.kanban-meta-item{display:inline-flex;align-items:center;gap:.25rem;font-size:.72rem;color:#64748b;background:#f1f5f9;border-radius:4px;padding:2px 6px}.kanban-meta-item.overdue{color:#dc2626;background:#fef2f2}.kanban-form{background:#fff;border:1.5px solid #3b82f6;border-radius:8px;padding:.75rem;display:flex;flex-direction:column;gap:.5rem;margin-bottom:.75rem}.kanban-form-row{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.kanban-form-field{display:flex;flex-direction:column;gap:.2rem}.kanban-form-field label{font-size:.75rem;color:#64748b;font-weight:500}.kanban-form-actions{display:flex;gap:.5rem;margin-top:.25rem}.user-profile-page{background:linear-gradient(135deg,#f5f7ff,#f7f9ff 40%,#fff);min-height:100vh;padding-bottom:2em}.user-profile-page .user-profile-card{margin:1.5rem auto;max-width:32rem;position:relative;background:#ffffffe6;padding:2rem 2.5rem;border-radius:12px;box-shadow:0 10px 30px #00000040}.user-profile-page .user-profile-card .form-checkbox-group{display:flex;align-items:center;margin-bottom:1rem}.user-profile-page .user-profile-card .form-checkbox-group input[type=checkbox]{width:auto;margin-right:.5rem}.user-profile-page .user-profile-card .form-checkbox-group label{font-size:1rem;color:#333}.documents-card-footer{display:flex;justify-content:flex-end;padding:24px 0 4px}.container{display:flex;flex-direction:row}.navigator{margin-right:10px}.content{flex-grow:1}.toolbar{margin-bottom:10px;display:flex;align-items:center}.toolbar-group{display:inline-flex}.toolbar button{background-color:#0008ff;color:#fff;border:0;padding:.5rem 1rem;font-size:15px;font-weight:500;cursor:pointer;margin-right:1px;transition:all .2s;box-shadow:0 4px 6px #00000014;box-sizing:border-box}.toolbar button.selected{background-color:#0400ff!important;box-shadow:0 3px 5px #0000001a}.toolbar .toolbar-group button:first-child{border-top-left-radius:30px;border-bottom-left-radius:30px}.toolbar .toolbar-group button:last-child{border-top-right-radius:30px;border-bottom-right-radius:30px}.toolbar button.standalone{border-radius:30px;margin-left:10px;margin-right:0}.toolbar button:hover{background-color:#7e22ce66;box-shadow:0 5px 7px #0000001a}.toolbar button:active{box-shadow:0 2px 4px #0000001a}.login-card{position:relative}.side-panel-wrapper .side-panel-burger-button{border-radius:0;background:none;font-weight:700;margin-top:1rem}.side-panel-wrapper .side-panel-burger-button[aria-expanded=true]+.side-panel-content{left:0}.side-panel-wrapper .side-panel-content{display:flex;background:#fff;position:fixed;flex-direction:column;top:0;height:100vh;width:16em;left:-16em;box-shadow:2px 0 8px #0003;transition:left .3s ease-in-out;overflow-y:auto;z-index:1000}.side-panel-wrapper .side-panel-content .side-panel-close-button{cursor:pointer;border:none;padding:0 .25em .125em;border-radius:0;background:none;font-weight:700;font-size:2em;display:flex;margin-left:auto;flex-shrink:0}.side-panel-wrapper .side-panel-content .side-panel-links-list{list-style:none;margin:0;padding:0 0 1.5em}.side-panel-wrapper .side-panel-content .side-panel-links-list .side-panel-group{margin-bottom:0}.side-panel-wrapper .side-panel-content .side-panel-links-list .side-panel-group-label{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.55em 1em .3em;font-size:.68em;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#7c3aed;background:#f5f3ff;border-top:1px solid #ede9fe;border-bottom:1px solid #ede9fe;border-left:none;border-right:none;margin-top:.25em;cursor:pointer;box-sizing:border-box;text-align:left}.side-panel-wrapper .side-panel-content .side-panel-links-list .side-panel-group-label:hover{background:#ede9fe}.side-panel-wrapper .side-panel-content .side-panel-links-list .side-panel-group-name{flex:1}.side-panel-wrapper .side-panel-content .side-panel-links-list .side-panel-group-chevron{font-size:1.1em;transition:transform .2s ease;display:inline-block;line-height:1;color:#a78bfa}.side-panel-wrapper .side-panel-content .side-panel-links-list .side-panel-group-chevron.open{transform:rotate(0)}.side-panel-wrapper .side-panel-content .side-panel-links-list .side-panel-group-chevron:not(.open){transform:rotate(-90deg)}.side-panel-wrapper .side-panel-content .side-panel-links-list .side-panel-group-items{list-style:none;margin:0;padding:0}.side-panel-wrapper .side-panel-content .side-panel-links-list .side-panel-link{text-decoration:none;font-weight:500;font-size:.88em;color:#1e293b;display:block;padding:.45em 1em .45em 1.4em;border-left:3px solid transparent;transition:background .15s,color .15s}.side-panel-wrapper .side-panel-content .side-panel-links-list .side-panel-link[aria-current=page]{border-left-color:#7c3aed;background:#f5f3ff;color:#7c3aed;font-weight:700}.side-panel-wrapper .side-panel-content .side-panel-links-list .side-panel-link:hover{background:#f8fafc;color:#7c3aed}.side-panel-wrapper .side-panel-content .side-panel-close-button:hover{color:gray}.admin-header .admin-header-left{display:flex;gap:.75em}.header-manuel-btn{padding:5px 11px;background:#fff;color:#374151;border:1px solid #d1d5db;border-radius:7px;font-size:12px;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s;white-space:nowrap}.header-manuel-btn:hover{background:#f0f9ff;border-color:#6366f1;color:#6366f1}.header-manuel-btn:disabled{opacity:.5;cursor:not-allowed}.mail-widget{margin:2rem auto}.cand-page{padding:24px;display:flex;flex-direction:column;gap:16px;height:100%;box-sizing:border-box}.cand-page-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.cand-page-title{margin:0;font-size:22px;font-weight:800;letter-spacing:-.02em}.cand-page-sub{margin:4px 0 0;font-size:13px;color:#1118278c}.cand-filters{display:flex;gap:10px;flex-wrap:nowrap;align-items:center}.cand-search{flex:1 1 140px;min-width:120px}.cand-statut-filter{flex:0 1 160px;width:160px;min-width:90px}.cand-layout{display:flex;gap:16px;flex:1;min-height:0}.cand-layout-split .cand-table-wrap{flex:1.2}.cand-table-wrap{flex:1;overflow:auto;border:1px solid rgba(0,0,0,.07);border-radius:16px;background:#fff}.cand-table{width:100%;border-collapse:collapse;font-size:13px}.cand-table thead th{position:sticky;top:0;background:#f8fafc;padding:10px 14px;text-align:left;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#1118278c;border-bottom:1px solid rgba(0,0,0,.07)}.cand-row{cursor:pointer;border-bottom:1px solid rgba(0,0,0,.05);transition:background .1s}.cand-row:hover{background:#f5f3ff}.cand-row-selected{background:#ede9fe}.cand-row td{padding:10px 14px;vertical-align:middle}.cand-name-cell{display:flex;align-items:center;gap:6px}.cand-cv-badge{font-size:10px;font-weight:700;background:#dbeafe;color:#1d4ed8;border:0;border-radius:4px;padding:1px 5px;cursor:pointer;font-family:inherit}.cand-sort-th{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.cand-sort-th:hover{color:#111827d9;background:#f1f5f9}.cand-sort-active{color:#6366f1}.cand-sort-label{display:inline-flex;align-items:center;gap:2px}.cand-sort-icon{font-size:10px;opacity:.6}.cand-cv-col{white-space:nowrap}.cand-cv-link{display:inline-flex;align-items:center;gap:3px;font-size:12px;font-weight:600;color:#1d4ed8;text-decoration:none;background:#dbeafe;border:0;border-radius:4px;padding:2px 7px;cursor:pointer;font-family:inherit;transition:background .15s}.cand-cv-link:hover{background:#bfdbfe}.cand-cv-none{color:#1118274d}.cand-loading,.cand-empty{padding:40px;text-align:center;color:#11182766;font-size:14px}.cand-tags{display:flex;flex-wrap:wrap;gap:4px}.cand-tags-sm .cand-tag{font-size:10px;padding:1px 6px}.cand-tag{background:#ede9fe;color:#5b21b6;border-radius:99px;padding:2px 8px;font-size:11px;font-weight:600;white-space:nowrap}.cand-tag-more{background:#e5e7eb;color:#374151}.cand-detail{width:420px;flex-shrink:0;border:1px solid rgba(0,0,0,.07);border-radius:16px;background:#fff;display:flex;flex-direction:column;overflow:hidden}.cand-detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 18px 12px;border-bottom:1px solid rgba(0,0,0,.07);background:#fafbfc}.cand-detail-name{margin:0;font-size:17px;font-weight:800}.cand-detail-sub{display:flex;align-items:center;gap:8px;margin-top:4px;font-size:12px;color:#1118278c;flex-wrap:wrap}.cand-detail-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.cand-detail-body{flex:1;overflow-y:auto;padding:16px 18px;display:flex;flex-direction:column;gap:20px}.cand-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 16px}.cand-info-row{display:flex;flex-direction:column;gap:2px}.cand-full{grid-column:1 / -1}.cand-info-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#11182773}.cand-info-value{font-size:13px;color:#111827e6}.cand-tags-row{display:flex;flex-direction:column;gap:6px}.cand-section{border-top:1px solid rgba(0,0,0,.06);padding-top:14px}.cand-section-title{margin:0 0 10px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#1118278c}.cand-cv-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.cand-cv-name{font-size:13px;color:#111827cc;flex:1}.cand-doc-list{list-style:none;margin:0 0 8px;padding:0;display:flex;flex-direction:column;gap:6px}.cand-doc-item{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 10px;border:1px solid rgba(0,0,0,.07);border-radius:8px;background:#fafbfc}.cand-doc-name{font-size:12px;color:#111827cc;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.cand-doc-actions{display:flex;gap:4px;flex-shrink:0}.cand-form{display:flex;flex-direction:column;gap:14px}.cand-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 14px}.cand-form-group{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:600;color:#111827b3}.cand-input{border:1px solid rgba(0,0,0,.1);border-radius:10px;padding:9px 11px;font-size:13px;outline:none;background:#fff;color:#111827e6;transition:border-color .12s,box-shadow .12s;width:100%;box-sizing:border-box}.cand-input:focus{border-color:#4f46e580;box-shadow:0 0 0 3px #4f46e51a}.cand-textarea{resize:vertical;min-height:60px}.cand-edit-actions{display:flex;justify-content:flex-end;gap:8px}.cand-upload-row{display:flex;align-items:center;gap:8px}.cand-upload-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:8px;font-weight:600;font-size:12px;cursor:pointer;background:linear-gradient(135deg,#5b3aed,#6555f7);color:#fff;transition:opacity .2s}.cand-upload-btn:hover{opacity:.88}.cand-rm-btn{border:none;background:transparent;color:#ef4444;font-size:14px;cursor:pointer;font-weight:700}.cand-hint{font-size:11px;color:#11182766}.cand-btn{border:1px solid rgba(0,0,0,.1);border-radius:999px;padding:9px 16px;font-weight:700;font-size:13px;cursor:pointer;background:#fff;transition:transform .05s,box-shadow .12s,opacity .12s}.cand-btn:disabled{opacity:.5;cursor:not-allowed}.cand-btn:hover:not(:disabled){box-shadow:0 2px 8px #0000001a}.cand-btn-primary{background:linear-gradient(135deg,#3a3aed,#7555f7);color:#fff;border:none;box-shadow:0 4px 14px #463aed38}.cand-btn-primary:hover:not(:disabled){transform:translateY(-1px)}.cand-btn-outline{background:#fff;border-color:#00000026}.cand-btn-ghost{background:transparent;border-color:transparent}.cand-btn-danger{background:#fff;border-color:#ef444466;color:#dc2626}.cand-btn-sm{padding:6px 12px;font-size:12px}.cand-btn-xs{padding:4px 8px;font-size:11px;border-radius:6px}.cand-alert-error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b;border-radius:10px;padding:10px 12px;font-size:13px;font-weight:600}.cand-overlay{position:fixed;inset:0;background:#0006;z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px}.cand-modal{background:#fff;border-radius:20px;width:100%;max-width:640px;max-height:90vh;overflow-y:auto;box-shadow:0 24px 64px #0000002e;display:flex;flex-direction:column}.cand-modal-sm{max-width:420px}.cand-modal-header{display:flex;align-items:center;justify-content:space-between;padding:18px 22px 14px;border-bottom:1px solid rgba(0,0,0,.07)}.cand-modal-header h3{margin:0;font-size:17px;font-weight:800}.cand-close{border:none;background:transparent;font-size:16px;cursor:pointer;color:#11182780;width:28px;height:28px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;transition:background .12s}.cand-close:hover{background:#f3f4f6}.cand-modal .cand-form{padding:18px 22px 22px}.cand-modal-footer{display:flex;justify-content:flex-end;gap:8px;padding-top:6px}.cand-convert-info{margin:0;font-size:13px;color:#111827a6;padding-bottom:4px}.cand-dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:18px 16px;border:2px dashed #c7d2fe;border-radius:10px;background:#fafbff;cursor:pointer;transition:border-color .15s,background .15s,transform .1s;text-align:center;-webkit-user-select:none;user-select:none;outline:none}.cand-dropzone:hover:not(.cand-dropzone-disabled),.cand-dropzone:focus:not(.cand-dropzone-disabled){border-color:#818cf8;background:#eef2ff}.cand-dropzone-over{border-color:#4f46e5;background:#e0e7ff;transform:scale(1.01)}.cand-dropzone-loading{border-style:solid;border-color:#a5b4fc;background:#eef2ff;cursor:default;animation:cand-pulse 1.2s ease-in-out infinite}@keyframes cand-pulse{0%,to{opacity:1}50%{opacity:.6}}.cand-dropzone-disabled{opacity:.45;cursor:not-allowed}.cand-dropzone-icon{font-size:22px;line-height:1}.cand-dropzone-label{font-size:13px;font-weight:600;color:#4f46e5}.cand-dropzone-hint{font-size:11px;color:#11182766}.cand-extract-status{display:flex;align-items:center;gap:8px;margin-top:8px;font-size:12px;color:#4f46e5;font-weight:600}.cand-extract-spinner{display:inline-block;width:12px;height:12px;border:2px solid #c7d2fe;border-top-color:#4f46e5;border-radius:50%;animation:cand-spin .7s linear infinite;flex-shrink:0}@keyframes cand-spin{to{transform:rotate(360deg)}}.cand-extract-result{margin-top:8px;padding:10px 12px;background:#f5f3ff;border:1px solid #ddd6fe;border-radius:8px}.cand-cv-selected{display:flex;align-items:center;gap:10px;padding:9px 12px;border:1px solid #c7d2fe;border-radius:10px;background:#eef2ff}.cand-view-toggle{display:flex;border:1px solid rgba(0,0,0,.1);border-radius:10px;overflow:hidden;flex-shrink:0}.cand-view-btn{border:none;background:#fff;padding:7px 13px;font-size:12px;font-weight:600;color:#1118278c;cursor:pointer;transition:background .12s,color .12s;line-height:1}.cand-view-btn+.cand-view-btn{border-left:1px solid rgba(0,0,0,.1)}.cand-view-btn-active{background:#4338ca;color:#fff}.cand-view-btn:not(.cand-view-btn-active):hover{background:#f5f3ff;color:#4f46e5}.cand-layout-kanban{overflow:hidden}.cand-kanban-wrap{flex:1;overflow-x:auto;overflow-y:hidden;min-height:0}.cand-kanban{display:flex;gap:12px;height:100%;min-height:0;align-items:stretch;padding:4px 2px 12px}.cand-kanban-col{flex:0 0 210px;width:210px;display:flex;flex-direction:column;background:#f8fafc;border:1px solid rgba(0,0,0,.07);border-radius:14px;overflow:hidden;max-height:100%}.cand-kanban-col-header{display:flex;align-items:center;gap:7px;padding:10px 12px 8px;border-bottom:1px solid rgba(0,0,0,.06);background:#f8fafc;position:sticky;top:0;z-index:1}.cand-kanban-col-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.cand-kanban-col-title{flex:1;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#111827a6}.cand-kanban-col-count{font-size:11px;font-weight:700;background:#e4e7eb;border-radius:99px;padding:1px 7px;color:#4b5563}.cand-kanban-cards{flex:1;overflow-y:auto;padding:8px;display:flex;flex-direction:column;gap:7px}.cand-kanban-card{background:#fff;border-radius:10px;padding:11px 12px;border:1.5px solid rgba(0,0,0,.07);cursor:pointer;transition:border-color .15s,box-shadow .15s;outline:none}.cand-kanban-card:hover{border-color:#6366f159;box-shadow:0 2px 10px #6366f11a}.cand-kanban-card-selected{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11f}.cand-kanban-card[draggable=true]{cursor:grab}.cand-kanban-card[draggable=true]:active{cursor:grabbing;opacity:.6}.cand-kanban-col-over{background:#eef2ff;border-color:#a5b4fc}.cand-kanban-col-over .cand-kanban-cards{outline:2px dashed #a5b4fc;outline-offset:-4px;border-radius:8px}.cand-kanban-drag-handle{float:right;font-size:14px;color:#11182733;line-height:1;margin:0 0 4px 6px;cursor:grab;-webkit-user-select:none;user-select:none}.cand-kanban-name{font-size:13px;color:#111827e6;line-height:1.3}.cand-kanban-poste{font-size:11px;color:#11182773;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cand-kanban-tags{margin-top:7px}.cand-kanban-footer{display:flex;align-items:center;justify-content:space-between;margin-top:8px;font-size:11px;color:#11182766}.cand-kanban-empty{text-align:center;padding:20px 0;font-size:12px;color:#1118274d;border-radius:8px;transition:background .15s,color .15s}.cand-kanban-empty-over{background:#e0e7ff;color:#4338ca;font-weight:600}@media(max-width:900px){.cand-layout-split{flex-direction:column}.cand-detail{width:100%}}.crh-page{padding:24px;display:flex;flex-direction:column;gap:20px;min-height:100%;box-sizing:border-box}.crh-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}.crh-title{margin:0;font-size:22px;font-weight:800;letter-spacing:-.02em;color:#111827}.crh-sub{margin:4px 0 0;font-size:13px;color:#6b7280}.crh-header-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.crh-year-select{padding:8px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;background:#fff;cursor:pointer;color:#374151;font-weight:600}.crh-year-select:focus{outline:2px solid #6366f1;border-color:transparent}.crh-btn-primary{padding:8px 16px;background:#6366f1;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s}.crh-btn-primary:hover{background:#4f46e5}.crh-btn-secondary{padding:8px 14px;background:#fff;color:#374151;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:border-color .15s,background .15s}.crh-btn-secondary:hover{border-color:#6366f1;color:#6366f1}.crh-btn-secondary.crh-btn-active{border-color:#6366f1;background:#eef2ff;color:#6366f1}.crh-params-saving{color:#f59e0b;font-size:10px;animation:crh-blink 1s infinite}@keyframes crh-blink{0%,to{opacity:1}50%{opacity:.3}}.crh-btn-icon{width:28px;height:28px;border:none;border-radius:6px;font-size:14px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;margin-left:4px;transition:background .12s}.crh-btn-icon.crh-edit{background:#eff6ff;color:#3b82f6}.crh-btn-icon.crh-edit:hover{background:#dbeafe}.crh-btn-icon.crh-done{background:#ecfdf5;color:#10b981}.crh-btn-icon.crh-done:hover{background:#d1fae5}.crh-btn-icon.crh-del{background:#fef2f2;color:#ef4444}.crh-btn-icon.crh-del:hover{background:#fee2e2}.crh-params-panel{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:20px 24px}.crh-params-title{margin:0 0 16px;font-size:15px;font-weight:700;color:#1e293b}.crh-params-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}.crh-param-field{display:flex;flex-direction:column;gap:4px}.crh-param-label{font-size:12px;font-weight:600;color:#475569;text-transform:uppercase;letter-spacing:.03em}.crh-param-input-wrap{display:flex;align-items:center;gap:6px}.crh-param-input{width:100px;padding:6px 10px;border:1px solid #cbd5e1;border-radius:6px;font-size:14px;font-weight:600;color:#1e293b;background:#fff}.crh-param-input:focus{outline:2px solid #6366f1;border-color:transparent}.crh-param-unit{font-size:13px;font-weight:600;color:#64748b}.crh-param-tip{margin:0;font-size:11px;color:#94a3b8;line-height:1.5}.crh-params-note{margin:16px 0 0;padding:12px 14px;background:#fffbeb;border:1px solid #fde68a;border-radius:8px;font-size:12px;color:#78350f;line-height:1.6}.crh-section{display:flex;flex-direction:column;gap:14px}.crh-section-title{margin:0;font-size:16px;font-weight:700;color:#1e293b;display:flex;align-items:center;gap:8px}.crh-badge{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;background:#6366f1;color:#fff;border-radius:99px;font-size:12px;font-weight:700}.crh-badge-warn{background:#fef3c7;color:#92400e}.crh-empty{padding:40px 24px;text-align:center;color:#94a3b8;background:#f8fafc;border:2px dashed #e2e8f0;border-radius:12px}.crh-empty-icon{font-size:32px;display:block;margin-bottom:8px}.crh-empty p{margin:0;font-size:14px}.crh-table-wrap{overflow-x:auto;border-radius:10px;border:1px solid #e2e8f0}.crh-emp-table{width:100%;border-collapse:collapse;font-size:13px}.crh-emp-table thead tr{background:#f1f5f9}.crh-emp-table th{padding:10px 14px;text-align:left;font-size:11px;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.crh-emp-table td{padding:10px 14px;border-top:1px solid #f1f5f9;vertical-align:middle}.crh-emp-table tbody tr:hover{background:#fafafa}.crh-emp-row-editing{background:#eff6ff!important}.crh-emp-identity{display:flex;align-items:center;gap:10px}.crh-emp-avatar{width:32px;height:32px;border-radius:50%;background:#6366f1;color:#fff;font-size:12px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.crh-emp-name-link{background:none;border:none;padding:0;font-size:13px;font-weight:700;color:#4f46e5;cursor:pointer;text-decoration:underline;text-underline-offset:2px;text-align:left}.crh-emp-name-link:hover{color:#3730a3}.crh-emp-email{font-size:11px;color:#94a3b8}.crh-emp-poste{color:#64748b;font-size:12px}.crh-emp-actions{text-align:right;white-space:nowrap}.crh-row-inactive td{opacity:.5}.crh-val-set{font-weight:600;color:#1e293b}.crh-val-unset{color:#94a3b8;font-style:italic;font-size:12px}.crh-computed{color:#6366f1}.crh-val-tag{margin-left:6px;font-size:10px;font-weight:600;background:#fef3c7;color:#92400e;border-radius:4px;padding:1px 5px;vertical-align:middle}.crh-section-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px}.crh-collapse-btn{display:flex;align-items:center;gap:8px;background:none;border:none;padding:0;cursor:pointer;text-align:left}.crh-collapse-btn:hover .crh-section-title,.crh-collapse-btn:hover .crh-collapse-chevron{color:#6366f1}.crh-collapse-chevron{font-size:18px;color:#94a3b8;transition:transform .2s ease;display:inline-block;line-height:1}.crh-collapse-chevron-closed{transform:rotate(-90deg)}.crh-toggle-label{display:flex;align-items:center;gap:6px;font-size:13px;color:#64748b;cursor:pointer;-webkit-user-select:none;user-select:none}.crh-hint{padding:14px 18px;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;font-size:13px;color:#1d4ed8}.crh-inline-inputs{display:flex;gap:6px}.crh-input-sm{padding:5px 8px;border:1px solid #cbd5e1;border-radius:6px;font-size:13px;color:#1e293b;background:#fff;min-width:0}.crh-input-sm:focus{outline:2px solid #6366f1;border-color:transparent}.crh-input-sm[type=number]{width:90px}.crh-input-sm[type=month]{width:140px}.crh-input-suffix-wrap{display:flex;align-items:center;gap:5px}.crh-input-suffix{font-size:12px;color:#94a3b8;white-space:nowrap}.crh-monthly-table{width:100%;border-collapse:collapse;font-size:13px}.crh-monthly-table thead tr{background:#f1f5f9}.crh-monthly-table th{padding:10px 12px;font-size:11px;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.04em;text-align:right;white-space:nowrap}.crh-monthly-table .crh-th-left{text-align:left}.crh-monthly-table .crh-th-center{text-align:center}.crh-monthly-table .crh-th-total{text-align:right;color:#1e40af}.crh-monthly-table td{padding:9px 12px;border-top:1px solid #f1f5f9;text-align:right;vertical-align:middle;white-space:nowrap}.crh-monthly-table tbody tr:hover{background:#fafafa}.crh-row-zero td{color:#cbd5e1}.crh-td-mois{text-align:left!important;font-weight:600;color:#334155;white-space:nowrap}.crh-td-action{text-align:center;width:36px}.crh-paie-badge{display:inline-block;margin-left:6px;font-size:10px;font-weight:700;background:#ecfdf5;color:#059669;border-radius:4px;padding:1px 5px;vertical-align:middle;letter-spacing:.02em}.crh-td-center{text-align:center!important;color:#64748b}.crh-td-brut{font-weight:600;color:#1e293b}.crh-td-charge{color:#475569}.crh-td-total{font-weight:700;color:#1e40af!important;background:#eff6ff}.crh-row-total td{background:#f8fafc;border-top:2px solid #cbd5e1;padding:11px 12px;font-size:13px}.crh-row-total .crh-td-total{background:#dbeafe}.crh-summary-cards{display:flex;flex-wrap:wrap;gap:12px}.crh-summary-card{flex:1 1 150px;background:#fff;border:1px solid #e2e8f0;border-top:3px solid #6366f1;border-radius:10px;padding:14px 16px;display:flex;flex-direction:column;gap:6px}.crh-summary-card-large{flex:1 1 200px;border-width:1px;border-top-width:4px;background:#fef9ff}.crh-summary-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#6b7280}.crh-summary-value{font-size:18px;font-weight:800;letter-spacing:-.02em}.crh-summary-card-large .crh-summary-value{font-size:22px}.crh-ratio-bar{padding:12px 16px;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;font-size:13px;color:#166534;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.crh-ratio-label{font-weight:700}.crh-ratio-value{font-weight:600}.crh-modal-overlay{position:fixed;inset:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.crh-modal-floating{z-index:1100;box-shadow:0 8px 40px #00000047;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.crh-modal{background:#fff;border-radius:14px;width:100%;max-width:440px;box-shadow:0 20px 60px #0003;overflow:hidden}.crh-modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:20px 24px 16px;border-bottom:1px solid #f1f5f9}.crh-modal-header-drag{cursor:grab;-webkit-user-select:none;user-select:none}.crh-modal-header-drag:active{cursor:grabbing}.crh-modal-title{margin:0;font-size:17px;font-weight:800;color:#111827}.crh-modal-sub{margin:3px 0 0;font-size:12px;color:#94a3b8}.crh-modal-close{background:none;border:none;font-size:22px;color:#9ca3af;cursor:pointer;line-height:1;padding:0 0 0 12px;flex-shrink:0}.crh-modal-close:hover{color:#374151}.crh-modal-error{margin:0;padding:10px 24px;background:#fef2f2;color:#dc2626;font-size:13px;border-bottom:1px solid #fee2e2}.crh-modal-body{padding:20px 24px 24px;display:flex;flex-direction:column;gap:16px}.crh-modal-field{display:flex;flex-direction:column;gap:5px}.crh-modal-label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#6b7280}.crh-modal-input{padding:9px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;color:#111827;background:#fff;width:100%;box-sizing:border-box;transition:border-color .15s}.crh-modal-input:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.crh-modal-computed{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:#f0f9ff;border:1px solid #bae6fd;border-radius:8px}.crh-modal-computed-label{font-size:12px;font-weight:600;color:#0369a1}.crh-modal-computed-value{font-size:16px;font-weight:800;color:#0369a1}.crh-modal-note{margin:0;font-size:12px;color:#6b7280;background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;padding:8px 12px;line-height:1.5}.crh-modal-actions{display:flex;gap:10px;justify-content:flex-end;padding-top:4px}.crh-btn-sm{font-size:12px;padding:6px 10px}.crh-modal-wide{max-width:580px;width:95vw}.crh-paie-search-wrap{position:relative;padding:10px 24px 0}.crh-paie-search{width:100%;box-sizing:border-box;padding:8px 32px 8px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:13px;color:#111827;background:#f9fafb;outline:none;transition:border-color .15s}.crh-paie-search:focus{border-color:#6366f1;background:#fff}.crh-paie-search-clear{position:absolute;right:30px;top:50%;transform:translateY(-50%);background:none;border:none;font-size:16px;color:#9ca3af;cursor:pointer;line-height:1;padding:0}.crh-paie-search-clear:hover{color:#374151}.crh-paie-scroll{overflow-y:auto;max-height:340px;margin:10px 0 0;border-top:1px solid #f1f5f9;border-bottom:1px solid #f1f5f9}.crh-paie-empty{text-align:center;color:#94a3b8;font-style:italic;padding:20px;font-size:13px}.crh-paie-footer{padding:12px 24px 20px;display:flex;flex-direction:column;gap:12px}.crh-paie-total-row{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px}.crh-paie-emp-name{font-weight:600;font-size:13px;color:#1e293b}.crh-paie-emp-poste{font-size:11px;color:#94a3b8}.crh-paie-td-upload{text-align:center;white-space:nowrap}.crh-paie-upload-group{display:inline-flex;align-items:center;gap:4px}.crh-btn-download{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border:1px solid #6ee7b7;border-radius:6px;background:#ecfdf5;color:#059669;font-size:13px;text-decoration:none;transition:background .15s}.crh-btn-download:hover{background:#d1fae5}.crh-btn-upload{padding:4px 10px;border:1px dashed #d1d5db;border-radius:6px;font-size:12px;font-weight:600;color:#6b7280;background:#f9fafb;cursor:pointer;transition:border-color .15s,color .15s,background .15s;white-space:nowrap}.crh-btn-upload:hover{border-color:#6366f1;color:#6366f1;background:#eef2ff}.crh-btn-upload-loading{color:#f59e0b;border-color:#fde68a;background:#fffbeb;cursor:default}.crh-btn-upload-done{color:#059669;border-color:#6ee7b7;background:#ecfdf5;border-style:solid}.crh-paie-row-preview td{background:#f8fafc}.crh-bulletin-preview{margin:0 12px 8px;border:1px solid #e0e7ff;border-radius:8px;background:#fff;overflow:hidden}.crh-bulletin-preview-header{display:flex;align-items:center;justify-content:space-between;padding:6px 12px;background:#eef2ff;border-bottom:1px solid #e0e7ff}.crh-bulletin-preview-title{font-size:12px;font-weight:700;color:#4338ca}.crh-bulletin-preview-close{background:none;border:none;font-size:16px;color:#818cf8;cursor:pointer;line-height:1}.crh-bulletin-preview-close:hover{color:#4338ca}.crh-bulletin-error{margin:0;padding:10px 14px;font-size:12px;color:#dc2626}.crh-bulletin-table{width:100%;border-collapse:collapse;font-size:12px}.crh-bulletin-table td{padding:4px 12px}.crh-bulletin-field{color:#64748b;width:55%}.crh-bulletin-val{font-weight:700;color:#1e293b;text-align:right}.crh-bulletin-row-highlight .crh-bulletin-field{color:#1e293b;font-weight:600}.crh-bulletin-row-highlight .crh-bulletin-val{color:#6366f1;font-size:13px}.crh-bulletin-apply{display:block;width:calc(100% - 24px);margin:8px 12px 10px;font-size:12px;padding:7px;text-align:center}.crh-paie-table{width:100%;border-collapse:collapse;font-size:13px}.crh-paie-table thead tr{background:#f8fafc}.crh-paie-table th{padding:8px 12px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#64748b;text-align:left;border-bottom:1px solid #e2e8f0}.crh-paie-th-num{text-align:right}.crh-paie-table td{padding:8px 12px;border-top:1px solid #f1f5f9;vertical-align:middle}.crh-paie-table tfoot td{padding:10px 12px;border-top:2px solid #e2e8f0;background:#f8fafc}.crh-paie-emp{display:flex;align-items:center;gap:8px;font-weight:600;color:#1e293b}.crh-emp-avatar-sm{width:26px;height:26px;font-size:10px}.crh-paie-theorique{text-align:right;color:#94a3b8;font-size:12px}.crh-paie-input{width:110px}.crh-paie-total-label{text-align:right;font-weight:700;font-size:12px;color:#475569;text-transform:uppercase;letter-spacing:.03em}.crh-paie-total-val{font-weight:800;font-size:15px;color:#1e40af}@media(max-width:768px){.crh-page{padding:16px}.crh-header{flex-direction:column;align-items:flex-start}.crh-params-grid{grid-template-columns:1fr 1fr}}@media(max-width:480px){.crh-params-grid{grid-template-columns:1fr}.crh-summary-cards{flex-direction:column}}.mydoc-error{margin:0 0 1rem;padding:.75rem 1rem;background:#fee2e2;color:#991b1b;border-radius:6px;font-size:.875rem}.mydoc-table{width:100%;border-collapse:collapse;font-size:.875rem}.mydoc-table thead tr{border-bottom:1px solid var(--color-border, #e5e7eb)}.mydoc-table th{padding:.6rem .75rem;text-align:left;font-weight:600;color:var(--color-muted, #6b7280);font-size:.8rem;text-transform:uppercase;letter-spacing:.03em}.mydoc-table tbody tr{border-bottom:1px solid var(--color-border, #f3f4f6);transition:background .12s}.mydoc-table tbody tr:hover{background:#f9fafb}.mydoc-table td{padding:.65rem .75rem;vertical-align:middle}.mydoc-download-link{background:none;border:none;padding:0;color:var(--color-primary, #4f46e5);font-weight:500;font-size:inherit;cursor:pointer;text-align:left}.mydoc-download-link:hover:not(:disabled){text-decoration:underline}.mydoc-download-link:disabled{opacity:.6;cursor:default}.mydoc-muted{color:var(--color-muted, #6b7280)}.mydoc-actions{text-align:right;white-space:nowrap}.mydoc-sign-btn{padding:.35rem .85rem;border:1px solid #4338ca;border-radius:6px;background:#4338ca;color:#fff;font-size:.8rem;font-weight:600;cursor:pointer;transition:background .15s,opacity .15s}.mydoc-sign-btn:hover:not(:disabled){background:#3730a3;border-color:#3730a3}.mydoc-sign-btn:disabled{opacity:.6;cursor:not-allowed}.mydoc-sign-pending{font-size:.78rem;color:#1e40af;font-style:italic}.mydoc-sign-done{font-size:.78rem;color:#166534;font-weight:600}.mydoc-sig-badge{display:inline-block;padding:.15rem .55rem;border-radius:9999px;font-size:.75rem;font-weight:600}.mydoc-sig-none{color:#6b7280;font-size:.8rem}.comp-page{padding:24px;display:flex;flex-direction:column;gap:16px;height:100%;overflow:hidden;box-sizing:border-box}.comp-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}.comp-title{margin:0;font-size:22px;font-weight:800;letter-spacing:-.02em;color:#111827}.comp-sub{margin:4px 0 0;font-size:13px;color:#6b7280}.comp-layout{display:flex;gap:16px;flex:1;min-height:0}.comp-list-panel{width:340px;flex-shrink:0;display:flex;flex-direction:column;gap:10px;overflow:hidden;transition:width .2s}.comp-list-panel-narrow{width:280px}.comp-list-panel-kanban{flex:1;width:auto;min-width:0;flex-shrink:1}.comp-filters{display:flex;gap:8px;flex-wrap:wrap}.comp-search{flex:1;min-width:120px;padding:8px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:13px}.comp-search:focus{outline:2px solid #6366f1;border-color:transparent}.comp-filter-select{padding:8px 10px;border:1px solid #d1d5db;border-radius:8px;font-size:13px;background:#fff}.comp-list{display:flex;flex-direction:column;gap:8px;overflow-y:auto;flex:1}.comp-empty{padding:32px 16px;text-align:center;color:#94a3b8;font-size:13px}.comp-card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:12px 14px;cursor:pointer;transition:border-color .15s,box-shadow .15s;position:relative}.comp-card:hover{border-color:#6366f1;box-shadow:0 0 0 3px #6366f110}.comp-card-selected{border-color:#6366f1;background:#fafafe}.comp-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:4px}.comp-card-ref{font-size:12px;font-weight:700;color:#6366f1;font-family:monospace}.comp-card-nom{font-size:14px;font-weight:700;color:#1e293b}.comp-card-version{font-size:11px;color:#94a3b8;margin-top:2px}.comp-card-prix{font-size:13px;font-weight:700;color:#15803d;margin-top:4px}.comp-card-actions{display:flex;gap:4px;margin-top:8px;justify-content:flex-end}.comp-badge{display:inline-block;padding:2px 8px;border-radius:99px;font-size:11px;font-weight:700}.comp-form-panel{flex:1;min-width:0;display:flex;flex-direction:column;background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.comp-form-panel-header{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid #f1f5f9;background:#fafafa}.comp-form-panel-title{margin:0;font-size:15px;font-weight:700;color:#1e293b}.comp-form-panel-body{flex:1;overflow-y:auto;padding:20px}.comp-form{display:flex;flex-direction:column;gap:20px}.comp-form-error{padding:10px 14px;background:#fef2f2;border:1px solid #fee2e2;border-radius:8px;color:#dc2626;font-size:13px}.comp-form-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px}.comp-form-field{display:flex;flex-direction:column;gap:4px}.comp-form-field-wide{grid-column:1 / -1}.comp-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#6b7280}.comp-input{padding:8px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;color:#111827;background:#fff;width:100%;box-sizing:border-box}.comp-input:focus{outline:2px solid #6366f1;border-color:transparent}.comp-textarea{resize:vertical;min-height:56px}.comp-bom-section{display:flex;flex-direction:column;gap:12px}.comp-bom-header{display:flex;align-items:center;justify-content:space-between}.comp-bom-title{margin:0;font-size:14px;font-weight:700;color:#1e293b;display:flex;align-items:center}.comp-bom-empty{padding:24px;text-align:center;color:#94a3b8;font-size:13px;background:#f8fafc;border:2px dashed #e2e8f0;border-radius:8px}.comp-bom-table-wrap{overflow-x:auto;border:1px solid #e5e7eb;border-radius:8px}.comp-bom-table{width:100%;border-collapse:collapse;font-size:13px}.comp-bom-table thead tr{background:#f8fafc}.comp-bom-table th{padding:8px 10px;text-align:left;font-size:11px;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.comp-ligne-row td{padding:6px 8px;border-top:1px solid #f1f5f9;vertical-align:middle}.comp-input-sm{padding:5px 8px;border:1px solid #d1d5db;border-radius:6px;font-size:12px;width:100%;box-sizing:border-box}.comp-input-sm:focus{outline:2px solid #6366f1;border-color:transparent}.comp-qty,.comp-unite{width:70px}.comp-picker-btn{width:100%;padding:5px 8px;border:1px solid #d1d5db;border-radius:6px;background:#fff;font-size:12px;text-align:left;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:6px}.comp-picker-btn:hover{border-color:#6366f1}.comp-picker-placeholder{color:#94a3b8}.comp-picker-selected{color:#1e293b;font-weight:600}.comp-picker-arrow{color:#94a3b8;flex-shrink:0}.comp-picker-dropdown{background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 8px 32px #0000002e;overflow:hidden}.comp-picker-search{width:100%;box-sizing:border-box;padding:8px 12px;border:none;border-bottom:1px solid #f1f5f9;font-size:13px;outline:none}.comp-picker-list{max-height:220px;overflow-y:auto}.comp-picker-item{display:flex;flex-direction:column;padding:8px 12px;width:100%;text-align:left;background:none;border:none;border-top:1px solid #f8fafc;cursor:pointer;box-sizing:border-box}.comp-picker-item:hover{background:#f0f9ff}.comp-picker-ref{font-size:11px;font-weight:700;color:#6366f1;font-family:monospace}.comp-picker-name{font-size:12px;color:#374151}.comp-picker-empty{padding:14px;text-align:center;color:#94a3b8;font-size:12px}.comp-fab-form{display:flex;gap:6px;align-items:center}.comp-fab-create-btn{padding:5px 10px;background:#6366f1;color:#fff;border:none;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap;flex-shrink:0}.comp-fab-create-btn:hover{background:#4f46e5}.comp-fab-create-btn:disabled{opacity:.5;cursor:not-allowed}.comp-fab-error{margin-top:4px;font-size:11px;color:#dc2626}.comp-fab-linked{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 8px;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:6px}.comp-fab-linked-info{display:flex;flex-direction:column}.comp-fab-unlink{background:none;border:none;cursor:pointer;font-size:14px;color:#6b7280;flex-shrink:0}.comp-fab-unlink:hover{color:#374151}.comp-btn-primary{padding:8px 16px;background:#6366f1;color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer}.comp-btn-primary:hover{background:#4f46e5}.comp-btn-primary:disabled{opacity:.6;cursor:not-allowed}.comp-btn-secondary{padding:8px 14px;background:#fff;color:#374151;border:1px solid #d1d5db;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer}.comp-btn-secondary:hover{border-color:#6366f1;color:#6366f1}.comp-btn-add{padding:6px 12px;background:#f0fdf4;color:#15803d;border:1px solid #bbf7d0;border-radius:8px;font-size:12px;font-weight:600;cursor:pointer}.comp-btn-add:hover{background:#dcfce7}.comp-btn-icon{width:28px;height:28px;border:none;border-radius:6px;font-size:13px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.comp-edit{background:#eff6ff;color:#3b82f6}.comp-edit:hover{background:#dbeafe}.comp-del{background:#fef2f2;color:#ef4444}.comp-del:hover{background:#fee2e2}.comp-close{background:#f3f4f6;color:#6b7280;font-size:18px}.comp-close:hover{background:#e5e7eb}.comp-form-actions{display:flex;gap:10px;justify-content:flex-end;padding-top:4px;border-top:1px solid #f1f5f9}.comp-btn-produire{padding:4px 10px;background:#15803d;color:#fff;border:none;border-radius:6px;font-size:12px;font-weight:700;cursor:pointer;white-space:nowrap;transition:background .15s}.comp-btn-produire:hover{background:#166534}.comp-form-panel-header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.comp-btn-produire-lg{padding:7px 14px;background:#15803d;color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:700;cursor:pointer;white-space:nowrap;transition:background .15s}.comp-btn-produire-lg:hover{background:#166534}.comp-modal-overlay{position:fixed;inset:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.comp-modal{background:#fff;border-radius:14px;width:100%;max-width:560px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0003;overflow:hidden}.comp-modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:18px 22px 14px;border-bottom:1px solid #f1f5f9}.comp-modal-title{margin:0;font-size:16px;font-weight:800;color:#111827}.comp-modal-sub{margin:3px 0 0;font-size:12px;color:#94a3b8}.comp-modal-body{padding:18px 22px 22px;overflow-y:auto;display:flex;flex-direction:column;gap:14px}.comp-modal-actions{display:flex;gap:10px;justify-content:flex-end;padding-top:4px}.comp-fab-preview{display:flex;flex-direction:column;gap:12px}.comp-fab-preview-title{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#6b7280;margin:0}.comp-fab-success{padding:12px 16px;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;font-size:13px;font-weight:600;color:#15803d}.comp-conso-table{width:100%;border-collapse:collapse;font-size:13px}.comp-conso-table th{padding:7px 10px;text-align:left;font-size:11px;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.04em;background:#f8fafc;border-bottom:1px solid #e5e7eb}.comp-conso-table td{padding:7px 10px;border-top:1px solid #f1f5f9}.comp-td-r{text-align:right}.comp-td-total{font-weight:700;color:#6366f1}.comp-fab-commandes{background:#fffbeb;border:1px solid #fde68a;border-radius:8px;padding:10px 14px}.comp-fab-commandes-title{font-size:12px;font-weight:700;color:#92400e;margin-bottom:8px}.comp-fab-commande-line{display:flex;align-items:center;gap:8px;font-size:12px;color:#374151;padding:3px 0;border-top:1px solid #fef3c7}.comp-fab-commande-qte{color:#d97706;font-weight:600;margin-left:auto;white-space:nowrap}.comp-fab-no-commande{margin:0;font-size:11px;color:#9ca3af;font-style:italic;text-align:center;padding:6px 0}.comp-btn-pdf{padding:7px 13px;background:#fff;color:#dc2626;border:1px solid #fca5a5;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .15s}.comp-btn-pdf:hover{background:#fef2f2}.comp-btn-pdf:disabled{opacity:.5;cursor:not-allowed}.comp-btn-pdf-sm{padding:5px 10px;background:#fff;color:#dc2626;border:1px solid #fca5a5;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap}.comp-btn-pdf-sm:hover{background:#fef2f2}.comp-card-obsolete{background:#f8fafc;border-style:dashed}.comp-view-toggle{display:flex;border:1px solid #e2e8f0;border-radius:7px;overflow:hidden;flex-shrink:0}.comp-view-btn{padding:6px 13px;font-size:12px;font-weight:600;background:#fff;color:#6b7280;border:none;cursor:pointer;transition:background .12s,color .12s;white-space:nowrap}.comp-view-btn+.comp-view-btn{border-left:1px solid #e2e8f0}.comp-view-btn:hover{background:#f1f5f9;color:#374151}.comp-view-btn-active{background:#f0f4ff;color:#4f46e5}.comp-kanban{display:flex;gap:14px;flex:1;min-height:0;overflow-x:auto;overflow-y:hidden;align-items:stretch}.comp-kanban-col{flex:1;min-width:200px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;display:flex;flex-direction:column;overflow:hidden;transition:border-color .15s,background .15s}.comp-kanban-col-over{border-color:#6366f1;background:#eef2ff}.comp-kanban-col-header{display:flex;align-items:center;gap:7px;padding:10px 12px 8px;border-bottom:1px solid #e2e8f0;flex-shrink:0}.comp-kanban-col-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0}.comp-kanban-col-title{font-size:12px;font-weight:700;color:#374151;flex:1}.comp-kanban-col-count{font-size:11px;font-weight:700;background:#e2e8f0;color:#6b7280;border-radius:99px;padding:1px 7px}.comp-kanban-cards{display:flex;flex-direction:column;gap:8px;padding:10px 8px;overflow-y:auto;flex:1}.comp-kanban-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:10px 10px 8px;cursor:pointer;position:relative;transition:box-shadow .12s,border-color .12s}.comp-kanban-card:hover{box-shadow:0 2px 8px #00000014;border-color:#c7d2fe}.comp-kanban-drag-handle{position:absolute;top:8px;right:8px;font-size:14px;color:#cbd5e1;cursor:grab;line-height:1}.comp-kanban-card-top{display:flex;align-items:center;gap:8px;margin-bottom:2px}.comp-kanban-card-actions{display:flex;align-items:center;gap:6px;margin-top:8px;padding-top:7px;border-top:1px solid #f1f5f9}.comp-kanban-empty{text-align:center;font-size:12px;color:#94a3b8;padding:20px 8px;border:2px dashed #e2e8f0;border-radius:8px;transition:border-color .15s,background .15s}.comp-kanban-empty-over{border-color:#6366f1;background:#eef2ff;color:#6366f1}@media(max-width:768px){.comp-layout{flex-direction:column}.comp-list-panel,.comp-list-panel-narrow,.comp-list-panel-kanban{width:100%;flex:none}.comp-kanban{flex-direction:column;overflow-y:auto;overflow-x:hidden}.comp-kanban-col{min-width:unset;height:auto;overflow:visible}.comp-kanban-cards{overflow:visible}}.cs-page{padding:24px;display:flex;flex-direction:column;gap:16px}.cs-header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:16px}.cs-title{margin:0;font-size:22px;font-weight:800;letter-spacing:-.02em;color:#111827}.cs-sub{margin:4px 0 0;font-size:13px;color:#6b7280}.cs-btn-check{padding:8px 16px;background:#fff;color:#6366f1;border:1px solid #c7d2fe;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .15s}.cs-btn-check:hover{background:#eef2ff}.cs-btn-check:disabled{opacity:.5;cursor:not-allowed}.cs-kpis{display:flex;gap:10px;flex-wrap:wrap}.cs-kpi{min-width:90px;padding:10px 14px;background:#fff;border:1px solid #e5e7eb;border-top:3px solid #6366f1;border-radius:10px;text-align:center;cursor:pointer;transition:box-shadow .15s}.cs-kpi:hover{box-shadow:0 2px 8px #0000001a}.cs-kpi-count{font-size:20px;font-weight:800}.cs-kpi-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#6b7280;margin-top:2px}.cs-filters{display:flex;gap:10px;flex-wrap:wrap}.cs-search{flex:1;min-width:220px;padding:8px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:13px}.cs-search:focus{outline:2px solid #6366f1;border-color:transparent}.cs-select{padding:8px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:13px;background:#fff}.cs-empty{padding:48px 24px;text-align:center;color:#94a3b8;font-size:14px;line-height:1.6}.cs-table-wrap{overflow-x:auto;border:1px solid #e5e7eb;border-radius:12px}.cs-table{width:100%;border-collapse:collapse;font-size:13px}.cs-table thead tr{background:#f8fafc}.cs-table th{padding:10px 12px;text-align:left;font-size:11px;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.cs-th-r{text-align:right}.cs-table td{padding:10px 12px;border-top:1px solid #f1f5f9;vertical-align:middle}.cs-table tbody tr:hover{background:#fafafa}.cs-row-annulee td{opacity:.45}.cs-ref{font-size:12px;font-weight:700;color:#6366f1;font-family:monospace;white-space:nowrap}.cs-stock-ref{font-size:11px;font-weight:700;color:#374151;font-family:monospace}.cs-stock-des{font-size:12px;color:#6b7280}.cs-td-r{text-align:right}.cs-alert{color:#dc2626;font-weight:700}.cs-alert-icon{margin-left:4px}.cs-seuil{color:#94a3b8}.cs-qte{font-weight:700;color:#1e293b}.cs-date{white-space:nowrap;color:#475569;font-size:12px}.cs-comp-chip{background:#eff6ff;color:#1d4ed8;border-radius:4px;padding:2px 7px;font-size:11px;font-weight:700;font-family:monospace}.cs-fo-chip{background:#f0fdf4;color:#15803d;border-radius:4px;padding:2px 8px;font-size:12px;font-weight:600}.cs-fo-empty{color:#cbd5e1;font-size:12px;cursor:help}.cs-prix{color:#475569;font-size:12px}.cs-prix-total{font-weight:700;color:#1e293b}.cs-prix-total{font-weight:700;color:#1e40af}.cs-prix-total-hint{font-size:11px;color:#1d4ed8;font-weight:600;margin-top:4px;display:block}.cs-prix-total-label{font-size:11px;color:#6b7280;margin-top:3px;display:block}.cs-actions{text-align:right;white-space:nowrap}.cs-badge{display:inline-block;padding:3px 9px;border-radius:99px;font-size:11px;font-weight:700}.cs-btn-devis-sm{width:28px;height:28px;border-radius:6px;font-size:13px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;margin-left:4px;background:#fffbeb;color:#d97706;border:1px solid #fde68a}.cs-btn-devis-sm:hover{background:#fef3c7}.cs-btn-upload-devis{padding:8px 14px;background:#fffbeb;color:#92400e;border:1px dashed #fcd34d;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;width:100%;text-align:center}.cs-btn-upload-devis:hover{background:#fef3c7}.cs-btn-upload-devis:disabled{opacity:.5;cursor:not-allowed}.cs-devis-attached{display:flex;align-items:center;gap:10px;padding:8px 12px;background:#fffbeb;border:1px solid #fde68a;border-radius:8px}.cs-devis-icon{font-size:18px;flex-shrink:0}.cs-devis-info{display:flex;flex-direction:column;flex:1;min-width:0}.cs-devis-name{font-size:13px;font-weight:600;color:#374151;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cs-devis-date{font-size:11px;color:#9ca3af}.cs-devis-dl,.cs-devis-replace{width:26px;height:26px;border-radius:6px;border:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;font-size:13px;flex-shrink:0}.cs-devis-dl{background:#ecfdf5;color:#059669}.cs-devis-dl:hover{background:#d1fae5}.cs-devis-replace{background:#eff6ff;color:#3b82f6}.cs-devis-replace:hover{background:#dbeafe}.cs-btn-pdf-sm{width:28px;height:28px;border-radius:6px;font-size:13px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;margin-left:4px;background:#fef2f2;color:#dc2626;border:1px solid #fca5a5}.cs-btn-pdf-sm:hover{background:#fee2e2}.cs-btn-pdf{padding:7px 13px;background:#fff;color:#dc2626;border:1px solid #fca5a5;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap}.cs-btn-pdf:hover{background:#fef2f2}.cs-btn-pdf:disabled{opacity:.5;cursor:not-allowed}.cs-btn-edit,.cs-btn-del{width:28px;height:28px;border:none;border-radius:6px;font-size:13px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;margin-left:4px}.cs-btn-edit{background:#eff6ff;color:#3b82f6}.cs-btn-edit:hover{background:#dbeafe}.cs-btn-del{background:#fef2f2;color:#ef4444}.cs-btn-del:hover{background:#fee2e2}.cs-overlay{position:fixed;inset:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.cs-modal{background:#fff;border-radius:14px;width:100%;max-width:440px;box-shadow:0 20px 60px #0003;overflow:hidden}.cs-modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #f1f5f9}.cs-modal-title{margin:0;font-size:15px;font-weight:800;color:#111827}.cs-close{background:none;border:none;font-size:20px;color:#9ca3af;cursor:pointer}.cs-modal-body{padding:18px 20px 22px;display:flex;flex-direction:column;gap:14px}.cs-modal-ref{margin:0;font-size:13px;color:#6b7280}.cs-field{display:flex;flex-direction:column;gap:4px}.cs-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#6b7280}.cs-input{padding:8px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;color:#111827;background:#fff;width:100%;box-sizing:border-box}.cs-input:focus{outline:2px solid #6366f1;border-color:transparent}.cs-textarea{resize:vertical;min-height:64px}.cs-modal-actions{display:flex;gap:10px;justify-content:flex-end}.cs-btn-primary{padding:8px 16px;background:#6366f1;color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer}.cs-btn-primary:hover{background:#4f46e5}.cs-btn-primary:disabled{opacity:.6;cursor:not-allowed}.cs-btn-secondary{padding:8px 14px;background:#fff;color:#374151;border:1px solid #d1d5db;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer}.cs-btn-secondary:hover{border-color:#6366f1;color:#6366f1}.pf-page{padding:24px;display:flex;flex-direction:column;gap:16px}.pf-header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:12px}.pf-title{margin:0;font-size:22px;font-weight:800;letter-spacing:-.02em;color:#111827}.pf-sub{margin:4px 0 0;font-size:13px;color:#6b7280}.pf-header-right{display:flex;align-items:center;gap:10px}.pf-count{font-size:13px;color:#6b7280;background:#f3f4f6;padding:4px 12px;border-radius:99px}.pf-search-bar{position:relative;max-width:380px}.pf-search{width:100%;box-sizing:border-box;padding:8px 32px 8px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:13px}.pf-search:focus{outline:2px solid #6366f1;border-color:transparent}.pf-clear{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:none;font-size:16px;color:#9ca3af;cursor:pointer}.pf-empty{padding:48px 24px;text-align:center;color:#94a3b8;font-size:14px}.pf-list{display:flex;flex-direction:column;gap:12px}.pf-product{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.pf-product-header-row{display:flex;align-items:center}.pf-btn-vendre{flex-shrink:0;padding:6px 14px;background:#15803d;color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:700;cursor:pointer;margin:6px 14px 6px 0;white-space:nowrap}.pf-btn-vendre:hover{background:#166534}.pf-product-header{width:100%;display:flex;align-items:center;justify-content:space-between;padding:14px 18px;background:none;border:none;cursor:pointer;text-align:left;gap:12px}.pf-product-header:hover{background:#fafafa}.pf-product-left{display:flex;align-items:center;gap:10px}.pf-product-right{display:flex;align-items:center;gap:16px;flex-shrink:0}.pf-product-chevron{font-size:16px;color:#94a3b8;transition:transform .15s}.pf-product-ref{font-size:12px;font-weight:700;color:#6366f1;font-family:monospace}.pf-product-nom{font-size:14px;font-weight:700;color:#1e293b}.pf-product-stat{font-size:12px;color:#6b7280;background:#f3f4f6;padding:3px 10px;border-radius:99px}.pf-product-total{background:#ede9fe;color:#5b21b6;font-weight:600}.pf-composition{padding:12px 18px 0;border-top:1px solid #f1f5f9}.pf-composition-title,.pf-lots-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#6b7280;margin-bottom:8px}.pf-bom-table,.pf-lots-table{width:100%;border-collapse:collapse;font-size:13px;margin-bottom:12px}.pf-bom-table th,.pf-lots-table th{padding:7px 10px;text-align:left;font-size:11px;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.04em;background:#f8fafc;border-bottom:1px solid #e5e7eb}.pf-bom-table td,.pf-lots-table td{padding:7px 10px;border-top:1px solid #f1f5f9;vertical-align:middle}.pf-td-r{text-align:right}.pf-ref{font-weight:700;color:#6366f1;font-family:monospace;font-size:12px}.pf-lots{padding:0 18px 16px;border-top:1px solid #f1f5f9;margin-top:4px}.pf-lots-title{margin-top:12px}.pf-date{white-space:nowrap;color:#475569;font-size:13px}.pf-qty{font-weight:700;color:#1e293b}.pf-notes{color:#6b7280;font-size:12px;max-width:200px}.pf-statut{display:inline-block;padding:2px 8px;border-radius:99px;font-size:11px;font-weight:700;background:#dcfce7;color:#166534}.pf-conso-list{display:flex;flex-wrap:wrap;gap:4px}.pf-conso-chip{font-size:11px;background:#eff6ff;color:#1d4ed8;border-radius:4px;padding:2px 7px;font-weight:600;white-space:nowrap}.pf-total-row td{background:#f8fafc;border-top:2px solid #e5e7eb;padding:8px 10px}
