@import "https://fonts.googleapis.com/css2?family=Syne:wght@400;600;700;800&family=DM+Sans:ital,wght@0,300;0,400;0,500;1,300&display=swap";@media (width<=768px){.landing-page h1{font-size:36px}.landing-page h2{font-size:28px}.landing-page h3{font-size:20px}}@media (width<=480px){.landing-page h1{font-size:32px}.landing-page h2{font-size:24px}}@media (width<=768px){.landing-page .hero,.landing-page .problem-section,.landing-page .solution-section,.landing-page .differentiators-section,.landing-page .two-columns,.landing-page .mobile-section,.landing-page .social-proof,.landing-page .pricing-section,.landing-page .cta-section{padding:60px 0}}@media (width<=768px){.landing-page .column-card{flex:100%;max-width:100%}}@media (width<=640px){.landing-page .mobile-install-steps{flex-direction:column;width:100%;max-width:340px}.landing-page .install-step-divider{width:80%;height:1px}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media (width<=768px){.landing-page .container{padding:0 20px}.landing-page .hero-buttons{flex-direction:column;align-items:center;gap:14px}.landing-page .hero-buttons .btn-primary,.landing-page .hero-buttons .btn-secondary{width:100%;max-width:280px}.landing-page .problem-card,.landing-page .solution-card{flex:100%;max-width:100%}.landing-page .problem-card h3,.landing-page .solution-card h3{min-height:auto}.landing-page .stat-item{flex:100%;min-width:auto}}@media (width<=480px){.landing-page .hero-subtitle{font-size:15px}.landing-page .hero-note{font-size:12px}.landing-page .stats-subtitle{font-size:14px}}.insight-panel{background:var(--surface);border-left:1px solid var(--border);z-index:300;flex-direction:column;width:340px;height:100vh;transition:transform .25s;display:flex;position:fixed;top:0;right:0;overflow:hidden auto;transform:translate(100%)}.insight-panel.open{transform:translate(0);box-shadow:-4px 0 24px #0000001f}.insight-overlay{z-index:299;background:#0000004d;position:fixed;inset:0}.insight-header{border-bottom:1px solid var(--border);background:var(--surface);z-index:1;flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 20px;display:flex;position:sticky;top:0}.insight-close-btn{cursor:pointer;color:var(--muted);background:0 0;border:none;border-radius:4px;padding:2px 6px;font-size:18px;line-height:1;transition:background .15s,color .15s}.insight-close-btn:hover{background:var(--border);color:var(--text)}.insight-body{flex-direction:column;flex:1;display:flex}.insight-section{border-bottom:1px solid var(--border);padding:16px 20px}.insight-section:last-child{border-bottom:none}.insight-section-title{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:10px;font-size:10px;font-weight:700}.insight-item{align-items:flex-start;gap:10px;margin-bottom:8px;display:flex}.insight-item:last-child{margin-bottom:0}.insight-item-icon{text-align:center;min-width:20px;color:var(--muted);flex-shrink:0;margin-top:1px;font-size:11px;font-weight:600}.insight-item-text{color:var(--text);font-size:13px;line-height:1.4}.insight-item-sub{color:var(--muted);margin-top:2px;font-size:11px}.insight-cta{color:var(--accent);margin-top:10px;font-size:12px;font-weight:600;text-decoration:none;transition:opacity .15s;display:inline-block}.insight-cta:hover{opacity:.8;text-decoration:underline}.insight-progress-bar{background:var(--border);border-radius:3px;height:6px;margin:6px 0;overflow:hidden}.insight-progress-fill{border-radius:3px;height:100%;transition:width .4s}.insight-alert{border-radius:8px;margin-bottom:4px;padding:9px 12px;font-size:12px;line-height:1.5}.insight-alert.danger{color:#ef4444;background:#ef44441a}.insight-alert.warning{color:#ca8a04;background:#eab3081a}.insight-alert.success{color:#059669;background:#10b9811a}.insight-alert.info{color:var(--accent);background:#1a56db1a}.insight-loading{text-align:center;color:var(--muted);padding:40px 20px;font-size:13px}.insight-score-row{justify-content:space-between;align-items:center;margin-bottom:4px;font-size:13px;display:flex}.insight-check-row{align-items:center;gap:8px;min-height:22px;font-size:12.5px;display:flex}.insight-check-icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;font-size:11px;font-weight:700;line-height:1;display:flex}.insight-check-icon.done{color:#059669;background:#05966926}.insight-check-icon.todo{background:var(--border);color:var(--muted);font-size:9px}.insight-check-label{color:var(--text);flex:1;line-height:1.3}.insight-check-label.missing{color:var(--muted)}.insight-check-cta{color:var(--accent);background:#4f8ef71a;border-radius:10px;flex-shrink:0;padding:2px 7px;font-size:11px;font-weight:700;text-decoration:none;transition:background .15s}.insight-check-cta:hover{background:#4f8ef733}@media (width<=768px){.insight-panel{width:100vw}}.auth-layout{background:var(--bg);min-height:100vh;display:flex}.sidebar{background:var(--surface);border-right:1px solid var(--border);z-index:100;flex-direction:column;width:230px;min-width:230px;height:100vh;transition:transform .25s;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar-logo{border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;height:56px;padding:0 16px;display:flex}.sidebar-logo a{color:var(--text);align-items:center;gap:10px;font-size:18px;font-weight:700;text-decoration:none;display:flex}.sidebar-logo-img{object-fit:contain;border-radius:8px;flex-shrink:0;width:32px;height:32px}.sidebar-nav{flex-direction:column;flex:1;gap:1px;padding:12px 0;display:flex;overflow-y:auto}.sidebar-section{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-top:4px;padding:12px 16px 4px;font-size:10px;font-weight:600;display:block}.sidebar-link{color:var(--muted);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;width:calc(100% - 16px);margin:0 8px;padding:9px 16px;font-size:14px;font-weight:500;line-height:1.4;text-decoration:none;transition:background .15s,color .15s;display:flex;position:relative}.sidebar-link:hover{background:var(--border);color:var(--text)}.sidebar-link.active{color:var(--accent);background:#1a56db1f;font-weight:600}[data-theme=light] .sidebar-link.active{background:#1a56db14}.sidebar-link svg{opacity:.7;flex-shrink:0;width:18px;height:18px}.sidebar-link.active svg{opacity:1}.sidebar-link:hover svg{opacity:.9}.sidebar-badge{background:var(--accent);color:#fff;text-align:center;border-radius:10px;min-width:18px;margin-left:auto;padding:2px 6px;font-size:10px;font-weight:700;line-height:1.4}.sidebar-footer{border-top:1px solid var(--border);flex-direction:column;flex-shrink:0;gap:1px;padding:12px 0;display:flex}.sidebar-logout{color:#ef4444!important}.sidebar-logout:hover{color:#ef4444!important;background:#ef44441a!important}.auth-main{flex-direction:column;flex:1;min-width:0;display:flex;overflow-x:hidden}.auth-header{border-bottom:1px solid var(--border);background:var(--surface);z-index:50;flex-shrink:0;justify-content:space-between;align-items:center;height:56px;padding:0 24px;display:flex;position:sticky;top:0}.auth-header-user{align-items:center;gap:12px;display:flex}.auth-avatar{background:var(--accent);color:#fff;letter-spacing:.5px;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:13px;font-weight:700;display:flex}.auth-plan-badge{white-space:nowrap;border-radius:20px;padding:3px 9px;font-size:11px;font-weight:600}.auth-plan-badge.plan-pro{color:var(--accent);background:#1a56db1f}.auth-plan-badge.plan-starter{color:#059669;background:#10b9811f}.auth-plan-badge.plan-free{background:var(--border);color:var(--muted)}.auth-plan-badge.plan-admin{color:#7c3aed;background:#7c3aed1f}.auth-header-page-title{color:var(--text);font-size:15px;font-weight:600}.auth-theme-btn{border:1px solid var(--border);color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border-radius:6px;padding:5px 10px;font-size:13px;transition:background .15s,color .15s}.auth-theme-btn:hover{background:var(--border);color:var(--text)}.auth-insight-btn{border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:6px;flex-shrink:0;padding:5px 8px;font-size:16px;line-height:1;transition:background .15s}.auth-insight-btn:hover{background:var(--border)}.auth-content{box-sizing:border-box;flex:1;width:100%;max-width:1400px;padding:32px}.pwa-install-banner{background:linear-gradient(90deg,#1a3a6b,#1e4fa3);border-bottom:1px solid #4f8ef74d;flex-shrink:0;align-items:center;gap:12px;padding:12px 20px;display:flex}.pwa-banner-icon{flex-shrink:0;font-size:20px}.pwa-banner-text{flex-direction:column;flex:1;gap:2px;display:flex}.pwa-banner-text strong{color:#fff;font-size:13px;font-weight:600}.pwa-banner-text span{color:#ffffffa6;font-size:12px}.pwa-banner-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.pwa-install-btn{color:#1a3a6b;cursor:pointer;background:#fff;border:none;border-radius:8px;padding:6px 16px;font-size:13px;font-weight:600;transition:opacity .15s}.pwa-install-btn:hover{opacity:.9}.pwa-dismiss-btn{color:#ffffff80;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px 8px;font-size:14px;line-height:1;transition:color .15s}.pwa-dismiss-btn:hover{color:#ffffffe6}.notif-prompt-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:flex-end;padding:0 16px 24px;animation:.2s fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.notif-prompt-card{background:var(--surface);border:1px solid var(--border);text-align:center;border-radius:20px;width:100%;max-width:420px;padding:32px 28px;animation:.25s slideUp;box-shadow:0 -4px 40px #00000040}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.notif-prompt-icon{margin-bottom:16px;font-size:48px;line-height:1}.notif-prompt-card h3{color:var(--text);margin:0 0 12px;font-size:18px;font-weight:700}.notif-prompt-card p{color:var(--muted);margin:0 0 24px;font-size:14px;line-height:1.6}.notif-prompt-actions{flex-direction:column;gap:10px;display:flex}.notif-prompt-btn-primary{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:12px;padding:13px 24px;font-size:15px;font-weight:600;transition:opacity .15s}.notif-prompt-btn-primary:hover{opacity:.9}.notif-prompt-btn-primary:disabled{opacity:.6;cursor:not-allowed}.notif-prompt-btn-secondary{color:var(--muted);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:12px;padding:11px 24px;font-size:14px;font-weight:500;transition:border-color .15s,color .15s}.notif-prompt-btn-secondary:hover{border-color:var(--accent);color:var(--text)}.sidebar-toggle{cursor:pointer;background:0 0;border:none;border-radius:6px;flex-direction:column;gap:5px;padding:6px;display:none}.sidebar-toggle span{background:var(--text);border-radius:2px;width:22px;height:2px;transition:all .25s;display:block}.sidebar-overlay{z-index:150;background:#00000080;display:none;position:fixed;inset:0}@media (width<=768px){.sidebar{z-index:200;height:100vh;position:fixed;top:0;left:0;transform:translate(-100%)}.sidebar.sidebar-open{transform:translate(0)}.sidebar-overlay{display:block}.sidebar-toggle{display:flex}.auth-header{padding:0 16px}.auth-content{padding:20px 16px}.auth-plan-badge{display:none}}:root{--bg:#0f1117;--surface:#181c27;--surface2:#1e2333;--border:#2a3045;--accent:#4f8ef7;--accent2:#7c3aed;--green:#10b981;--red:#ef4444;--yellow:#f59e0b;--text:#e8ecf4;--muted:#6b7a99;--radius:12px}[data-theme=light]{--bg:#f5f6fa;--surface:#fff;--surface2:#f0f2f8;--border:#dde1ef;--accent:#2f6fdd;--accent2:#6d28d9;--green:#059669;--red:#dc2626;--yellow:#d97706;--text:#1a1f2e;--muted:#6b7a99}@media (prefers-color-scheme:light){:root:not([data-theme=dark]){--bg:#f5f6fa;--surface:#fff;--surface2:#f0f2f8;--border:#dde1ef;--accent:#2f6fdd;--accent2:#6d28d9;--green:#059669;--red:#dc2626;--yellow:#d97706;--text:#1a1f2e;--muted:#6b7a99}}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg);color:var(--text);font-family:DM Sans,sans-serif}h2{color:var(--text);margin:0 0 4px;font-family:Syne,sans-serif;font-size:16px;font-weight:700}.app-layout{flex-direction:column;min-height:100vh;display:flex}.main-header{background:var(--surface);border-bottom:1px solid var(--border);z-index:1000;padding:0 32px;position:sticky;top:0}@supports ((-webkit-backdrop-filter:blur(10px)) or (backdrop-filter:blur(10px))){.main-header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#181c27f2}[data-theme=light] .main-header{background:#f5f6faf2}}.header-container{justify-content:space-between;align-items:center;max-width:1400px;height:70px;margin:0 auto;display:flex;position:relative}.logo{background:linear-gradient(135deg, var(--accent), var(--accent2));-webkit-text-fill-color:transparent;z-index:1001;-webkit-background-clip:text;background-clip:text;font-family:Syne,sans-serif;font-size:24px;font-weight:800;text-decoration:none}.mobile-menu-btn{display:none}.main-nav{align-items:center;gap:24px;display:flex}.nav-links{flex-wrap:wrap;align-items:center;gap:24px;display:flex}.main-nav a{color:var(--text);font-size:14px;font-weight:500;text-decoration:none;transition:color .2s}.main-nav a:hover{color:var(--accent)}.main-nav .nav-link{transition:all .2s;position:relative}.main-nav .nav-link.active{color:var(--accent);font-weight:600;position:relative}.main-nav .nav-link.active:after{content:"";background:var(--accent);border-radius:2px;height:2px;position:absolute;bottom:-4px;left:0;right:0}.main-nav .nav-link:hover{color:var(--accent)}.main-nav .nav-link:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:4px}.admin-link{background-color:#1a56db;border-radius:6px;padding:6px 12px;font-weight:700;color:#fff!important}.admin-link:hover{background-color:#0e3f9e}.admin-link.active{transform:scale(.98);box-shadow:0 0 0 2px #3b82f64d;background-color:#0e3f9e!important}.logout-btn{border:1px solid var(--border);color:var(--text);cursor:pointer;background:0 0;border-radius:6px;padding:6px 14px;font-size:13px;transition:all .2s}.logout-btn:hover{border-color:var(--red);color:var(--red)}.btn-register{background:linear-gradient(135deg, var(--accent), var(--accent2));border-radius:8px;padding:8px 16px;color:#fff!important}.desktop-theme-btn{margin-left:8px}.mobile-theme-btn{display:none}.btn-theme{background:var(--surface2);border:1px solid var(--border);color:var(--text);cursor:pointer;border-radius:8px;padding:8px 14px;font-family:DM Sans,sans-serif;font-size:13px;transition:border-color .2s}.btn-theme:hover{border-color:var(--accent)}.mobile-overlay{display:none}.main-content{flex:1;width:100%;max-width:1400px;margin:0 auto;padding:32px}.main-footer{background:var(--surface);border-top:1px solid var(--border);text-align:center;color:var(--muted);padding:24px;font-size:13px}.footer-container{text-align:center;max-width:1400px;margin:0 auto;padding:0 20px}.footer-links{flex-wrap:wrap;justify-content:center;gap:24px;margin-bottom:16px;display:flex}.footer-links a{color:var(--muted);font-size:13px;text-decoration:none;transition:color .2s}.footer-links a:hover{color:var(--accent)}.dashboard{max-width:1400px;margin:0 auto;padding:32px}.dashboard-header{align-items:center;gap:16px;margin-bottom:36px;display:flex}.dashboard-header h1{letter-spacing:-.5px;background:linear-gradient(135deg,#e8ecf4 0%,#4f8ef7 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-family:Syne,sans-serif;font-size:28px;font-weight:800}.header-badge{background:linear-gradient(135deg, var(--accent), var(--accent2));color:#fff;letter-spacing:1px;text-transform:uppercase;border-radius:20px;padding:4px 10px;font-size:11px;font-weight:600}@keyframes slideInMobile{to{opacity:1;transform:translate(0)}}@media (width<=768px){.main-header{padding:0 16px}.header-container{height:60px}.logo{font-size:20px}.main-nav .nav-link.active{background:#1a56db1a;border-radius:8px}.main-nav .nav-link.active:after{display:none}.mobile-menu-btn{cursor:pointer;z-index:1001;background:0 0;border:none;flex-direction:column;justify-content:space-between;width:30px;height:21px;padding:0;display:flex}.mobile-menu-btn span{background:var(--text);border-radius:3px;width:100%;height:3px;transition:all .3s}.mobile-menu-btn.active span:first-child{transform:translateY(9px)rotate(45deg)}.mobile-menu-btn.active span:nth-child(2){opacity:0}.mobile-menu-btn.active span:nth-child(3){transform:translateY(-9px)rotate(-45deg)}.desktop-theme-btn{display:none}.main-nav{background:var(--surface);z-index:999;flex-direction:column;justify-content:space-between;width:80%;max-width:320px;height:100vh;padding:80px 24px 32px;transition:right .3s cubic-bezier(.4,0,.2,1);position:fixed;top:0;right:-100%;overflow-y:auto;box-shadow:-4px 0 20px #0003}.main-nav::-webkit-scrollbar{width:4px}.main-nav::-webkit-scrollbar-track{background:var(--surface2);border-radius:4px}.main-nav::-webkit-scrollbar-thumb{background:var(--accent);border-radius:4px}.main-nav.mobile-open{right:0}.nav-links{flex-direction:column;gap:16px;width:100%}.nav-links a,.nav-links button{text-align:center;opacity:0;width:100%;padding:12px;font-size:16px;animation:.3s forwards slideInMobile;transform:translate(20px)}.nav-links a:first-child{animation-delay:50ms}.nav-links a:nth-child(2){animation-delay:.1s}.nav-links a:nth-child(3){animation-delay:.15s}.nav-links a:nth-child(4){animation-delay:.2s}.nav-links a:nth-child(5){animation-delay:.25s}.nav-links .btn-register{text-align:center;width:100%}.mobile-theme-btn{justify-content:center;width:100%;margin-top:20px;padding:12px;display:flex}.mobile-overlay{z-index:998;background:#00000080;animation:.3s fadeIn;display:block;position:fixed;inset:0}@supports (padding:env(safe-area-inset-top)){.main-nav{padding-top:calc(80px + env(safe-area-inset-top));padding-bottom:calc(32px + env(safe-area-inset-bottom))}}.footer-links{flex-direction:column;gap:12px}.main-footer,.main-content,.dashboard{padding:20px 16px}}@media (width<=480px){.main-nav{width:85%;padding:70px 20px 24px}.nav-links a,.nav-links button{padding:10px;font-size:14px}}.btn-primary,.btn-upload,.btn-upload-batch,.btn-save-note,.btn-save,.btn-view-offer,.btn-confirm,.btn-register{background:linear-gradient(135deg, var(--accent), var(--accent2));color:#fff;cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:10px 20px;font-family:Syne,sans-serif;font-size:14px;font-weight:700;text-decoration:none;transition:all .2s;display:inline-flex}.btn-primary:hover,.btn-upload:hover,.btn-upload-batch:hover,.btn-save-note:hover,.btn-save:hover,.btn-view-offer:hover,.btn-confirm:hover,.btn-register:hover{opacity:.88;transform:translateY(-2px)}.mode-btn.active{background:linear-gradient(135deg, var(--accent), var(--accent2));color:#fff;border-color:#0000}.btn-sm{padding:6px 12px;font-size:12px}.btn-md{padding:8px 16px;font-size:13px}.btn-lg{padding:12px 24px;font-size:16px}.btn-secondary,.btn-cancel,.btn-delete-all,.reset-filters-btn{border:1px solid var(--border);color:var(--text);cursor:pointer;background:0 0;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:8px 16px;font-family:DM Sans,sans-serif;font-size:13px;font-weight:500;text-decoration:none;transition:all .2s;display:inline-flex}.btn-secondary:hover,.btn-cancel:hover,.btn-delete-all:hover,.reset-filters-btn:hover{border-color:var(--accent);color:var(--accent)}.btn-danger,.btn-delete-selected{color:#fff;cursor:pointer;background:linear-gradient(135deg,#ef4444,#dc2626);border:none;border-radius:8px;padding:8px 16px;font-family:Syne,sans-serif;font-size:13px;font-weight:600;transition:all .2s}.btn-danger:hover,.btn-delete-selected:hover{opacity:.88;transform:translateY(-2px)}.icon-btn{cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;margin-right:4px;padding:5px 7px;text-decoration:none;transition:background .15s;display:inline-flex;position:relative}.icon-btn:hover{background:var(--surface2)}a.icon-btn{display:inline-flex}.icon-btn:last-child{margin-right:0}.vivier-tooltip{color:#fff;white-space:nowrap;pointer-events:none;z-index:9999;background:#1e293b;border-radius:5px;padding:4px 9px;font-family:DM Sans,sans-serif;font-size:11px;font-weight:500;animation:.18s forwards tooltip-in;position:fixed;transform:translate(-50%)translateY(-100%)}@keyframes tooltip-in{0%{opacity:0;transform:translate(-50%)translateY(calc(5px - 100%))}to{opacity:1;transform:translate(-50%)translateY(calc(-100% - 6px))}}.btn-view,.btn-edit,.btn-delete,.btn-preview{cursor:pointer;background:0 0;border:none;border-radius:6px;padding:6px 10px;font-size:14px;transition:all .2s}.btn-view{background:#4f8ef726}.btn-edit{background:#f59e0b26}.btn-delete{background:#ef444426}.btn-preview{background:#4f8ef726}.btn-view:hover,.btn-edit:hover,.btn-delete:hover,.btn-preview:hover{opacity:.75;transform:scale(1.08)}.mode-btn{background:var(--surface2);border:1px solid var(--border);color:var(--muted);cursor:pointer;border-radius:8px;padding:6px 14px;font-family:DM Sans,sans-serif;font-size:13px;font-weight:500;transition:all .2s}.btn-primary:disabled,.btn-secondary:disabled,.btn-danger:disabled{opacity:.5;cursor:not-allowed;transform:none}.dd-button{background:var(--surface);border:1px solid var(--border);color:var(--accent);cursor:pointer;border-radius:8px;padding:8px 20px;font-size:13px;transition:all .2s;display:inline-block}.dd-button:hover{border-color:var(--accent);background:#4f8ef70d}.role-btn{background:var(--surface2);border:1.5px solid var(--border);color:var(--text);cursor:pointer;border-radius:8px;flex:1;padding:10px;font-size:14px;transition:all .2s}.role-btn.active{background:linear-gradient(135deg, var(--accent), var(--accent2));color:#fff;border-color:#0000}.btn-large{padding:14px 32px;font-size:16px}.search-input,.form-group input,.form-group select,.form-group textarea{background:var(--bg);border:1.5px solid var(--border);color:var(--text);border-radius:8px;outline:none;padding:10px 14px;font-family:DM Sans,sans-serif;font-size:14px;transition:border-color .2s}.search-input:focus,.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--accent)}.form-group input:disabled,.form-group select:disabled,.form-group textarea:disabled{background:var(--surface2);color:var(--muted);cursor:not-allowed;opacity:.7}.search-input::placeholder{color:var(--muted)}.form-group{flex-direction:column;gap:6px;display:flex}.form-group label{color:var(--muted);text-transform:uppercase;letter-spacing:.5px;font-size:12px;font-weight:600}.form-group textarea{resize:vertical}.search-wrapper{flex:2;min-width:300px;position:relative}.search-wrapper .search-input{width:100%;padding:12px 40px 12px 16px;font-size:15px}.clear-search{cursor:pointer;color:var(--muted);background:0 0;border:none;justify-content:center;align-items:center;padding:4px;font-size:18px;display:flex;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.clear-search:hover{color:var(--red)}.search-result-count{color:var(--accent);white-space:nowrap;background:#4f8ef71a;border-radius:20px;padding:2px 8px;font-size:12px;font-weight:600;position:absolute;top:50%;right:52px;transform:translateY(-50%)}.filters-form{flex-wrap:wrap;align-items:flex-end;gap:12px;width:100%;display:flex}.filters-form select{background:var(--bg);border:1.5px solid var(--border);min-width:160px;color:var(--text);cursor:pointer;border-radius:8px;outline:none;flex:1;padding:12px 14px;font-family:DM Sans,sans-serif;font-size:14px;transition:border-color .2s}.filters-form select:focus,.filters-form select:hover{border-color:var(--accent)}.reset-filters-container{text-align:right;margin-top:16px}.file-label{background:var(--surface2);border:1.5px dashed var(--border);cursor:pointer;border-radius:8px;flex:1;align-items:center;gap:10px;min-width:240px;padding:10px 16px;transition:border-color .2s,background .2s;display:flex}.file-label:hover{border-color:var(--accent);background:#4f8ef70f}.file-label input[type=file]{display:none}.file-icon{flex-shrink:0;font-size:18px}.file-text{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:400;overflow:hidden}.file-text.selected{color:var(--accent);font-weight:500}.drag-drop-zone{border:1.5px dashed var(--border);text-align:center;background:var(--surface2);cursor:pointer;border-radius:10px;padding:24px;transition:all .2s}.drag-drop-zone.dragging{border-color:var(--accent);background:#4f8ef70d}.dd-content{flex-direction:column;align-items:center;gap:8px;display:flex}.dd-icon{font-size:32px}.dd-content p{color:var(--text);margin:0;font-size:14px}.dd-content small{color:var(--muted);font-size:12px}.statut-select{background:var(--bg);border:1px solid var(--border);color:var(--text);cursor:pointer;border-radius:6px;outline:none;padding:5px 10px;font-family:DM Sans,sans-serif;font-size:13px}.role-selector{gap:12px;margin-bottom:24px;display:flex}.language-row input,.language-row select{background:var(--bg);border:1.5px solid var(--border);width:100%;color:var(--text);border-radius:8px;outline:none;padding:10px 14px;font-family:DM Sans,sans-serif;font-size:14px;transition:border-color .2s}.language-row input:focus,.language-row select:focus{border-color:var(--accent)}.language-row select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-position:right 10px center;background-repeat:no-repeat;background-size:16px}.language-row .btn-danger{white-space:nowrap;margin:0;padding:10px 16px}@media (width<=768px){.language-row{grid-template-columns:1fr;gap:8px}.language-row .btn-danger{width:100%}.search-wrapper{min-width:100%}.filters-form{flex-direction:column;align-items:stretch}.filters-form select,.filters-form .search-wrapper{width:100%;min-width:100%}}.table-container{width:100%;overflow-x:auto}table{border-collapse:collapse;width:100%}th{background:var(--surface2);text-align:left;color:var(--muted);text-transform:uppercase;letter-spacing:.8px;border-bottom:1px solid var(--border);padding:12px 16px;font-size:11px;font-weight:600}td{vertical-align:middle;border-bottom:1px solid var(--border);padding:14px 16px;font-size:14px}tbody tr:last-child td{border-bottom:none}tbody tr{transition:background .15s}tbody tr:hover{background:var(--surface2)}tbody tr.selected{background:#4f8ef714}.note-preview{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;max-width:150px;font-size:13px;font-style:italic;display:inline-block;overflow:hidden}.checkbox-label{cursor:pointer;align-items:center;gap:8px;font-size:13px;display:flex}.modal{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#000000b3;justify-content:center;align-items:center;padding:20px;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.modal-content{background:var(--surface);border:1px solid var(--border);border-radius:16px;width:100%;max-width:560px;max-height:85vh;padding:32px;animation:.25s slideUp;overflow-y:auto}.modal-content h2{margin-bottom:24px;font-size:20px;font-weight:700}.confirm-modal{text-align:center;max-width:420px}.confirm-modal p{margin:16px 0;line-height:1.5}.confirm-actions{justify-content:center;gap:12px;margin-top:24px;display:flex}.close-modal{background:var(--surface2);border:1px solid var(--border);color:var(--text);cursor:pointer;border-radius:8px;width:100%;margin-top:20px;padding:10px 24px;font-family:DM Sans,sans-serif;font-size:14px;transition:border-color .2s}.close-modal:hover{border-color:var(--muted)}.candidat-details p{border-bottom:1px solid var(--border);margin:0;padding:10px 0;font-size:14px;line-height:1.6}.candidat-details p:last-of-type{border-bottom:none}.notes-section{border-top:1px solid var(--border);flex-direction:column;gap:10px;margin-top:20px;padding-top:20px;display:flex}.notes-section strong{color:var(--muted);text-transform:uppercase;letter-spacing:.5px;font-size:12px;font-weight:600;display:block}.notes-section textarea{background:var(--bg);border:1.5px solid var(--border);width:100%;color:var(--text);resize:vertical;border-radius:8px;outline:none;padding:10px 14px;font-family:DM Sans,sans-serif;font-size:14px}.edit-form{flex-direction:column;gap:16px;display:flex}.edit-actions{justify-content:flex-end;gap:12px;margin-top:8px;display:flex}.cv-actions{margin:16px 0}.btn-preview-cv{background:linear-gradient(135deg, var(--accent), var(--accent2));color:#fff;cursor:pointer;border:none;border-radius:8px;width:100%;padding:10px 20px;font-family:Syne,sans-serif;font-size:13px;font-weight:700}.modal-error{border-left:3px solid var(--red);color:var(--red);white-space:pre-line;background:#ef444426;border-radius:8px;margin-bottom:20px;padding:12px 16px;font-size:13px}.prefill-message{border-left:3px solid var(--accent);color:var(--accent);background:#3b82f61a;border-radius:8px;margin-bottom:20px;padding:10px 16px;font-size:13px}.form-group small{margin-top:4px;display:block}.toast-notification.toast-error{border-left:3px solid var(--red);color:var(--red);background:#ef444426}.form-group label[for]:after{content:"*";color:var(--red);margin-left:4px}.modal-error,.prefill-message{animation:.3s slideIn}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.wizard-modal{width:90%;max-width:650px}.step-indicator{border-bottom:1px solid var(--border);justify-content:space-between;margin-bottom:32px;padding-bottom:16px;display:flex}.step-indicator span{text-align:center;color:var(--muted);flex:1;font-size:14px;position:relative}.step-indicator span.active{color:var(--accent)}.step-indicator .step-number{text-align:center;background:var(--surface2);border-radius:50%;width:30px;height:30px;margin-right:8px;font-weight:700;line-height:30px;display:inline-block}.step-indicator span.active .step-number{background:var(--accent);color:#fff}.step-indicator .step-label{font-size:14px}.form-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.salary-range{align-items:center;gap:12px;display:flex}.salary-range input{flex:1}.salary-range span{color:var(--muted)}.form-hint{color:var(--muted);margin-top:4px;font-size:11px;display:block}.form-hint.error{color:var(--red)}.form-hint.success{color:var(--green)}.create-offer-btn{text-align:right;margin-bottom:24px}.details-cell,.performance-cell,.actions-cell{font-size:13px}.actions-cell{white-space:nowrap}.actions-cell button,.actions-cell a{margin-right:8px}@media (width<=768px){.form-row{grid-template-columns:1fr;gap:12px}.step-indicator .step-label{display:none}.step-indicator .step-number{margin-right:0}}.matching-modal{max-width:880px}.matching-modal__header{align-items:center;gap:10px;margin-bottom:4px;display:flex}.matching-modal__header svg{color:var(--accent);flex-shrink:0}.matching-modal__intro{color:var(--muted);margin-bottom:18px;font-size:13.5px;line-height:1.5}.matching-modal__intro strong{color:var(--text)}.matching-modal__banner{color:var(--text);border-left:3px solid var(--yellow);background:#f59e0b1a;border-radius:8px;align-items:flex-start;gap:10px;margin-bottom:18px;padding:10px 14px;font-size:13px;display:flex}.matching-modal__banner svg{color:var(--yellow);flex-shrink:0;margin-top:1px}.matching-modal__loading,.matching-modal__empty{color:var(--muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:48px 0;display:flex}.matching-spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:28px;height:28px;animation:.7s linear infinite matching-spin}@keyframes matching-spin{to{transform:rotate(360deg)}}.matching-candidate-list{flex-direction:column;gap:14px;display:flex}.matching-candidate-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:10px;padding:18px 20px;display:flex}.matching-candidate-card__top{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.matching-candidate-card__identity{align-items:flex-start;gap:12px;min-width:0;display:flex}.matching-rank{background:var(--surface2);border:1px solid var(--border);width:28px;height:28px;color:var(--muted);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-family:Syne,sans-serif;font-size:13px;font-weight:700;display:flex}.matching-rank--top{background:linear-gradient(135deg, var(--accent), var(--accent2));color:#fff;border-color:#0000}.matching-candidate-card__name{color:var(--text);font-size:14.5px;font-weight:700}.matching-candidate-card__title{color:var(--muted);font-weight:500}.matching-candidate-card__meta{color:var(--muted);margin-top:2px;font-size:12.5px}.matching-score{text-align:right;flex-shrink:0;min-width:84px}.matching-score__value{font-family:Syne,sans-serif;font-size:22px;font-weight:700;line-height:1}.matching-score--high{color:var(--green)}.matching-score--mid{color:var(--yellow)}.matching-score--low{color:var(--muted)}.matching-score__label{color:var(--muted);text-transform:uppercase;letter-spacing:.4px;margin-top:2px;font-size:10.5px}.matching-score__bar{background:var(--border);border-radius:2px;height:4px;margin-top:8px;overflow:hidden}.matching-score__bar-fill{border-radius:2px;height:100%;transition:width .4s}.matching-score__bar-fill.matching-score--high{background:var(--green)}.matching-score__bar-fill.matching-score--mid{background:var(--yellow)}.matching-score__bar-fill.matching-score--low{background:var(--muted)}.matching-justification-label{color:var(--muted);text-transform:uppercase;letter-spacing:.4px;font-size:11px;font-weight:600}.matching-justification-text{color:var(--text);margin-top:2px;font-size:13px;line-height:1.5}.matching-skills{flex-wrap:wrap;gap:6px;display:flex}.matching-skill-chip{background:var(--surface2);border:1px solid var(--border);color:var(--muted);border-radius:16px;padding:3px 10px;font-size:11.5px}.matching-skill-chip--matched{color:var(--green);background:#10b9811f;border-color:#10b9814d;font-weight:500}.matching-detail-toggle{color:var(--accent);cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;width:fit-content;padding:0;font-size:12.5px;font-weight:500;display:inline-flex}.matching-detail-toggle svg{transition:transform .2s}.matching-breakdown{background:var(--surface2);border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:8px;padding:12px 14px;display:flex}.matching-breakdown__row{align-items:flex-start;gap:8px;font-size:12.5px;line-height:1.4;display:flex}.matching-breakdown__row svg{flex-shrink:0;margin-top:1px}.matching-breakdown__row--ok svg{color:var(--green)}.matching-breakdown__row--gap svg{color:var(--muted)}.matching-breakdown__label{color:var(--text);font-weight:600}.matching-breakdown__points,.matching-breakdown__detail{color:var(--muted)}.matching-breakdown__note{color:var(--muted);margin-top:2px;font-size:11px;font-style:italic}.matching-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:2px;display:flex}.matching-feedback-group{gap:6px;margin-left:auto;display:flex}.matching-feedback-btn{border:1px solid var(--border);color:var(--muted);cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:6px;padding:6px 12px;font-family:DM Sans,sans-serif;font-size:12.5px;font-weight:500;transition:all .15s;display:inline-flex}.matching-feedback-btn:hover:not(:disabled){border-color:var(--muted);color:var(--text)}.matching-feedback-btn:disabled{opacity:.6;cursor:not-allowed}.matching-feedback-btn--good.is-active{border-color:var(--green);color:var(--green);background:#10b9811f}.matching-feedback-btn--bad.is-active{border-color:var(--red);color:var(--red);background:#ef44441f}.matching-cta{border-radius:var(--radius);background:linear-gradient(135deg,#4f8ef71a,#7c3aed1a);border:1px solid #4f8ef74d;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-bottom:20px;padding:16px 20px;display:flex}.matching-cta__text{align-items:center;gap:12px;min-width:0;display:flex}.matching-cta__icon{background:linear-gradient(135deg, var(--accent), var(--accent2));color:#fff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.matching-cta__title{color:var(--text);font-family:Syne,sans-serif;font-size:14.5px;font-weight:700}.matching-cta__subtitle{color:var(--muted);margin-top:1px;font-size:12.5px}.matching-cta__button{flex-shrink:0}.statut-badge{border-radius:20px;margin-left:8px;padding:3px 10px;font-size:12px;font-weight:600;display:inline-block}.statut-en_attente{color:var(--yellow);background:#f59e0b26}.statut-oui{color:var(--green);background:#10b98126}.statut-non{color:var(--red);background:#ef444426}.statut-peut_etre{color:#a78bfa;background:#a78bfa26}.pagination{border-top:1px solid var(--border);justify-content:center;align-items:center;gap:16px;padding:20px;display:flex}.pagination button{background:var(--surface2);border:1px solid var(--border);color:var(--text);cursor:pointer;border-radius:8px;padding:8px 18px;font-family:DM Sans,sans-serif;font-size:14px;transition:border-color .2s}.pagination button:hover:not(:disabled){border-color:var(--accent)}.pagination button:disabled{opacity:.4;cursor:not-allowed}.pagination span{color:var(--muted);font-size:14px}.toast-notification{background:var(--surface);border:1px solid var(--border);z-index:1000;border-radius:10px;align-items:center;gap:12px;padding:12px 20px;animation:.3s toastSlideIn;display:flex;position:fixed;top:20px;right:20px;box-shadow:0 4px 12px #0003}.toast-notification.toast-success{border-left:3px solid var(--green)}.toast-notification.toast-warning{border-left:3px solid var(--yellow)}.toast-notification.toast-error{border-left:3px solid var(--red)}.toast-notification button{color:var(--muted);cursor:pointer;background:0 0;border:none;font-size:18px}@keyframes toastSlideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.tags-input-container{position:relative}.tags-list{border:1px solid var(--border);background:var(--surface);cursor:text;border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px;min-height:42px;padding:8px;display:flex}.tags-list:focus-within{border-color:var(--accent);outline:none}.tag-item{background:var(--accent);color:#fff;border-radius:20px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;display:inline-flex}.tag-item button{color:#fff;cursor:pointer;background:0 0;border:none;margin-left:4px;padding:0;font-size:14px}.tag-item button:hover{opacity:.7}.tags-input{background:0 0;border:none;outline:none;flex:1;min-width:120px;padding:4px}.tags-input::placeholder{color:var(--muted)}.tags-suggestions{background:var(--surface);border:1px solid var(--border);z-index:10;border-radius:8px;max-height:200px;margin-top:4px;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 4px 12px #0000001a}.suggestion-item{cursor:pointer;padding:8px 12px;font-size:13px;transition:background .2s}.suggestion-item:hover{background:var(--surface2)}.popular-tags-section{margin-top:12px}.popular-tags-label{color:var(--muted);margin-bottom:8px;font-size:12px;display:block}.popular-tags-list{flex-wrap:wrap;gap:8px;display:flex}.popular-tag-btn{background:var(--surface2);border:1px solid var(--border);cursor:pointer;color:var(--text);border-radius:20px;padding:4px 12px;font-size:12px;transition:all .2s}.popular-tag-btn:hover{background:var(--accent);color:#fff;border-color:var(--accent)}.skills-browser{margin-top:16px}.category-tabs{flex-wrap:wrap;gap:8px;margin:8px 0 12px;display:flex}.category-tab{background:var(--surface2);border:1px solid var(--border);cursor:pointer;color:var(--text);border-radius:20px;padding:6px 14px;font-size:12px;transition:all .2s}.category-tab:hover{border-color:var(--accent);color:var(--accent)}.category-tab.active{background:var(--accent);color:#fff;border-color:var(--accent)}.category-tags{flex-wrap:wrap;gap:8px;min-height:40px;padding:4px 0;display:flex}.main-search{margin-bottom:20px}.quick-filters{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:16px;display:flex}.quick-filters-label{color:var(--muted);font-size:13px}.quick-filter-chip{background:var(--surface2);border:1px solid var(--border);cursor:pointer;color:var(--text);border-radius:20px;padding:6px 14px;font-size:13px;transition:all .2s}.quick-filter-chip:hover{background:var(--surface);border-color:var(--accent)}.quick-filter-chip.active{background:var(--accent);color:#fff;border-color:var(--accent)}.advanced-filters{margin-bottom:16px}.advanced-toggle{text-align:left;background:var(--surface2);border:1px solid var(--border);cursor:pointer;width:100%;color:var(--text);border-radius:8px;justify-content:space-between;align-items:center;padding:10px 12px;font-size:13px;display:flex}.advanced-toggle:hover{background:var(--surface);border-color:var(--accent);color:var(--accent)}.active-dot{background:var(--accent);border-radius:50%;width:8px;height:8px;margin-left:8px;display:inline-block}.advanced-filters-panel{border-top:1px solid var(--border);margin-top:16px;padding-top:16px}.filter-row{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:16px;display:grid}.filter-group label{color:var(--muted);text-transform:none;letter-spacing:normal;margin-bottom:6px;font-size:12px;display:block}.filter-group select,.filter-input{border:1.5px solid var(--border);background:var(--bg);width:100%;color:var(--text);border-radius:8px;outline:none;padding:8px 12px;font-size:14px}.filter-group select:focus,.filter-input:focus{border-color:var(--accent)}.tags-filter-section{border-top:1px solid var(--border);margin-top:16px;padding-top:16px}.tags-toggle-btn{text-align:left;background:var(--surface2);border:1px solid var(--border);cursor:pointer;width:100%;color:var(--text);border-radius:8px;align-items:center;gap:8px;padding:10px 12px;font-size:13px;display:flex}.tags-toggle-btn:hover{background:var(--surface);border-color:var(--accent);color:var(--accent)}.tags-count{color:var(--accent);margin-left:auto;font-size:12px}.tags-filter-panel{margin-top:12px}.tags-filter-header{color:var(--muted);justify-content:space-between;align-items:center;margin-bottom:12px;font-size:12px;display:flex}.clear-tags-btn{background:var(--surface2);border:1px solid var(--border);cursor:pointer;border-radius:16px;padding:4px 10px;font-size:11px}.clear-tags-btn:hover{background:var(--red);color:#fff;border-color:var(--red)}.tags-filter-list{flex-wrap:wrap;gap:8px;max-height:200px;padding:4px;display:flex;overflow-y:auto}.tag-filter-btn{background:var(--surface2);border:1px solid var(--border);cursor:pointer;color:var(--text);border-radius:20px;padding:6px 12px;font-size:12px;transition:all .2s}.tag-filter-btn:hover{background:var(--surface);border-color:var(--accent);color:var(--text)}.tag-filter-btn.active{background:var(--accent);color:#fff;border-color:var(--accent)}.active-filters{border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:12px;margin-top:16px;padding-top:16px;display:flex}.active-filters-label{color:var(--muted);font-size:12px}.active-filters-list{flex-wrap:wrap;flex:1;gap:8px;display:flex}.active-filter{background:var(--accent);color:#fff;border-radius:20px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;display:inline-flex}.active-filter button{color:#fff;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0 2px;font-size:14px;display:flex}.active-filter button:hover{opacity:.8}.clear-all-filters{background:var(--surface2);border:1px solid var(--border);cursor:pointer;border-radius:20px;padding:4px 12px;font-size:12px;transition:all .2s}.clear-all-filters:hover{background:var(--red);color:#fff;border-color:var(--red)}.offer-tags{flex-wrap:wrap;gap:5px;margin:8px 0;display:flex}@media (width<=768px){.filter-row{grid-template-columns:1fr;gap:12px}.active-filters,.quick-filters{flex-direction:column;align-items:flex-start}.quick-filters-list{flex-wrap:wrap;gap:8px;display:flex}}.offer-tag{color:var(--accent);background:#4f8ef71a;border:1px solid #4f8ef733;border-radius:16px;padding:4px 10px;font-size:11px;font-weight:500}.offer-tag-more{background:var(--surface2);border:1px solid var(--border);color:var(--muted);border-radius:16px;padding:4px 8px;font-size:11px}.dashboard-loading{max-width:1400px;margin:0 auto;padding:24px}.skeleton{background:linear-gradient(90deg, var(--surface2) 25%, var(--surface) 50%, var(--surface2) 75%);background-size:200% 100%;animation:1.5s infinite shimmer}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-dashboard-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.skeleton-header-left,.skeleton-header-right{align-items:center;gap:12px;display:flex}.skeleton-stats{gap:20px;margin-bottom:32px;display:flex}.skeleton-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:20px}.skeleton-offers,.skeleton-candidatures{background:var(--surface);border:1px solid var(--border);border-radius:16px;margin-bottom:32px;padding:20px}.skeleton-offers-header,.skeleton-candidatures-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:12px;display:flex}.skeleton-table-header,.skeleton-table-row{border-bottom:1px solid var(--border);gap:16px;padding:12px 0;display:flex}.skeleton-table-header{margin-bottom:8px;padding-bottom:16px}.skeleton-table-row{padding:16px 0}.candidat-fiche-skeleton{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:24px}.fiche-header-skeleton{border-bottom:1px solid var(--border);gap:24px;margin-bottom:32px;padding-bottom:24px;display:flex}.avatar-skeleton{flex-shrink:0}.info-skeleton{flex:1}.badges-skeleton{gap:12px;margin-top:16px;display:flex}.fiche-section-skeleton{border-bottom:1px solid var(--border);margin-bottom:24px;padding-bottom:16px}.fiche-section-skeleton:last-child{border-bottom:none}.skeleton-cards{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;display:grid}.skeleton-card-item{background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow:hidden}@media (width<=768px){.skeleton-stats{flex-wrap:wrap}.skeleton-table-header,.skeleton-table-row{gap:8px}.fiche-header-skeleton{text-align:center;flex-direction:column;align-items:center}.badges-skeleton{justify-content:center}}.stats{grid-template-columns:repeat(5,1fr);gap:16px;margin-bottom:28px;display:grid}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:6px;padding:20px;transition:border-color .2s,transform .2s;display:flex}.stat-card:hover{border-color:var(--accent);transform:translateY(-2px)}.stat-label{color:var(--muted);text-transform:uppercase;letter-spacing:.5px;font-size:12px;font-weight:500}.stat-value{font-family:Syne,sans-serif;font-size:32px;font-weight:700;line-height:1}.stat-card.total .stat-value{color:var(--accent)}.stat-card.attente .stat-value{color:var(--yellow)}.stat-card.accepte .stat-value{color:var(--green)}.stat-card.refuse .stat-value{color:var(--red)}.stat-card.maybe .stat-value{color:#a78bfa}.upload-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:24px;padding:20px 24px}.upload-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.upload-header h2{color:var(--muted);text-transform:uppercase;letter-spacing:.8px;margin:0;font-size:14px;font-weight:700}.upload-single{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.upload-multiple{width:100%}.selected-files{background:var(--surface2);border:1px solid var(--border);border-radius:8px;margin-top:16px;padding:12px 16px}.selected-files strong{color:var(--muted);margin-bottom:8px;font-size:12px;display:block}.selected-files ul{margin:0 0 12px;padding-left:20px}.selected-files li{color:var(--text);font-size:12px}.batch-result{background:var(--surface2);border:1px solid var(--border);border-radius:8px;margin-top:16px;padding:12px 16px}.batch-result.success{border-left:3px solid var(--green)}.batch-result.has-errors{border-left:3px solid var(--red)}.batch-result h4{color:var(--text);margin:0 0 8px;font-size:13px;font-weight:700}.batch-result p{margin:4px 0;font-size:12px}.batch-result details{margin-top:8px}.batch-result summary{cursor:pointer;color:var(--muted);font-size:11px}.batch-result ul{margin:8px 0 0;padding-left:16px}.batch-result li{color:var(--red);margin:4px 0;font-size:11px}.candidats-list{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.candidats-list-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.candidats-list-header h2{font-size:16px;font-weight:700}.selection-bar{background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius);justify-content:space-between;align-items:center;margin-bottom:20px;padding:12px 20px;display:flex}.selection-left{align-items:center;gap:16px;display:flex}.selection-count{color:var(--accent);background:#4f8ef71a;border-radius:20px;padding:4px 10px;font-size:12px}.selection-right{gap:12px;display:flex}.actions{white-space:nowrap;gap:6px;display:flex}.limit-warning{color:var(--red);align-items:center;gap:6px;margin-top:8px;font-size:12px;display:flex}.limit-warning:before{content:"⚠️";font-size:12px}.plan-badge{background:linear-gradient(135deg, var(--accent), var(--accent2));color:#fff;border-radius:20px;padding:4px 12px;font-size:12px;font-weight:600}.plan-starter{color:#fff;background:linear-gradient(135deg,#10b981,#059669)}.plan-pro{color:#fff;background:linear-gradient(135deg,#1a56db,#1e40af)}.trial-badge{background:#fff3;border-radius:12px;margin-left:4px;padding:2px 6px;font-weight:700}.offer-limit-warning{border-left:4px solid var(--yellow);background:#f59e0b26;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;padding:12px 20px;display:flex}.warning-content{align-items:center;gap:12px;display:flex}.warning-content span:first-child{font-size:24px}.warning-content strong{color:var(--yellow)}.warning-content p{color:var(--muted);margin:0;font-size:13px}.trial-banner{color:#fff;text-align:center;background:linear-gradient(135deg,#1a56db,#4f8ef7);border-radius:8px;margin-bottom:24px;padding:12px 20px;font-size:14px}.warning-banner{border-left:4px solid var(--yellow);background:#f59e0b26;border-radius:8px;flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:24px;padding:16px 20px;display:flex}.warning-banner>span:first-child{font-size:28px}.warning-banner>div{flex:1}.warning-banner strong{color:var(--yellow);margin-bottom:4px;display:block}.warning-banner p{color:var(--muted);margin:0;font-size:13px}.subscription-stats{grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px;display:grid}@media (width<=768px){.stats{grid-template-columns:repeat(2,1fr);gap:12px}.offer-limit-warning,.warning-content{text-align:center;flex-direction:column}}.header-info{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.dashboard-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.offers-grid{grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px;padding:20px;display:grid}.offer-card-item{background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;padding:20px;transition:all .2s;display:flex}.offer-card-item:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.offer-card-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:12px;display:flex}.offer-card-header h3{color:var(--text);flex:1;margin:0;font-family:Syne,sans-serif;font-size:18px;font-weight:700}.offer-badge{color:var(--accent);white-space:nowrap;background:#4f8ef726;border-radius:20px;padding:4px 10px;font-size:11px;font-weight:600}.offer-company{color:var(--accent);margin:8px 0 4px;font-size:14px;font-weight:600}.offer-sector{color:var(--muted);margin:0 0 4px;font-size:13px}.offer-location{color:var(--muted);align-items:center;gap:4px;margin:0 0 4px;font-size:13px;display:flex}.offer-work-mode{color:var(--text);background:#4f8ef71a;border-radius:20px;width:fit-content;margin:8px 0;padding:4px 12px;font-size:14px;font-weight:600}.offer-salary{color:var(--green);background:#10b9811a;border-radius:20px;width:fit-content;margin:8px 0;padding:4px 12px;font-size:14px;font-weight:700;display:inline-block}.offer-stats{color:var(--muted);border-top:1px solid var(--border);border-bottom:1px solid var(--border);gap:16px;margin:12px 0;padding:10px 0;font-size:13px;display:flex}.offer-stats span{align-items:center;gap:4px;display:flex}.offer-description-preview{color:var(--text);opacity:.9;margin:12px 0;font-size:13px;line-height:1.5}.offer-card-footer{justify-content:flex-end;align-items:center;gap:8px;margin-top:auto;padding-top:12px;display:flex}.match-score-badge{white-space:nowrap;background:0 0;border:1px solid;border-radius:12px;padding:3px 9px;font-size:11px;font-weight:700;display:inline-block}.btn-applied{color:#059669;cursor:default;white-space:nowrap;background:#0596691a;border:1px solid #05966940;border-radius:6px;padding:6px 14px;font-size:13px;font-weight:600}.filters-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:24px;padding:20px 24px}.filters-section h2{color:var(--muted);text-transform:uppercase;letter-spacing:.8px;margin-bottom:14px;font-size:14px;font-weight:700}.no-results{text-align:center;color:var(--muted);padding:60px 20px;font-size:15px}.no-results button{margin-top:16px}.offers-count{color:var(--muted);font-size:14px}.note-preview.clickable{cursor:pointer;color:var(--accent);word-break:break-word;font-size:13px;transition:color .2s}.note-preview.clickable:hover{color:var(--accent2);text-decoration:underline}.note-empty{color:var(--muted);font-style:italic}.note-empty:hover{color:var(--accent);font-style:normal}.statut-select{border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:6px;padding:6px 12px;font-size:13px;transition:border-color .2s}.statut-select:hover{border-color:var(--accent)}.statut-select:focus{border-color:var(--accent);outline:none}@media (width<=768px){.offers-grid{grid-template-columns:1fr;gap:16px;padding:16px}.offer-card-header{flex-direction:column;align-items:flex-start}.offer-card-header h3{font-size:16px}.offer-stats{flex-direction:column;gap:8px}.offer-work-mode,.offer-salary{font-size:12px}.search-wrapper{min-width:100%}.filters-form select{min-width:calc(50% - 6px)}}@media (width<=480px){.filters-form{flex-direction:column;align-items:stretch}.filters-form select,.filters-form .search-wrapper{width:100%;min-width:100%}}.offer-link{transition:color .2s}.offer-link:hover{color:var(--accent)!important;text-decoration:underline!important}.auth-container{background:var(--bg);justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.auth-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);width:100%;max-width:480px;padding:40px}.auth-card h1{text-align:center;margin-bottom:8px;font-family:Syne,sans-serif;font-size:28px;font-weight:700}.auth-subtitle{color:var(--muted);text-align:center;margin-bottom:32px}.auth-error{border:1px solid var(--red);color:var(--red);text-align:center;background:#ef44441a;border-radius:8px;margin-bottom:20px;padding:12px;font-size:14px}.role-cards{grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:8px;display:grid}.role-card{text-align:left;background:var(--surface2);border:1.5px solid var(--border);color:var(--text);cursor:pointer;border-radius:14px;flex-direction:column;align-items:flex-start;gap:4px;padding:16px 14px 14px;transition:transform .2s,box-shadow .2s,border-color .2s;display:flex;position:relative;overflow:hidden}.role-card:before{content:"";background:linear-gradient(90deg, var(--accent), var(--accent2));transform-origin:0;height:3px;transition:transform .2s;position:absolute;top:0;left:0;right:0;transform:scaleX(0)}.role-card:hover{border-color:#0000;transform:translateY(-3px);box-shadow:0 12px 24px -10px #4f8ef766}.role-card:hover:before{transform:scaleX(1)}.role-card strong{font-size:14px;font-weight:700}.role-card span{color:var(--muted);font-size:11.5px;line-height:1.35}@media (width<=480px){.role-cards{grid-template-columns:1fr}.role-card{flex-direction:row;align-items:baseline;gap:8px;padding:14px 16px}.role-card span{flex:1}}.role-back-link{color:var(--accent);cursor:pointer;background:0 0;border:none;margin-bottom:20px;padding:0;font-size:13px;display:inline-block}.role-back-link:hover{text-decoration:underline}.auth-card .form-group{margin-bottom:20px}.auth-card .form-group label{color:var(--text);margin-bottom:6px;font-size:13px;font-weight:600;display:block}.auth-card .form-group input,.auth-card .form-group select{background:var(--bg);border:1.5px solid var(--border);width:100%;color:var(--text);border-radius:8px;padding:12px;font-size:14px}.auth-card button[type=submit]{background:linear-gradient(135deg, var(--accent), var(--accent2));color:#fff;cursor:pointer;border:none;border-radius:8px;width:100%;padding:12px;font-size:16px;font-weight:600;transition:opacity .2s}.auth-card button[type=submit]:disabled{opacity:.6;cursor:not-allowed}.auth-footer{text-align:center;color:var(--muted);margin-top:24px;font-size:14px}.auth-footer a{color:var(--accent);text-decoration:none}.auth-footer a:hover{text-decoration:underline}.auth-success{border:1px solid var(--green);color:var(--green);text-align:center;white-space:pre-line;background:#10b98126;border-radius:8px;margin-bottom:20px;padding:12px;font-size:14px}.landing-page{color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,sans-serif;line-height:1.5}.landing-page .container{max-width:1280px;margin:0 auto;padding:0 24px}.landing-page h1{letter-spacing:-.02em;font-size:56px;font-weight:800;line-height:1.1}.landing-page h2{letter-spacing:-.01em;font-size:36px;font-weight:700}.landing-page h3{font-size:22px;font-weight:600}@media (width<=768px){.landing-page h1{font-size:36px}.landing-page h2{font-size:28px}.landing-page h3{font-size:20px}}@media (width<=480px){.landing-page h1{font-size:32px}.landing-page h2{font-size:24px}}.landing-page .btn-primary,.landing-page .btn-secondary{cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:14px 32px;font-size:16px;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.landing-page .btn-large{padding:16px 40px;font-size:18px}.landing-page .btn-primary{background:linear-gradient(135deg, var(--accent), var(--accent2));color:#fff;box-shadow:0 4px 14px #4f8ef740}.landing-page .btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 20px #4f8ef759}.landing-page .btn-secondary{color:var(--text);border:1px solid var(--border);background:0 0}.landing-page .btn-secondary:hover{border-color:var(--accent);background:#4f8ef70d;transform:translateY(-2px)}.landing-page .hero,.landing-page .problem-section,.landing-page .solution-section,.landing-page .differentiators-section,.landing-page .two-columns,.landing-page .mobile-section,.landing-page .social-proof,.landing-page .pricing-section,.landing-page .cta-section{padding:100px 0}@media (width<=768px){.landing-page .hero,.landing-page .problem-section,.landing-page .solution-section,.landing-page .differentiators-section,.landing-page .two-columns,.landing-page .mobile-section,.landing-page .social-proof,.landing-page .pricing-section,.landing-page .cta-section{padding:60px 0}}.landing-page .hero{background:linear-gradient(135deg, var(--bg) 0%, var(--surface) 100%);text-align:center;border-bottom:1px solid var(--border);position:relative;overflow:hidden}.landing-page .hero:before{content:"";pointer-events:none;background:radial-gradient(circle at 50% 0,#4f8ef714,#0000 70%);height:400px;position:absolute;top:0;left:0;right:0}.landing-page .hero-badge{color:var(--accent);letter-spacing:.3px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#4f8ef71f;border-radius:100px;margin-bottom:28px;padding:8px 20px;font-size:13px;font-weight:500;display:inline-block}.landing-page .hero .text-gradient{background:linear-gradient(135deg, var(--accent), var(--accent2));color:#0000;-webkit-background-clip:text;background-clip:text}.landing-page .hero-subtitle{color:var(--muted);max-width:600px;margin:0 auto 40px;font-size:18px}.landing-page .hero-buttons{flex-wrap:wrap;justify-content:center;gap:20px;margin-bottom:32px;display:flex}.landing-page .hero-note{color:var(--muted);opacity:.7;font-size:13px}.landing-page .hero-candidate-link{border:1px solid var(--accent);color:var(--accent);border-radius:100px;align-items:center;gap:6px;margin-top:24px;padding:8px 18px;font-size:14px;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.landing-page .hero-candidate-link:hover{background:#4f8ef71a;transform:translateY(-1px)}.landing-page .problem-grid,.landing-page .solution-grid{flex-wrap:wrap;justify-content:center;gap:32px;max-width:1200px;margin:0 auto;display:flex}.landing-page .problem-card,.landing-page .solution-card{background:var(--bg);border:1px solid var(--border);border-radius:20px;flex-direction:column;flex:280px;min-width:250px;max-width:350px;padding:32px 24px;transition:all .3s;display:flex}.landing-page .problem-card:hover,.landing-page .solution-card:hover{border-color:var(--accent);transform:translateY(-4px)}.landing-page .problem-card h3,.landing-page .solution-card h3{color:var(--text);min-height:52px;margin-bottom:16px;font-size:20px;font-weight:600;line-height:1.3}.landing-page .problem-card p,.landing-page .solution-card p{color:var(--muted);flex:1;margin:0;font-size:14px;line-height:1.6}.landing-page .problem-section{background:var(--surface);text-align:center}.landing-page .problem-section h2{margin-bottom:48px}.landing-page .solution-section{background:var(--bg);text-align:center}.landing-page .solution-section h2{margin-bottom:48px}.landing-page .stats-section{background:linear-gradient(135deg, var(--surface) 0%, var(--bg) 100%);text-align:center;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.landing-page .stats-subtitle{color:var(--muted);max-width:600px;margin:0 auto 56px;font-size:16px}.landing-page .stats-grid{flex-wrap:wrap;justify-content:center;gap:32px;max-width:900px;margin:0 auto;display:flex}.landing-page .stat-item{text-align:center;background:var(--surface);border:1px solid var(--border);border-radius:16px;flex:180px;min-width:160px;padding:24px 16px;transition:all .2s}.landing-page .stat-item:hover{border-color:var(--accent);transform:translateY(-2px)}.landing-page .stat-number{color:var(--accent);margin-bottom:8px;font-size:20px;font-weight:700;display:block}.landing-page .stat-label{color:var(--muted);font-size:14px;line-height:1.4}.landing-page .differentiators-section{background:linear-gradient(135deg, var(--surface) 0%, var(--bg) 100%);text-align:center;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.landing-page .differentiators-section h2{margin-bottom:16px}.landing-page .differentiators-subtitle{color:var(--muted);max-width:600px;margin:0 auto 48px;font-size:16px}.landing-page .diff-icon{margin-bottom:16px;font-size:32px;line-height:1}.landing-page .two-columns{background:var(--surface);text-align:center}.landing-page .two-columns h2{margin-bottom:48px}.landing-page .columns-grid{flex-wrap:wrap;justify-content:center;gap:32px;max-width:900px;margin:0 auto;display:flex}.landing-page .column-card{background:var(--bg);border:1px solid var(--border);text-align:left;border-radius:24px;flex-direction:column;flex:320px;max-width:400px;padding:40px 32px;transition:all .3s;display:flex}.landing-page .column-card:hover{border-color:var(--accent);transform:translateY(-4px)}.landing-page .column-icon{margin-bottom:16px;font-size:36px;line-height:1}.landing-page .column-card h3{margin-bottom:20px}.landing-page .column-card ul{flex:1;margin:0 0 28px;padding:0;list-style:none}.landing-page .column-card li{color:var(--muted);padding:8px 0;font-size:15px;line-height:1.5}.landing-page .column-card .btn-primary,.landing-page .column-card .btn-secondary{align-self:flex-start}@media (width<=768px){.landing-page .column-card{flex:100%;max-width:100%}}.landing-page .mobile-section{text-align:center;background:linear-gradient(160deg,#0f1728 0%,#1a2b4a 100%);position:relative;overflow:hidden}.landing-page .mobile-section:before{content:"";pointer-events:none;background:radial-gradient(circle,#4f8ef71f 0%,#0000 70%);width:600px;height:600px;position:absolute;top:-100px;left:50%;transform:translate(-50%)}.landing-page .mobile-section h2{color:#fff;margin-top:16px;margin-bottom:16px}.landing-page .mobile-section-header{margin-bottom:56px}.landing-page .mobile-section .hero-badge{color:#7db3ff;background:#4f8ef733}.landing-page .mobile-section-subtitle{color:#fff9;max-width:560px;margin:0 auto;font-size:16px;line-height:1.6}.landing-page .mobile-features-grid{flex-wrap:wrap;justify-content:center;gap:24px;max-width:960px;margin:0 auto 56px;display:flex}.landing-page .mobile-feature-card{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:20px;flex:240px;max-width:300px;padding:32px 24px;transition:all .3s}.landing-page .mobile-feature-card:hover{background:#ffffff14;border-color:#4f8ef766;transform:translateY(-4px)}.landing-page .mobile-feature-icon{margin-bottom:16px;font-size:36px;line-height:1}.landing-page .mobile-feature-card h4{color:#fff;margin-bottom:10px;font-size:16px;font-weight:600}.landing-page .mobile-feature-card p{color:#ffffff8c;margin:0;font-size:13px;line-height:1.6}.landing-page .mobile-install-steps{background:#ffffff0f;border:1px solid #ffffff1f;border-radius:14px;align-items:center;gap:0;display:inline-flex;overflow:hidden}.landing-page .install-step{flex-direction:column;align-items:center;gap:6px;padding:18px 32px;display:flex}.landing-page .install-step-divider{background:#ffffff1f;flex-shrink:0;width:1px;height:40px}.landing-page .install-step-os{text-transform:uppercase;letter-spacing:.08em;color:#7db3ff;font-size:11px;font-weight:600}.landing-page .install-step-action{color:#ffffffbf;font-size:13px;font-weight:500}@media (width<=640px){.landing-page .mobile-install-steps{flex-direction:column;width:100%;max-width:340px}.landing-page .install-step-divider{width:80%;height:1px}}.landing-page .social-proof{background:var(--surface);text-align:center}.landing-page .social-proof p{color:var(--muted);max-width:650px;margin:0 auto;font-size:17px;line-height:1.6}.landing-page .pricing-section{background:var(--bg);text-align:center}.landing-page .pricing-section h2{margin-bottom:16px}.landing-page .pricing-subtitle{color:var(--muted);max-width:600px;margin:0 auto 40px;font-size:16px}.landing-page .billing-toggle{background:var(--surface);border:1px solid var(--border);border-radius:100px;align-items:center;gap:4px;margin-bottom:48px;padding:4px;display:inline-flex}.landing-page .billing-toggle button{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:100px;align-items:center;gap:6px;padding:10px 20px;font-size:14px;font-weight:600;transition:all .2s;display:inline-flex}.landing-page .billing-toggle button.active{background:var(--accent);color:#fff}.landing-page .billing-toggle .save-badge{color:var(--green);background:#22c55e26;border-radius:100px;padding:2px 8px;font-size:11px;font-weight:700}.landing-page .billing-toggle button.active .save-badge{color:#fff;background:#ffffff40}.landing-page .pricing-grid{flex-wrap:wrap;justify-content:center;gap:32px;max-width:1320px;margin:0 auto;display:flex}.landing-page .pricing-card{background:var(--surface);border:1px solid var(--border);border-radius:24px;flex-direction:column;flex:260px;max-width:300px;padding:40px 32px;transition:all .3s cubic-bezier(.2,0,0,1);display:flex;position:relative}.landing-page .pricing-card:hover{border-color:var(--accent);transform:translateY(-8px);box-shadow:0 25px 40px -12px #0003}.landing-page .pricing-card.featured{border:2px solid var(--accent);box-shadow:0 10px 30px #4f8ef726}.landing-page .pricing-card .popular-badge{background:linear-gradient(135deg, var(--accent), var(--accent2));color:#fff;white-space:nowrap;border-radius:100px;padding:6px 16px;font-size:12px;font-weight:700;position:absolute;top:-14px;left:50%;transform:translate(-50%)}.landing-page .pricing-card .saving-badge{color:var(--green);margin-top:-16px;margin-bottom:24px;font-size:13px;font-weight:600}.landing-page .pricing-card h3{min-height:auto;margin-bottom:16px;font-size:28px}.landing-page .price{color:var(--accent);white-space:nowrap;margin-bottom:24px;font-size:34px;font-weight:800}.landing-page .price span{color:var(--muted);font-size:15px;font-weight:400}.landing-page .pricing-card ul{text-align:left;flex:1;margin:0 0 40px;padding:0;list-style:none}.landing-page .pricing-card li{color:var(--muted);border-bottom:1px solid var(--border);padding:10px 0}.landing-page .pricing-card li:first-child{border-top:1px solid var(--border)}.landing-page .pricing-card .btn-primary,.landing-page .pricing-card .btn-secondary{text-align:center;width:100%;margin-top:auto}.landing-page .cta-section{background:linear-gradient(135deg, var(--accent) 0%, var(--accent2) 100%);text-align:center;border-top:none;position:relative;overflow:hidden}.landing-page .cta-section:after{content:"";pointer-events:none;background:radial-gradient(circle at 30%,#ffffff1a,#0000 60%);position:absolute;inset:0}.landing-page .cta-section *{z-index:1;position:relative}.landing-page .cta-section h2{color:#fff}.landing-page .cta-section p{color:#ffffffe6;margin-bottom:36px;font-size:18px}.landing-page .cta-section .btn-primary{color:var(--accent);background:#fff;margin-bottom:20px;box-shadow:0 4px 14px #00000026}.landing-page .cta-section .btn-primary:hover{background:#fffffff2;transform:translateY(-2px);box-shadow:0 8px 20px #0003}.landing-page .cta-section .hero-note{color:#ffffffbf;font-size:13px}.landing-page .cta-section .hero-candidate-link{color:#fff;border-color:#fff9}.landing-page .cta-section .hero-candidate-link:hover{background:#ffffff26}.landing-page .hero,.landing-page .problem-section,.landing-page .solution-section,.landing-page .differentiators-section,.landing-page .two-columns,.landing-page .social-proof,.landing-page .pricing-section,.landing-page .cta-section{animation:.6s ease-out forwards fadeInUp}.landing-page .btn-primary:focus-visible,.landing-page .btn-secondary:focus-visible{outline:2px solid var(--accent);outline-offset:3px}@media (width<=768px){.landing-page .container{padding:0 20px}.landing-page .hero-buttons{flex-direction:column;align-items:center;gap:14px}.landing-page .hero-buttons .btn-primary,.landing-page .hero-buttons .btn-secondary{width:100%;max-width:280px}.landing-page .problem-card,.landing-page .solution-card{flex:100%;max-width:100%}.landing-page .problem-card h3,.landing-page .solution-card h3{min-height:auto}.landing-page .stat-item{flex:100%;min-width:auto}}@media (width<=480px){.landing-page .hero-subtitle{font-size:15px}.landing-page .hero-note{font-size:12px}.landing-page .stats-subtitle{font-size:14px}}.candidat-fiche{max-width:1000px;margin:0 auto}.fiche-header{background:var(--surface);border-radius:var(--radius);border:1px solid var(--border);flex-wrap:wrap;align-items:flex-start;gap:30px;margin-bottom:30px;padding:30px;display:flex}.fiche-avatar{text-align:center}.avatar-placeholder{background:linear-gradient(135deg, var(--accent), var(--accent2));border-radius:50%;justify-content:center;align-items:center;width:120px;height:120px;margin-bottom:12px;display:flex}.avatar-placeholder span{color:#fff;font-size:48px;font-weight:700}.fiche-info{flex:1}.fiche-info h2{margin:0 0 8px;font-family:Syne,sans-serif;font-size:28px}.fiche-title{color:var(--accent);margin-bottom:12px;font-size:16px}.fiche-badges{flex-wrap:wrap;gap:10px;display:flex}.fiche-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:24px;padding:25px}.fiche-section h3{border-bottom:1px solid var(--border);margin-bottom:20px;padding-bottom:10px;font-size:18px;font-weight:600}.skills-list{flex-wrap:wrap;gap:10px;display:flex}.skill-tag{background:var(--surface2);border:1px solid var(--border);border-radius:20px;padding:6px 14px;font-size:13px;transition:all .2s}.skill-tag:hover{border-color:var(--accent);transform:translateY(-1px)}.experience-item,.education-item{border-bottom:1px solid var(--border);margin-bottom:20px;padding-bottom:15px}.experience-item:last-child,.education-item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.exp-header,.edu-header{flex-wrap:wrap;justify-content:space-between;gap:8px;margin-bottom:8px;display:flex}.exp-header strong,.edu-header strong{color:var(--accent)}.exp-date,.edu-year{color:var(--muted);font-size:12px}.exp-type-badge{text-transform:uppercase;letter-spacing:.4px;border-radius:12px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.exp-type-stage{color:#856404;background:#fff3cd}.exp-type-alternance{color:#6f2da8;background:#e8d5f5}.exp-type-freelance{color:#0a6640;background:#d1f5e8}.certification-item{border-bottom:1px solid var(--border);margin-bottom:16px;padding-bottom:16px}.certification-item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.cert-header{flex-wrap:wrap;align-items:baseline;gap:8px;margin-bottom:6px;display:flex}.cert-header strong{color:var(--accent)}.cert-date{color:var(--muted);margin-left:auto;font-size:12px}.certification-item a{color:var(--accent);font-size:13px;text-decoration:none}.certification-item a:hover{text-decoration:underline}.language-item{background:var(--surface2);border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:8px;padding:12px;display:flex}.language-item strong{color:var(--accent)}.contact-info{flex-direction:column;gap:8px;display:flex}.contact-info a{color:var(--accent);text-decoration:none}.contact-info a:hover{text-decoration:underline}.candidat-form{max-width:900px;margin:0 auto}.form-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:24px;padding:25px}.form-section h3{border-bottom:1px solid var(--border);margin-bottom:20px;padding-bottom:10px;font-size:18px;font-weight:600}.dynamic-form-item{background:var(--bg);border:1px solid var(--border);border-radius:12px;margin-bottom:20px;padding:20px;transition:all .2s}.dynamic-form-item:hover{border-color:var(--accent);box-shadow:0 2px 8px #0000000d}.dynamic-form-item input,.dynamic-form-item textarea,.dynamic-form-item select{background:var(--surface);border:1.5px solid var(--border);width:100%;color:var(--text);border-radius:8px;margin-bottom:12px;padding:10px 14px;font-size:14px;transition:all .2s}.dynamic-form-item input:focus,.dynamic-form-item textarea:focus,.dynamic-form-item select:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #4f8ef71a}.dynamic-form-item textarea{resize:vertical;min-height:80px}.dynamic-form-item .form-row{margin-bottom:12px}.checkbox-label{cursor:pointer;color:var(--text);align-items:center;gap:10px;margin:12px 0;font-size:13px;display:flex}.checkbox-label input[type=checkbox]{cursor:pointer;width:18px;height:18px;accent-color:var(--accent);margin:0}.language-row{background:var(--bg);border:1px solid var(--border);border-radius:8px;grid-template-columns:1fr 200px auto;align-items:start;gap:12px;margin-bottom:12px;padding:12px;display:grid}.language-row input,.language-row select{margin:0}.form-actions{border-top:1px solid var(--border);justify-content:flex-end;gap:12px;margin-top:24px;padding-top:20px;display:flex}.skills-input-container{border:1.5px solid var(--border);background:var(--bg);border-radius:8px;padding:12px;transition:all .2s}.skills-input-container:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #4f8ef71a}.skills-chips{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.skill-chip{background:linear-gradient(135deg, var(--accent), var(--accent2));color:#fff;border-radius:20px;align-items:center;gap:8px;padding:6px 12px;font-size:13px;animation:.2s fadeInChip;display:inline-flex}@keyframes fadeInChip{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.skill-chip button{color:#fff;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;padding:0;font-size:18px;transition:all .2s;display:inline-flex}.skill-chip button:hover{background:#fff3;transform:scale(1.1)}.skill-input{background:0 0;border:none;width:100%;padding:8px;font-size:14px}.skill-input:focus{outline:none}.profile-completion{align-items:center;gap:12px;margin-top:8px;display:flex}.profile-completion-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:24px;padding:20px}.completion-header{color:var(--muted);justify-content:space-between;align-items:center;margin-bottom:10px;font-size:13px;display:flex}.completion-percent{color:var(--accent);font-weight:700}.completion-bar{background:var(--surface2);border-radius:4px;height:8px;margin-bottom:12px;overflow:hidden}.completion-progress{background:linear-gradient(90deg, var(--accent), var(--accent2));border-radius:4px;height:100%;transition:width .5s}.completion-message{color:var(--muted);text-align:center;margin-bottom:16px;font-size:12px}.form-progress{margin-bottom:24px}.progress-steps{justify-content:space-between;gap:12px;display:flex}.step{text-align:center;background:var(--surface2);color:var(--muted);border-radius:8px;flex:1;padding:8px;font-size:12px}.step.active{background:var(--accent);color:#fff}.error-message{color:var(--red);margin-top:4px;font-size:11px;display:block}input.error,textarea.error,select.error{border-color:var(--red)!important}.required-star{color:var(--red);margin-left:4px}.helper-text{color:var(--muted);margin-top:8px;font-size:11px}.char-counter{text-align:right;color:var(--muted);margin-top:4px;font-size:11px}.items-list{border-top:1px solid var(--border);margin-top:20px;padding-top:20px}.items-list h4{color:var(--muted);margin-bottom:12px;font-size:14px}.item-preview{background:var(--surface2);border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:8px;padding:12px;transition:all .2s;display:flex}.item-preview:hover{background:var(--surface);transform:translate(4px)}.preview-content{flex-wrap:wrap;flex:1;align-items:baseline;gap:12px;display:flex}.preview-content strong{color:var(--accent);font-size:14px}.preview-actions{gap:8px;display:flex}.btn-icon{cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px 8px;transition:all .2s}.btn-icon:hover{background:var(--surface);transform:scale(1.1)}.upload-area{margin-top:8px}.upload-area input[type=file]{display:none}.loading-container{text-align:center;padding:60px 20px}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:40px;height:40px;margin:0 auto 16px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=768px){.fiche-header{text-align:center;flex-direction:column;align-items:center}.fiche-badges{justify-content:center}.language-row{grid-template-columns:1fr;gap:8px}.dynamic-form-item .form-row{grid-template-columns:1fr}.form-actions{flex-direction:column}.form-actions button{width:100%}.progress-steps{flex-wrap:wrap}.step{flex:auto;min-width:calc(50% - 6px)}}.dynamic-form-item input:disabled{background:var(--surface2);cursor:not-allowed;opacity:.6}.messages-list{background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow:hidden}.conversation-item{color:var(--text);border-bottom:1px solid var(--border);align-items:center;gap:16px;padding:16px 20px;text-decoration:none;transition:background .2s;display:flex;position:relative}.conversation-item:last-child{border-bottom:none}.conversation-item:hover{background:var(--surface2)}.conversation-item.unread{background:#1a56db0d}.conversation-item.unread:hover{background:#1a56db1a}.conversation-avatar{background:var(--accent);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;font-size:18px;font-weight:700;display:flex}.conversation-info{flex:1;min-width:0}.conversation-header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:4px;display:flex}.conversation-header strong{color:var(--text);font-size:16px}.date{color:var(--muted);font-size:12px}.conversation-subject{color:var(--accent);margin-bottom:4px;font-size:13px;font-weight:500}.conversation-preview{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.unread-dot{background:var(--accent);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:11px;font-weight:700;display:flex}.chat-container{background:var(--surface);border:1px solid var(--border);border-radius:12px;flex-direction:column;height:calc(100vh - 200px);display:flex;overflow:hidden}.chat-header{background:var(--surface2);border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:16px;padding:16px 20px;display:flex}.back-btn{color:var(--accent);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:8px 12px;font-size:14px;text-decoration:none;transition:background .2s}.back-btn:hover{background:#1a56db1a}.chat-user{flex:1}.chat-user strong{color:var(--text);margin-bottom:4px;font-size:16px;display:block}.chat-user span{color:var(--muted);font-size:12px}.chat-messages{background:var(--surface);flex-direction:column;flex:1;gap:12px;padding:20px;display:flex;overflow-y:auto}.message-bubble{word-wrap:break-word;border-radius:18px;max-width:70%;padding:10px 14px;position:relative}.message-bubble.own{background:var(--accent);color:#fff;border-bottom-right-radius:4px;align-self:flex-end}.message-bubble.other{background:var(--surface2);color:var(--text);border-bottom-left-radius:4px;align-self:flex-start}.message-content{font-size:14px;line-height:1.4}.message-time{opacity:.7;text-align:right;margin-top:4px;font-size:10px}.message-bubble.own .message-time{color:#fffc}.message-bubble.other .message-time{color:var(--muted)}.chat-input-form{background:var(--surface2);border-top:1px solid var(--border);gap:12px;padding:16px 20px;display:flex}.chat-input-form input{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:24px;outline:none;flex:1;padding:12px 16px;font-size:14px;transition:border-color .2s}.chat-input-form input:focus{border-color:var(--accent)}.chat-input-form input:disabled{opacity:.6;cursor:not-allowed}.chat-input-form button{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:24px;padding:12px 24px;font-size:14px;font-weight:500;transition:opacity .2s}.chat-input-form button:hover:not(:disabled){opacity:.9}.chat-input-form button:disabled{opacity:.5;cursor:not-allowed}.no-messages{text-align:center;color:var(--muted);padding:60px 20px}.no-messages p{margin-bottom:20px}.badge{background:var(--accent);color:#fff;border-radius:20px;padding:4px 10px;font-size:12px;font-weight:700}@media (width<=768px){.conversation-item{padding:12px 16px}.conversation-avatar{width:40px;height:40px;font-size:14px}.conversation-header strong{font-size:14px}.chat-container{height:calc(100vh - 150px)}.chat-messages{padding:16px}.message-bubble{max-width:85%}.chat-input-form{padding:12px 16px}.chat-input-form button{padding:10px 18px}}[data-theme=dark] .conversation-item.unread{background:#1a56db26}[data-theme=dark] .conversation-item.unread:hover{background:#1a56db40}[data-theme=dark] .message-bubble.other{background:#2d3748}[data-theme=light] .conversation-item.unread{background:#1a56db0d}[data-theme=light] .message-bubble.other{background:#e5e7eb}.nav-link{align-items:center;gap:8px;display:inline-flex;position:relative}.nav-badge{color:#fff;background-color:#ef4444;border-radius:9999px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-weight:700;line-height:1;display:inline-flex;position:absolute;top:-8px;right:-12px}@media (width<=768px){.stats{grid-template-columns:repeat(2,1fr);gap:12px}.stat-card,.upload-section{padding:16px}.upload-header{flex-direction:column;align-items:flex-start}.upload-single{flex-direction:column;align-items:stretch}.filters-form{flex-direction:column}.search-wrapper{width:100%;min-width:unset}.filters-form select{width:100%}th,td{padding:8px;font-size:12px}.actions{flex-direction:column;gap:4px}.modal-content{width:95%;padding:20px}.offers-grid{grid-template-columns:1fr;padding:16px}}
