:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.5;font-weight:400;color-scheme:light;color:#003781;background-color:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--baloise-blue: #003781;--baloise-blue-light: #0099CC;--baloise-yellow: #FFCC00;--baloise-orange: #FF9900;--baloise-background: #F5F7FA;--baloise-white: #FFFFFF}body{margin:0;min-width:320px;min-height:100vh;background:linear-gradient(135deg,#f5f7fa,#fff)}#root{width:100%;min-height:100vh}.feedback-overlay{position:fixed;inset:0;background:#0f172a99;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:10001;animation:feedbackOverlayFade .15s ease-out}@keyframes feedbackOverlayFade{0%{opacity:0}to{opacity:1}}.feedback-card{position:relative;background:#fff;border-radius:16px;width:100%;max-width:420px;padding:28px 24px 24px;box-shadow:0 25px 50px -12px #00000040;animation:feedbackCardSlide .2s cubic-bezier(.32,.72,0,1);max-height:90vh;overflow-y:auto}@keyframes feedbackCardSlide{0%{opacity:0;transform:scale(.96) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.feedback-close{position:absolute;top:12px;right:12px;width:28px;height:28px;border:none;background:transparent;border-radius:6px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#94a3b8;transition:all .15s}.feedback-close:hover{background:#f1f5f9;color:#475569}.feedback-close:disabled{cursor:not-allowed;opacity:.5}.feedback-header{text-align:center;margin-bottom:24px}.feedback-title{margin:0 0 4px;font-size:18px;font-weight:700;color:#1e293b}.feedback-subtitle{margin:0;font-size:13px;color:#64748b}.feedback-form{display:flex;flex-direction:column;gap:16px}.feedback-field{display:flex;flex-direction:column;gap:6px}.feedback-label{display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#64748b}.feedback-label-hint{display:flex;align-items:center;gap:4px;font-size:11px;font-weight:500;text-transform:none;letter-spacing:0;color:#94a3b8}.feedback-input{padding:10px 12px;border:1px solid #e2e8f0;border-radius:8px;font-size:14px;color:#1e293b;background:#fff;transition:all .15s}.feedback-input:hover{border-color:#cbd5e1}.feedback-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.feedback-input:disabled{background:#f8fafc;cursor:not-allowed}.feedback-input::placeholder{color:#94a3b8}.feedback-textarea{padding:10px 12px;border:1px solid #e2e8f0;border-radius:8px;font-size:14px;font-family:inherit;color:#1e293b;background:#fff;resize:vertical;min-height:100px;transition:all .15s}.feedback-textarea:hover{border-color:#cbd5e1}.feedback-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.feedback-textarea:disabled{background:#f8fafc;cursor:not-allowed}.feedback-textarea::placeholder{color:#94a3b8}.feedback-priorities{display:flex;gap:8px;flex-wrap:wrap}.feedback-priority-btn{display:flex;align-items:center;gap:6px;padding:8px 12px;border:1px solid #e2e8f0;border-radius:8px;background:#fff;font-size:13px;font-weight:500;color:#475569;cursor:pointer;transition:all .15s}.feedback-priority-btn:hover{border-color:var(--priority-color);background:#f8fafc}.feedback-priority-btn.selected{border-color:var(--priority-color);background:color-mix(in srgb,var(--priority-color) 10%,white);color:#1e293b}.feedback-priority-btn:disabled{cursor:not-allowed;opacity:.6}.priority-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.feedback-message{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:8px;font-size:13px;font-weight:500}.feedback-message.error{background:#fef2f2;color:#dc2626;border:1px solid #fecaca}.feedback-message.success{background:#f0fdf4;color:#16a34a;border:1px solid #bbf7d0}.feedback-actions{display:flex;justify-content:flex-end;margin-top:8px}.feedback-submit{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;background:#3b82f6;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .15s;min-width:120px}.feedback-submit:hover{background:#2563eb}.feedback-submit:active{transform:scale(.98)}.feedback-submit:disabled{background:#93c5fd;cursor:not-allowed;transform:none}.feedback-loading{width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:feedbackSpin .8s linear infinite}@keyframes feedbackSpin{to{transform:rotate(360deg)}}.feedback-images{display:flex;flex-wrap:wrap;gap:8px}.feedback-image-preview{position:relative;width:80px;height:80px;border-radius:8px;overflow:hidden;border:1px solid #e2e8f0}.feedback-image-preview img{width:100%;height:100%;object-fit:cover}.feedback-image-remove{position:absolute;top:4px;right:4px;width:24px;height:24px;border:none;background:#ef4444e6;color:#fff;border-radius:4px;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transition:opacity .15s}.feedback-image-preview:hover .feedback-image-remove{opacity:1}.feedback-image-remove:hover{background:#dc2626}.feedback-image-remove:disabled{cursor:not-allowed;opacity:.5}@media (max-width: 480px){.feedback-card{max-width:calc(100% - 24px);margin:12px;padding:24px 20px 20px}.feedback-priorities{flex-direction:column}.feedback-priority-btn{justify-content:center}.feedback-image-remove{opacity:1}}.feedback-fab{position:fixed;bottom:24px;right:24px;width:48px;height:48px;border:none;border-radius:14px;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #3b82f666,0 2px 4px #0000001a;transition:all .3s cubic-bezier(.32,.72,0,1);z-index:9998}:has(.chat-drawer.open) .feedback-fab{right:474px}.feedback-fab:hover{transform:scale(1.05);box-shadow:0 6px 20px #3b82f680,0 4px 8px #00000026}.feedback-fab:active{transform:scale(.98)}.feedback-fab:after{content:"";position:absolute;inset:0;border-radius:14px;background:inherit;opacity:0;animation:feedbackPulse 3s ease-in-out infinite;pointer-events:none}@keyframes feedbackPulse{0%,to{transform:scale(1);opacity:0}50%{transform:scale(1.15);opacity:.15}}@media (max-width: 480px){.feedback-fab{bottom:16px;right:16px;width:44px;height:44px;border-radius:12px}:has(.chat-drawer.open) .feedback-fab{opacity:0;pointer-events:none;right:16px}}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f5f7fa,#fff);position:relative;overflow:hidden}.login-page:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at center,rgba(0,55,129,.05),transparent 70%)}.login-container{position:relative;z-index:1;padding:24px;width:100%;max-width:440px}.login-card{background:#fff;border-radius:24px;padding:48px 40px;box-shadow:0 20px 60px #0037811f;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(0,55,129,.08)}.login-header{text-align:center;margin-bottom:40px}.login-logo{height:56px;width:auto;margin-bottom:24px;object-fit:contain}.login-title{font-size:28px;font-weight:600;color:#003781;margin:0 0 8px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.login-subtitle{font-size:15px;color:#666;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.login-form{display:flex;flex-direction:column;gap:20px}.input-group{position:relative}.input-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#999;pointer-events:none;z-index:1}.login-input{width:100%;padding:14px 16px 14px 44px;font-size:15px;border:1.5px solid rgba(0,55,129,.2);border-radius:12px;outline:none;transition:all .3s cubic-bezier(.4,0,.2,1);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#fff;color:#1d1d1f;box-sizing:border-box}.login-input::placeholder{color:#999}.login-input:focus{border-color:#003781;box-shadow:0 0 0 4px #00378114}.login-input.error{border-color:#ed2939;animation:shake .4s ease}.error-message{display:flex;align-items:center;justify-content:center;gap:8px;color:#ed2939;font-size:14px;text-align:center;font-weight:500;animation:fadeIn .3s ease;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#ed293914;padding:12px 16px;border-radius:8px}.login-button{width:100%;padding:14px 24px;background:#003781;color:#fff;border:none;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;box-shadow:0 4px 12px #00378133}.login-button:hover{background:#002560;transform:translateY(-1px);box-shadow:0 6px 16px #0037814d}.login-button:active{transform:translateY(0)}.login-button:disabled{background:#9ab3d1;cursor:not-allowed;transform:none;box-shadow:none}.login-input:disabled{background:#f5f5f5;cursor:not-allowed}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-8px)}75%{transform:translate(8px)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 640px){.login-card{padding:36px 28px}.login-title{font-size:24px}.login-subtitle{font-size:14px}}.profile-overlay{position:fixed;inset:0;background:#0f172a99;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:10000;animation:overlayFade .15s ease-out}@keyframes overlayFade{0%{opacity:0}to{opacity:1}}.profile-card{position:relative;background:#fff;border-radius:16px;width:100%;max-width:340px;padding:28px 24px 24px;box-shadow:0 25px 50px -12px #00000040;animation:cardSlide .2s cubic-bezier(.32,.72,0,1)}@keyframes cardSlide{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.profile-close{position:absolute;top:12px;right:12px;width:24px;height:24px;border:none;background:transparent;border-radius:6px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#94a3b8;transition:all .15s}.profile-close:hover{background:#f1f5f9;color:#475569}.profile-user{text-align:center;margin-bottom:24px}.profile-avatar-ring{display:inline-flex;padding:3px;border-radius:50%;background:linear-gradient(135deg,#3b82f6,#8b5cf6);margin-bottom:12px}.profile-avatar{width:56px;height:56px;border-radius:50%;background:#fff;color:#3b82f6;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:700;border:2px solid #fff}.profile-email{margin:0 0 4px;font-size:15px;font-weight:600;color:#1e293b}.profile-badge{display:inline-block;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;padding:3px 8px;border-radius:4px;background:#f1f5f9;color:#64748b}.profile-section{margin-bottom:20px}.profile-label{display:block;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#94a3b8;margin-bottom:10px}.profile-flags{display:flex;justify-content:center;gap:8px}.profile-flag{position:relative;width:44px;height:44px;border:2px solid #e2e8f0;border-radius:10px;background:#fff;cursor:pointer;transition:all .15s;display:flex;align-items:center;justify-content:center;font-size:22px}.profile-flag:hover{border-color:#cbd5e1;background:#f8fafc}.profile-flag.selected{border-color:#3b82f6;background:#eff6ff}.flag-check-icon{position:absolute;bottom:-5px;right:-5px;background:#3b82f6;color:#fff;border-radius:50%;padding:3px;box-shadow:0 2px 4px #3b82f64d}.profile-tabs-list{display:flex;flex-direction:column;gap:2px}.profile-tab-item{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border:none;background:transparent;border-radius:8px;cursor:pointer;transition:background .1s;text-align:left;width:100%}.profile-tab-item:hover{background:#f8fafc}.profile-tab-item.nested{padding-left:28px}.profile-tab-item.disabled{opacity:.4;cursor:not-allowed}.profile-tab-name{font-size:14px;font-weight:500;color:#334155;display:flex;align-items:center;gap:6px}.admin-only{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.3px;padding:2px 5px;background:#fef3c7;color:#b45309;border-radius:3px}.profile-check{width:20px;height:20px;border:2px solid #e2e8f0;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .15s;flex-shrink:0}.profile-check.checked{background:#3b82f6;border-color:#3b82f6;color:#fff}.profile-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:24px;padding-top:16px;border-top:1px solid #f1f5f9}.profile-saved{display:flex;align-items:center;gap:4px;font-size:13px;font-weight:500;color:#22c55e;animation:savedPop .2s ease}@keyframes savedPop{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.profile-save{padding:9px 20px;background:#3b82f6;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .15s}.profile-save:hover{background:#2563eb}.profile-save:active{transform:scale(.98)}.profile-save:disabled{background:#93c5fd;cursor:not-allowed;transform:none}.profile-logout{display:flex;align-items:center;gap:6px;padding:9px 16px;background:transparent;color:#dc2626;border:1px solid #fecaca;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s}.profile-logout:hover{background:#fef2f2;border-color:#f87171;color:#b91c1c}.profile-logout:active{transform:scale(.98)}.profile-demo-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;cursor:pointer;transition:all .15s}.profile-demo-toggle:hover{background:#f1f5f9;border-color:#cbd5e1}.profile-demo-toggle.active{background:#eff6ff;border-color:#3b82f6}.demo-toggle-label{font-size:13px;font-weight:500;color:#475569}.profile-demo-toggle.active .demo-toggle-label{color:#1e40af}.demo-toggle-switch{position:relative;width:44px;height:24px;background:#cbd5e1;border-radius:12px;transition:all .2s;flex-shrink:0}.demo-toggle-switch.on{background:#3b82f6}.demo-toggle-knob{position:absolute;top:2px;left:2px;width:20px;height:20px;background:#fff;border-radius:50%;box-shadow:0 1px 3px #00000026;transition:transform .2s}.demo-toggle-switch.on .demo-toggle-knob{transform:translate(20px)}.profile-help-link{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:12px 16px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;color:#475569;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s}.profile-help-link:hover{background:#eff6ff;border-color:#3b82f6;color:#3b82f6}.profile-help-link svg{flex-shrink:0}@media (max-width: 380px){.profile-card{max-width:calc(100% - 24px);margin:12px;padding:24px 20px 20px}.profile-flag{width:40px;height:40px;font-size:20px}}.app-header{position:sticky;top:0;z-index:9999;width:100%;padding:20px 0;background:transparent}.header-wrapper{max-width:1400px;margin:0 auto;padding:0 32px;position:relative}.header-container{background:#fff;border-radius:100px;box-shadow:0 4px 24px #00378114;padding:12px 32px;display:flex;align-items:center;justify-content:space-between;gap:clamp(16px,2vw,32px);transition:all .3s ease}.header-container:hover{box-shadow:0 8px 32px #0037811f}.header-logo{flex-shrink:0;position:relative}.logo-link{display:flex;align-items:center;text-decoration:none;transition:opacity .3s ease}.logo-link:hover{opacity:.8}.logo-image{height:40px;width:auto;object-fit:contain}.demo-logo-text{font-size:24px;font-weight:700;color:#003781;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;letter-spacing:-.5px}.ai-badge{font-size:14px;font-weight:700;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;margin-left:2px;color:#c41e3a;position:relative;top:10px}.header-nav{flex:1;display:flex;justify-content:flex-end}.nav-menu{display:flex;list-style:none;margin:0;padding:0;gap:clamp(16px,2.5vw,40px);align-items:center}.nav-link{text-decoration:none;color:#003781;font-size:16px;font-weight:500;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;padding:8px 0;position:relative;transition:color .3s ease;white-space:nowrap}.nav-link:after{content:"";position:absolute;bottom:0;left:0;width:0;height:3px;background:#003781;transition:width .3s ease}.nav-link:hover{color:#003781}.nav-link:hover:after,.nav-link.active:after{width:100%}.nav-link.active{color:#003781;font-weight:600}.nav-link-dropdown{display:flex;align-items:center;gap:4px;cursor:pointer}.dropdown-chevron{transition:transform .2s ease}.dropdown-chevron.open{transform:rotate(180deg)}.nav-item-with-dropdown{position:relative}.nav-dropdown{position:absolute;top:100%;left:50%;transform:translate(-50%);background:#fff;border:1px solid rgba(0,55,129,.15);border-radius:12px;box-shadow:0 8px 24px #00378126;min-width:180px;z-index:10000;padding:20px 0 8px;margin-top:12px;overflow:visible}.nav-dropdown:before{content:"";position:absolute;top:-12px;left:0;right:0;height:12px;background:transparent}.dropdown-item{display:flex;align-items:center;gap:10px;padding:12px 16px;color:#003781;text-decoration:none;font-size:14px;font-weight:500;transition:all .2s ease;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.dropdown-item:hover{background:#00378114}.dropdown-item.active{background:#0037811f;font-weight:600}.dropdown-item:not(:last-child){border-bottom:1px solid rgba(0,55,129,.08)}.dropdown-item svg{flex-shrink:0;opacity:.7}.dropdown-item:hover svg,.dropdown-item.active svg{opacity:1}.header-actions{flex-shrink:0;display:flex;align-items:center;gap:12px}.profile-button{display:flex;align-items:center;gap:8px;background:transparent;border:1px solid rgba(0,55,129,.2);color:#003781;padding:10px 20px 10px 24px;border-radius:50px;cursor:pointer;font-size:14px;font-weight:600;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;transition:all .3s ease}.profile-button:hover{border-color:#003781;background:#0037810d}.profile-button svg{width:16px;height:16px}.profile-icon-wrapper{position:relative;display:flex;align-items:center}.pending-tasks-badge{position:absolute;top:2px;left:-16px;background:#dc2626;color:#fff;font-size:9px;font-weight:700;min-width:14px;height:14px;padding:0 3px;border-radius:7px;display:flex;align-items:center;justify-content:center;box-shadow:0 1px 3px #dc262666;border:1.5px solid white}.contact-button,.logout-button{background:#003781;color:#fff;border:none;padding:10px 24px;border-radius:50px;cursor:pointer;font-size:14px;font-weight:600;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;transition:all .3s ease;box-shadow:0 2px 8px #00378133;display:flex;align-items:center;gap:8px}.contact-button:hover,.logout-button:hover{background:#002560;transform:translateY(-1px);box-shadow:0 4px 12px #00378166}.hamburger-button{display:none;background:transparent;border:none;color:#003781;cursor:pointer;padding:8px;border-radius:8px;transition:background .2s ease}.hamburger-button:hover{background:#00378114}.mobile-menu-overlay{display:none;position:absolute;top:100%;left:16px;right:16px;margin-top:8px;background:#fff;border-radius:16px;box-shadow:0 8px 32px #00378126;border:1px solid rgba(0,55,129,.1);z-index:10000;animation:slideDown .2s ease}.mobile-nav{display:flex;flex-direction:column;padding:12px 0}.mobile-nav-link{display:flex;align-items:center;gap:12px;padding:14px 20px;color:#003781;text-decoration:none;font-size:15px;font-weight:500;transition:background .2s ease;border:none;background:transparent;width:100%;text-align:left;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.mobile-nav-link:hover{background:#0037810d}.mobile-nav-link.active{background:#00378114;font-weight:600}.mobile-nav-link svg{flex-shrink:0;opacity:.7}.mobile-nav-link.active svg,.mobile-nav-link:hover svg{opacity:1}.mobile-nav-sublink{padding-left:36px;font-size:14px}.mobile-nav-group-title{padding:14px 20px 6px;font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.mobile-nav-divider{height:1px;background:#0037811a;margin:8px 16px}.mobile-profile-button{color:#003781}.pending-tasks-badge.mobile{position:static;margin-left:auto}.desktop-only{display:flex}@media (max-width: 1300px){.nav-link{font-size:14px}}@media (max-width: 1000px){.hamburger-button{display:flex}.mobile-menu-overlay{display:block}.header-nav,.desktop-only{display:none}}@media (max-width: 1024px){.header-wrapper{padding:0 24px}.header-container{padding:10px 24px}}@media (max-width: 768px){.header-wrapper{padding:0 16px}.app-header{padding:16px 0}.header-container{padding:12px 20px;border-radius:60px}.logo-image{height:32px}.mobile-menu-overlay{left:8px;right:8px}}@media (max-width: 480px){.header-container{padding:10px 16px;border-radius:50px}.mobile-nav-link{padding:12px 16px;font-size:14px}.mobile-nav-sublink{padding-left:28px;font-size:13px}}.search-page{min-height:100vh;background:linear-gradient(135deg,#f5f7fa,#fff);display:flex;flex-direction:column;position:relative;overflow:hidden}.search-page:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at top,rgba(0,55,129,.08),transparent 60%)}.search-page>.search-main{position:relative;z-index:1}.search-main{flex:1;display:flex;align-items:center;justify-content:center;padding:40px 20px;transition:padding-right .3s ease}.search-page.drawer-open .search-main{padding-right:480px}.search-container{width:100%;max-width:720px;text-align:center}.search-title{font-size:48px;font-weight:700;margin:0 0 16px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;letter-spacing:-.5px;color:#003781;animation:luxembourgToBlue 3s ease-in-out forwards;opacity:0}@keyframes luxembourgToBlue{0%{opacity:0;transform:translateY(20px);filter:brightness(1) saturate(1);background:linear-gradient(180deg,#f08b95 0% 45%,#f5f5f5 46%,#fff,#f5f5f5 54%,#89cff0 55% 100%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;color:transparent}20%{opacity:1;transform:translateY(0);background:linear-gradient(180deg,#f08b95 0% 45%,#f5f5f5 46%,#fff,#f5f5f5 54%,#89cff0 55% 100%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;color:transparent}40%{filter:brightness(1.2) saturate(1.4);background:linear-gradient(180deg,#f08b95 0% 45%,#f5f5f5 46%,#fff,#f5f5f5 54%,#89cff0 55% 100%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;color:transparent}70%{filter:brightness(1) saturate(1);background:linear-gradient(180deg,#f08b95 0% 45%,#f5f5f5 46%,#fff,#f5f5f5 54%,#89cff0 55% 100%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;color:transparent}to{filter:brightness(1) saturate(1);background:none;background-clip:unset;-webkit-background-clip:unset;-webkit-text-fill-color:unset;color:#003781;opacity:1;transform:translateY(0)}}.search-subtitle{color:#666;font-size:18px;margin:0 0 48px;font-weight:400}.search-form{margin-bottom:48px}.search-box{position:relative;width:100%;margin-bottom:32px}.search-input{width:100%;padding:18px 56px;font-size:16px;border:2px solid #E0E0E0;border-radius:50px;outline:none;transition:all .3s ease;background:#fff;color:#003781;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;box-shadow:0 2px 8px #00378114}.search-input:hover{border-color:#fc0;box-shadow:0 4px 16px #ffcc0026}.search-input:focus{border-color:#003781;box-shadow:0 4px 16px #00378133}.search-input::placeholder{color:#999}.search-icon{position:absolute;left:20px;top:50%;transform:translateY(-50%);pointer-events:none}.clear-button{position:absolute;right:20px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .2s ease}.clear-button:hover{background:#0000000d}.search-buttons{display:flex;gap:16px;justify-content:center}.search-button{padding:14px 32px;font-size:15px;font-weight:500;border:none;border-radius:50px;cursor:pointer;transition:all .3s ease;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;box-shadow:0 2px 8px #0000001a}.search-button.primary{background:#003781;color:#fff;box-shadow:0 4px 16px #00378140}.search-button.primary:hover{background:#002560;box-shadow:0 6px 20px #00378159;transform:translateY(-2px)}.search-button.secondary{background:#fff;color:#003781;border:2px solid #003781}.search-button.secondary:hover{background:#003781;color:#fff;transform:translateY(-2px);box-shadow:0 4px 16px #00378133}.search-suggestions{margin-top:64px}.suggestions-title{color:#666;font-size:14px;margin:0 0 16px;font-weight:500}.suggestion-chips{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.suggestion-chip{padding:10px 24px;background:#fff;border:1px solid #E0E0E0;border-radius:50px;color:#003781;font-size:14px;cursor:pointer;transition:all .3s ease;font-weight:500}.suggestion-chip:hover{background:linear-gradient(135deg,#f90,#fc0);color:#fff;border-color:transparent;transform:translateY(-2px);box-shadow:0 4px 12px #f903}.search-button:disabled{opacity:.6;cursor:not-allowed}.button-spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin 1s linear infinite;margin-right:8px}.button-spinner.small{width:14px;height:14px;margin-right:0}.drawer-overlay{position:fixed;inset:104px 0 0;background:#0000004d;z-index:98;animation:fadeIn .3s ease}.chat-drawer{position:fixed;top:104px;right:0;width:450px;height:calc(100vh - 104px);background:#fff;box-shadow:-4px 0 24px #00378126;z-index:99;display:flex;flex-direction:column;transform:translate(100%);transition:transform .3s ease;border-top-left-radius:16px}.chat-drawer.open{transform:translate(0)}.drawer-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #E0E0E0;background:#fafafa}.drawer-header h3{margin:0;font-size:16px;font-weight:600;color:#003781}.drawer-header-actions{display:flex;gap:8px}.drawer-action-button{background:transparent;border:none;padding:8px;cursor:pointer;border-radius:8px;color:#666;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.drawer-action-button:hover{background:#e8e8e8;color:#003781}.drawer-close-button{background:transparent;border:none;padding:8px;cursor:pointer;border-radius:8px;color:#666;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.drawer-close-button:hover{background:#e8e8e8;color:#dc2626}.drawer-messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px}.chat-message{display:flex;gap:10px;animation:fadeIn .3s ease}.chat-message.user{flex-direction:row-reverse}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.message-icon{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.chat-message.user .message-icon{background:#003781;color:#fff}.chat-message.assistant .message-icon{background:linear-gradient(135deg,#f90,#fc0);color:#fff}.message-content{padding:10px 14px;border-radius:12px;max-width:85%;line-height:1.5;font-size:14px;white-space:pre-wrap;word-wrap:break-word;text-align:left}.chat-message.user .message-content{background:#003781;color:#fff;border-bottom-right-radius:4px}.chat-message.assistant .message-content{background:#f5f7fa;color:#333;border-bottom-left-radius:4px}.typing-cursor{display:inline-block;animation:blink 1s step-end infinite;color:#003781;font-weight:700}@keyframes blink{50%{opacity:0}}.typing-indicator{display:flex;gap:4px;padding:4px 0}.typing-indicator span{width:6px;height:6px;background:#003781;border-radius:50%;animation:bounce 1.4s ease-in-out infinite}.typing-indicator span:nth-child(1){animation-delay:0s}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes bounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-6px)}}.drawer-error{padding:12px;background:#fef2f2;border:1px solid #FECACA;border-radius:8px;display:flex;align-items:center;justify-content:space-between;margin-top:12px}.pending-action{margin-top:12px;padding:14px;background:linear-gradient(135deg,#ff99001a,#ffcc001a);border:1px solid rgba(255,153,0,.3);border-radius:12px;animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.pending-action-content{display:flex;align-items:center;gap:10px;margin-bottom:12px}.pending-action-icon{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#f90,#fc0);color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0}.pending-action-text{font-size:14px;color:#333}.pending-action-text strong{color:#003781}.pending-action-buttons{display:flex;gap:8px}.action-go-button{flex:1;padding:10px 16px;background:#003781;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.action-go-button:hover{background:#002560;transform:translateY(-1px)}.action-dismiss-button{padding:10px 16px;background:transparent;color:#666;border:1px solid #E0E0E0;border-radius:8px;font-size:14px;cursor:pointer;transition:all .2s ease}.action-dismiss-button:hover{background:#f5f5f5;border-color:#ccc}.drawer-error p{color:#dc2626;margin:0;font-size:13px}.drawer-error button{background:transparent;border:none;color:#dc2626;font-weight:500;cursor:pointer;padding:4px 8px;font-size:13px}.drawer-error button:hover{text-decoration:underline}.drawer-footer{border-top:1px solid #E0E0E0;background:#fafafa}.drawer-actions{display:flex;gap:8px;padding:10px 16px;border-bottom:1px solid #E8E8E8}.action-button{display:flex;align-items:center;gap:5px;padding:6px 10px;background:transparent;border:1px solid #E0E0E0;border-radius:6px;color:#666;font-size:12px;cursor:pointer;transition:all .2s ease}.action-button:hover{background:#f0f0f0;border-color:#003781;color:#003781}.drawer-input-form{display:flex;gap:8px;padding:12px 16px}.drawer-input{flex:1;padding:10px 14px;font-size:14px;border:1px solid #E0E0E0;border-radius:24px;outline:none;transition:all .2s ease;background:#fff;color:#003781}.drawer-input:hover{border-color:#fc0}.drawer-input:focus{border-color:#003781;box-shadow:0 0 0 3px #0037811a}.drawer-input::placeholder{color:#999}.drawer-send-button{width:40px;height:40px;border:none;border-radius:50%;background:#003781;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0}.drawer-send-button:hover:not(:disabled){background:#002560;transform:scale(1.05)}.drawer-send-button:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.search-title{font-size:36px;background-size:100% 100%}.search-subtitle{font-size:16px;margin-bottom:32px}.search-input{padding:16px 48px;font-size:15px}.search-buttons{flex-direction:column;gap:12px}.search-button{width:100%}.suggestion-chips{gap:8px}.suggestion-chip{font-size:13px;padding:8px 16px}.chat-drawer{width:100%}.search-page.drawer-open .search-main{padding-right:20px}}@media (max-width: 480px){.search-title{font-size:28px;background-size:100% 100%}.search-subtitle{font-size:14px}.search-main{padding:20px 16px}}.highlight-layer{z-index:10}.highlight-rect{transition:all .2s ease}.highlight-rect:hover{filter:brightness(1.2)}.highlight-rect.active{filter:brightness(1.3)}@keyframes pulse{0%{opacity:.8;transform:scale(1)}50%{opacity:.4;transform:scale(1.05)}to{opacity:.8;transform:scale(1)}}.pulse-animation{animation:pulse 1.5s ease-in-out infinite;transform-origin:center}.highlight-tooltip{pointer-events:none;-webkit-user-select:none;user-select:none}.devis-page{min-height:100vh;background:linear-gradient(135deg,#f5f7fa,#fff)}*{margin:0;padding:0;box-sizing:border-box}.app{min-height:calc(100vh - 80px);display:flex;flex-direction:column}.reset-btn{background:linear-gradient(120deg,#f90,#fc0);color:#fff;border:none;padding:.45rem .9rem;border-radius:8px;cursor:pointer;font-size:.82rem;font-weight:600;transition:all .2s ease;box-shadow:0 2px 8px #f903}.reset-btn:hover{background:linear-gradient(120deg,#f80,#fb0);transform:translateY(-1px);box-shadow:0 4px 16px #ff99004d}.container{flex:1;display:flex;justify-content:center;padding:1.8rem 2.2rem 2.2rem;overflow:hidden}.upload-zone{width:100%;max-width:900px;height:calc(100vh - 220px);min-height:520px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.6rem;background:#fff;border:2px dashed rgba(0,55,129,.3);border-radius:20px;cursor:pointer;transition:all .25s ease;box-shadow:0 8px 24px #00378114}.upload-zone:hover{border-color:#003781;background:#fafbfc;transform:translateY(-2px);box-shadow:0 12px 32px #00378126}.upload-zone svg{color:#003781}.upload-zone p{color:#003781;font-size:1.15rem;font-weight:500}.upload-zone .sub{font-size:.95rem;color:#666}.file-input-label{background:#003781;color:#fff;padding:.85rem 2rem;border-radius:10px;cursor:pointer;transition:all .2s ease;font-size:.92rem;font-weight:600;letter-spacing:.01em;box-shadow:0 8px 20px #00378140}.file-input-label:hover{transform:translateY(-2px);box-shadow:0 12px 28px #00378159;background:#002560}.split-view{display:grid;grid-template-columns:minmax(460px,3fr) minmax(320px,2fr);gap:1.5rem;width:100%;max-width:1600px;height:calc(100vh - 220px);min-height:520px;background:#fff;border:1px solid rgba(0,55,129,.1);border-radius:22px;padding:1.6rem;box-shadow:0 12px 32px #0037811f;overflow:hidden}.pdf-preview{background:#f8f9fa;border:1px solid rgba(0,55,129,.1);border-radius:16px;padding:1rem 1.25rem 1.25rem;display:flex;flex-direction:column;gap:1.25rem;overflow-y:auto;position:relative}.pdf-locate-toast{position:sticky;top:68px;z-index:9;align-self:flex-start;padding:.45rem .75rem;border-radius:999px;font-size:.85rem;font-weight:600;box-shadow:0 6px 18px #00000014;pointer-events:none}.pdf-locate-toast.info{background:#0037811f;color:#003781;border:1px solid rgba(0,55,129,.18)}.pdf-locate-toast.error{background:#ff3b301f;color:#b42318;border:1px solid rgba(255,59,48,.18)}.pdf-toolbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 1.1rem;background:#fff;border:1px solid rgba(0,55,129,.15);border-radius:12px;box-shadow:0 4px 12px #00378114}.pdf-meta{display:flex;align-items:center;gap:.65rem;color:#003781;font-size:.92rem;min-width:0;flex-shrink:1;flex-wrap:nowrap}.pdf-meta .zoom-controls{position:static!important;flex-direction:row!important;flex-shrink:0;margin-left:.25rem;padding:.15rem .25rem;gap:.2rem;background:#00378108;border:1px solid rgba(0,55,129,.08)}.pdf-meta .zoom-controls .toolbar-icon-btn,.pdf-meta .zoom-controls .toolbar-zoom-indicator{height:24px;padding:0 .35rem;font-size:.7rem;min-width:auto}.pdf-meta .zoom-controls .toolbar-zoom-indicator{min-width:42px}.pdf-meta .zoom-controls .toolbar-icon-btn svg{width:12px;height:12px}.pdf-toolbar .zoom-controls{position:static!important;bottom:auto!important;right:auto!important}.pdf-name{max-width:260px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;font-weight:500}.page-count{font-size:.78rem;padding:.2rem .5rem;border-radius:999px;background:#ff99001a;color:#f90;font-weight:600}.toolbar-actions{display:flex;align-items:center;gap:.75rem}.toolbar-btn{display:inline-flex;align-items:center;gap:.4rem;background:linear-gradient(120deg,#ff99001a,#ffcc001a);border-radius:8px;border:1px solid rgba(255,153,0,.3);color:#003781;padding:.4rem .75rem;font-size:.78rem;letter-spacing:.01em;cursor:pointer;transition:all .2s ease;font-weight:600}.toolbar-btn:hover{border-color:#f90;color:#f90;transform:translateY(-1px);background:linear-gradient(120deg,#ff990026,#ffcc0026)}.toolbar-btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.toolbar-select{height:34px;border-radius:8px;border:1px solid rgba(0,55,129,.2);background:#fff;color:#003781;font-size:.78rem;font-weight:600;padding:0 .6rem;cursor:pointer;transition:all .2s ease}.toolbar-select:hover:not(:disabled){border-color:#f90;color:#f90}.toolbar-select:disabled{opacity:.45;cursor:not-allowed}.zoom-controls{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem .5rem;border-radius:10px;background:#0037810d;border:1px solid rgba(0,55,129,.1)}.toolbar-icon-btn,.toolbar-zoom-indicator{background:#fff;border:1px solid rgba(0,55,129,.2);border-radius:8px;color:#003781;font-size:.78rem;font-weight:600;height:34px;display:inline-flex;align-items:center;justify-content:center;padding:0 .6rem;cursor:pointer;transition:all .2s ease}.toolbar-icon-btn:hover:not(:disabled),.toolbar-zoom-indicator:hover{border-color:#f90;color:#f90}.toolbar-icon-btn:disabled{opacity:.35;cursor:not-allowed}.toolbar-zoom-indicator{min-width:64px;font-variant-numeric:tabular-nums;border-style:dashed}.toolbar-icon-btn.active{background:#00378126;color:#003781}.text-layer{position:absolute;top:0;left:0;overflow:hidden;line-height:1;opacity:1;z-index:2}.text-layer span{color:transparent;position:absolute;white-space:pre;cursor:text}.text-layer span::selection{background:#0064ff4d}.pdf-pages{display:flex;flex-direction:column;gap:1.35rem;padding-right:.35rem}.pdf-page{display:flex;flex-direction:column;align-items:center;gap:.6rem}.pdf-page img{width:100%;max-width:960px;border-radius:12px;border:2px solid rgba(0,55,129,.15);box-shadow:0 8px 24px #0037811f;transition:transform .2s ease,box-shadow .2s ease;background:#fff}.pdf-page img:hover{transform:translateY(-2px);box-shadow:0 12px 32px #0037812e;border-color:#f90}.pdf-page--loading{width:100%}.pdf-page--loading iframe{width:100%;min-height:72vh;border:none;border-radius:12px;box-shadow:0 8px 24px #0037811a;background:#fff}.page-number{font-size:.78rem;color:#666;letter-spacing:.08em;text-transform:uppercase;font-weight:600}.results-panel{background:#f8f9fa;border:1px solid rgba(0,55,129,.1);border-radius:18px;padding:1.6rem;overflow-y:auto;display:flex;flex-direction:column;gap:1.2rem}.results-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.4rem}.results-heading{display:flex;align-items:center;gap:.6rem;font-size:1.15rem;color:#003781;margin:0}.results-heading svg{color:#f90}.save-section-header{display:flex;align-items:center;gap:.5rem}.save-button-compact{display:flex;align-items:center;justify-content:center;gap:.4rem;background:#003781;color:#fff;border:none;padding:.5rem .9rem;border-radius:8px;cursor:pointer;font-size:.8rem;font-weight:600;transition:all .2s ease;box-shadow:0 2px 8px #00378133;letter-spacing:.01em;white-space:nowrap}.save-button-compact:hover:not(:disabled){background:#002560;transform:translateY(-1px);box-shadow:0 4px 12px #0037814d}.save-button-compact:disabled{opacity:.6;cursor:not-allowed;transform:none}.save-button-compact .spinner{animation:spin 1s linear infinite}.save-feedback-compact{display:flex;align-items:center;justify-content:center;gap:.35rem;padding:.5rem .75rem;border-radius:8px;font-size:.8rem;font-weight:600;letter-spacing:.01em;animation:slideIn .3s ease-out;white-space:nowrap}.save-feedback-compact.save-success{background:#10b98126;border:1px solid rgba(16,185,129,.4);color:#059669}.save-feedback-compact.save-error{background:#ef444426;border:1px solid rgba(239,68,68,.4);color:#dc2626}.document-type-badge{display:flex;align-items:center;gap:.6rem;padding:.75rem 1rem;background:linear-gradient(135deg,#003781,#0052a3);border-radius:12px;margin-bottom:.8rem;box-shadow:0 4px 12px #00378126;animation:slideIn .4s ease-out}.document-type-badge svg{color:#f90;flex-shrink:0}.document-type-label{font-size:.85rem;font-weight:600;color:#ffffffd9;text-transform:uppercase;letter-spacing:.05em}.document-type-value{font-size:.95rem;font-weight:700;color:#fff;text-transform:capitalize;background:#f903;padding:.3rem .7rem;border-radius:6px;border:1px solid rgba(255,153,0,.3)}.document-type-badge-header{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:#fff;border:1px solid #E5E7EB;border-radius:12px;box-shadow:0 1px 3px #0000000d;margin-bottom:1.25rem;animation:slideIn .4s ease-out;flex-wrap:wrap}.document-type-badge-header svg{color:#6b7280;flex-shrink:0}.document-type-badge-header .document-type-label{font-size:.8rem;font-weight:500;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.document-type-badge-header .document-type-value{font-size:.95rem;font-weight:600;color:#003781;text-transform:capitalize;background:transparent;padding:.35rem .75rem;border-radius:8px;border:1.5px solid #003781}.document-type-confidence{font-size:.85rem;font-weight:600;color:#059669;background:#d1fae5;padding:.35rem .65rem;border-radius:8px}.save-button-inline{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;background:#003781;color:#fff;border:none;padding:.45rem .85rem;border-radius:8px;cursor:pointer;transition:all .2s ease;box-shadow:0 1px 3px #00378133;margin-left:auto;flex-shrink:0;font-size:.8rem;font-weight:600;white-space:nowrap;min-width:fit-content}.save-button-inline span{white-space:nowrap}.save-button-inline:hover:not(:disabled){background:#00428f;box-shadow:0 2px 5px #0037814d;transform:translateY(-1px)}.save-button-inline:active:not(:disabled){transform:translateY(0)}.save-button-inline:disabled{opacity:.7;cursor:not-allowed}.save-feedback-inline{display:flex;align-items:center;justify-content:center;gap:.35rem;padding:.45rem .75rem;border-radius:8px;font-size:.8rem;font-weight:600;animation:slideIn .3s ease-out;margin-left:auto;white-space:nowrap}.save-feedback-inline.save-success{background:#10b98126;border:1px solid rgba(16,185,129,.4);color:#059669}.save-feedback-inline.save-error{background:#ef444426;border:1px solid rgba(239,68,68,.4);color:#dc2626}.save-feedback-inline.save-validation-required{background:#f59e0b26;border:1px solid rgba(245,158,11,.4);color:#d97706}.processing{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:1.5rem 1rem;color:#666;position:sticky;top:0;z-index:10;background:#f8f9fa;border-radius:12px;margin-bottom:1rem}.extraction-sections{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-top:.5rem;padding:1rem;background:#00378108;border-radius:12px;max-width:100%}.section-status{display:flex;align-items:center;gap:.35rem;padding:.4rem .8rem;border-radius:20px;font-size:.8rem;font-weight:500;transition:all .3s ease}.section-status.section-pending{background:#f3f4f6;color:#9ca3af}.section-status.section-started{background:#fef3c7;color:#d97706;animation:pulse 1.5s ease-in-out infinite}.section-status.section-completed{background:#d1fae5;color:#059669}.section-status.section-error{background:#fee2e2;color:#dc2626}.section-icon{font-size:.9rem;font-weight:600}.section-icon.pending{color:#9ca3af}.section-icon.error{color:#dc2626}.section-spinner{animation:spin 1s linear infinite}.section-label{white-space:nowrap}.document-type-inline{display:flex;align-items:center;gap:8px;margin-top:16px;padding:12px 20px;background:#fff;border-radius:10px;border:1px solid #E5E7EB;font-size:14px;font-weight:500;color:#003781;box-shadow:0 1px 3px #0000000d}.document-type-inline svg{color:#003781}.document-type-inline .confidence{color:#6b7280;font-size:13px;font-weight:400}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.fun-fact-card{background:#fff;border:1px solid rgba(0,55,129,.12);border-radius:20px;padding:1.4rem 1.6rem;text-align:left;width:min(100%,520px);min-height:160px;box-shadow:0 20px 48px #00378117;display:flex;flex-direction:column;gap:.8rem}.fun-fact-title{font-weight:600;color:#003781;letter-spacing:.01em;font-size:1.08rem}.fun-fact-body{position:relative;overflow:hidden;max-height:220px}.fun-fact-text{margin:0;font-size:1rem;line-height:1.65;color:#3f4a5f;white-space:pre-line;animation:funFactFade .6s ease both}@keyframes funFactFade{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.spinner{animation:spin 1s linear infinite;color:#f90}.error{background:#ef444414;border:1px solid rgba(239,68,68,.25);border-radius:12px;padding:1rem;color:#dc2626;letter-spacing:.01em}.error pre{margin-top:.5rem;font-size:.82rem;white-space:pre-wrap;word-break:break-word;opacity:.85}.json-results{display:flex;flex-direction:column;gap:.75rem}.json-results h2{font-size:1rem;font-weight:600;color:#003781;padding-bottom:.6rem;border-bottom:2px solid rgba(255,153,0,.3);margin-bottom:.2rem}.confidence-score{background:#fff;border-radius:12px;padding:1rem 1.25rem;border:1px solid #E5E7EB;box-shadow:0 1px 3px #0000000d;display:flex;flex-direction:column;gap:.65rem}.confidence-score-compact{padding:.85rem 1.1rem;gap:.5rem}.confidence-score-compact .confidence-label{font-size:.75rem;letter-spacing:.03em}.confidence-score-compact .confidence-value{font-size:1.35rem}.confidence-score-compact .confidence-bar{height:5px}.confidence-label{font-size:.8rem;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;font-weight:500}.confidence-value{font-size:2rem;font-weight:700;color:#111827}.confidence-bar{height:6px;background:#f3f4f6;border-radius:999px;overflow:hidden}.confidence-fill{height:100%;transition:width .6s ease-out,background-color .3s ease;border-radius:999px}.confidence-low{color:#ef4444}.confidence-low .confidence-fill{background:#ef4444}.confidence-medium{color:#f59e0b}.confidence-medium .confidence-fill{background:#f59e0b}.confidence-high{color:#10b981}.confidence-high .confidence-fill{background:#10b981}.montants-container{display:flex;flex-direction:column;gap:.6rem}.montant-item{background:#fff;border:1px solid rgba(0,55,129,.15);border-radius:12px;padding:.85rem 1rem;display:flex;justify-content:space-between;align-items:center;transition:all .2s ease;box-shadow:0 2px 8px #0037810d}.montant-item:hover{background:#fafbfc;border-color:#f90;transform:translate(2px);box-shadow:0 4px 12px #ff990026}.montant-item.clickable{cursor:pointer}.montant-item.clickable:hover{background:linear-gradient(135deg,#ff990014,#ffcc0014);border-color:#f90;transform:translate(4px);box-shadow:0 6px 16px #f903}.montant-item.active{background:linear-gradient(135deg,#ff990026,#ffcc0026);border-color:#f90;border-width:2px;box-shadow:0 8px 20px #ff99004d;transform:translate(4px) scale(1.02)}.montant-item.active .montant-label{color:#f90;font-weight:600}.montant-item.active .montant-value{color:#f90}.montant-text{display:flex;flex-direction:column;gap:.2rem;max-width:75%}.montant-label{color:#666;font-size:.86rem;flex:1;font-weight:500}.montant-value{color:#003781;font-weight:700;font-size:.96rem;font-family:Monaco,Menlo,monospace}.montant-confidence{display:inline-flex;align-items:center;gap:.35rem;font-size:.78rem;font-weight:600;padding:.35rem .55rem;border-radius:999px;background:#00378114;border:1px solid rgba(0,55,129,.15);text-transform:uppercase;letter-spacing:.08em}.montant-confidence.confidence-low{color:#dc2626;background:#ef444414;border-color:#ef444440}.montant-confidence.confidence-medium{color:#f90;background:#ff99001a;border-color:#ff99004d}.montant-confidence.confidence-high{color:#059669;background:#10b9811a;border-color:#10b9814d}.confidence-dot{width:6px;height:6px;border-radius:50%;background:currentColor;display:inline-block}.summary{background:linear-gradient(135deg,#ff99001a,#ffcc001a);border:1px solid rgba(255,153,0,.3);border-radius:12px;padding:.85rem;text-align:center;color:#003781;font-size:.82rem;letter-spacing:.04em;font-weight:600}.save-section{display:flex;flex-direction:column;gap:.8rem;margin-top:.8rem}.save-button{display:flex;align-items:center;justify-content:center;gap:.75rem;background:linear-gradient(180deg,#003781,#002560);color:#fff;border:none;padding:1rem 2rem;border-radius:12px;cursor:pointer;font-size:.95rem;font-weight:600;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 12px #00378133,0 2px 4px #0037811a;letter-spacing:-.01em}.save-button:hover:not(:disabled){background:linear-gradient(180deg,#002560,#001840);transform:translateY(-1px);box-shadow:0 6px 16px #00378140,0 3px 6px #00378126}.save-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.save-button .spinner{animation:spin 1s linear infinite}.save-feedback{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.9rem 1.2rem;border-radius:12px;font-size:.92rem;font-weight:600;letter-spacing:.01em;animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.save-success{background:#10b9811a;border:2px solid rgba(16,185,129,.3);color:#059669}.save-error{background:#ef44441a;border:2px solid rgba(239,68,68,.3);color:#dc2626}.no-data{text-align:center;padding:2.2rem 1.2rem;color:#666;background:#fff;border-radius:12px;border:1px dashed rgba(0,55,129,.25)}.no-data p{margin:.5rem 0}.no-data .hint{font-size:.86rem;color:#999}.pdf-preview::-webkit-scrollbar,.results-panel::-webkit-scrollbar{width:10px}.pdf-preview::-webkit-scrollbar-track,.results-panel::-webkit-scrollbar-track{background:#0037810d;border-radius:999px}.pdf-preview::-webkit-scrollbar-thumb,.results-panel::-webkit-scrollbar-thumb{background:#ff99004d;border-radius:999px}.pdf-preview::-webkit-scrollbar-thumb:hover,.results-panel::-webkit-scrollbar-thumb:hover{background:#ff990080}@media (max-width: 1440px){.split-view{grid-template-columns:minmax(420px,5fr) minmax(300px,4fr)}}@media (max-width: 1180px){.split-view{grid-template-columns:minmax(360px,1fr) minmax(260px,.8fr)}.pdf-name{max-width:200px}}@media (max-width: 1024px){.container{padding:1.2rem}.split-view{grid-template-columns:1fr;grid-template-rows:minmax(320px,60vh) auto;height:auto}.pdf-preview{max-height:60vh}.results-panel{min-height:320px}}@media (max-width: 720px){.upload-zone{margin:0;height:auto;min-height:420px;padding:2.5rem 1.5rem}.upload-zone p{text-align:center}.pdf-toolbar{flex-direction:column;align-items:stretch}.toolbar-actions{justify-content:space-between}.toolbar-btn{justify-content:center}}.structured-results{display:flex;flex-direction:column;gap:1rem}.info-section{background:#fff;border:none;border-radius:12px;padding:1.25rem 1.5rem;box-shadow:0 2px 8px #0000000a;transition:all .2s cubic-bezier(.4,0,.2,1)}.info-section:hover{box-shadow:0 4px 12px #0000000f}.section-title{font-size:1rem;font-weight:600;color:#1d1d1f;margin:0 0 1rem;padding-bottom:.75rem;border-bottom:1px solid #F5F5F7;letter-spacing:-.01em}.formule-tabs{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:1rem}.risk-tabs{display:flex;flex-wrap:wrap;gap:.35rem;margin:0 0 1rem}.risk-tab{border:1px solid #E5E7EB;background:#f5f5f7;color:#1d1d1f;border-radius:999px;padding:.45rem 1rem;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease}.risk-tab:hover{background:#e8f4fd;border-color:#d1e8ff}.risk-tab.active{background:#003781;border-color:#003781;color:#fff}.formule-tab{border:1px solid #E5E7EB;background:#f5f5f7;color:#1d1d1f;border-radius:999px;padding:.45rem 1rem;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease}.formule-tab:hover{background:#e8f4fd;border-color:#d1e8ff}.formule-tab.active{background:#003781;border-color:#003781;color:#fff}.formule-list-item{flex-direction:column;align-items:stretch}.formule-list-header{display:flex;align-items:center;gap:.5rem}.formule-single-inline{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.formule-list{display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem;margin-top:.25rem}.formule-row{display:inline-flex;align-items:center;gap:.35rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;padding:.35rem .5rem}.formule-row-content{display:flex;flex-direction:row;align-items:center;gap:.35rem}.formule-row-content .info-value{font-size:.9rem}.formule-row-content .mapping-justification{font-size:.7rem}.formule-list-empty{color:#9ca3af;font-style:italic;padding:.25rem 0}.btn-add-formule{border:1px solid #d1d5db;background:#fff;color:#1f2937;border-radius:50%;width:26px;height:26px;padding:0;font-size:1rem;font-weight:700;cursor:pointer;line-height:1;display:inline-flex;align-items:center;justify-content:center;transition:all .2s ease}.btn-add-formule:hover{background:#e0f2fe;border-color:#7dd3fc;color:#0f172a}.btn-remove-formule{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:transparent;border:none;border-radius:50%;color:#9ca3af;font-size:1.25rem;font-weight:300;cursor:pointer;transition:all .15s ease;opacity:0}.formule-row:hover .btn-remove-formule{opacity:1}.btn-remove-formule:hover{background:#fee2e2;color:#dc2626}.formule-content{display:flex;flex-direction:column;gap:1.5rem}.formule-subsection{border-top:1px solid #F5F5F7;padding-top:1.25rem}.formule-subtitle{margin:0 0 1rem;font-size:.95rem;font-weight:600;color:#1d1d1f}.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem 1.5rem}.info-item{display:flex;flex-direction:column;gap:.25rem;min-width:0;overflow:hidden}.info-item.full-width{grid-column:1 / -1}.info-item.branche-item{grid-column:1 / -1;justify-content:flex-start}.info-item.highlight{background:#f9f9f9;padding:1rem;border-radius:12px;border-left:2px solid #003781}.info-label{font-size:.7rem;font-weight:500;color:#86868b;text-transform:uppercase;letter-spacing:.03em}.info-value{font-size:.95rem;font-weight:500;color:#1d1d1f;line-height:1.3;display:inline-flex;align-items:center;gap:.35rem;flex-wrap:wrap;max-width:100%;overflow-wrap:break-word;word-break:break-word}.info-value.prime-value{font-size:1.4rem;font-weight:600;color:#003781}.table-container{display:flex;flex-direction:column;gap:.75rem}.table-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 3rem .75rem 1.25rem;background:#f5f5f7;border-radius:8px;margin-bottom:.25rem;gap:1.25rem}.table-header-cell{font-size:.75rem;font-weight:600;color:#86868b;text-transform:uppercase;letter-spacing:.05em}.table-header-main{flex:1}.table-header-amount{min-width:100px;text-align:right}.progress-indicator{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:linear-gradient(90deg,#e8f4fd,#f5f5f7);border-radius:8px;margin-bottom:1rem;font-size:.85rem;color:#003781;font-weight:500}.progress-indicator .spinner{animation:spin 1s linear infinite}.progress-bar-container{width:100%;max-width:300px;height:6px;background:#0037811a;border-radius:3px;overflow:hidden;margin-top:.75rem}.progress-bar-fill{height:100%;background:linear-gradient(90deg,#003781,#06c);border-radius:3px;transition:width .3s ease-out}.progress-detail{color:#86868b;font-weight:400}.loading-badge{display:inline-block;margin-left:.5rem;color:#007aff;animation:pulse 1.5s ease-in-out infinite;font-size:.75rem}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}.info-section{animation:fadeInSection .3s ease-out}.unsupported-document{background:#fffbeb;border:1px solid #FDE68A}.unsupported-description{margin:.35rem 0 0;color:#92400e;font-size:.95rem;line-height:1.5}@keyframes fadeInSection{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.table-row{display:flex;align-items:flex-start;justify-content:space-between;padding:1.25rem 3rem 1.25rem 1.25rem;background:#fbfbfb;border-radius:12px;border:1px solid #F0F0F0;gap:1.25rem;transition:all .2s cubic-bezier(.4,0,.2,1);position:relative}.table-row:hover{background:#f5f5f7;border-color:#e8e8ed;box-shadow:0 2px 8px #0000000a}.table-cell-main{flex:1;display:flex;flex-direction:column;gap:.5rem}.table-cell-title{font-size:.98rem;font-weight:500;color:#1d1d1f;line-height:1.4}.table-cell-desc{font-size:.88rem;color:#86868b;line-height:1.5}.table-cell-amount{font-size:.9rem;font-weight:700;color:#003781;white-space:nowrap;padding:.25rem .75rem;background:#fff;border-radius:6px;border:1px solid #E5E7EB}@media (max-width: 540px){.container{padding:.9rem}.split-view{padding:1.1rem;gap:1.1rem}.results-panel{padding:1.2rem}.pdf-preview{padding:.8rem 1rem 1.1rem}.info-grid{grid-template-columns:1fr}.table-row{flex-direction:column;gap:.75rem}.table-cell-amount{align-self:flex-start}}.edit-controls{display:flex;justify-content:flex-end;margin-bottom:1.5rem;padding:1rem;background:#f9fafb;border-radius:8px;border:1px solid #E5E7EB}.edit-button,.save-button,.cancel-button{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border:none;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.edit-button{background:#003781;color:#fff}.edit-button:hover{background:#002660;transform:translateY(-1px)}.edit-actions{display:flex;gap:.75rem}.save-button{background:#10b981;color:#fff}.save-button:hover{background:#059669;transform:translateY(-1px)}.cancel-button{background:#ef4444;color:#fff}.cancel-button:hover{background:#dc2626;transform:translateY(-1px)}.info-input{width:100%;padding:.625rem .75rem;border:1.5px solid #D2D2D7;border-radius:8px;font-size:.95rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:#fbfbfb;transition:all .2s cubic-bezier(.4,0,.2,1);color:#1d1d1f}.info-input:focus{outline:none;border-color:#003781;background:#fff;box-shadow:0 0 0 4px #00378114}.info-input:hover:not(:focus){border-color:#a1a1a6;background:#fff}.info-value.editable{cursor:pointer;padding:.375rem .625rem;border-radius:8px;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex;align-items:center;gap:.5rem;border:1px solid transparent;max-width:100%;flex-wrap:wrap}.info-value.editable:hover{border-color:#d2d2d7;background:#f9f9f9}.info-value.empty-value{color:#9ca3af;font-style:italic;border:1px dashed #d1d5db;background:#f9fafb}.info-value.empty-value:hover{border-color:#f59e0b;background:#fffbeb;color:#92400e}.confidence-badge{font-size:.65rem;font-weight:600;padding:.1rem .35rem;border-radius:10px;margin-left:.25rem;flex-shrink:0;white-space:nowrap}.confidence-very-high{background:transparent;color:#1d1d1f}.confidence-high{background:transparent;color:#1d1d1f}.confidence-medium{background:transparent;color:#1d1d1f}.confidence-low{background:transparent;color:#1d1d1f}.confidence-badge.provisional{opacity:.7;animation:confidence-pulse 1.5s ease-in-out infinite}@keyframes confidence-pulse{0%,to{opacity:.7}50%{opacity:1}}.info-value.taxonomy-field{display:inline-flex;align-items:center;gap:.5rem}.info-value.unrecognized-term{background:linear-gradient(135deg,#fef3c7,#fde68a);border-color:#f59e0b;cursor:pointer}.info-value.unrecognized-term:hover{background:linear-gradient(135deg,#fde68a,#fcd34d);border-color:#d97706;box-shadow:0 2px 8px #f59e0b33}.taxonomy-category{font-size:.75rem;color:#6b7280;background:#f3f4f6;padding:2px 8px;border-radius:4px;font-family:monospace;margin-left:auto}.taxonomy-unknown-badge{font-size:.7rem;color:#92400e;background:#f59e0b33;padding:2px 8px;border-radius:4px;font-weight:500;margin-left:auto}.info-input.editing{border-color:#003781;background:#fff;box-shadow:0 0 0 4px #0037811f}.editable-field-container{display:inline-flex;align-items:center;gap:.625rem}.edit-icon{width:28px;height:28px;min-width:28px;min-height:28px;padding:0;border:none;border-radius:50%;cursor:pointer;font-size:.9rem;font-weight:600;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex;align-items:center;justify-content:center;box-shadow:0 2px 6px #0000001f;flex-shrink:0}.edit-icon-save{background:#34c759;color:#fff}.category-badge{display:inline-flex;align-items:center;justify-content:center;font-size:.65rem;font-weight:600;padding:.2rem .5rem;border-radius:4px;margin-left:.5rem;background:#e8f4fd;color:#003781;text-transform:uppercase;letter-spacing:.02em;vertical-align:middle}.category-badge.category-unknown{background:#fef3c7;color:#d97706;border:1px dashed #F59E0B;animation:pulse-warning 2s ease-in-out infinite}@keyframes pulse-warning{0%,to{opacity:1}50%{opacity:.7}}.info-tooltip{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;font-size:10px;background:#e5e5ea;color:#636366;border-radius:50%;margin-left:6px;cursor:help;transition:all .2s ease;vertical-align:middle;position:relative}.info-tooltip:hover{background:#003781;color:#fff;transform:scale(1.1)}.info-tooltip:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);background:#1c1c1e;color:#fff;padding:8px 12px;border-radius:8px;font-size:12px;font-weight:400;line-height:1.4;white-space:normal;max-width:300px;min-width:150px;text-align:left;opacity:0;visibility:hidden;transition:opacity .15s ease,visibility .15s ease;z-index:1000;box-shadow:0 4px 12px #00000026;pointer-events:none}.info-tooltip:before{content:"";position:absolute;bottom:calc(100% + 2px);left:50%;transform:translate(-50%);border:6px solid transparent;border-top-color:#1c1c1e;opacity:0;visibility:hidden;transition:opacity .15s ease,visibility .15s ease;z-index:1001}.info-tooltip:hover:after,.info-tooltip:hover:before{opacity:1;visibility:visible}.edit-icon-save:hover{background:#30b350;transform:scale(1.1);box-shadow:0 3px 10px #34c7594d}.edit-icon-cancel{background:#8e8e93;color:#fff}.edit-icon-cancel:hover{background:#ff3b30;transform:scale(1.1);box-shadow:0 3px 10px #ff3b304d}.table-cell-editable{cursor:pointer;padding:.125rem .25rem;border-radius:3px;transition:background .2s ease}.table-cell-editable:hover{background:#0037811a;text-decoration:underline}.table-cell-input{padding:.5rem .625rem;border:1.5px solid #D2D2D7;border-radius:8px;font-size:.95rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;width:auto;min-width:120px;background:#fbfbfb;color:#1d1d1f;transition:all .2s cubic-bezier(.4,0,.2,1)}.table-cell-input.editing{border-color:#003781;background:#fff;box-shadow:0 0 0 3px #0037811f}.confidence-badge.table-confidence{position:absolute;top:1rem;right:1rem;font-size:.65rem;padding:.2rem .45rem}.needs-validation{border:2px dashed #FF9F0A!important;background:#ff9f0a0d!important}.validation-checkbox{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;margin-left:.5rem;border:2px solid #FF9F0A;border-radius:6px;background:#fff;cursor:pointer;font-size:.8rem;color:#ff9f0a;transition:all .2s cubic-bezier(.4,0,.2,1);flex-shrink:0}.validation-checkbox:hover{background:#ff9f0a26;transform:scale(1.1)}.validation-checkbox.validated{background:#34c759;border-color:#34c759;color:#fff}.validation-checkbox.validated:hover{background:#30b350;border-color:#30b350}@keyframes highlightPulse{0%,to{box-shadow:0 0 #ff9f0a80;border-color:#ff9f0a}50%{box-shadow:0 0 0 12px #ff9f0a00;border-color:#f60}}.highlight-validation{animation:highlightPulse .6s ease-in-out 3;border:2px solid #FF9F0A!important;background:#ff9f0a1a!important}.validation-warning{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .7rem;background:#fff3cd;color:#856404;border:1px solid #FFEEBA;border-radius:8px;font-size:.78rem;font-weight:600;white-space:nowrap;animation:slideIn .3s ease-out}.validation-warning.clickable{cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1)}.validation-warning.clickable:hover{background:#ffe69c;transform:scale(1.05);box-shadow:0 2px 8px #ff9f0a4d}.validation-warning.active{background:#003781;color:#fff;border-color:#003781}.validation-warning.active:hover{background:#002560;border-color:#002560}.validation-checkbox.table-validation{position:absolute;top:50%;right:.75rem;transform:translateY(-50%)}.category-badge.category-unknown.clickable{cursor:pointer;transition:all .2s ease}.category-badge.category-unknown.clickable:hover{background-color:#f59e0b;transform:scale(1.05);box-shadow:0 2px 8px #f59e0b4d}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.associate-modal{background:#fff;border-radius:16px;padding:28px;max-width:480px;width:90%;box-shadow:0 20px 40px #00000026;animation:modalSlideIn .2s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.associate-modal h3{margin:0 0 20px;font-size:1.25rem;color:#003781;font-weight:600}.term-display{background:#f3f4f6;padding:14px 16px;border-radius:10px;margin-bottom:20px;display:flex;gap:8px;align-items:center}.term-label{color:#6b7280;font-size:.9rem}.term-value{font-weight:600;color:#003781;font-size:1rem}.term-value-input{flex:1;font-weight:600;color:#003781;font-size:1rem;padding:6px 10px;border:2px solid #e5e7eb;border-radius:6px;background:#fff;outline:none;transition:border-color .2s,box-shadow .2s}.term-value-input:focus{border-color:#003781;box-shadow:0 0 0 3px #0037811a}.term-value-input:hover:not(:focus){border-color:#9ca3af}.associate-modal .form-group{margin-bottom:18px}.associate-modal .radio-label{display:flex;align-items:center;gap:10px;cursor:pointer;font-size:.95rem;color:#374151;margin-bottom:10px}.associate-modal .radio-label input[type=radio]{width:18px;height:18px;accent-color:#003781;cursor:pointer}.associate-modal select{width:100%;padding:12px 14px;border:1px solid #d1d5db;border-radius:10px;font-size:.95rem;color:#374151;background:#fff;cursor:pointer;transition:border-color .2s ease}.associate-modal select:focus{outline:none;border-color:#003781;box-shadow:0 0 0 3px #0037811a}.new-category-fields{display:flex;flex-direction:column;gap:10px;margin-top:10px}.associate-modal input[type=text]{width:100%;padding:12px 14px;border:1px solid #d1d5db;border-radius:10px;font-size:.95rem;color:#374151;transition:border-color .2s ease}.associate-modal input[type=text]:focus{outline:none;border-color:#003781;box-shadow:0 0 0 3px #0037811a}.associate-modal input[type=text]::placeholder{color:#9ca3af}.associate-modal .checkbox-group{margin-top:20px;padding-top:16px;border-top:1px solid #e5e7eb}.associate-modal .checkbox-group label{display:flex;align-items:center;gap:10px;cursor:pointer;font-size:.9rem;color:#4b5563}.associate-modal .checkbox-group input[type=checkbox]{width:18px;height:18px;accent-color:#003781;cursor:pointer}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}.associate-modal .btn-cancel{padding:12px 24px;border:1px solid #d1d5db;border-radius:10px;background:#fff;cursor:pointer;font-size:.95rem;color:#4b5563;font-weight:500;transition:all .2s ease}.associate-modal .btn-cancel:hover{background:#f3f4f6;border-color:#9ca3af}.associate-modal .btn-save{padding:12px 24px;border:none;border-radius:10px;background:#003781;color:#fff;cursor:pointer;font-size:.95rem;font-weight:600;transition:all .2s ease;box-shadow:0 4px 12px #00378133}.associate-modal .btn-save:hover:not(:disabled){background:#002560;transform:translateY(-1px);box-shadow:0 6px 16px #0037814d}.associate-modal .btn-save:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.category-display-name{font-weight:600;color:#003781;position:relative;cursor:default;display:inline-block}.category-display-name:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 8px);left:0;background:#1f2937;color:#fff;padding:8px 12px;border-radius:6px;font-size:.8rem;font-weight:400;white-space:nowrap;opacity:0;visibility:hidden;transition:opacity .15s ease;z-index:100;pointer-events:none}.category-display-name:before{content:"";position:absolute;bottom:calc(100% + 2px);left:16px;border:6px solid transparent;border-top-color:#1f2937;opacity:0;visibility:hidden;transition:opacity .15s ease;z-index:100}.category-display-name:hover:after,.category-display-name:hover:before{opacity:1;visibility:visible}.garanties-list{display:flex;flex-direction:column;gap:8px}.garantie-item{display:flex;align-items:center;gap:10px;padding:10px 14px;background:linear-gradient(135deg,#f0fdf4,#dcfce7);border-radius:8px;border-left:3px solid #22c55e;cursor:pointer;transition:all .2s ease}.garantie-item:hover{transform:translate(4px);box-shadow:0 2px 8px #22c55e33}.garantie-item.garantie-unknown{background:linear-gradient(135deg,#fef3c7,#fde68a);border-left-color:#f59e0b}.garantie-item.garantie-unknown:hover{box-shadow:0 2px 8px #f59e0b33}.garantie-item.garantie-unknown .garantie-check{color:#f59e0b}.garantie-check{color:#22c55e;font-weight:600;font-size:1rem}.garantie-nom{flex:1;font-size:.875rem;color:#1f2937}.garantie-prix{font-weight:600;color:#10b981;padding:2px 8px;background:#10b9811a;border-radius:4px;font-size:.85rem;margin-left:8px;cursor:pointer}.garantie-prix:hover{background:#10b98133}.garantie-prix.empty-value{color:#9ca3af;background:#9ca3af1a;border:1px dashed #d1d5db;font-weight:400;font-style:italic}.garantie-prix.empty-value:hover{background:#f973161a;border-color:#f97316;color:#f97316}.garantie-prix-edit{display:inline-flex;align-items:center;gap:4px;margin-left:8px}.garantie-categorie.clickable,.garantie-unknown-badge.clickable{cursor:pointer;transition:all .15s ease}.garantie-categorie.clickable:hover{background:#e5e7eb;transform:scale(1.02)}.garantie-unknown-badge.clickable:hover{background:#f59e0b59;transform:scale(1.02)}.garantie-categorie{font-size:.75rem;color:#6b7280;background:#f3f4f6;padding:2px 8px;border-radius:4px;font-family:monospace}.garantie-unknown-badge{font-size:.7rem;color:#92400e;background:#f59e0b33;padding:2px 8px;border-radius:4px;font-weight:500}.garantie-unknown-info{display:flex;flex-direction:column;gap:4px;margin-left:auto;align-items:flex-end}.garantie-similarity-info{display:flex;align-items:center;gap:6px;font-size:.7rem}.garantie-similarity-info .similarity-badge{color:#059669;background:#0596691a;padding:2px 6px;border-radius:4px;font-weight:600;font-size:.65rem}.garantie-similarity-info .closest-match{color:#6b7280;font-style:italic;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.product-type-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:6px;font-weight:600;font-size:.9rem;background:linear-gradient(135deg,#e0e7ff,#c7d2fe);color:#4338ca}.info-value.editing{display:inline-flex;align-items:center;gap:8px}.info-value.editing input{padding:6px 10px;border:1px solid #003781;border-radius:6px;font-size:.95rem;outline:none;min-width:120px}.info-value.editing input:focus{box-shadow:0 0 0 2px #00378133}.edit-btn{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border:none;border-radius:6px;font-size:.875rem;cursor:pointer;transition:all .15s ease}.edit-btn.save{background:#22c55e;color:#fff}.edit-btn.save:hover{background:#16a34a}.edit-btn.cancel{background:#f3f4f6;color:#6b7280}.edit-btn.cancel:hover{background:#e5e7eb;color:#374151}.add-garantie-form{display:flex;gap:10px;margin-top:16px;padding-top:16px;border-top:1px dashed #e5e7eb}.add-garantie-form input{flex:1;padding:10px 14px;border:1px solid #e5e7eb;border-radius:8px;font-size:.875rem;transition:border-color .2s ease}.add-garantie-form input:focus{outline:none;border-color:#003781;box-shadow:0 0 0 2px #0037811a}.add-garantie-form button{padding:10px 18px;background:#003781;color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .2s ease}.add-garantie-form button:hover{background:#002960}.remove-garantie-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:transparent;border:none;border-radius:50%;color:#9ca3af;font-size:1.25rem;font-weight:300;cursor:pointer;transition:all .15s ease;opacity:0}.garantie-item:hover .remove-garantie-btn{opacity:1}.remove-garantie-btn:hover{background:#fee2e2;color:#dc2626}select.info-value.editable{padding:8px 12px;border:1px solid #e5e7eb;border-radius:8px;font-size:.95rem;background:#fff;cursor:pointer;transition:border-color .2s ease;min-width:140px}select.info-value.editable:hover{border-color:#003781}select.info-value.editable:focus{outline:none;border-color:#003781;box-shadow:0 0 0 2px #0037811a}.filter-panel{display:flex;flex-direction:column;background:#fff;border:1px solid #E5E7EB;border-radius:12px;overflow:hidden;height:fit-content;max-height:calc(100vh - 200px);transition:width .3s ease,opacity .2s ease}.filter-panel.collapsed{width:48px;min-width:48px}.filter-panel.expanded{width:280px;min-width:280px}.filter-panel-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:#f9fafb;border-bottom:1px solid #E5E7EB;gap:12px}.filter-panel-header h3{margin:0;font-size:14px;font-weight:600;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.filter-panel.collapsed .filter-panel-header h3{display:none}.filter-panel-header-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.filter-panel.collapsed .filter-panel-header-actions{margin-left:auto}.btn-filter-action{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:6px;color:#6b7280;cursor:pointer;transition:all .15s ease}.btn-filter-action:hover{background:#e5e7eb;color:#111827}.btn-filter-action.active{background:#003781;color:#fff}.btn-collapse{transform:rotate(0);transition:transform .3s ease}.filter-panel.collapsed .btn-collapse{transform:rotate(180deg)}.filter-panel-body{flex:1;overflow-y:auto;padding:12px}.filter-panel.collapsed .filter-panel-body{display:none}.filter-group{margin-bottom:16px}.filter-group:last-child{margin-bottom:0}.filter-group-label{display:block;font-size:12px;font-weight:600;color:#374151;margin-bottom:8px;text-transform:uppercase;letter-spacing:.03em}.filter-multiselect{position:relative}.filter-multiselect-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:#f9fafb;border:1px solid #E5E7EB;border-radius:8px;font-size:13px;color:#374151;cursor:pointer;transition:all .15s ease;text-align:left}.filter-multiselect-trigger:hover{border-color:#d1d5db;background:#f3f4f6}.filter-multiselect-trigger.open{border-color:#003781;box-shadow:0 0 0 3px #0037811a}.filter-multiselect-trigger.has-selection{background:#ebf4ff;border-color:#003781}.filter-trigger-text{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.filter-trigger-text.placeholder{color:#9ca3af}.filter-count-badge{background:#003781;color:#fff;font-size:11px;font-weight:600;padding:2px 8px;border-radius:10px;margin-left:8px}.filter-chevron{flex-shrink:0;width:16px;height:16px;color:#9ca3af;transition:transform .2s ease}.filter-multiselect-trigger.open .filter-chevron{transform:rotate(180deg)}.filter-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#fff;border:1px solid #E5E7EB;border-radius:10px;box-shadow:0 8px 24px #0000001f;z-index:100;max-height:280px;overflow-y:auto;animation:filterDropdownIn .15s ease}@keyframes filterDropdownIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.filter-dropdown-search{position:sticky;top:0;background:#fff;padding:10px;border-bottom:1px solid #E5E7EB}.filter-dropdown-search input{width:100%;padding:8px 12px;border:1px solid #E5E7EB;border-radius:6px;font-size:13px;box-sizing:border-box}.filter-dropdown-search input:focus{outline:none;border-color:#003781;box-shadow:0 0 0 2px #0037811a}.filter-dropdown-options{padding:6px}.filter-option{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:6px;cursor:pointer;transition:background .1s ease}.filter-option:hover{background:#f3f4f6}.filter-option.selected{background:#ebf4ff}.filter-checkbox{width:18px;height:18px;flex-shrink:0;border:2px solid #D1D5DB;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.filter-option.selected .filter-checkbox{background:#003781;border-color:#003781}.filter-checkbox svg{width:12px;height:12px;color:#fff;opacity:0;transition:opacity .15s ease}.filter-option.selected .filter-checkbox svg{opacity:1}.filter-option-label{flex:1;font-size:13px;color:#374151}.filter-option-count{font-size:11px;color:#9ca3af;background:#f3f4f6;padding:2px 8px;border-radius:10px}.filter-dropdown-empty{padding:20px;text-align:center;color:#9ca3af;font-size:13px}.filter-clear-all{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:10px;background:transparent;border:1px dashed #E5E7EB;border-radius:8px;color:#6b7280;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease;margin-top:12px}.filter-clear-all:hover{background:#fee2e2;border-color:#fecaca;color:#dc2626}.filter-clear-all:disabled{opacity:.5;cursor:not-allowed}.filter-clear-all:disabled:hover{background:transparent;border-color:#e5e7eb;color:#6b7280}.filter-edit-mode{padding:12px;background:#fffbeb;border-bottom:1px solid #FCD34D}.filter-edit-hint{display:flex;align-items:flex-start;gap:8px;font-size:12px;color:#92400e;line-height:1.4}.filter-edit-hint svg{flex-shrink:0;margin-top:1px}.filter-field-selector{padding:12px}.filter-field-selector h4{margin:0 0 12px;font-size:12px;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.03em}.available-fields-list{display:flex;flex-direction:column;gap:4px;max-height:300px;overflow-y:auto}.available-field-item{display:flex;align-items:center;gap:10px;padding:10px 12px;background:#f9fafb;border:1px solid #E5E7EB;border-radius:8px;cursor:pointer;transition:all .15s ease}.available-field-item:hover{background:#f3f4f6;border-color:#d1d5db}.available-field-item.enabled{background:#ebf4ff;border-color:#003781}.field-checkbox{width:18px;height:18px;flex-shrink:0;border:2px solid #D1D5DB;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.available-field-item.enabled .field-checkbox{background:#003781;border-color:#003781}.field-checkbox svg{width:12px;height:12px;color:#fff;opacity:0;transition:opacity .15s ease}.available-field-item.enabled .field-checkbox svg{opacity:1}.available-field-info{flex:1;min-width:0}.available-field-label{font-size:13px;font-weight:500;color:#111827}.available-field-category{font-size:11px;color:#9ca3af;margin-top:2px}.no-filters-message{text-align:center;padding:24px 16px;color:#9ca3af}.no-filters-message p{margin:0 0 4px;font-size:13px}.no-filters-message .hint{font-size:12px;color:#d1d5db}.active-filters-summary{padding:12px;background:#ebf4ff;border-bottom:1px solid #BFDBFE}.active-filters-summary-text{font-size:12px;color:#1e40af;font-weight:500}@media (max-width: 1200px){.filter-panel.expanded{width:260px;min-width:260px}}@media (max-width: 900px){.filter-panel{position:fixed;left:0;top:0;bottom:0;z-index:1000;border-radius:0;border-left:none;box-shadow:4px 0 20px #00000026;max-height:100vh}.filter-panel.collapsed{width:0;min-width:0;border:none;box-shadow:none}.filter-panel-overlay{position:fixed;inset:0;background:#0000004d;z-index:999}}.filter-chip-bar{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#f0f9ff;border:1px solid #BAE6FD;border-radius:10px;margin-bottom:16px;flex-wrap:wrap}.filter-chip-bar-label{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:#0369a1;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap}.filter-chip-bar-label svg{flex-shrink:0}.filter-chips{display:flex;flex-wrap:wrap;gap:8px;flex:1}.filter-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;background:#fff;border:1px solid #E5E7EB;border-radius:20px;font-size:12px;transition:all .15s ease;animation:chipIn .2s ease}@keyframes chipIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.filter-chip:hover{border-color:#d1d5db;box-shadow:0 2px 4px #0000000d}.filter-chip.from-panel{border-color:#003781;background:#ebf4ff}.filter-chip.from-panel .filter-chip-source{color:#003781}.filter-chip.from-chart{border-color:#059669;background:#ecfdf5}.filter-chip.from-chart .filter-chip-source{color:#059669}.filter-chip-source{display:flex;align-items:center;justify-content:center;flex-shrink:0}.filter-chip-field{font-weight:500;color:#6b7280}.filter-chip-value{font-weight:600;color:#111827;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.filter-chip-remove{display:flex;align-items:center;justify-content:center;width:18px;height:18px;background:transparent;border:none;border-radius:50%;color:#9ca3af;cursor:pointer;transition:all .15s ease;margin-left:2px}.filter-chip-remove:hover{background:#fee2e2;color:#dc2626}.filter-chip.from-panel .filter-chip-remove:hover{background:#dbeafe;color:#1d4ed8}.filter-chip.from-chart .filter-chip-remove:hover{background:#d1fae5;color:#047857}.filter-chip-clear-all{padding:6px 14px;background:transparent;border:1px solid #E5E7EB;border-radius:6px;font-size:12px;font-weight:500;color:#6b7280;cursor:pointer;transition:all .15s ease;white-space:nowrap}.filter-chip-clear-all:hover{background:#fee2e2;border-color:#fecaca;color:#dc2626}@media (max-width: 600px){.filter-chip-bar{flex-direction:column;align-items:flex-start}.filter-chips{width:100%}.filter-chip-clear-all{width:100%;text-align:center;margin-top:8px}}.dashboard-builder{width:100%;padding:0}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;flex-wrap:wrap;gap:16px}.dashboard-title{display:flex;align-items:center;gap:12px}.dashboard-title h2{margin:0;font-size:20px;font-weight:600;color:#111827}.save-indicator{font-size:12px;color:#003781;background:#e8f4fd;padding:4px 10px;border-radius:12px;animation:pulse 1.5s infinite}.dashboard-actions{display:flex;gap:8px}.btn-edit-mode{padding:8px 16px;background:#f3f4f6;color:#374151;border:1px solid #D1D5DB;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-edit-mode:hover{background:#e5e7eb}.btn-edit-mode.active{background:#003781;color:#fff;border-color:#003781}.dashboard-error{background:#fee2e2;color:#991b1b;padding:12px 16px;border-radius:8px;margin-bottom:16px;font-size:14px}.dashboard-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:16px;color:#6b7280}.loading-spinner{width:32px;height:32px;border:3px solid #E5E7EB;border-top-color:#003781;border-radius:50%;animation:spin 1s linear infinite}.dashboard-grid{display:grid;gap:20px;min-height:200px}.dashboard-grid.columns-1{grid-template-columns:1fr}.dashboard-grid.columns-2{grid-template-columns:repeat(2,1fr)}.dashboard-grid.columns-3{grid-template-columns:repeat(3,1fr)}@media (max-width: 900px){.dashboard-grid.columns-2,.dashboard-grid.columns-3{grid-template-columns:1fr}}.chart-card{background:#fff;border:1px solid #E5E7EB;border-radius:12px;overflow:hidden;transition:box-shadow .2s ease,transform .2s ease}.chart-card:hover{box-shadow:0 4px 12px #00000014}.chart-card.dragging{box-shadow:0 8px 24px #00000026;transform:rotate(2deg)}.chart-card-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#f9fafb;border-bottom:1px solid #E5E7EB;cursor:grab}.chart-card-header:active{cursor:grabbing}.chart-card-title{display:flex;align-items:center;gap:8px}.chart-card-title .chart-type-icon{display:flex;align-items:center;justify-content:center;color:#003781}.chart-card-title h4{margin:0;font-size:14px;font-weight:600;color:#111827}.chart-card-actions{display:flex;align-items:center;gap:2px}.btn-chart-action{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:6px;cursor:pointer;color:#6b7280;transition:all .15s ease}.btn-chart-action:hover{background:#f3f4f6;color:#111827}.btn-chart-action:disabled{opacity:.4;cursor:not-allowed}.btn-chart-action.btn-danger:hover{background:#fee2e2;color:#dc2626}.action-separator{width:1px;height:16px;background:#e5e7eb;margin:0 4px}.chart-card-body{padding:16px;min-height:250px;overflow:hidden;transition:transform .2s ease}.chart-no-data{display:flex;align-items:center;justify-content:center;height:200px;color:#9ca3af;font-size:14px}.chart-card-placeholder{opacity:.6}.chart-fullscreen-placeholder{display:flex;align-items:center;justify-content:center;height:200px;color:#9ca3af;font-size:14px;font-style:italic}.chart-fullscreen-overlay{position:fixed;inset:0;background:#000c;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:2000;padding:40px;animation:fadeIn .2s ease}.chart-fullscreen-modal{background:#fff;border-radius:16px;width:100%;max-width:1200px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 24px 80px #0006;animation:modalSlideUp .3s cubic-bezier(.16,1,.3,1)}.chart-fullscreen-header{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;background:#f9fafb;border-bottom:1px solid #E5E7EB}.chart-fullscreen-title{display:flex;align-items:center;gap:12px}.chart-fullscreen-title .chart-type-icon{display:flex;align-items:center;justify-content:center;color:#003781}.chart-fullscreen-title h3{margin:0;font-size:18px;font-weight:600;color:#111827}.chart-fullscreen-actions{display:flex;align-items:center;gap:16px}.zoom-controls{display:flex;align-items:center;gap:8px;background:#f3f4f6;padding:4px 8px;border-radius:8px}.zoom-level{font-size:12px;font-weight:500;color:#6b7280;min-width:40px;text-align:center}.btn-close-fullscreen{width:36px!important;height:36px!important;background:#f3f4f6!important;border-radius:50%!important}.btn-close-fullscreen:hover{background:#e5e7eb!important}.chart-fullscreen-content{flex:1;padding:32px;overflow:auto;display:flex;align-items:center;justify-content:center;transition:transform .2s ease}.add-chart-card{background:#fff;border:2px dashed #D1D5DB;border-radius:12px;min-height:200px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.add-chart-card:hover{border-color:#003781;background:#f8fafc}.add-chart-content{display:flex;flex-direction:column;align-items:center;gap:8px;color:#6b7280}.add-chart-icon{font-size:32px;font-weight:300;color:#9ca3af}.add-chart-text{font-size:14px;font-weight:500}.empty-dashboard{grid-column:1 / -1;text-align:center;padding:60px 20px;color:#6b7280}.empty-dashboard .empty-icon{font-size:48px;margin-bottom:16px}.empty-dashboard p{font-size:16px;margin:0 0 8px;color:#374151}.empty-dashboard .empty-hint{font-size:13px;color:#9ca3af}.field-panel{width:240px;background:#f9fafb;border-radius:8px;overflow:hidden;display:flex;flex-direction:column;max-height:500px}.field-panel-header{padding:12px 16px;border-bottom:1px solid #E5E7EB}.field-panel-header h3{margin:0 0 10px;font-size:14px;font-weight:600;color:#111827}.field-search{width:100%;padding:8px 12px;border:1px solid #D1D5DB;border-radius:6px;font-size:13px;box-sizing:border-box}.field-search:focus{outline:none;border-color:#003781;box-shadow:0 0 0 3px #0037811a}.field-categories{flex:1;overflow-y:auto;padding:8px}.field-category{margin-bottom:4px}.category-header{width:100%;display:flex;align-items:center;gap:8px;padding:8px 10px;background:transparent;border:none;border-radius:6px;cursor:pointer;text-align:left;transition:background .2s ease}.category-header:hover{background:#e5e7eb}.category-arrow{font-size:10px;color:#6b7280;transition:transform .2s ease}.category-arrow.expanded{transform:rotate(90deg)}.category-name{flex:1;font-size:13px;font-weight:500;color:#374151}.category-count{font-size:11px;color:#9ca3af;background:#e5e7eb;padding:2px 6px;border-radius:10px}.category-fields{padding:4px 0 4px 18px}.field-item{display:flex;align-items:center;gap:8px;padding:6px 10px;background:#fff;border:1px solid #E5E7EB;border-radius:6px;margin-bottom:4px;cursor:grab;transition:all .2s ease}.field-item:hover{border-color:#003781;background:#f8fafc}.field-item.dragging{box-shadow:0 4px 12px #00000026;transform:rotate(2deg)}.field-type-icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:4px;font-size:10px;font-weight:600;color:#fff}.field-label{font-size:12px;color:#374151}.drop-zone-container{margin-bottom:16px}.drop-zone-label{display:block;font-size:13px;font-weight:500;color:#374151;margin-bottom:6px}.drop-zone{min-height:48px;padding:12px;border:2px dashed #D1D5DB;border-radius:8px;background:#f9fafb;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.drop-zone.drag-over{border-color:#003781;background:#e8f4fd}.drop-zone.has-field{border-style:solid;border-color:#003781;background:#fff;justify-content:flex-start}.drop-zone-placeholder{font-size:13px;color:#9ca3af}.dropped-field{display:flex;align-items:center;gap:8px;width:100%}.dropped-field .field-label{flex:1}.field-remove{width:20px;height:20px;display:flex;align-items:center;justify-content:center;background:#fee2e2;border:none;border-radius:4px;color:#dc2626;cursor:pointer;font-size:14px;font-weight:600}.field-remove:hover{background:#fecaca}.chart-config-modal{background:#fff;border-radius:12px;width:100%;max-width:900px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;animation:slideUp .3s ease}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #E5E7EB}.modal-header h3{margin:0;font-size:18px;font-weight:600;color:#111827}.btn-close{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:6px;font-size:20px;color:#6b7280;cursor:pointer;transition:background .2s ease}.btn-close:hover{background:#f3f4f6}.modal-body{display:flex;flex:1;overflow:hidden}.config-left{border-right:1px solid #E5E7EB;overflow:hidden}.config-right{flex:1;padding:20px;overflow-y:auto}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 20px;border-top:1px solid #E5E7EB}.chart-type-selector{display:flex;gap:8px}.chart-type-btn{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px;background:#f9fafb;border:2px solid #E5E7EB;border-radius:8px;cursor:pointer;transition:all .2s ease}.chart-type-btn:hover{border-color:#003781;background:#f8fafc}.chart-type-btn.active{border-color:#003781;background:#e8f4fd}.chart-type-btn .chart-icon{font-size:24px}.chart-type-btn span:last-child{font-size:12px;font-weight:500;color:#374151}.form-group input,.form-group select{width:100%;padding:10px 12px;border:1px solid #D1D5DB;border-radius:6px;font-size:14px;color:#111827;box-sizing:border-box}.form-group input:focus,.form-group select:focus{outline:none;border-color:#003781;box-shadow:0 0 0 3px #0037811a}.apple-modal-overlay{position:fixed;inset:0;background:#0006;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:flex-start;justify-content:center;z-index:1000;padding:20px;animation:fadeIn .2s ease;overflow-y:auto}.apple-chart-modal{background:#f5f5f7;border-radius:14px;width:100%;max-width:820px;max-height:calc(100vh - 180px);margin-top:100px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 0 0 1px #00000014,0 24px 80px #00000040,0 8px 24px #00000026;animation:modalSlideUp .35s cubic-bezier(.16,1,.3,1)}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(30px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.apple-modal-header{display:flex;justify-content:center;align-items:center;padding:14px 16px;background:linear-gradient(to bottom,#fafafa,#f0f0f2);border-bottom:1px solid rgba(0,0,0,.1);flex-shrink:0}.apple-modal-header h2{margin:0;font-size:16px;font-weight:600;color:#1d1d1f;letter-spacing:-.01em}.apple-close-btn{background:transparent;border:none;color:#007aff;font-size:15px;font-weight:400;cursor:pointer;padding:6px 10px;border-radius:6px;transition:background .15s ease}.apple-close-btn:hover{background:#007aff1a}.apple-save-btn{background:#007aff;border:none;color:#fff;font-size:14px;font-weight:600;cursor:pointer;padding:6px 14px;border-radius:6px;transition:all .15s ease}.apple-save-btn:hover{background:#0066d6}.apple-save-btn:disabled{background:#c7c7cc;color:#ffffffb3;cursor:not-allowed}.apple-modal-footer{display:flex;justify-content:flex-end;align-items:center;gap:12px;padding:12px 16px;background:linear-gradient(to top,#fafafa,#f0f0f2);border-top:1px solid rgba(0,0,0,.1);flex-shrink:0}.apple-modal-content{display:flex;flex:1;overflow:hidden;min-height:0}.apple-sidebar{width:220px;background:#fff;border-right:1px solid rgba(0,0,0,.08);display:flex;flex-direction:column;overflow:hidden}.apple-sidebar-header{padding:14px 16px 10px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(0,0,0,.06)}.apple-sidebar-header h3{margin:0;font-size:11px;font-weight:600;color:#86868b;text-transform:uppercase;letter-spacing:.06em}.apple-sidebar-header .field-count{font-size:11px;color:#86868b;background:#f5f5f7;padding:2px 7px;border-radius:10px}.apple-field-list{flex:1;overflow-y:auto;padding:8px}.apple-field-list::-webkit-scrollbar{width:6px}.apple-field-list::-webkit-scrollbar-track{background:transparent}.apple-field-list::-webkit-scrollbar-thumb{background:#00000026;border-radius:3px}.apple-category{margin-bottom:2px}.apple-category-header{width:100%;display:flex;align-items:center;gap:6px;padding:8px 10px;background:transparent;border:none;border-radius:6px;cursor:pointer;text-align:left;transition:background .15s ease}.apple-category-header:hover{background:#0000000a}.apple-category-header span{flex:1;font-size:13px;font-weight:500;color:#1d1d1f}.apple-category-header .category-count{font-size:11px;color:#86868b}.category-chevron{color:#86868b;transition:transform .2s ease}.category-chevron.expanded{transform:rotate(90deg)}.apple-category-fields{padding:2px 0 6px 18px}.apple-field-item{display:flex;align-items:center;gap:8px;padding:7px 10px;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:8px;margin-bottom:4px;cursor:grab;transition:all .15s ease;box-shadow:0 1px 2px #0000000a}.apple-field-item:hover{border-color:#007aff66;box-shadow:0 2px 6px #007aff1a}.apple-field-item.dragging{box-shadow:0 8px 24px #0003;transform:scale(1.02);z-index:100}.apple-field-item .field-badge{width:22px;height:22px;display:flex;align-items:center;justify-content:center;border-radius:5px;font-size:11px;font-weight:600;color:#fff}.apple-field-item .field-name{font-size:12px;color:#1d1d1f;font-weight:400}.apple-config-main{flex:1;padding:20px 24px;overflow-y:auto;background:#f5f5f7}.apple-config-main::-webkit-scrollbar{width:6px}.apple-config-main::-webkit-scrollbar-thumb{background:#00000026;border-radius:3px}.apple-section{margin-bottom:20px}.apple-label{display:block;font-size:11px;font-weight:600;color:#86868b;text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px}.apple-label-small{display:block;font-size:12px;font-weight:500;color:#1d1d1f;margin-bottom:6px}.apple-segmented-control{display:flex;background:#0000000d;border-radius:10px;padding:3px;gap:2px}.apple-segmented-control button{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 8px;background:transparent;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease;color:#86868b}.apple-segmented-control button:hover{color:#1d1d1f}.apple-segmented-control button.active{background:#fff;color:#1d1d1f;box-shadow:0 1px 3px #00000014,0 2px 8px #0000000d}.apple-segmented-control button svg{width:20px;height:20px}.apple-segmented-control button span{font-size:11px;font-weight:500}.apple-input{width:100%;padding:10px 14px;background:#fff;border:1px solid rgba(0,0,0,.1);border-radius:8px;font-size:14px;color:#1d1d1f;box-sizing:border-box;transition:all .15s ease}.apple-input::placeholder{color:#86868b}.apple-input:focus{outline:none;border-color:#007aff;box-shadow:0 0 0 3px #007aff33}.apple-config-card{background:#fff;border-radius:12px;padding:16px;box-shadow:0 1px 3px #0000000f,0 0 0 1px #0000000a}.apple-drop-zone-wrapper{margin-bottom:16px}.apple-drop-zone-wrapper:last-child{margin-bottom:0}.apple-drop-zone{min-height:52px;padding:12px 14px;border:2px dashed rgba(0,0,0,.12);border-radius:10px;background:#fafafa;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.apple-drop-zone.drag-over{border-color:#007aff;background:#007aff0f;border-style:solid}.apple-drop-zone.has-field{border-style:solid;border-color:#34c759;background:#34c7590a}.apple-drop-placeholder{display:flex;align-items:center;gap:8px;color:#86868b}.apple-drop-placeholder svg{color:#c7c7cc}.apple-drop-placeholder span{font-size:13px}.apple-dropped-field{display:flex;align-items:center;gap:10px;width:100%}.apple-dropped-field .field-badge{width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:6px;font-size:12px;font-weight:600;color:#fff}.apple-dropped-field .field-name{flex:1;font-size:14px;font-weight:500;color:#1d1d1f}.field-remove-btn{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:#0000000d;border:none;border-radius:6px;color:#86868b;cursor:pointer;transition:all .15s ease}.field-remove-btn:hover{background:#ff3b30;color:#fff}.apple-select-wrapper{margin-top:14px;padding-top:14px;border-top:1px solid rgba(0,0,0,.06)}.apple-select{width:100%;padding:10px 36px 10px 14px;background:#fff;border:1px solid rgba(0,0,0,.1);border-radius:8px;font-size:14px;color:#1d1d1f;cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6 9l6 6 6-6' stroke='%2386868B' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;transition:all .15s ease}.apple-select:focus{outline:none;border-color:#007aff;box-shadow:0 0 0 3px #007aff33}.apple-preview-hint{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;background:#007aff0f;border-radius:10px;margin-top:8px}.apple-preview-hint svg{flex-shrink:0;color:#007aff;margin-top:1px}.apple-preview-hint span{font-size:13px;color:#007aff;line-height:1.4}@media (max-width: 700px){.apple-modal-overlay{align-items:flex-end;padding:0}.apple-chart-modal{max-height:90vh;margin-top:0;border-radius:14px 14px 0 0}.apple-modal-content{flex-direction:column}.apple-sidebar{width:100%;max-height:200px;border-right:none;border-bottom:1px solid rgba(0,0,0,.08)}.apple-config-main{padding:16px}.apple-modal-footer{padding:12px 16px;padding-bottom:max(12px,env(safe-area-inset-bottom))}}.export-dropdown{position:relative}.btn-export{display:flex;align-items:center;gap:8px;padding:8px 14px;background:#003781;color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-export:hover{background:#002960}.btn-export:disabled{background:#9ca3af;cursor:not-allowed}.export-menu{position:absolute;top:calc(100% + 6px);right:0;background:#fff;border:1px solid #E5E7EB;border-radius:10px;box-shadow:0 8px 24px #00000026;overflow:hidden;z-index:100;min-width:180px;animation:slideDown .15s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.export-menu button{display:flex;align-items:center;gap:10px;width:100%;padding:12px 16px;background:transparent;border:none;font-size:14px;color:#374151;cursor:pointer;transition:background .15s ease;text-align:left}.export-menu button:hover{background:#f3f4f6}.export-menu button:first-child{border-bottom:1px solid #E5E7EB}.export-icon{font-size:16px;width:20px;text-align:center}.btn-api-info{display:flex;align-items:center;gap:6px;padding:8px 14px;background:#f3f4f6;color:#374151;border:1px solid #D1D5DB;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-api-info:hover{background:#e5e7eb;border-color:#9ca3af}.btn-api-info svg{flex-shrink:0}.api-modal-overlay{position:fixed;inset:0;background:#00000080;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px;animation:fadeIn .2s ease}.api-modal{background:#fff;border-radius:16px;width:100%;max-width:640px;max-height:85vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 24px 80px #00000040;animation:modalSlideUp .3s cubic-bezier(.16,1,.3,1)}.api-modal.api-modal-compact{max-width:480px;max-height:auto}.api-modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:#f9fafb;border-bottom:1px solid #E5E7EB}.api-modal-header h3{margin:0;font-size:17px;font-weight:600;color:#111827}.btn-close-modal{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:8px;color:#6b7280;cursor:pointer;transition:all .15s ease}.btn-close-modal:hover{background:#e5e7eb;color:#111827}.api-modal-body{padding:20px;overflow-y:auto}.api-description{margin:0 0 20px;font-size:14px;color:#6b7280;line-height:1.5}.api-description code{background:#f3f4f6;padding:2px 6px;border-radius:4px;font-family:SF Mono,Monaco,Courier New,monospace;font-size:13px;color:#003781}.api-section{margin-bottom:20px}.api-section label{display:block;font-size:12px;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.api-code-block{position:relative;background:#1f2937;border-radius:10px;padding:14px 50px 14px 16px}.api-code-block code{font-family:SF Mono,Monaco,Courier New,monospace;font-size:13px;color:#e5e7eb;line-height:1.6;word-break:break-all}.api-code-block code.code-multiline{display:block;white-space:pre-wrap;word-break:break-word}.btn-copy{position:absolute;top:10px;right:10px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:#ffffff1a;border:none;border-radius:6px;color:#9ca3af;cursor:pointer;transition:all .15s ease;font-size:14px}.btn-copy:hover{background:#fff3;color:#fff}.api-params-list{margin:0;padding:0;list-style:none}.api-params-list li{display:flex;align-items:center;gap:10px;padding:8px 12px;background:#f9fafb;border-radius:8px;margin-bottom:6px;font-size:13px;color:#374151}.api-params-list code{background:#e5e7eb;padding:3px 8px;border-radius:4px;font-family:SF Mono,Monaco,Courier New,monospace;font-size:12px;color:#003781;font-weight:500}.api-note{background:#fef3c7;border:1px solid #F59E0B;border-radius:10px;padding:12px 16px;font-size:13px;color:#92400e;line-height:1.5}.api-note strong{color:#78350f}.api-note code{background:#00000014;padding:2px 6px;border-radius:4px;font-family:SF Mono,Monaco,Courier New,monospace;font-size:12px}.api-full-doc-link{margin-top:16px;padding-top:16px;border-top:1px solid #E2E8F0;text-align:center}.api-full-doc-link a{display:inline-flex;align-items:center;gap:8px;color:#3b82f6;font-weight:500;text-decoration:none;transition:color .2s}.api-full-doc-link a:hover{color:#2563eb;text-decoration:underline}.dashboard-content-wrapper{display:flex;gap:20px;align-items:flex-start}.dashboard-content{flex:1;min-width:0}.filter-results-info{padding:10px 16px;background:#f0fdf4;border:1px solid #BBF7D0;border-radius:8px;margin-bottom:16px;font-size:13px;color:#166534;font-weight:500}@media (max-width: 1200px){.dashboard-content-wrapper{gap:16px}}@media (max-width: 900px){.dashboard-content-wrapper{flex-direction:column}}.apple-filter-toggle{display:flex;align-items:center;gap:8px;width:100%;padding:10px 12px;background:#f9fafb;border:1px solid #E5E7EB;border-radius:8px;font-size:13px;font-weight:500;color:#374151;cursor:pointer;transition:all .15s ease}.apple-filter-toggle:hover{background:#f3f4f6;border-color:#d1d5db}.apple-filter-toggle .filter-chevron{transition:transform .2s ease}.apple-filter-toggle .filter-chevron.expanded{transform:rotate(90deg)}.apple-filter-toggle .filter-badge{margin-left:auto;background:#003781;color:#fff;font-size:11px;font-weight:600;padding:2px 6px;border-radius:10px;min-width:18px;text-align:center}.apple-filter-card{margin-top:12px;padding:16px;background:#fff;border:1px solid #E5E7EB;border-radius:10px}.apple-filter-hint{font-size:12px;color:#6b7280;margin:0 0 12px}.apple-filter-row{display:flex;flex-direction:column;gap:6px}.apple-filter-row+.apple-filter-row{margin-top:12px}.audit-trail{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.audit-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #E5E7EB}.audit-title{display:flex;align-items:center;gap:12px}.audit-title h2{margin:0;font-size:18px;font-weight:600;color:#111827}.audit-count{background:#f3f4f6;padding:4px 10px;border-radius:12px;font-size:13px;color:#6b7280}.audit-actions{display:flex;gap:8px}.audit-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;background:#f9fafb;border:1px solid #E5E7EB;border-radius:8px;font-size:13px;color:#374151;cursor:pointer;transition:all .2s}.audit-btn:hover{background:#f3f4f6;border-color:#d1d5db}.audit-btn.active{background:#003781;color:#fff;border-color:#003781}.audit-btn:disabled{opacity:.5;cursor:not-allowed}.audit-filters{display:none;padding:16px 24px;background:#f9fafb;border-bottom:1px solid #E5E7EB;gap:16px;flex-wrap:wrap;align-items:flex-end}.audit-filters.open{display:flex}.audit-filter-group{display:flex;flex-direction:column;gap:4px}.audit-filter-group label{font-size:12px;font-weight:500;color:#6b7280}.audit-filter-group select,.audit-filter-group input{padding:8px 12px;border:1px solid #D1D5DB;border-radius:6px;font-size:13px;min-width:180px;background:#fff}.audit-filter-group select:focus,.audit-filter-group input:focus{outline:none;border-color:#003781;box-shadow:0 0 0 2px #0037811a}.audit-filter-clear{padding:8px 16px;background:transparent;border:1px solid #D1D5DB;border-radius:6px;color:#6b7280;cursor:pointer;font-size:13px;transition:all .2s}.audit-filter-clear:hover{background:#f3f4f6;border-color:#9ca3af}.audit-table-container{overflow-x:auto}.audit-table{width:100%;border-collapse:collapse}.audit-table th{padding:12px 16px;text-align:left;font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;background:#f9fafb;border-bottom:1px solid #E5E7EB}.audit-table td{padding:14px 16px;font-size:14px;color:#374151;border-bottom:1px solid #F3F4F6;vertical-align:middle}.audit-table tbody tr:hover{background:#f9fafb}.audit-cell-date{white-space:nowrap;color:#6b7280;font-size:13px;font-family:monospace}.audit-cell-user{display:flex;flex-direction:column;gap:2px}.audit-user-email{font-weight:500;color:#111827}.audit-user-role{font-size:12px;color:#9ca3af;text-transform:capitalize}.audit-action-badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:500;white-space:nowrap}.audit-cell-resource{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.audit-metadata-badge{padding:2px 8px;background:#e5e7eb;border-radius:4px;font-size:12px;color:#6b7280;cursor:help}.audit-empty{text-align:center;padding:40px!important;color:#9ca3af;font-style:italic}.audit-pagination{display:flex;justify-content:center;align-items:center;gap:12px;padding:16px;border-top:1px solid #E5E7EB}.audit-pagination-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:#f9fafb;border:1px solid #E5E7EB;border-radius:6px;cursor:pointer;transition:all .2s}.audit-pagination-btn:hover:not(:disabled){background:#f3f4f6;border-color:#d1d5db}.audit-pagination-btn:disabled{opacity:.4;cursor:not-allowed}.audit-pagination-info{font-size:13px;color:#6b7280}.audit-loading,.audit-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px;gap:16px;color:#6b7280}.audit-loading-spinner{width:32px;height:32px;border:3px solid #E5E7EB;border-top-color:#003781;border-radius:50%;animation:audit-spin 1s linear infinite}.audit-error button{padding:8px 16px;background:#003781;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:13px}.audit-error button:hover{background:#002a66}@keyframes audit-spin{to{transform:rotate(360deg)}}@media (max-width: 768px){.audit-header{flex-direction:column;align-items:flex-start;gap:12px}.audit-filters{flex-direction:column}.audit-filter-group select,.audit-filter-group input{min-width:100%}.audit-table th,.audit-table td{padding:10px 12px}.audit-cell-resource{max-width:150px}}.statistics-dashboard{display:flex;flex-direction:column;gap:1rem;padding:.5rem 0}.statistics-top-row{display:flex;gap:1rem;align-items:stretch}.statistics-top-row .key-metric{flex-shrink:0}.statistics-top-row .chart-container{flex:1;min-width:0}@media (max-width: 700px){.statistics-top-row{flex-direction:column}}.chart-container{background:#fff;border-radius:12px;padding:1rem;box-shadow:0 1px 3px #0000001a;border:1px solid #e5e7eb}.chart-title{font-size:.85rem;font-weight:600;color:#374151;margin:0 0 .5rem}.chart-empty{display:flex;align-items:center;justify-content:center;height:200px;color:#9ca3af;font-size:.9rem}.key-metric{display:flex;align-items:center;gap:.75rem;background:#fff;border-radius:12px;padding:1rem 1.5rem;border:1px solid #e5e7eb;box-shadow:0 1px 3px #0000001a;width:fit-content}.key-metric-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#f3f4f6;border-radius:8px;color:#6366f1}.key-metric-icon svg{width:20px;height:20px}.key-metric-value{font-size:1.75rem;font-weight:700;color:#111827;line-height:1}.key-metric-label{font-size:.85rem;color:#6b7280}.statistics-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:3rem;color:#6b7280}.statistics-loading-spinner{width:40px;height:40px;border:3px solid #e5e7eb;border-top-color:#6366f1;border-radius:50%;animation:spin 1s linear infinite}.statistics-error{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;padding:2rem;background:#fef2f2;border-radius:8px;color:#dc2626}.recharts-legend-item-text{color:#374151!important}.recharts-cartesian-axis-tick-value{fill:#6b7280}.cockpit-page{min-height:100vh;background:linear-gradient(135deg,#f5f7fa,#fff);display:flex;flex-direction:column}.cockpit-main{flex:1;display:flex;justify-content:center;padding:40px 20px}.cockpit-container{width:100%;max-width:1200px}.cockpit-container h1{color:#003781;font-size:32px;font-weight:700;margin:0 0 24px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.main-tabs{display:flex;gap:8px;margin-bottom:24px;background:#fff;padding:8px;border-radius:12px;box-shadow:0 1px 3px #0000001a}.main-tab{display:flex;align-items:center;gap:8px;padding:12px 20px;background:transparent;border:none;border-radius:8px;color:#6b7280;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.main-tab:hover{background:#f3f4f6;color:#374151}.main-tab.active{background:#003781;color:#fff}.main-tab svg{flex-shrink:0}.tab-content{min-height:400px}.admin-section{display:flex;flex-direction:column}.admin-sub-tabs{display:flex;gap:4px;margin-bottom:20px;padding:4px;background:#f3f4f6;border-radius:8px;width:fit-content}.admin-sub-tab{display:flex;align-items:center;gap:6px;padding:8px 16px;background:transparent;border:none;border-radius:6px;color:#6b7280;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.admin-sub-tab:hover{color:#374151;background:#ffffff80}.admin-sub-tab.active{background:#fff;color:#003781;box-shadow:0 1px 3px #0000001a}.admin-sub-tab svg{flex-shrink:0}.admin-content{flex:1}.placeholder-content{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 40px;background:#fff;border-radius:12px;border:1px solid #E5E7EB;text-align:center}.placeholder-icon{margin-bottom:24px;opacity:.8}.placeholder-content h3{margin:0 0 8px;font-size:20px;font-weight:600;color:#111827}.placeholder-content p{margin:0 0 12px;font-size:15px;color:#6b7280}.placeholder-hint{font-size:13px;color:#9ca3af}@media (max-width: 768px){.cockpit-container h1{font-size:24px;margin-bottom:16px}.cockpit-main{padding:20px 16px}.main-tabs{flex-direction:column;padding:6px}.main-tab{padding:10px 16px;font-size:13px}.placeholder-content{padding:60px 24px}.placeholder-content h3{font-size:18px}}.cg-doc-panel{display:flex;flex-direction:column;height:100%;width:100%;flex:1;background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 4px 24px #00000014}.cg-doc-panel.fullscreen{position:fixed;inset:0;z-index:9999;border-radius:0}.cg-doc-panel-header{display:flex;align-items:center;justify-content:space-between;padding:0 12px 0 0;background:#f8fafc;border-bottom:1px solid #e5e7eb;min-height:48px;flex-shrink:0}.cg-doc-tabs{display:flex;align-items:center;flex:1;min-width:0;overflow:hidden}.cg-doc-tab-nav{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:transparent;border:none;color:#9ca3af;cursor:pointer;flex-shrink:0;transition:color .15s ease}.cg-doc-tab-nav:hover:not(:disabled){color:#003781}.cg-doc-tab-nav:disabled{opacity:.3;cursor:not-allowed}.cg-doc-tabs-list{display:flex;gap:2px;flex:1;min-width:0;overflow-x:auto;scrollbar-width:none;padding:8px 4px}.cg-doc-tabs-list::-webkit-scrollbar{display:none}.cg-doc-tab{display:flex;align-items:center;gap:6px;padding:8px 12px;background:transparent;border:none;border-radius:8px;font-size:13px;font-weight:500;color:#6b7280;cursor:pointer;transition:all .15s ease;white-space:nowrap;position:relative}.cg-doc-tab:hover{background:#f1f5f9;color:#374151}.cg-doc-tab.active{background:#fff;color:#111827;box-shadow:0 1px 3px #0000001a}.cg-doc-tab-indicator{width:8px;height:8px;border-radius:50%;background:var(--tab-color);flex-shrink:0}.cg-doc-tab-label{font-weight:600}.cg-doc-tab-type{font-size:11px;font-weight:400;color:#9ca3af;padding:2px 6px;background:#f3f4f6;border-radius:4px}.cg-doc-tab.active .cg-doc-tab-type{background:#e0e7ff;color:#4338ca}.cg-doc-tab-close{display:flex;align-items:center;justify-content:center;width:18px;height:18px;background:transparent;border:none;border-radius:4px;color:#9ca3af;cursor:pointer;opacity:0;transition:all .15s ease;margin-left:2px}.cg-doc-tab:hover .cg-doc-tab-close{opacity:1}.cg-doc-tab-close:hover{background:#fee2e2;color:#dc2626}.cg-doc-panel-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.cg-doc-mode-toggle{display:flex;background:#e5e7eb;border-radius:6px;padding:2px;margin-right:4px}.cg-doc-mode-toggle button{display:flex;align-items:center;justify-content:center;width:28px;height:24px;background:transparent;border:none;border-radius:4px;color:#6b7280;cursor:pointer;transition:all .15s ease}.cg-doc-mode-toggle button:hover{color:#374151}.cg-doc-mode-toggle button.active{background:#fff;color:#003781;box-shadow:0 1px 2px #0000001a}.cg-doc-action-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:1px solid transparent;border-radius:8px;color:#6b7280;cursor:pointer;transition:all .15s ease;text-decoration:none}.cg-doc-action-btn:hover{background:#f3f4f6;color:#374151}.cg-doc-close-btn:hover{background:#fee2e2;color:#dc2626}.cg-doc-action-btn.active{background:#003781;color:#fff}.cg-doc-action-btn.active:hover{background:#002a5c}.cg-doc-search-bar{display:flex;align-items:center;gap:8px;padding:4px 12px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;margin-right:8px;color:#6b7280}.cg-doc-search-input{border:none;outline:none;font-size:13px;color:#111827;background:transparent;width:180px}.cg-doc-search-input::placeholder{color:#9ca3af}.cg-doc-search-close{display:flex;align-items:center;justify-content:center;width:20px;height:20px;background:transparent;border:none;border-radius:4px;color:#9ca3af;cursor:pointer;transition:all .15s ease}.cg-doc-search-close:hover{background:#f3f4f6;color:#374151}.cg-doc-search-count{font-size:12px;color:#6b7280;padding:0 8px;white-space:nowrap}.cg-doc-search-nav{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:transparent;border:none;border-radius:4px;color:#6b7280;cursor:pointer;transition:all .15s ease}.cg-doc-search-nav:hover{background:#f3f4f6;color:#374151}.cg-doc-page-indicator{display:flex;align-items:center;justify-content:center;gap:12px;padding:8px 16px;background:linear-gradient(135deg,#003781,#0052b4);color:#fff;font-size:12px;font-weight:600;flex-shrink:0}.cg-doc-page-label{-webkit-user-select:none;user-select:none}.cg-doc-match-count{padding:2px 8px;background:#fff3;border-radius:10px;font-size:11px}.cg-doc-panel-content{flex:1;min-height:0;overflow:auto;display:flex;flex-direction:column}.cg-doc-pdf-view{display:flex;flex-direction:column;width:100%;height:100%;background:#374151}.cg-doc-pdf-iframe{width:100%;height:100%;border:none}.cg-doc-pdf-canvas-scroll{width:100%;height:100%;flex:1 1 auto;min-height:0;overflow-y:scroll;overflow-x:hidden;background:#374151;padding:16px;box-sizing:border-box}.cg-doc-pdf-canvas-page{position:relative;width:100%;display:flex;flex-direction:column;align-items:center;margin-bottom:16px}.cg-doc-pdf-canvas-wrapper{position:relative;display:inline-block}.cg-doc-pdf-canvas{display:block;background:#fff;border-radius:8px;box-shadow:0 4px 16px #0003;max-width:100%}.cg-doc-page-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;width:100%;min-height:800px;background:#4b5563;border-radius:10px;color:#9ca3af;font-size:14px}.cg-doc-page-number{position:absolute;bottom:8px;right:8px;padding:4px 10px;background:#0009;color:#fff;font-size:11px;font-weight:500;border-radius:4px;pointer-events:none}.cg-doc-pdf-highlight{position:absolute;background:#fef08a99;border:1px solid rgba(251,191,36,.8);border-radius:3px;pointer-events:none;z-index:10}.cg-doc-pdf-highlight.current{background:#fbbf24b3;box-shadow:0 0 0 3px #fbbf2466;animation:highlight-pulse 1.5s ease-in-out infinite}.cg-doc-pdf-rendering-indicator{position:absolute;top:12px;right:12px;display:flex;align-items:center;gap:8px;padding:6px 10px;background:#111827b8;color:#fff;border:1px solid rgba(255,255,255,.2);border-radius:999px;font-size:12px;font-weight:600;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.cg-doc-spinner{animation:cg-doc-spin 1s linear infinite}@keyframes cg-doc-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.cg-doc-text-view{width:100%;height:100%;overflow-y:auto;padding:16px;background:#f8fafc}.cg-doc-transcript{display:flex;flex-direction:column;gap:16px}.cg-doc-transcript-page{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #0000000d;border:1px solid #e5e7eb;transition:all .2s ease}.cg-doc-transcript-page.highlighted{border-color:#003781;box-shadow:0 0 0 3px #0037811a}.cg-doc-transcript-page-header{padding:10px 16px;background:#f1f5f9;font-size:13px;font-weight:600;color:#003781;border-bottom:1px solid #e5e7eb}.cg-doc-transcript-page.highlighted .cg-doc-transcript-page-header{background:#003781;color:#fff}.cg-doc-transcript-page-content{padding:16px;font-size:13px;line-height:1.7;color:#374151;white-space:pre-wrap;word-break:break-word}.cg-doc-highlight{background:linear-gradient(135deg,#fef08a,#fde047);padding:2px 4px;border-radius:3px;box-shadow:0 0 0 2px #facc154d;animation:highlight-pulse 2s ease-in-out}@keyframes highlight-pulse{0%{box-shadow:0 0 0 4px #facc1599}50%{box-shadow:0 0 0 8px #facc1533}to{box-shadow:0 0 0 2px #facc154d}}.cg-doc-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#9ca3af;gap:12px}.cg-doc-loading p{font-size:14px}@media (max-width: 768px){.cg-doc-tab-type{display:none}.cg-doc-tab{padding:6px 10px}.cg-doc-action-btn{width:28px;height:28px}}.taxonomy-manager{width:100%;max-width:1200px;margin:0 auto}.taxonomy-tabs-row{display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid #E5E7EB;margin-bottom:24px}.taxonomy-tabs{display:flex;gap:4px;padding-bottom:0}.taxonomy-tab{padding:12px 20px;background:transparent;border:none;border-bottom:3px solid transparent;color:#6b7280;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:8px;margin-bottom:-2px}.taxonomy-tab:hover{color:#003781;background:#f3f4f6}.taxonomy-tab.active{color:#003781;border-bottom-color:#003781;font-weight:600}.tab-badge{background:#ef4444;color:#fff;font-size:11px;font-weight:600;padding:2px 8px;border-radius:10px;min-width:20px;text-align:center}.taxonomy-content{padding:0}.empty-icon{display:block;font-size:48px;margin-bottom:16px;color:#10b981}.empty-state p{font-size:18px;margin:0 0 8px;color:#374151}.empty-subtitle{font-size:14px;color:#9ca3af}.loading-state,.error-state{text-align:center;padding:40px;color:#6b7280}.feedback-content{display:flex;flex-direction:column;gap:16px}.feedback-header{display:flex;justify-content:flex-end}.btn-ignore-all{padding:8px 16px;background:#fee2e2;color:#991b1b;border:1px solid #FECACA;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-ignore-all:hover{background:#fecaca;border-color:#fca5a5}.feedback-list{display:flex;flex-direction:column;gap:12px}.feedback-item{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:#fff;border:1px solid #E5E7EB;border-radius:8px;transition:box-shadow .2s ease}.feedback-item:hover{box-shadow:0 2px 8px #00000014}.feedback-info{flex:1}.feedback-terme{font-size:16px;font-weight:600;color:#111827;display:block;margin-bottom:4px}.feedback-meta{display:flex;gap:12px;font-size:12px;color:#6b7280}.feedback-type{background:#e5e7eb;padding:2px 8px;border-radius:4px;text-transform:uppercase;font-weight:500}.feedback-assureur{color:#003781;font-weight:500}.feedback-actions{display:flex;gap:8px}.btn-resolve{padding:8px 16px;background:#003781;color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:background .2s ease}.btn-resolve:hover{background:#002960}.btn-ignore{padding:8px 16px;background:transparent;color:#6b7280;border:1px solid #D1D5DB;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-ignore:hover{background:#f3f4f6;color:#374151}.categories-content{background:#fff;border-radius:12px;padding:24px;border:1px solid #E5E7EB}.categories-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:16px}.categories-header.compact{justify-content:flex-start}.categories-header h3{margin:0;font-size:18px;font-weight:600;color:#111827}.compagnies-legend-inline{display:flex;align-items:center;gap:12px;padding:6px 12px;background:#f9fafb;border-radius:6px;border:1px solid #E5E7EB}.compagnies-legend-inline .legend-item{display:flex;align-items:center;gap:5px}.compagnies-legend-inline .legend-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.compagnies-legend-inline .legend-name{font-size:12px;font-weight:500;color:#374151}.header-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.domaine-filter{display:flex;align-items:center;gap:8px}.filter-label{font-size:13px;color:#6b7280;font-weight:500}.filter-buttons{display:flex;gap:4px}.filter-btn{padding:6px 12px;background:#f3f4f6;color:#6b7280;border:1px solid #E5E7EB;border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease}.filter-btn:hover{background:#e5e7eb;color:#374151}.filter-btn.active{background:var(--domaine-color, #003781);color:#fff;border-color:var(--domaine-color, #003781)}.domaine-badge{font-size:10px;font-weight:600;color:#fff;padding:2px 8px;border-radius:4px;text-transform:uppercase}.category-header-left{display:flex;align-items:flex-start;gap:10px;flex:1;min-width:0}.category-header-left .category-name{font-size:15px;font-weight:600;color:#111827;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.3}.btn-add-category{padding:8px 16px;background:#003781;color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:background .2s ease}.btn-add-category:hover{background:#002960}.btn-add-mapping{padding:8px 16px;background:#fff;color:#003781;border:1px solid #003781;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-add-mapping:hover{background:#003781;color:#fff}.categories-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}.category-card{background:#f9fafb;border:1px solid #E5E7EB;border-radius:8px;padding:16px}.category-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.category-code{font-size:12px;font-weight:700;color:#003781;background:#e8f4fd;padding:4px 10px;border-radius:4px;text-transform:uppercase}.category-actions{display:flex;gap:4px}.btn-icon{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:4px;cursor:pointer;color:#6b7280;font-size:14px;transition:all .2s ease}.btn-icon:hover{background:#e5e7eb;color:#374151}.btn-icon.btn-danger:hover{background:#fee2e2;color:#dc2626}.category-name{font-size:16px;font-weight:600;color:#111827;margin-bottom:4px}.category-description{font-size:13px;color:#6b7280;margin-bottom:12px}.synonymes-section{margin-top:12px;padding-top:12px;border-top:1px solid #E5E7EB}.synonymes-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.synonymes-label{font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase}.btn-add-synonyme{width:22px;height:22px;display:flex;align-items:center;justify-content:center;background:#003781;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:600;transition:background .2s ease}.btn-add-synonyme:hover{background:#002960}.synonymes-list{display:flex;flex-wrap:wrap;gap:6px}.synonyme-chip{display:inline-flex;align-items:center;gap:4px;background:#fff;border:1px solid #D1D5DB;padding:4px 10px;border-radius:16px;font-size:12px;color:#374151}.synonyme-assureur{font-size:10px;color:#9ca3af}.chip-delete{width:16px;height:16px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:#9ca3af;cursor:pointer;font-size:14px;padding:0;margin-left:2px;border-radius:50%;transition:all .2s ease}.chip-delete:hover{background:#fee2e2;color:#dc2626}.no-synonymes{font-size:12px;color:#9ca3af;font-style:italic}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}.modal-content{background:#fff;border-radius:12px;padding:24px;width:100%;max-width:480px;max-height:90vh;overflow-y:auto;animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-content h3{margin:0 0 20px;font-size:18px;font-weight:600;color:#111827}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:13px;font-weight:500;color:#374151;margin-bottom:6px}.form-group input,.form-group select,.form-group textarea{width:100%;padding:10px 12px;border:1px solid #D1D5DB;border-radius:6px;font-size:14px;color:#111827;transition:border-color .2s ease,box-shadow .2s ease;box-sizing:border-box}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#003781;box-shadow:0 0 0 3px #0037811a}.form-group input:disabled{background:#f3f4f6;color:#6b7280}.form-group textarea{min-height:80px;resize:vertical}.checkbox-group{display:flex;align-items:center}.checkbox-group label{display:flex;align-items:center;gap:8px;cursor:pointer;margin-bottom:0}.checkbox-group input[type=checkbox]{width:auto;margin:0}.resolve-terme{background:#f9fafb;padding:12px 16px;border-radius:6px;margin-bottom:16px;display:flex;gap:8px}.resolve-label{font-size:13px;color:#6b7280}.resolve-value{font-size:14px;font-weight:600;color:#111827}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:16px;border-top:1px solid #E5E7EB}.btn-cancel{padding:10px 20px;background:transparent;color:#6b7280;border:1px solid #D1D5DB;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-save{padding:10px 20px;background:#003781;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s ease}.garantie-content-wrapper{background:#fff;border-radius:12px;padding:24px;border:1px solid #E5E7EB}.garantie-view-toggle{display:flex;background:#f3f4f6;border-radius:8px;padding:4px;gap:4px}.view-toggle-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;border:none;border-radius:6px;background:transparent;color:#6b7280;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.view-toggle-btn:hover:not(.active){color:#374151;background:#ffffff80}.view-toggle-btn.active{background:#fff;color:#003781;box-shadow:0 1px 3px #0000001a}.view-toggle-btn .view-icon{font-size:14px}.mapping-content{background:#fff;border-radius:12px;padding:24px;border:1px solid #E5E7EB}.mapping-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:16px}.mapping-header h3{margin:0;font-size:18px;font-weight:600;color:#111827}.mapping-table-container{overflow-x:auto;border:1px solid #E5E7EB;border-radius:8px}.mapping-table{width:100%;border-collapse:collapse;min-width:800px}.mapping-table th,.mapping-table td{padding:12px 16px;text-align:left;border-bottom:1px solid #E5E7EB}.mapping-table th{background:#f9fafb;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.mapping-table th:not(:first-child){text-align:center;min-width:150px}.mapping-table td:not(:first-child){text-align:center}.mapping-table td.col-baloise,.mapping-table td.col-foyer,.mapping-table td.col-lalux,.mapping-table td.col-axa{background-color:#f9fafb}.mapping-table th.col-baloise{background-color:#00378114}.mapping-table th.col-foyer{background-color:#e3061314}.mapping-table th.col-lalux{background-color:#f5822014}.mapping-table th.col-axa{background-color:#7c3aed14}.mapping-table th.col-baloise,.mapping-table td.col-baloise{border-left:2px solid rgba(0,55,129,.3)}.mapping-table th.col-foyer,.mapping-table td.col-foyer{border-left:2px solid rgba(227,6,19,.3)}.mapping-table th.col-lalux,.mapping-table td.col-lalux{border-left:2px solid rgba(245,130,32,.3)}.mapping-table th.col-axa,.mapping-table td.col-axa{border-left:2px solid rgba(124,58,237,.3)}.mapping-table tbody tr:hover td.col-baloise,.mapping-table tbody tr:hover td.col-foyer,.mapping-table tbody tr:hover td.col-lalux,.mapping-table tbody tr:hover td.col-axa{background-color:#f3f4f6}.mapping-table tbody tr:hover{background:#f9fafb}.mapping-section-header{display:flex;align-items:center;gap:10px;padding:14px 20px;margin-top:24px;border-radius:10px 10px 0 0;border:1px solid;border-bottom:none}.mapping-section-header:first-child{margin-top:0}.mapping-section-header.auto{background:linear-gradient(135deg,#eff6ff,#dbeafe);border-color:#93c5fd}.mapping-section-header.habitation{background:linear-gradient(135deg,#ecfdf5,#d1fae5);border-color:#6ee7b7}.mapping-section-icon{font-size:20px}.mapping-section-title{font-size:16px;font-weight:700;color:#1f2937}.mapping-section-header+.mapping-table{border-top:none;border-radius:0 0 10px 10px;margin-bottom:0}.mapping-section-header.auto+.mapping-table{border-color:#93c5fd}.mapping-section-header.auto+.mapping-table th{background:#eff6ff}.mapping-section-header.habitation+.mapping-table{border-color:#6ee7b7}.mapping-section-header.habitation+.mapping-table th{background:#ecfdf5}.mapping-section-header.habitation+.mapping-table tbody tr:hover{background:#f0fdf4}.mapping-section-header.habitation+.mapping-table .category-code{background:#d1fae5;color:#065f46}.meta-garantie-col{width:250px;min-width:200px}.meta-garantie-cell{display:flex;align-items:center;justify-content:space-between;gap:8px}.category-name-small{font-size:14px;color:#374151;flex:1}.meta-garantie-delete-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:6px;background:transparent;color:#9ca3af;cursor:pointer;opacity:0;transition:all .15s ease;flex-shrink:0}.mapping-row:hover .meta-garantie-delete-btn{opacity:1}.meta-garantie-delete-btn:hover{background:#fee2e2;color:#dc2626}.garantie-cell{display:inline-block;background:#e8f4fd;color:#003781;padding:4px 10px;border-radius:4px;font-size:12px;font-weight:500;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.garantie-empty{color:#d1d5db;font-size:14px}.garantie-empty.clickable{cursor:pointer;display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:transparent;color:#9ca3af;font-size:18px;font-weight:300;transition:all .15s ease;margin:0 auto}.garantie-empty.clickable:hover{background:#e5e7eb;color:#374151;transform:scale(1.1)}.garantie-cell-td{cursor:pointer;transition:background .2s ease}.garantie-cell-td:hover{background:#e8f4fd}.garantie-cell.clickable{cursor:pointer;transition:all .2s ease}.garantie-cell.clickable:hover{background:#003781;color:#fff}.garantie-blocks{display:flex;flex-direction:column;gap:6px}.garantie-block{display:block;background:var(--block-bg-color, #E8F4FD);color:var(--block-text-color, #003781);padding:6px 10px;border-radius:6px;font-size:12px;font-weight:500;border-left:3px solid var(--block-border-color, #003781);transition:all .2s ease}.garantie-block.clickable{cursor:pointer}.garantie-block.clickable:hover{background:var(--block-border-color, #003781);color:#fff;filter:brightness(1.1)}.garantie-block.draggable{cursor:grab;position:relative;padding-left:24px}.garantie-block.draggable:active{cursor:grabbing}.garantie-block.dragging{opacity:.5;background:#d1d5db;border-left-color:#9ca3af}.drag-handle{position:absolute;left:6px;top:50%;transform:translateY(-50%);color:#9ca3af;font-size:10px;letter-spacing:-1px;opacity:.6;transition:opacity .2s ease}.garantie-block.draggable:hover .drag-handle{opacity:1;color:#fff}.garantie-block.draggable{padding-right:28px}.garantie-delete-btn{position:absolute;right:4px;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:18px;height:18px;border:none;border-radius:4px;background:transparent;color:#9ca3af;cursor:pointer;opacity:0;transition:all .15s ease}.garantie-block:hover .garantie-delete-btn{opacity:1}.garantie-delete-btn:hover{background:#dc262626;color:#dc2626}.garantie-block.clickable:hover .garantie-delete-btn{color:#ffffffb3}.garantie-block.clickable:hover .garantie-delete-btn:hover{background:#fff3;color:#fff}.mapping-row{transition:all .2s ease}.mapping-row.drop-target{position:relative}.mapping-row.drag-over{background:#e8f4fd!important;box-shadow:inset 0 0 0 2px #003781}.mapping-row.drag-over td{background:transparent!important}.mapping-row.drag-over .meta-garantie-cell{transform:scale(1.02)}.mapping-row.drag-over .category-code{background:#003781;color:#fff}.mapping-row.drop-target:after{content:"";position:absolute;inset:0;pointer-events:none;border:2px dashed transparent;border-radius:4px;transition:border-color .2s ease}.mapping-row.drop-target:not(.drag-over):after{border-color:#e5e7eb}.mapping-section{margin-top:16px;padding-top:12px;border-top:1px solid #E5E7EB}.mapping-section-label{font-size:11px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;margin-bottom:10px}.mapping-chips-list{display:flex;flex-wrap:wrap;gap:8px}.mapping-chip{display:flex;align-items:center;gap:8px;padding:6px 12px;border-radius:6px;background:var(--chip-bg-color, #F3F4F6);font-size:13px;transition:all .2s ease;border-left:3px solid var(--chip-border-color, #D1D5DB)}.mapping-chip.draggable{cursor:grab;padding-left:8px}.mapping-chip.draggable:active{cursor:grabbing}.mapping-chip.dragging{opacity:.4;background:#d1d5db}.drag-handle-chip{color:#9ca3af;font-size:10px;letter-spacing:-1px;opacity:.6;transition:opacity .2s ease}.mapping-chip.draggable:hover{filter:brightness(.95)}.mapping-chip.draggable:hover .drag-handle-chip{opacity:1;color:#6b7280}.mapping-chip.clickable{cursor:pointer}.mapping-chip.clickable:hover{transform:translateY(-1px);box-shadow:0 2px 8px #0000001f}.mapping-chip.clickable:active{transform:translateY(0);box-shadow:none}.mapping-chip-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.mapping-chip-garantie{color:#374151;font-weight:500}.mapping-chip .chip-delete{opacity:0;margin-left:4px;transition:opacity .2s ease}.mapping-chip:hover .chip-delete{opacity:1}.no-mappings{font-size:13px;color:#9ca3af;font-style:italic}.compagnies-legend{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#f9fafb;border-radius:8px;margin-bottom:20px;border:1px solid #E5E7EB}.legend-label{font-size:13px;font-weight:600;color:#6b7280}.legend-items{display:flex;flex-wrap:wrap;gap:16px}.legend-item{display:flex;align-items:center;gap:6px}.legend-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0}.legend-name{font-size:13px;font-weight:500;color:#374151}.category-card{transition:all .2s ease}.category-card.drop-target{position:relative}.category-card.drag-over{background:#e8f4fd!important;border-color:#003781!important;box-shadow:0 0 0 2px #003781,0 4px 12px #00378126!important;transform:scale(1.02)}.category-card.drag-over .category-code{background:#003781;color:#fff}.category-card.drag-over .mapping-chips-list{min-height:40px;background:#0037810d;border-radius:6px;border:2px dashed #003781;padding:8px;margin:-8px}@media (max-width: 768px){.taxonomy-tabs{flex-wrap:wrap}.taxonomy-tab{padding:10px 16px;font-size:13px}.categories-grid{grid-template-columns:1fr}.feedback-item{flex-direction:column;align-items:flex-start;gap:12px}.feedback-actions{width:100%}.feedback-actions button{flex:1}.modal-content{margin:16px;max-width:calc(100% - 32px)}}.translations-section{margin-top:20px;padding:16px;background:#f9fafb;border-radius:8px;border:1px solid #E5E7EB}.translations-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.translations-header h4{margin:0;font-size:14px;font-weight:600;color:#374151}.btn-generate-translations{padding:6px 12px;background:linear-gradient(135deg,#8b5cf6,#6366f1);color:#fff;border:none;border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:6px}.btn-generate-translations:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #6366f14d}.btn-generate-translations:disabled{opacity:.6;cursor:not-allowed}.translations-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.translations-fields .form-group{margin:0}.translations-fields .form-group label{display:flex;align-items:center;gap:8px}.lang-flag{display:inline-flex;align-items:center;justify-content:center;width:24px;height:18px;background:#e5e7eb;color:#374151;font-size:10px;font-weight:700;border-radius:3px}.loading-translations{text-align:center;padding:20px;color:#6b7280;font-size:14px}.modal-content-wide{max-width:600px}@media (max-width: 768px){.translations-fields{grid-template-columns:1fr}.translations-header{flex-direction:column;gap:12px;align-items:flex-start}.btn-generate-translations{width:100%;justify-content:center}.modal-content-wide{max-width:calc(100% - 32px)}}.taxonomy-header-row{display:flex;justify-content:flex-end;align-items:center;gap:16px;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #E5E7EB}.global-view-toggle{display:flex;background:#f3f4f6;border-radius:10px;padding:4px;gap:4px;margin-left:auto}.global-view-btn{display:flex;align-items:center;gap:8px;padding:10px 18px;border:none;border-radius:8px;background:transparent;color:#6b7280;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.global-view-btn:hover:not(.active){color:#374151;background:#ffffff80}.global-view-btn.active{background:#fff;color:#003781;box-shadow:0 2px 8px #00378126}.global-view-btn svg{flex-shrink:0}.btn-export{display:flex;align-items:center;gap:8px;padding:10px 18px;background:#003781;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-export:hover:not(:disabled){background:#002a63}.btn-export:disabled{opacity:.6;cursor:not-allowed}.btn-export svg{flex-shrink:0}@media (max-width: 768px){.taxonomy-tabs-row{flex-wrap:wrap;gap:12px}.taxonomy-header-row{justify-content:center;flex-wrap:wrap}.global-view-btn,.btn-export{padding:8px 14px;font-size:13px}}.taxonomy-manager-container{display:block;width:100%}.taxonomy-manager-container .taxonomy-manager{max-width:1200px;margin:0 auto;transition:padding-right .3s ease,max-width .3s ease}.taxonomy-manager-container.with-cg-panel .taxonomy-manager{max-width:none;padding-right:520px}.taxonomy-cg-panel{position:fixed;top:180px;right:20px;width:500px;height:calc(100vh - 200px);z-index:100;box-shadow:-4px 0 20px #0000001a;display:flex}.taxonomy-cg-resize-handle{position:absolute;left:-6px;top:0;width:12px;height:100%;cursor:ew-resize;z-index:101;background:transparent;transition:background .15s ease}.taxonomy-cg-resize-handle:before{content:"";position:absolute;left:5px;top:50%;transform:translateY(-50%);width:4px;height:40px;background:#d1d5db;border-radius:2px;opacity:0;transition:opacity .15s ease}.taxonomy-cg-resize-handle:hover:before,.taxonomy-cg-panel.resizing .taxonomy-cg-resize-handle:before{opacity:1;background:#003781}.taxonomy-cg-panel.resizing .taxonomy-cg-resize-handle{background:#0037811a}.taxonomy-manager-container.resizing{-webkit-user-select:none;user-select:none}.taxonomy-manager-container.resizing *{cursor:ew-resize!important}.btn-cg-toggle{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#fff;color:#003781;border:1px solid #003781;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-cg-toggle:hover,.btn-cg-toggle.active{background:#003781;color:#fff}.btn-cg-toggle svg{flex-shrink:0}.header-actions .btn-dropdown-wrapper:last-child{margin-left:auto}.cg-selector-dropdown{padding:8px 12px;border:1px solid #D1D5DB;border-radius:6px;font-size:13px;color:#374151;background:#fff;cursor:pointer;min-width:180px;transition:border-color .2s ease}.cg-selector-dropdown:hover{border-color:#003781}.cg-selector-dropdown:focus{outline:none;border-color:#003781;box-shadow:0 0 0 3px #0037811a}.cg-no-docs-hint{font-size:12px;color:#9ca3af;font-style:italic;padding:8px 12px}@media (max-width: 1200px){.taxonomy-manager-container.with-cg-panel .taxonomy-manager{padding-right:20px}.taxonomy-cg-panel{position:fixed;inset:auto 0 0;width:100%;height:50vh;border-radius:16px 16px 0 0}}@media (max-width: 768px){.btn-cg-toggle span:not(:first-child){display:none}.btn-cg-toggle{padding:8px 12px}.cg-selector-dropdown{min-width:140px}}.btn-dropdown-wrapper{position:relative}.cg-dropdown{position:absolute;top:100%;left:0;margin-top:4px;background:#fff;border:1px solid #E5E7EB;border-radius:8px;box-shadow:0 4px 12px #00000026;min-width:180px;z-index:1000;overflow:hidden}.cg-dropdown-loading,.cg-dropdown-empty{padding:12px 16px;color:#6b7280;font-size:13px;text-align:center}.cg-dropdown-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 14px;border:none;background:#fff;text-align:left;cursor:pointer;font-size:13px;color:#374151;transition:background .15s ease}.cg-dropdown-item:hover{background:#f3f4f6}.cg-dropdown-item.open{background:#eff6ff}.cg-dropdown-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.cg-dropdown-check{margin-left:auto;color:#3b82f6;font-weight:700}.add-dropdown{position:absolute;top:100%;right:0;margin-top:4px;background:#fff;border:1px solid #E5E7EB;border-radius:8px;box-shadow:0 4px 12px #00000026;min-width:180px;z-index:1000;overflow:hidden}.add-dropdown-item{display:block;width:100%;padding:10px 14px;border:none;background:#fff;text-align:left;cursor:pointer;font-size:13px;color:#374151;transition:background .15s ease}.add-dropdown-item:hover{background:#f3f4f6}.version-history{background:#f8fafc;border-radius:8px;padding:1rem;height:100%;overflow-y:auto}.version-history-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid #e2e8f0}.version-history-header h4{margin:0;font-size:.875rem;font-weight:600;color:#334155}.version-count{font-size:.75rem;color:#64748b;background:#e2e8f0;padding:.25rem .5rem;border-radius:4px}.version-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.version-item{background:#fff;border:1px solid #e2e8f0;border-radius:6px;overflow:hidden;transition:border-color .2s}.version-item:hover{border-color:#cbd5e1}.version-item.current{border-color:#3b82f6;border-width:2px}.version-item.default{background:#f1f5f9}.version-header{display:flex;align-items:center;padding:.75rem;cursor:pointer;-webkit-user-select:none;user-select:none}.version-info{display:flex;align-items:center;gap:.5rem;flex:1}.version-number{font-weight:600;font-size:.875rem;color:#1e293b;font-family:monospace}.version-badges{display:flex;gap:.25rem}.badge{font-size:.625rem;font-weight:600;text-transform:uppercase;padding:.125rem .375rem;border-radius:3px}.badge-default{background:#e2e8f0;color:#475569}.badge-current{background:#dbeafe;color:#1d4ed8}.version-meta{display:flex;flex-direction:column;align-items:flex-end;gap:.125rem;margin-right:.5rem}.version-date{font-size:.75rem;color:#64748b}.version-author{font-size:.625rem;color:#94a3b8;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.expand-icon{font-size:.75rem;color:#94a3b8;transition:transform .2s}.expand-icon.expanded{transform:rotate(180deg)}.version-description{margin:0;padding:0 .75rem .5rem;font-size:.75rem;color:#64748b;font-style:italic}.version-expanded{border-top:1px solid #e2e8f0;padding:.75rem;background:#f8fafc}.version-preview{margin:0 0 .75rem;padding:.5rem;background:#fff;border:1px solid #e2e8f0;border-radius:4px;font-size:.625rem;line-height:1.4;color:#475569;max-height:120px;overflow:hidden;white-space:pre-wrap;word-break:break-word;font-family:Monaco,Menlo,monospace}.version-actions{display:flex;gap:.375rem;justify-content:flex-start}.btn-action{padding:.375rem .5rem;font-size:.75rem;font-weight:500;border:none;border-radius:4px;cursor:pointer;transition:background .2s}.btn-action.btn-icon{flex:0;width:32px;height:32px;padding:0;font-size:1rem;display:flex;align-items:center;justify-content:center}.btn-view{background:#e2e8f0;color:#475569}.btn-view:hover{background:#cbd5e1}.btn-compare{background:#dbeafe;color:#1d4ed8}.btn-compare:hover{background:#bfdbfe}.btn-rollback{background:#fef3c7;color:#92400e}.btn-rollback:hover{background:#fde68a}.no-versions{text-align:center;color:#64748b;font-size:.875rem;padding:1rem}.version-name{font-size:.75rem;font-weight:500;color:#475569;background:#f1f5f9;padding:.125rem .5rem;border-radius:4px;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.version-name-edit{display:flex;align-items:center;gap:.25rem}.version-name-edit input{width:100px;padding:.25rem .5rem;font-size:.75rem;border:1px solid #3b82f6;border-radius:4px;outline:none}.btn-save-name,.btn-cancel-name{padding:.125rem .375rem;font-size:.75rem;border:none;border-radius:3px;cursor:pointer}.btn-save-name{background:#22c55e;color:#fff}.btn-save-name:hover{background:#16a34a}.btn-cancel-name{background:#e2e8f0;color:#475569}.btn-cancel-name:hover{background:#cbd5e1}.btn-rename{background:#f1f5f9;color:#475569}.btn-rename:hover{background:#e2e8f0}.btn-delete{background:#fee2e2;color:#dc2626}.btn-delete:hover{background:#fecaca}.diff-viewer{display:flex;flex-direction:column;flex:1;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden;background:#fff}.diff-header{display:flex;align-items:center;padding:10px 14px;background:#f8fafc;border-bottom:1px solid #e2e8f0;gap:12px}.diff-labels{display:flex;align-items:center;gap:8px;flex:1}.diff-label{font-size:13px;font-weight:600;padding:4px 10px;border-radius:4px}.diff-label-old{background:#fee2e2;color:#991b1b}.diff-label-new{background:#dcfce7;color:#166534}.diff-arrow{color:#64748b;font-size:14px}.diff-stats{display:flex;gap:8px}.diff-stat{font-size:12px;font-weight:600;padding:2px 6px;border-radius:3px;font-family:monospace}.diff-stat-added{background:#dcfce7;color:#166534}.diff-stat-removed{background:#fee2e2;color:#991b1b}.btn-close-diff{background:none;border:none;font-size:20px;color:#64748b;cursor:pointer;padding:0 4px;line-height:1;transition:color .2s}.btn-close-diff:hover{color:#334155}.diff-content{flex:1;overflow:auto;padding:16px;background:#fafafa;min-height:350px}.diff-text{margin:0;font-family:Monaco,Menlo,Consolas,monospace;font-size:12px;line-height:1.6;white-space:pre-wrap;word-break:break-word;color:#334155}.diff-added{background:#dcfce7;color:#166534;padding:1px 2px;border-radius:2px;text-decoration:none}.diff-removed{background:#fee2e2;color:#991b1b;padding:1px 2px;border-radius:2px;text-decoration:line-through}.diff-unchanged{color:#475569}.prompt-manager{width:100%;max-width:1400px;margin:0 auto}.prompt-manager-header{margin-bottom:24px}.prompt-manager-header h2{margin:0 0 8px;font-size:20px;font-weight:600;color:#111827}.prompt-manager-description{margin:0;font-size:14px;color:#6b7280}.prompt-manager-content{display:grid;grid-template-columns:320px 1fr;gap:24px;min-height:600px;transition:grid-template-columns .3s ease}.prompt-manager-content.with-history{grid-template-columns:280px 1fr 300px}.prompt-list{background:#fff;border:1px solid #E5E7EB;border-radius:12px;overflow:hidden}.prompt-list-header{padding:16px 20px;border-bottom:1px solid #E5E7EB;background:#f9fafb}.prompt-list-header h3{margin:0;font-size:14px;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.5px}.document-type-filter{margin-top:12px}.filter-select{width:100%;padding:8px 12px;border:1px solid #D1D5DB;border-radius:6px;font-size:13px;color:#374151;background:#fff;cursor:pointer;transition:border-color .2s ease}.filter-select:focus{outline:none;border-color:#003781;box-shadow:0 0 0 2px #0037811a}.filter-select:hover{border-color:#9ca3af}.prompt-list ul{list-style:none;margin:0;padding:0}.prompt-list-item{padding:16px 20px;cursor:pointer;border-bottom:1px solid #F3F4F6;transition:background .2s ease}.prompt-list-item:last-child{border-bottom:none}.prompt-list-item:hover{background:#f9fafb}.prompt-list-item.active{background:#ebf4ff;border-left:3px solid #003781}.prompt-item-info{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:4px}.prompt-item-name{font-size:14px;font-weight:600;color:#111827;flex-shrink:0}.prompt-badges{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.custom-badge{font-size:10px;font-weight:600;color:#d97706;background:#fef3c7;padding:2px 8px;border-radius:10px;text-transform:uppercase}.type-badge{font-size:9px;font-weight:600;padding:2px 6px;border-radius:8px;text-transform:uppercase;letter-spacing:.3px}.type-badge.devis{color:#0369a1;background:#e0f2fe}.type-badge.carte_verte{color:#047857;background:#d1fae5}.prompt-item-description{font-size:12px;color:#6b7280;display:block}.prompt-editor{background:#fff;border:1px solid #E5E7EB;border-radius:12px;padding:24px;display:flex;flex-direction:column}.prompt-editor-header{margin-bottom:20px}.prompt-editor-title{display:flex;align-items:center;gap:12px;margin-bottom:8px}.prompt-editor-title h3{margin:0;font-size:18px;font-weight:600;color:#111827}.status-badge{font-size:11px;font-weight:500;padding:4px 10px;border-radius:12px}.status-badge.custom{color:#d97706;background:#fef3c7}.status-badge.default{color:#059669;background:#d1fae5}.modified-by{font-size:12px;color:#6b7280;font-style:italic}.prompt-editor-header p{margin:0;font-size:14px;color:#6b7280}.prompt-editor-tabs{display:flex;gap:4px;margin-bottom:16px;border-bottom:2px solid #E5E7EB;padding-bottom:0}.editor-tab{padding:10px 16px;background:transparent;border:none;border-bottom:3px solid transparent;color:#6b7280;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease;margin-bottom:-2px;display:flex;align-items:center;gap:6px}.editor-tab:hover{color:#003781;background:#f3f4f6}.editor-tab.active{color:#003781;border-bottom-color:#003781;font-weight:600}.unsaved-dot{width:8px;height:8px;background:#f59e0b;border-radius:50%}.prompt-textarea-container{flex:1;display:flex;flex-direction:column;min-height:400px}.prompt-textarea{width:100%;flex:1;padding:16px;border:1px solid #D1D5DB;border-radius:8px;font-size:13px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;line-height:1.6;color:#111827;resize:none;transition:border-color .2s ease,box-shadow .2s ease;box-sizing:border-box}.prompt-textarea:focus{outline:none;border-color:#003781;box-shadow:0 0 0 3px #0037811a}.prompt-textarea.readonly{background:#f9fafb;color:#6b7280;cursor:default}.prompt-editor-actions{display:flex;justify-content:space-between;align-items:center;margin-top:20px;padding-top:16px;border-top:1px solid #E5E7EB}.actions-left{display:flex;align-items:center}.unsaved-warning{font-size:13px;color:#d97706;font-weight:500;display:flex;align-items:center;gap:6px}.unsaved-warning:before{content:"";width:8px;height:8px;background:#f59e0b;border-radius:50%}.actions-right{display:flex;gap:12px}.btn-cancel{padding:10px 20px;background:transparent;color:#6b7280;border:1px solid #E5E7EB;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-cancel:hover{background:#f3f4f6;color:#374151}.btn-cancel:disabled{opacity:.5;cursor:not-allowed}.btn-reset{padding:10px 20px;background:transparent;color:#d97706;border:1px solid #FCD34D;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-reset:hover{background:#fffbeb;color:#b45309}.btn-reset:disabled{opacity:.5;cursor:not-allowed}.btn-save{padding:10px 24px;background:#003781;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s ease}.btn-save:hover{background:#002960}.btn-save:disabled{background:#9ca3af;cursor:not-allowed}.prompt-meta{margin-top:12px;font-size:12px;color:#9ca3af}.error-banner{padding:12px 16px;background:#fee2e2;color:#dc2626;border-radius:6px;font-size:13px;margin-bottom:16px}.success-banner{padding:12px 16px;background:#d1fae5;color:#059669;border-radius:6px;font-size:13px;margin-bottom:16px}.loading-state,.error-state{text-align:center;padding:60px 20px;color:#6b7280}.error-state{color:#ef4444}.empty-state{text-align:center;padding:60px 20px;color:#6b7280}.empty-state p{font-size:14px;margin:0}.version-indicator{font-size:12px;font-weight:600;color:#3b82f6;background:#dbeafe;padding:2px 8px;border-radius:4px;font-family:monospace}.btn-history{margin-left:auto;padding:6px 12px;background:#f1f5f9;color:#475569;border:1px solid #e2e8f0;border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-history:hover{background:#e2e8f0;color:#1e293b}.btn-history.active{background:#003781;color:#fff;border-color:#003781}.compare-view{display:flex;flex-direction:column;flex:1;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden}.compare-header{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:#f8fafc;border-bottom:1px solid #e2e8f0;font-size:13px;font-weight:500;color:#334155}.btn-close-compare{background:none;border:none;font-size:18px;color:#64748b;cursor:pointer;padding:0 4px;line-height:1}.btn-close-compare:hover{color:#1e293b}.compare-panels{display:grid;grid-template-columns:1fr 1fr;flex:1;min-height:0}.compare-panel{display:flex;flex-direction:column;min-height:0}.compare-panel:first-child{border-right:1px solid #e2e8f0}.compare-panel-header{padding:6px 12px;background:#f1f5f9;font-size:12px;font-weight:600;color:#475569;border-bottom:1px solid #e2e8f0}.compare-panel .prompt-textarea{border:none;border-radius:0;flex:1;min-height:350px}.version-history-panel{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}@media (max-width: 1200px){.prompt-manager-content.with-history{grid-template-columns:280px 1fr}.version-history-panel{position:fixed;right:0;top:0;bottom:0;width:320px;z-index:100;border-radius:0;box-shadow:-4px 0 20px #00000026}}@media (max-width: 900px){.prompt-manager-content,.prompt-manager-content.with-history{grid-template-columns:1fr}.prompt-list{max-height:300px;overflow-y:auto}.version-history-panel{position:fixed;right:0;top:0;bottom:0;width:100%;max-width:320px}}.backtesting-manager{display:flex;flex-direction:column;gap:1.5rem}.backtesting-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.header-left h2{margin:0;font-size:1.5rem;color:#111827}.header-description{margin:.25rem 0 0;color:#6b7280;font-size:.875rem}.header-actions{display:flex;align-items:center;gap:1rem}.auto-reprocess-toggle{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.875rem;color:#374151}.auto-reprocess-toggle input{width:1rem;height:1rem;cursor:pointer}.branch-filter-dropdown{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#374151}.branch-filter-dropdown label{font-weight:500}.branch-filter-dropdown select{padding:.375rem .75rem;border:1px solid #D1D5DB;border-radius:6px;font-size:.875rem;background:#fff;color:#374151;cursor:pointer;min-width:100px}.branch-filter-dropdown select:hover{border-color:#9ca3af}.branch-filter-dropdown select:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 2px #6366f133}.btn-run-backtesting{display:flex;align-items:center;gap:.5rem;padding:.625rem 1rem;background:#003781;color:#fff;border:none;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .2s ease}.btn-run-backtesting:hover:not(:disabled){background:#002960}.btn-run-backtesting:disabled{opacity:.6;cursor:not-allowed}.btn-stop-backtesting{display:flex;align-items:center;gap:.5rem;padding:.625rem 1rem;background:#dc2626;color:#fff;border:none;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .2s ease}.btn-stop-backtesting:hover{background:#b91c1c}.spinner{width:14px;height:14px;border:2px solid transparent;border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error-banner{padding:.75rem 1rem;background:#fee2e2;border:1px solid #FECACA;border-radius:6px;color:#dc2626;font-size:.875rem}.info-banner{padding:.75rem 1rem;background:#fef3c7;border:1px solid #FCD34D;border-radius:6px;color:#92400e;font-size:.875rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.info-banner .dismiss-btn{background:none;border:none;color:#92400e;font-size:1.25rem;cursor:pointer;padding:0;line-height:1;opacity:.7;transition:opacity .2s}.info-banner .dismiss-btn:hover{opacity:1}.progress-banner{padding:.75rem 1rem;background:#eff6ff;border:1px solid #BFDBFE;border-radius:6px}.progress-info{display:flex;justify-content:space-between;margin-bottom:.5rem;font-size:.875rem;color:#1e40af}.progress-bar{height:6px;background:#dbeafe;border-radius:3px;overflow:hidden}.progress-fill{height:100%;background:#3b82f6;transition:width .3s ease}.metrics-panel-container{padding:1.5rem;background:#f9fafb;border:1px solid #E5E7EB;border-radius:8px}.metrics-panel{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.prompt-scores-section{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #E5E7EB}.prompt-scores-section h4{margin:0 0 1rem;font-size:.75rem;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.prompt-scores-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.75rem}.prompt-score-card{display:flex;flex-direction:column;padding:.75rem;background:#fff;border:1px solid #E5E7EB;border-radius:6px}.prompt-label{font-size:.75rem;color:#6b7280;margin-bottom:.25rem}.prompt-score{font-size:1.25rem;font-weight:700}.prompt-score.high{color:#10b981}.prompt-score.medium{color:#d97706}.prompt-score.low{color:#dc2626}.prompt-score.neutral{color:#6b7280}.prompt-detail{font-size:.7rem;color:#9ca3af;margin-top:.25rem}.scores-separator{display:flex;align-items:center;margin:1.5rem 0 1rem;gap:1rem}.scores-separator:before,.scores-separator:after{content:"";flex:1;height:1px;background:#e5e7eb}.scores-separator span{font-size:.75rem;font-weight:500;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.prompt-score-card.assureur-card{border-left:3px solid #003781}.prompt-score-card.branch-card{border-left:3px solid #8B5CF6}.dimension-scores-row{display:grid;grid-template-columns:auto 1fr;gap:2rem;margin-top:.5rem}.dimension-column{min-width:0}.dimension-column .scores-separator{margin:.75rem 0}.dimension-scores-grid{display:flex;flex-wrap:wrap;gap:.75rem}.dimension-scores-grid .prompt-score-card{min-width:140px;flex:0 0 auto}.prompt-score-card.active-filter{box-shadow:0 0 0 2px #3b82f6;background:#eff6ff}.prompt-score-card.clickable{cursor:pointer}.prompt-score-card.clickable:hover{transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.metric-card{text-align:center}.metric-label{display:block;margin-bottom:.5rem;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:#6b7280}.metric-value{font-size:2rem;font-weight:700;color:#111827}.metric-value.high{color:#10b981}.metric-value.medium{color:#d97706}.metric-value.low{color:#dc2626}.metric-value.neutral{color:#6b7280}.metric-hint{margin-top:.25rem;font-size:.75rem;color:#9ca3af}.engine-badge{display:inline-block;padding:.1rem .4rem;border-radius:4px;font-size:.7rem;font-weight:600;background:#eef2ff;color:#4f46e5;text-transform:uppercase;letter-spacing:.02em}.active-filters-bar{display:flex;align-items:center;gap:.75rem;padding:.5rem 1rem;background:#eff6ff;border:1px solid #BFDBFE;border-radius:6px;margin-bottom:1rem}.filters-label{font-size:.8125rem;color:#1e40af;font-weight:500}.filter-badge{display:inline-flex;align-items:center;gap:.375rem;padding:.25rem .5rem;background:#fff;border:1px solid #93C5FD;border-radius:4px;font-size:.8125rem;color:#1e40af}.filter-badge button{display:flex;align-items:center;justify-content:center;width:16px;height:16px;background:#dbeafe;border:none;border-radius:50%;color:#1e40af;font-size:.875rem;cursor:pointer;line-height:1}.filter-badge button:hover{background:#bfdbfe}.clear-all-filters{margin-left:auto;padding:.25rem .5rem;background:transparent;border:none;color:#2563eb;font-size:.8125rem;cursor:pointer;text-decoration:underline}.clear-all-filters:hover{color:#1d4ed8}.backtesting-tabs{display:flex;gap:.5rem;border-bottom:1px solid #E5E7EB;padding-bottom:0}.backtesting-tab{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:none;border:none;border-bottom:2px solid transparent;color:#6b7280;font-size:.875rem;cursor:pointer;transition:all .2s ease;margin-bottom:-1px}.backtesting-tab:hover{color:#374151}.backtesting-tab.active{color:#003781;border-bottom-color:#003781}.backtesting-content{min-height:400px}.loading-state,.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;color:#6b7280}.empty-state .hint{margin-top:.5rem;font-size:.875rem;color:#9ca3af}.document-list{display:flex;flex-direction:column;gap:.75rem}.document-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.document-list-header h3{margin:0;font-size:1rem;color:#374151}.btn-add-document{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#fff;border:1px solid #E5E7EB;border-radius:6px;font-size:.875rem;color:#374151;cursor:pointer;transition:all .2s ease}.btn-add-document:hover{background:#f9fafb;border-color:#d1d5db}.document-card{display:flex;align-items:center;justify-content:space-between;padding:1rem;background:#fff;border:1px solid #E5E7EB;border-radius:8px;cursor:pointer;transition:all .2s ease}.document-card:hover{border-color:#003781;box-shadow:0 2px 8px #0037811a}.document-info{display:flex;flex-direction:column;gap:.25rem}.document-name{font-weight:500;color:#111827}.document-meta{display:flex;gap:1rem;font-size:.75rem;color:#6b7280}.document-actions{display:flex;align-items:center;gap:12px}.btn-delete-doc{opacity:0;display:flex;align-items:center;justify-content:center;padding:6px;background:transparent;border:none;color:#9ca3af;cursor:pointer;border-radius:4px;transition:all .2s ease}.document-card:hover .btn-delete-doc{opacity:1}.btn-delete-doc:hover{color:#ef4444;background:#fee2e2}.document-score{display:flex;align-items:center}.score{padding:.25rem .75rem;border-radius:9999px;font-size:.875rem;font-weight:600}.score.high{background:#d1fae5;color:#065f46}.score.medium{background:#fef3c7;color:#92400e}.score.low{background:#fee2e2;color:#991b1b}.score.none{background:#f3f4f6;color:#6b7280}.score-initial-badge{font-size:.75rem;margin-left:.125rem;opacity:.7}.backtesting-results-tab{padding-top:1rem}.results-list{display:flex;flex-direction:column;gap:.5rem}.result-card{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:#fff;border:1px solid #E5E7EB;border-radius:6px;cursor:pointer;transition:all .2s ease}.result-card:hover{border-color:#003781}.result-info{display:flex;flex-direction:column;gap:.125rem}.result-name{font-weight:500;color:#111827}.result-assureur{font-size:.75rem;color:#6b7280}.result-score .score{font-size:.875rem}.run-history{padding-top:1rem}.run-history-list{display:flex;flex-direction:column;gap:.5rem}.run-card{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:#fff;border:1px solid #E5E7EB;border-radius:6px;cursor:pointer;transition:all .2s ease}.run-card:hover{border-color:#003781}.run-info{display:flex;flex-direction:column;gap:.125rem}.run-date{font-weight:500;color:#111827}.run-meta{font-size:.75rem;color:#6b7280}.run-score{padding:.375rem .875rem;border-radius:9999px;font-size:1rem;font-weight:700;min-width:70px;text-align:center}.run-status{padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500}.run-status.completed{background:#d1fae5;color:#065f46}.run-status.running{background:#dbeafe;color:#1e40af}.run-status.failed{background:#fee2e2;color:#991b1b}.run-status.cancelled{background:#fef3c7;color:#92400e}.run-detail-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #E5E7EB}.run-detail-header .btn-back{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#fff;border:1px solid #E5E7EB;border-radius:6px;color:#374151;font-size:.875rem;cursor:pointer;transition:all .2s ease;width:auto;height:auto}.run-detail-header .btn-back:hover{background:#f9fafb;border-color:#003781;color:#003781}.run-detail-info{flex:1}.run-detail-info h3{margin:0;font-size:1.125rem;color:#111827}.run-detail-meta{display:block;margin-top:.25rem;font-size:.8125rem;color:#6b7280}.document-detail{display:flex;flex-direction:column;gap:1.5rem}.detail-header{display:flex;align-items:center;gap:1rem}.btn-back{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:#fff;border:1px solid #E5E7EB;border-radius:6px;cursor:pointer;transition:all .2s ease}.btn-back:hover{background:#f9fafb}.detail-title{flex:1}.detail-title h3{margin:0;font-size:1.125rem;color:#111827}.detail-title p{margin:.25rem 0 0;font-size:.875rem;color:#6b7280}.detail-score{font-size:1.5rem;font-weight:700}.detail-score.high{color:#10b981}.detail-score.medium{color:#d97706}.detail-score.low{color:#dc2626}.detail-header-actions{display:flex;align-items:center;gap:1rem}.btn-reprocess-doc{display:inline-flex;align-items:center;gap:.375rem;padding:.5rem .75rem;background:#f3f4f6;color:#111827;border:1px solid #E5E7EB;border-radius:6px;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .15s ease}.btn-reprocess-doc:hover:not(:disabled){background:#e5e7eb;border-color:#d1d5db}.btn-reprocess-doc:disabled{opacity:.6;cursor:not-allowed}.btn-edit-gt{display:inline-flex;align-items:center;gap:.375rem;padding:.5rem .75rem;background:#eff6ff;color:#2563eb;border:1px solid #BFDBFE;border-radius:6px;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .15s ease}.btn-edit-gt:hover{background:#dbeafe;border-color:#93c5fd}.document-detail-split{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;min-height:600px}.pdf-panel{display:flex;flex-direction:column;background:#fff;border:1px solid #E5E7EB;border-radius:8px;overflow:hidden}.pdf-panel-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:#f9fafb;border-bottom:1px solid #E5E7EB}.pdf-panel-title{display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:500;color:#374151}.pdf-panel-controls{display:flex;align-items:center;gap:.5rem}.pdf-control-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:#fff;border:1px solid #E5E7EB;border-radius:4px;cursor:pointer;color:#6b7280;transition:all .2s ease}.pdf-control-btn:hover:not(:disabled){background:#f9fafb;border-color:#d1d5db;color:#374151}.pdf-control-btn:disabled{opacity:.5;cursor:not-allowed}.pdf-control-btn.open-tab-btn{background:#003781;border-color:#003781;color:#fff}.pdf-control-btn.open-tab-btn:hover:not(:disabled){background:#002d6b}.pdf-zoom-display{min-width:50px;padding:4px 8px;background:#fff;border:1px solid #E5E7EB;border-radius:4px;font-size:.75rem;color:#6b7280;cursor:pointer;transition:all .2s ease}.pdf-zoom-display:hover{background:#f9fafb;color:#374151}.pdf-panel-content{flex:1;overflow-y:auto;background:#f3f4f6;padding:1rem}.pdf-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;height:300px;color:#6b7280;font-size:.875rem}.pdf-error{display:flex;align-items:center;justify-content:center;height:300px;color:#dc2626;font-size:.875rem}.pdf-pages{display:flex;flex-direction:column;align-items:center;gap:1rem}.pdf-page-image{max-width:100%;height:auto;background:#fff;box-shadow:0 2px 8px #0000001a;border-radius:4px}.results-panel{display:flex;flex-direction:column;gap:1rem;overflow-y:auto;max-height:800px}.results-panel .detail-content{background:#fff;border:1px solid #E5E7EB;border-radius:8px;padding:1rem}.results-panel .detail-ground-truth{background:#fff;border:1px solid #E5E7EB;border-radius:8px;overflow:hidden}.results-panel .detail-ground-truth h4{margin:0;padding:.75rem 1rem;background:#f9fafb;border-bottom:1px solid #E5E7EB;font-size:.875rem;color:#374151}.detail-sections{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.detail-section{background:#fff;border:1px solid #E5E7EB;border-radius:8px;overflow:hidden}.detail-section h4{margin:0;padding:.75rem 1rem;background:#f9fafb;border-bottom:1px solid #E5E7EB;font-size:.875rem;color:#374151}.detail-section-content{padding:1rem;max-height:400px;overflow-y:auto}.comparison-view{display:flex;flex-direction:column;gap:.5rem}.comparison-formules{margin-bottom:.5rem}.comparison-formules .backtesting-tabs{margin:0}.comparison-row{display:grid;grid-template-columns:200px 1fr 1fr;gap:.5rem;padding:.5rem;border-radius:4px;font-size:.8125rem}.comparison-row.match{background:#f0fdf4}.comparison-row.mismatch{background:#fef2f2}.comparison-row.missing{background:#fef3c7}.comparison-row.extra{background:#eff6ff}.comparison-path{font-family:monospace;color:#374151;word-break:break-all}.comparison-expected,.comparison-actual{font-family:monospace;color:#111827;word-break:break-all}.comparison-expected{color:#065f46}.comparison-actual{color:#991b1b}.comparison-row.match .comparison-actual{color:#065f46}.comparison-expected.editable{cursor:pointer;padding:2px 4px;border-radius:3px;transition:background-color .15s ease}.comparison-expected.editable:hover{background:#ecfdf5;outline:1px dashed #10B981}.comparison-expected.editing{padding:0;background:transparent}.inline-edit-input{width:100%;padding:4px 6px;font-family:monospace;font-size:inherit;color:#065f46;background:#ecfdf5;border:2px solid #10B981;border-radius:4px;outline:none}.inline-edit-input:focus{box-shadow:0 0 0 3px #10b98133}.inline-edit-input.saving{background:#fef3c7;border-color:#f59e0b;color:#92400e;cursor:wait}.comparison-expected.saving{opacity:.7}.comparison-expected.modified{background:#d1fae5!important}.modified-badge{display:inline-block;margin-left:.375rem;color:#10b981;font-size:.75rem;font-weight:700}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:9999;padding:20px}.modal-content{background:#fff;border-radius:12px;width:90%;max-width:800px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid #E5E7EB}.modal-header h3{margin:0;font-size:1.125rem;color:#111827}.btn-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:none;border:none;border-radius:6px;cursor:pointer;color:#6b7280;transition:all .2s ease}.btn-close:hover{background:#f3f4f6;color:#111827}.modal-body{flex:1;overflow-y:auto;padding:1.5rem}.modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid #E5E7EB}.btn-cancel,.btn-save{padding:.625rem 1rem;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-cancel{background:#fff;border:1px solid #E5E7EB;color:#374151}.btn-cancel:hover{background:#f9fafb}.btn-save{background:#003781;border:1px solid #003781;color:#fff}.btn-save:hover:not(:disabled){background:#002960}.btn-save:disabled{opacity:.6;cursor:not-allowed}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.5rem;font-size:.875rem;font-weight:500;color:#374151}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.625rem .75rem;border:1px solid #E5E7EB;border-radius:6px;font-size:.875rem;transition:border-color .2s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#003781}.form-group textarea{min-height:100px;resize:vertical}.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.ground-truth-editor{border:1px solid #E5E7EB;border-radius:8px;overflow:hidden}.gt-section{border-bottom:1px solid #E5E7EB}.gt-section:last-child{border-bottom:none}.gt-section-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:#f9fafb;cursor:pointer}.gt-section-header h4{margin:0;font-size:.875rem;color:#374151}.gt-section-content{padding:1rem}.gt-array-item{padding:.75rem;margin-bottom:.5rem;background:#f9fafb;border-radius:6px}.gt-array-item:last-child{margin-bottom:0}.btn-add-item{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.5rem;background:#fff;border:1px dashed #D1D5DB;border-radius:6px;color:#6b7280;font-size:.875rem;cursor:pointer;transition:all .2s ease}.btn-add-item:hover{border-color:#003781;color:#003781}.comparison-stats{display:flex;gap:1rem;margin-bottom:1rem;padding:.75rem;background:#f9fafb;border-radius:6px}.comparison-stats .stat{padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500}.comparison-stats .stat.match{background:#d1fae5;color:#065f46}.comparison-stats .stat.mismatch{background:#fee2e2;color:#991b1b}.comparison-stats .stat.missing{background:#fef3c7;color:#92400e}.comparison-stats .stat.extra{background:#dbeafe;color:#1e40af}.comparison-stats .stat.score{font-weight:600;border:2px solid}.comparison-stats .stat.score.high{background:#d1fae5;color:#065f46;border-color:#10b981}.comparison-stats .stat.score.medium{background:#fef3c7;color:#92400e;border-color:#f59e0b}.comparison-stats .stat.score.low{background:#fee2e2;color:#991b1b;border-color:#ef4444}.comparison-stats .stat.clickable{cursor:pointer;border:2px solid transparent;transition:all .15s ease}.comparison-stats .stat.clickable:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.comparison-stats .stat.clickable:disabled{opacity:.5;cursor:not-allowed}.comparison-stats .stat.clickable.active{border-color:currentColor;box-shadow:0 0 0 2px #0000001a;transform:scale(1.05)}.comparison-section{margin-bottom:1rem}.comparison-section-title{margin:0 0 .5rem;padding:.5rem;background:#f3f4f6;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase;color:#6b7280}.comparison-header{margin-bottom:.5rem;padding:.5rem;background:#f9fafb;border-radius:4px}.comparison-column-header{display:grid;grid-template-columns:200px 1fr 1fr;gap:.5rem;font-size:.75rem;font-weight:600;color:#6b7280}.detail-content{display:flex;flex-direction:column;gap:1rem}.detail-info{display:flex;gap:1.5rem;padding:.75rem;background:#f9fafb;border-radius:6px;font-size:.875rem;color:#6b7280}.initial-data-notice{color:#6366f1;font-style:italic}.gt-edit-modal{width:90%;max-width:900px;max-height:85vh}.gt-edit-modal .modal-body{padding:1rem 1.5rem;flex:1;min-height:0}.gt-edit-modal .ground-truth-editor{width:100%;height:500px;min-height:400px;padding:1rem;background:#1f2937;color:#f9fafb;border:2px solid #003781;border-radius:6px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.8rem;line-height:1.5;resize:vertical}.gt-edit-modal .ground-truth-editor:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb33}.ground-truth-actions .btn-save:hover:not(:disabled){background:#059669;border-color:#059669}.ground-truth-editor{width:100%;min-height:400px;padding:1rem;background:#1f2937;color:#f9fafb;border:2px solid #3B82F6;border-radius:6px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.75rem;line-height:1.5;resize:vertical}.ground-truth-editor:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb33}.json-error{margin-bottom:.5rem;padding:.5rem .75rem;background:#fef2f2;color:#dc2626;border:1px solid #FECACA;border-radius:6px;font-size:.8125rem}.detail-ground-truth.editing{border:2px solid #3B82F6;box-shadow:0 0 0 4px #3b82f61a;background:#f0f9ff}.detail-ground-truth.editing .ground-truth-header{background:#dbeafe;border-bottom-color:#93c5fd}.form-section{margin-bottom:1.5rem}.form-section h4{margin:0 0 .75rem;font-size:1rem;color:#111827}.form-hint{margin:0 0 1rem;font-size:.875rem;color:#6b7280}.file-upload-area{border:2px dashed #E5E7EB;border-radius:8px;padding:1.5rem;text-align:center}.btn-select-file{display:inline-flex;flex-direction:column;align-items:center;gap:.5rem;padding:1rem 2rem;background:none;border:none;color:#6b7280;cursor:pointer;transition:color .2s ease}.btn-select-file:hover{color:#003781}.file-selected{display:flex;align-items:center;justify-content:center;gap:.75rem}.file-name{font-weight:500;color:#111827}.btn-remove-file{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:#fee2e2;border:none;border-radius:50%;color:#dc2626;font-size:1rem;cursor:pointer}.gt-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;font-size:.875rem;font-weight:500;color:#374151}.btn-remove-item{display:flex;align-items:center;justify-content:center;width:20px;height:20px;background:#fee2e2;border:none;border-radius:4px;color:#dc2626;font-size:.875rem;cursor:pointer}.btn-remove-item:hover{background:#fecaca}.extraction-loading{display:flex;align-items:center;justify-content:center;gap:12px;padding:40px;background:#f9fafb;border-radius:8px;color:#6b7280}.extraction-loading .spinner{width:20px;height:20px;border:2px solid #E5E7EB;border-top-color:#003781}.warning-banner{background:#fef3c7;color:#92400e;padding:12px 16px;border-radius:8px;margin-bottom:16px;font-size:14px}.modal-fullscreen{width:95vw!important;max-width:1600px!important;height:calc(100vh - 80px);max-height:calc(100vh - 80px)!important;display:flex;flex-direction:column;overflow:hidden}.modal-fullscreen .modal-header{flex-shrink:0}.modal-error{margin:0 24px;flex-shrink:0}.modal-body-split{flex:1;display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:24px;overflow:hidden;min-height:0}.pdf-preview-pane{display:flex;flex-direction:column;background:#f3f4f6;border-radius:8px;overflow:hidden}.upload-zone{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;border:2px dashed #D1D5DB;border-radius:8px;margin:16px;cursor:pointer;color:#6b7280;transition:all .2s ease}.upload-zone:hover{border-color:#003781;background:#0037810d;color:#003781}.upload-text{font-size:16px;font-weight:500}.upload-hint{font-size:13px;opacity:.7}.pdf-toolbar{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#fff;border-bottom:1px solid #E5E7EB;flex-shrink:0}.pdf-info{display:flex;align-items:center;gap:12px;min-width:0}.pdf-filename{font-size:14px;font-weight:500;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.pdf-pages-count{font-size:12px;color:#6b7280;background:#f3f4f6;padding:2px 8px;border-radius:4px}.pdf-controls{display:flex;align-items:center;gap:8px}.zoom-controls{display:flex;align-items:center;gap:4px;background:#f3f4f6;border-radius:6px;padding:4px}.zoom-controls button{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:transparent;border:none;border-radius:4px;color:#374151;cursor:pointer;transition:all .15s ease}.zoom-controls button:hover:not(:disabled){background:#fff;color:#003781}.zoom-controls button:disabled{opacity:.4;cursor:not-allowed}.zoom-controls .zoom-value{min-width:48px;font-size:12px;font-weight:500}.btn-remove-pdf{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:1px solid #E5E7EB;border-radius:6px;color:#6b7280;cursor:pointer;transition:all .15s ease}.btn-remove-pdf:hover{background:#fee2e2;border-color:#fecaca;color:#dc2626}.btn-open-tab{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:#003781;border:1px solid #003781;border-radius:6px;color:#fff;cursor:pointer;transition:all .15s ease}.btn-open-tab:hover:not(:disabled){background:#002d6b;border-color:#002d6b}.btn-open-tab:disabled{opacity:.5;cursor:not-allowed}.ontology-match-info{display:inline-flex;align-items:center;gap:.375rem;margin-left:.5rem;flex-shrink:0}.garantie-item .ontology-match-info{margin-left:auto;margin-right:.5rem}.info-value-with-match{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem}.info-value-with-match .ontology-match-info{margin-left:0}.match-source-badge{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:18px;padding:0 4px;border-radius:4px;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.3px}.match-source-badge.cg_mapping{background:#dbeafe;color:#1d4ed8;border:1px solid #93C5FD}.match-source-badge.metacategory{background:#f3e8ff;color:#7c3aed;border:1px solid #C4B5FD}.match-source-badge.synonym{background:#fef3c7;color:#b45309;border:1px solid #FCD34D}.match-source-badge.contains{background:#d1fae5;color:#047857;border:1px solid #6EE7B7}.mapping-justification{font-size:11px;color:#6b7280;font-style:italic;margin-left:auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.garantie-item .mapping-justification{margin-right:8px}.garantie-prix{margin-left:auto;padding:.25rem .5rem;font-size:.85rem;font-weight:500;color:#059669;background:#ecfdf5;border-radius:4px;cursor:pointer;border:1px solid transparent;transition:all .2s ease}.garantie-prix:hover{border-color:#059669;background:#d1fae5}.garantie-prix.empty-value{color:#9ca3af;font-style:italic;background:#f9fafb;border:1px dashed #d1d5db}.garantie-prix.empty-value:hover{border-color:#f59e0b;background:#fffbeb;color:#92400e}.garantie-prix-edit{display:inline-flex;align-items:center;gap:4px;margin-left:auto}.garantie-prix-input{width:70px;padding:2px 6px;border:2px solid #f97316;border-radius:4px;font-size:.85rem;font-weight:600;text-align:right;outline:none;background:#fff}.garantie-prix-input:focus{box-shadow:0 0 0 3px #f9731633}.garantie-nom-input{flex:1;min-width:150px;padding:2px 8px;border:2px solid #f97316;border-radius:4px;font-size:.85rem;font-weight:500;outline:none;background:#fff}.garantie-nom-input:focus{box-shadow:0 0 0 3px #f9731633}.garantie-prix-unit{font-weight:600;color:#6b7280;font-size:.85rem}.pdf-pages-container{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:16px;align-items:center;background:#e5e7eb}.pdf-page-img{max-width:100%;box-shadow:0 2px 8px #00000026;border-radius:4px;background:#fff}.pdf-loading{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:#6b7280}.form-pane{overflow-y:auto;padding-right:8px;min-height:0}.results-pane{overflow-y:auto;min-height:0;background:#f5f5f7;border-radius:12px;padding:16px}.results-pane .json-results{display:flex;flex-direction:column;gap:1.2rem}.empty-results{display:flex;align-items:center;justify-content:center;height:100%;color:#6b7280;font-size:.875rem}.modal-header-form{display:flex;align-items:center;gap:12px;flex:1;max-width:500px;margin:0 24px}.modal-name-input{flex:1;padding:8px 12px;border:1px solid #E5E7EB;border-radius:6px;font-size:.875rem}.modal-name-input:focus{outline:none;border-color:#003781}.modal-branche-select{padding:8px 12px;border:1px solid #E5E7EB;border-radius:6px;font-size:.875rem;background:#fff;min-width:120px}.modal-branche-select:focus{outline:none;border-color:#003781}.add-document-modal .modal-header{display:flex;align-items:center;justify-content:space-between}.modal-fullscreen .modal-footer{flex-shrink:0;border-top:1px solid #E5E7EB;padding:16px 24px}.prompt-score-card.clickable{cursor:pointer;transition:all .2s ease}.prompt-score-card.clickable:hover{border-color:#003781;box-shadow:0 2px 8px #0037811a}.category-detail-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.category-detail-modal{background:#fff;border-radius:12px;width:90%;max-width:900px;max-height:80vh;display:flex;flex-direction:column;overflow:hidden}.category-detail-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid #E5E7EB}.category-detail-modal .modal-header h3{margin:0;font-size:1.125rem;color:#111827}.category-detail-modal .modal-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:none;border:none;border-radius:6px;cursor:pointer;color:#6b7280;font-size:1.5rem;transition:all .2s ease}.category-detail-modal .modal-close:hover{background:#f3f4f6;color:#111827}.modal-summary{display:flex;align-items:center;gap:1rem;padding:1rem 1.5rem;background:#f9fafb;border-bottom:1px solid #E5E7EB}.modal-score{font-size:2rem;font-weight:700}.modal-score.high{color:#10b981}.modal-score.medium{color:#d97706}.modal-score.low{color:#dc2626}.modal-detail{color:#6b7280;font-size:.875rem}.modal-fields{flex:1;overflow-y:auto;padding:1rem}.fields-table{width:100%;border-collapse:collapse;font-size:.8125rem}.fields-table th{text-align:left;padding:.75rem .5rem;background:#f3f4f6;border-bottom:1px solid #E5E7EB;font-weight:600;color:#374151;position:sticky;top:0}.fields-table td{padding:.5rem;border-bottom:1px solid #F3F4F6;vertical-align:top}.fields-table tr.match{background:#f0fdf4}.fields-table tr.mismatch{background:#fef2f2}.field-path{font-family:monospace;word-break:break-all;color:#374151;max-width:250px}.field-accuracy{font-weight:600;text-align:center}.field-accuracy.high{color:#10b981}.field-accuracy.medium{color:#d97706}.field-accuracy.low{color:#dc2626}.field-expected,.field-actual{font-family:monospace;font-size:.75rem;word-break:break-all;max-width:200px}.field-expected{color:#065f46}.field-actual{color:#991b1b}.fields-table tr.match .field-actual{color:#065f46}.run-modal{max-width:400px}.run-modal .btn-save{display:flex;align-items:center;gap:.5rem}.run-actions{display:flex;align-items:center;gap:.75rem}.btn-delete-run{opacity:0;display:flex;align-items:center;justify-content:center;padding:6px;background:transparent;border:none;color:#9ca3af;cursor:pointer;border-radius:4px;transition:all .2s ease}.run-card:hover .btn-delete-run{opacity:1}.btn-delete-run:hover{color:#ef4444;background:#fee2e2}.btn-delete-run:disabled{opacity:.5;cursor:not-allowed}.spinner-small{width:12px;height:12px;border:2px solid #E5E7EB;border-top-color:#6b7280;border-radius:50%;animation:spin .8s linear infinite}.run-time{color:#9ca3af}.comparison-actual .confidence-badge{font-size:.65rem;font-weight:600;padding:.15rem .4rem;border-radius:10px;margin-left:.375rem;box-shadow:inset 0 1px 2px #0000001a}.confidence-very-high .confidence-badge{background:#34c759;color:#fff}.confidence-high .confidence-badge{background:#30d158;color:#fff}.confidence-medium .confidence-badge{background:#ff9f0a;color:#fff}.confidence-low .confidence-badge{background:#ff3b30;color:#fff}.similarity-badge{font-size:.65rem;font-weight:600;padding:.15rem .4rem;border-radius:10px;margin-left:.375rem;background:#6366f1;color:#fff;box-shadow:inset 0 1px 2px #0000001a}.closest-match{display:inline-block;font-size:.7rem;font-style:italic;color:#6b7280;margin-left:.5rem;padding:.1rem .4rem;background:#f3f4f6;border-radius:4px;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.add-document-modal .info-value.editable{cursor:pointer;padding:.375rem .625rem;border-radius:8px;transition:all .2s ease;display:inline-flex;align-items:center;gap:.5rem;border:1px solid transparent;background:#fff}.add-document-modal .info-value.editable:hover{border-color:#d2d2d7;background:#f9f9f9}.add-document-modal .info-value.empty-value{color:#9ca3af;font-style:italic;border:1px dashed #d1d5db;background:#f9fafb}.add-document-modal .info-value.empty-value:hover{border-color:#f59e0b;background:#fffbeb;color:#92400e}.add-document-modal .info-value.editing{display:inline-flex;align-items:center;gap:8px}.add-document-modal .info-value.editing input{padding:6px 10px;border:1px solid #003781;border-radius:6px;font-size:.95rem;outline:none;min-width:120px;background:#fff}.add-document-modal .info-value.editing input:focus{box-shadow:0 0 0 2px #00378133}.add-document-modal .edit-btn{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border:none;border-radius:6px;font-size:.875rem;cursor:pointer;transition:all .15s ease}.add-document-modal .edit-btn.save{background:#22c55e;color:#fff}.add-document-modal .edit-btn.save:hover{background:#16a34a}.add-document-modal .edit-btn.cancel{background:#f3f4f6;color:#6b7280}.add-document-modal .edit-btn.cancel:hover{background:#e5e7eb;color:#374151}.add-document-modal .confidence-badge{font-size:.7rem;font-weight:600;padding:.2rem .5rem;border-radius:12px;margin-left:.375rem;box-shadow:inset 0 1px 2px #0000001a}.add-document-modal .confidence-very-high .confidence-badge{background:#34c759;color:#fff}.add-document-modal .confidence-high .confidence-badge{background:#30d158;color:#fff}.add-document-modal .confidence-medium .confidence-badge{background:#ff9f0a;color:#fff}.add-document-modal .confidence-low .confidence-badge{background:#ff3b30;color:#fff}@media (max-width: 768px){.backtesting-header{flex-direction:column}.header-actions{width:100%;justify-content:space-between}.detail-sections,.form-row{grid-template-columns:1fr}.comparison-row{grid-template-columns:1fr;gap:.25rem}.comparison-path{font-weight:500}}.methode-tab{display:flex;flex-direction:column;height:calc(100vh - 200px);overflow-y:auto}.methode-header{margin-bottom:1rem;flex-shrink:0}.methode-header h2{margin:0 0 .25rem;font-size:1.25rem;color:#111827}.methode-header p{margin:0;font-size:.875rem;color:#6b7280}.methode-subtabs{display:flex;gap:.5rem;margin-bottom:1rem;flex-shrink:0}.methode-subtab{padding:.625rem 1.25rem;border:1px solid #E5E7EB;border-radius:8px;background:#fff;color:#374151;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease}.methode-subtab:hover{background:#f9fafb;border-color:#d1d5db}.methode-subtab.active{background:#2563eb;border-color:#2563eb;color:#fff}.methode-content{display:flex;flex-direction:column;gap:1.5rem;padding-bottom:2rem}.methode-diagram{height:calc(100vh - 280px);min-height:500px;border:1px solid #E5E7EB;border-radius:8px;overflow:auto;background:#fff;flex-shrink:0}.methode-svg-container{display:flex;align-items:center;justify-content:center;min-height:100%;padding:1rem}.methode-svg-container svg{max-width:100%;height:auto}.methode-loading{display:flex;align-items:center;justify-content:center;height:400px;color:#6b7280}.methode-error{display:flex;flex-direction:column;align-items:center;justify-content:center;height:400px;color:#dc2626;gap:1rem}.methode-descriptions{flex:none}.architecture-description{display:flex;flex-direction:column;gap:2rem}.description-section{background:#fff;border:1px solid #E5E7EB;border-radius:12px;padding:1.5rem}.description-section h3{margin:0 0 .75rem;font-size:1.125rem;font-weight:600;color:#111827}.section-intro{margin:0 0 1.25rem;font-size:.875rem;color:#6b7280;line-height:1.5}.steps-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}.step-card{display:flex;gap:1rem;padding:1rem;background:#f9fafb;border-radius:8px;border:1px solid #E5E7EB}.step-number{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:#2563eb;color:#fff;border-radius:50%;font-weight:600;font-size:.875rem;flex-shrink:0}.step-content{flex:1;min-width:0}.step-content h4{margin:0 0 .5rem;font-size:.9375rem;font-weight:600;color:#111827}.step-content p{margin:0 0 .75rem;font-size:.8125rem;color:#4b5563;line-height:1.5}.step-output{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.output-label{font-size:.75rem;color:#6b7280;font-weight:500}.step-output code{font-size:.75rem;background:#e5e7eb;padding:.25rem .5rem;border-radius:4px;color:#1f2937;font-family:SF Mono,Monaco,Consolas,monospace}.step-details{display:flex;flex-direction:column;gap:.5rem}.detail-item{font-size:.8125rem;color:#4b5563;line-height:1.4}.detail-item strong{color:#1f2937}.step-warning{display:flex;align-items:flex-start;gap:.5rem;padding:.5rem;background:#fef3c7;border-radius:6px;font-size:.75rem;color:#92400e}.warning-icon{flex-shrink:0}.process-steps{display:flex;flex-direction:column;gap:.75rem}.process-step{display:flex;gap:1rem;padding:1rem;background:#f9fafb;border-radius:8px;border:1px solid #E5E7EB}.process-icon{font-size:1.5rem;flex-shrink:0}.process-content{flex:1}.process-content h4{margin:0 0 .375rem;font-size:.9375rem;font-weight:600;color:#111827}.process-content p{margin:0;font-size:.8125rem;color:#4b5563;line-height:1.5}.formula-box{margin-top:.5rem;padding:.5rem;background:#1f2937;border-radius:6px}.formula-box code{font-size:.8125rem;color:#10b981;font-family:SF Mono,Monaco,Consolas,monospace}.tables-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.table-card{padding:1rem;background:#f9fafb;border-radius:8px;border:1px solid #E5E7EB}.table-card h4{margin:0 0 .5rem}.table-card h4 code{font-size:.875rem;color:#7c3aed;font-family:SF Mono,Monaco,Consolas,monospace}.table-card p{margin:0;font-size:.8125rem;color:#4b5563;line-height:1.4}.metrics-list{display:flex;flex-direction:column;gap:.5rem}.metric-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:#f9fafb;border-radius:8px;border:1px solid #E5E7EB}.metric-name{font-size:.875rem;font-weight:500;color:#111827}.metric-source{font-size:.75rem;color:#6b7280;font-style:italic}.journey-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.journey-step{display:flex;flex-direction:column;gap:.75rem;padding:1rem;background:#f9fafb;border-radius:8px;border:1px solid #E5E7EB}.journey-number{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:#10b981;color:#fff;border-radius:50%;font-weight:600;font-size:.8125rem}.journey-content h4{margin:0 0 .375rem;font-size:.9375rem;font-weight:600;color:#111827}.journey-content p{margin:0;font-size:.8125rem;color:#4b5563;line-height:1.4}.admin-modules{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}.admin-module{display:flex;gap:1rem;padding:1rem;background:#f9fafb;border-radius:8px;border:1px solid #E5E7EB}.module-icon{font-size:1.5rem;flex-shrink:0}.module-content h4{margin:0 0 .375rem;font-size:.9375rem;font-weight:600;color:#111827}.module-content p{margin:0;font-size:.8125rem;color:#4b5563;line-height:1.4}.improvement-loop{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem;padding:1rem;background:#f0fdf4;border-radius:8px;border:1px solid #BBF7D0}.loop-step{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1rem;background:#fff;border-radius:8px;border:1px solid #E5E7EB;min-width:140px;text-align:center}.loop-number{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:#059669;color:#fff;border-radius:50%;font-weight:600;font-size:.75rem}.loop-step p{margin:0;font-size:.8125rem;color:#065f46;line-height:1.4}.loop-arrow{font-size:1.5rem;color:#10b981;font-weight:600}.loop-return{margin-left:auto;font-size:1.75rem}.loop-benefit{display:flex;align-items:flex-start;gap:.5rem;margin-top:1rem;padding:.75rem 1rem;background:#dcfce7;border-radius:8px}.benefit-icon{flex-shrink:0;font-size:1rem}.loop-benefit p{margin:0;font-size:.875rem;color:#166534;line-height:1.4}@media (max-width: 768px){.methode-subtabs{flex-direction:column}.methode-subtab{text-align:center}.steps-grid,.journey-steps,.admin-modules,.tables-grid{grid-template-columns:1fr}.improvement-loop{flex-direction:column}.loop-arrow{transform:rotate(90deg)}.loop-return{margin-left:0;transform:rotate(90deg)}}.llm{max-width:680px;margin:0 auto;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased}.llm-loading{text-align:center;padding:60px 0;color:#86868b;font-size:13px;letter-spacing:-.01em}.llm-header{margin-bottom:32px}.llm-header h2{font-size:22px;font-weight:600;color:#1d1d1f;margin:0 0 4px;letter-spacing:-.02em}.llm-header p{color:#86868b;font-size:13px;margin:0;letter-spacing:-.01em;line-height:1.5}.llm-error{background:#fff2f2;color:#e30000;padding:10px 14px;border-radius:10px;font-size:13px;margin-bottom:20px}.llm-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media (max-width: 600px){.llm-grid{grid-template-columns:1fr}}.llm-card{background:#fbfbfd;border:1px solid rgba(0,0,0,.06);border-radius:14px;padding:20px}.llm-card-title{font-size:13px;font-weight:600;color:#1d1d1f;letter-spacing:-.01em;margin-bottom:12px;text-transform:uppercase;opacity:.55}.llm-options{display:flex;flex-direction:column;gap:8px}.llm-option{border-radius:10px;padding:12px;border:1.5px solid transparent;background:#fff;box-shadow:0 0 0 1px #0000000a,0 1px 3px #0000000a;transition:all .2s cubic-bezier(.25,.46,.45,.94)}.llm-option.active{border-color:#003781;box-shadow:0 0 0 1px #003781,0 1px 4px #0037811a;background:#f7f9fc}.llm-option.disabled{opacity:.4;pointer-events:none}.llm-option-label{display:flex;gap:10px;align-items:flex-start;cursor:pointer}.llm-option-label input[type=radio]{position:absolute;opacity:0;pointer-events:none}.llm-radio{width:18px;height:18px;border-radius:50%;border:1.5px solid #d2d2d7;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px;transition:all .2s;background:#fff}.llm-option.active .llm-radio{background:#003781;border-color:#003781;color:#fff}.llm-option-text{display:flex;flex-direction:column;gap:2px;min-width:0}.llm-option-name{font-size:13px;font-weight:500;color:#1d1d1f;letter-spacing:-.01em;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.llm-option-desc{font-size:11.5px;color:#86868b;line-height:1.45;letter-spacing:-.005em}.llm-tag{font-size:10px;font-weight:600;padding:1px 6px;border-radius:4px;background:#e8f5e9;color:#1b7a2b;letter-spacing:.02em;text-transform:uppercase;white-space:nowrap}.llm-tag.warn{background:#fff3e0;color:#9a6700}.llm-details-btn{display:inline-flex;align-items:center;gap:3px;margin-top:8px;margin-left:28px;padding:0;font-size:11px;color:#86868b;background:none;border:none;cursor:pointer;letter-spacing:-.01em;transition:color .15s}.llm-details-btn:hover{color:#1d1d1f}.llm-details{margin-top:8px;margin-left:28px;padding:8px 10px;background:#00000005;border-radius:8px}.llm-detail{display:flex;justify-content:space-between;align-items:baseline;padding:3px 0;font-size:11.5px;gap:8px}.llm-detail span:first-child{color:#86868b;flex-shrink:0}.llm-detail span:last-child{color:#1d1d1f;text-align:right}.llm-detail code{font-family:SF Mono,Menlo,Consolas,monospace;font-size:10.5px;background:#0000000a;padding:1px 5px;border-radius:4px}.llm-footer{display:flex;align-items:center;gap:12px;margin-top:24px}.llm-save{padding:8px 20px;font-size:13px;font-weight:500;color:#fff;background:#003781;border:none;border-radius:8px;cursor:pointer;letter-spacing:-.01em;transition:background .15s,opacity .15s}.llm-save:hover:not(:disabled){background:#002a66}.llm-save:disabled{opacity:.35;cursor:default}.llm-saved{font-size:12px;color:#1b7a2b;font-weight:500;letter-spacing:-.01em;animation:llm-fade-in .3s ease}@keyframes llm-fade-in{0%{opacity:0;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}.admin-page{min-height:100vh;background:linear-gradient(135deg,#f5f7fa,#fff);display:flex;flex-direction:column}.admin-main{flex:1;display:flex;justify-content:center;padding:40px 20px}.admin-container{width:100%;max-width:1200px}.admin-tabs{display:flex;gap:8px;margin-bottom:24px;background:#fff;padding:8px;border-radius:12px;box-shadow:0 1px 3px #0000001a}.admin-tab{display:flex;align-items:center;gap:8px;padding:12px 20px;background:transparent;border:none;border-radius:8px;color:#6b7280;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.admin-tab:hover{background:#f3f4f6;color:#374151}.admin-tab.active{background:#003781;color:#fff}.admin-tab svg{flex-shrink:0}.admin-content{min-height:400px}@media (max-width: 768px){.admin-main{padding:20px 16px}.admin-tabs{flex-direction:column;padding:6px;width:100%}.admin-tab{padding:10px 16px;font-size:13px}}.cg-sidebar{width:260px;min-width:260px;height:calc(100vh - 104px);position:sticky;top:104px;background:#fff;border-right:1px solid #e5e7eb;display:flex;flex-direction:column;overflow:hidden}.cg-sidebar-header{padding:12px 16px;border-bottom:1px solid #e5e7eb;flex-shrink:0;display:flex;align-items:center;justify-content:space-between}.cg-sidebar-title{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:#003781}.cg-sidebar-header-right{display:flex;align-items:center;gap:8px}.cg-sidebar-stats{font-size:11px;color:#6b7280;background:#f3f4f6;padding:2px 8px;border-radius:10px}.cg-sidebar-collapse-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:transparent;border:none;border-radius:6px;color:#6b7280;cursor:pointer;transition:all .2s ease}.cg-sidebar-collapse-btn:hover{background:#f3f4f6;color:#003781}.cg-sidebar-scrollable{flex:1;overflow-y:auto;display:flex;flex-direction:column;min-height:0}.cg-quick-select{padding:8px 12px;border-bottom:1px solid #e5e7eb;flex-shrink:0}.cg-select-all-btn{display:flex;align-items:center;gap:6px;width:100%;padding:6px 10px;background:#f3f4f6;border:none;border-radius:6px;font-size:12px;color:#374151;cursor:pointer;transition:all .15s ease}.cg-select-all-btn:hover{background:#e5e7eb}.cg-compagnies-list{padding:8px}.cg-compagnie-item{margin-bottom:6px;border-radius:8px;background:#f9fafb;overflow:hidden;transition:all .15s ease;border:1px solid transparent}.cg-compagnie-item:last-child{margin-bottom:0}.cg-compagnie-item.selected{background:#eff6ff;border-color:#bfdbfe}.cg-compagnie-item.partial{background:#fefce8;border-color:#fde047}.cg-compagnie-item.no-documents{opacity:.5;background:#f3f4f6}.cg-compagnie-header{display:flex;align-items:center;gap:8px;padding:8px 10px;transition:background .15s ease}.cg-compagnie-header:hover{background:#00000008}.cg-compagnie-indicator{width:4px;height:20px;border-radius:2px;flex-shrink:0}.cg-compagnie-name{font-size:13px;font-weight:600;color:#1f2937;flex:1}.cg-no-docs-label{font-size:10px;color:#9ca3af;font-weight:400}.cg-compagnie-documents{padding:0 8px 8px 22px;display:flex;flex-direction:column;gap:4px}.cg-document-checkbox{display:flex;align-items:center;gap:6px;padding:6px 8px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;font-size:12px;color:#374151;cursor:pointer;transition:all .15s ease}.cg-document-checkbox:hover{border-color:#003781;background:#f0f9ff}.cg-document-checkbox input[type=checkbox]{width:14px;height:14px;accent-color:#003781;cursor:pointer;flex-shrink:0}.cg-document-checkbox span{flex:1}.cg-doc-view-btn{padding:2px 6px;background:transparent;border:1px solid #d1d5db;border-radius:4px;font-size:10px;color:#6b7280;cursor:pointer;transition:all .15s ease}.cg-doc-view-btn:hover{background:#003781;border-color:#003781;color:#fff}.cg-sidebar-bottom{flex-shrink:0;background:#fff;border-top:1px solid #e5e7eb;padding:12px;margin-top:auto}.cg-manage-button{width:100%;display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 12px;background:#003781;color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease}.cg-manage-button:hover:not(:disabled){background:#002d6b}.cg-manage-button:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 1024px){.cg-sidebar{width:240px;min-width:240px;position:fixed;left:0;top:104px;bottom:0;height:auto;z-index:100;transform:translate(-100%);transition:transform .3s ease;box-shadow:4px 0 12px #0000001a}.cg-sidebar.open{transform:translate(0)}}@media (max-width: 768px){.cg-sidebar{top:90px}}.cg-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.cg-modal{background:#fff;border-radius:16px;width:100%;max-width:600px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 20px 40px #0003}.cg-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb}.cg-modal-header h2{font-size:18px;font-weight:600;color:#111827;margin:0}.cg-modal-close{background:none;border:none;padding:8px;cursor:pointer;color:#6b7280;border-radius:8px;transition:all .2s ease}.cg-modal-close:hover:not(:disabled){background:#f3f4f6;color:#111827}.cg-modal-close:disabled{opacity:.5;cursor:not-allowed}.cg-modal-steps{display:flex;justify-content:center;gap:24px;padding:20px 24px;background:#f9fafb;border-bottom:1px solid #e5e7eb}.cg-step{display:flex;align-items:center;gap:8px;opacity:.5}.cg-step.active,.cg-step.completed{opacity:1}.cg-step-number{width:24px;height:24px;border-radius:50%;background:#e5e7eb;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;color:#6b7280}.cg-step.active .cg-step-number{background:#003781;color:#fff}.cg-step.completed .cg-step-number{background:#10b981;color:#fff}.cg-step-label{font-size:13px;font-weight:500;color:#6b7280}.cg-step.active .cg-step-label{color:#003781}.cg-step.completed .cg-step-label{color:#10b981}.cg-modal-content{flex:1;overflow-y:auto;padding:24px}.cg-step-content{display:flex;flex-direction:column;gap:20px}.cg-back-button{align-self:flex-start;display:flex;align-items:center;gap:6px;padding:8px 12px;background:none;border:1px solid #e5e7eb;border-radius:8px;font-size:13px;color:#6b7280;cursor:pointer;transition:all .2s ease}.cg-back-button:hover{background:#f3f4f6;color:#374151}.cg-step-instruction{font-size:15px;color:#374151;margin:0}.cg-step-instruction strong{color:#003781;text-transform:capitalize}.cg-compagnie-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.cg-compagnie-card{display:flex;flex-direction:column;gap:8px;padding:16px;background:#fff;border:2px solid #e5e7eb;border-radius:12px;cursor:pointer;transition:all .2s ease;text-align:left;position:relative}.cg-compagnie-card:hover{border-color:var(--compagnie-color, #003781);transform:translateY(-2px);box-shadow:0 4px 12px #0037811a}.cg-compagnie-card-name{font-size:16px;font-weight:600;color:var(--compagnie-color, #003781)}.cg-compagnie-card-status{display:flex;gap:12px}.cg-compagnie-card-status span{display:flex;align-items:center;gap:4px;font-size:12px;color:#9ca3af}.cg-compagnie-card-status span.has-doc{color:#10b981}.cg-compagnie-card-arrow{position:absolute;right:16px;top:50%;transform:translateY(-50%);color:#9ca3af}.cg-compagnie-card:hover .cg-compagnie-card-arrow{color:var(--compagnie-color, #003781)}.cg-type-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.cg-type-card{display:flex;flex-direction:column;align-items:center;gap:12px;padding:32px 24px;background:#fff;border:2px solid #e5e7eb;border-radius:16px;cursor:pointer;transition:all .2s ease}.cg-type-card:hover{border-color:#003781;transform:translateY(-2px);box-shadow:0 4px 12px #0037811a}.cg-type-card.has-doc{background:#f0fdf4;border-color:#86efac}.cg-type-card-icon{font-size:40px}.cg-type-card-name{font-size:16px;font-weight:600;color:#374151}.cg-type-card-badge{display:flex;align-items:center;gap:4px;padding:4px 10px;background:#10b981;color:#fff;font-size:11px;font-weight:500;border-radius:12px}.cg-existing-doc{display:flex;align-items:center;gap:10px;padding:12px 16px;background:#fef3c7;border:1px solid #fcd34d;border-radius:10px;font-size:13px;color:#92400e}.cg-existing-doc strong{color:#78350f}.cg-delete-btn{margin-left:auto;padding:6px;background:none;border:none;color:#dc2626;cursor:pointer;border-radius:6px;transition:all .2s ease}.cg-delete-btn:hover{background:#fee2e2}.cg-dropzone{border:2px dashed #d1d5db;border-radius:16px;padding:40px 24px;text-align:center;cursor:pointer;transition:all .2s ease;background:#f9fafb}.cg-dropzone:hover,.cg-dropzone.dragging{border-color:#003781;background:#eff6ff}.cg-dropzone.has-file{border-style:solid;border-color:#10b981;background:#f0fdf4}.cg-dropzone-empty{display:flex;flex-direction:column;align-items:center;gap:12px;color:#6b7280}.cg-dropzone-empty p{font-size:15px;font-weight:500;margin:0;color:#374151}.cg-dropzone-empty span{font-size:13px}.cg-dropzone-file{display:flex;flex-direction:column;align-items:center;gap:8px;color:#10b981}.cg-dropzone-filename{font-size:15px;font-weight:500;color:#374151}.cg-dropzone-size{font-size:13px;color:#6b7280}.cg-dropzone-change{display:flex;align-items:center;gap:6px;margin-top:8px;padding:8px 16px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;font-size:13px;color:#6b7280;cursor:pointer;transition:all .2s ease}.cg-dropzone-change:hover{background:#f3f4f6;color:#374151}.cg-error{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#fef2f2;border:1px solid #fecaca;border-radius:10px;font-size:13px;color:#dc2626}.cg-upload-button{display:flex;align-items:center;justify-content:center;gap:10px;padding:14px 24px;background:#003781;color:#fff;border:none;border-radius:12px;font-size:15px;font-weight:500;cursor:pointer;transition:all .2s ease}.cg-upload-button:hover:not(:disabled){background:#002d6b;transform:translateY(-1px)}.cg-upload-button:disabled{opacity:.5;cursor:not-allowed}.cg-processing{align-items:center;padding:40px 24px}.cg-processing-icon{margin-bottom:16px}.cg-processing-spinner{color:#003781;animation:spin 1s linear infinite}.cg-processing-success{color:#10b981}.cg-processing-error{color:#dc2626}.cg-processing-message{font-size:16px;font-weight:500;color:#374151;margin:0}.cg-progress-bar{width:100%;max-width:300px;height:8px;background:#e5e7eb;border-radius:4px;overflow:hidden}.cg-progress-fill{height:100%;background:linear-gradient(90deg,#003781,#06c);border-radius:4px;transition:width .3s ease}.cg-progress-percent{font-size:14px;font-weight:600;color:#003781;margin:0}.cg-garanties-detectees{width:100%;max-width:400px;margin-top:16px;padding:16px;background:linear-gradient(135deg,#f0fdf4,#ecfdf5);border:1px solid #86efac;border-radius:12px}.cg-garanties-header{display:flex;align-items:center;gap:8px;margin-bottom:12px;font-size:13px;font-weight:600;color:#166534}.cg-garanties-header svg{color:#10b981}.cg-garanties-list{display:flex;flex-wrap:wrap;gap:8px}.cg-garantie-tag{display:inline-flex;align-items:center;padding:6px 12px;background:#fff;border:1px solid #bbf7d0;border-radius:20px;font-size:12px;font-weight:500;color:#166534;animation:fadeInTag .3s ease-out}@keyframes fadeInTag{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.cg-garanties-detectees.formules{background:linear-gradient(135deg,#fef3c7,#fef9c3);border:1px solid #fcd34d}.cg-garanties-detectees.formules .cg-garanties-header{color:#92400e}.cg-garanties-detectees.formules .cg-garanties-header svg{color:#f59e0b}.cg-garantie-tag.formule{border:1px solid #fde68a;color:#92400e}.cg-garanties-detectees.produits{background:linear-gradient(135deg,#dbeafe,#e0e7ff);border:1px solid #93c5fd}.cg-garanties-detectees.produits .cg-garanties-header{color:#1e40af}.cg-garanties-detectees.produits .cg-garanties-header svg{color:#3b82f6}.cg-garantie-tag.produit{border:1px solid #bfdbfe;color:#1e40af}.cg-detected-items{display:flex;flex-direction:column;gap:12px;width:100%;max-width:400px}.cg-detected-items .cg-garanties-detectees{margin-top:0}.cg-modal-header-actions{display:flex;align-items:center;gap:16px}.cg-mode-toggle{display:flex;background:#f3f4f6;border-radius:10px;padding:4px}.cg-mode-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;background:none;border:none;border-radius:8px;font-size:13px;font-weight:500;color:#6b7280;cursor:pointer;transition:all .2s ease}.cg-mode-btn:hover:not(.active){color:#374151}.cg-mode-btn.active{background:#fff;color:#003781;box-shadow:0 1px 3px #0000001a}.cg-modal-batch{max-width:700px}.cg-batch-content{display:flex;flex-direction:column;gap:16px}.cg-batch-header{display:flex;justify-content:space-between;align-items:center}.cg-batch-stats{display:flex;gap:16px}.cg-batch-stat{display:flex;align-items:center;gap:6px;font-size:13px;color:#6b7280}.cg-batch-stat.done{color:#10b981}.cg-batch-stat.error{color:#dc2626}.cg-dropzone-batch{padding:32px 24px;background:linear-gradient(135deg,#f9fafb,#f3f4f6)}.cg-dropzone-batch:hover,.cg-dropzone-batch.dragging{background:linear-gradient(135deg,#eff6ff,#dbeafe)}.cg-batch-list{display:flex;flex-direction:column;gap:12px;max-height:350px;overflow-y:auto;padding-right:4px}.cg-batch-item{display:flex;flex-direction:column;gap:10px;padding:14px 16px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;transition:all .2s ease}.cg-batch-item.processing{border-color:#003781;background:#f8faff}.cg-batch-item.done{border-color:#86efac;background:#f0fdf4}.cg-batch-item.error{border-color:#fca5a5;background:#fef2f2}.cg-batch-item-header{display:flex;align-items:center;gap:12px}.cg-batch-item-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:#f3f4f6;border-radius:8px;color:#6b7280}.cg-batch-item.processing .cg-batch-item-icon{background:#dbeafe;color:#003781}.cg-batch-item.done .cg-batch-item-icon{background:#dcfce7;color:#10b981}.cg-batch-item.error .cg-batch-item-icon{background:#fee2e2;color:#dc2626}.cg-batch-item-success{color:#10b981}.cg-batch-item-error{color:#dc2626}.cg-batch-item-info{flex:1;min-width:0}.cg-batch-item-name{display:block;font-size:14px;font-weight:500;color:#374151;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cg-batch-item-size{font-size:12px;color:#9ca3af}.cg-batch-item-remove{padding:8px;background:none;border:none;color:#9ca3af;cursor:pointer;border-radius:6px;transition:all .2s ease}.cg-batch-item-remove:hover{background:#fee2e2;color:#dc2626}.cg-batch-item-selectors{display:flex;gap:10px}.cg-batch-select{flex:1;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:13px;color:#374151;background:#fff;cursor:pointer;transition:all .2s ease}.cg-batch-select:focus{outline:none;border-color:#003781;box-shadow:0 0 0 3px #0037811a}.cg-batch-select:hover{border-color:#9ca3af}.cg-batch-item-progress{display:flex;flex-direction:column;gap:6px}.cg-batch-progress-bar{width:100%;height:6px;background:#e5e7eb;border-radius:3px;overflow:hidden}.cg-batch-progress-fill{height:100%;background:linear-gradient(90deg,#003781,#06c);border-radius:3px;transition:width .3s ease}.cg-batch-item.done .cg-batch-progress-fill{background:linear-gradient(90deg,#10b981,#34d399)}.cg-batch-progress-text{font-size:12px;color:#6b7280}.cg-batch-item-error-msg{display:flex;align-items:center;gap:6px;font-size:12px;color:#dc2626}.cg-batch-item-meta{display:flex;align-items:center;gap:8px;font-size:12px;color:#6b7280}.cg-batch-actions{margin-top:8px}.cg-batch-processing-actions{display:flex;align-items:center;gap:16px}.cg-batch-stop-btn{display:flex;align-items:center;gap:6px;padding:10px 16px;background:#fee2e2;border:1px solid #fca5a5;border-radius:10px;font-size:14px;font-weight:500;color:#dc2626;cursor:pointer;transition:all .2s ease}.cg-batch-stop-btn:hover{background:#fecaca}.cg-batch-processing-info{display:flex;align-items:center;gap:8px;font-size:14px;color:#003781;font-weight:500}.cg-batch-hint{font-size:13px;color:#9ca3af;text-align:center;margin:0;font-style:italic}.cg-auto-detect-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;background:linear-gradient(135deg,#003781,#0052b4);border:none;border-radius:8px;font-size:13px;font-weight:500;color:#fff;cursor:pointer;transition:all .2s ease}.cg-auto-detect-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #0037814d}.cg-auto-detect-btn:disabled{opacity:.7;cursor:not-allowed}.cg-auto-detect-btn.detecting{background:linear-gradient(135deg,#0052b4,#003781)}.cg-batch-item-detecting{display:flex;align-items:center;gap:8px;padding:8px 12px;background:linear-gradient(135deg,#f0f5ff,#e6eeff);border-radius:8px;font-size:12px;color:#003781}.cg-batch-item-auto-badge{display:flex;align-items:center;gap:6px;padding:4px 10px;background:linear-gradient(135deg,#f0f5ff,#e6eeff);border:1px solid #a3bffa;border-radius:12px;font-size:11px;font-weight:500;color:#003781;width:fit-content}.cg-batch-item-auto-badge .confidence{color:#5a7fba;font-weight:400}.cg-batch-select.auto-filled{border-color:#a3bffa;background:linear-gradient(135deg,#f8faff,#f0f5ff)}.cg-batch-select.auto-filled:focus{border-color:#003781;box-shadow:0 0 0 3px #0037811a}.cg-batch-item-detect-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background:linear-gradient(135deg,#003781,#0052b4);border:none;border-radius:8px;color:#fff;cursor:pointer;transition:all .2s ease;flex-shrink:0}.cg-batch-item-detect-btn:hover:not(:disabled){transform:scale(1.05);box-shadow:0 2px 8px #0037814d}.cg-batch-item-detect-btn:disabled{opacity:.5;cursor:not-allowed}.cg-batch-summary{display:flex;align-items:center;gap:12px;padding:16px 20px;background:#f0fdf4;border:1px solid #86efac;border-radius:12px}.cg-batch-summary-icon{color:#10b981}.cg-batch-summary span{flex:1;font-size:14px;font-weight:500;color:#166534}.cg-batch-close-btn{padding:8px 16px;background:#10b981;border:none;border-radius:8px;font-size:13px;font-weight:500;color:#fff;cursor:pointer;transition:all .2s ease}.cg-batch-close-btn:hover{background:#059669}.cg-upload-options{padding:16px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px}.cg-upload-options.cg-batch-options{margin-top:8px}.cg-toggle-option{display:flex;align-items:center;justify-content:space-between;cursor:pointer}.cg-toggle-label{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:500;color:#374151}.cg-toggle-label svg{color:#6b7280}.cg-toggle-switch{position:relative;width:44px;height:24px;background:#d1d5db;border:none;border-radius:12px;cursor:pointer;transition:all .2s ease;padding:0}.cg-toggle-switch:hover{background:#9ca3af}.cg-toggle-switch.active{background:#003781}.cg-toggle-switch.active:hover{background:#002d6b}.cg-toggle-knob{position:absolute;top:2px;left:2px;width:20px;height:20px;background:#fff;border-radius:50%;box-shadow:0 1px 3px #0003;transition:all .2s ease}.cg-toggle-switch.active .cg-toggle-knob{transform:translate(20px)}.cg-toggle-hint{margin:8px 0 0;font-size:12px;color:#6b7280;line-height:1.4}@media (max-width: 540px){.cg-modal{max-height:100vh;border-radius:0}.cg-compagnie-grid,.cg-type-grid{grid-template-columns:1fr}.cg-modal-steps{gap:12px;flex-wrap:wrap;justify-content:center}.cg-step-label,.cg-mode-toggle{display:none}.cg-batch-item-selectors{flex-direction:column}}.cg-chat{display:flex;flex-direction:column;flex:1;min-width:0;height:100%;max-height:100%;background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 4px 12px #0000000d}.cg-chat-header{display:flex;align-items:center;justify-content:space-between;flex-shrink:0;padding:16px 20px;background:#f9fafb;border-bottom:1px solid #e5e7eb}.cg-chat-title{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:600;color:#111827}.cg-chat-header-actions{display:flex;align-items:center;gap:10px}.cg-chat-reset-btn-inline{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#f3f4f6;border:none;border-radius:10px;color:#6b7280;cursor:pointer;transition:all .2s ease;flex-shrink:0}.cg-chat-reset-btn-inline:hover{background:#fee2e2;color:#dc2626}.cg-chat-filters-badge{padding:6px 12px;background:#eff6ff;color:#003781;font-size:12px;font-weight:500;border-radius:20px}.cg-chat-messages{flex:1;min-height:0;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:16px}.cg-chat-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px 20px;color:#6b7280}.cg-chat-empty svg{color:#003781;margin-bottom:16px}.cg-chat-empty h3{font-size:18px;font-weight:600;color:#111827;margin:0 0 8px}.cg-chat-empty p{font-size:14px;margin:0;max-width:300px}.cg-chat-no-filters svg{color:#f59e0b}.cg-chat-suggestions{margin-top:24px;width:100%;max-width:400px}.cg-chat-suggestions-title{display:flex;align-items:center;justify-content:center;gap:8px;font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;margin-bottom:12px}.cg-chat-suggestion{display:block;width:100%;padding:12px 16px;margin-bottom:8px;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:10px;font-size:13px;color:#374151;text-align:left;cursor:pointer;transition:all .2s ease}.cg-chat-suggestion:hover{background:#eff6ff;border-color:#003781;color:#003781}.cg-chat-message{display:flex;max-width:85%}.cg-chat-message-user{align-self:flex-end}.cg-chat-message-assistant{align-self:flex-start}.cg-chat-message-content{display:flex;gap:12px;min-width:0}.cg-chat-message-user .cg-chat-message-content{flex-direction:row-reverse}.cg-chat-message-icon{width:32px;height:32px;border-radius:10px;background:linear-gradient(135deg,#003781,#06c);display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.cg-chat-message-text{padding:14px 18px;border-radius:16px;font-size:14px;line-height:1.6;overflow-wrap:anywhere;word-break:break-word;min-width:0;flex:1}.cg-chat-message-text p{margin:0 0 8px}.cg-chat-message-text p:last-child{margin-bottom:0}.cg-chat-message-user .cg-chat-message-text{background:#003781;color:#fff;border-bottom-right-radius:4px}.cg-chat-message-assistant .cg-chat-message-text{background:#f3f4f6;color:#374151;border-bottom-left-radius:4px}.cg-chat-content{display:contents}.cg-chat-content>*{display:inline}.cg-chat-message-loading .cg-chat-message-text{background:#f3f4f6}.cg-chat-spinner{animation:spin 1s linear infinite}.cg-chat-typing{color:#6b7280;font-style:italic}.cg-chat-error{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#fef2f2;border:1px solid #fecaca;border-radius:10px;font-size:13px;color:#dc2626}.cg-chat-input-container{flex-shrink:0;padding:16px 20px;border-top:1px solid #e5e7eb;background:#f9fafb}.cg-chat-input-wrapper{display:flex;align-items:flex-end;gap:12px;background:#fff;border:2px solid #e5e7eb;border-radius:14px;padding:8px 12px;transition:all .2s ease}.cg-chat-input-wrapper:focus-within{border-color:#003781;box-shadow:0 0 0 3px #0037811a}.cg-chat-input{flex:1;border:none;background:none;padding:8px 4px;font-size:14px;color:#374151;resize:none;max-height:120px;line-height:1.5}.cg-chat-input:focus{outline:none}.cg-chat-input::placeholder{color:#9ca3af}.cg-chat-input:disabled{cursor:not-allowed}.cg-chat-send{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#003781;color:#fff;border:none;border-radius:10px;cursor:pointer;transition:all .2s ease;flex-shrink:0}.cg-chat-send:hover:not(:disabled){background:#002d6b;transform:scale(1.05)}.cg-chat-send:disabled{background:#d1d5db;cursor:not-allowed}.cg-chat-disclaimer{font-size:11px;color:#9ca3af;text-align:center;margin:10px 0 0}.cg-ref-badge{display:inline-flex;align-items:center;justify-content:center;background:var(--ref-color, #003781);border:none;padding:2px 6px;margin:0 3px;border-radius:4px;cursor:pointer;vertical-align:baseline;position:relative;top:-1px;transition:all .15s ease}.cg-ref-badge:hover{filter:brightness(1.2);transform:translateY(-1px)}.cg-ref-badge-num{color:#fff;font-size:13px;font-weight:700;line-height:1}.cg-ref-badge:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);padding:6px 10px;background:#1f2937;color:#fff;font-size:11px;font-weight:500;white-space:nowrap;border-radius:6px;opacity:0;visibility:hidden;transition:all .2s ease;z-index:100;pointer-events:none;box-shadow:0 4px 12px #00000040}.cg-ref-badge:before{content:"";position:absolute;bottom:calc(100% + 1px);left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:#1f2937;opacity:0;visibility:hidden;transition:all .2s ease;z-index:100}.cg-ref-badge:hover:after,.cg-ref-badge:hover:before{opacity:1;visibility:visible}.cg-chat-sources-indicator{display:flex;align-items:center;gap:6px;padding:4px 10px;background:#f0fdf4;border-radius:16px;font-size:12px;color:#166534}.cg-chat-sources-indicator .cg-chat-sources-count{background:#166534;color:#fff;padding:2px 6px;border-radius:8px;font-size:10px;font-weight:600}.cg-chat-cursor{display:inline-block;animation:blink 1s step-end infinite;color:#003781;font-weight:700}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.cg-chat-message-icon-streaming{animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.cg-chat-streaming{margin:0;white-space:pre-wrap;word-wrap:break-word;word-break:break-word;overflow-wrap:anywhere;font-family:inherit;font-size:inherit;line-height:inherit;background:none;border:none;padding:0;max-width:100%;display:block}.cg-chat-table-wrapper{width:100%;overflow-x:auto;margin:12px 0}.cg-chat-table{width:100%;border-collapse:collapse;font-size:13px;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.cg-chat-table th{background:#f3f4f6;padding:10px 12px;text-align:left;font-weight:600;color:#374151;border-bottom:2px solid #e5e7eb;white-space:nowrap}.cg-chat-table td{padding:10px 12px;border-bottom:1px solid #e5e7eb;color:#4b5563;vertical-align:top}.cg-chat-table tr:last-child td{border-bottom:none}.cg-chat-table tr:hover td{background:#f9fafb}.cg-chat-h2{font-size:18px;font-weight:700;color:#111827;margin:16px 0 8px}.cg-chat-h3{font-size:16px;font-weight:600;color:#1f2937;margin:14px 0 6px}.cg-chat-h4{font-size:14px;font-weight:600;color:#374151;margin:12px 0 4px}.cg-chat-list{margin:8px 0;padding:0;list-style:none}.cg-chat-list-item{display:flex;gap:8px;margin:4px 0}.cg-chat-bullet-icon{color:#003781;font-weight:700;flex-shrink:0}@media (max-width: 768px){.cg-chat-message{max-width:95%}.cg-chat-message-icon{display:none}.cg-chat-table{font-size:12px}.cg-chat-table th,.cg-chat-table td{padding:8px}}.cg-viewer-overlay{position:fixed;inset:0;z-index:9999;background:#000000bf;display:flex;align-items:center;justify-content:center;padding:24px;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.cg-viewer{display:flex;flex-direction:column;width:100%;max-width:1200px;height:90vh;max-height:900px;background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 25px 50px -12px #00000040;animation:slideUp .25s ease}.cg-viewer.cg-viewer-inline{max-width:100%;max-height:100%;height:100%;animation:none;box-shadow:none}.cg-viewer.cg-viewer-inline .cg-viewer-header{padding:10px 16px}.cg-viewer.cg-viewer-inline .cg-viewer-title{font-size:13px}.cg-viewer.cg-viewer-inline .cg-viewer-mode-toggle button{padding:4px 8px}.cg-viewer.cg-viewer-inline .cg-viewer-mode-toggle button span{display:none}.cg-viewer.cg-viewer-inline .cg-viewer-btn{width:28px;height:28px}.cg-viewer-header-inline{padding:8px 12px!important;gap:8px}.cg-viewer-header-inline .cg-viewer-title{font-size:13px;gap:6px}.cg-viewer-page-badge{padding:2px 8px;background:#003781;color:#fff;font-size:11px;font-weight:600;border-radius:10px}.cg-viewer-sources-bar{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#f3f4f6;border-bottom:1px solid #e5e7eb;flex-shrink:0}.cg-viewer-nav-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;color:#6b7280;cursor:pointer;transition:all .15s ease;flex-shrink:0}.cg-viewer-nav-btn:hover:not(:disabled){background:#003781;border-color:#003781;color:#fff}.cg-viewer-nav-btn:disabled{opacity:.4;cursor:not-allowed}.cg-viewer-sources-tabs{display:flex;gap:6px;flex:1;overflow-x:auto;scrollbar-width:none}.cg-viewer-sources-tabs::-webkit-scrollbar{display:none}.cg-viewer-source-tab{display:flex;align-items:center;gap:6px;padding:6px 10px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;font-size:11px;color:#374151;cursor:pointer;transition:all .15s ease;white-space:nowrap;flex-shrink:0}.cg-viewer-source-tab:hover{border-color:#003781;color:#003781}.cg-viewer-source-tab.active{background:#003781;border-color:#003781;color:#fff}.source-tab-num{width:18px;height:18px;display:flex;align-items:center;justify-content:center;background:#e5e7eb;border-radius:50%;font-size:10px;font-weight:600}.cg-viewer-source-tab.active .source-tab-num{background:#ffffff40}.source-tab-label{font-weight:500}.source-tab-page{color:#9ca3af;font-size:10px}.cg-viewer-source-tab.active .source-tab-page{color:#ffffffb3}.cg-viewer-source-info{display:flex;align-items:center;justify-content:space-between;padding:6px 12px;background:#eff6ff;border-bottom:1px solid #dbeafe;font-size:12px;flex-shrink:0}.cg-source-section{font-weight:500;color:#1e40af}.cg-source-similarity{padding:2px 8px;background:#dcfce7;color:#166534;font-size:10px;font-weight:500;border-radius:10px}.cg-viewer-text-panel-inline{padding:0}.cg-viewer-text-panel-inline .cg-viewer-text-content{padding:12px}.cg-viewer-text-panel-inline .cg-viewer-text-content pre{padding:16px;font-size:13px;line-height:1.6;border-radius:8px}@keyframes slideUp{0%{opacity:0;transform:translateY(20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.cg-viewer.fullscreen{max-width:100%;max-height:100%;height:100vh;border-radius:0}.cg-viewer-header{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;background:#f9fafb;border-bottom:1px solid #e5e7eb;flex-shrink:0}.cg-viewer-title{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:600;color:#003781}.cg-viewer-filename{font-weight:400;color:#6b7280;font-size:13px}.cg-viewer-sources-nav{display:flex;align-items:center;gap:8px;padding:4px 8px;background:#f3f4f6;border-radius:8px}.cg-viewer-sources-label{font-size:12px;font-weight:500;color:#6b7280}.cg-viewer-source-btn{display:flex;align-items:center;gap:6px;padding:6px 10px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;font-size:12px;color:#374151;cursor:pointer;transition:all .15s ease}.cg-viewer-source-btn:hover{border-color:#003781;color:#003781}.cg-viewer-source-btn.active{background:#003781;border-color:#003781;color:#fff}.cg-viewer-source-btn .source-num{width:18px;height:18px;display:flex;align-items:center;justify-content:center;background:#e5e7eb;border-radius:50%;font-size:10px;font-weight:600}.cg-viewer-source-btn.active .source-num{background:#fff3}.cg-viewer-source-btn .source-info{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cg-viewer-controls{display:flex;align-items:center;gap:8px}.cg-viewer-mode-toggle{display:flex;background:#e5e7eb;border-radius:8px;padding:2px}.cg-viewer-mode-toggle button{display:flex;align-items:center;gap:6px;padding:8px 12px;background:none;border:none;border-radius:6px;color:#6b7280;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.cg-viewer-mode-toggle button:hover{color:#374151}.cg-viewer-mode-toggle button.active{background:#fff;color:#003781;box-shadow:0 1px 2px #0000001a}.cg-viewer-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:none;border:1px solid #e5e7eb;border-radius:8px;color:#6b7280;cursor:pointer;transition:all .2s ease;text-decoration:none}.cg-viewer-btn:hover{background:#f3f4f6;color:#374151}.cg-viewer-close:hover{background:#fef2f2;border-color:#fecaca;color:#dc2626}.cg-viewer-content{flex:1;display:flex;overflow:hidden;min-height:0}.cg-viewer-split{display:grid;grid-template-columns:1fr 400px}.cg-viewer-pdf .cg-viewer-pdf-panel,.cg-viewer-transcript .cg-viewer-transcript-panel{width:100%}.cg-viewer-pdf-panel{display:flex;flex-direction:column;width:100%;height:100%;background:#374151;min-height:0}.cg-viewer-pdf-container{flex:1;overflow:hidden;display:flex;background:#4b5563;min-height:0;position:relative}.cg-viewer-pdf-iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:none;background:#fff}.cg-viewer-pdf-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#9ca3af;gap:12px}.cg-viewer-transcript-panel{display:flex;flex-direction:column;background:#fff;min-height:0}.cg-viewer-transcript-header{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#f9fafb;border-bottom:1px solid #e5e7eb;font-size:13px;font-weight:600;color:#6b7280;flex-shrink:0}.cg-viewer-transcript-content{flex:1;overflow-y:auto;padding:12px;min-height:0}.cg-transcript-page{margin-bottom:8px;border:1px solid #e5e7eb;border-radius:10px;overflow:hidden}.cg-transcript-page.current{border-color:#003781;box-shadow:0 0 0 2px #0037811a}.cg-transcript-page-header{display:flex;align-items:center;width:100%;padding:12px 16px;background:#f9fafb;border:none;cursor:pointer;transition:all .2s ease}.cg-transcript-page-header:hover{background:#f3f4f6}.cg-transcript-page-num{font-size:14px;font-weight:600;color:#374151}.cg-transcript-page-count{margin-left:auto;margin-right:12px;font-size:12px;color:#9ca3af}.cg-transcript-chevron{color:#9ca3af;transition:transform .2s ease}.cg-transcript-chevron.expanded{transform:rotate(90deg)}.cg-transcript-elements{padding:12px;display:flex;flex-direction:column;gap:10px;background:#fff}.cg-transcript-element{display:flex;gap:10px;padding:10px 12px;background:#f9fafb;border-radius:8px;font-size:13px}.cg-transcript-element-heading{background:#eff6ff;border-left:3px solid #003781}.cg-transcript-element-table{background:#f0fdf4;border-left:3px solid #10b981}.cg-transcript-element-diagram{background:#fef3c7;border-left:3px solid #f59e0b}.cg-transcript-element-icon{font-size:16px;flex-shrink:0}.cg-transcript-element-content{flex:1;overflow:hidden}.cg-transcript-element-content strong{color:#003781;display:block;margin-bottom:4px}.cg-heading-1{font-size:15px}.cg-heading-2{font-size:14px}.cg-heading-3{font-size:13px;font-weight:500}.cg-transcript-element-content pre{margin:0;font-family:inherit;white-space:pre-wrap;word-break:break-word;color:#374151;line-height:1.5}.cg-transcript-element-confidence{font-size:11px;color:#9ca3af;flex-shrink:0}.cg-viewer-no-transcript,.cg-viewer-no-text{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#9ca3af;gap:12px}.cg-viewer-text-panel{display:flex;flex-direction:column;width:100%;flex:1;min-height:0;background:#f9fafb}.cg-viewer-text-header{padding:16px 24px;background:#fff;border-bottom:1px solid #e5e7eb;flex-shrink:0}.cg-viewer-text-meta{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.cg-viewer-text-compagnie{padding:4px 10px;background:#003781;color:#fff;font-size:12px;font-weight:600;border-radius:4px}.cg-viewer-text-section{font-size:15px;font-weight:600;color:#111827}.cg-viewer-text-page{padding:4px 8px;background:#e5e7eb;color:#374151;font-size:12px;font-weight:500;border-radius:4px}.cg-viewer-text-similarity{padding:4px 8px;background:#dcfce7;color:#166534;font-size:12px;font-weight:500;border-radius:4px}.cg-viewer-text-content{flex:1;min-height:0;overflow-y:auto;padding:24px}.cg-viewer-text-content pre{margin:0;padding:20px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;font-family:SF Mono,Consolas,Monaco,monospace;font-size:14px;line-height:1.7;color:#374151;white-space:pre-wrap;word-break:break-word}.cg-viewer-transcript-list{display:flex;flex-direction:column;gap:16px}.cg-viewer-transcript-page{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.cg-viewer-transcript-page-title{padding:12px 20px;background:#f3f4f6;font-weight:600;font-size:14px;color:#003781;border-bottom:1px solid #e5e7eb}.cg-viewer-transcript-list .cg-viewer-transcript-page pre{border:none;border-radius:0}.cg-viewer-transcript-page-content{padding:20px;display:flex;flex-direction:column;gap:16px}.cg-element{line-height:1.6}.cg-heading{margin:0;color:#003781;font-weight:600}.cg-heading-1{font-size:18px;padding-bottom:8px;border-bottom:2px solid #003781;margin-bottom:4px}.cg-heading-2{font-size:16px;color:#1e40af}.cg-heading-3{font-size:14px;color:#374151;font-weight:500}.cg-paragraph{margin:0;font-size:14px;color:#374151;text-align:justify}.cg-list{font-size:14px;color:#374151;padding-left:20px;white-space:pre-wrap}.cg-element-list{background:#f9fafb;padding:12px 16px;border-radius:8px;border-left:3px solid #6b7280}.cg-table-wrapper{overflow-x:auto;border-radius:8px;border:1px solid #e5e7eb}.cg-table{width:100%;border-collapse:collapse;font-size:13px}.cg-table th{background:#003781;color:#fff;padding:10px 12px;text-align:left;font-weight:600;white-space:nowrap}.cg-table td{padding:10px 12px;border-bottom:1px solid #e5e7eb;color:#374151}.cg-table tbody tr:nth-child(2n){background:#f9fafb}.cg-table tbody tr:hover{background:#eff6ff}.cg-table-text{margin:0;padding:12px 16px;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px;font-family:inherit;font-size:13px;white-space:pre-wrap;color:#374151}.cg-diagram{display:flex;align-items:flex-start;gap:12px;padding:16px;background:#fef3c7;border-left:3px solid #f59e0b;border-radius:8px}.cg-diagram-icon{font-size:20px;flex-shrink:0}.cg-diagram p{margin:0;font-size:14px;color:#92400e;font-style:italic}.cg-raw-text{margin:0;padding:16px;font-family:inherit;font-size:14px;line-height:1.7;color:#374151;white-space:pre-wrap;word-break:break-word}.cg-element-heading{margin-top:8px}.cg-element-paragraph+.cg-element-heading{margin-top:20px}@media (max-width: 1024px){.cg-viewer-overlay{padding:16px}.cg-viewer{max-height:none;height:calc(100vh - 32px)}.cg-viewer-split{grid-template-columns:1fr;grid-template-rows:1fr 300px}.cg-viewer-pdf-panel{border-right:none;border-bottom:1px solid #e5e7eb}}@media (max-width: 768px){.cg-viewer-overlay{padding:0}.cg-viewer{height:100vh;border-radius:0}.cg-viewer-header{flex-wrap:wrap;gap:12px}.cg-viewer-filename,.cg-viewer-mode-toggle{display:none}}.cg-page{height:100vh;overflow:hidden;background:linear-gradient(135deg,#ebf1f7,#f8fafc)}.cg-page-content{display:flex;height:calc(100vh - 104px);overflow:hidden}.cg-mobile-menu-btn{display:none;position:fixed;top:120px;left:16px;z-index:90;width:44px;height:44px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;color:#003781;cursor:pointer;box-shadow:0 4px 12px #0000001a;transition:all .2s ease}.cg-mobile-menu-btn:hover{background:#f3f4f6}.cg-sidebar-overlay{display:none;position:fixed;inset:0;background:#00000080;z-index:99}.cg-main{flex:1;display:flex;flex-direction:column;overflow:hidden;padding:20px;height:100%}.cg-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#6b7280;gap:16px}.cg-loading-spinner{color:#003781;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.cg-error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#dc2626;gap:16px;text-align:center}.cg-error-state p{font-size:15px;max-width:400px}.cg-error-state button{display:flex;align-items:center;gap:8px;padding:10px 20px;background:#fef2f2;border:1px solid #fecaca;border-radius:10px;color:#dc2626;font-size:14px;cursor:pointer;transition:all .2s ease}.cg-error-state button:hover{background:#fee2e2}.cg-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center;padding:40px}.cg-empty-state svg{color:#003781;margin-bottom:24px;opacity:.8}.cg-empty-state h2{font-size:24px;font-weight:600;color:#111827;margin:0 0 12px}.cg-empty-state p{font-size:15px;color:#6b7280;margin:0 0 24px;max-width:400px}.cg-empty-cta{padding:14px 28px;background:#003781;color:#fff;border:none;border-radius:12px;font-size:15px;font-weight:500;cursor:pointer;transition:all .2s ease}.cg-empty-cta:hover{background:#002d6b;transform:translateY(-2px);box-shadow:0 4px 12px #00378133}.cg-sidebar-expand-btn{position:sticky;top:104px;left:0;z-index:10;width:40px;height:40px;background:#fff;border:1px solid #e5e7eb;border-left:none;border-radius:0 8px 8px 0;display:flex;align-items:center;justify-content:center;color:#6b7280;cursor:pointer;box-shadow:2px 2px 8px #0000001a;transition:all .2s ease;flex-shrink:0}.cg-sidebar-expand-btn:hover{background:#f3f4f6;color:#003781}.cg-main-content{display:flex;flex-direction:row;height:100%;min-height:0;gap:20px}.cg-main-content.with-panel{gap:16px}.cg-chat-container{flex:1;min-width:0;min-height:0;overflow:hidden}.cg-main-content.with-panel .cg-chat-container{flex:1;max-width:50%}.cg-panel-container{flex:1;min-width:0;min-height:0;overflow:hidden}@media (max-width: 1200px){.cg-main{padding:16px}}@media (max-width: 1024px){.cg-page-content{flex-direction:column}}@media (max-width: 768px){.cg-mobile-menu-btn{display:flex;align-items:center;justify-content:center}.cg-sidebar-overlay{display:block}.cg-main{padding:70px 12px 12px}.cg-empty-state{padding:24px}.cg-empty-state h2{font-size:20px}.cg-empty-state p{font-size:14px}}@media (max-width: 540px){.cg-main{padding:60px 8px 8px}.cg-empty-state svg{width:48px;height:48px}}.api-doc-page{min-height:100vh;display:flex;flex-direction:column;background:#f8fafc}.api-doc-container{display:flex;flex:1;max-width:1400px;margin:0 auto;width:100%}.api-doc-sidebar{width:260px;background:#fff;border-right:1px solid #e2e8f0;position:sticky;top:64px;height:calc(100vh - 64px);overflow-y:auto;flex-shrink:0}.api-sidebar-header{padding:24px 20px 16px;border-bottom:1px solid #e2e8f0;display:flex;align-items:center;justify-content:space-between}.api-sidebar-header h2{font-size:15px;font-weight:600;color:#1e293b;margin:0}.api-version-badge{font-size:11px;font-weight:600;padding:3px 8px;background:#3b82f6;color:#fff;border-radius:4px}.api-sidebar-nav{padding:12px 8px;display:flex;flex-direction:column;gap:2px}.api-nav-item{display:block;width:100%;padding:10px 16px;border:none;background:transparent;cursor:pointer;font-size:14px;color:#64748b;border-radius:6px;transition:all .15s ease;text-align:left}.api-nav-item:hover{background:#f1f5f9;color:#1e293b}.api-nav-item.active{background:#eff6ff;color:#3b82f6;font-weight:500}.api-doc-content{flex:1;padding:32px 48px;overflow-y:auto;height:calc(100vh - 64px)}.api-section{margin-bottom:64px;scroll-margin-top:32px}.api-section h1{font-size:26px;font-weight:700;color:#1e293b;margin:0 0 16px;padding-bottom:12px;border-bottom:2px solid #3b82f6}.api-section h3{font-size:16px;font-weight:600;color:#1e293b;margin:28px 0 12px}.api-section p{font-size:15px;line-height:1.7;color:#475569;margin:0 0 16px}.api-intro-text{font-size:16px;color:#475569}.api-code-block{background:#1e293b;border-radius:10px;overflow:hidden;margin:12px 0 20px}.api-code-header{display:flex;align-items:center;justify-content:space-between;padding:8px 16px;background:#0f172a;border-bottom:1px solid #334155}.api-code-lang{font-size:11px;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.5px}.api-copy-btn{display:flex;align-items:center;gap:6px;padding:5px 10px;background:transparent;border:1px solid #475569;color:#94a3b8;cursor:pointer;border-radius:5px;font-size:12px;transition:all .15s ease}.api-copy-btn:hover{background:#334155;color:#fff;border-color:#64748b}.api-code-content{margin:0;padding:16px;overflow-x:auto}.api-code-content code{font-family:SF Mono,JetBrains Mono,Fira Code,monospace;font-size:13px;line-height:1.6;color:#e2e8f0;white-space:pre}.api-info-box{border-radius:10px;padding:14px 18px;margin:16px 0;font-size:14px;line-height:1.6}.api-info-box-info{background:#eff6ff;border:1px solid #bfdbfe;color:#1e40af}.api-info-box-warning{background:#fef3c7;border:1px solid #fcd34d;color:#92400e}.api-info-box-success{background:#dcfce7;border:1px solid #86efac;color:#166534}.api-info-box code{background:#00000014;padding:2px 6px;border-radius:4px;font-family:SF Mono,monospace;font-size:12px}.api-param-table{width:100%;border-collapse:collapse;font-size:14px;margin:12px 0 20px;background:#fff;border-radius:10px;overflow:hidden;border:1px solid #e2e8f0}.api-param-table th{text-align:left;padding:12px 16px;background:#f8fafc;font-weight:600;color:#64748b;font-size:12px;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid #e2e8f0}.api-param-table td{padding:12px 16px;border-bottom:1px solid #f1f5f9;color:#475569}.api-param-table tr:last-child td{border-bottom:none}.api-param-table code{background:#f1f5f9;padding:3px 8px;border-radius:5px;font-size:13px;color:#0f172a;font-family:SF Mono,monospace}.api-required{color:#ef4444;margin-left:4px;font-weight:700}.api-endpoints-overview{width:100%;border-collapse:collapse;margin:12px 0 20px;background:#fff;border-radius:10px;overflow:hidden;border:1px solid #e2e8f0}.api-endpoints-overview td{padding:12px 16px;border-bottom:1px solid #f1f5f9;font-size:14px}.api-endpoints-overview tr:last-child td{border-bottom:none}.api-endpoints-overview td:first-child{width:280px;font-family:SF Mono,monospace}.api-endpoints-overview td:first-child code{background:#f1f5f9;padding:4px 10px;border-radius:5px;font-size:13px;color:#0f172a}.api-endpoints-overview td:last-child{color:#64748b}.api-tags{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 20px}.api-tag{display:inline-flex;align-items:center;padding:6px 14px;background:#eff6ff;color:#3b82f6;font-size:13px;font-weight:500;border-radius:6px;font-family:SF Mono,monospace}.api-doc-sidebar::-webkit-scrollbar,.api-doc-content::-webkit-scrollbar{width:6px}.api-doc-sidebar::-webkit-scrollbar-track,.api-doc-content::-webkit-scrollbar-track{background:transparent}.api-doc-sidebar::-webkit-scrollbar-thumb,.api-doc-content::-webkit-scrollbar-thumb{background:#e2e8f0;border-radius:3px}.api-doc-sidebar::-webkit-scrollbar-thumb:hover,.api-doc-content::-webkit-scrollbar-thumb:hover{background:#94a3b8}@media (max-width: 1024px){.api-doc-sidebar{width:220px}.api-doc-content{padding:24px 32px}}@media (max-width: 768px){.api-doc-container{flex-direction:column}.api-doc-sidebar{width:100%;height:auto;position:relative;top:0;border-right:none;border-bottom:1px solid #e2e8f0}.api-sidebar-nav{flex-direction:row;flex-wrap:wrap;gap:4px;padding:12px}.api-nav-item{padding:8px 12px;font-size:13px}.api-doc-content{height:auto;padding:24px 16px}.api-section h1{font-size:22px}.api-endpoints-overview td:first-child{width:auto}.api-code-content{padding:12px}.api-code-content code{font-size:12px}}.user-guide-page{min-height:100vh;display:flex;flex-direction:column;background:#f8fafc}.user-guide-container{display:flex;flex:1;max-width:1200px;margin:0 auto;width:100%}.user-guide-sidebar{width:240px;background:#fff;border-right:1px solid #e2e8f0;position:sticky;top:64px;height:calc(100vh - 64px);overflow-y:auto;flex-shrink:0}.user-guide-sidebar-header{padding:24px 20px 16px;border-bottom:1px solid #e2e8f0}.user-guide-sidebar-header h2{font-size:16px;font-weight:600;color:#1e293b;margin:0}.user-guide-nav{padding:12px 8px;display:flex;flex-direction:column;gap:2px}.user-guide-nav-item{display:block;width:100%;padding:10px 16px;border:none;background:transparent;cursor:pointer;font-size:14px;color:#64748b;border-radius:6px;transition:all .15s ease;text-align:left}.user-guide-nav-item:hover{background:#f1f5f9;color:#1e293b}.user-guide-content{flex:1;padding:32px 48px;overflow-y:auto;height:calc(100vh - 64px)}.guide-welcome{margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid #e2e8f0}.guide-welcome h1{font-size:28px;font-weight:700;color:#1e293b;margin:0 0 12px}.guide-welcome p{font-size:16px;color:#64748b;margin:0;line-height:1.6}.guide-section{background:#fff;border-radius:12px;border:1px solid #e2e8f0;margin-bottom:16px;overflow:hidden;transition:box-shadow .2s ease}.guide-section:hover{box-shadow:0 2px 8px #0000000a}.guide-section.open{box-shadow:0 4px 12px #0000000f}.guide-section-header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:18px 24px;background:transparent;border:none;cursor:pointer;transition:background .15s ease}.guide-section-header:hover{background:#f8fafc}.guide-section-title{display:flex;align-items:center;gap:14px}.guide-section-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#eff6ff;border-radius:10px;color:#3b82f6}.guide-section-title h2{font-size:17px;font-weight:600;color:#1e293b;margin:0}.guide-section-header svg:last-child{color:#94a3b8}.guide-section-content{padding:0 24px 24px;border-top:1px solid #f1f5f9}.guide-intro{font-size:15px;color:#64748b;line-height:1.7;margin:20px 0;padding:16px;background:#f8fafc;border-radius:8px}.guide-section-content h3{font-size:15px;font-weight:600;color:#1e293b;margin:24px 0 12px}.guide-section-content p{font-size:14px;color:#475569;line-height:1.7;margin:0 0 12px}.guide-step{display:flex;gap:16px;margin-bottom:20px}.guide-step-number{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:#3b82f6;color:#fff;font-size:14px;font-weight:600;border-radius:50%;flex-shrink:0}.guide-step-content{flex:1;padding-top:4px}.guide-step-content h4{font-size:14px;font-weight:600;color:#1e293b;margin:0 0 6px}.guide-step-description{font-size:14px;color:#64748b;line-height:1.6}.guide-step-description p{margin:0}.guide-tip{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;background:#fef9c3;border:1px solid #fde047;border-radius:8px;margin:20px 0}.guide-tip svg{color:#ca8a04;flex-shrink:0;margin-top:1px}.guide-tip span{font-size:13px;color:#854d0e;line-height:1.6}.guide-types-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:12px}.guide-type-card{display:flex;flex-direction:column;gap:4px;padding:14px 16px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px}.guide-type-card strong{font-size:14px;color:#1e293b}.guide-type-card span{font-size:12px;color:#64748b}.guide-list{list-style:none;padding:0;margin:0}.guide-list li{display:flex;gap:8px;padding:10px 0;border-bottom:1px solid #f1f5f9;font-size:14px;color:#475569}.guide-list li:last-child{border-bottom:none}.guide-list li strong{color:#1e293b;min-width:100px}.guide-examples{list-style:none;padding:0;margin:12px 0}.guide-examples li{padding:10px 14px;background:#f1f5f9;border-radius:6px;margin-bottom:8px;font-size:13px;color:#475569;font-style:italic}.guide-faq{display:flex;flex-direction:column;gap:16px;margin-top:16px}.guide-faq-item{padding:16px;background:#f8fafc;border-radius:8px}.guide-faq-item h4{font-size:14px;font-weight:600;color:#1e293b;margin:0 0 8px}.guide-faq-item p{font-size:13px;color:#64748b;line-height:1.6;margin:0}.guide-contact{display:flex;align-items:center;gap:16px;padding:20px 24px;background:linear-gradient(135deg,#3b82f6,#2563eb);border-radius:12px;margin-top:24px;color:#fff}.guide-contact svg{flex-shrink:0}.guide-contact h3{font-size:15px;font-weight:600;margin:0 0 4px}.guide-contact p{font-size:13px;opacity:.9;margin:0}.user-guide-sidebar::-webkit-scrollbar,.user-guide-content::-webkit-scrollbar{width:6px}.user-guide-sidebar::-webkit-scrollbar-track,.user-guide-content::-webkit-scrollbar-track{background:transparent}.user-guide-sidebar::-webkit-scrollbar-thumb,.user-guide-content::-webkit-scrollbar-thumb{background:#e2e8f0;border-radius:3px}.user-guide-sidebar::-webkit-scrollbar-thumb:hover,.user-guide-content::-webkit-scrollbar-thumb:hover{background:#94a3b8}@media (max-width: 1024px){.user-guide-sidebar{width:200px}.user-guide-content{padding:24px 32px}.guide-types-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.user-guide-container{flex-direction:column}.user-guide-sidebar{width:100%;height:auto;position:relative;top:0;border-right:none;border-bottom:1px solid #e2e8f0}.user-guide-nav{flex-direction:row;flex-wrap:wrap;gap:4px;padding:12px}.user-guide-nav-item{padding:8px 12px;font-size:13px}.user-guide-content{height:auto;padding:24px 16px}.guide-welcome h1{font-size:22px}.guide-section-header{padding:14px 16px}.guide-section-content{padding:0 16px 16px}.guide-types-grid{grid-template-columns:1fr}.guide-step{flex-direction:column;gap:10px}.guide-contact{flex-direction:column;text-align:center}}
