:root{--navy: #002b5c;--navy-2: #0b3a66;--orange: #ff7a00;--orange-2: #ff9500;--white: #ffffff;--header-max: 1200px;--public-header-height: 88px;--header-border: rgba(255, 255, 255, .08);--header-text-soft: rgba(255, 255, 255, .88);--header-shadow: 0 8px 24px rgba(0, 0, 0, .14)}.header{position:fixed;inset:0 0 auto;z-index:1000;width:100%;background:var(--navy);color:var(--white);font-family:Arial,sans-serif;box-shadow:var(--header-shadow)}.header-spacer{width:100%;height:var(--public-header-height);flex:0 0 auto}.header .container{max-width:var(--header-max);margin:0 auto;padding:14px 24px}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:18px;min-width:0}.header-brand{display:flex;flex-direction:column;gap:4px;min-width:0;flex:0 1 290px;background:transparent;border:0;padding:0;margin:0;text-align:left;cursor:pointer;-webkit-user-select:none;user-select:none;line-height:1.1;color:inherit;font:inherit}.brand-name{display:block;font-size:1.18rem;font-weight:800;color:var(--white);letter-spacing:-.01em;transition:color .2s ease}.brand-sub{display:block;max-width:100%;font-size:.84rem;line-height:1.25;color:var(--header-text-soft);white-space:normal;overflow-wrap:anywhere;word-break:break-word}.header-brand:hover .brand-name,.header-brand:focus-visible .brand-name{color:var(--orange)}.header-brand:focus-visible{outline:3px solid rgba(255,122,0,.35);outline-offset:4px;border-radius:10px}.nav{display:flex;align-items:center;justify-content:center;gap:8px;flex:1 1 auto;min-width:0}.nav-link{display:inline-flex;align-items:center;justify-content:center;color:var(--white);text-decoration:none;font-weight:500;padding:9px 12px;border-radius:10px;transition:background .2s ease,color .2s ease,opacity .2s ease,transform .15s ease;white-space:nowrap}.nav-link:hover,.nav-link:focus-visible{color:var(--orange);background:#ffffff0d}.nav-link.active{background:#ff7a0029;color:var(--white)}.nav-link:focus-visible{outline:3px solid rgba(255,122,0,.28);outline-offset:2px}.header-actions{display:flex;align-items:center;gap:10px;flex:0 0 auto}.header .btn{display:inline-flex;align-items:center;justify-content:center;min-height:42px;border-radius:12px;padding:9px 16px;border:0;cursor:pointer;font-weight:700;font-family:inherit;font-size:.96rem;line-height:1;white-space:nowrap;transition:transform .15s ease,box-shadow .2s ease,background .2s ease,color .2s ease,border-color .2s ease}.header .btn:active{transform:translateY(1px)}.header .btn:focus-visible{outline:3px solid rgba(255,122,0,.32);outline-offset:2px}.header .btn-secondary{background:#ffffff14;color:var(--white);border:1px solid rgba(255,255,255,.35)}.header .btn-secondary:hover{border-color:#ffffffb3;box-shadow:0 6px 16px #0000002e;background:#ffffff1f}.header .btn-primary{background:linear-gradient(135deg,var(--orange),var(--orange-2));color:var(--white);border:1px solid rgba(255,255,255,.22);box-shadow:0 8px 20px #ff7a002e}.header .btn-primary:hover{box-shadow:0 10px 24px #00000038;transform:translateY(-1px)}.header-badge{display:inline-flex;align-items:center;justify-content:center;background:#ef4444;color:#fff;border-radius:999px;padding:2px 6px;font-size:12px;margin-left:6px;line-height:1}@media(max-width:1100px){.header .container{padding:14px 18px}.header-inner{gap:14px}.header-brand{flex-basis:250px}.brand-name{font-size:1.1rem}.brand-sub{font-size:.8rem}.nav-link{padding:8px 10px;font-size:.95rem}.header .btn{padding:9px 14px}}@media(max-width:920px){.header-inner{flex-wrap:wrap;align-items:center}.header-brand{flex:1 1 auto;min-width:220px}.header-actions{order:2;margin-left:auto}.nav{width:100%;order:3;justify-content:flex-start;flex-wrap:wrap;gap:10px;padding-top:10px;border-top:1px solid var(--header-border);margin-top:2px}}@media(max-width:640px){.header .container{padding:12px 14px}.header-brand{flex:1 1 100%}.brand-name{font-size:1.04rem}.brand-sub{font-size:.78rem;line-height:1.2}.header-actions{width:100%;order:2;margin-left:0;justify-content:stretch}.header-actions .btn{flex:1 1 0}.nav{gap:8px}.nav-link{padding:8px 10px;font-size:.94rem}}@media(max-width:520px){.brand-name{font-size:1rem}.brand-sub{font-size:.76rem}.header .btn{min-height:40px;padding:9px 12px;border-radius:10px;font-size:.92rem}.nav-link{padding:7px 9px;border-radius:9px}}:root{--navy: #002b5c;--orange: #ff7a00;--orange-2: #ff9500;--white: #ffffff;--footer-bg: #071a33;--footer-bg-2: #0a2244;--footer-card: rgba(255, 255, 255, .06);--footer-card-strong: rgba(255, 255, 255, .08);--footer-border: rgba(255, 255, 255, .12);--footer-muted: rgba(255, 255, 255, .76);--footer-soft: rgba(255, 255, 255, .88);--footer-shadow: 0 12px 28px rgba(0, 0, 0, .16);--focus: rgba(255, 122, 0, .55)}.footer{margin-top:44px;background:linear-gradient(180deg,var(--footer-bg) 0%,var(--footer-bg-2) 100%);color:var(--white);font-family:Arial,sans-serif}.footer .container{max-width:1200px;margin:0 auto;padding:30px 24px}.footer-inner{display:grid;grid-template-columns:1.2fr .9fr .9fr 1.1fr;gap:18px;align-items:start}.footer-col{background:var(--footer-card);border:1px solid var(--footer-border);border-radius:18px;padding:18px 16px;box-shadow:var(--footer-shadow);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.footer-brand{background:linear-gradient(180deg,#ff7a001a,#ffffff0f)}.footer-logo{background:transparent;border:0;color:var(--white);cursor:pointer;font-weight:900;font-size:1.08rem;letter-spacing:-.01em;padding:0;text-align:left}.footer-logo:hover{color:var(--orange)}.footer-logo:focus-visible{outline:3px solid var(--focus);outline-offset:4px;border-radius:10px}.footer-desc{margin:12px 0 16px;color:var(--footer-muted);line-height:1.6;font-size:.95rem}.footer-desc strong{color:var(--white)}.footer-title{margin:0 0 12px;font-size:.96rem;font-weight:900;letter-spacing:.2px;color:var(--white)}.footer-links{list-style:none;padding:0;margin:0;display:grid;gap:8px}.footer-links li{margin:0}.footer-links a{display:inline-flex;align-items:center;width:fit-content;color:var(--footer-muted);text-decoration:none;padding:7px 9px;border-radius:10px;transition:background .2s ease,color .2s ease,transform .12s ease}.footer-links a:hover{background:#ffffff14;color:var(--white);transform:translateY(-1px)}.footer-links a:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.footer-ctas{display:flex;flex-wrap:wrap;gap:10px}.fbtn{display:inline-flex;align-items:center;justify-content:center;min-height:42px;border:0;cursor:pointer;border-radius:12px;padding:10px 14px;font-weight:900;font-family:inherit;text-decoration:none;line-height:1;transition:transform .15s ease,box-shadow .2s ease,background .2s ease,color .2s ease,border-color .2s ease}.fbtn:active{transform:translateY(1px)}.fbtn:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.fbtn-primary{background:linear-gradient(135deg,var(--orange),var(--orange-2));color:var(--white);box-shadow:0 10px 18px #0003}.fbtn-primary:hover{transform:translateY(-1px);box-shadow:0 14px 22px #00000047}.fbtn-secondary{background:#ffffff1a;color:var(--white);border:1px solid rgba(255,255,255,.18)}.fbtn-secondary:hover{background:#ffffff24;border-color:#ffffff42}.footer-contact{display:grid;gap:14px}.footer-label{font-size:.78rem;opacity:.75;font-weight:700;letter-spacing:.2px;display:block;margin-bottom:4px}.footer-value{color:var(--footer-soft);opacity:.96;text-decoration:none;line-height:1.45}.footer-value:hover{color:var(--orange)}.footer-value:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:8px}.footer-badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.footer-pill{display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.14);background:#ffffff0f;color:#ffffffeb;border-radius:999px;padding:6px 10px;font-size:.78rem;font-weight:800;line-height:1.2}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);background:#0000001f}.footer-bottom .container{padding:14px 24px}.footer-bottom-inner{display:flex;align-items:center;justify-content:space-between;gap:12px}.footer-copy{margin:0;font-size:.88rem;color:#ffffffc7}.footer-legal{list-style:none;padding:0;margin:0;display:flex;gap:12px;flex-wrap:wrap}.footer-legal li{display:flex;align-items:center}.footer-legal a,.footer-legal-btn{display:inline-flex;align-items:center;line-height:1}.footer-legal a{color:#ffffffc7;text-decoration:none;padding:6px 8px;border-radius:10px;transition:background .2s ease,color .2s ease}.footer-legal a:hover{color:var(--white);background:#ffffff14}.footer-legal a:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.footer-legal-btn{background:transparent;border:none;padding:6px 8px;border-radius:10px;color:#ffffffc7;cursor:pointer;font:inherit;opacity:.95;text-decoration:none;transition:background .2s ease,color .2s ease,opacity .2s ease}.footer-legal-btn:hover{opacity:1;color:var(--white);background:#ffffff14}.footer-legal-btn:focus-visible{outline:3px solid var(--focus);outline-offset:2px}@media(max-width:1020px){.footer-inner{grid-template-columns:1fr 1fr}}@media(max-width:640px){.footer .container{padding:22px 14px}.footer-inner{grid-template-columns:1fr}.footer-col{padding:16px 14px;border-radius:16px}.footer-ctas{gap:8px}.fbtn{width:100%;justify-content:center}.footer-bottom .container{padding:12px 14px}.footer-bottom-inner{flex-direction:column;align-items:flex-start;gap:10px}.footer-legal{gap:8px}}.cookie-banner{position:fixed;left:0;right:0;bottom:0;z-index:2000;padding:14px;display:flex;justify-content:center;pointer-events:none}.cookie-card{width:min(980px,calc(100vw - 28px));background:#000000c7;border:1px solid rgba(255,255,255,.16);border-radius:16px;box-shadow:0 12px 30px #00000059;color:#fff;display:flex;gap:12px;pointer-events:all;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.cookie-main{padding:14px 14px 14px 16px;flex:1}.cookie-title{font-weight:800;font-size:16px;margin-bottom:6px}.cookie-text{margin:0;opacity:.92;line-height:1.45;font-size:14px}.cookie-links{margin:10px 0 0;font-size:13px;opacity:.9}.cookie-links a{color:#fff;text-decoration:underline;text-underline-offset:3px}.cookie-links a:hover{opacity:.95}.cookie-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.cookie-btn{border:1px solid rgba(255,255,255,.2);background:#ffffff14;color:#fff;padding:9px 12px;border-radius:12px;cursor:pointer;font-weight:700;font-size:13px;transition:transform .08s ease,opacity .2s ease,background .2s ease}.cookie-btn:hover{opacity:.95}.cookie-btn:active{transform:translateY(1px)}.cookie-btn-primary{background:#ff7a00eb;border-color:#ff7a00a6}.cookie-btn-ghost{background:transparent;border-color:#ffffff38}.cookie-close{width:46px;border:none;background:transparent;color:#fffc;cursor:pointer;border-left:1px solid rgba(255,255,255,.12);border-top-right-radius:16px;border-bottom-right-radius:16px}.cookie-close:hover{color:#fff}.cookie-prefs{margin-top:10px;border-top:1px solid rgba(255,255,255,.12);padding-top:10px}.cookie-pref{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 0;border-bottom:1px dashed rgba(255,255,255,.12)}.cookie-pref-title{font-weight:800;font-size:13px}.cookie-pref-desc{opacity:.85;font-size:13px;margin-top:2px}.cookie-pill{font-size:12px;font-weight:800;padding:7px 10px;border-radius:999px;background:#ffffff1f;border:1px solid rgba(255,255,255,.18);white-space:nowrap}.cookie-switch{position:relative;display:inline-block;width:44px;height:26px;flex:0 0 auto}.cookie-switch input{opacity:0;width:0;height:0}.cookie-slider{position:absolute;cursor:pointer;inset:0;background:#ffffff2e;transition:.2s;border-radius:999px;border:1px solid rgba(255,255,255,.2)}.cookie-slider:before{position:absolute;content:"";height:20px;width:20px;left:3px;top:50%;transform:translateY(-50%);background:#fff;transition:.2s;border-radius:50%}.cookie-switch input:checked+.cookie-slider{background:#ff7a00eb;border-color:#ff7a0099}.cookie-switch input:checked+.cookie-slider:before{transform:translate(18px,-50%)}@media(max-width:640px){.cookie-close{display:none}.cookie-card{border-radius:14px}.cookie-actions{gap:8px}.cookie-btn{width:100%;text-align:center}}.ah-root{display:flex;align-items:center;justify-content:space-between;background-color:#036;color:#fff;padding:10px 40px;font-size:14px}.ah-left{display:flex;align-items:center;gap:8px;font-weight:600}.ah-title{color:#fff}.ah-nav{display:flex;gap:30px}.ah-nav button{background:none;border:none;color:#fff;font-size:14px;cursor:pointer}.ah-nav button:hover{text-decoration:underline}.ah-right{display:flex;align-items:center;gap:20px}.ah-email{font-size:13px;opacity:.9;color:#fff}.ah-logout{border-radius:999px;border:2px solid #ff8a00;background-color:#ff8a00;color:#fff;padding:6px 18px;font-weight:600;cursor:pointer}.ah-logout:hover{background-color:#fff;color:#ff8a00}.apprenant-header{background:#0a2540;color:#fff;padding:15px}.apprenant-header a{color:#fff;margin-right:20px;text-decoration:none;font-weight:500}.apprenant-header a.active{border-bottom:2px solid white}.ah-root{width:100%;background-color:#036}.ah-inner{max-width:1100px;margin:0 auto;padding:10px 40px;display:flex;align-items:center;justify-content:space-between;gap:12px}.ah-badge{background:#ef4444;color:#fff;font-size:11px;border-radius:999px;padding:2px 6px;margin-left:6px}.notif-wrapper{position:relative}.notif-bell{background:none;border:none;cursor:pointer;position:relative;font-size:18px}.notif-badge{position:absolute;top:-4px;right:-6px;background:#dc2626;color:#fff;font-size:11px;padding:2px 6px;border-radius:999px}.notif-dropdown{position:absolute;right:0;top:36px;width:320px;background:#fff;border-radius:8px;box-shadow:0 10px 25px #00000026;z-index:50}.notif-header{display:flex;justify-content:space-between;padding:10px;border-bottom:1px solid #eee;font-weight:600}.notif-item{padding:10px;cursor:pointer}.notif-item.unread{background:#eff6ff}.notif-item:hover{background:#f1f5f9}.notif-item p{margin:4px 0;font-size:13px}.notif-date{font-size:11px;color:#64748b}.notif-empty{padding:12px;text-align:center;color:#64748b}.notif-footer{padding:8px;border-top:1px solid #eee;text-align:center}.notif-see-all{background:none;border:none;color:#2563eb;cursor:pointer;font-weight:500}.notif-dropdown{background:#fff;color:#0f172a}.notif-item{background:#f8fafc;color:#0f172a}.notif-item.unread{background:#e0f2fe;border-left:4px solid #0284c7}.notif-title{font-weight:600;color:#0f172a}.notif-message{color:#334155}.notif-date{font-size:12px;color:#64748b}.notif-hero-row{display:flex;gap:12px;align-items:flex-start;justify-content:space-between;flex-wrap:wrap}.notif-hero-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.notif-card{padding:0;overflow:hidden}.notif-tabs{margin-top:12px;display:flex;gap:8px;flex-wrap:wrap}.notif-tab{border:1px solid #e2e8f0;background:#fff;color:#0f172a;padding:8px 10px;border-radius:10px;cursor:pointer;font-weight:700;display:inline-flex;align-items:center;gap:8px}.notif-tab:hover{background:#f8fafc}.notif-tab.active{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f626}.notif-pill{font-size:12px;font-weight:800;background:#f1f5f9;border:1px solid #e2e8f0;padding:2px 8px;border-radius:999px}.notif-item{display:flex;gap:10px;padding:12px 14px;border-top:1px solid #e2e8f0;cursor:pointer;outline:none;background:#fff}.notif-item:hover{background:#f8fafc}.notif-item:focus{box-shadow:inset 0 0 0 2px #3b82f640}.notif-item.unread{background:#fff}.notif-item.read{opacity:.88}.notif-left{width:14px;display:flex;align-items:flex-start;padding-top:6px}.notif-dot{width:10px;height:10px;border-radius:999px;border:2px solid #cbd5e1;background:transparent}.notif-dot.on{border-color:#3b82f6;background:#3b82f6}.notif-dot.off{border-color:#cbd5e1;background:transparent}.notif-content{flex:1;min-width:0}.notif-header{display:flex;gap:10px;align-items:baseline;justify-content:space-between;flex-wrap:wrap}.notif-title{font-size:14px;color:#0f172a}.notif-date{font-size:12px;color:#64748b;white-space:nowrap}.notif-message{margin:6px 0 0;font-size:13px;color:#334155;line-height:1.35;white-space:pre-wrap;word-break:break-word}.notif-linkhint{margin-top:8px;font-size:12px;font-weight:700;color:#2563eb}.notif-linkhint.muted{color:#64748b}.notif-empty{padding:22px 16px;text-align:center}.notif-empty-icon{font-size:28px;margin-bottom:8px}.notif-empty-title{font-weight:900;color:#0f172a;margin-bottom:4px}.notif-empty-sub{color:#64748b;font-size:13px}.adh-root{width:100%;background-color:#036;color:#fff;box-sizing:border-box;position:relative;z-index:20;margin:0}.adh-inner{width:100%;max-width:1720px;margin:0 auto;padding:10px 24px;display:flex;align-items:center;justify-content:space-between;gap:18px;box-sizing:border-box;min-height:84px}.adh-left{display:flex;align-items:center;gap:8px;flex:0 0 auto}.adh-logo-btn{border:none;cursor:pointer;background:#ffffff3d;color:#fff;border-radius:12px;padding:14px 20px;min-width:220px;justify-content:center;font-weight:700;display:inline-flex;align-items:center;box-sizing:border-box}.adh-logo-btn:hover{background:#ffffff52}.adh-title{color:#fff;font-size:15px;font-weight:800;white-space:nowrap}.adh-nav{display:flex;align-items:center;justify-content:flex-start;gap:24px;flex:1 1 auto;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;min-width:0;padding-left:6px}.adh-nav::-webkit-scrollbar{display:none}.adh-nav button{position:relative;background:none;border:none;color:#fff;font-size:14px;font-weight:700;cursor:pointer;padding:8px 4px;border-radius:8px;white-space:nowrap;flex:0 0 auto}.adh-nav button:hover{text-decoration:underline}.adh-nav button.active{text-decoration:underline;text-underline-offset:6px}.adh-badge{background:#ef4444;color:#fff;font-size:11px;border-radius:999px;padding:2px 6px;margin-left:6px;display:inline-flex;align-items:center;justify-content:center;min-width:18px;line-height:1}.adh-right{display:flex;align-items:center;gap:20px;flex:0 0 auto;min-width:max-content}.adh-email{font-size:13px;opacity:.95;color:#fff;white-space:nowrap}.adh-logout{border-radius:999px;border:2px solid #ff8a00;background-color:#ff8a00;color:#fff;padding:8px 18px;font-weight:700;cursor:pointer;white-space:nowrap;min-height:42px;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box}.adh-logout:hover{background-color:#fff;color:#ff8a00}@media(max-width:1280px){.adh-inner{padding:10px 16px;gap:14px}.adh-nav{gap:18px}.adh-logo-btn{min-width:190px;padding:12px 16px}}@media(max-width:980px){.adh-inner{flex-wrap:wrap;align-items:flex-start}.adh-left{order:1}.adh-right{order:2;margin-left:auto}.adh-nav{order:3;width:100%;justify-content:flex-start;gap:14px 18px;padding-top:4px;padding-left:0}}@media(max-width:768px){.adh-inner{padding:12px 14px;flex-direction:column;align-items:stretch;gap:12px}.adh-left,.adh-right{width:100%}.adh-right{justify-content:space-between;gap:12px;flex-wrap:wrap;min-width:0}.adh-nav{width:100%;justify-content:flex-start;padding-left:0}.adh-email{white-space:normal}.adh-logo-btn{width:100%;min-width:0}}@media(max-width:560px){.adh-nav{display:grid;grid-template-columns:1fr 1fr;gap:10px;overflow:visible}.adh-nav button{width:100%;text-align:center;padding:10px 8px;background:#ffffff14}.adh-right{flex-direction:column;align-items:stretch}.adh-logout{width:100%}}.admin-notifications-page{min-height:100vh;background:#f6f8fb;color:#14213d}.admin-notifications-page .admin-notifications-container{max-width:1240px;margin:0 auto;padding:24px}.admin-notifications-page .admin-notifications-hero{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;padding:22px 24px;border-radius:18px;background:linear-gradient(135deg,#14213d,#1f3b73);color:#fff;box-shadow:0 14px 30px #14213d29}.admin-notifications-page .admin-notifications-hero h1{margin:0 0 6px;font-size:1.9rem;line-height:1.15}.admin-notifications-page .admin-notifications-hero p{margin:0;color:#ffffffe6}.admin-notifications-page .admin-notifications-hero-actions{display:flex;gap:10px;flex-wrap:wrap}.admin-notifications-page .admin-notifications-stats{display:grid;grid-template-columns:repeat(3,minmax(180px,1fr));gap:14px;margin-bottom:22px}.admin-notifications-page .admin-notifications-stat-card{background:#fff;border:1px solid #e5eaf3;border-radius:16px;padding:16px 18px;box-shadow:0 10px 22px #14213d0d}.admin-notifications-page .admin-notifications-stat-label{display:block;margin-bottom:8px;font-size:.9rem;color:#64748b}.admin-notifications-page .admin-notifications-stat-value{font-size:1.6rem;font-weight:700;color:#14213d}.admin-notifications-page .admin-notifications-toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;margin-bottom:18px;padding:16px 18px;background:#fff;border:1px solid #e5eaf3;border-radius:16px;box-shadow:0 10px 20px #14213d0a}.admin-notifications-page .admin-notifications-toolbar-left,.admin-notifications-page .admin-notifications-toolbar-right{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.admin-notifications-page .admin-notifications-input,.admin-notifications-page .admin-notifications-select{min-height:42px;padding:0 12px;border:1px solid #d7dfec;border-radius:12px;background:#fff;color:#14213d;font-size:.95rem;outline:none}.admin-notifications-page .admin-notifications-input{min-width:260px}.admin-notifications-page .admin-notifications-input:focus,.admin-notifications-page .admin-notifications-select:focus{border-color:#2f6fed;box-shadow:0 0 0 3px #2f6fed1f}.admin-notifications-page .admin-notifications-btn{min-height:42px;padding:0 14px;border:1px solid transparent;border-radius:12px;background:#14213d;color:#fff;font-weight:600;cursor:pointer;transition:.18s ease}.admin-notifications-page .admin-notifications-btn:hover{transform:translateY(-1px);box-shadow:0 10px 18px #14213d26}.admin-notifications-page .admin-notifications-btn.secondary{background:#fff;color:#14213d;border-color:#d7dfec}.admin-notifications-page .admin-notifications-btn.secondary:hover{background:#f8fafc}.admin-notifications-page .admin-notifications-btn.warning{background:#f59e0b;color:#fff}.admin-notifications-page .admin-notifications-btn.danger{background:#dc2626;color:#fff}.admin-notifications-page .admin-notifications-feedback{margin-bottom:14px;padding:12px 14px;border-radius:12px;font-size:.95rem}.admin-notifications-page .admin-notifications-feedback.success{background:#ecfdf5;color:#166534;border:1px solid #bbf7d0}.admin-notifications-page .admin-notifications-feedback.error{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.admin-notifications-page .admin-notifications-list{display:flex;flex-direction:column;gap:14px}.admin-notifications-page .admin-notification-card{background:#fff;border:1px solid #e5eaf3;border-left:6px solid #cbd5e1;border-radius:16px;padding:18px;box-shadow:0 10px 20px #14213d0a;transition:.18s ease}.admin-notifications-page .admin-notification-card:hover{transform:translateY(-1px);box-shadow:0 14px 28px #14213d14}.admin-notifications-page .admin-notification-card.level-critical{border-left-color:#dc2626}.admin-notifications-page .admin-notification-card.level-warning{border-left-color:#f59e0b}.admin-notifications-page .admin-notification-card.level-info{border-left-color:#2563eb}.admin-notifications-page .admin-notification-card.status-unread{background:#fcfdff}.admin-notifications-page .admin-notification-card.status-read{opacity:.88}.admin-notifications-page .admin-notification-top{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:10px}.admin-notifications-page .admin-notification-title-wrap{display:flex;flex-direction:column;gap:6px}.admin-notifications-page .admin-notification-title{margin:0;font-size:1.05rem;font-weight:700;color:#14213d}.admin-notifications-page .admin-notification-meta{display:flex;flex-wrap:wrap;gap:8px}.admin-notifications-page .admin-notification-badge{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:999px;font-size:.82rem;font-weight:700}.admin-notifications-page .admin-notification-badge.level-critical{background:#fef2f2;color:#b91c1c}.admin-notifications-page .admin-notification-badge.level-warning{background:#fffbeb;color:#b45309}.admin-notifications-page .admin-notification-badge.level-info{background:#eff6ff;color:#1d4ed8}.admin-notifications-page .admin-notification-badge.status-unread{background:#eef2ff;color:#4338ca}.admin-notifications-page .admin-notification-badge.status-read{background:#f1f5f9;color:#475569}.admin-notifications-page .admin-notification-message{margin:0 0 12px;color:#334155;line-height:1.55;white-space:pre-line}.admin-notifications-page .admin-notification-link{display:inline-block;margin-bottom:12px;color:#2563eb;font-weight:600;text-decoration:none}.admin-notifications-page .admin-notification-link:hover{text-decoration:underline}.admin-notifications-page .admin-notification-footer{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap}.admin-notifications-page .admin-notification-date{color:#64748b;font-size:.88rem}.admin-notifications-page .admin-notification-actions{display:flex;gap:8px;flex-wrap:wrap}.admin-notifications-page .admin-notification-empty,.admin-notifications-page .admin-notification-loading{padding:28px;border-radius:16px;background:#fff;border:1px solid #e5eaf3;color:#64748b;text-align:center;box-shadow:0 10px 20px #14213d0a}.admin-notifications-page .admin-notifications-pagination{display:flex;justify-content:center;align-items:center;gap:10px;margin-top:18px}.admin-notifications-page .admin-notifications-pagination span{color:#475569;font-weight:600}@media(max-width:980px){.admin-notifications-page .admin-notifications-stats{grid-template-columns:1fr}.admin-notifications-page .admin-notifications-hero{flex-direction:column}}@media(max-width:768px){.admin-notifications-page .admin-notifications-container{padding:16px}.admin-notifications-page .admin-notifications-toolbar{flex-direction:column;align-items:stretch}.admin-notifications-page .admin-notifications-toolbar-left,.admin-notifications-page .admin-notifications-toolbar-right,.admin-notifications-page .admin-notifications-input,.admin-notifications-page .admin-notifications-select,.admin-notifications-page .admin-notifications-btn{width:100%}.admin-notifications-page .admin-notification-top,.admin-notifications-page .admin-notification-footer{flex-direction:column;align-items:stretch}.admin-notifications-page .admin-notification-actions{width:100%}.admin-notifications-page .admin-notification-actions .admin-notifications-btn{flex:1 1 auto}}:root{--toastify-color-light: #fff;--toastify-color-dark: #121212;--toastify-color-info: #3498db;--toastify-color-success: #07bc0c;--toastify-color-warning: #f1c40f;--toastify-color-error: hsl(6, 78%, 57%);--toastify-color-transparent: rgba(255, 255, 255, .7);--toastify-icon-color-info: var(--toastify-color-info);--toastify-icon-color-success: var(--toastify-color-success);--toastify-icon-color-warning: var(--toastify-color-warning);--toastify-icon-color-error: var(--toastify-color-error);--toastify-container-width: fit-content;--toastify-toast-width: 320px;--toastify-toast-offset: 16px;--toastify-toast-top: max(var(--toastify-toast-offset), env(safe-area-inset-top));--toastify-toast-right: max(var(--toastify-toast-offset), env(safe-area-inset-right));--toastify-toast-left: max(var(--toastify-toast-offset), env(safe-area-inset-left));--toastify-toast-bottom: max(var(--toastify-toast-offset), env(safe-area-inset-bottom));--toastify-toast-background: #fff;--toastify-toast-padding: 14px;--toastify-toast-min-height: 64px;--toastify-toast-max-height: 800px;--toastify-toast-bd-radius: 6px;--toastify-toast-shadow: 0px 4px 12px rgba(0, 0, 0, .1);--toastify-font-family: sans-serif;--toastify-z-index: 9999;--toastify-text-color-light: #757575;--toastify-text-color-dark: #fff;--toastify-text-color-info: #fff;--toastify-text-color-success: #fff;--toastify-text-color-warning: #fff;--toastify-text-color-error: #fff;--toastify-spinner-color: #616161;--toastify-spinner-color-empty-area: #e0e0e0;--toastify-color-progress-light: linear-gradient(to right, #4cd964, #5ac8fa, #007aff, #34aadc, #5856d6, #ff2d55);--toastify-color-progress-dark: #bb86fc;--toastify-color-progress-info: var(--toastify-color-info);--toastify-color-progress-success: var(--toastify-color-success);--toastify-color-progress-warning: var(--toastify-color-warning);--toastify-color-progress-error: var(--toastify-color-error);--toastify-color-progress-bgo: .2}.Toastify__toast-container{z-index:var(--toastify-z-index);-webkit-transform:translate3d(0,0,var(--toastify-z-index));position:fixed;width:var(--toastify-container-width);box-sizing:border-box;color:#fff;display:flex;flex-direction:column}.Toastify__toast-container--top-left{top:var(--toastify-toast-top);left:var(--toastify-toast-left)}.Toastify__toast-container--top-center{top:var(--toastify-toast-top);left:50%;transform:translate(-50%);align-items:center}.Toastify__toast-container--top-right{top:var(--toastify-toast-top);right:var(--toastify-toast-right);align-items:end}.Toastify__toast-container--bottom-left{bottom:var(--toastify-toast-bottom);left:var(--toastify-toast-left)}.Toastify__toast-container--bottom-center{bottom:var(--toastify-toast-bottom);left:50%;transform:translate(-50%);align-items:center}.Toastify__toast-container--bottom-right{bottom:var(--toastify-toast-bottom);right:var(--toastify-toast-right);align-items:end}.Toastify__toast{--y: 0;position:relative;touch-action:none;width:var(--toastify-toast-width);min-height:var(--toastify-toast-min-height);box-sizing:border-box;margin-bottom:1rem;padding:var(--toastify-toast-padding);border-radius:var(--toastify-toast-bd-radius);box-shadow:var(--toastify-toast-shadow);max-height:var(--toastify-toast-max-height);font-family:var(--toastify-font-family);z-index:0;display:flex;flex:1 auto;align-items:center;word-break:break-word}@media only screen and (max-width:480px){.Toastify__toast-container{width:100vw;left:env(safe-area-inset-left);margin:0}.Toastify__toast-container--top-left,.Toastify__toast-container--top-center,.Toastify__toast-container--top-right{top:env(safe-area-inset-top);transform:translate(0)}.Toastify__toast-container--bottom-left,.Toastify__toast-container--bottom-center,.Toastify__toast-container--bottom-right{bottom:env(safe-area-inset-bottom);transform:translate(0)}.Toastify__toast-container--rtl{right:env(safe-area-inset-right);left:initial}.Toastify__toast{--toastify-toast-width: 100%;margin-bottom:0;border-radius:0}}.Toastify__toast-container[data-stacked=true]{width:var(--toastify-toast-width)}.Toastify__toast--stacked{position:absolute;width:100%;transform:translate3d(0,var(--y),0) scale(var(--s));transition:transform .3s}.Toastify__toast--stacked[data-collapsed] .Toastify__toast-body,.Toastify__toast--stacked[data-collapsed] .Toastify__close-button{transition:opacity .1s}.Toastify__toast--stacked[data-collapsed=false]{overflow:visible}.Toastify__toast--stacked[data-collapsed=true]:not(:last-child)>*{opacity:0}.Toastify__toast--stacked:after{content:"";position:absolute;left:0;right:0;height:calc(var(--g) * 1px);bottom:100%}.Toastify__toast--stacked[data-pos=top]{top:0}.Toastify__toast--stacked[data-pos=bot]{bottom:0}.Toastify__toast--stacked[data-pos=bot].Toastify__toast--stacked:before{transform-origin:top}.Toastify__toast--stacked[data-pos=top].Toastify__toast--stacked:before{transform-origin:bottom}.Toastify__toast--stacked:before{content:"";position:absolute;left:0;right:0;bottom:0;height:100%;transform:scaleY(3);z-index:-1}.Toastify__toast--rtl{direction:rtl}.Toastify__toast--close-on-click{cursor:pointer}.Toastify__toast-icon{margin-inline-end:10px;width:22px;flex-shrink:0;display:flex}.Toastify--animate{animation-fill-mode:both;animation-duration:.5s}.Toastify--animate-icon{animation-fill-mode:both;animation-duration:.3s}.Toastify__toast-theme--dark{background:var(--toastify-color-dark);color:var(--toastify-text-color-dark)}.Toastify__toast-theme--light,.Toastify__toast-theme--colored.Toastify__toast--default{background:var(--toastify-color-light);color:var(--toastify-text-color-light)}.Toastify__toast-theme--colored.Toastify__toast--info{color:var(--toastify-text-color-info);background:var(--toastify-color-info)}.Toastify__toast-theme--colored.Toastify__toast--success{color:var(--toastify-text-color-success);background:var(--toastify-color-success)}.Toastify__toast-theme--colored.Toastify__toast--warning{color:var(--toastify-text-color-warning);background:var(--toastify-color-warning)}.Toastify__toast-theme--colored.Toastify__toast--error{color:var(--toastify-text-color-error);background:var(--toastify-color-error)}.Toastify__progress-bar-theme--light{background:var(--toastify-color-progress-light)}.Toastify__progress-bar-theme--dark{background:var(--toastify-color-progress-dark)}.Toastify__progress-bar--info{background:var(--toastify-color-progress-info)}.Toastify__progress-bar--success{background:var(--toastify-color-progress-success)}.Toastify__progress-bar--warning{background:var(--toastify-color-progress-warning)}.Toastify__progress-bar--error{background:var(--toastify-color-progress-error)}.Toastify__progress-bar-theme--colored.Toastify__progress-bar--info,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--success,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--warning,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--error{background:var(--toastify-color-transparent)}.Toastify__close-button{color:#fff;position:absolute;top:6px;right:6px;background:transparent;outline:none;border:none;padding:0;cursor:pointer;opacity:.7;transition:.3s ease;z-index:1}.Toastify__toast--rtl .Toastify__close-button{left:6px;right:unset}.Toastify__close-button--light{color:#000;opacity:.3}.Toastify__close-button>svg{fill:currentColor;height:16px;width:14px}.Toastify__close-button:hover,.Toastify__close-button:focus{opacity:1}@keyframes Toastify__trackProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.Toastify__progress-bar{position:absolute;bottom:0;left:0;width:100%;height:100%;z-index:1;opacity:.7;transform-origin:left}.Toastify__progress-bar--animated{animation:Toastify__trackProgress linear 1 forwards}.Toastify__progress-bar--controlled{transition:transform .2s}.Toastify__progress-bar--rtl{right:0;left:initial;transform-origin:right;border-bottom-left-radius:initial}.Toastify__progress-bar--wrp{position:absolute;overflow:hidden;bottom:0;left:0;width:100%;height:5px;border-bottom-left-radius:var(--toastify-toast-bd-radius);border-bottom-right-radius:var(--toastify-toast-bd-radius)}.Toastify__progress-bar--wrp[data-hidden=true]{opacity:0}.Toastify__progress-bar--bg{opacity:var(--toastify-color-progress-bgo);width:100%;height:100%}.Toastify__spinner{width:20px;height:20px;box-sizing:border-box;border:2px solid;border-radius:100%;border-color:var(--toastify-spinner-color-empty-area);border-right-color:var(--toastify-spinner-color);animation:Toastify__spin .65s linear infinite}@keyframes Toastify__bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(3000px,0,0)}60%{opacity:1;transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutRight{20%{opacity:1;transform:translate3d(-20px,var(--y),0)}to{opacity:0;transform:translate3d(2000px,var(--y),0)}}@keyframes Toastify__bounceInLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(-3000px,0,0)}60%{opacity:1;transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutLeft{20%{opacity:1;transform:translate3d(20px,var(--y),0)}to{opacity:0;transform:translate3d(-2000px,var(--y),0)}}@keyframes Toastify__bounceInUp{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,3000px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translateZ(0)}}@keyframes Toastify__bounceOutUp{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,-2000px,0)}}@keyframes Toastify__bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,-3000px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:none}}@keyframes Toastify__bounceOutDown{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,2000px,0)}}.Toastify__bounce-enter--top-left,.Toastify__bounce-enter--bottom-left{animation-name:Toastify__bounceInLeft}.Toastify__bounce-enter--top-right,.Toastify__bounce-enter--bottom-right{animation-name:Toastify__bounceInRight}.Toastify__bounce-enter--top-center{animation-name:Toastify__bounceInDown}.Toastify__bounce-enter--bottom-center{animation-name:Toastify__bounceInUp}.Toastify__bounce-exit--top-left,.Toastify__bounce-exit--bottom-left{animation-name:Toastify__bounceOutLeft}.Toastify__bounce-exit--top-right,.Toastify__bounce-exit--bottom-right{animation-name:Toastify__bounceOutRight}.Toastify__bounce-exit--top-center{animation-name:Toastify__bounceOutUp}.Toastify__bounce-exit--bottom-center{animation-name:Toastify__bounceOutDown}@keyframes Toastify__zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes Toastify__zoomOut{0%{opacity:1}50%{opacity:0;transform:translate3d(0,var(--y),0) scale3d(.3,.3,.3)}to{opacity:0}}.Toastify__zoom-enter{animation-name:Toastify__zoomIn}.Toastify__zoom-exit{animation-name:Toastify__zoomOut}@keyframes Toastify__flipIn{0%{transform:perspective(400px) rotateX(90deg);animation-timing-function:ease-in;opacity:0}40%{transform:perspective(400px) rotateX(-20deg);animation-timing-function:ease-in}60%{transform:perspective(400px) rotateX(10deg);opacity:1}80%{transform:perspective(400px) rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes Toastify__flipOut{0%{transform:translate3d(0,var(--y),0) perspective(400px)}30%{transform:translate3d(0,var(--y),0) perspective(400px) rotateX(-20deg);opacity:1}to{transform:translate3d(0,var(--y),0) perspective(400px) rotateX(90deg);opacity:0}}.Toastify__flip-enter{animation-name:Toastify__flipIn}.Toastify__flip-exit{animation-name:Toastify__flipOut}@keyframes Toastify__slideInRight{0%{transform:translate3d(110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInLeft{0%{transform:translate3d(-110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInUp{0%{transform:translate3d(0,110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInDown{0%{transform:translate3d(0,-110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideOutRight{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(110%,var(--y),0)}}@keyframes Toastify__slideOutLeft{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(-110%,var(--y),0)}}@keyframes Toastify__slideOutDown{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(0,500px,0)}}@keyframes Toastify__slideOutUp{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(0,-500px,0)}}.Toastify__slide-enter--top-left,.Toastify__slide-enter--bottom-left{animation-name:Toastify__slideInLeft}.Toastify__slide-enter--top-right,.Toastify__slide-enter--bottom-right{animation-name:Toastify__slideInRight}.Toastify__slide-enter--top-center{animation-name:Toastify__slideInDown}.Toastify__slide-enter--bottom-center{animation-name:Toastify__slideInUp}.Toastify__slide-exit--top-left,.Toastify__slide-exit--bottom-left{animation-name:Toastify__slideOutLeft;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--top-right,.Toastify__slide-exit--bottom-right{animation-name:Toastify__slideOutRight;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--top-center{animation-name:Toastify__slideOutUp;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--bottom-center{animation-name:Toastify__slideOutDown;animation-timing-function:ease-in;animation-duration:.3s}@keyframes Toastify__spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.nf-section{width:min(1240px,calc(100% - 28px));margin:0 auto;padding:34px 0}.nf-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px}.nf-head-left{min-width:0}.nf-title{margin:0;font-size:clamp(30px,4vw,48px);line-height:1.02;font-weight:900;letter-spacing:-.03em;color:#0b1b2b}.nf-head-right{display:flex;align-items:center;gap:10px;flex-shrink:0}.nf-all{border:0;background:#0b1b2b0f;color:#0b1b2b;padding:11px 15px;border-radius:14px;cursor:pointer;font-weight:800;transition:background .16s ease,transform .16s ease}.nf-all:hover{background:#0b1b2b1a;transform:translateY(-1px)}.nf-controls{display:flex;gap:8px}.nf-btn{width:48px;height:48px;border-radius:14px;border:1px solid rgba(11,27,43,.12);background:#fff;cursor:pointer;font-size:28px;line-height:1;color:#0b1b2b;box-shadow:0 8px 24px #0f172a14;transition:transform .16s ease,box-shadow .16s ease,opacity .16s ease}.nf-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 14px 30px #0f172a1f}.nf-btn:disabled{opacity:.4;cursor:not-allowed}.nf-progress{position:relative;width:100%;height:4px;border-radius:999px;overflow:hidden;background:#0b1b2b14;margin-bottom:16px}.nf-progress-bar{height:100%;width:100%;transform-origin:left center;background:linear-gradient(90deg,#f57c00,#ffb347);animation-name:nfProgressRun;animation-timing-function:linear;animation-fill-mode:forwards}@keyframes nfProgressRun{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.nf-track{display:flex;gap:20px;overflow-x:auto;padding:8px 2px 16px;scroll-behavior:smooth;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none;cursor:grab;overscroll-behavior-x:contain}.nf-track::-webkit-scrollbar{display:none}.nf-track.nf-dragging{cursor:grabbing;-webkit-user-select:none;user-select:none}.nf-track.nf-dragging .nf-card{cursor:grabbing!important}.nf-card{flex:0 0 calc((100% - 20px)/2);scroll-snap-align:start;display:block;text-decoration:none!important;color:inherit!important;background:#fff;border-radius:28px;overflow:hidden;border:1px solid rgba(15,23,42,.08);box-shadow:0 16px 40px #0f172a14;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;outline:none;min-width:0}.nf-card:hover{transform:translateY(-6px);box-shadow:0 24px 52px #0f172a24;border-color:#f57c0038}.nf-card:focus-visible{outline:3px solid rgba(245,124,0,.3);outline-offset:3px}.nf-card *{text-decoration:none!important}.nf-media{position:relative;height:470px;background:#f1f3f5;overflow:hidden}.nf-media-bg{position:absolute;inset:0;background-size:cover;background-position:center;transform:scale(1);transition:transform .8s ease}.nf-card:hover .nf-media-bg{transform:scale(1.08)}.nf-media-bg--default{background:radial-gradient(circle at top left,rgba(245,124,0,.35),transparent 45%),linear-gradient(135deg,#f57c0047,#0b1b2b3d)}.nf-overlay{position:absolute;inset:0;background:linear-gradient(180deg,#080f1a14,#080f1a24 24%,#080f1a6b 68%,#080f1ac2);pointer-events:none}.nf-badges{position:absolute;top:16px;left:16px;right:16px;display:flex;gap:8px;flex-wrap:wrap;pointer-events:none;z-index:2}.nf-badge{display:inline-flex;align-items:center;padding:7px 10px;border-radius:999px;font-size:12px;font-weight:900;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 8px 18px #00000024}.nf-badge--popular{background:#f57c00f5;color:#fff}.nf-badge--new{background:#16a34af2;color:#fff}.nf-badge--cert{background:#0b1b2bf5;color:#fff}.nf-content-glass{position:absolute;left:18px;right:18px;bottom:18px;z-index:2;display:flex;flex-direction:column;gap:14px;padding:18px 18px 16px;border-radius:22px;background:linear-gradient(135deg,#ffffff29,#ffffff12);border:1px solid rgba(255,255,255,.22);box-shadow:0 18px 40px #0000002e;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.nf-glass-top{min-width:0}.nf-meta--on-image{margin:0 0 10px;color:#ffffffe0;font-size:13px;font-weight:600}.nf-h3--on-image{margin:0 0 10px;font-size:clamp(24px,2vw,30px);line-height:1.08;color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.18)}.nf-desc--on-image{margin:0;color:#ffffffe6;font-size:14px;line-height:1.55;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.nf-dot{margin:0 6px;opacity:.55}.nf-floating-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.nf-floating-btn{border:0;border-radius:999px;padding:12px 18px;font-weight:900;font-size:14px;cursor:pointer;color:#fff;background:linear-gradient(135deg,#f57c00,#ff9d2f);box-shadow:0 14px 26px #f57c0057;transition:transform .16s ease,box-shadow .16s ease,filter .16s ease}.nf-floating-btn:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 18px 32px #f57c006b;filter:brightness(1.02)}.nf-mini-link{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:10px 14px;border-radius:999px;color:#fff!important;font-size:13px;font-weight:800;background:#ffffff1f;border:1px solid rgba(255,255,255,.24);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:background .16s ease,transform .16s ease}.nf-mini-link:hover{background:#ffffff2e;transform:translateY(-1px)}.nf-dots{display:flex;justify-content:center;align-items:center;gap:8px;margin-top:16px;flex-wrap:wrap}.nf-dot-btn{width:10px;height:10px;border-radius:999px;border:0;padding:0;background:#0b1b2b2e;cursor:pointer;transition:transform .16s ease,background .16s ease,width .16s ease}.nf-dot-btn.active{width:32px;background:#f57c00}.nf-dot-btn:hover{transform:scale(1.08)}.nf-skeleton{height:420px;border-radius:28px;background:linear-gradient(90deg,#0000000a 25%,#00000014 37%,#0000000a 63%);background-size:400% 100%;animation:nf-shimmer 1.4s ease infinite}.nf-error{padding:16px;border-radius:14px;background:#dc26260f;border:1px solid rgba(220,38,38,.14);color:#991b1b;font-weight:700}@keyframes nf-shimmer{0%{background-position:100% 0}to{background-position:0 0}}@media(max-width:1100px){.nf-media{height:430px}}@media(max-width:900px){.nf-section{width:min(100%,calc(100% - 22px));padding:28px 0}.nf-media{height:390px}.nf-content-glass{left:14px;right:14px;bottom:14px;padding:16px}}@media(max-width:720px){.nf-head{align-items:flex-start;flex-direction:column}.nf-head-right{width:100%;justify-content:space-between}.nf-card{flex-basis:100%}.nf-media{height:400px}.nf-h3--on-image{font-size:24px}.nf-floating-actions{flex-direction:column;align-items:stretch}.nf-floating-btn,.nf-mini-link{width:100%}}@media(max-width:520px){.nf-section{width:min(100%,calc(100% - 16px));padding:22px 0}.nf-card{border-radius:22px}.nf-media{height:360px}.nf-content-glass{border-radius:18px;padding:14px}.nf-meta--on-image{font-size:12px}.nf-desc--on-image{font-size:13px;-webkit-line-clamp:3}.nf-btn{width:44px;height:44px}}.home-page{--home-max: 1200px;--home-navy: #0b3a66;--home-orange: #ff7a00;--home-orange-dark: #e86f00;--home-bg: #f3f4f6;--home-surface: #ffffff;--home-text: #0f172a;--home-muted: rgba(15, 23, 42, .72);--home-radius: 18px;--home-radius-lg: 24px;--home-border: rgba(15, 23, 42, .1);--home-shadow: 0 12px 30px rgba(2, 6, 23, .1);--home-shadow-soft: 0 8px 20px rgba(2, 6, 23, .06)}.home-page.page{background:var(--home-bg);color:var(--home-text)}.home-page .home-hero{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;padding:56px 0 72px;background:linear-gradient(180deg,#ff7a00,#f77700);overflow:hidden}.home-page .home-hero:after{content:"";position:absolute;inset:auto 0 0;height:88px;background:linear-gradient(180deg,#0000,#0206171a);pointer-events:none}.home-page .home-hero .content-wrapper{position:relative;z-index:2;max-width:var(--home-max);margin:0 auto;padding:0 24px}.home-page .home-hero h1{margin:0 0 18px;max-width:980px;font-size:clamp(38px,5.2vw,82px);line-height:1.02;letter-spacing:-.03em;color:#fff;white-space:normal;overflow-wrap:anywhere;word-break:break-word;text-wrap:balance}.home-page .home-hero p{margin:0;max-width:880px;font-size:clamp(18px,1.5vw,22px);line-height:1.7;color:#fffffff0}.home-page .cta-buttons{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}.home-page .home-hero .cta-buttons .btn{min-height:50px;border-radius:14px;padding:12px 22px;font-weight:800;font-size:16px;transition:transform .14s ease,box-shadow .14s ease,opacity .14s ease,background .14s ease,color .14s ease,border-color .14s ease}.home-page .home-hero .cta-buttons .btn:hover{transform:translateY(-1px);box-shadow:0 10px 20px #02061729}.home-page .home-hero .cta-buttons .btn:active{transform:translateY(0);box-shadow:none}.home-page .home-hero .cta-buttons .btn:focus-visible,.home-page .partenaire-item:focus-visible{outline:3px solid rgba(255,255,255,.55);outline-offset:2px}.home-page .home-hero .cta-buttons .btn-primary{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.88)}.home-page .home-hero .cta-buttons .btn-primary:hover{background:#fff;color:var(--home-orange-dark);border-color:#fff}.home-page .home-hero .cta-buttons .btn-secondary{background:#fff;color:var(--home-orange-dark);border:2px solid #ffffff}.home-page .home-hero .cta-buttons .btn-secondary:hover{background:#fffffff0;border-color:#fffffff0}.home-page .home-section,.home-page .chiffres-cles,.home-page .partenaires-certifications,.home-page .temoignages,.home-page .approche{max-width:var(--home-max);margin-left:auto;margin-right:auto;padding-left:6px;padding-right:6px}.home-page .home-section{margin-top:20px}.home-page .home-h2{max-width:var(--home-max);margin:38px auto 14px;padding:0 6px;font-size:clamp(26px,3vw,42px);line-height:1.1;letter-spacing:-.02em;color:var(--home-text)}.home-page .chiffres-cles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.home-page .chiffres-cles .chiffre{border:1px solid var(--home-border);border-radius:var(--home-radius);padding:20px 16px;background:var(--home-surface);box-shadow:var(--home-shadow-soft)}.home-page .chiffres-cles .chiffre h4{margin:0;font-size:clamp(24px,2.2vw,30px);line-height:1.05;letter-spacing:-.02em;color:var(--home-text)}.home-page .chiffres-cles .chiffre p{margin:8px 0 0;color:var(--home-muted);font-size:14px;line-height:1.5}.home-page .partenaires-certifications{margin-top:2px}.home-page .partenaires{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.home-page .partenaire-item{display:flex;align-items:center;justify-content:center;min-height:74px;text-align:center;border:1px dashed rgba(15,23,42,.18);border-radius:14px;padding:14px 12px;background:#ffffffe0;color:var(--home-text);text-decoration:none;font-weight:700;line-height:1.4;transition:transform .12s ease,border-color .12s ease,background .12s ease,box-shadow .12s ease}.home-page .partenaire-item:hover{transform:translateY(-1px);border-color:#ff7a008c;background:#ff7a000f;box-shadow:0 8px 18px #ff7a001a}.home-page .partenaire-item:focus-visible{outline:3px solid rgba(255,122,0,.35);outline-offset:2px}.home-page .temoignages{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.home-page .temoignage{border:1px solid var(--home-border);border-radius:var(--home-radius);padding:18px 16px;background:var(--home-surface);box-shadow:var(--home-shadow-soft)}.home-page .temoignage p{margin:0;color:var(--home-muted);line-height:1.7}.home-page .temoignage p+p{margin-top:12px;color:#0f172ad1;font-size:14px}.home-page .temoignage span{font-weight:800;color:var(--home-text)}.home-page .approche{margin-bottom:24px}.home-page .approche p{margin:0;border:1px solid var(--home-border);border-radius:var(--home-radius);padding:18px 16px;background:var(--home-surface);box-shadow:var(--home-shadow-soft);color:#0f172ad6;line-height:1.75;font-size:16px}@media(max-width:1100px){.home-page .home-hero{padding:52px 0 64px}.home-page .home-hero h1{max-width:900px}.home-page .partenaires{grid-template-columns:repeat(3,minmax(0,1fr))}.home-page .chiffres-cles{grid-template-columns:repeat(2,minmax(0,1fr))}.home-page .temoignages{grid-template-columns:1fr}}@media(max-width:768px){.home-page .home-hero{padding:42px 0 54px}.home-page .home-hero .content-wrapper{padding:0 18px}.home-page .home-hero h1{font-size:clamp(34px,8vw,54px);max-width:100%;text-wrap:pretty}.home-page .home-hero p{font-size:17px;line-height:1.65}.home-page .partenaires{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.home-page .home-hero{padding:34px 0 44px}.home-page .home-hero h1{font-size:clamp(30px,9vw,42px);line-height:1.06}.home-page .home-hero p{font-size:15.5px}.home-page .cta-buttons{gap:10px}.home-page .cta-buttons .btn{width:100%;justify-content:center}.home-page .chiffres-cles,.home-page .partenaires{grid-template-columns:1fr}}.home-page .home-hero-benefits{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.home-page .home-hero-benefit{display:inline-flex;align-items:center;min-height:38px;padding:8px 12px;border-radius:999px;background:#ffffff24;border:1px solid rgba(255,255,255,.2);color:#fff;font-size:14px;font-weight:700;line-height:1.35}@media(max-width:520px){.home-page .home-hero-benefits{gap:8px}.home-page .home-hero-benefit{width:100%;justify-content:center;text-align:center}}.body-content{padding:60px 40px;width:100vw;margin:0;margin-left:calc(-50vw + 50%);min-height:500px;background-color:#ff7a00;display:flex;flex-direction:row;justify-content:space-between;align-items:flex-start;text-align:left;font-family:Arial,sans-serif;position:relative}.qualiopi-logo{width:400px;height:auto;background-color:#fff;padding:8px;border-radius:0;position:absolute;top:0;right:0;margin:0}.content-wrapper{flex:1;display:flex;flex-direction:column;justify-content:center;max-width:70%}.body-logo{width:100px;height:100px;margin-bottom:30px;display:block}.body-content h1{font-size:3rem;color:#fff;margin-bottom:30px;font-weight:700;text-align:left;white-space:nowrap;font-family:Arial,sans-serif}.body-content p{font-size:1.2rem;line-height:1.8;color:#fff;margin-bottom:40px;text-align:left;max-width:700px;font-family:Arial,sans-serif}.cta-buttons{display:flex;gap:20px;justify-content:flex-start;flex-wrap:wrap;text-align:left;transform:translateY(-2px)}.btn{padding:5px 8px!important;width:100px!important;text-decoration:none;border-radius:8px;font-weight:600;font-size:1rem;transition:all .3s ease;box-shadow:0 4px 8px #0003;border:2px solid transparent;font-family:Arial,sans-serif}.btn-primary{background-color:#ff7a00;color:#fff;border:2px solid white;padding:7px 10px!important;width:200px!important;font-weight:700;box-shadow:0 4px 15px #ff7a004d}.btn-primary:hover{background-color:#e86900;color:#fff;border:2px solid white;transform:translateY(-2px);box-shadow:0 6px 20px #ff7a0066}.btn-secondary{background-color:#fff;color:#ff7a00;border:2px solid white;padding:7px 10px!important;width:200px!important;font-weight:700}.btn-secondary:hover{background-color:#002b5c;color:#fff;border:2px solid white;transform:translateY(-2px)}h2{font-size:1.75rem;color:#000;margin-bottom:20px;text-align:left;font-family:Arial,sans-serif}h3{font-size:1.5rem;color:#000;margin-bottom:15px;margin-top:0;font-weight:700;text-align:left;font-family:Arial,sans-serif}.formations-mise-en-avant{display:flex;gap:20px;padding:30px 20px;max-width:1200px;margin:0 auto;font-family:Arial,sans-serif;justify-content:center;align-items:stretch;flex-wrap:nowrap}.formation-card{background:linear-gradient(to bottom,#fff,#fafbfc);border-radius:20px;box-shadow:0 4px 20px #002b5c14,0 2px 8px #002b5c0a,inset 0 1px #fffc;overflow:hidden;transition:all .4s cubic-bezier(.4,0,.2,1);border:1px solid rgba(255,255,255,.2);flex:1;min-width:280px;max-width:320px;display:flex;flex-direction:column;height:540px;position:relative}.formation-card:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.1) 0%,transparent 50%);border-radius:16px;pointer-events:none}.formation-card:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 20px 40px #002b5c26,0 8px 24px #002b5c14,0 2px 8px #ff7a001a,inset 0 1px #ffffffe6;border-color:#ff7a0033}.card-image-placeholder{position:relative;height:160px;display:flex;align-items:center;justify-content:center;overflow:hidden}.card-image-placeholder:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.1) 100%);z-index:1}.card-image-placeholder:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:linear-gradient(90deg,#ff7a00,#002b5c);z-index:2}.web-dev-image{background:linear-gradient(45deg,#ff7a00,#ff9500);position:relative}.web-dev-image:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 30% 30%,rgba(255,255,255,.3) 0%,transparent 50%),radial-gradient(circle at 80% 70%,rgba(255,255,255,.1) 0%,transparent 40%);z-index:1}.cloud-cyber-image{background:linear-gradient(45deg,#002b5c,#1e3a8a);position:relative}.cloud-cyber-image:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 70% 20%,rgba(255,255,255,.2) 0%,transparent 50%),radial-gradient(circle at 20% 80%,rgba(255,255,255,.1) 0%,transparent 40%);z-index:1}.sport-image{background:linear-gradient(45deg,#ff7a00,#002b5c);position:relative}.sport-image:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 30%,rgba(255,255,255,.25) 0%,transparent 50%),radial-gradient(circle at 30% 80%,rgba(255,255,255,.15) 0%,transparent 40%);z-index:1}.image-icon{position:relative;z-index:2}.code-symbol{font-size:2.5rem;color:#fff;font-family:monospace;font-weight:700;position:relative;z-index:2;text-shadow:0 2px 8px rgba(0,0,0,.3);filter:drop-shadow(0 1px 3px rgba(0,0,0,.2))}.tech-symbol,.sport-symbol{font-size:2.5rem;color:#fff;position:relative;z-index:2;text-shadow:0 2px 8px rgba(0,0,0,.3);filter:drop-shadow(0 1px 3px rgba(0,0,0,.2))}.image-overlay{position:absolute;top:12px;right:12px;z-index:3}.category-badge{background:#fffffff2;color:#002b5c;padding:4px 10px;border-radius:15px;font-size:.8rem;font-weight:600;border:1px solid rgba(255,122,0,.3);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 2px 8px #002b5c1a,inset 0 1px #fffc}.card-content{padding:24px;display:flex;flex-direction:column;flex-grow:1;position:relative;height:360px;justify-content:space-between}.card-main-content{display:flex;flex-direction:column;flex:1;min-height:0}.card-content:after{content:"";position:absolute;bottom:0;left:20px;right:20px;height:1px;background:linear-gradient(90deg,transparent,rgba(0,43,92,.1),transparent)}.formation-card h3{font-size:1.2rem;font-weight:700;color:#002b5c;margin-bottom:10px;line-height:1.3}.formation-description{color:#555;font-size:.9rem;line-height:1.4;margin-bottom:12px;flex-grow:1;min-height:40px}.formation-skills{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:12px;min-height:55px;align-content:flex-start}.skill-tag{background:#f8f9fa;color:#002b5c;padding:6px 12px;border-radius:20px;font-size:.85rem;font-weight:500;border:1px solid #e9ecef;transition:all .2s ease;box-shadow:0 2px 4px #002b5c0d;position:relative}.skill-tag:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.8) 0%,transparent 50%);border-radius:20px;pointer-events:none}.skill-tag:hover{background:#ff7a00;color:#fff;border-color:#ff7a00;transform:translateY(-1px);box-shadow:0 4px 12px #ff7a0040}.formation-details{margin-bottom:15px}.detail-item{margin-bottom:4px;color:#666;font-size:.85rem}.button-container{display:flex;gap:10px;flex-shrink:0;align-items:stretch}.btn-alternance,.btn-voir-fiche{flex:1;padding:10px 15px;border-radius:8px;text-decoration:none;font-weight:600;font-size:.85rem;text-align:center;transition:all .3s cubic-bezier(.4,0,.2,1);border:none;cursor:pointer;position:relative;overflow:hidden;box-shadow:0 3px 12px #002b5c1a}.btn-alternance:before,.btn-voir-fiche:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s ease}.btn-alternance:hover:before,.btn-voir-fiche:hover:before{left:100%}.btn-alternance{background:linear-gradient(135deg,#ff7a00,#e06600);color:#fff;box-shadow:0 4px 15px #ff7a004d,inset 0 1px #fff3}.btn-alternance:hover{background:linear-gradient(135deg,#e06600,#c50);transform:translateY(-2px);box-shadow:0 8px 25px #ff7a0066,inset 0 1px #ffffff4d}.btn-voir-fiche{background:transparent;color:#ff7a00;border:2px solid #ff7a00;box-shadow:0 3px 12px #ff7a0026,inset 0 1px #ffffff1a}.btn-voir-fiche:hover{background:linear-gradient(135deg,#ff7a00,#e06600);color:#fff;transform:translateY(-2px);box-shadow:0 8px 25px #ff7a004d,inset 0 1px #fff3;border-color:#e06600}.chiffres-cles{display:flex;justify-content:space-around;flex-wrap:wrap;gap:20px;margin:40px auto;padding:20px;font-family:Arial,sans-serif}.chiffre{border:solid 1px rgb(201,194,194);border-radius:10px;padding:20px;margin:10px;text-align:center;flex:1;min-width:200px;background-color:#fff;box-shadow:0 4px 8px #0000001a;font-family:Arial,sans-serif;display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:120px}h4{font-size:2rem;color:#e66a00;margin-bottom:5px;font-weight:700;text-align:center;font-family:Arial,sans-serif}.partenaires-certifications{padding:40px 20px;margin:40px 0;background-color:#fff;border:solid 1px rgb(201,194,194);border-radius:15px;font-family:Arial,sans-serif}.partenaires{display:grid;grid-template-columns:1fr 1fr 1fr 1fr 1fr;gap:15px;width:100%;max-width:1200px;margin:0 auto;padding:20px;box-sizing:border-box;font-family:Arial,sans-serif}.partenaire-item{background-color:#f8f9fa;color:#002b5c;padding:15px 20px;border:2px solid #e0e0e0;border-radius:8px;font-weight:600;font-size:14px;text-align:center;margin:0;box-shadow:0 4px 8px #0000001a;transition:transform .2s ease,box-shadow .2s ease;font-family:Arial,sans-serif}.partenaire-item:hover{transform:translateY(-2px);box-shadow:0 6px 12px #00000026;border-color:#002b5c}.partenaires p:hover{border-color:#002b5c}.eligibilite-cpf{text-align:left;color:#000;font-size:1rem;margin:20px 0;font-family:Arial,sans-serif;padding:40px 20px}.temoignages{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin:40px auto;padding:20px;max-width:1200px;font-family:Arial,sans-serif}.temoignage{background-color:#fff;border:2px solid #e0e0e0;border-radius:10px;padding:25px;text-align:left;display:flex;flex-direction:column;justify-content:space-between;min-height:200px;font-family:Arial,sans-serif;box-shadow:0 4px 8px #0000001a}.temoignage:hover{transform:translateY(-2px);border-color:#002b5c}.temoignage p{margin:0 0 15px;color:#333;line-height:1.8;font-family:Arial,sans-serif}.temoignage p:first-child{margin-top:5px}span{margin-bottom:0;font-weight:700;color:#000;font-family:Arial,sans-serif}.approche{text-align:left;color:#000;font-size:1rem;margin:20px 0;padding:40px 20px;background-color:#fff;border:solid 1px rgb(201,194,194);border-radius:15px;font-family:Arial,sans-serif}@media(max-width:768px){.formations-mise-en-avant{flex-direction:column;gap:16px;padding:20px 15px}.formation-card{max-width:100%;min-width:auto;height:auto;min-height:480px}.card-content{height:auto;padding:20px}.formation-description{font-size:.9rem;min-height:50px}.formation-skills{min-height:55px}}@media(max-width:480px){.formation-card h3{font-size:1.1rem}.formation-description{font-size:.85rem}.skill-tag{padding:6px 10px;font-size:.8rem}.btn-alternance,.btn-voir-fiche{padding:10px 14px;font-size:.8rem}}.about-page{--about-max: 1200px;--about-navy: #0b3a66;--about-orange: #ff7a00;--about-orange-dark: #e86f00;--about-bg: #f3f4f6;--about-surface: #ffffff;--about-surface-soft: rgba(255, 255, 255, .88);--about-text: #0f172a;--about-muted: rgba(15, 23, 42, .72);--about-border: rgba(15, 23, 42, .1);--about-border-soft: rgba(15, 23, 42, .08);--about-radius: 18px;--about-radius-lg: 24px;--about-shadow: 0 12px 30px rgba(2, 6, 23, .1);--about-shadow-soft: 0 8px 20px rgba(2, 6, 23, .06);display:block;width:100%;background:var(--about-bg);color:var(--about-text);margin:0;padding:0 0 36px;overflow-x:hidden;box-sizing:border-box}.about-page *,.about-page *:before,.about-page *:after{box-sizing:border-box}.about-page>*:first-child{margin-top:0!important}.about-page .about-hero{position:relative;width:100%;margin:0;padding:56px 0 70px;background:linear-gradient(180deg,#ff7a00,#f77700);overflow:hidden}.about-page .about-hero:after{content:"";position:absolute;inset:auto 0 0;height:88px;background:linear-gradient(180deg,#0000,#0206171a);pointer-events:none}.about-page .about-hero-inner{position:relative;z-index:2;max-width:var(--about-max);margin:0 auto;padding:0 24px}.about-page .about-badge{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:8px 14px;margin-bottom:16px;border-radius:999px;background:#ffffff24;border:1px solid rgba(255,255,255,.22);color:#fff;font-size:.86rem;font-weight:800;line-height:1}.about-page .about-hero h1{margin:0 0 18px;max-width:900px;font-size:clamp(38px,5.2vw,74px);line-height:1.02;letter-spacing:-.03em;color:#fff;text-wrap:balance;overflow-wrap:anywhere;word-break:break-word}.about-page .about-hero-subtitle{margin:0;max-width:880px;font-size:clamp(18px,1.5vw,22px);line-height:1.7;color:#fffffff0}.about-page .about-hero-subtitle strong{color:#fff}.about-page .about-hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}.about-page .about-hero-actions .btn,.about-page .about-hero-actions .btn-primary{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:12px 22px;border-radius:14px;font-weight:800;text-decoration:none;transition:transform .14s ease,box-shadow .14s ease,background .14s ease,color .14s ease,border-color .14s ease}.about-page .about-hero-actions .btn-primary{background:#fff;color:var(--about-orange-dark);border:2px solid #ffffff}.about-page .about-hero-actions .btn-primary:hover{background:#fffffff0;transform:translateY(-1px);box-shadow:0 10px 22px #02061724}.about-page .about-hero-actions .btn{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.88)}.about-page .about-hero-actions .btn:hover{background:#fff;color:var(--about-orange-dark);border-color:#fff;transform:translateY(-1px);box-shadow:0 10px 22px #02061724}.about-page .about-hero-actions .btn:focus-visible,.about-page .about-hero-actions .btn-primary:focus-visible{outline:3px solid rgba(255,255,255,.58);outline-offset:2px}.about-page .about-section{max-width:var(--about-max);margin:0 auto;padding:0 6px}.about-page .about-section+.about-section{margin-top:18px}.about-page .about-title{max-width:var(--about-max);margin:38px auto 14px;padding:0 6px;font-size:clamp(26px,3vw,42px);line-height:1.1;letter-spacing:-.02em;color:var(--about-text)}.about-page .about-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.about-page .about-grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.about-page .about-card,.about-page .about-callout,.about-page .about-value-card,.about-page .about-stat-card{background:var(--about-surface);border:1px solid var(--about-border);border-radius:var(--about-radius);box-shadow:var(--about-shadow-soft)}.about-page .about-card,.about-page .about-callout,.about-page .about-value-card{padding:20px 18px}.about-page .about-card h2,.about-page .about-card h3,.about-page .about-callout h3,.about-page .about-value-card h3{margin-top:0;margin-bottom:12px;color:var(--about-text);letter-spacing:-.01em}.about-page .about-card p,.about-page .about-callout p,.about-page .about-value-card p{color:#0f172ad6;line-height:1.72}.about-page .about-card p:last-child,.about-page .about-callout p:last-child,.about-page .about-value-card p:last-child{margin-bottom:0}.about-page .about-muted{color:var(--about-muted)!important}.about-page .about-list,.about-page .about-bullet-list{margin:0;padding-left:0;list-style:none;display:grid;gap:10px}.about-page .about-list li,.about-page .about-bullet-list li{position:relative;padding-left:22px;color:#0f172ad6;line-height:1.62}.about-page .about-list li:before,.about-page .about-bullet-list li:before{content:"";position:absolute;left:0;top:.72em;width:8px;height:8px;border-radius:999px;background:var(--about-orange);transform:translateY(-50%)}.about-page .about-callout{background:linear-gradient(180deg,#ff7a0014,#fff);border-color:#ff7a002e}.about-page .about-callout .btn-primary{display:inline-flex;align-items:center;justify-content:center;min-height:46px;margin-top:8px;padding:10px 16px;border-radius:12px;text-decoration:none;font-weight:800;background:linear-gradient(135deg,var(--about-orange),#ff9500);color:#fff;box-shadow:0 8px 18px #ff7a002e;transition:transform .14s ease,box-shadow .14s ease}.about-page .about-callout .btn-primary:hover{transform:translateY(-1px);box-shadow:0 12px 22px #ff7a003d}.about-page .about-callout .btn-primary:focus-visible{outline:3px solid rgba(255,122,0,.32);outline-offset:2px}.about-page .about-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.about-page .about-stat-card{padding:18px 16px}.about-page .about-stat-value{margin:0;font-size:clamp(24px,2vw,30px);line-height:1.05;letter-spacing:-.02em;color:var(--about-text);font-weight:900}.about-page .about-stat-label{margin:8px 0 0;font-size:14px;line-height:1.5;color:var(--about-muted)}.about-page .about-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.about-page .about-value-card h3{margin-bottom:10px}.about-page .about-final-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:14px}.about-page .about-final-actions .btn,.about-page .about-final-actions .btn-primary{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:10px 16px;border-radius:12px;text-decoration:none;font-weight:800;transition:transform .14s ease,box-shadow .14s ease,background .14s ease,color .14s ease,border-color .14s ease}.about-page .about-final-actions .btn-primary{background:linear-gradient(135deg,var(--about-orange),#ff9500);color:#fff;box-shadow:0 8px 18px #ff7a002e}.about-page .about-final-actions .btn-primary:hover{transform:translateY(-1px);box-shadow:0 12px 22px #ff7a003d}.about-page .about-final-actions .btn{background:transparent;color:var(--about-navy);border:1.5px solid rgba(11,58,102,.2)}.about-page .about-final-actions .btn:hover{background:#0b3a660d;border-color:#0b3a6659;transform:translateY(-1px)}.about-page .about-final-actions .btn:focus-visible,.about-page .about-final-actions .btn-primary:focus-visible{outline:3px solid rgba(255,122,0,.28);outline-offset:2px}@media(max-width:1100px){.about-page .about-grid-3,.about-page .about-values,.about-page .about-stats{grid-template-columns:1fr 1fr}}@media(max-width:820px){.about-page .about-hero{padding:44px 0 56px}.about-page .about-hero-inner{padding:0 18px}.about-page .about-hero h1{font-size:clamp(34px,8vw,54px);max-width:100%}.about-page .about-hero-subtitle{font-size:17px;line-height:1.65}.about-page .about-grid-2,.about-page .about-grid-3,.about-page .about-values{grid-template-columns:1fr}}@media(max-width:520px){.about-page .about-hero{padding:34px 0 44px}.about-page .about-hero h1{font-size:clamp(30px,9vw,42px);line-height:1.06}.about-page .about-hero-actions,.about-page .about-final-actions{gap:10px}.about-page .about-hero-actions .btn,.about-page .about-hero-actions .btn-primary,.about-page .about-final-actions .btn,.about-page .about-final-actions .btn-primary{width:100%;justify-content:center}.about-page .about-stats{grid-template-columns:1fr}.about-page .about-card,.about-page .about-callout,.about-page .about-value-card{padding:18px 14px}}.fin-page{--fin-text: #0f172a;--fin-muted: #475569;--fin-border: rgba(15, 23, 42, .1);--fin-card: #ffffff;--fin-bg: #ffffff;--fin-soft: rgba(255, 122, 0, .1);--fin-soft-border: rgba(255, 122, 0, .22);--fin-shadow: 0 18px 46px rgba(15, 23, 42, .08);--fin-shadow-soft: 0 12px 30px rgba(15, 23, 42, .06);--fin-radius: 20px;--fin-radius-sm: 14px;--fin-max: 1100px}.page.fin-page{background:var(--fin-bg);color:var(--fin-text)}.fin-page .page-hero,.fin-page .page-section{max-width:var(--fin-max);margin-left:auto;margin-right:auto}.fin-page .page-hero{position:relative;margin-bottom:22px;padding:22px 20px;border-radius:var(--fin-radius);border:1px solid var(--fin-border);background:radial-gradient(900px 240px at 10% 0%,rgba(0,43,92,.1),transparent 60%),radial-gradient(900px 240px at 90% 0%,rgba(255,122,0,.12),transparent 60%),linear-gradient(180deg,#f8fafc,#fff);box-shadow:var(--fin-shadow-soft);overflow:hidden}.fin-page .badge.badge-soft{background:#002b5c1a;color:#002b5c;border:1px solid rgba(0,43,92,.14)}.fin-page .page-hero h1{margin:6px 0 10px;font-size:clamp(28px,3.2vw,44px);letter-spacing:-.8px;line-height:1.05;font-weight:900}.fin-page .page-hero-subtitle{margin:0;max-width:72ch;font-size:16px;line-height:1.6;color:var(--fin-muted)}.fin-page .hero-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:14px}.fin-page .hero-actions .btn,.fin-page .hero-actions .btn-primary{border-radius:16px;padding:11px 16px;font-weight:900;line-height:1;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.fin-page .page-hero a.btn{background:#0f172a0a;border:1px solid rgba(15,23,42,.08);color:var(--fin-text)}.fin-page .page-hero a.btn:hover{background:#0f172a0f;transform:translateY(-1px)}.fin-page .page-hero a.btn:focus-visible,.fin-page .page-hero .btn-primary:focus-visible{outline:3px solid rgba(255,122,0,.35);outline-offset:3px}.fin-page .page-section{margin-bottom:22px}.fin-page .page-section h2{margin:0 0 10px;font-size:20px;font-weight:900;letter-spacing:-.2px}.fin-page .muted{color:var(--fin-muted)}.fin-page .card{background:var(--fin-card);border-radius:var(--fin-radius);border:1px solid var(--fin-border);box-shadow:var(--fin-shadow-soft)}.fin-page .page-grid-2{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:16px;align-items:start}.fin-page .callout{border-radius:var(--fin-radius);border:1px solid var(--fin-soft-border);background:var(--fin-soft);padding:16px}.fin-page .callout h3{margin:0 0 8px;font-size:16px;font-weight:900}.fin-page .callout p{margin:0;color:#7c2d12;line-height:1.6}.fin-page .callout .hero-actions{margin-top:12px}.fin-page .bullet-list{margin:10px 0 0;padding-left:18px;color:#334155;line-height:1.7}.fin-page .highlight-list{list-style:none;padding-left:0;margin:10px 0 0}.fin-page .highlight-list li{margin-bottom:7px;color:#334155}.fin-page .highlight-list li:before{content:"•";color:#ff7a00;font-weight:900;display:inline-block;width:16px}.fin-page .faq{border:1px solid rgba(15,23,42,.08);background:#0f172a05;border-radius:var(--fin-radius-sm);padding:12px 14px}.fin-page .faq+.faq{margin-top:10px}.fin-page .faq summary{cursor:pointer;font-weight:900;color:var(--fin-text);list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px}.fin-page .faq summary::-webkit-details-marker{display:none}.fin-page .faq summary:after{content:"＋";font-weight:900;opacity:.7}.fin-page .faq[open] summary:after{content:"－";opacity:.9}.fin-page .faq p{margin:10px 0 0;color:var(--fin-muted);line-height:1.7}.fin-page #parcours,.fin-page #particuliers,.fin-page #entreprises,.fin-page #faq{scroll-margin-top:110px}.fin-page .btn-primary{border-radius:16px;padding:11px 16px;font-weight:900}.fin-page .btn{border-radius:16px}@media(max-width:900px){.fin-page .page-hero{padding:18px 16px}.fin-page .page-grid-2{grid-template-columns:1fr}}@media(max-width:520px){.fin-page .hero-actions .btn,.fin-page .hero-actions .btn-primary{width:100%}}html[data-theme=dark] .page.fin-page{--fin-text: #e5e7eb;--fin-muted: #9ca3af;--fin-border: rgba(148, 163, 184, .16);--fin-card: #0b1120;--fin-bg: #020617;--fin-soft: rgba(255, 122, 0, .12);--fin-soft-border: rgba(255, 122, 0, .22);--fin-shadow-soft: 0 18px 46px rgba(0, 0, 0, .35)}html[data-theme=dark] .fin-page .page-hero{background:radial-gradient(900px 240px at 10% 0%,rgba(99,102,241,.14),transparent 60%),radial-gradient(900px 240px at 90% 0%,rgba(255,122,0,.12),transparent 60%),linear-gradient(180deg,#020617,#0b1120)}html[data-theme=dark] .fin-page .page-hero a.btn{background:#ffffff0a;border:1px solid rgba(255,255,255,.1);color:var(--fin-text)}html[data-theme=dark] .fin-page .faq{background:#ffffff08}.contact-page{--contact-max: 1200px;--contact-navy: #0b3a66;--contact-orange: #ff7a00;--contact-orange-dark: #e86f00;--contact-bg: #f3f4f6;--contact-surface: #ffffff;--contact-text: #0f172a;--contact-muted: rgba(15, 23, 42, .72);--contact-border: rgba(15, 23, 42, .1);--contact-radius: 18px;--contact-shadow: 0 12px 30px rgba(2, 6, 23, .1);--contact-shadow-soft: 0 8px 20px rgba(2, 6, 23, .06);display:block;width:100%;min-height:100vh;background:var(--contact-bg);color:var(--contact-text);margin:0;padding:0 0 36px;overflow-x:hidden;box-sizing:border-box}.contact-page *,.contact-page *:before,.contact-page *:after{box-sizing:border-box}.contact-page>*:first-child{margin-top:0!important}.contact-page .contact-hero{position:relative;width:100%;margin:0;padding:56px 0 70px;background:linear-gradient(180deg,#ff7a00,#f77700);overflow:hidden}.contact-page .contact-hero:after{content:"";position:absolute;inset:auto 0 0;height:88px;background:linear-gradient(180deg,#0000,#0206171a);pointer-events:none}.contact-page .contact-hero-inner{position:relative;z-index:2;max-width:var(--contact-max);margin:0 auto;padding:0 24px}.contact-page .contact-badge{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:8px 14px;margin-bottom:16px;border-radius:999px;background:#ffffff24;border:1px solid rgba(255,255,255,.22);color:#fff;font-size:.86rem;font-weight:800;line-height:1}.contact-page .contact-hero h1{margin:0 0 18px;max-width:900px;font-size:clamp(38px,5.2vw,72px);line-height:1.02;letter-spacing:-.03em;color:#fff;text-wrap:balance;overflow-wrap:anywhere;word-break:break-word}.contact-page .contact-hero-subtitle{margin:0;max-width:880px;font-size:clamp(18px,1.5vw,22px);line-height:1.7;color:#fffffff0}.contact-page .contact-section{max-width:var(--contact-max);margin:22px auto 0;padding:0 6px}.contact-page .contact-grid-2{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:22px;align-items:start}.contact-page .contact-card{background:var(--contact-surface);border:1px solid var(--contact-border);border-radius:var(--contact-radius);box-shadow:var(--contact-shadow-soft);padding:22px 20px}.contact-page .contact-card h2{margin:0 0 10px;font-size:1.4rem;letter-spacing:-.02em;color:var(--contact-text)}.contact-page .contact-card p{margin:0;color:#0f172ad1;line-height:1.7}.contact-page .alert-success,.contact-page .alert-error{border-radius:14px;padding:12px 14px;border:1px solid rgba(15,23,42,.1);line-height:1.5}.contact-page .alert-success{background:#22c55e1a;color:#166534}.contact-page .alert-error{background:#ef44441a;color:#991b1b}.contact-page .contact-form-grid{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px;margin-top:18px}.contact-page .form-field{display:flex;flex-direction:column;gap:8px}.contact-page .form-field.full-width{grid-column:1 / -1}.contact-page .form-field label{font-size:.85rem;font-weight:700;color:#1f2937}.contact-page .form-field input,.contact-page .form-field textarea,.contact-page .form-field select{width:100%;border-radius:14px;border:1px solid rgba(15,23,42,.12);background:#fff;padding:12px 14px;font-size:.95rem;color:#0f172a;outline:none;transition:box-shadow .15s ease,border-color .15s ease,transform .05s ease,background .15s ease}.contact-page .form-field input::placeholder,.contact-page .form-field textarea::placeholder{color:#94a3b8}.contact-page .form-field input:focus,.contact-page .form-field textarea:focus,.contact-page .form-field select:focus{border-color:#ff7a00a6;box-shadow:0 0 0 4px #ff7a002e}.contact-page .form-field input:hover,.contact-page .form-field textarea:hover,.contact-page .form-field select:hover{border-color:#0f172a2e}.contact-page textarea{resize:vertical;min-height:140px}.contact-page .text-muted-small{font-size:12px;color:#64748b;line-height:1.45}.contact-page .form-actions{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:6px}.contact-page .btn-primary,.contact-page .btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;border-radius:999px;padding:10px 16px;font-weight:800;line-height:1;cursor:pointer;text-decoration:none;transition:transform .12s ease,filter .12s ease,background .12s ease,box-shadow .12s ease,border-color .12s ease}.contact-page .btn-primary{background:linear-gradient(135deg,#ff7a00,#ff9500);color:#fff;border:0;box-shadow:0 10px 26px #ff7a0040}.contact-page .btn-primary:hover{filter:brightness(.97);transform:translateY(-1px)}.contact-page .btn-secondary{background:#fff;color:#0f172a;border:1px solid rgba(15,23,42,.14)}.contact-page .btn-secondary:hover{background:#0f172a08;transform:translateY(-1px)}.contact-page .btn-primary:disabled{opacity:.6;cursor:not-allowed;box-shadow:none;transform:none}.contact-page .contact-info-card{background:radial-gradient(circle at top,#ff7a0012,#0f172a05)}@media(min-width:980px){.contact-page .contact-info-card{position:sticky;top:calc(var(--public-header-height, 88px) + 16px)}}.contact-page .contact-info-list{margin:12px 0 0;padding-left:0;list-style:none;display:grid;gap:14px}.contact-page .contact-info-list li{color:#1f2937;line-height:1.65}.contact-page .contact-info-list strong{color:#0f172a}.contact-page .bullet-list{margin:8px 0 0;padding-left:18px}.contact-page .bullet-list li{margin:6px 0 0;color:#475569}.contact-page .contact-highlight{margin-top:16px;padding:14px 15px;border-radius:16px;background:#ff7a001a;border:1px solid rgba(255,122,0,.22);color:#7c2d12}.contact-page .contact-highlight p{color:inherit}.contact-page code{padding:1px 6px;border-radius:8px;background:#0f172a0f;color:#0f172a;font-size:.92em}@media(max-width:980px){.contact-page .contact-grid-2{grid-template-columns:1fr}.contact-page .contact-info-card{position:static}}@media(max-width:768px){.contact-page .contact-hero{padding:44px 0 56px}.contact-page .contact-hero-inner{padding:0 18px}.contact-page .contact-hero h1{font-size:clamp(34px,8vw,54px);max-width:100%}.contact-page .contact-hero-subtitle{font-size:17px;line-height:1.65}.contact-page .contact-section{padding:0 6px}.contact-page .contact-card{padding:18px 16px}.contact-page .contact-form-grid{grid-template-columns:1fr}}@media(max-width:520px){.contact-page .contact-hero{padding:34px 0 44px}.contact-page .contact-hero h1{font-size:clamp(30px,9vw,42px);line-height:1.06}.contact-page .form-actions{gap:10px}.contact-page .btn-primary,.contact-page .btn-secondary{width:100%;justify-content:center}.contact-page .contact-card{padding:16px 14px}}html[data-theme=dark] .contact-page{background:#020617;color:#e5e7eb}html[data-theme=dark] .contact-page .contact-card{background:#0b1120;border-color:#94a3b82e;box-shadow:0 18px 45px #00000059}html[data-theme=dark] .contact-page .contact-card h2,html[data-theme=dark] .contact-page .contact-info-list strong{color:#f8fafc}html[data-theme=dark] .contact-page .contact-card p,html[data-theme=dark] .contact-page .contact-info-list li,html[data-theme=dark] .contact-page .bullet-list li,html[data-theme=dark] .contact-page .text-muted-small{color:#9ca3af}html[data-theme=dark] .contact-page .form-field label{color:#e5e7eb}html[data-theme=dark] .contact-page .form-field input,html[data-theme=dark] .contact-page .form-field textarea,html[data-theme=dark] .contact-page .form-field select{background:#020617;color:#e5e7eb;border-color:#94a3b840}html[data-theme=dark] .contact-page .form-field input::placeholder,html[data-theme=dark] .contact-page .form-field textarea::placeholder{color:#64748b}html[data-theme=dark] .contact-page .form-field input:focus,html[data-theme=dark] .contact-page .form-field textarea:focus,html[data-theme=dark] .contact-page .form-field select:focus{border-color:#ff7a00b3;box-shadow:0 0 0 4px #ff7a0033}html[data-theme=dark] .contact-page .btn-secondary{background:#ffffff0a;color:#e5e7eb;border-color:#94a3b838}html[data-theme=dark] .contact-page .contact-highlight{background:#ff7a001f;border-color:#ff7a0040;color:#fdba74}html[data-theme=dark] .contact-page .alert-success{background:#22c55e24;color:#86efac;border-color:#22c55e33}html[data-theme=dark] .contact-page .alert-error{background:#ef444424;color:#fca5a5;border-color:#ef444433}html[data-theme=dark] .contact-page code{background:#ffffff0f;color:#e5e7eb}:root{--fc-orange: #ff7a00;--fc-orange-2: #ff9500;--ink: #0f172a;--muted: #64748b;--card-bg: #ffffff;--page-bg: #ffffff;--line: rgba(15, 23, 42, .08);--shadow: 0 16px 30px rgba(0, 0, 0, .06);--radius-xl: 20px;--radius-lg: 16px;--focus: rgba(255, 122, 0, .35)}.formations-public-page,.fpub-page{padding-bottom:30px}.fp-title{font-size:46px;font-weight:900;margin:0 0 10px;letter-spacing:-.6px;color:var(--ink)}.fp-intro{margin:0 0 14px;opacity:.86;font-size:16px;color:var(--muted);line-height:1.6}.fp-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;flex-wrap:wrap}.fp-chip{border:0;cursor:pointer;padding:10px 16px;border-radius:999px;background:#0f172a0d;font-weight:900;font-size:14px;color:var(--ink);display:inline-flex;align-items:center;gap:10px;transition:transform .12s ease,background .12s ease}.fp-chip:hover{transform:translateY(-1px);background:#0f172a14}.fp-chip-count{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:22px;padding:0 8px;border-radius:999px;background:#ffffff3d;font-size:12px;font-weight:900}.fp-search input{width:min(420px,88vw);padding:12px 14px;border-radius:14px;border:1px solid rgba(15,23,42,.14);background:var(--card-bg);outline:none;font-size:14px;color:var(--ink);transition:box-shadow .15s ease,border-color .15s ease}.fp-search input:focus{border-color:transparent;box-shadow:0 0 0 3px var(--focus)}.fp-sort select{padding:12px;border-radius:14px;border:1px solid rgba(15,23,42,.14);background:var(--card-bg);outline:none;font-size:14px;cursor:pointer;color:var(--ink);transition:box-shadow .15s ease,border-color .15s ease}.fp-sort select:focus{border-color:transparent;box-shadow:0 0 0 3px var(--focus)}.fp-card{border-radius:var(--radius-xl);border:1px solid rgba(15,23,42,.07);background:var(--card-bg);overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column}.fp-card-link{appearance:none;-webkit-appearance:none;border:0;background:transparent;padding:0;margin:0;text-align:left;width:100%;cursor:pointer;display:block;color:inherit;transition:transform .15s ease,box-shadow .15s ease}.fp-card-link:hover{transform:translateY(-2px)}.fp-card-link:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:var(--radius-xl)}.fp-card-media{height:150px;background:#0f172a08;position:relative}.fp-card-media-bg{position:absolute;inset:0;background-size:cover;background-position:center;transform:scale(1.02)}.fp-card-title{font-size:22px;font-weight:900;margin:0 0 10px;letter-spacing:-.3px;color:var(--ink)}.fp-card-meta{margin:0 0 10px;font-size:14px;color:var(--muted)}.fp-dot{margin:0 8px;opacity:.45}.fp-card-desc{margin:0 0 14px;color:var(--ink);opacity:.86;line-height:1.55;min-height:44px}.fp-card-desc--placeholder{opacity:.65;color:var(--muted)}.fp-card-actions{margin-top:auto;padding:14px 18px 18px;background:var(--card-bg);border-top:1px solid rgba(15,23,42,.06);display:flex;gap:12px;flex-wrap:wrap}.fp-btn{text-decoration:none;display:inline-flex;align-items:center;justify-content:center;padding:12px 16px;border-radius:16px;font-weight:900;border:1px solid rgba(15,23,42,.1);background:#fff;cursor:pointer;color:var(--ink);transition:transform .12s ease,filter .12s ease,background .12s ease}.fp-btn:hover{transform:translateY(-1px);filter:brightness(.98)}.fp-btn-primary{background:var(--fc-orange);color:#fff;border:0;min-width:150px}.fp-btn-primary:hover{filter:brightness(.96)}.fp-btn-secondary{background:#fff;color:var(--ink)}.fp-state{margin-top:18px;border-radius:var(--radius-lg);padding:18px;background:#0f172a08;border:1px solid rgba(15,23,42,.06)}.fp-empty p{margin:0 0 12px;font-weight:800;color:var(--ink)}.fp-reset{border:0;cursor:pointer;background:#0b2a55;color:#fff;padding:10px 14px;border-radius:12px;font-weight:900;transition:transform .12s ease,filter .12s ease}.fp-reset:hover{transform:translateY(-1px);filter:brightness(.98)}.fp-skel-line{height:14px;border-radius:10px;background:#0f172a0f;margin-bottom:10px}.fp-skel-btn{height:44px;border-radius:16px;background:#0f172a14;width:55%;margin-top:12px}.fpub-breadcrumb{display:flex;gap:10px;align-items:center;flex-wrap:wrap;opacity:.85;font-size:14px;margin-bottom:12px;color:var(--muted)}.fpub-breadcrumb a:hover{text-decoration:underline}.fpub-hero{display:grid;grid-template-columns:1.2fr .8fr;gap:18px;padding:18px;border-radius:var(--radius-xl);border:1px solid rgba(15,23,42,.07);background:var(--card-bg);box-shadow:var(--shadow)}.fpub-title{margin:0 0 10px;font-size:38px;font-weight:900;letter-spacing:-.6px;color:var(--ink)}.fpub-subtitle{margin:0 0 14px;font-size:16px;color:var(--muted);line-height:1.6}.fpub-badge{display:inline-flex;align-items:center;padding:10px 12px;border-radius:999px;background:#0f172a0a;border:1px solid rgba(15,23,42,.06);font-weight:900;font-size:13px;color:var(--ink)}.fpub-btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 16px;border-radius:16px;font-weight:900;border:1px solid rgba(15,23,42,.1);background:#fff;cursor:pointer;text-decoration:none;color:var(--ink);transition:transform .12s ease,filter .12s ease}.fpub-btn:hover{transform:translateY(-1px);filter:brightness(.98)}.fpub-btn--primary{background:var(--fc-orange);color:#fff;border:0;min-width:220px}.fpub-btn--primary:hover{filter:brightness(.96)}.fpub-note{font-size:13px;color:var(--muted);padding-top:6px}.fpub-hero-image{height:260px;border-radius:18px;background-size:cover;background-position:center;border:1px solid rgba(15,23,42,.06)}.fpub-card{padding:18px;border-radius:var(--radius-xl);border:1px solid rgba(15,23,42,.07);background:var(--card-bg);box-shadow:0 16px 30px #0000000a}.fpub-card h2{margin:0 0 10px;font-size:18px;font-weight:900;color:var(--ink);scroll-margin-top:120px}.fpub-paragraph{margin:0;line-height:1.7;color:var(--ink);opacity:.9}.fpub-list{margin:0;padding-left:18px;line-height:1.8;color:var(--ink);opacity:.9}.fpub-muted{margin:0;color:var(--muted)}.fpub-modalite{border:1px solid rgba(15,23,42,.06);background:#0f172a05;border-radius:18px;padding:14px}.fpub-modalite h3{margin:0 0 8px;font-size:15px;font-weight:900;color:var(--ink)}.fpub-modalite p{margin:0 0 10px;line-height:1.6;color:var(--ink);opacity:.9}.fpub-mini{margin:0;padding-left:18px;line-height:1.8;color:var(--ink);opacity:.9}.fpub-faq{border:1px solid rgba(15,23,42,.07);border-radius:16px;padding:10px 12px;background:#0f172a05;margin-top:10px}.fpub-faq summary{cursor:pointer;font-weight:900;color:var(--ink)}.fpub-faq p{margin:10px 0 0;color:var(--muted);line-height:1.6}.fpub-bottom-cta-inner{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:center;padding:18px;border-radius:var(--radius-xl);border:1px solid rgba(15,23,42,.07);background:#ff7a0014}.fpub-bottom-cta-inner h2{margin:0 0 6px;font-size:18px;font-weight:900;color:var(--ink)}.fpub-bottom-cta-inner p{margin:0;color:var(--muted)}.fpub-state{padding:18px;border-radius:var(--radius-xl);border:1px solid rgba(15,23,42,.07);background:var(--card-bg)}.fpub-skel-hero,.fpub-skel-card,.fpub-skel-line{background:#0f172a0f;border-radius:18px}@media(max-width:900px){.fpub-hero{grid-template-columns:1fr}.fpub-hero-image{height:220px}.fpub-grid{grid-template-columns:1fr}.fpub-title{font-size:30px}.fpub-modalites-grid{grid-template-columns:1fr}}html[data-theme=dark] .formations-public-page,html[data-theme=dark] .fpub-page{--card-bg: #0b1120;--page-bg: #020617;--ink: #e5e7eb;--muted: #9ca3af;--line: rgba(148, 163, 184, .18);--shadow: 0 18px 45px rgba(15, 23, 42, .7)}html[data-theme=dark] .fp-search input,html[data-theme=dark] .fp-sort select{background:#020617;color:#e5e7eb;border-color:#94a3b840}html[data-theme=dark] .fp-card,html[data-theme=dark] .fpub-hero,html[data-theme=dark] .fpub-card{border-color:#94a3b82e}html[data-theme=dark] .fp-btn-secondary,html[data-theme=dark] .fpub-btn{background:#0b1120;border-color:#94a3b838;color:#e5e7eb}html[data-theme=dark] .fp-state,html[data-theme=dark] .fpub-faq,html[data-theme=dark] .fpub-modalite{background:#ffffff0a;border-color:#94a3b82e}html[data-theme=dark] .fp-skel-line,html[data-theme=dark] .fpub-skel-hero,html[data-theme=dark] .fpub-skel-card,html[data-theme=dark] .fpub-skel-line{background:#ffffff0f}.login-page{padding-top:var(--header-h, 88px)}.login-page .page-hero{max-width:1100px;margin:0 auto 18px;padding:0 24px}.login-page .page-hero h1{margin:0 0 10px;font-size:2.1rem;letter-spacing:-.02em}.login-page .page-hero-subtitle{max-width:760px;line-height:1.6}.login-page .page-section{max-width:1100px;margin:0 auto;padding:0 24px 40px}.login-page .login-card{max-width:520px;margin:0 auto;padding:22px 22px 16px;border-radius:18px;border:1px solid rgba(148,163,184,.25);box-shadow:0 18px 45px #0f172a14;background:#fff}.login-page .login-form{display:grid;grid-template-columns:1fr;gap:14px;margin-top:10px}.login-page .form-field label{font-size:.85rem;font-weight:700;color:#111827}.login-page .form-field input{width:100%;border-radius:12px;border:1px solid rgba(148,163,184,.55);padding:10px 12px;font-size:.95rem;font-family:inherit;background:#fff;transition:box-shadow .15s ease,border-color .15s ease}.login-page .form-field input:focus{outline:none;border-color:#ff7a00cc;box-shadow:0 0 0 4px #ff7a002e}.login-page .form-error,.login-page .form-success{margin:0;border-radius:12px;padding:10px 12px;font-size:.92rem;line-height:1.4}.login-page .form-error{background:#dc262614;border:1px solid rgba(220,38,38,.25);color:#991b1b}.login-page .form-success{background:#16a34a1a;border:1px solid rgba(22,163,74,.2);color:#065f46}.login-page .form-actions{display:flex;justify-content:flex-start;margin-top:4px}.login-page .btn-primary{width:100%;justify-content:center;padding:12px 18px;border-radius:999px;font-weight:800;border:none;cursor:pointer;background:linear-gradient(135deg,#ff7a00,#ff9500);color:#fff;box-shadow:0 10px 28px #ff7a0038;transition:transform .15s ease,filter .15s ease,box-shadow .15s ease}.login-page .btn-primary:hover{filter:brightness(.98);transform:translateY(-1px);box-shadow:0 14px 36px #ff7a0042}.login-page .btn-primary:disabled{opacity:.65;cursor:not-allowed;transform:none;box-shadow:none}.login-page .btn-secondary{border:1px solid rgba(148,163,184,.6);background:#fff;color:#0f172a;border-radius:999px;padding:10px 14px;font-weight:800;cursor:pointer}.login-page .btn-secondary:hover{background:#f8fafc}.login-page .btn-link{appearance:none;border:none;background:transparent;color:#2563eb;font-weight:700;font-size:.9rem;cursor:pointer;padding:0}.login-page .btn-link:hover{text-decoration:underline}.login-page .login-hint{margin:14px 0 0;text-align:center;font-size:.92rem;color:#6b7280}.login-page .login-hint span:hover{text-decoration:underline}.modal-overlay{position:fixed;inset:0;background:#0206178c;display:flex;align-items:center;justify-content:center;padding:18px;z-index:9999;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.modal-overlay>.card{width:min(520px,92vw);border-radius:18px;border:1px solid rgba(148,163,184,.25);box-shadow:0 24px 70px #0f172a3d;background:#fff;padding:18px}.modal-overlay>.card h2{margin:4px 0 10px;font-size:1.25rem;letter-spacing:-.01em}.modal-overlay .form-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:10px}.modal-overlay .form-actions .btn-primary{width:auto;min-width:140px}.modal-overlay .form-actions .btn-secondary{min-width:120px}@media(max-width:768px){.login-page .page-hero,.login-page .page-section{padding-left:16px;padding-right:16px}.login-page .page-hero h1{font-size:1.75rem}.login-page .login-card{padding:18px 16px 14px}}html[data-theme=dark] .login-page .login-card,html[data-theme=dark] .modal-overlay>.card{background:#0b1120;border-color:#1f2937;box-shadow:0 18px 45px #0f172ab3}html[data-theme=dark] .login-page .page-hero-subtitle,html[data-theme=dark] .login-page .login-hint{color:#9ca3af}html[data-theme=dark] .login-page .form-field label{color:#e5e7eb}html[data-theme=dark] .login-page .form-field input{background:#020617;color:#e5e7eb;border-color:#334155}html[data-theme=dark] .login-page .form-field input:focus{border-color:#ff7a00e6;box-shadow:0 0 0 4px #ff7a002e}html[data-theme=dark] .login-page .btn-secondary{background:#111827;color:#e5e7eb;border-color:#334155}html[data-theme=dark] .modal-overlay{background:#020617b8}.inscription-page{--bg: #ffffff;--text: #0f172a;--muted: #64748b;--card: #ffffff;--border: rgba(15, 23, 42, .1);--shadow: 0 18px 50px rgba(15, 23, 42, .08);--primary: #ff7a00;--primary-2: #ff9500;--primary-soft: rgba(255, 122, 0, .1);--ring: rgba(255, 122, 0, .35);--input-bg: #ffffff;--input-border: rgba(15, 23, 42, .14);--danger: #b91c1c;--danger-bg: rgba(185, 28, 28, .08);--success: #166534;--success-bg: rgba(22, 101, 52, .08);--info-blue: #0b74c9;--info-blue-soft: rgba(11, 116, 201, .08);--info-beige: #efe4d6}.inscription-page{background:radial-gradient(circle at top,#ff7a0014,#02061700 55%)}.inscription-page .page-hero{margin-bottom:18px}.inscription-page .page-hero h1{letter-spacing:-.3px}.inscription-page .page-hero-subtitle{max-width:70ch}.inscription-page .login-card{max-width:680px;margin:0 auto;border-radius:18px;border:1px solid var(--border);box-shadow:var(--shadow);background:var(--card);padding:22px 22px 18px}.inscription-page .login-form{display:grid;grid-template-columns:1fr;gap:14px;margin-top:10px}.inscription-page .full-width{width:100%}.inscription-page .form-field{display:grid;gap:7px}.inscription-page .form-field label{font-size:.86rem;font-weight:700;color:#0f172adb}.inscription-page .form-field input,.inscription-page .form-field textarea,.inscription-page .form-field select{width:100%;background:var(--input-bg);border:1px solid var(--input-border);border-radius:12px;padding:11px 12px;font-size:.95rem;color:var(--text);transition:box-shadow .15s ease,border-color .15s ease,transform .05s ease,background .15s ease;outline:none}.inscription-page .form-field select{cursor:pointer}.inscription-page .form-field input::placeholder,.inscription-page .form-field textarea::placeholder{color:#64748bd9}.inscription-page .form-field input:focus,.inscription-page .form-field textarea:focus,.inscription-page .form-field select:focus{border-color:#ff7a0073;box-shadow:0 0 0 4px var(--ring)}.inscription-page .form-field input:active,.inscription-page .form-field select:active{transform:translateY(1px)}.inscription-page .form-field .btn-secondary{height:44px;padding:0 14px;border-radius:999px;font-weight:800;border:1px solid rgba(15,23,42,.12);background:#fff;color:#0f172a;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease}.inscription-page .form-field .btn-secondary:hover{border-color:#ff7a0059;box-shadow:0 10px 24px #0f172a14;transform:translateY(-1px)}.inscription-page .form-field .btn-secondary:active{transform:translateY(0);box-shadow:none}.inscription-page small,.inscription-page .text-muted-small{display:block;margin-top:6px;font-size:.82rem;color:var(--muted);line-height:1.4}.inscription-page .form-field small strong{color:#0f172a}.inscription-page .form-error{border-radius:12px;border:1px solid rgba(185,28,28,.18);background:var(--danger-bg);color:var(--danger);padding:10px 12px;margin:0;font-weight:700;font-size:.92rem}.inscription-page .form-success{border-radius:12px;border:1px solid rgba(22,101,52,.18);background:var(--success-bg);color:var(--success);padding:10px 12px;margin:0;font-weight:700;font-size:.92rem}.inscription-page .form-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:6px}.inscription-page .btn-primary{border:0;border-radius:999px;padding:12px 18px;font-weight:900;cursor:pointer;color:#fff;background:linear-gradient(135deg,var(--primary),var(--primary-2));box-shadow:0 14px 30px #ff7a0040;transition:transform .12s ease,box-shadow .12s ease,filter .12s ease}.inscription-page .btn-primary:hover{transform:translateY(-1px);box-shadow:0 18px 40px #ff7a004d;filter:brightness(.98)}.inscription-page .btn-primary:active{transform:translateY(0);box-shadow:0 10px 22px #ff7a0038}.inscription-page .btn-primary:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}.inscription-page .btn-secondary{border-radius:999px;padding:12px 16px;font-weight:900;background:#fff;color:#0f172a;border:1px solid rgba(15,23,42,.12);cursor:pointer}.inscription-page .btn-secondary:hover{border-color:#ff7a0059}.inscription-page .registration-steps-card{margin-top:8px;margin-bottom:8px;border-radius:18px;overflow:hidden;border:1px solid rgba(15,23,42,.08);background:#fff}.inscription-page .registration-steps-body{padding:22px 24px 18px}.inscription-page .registration-steps-title{margin:0 0 18px;color:var(--info-blue);font-size:1.55rem;line-height:1.25;font-weight:800;letter-spacing:-.02em}.inscription-page .registration-steps-list{margin:0;padding-left:28px;display:grid;gap:16px;color:#1f2937;font-size:1.04rem;line-height:1.65}.inscription-page .registration-steps-list strong{color:var(--info-blue)}.inscription-page .registration-steps-footer{background:var(--info-beige);border-left:5px solid var(--primary);padding:18px 22px;font-size:1rem;line-height:1.55;font-weight:700;color:#1f2937}.inscription-page .terms-box{background:#f8fafc;border:1px solid #e2e8f0;padding:16px;border-radius:12px}.inscription-page .terms-label{display:flex;gap:10px;align-items:flex-start;cursor:pointer;font-size:.95rem;line-height:1.5;color:var(--text)}.inscription-page .terms-label input[type=checkbox]{width:16px;min-width:16px;height:16px;margin-top:4px;accent-color:var(--primary);cursor:pointer}.inscription-page .terms-text{flex:1}.inscription-page .terms-box a{color:var(--info-blue);font-weight:700;text-decoration:none}.inscription-page .terms-box a:hover{text-decoration:underline}.inscription-page .terms-help{margin-top:8px}.inscription-page .stripe-block{margin-top:18px;padding-top:16px;border-top:1px dashed rgba(15,23,42,.14)}.inscription-page .stripe-block .btn-secondary{background:#0b2a55;color:#fff;border:0;box-shadow:0 14px 30px #0b2a552e}.inscription-page .stripe-block .btn-secondary:hover{filter:brightness(.98)}@media(max-width:720px){.inscription-page .login-card{max-width:100%;padding:18px 16px 14px;border-radius:16px}.inscription-page .page-hero h1{font-size:2rem}.inscription-page .form-actions{flex-direction:column;align-items:stretch}.inscription-page .btn-primary,.inscription-page .btn-secondary{width:100%;justify-content:center}.inscription-page .registration-steps-body{padding:18px 16px 14px}.inscription-page .registration-steps-title{font-size:1.25rem;margin-bottom:14px}.inscription-page .registration-steps-list{font-size:.96rem;gap:12px;padding-left:22px}.inscription-page .registration-steps-footer{padding:14px 16px;font-size:.93rem}.inscription-page .terms-box{padding:14px}.inscription-page .terms-label{font-size:.9rem}}html[data-theme=dark] .inscription-page{--bg: #020617;--text: #e5e7eb;--muted: #9ca3af;--card: #0b1120;--border: rgba(148, 163, 184, .16);--shadow: 0 24px 70px rgba(0, 0, 0, .35);--input-bg: #020617;--input-border: rgba(148, 163, 184, .22);background:radial-gradient(circle at top,#ff7a001f,#02061700 55%)}html[data-theme=dark] .inscription-page .form-field label{color:#e5e7ebe0}html[data-theme=dark] .inscription-page .btn-secondary{background:#ffffff0f;color:#e5e7eb;border-color:#94a3b833}html[data-theme=dark] .inscription-page .form-field small strong{color:#e5e7eb}html[data-theme=dark] .inscription-page .registration-steps-card{background:#0b1120;border-color:#94a3b829}html[data-theme=dark] .inscription-page .registration-steps-list,html[data-theme=dark] .inscription-page .registration-steps-footer{color:#e5e7eb}html[data-theme=dark] .inscription-page .terms-box{background:#ffffff0a;border-color:#94a3b833}html[data-theme=dark] .inscription-page .terms-label{color:#e5e7eb}html[data-theme=dark] .inscription-page .terms-box a{color:#7cc4ff}html,body{margin:0;padding:0}.page{width:100%;min-height:100vh;padding:0;color:#0f172a}.container{max-width:1100px;margin:0 auto;padding:40px 24px 60px}.page-hero h1{font-size:2.3rem;margin:0 0 12px;color:#0f172a}.page-hero-subtitle{margin:0;font-size:1rem;color:#4b5563}.badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px}.badge-soft{background-color:#e0edff;color:#002b5c}.page-section{margin-bottom:32px}.page-section h2{font-size:1.4rem;margin-bottom:10px;color:#111827}.page-section p{margin:0;color:#4b5563;line-height:1.6}.card{background:#fff;border-radius:16px;padding:24px 24px 20px;box-shadow:0 8px 20px #0f172a0f;border:1px solid rgba(148,163,184,.25)}.card+.card{margin-top:20px}.page-grid-2{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:24px;align-items:flex-start}.highlight-list{list-style:none;padding-left:0;margin:8px 0 0}.highlight-list li{margin-bottom:6px;color:#374151}.highlight-list li:before{content:"•";color:#ff7a00;font-weight:700;display:inline-block;width:16px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;margin-top:12px}.stat-item{background:#f9fafb;padding:14px 16px;border-radius:12px}.stat-item strong{display:block;font-size:1.3rem;margin-bottom:4px;color:#0f172a}.stat-item span{font-size:.9rem;color:#6b7280}.values-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;margin-top:12px}.value-item h3{margin:0 0 6px;font-size:1.05rem;color:#111827}.value-item p{font-size:.9rem;color:#4b5563}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 18px;margin-top:16px}.form-field{display:flex;flex-direction:column;gap:6px}.form-field label{font-size:.85rem;font-weight:600;color:#374151}.form-field input,.form-field textarea{border-radius:10px;border:1px solid #d1d5db;padding:8px 10px;font-size:.95rem;font-family:inherit}.form-field input:focus,.form-field textarea:focus{outline:2px solid #ff7a00;border-color:transparent}.form-actions{grid-column:1 / -1;display:flex;justify-content:flex-start;margin-top:4px}.btn-primary{background-color:#ff7a00;color:#fff;border-radius:999px;padding:10px 22px;border:none;font-weight:600;cursor:pointer;font-size:.95rem}.btn-primary:hover{background-color:#e86900}.contact-info-card{background:#f9fafb}.contact-info-list{list-style:none;padding-left:0;margin:0}.contact-info-list li{margin-bottom:14px;font-size:.95rem;color:#374151}.bullet-list{list-style:disc;padding-left:18px;margin-top:6px}.contact-highlight{margin-top:12px;padding:10px 12px;border-radius:10px;background:#fff7ed;color:#7c2d12;font-size:.9rem}@media(max-width:768px){.container{padding:32px 16px 40px}.page-grid-2,.form-grid{grid-template-columns:1fr}}.formation-card-main{border-left:4px solid #ff7a00}.formation-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px}.formation-tagline{margin:4px 0 0;color:#4b5563;font-size:.95rem}.formation-layout{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin-top:8px}.formation-col h3{margin:0 0 8px;font-size:1rem;color:#111827}.formation-actions{margin-top:12px}.formations-summary{background:#f9fafb;border-radius:12px;padding:16px 20px;border:1px solid #e5e7eb}.highlight-list.inline{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:8px}.highlight-list.inline li:before{content:"• ";color:#ff7a00;font-weight:700}.formations-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px}.formation-card{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 14px 40px #0f172a1f;border:1px solid #e5e7eb;display:flex;flex-direction:column}.formation-card-top{padding:16px 20px 10px;color:#fff}.formation-card-top.web{background:linear-gradient(135deg,#002b5c,#004b9a)}.formation-card-top.cloud{background:linear-gradient(135deg,#0f766e,#22c55e)}.formation-card-top.sport{background:linear-gradient(135deg,#b45309,#f97316)}.formation-card-subtitle{margin-top:6px;margin-bottom:0;font-size:.95rem;opacity:.9}.formation-card-body{padding:16px 20px 18px}.formation-card-body ul{padding-left:18px;margin:0 0 12px}.formation-meta{display:flex;flex-wrap:wrap;gap:8px 16px;font-size:.85rem;color:#4b5563;margin-bottom:12px}.formation-meta span:before{content:"• ";color:#ff7a00;font-weight:700}.btn-primary,.btn-secondary{display:inline-block;padding:10px 18px;border-radius:999px;font-weight:600;font-size:.95rem;text-decoration:none;border:2px solid transparent}.btn-primary:hover{background:#fff;color:#ff7a00;border-color:#ff7a00}.btn-secondary{background:#fff;color:#002b5c;border-color:#e5e7eb}.btn-secondary:hover{border-color:#ff7a00;color:#ff7a00}.formations-cta-final{text-align:center;background:#f1f5f9;border-radius:16px;padding:32px 20px;border:1px solid #e5e7eb}.formations-cta-final h2{margin-bottom:8px}.login-page .login-card{max-width:480px;margin:0 auto}.role-toggle{display:flex;justify-content:center;gap:8px;margin-bottom:16px}.role-toggle-btn{flex:1;padding:8px 10px;border-radius:999px;border:1px solid #d1d5db;background:#f9fafb;font-size:.9rem;cursor:pointer}.role-toggle-btn.active{background:linear-gradient(135deg,#ff7a00,#ff9500);color:#fff;border-color:transparent}.login-form{display:grid;grid-template-columns:1fr;gap:14px;margin-top:8px}.login-extra-row{display:flex;justify-content:space-between;align-items:center;margin-top:4px}.remember-me{display:flex;align-items:center;gap:6px;font-size:.85rem;color:#4b5563}.link-button{border:none;background:none;color:#2563eb;font-size:.85rem;cursor:pointer;padding:0}.login-hint{margin-top:12px;font-size:.85rem;color:#6b7280;text-align:center}.apprenant-dashboard .dashboard-main-card{border-left:4px solid #ff7a00}.dashboard-formation-title{margin-top:4px;margin-bottom:12px;font-weight:600;color:#111827}.progress-wrapper{margin-bottom:12px}.progress-bar-background{width:100%;height:10px;border-radius:999px;background:#e5e7eb;overflow:hidden}.progress-bar-fill{height:100%;border-radius:999px;background:linear-gradient(135deg,#ff7a00,#ffb347)}.progress-label{display:inline-block;margin-top:4px;font-size:.85rem;color:#4b5563}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}.dashboard-card h3{margin-top:0;margin-bottom:8px}.dashboard-cta{text-align:center;background:#f9fafb;border-radius:12px;border:1px solid #e5e7eb}.form-success{color:#16a34a;font-size:.9rem;margin-top:4px}.dashboard-page .dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem}.dashboard-card{padding:1.5rem;border-radius:16px;background:#fff;box-shadow:0 10px 30px #0f172a14}.dashboard-card h2{margin-top:0;margin-bottom:.75rem;font-size:1.15rem}.dashboard-list{list-style:none;padding-left:0;margin:.5rem 0 0}.dashboard-list li{margin-bottom:.35rem;font-size:.95rem}.payments-card{max-width:1100px;margin:0 auto;padding:24px 32px;border-radius:24px;box-shadow:0 18px 45px #0f172a14;background-color:#fff}.payments-table{width:100%;border-collapse:collapse;font-size:14px}.payments-table th,.payments-table td{padding:16px 24px;border-bottom:1px solid #f1f5f9;text-align:left}.payments-table thead th{font-weight:600;color:#0f172a;background-color:#f8fafc}.payments-table tbody tr:last-child td{border-bottom:none}.payment-status{font-weight:600}.payment-status-paid{color:#16a34a}.payment-status-pending{color:#f97316}.btn-pdf{border:none;border-radius:999px;padding:8px 18px;font-size:13px;font-weight:600;cursor:pointer;background-color:#ff8a00;color:#fff}.btn-pdf.disabled{background-color:#e2e8f0;color:#334155;cursor:default}.course-layout{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(0,1.3fr);gap:32px}.course-main-column,.course-side-column{position:sticky;top:calc(var(--header-h, 88px) + 16px);align-self:start}.course-video-card{padding:24px}.course-video-placeholder{width:100%;aspect-ratio:16 / 9;background-color:#111827;color:#e5e7eb;display:flex;align-items:center;justify-content:center;border-radius:16px;margin-bottom:16px;font-weight:600}.course-actions-row{display:flex;gap:16px}.course-block{padding:24px}.course-block h2{margin-bottom:12px}.question-form textarea{width:100%;resize:vertical}.questions-list{margin-top:16px}.question-item{padding:12px 0;border-top:1px solid #e5e7eb}.question-item:first-child{border-top:none}.question-text{margin:0 0 4px}.question-meta{margin:0;font-size:13px;color:#64748b}.answer-text{margin:4px 0 0;color:#16a34a;font-weight:500}.messages-card{max-width:1100px;margin:0 auto;padding:24px 32px;border-radius:24px;box-shadow:0 18px 45px #0f172a14;background-color:#fff}.messages-table{width:100%;border-collapse:collapse;font-size:14px}.messages-table th,.messages-table td{padding:12px 16px;border-bottom:1px solid #f1f5f9;vertical-align:top}.messages-table thead th{font-weight:600;color:#0f172a;background-color:#f8fafc}.msg-status{font-weight:600;font-size:13px}.msg-status-answered{color:#16a34a}.msg-status-pending{color:#f97316}.link-button{background:none;border:none;color:#0f766e;cursor:pointer;padding:0;font-weight:600}.link-button:hover{text-decoration:underline}.course-side-column{width:380px;flex-shrink:0;position:sticky;top:120px}.exercise-detail{animation:fadeIn .25s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.course-selector-row{display:flex;gap:16px;align-items:flex-end;justify-content:space-between;flex-wrap:wrap}.course-selector-row .form-field{min-width:260px}.two-columns-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;margin-top:16px}.course-subcard{padding:16px}.small-muted{font-size:.85rem;color:#777;margin-bottom:8px}.modules-list .module-main{display:flex;align-items:center;justify-content:space-between;gap:12px}.module-title-btn{border:none;background:transparent;padding:0;font:inherit;cursor:pointer;display:flex;align-items:baseline;gap:6px}.module-index{font-weight:600;color:#999}.module-badges{display:flex;gap:8px;flex-wrap:wrap}.tag{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;font-size:.78rem;border:1px solid rgba(0,0,0,.06)}.tag-soft{background:#eef3ff;color:#1f3bb3}.tag-warning{background:#fff3cd;color:#856404}.tag-action{background:#e8ecff;color:#1f3bb3;cursor:pointer}.modules-actions-row{display:flex;gap:12px;margin-top:16px;flex-wrap:wrap}.inline-field{margin-top:8px}.page-container{padding:24px}.page-title{font-size:24px;font-weight:700;margin-bottom:16px}.page-grid{display:grid;grid-template-columns:1.1fr 1.4fr;gap:24px}.card-title{font-size:18px;font-weight:600;margin-bottom:16px}.formations-list{display:flex;flex-direction:column;gap:10px}.formation-pill{border:none;padding:10px 14px;border-radius:12px;background:#f3f4f6;text-align:left;cursor:pointer;font-weight:600}.formation-pill:hover{background:#e5e7eb}.form-group{display:flex;flex-direction:column;gap:4px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-group label{font-size:14px;font-weight:500}.form-group input,.form-group textarea{border-radius:8px;border:1px solid #e5e7eb;padding:8px 10px;font-size:14px}.form-actions button{border:none;padding:8px 16px;border-radius:999px;background:#111827;color:#fff;font-weight:600;cursor:pointer}.error-text{color:#b91c1c;margin-bottom:8px}.page-grid-3cols{display:grid;grid-template-columns:.9fr 1.1fr 1.4fr;gap:24px}.courses-list{display:flex;flex-direction:column;gap:8px}.course-pill{border-radius:10px;border:1px solid #e5e7eb;background:#f9fafb;padding:8px 10px;text-align:left;cursor:pointer}.course-pill--active{background:#111827;color:#fff}.chapters-layout{display:grid;grid-template-columns:1.1fr 1.5fr;gap:16px}.chapters-list-card,.chapter-form-card{background:#f9fafb;border-radius:12px;padding:12px}.section-subtitle{font-size:14px;font-weight:600;margin-bottom:8px}.chapters-list{display:flex;flex-direction:column;gap:8px;max-height:260px;overflow-y:auto}.chapter-card{border-radius:10px;border:1px solid #e5e7eb;background:#fff;padding:8px 10px;cursor:pointer}.chapter-card--active{border-color:#111827;box-shadow:0 0 0 1px #111827}.chapter-card-title{font-weight:600;font-size:14px}.chapter-card-meta{font-size:12px;color:#6b7280}.checkbox-group{display:flex;align-items:center}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-top:1.5rem}.kpi-card{padding:1rem;box-shadow:0 1px 3px #0f172a14}.kpi-value{font-size:26px;font-weight:700;margin-bottom:4px}.kpi-subtext{font-size:13px;color:#64748b}.kpi-progress-bar,.table-progress-bar{margin-top:4px;border-radius:999px;background:#e5e7eb;height:6px;overflow:hidden}.kpi-progress-fill,.table-progress-fill{height:6px;border-radius:999px;background:#2563eb}.input-rounded{padding:8px 12px;border-radius:999px;border:1px solid #e2e8f0;min-width:260px;font-size:14px}.toolbar{display:flex;justify-content:flex-start;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}.assign-grid-form{display:grid;grid-template-columns:1fr 1fr auto;gap:.75rem;align-items:flex-end}.text-muted-small{font-size:12px;color:#64748b}.btn-ghost-small{border:1px solid #e5e7eb;background:#fff;padding:4px 10px;border-radius:999px;font-size:12px;cursor:pointer}.status-pill{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;font-size:12px}.status-pending{background:#fef3c7;color:#92400e}.status-validated,.status-validé{background:#dcfce7;color:#166534}.status-refused,.status-refusé{background:#fee2e2;color:#991b1b}.formation-card-item{display:flex;align-items:stretch;justify-content:space-between;gap:.75rem;padding:1rem 1.25rem;border-radius:16px;border:1px solid #e2e8f0;background:#f8fafc;box-shadow:0 8px 20px #0f172a0a;text-align:left}.formation-card-item:hover{background:#fff;box-shadow:0 12px 28px #0f172a14;transform:translateY(-1px)}.formation-card-main{flex:1;min-width:0}.formation-card-title{font-size:1.05rem;font-weight:700;color:#0f172a;margin:0 0 4px}.formation-card-subtitle{margin:0 0 8px;font-size:.9rem;color:#64748b}.formation-card-meta{display:flex;flex-wrap:wrap;gap:.5rem}.formation-chip{background:#e0f2fe;color:#0f172a;padding:3px 10px;border-radius:999px;font-size:.8rem}.formation-chip.light{background:#e2e8f0}.formation-card-cta{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;min-width:110px}.formation-cta-text{font-size:.8rem;color:#64748b;margin-bottom:2px}.formation-card-cta .arrow{font-size:1.2rem;line-height:1}.permissions-list{display:flex;flex-direction:column;gap:.75rem}.permission-item{display:flex;gap:.75rem;align-items:flex-start;padding:.6rem .75rem;border-radius:12px;background:#f8fafc}.permission-icon{padding-top:4px}.status-dot{width:10px;height:10px;border-radius:999px;display:inline-block}.status-dot--ok{background:#22c55e}.status-dot--off{background:#cbd5f5}.permission-text{flex:1}.permission-label{font-size:.9rem;font-weight:600;color:#0f172a}.permission-sub{font-size:.8rem;color:#64748b}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1.5rem;margin-bottom:2rem}.stats-grid-wide{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.stats-card{background:#fff;border-radius:18px;padding:1.5rem 1.75rem;border:1px solid #e5e7eb;box-shadow:0 10px 30px #0f172a0f}.stats-card-large{display:flex;flex-direction:column;justify-content:space-between}.stats-card-title{font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:#6b7280;margin-bottom:.75rem}.stats-card-value{font-size:2rem;font-weight:700;color:#111827;line-height:1.1}.stats-card-value-unit{font-size:1rem;margin-left:.15rem}.stats-card-value-small{font-size:1rem;font-weight:500;margin-left:.4rem;color:#4b5563}.stats-card-sub{margin-top:.35rem;font-size:.9rem;color:#6b7280}.progress-bar{margin-top:1rem;width:100%;height:8px;border-radius:999px;background:#e5e7eb;overflow:hidden}.progress-bar-inner{height:100%;border-radius:999px;background:linear-gradient(90deg,#22c55e,#16a34a)}.last-message-question,.last-message-answer{margin-top:.5rem;font-size:.9rem}.question-meta{margin-top:.4rem;font-size:.85rem;color:#6b7280}.mes-cours-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.75rem}.mes-cours-item{padding:.75rem .5rem;border-radius:12px;border:1px solid #e5e7eb;background:#f9fafb}.mes-cours-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.4rem}.mes-cours-title{font-size:.95rem;font-weight:600;color:#111827}.mes-cours-progress-label{font-size:.85rem;color:#4b5563}.mes-cours-progress{width:100%;height:6px;border-radius:999px;background:#e5e7eb;overflow:hidden;margin-bottom:.45rem}.mes-cours-progress-inner{height:100%;border-radius:999px;background:linear-gradient(90deg,#3b82f6,#10b981)}.btn-tertiary{border:1px solid #d1d5db;background:#fff;border-radius:999px;padding:.3rem .9rem;font-size:.85rem;cursor:pointer}.btn-tertiary:hover{background:#f3f4f6}.badges-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.25rem;margin-bottom:2rem}.badge-card{background:#fff;border-radius:18px;padding:1.25rem 1.5rem;border:1px solid #e5e7eb;box-shadow:0 10px 30px #0f172a0a}.badge-card-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:#6366f1;margin-bottom:.4rem}.badge-card-title{font-size:1.1rem;font-weight:700;color:#111827;margin-bottom:.25rem}.badge-card-desc{font-size:.9rem;color:#6b7280}.profile-summary-card{display:flex;align-items:center;gap:1.25rem;margin-bottom:2rem;background:#fff;border-radius:18px;padding:1.5rem 1.75rem;border:1px solid #e5e7eb;box-shadow:0 10px 30px #0f172a0f}.profile-avatar{width:75px;height:75px;border-radius:999px;background:linear-gradient(135deg,#6366f1,#4338ca);display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:600;color:#fff;flex-shrink:0}.profile-summary-text{display:flex;flex-direction:column;gap:.25rem}.profile-summary-name{font-size:1.35rem;font-weight:700;color:#111827;margin:0}.profile-summary-email{font-size:.95rem;color:#6b7280;margin:0}.profile-summary-formation{font-size:.95rem;color:#374151;margin-top:.35rem}.form-card h2{margin-top:.5rem;font-size:1.2rem;font-weight:700;color:#1f2937}.form-row input{padding:.55rem .75rem;border-radius:8px;border:1px solid #d1d5db;font-size:.95rem;transition:all .2s ease-in-out}.form-row input:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f140;outline:none}.form-hint{font-size:.85rem;color:#6b7280;margin-bottom:1rem}.form-separator{margin:1.4rem 0;border:none;border-top:1px solid #e5e7eb}.form-success{background-color:#ecfdf5;color:#065f46;border:1px solid #a7f3d0;padding:.65rem 1rem;border-radius:8px;margin-bottom:1rem;font-size:.95rem}.form-error{background-color:#fef2f2;color:#991b1b;border:1px solid #fecaca;padding:.65rem 1rem;border-radius:8px;margin-bottom:1rem;font-size:.95rem}html[data-font-size=normal]{font-size:100%}html[data-font-size=large]{font-size:110%}html[data-font-size=xlarge]{font-size:120%}html[data-high-contrast=true]{filter:contrast(1.15) saturate(1.1)}html[data-theme=light]{background-color:#fff;color:#111827}html[data-theme=dark],html[data-theme=dark] body{background-color:#020617;color:#e5e7eb}html[data-theme=dark] .page.dashboard-page{background:radial-gradient(circle at top,#1f2937 0,#020617 50% 100%)}html[data-theme=dark] .card,html[data-theme=dark] .stats-card,html[data-theme=dark] .form-card,html[data-theme=dark] .profile-summary-card{background:#0b1120;border-color:#1f2937;box-shadow:0 18px 45px #0f172ab3}html[data-theme=dark] .course-card{background:#020617}html[data-theme=dark] .page-hero-subtitle,html[data-theme=dark] .course-meta,html[data-theme=dark] .stats-card-sub,html[data-theme=dark] .form-hint{color:#9ca3af}html[data-theme=dark] .form-row input,html[data-theme=dark] .form-row select{background:#020617;color:#e5e7eb;border-color:#4b5563}html[data-theme=dark] .form-row input:focus,html[data-theme=dark] .form-row select:focus{border-color:#818cf8;box-shadow:0 0 0 2px #818cf880}html[data-theme=dark] .btn-primary{background:#4f46e5;color:#e5e7eb}html[data-theme=dark] .btn-secondary{background:#111827;color:#e5e7eb;border-color:#4b5563}html[data-theme=dark] .progress-bar{background:#111827}html[data-theme=dark] .progress-bar-inner{background:linear-gradient(90deg,#4f46e5,#22c55e)}html[data-theme=dark] table.table{color:#e5e7eb}html[data-theme=dark] table.table th{background:#020617;border-bottom-color:#1f2937}html[data-theme=dark] table.table td{border-bottom-color:#1f2937}html[data-reduced-animations=true] *{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.accessibility-fieldset{border:1px solid #e5e7eb;border-radius:12px;padding:1rem 1.1rem;margin-top:1rem}.accessibility-fieldset legend{padding:0 .4rem;font-size:.95rem;font-weight:600;color:#374151}.accessibility-option{display:flex;align-items:flex-start;gap:.5rem;margin-top:.5rem}.accessibility-option input[type=checkbox]{margin-top:.2rem}html[data-screen-reader-mode=true] *:focus{outline:3px solid #f97316!important;outline-offset:2px}.tabs-row{display:flex;gap:10px;align-items:center;margin:12px 0 18px}.tab-btn{padding:8px 12px;border-radius:10px;border:1px solid #ddd;background:#fff;cursor:pointer}.tab-btn.active{border-color:#111;font-weight:700}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.card{border:1px solid #e7e7e7;border-radius:14px;padding:14px;background:#fff}.list{display:flex;flex-direction:column;gap:10px;margin-top:10px}.list-item{border:1px solid #eee;border-radius:12px;padding:10px;display:flex;gap:10px;align-items:center;cursor:pointer}.list-item.selected{border-color:#111}.form-row{display:flex;flex-direction:column;gap:6px;margin-bottom:10px}.btn{padding:8px 12px;border-radius:10px;border:1px solid #ddd;background:#fff;cursor:pointer}.btn.primary{border-color:#111;font-weight:700}.btn.danger{border-color:#cc2e2e;color:#cc2e2e}.perm-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;max-height:260px;overflow:auto;border:1px solid #eee;border-radius:12px;padding:10px}.perm-item{display:flex;gap:8px;align-items:center}.muted{opacity:.75;font-size:.95em}.error-box{padding:10px;border-radius:10px;border:1px solid #cc2e2e;color:#cc2e2e;margin:10px 0}.loading{opacity:.8}.kpi-label{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:#64748b;margin-bottom:4px}.kpi-value{font-size:30px;margin:0}.kpi-sub{font-size:12px;color:#94a3b8;margin-top:4px}.kpi-mini-rows{margin-top:10px;display:grid;gap:6px}.kpi-mini-row{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:13px;color:#0f172a}.kpi-mini-row span{color:#64748b}.kpi-bar-wrap{margin-top:12px;background:#f1f5f9;border-radius:999px;height:8px;overflow:hidden}.kpi-bar{height:100%;background:linear-gradient(90deg,#0ea5e9,#22c55e);transition:width .25s ease}.kpi-bar-caption{margin-top:6px;font-size:12px;color:#64748b}.btn,.btn-primary,.btn-secondary{appearance:none;border:none;border-radius:999px;padding:10px 16px;font-weight:700;font-size:14px;cursor:pointer;transition:all .15s ease;line-height:1}.btn-primary{background:linear-gradient(135deg,#ff7a00,#ff9500);color:#fff}.btn-primary:hover{filter:brightness(.95);transform:translateY(-1px)}.btn-secondary{background:#fff;color:#0f172a;border:1px solid #e5e7eb}.btn:disabled,.btn-primary:disabled,.btn-secondary:disabled{opacity:.55;cursor:not-allowed;transform:none}.page-hero .btn-secondary,.page-hero .btn-primary{box-shadow:0 4px 12px #00000014}.page{padding:16px}.pageHeader{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:16px}.card{background:#fff;border:1px solid #eee;border-radius:12px;padding:16px}.input{padding:10px 12px;border:1px solid #ddd;border-radius:10px;width:100%}.btn{padding:10px 12px;border-radius:10px;border:1px solid #ddd;background:#f6f6f6;cursor:pointer}.btn:disabled{opacity:.6;cursor:not-allowed}.btnDanger{padding:10px 12px;border-radius:10px;border:1px solid #ffb3b3;background:#ffe9e9;cursor:pointer}.table{width:100%;border-collapse:collapse}.table th,.table td{padding:10px;border-bottom:1px solid #eee;text-align:left}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media(max-width:980px){.grid2{grid-template-columns:1fr}}.list{margin-top:12px;display:flex;flex-direction:column;gap:8px}.listItem{width:100%;text-align:left;display:flex;justify-content:space-between;align-items:center;padding:10px;border-radius:10px;border:1px solid #eee;background:#fafafa;cursor:pointer}.listItem.active{border-color:#bbb;background:#f1f1f1}.row{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px;border:1px solid #eee;border-radius:10px;background:#fafafa}.warn{margin-top:10px;padding:10px;border-radius:10px;border:1px solid #ffe2a6;background:#fff6df}.formations-public-page{padding-bottom:30px}.fp-hero{margin-bottom:22px}.fp-title{font-size:46px;font-weight:900;margin:0 0 16px;letter-spacing:-.6px}.fp-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.fp-filters{display:flex;gap:12px;flex-wrap:wrap}.fp-chip{border:0;cursor:pointer;padding:10px 16px;border-radius:999px;background:#0000000a;font-weight:800;font-size:18px}.fp-chip.active{background:#0b2a55;color:#fff}.fp-search input{width:min(420px,88vw);padding:12px 14px;border-radius:14px;border:1px solid rgba(0,0,0,.12);background:#fff;outline:none;font-size:15px}.fp-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:16px}.fp-card{border-radius:20px;border:1px solid rgba(0,0,0,.06);background:#fff;overflow:hidden;box-shadow:0 16px 30px #0000000f}.fp-card-media{height:150px;background:#00000008;position:relative}.fp-card-media-bg{position:absolute;inset:0;background-size:cover;background-position:center}.fp-card-media-bg--default{background:linear-gradient(135deg,#f3f4f6,#e5e7eb)}.fp-card-body{padding:18px 18px 16px}.fp-card-title{font-size:26px;font-weight:900;margin:0 0 10px;letter-spacing:-.3px}.fp-card-meta{margin:0 0 10px;font-size:18px;opacity:.9}.fp-dot{margin:0 8px;opacity:.4}.fp-card-desc{margin:0 0 14px;opacity:.85;line-height:1.5;min-height:44px}.fp-card-desc--placeholder{opacity:.6}.fp-card-actions{display:flex;gap:12px;flex-wrap:wrap}.fp-btn{text-decoration:none;display:inline-flex;align-items:center;justify-content:center;padding:12px 16px;border-radius:16px;font-weight:900;border:1px solid rgba(0,0,0,.08)}.fp-btn-primary{background:#ff7a00;color:#fff;border:0;min-width:150px}.fp-btn-secondary{background:#fff;color:#111}.fp-state{margin-top:18px;border-radius:16px;padding:18px;background:#00000008;border:1px solid rgba(0,0,0,.06)}.fp-error p{margin:0;color:#b91c1c;font-weight:800}.fp-empty p{margin:0 0 12px;font-weight:800}.fp-reset{border:0;cursor:pointer;background:#0b2a55;color:#fff;padding:10px 14px;border-radius:12px;font-weight:900}.fp-skeleton .fp-card-body{padding:18px}.fp-skel-line{height:14px;border-radius:10px;background:#0000000f;margin-bottom:10px}.fp-skel-title{height:18px;width:70%}.fp-skel-small{width:50%}.fp-skel-btn{height:44px;border-radius:16px;background:#00000014;width:55%;margin-top:12px}@media(max-width:1050px){.fp-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.fp-title{font-size:34px}.fp-grid{grid-template-columns:1fr}.fp-search input{width:100%}}.fp-intro{margin:0 0 14px;opacity:.8;font-size:16px}.fp-right{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.fp-sort select{padding:12px;border-radius:14px;border:1px solid rgba(0,0,0,.12);background:#fff;outline:none;font-size:14px;cursor:pointer}.fp-chip{display:inline-flex;align-items:center;gap:10px}.fp-chip-count{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:22px;padding:0 8px;border-radius:999px;background:#ffffff40;font-size:12px;font-weight:900}.fp-chip.active .fp-chip-count{background:#ffffff2e}.fp-card-link{color:inherit;text-decoration:none;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.fp-card-link:hover{transform:translateY(-2px);box-shadow:0 18px 36px #0000001a}.fpub-page{padding-bottom:24px}.fpub-breadcrumb{display:flex;gap:10px;align-items:center;flex-wrap:wrap;opacity:.85;font-size:14px;margin-bottom:12px}.fpub-breadcrumb a{text-decoration:none;color:inherit}.fpub-hero{display:grid;grid-template-columns:1.2fr .8fr;gap:18px;padding:18px;border-radius:20px;border:1px solid rgba(0,0,0,.06);background:#fff;box-shadow:0 16px 30px #0000000f}.fpub-title{margin:0 0 10px;font-size:40px;font-weight:900;letter-spacing:-.6px}.fpub-subtitle{margin:0 0 14px;font-size:16px;opacity:.85;line-height:1.5}.fpub-badges{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px}.fpub-badge{display:inline-flex;align-items:center;padding:10px 12px;border-radius:999px;background:#0000000a;border:1px solid rgba(0,0,0,.06);font-weight:900;font-size:13px}.fpub-badge--price{background:#ff7a001f;border-color:#ff7a002e}.fpub-cta{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:12px}.fpub-btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 16px;border-radius:16px;font-weight:900;border:1px solid rgba(0,0,0,.1);background:#fff;cursor:pointer;text-decoration:none;color:inherit}.fpub-btn--primary{background:#ff7a00;color:#fff;border:0;min-width:220px}.fpub-note{font-size:13px;opacity:.8;padding-top:6px}.fpub-hero-image{height:260px;border-radius:18px;background-size:cover;background-position:center;border:1px solid rgba(0,0,0,.06)}.fpub-hero-image--default{background:linear-gradient(135deg,#f3f4f6,#e5e7eb)}.fpub-grid{margin-top:16px;display:grid;grid-template-columns:1fr 1fr;gap:14px}.fpub-card{padding:18px;border-radius:20px;border:1px solid rgba(0,0,0,.06);background:#fff;box-shadow:0 16px 30px #0000000a}.fpub-card h2{margin:0 0 10px;font-size:18px;font-weight:900}.fpub-paragraph{margin:0;line-height:1.6;opacity:.9}.fpub-list{margin:0;padding-left:18px;line-height:1.7}.fpub-list--ordered{padding-left:20px}.fpub-muted{margin:0;opacity:.75}.fpub-bottom-cta{margin-top:16px}.fpub-bottom-cta-inner{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:center;padding:18px;border-radius:20px;border:1px solid rgba(0,0,0,.06);background:#ff7a0014}.fpub-bottom-cta-inner h2{margin:0 0 6px;font-size:18px;font-weight:900}.fpub-bottom-cta-inner p{margin:0;opacity:.85}.fpub-state{padding:18px;border-radius:20px;border:1px solid rgba(0,0,0,.06);background:#fff}.fpub-state-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:12px}.fpub-skeleton{padding:18px}.fpub-skel-hero,.fpub-skel-card,.fpub-skel-line{background:#0000000f;border-radius:18px}.fpub-skel-hero{height:220px;margin-bottom:14px}.fpub-skel-line{height:14px;margin-bottom:10px;width:70%}.fpub-skel-card{height:180px;margin-top:14px}@media(max-width:900px){.fpub-hero{grid-template-columns:1fr}.fpub-hero-image{height:220px}.fpub-grid{grid-template-columns:1fr}.fpub-title{font-size:32px}}.fpub-card--full{grid-column:1 / -1}.fpub-modalites-grid{margin-top:12px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.fpub-modalite{border:1px solid rgba(0,0,0,.06);background:#00000005;border-radius:18px;padding:14px}.fpub-modalite h3{margin:0 0 8px;font-size:15px;font-weight:900}.fpub-modalite p{margin:0 0 10px;line-height:1.55;opacity:.9}.fpub-mini{margin:0;padding-left:18px;line-height:1.7;opacity:.9}.fpub-modalite--highlight{background:#ff7a001a;border-color:#ff7a002e;display:flex;flex-direction:column;gap:10px}@media(max-width:900px){.fpub-modalites-grid{grid-template-columns:1fr}}.fpub-card h2{scroll-margin-top:120px}.fpub-muted{margin-top:10px;font-size:14px;opacity:.75}.alert-success{padding:10px 12px;border-radius:10px;border:1px solid rgba(0,0,0,.08);background:#00800014}.alert-error{padding:10px 12px;border-radius:10px;border:1px solid rgba(0,0,0,.08);background:#dc000014}.page{padding-top:88px}@media(max-width:1020px){.page{padding-top:88px}}.legal-card{padding:18px}.legal-top{padding-bottom:14px;border-bottom:1px solid rgba(255,255,255,.06);margin-bottom:14px}.legal-toc{display:grid;grid-template-columns:1fr;gap:8px;margin-top:10px}@media(min-width:900px){.legal-toc{grid-template-columns:1fr 1fr}}.legal-toc a{text-decoration:none;opacity:.9}.legal-toc a:hover{opacity:1;text-decoration:underline}.legal-accordion{border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:10px 12px;margin-top:12px;background:#0000001a}.legal-summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 4px}.legal-summary-title{font-weight:700}.legal-summary-hint{font-size:12px;opacity:.7}.legal-content{padding:6px 4px 10px}.legal-note{margin-top:12px;padding:12px;border-radius:12px;background:#ff7a001a;border:1px solid rgba(255,122,0,.25)}.muted{opacity:.8}:root{--header-h: 50px}.page{padding-top:var(--header-h)}.page>.body-content:first-of-type{margin-top:calc(var(--header-h) * -1);padding-top:var(--header-h)}.fp-card{display:flex;flex-direction:column;background:#fff}.fp-card-link{appearance:none;-webkit-appearance:none;border:0;background:transparent;padding:0;margin:0;text-align:left;width:100%;cursor:pointer;display:block}.fp-card-link:focus-visible{outline:3px solid rgba(255,122,0,.35);outline-offset:3px;border-radius:18px}.fp-card-actions{margin-top:auto;padding:14px 18px 18px;background:#fff;border-top:1px solid rgba(0,0,0,.06)}.fp-card-link *{-webkit-user-select:none;user-select:none}.badge{padding:4px 8px;border-radius:6px;font-size:12px}.badge.requested{background:#fde68a}.badge.confirmed{background:#86efac}.badge.cancelled{background:#fecaca}button.danger{background:#dc2626;color:#fff}.success{color:#16a34a}.filters{display:flex;gap:12px;margin-bottom:16px}.filters select{padding:6px}.notifications-list{list-style:none;padding:0;margin:0}.notif-item{padding:12px 14px;border-bottom:1px solid #eee;cursor:pointer}.notif-item.unread{background:#eef6ff}.notif-item.read{opacity:.7}.notif-item:hover{background:#f5f7fa}.notif-header{display:flex;justify-content:space-between;font-size:14px}.notif-date{font-size:12px;color:#777}.notif-message{margin-top:4px;font-size:14px}.messages-actions{display:flex;justify-content:flex-end;margin-bottom:16px}.form-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}.modal-subtitle{opacity:.8;margin-bottom:12px}.form-hint{font-size:13px;opacity:.7;margin-top:8px}body{background:#fff}.page,.dashboard-page{min-height:100vh;background:#fff}.rdv-card{margin-bottom:24px}.rdv-card-header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px}.rdv-title{display:flex;align-items:center;gap:10px}.rdv-title h2{margin:0;font-size:1.25rem;font-weight:700;color:#111827}.rdv-icon{font-size:1.4rem}.rdv-description{margin:0 0 16px;color:#4b5563;font-size:.95rem;line-height:1.5}.rdv-cta{padding:10px 20px;font-size:.95rem;box-shadow:0 6px 16px #ff7a0059}.rdv-cta:hover{transform:translateY(-1px)}.rdv-form{margin-top:16px;padding-top:16px;border-top:1px solid #e5e7eb}.meeting-card{margin-bottom:16px}.meeting-header{display:flex;justify-content:space-between;align-items:center}.badge-warning{background:#facc15}.badge-success{background:#22c55e}.badge-danger{background:#ef4444}.btn-danger{background:#ef4444;color:#fff}.meeting-item{border-top:1px solid #eee;padding:10px 0}.meeting-row{display:flex;justify-content:space-between;align-items:center}.calendar-event{display:flex;flex-direction:column;gap:4px}.badge-soon{background:#22c55e;color:#fff;font-size:11px;padding:2px 6px;border-radius:6px;width:fit-content}.btn-join{background:#0ea5e9;border:none;color:#fff;font-size:12px;padding:4px 6px;border-radius:6px;cursor:pointer}.btn-join:hover{background:#0284c7}.contact-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 18px;margin-top:16px}@media(max-width:768px){.contact-form-grid{grid-template-columns:1fr}}.ua-cell{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}button.danger{background:#c62828;color:#fff}.btn-secondary{border:1px solid #e5e7eb;background:#fff;color:#0f172a;border-radius:999px;padding:8px 14px;font-weight:800;cursor:pointer}.btn-secondary:hover{background:#f8fafc}.btn-danger{border:1px solid #b91c1c;background:#b91c1c;color:#fff;border-radius:999px;padding:8px 14px;font-weight:800;cursor:pointer}.btn-danger:hover{filter:brightness(.95)}.admin-page-header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px}.admin-page-header-actions{display:flex;gap:10px;align-items:center;flex-shrink:0}.admin-page-header-actions .btn{height:38px;padding:0 14px;display:inline-flex;align-items:center;white-space:nowrap}.page-hero{max-width:1100px;margin:0 auto 36px;padding:28px 24px}.page-hero h1{font-size:2.4rem;font-weight:800;letter-spacing:-.02em}.page-hero-subtitle{font-size:1.05rem;margin-top:10px;max-width:680px;line-height:1.6}.hero-actions{margin-top:18px;display:flex;gap:12px;flex-wrap:wrap}.callout{padding:18px 20px;border-radius:14px;background:linear-gradient(135deg,#ff7a0014,#ff7a000a);border:1px solid rgba(255,122,0,.15)}.callout strong{color:#7c2d12}.bullet-list{margin-top:6px;line-height:1.7}.bullet-list li{margin-bottom:6px}.card{transition:all .18s ease}.card:hover{transform:translateY(-2px);box-shadow:0 14px 36px #0f172a14}.faq{border-top:1px solid #e5e7eb;padding:14px 0}.faq:first-child{border-top:none}.faq summary{cursor:pointer;font-weight:600;font-size:.98rem;list-style:none;display:flex;justify-content:space-between;align-items:center}.faq summary:after{content:"+";font-size:18px;font-weight:700;color:#ff7a00}.faq[open] summary:after{content:"–"}.faq p{margin-top:8px;font-size:.95rem;line-height:1.6}.page-section .callout h2{font-size:1.5rem}.page-section .callout{padding:28px}@media(max-width:900px){.page-hero h1{font-size:2rem}.hero-actions{flex-direction:column;align-items:flex-start}}.apprenant-checkout-page{--checkout-border: rgba(148, 163, 184, .35);--checkout-bg-soft: rgba(148, 163, 184, .1);--checkout-shadow: 0 10px 25px rgba(2, 6, 23, .06)}.apprenant-checkout-hero .page-hero-subtitle strong{font-weight:900}.checkout-card{box-shadow:var(--checkout-shadow)}.checkout-card-head h2{margin-top:0;margin-bottom:6px}.checkout-muted{margin:0;opacity:.85}.payment-methods-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}.checkout-btn{width:100%;min-height:44px}@media(max-width:900px){.payment-methods-grid{grid-template-columns:1fr}}.checkout-help{margin-top:14px;padding-top:12px;border-top:1px solid var(--checkout-border);display:grid;gap:8px}.checkout-help-item{display:flex;align-items:flex-start;gap:10px;opacity:.9;line-height:1.35}.checkout-help-dot{width:10px;height:10px;border-radius:999px;background:#22c55ea6;margin-top:4px;flex:0 0 auto}.checkout-instructions-card{margin-top:16px}.checkout-instructions-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px}@media(max-width:900px){.checkout-instructions-grid{grid-template-columns:1fr}}.checkout-instruction{border:1px solid var(--checkout-border);border-radius:14px;padding:12px;background:var(--checkout-bg-soft)}.checkout-instruction-title{font-weight:950;font-size:14px;letter-spacing:.2px;margin-bottom:10px}.checkout-kv{display:grid;grid-template-columns:140px 1fr;gap:10px;padding:8px 0;border-top:1px solid var(--checkout-border)}.checkout-kv:first-of-type{border-top:none;padding-top:0}.checkout-k{font-weight:800;opacity:.9}.checkout-v{display:flex;justify-content:space-between;gap:10px;align-items:center;min-width:0}.checkout-v span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.checkout-copy{border:1px solid var(--checkout-border);background:#ffffffbf;border-radius:999px;padding:6px 10px;font-weight:900;cursor:pointer}.checkout-copy:hover{filter:brightness(.98)}.checkout-copy:disabled{opacity:.6;cursor:not-allowed}.checkout-note{margin-top:12px;padding-top:12px;border-top:1px solid var(--checkout-border);opacity:.9;line-height:1.4}.checkout-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.checkout-toast{margin-bottom:12px;padding:10px 12px;border-radius:12px;border:1px solid rgba(34,197,94,.3);background:#22c55e1a;color:#14532d;font-weight:900}.legal-page{--legal-max-w: 1100px;--legal-radius: 18px;--legal-border: rgba(148, 163, 184, .28);--legal-shadow: 0 18px 55px rgba(15, 23, 42, .08);--legal-bg-soft: rgba(15, 23, 42, .03);--legal-accent: #ff7a00}.legal-page .page-section{max-width:var(--legal-max-w);margin-left:auto;margin-right:auto}.legal-page .legal-card{border-radius:var(--legal-radius);border:1px solid var(--legal-border);box-shadow:var(--legal-shadow);overflow:hidden}.legal-page .legal-top{padding-bottom:14px;margin-bottom:14px;border-bottom:1px solid rgba(148,163,184,.25)}.legal-page .legal-top h2{font-size:1.15rem;letter-spacing:-.2px}.legal-page .legal-toc{display:grid;grid-template-columns:1fr;gap:10px;margin-top:12px}@media(min-width:900px){.legal-page .legal-toc{grid-template-columns:1fr 1fr}}.legal-page .legal-toc a{text-decoration:none;color:inherit;padding:10px 12px;border-radius:14px;border:1px solid rgba(148,163,184,.25);background:#0f172a05;transition:transform .12s ease,background .12s ease,border-color .12s ease;font-weight:700;font-size:.95rem}.legal-page .legal-toc a:hover{transform:translateY(-1px);background:#ff7a0014;border-color:#ff7a0040}.legal-page .legal-toc a:focus-visible{outline:3px solid rgba(255,122,0,.35);outline-offset:3px}.legal-page .legal-anchor{scroll-margin-top:calc(var(--header-h, 88px) + 14px);height:0}.legal-page .legal-section{margin-top:12px}.legal-page .legal-accordion{border:1px solid rgba(148,163,184,.26);border-radius:16px;background:#fff;overflow:hidden}.legal-page .legal-summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px;background:linear-gradient(180deg,#0f172a08,#0f172a03);-webkit-user-select:none;user-select:none;transition:background .12s ease}.legal-page .legal-summary:hover{background:#ff7a0014}.legal-page .legal-summary:focus-visible{outline:3px solid rgba(255,122,0,.35);outline-offset:3px}.legal-page .legal-summary-title{font-weight:900;letter-spacing:-.2px;color:#0f172a}.legal-page .legal-summary-hint{font-size:12px;opacity:.75;white-space:nowrap}.legal-page details>summary{list-style:none}.legal-page details>summary::-webkit-details-marker{display:none}.legal-page .legal-content{padding:12px 14px 14px;background:#fff}.legal-page .legal-content p{margin:0 0 10px;line-height:1.65;color:#374151}.legal-page .legal-content p:last-child{margin-bottom:0}.legal-page .legal-content h3{margin:14px 0 8px;font-size:1.02rem;font-weight:900;color:#111827;letter-spacing:-.2px}.legal-page .legal-content .bullet-list{margin:6px 0 12px;padding-left:18px}.legal-page .legal-content .bullet-list li{margin:6px 0;color:#374151;line-height:1.6}.legal-page .legal-content a{color:#0b2a55;font-weight:800;text-decoration:underline;text-underline-offset:2px}.legal-page .legal-content a:hover{color:#061b36}.legal-page .legal-note{margin-top:12px;padding:12px;border-radius:14px;border:1px solid rgba(255,122,0,.25);background:#ff7a001a;color:#7c2d12}.legal-page .legal-note p{margin:0;color:inherit}.legal-page .legal-note .btn-secondary{margin-top:10px}.legal-page details[open] .legal-summary{background:#ff7a001a;border-bottom:1px solid rgba(255,122,0,.18)}@media(max-width:768px){.legal-page .legal-summary{flex-direction:column;align-items:flex-start}.legal-page .legal-summary-hint{font-size:12px;opacity:.7}.legal-page .legal-content{padding:12px 12px 14px}.legal-page .legal-toc a{font-size:.95rem}}html[data-theme=dark] .legal-page .legal-accordion,html[data-theme=dark] .legal-page .legal-content,html[data-theme=dark] .legal-page .legal-summary{background:#0b1120}html[data-theme=dark] .legal-page .legal-accordion{border-color:#94a3b82e}html[data-theme=dark] .legal-page .legal-summary-title{color:#e5e7eb}html[data-theme=dark] .legal-page .legal-content p,html[data-theme=dark] .legal-page .legal-content li{color:#cbd5e1}html[data-theme=dark] .legal-page .legal-toc a{background:#ffffff0a;border-color:#94a3b829}html[data-theme=dark] .legal-page .legal-toc a:hover{background:#ff7a0024;border-color:#ff7a0040}html[data-theme=dark] .legal-page .legal-content a{color:#93c5fd}html[data-theme=dark] .legal-page .legal-note{color:#fed7aa;background:#ff7a001f;border-color:#ff7a0033}.public-portfolio{padding-bottom:40px}.public-portfolio-hero{margin-bottom:30px}.public-portfolio-title{font-size:32px;font-weight:700}.public-portfolio-subtitle{opacity:.7;margin-top:6px}.public-portfolio-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(420px,1fr));gap:20px}.public-project-card{background:#111827;border-radius:14px;padding:22px;border:1px solid rgba(255,255,255,.06)}.public-project-header{display:flex;justify-content:space-between;gap:12px;margin-bottom:12px}.public-project-title{font-size:18px;font-weight:600}.public-project-course{font-size:13px;opacity:.7;margin-top:4px}.public-featured{background:#f59e0b;padding:4px 10px;border-radius:20px;font-size:12px;color:#fff}.public-project-desc{margin:10px 0;line-height:1.4}.public-skills{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.public-skill{background:#ffffff14;border-radius:20px;padding:4px 10px;font-size:12px}.public-feedback{margin-top:12px;background:#ffffff0d;padding:12px;border-radius:10px}.public-feedback-title{font-size:13px;opacity:.7;margin-bottom:6px}.public-meta{margin-top:10px;font-size:12px;opacity:.6}.public-footer{margin-top:30px;text-align:center}.public-footer-card{background:#111827;border-radius:14px;padding:18px;border:1px solid rgba(255,255,255,.06)}.public-project-page{min-height:100vh;padding:28px 0 50px;background:radial-gradient(circle at top right,rgba(37,99,235,.12),transparent 30%),radial-gradient(circle at top left,rgba(20,184,166,.1),transparent 28%),#020617}.public-project-container{width:min(1180px,calc(100% - 32px));margin:0 auto}.public-project-topbar{margin-bottom:18px}.public-project-back{border:none;border-radius:14px;padding:10px 14px;cursor:pointer;font-size:13px;font-weight:700;background:#ffffff14;color:#fff}.public-project-hero{padding:28px;border-radius:28px;background:linear-gradient(135deg,#1e293bf5,#0f172af5),#0f172a;border:1px solid rgba(255,255,255,.08);margin-bottom:24px;box-shadow:0 14px 36px #0000003d}.public-project-kicker{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#ffffff94;margin-bottom:10px}.public-project-title{margin:0 0 10px;font-size:36px;line-height:1.08;font-weight:800;color:#fff}.public-project-subtitle{margin:0;color:#ffffffb8;font-size:15px}.public-project-meta{margin-top:16px;display:flex;gap:12px;flex-wrap:wrap;align-items:center;color:#ffffffb3;font-size:13px}.public-project-badge{display:inline-flex;align-items:center;padding:6px 11px;border-radius:999px;background:#f59e0b29;color:#fcd34d;border:1px solid rgba(245,158,11,.24);font-size:12px;font-weight:700}.public-project-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:22px}.public-project-main-card,.public-project-side-card{border-radius:24px;padding:22px;background:linear-gradient(180deg,#111827,#0b1220);border:1px solid rgba(255,255,255,.08);box-shadow:0 10px 28px #00000038}.public-project-section+.public-project-section{margin-top:24px}.public-project-section h2{margin:0 0 10px;color:#fff;font-size:20px}.public-project-section p,.public-project-description{margin:0;color:#ffffffd6;line-height:1.7;white-space:pre-wrap}.public-project-skills{display:flex;flex-wrap:wrap;gap:8px}.public-project-skill{display:inline-flex;align-items:center;padding:6px 11px;border-radius:999px;background:#ffffff0f;color:#e5e7eb;font-size:12px;border:1px solid rgba(255,255,255,.06)}.public-project-feedback{padding:14px;border-radius:18px;background:#ffffff0d;border-left:3px solid rgba(37,99,235,.7);color:#ffffffd6;line-height:1.6}.public-project-side-block+.public-project-side-block{margin-top:16px}.public-project-side-label{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#ffffff85;margin-bottom:6px}.public-project-side-value{color:#fff;font-size:14px;line-height:1.5}.public-project-side-actions{margin-top:22px}.public-project-primary-btn{width:100%;border:none;border-radius:16px;padding:12px 16px;cursor:pointer;font-size:14px;font-weight:700;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff}.public-project-footer{margin-top:28px}.public-project-footer-card{padding:18px 20px;border-radius:20px;background:#0f172af0;color:#e5e7eb;border:1px solid rgba(255,255,255,.08);text-align:center}.public-project-state,.public-project-error{padding:20px;border-radius:20px}.public-project-state{background:#ffffff0a;color:#e5e7eb}.public-project-error{background:#7f1d1d52;color:#fecaca;border:1px solid rgba(248,113,113,.2)}@media(max-width:920px){.public-project-layout{grid-template-columns:1fr}}@media(max-width:720px){.public-project-title{font-size:28px}}.dashboard-page{--dash-max: 1240px;--dash-navy: #0b3a66;--dash-navy-2: #0f4c81;--dash-orange: #ff7a00;--dash-orange-2: #ff9a3d;--dash-bg: #f4f7fb;--dash-card: #ffffff;--dash-card-soft: rgba(255, 255, 255, .82);--dash-text: #0f172a;--dash-text-soft: #1e293b;--dash-muted: rgba(15, 23, 42, .68);--dash-border: rgba(15, 23, 42, .1);--dash-border-strong: rgba(15, 23, 42, .16);--dash-shadow: 0 14px 34px rgba(2, 6, 23, .08);--dash-shadow-soft: 0 8px 22px rgba(2, 6, 23, .06);--dash-shadow-hover: 0 18px 38px rgba(2, 6, 23, .12);--dash-radius: 18px;--dash-radius-sm: 12px;--dash-radius-xs: 10px;--dash-focus: rgba(255, 122, 0, .32);--dash-success: #15803d;--dash-danger: #b91c1c;--dash-warning: #b45309}.dashboard-page *,.dashboard-page *:before,.dashboard-page *:after{box-sizing:border-box}.dashboard-page .page-section>*,.dashboard-page .dashboard-grid>*,.dashboard-page .stats-grid>*,.dashboard-page .badges-grid>*,.dashboard-page .mes-cours-list>*,.dashboard-page .badges-list>*{min-width:0}.dashboard-page.page{background:radial-gradient(circle at top left,rgba(11,58,102,.05),transparent 26%),radial-gradient(circle at top right,rgba(255,122,0,.05),transparent 24%),linear-gradient(180deg,#f8fbff 0%,var(--dash-bg) 100%);min-height:calc(100vh - 60px);padding-bottom:36px;overflow-x:clip}.dashboard-page .page-section{max-width:var(--dash-max);margin:0 auto;padding:16px 18px}.dashboard-page .page-hero{position:relative;max-width:var(--dash-max);margin:16px auto 0;padding:24px 20px 20px;border-radius:calc(var(--dash-radius) + 6px);border:1px solid rgba(255,255,255,.6);box-shadow:var(--dash-shadow);background:linear-gradient(135deg,#0b3a661c,#ff7a0014 42%,#fffffff5);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);overflow:hidden}.dashboard-page .page-hero:before{content:"";position:absolute;inset:-35%;background:radial-gradient(circle at 18% 20%,rgba(11,58,102,.18),transparent 42%);pointer-events:none}.dashboard-page .page-hero:after{content:"";position:absolute;inset:-35%;background:radial-gradient(circle at 84% 24%,rgba(255,122,0,.16),transparent 42%);pointer-events:none}.dashboard-page .page-hero>*{position:relative;z-index:1}.dashboard-page .page-hero h1{margin:10px 0 6px;color:var(--dash-text);font-size:clamp(24px,2.9vw,36px);line-height:1.12;letter-spacing:-.025em;font-weight:900;overflow-wrap:anywhere}.dashboard-page .page-hero-subtitle{margin:0;color:var(--dash-muted);line-height:1.65;max-width:920px;font-size:14px}.dashboard-page .badge{display:inline-flex;align-items:center;gap:8px;border-radius:999px;padding:7px 11px;font-size:12px;font-weight:800;letter-spacing:.02em;box-shadow:inset 0 0 0 1px #ffffff38;max-width:100%;white-space:normal}.dashboard-page .badge-soft{background:#0b3a661a;color:#0b3a66f2;border:1px solid rgba(11,58,102,.14)}.dashboard-page .badge-warning{background:#ff7a0024;color:#9a4a00;border:1px solid rgba(255,122,0,.28)}.dashboard-page .badge-success{background:#16a34a1a;color:#166534;border:1px solid rgba(22,163,74,.22)}.dashboard-page .badge-danger{background:#ef44441a;color:#991b1b;border:1px solid rgba(239,68,68,.2)}.dashboard-page .card,.dashboard-page .stats-card,.dashboard-page .badge-card,.dashboard-page .kpi-card{min-width:0;background:linear-gradient(180deg,#fffffffa,#fffffff5);border:1px solid var(--dash-border);border-radius:var(--dash-radius);box-shadow:var(--dash-shadow-soft);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease}.dashboard-page .card:hover,.dashboard-page .stats-card:hover,.dashboard-page .badge-card:hover,.dashboard-page .kpi-card:hover{box-shadow:var(--dash-shadow-hover);border-color:#0f172a24}.dashboard-page .card{padding:16px 14px}.dashboard-page .card h2,.dashboard-page .card h3,.dashboard-page .card h4{color:var(--dash-text);overflow-wrap:anywhere}.dashboard-page .card p,.dashboard-page .card li,.dashboard-page .stats-card p,.dashboard-page .badge-card p{overflow-wrap:anywhere}.dashboard-page .dashboard-card{min-width:0;overflow:hidden}.dashboard-page .dashboard-card h2{margin:0 0 10px;font-size:18px;letter-spacing:-.01em;color:var(--dash-text);line-height:1.3}.dashboard-page .dashboard-card h3.dashboard-subtitle{margin:14px 0 10px;font-size:14px;color:#0f172acc;letter-spacing:.01em}.dashboard-page .highlight-card{border-color:#ff7a0052;box-shadow:0 16px 34px #ff7a0024;background:linear-gradient(180deg,#ff7a0014,#fff)}.dashboard-page .form-label{display:inline-block;margin-bottom:6px;font-size:12px;font-weight:800;color:#0f172ac7;letter-spacing:.02em}.dashboard-page .form-input,.dashboard-page input.form-input,.dashboard-page select.form-input,.dashboard-page textarea.form-input,.dashboard-page input[type=text],.dashboard-page input[type=email],.dashboard-page input[type=number],.dashboard-page input[type=date],.dashboard-page input[type=search],.dashboard-page select,.dashboard-page textarea{width:100%;box-sizing:border-box;min-height:44px;border-radius:12px;border:1px solid rgba(15,23,42,.12);background:#ffffffeb;color:var(--dash-text);padding:10px 12px;outline:none;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.dashboard-page textarea{min-height:110px;resize:vertical}.dashboard-page .form-input:hover,.dashboard-page input:hover,.dashboard-page select:hover,.dashboard-page textarea:hover{border-color:#0f172a2e}.dashboard-page .form-input:focus,.dashboard-page input:focus,.dashboard-page select:focus,.dashboard-page textarea:focus{border-color:#ff7a0080;box-shadow:0 0 0 4px #ff7a001f;background:#fff}.dashboard-page .muted{color:var(--dash-muted);font-size:13px;line-height:1.55}.dashboard-page .btn-primary,.dashboard-page .btn-secondary,.dashboard-page .btn-tertiary,.dashboard-page .btn-outline,.dashboard-page .btn-link,.dashboard-page .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;max-width:100%;border-radius:12px;padding:10px 14px;font-weight:800;line-height:1.1;cursor:pointer;text-decoration:none;transition:transform .12s ease,box-shadow .12s ease,opacity .12s ease,background .12s ease,color .12s ease,border-color .12s ease;white-space:normal;word-break:break-word;overflow-wrap:anywhere}.dashboard-page .btn-primary:hover,.dashboard-page .btn-secondary:hover,.dashboard-page .btn-tertiary:hover,.dashboard-page .btn-outline:hover,.dashboard-page .btn:hover{transform:translateY(-1px);box-shadow:0 10px 18px #0206171a}.dashboard-page .btn-primary:active,.dashboard-page .btn-secondary:active,.dashboard-page .btn-tertiary:active,.dashboard-page .btn-outline:active,.dashboard-page .btn:active{transform:translateY(0);box-shadow:none}.dashboard-page .btn-primary:focus-visible,.dashboard-page .btn-secondary:focus-visible,.dashboard-page .btn-tertiary:focus-visible,.dashboard-page .btn-outline:focus-visible,.dashboard-page .btn-link:focus-visible,.dashboard-page .btn:focus-visible{outline:3px solid var(--dash-focus);outline-offset:2px}.dashboard-page .btn-primary{background:linear-gradient(135deg,var(--dash-orange),var(--dash-orange-2));color:#fff;border:2px solid var(--dash-orange);box-shadow:0 10px 24px #ff7a0038}.dashboard-page .btn-primary:hover{opacity:.98}.dashboard-page .btn-secondary,.dashboard-page .btn{background:#ffffffeb;color:#0b3a66f7;border:2px solid rgba(11,58,102,.14)}.dashboard-page .btn-secondary:hover,.dashboard-page .btn:hover{border-color:#0b3a6647;background:#fff}.dashboard-page .btn-tertiary{background:#0b3a660f;color:#0b3a66f5;border:2px solid rgba(11,58,102,.1)}.dashboard-page .btn-outline{background:transparent;color:#0b3a66f2;border:2px solid rgba(11,58,102,.22)}.dashboard-page .btn-link{background:transparent;border:0;padding:6px 8px;cursor:pointer;color:#0b3a66f2;text-decoration:underline}.dashboard-page .btn-sm{padding:8px 10px;min-height:36px;border-radius:10px;font-size:13px}.dashboard-page .stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:stretch}.dashboard-page .stats-grid-wide{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-page .stats-card{padding:16px 14px;min-width:0;overflow:hidden}.dashboard-page .stats-card-title{margin:0;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:#0f172a94;font-weight:800}.dashboard-page .stats-card-value{margin:6px 0 4px;font-size:30px;font-weight:900;letter-spacing:-.02em;color:var(--dash-text);line-height:1.1}.dashboard-page .stats-card-value-small{font-size:13px;font-weight:700;color:#0f172a99}.dashboard-page .stats-card-value-unit{font-size:18px;font-weight:800;margin-left:4px;color:#0f172ab8}.dashboard-page .stats-card-sub{margin:6px 0 0;color:var(--dash-muted);font-size:13px;line-height:1.5}.dashboard-page .stats-card-large{padding:18px 16px}.dashboard-page .progress-bar{margin-top:12px;height:10px;border-radius:999px;background:#0f172a14;overflow:hidden}.dashboard-page .progress-bar-inner{height:100%;width:0%;border-radius:999px;background:linear-gradient(90deg,#0b3a66f2,#ff7a00f2);transition:width .25s ease}.dashboard-page .dashboard-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:start}.dashboard-page .dashboard-list{margin:10px 0 0;padding-left:18px;color:#0f172ac7;line-height:1.6}.dashboard-page .dashboard-list li{overflow-wrap:anywhere}.dashboard-page .form-error{color:#b91c1c;background:#b91c1c0f;border:1px solid rgba(185,28,28,.18);padding:10px 12px;border-radius:12px;font-weight:700}.dashboard-page .form-success{color:#166534;background:#16a34a14;border:1px solid rgba(22,163,74,.2);padding:10px 12px;border-radius:12px;font-weight:700}.dashboard-page .last-message-question,.dashboard-page .last-message-answer{margin-top:10px;padding:10px 12px;border-radius:12px;border:1px solid var(--dash-border);background:#0f172a08;overflow-wrap:anywhere}.dashboard-page .last-message-answer{background:#0b3a660d;border-color:#0b3a661f}.dashboard-page .question-meta{margin-top:10px;color:var(--dash-muted);font-size:13px;line-height:1.5}.dashboard-page .mes-cours-list{list-style:none;padding:0;margin:10px 0 0;display:grid;gap:10px}.dashboard-page .mes-cours-item{min-width:0;border:1px solid var(--dash-border);border-radius:14px;background:#fffffff2;padding:12px;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.dashboard-page .mes-cours-item:hover{border-color:#0f172a24;box-shadow:0 10px 24px #02061712;transform:translateY(-1px)}.dashboard-page .mes-cours-header{display:flex;align-items:flex-start;gap:10px;justify-content:space-between;flex-wrap:wrap;min-width:0}.dashboard-page .mes-cours-title{min-width:0;flex:1 1 180px;font-weight:800;color:var(--dash-text);line-height:1.4;overflow-wrap:anywhere}.dashboard-page .mes-cours-progress-label{flex:0 0 auto;font-weight:800;color:#0f172ab3}.dashboard-page .mes-cours-progress{margin-top:10px;height:10px;border-radius:999px;background:#0f172a14;overflow:hidden}.dashboard-page .mes-cours-progress-inner{height:100%;width:0%;border-radius:999px;background:linear-gradient(90deg,#0b3a66f2,#ff7a00f2);transition:width .25s ease}.dashboard-page hr{border:0;height:1px;background:#0f172a1a;margin:14px 0}.dashboard-page .badges-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.dashboard-page .badge-card{min-width:0;padding:14px 12px;border-radius:var(--dash-radius);background:linear-gradient(180deg,#ff7a000f,#fff);overflow:hidden}.dashboard-page .badge-card-label{margin:0;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.06em;color:#ff7a00f2}.dashboard-page .badge-card-title{margin:6px 0 4px;font-size:16px;font-weight:900;color:var(--dash-text);line-height:1.35;overflow-wrap:anywhere}.dashboard-page .badge-card-desc{margin:0;color:var(--dash-muted);line-height:1.55;overflow-wrap:anywhere}.dashboard-page .badges-list{list-style:none;padding:0;margin:10px 0 0;display:grid;gap:10px}.dashboard-page .badge-item{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;align-items:start;min-width:0;border:1px solid var(--dash-border);border-radius:14px;padding:12px;background:#fff;overflow:hidden}.dashboard-page .badge-info{min-width:0}.dashboard-page .badge-info strong{display:block;color:var(--dash-text);line-height:1.35;overflow-wrap:anywhere}.dashboard-page .badge-info>div{margin-top:4px;color:#0f172ad1;line-height:1.45;overflow-wrap:anywhere}.dashboard-page .badge-info small{display:inline-block;margin-top:6px;color:#0f172a94}.dashboard-page .badge-actions{display:grid;grid-template-columns:1fr;gap:8px;width:100%;min-width:0}.dashboard-page .badge-actions .btn-secondary,.dashboard-page .badge-actions .btn-outline,.dashboard-page .badge-actions .btn,.dashboard-page .badge-actions button{width:100%;min-width:0}.dashboard-page .kpi-label{margin:0 0 6px;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:#0f172a94;font-weight:800}.dashboard-page .kpi-value{margin:0;font-size:32px;font-weight:900;letter-spacing:-.02em;color:var(--dash-text)}.dashboard-page .kpi-sub{margin:6px 0 0;font-size:13px;color:var(--dash-muted);line-height:1.55}.dashboard-page .kpi-mini-rows{margin-top:12px;display:grid;gap:6px}.dashboard-page .kpi-mini-row{display:flex;justify-content:space-between;gap:10px;padding:7px 10px;border-radius:12px;background:#0f172a08;border:1px solid rgba(15,23,42,.06);color:#0f172ac7}.dashboard-page .kpi-mini-row b{color:var(--dash-text)}.dashboard-page .kpi-bar-wrap{height:10px;border-radius:999px;background:#0f172a14;overflow:hidden;border:1px solid rgba(15,23,42,.06)}.dashboard-page .kpi-bar{height:100%;width:0%;border-radius:999px;background:linear-gradient(90deg,#0b3a66f2,#ff7a00f2);transition:width .25s ease}.dashboard-page .kpi-bar-caption{margin-top:6px;font-size:12px;color:#0f172a9e}.dashboard-page .recharts-responsive-container{min-height:240px}.dashboard-page .recharts-cartesian-grid line{stroke:#0f172a14}.dashboard-page .recharts-xAxis .recharts-cartesian-axis-tick-value,.dashboard-page .recharts-yAxis .recharts-cartesian-axis-tick-value{fill:#0f172a9e;font-size:12px}.dashboard-page .recharts-legend-item-text{color:var(--dash-text-soft)!important}.dashboard-page .recharts-default-tooltip{border-radius:12px!important;border:1px solid rgba(15,23,42,.1)!important;box-shadow:0 14px 28px #0206171f!important;background:#fffffffa!important}.dashboard-page .dashboard-alert-card{position:relative;overflow:hidden;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.dashboard-page .dashboard-alert-card:hover{transform:translateY(-1px);box-shadow:0 12px 28px #02061714}.dashboard-page .dashboard-alert-card:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;border-radius:999px;background:#0f172a1a}.dashboard-page .dashboard-alert-card.is-ok{background:linear-gradient(180deg,#16a34a0d,#fffffffa);border-color:#16a34a29!important}.dashboard-page .dashboard-alert-card.is-ok:before{background:#16a34ae0}.dashboard-page .dashboard-alert-card.is-ok .muted{color:#15803dd9}.dashboard-page .dashboard-alert-card.is-warn{background:linear-gradient(180deg,#f59e0b12,#fffffffa);border-color:#b4530929!important}.dashboard-page .dashboard-alert-card.is-warn:before{background:#f59e0beb}.dashboard-page .dashboard-alert-card.is-warn .muted{color:#b45309e6}.dashboard-page .dashboard-alert-card.is-danger{background:linear-gradient(180deg,#ef444412,#fffffffa);border-color:#b91c1c2e!important}.dashboard-page .dashboard-alert-card.is-danger:before{background:#dc2626eb}.dashboard-page .dashboard-alert-card.is-danger .muted{color:#b91c1ceb}.dashboard-page .table,.dashboard-page table{border-collapse:collapse}.dashboard-page .table th,.dashboard-page .table td,.dashboard-page table th,.dashboard-page table td{vertical-align:middle}.dashboard-page .page-hero button,.dashboard-page .page-hero .btn-primary,.dashboard-page .page-hero .btn-secondary,.dashboard-page .page-hero .btn-outline,.dashboard-page .page-hero .btn{white-space:nowrap}@media(max-width:1200px){.dashboard-page .dashboard-grid,.dashboard-page .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-page .stats-grid-wide{grid-template-columns:1fr}.dashboard-page .badges-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:768px){.dashboard-page .page-hero{padding:20px 16px 18px}.dashboard-page .page-section{padding:14px 16px}.dashboard-page .kpi-value,.dashboard-page .stats-card-value{font-size:28px}.dashboard-page .dashboard-alert-card{padding-left:16px!important}.dashboard-page .page-hero button,.dashboard-page .page-hero .btn-primary,.dashboard-page .page-hero .btn-secondary,.dashboard-page .page-hero .btn-outline,.dashboard-page .page-hero .btn{white-space:normal}}@media(max-width:640px){.dashboard-page .page-hero{margin-top:10px;padding:18px 14px;border-radius:18px}.dashboard-page .page-section{padding:12px 14px}.dashboard-page .dashboard-grid,.dashboard-page .stats-grid,.dashboard-page .badges-grid,.dashboard-page .badge-item{grid-template-columns:1fr}.dashboard-page .badge-actions{justify-content:flex-start}.dashboard-page .btn-primary,.dashboard-page .btn-secondary,.dashboard-page .btn-tertiary,.dashboard-page .btn-outline,.dashboard-page .btn{width:100%;justify-content:center}.dashboard-page .page-hero button{width:100%}.dashboard-page .kpi-mini-row{flex-direction:row}}.dashboard-metric-card.tone-default{background:linear-gradient(180deg,#fff,#fafafa)}.dashboard-metric-card.tone-blue{background:linear-gradient(180deg,#fff,#f8fbff)}.dashboard-metric-card.tone-indigo{background:linear-gradient(180deg,#fff,#faf8ff)}.dashboard-metric-card.tone-emerald{background:linear-gradient(180deg,#fff,#f5fff9)}.dashboard-metric-card.tone-cyan{background:linear-gradient(180deg,#fff,#f5fcff)}.dashboard-metric-card.tone-violet{background:linear-gradient(180deg,#fff,#fbf8ff)}.dashboard-metric-card.tone-warn{background:linear-gradient(180deg,#fff,#fffaf2)}.dashboard-metric-card.tone-success{background:linear-gradient(180deg,#fff,#f4fff7)}.dashboard-metric-card.tone-danger{background:linear-gradient(180deg,#fff,#fff6f6)}.appr-pay-page .payments-card{overflow:hidden}.appr-pay-card{border-radius:16px}.appr-pay-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:10px}.appr-pay-unpaid-list{list-style:none;padding:0;margin:0;display:grid;gap:10px}.appr-pay-unpaid-item{border:1px solid rgba(148,163,184,.25);border-radius:14px;padding:12px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.appr-pay-unpaid-info{min-width:260px;flex:1 1 auto}.appr-pay-course-title{display:block;font-weight:950;margin-bottom:4px}.appr-pay-course-amount{opacity:.9}.appr-pay-amount{font-weight:900}.appr-pay-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.appr-pay-mobile-box{margin-top:14px;padding-top:14px;border-top:1px solid rgba(148,163,184,.25)}.appr-pay-mobile-error,.appr-pay-mobile-title{margin:0 0 8px}.appr-pay-mobile-sub{margin:0 0 8px;opacity:.95}.appr-pay-mobile-steps{padding-left:1.25rem;margin:0;display:grid;gap:6px}.appr-pay-mobile-footer{margin-top:10px;font-size:.95rem;opacity:.9}.appr-pay-help{margin-top:6px;margin-bottom:12px;opacity:.92}.appr-pay-muted{opacity:.9}.appr-pay-proof-already{font-size:.85rem;margin-top:6px;opacity:.85}.appr-pay-proof-form textarea{resize:vertical}.appr-pay-proof-msg{margin:10px 0 0}.appr-pay-file-hint{margin-top:6px;font-size:.9rem;opacity:.85}.appr-pay-table-wrap{width:100%;overflow:auto;border-radius:14px;border:1px solid rgba(148,163,184,.25)}.appr-pay-table{width:100%;border-collapse:collapse;min-width:760px}.appr-pay-table th,.appr-pay-table td{padding:10px 12px;vertical-align:top}.appr-pay-btn-pdf{white-space:nowrap}@media(max-width:720px){.appr-pay-unpaid-item{align-items:stretch}.appr-pay-actions{justify-content:flex-start}}.apprenant-messages-page{--amp-radius: 18px;--amp-radius-sm: 14px;--amp-border: rgba(15, 23, 42, .08);--amp-border-strong: rgba(15, 23, 42, .14);--amp-text: #0f172a;--amp-muted: rgba(15, 23, 42, .68);--amp-soft: rgba(15, 23, 42, .04);--amp-soft-2: rgba(11, 58, 102, .04);--amp-orange-soft: rgba(255, 122, 0, .08);--amp-orange-border: rgba(255, 122, 0, .16);--amp-blue-soft: rgba(11, 58, 102, .05);--amp-blue-border: rgba(11, 58, 102, .1);--amp-shadow: 0 14px 30px rgba(15, 23, 42, .06);--amp-shadow-soft: 0 8px 22px rgba(15, 23, 42, .05)}.apprenant-messages-page *,.apprenant-messages-page *:before,.apprenant-messages-page *:after{box-sizing:border-box}.apprenant-messages-page .page-section>*,.apprenant-messages-page .messages-card>*,.apprenant-messages-page .rdv-card>*{min-width:0}.apprenant-messages-page .rdv-card-premium{padding:20px 20px 18px;border-radius:var(--amp-radius);border:1px solid var(--amp-border);background:linear-gradient(180deg,#fffffffa,#f8fafcf5);box-shadow:var(--amp-shadow);overflow:hidden}.apprenant-messages-page .rdv-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;flex-wrap:wrap}.apprenant-messages-page .rdv-title-block{min-width:0;flex:1 1 540px}.apprenant-messages-page .rdv-title{display:flex;align-items:center;gap:12px;min-width:0}.apprenant-messages-page .rdv-title h2{margin:0;font-size:clamp(22px,2vw,28px);line-height:1.15;letter-spacing:-.02em;color:var(--amp-text)}.apprenant-messages-page .rdv-icon{width:46px;height:46px;flex:0 0 46px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;background:#ff7a001a;border:1px solid rgba(255,122,0,.14);font-size:21px}.apprenant-messages-page .rdv-description{margin:12px 0 0;color:var(--amp-muted);line-height:1.65;max-width:820px}.apprenant-messages-page .rdv-cta{flex:0 0 auto}.apprenant-messages-page .rdv-info-band{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.apprenant-messages-page .rdv-info-pill{display:inline-flex;align-items:center;min-height:36px;padding:8px 12px;border-radius:999px;background:var(--amp-soft);border:1px solid var(--amp-border);color:#0f172ac2;font-size:13px;font-weight:800;line-height:1}.apprenant-messages-page .rdv-form-shell{margin-top:18px;padding:18px;border-radius:16px;border:1px solid var(--amp-border);background:#fffffff0;box-shadow:inset 0 1px #fff6}.apprenant-messages-page .rdv-form-head h3{margin:0;font-size:19px;color:var(--amp-text);letter-spacing:-.01em}.apprenant-messages-page .rdv-form-head p{margin:8px 0 0;color:var(--amp-muted);line-height:1.6}.apprenant-messages-page .rdv-form{margin-top:18px;display:grid;gap:16px}.apprenant-messages-page .rdv-form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.apprenant-messages-page .rdv-field{min-width:0;display:grid;gap:7px}.apprenant-messages-page .rdv-field label{font-size:13px;font-weight:800;color:#0f172acc;letter-spacing:.01em}.apprenant-messages-page .rdv-field input,.apprenant-messages-page .rdv-field select,.apprenant-messages-page .rdv-field textarea{width:100%}.apprenant-messages-page .rdv-readonly{background:#0f172a0a;color:var(--amp-text);font-weight:800}.apprenant-messages-page .rdv-slot-preview{border-radius:15px;padding:15px 16px;border:1px solid var(--amp-orange-border);background:linear-gradient(180deg,var(--amp-orange-soft),rgba(255,255,255,.96))}.apprenant-messages-page .rdv-slot-preview-label{font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.06em;color:#0f172a8f;margin-bottom:6px}.apprenant-messages-page .rdv-slot-preview-value{color:var(--amp-text);line-height:1.55;font-weight:700;overflow-wrap:anywhere}.apprenant-messages-page .rdv-help-box{border-radius:15px;padding:14px 16px;border:1px solid var(--amp-blue-border);background:var(--amp-blue-soft)}.apprenant-messages-page .rdv-help-title{font-size:13px;font-weight:900;margin-bottom:4px;color:#0b3a66}.apprenant-messages-page .rdv-help-box p{margin:0;color:var(--amp-muted);line-height:1.55}.apprenant-messages-page .rdv-actions{display:flex;gap:10px;flex-wrap:wrap}.apprenant-messages-page .meetings-card{padding:18px}.apprenant-messages-page .meetings-card-head h2{margin:0;font-size:21px;line-height:1.2;letter-spacing:-.02em}.apprenant-messages-page .meetings-card-subtitle{margin:6px 0 0;color:#0f172aa8;line-height:1.55}.apprenant-messages-page .meetings-sections{display:grid;gap:18px;margin-top:16px}.apprenant-messages-page .meetings-group{display:grid;gap:12px}.apprenant-messages-page .meetings-group-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.apprenant-messages-page .meetings-group-head h3{margin:0;font-size:17px;color:#0f172a}.apprenant-messages-page .meetings-count-pill{display:inline-flex;align-items:center;justify-content:center;min-width:34px;min-height:34px;padding:6px 10px;border-radius:999px;background:#ff7a001a;border:1px solid rgba(255,122,0,.16);color:#9a4a00;font-size:13px;font-weight:900}.apprenant-messages-page .meetings-count-pill-muted{background:#0f172a0d;border-color:#0f172a1a;color:#0f172aad}.apprenant-messages-page .meetings-empty{margin:0;color:#0f172aa8;line-height:1.55}.apprenant-messages-page .meetings-list{display:grid;gap:10px;max-width:760px}.apprenant-messages-page .meetings-list-past{max-width:760px}.apprenant-messages-page .meeting-item{border:1px solid rgba(15,23,42,.08);border-radius:14px;padding:12px 14px;background:linear-gradient(180deg,#fffffffa,#f8fafcf5);box-shadow:0 6px 16px #0f172a0a}.apprenant-messages-page .meeting-item-past{opacity:.96}.apprenant-messages-page .meeting-item-top{display:block}.apprenant-messages-page .meeting-main{min-width:0}.apprenant-messages-page .meeting-title-row{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.apprenant-messages-page .meeting-main h4{margin:0;font-size:16px;color:#0f172a;line-height:1.3}.apprenant-messages-page .meeting-date{margin:6px 0 0;color:#0f172aad;line-height:1.5;font-size:14px}.apprenant-messages-page .meeting-comment{margin:10px 0 0;color:#0f172ac2;line-height:1.55;background:#0f172a08;border:1px solid rgba(15,23,42,.06);border-radius:10px;padding:9px 11px;font-size:14px}.apprenant-messages-page .meeting-meta-note{margin:10px 0 0;color:#0f172ab3;line-height:1.5;font-size:14px}.apprenant-messages-page .meeting-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}.apprenant-messages-page .meeting-actions .btn-secondary,.apprenant-messages-page .meeting-actions .btn-primary{width:auto}.apprenant-messages-page .meeting-status{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:5px 10px;border-radius:999px;font-size:11px;font-weight:900;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}.apprenant-messages-page .meeting-status-upcoming{background:#ff7a001f;color:#9a4a00;border:1px solid rgba(255,122,0,.18)}.apprenant-messages-page .meeting-status-live{background:#16a34a1f;color:#166534;border:1px solid rgba(22,163,74,.18)}.apprenant-messages-page .meeting-status-past{background:#0f172a0f;color:#0f172ab3;border:1px solid rgba(15,23,42,.1)}@media(max-width:640px){.apprenant-messages-page .meetings-card{padding:14px}.apprenant-messages-page .meetings-list,.apprenant-messages-page .meetings-list-past{max-width:100%}.apprenant-messages-page .meeting-item{padding:12px}.apprenant-messages-page .meeting-title-row{align-items:flex-start}.apprenant-messages-page .meeting-actions{display:grid;grid-template-columns:1fr}.apprenant-messages-page .meeting-actions .btn-secondary,.apprenant-messages-page .meeting-actions .btn-primary{width:100%}}.apprenant-messages-page .messages-table-wrap{width:100%;overflow-x:auto;border-radius:14px;border:1px solid rgba(15,23,42,.08)}.apprenant-messages-page .messages-table{width:100%;min-width:860px;border-collapse:separate;border-spacing:0;background:#fff}.apprenant-messages-page .messages-table thead th{position:sticky;top:0;z-index:1;text-align:left;font-size:13px;font-weight:900;color:#0f172ab8;background:#f8fafcf5;border-bottom:1px solid rgba(15,23,42,.08);padding:13px 14px;white-space:nowrap}.apprenant-messages-page .messages-table tbody td{padding:14px;vertical-align:top;border-bottom:1px solid rgba(15,23,42,.06);color:var(--amp-text);line-height:1.5}.apprenant-messages-page .messages-table tbody tr:last-child td{border-bottom:0}.apprenant-messages-page .messages-table tbody tr:hover td{background:#0f172a05}.apprenant-messages-page .messages-table td:nth-child(1){min-width:180px;font-weight:800}.apprenant-messages-page .messages-table td:nth-child(2),.apprenant-messages-page .messages-table td:nth-child(3){min-width:240px}.apprenant-messages-page .msg-status{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:900;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}.apprenant-messages-page .msg-status-answered{background:#16a34a1a;color:#166534;border:1px solid rgba(22,163,74,.18)}.apprenant-messages-page .msg-status-pending{background:#ff7a001f;color:#9a4a00;border:1px solid rgba(255,122,0,.2)}@media(max-width:980px){.apprenant-messages-page .rdv-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.apprenant-messages-page .rdv-card-premium,.apprenant-messages-page .messages-card,.apprenant-messages-page .rdv-form-shell{padding:14px}.apprenant-messages-page .rdv-form-grid{grid-template-columns:1fr}.apprenant-messages-page .rdv-actions,.apprenant-messages-page .rdv-card-header,.apprenant-messages-page .messages-card-head{display:grid;grid-template-columns:1fr}.apprenant-messages-page .rdv-cta{width:100%}}.apprenant-profile-page .profile-summary-card{display:flex;gap:14px;align-items:center}.apprenant-profile-page .profile-avatar{flex:0 0 auto;width:68px;height:68px;border-radius:999px;overflow:hidden;border:1px solid rgba(148,163,184,.35);background:#94a3b81a;display:grid;place-items:center}.apprenant-profile-page .profile-avatar img{width:68px;height:68px;object-fit:cover;border-radius:999px;display:block}.apprenant-profile-page .profile-initials{width:68px;height:68px;display:grid;place-items:center;font-weight:950;letter-spacing:.04em;color:#0f172a}.apprenant-profile-page .profile-summary-text{min-width:0}.apprenant-profile-page .profile-name{font-weight:950;font-size:18px;line-height:1.1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.apprenant-profile-page .profile-email{opacity:.9;margin-top:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.apprenant-profile-page .profile-formation{opacity:.85;margin-top:6px}.apprenant-profile-page .profile-alert{margin-top:10px;padding:10px 12px;border-radius:12px;font-weight:800}.apprenant-profile-page .profile-alert-error{border:1px solid #fecaca;background:#ef444414;color:#991b1b}.apprenant-profile-page .profile-alert-success{border:1px solid #bbf7d0;background:#22c55e1a;color:#14532d}.apprenant-profile-page .profile-grid{display:grid;gap:12px;margin-top:12px}.apprenant-profile-page .profile-card-title{margin-top:0;margin-bottom:8px}.apprenant-profile-page .profile-actions{display:flex;gap:10px;flex-wrap:wrap}.apprenant-profile-page .profile-row-between{display:flex;justify-content:space-between;align-items:center;gap:10px}.apprenant-profile-page .profile-row-title{font-weight:800;opacity:.9}.apprenant-profile-page .profile-file-row{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;align-items:center;margin-top:8px}.apprenant-profile-page .profile-file-name{opacity:.85;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.apprenant-profile-page .profile-strength{margin-top:6px;font-size:12px;opacity:.8}.apprenant-profile-page .profile-strength-bar{margin-top:6px;height:8px;border-radius:999px;background:#94a3b840;overflow:hidden}.apprenant-profile-page .profile-strength-bar-fill{height:100%;background:#22c55eb3;width:0%}.apprenant-profile-page .profile-pwd-mismatch{margin-top:6px;font-size:12px;color:#b91c1c;font-weight:800}.apprenant-profile-page .btn-ghost{border:1px solid #e5e7eb;background:#fff;color:#0f172a;border-radius:999px;padding:8px 10px;font-weight:800;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}.apprenant-profile-page .btn-ghost:hover{filter:brightness(.98)}.apprenant-course-detail .course-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:18px;align-items:start}.apprenant-course-detail .course-main-column,.apprenant-course-detail .course-side-column,.apprenant-course-detail .course-side-stack,.apprenant-course-detail .course-block,.apprenant-course-detail .course-video-card{min-width:0}.apprenant-course-detail .course-side-column{position:static!important;top:auto!important;align-self:start;transform:none!important}.apprenant-course-detail .course-side-stack{display:grid;gap:16px}@media(max-width:980px){.apprenant-course-detail .course-layout{grid-template-columns:1fr}.apprenant-course-detail .course-side-column{order:2}}.apprenant-course-detail .course-video-card,.apprenant-course-detail .course-block{padding:16px;overflow:hidden}.apprenant-course-detail .course-state-card,.apprenant-course-detail .payments-card{padding:18px}.apprenant-course-detail .chapter-heading-row,.apprenant-course-detail .course-block-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}.apprenant-course-detail .chapter-kicker{margin:0 0 6px;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:#0f172a8c}.apprenant-course-detail .chapter-title{margin:0;font-size:clamp(22px,2vw,28px);line-height:1.18;letter-spacing:-.02em;color:#0f172a}.apprenant-course-detail .chapter-description{margin-top:14px;padding:14px 15px;border:1px solid rgba(148,163,184,.22);border-radius:14px;background:#f8fafce0;color:#334155;line-height:1.65}.apprenant-course-detail .progress-row{display:flex;align-items:center;gap:12px;margin-top:14px;flex-wrap:wrap}.apprenant-course-detail .progress-percent,.apprenant-course-detail .course-meta{font-weight:800;color:#0f172ab8}.apprenant-course-detail .course-meta{margin:10px 0 0}.apprenant-course-detail .course-video-wrapper{margin-top:12px;border-radius:18px;overflow:hidden;background:#0f172a;box-shadow:0 14px 30px #0f172a1f}.apprenant-course-detail .course-video-file{width:100%;display:block;border-radius:18px;max-height:72vh;background:#000}.apprenant-course-detail .course-video-iframe{width:100%;min-height:460px;display:block;border:0;border-radius:18px;background:#000}.apprenant-course-detail .course-video-placeholder{margin-top:12px;padding:18px;border:1px dashed rgba(148,163,184,.6);border-radius:16px;background:#94a3b814;color:#334155;font-weight:700;line-height:1.6}.apprenant-course-detail .certificate-status-row{margin-top:14px}.apprenant-course-detail .course-actions-row,.apprenant-course-detail .form-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.apprenant-course-detail .question-form{display:grid;gap:14px}.apprenant-course-detail .question-form .form-field{min-width:0}.apprenant-course-detail .question-form .form-field label{font-weight:800;margin-bottom:6px;display:inline-block;color:#0f172a}.apprenant-course-detail .question-form textarea,.apprenant-course-detail .question-form input[type=file]{width:100%}.apprenant-course-detail .attachment-chip{margin-top:8px;display:flex;gap:10px;align-items:center;justify-content:space-between;border:1px solid #e5e7eb;border-radius:12px;padding:10px 12px;background:#fff}.apprenant-course-detail .attachment-chip-name{font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:520px}.apprenant-course-detail .btn-ghost{border:1px solid #e5e7eb;background:#fff;color:#0f172a;border-radius:999px;padding:8px 10px;font-weight:800;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.apprenant-course-detail .btn-ghost:hover{filter:brightness(.98)}.apprenant-course-detail .exercise-instruction{margin-bottom:12px}.apprenant-course-detail .exercise-instruction-text{margin:0 0 12px;color:#334155;line-height:1.65}.apprenant-course-detail .exercise-image-wrapper{display:flex;justify-content:flex-start}.apprenant-course-detail .exercise-image{width:min(100%,520px);border-radius:14px;border:1px solid rgba(148,163,184,.35);box-shadow:0 8px 20px #0f172a14}.apprenant-course-detail .questions-title{margin:18px 0 10px}.apprenant-course-detail .questions-ul{list-style:none;padding-left:0;display:grid;gap:12px;margin:0}.apprenant-course-detail .question-item{border:1px solid #e5e7eb;background:#fff;border-radius:14px;padding:14px}.apprenant-course-detail .question-item-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}.apprenant-course-detail .question-text{margin:0;font-weight:800;color:#0f172a;line-height:1.5}.apprenant-course-detail .question-date{font-size:12px;font-weight:700;color:#0f172a94}.apprenant-course-detail .answer-text{margin:10px 0 0;background:#94a3b81f;padding:10px 12px;border-radius:12px;line-height:1.6}.apprenant-course-detail .question-meta{margin:8px 0 0;color:#0f172aad;line-height:1.55}.apprenant-course-detail .question-attachment{margin:10px 0 0}.apprenant-course-detail .attachment-link{display:inline-flex;gap:8px;align-items:center;font-weight:800;text-decoration:none}.apprenant-course-detail .attachment-link:hover{text-decoration:underline}.apprenant-course-detail .attachment-preview-link{display:inline-block}.apprenant-course-detail .attachment-preview-img{width:min(280px,100%);max-height:180px;object-fit:cover;border-radius:12px;border:1px solid rgba(148,163,184,.35);box-shadow:0 6px 18px #0f172a14}.apprenant-course-detail .chapters-list{padding-left:0;margin:0;display:grid;gap:10px;list-style:none}.apprenant-course-detail .chapter-item{margin:0}.apprenant-course-detail .chapter-btn{width:100%;text-align:left;border:1px solid rgba(148,163,184,.28);background:#fff;border-radius:14px;padding:12px 14px;cursor:pointer;font-weight:800;color:#0f172a;display:flex;align-items:center;justify-content:space-between;gap:12px;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease,background .16s ease}.apprenant-course-detail .chapter-btn:hover{border-color:#2563eb38;box-shadow:0 8px 20px #0f172a0f;transform:translateY(-1px)}.apprenant-course-detail .chapter-item.active .chapter-btn{border-color:#2563eb57;background:linear-gradient(180deg,#2563eb0d,#fff);box-shadow:0 10px 22px #2563eb14}.apprenant-course-detail .chapter-btn-left{display:flex;align-items:flex-start;gap:12px;min-width:0}.apprenant-course-detail .chapter-index{width:28px;height:28px;flex:0 0 28px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#0f172a0f;color:#0f172a;font-size:13px;font-weight:900}.apprenant-course-detail .chapter-label{min-width:0;line-height:1.45}.apprenant-course-detail .chapter-current-tag{flex:0 0 auto;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.05em;color:#1d4ed8;background:#2563eb1a;border:1px solid rgba(37,99,235,.18);border-radius:999px;padding:6px 8px}.apprenant-course-detail .chapters-fallback{margin:0;padding-left:18px;display:grid;gap:8px}.apprenant-course-detail .resources-list{list-style:none;padding-left:0;margin:0;display:grid;gap:10px}.apprenant-course-detail .resources-item{display:grid;gap:8px}.apprenant-course-detail .resource-btn{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;border:1px solid rgba(148,163,184,.25);background:#fff;border-radius:14px;padding:12px 14px;cursor:pointer;font-weight:800;color:#0f172a;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease,background .16s ease}.apprenant-course-detail .resource-btn:hover{border-color:#0f172a29;box-shadow:0 8px 20px #0f172a0f;transform:translateY(-1px)}.apprenant-course-detail .resource-btn.disabled{cursor:not-allowed;opacity:.52;box-shadow:none;transform:none}.apprenant-course-detail .resource-arrow{font-size:14px;opacity:.75}.apprenant-course-detail .tag-soft{display:inline-flex;align-items:center;justify-content:center;width:fit-content;border-radius:999px;padding:6px 10px;font-size:11px;font-weight:900;letter-spacing:.05em;text-transform:uppercase;background:#0f172a0f;color:#0f172ab8;border:1px solid rgba(15,23,42,.1)}.apprenant-course-detail .tag-soft-ok{background:#16a34a14;color:#166534;border-color:#16a34a2e}.apprenant-course-detail .bullets{margin:0;padding-left:18px;display:grid;gap:8px}.apprenant-course-detail .bullets li{line-height:1.55;color:#334155}@media(max-width:760px){.apprenant-course-detail .course-video-card,.apprenant-course-detail .course-block{padding:14px}.apprenant-course-detail .course-video-iframe{min-height:260px}.apprenant-course-detail .course-actions-row,.apprenant-course-detail .form-actions{display:grid;grid-template-columns:1fr}.apprenant-course-detail .attachment-chip{flex-direction:column;align-items:stretch}.apprenant-course-detail .attachment-chip-name{max-width:100%}.apprenant-course-detail .question-item-head{display:grid;gap:8px}.apprenant-course-detail .chapter-btn{align-items:flex-start}.apprenant-course-detail .chapter-btn-left{width:100%}}.quiz-header-tags{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.quiz-mode-badge{font-weight:800}.quiz-mode-toggle{margin-top:12px;display:inline-flex;gap:8px;flex-wrap:wrap;align-items:center}.quiz-attempts-row{margin-top:10px;display:grid;gap:6px}.quiz-timer-row{margin-top:10px;display:inline-flex;align-items:center;gap:10px;padding:8px 12px;border:1px solid rgba(15,23,42,.12);border-radius:999px;background:#94a3b814}.quiz-timer-label{font-weight:800}.quiz-timer-value{font-variant-numeric:tabular-nums;font-weight:900;letter-spacing:.5px}.quiz-section-block{margin-top:16px}.quiz-section-title{margin:0 0 10px;font-size:16px;font-weight:900;letter-spacing:-.2px}.quiz-list{margin:0;padding-left:18px;display:grid;gap:12px}.quiz-question{list-style:decimal;border:1px solid rgba(15,23,42,.1);background:#ffffffe6;border-radius:14px;padding:12px}.quiz-question h3{margin:0 0 10px;font-size:15px;font-weight:900;line-height:1.25}.quiz-choices{margin:0;padding-left:0;list-style:none;display:grid;gap:8px}.quiz-choice{display:flex;gap:10px;align-items:flex-start;cursor:pointer;-webkit-user-select:none;user-select:none;padding:10px;border-radius:12px;border:1px solid rgba(148,163,184,.3);background:#f8fafccc;transition:transform .12s ease,filter .12s ease,background .12s ease,border-color .12s ease}.quiz-choice:hover{filter:brightness(.99)}.quiz-choice input{margin-top:2px;width:16px;height:16px;flex:0 0 auto;accent-color:#0f172a}.quiz-choice:focus-within{outline:2px solid rgba(37,99,235,.45);outline-offset:2px;border-color:#2563eb59;background:#2563eb0d}.quiz-actions-row{margin-top:16px;display:flex;gap:10px;flex-wrap:wrap;align-items:center;justify-content:flex-end}.quiz-actions-row .btn-secondary,.quiz-actions-row .btn-primary{min-height:40px}.result-score{margin:10px 0 0;font-size:16px}.success-text{margin-top:10px;font-weight:800}.quiz-attempts-result{margin-top:10px;display:grid;gap:6px}.quiz-correction{margin-top:16px;padding-top:12px;border-top:1px solid rgba(15,23,42,.1)}.quiz-correction h2{margin:0 0 10px;font-size:16px;font-weight:900}.quiz-history{margin-top:16px;padding-top:12px;border-top:1px solid rgba(15,23,42,.1)}.quiz-history h2{margin:0 0 10px;font-size:16px;font-weight:900}.quiz-history-list{list-style:none;margin:0;padding-left:0;display:grid;gap:10px}.quiz-history-item{border:1px solid rgba(15,23,42,.1);background:#ffffffe6;border-radius:14px;padding:12px;display:grid;gap:10px}.quiz-history-main{display:grid;gap:6px}.quiz-history-score{font-weight:800}.quiz-history-date{opacity:.75;font-size:13px}@media(max-width:720px){.quiz-timer-row{width:100%;justify-content:space-between}.quiz-actions-row{justify-content:stretch}.quiz-actions-row .btn-secondary,.quiz-actions-row .btn-primary{width:100%}}:root[data-reduced-animations=true] .quiz-choice{transition:none}.modal-backdrop{position:fixed;inset:0;background:#0f172a8c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal.event-modal{width:100%;max-width:720px;background:#fff;border-radius:18px;box-shadow:0 20px 50px #00000026;padding:20px 22px;animation:modalFadeIn .2s ease}@keyframes modalFadeIn{0%{transform:translateY(10px);opacity:0}to{transform:translateY(0);opacity:1}}.event-modal-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:18px}.event-modal-head h3{margin:0;font-size:20px;font-weight:700;color:#0f172a}.event-modal-subtitle{margin-top:4px;font-size:13px;color:#64748b}.event-modal-body{display:flex;flex-direction:column;gap:16px}.event-modal-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px}.event-modal-block{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:10px 12px}.event-modal-label{font-size:11px;text-transform:uppercase;color:#64748b;margin-bottom:4px;letter-spacing:.4px}.event-modal-value{font-size:14px;font-weight:600;color:#0f172a}.event-modal-section{display:flex;flex-direction:column;gap:6px}.event-modal-text{font-size:14px;color:#0f172a}.event-modal-comment{background:#f1f5f9;border-radius:10px;padding:10px;line-height:1.5}.event-modal-link-row{display:flex;gap:10px;align-items:center}.event-modal-section input{width:100%;padding:10px 12px;border-radius:10px;border:1px solid #cbd5f5;font-size:14px;outline:none;transition:border .2s ease}.event-modal-section input:focus{border-color:#3b82f6}.event-modal-hint{font-size:12px;color:#64748b}.event-modal-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}.btn-primary{background:#2563eb;color:#fff;border:none;border-radius:10px;padding:10px 14px;cursor:pointer;font-weight:600}.btn-primary:hover{background:#1d4ed8}.btn-secondary{background:#e2e8f0;border:none;border-radius:10px;padding:10px 14px;cursor:pointer}.btn-secondary:hover{background:#cbd5e1}.btn-danger{background:#dc2626;color:#fff;border:none;border-radius:10px;padding:10px 14px;cursor:pointer}.btn-danger:hover{background:#b91c1c}.btn-link{color:#2563eb;text-decoration:none;font-weight:600}.btn-link:hover{text-decoration:underline}.badge{padding:4px 8px;border-radius:999px;font-size:11px;font-weight:600}.badge-success{background:#dcfce7;color:#166534}.badge-warning{background:#fef3c7;color:#92400e}.badge-danger{background:#fee2e2;color:#991b1b}.form-error{color:#dc2626;font-size:13px}.form-success{color:#16a34a;font-size:13px}@media(max-width:600px){.modal.event-modal{padding:16px;border-radius:14px}.event-modal-head{flex-direction:column;align-items:flex-start}}.att-actions{margin-top:16px;display:flex;gap:8px;flex-wrap:wrap;align-items:center}.att-actions-spacer{flex:1}.att-card{margin-bottom:14px}.att-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}.att-block{min-width:0}.att-hint{margin-top:6px}.att-slotLine{display:flex;align-items:center;gap:8px}.att-slotText{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.att-slotLineSpacer{flex:1}.att-statusRow{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.att-warn{border:1px dashed rgba(0,0,0,.18);border-radius:12px;padding:12px;background:#f9731612}.att-warnActions{margin-top:10px}.att-title{margin-top:0;font-size:18px}.att-signRow{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.att-signRowSpacer{flex:1}.att-modalOverlay{position:fixed;inset:0;background:#0000008c;display:flex;align-items:center;justify-content:center;padding:16px;z-index:9999}.att-modal{width:min(720px,100%);max-height:90vh;overflow:auto}.att-modalHeader{display:flex;align-items:center;gap:8px}.att-modalHeaderSpacer{flex:1}.att-modalTitle{margin:0}.att-modalSubtitle{margin-top:8px}.att-canvasWrap{margin-top:12px;border:1px solid rgba(0,0,0,.14);border-radius:12px;overflow:hidden;background:#fafafa;height:260px}.att-canvas{width:100%;height:100%;display:block;touch-action:none}.att-modalActions{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap;align-items:center}.att-modalActionsSpacer{flex:1}.portfolio-page{min-height:100vh;background:radial-gradient(circle at top right,rgba(37,99,235,.12),transparent 28%),radial-gradient(circle at top left,rgba(16,185,129,.08),transparent 22%),#020617;color:#e5e7eb}.portfolio-hero{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;flex-wrap:wrap;margin-bottom:24px;padding:28px;border-radius:28px;background:linear-gradient(135deg,#0f172af5,#1e293beb);border:1px solid rgba(255,255,255,.08);box-shadow:0 16px 38px #0000003d}.portfolio-hero h1{margin:0 0 10px;font-size:36px;line-height:1.08;color:#fff}.portfolio-hero p{margin:0;max-width:760px;line-height:1.65;color:#ffffffbd}.portfolio-stats{display:flex;gap:14px;flex-wrap:wrap}.portfolio-stat{min-width:140px;padding:16px 18px;border-radius:20px;background:#ffffff0d;border:1px solid rgba(255,255,255,.08)}.portfolio-stat-label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#ffffff94}.portfolio-stat-value{margin-top:6px;font-size:28px;font-weight:800;color:#fff}.portfolio-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.portfolio-card{display:flex;flex-direction:column;gap:14px;padding:22px;border-radius:24px;background:linear-gradient(180deg,#111827,#0b1220);border:1px solid rgba(255,255,255,.08);box-shadow:0 12px 28px #0003}.portfolio-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}.portfolio-card-title-wrap{min-width:0}.portfolio-title{margin:0;color:#fff;font-size:21px;line-height:1.2}.portfolio-course{margin-top:8px;font-size:13px;color:#ffffff9e}.portfolio-badges{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.portfolio-status,.portfolio-featured{display:inline-flex;align-items:center;min-height:30px;padding:0 10px;border-radius:999px;font-size:12px;font-weight:700;white-space:nowrap}.portfolio-status.public{background:#10b98129;color:#86efac;border:1px solid rgba(16,185,129,.24)}.portfolio-status.private{background:#94a3b824;color:#cbd5e1;border:1px solid rgba(148,163,184,.18)}.portfolio-status.suspended{background:#ef444429;color:#fca5a5;border:1px solid rgba(239,68,68,.22)}.portfolio-featured{background:#f59e0b29;color:#fcd34d;border:1px solid rgba(245,158,11,.24)}.portfolio-summary{margin:0;color:#ffffffd6;line-height:1.65}.portfolio-section-label{margin-bottom:8px;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#ffffff8a}.portfolio-skills{display:flex;gap:8px;flex-wrap:wrap}.portfolio-skill{display:inline-flex;align-items:center;min-height:30px;padding:0 10px;border-radius:999px;background:#ffffff0f;color:#e5e7eb;border:1px solid rgba(255,255,255,.08);font-size:12px}.portfolio-meta{display:flex;gap:10px 18px;flex-wrap:wrap;font-size:13px;color:#ffffff9e}.portfolio-link-box{padding:12px 14px;border-radius:16px;background:#ffffff0a;border:1px solid rgba(255,255,255,.06)}.portfolio-link-value{font-size:13px;word-break:break-all;color:#bfdbfe}.portfolio-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:4px}.portfolio-btn{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 14px;border-radius:14px;border:1px solid transparent;font-size:14px;font-weight:700;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,filter .15s ease,border-color .15s ease}.portfolio-btn:hover:not(:disabled){transform:translateY(-1px)}.portfolio-btn:disabled{opacity:.7;cursor:not-allowed}.portfolio-btn.primary{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff}.portfolio-btn.secondary{background:#ffffff14;color:#fff;border-color:#ffffff14}.portfolio-btn.success{background:linear-gradient(135deg,#16a34a,#15803d);color:#fff}.portfolio-btn.warning{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.portfolio-btn.linkedin{background:#0a66c2;color:#fff;border:1px solid #0a66c2}.portfolio-btn.linkedin:hover:not(:disabled){filter:brightness(1.05)}.portfolio-btn.disabled{background:#94a3b829;color:#fff9;border:1px solid rgba(148,163,184,.18);cursor:not-allowed}.portfolio-edit-form{display:grid;gap:14px}.portfolio-field{display:grid;gap:8px}.portfolio-field label{font-size:13px;font-weight:700;color:#cbd5e1}.portfolio-input,.portfolio-textarea{width:100%;border-radius:14px;border:1px solid rgba(148,163,184,.2);background:#0f172ad1;color:#fff;padding:12px 14px;font-size:14px;outline:none}.portfolio-input:focus,.portfolio-textarea:focus{border-color:#3b82f694;box-shadow:0 0 0 3px #3b82f61f}.portfolio-textarea{resize:vertical}.portfolio-error,.portfolio-empty{padding:18px 20px;border-radius:18px}.portfolio-error{background:#7f1d1d52;color:#fecaca;border:1px solid rgba(248,113,113,.22)}.portfolio-empty{background:#ffffff0a;color:#e5e7eb;border:1px solid rgba(255,255,255,.06)}@media(max-width:980px){.portfolio-grid{grid-template-columns:1fr}}@media(max-width:760px){.portfolio-hero{padding:22px}.portfolio-hero h1{font-size:30px}.portfolio-stats{width:100%}.portfolio-stat{flex:1 1 140px}.portfolio-card{padding:18px}.portfolio-card-header{flex-direction:column}.portfolio-badges{justify-content:flex-start}}.skills-page{min-height:100vh;padding-bottom:40px}.skills-hero{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:24px;padding:24px;border-radius:24px;background:linear-gradient(135deg,#14b8a62e,#0f172ae0),#0f172a;border:1px solid rgba(255,255,255,.08)}.skills-hero h1{margin:0 0 8px;font-size:32px;line-height:1.1;font-weight:800;color:#fff}.skills-hero p{margin:0;max-width:780px;color:#ffffffbd;line-height:1.55}.skills-stats{display:flex;gap:14px;flex-wrap:wrap}.skills-stat{min-width:120px;padding:14px 16px;border-radius:18px;background:#ffffff0f}.skills-stat-label{font-size:12px;color:#ffffffb3;margin-bottom:6px}.skills-stat-value{font-size:24px;font-weight:800;color:#fff}.skills-tabs{display:flex;gap:10px;margin-bottom:18px}.skills-tab{border:none;border-radius:14px;padding:10px 16px;cursor:pointer;font-weight:700;background:#ffffff14;color:#fff}.skills-tab.active{background:linear-gradient(135deg,#14b8a6,#0f766e)}.skills-error,.skills-empty{padding:18px 20px;border-radius:18px;margin-bottom:18px}.skills-error{background:#7f1d1d52;color:#fecaca;border:1px solid rgba(248,113,113,.2)}.skills-empty{background:#ffffff0a;color:#e5e7eb}.skills-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:18px}.skill-card{border-radius:22px;padding:20px;background:linear-gradient(180deg,#111827,#0b1220);border:1px solid rgba(255,255,255,.08)}.skill-card-header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:12px}.skill-name{margin:0;font-size:18px;color:#fff}.skill-code{margin-top:6px;font-size:12px;color:#ffffff8f;text-transform:uppercase;letter-spacing:.08em}.skill-description{color:#ffffffc7;line-height:1.5;margin-bottom:14px}.skill-status{display:inline-flex;align-items:center;padding:6px 11px;border-radius:999px;font-size:12px;font-weight:700;white-space:nowrap}.skill-status-not_started{background:#64748b2e;color:#cbd5e1}.skill-status-in_progress{background:#3b82f629;color:#93c5fd}.skill-status-observed{background:#f59e0b29;color:#fcd34d}.skill-status-validated{background:#16a34a2e;color:#86efac}.skill-status-advanced{background:#a855f72e;color:#d8b4fe}.skill-metrics{display:grid;gap:10px}.skill-metric{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px 12px;border-radius:14px;background:#ffffff0a}.skill-metric-label{font-size:12px;color:#ffffff9e}.skill-metric strong{color:#fff;font-size:13px}.evidence-list{display:grid;gap:16px}.evidence-card{border-radius:22px;padding:20px;background:linear-gradient(180deg,#111827,#0b1220);border:1px solid rgba(255,255,255,.08)}.evidence-top{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:12px}.evidence-title{margin:0;color:#fff;font-size:18px}.evidence-subtitle{margin-top:6px;color:#ffffff9e;font-size:13px}.evidence-grade-wrap{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.evidence-badge{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:700;background:#ffffff12;color:#fff}.evidence-comment{margin-bottom:12px;padding:12px 14px;border-radius:16px;background:#ffffff0d;color:#ffffffd6;line-height:1.5}.evidence-meta{display:flex;gap:12px 18px;flex-wrap:wrap;font-size:12px;color:#ffffff94}.evidence-link{color:#93c5fd;text-decoration:none}@media(max-width:720px){.skills-hero{flex-direction:column;align-items:stretch}.skills-grid{grid-template-columns:1fr}.evidence-top{flex-direction:column}}.ah-root{width:100%;background:linear-gradient(135deg,#036,#0b4d88);color:#fff;border-bottom:1px solid rgba(255,255,255,.08);box-shadow:0 8px 18px #0019331f}.ah-inner{max-width:1280px;margin:0 auto;padding:12px 18px;display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:14px}.ah-left{display:flex;align-items:center;gap:10px;font-weight:800;cursor:pointer;-webkit-user-select:none;user-select:none;min-width:max-content}.ah-title{color:#fff;font-weight:900;font-size:1rem;letter-spacing:.2px}.ah-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;margin-left:8px;padding:0 6px;border-radius:999px;background:#ff8a00;color:#fff;font-size:11px;font-weight:800;line-height:1;box-shadow:0 4px 10px #ff8a0040}.ah-nav{display:flex;align-items:center;gap:8px;flex:1 1 auto;justify-content:center;flex-wrap:wrap}.ah-nav button{appearance:none;border:none;background:transparent;color:#fff;font-size:14px;line-height:1;cursor:pointer;font-weight:700;opacity:.92;padding:10px 12px;border-radius:12px;transition:background-color .18s ease,color .18s ease,opacity .18s ease,transform .18s ease,box-shadow .18s ease}.ah-nav button:hover{opacity:1;background:#ffffff1f;transform:translateY(-1px)}.ah-nav button.active{opacity:1;font-weight:800;background:#ffffff2e;box-shadow:inset 0 0 0 1px #ffffff1a}.ah-nav button:focus-visible,.ah-logout:focus-visible{outline:3px solid rgba(255,255,255,.35);outline-offset:2px}.ah-right{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap;min-width:max-content}.ah-email{font-size:13px;opacity:.96;white-space:nowrap;color:#f8fbff}.ah-logout{appearance:none;border-radius:999px;border:2px solid #ff8a00;background-color:#ff8a00;color:#fff;padding:8px 18px;font-weight:800;cursor:pointer;transition:background-color .18s ease,color .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease}.ah-logout:hover{background-color:#fff;color:#ff8a00;border-color:#fff;transform:translateY(-1px);box-shadow:0 10px 18px #00000024}@media(max-width:1180px){.ah-inner{align-items:flex-start;flex-wrap:wrap}.ah-nav{order:3;width:100%;justify-content:flex-start}.ah-right{margin-left:auto}}@media(max-width:820px){.ah-inner{padding:12px 14px;flex-direction:column;align-items:stretch;gap:12px}.ah-left{width:100%;justify-content:flex-start}.ah-nav{width:100%;justify-content:flex-start;gap:8px}.ah-nav button{flex:0 0 auto}.ah-right{width:100%;justify-content:space-between;align-items:center}.ah-email{max-width:100%;white-space:normal;line-height:1.35}}@media(max-width:560px){.ah-nav{display:grid;grid-template-columns:1fr 1fr;width:100%}.ah-nav button{width:100%;text-align:center}.ah-right{flex-direction:column;align-items:stretch;gap:10px}.ah-logout{width:100%}}.formateur-messages-page{--fm-radius: 18px;--fm-radius-sm: 14px;--fm-radius-xs: 10px;--fm-text: #0f172a;--fm-muted: #64748b;--fm-border: rgba(15, 23, 42, .08);--fm-border-strong: rgba(15, 23, 42, .14);--fm-bg-soft: #f8fafc;--fm-bg-soft-2: #f1f5f9;--fm-bg-ok: #ecfdf5;--fm-bg-warn: #fff7ed;--fm-ok: #166534;--fm-ok-border: #bbf7d0;--fm-warn: #9a3412;--fm-warn-border: #fed7aa;--fm-shadow: 0 14px 28px rgba(15, 23, 42, .05);--fm-shadow-soft: 0 8px 18px rgba(15, 23, 42, .04)}.formateur-messages-page .fm-toolbar{display:flex;gap:14px;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;margin-bottom:14px}.formateur-messages-page .fm-toolbar-left{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.formateur-messages-page .fm-toolbar-right{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap}.formateur-messages-page .fm-filter{display:flex;flex-direction:column;gap:5px;min-width:0}.formateur-messages-page .fm-search input{min-width:300px}.formateur-messages-page .fm-label{font-size:12px;color:var(--fm-muted);font-weight:800;letter-spacing:.02em}.formateur-messages-page .fm-kpis{display:flex;gap:10px;flex-wrap:wrap}.formateur-messages-page .fm-kpi{font-size:13px;color:var(--fm-text);background:var(--fm-bg-soft-2);border:1px solid #e2e8f0;padding:7px 11px;border-radius:999px;display:inline-flex;align-items:center;gap:6px;font-weight:700}.formateur-messages-page .fm-kpi b{font-weight:900}.formateur-messages-page .fm-kpi-warn{background:var(--fm-bg-warn);border-color:var(--fm-warn-border);color:var(--fm-warn)}.formateur-messages-page .fm-kpi-ok{background:var(--fm-bg-ok);border-color:var(--fm-ok-border);color:var(--fm-ok)}.formateur-messages-page .fm-card{margin-top:10px;padding:16px;border-radius:var(--fm-radius);overflow:hidden}.formateur-messages-page .fm-loading{padding:8px 0;display:grid;gap:12px}.formateur-messages-page .fm-skeleton{height:14px;border-radius:999px;background:linear-gradient(90deg,#f1f5f9,#e2e8f0,#f1f5f9);background-size:200% 100%;animation:fmShimmer 1.2s infinite linear}@keyframes fmShimmer{0%{background-position:0% 0%}to{background-position:-200% 0%}}.formateur-messages-page .fm-empty{padding:24px 12px;text-align:center}.formateur-messages-page .fm-empty-title{font-size:16px;font-weight:900;color:var(--fm-text)}.formateur-messages-page .fm-empty-sub{margin-top:6px;font-size:13px;color:var(--fm-muted);line-height:1.55}.formateur-messages-page .fm-cards-list{display:grid;gap:14px}.formateur-messages-page .fm-message-card{border:1px solid var(--fm-border);border-radius:var(--fm-radius);background:linear-gradient(180deg,#fff,#fbfdff);box-shadow:var(--fm-shadow-soft);padding:16px;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.formateur-messages-page .fm-message-card:hover{transform:translateY(-1px);box-shadow:var(--fm-shadow);border-color:var(--fm-border-strong)}.formateur-messages-page .fm-row-unanswered{background:linear-gradient(180deg,#fff,#fffdf8)}.formateur-messages-page .fm-row-answered{background:linear-gradient(180deg,#fff,#fbfffd)}.formateur-messages-page .fm-message-top{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:14px}.formateur-messages-page .fm-message-meta{min-width:0;flex:1 1 420px}.formateur-messages-page .fm-course{font-weight:900;font-size:16px;color:var(--fm-text);line-height:1.3;letter-spacing:-.01em}.formateur-messages-page .fm-student-row{margin-top:6px;display:flex;gap:8px;flex-wrap:wrap;align-items:center}.formateur-messages-page .fm-student{font-weight:700;color:var(--fm-text)}.formateur-messages-page .fm-muted{font-size:12px;color:var(--fm-muted)}.formateur-messages-page .fm-badges{display:flex;gap:8px;flex-wrap:wrap}.formateur-messages-page .fm-badge{font-size:11px;font-weight:900;padding:5px 9px;border-radius:999px;border:1px solid transparent;display:inline-flex;align-items:center;letter-spacing:.03em;text-transform:uppercase}.formateur-messages-page .fm-badge-warn{color:var(--fm-warn);background:var(--fm-bg-warn);border-color:var(--fm-warn-border)}.formateur-messages-page .fm-badge-ok{color:var(--fm-ok);background:var(--fm-bg-ok);border-color:var(--fm-ok-border)}.formateur-messages-page .fm-message-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) minmax(0,.9fr);gap:14px;align-items:start}.formateur-messages-page .fm-block{min-width:0;display:grid;gap:8px}.formateur-messages-page .fm-block-label{font-size:12px;font-weight:900;color:var(--fm-muted);text-transform:uppercase;letter-spacing:.05em}.formateur-messages-page .fm-question-box,.formateur-messages-page .fm-answer-box{border:1px solid var(--fm-border);background:var(--fm-bg-soft);border-radius:var(--fm-radius-sm);padding:12px}.formateur-messages-page .fm-answer-box{background:#f8fffb}.formateur-messages-page .fm-prewrap{white-space:pre-wrap;word-break:break-word;line-height:1.55;color:var(--fm-text)}.formateur-messages-page .fm-info-list{display:grid;gap:8px}.formateur-messages-page .fm-info-item{border:1px solid var(--fm-border);background:#fff;border-radius:12px;padding:10px 12px;display:grid;gap:3px}.formateur-messages-page .fm-info-key{font-size:11px;font-weight:900;color:var(--fm-muted);text-transform:uppercase;letter-spacing:.05em}.formateur-messages-page .fm-info-value{font-size:13px;color:var(--fm-text);line-height:1.45}.formateur-messages-page .fm-attachments{display:flex;flex-direction:column;gap:10px}.formateur-messages-page .fm-attach{display:flex;flex-direction:column;gap:8px}.formateur-messages-page .fm-attach-link{font-size:13px;font-weight:700;text-decoration:none;color:#0b3a66;width:fit-content}.formateur-messages-page .fm-attach-link:hover{text-decoration:underline}.formateur-messages-page .fm-attach-thumb{display:inline-block;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;width:140px;max-width:100%;background:#fff;box-shadow:0 6px 14px #0f172a0d}.formateur-messages-page .fm-attach-thumb img{display:block;width:100%;height:auto}.formateur-messages-page .fm-response-zone{margin-top:16px;padding-top:14px;border-top:1px solid rgba(15,23,42,.08)}.formateur-messages-page .fm-action{display:grid;gap:10px}.formateur-messages-page .fm-action textarea{width:100%;resize:vertical;min-height:92px}.formateur-messages-page .fm-action-btns{display:flex;gap:8px;margin-top:2px;flex-wrap:wrap}.formateur-messages-page .fm-warn{font-size:13px;font-weight:800;color:#f97316}.formateur-messages-page .fm-ok{margin-top:8px;font-size:13px;font-weight:800;color:var(--fm-ok)}.formateur-messages-page .fm-footer{margin-top:12px;display:flex;justify-content:flex-start}@media(max-width:1180px){.formateur-messages-page .fm-message-grid{grid-template-columns:1fr 1fr}.formateur-messages-page .fm-block:last-child{grid-column:1 / -1}}@media(max-width:980px){.formateur-messages-page .fm-search input{min-width:220px}.formateur-messages-page .fm-toolbar{align-items:stretch}.formateur-messages-page .fm-toolbar-left,.formateur-messages-page .fm-toolbar-right{width:100%}.formateur-messages-page .fm-message-grid{grid-template-columns:1fr}.formateur-messages-page .fm-attach-thumb{width:100%;max-width:220px}}@media(max-width:640px){.formateur-messages-page .fm-card,.formateur-messages-page .fm-message-card{padding:14px}.formateur-messages-page .fm-toolbar-left,.formateur-messages-page .fm-toolbar-right,.formateur-messages-page .fm-action-btns,.formateur-messages-page .fm-footer{display:grid;grid-template-columns:1fr}.formateur-messages-page .fm-search input{min-width:100%}.formateur-messages-page .fm-action-btns .btn-primary,.formateur-messages-page .fm-action-btns .btn-secondary,.formateur-messages-page .fm-footer .btn-secondary{width:100%}}.fp-page{padding-bottom:24px}.fp-hero-actions{margin-top:14px;display:flex;gap:8px;flex-wrap:wrap}.fp-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}@media(max-width:980px){.fp-grid{grid-template-columns:1fr}}.fp-card{border-radius:14px}.fp-card-header{display:flex;gap:12px;align-items:center;margin-bottom:10px}.fp-avatar{width:46px;height:46px;border-radius:14px;background:#0f172a;color:#fff;display:grid;place-items:center;font-weight:900;letter-spacing:.5px;flex:0 0 auto}.fp-card-headtext{min-width:0}.fp-card-title{margin:0;font-size:18px}.fp-card-sub{margin-top:6px;display:flex;gap:8px;flex-wrap:wrap}.fp-pill{display:inline-flex;align-items:center;height:22px;padding:0 10px;border-radius:999px;font-size:12px;background:#f1f5f9;color:#0f172a;border:1px solid #e2e8f0}.fp-pill--ok{background:#ecfdf5;border-color:#bbf7d0;color:#065f46}.fp-pill--warn{background:#fff7ed;border-color:#fed7aa;color:#9a3412}.fp-alert{border-radius:12px;padding:10px 12px;margin:12px 0;border:1px solid transparent;font-size:14px}.fp-alert--error{background:#fef2f2;border-color:#fecaca;color:#991b1b}.fp-alert--success{background:#ecfdf5;border-color:#bbf7d0;color:#065f46}.fp-hint{background:#fff7ed;border:1px solid #fed7aa;color:#9a3412;border-radius:12px;padding:10px 12px;font-size:13px;margin:10px 0 12px}.fp-muted{font-size:13px;color:#64748b;margin:8px 0 12px}.fp-help{display:inline-block;margin-top:6px;font-size:12px;color:#64748b}.fp-help a{color:inherit;text-decoration:underline}.fp-form{margin-top:10px}.fp-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.fp-span-2{grid-column:span 2}@media(max-width:640px){.fp-form-grid{grid-template-columns:1fr}.fp-span-2{grid-column:span 1}}.fp-actions{margin-top:12px;display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.fp-section{margin-top:10px}.fp-section-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.fp-section-title{margin:0;font-size:15px}.fp-small-btn{font-size:12px;padding:6px 10px}.fp-divider{height:1px;background:#e2e8f0;margin:16px 0}.fp-perms{display:grid;gap:10px}.fp-perm-item{display:grid;grid-template-columns:14px 1fr;gap:10px;align-items:start;padding:10px;border-radius:12px;border:1px solid #e2e8f0;background:#fff}.fp-perm-dot{width:10px;height:10px;border-radius:999px;margin-top:4px}.fp-perm-dot.is-on{background:#22c55e;box-shadow:0 0 0 3px #22c55e2e}.fp-perm-dot.is-off{background:#cbd5e1;box-shadow:0 0 0 3px #cbd5e140}.fp-perm-label{font-weight:700;font-size:13px;color:#0f172a}.fp-perm-sub{margin-top:2px;font-size:12px;color:#64748b}.fp-raw{margin-top:12px;border-radius:12px;border:1px dashed #cbd5e1;background:#f8fafc;padding:10px}.fp-raw-title{font-weight:800;font-size:12px;color:#0f172a;margin-bottom:8px}.fp-raw-chips{display:flex;flex-wrap:wrap;gap:6px}.fp-chip{font-size:12px;padding:4px 8px;border-radius:999px;border:1px solid #e2e8f0;background:#fff;color:#0f172a}.fp-skeleton{display:grid;gap:10px;margin-bottom:10px}.fp-skel-line{height:12px;border-radius:999px;background:linear-gradient(90deg,#f1f5f9 25%,#e2e8f0,#f1f5f9 75%);background-size:200% 100%;animation:fp-shimmer 1.2s infinite linear}.fp-skel-line.w40{width:40%}.fp-skel-line.w55{width:55%}.fp-skel-line.w70{width:70%}@keyframes fp-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.bp-card{max-width:1100px;margin:0 auto}.bp-toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center;justify-content:space-between;margin-bottom:14px}.bp-toolbarLeft,.bp-toolbarRight{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.bp-toolbarRight input,.bp-toolbarRight select{min-height:36px;padding:8px 10px;border:1px solid #e2e8f0;border-radius:10px;background:#fff;font-size:14px}.bp-toolbarRight input{min-width:180px}.bp-toolbarRight input:nth-child(3),.bp-toolbarRight input:nth-child(4){min-width:260px}.bp-paper{width:794px;margin:0 auto;padding:22px;background:#fff;border:1px solid #e2e8f0}@media(max-width:900px){.bp-paper{width:100%}}.bp-header{display:flex;justify-content:space-between;gap:16px;margin-bottom:14px}.bp-brand{display:flex;gap:14px;align-items:center}.bp-logo{height:86px;width:auto;object-fit:contain}.bp-brandName{font-size:20px;font-weight:900;letter-spacing:.2px}.bp-brandMeta{font-size:13px;line-height:1.3;color:#0f172a}.bp-docMeta{text-align:right;font-size:13px}.bp-docTitle{font-weight:900;letter-spacing:.2px}.bp-docSession{font-weight:700}.bp-docDate{margin-top:8px;color:#334155}.bp-infoGrid{display:flex;justify-content:space-between;gap:16px;margin-bottom:12px;font-size:13px}.bp-infoBox{flex:1;border:1px solid #e2e8f0;border-radius:12px;padding:10px 12px;background:#fbfdff}.bp-infoBox.right{text-align:right}.bp-infoRow{display:flex;gap:8px;align-items:baseline;justify-content:flex-start;margin:3px 0}.bp-infoBox.right .bp-infoRow{justify-content:flex-end}.bp-infoLabel{font-weight:800;color:#0f172a;white-space:nowrap}.bp-infoValue{color:#0f172a}.bp-tableWrap{margin-top:6px}.bp-table{width:100%;border-collapse:collapse;font-size:13px}.bp-table thead th{border:1px solid #94a3b8;padding:8px;background:#f8fafc}.bp-table td{border:1px solid #cbd5e1;padding:8px;vertical-align:top}.bp-table .left{text-align:left}.bp-table .center{text-align:center}.bp-table .w-coef{width:55px}.bp-table .w-note{width:80px}.bp-table .w-mini{width:45px}.bp-emptyCell{padding:14px;color:#64748b;text-align:center}.bp-totalRow td{border:1px solid #94a3b8!important;font-weight:900;background:#f8fafc}.bp-input,.bp-textarea{width:100%;border:1px solid #e2e8f0;border-radius:10px;padding:10px;font-size:13px;outline:none;background:#fff}.bp-textarea{resize:vertical;min-height:70px}.bp-input:focus,.bp-textarea:focus{border-color:#94a3b8;box-shadow:0 0 0 3px #94a3b840}.bp-miniGrid{display:flex;gap:18px;margin-top:12px;font-size:13px}.bp-miniBox{flex:1}.bp-miniTitle{font-weight:900;margin-bottom:6px}.bp-block{margin-top:14px}.bp-blockTitle{font-weight:900;margin-bottom:6px}.bp-signature{display:flex;justify-content:flex-end;margin-top:18px}.bp-signatureBox{text-align:right;min-width:320px}.bp-signTitle{font-weight:900;font-size:13px}.bp-signImageWrap{margin-top:10px;min-height:130px;display:flex;justify-content:flex-end;align-items:center}.bp-signImage{max-height:130px;max-width:320px;object-fit:contain}.bp-signPlaceholder{color:#94a3b8;font-style:italic}.bp-signName{margin-top:6px;font-weight:800}.bp-exportText{white-space:pre-wrap;word-break:break-word;line-height:1.35;min-height:22px}.bp-paper.is-exporting .bp-input,.bp-paper.is-exporting .bp-textarea{border:none;padding:0}.bp-state{max-width:900px;margin:0 auto;padding:16px}.formateur-meetings-page{--fmp-text: #0f172a;--fmp-muted: #64748b;--fmp-border: rgba(15, 23, 42, .08);--fmp-border-strong: rgba(15, 23, 42, .14);--fmp-soft: #f8fafc;--fmp-soft-2: #f1f5f9;--fmp-ok-bg: #ecfdf5;--fmp-ok-border: #bbf7d0;--fmp-ok-text: #166534;--fmp-warn-bg: #fff7ed;--fmp-warn-border: #fed7aa;--fmp-warn-text: #9a3412;--fmp-danger-bg: #fef2f2;--fmp-danger-border: #fecaca;--fmp-danger-text: #991b1b;--fmp-shadow: 0 12px 28px rgba(15, 23, 42, .05);--fmp-shadow-soft: 0 8px 18px rgba(15, 23, 42, .04)}.formateur-meetings-page *,.formateur-meetings-page *:before,.formateur-meetings-page *:after{box-sizing:border-box}.formateur-meetings-page .page-section>*,.formateur-meetings-page .fmp-list>*{min-width:0}.formateur-meetings-page .fmp-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:14px}.formateur-meetings-page .fmp-kpis{display:flex;gap:10px;flex-wrap:wrap}.formateur-meetings-page .fmp-kpi{font-size:13px;color:var(--fmp-text);background:var(--fmp-soft-2);border:1px solid #e2e8f0;padding:7px 11px;border-radius:999px;display:inline-flex;align-items:center;gap:6px;font-weight:700}.formateur-meetings-page .fmp-kpi b{font-weight:900}.formateur-meetings-page .fmp-kpi-warn{background:var(--fmp-warn-bg);border-color:var(--fmp-warn-border);color:var(--fmp-warn-text)}.formateur-meetings-page .fmp-kpi-ok{background:var(--fmp-ok-bg);border-color:var(--fmp-ok-border);color:var(--fmp-ok-text)}.formateur-meetings-page .fmp-kpi-muted{background:var(--fmp-soft);border-color:var(--fmp-border);color:var(--fmp-muted)}.formateur-meetings-page .fmp-loading{display:grid;gap:12px}.formateur-meetings-page .fmp-skeleton{height:14px;border-radius:999px;background:linear-gradient(90deg,#f1f5f9,#e2e8f0,#f1f5f9);background-size:200% 100%;animation:fmpShimmer 1.2s infinite linear}@keyframes fmpShimmer{0%{background-position:0% 0%}to{background-position:-200% 0%}}.formateur-meetings-page .fmp-sections{display:grid;gap:20px}.formateur-meetings-page .fmp-group{display:grid;gap:12px}.formateur-meetings-page .fmp-group-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.formateur-meetings-page .fmp-group-head h2{margin:0;font-size:20px;line-height:1.2;letter-spacing:-.02em;color:var(--fmp-text)}.formateur-meetings-page .fmp-count-pill{display:inline-flex;align-items:center;justify-content:center;min-width:34px;min-height:34px;padding:6px 10px;border-radius:999px;background:var(--fmp-warn-bg);border:1px solid var(--fmp-warn-border);color:var(--fmp-warn-text);font-size:13px;font-weight:900}.formateur-meetings-page .fmp-count-pill-muted{background:var(--fmp-soft);border-color:var(--fmp-border);color:var(--fmp-muted)}.formateur-meetings-page .fmp-empty-inline{margin:0;color:var(--fmp-muted);line-height:1.55}.formateur-meetings-page .fmp-list{display:grid;gap:12px;max-width:860px}.formateur-meetings-page .fmp-empty{padding:22px;border-radius:18px}.formateur-meetings-page .fmp-empty-title{font-size:16px;font-weight:900;color:var(--fmp-text)}.formateur-meetings-page .fmp-empty-sub{margin-top:6px;font-size:13px;color:var(--fmp-muted);line-height:1.55}.formateur-meetings-page .fmp-meeting-card{padding:16px;border-radius:18px;border:1px solid var(--fmp-border);background:linear-gradient(180deg,#fff,#fbfdff);box-shadow:var(--fmp-shadow-soft);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.formateur-meetings-page .fmp-meeting-card:hover{transform:translateY(-1px);box-shadow:var(--fmp-shadow);border-color:var(--fmp-border-strong)}.formateur-meetings-page .fmp-meeting-card-past{opacity:.96}.formateur-meetings-page .fmp-meeting-top{display:block}.formateur-meetings-page .fmp-meeting-main{min-width:0}.formateur-meetings-page .fmp-meeting-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}.formateur-meetings-page .fmp-meeting-title-row h3{margin:0;font-size:18px;line-height:1.2;letter-spacing:-.02em;color:var(--fmp-text)}.formateur-meetings-page .fmp-status-stack{display:flex;gap:8px;flex-wrap:wrap}.formateur-meetings-page .fmp-status-chip{display:inline-flex;align-items:center;justify-content:center;min-height:31px;padding:6px 10px;border-radius:999px;font-size:11px;font-weight:900;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}.formateur-meetings-page .fmp-status-requested{background:var(--fmp-warn-bg);border:1px solid var(--fmp-warn-border);color:var(--fmp-warn-text)}.formateur-meetings-page .fmp-status-confirmed{background:var(--fmp-ok-bg);border:1px solid var(--fmp-ok-border);color:var(--fmp-ok-text)}.formateur-meetings-page .fmp-status-cancelled{background:var(--fmp-danger-bg);border:1px solid var(--fmp-danger-border);color:var(--fmp-danger-text)}.formateur-meetings-page .fmp-status-live{background:#2563eb1a;border:1px solid rgba(37,99,235,.2);color:#1d4ed8}.formateur-meetings-page .fmp-student-line,.formateur-meetings-page .fmp-datetime-line,.formateur-meetings-page .fmp-session-line{margin:8px 0 0;color:#0f172abd;line-height:1.55}.formateur-meetings-page .fmp-student-line{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.formateur-meetings-page .fmp-student-line strong{color:var(--fmp-text)}.formateur-meetings-page .fmp-comment{margin:12px 0 0;color:#0f172ac7;line-height:1.55;background:#0f172a08;border:1px solid rgba(15,23,42,.06);border-radius:12px;padding:10px 12px}.formateur-meetings-page .fmp-meta-note{margin:12px 0 0;font-size:14px;color:var(--fmp-muted)}.formateur-meetings-page .fmp-actions-block{margin-top:14px;padding-top:14px;border-top:1px solid rgba(15,23,42,.08)}.formateur-meetings-page .fmp-accept-box{display:grid;gap:10px;max-width:560px}.formateur-meetings-page .fmp-label{font-size:12px;font-weight:900;color:var(--fmp-muted);text-transform:uppercase;letter-spacing:.05em}.formateur-meetings-page .fmp-action-buttons{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.formateur-meetings-page .btn-danger{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 14px;border-radius:12px;border:2px solid #fecaca;background:#fef2f2;color:#991b1b;font-weight:800;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease}.formateur-meetings-page .btn-danger:hover{transform:translateY(-1px);box-shadow:0 10px 18px #ef44441a;border-color:#fca5a5}.formateur-meetings-page .fmp-footer{margin-top:14px;display:flex;justify-content:flex-start}@media(max-width:980px){.formateur-meetings-page .fmp-toolbar{align-items:stretch}.formateur-meetings-page .fmp-list{max-width:100%}}@media(max-width:640px){.formateur-meetings-page .fmp-meeting-card{padding:14px}.formateur-meetings-page .fmp-toolbar,.formateur-meetings-page .fmp-action-buttons,.formateur-meetings-page .fmp-footer{display:grid;grid-template-columns:1fr}.formateur-meetings-page .fmp-action-buttons .btn-primary,.formateur-meetings-page .fmp-action-buttons .btn-secondary,.formateur-meetings-page .fmp-action-buttons .btn-danger,.formateur-meetings-page .fmp-footer .btn-secondary{width:100%}}.admin-apprenants-page{--admin-bg: #f8fafc;--admin-card: #ffffff;--admin-card-soft: linear-gradient(135deg, #dbeafe 0%, #fff7ed 100%);--admin-text: #0f172a;--admin-muted: #475569;--admin-border: #e2e8f0;--admin-border-soft: #f1f5f9;--admin-shadow: 0 10px 30px rgba(15, 23, 42, .06);--admin-shadow-soft: 0 8px 24px rgba(15, 23, 42, .05);--admin-primary: #003366;--admin-primary-2: #0b4d88;--admin-accent: #ff8a00;--admin-success-bg: rgba(34, 197, 94, .1);--admin-success-border: rgba(34, 197, 94, .25);--admin-success-text: #166534;--admin-warning-bg: rgba(245, 158, 11, .12);--admin-warning-border: rgba(245, 158, 11, .25);--admin-warning-text: #92400e;--admin-neutral-bg: rgba(148, 163, 184, .12);--admin-neutral-border: rgba(148, 163, 184, .28);--admin-neutral-text: #334155;min-height:100vh;background:var(--admin-bg);color:var(--admin-text)}.admin-page-shell{width:100%;box-sizing:border-box}.admin-page-container{width:100%;max-width:1360px;margin:0 auto;padding:28px 20px 40px;box-sizing:border-box}.admin-page-hero{background:var(--admin-card-soft);border:1px solid rgba(255,255,255,.55);border-radius:28px;padding:28px 22px;box-shadow:var(--admin-shadow-soft);margin-bottom:20px}.admin-page-hero-badge{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:999px;background:#ffffff47;border:1px solid rgba(15,23,42,.08);color:var(--admin-primary);font-size:13px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;margin-bottom:16px}.admin-page-title{margin:0 0 10px;font-size:30px;line-height:1.08;letter-spacing:-.03em;font-weight:950;color:#0b1533}.admin-page-subtitle{margin:0;font-size:16px;line-height:1.6;color:var(--admin-muted);max-width:860px}.admin-toolbar-card,.admin-feedback-card,.admin-table-card,.admin-pagination-card,.admin-stats-inline{background:var(--admin-card);border:1px solid var(--admin-border);border-radius:22px;box-shadow:var(--admin-shadow)}.admin-toolbar-card{padding:22px;margin-bottom:18px}.admin-feedback-card{padding:20px 22px;margin-bottom:18px}.admin-table-card{padding:0;overflow:hidden;margin-bottom:18px}.admin-pagination-card{padding:18px 20px}.admin-stats-inline{padding:14px 18px;margin-bottom:14px}.admin-toolbar-top{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-bottom:18px}.admin-toolbar-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.admin-section-title{margin:0 0 6px;font-size:22px;font-weight:900;letter-spacing:-.02em;color:#0f172a}.admin-section-subtitle{margin:0;font-size:14px;color:var(--admin-muted);line-height:1.5}.admin-loading-text{font-size:15px;font-weight:700;color:var(--admin-muted)}.admin-error-text{font-size:15px;font-weight:800;color:#b91c1c}.admin-stats-inline-text{font-size:14px;color:var(--admin-muted)}.admin-stats-inline-filter{margin-left:8px;opacity:.9}.admin-filters-row{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;flex-wrap:wrap}.admin-filter-field{display:flex;flex-direction:column;gap:8px}.admin-filter-field--search{flex:1 1 360px;min-width:260px}.admin-label{font-size:13px;font-weight:800;color:#334155}.admin-input{width:100%;min-height:46px;padding:11px 14px;border-radius:14px;border:1px solid var(--admin-border);background:#fff;color:var(--admin-text);font-size:14px;font-weight:600;outline:none;box-sizing:border-box;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.admin-input::placeholder{color:#94a3b8;font-weight:600}.admin-input:focus{border-color:#0b4d8866;box-shadow:0 0 0 4px #0b4d881a}.admin-filter-actions{display:flex;gap:10px;flex-wrap:wrap}.admin-table{width:100%}.admin-table-head,.admin-table-row{display:grid;grid-template-columns:90px 1.2fr 1fr 140px 110px;align-items:center}.admin-table-head{padding:14px 16px;background:#94a3b814;border-bottom:1px solid var(--admin-border);font-size:13px;font-weight:900;color:#334155;gap:12px}.admin-table-row{width:100%;padding:14px 16px;gap:12px;border:none;border-bottom:1px solid var(--admin-border-soft);background:#fff;text-align:left;transition:background-color .14s ease,transform .14s ease}.admin-table-row:last-child{border-bottom:none}.admin-table-row--clickable{cursor:pointer}.admin-table-row--clickable:hover{background:#94a3b814}.admin-table-row--clickable:focus-visible{outline:3px solid rgba(11,77,136,.18);outline-offset:-3px}.admin-table-cell{min-width:0;font-size:14px;color:#0f172a}.admin-table-cell--id{font-weight:900}.admin-table-cell--email{word-break:break-word;color:#334155}.admin-table-cell--identity{min-width:0}.admin-table-identity-main{font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-table-identity-sub{margin-top:3px;font-size:12px;color:#64748b}.admin-table-empty{padding:18px 16px;font-size:14px;font-weight:700;color:var(--admin-muted)}.admin-chip{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:6px 12px;border-radius:999px;border:1px solid transparent;font-size:12px;font-weight:900;white-space:nowrap}.admin-chip--success{background:var(--admin-success-bg);border-color:var(--admin-success-border);color:var(--admin-success-text)}.admin-chip--warning{background:var(--admin-warning-bg);border-color:var(--admin-warning-border);color:var(--admin-warning-text)}.admin-chip--neutral{background:var(--admin-neutral-bg);border-color:var(--admin-neutral-border);color:var(--admin-neutral-text)}.admin-pagination-card{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.admin-pagination-left{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.admin-pagination-right{margin-left:auto}.admin-pagination-text{font-size:14px;color:var(--admin-muted);font-weight:700}.admin-apprenants-page .btn,.admin-apprenants-page .btn-secondary{min-height:42px;border-radius:999px;font-weight:800}@media(max-width:1100px){.admin-page-container{padding:22px 16px 36px}.admin-page-title{font-size:28px}.admin-table-head,.admin-table-row{grid-template-columns:80px 1.1fr 1fr 130px 100px}}@media(max-width:860px){.admin-page-title{font-size:26px}.admin-toolbar-card,.admin-feedback-card,.admin-pagination-card{padding-left:16px;padding-right:16px}.admin-table-head,.admin-table-row{grid-template-columns:76px 1.1fr 1fr}.admin-table-head>:nth-child(4),.admin-table-head>:nth-child(5),.admin-table-row>:nth-child(4),.admin-table-row>:nth-child(5){display:none}}@media(max-width:640px){.admin-page-container{padding:18px 12px 28px}.admin-page-hero{padding:20px 16px;border-radius:22px}.admin-page-title{font-size:22px}.admin-page-subtitle{font-size:14px}.admin-section-title{font-size:19px}.admin-toolbar-top,.admin-filters-row,.admin-pagination-card{flex-direction:column;align-items:stretch}.admin-toolbar-actions,.admin-filter-actions,.admin-pagination-left,.admin-pagination-right{width:100%}.admin-pagination-right{margin-left:0}.admin-toolbar-actions .btn,.admin-filter-actions .btn,.admin-pagination-left .btn,.admin-pagination-right .btn{width:100%}.admin-table-head{display:none}.admin-table-row{grid-template-columns:1fr;gap:10px;padding:14px}.admin-table-cell{display:flex;flex-direction:column;gap:4px}.admin-table-cell:before{font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;color:#64748b}.admin-table-cell--id:before{content:"ID"}.admin-table-cell--identity:before{content:"Nom / Prénom"}.admin-table-cell--email:before{content:"Email"}.admin-table-row>:nth-child(4){display:flex}.admin-table-row>:nth-child(4):before{content:"Dossier";font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;color:#64748b}.admin-table-row>:nth-child(5){display:flex}.admin-table-row>:nth-child(5):before{content:"Statut";font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;color:#64748b}}:root[data-theme=dark] .admin-apprenants-page{--admin-bg: #020617;--admin-card: rgba(15, 23, 42, .92);--admin-card-soft: linear-gradient(135deg, rgba(30, 41, 59, .95) 0%, rgba(51, 65, 85, .9) 100%);--admin-text: #f8fafc;--admin-muted: #cbd5e1;--admin-border: rgba(226, 232, 240, .12);--admin-border-soft: rgba(226, 232, 240, .08);--admin-shadow: 0 14px 34px rgba(0, 0, 0, .32);--admin-shadow-soft: 0 10px 26px rgba(0, 0, 0, .26);--admin-success-text: #bbf7d0;--admin-warning-text: #fde68a;--admin-neutral-text: #e2e8f0}:root[data-theme=dark] .admin-page-title,:root[data-theme=dark] .admin-section-title,:root[data-theme=dark] .admin-table-cell,:root[data-theme=dark] .admin-table-head{color:#f8fafc}:root[data-theme=dark] .admin-input{background:#0206178c;border-color:#e2e8f01f;color:#f8fafc}:root[data-theme=dark] .admin-input::placeholder{color:#e2e8f066}:root[data-theme=dark] .admin-table-row{background:transparent}:root[data-theme=dark] .admin-table-row--clickable:hover{background:#94a3b814}:root[data-theme=dark] .admin-table-identity-sub,:root[data-theme=dark] .admin-table-cell--email,:root[data-theme=dark] .admin-table-empty,:root[data-theme=dark] .admin-pagination-text,:root[data-theme=dark] .admin-stats-inline-text,:root[data-theme=dark] .admin-page-subtitle,:root[data-theme=dark] .admin-section-subtitle,:root[data-theme=dark] .admin-label{color:#cbd5e1}.admin-toolbar-actions .btn,.admin-toolbar-actions .btn-secondary,.admin-filter-actions .btn,.admin-filter-actions .btn-secondary,.admin-pagination-left .btn,.admin-pagination-right .btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;line-height:1;white-space:nowrap;box-sizing:border-box}.aad-container{max-width:1100px;margin:0 auto;padding:16px}.aad-title{margin:0}.aad-topbar{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}.aad-topbar-actions{display:flex;gap:10px;flex-wrap:wrap}.aad-card{padding:14px;border-radius:12px}.aad-mt{margin-top:12px}.aad-mt-sm{margin-top:10px}.aad-mb-sm{margin-bottom:8px}.aad-muted{opacity:.8}.aad-xs{font-size:12px}.aad-error{color:#dc143c;font-weight:800}.aad-success{color:#0f7a2f;font-weight:800}.aad-profile-head{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px}.aad-profile-name{font-weight:950;font-size:18px}.aad-profile-email{opacity:.9}.aad-profile-meta{opacity:.75;font-size:12px;margin-top:2px}.aad-profile-pills{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.aad-pill{padding:6px 10px;border-radius:999px;font-weight:800;font-size:12px;opacity:.95;border:1px solid rgba(15,23,42,.1);background:#94a3b81a;display:inline-flex;align-items:center;gap:6px}.aad-pill--success{border-color:#22c55e40;background:#22c55e1f}.aad-pill--warn{border-color:#f59e0b40;background:#f59e0b24}.aad-pill--info{border-color:#3b82f640;background:#3b82f61f}.aad-tabs{margin-top:12px;display:flex;gap:8px;flex-wrap:wrap;border-bottom:1px solid #e5e7eb;padding-bottom:8px}.aad-tab{padding:8px 14px;border-radius:999px;font-weight:900;font-size:13px;border:1px solid #e5e7eb;background:#fff;color:#0f172a;cursor:pointer}.aad-tab--active{border:2px solid #0f172a;background:#0f172a;color:#fff}.aad-grid{margin-top:12px;display:grid;gap:12px}.aad-section-head{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:center;margin-bottom:10px}.aad-section-title{font-weight:900}.aad-section-right{display:flex;gap:10px;flex-wrap:wrap}.aad-kpis{display:grid;gap:6px}.aad-kpi-row{display:flex;justify-content:space-between;gap:10px}.aad-form{display:grid;gap:10px}.aad-input,.aad-textarea{width:100%;padding:10px;border-radius:10px;border:1px solid #e5e7eb;outline:none}.aad-textarea{resize:vertical}.aad-input:focus,.aad-textarea:focus{border-color:#0f172a59}.aad-form-actions{display:flex;gap:10px;flex-wrap:wrap}.aad-list{display:grid;gap:10px}.aad-item{padding:12px;border-radius:12px}.aad-item-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap}.aad-item-main{min-width:260px}.aad-item-title{font-weight:950}.aad-item-meta{font-size:12px;opacity:.75;margin-top:4px}.aad-item-pills{margin-top:8px;display:flex;gap:8px;flex-wrap:wrap}.aad-item-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.aad-url{margin-top:10px;font-size:12px;opacity:.85;word-break:break-all}.aad-note{margin-top:8px;font-size:13px;opacity:.9}.aad-emaillog--click{cursor:pointer}.aad-openhint{margin-top:8px;font-size:12px;opacity:.7}.aad-pagination{display:flex;gap:10px;align-items:center;margin-top:12px;flex-wrap:wrap}.aad-sessions{display:grid;gap:12px}.aad-session-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.aad-modal-backdrop{position:fixed;inset:0;background:#00000073;z-index:9999;display:flex;justify-content:center;align-items:center;padding:14px}.aad-modal{width:min(980px,96vw);max-height:90vh;overflow:auto;padding:14px;border-radius:14px}.aad-modal-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;flex-wrap:wrap}.aad-modal-titleblock{min-width:240px}.aad-modal-title{font-weight:950;font-size:18px}.aad-modal-sub{font-size:13px;opacity:.85;margin-top:2px}.aad-modal-to{font-size:12px;opacity:.75;margin-top:6px}.aad-modal-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.aad-hr{margin:12px 0;border-color:#e2e8f0}.aad-block{margin-bottom:14px}.aad-block-title{font-weight:900;margin-bottom:6px}.aad-attachments-list{display:grid;gap:8px;margin-top:6px}.aad-attachment-item{display:flex;justify-content:space-between;gap:12px;align-items:center;border:1px solid #e5e7eb;border-radius:12px;padding:10px 12px;background:#fff}.aad-attachment-info{min-width:0}.aad-attachment-name{font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:520px}.aad-attachment-meta{font-size:12px;opacity:.75}.aad-attachment-actions{display:flex;gap:8px;flex-wrap:wrap}.btn-ghost:hover{filter:brightness(.98)}.aad-preview-panel{margin-top:12px}.aad-preview-head{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}.aad-preview-title{font-weight:900}.aad-preview-name{opacity:.75;font-weight:700;word-break:break-word}.aad-preview-box{border:1px solid #e5e7eb;border-radius:12px;padding:12px;background:#fff;margin-top:8px}.aad-preview-img{max-width:100%;border-radius:12px}.aad-preview-iframe{width:100%;height:70vh;border:0;border-radius:12px}.aad-email-html{border:1px solid #e5e7eb;border-radius:12px;padding:12px;background:#fff;overflow:auto}.aad-raw{white-space:pre-wrap;word-break:break-word;background:#94a3b81a;padding:12px;border-radius:12px;font-size:13px}.aad-plain{background:#94a3b81a;padding:12px;border-radius:12px;font-size:14px;white-space:pre-wrap}@media(max-width:640px){.aad-attachment-name{max-width:240px}}.admin-emails-block{margin-bottom:24px}.admin-emails-hero-actions{margin-top:16px;display:flex;gap:8px;flex-wrap:wrap}.admin-emails-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}.admin-emails-section-title{margin-top:0;margin-bottom:6px}.admin-emails-section-subtitle{margin:0}.admin-emails-mini-pills{display:flex;gap:8px;flex-wrap:wrap}.admin-emails-mini-pill{font-size:12px;border:1px solid #e5e7eb;background:#fff;padding:6px 10px;border-radius:999px;opacity:.9}.admin-emails-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}.admin-emails-subcard{border:1px solid #e5e7eb;background:#fff;border-radius:12px;padding:12px}.admin-emails-subcard-title{font-weight:900;margin-bottom:8px}.admin-emails-form-grid{display:grid;gap:12px}.admin-emails-form-group{display:flex;flex-direction:column;gap:6px}.admin-emails-form-group textarea,.admin-emails-form-group input,.admin-emails-form-group select,.admin-emails-log-filters input,.admin-emails-log-filters select,.admin-emails-template-create-row input{padding:10px;border-radius:10px;border:1px solid #e5e7eb;background:#fff;width:100%;box-sizing:border-box}.admin-emails-form-group textarea:focus,.admin-emails-form-group input:focus,.admin-emails-form-group select:focus,.admin-emails-log-filters input:focus,.admin-emails-log-filters select:focus,.admin-emails-template-create-row input:focus{outline:none;border-color:#94a3b8;box-shadow:0 0 0 3px #94a3b826}.admin-emails-inline-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.admin-emails-inline-actions--attachments{align-items:center}.admin-emails-template-create-row{display:flex;gap:10px;flex-wrap:wrap}.admin-emails-template-create-row input{flex:1;min-width:220px}.admin-emails-hint{font-size:12px;opacity:.75;margin-top:4px}.admin-emails-info-text{font-size:13px;opacity:.9}.admin-emails-file-input{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}.admin-emails-file-summary{font-size:12px;opacity:.75}.admin-emails-composer{margin-top:14px}.admin-emails-send-row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.admin-emails-attachments-list{display:grid;gap:8px;margin-top:6px}.admin-emails-attachment-item{display:flex;justify-content:space-between;gap:12px;align-items:center;border:1px solid #e5e7eb;border-radius:12px;padding:10px 12px;background:#fff}.admin-emails-attachment-content{min-width:0}.admin-emails-attachment-name{font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:520px}.admin-emails-attachment-meta{font-size:12px;opacity:.75}.admin-emails-log-filters{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.admin-emails-log-list{margin-top:12px}.admin-emails-log-grid{display:grid;gap:12px}.admin-emails-log-card{padding:12px;border-radius:12px;border:1px solid #e5e7eb;background:#fff;text-align:left;cursor:pointer;width:100%}.admin-emails-log-card:hover{filter:brightness(.99);box-shadow:0 4px 14px #0f172a0f}.admin-emails-log-top{display:flex;justify-content:space-between;gap:10px;margin-bottom:6px;flex-wrap:wrap}.admin-emails-log-date{font-size:12px;opacity:.7}.admin-emails-log-recipient{font-weight:800}.admin-emails-log-subject{opacity:.85;margin-top:4px}.admin-emails-log-error{color:#b91c1c;font-size:12px;margin-top:6px}.admin-emails-log-footer{font-size:12px;opacity:.7;margin-top:6px}.admin-emails-pagination{margin-top:14px;display:flex;gap:10px;flex-wrap:wrap;align-items:center}.admin-emails-pagination-text{align-self:center;font-size:13px}.admin-emails-modal-backdrop{position:fixed;inset:0;background:#0f172a73;display:flex;align-items:center;justify-content:center;padding:18px;z-index:9999}.admin-emails-modal-card{width:min(980px,100%);max-height:86vh;overflow:auto;background:#fff;border-radius:16px;border:1px solid #e5e7eb;box-shadow:0 18px 60px #0f172a40;padding:14px}.admin-emails-modal-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;position:sticky;top:0;background:#fff;padding-bottom:10px;border-bottom:1px solid #f1f5f9;z-index:1}.admin-emails-modal-title{font-weight:900;font-size:16px}.admin-emails-detail-top{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:10px}.admin-emails-detail-meta{font-size:12px;opacity:.75}.admin-emails-detail-recipient{font-weight:900;margin-bottom:6px}.admin-emails-detail-subject{font-weight:800;opacity:.9;margin-bottom:10px}.admin-emails-detail-section{margin-top:14px}.admin-emails-detail-section-title{font-weight:900;margin-bottom:6px}.admin-emails-html-preview{border:1px solid #e5e7eb;border-radius:12px;padding:12px;background:#fff;overflow:auto}.admin-emails-preview-panel{margin-top:12px}.admin-emails-preview-head{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}.admin-emails-preview-name{opacity:.75;font-weight:700}.admin-emails-preview-box{border:1px solid #e5e7eb;border-radius:12px;padding:12px;background:#fff;margin-top:8px}.admin-emails-preview-image{max-width:100%;border-radius:12px;display:block}.admin-emails-preview-pdf{width:100%;height:70vh;border:0;border-radius:12px}.admin-emails-muted{opacity:.75}.btn,.btn-secondary{appearance:none;-webkit-appearance:none;border-radius:999px;padding:10px 14px;font-weight:800;cursor:pointer;border:1px solid #e5e7eb;background:#fff;color:#0f172a;box-shadow:0 1px 2px #0f172a0f;line-height:1}.btn:hover,.btn-secondary:hover,.btn-ghost:hover{filter:brightness(.98)}.btn:disabled,.btn-secondary:disabled,.btn-ghost:disabled{opacity:.55;cursor:not-allowed}.btn.btn-primary{background:#f97316;border-color:#f97316;color:#fff;box-shadow:0 6px 16px #f9731640}.btn-ghost{border:1px solid #e5e7eb;background:#fff;color:#0f172a;border-radius:999px;padding:8px 10px;font-weight:800;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}@media(max-width:900px){.admin-emails-grid-2{grid-template-columns:1fr}.admin-emails-attachment-item{align-items:flex-start;flex-direction:column}.admin-emails-modal-card{padding:12px}}.admin-exports-container{padding:16px 12px;max-width:1100px;margin:0 auto}.admin-exports-header{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}.admin-exports-title{margin:0}.admin-exports-subtitle{margin-top:10px;opacity:.8;font-size:13px}.admin-exports-back-btn{white-space:nowrap}.admin-exports-feedback{margin-top:12px;display:grid;gap:8px}.admin-exports-error{color:#b91c1c;font-weight:700}.admin-exports-success{color:#15803d;font-weight:700}.admin-exports-grid{margin-top:16px;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}.admin-exports-card{padding:16px;border-radius:12px}.admin-exports-card-title{font-weight:900;font-size:16px}.admin-exports-card-desc{margin-top:6px;opacity:.8;font-size:13px;line-height:1.45}.admin-exports-card-body{margin-top:12px}.admin-exports-form-grid{display:grid;gap:10px}.admin-exports-date-row{display:flex;gap:8px;flex-wrap:wrap}.admin-exports-date-field{min-width:140px}.admin-exports-field-label{font-size:12px;opacity:.8;margin-bottom:4px}.admin-exports-input{width:100%;padding:8px 10px;border-radius:10px;border:1px solid #dbe3ee;background:#fff;color:#0f172a;box-sizing:border-box}.admin-exports-input:focus{outline:none;border-color:#94a3b8;box-shadow:0 0 0 3px #94a3b82e}.admin-exports-actions-row{display:flex;gap:8px;flex-wrap:wrap}.admin-exports-note{margin-top:14px;font-size:12px;opacity:.75}@media(max-width:640px){.admin-exports-header{align-items:flex-start}.admin-exports-date-row{flex-direction:column}.admin-exports-date-field{width:100%}.admin-exports-actions-row{flex-direction:column}.admin-exports-actions-row .btn{width:100%}}.admin-audit-page{max-width:1100px;margin:0 auto;padding:16px 12px}.admin-audit-header{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.admin-audit-title{margin:0}.admin-audit-subtitle{opacity:.8;font-size:13px;margin-top:4px}.admin-audit-header-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;flex-shrink:0}.admin-audit-filters-card{margin-top:12px;padding:14px;border-radius:12px}.admin-audit-filters-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.admin-audit-field{min-width:0}.admin-audit-label{font-size:12px;opacity:.8;margin-bottom:6px;font-weight:700}.admin-audit-input{width:100%;padding:10px;border-radius:10px;border:1px solid #e5e7eb;background:#fff;color:#0f172a}.admin-audit-input:focus{outline:none;border-color:#94a3b8;box-shadow:0 0 0 3px #94a3b826}.admin-audit-filters-actions{margin-top:10px;display:flex;gap:10px;flex-wrap:wrap}.admin-audit-state{margin-top:16px;opacity:.8}.admin-audit-error{margin-top:16px;color:#dc143c;font-weight:800}.admin-audit-results{margin-top:16px}.admin-audit-results-meta{opacity:.85;font-size:13px;margin-bottom:8px}.admin-audit-list-card{padding:0;overflow:hidden;border-radius:12px}.admin-audit-list-head{display:grid;grid-template-columns:170px 1.4fr 1.1fr 170px;gap:0;padding:12px;font-weight:900;opacity:.9;background:#f8fafc;border-bottom:1px solid #e5e7eb}.admin-audit-row{padding:12px;border-top:1px solid #eef2f7}.admin-audit-row-main{display:grid;grid-template-columns:170px 1.4fr 1.1fr 170px;gap:10px;align-items:center}.admin-audit-col{min-width:0}.admin-audit-col-date{word-break:break-word}.admin-audit-main-text{font-weight:800;opacity:.95;word-break:break-word}.admin-audit-sub-text{font-size:12px;opacity:.75;margin-top:3px;word-break:break-word}.admin-audit-action-wrap{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.admin-audit-action{font-weight:900}.admin-audit-row-extra{margin-top:10px;display:grid;gap:6px}.admin-audit-technical{font-size:12px;opacity:.75;word-break:break-word}.admin-audit-meta summary{cursor:pointer;font-weight:900}.admin-audit-meta pre{margin-top:8px;white-space:pre-wrap;font-size:12px;opacity:.9;background:#f8fafc;border:1px solid #e5e7eb;padding:10px;border-radius:10px;overflow-x:auto}.admin-audit-empty{padding:14px;opacity:.8}.admin-audit-pagination{margin-top:14px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}.admin-audit-pagination-text{opacity:.85}.admin-audit-pill{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;font-weight:800;font-size:12px;border:1px solid #e2e8f0;white-space:nowrap}.admin-audit-pill--default{background:#f1f5f9;color:#0f172a}.admin-audit-pill--success{background:#dcfce7;color:#166534;border-color:#bbf7d0}.admin-audit-pill--danger{background:#fee2e2;color:#991b1b;border-color:#fecaca}.admin-audit-pill--info{background:#dbeafe;color:#1d4ed8;border-color:#bfdbfe}@media(max-width:900px){.admin-audit-list-head{display:none}.admin-audit-row-main{grid-template-columns:1fr;gap:8px}.admin-audit-row{padding:14px 12px}}.admin-payments-container{max-width:1200px;margin:0 auto;padding:16px 12px}.admin-payments-header{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}.admin-payments-title{margin:0}.admin-payments-subtitle{opacity:.8;font-size:13px;margin-top:4px}.admin-payments-header-actions{display:flex;gap:10px;flex-wrap:wrap}.admin-payments-filters-card{margin-top:12px;padding:14px;border-radius:12px}.admin-payments-filters-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.admin-payments-field-label{font-size:12px;opacity:.8;margin-bottom:6px}.admin-payments-input{width:100%;padding:10px;border-radius:10px;border:1px solid #e5e7eb;box-sizing:border-box;background:#fff}.admin-payments-input:focus{outline:none;border-color:#cbd5e1;box-shadow:0 0 0 3px #94a3b826}.admin-payments-lookup-wrap{position:relative}.admin-payments-suggestions{position:absolute;z-index:20;top:68px;left:0;right:0;background:#fff;border:1px solid #e5e7eb;border-radius:10px;overflow:hidden;box-shadow:0 10px 30px #00000014}.admin-payments-suggestion-item{padding:10px;cursor:pointer;border-top:1px solid #f1f5f9}.admin-payments-suggestion-item:hover{background:#f8fafc}.admin-payments-suggestion-empty{padding:10px;opacity:.8}.admin-payments-selected-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.admin-payments-filters-actions{margin-top:10px;display:flex;gap:10px;flex-wrap:wrap;align-items:center}.admin-payments-filters-right{flex:1;display:flex;justify-content:flex-end;min-width:220px}.admin-payments-agg-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.admin-payments-pill{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;font-weight:800;font-size:12px;background:#f1f5f9;border:1px solid #e2e8f0;color:#0f172a;white-space:nowrap}.admin-payments-btn-muted{opacity:.85}.admin-payments-note{margin-top:10px;font-size:13px;opacity:.8}.admin-payments-state{margin-top:16px;opacity:.8}.admin-payments-error{margin-top:16px;color:#dc143c;font-weight:700}.admin-payments-results{margin-top:16px}.admin-payments-results-top{opacity:.85;font-size:13px;margin-bottom:8px}.admin-payments-table-card{padding:0;overflow:hidden;border-radius:12px}.admin-payments-table-head{display:grid;grid-template-columns:130px 1.3fr 260px 120px 160px 120px;padding:12px;font-weight:900;opacity:.9;background:#f8fafc;border-bottom:1px solid #e5e7eb;gap:10px}.admin-payments-row{padding:12px;border-top:1px solid #eef2f7;cursor:pointer}.admin-payments-row:hover{background:#94a3b80f}.admin-payments-row-grid{display:grid;grid-template-columns:130px 1.3fr 260px 120px 160px 120px;gap:10px;align-items:center}.admin-payments-row-date,.admin-payments-row-amount,.admin-payments-row-title-main,.admin-payments-row-user-main{font-weight:900}.admin-payments-row-pills{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:6px}.admin-payments-row-user-sub,.admin-payments-row-created{font-size:12px;opacity:.75}.admin-payments-row-actions{display:flex;justify-content:flex-end}.admin-payments-row-links{margin-top:10px;font-size:12px;opacity:.85;display:flex;gap:10px;flex-wrap:wrap}.admin-payments-row-links a{font-weight:900;text-decoration:none}.admin-payments-row-links a:hover{text-decoration:underline}.admin-payments-status{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:800;border:1px solid #e5e7eb;background:#f8fafc;color:#0f172a}.admin-payments-status.is-paid{background:#dcfce7;color:#166534;border-color:#bbf7d0}.admin-payments-status.is-pending{background:#fef3c7;color:#92400e;border-color:#fde68a}.admin-payments-status.is-cancelled{background:#fee2e2;color:#991b1b;border-color:#fecaca}.admin-payments-empty{padding:14px;opacity:.8}.admin-payments-pagination{margin-top:14px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}.admin-payments-pagination-label{opacity:.85}.align-right{text-align:right}@media(max-width:1100px){.admin-payments-table-head,.admin-payments-row-grid{grid-template-columns:120px 1.2fr 220px 110px 140px 100px}}@media(max-width:900px){.admin-payments-table-head{display:none}.admin-payments-row-grid{grid-template-columns:1fr;gap:8px}.admin-payments-row-actions,.admin-payments-filters-right,.admin-payments-agg-row{justify-content:flex-start}}.admin-rbac-page{display:flex;flex-direction:column;gap:16px}.admin-rbac-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}.admin-rbac-title{margin:0}.admin-rbac-subtitle{margin:6px 0 0;opacity:.8;font-size:14px}.admin-rbac-stats{display:flex;gap:8px;flex-wrap:wrap}.admin-rbac-pill{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;font-weight:800;font-size:12px;background:#f1f5f9;border:1px solid #e2e8f0;color:#0f172a;white-space:nowrap}.admin-rbac-tabs-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.admin-rbac-tabs-spacer{flex:1}.admin-rbac-card{padding:16px;border-radius:14px}.admin-rbac-full-width{grid-column:1 / -1}.admin-rbac-list-title{font-weight:800}.admin-rbac-list-actions{margin-left:auto;display:flex;gap:8px;flex-wrap:wrap}.admin-rbac-actions-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.admin-rbac-role-chip-wrap{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.admin-rbac-clickable{cursor:pointer}.admin-rbac-clickable:hover{background:#94a3b814}.admin-rbac-margin-top{margin-top:12px}.admin-rbac-margin-top-small{margin-top:8px}.admin-rbac-margin-bottom-small{margin-bottom:6px}.admin-rbac-separator{height:12px}.admin-rbac-subblock-title{margin-bottom:6px}.perm-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px;max-height:420px;overflow:auto;padding:8px;border:1px solid #e5e7eb;border-radius:12px;background:#fff}.perm-item{display:flex;align-items:center;gap:8px;min-height:40px;padding:8px 10px;border-radius:10px;background:#f8fafc;border:1px solid #eef2f7;font-size:14px}.perm-item input{width:auto}@media(max-width:900px){.admin-rbac-header{flex-direction:column;align-items:stretch}.admin-rbac-stats{width:100%}.admin-rbac-tabs-row{align-items:stretch}.admin-rbac-tabs-spacer{display:none}.admin-rbac-actions-row{flex-direction:row}.admin-rbac-full-width{grid-column:auto}}.admin-formation-detail-page{background:#f8fafc;min-height:100vh}.admin-formation-detail-page__content{max-width:1200px;margin:0 auto;padding:18px 14px 28px}.admin-formation-detail-page__header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.admin-formation-detail-page__subtitle{margin:6px 0 0;color:#64748b;font-size:14px}.admin-formation-detail-page__header-actions{display:flex;gap:10px;flex-wrap:wrap}.admin-formation-detail__hero,.admin-formation-detail__courses-card,.admin-formation-detail__stat-card,.admin-formation-detail__empty{border-radius:18px;border:1px solid rgba(15,23,42,.08);box-shadow:0 12px 30px #0f172a0f;background:#fff}.admin-formation-detail__hero{margin-top:14px;padding:18px;display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px;align-items:start}.admin-formation-detail__hero-main{min-width:0}.admin-formation-detail__hero-top{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;flex-wrap:wrap}.admin-formation-detail__title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.admin-formation-detail__title{margin:0;font-size:24px;font-weight:900;color:#0f172a;letter-spacing:-.02em}.admin-formation-detail__meta{display:flex;gap:8px 14px;flex-wrap:wrap;margin-top:10px;font-size:13px;color:#64748b}.admin-formation-detail__description,.admin-formation-detail__description-empty{margin-top:16px;white-space:pre-wrap;line-height:1.65;color:#1e293b}.admin-formation-detail__description-empty{color:#64748b}.admin-formation-detail__hero-actions{display:flex;gap:10px;flex-wrap:wrap}.admin-formation-detail__hero-image-wrap{width:100%;min-width:0}.admin-formation-detail__hero-image{width:100%;height:220px;object-fit:cover;display:block;border-radius:14px;border:1px solid rgba(15,23,42,.08)}.admin-formation-detail__stats-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-top:14px}.admin-formation-detail__stat-card{padding:16px}.admin-formation-detail__stat-label{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:#64748b;font-weight:800}.admin-formation-detail__stat-value{margin-top:8px;font-size:28px;font-weight:900;color:#0f172a;line-height:1.1}.admin-formation-detail__stat-subvalue{margin-top:8px;font-size:14px;font-weight:700;color:#0f172a;line-height:1.4}.admin-formation-detail__courses-card{margin-top:14px;padding:18px}.admin-formation-detail__section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}.admin-formation-detail__section-title{margin:0;font-size:20px;font-weight:900;color:#0f172a}.admin-formation-detail__section-subtitle{margin:6px 0 0;color:#64748b;font-size:14px}.admin-formation-detail__section-counter{font-size:13px;font-weight:800;color:#334155;background:#f8fafc;border:1px solid #e2e8f0;padding:8px 12px;border-radius:999px;white-space:nowrap}.admin-formation-detail__courses-list{margin-top:16px;display:grid;gap:12px}.admin-formation-detail__course-item{border:1px solid #e2e8f0;background:linear-gradient(180deg,#f8fafce6,#fff);border-radius:16px;padding:14px;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.admin-formation-detail__course-item:hover{transform:translateY(-1px);box-shadow:0 10px 24px #0f172a0f;border-color:#cbd5e1}.admin-formation-detail__course-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.admin-formation-detail__course-main{min-width:0;width:100%}.admin-formation-detail__course-title-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.admin-formation-detail__course-title{margin:0;font-size:17px;font-weight:900;color:#0f172a}.admin-formation-detail__course-id{font-size:12px;color:#64748b;font-weight:700}.admin-formation-detail__course-meta{margin-top:8px;display:flex;gap:8px 12px;flex-wrap:wrap;font-size:13px;color:#475569}.admin-formation-detail__course-description{margin:10px 0 0;color:#334155;line-height:1.6;white-space:pre-wrap}.admin-formation-detail__course-description--empty{color:#94a3b8;font-style:italic}.admin-formation-detail__status{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:5px 10px;border-radius:999px;background:#f1f5f9;border:1px solid #e2e8f0;color:#334155;font-size:12px;font-weight:800;white-space:nowrap}.admin-formation-detail__status--published{background:#dcfce7;border-color:#bbf7d0;color:#166534}.admin-formation-detail__status--draft{background:#fef3c7;border-color:#fde68a;color:#92400e}.admin-formation-detail__empty{margin-top:14px;padding:18px}@media(max-width:1100px){.admin-formation-detail__stats-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-formation-detail__hero{grid-template-columns:1fr}}@media(max-width:720px){.admin-formation-detail-page__content{padding:14px 10px 24px}.admin-formation-detail__stats-grid{grid-template-columns:1fr 1fr}.admin-formation-detail__title{font-size:21px}.admin-formation-detail__courses-card,.admin-formation-detail__hero,.admin-formation-detail__stat-card{border-radius:14px}}@media(max-width:560px){.admin-formation-detail__stats-grid{grid-template-columns:1fr}.admin-formation-detail-page__header-actions{width:100%}.admin-formation-detail-page__header-actions .btn{flex:1 1 auto}}.admin-attendance-page .admin-attendance-hero-actions{margin-top:16px;display:flex;gap:8px;flex-wrap:wrap;align-items:center}.admin-attendance-page .admin-attendance-spacer{flex:1}.admin-attendance-page .admin-attendance-card{padding:16px}.admin-attendance-page .admin-attendance-filters-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.admin-attendance-page .admin-attendance-toolbar{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:12px}.admin-attendance-page .admin-attendance-check-all{display:inline-flex;align-items:center;gap:8px;font-weight:700}.admin-attendance-page .admin-attendance-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin-bottom:1rem}.admin-attendance-page .admin-attendance-table-head{display:flex;align-items:center;gap:8px;margin-bottom:10px}.admin-attendance-page .admin-attendance-table-wrap{overflow-x:auto}.admin-attendance-page .admin-attendance-table{width:100%;min-width:1280px}.admin-attendance-page .admin-attendance-table th,.admin-attendance-page .admin-attendance-table td{vertical-align:middle}.admin-attendance-page .admin-attendance-actions-cell{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.admin-attendance-page .admin-attendance-legend{margin-top:10px;line-height:1.6}.admin-attendance-modal-backdrop{position:fixed;inset:0;background:#0000008c;display:flex;align-items:center;justify-content:center;padding:16px;z-index:9999}.admin-attendance-modal{width:min(720px,100%);max-height:90vh;overflow:auto;padding:16px}.admin-attendance-preview-modal{width:min(820px,100%)}.admin-attendance-modal-head{display:flex;align-items:center;gap:8px}.admin-attendance-modal-head h2{flex:1}.admin-attendance-modal-actions{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap;align-items:center}.admin-attendance-sign-canvas-wrap{margin-top:12px;border:1px solid rgba(0,0,0,.12);border-radius:12px;overflow:hidden;background:#fafafa;height:260px}.admin-attendance-sign-canvas{width:100%;height:100%;display:block;touch-action:none}.admin-attendance-preview-box{margin-top:12px}.admin-attendance-preview-img{width:100%;max-width:760px;height:auto;border:1px solid rgba(0,0,0,.12);border-radius:12px;background:#fff;display:block}@media(max-width:900px){.admin-attendance-page .admin-attendance-toolbar{align-items:stretch}.admin-attendance-page .admin-attendance-toolbar .btn-secondary,.admin-attendance-page .admin-attendance-toolbar .btn-primary{flex:1 1 auto}.admin-attendance-page .admin-attendance-actions-cell{min-width:220px}}@media(max-width:640px){.admin-attendance-page .admin-attendance-card,.admin-attendance-page .admin-attendance-modal{padding:14px}.admin-attendance-page .admin-attendance-sign-canvas-wrap{height:220px}}.admin-attendance-proof-page .admin-proof-hero-actions{margin-top:16px;display:flex;gap:8px;flex-wrap:wrap;align-items:center}.admin-attendance-proof-page .admin-proof-spacer{flex:1}.admin-attendance-proof-page .admin-proof-signature-loading{margin-top:10px}.admin-attendance-proof-page .admin-proof-card{padding:16px}.admin-attendance-proof-page .admin-proof-top{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.admin-attendance-proof-page .admin-proof-title{margin:0}.admin-attendance-proof-page .admin-proof-meta{margin-top:6px;line-height:1.55}.admin-attendance-proof-page .admin-proof-top-right{text-align:right}.admin-attendance-proof-page .admin-proof-closed-banner{margin-top:12px;padding:10px 12px;border-radius:12px;background:#0f172a0f;border:1px solid rgba(15,23,42,.08)}.admin-attendance-proof-page .admin-proof-separator{margin:16px 0}.admin-attendance-proof-page .admin-proof-slot-block{margin-bottom:18px}.admin-attendance-proof-page .admin-proof-slot-header{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.admin-attendance-proof-page .admin-proof-table-wrap{overflow-x:auto;margin-top:10px}.admin-attendance-proof-page .admin-proof-table{width:100%}.admin-attendance-proof-page .trainer-cell{min-width:220px}.admin-attendance-proof-page .sig-cell{min-width:260px}.admin-attendance-proof-page .signature-img{display:block;max-height:70px;max-width:240px;width:auto;height:auto;border:1px solid rgba(0,0,0,.12);border-radius:10px;background:#fff}.admin-attendance-proof-page .admin-proof-bottom-meta{font-size:12px}.admin-attendance-proof-page .admin-proof-breakall{word-break:break-all}.admin-attendance-proof-page .admin-proof-hash-label{margin-top:10px}@media(max-width:900px){.admin-attendance-proof-page .admin-proof-top-right{text-align:left}}@media print{.no-print{display:none!important}.print-wrap{padding:0!important}.card{box-shadow:none!important;border:none!important}body{background:#fff!important}table{page-break-inside:avoid}.slot-block{page-break-inside:avoid;margin-bottom:18px}.sig-cell{min-width:260px}.trainer-cell{min-width:220px}}.admin-attendance-proof-center-page .admin-proof-hero-actions{margin-top:16px;display:flex;gap:8px;flex-wrap:wrap;align-items:center}.admin-attendance-proof-center-page .admin-proof-spacer{flex:1}.admin-attendance-proof-center-page .admin-proof-card{padding:16px;margin-bottom:14px}.admin-attendance-proof-center-page .admin-proof-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}.admin-attendance-proof-center-page .admin-proof-subgrid{margin-top:12px;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}.admin-attendance-proof-center-page .admin-proof-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px;align-items:center}.admin-attendance-proof-center-page .admin-proof-help{margin-top:6px;line-height:1.45}.admin-attendance-proof-center-page .admin-proof-title{margin-top:0;margin-bottom:12px;font-size:1.1rem}.admin-attendance-proof-center-page .admin-proof-list{margin:0;padding-left:18px;line-height:1.6}.admin-attendance-proof-center-page .admin-proof-list li+li{margin-top:6px}@media(max-width:768px){.admin-attendance-proof-center-page .admin-proof-card{padding:14px}.admin-attendance-proof-center-page .admin-proof-actions{align-items:stretch}.admin-attendance-proof-center-page .admin-proof-actions .btn-primary,.admin-attendance-proof-center-page .admin-proof-actions .btn-secondary{width:100%}.admin-attendance-proof-center-page .admin-proof-spacer{display:none}}.admin-attendance-proof-multi-page .admin-proof-multi-hero-actions{margin-top:16px;display:flex;gap:8px;flex-wrap:wrap;align-items:center}.admin-attendance-proof-multi-page .admin-proof-multi-spacer{flex:1}.admin-attendance-proof-multi-page .admin-proof-multi-loading-signatures{margin-top:10px}.admin-attendance-proof-multi-page .admin-proof-multi-card{padding:16px}.admin-attendance-proof-multi-page .admin-proof-multi-top{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.admin-attendance-proof-multi-page .admin-proof-multi-title{margin:0}.admin-attendance-proof-multi-page .admin-proof-multi-meta{margin-top:6px;line-height:1.55}.admin-attendance-proof-multi-page .admin-proof-multi-top-right{text-align:right}.admin-attendance-proof-multi-page .admin-proof-multi-summary{margin-top:10px}.admin-attendance-proof-multi-page .admin-proof-multi-separator{margin:16px 0}.admin-attendance-proof-multi-page .admin-proof-multi-day-block{margin-bottom:18px}.admin-attendance-proof-multi-page .admin-proof-multi-day-header,.admin-attendance-proof-multi-page .admin-proof-multi-slot-header{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.admin-attendance-proof-multi-page .admin-proof-multi-slot-block{margin-top:12px}.admin-attendance-proof-multi-page .admin-proof-multi-table-wrap{overflow-x:auto;margin-top:10px}.admin-attendance-proof-multi-page .admin-proof-multi-table{width:100%}.admin-attendance-proof-multi-page .admin-proof-multi-proof-meta{font-size:12px}.admin-attendance-proof-multi-page .admin-proof-multi-breakall{word-break:break-all}.admin-attendance-proof-multi-page .admin-proof-multi-hash-label{margin-top:10px}.admin-attendance-proof-multi-page .sig-cell{min-width:260px}.admin-attendance-proof-multi-page .trainer-cell{min-width:220px}.admin-attendance-proof-multi-page .signature-img{display:block;max-height:70px;max-width:240px;width:auto;height:auto;border:1px solid rgba(0,0,0,.12);border-radius:10px;background:#fff}@media(max-width:900px){.admin-attendance-proof-multi-page .admin-proof-multi-top-right{text-align:left}}@media print{.no-print{display:none!important}.print-wrap{padding:0!important}.card{box-shadow:none!important;border:none!important}body{background:#fff!important}table,.day-block,.slot-block{page-break-inside:avoid}.sig-cell{min-width:260px}.trainer-cell{min-width:220px}}.admin-sessions-page{--as-border: #e5e7eb;--as-border-soft: #eef2f7;--as-bg-soft: #f8fafc;--as-bg-soft-2: #f1f5f9;--as-text: #0f172a;--as-muted: #64748b;--as-primary: #003366;--as-primary-2: #0b4d88;--as-accent: #ff8a00;--as-danger: #dc2626;--as-success: #16a34a;--as-shadow: 0 10px 30px rgba(15, 23, 42, .08);--as-radius: 16px;--as-radius-sm: 12px}.admin-sessions-page .admin-page-container{max-width:1280px}.admin-sessions-page .admin-page-hero{margin-bottom:18px}.admin-sessions-page .admin-page-title{margin:10px 0 8px}.admin-sessions-page .admin-page-subtitle{max-width:840px}.admin-sessions-page .admin-toolbar-card,.admin-sessions-page .admin-tabs-card,.admin-sessions-page .admin-feedback-card{background:#fff;border:1px solid var(--as-border);border-radius:var(--as-radius);box-shadow:var(--as-shadow)}.admin-sessions-page .admin-toolbar-card{padding:18px 20px}.admin-sessions-page .admin-tabs-card{padding:10px 12px}.admin-sessions-page .admin-feedback-card{padding:14px 16px}.admin-sessions-page .admin-toolbar-top{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}.admin-sessions-page .admin-section-title{margin:0 0 4px;font-size:20px;font-weight:900;color:var(--as-text)}.admin-sessions-page .admin-section-subtitle{margin:0;font-size:14px;color:var(--as-muted)}.admin-sessions-page .admin-toolbar-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.admin-sessions-page .card{border:1px solid var(--as-border);border-radius:var(--as-radius);background:#fff;box-shadow:var(--as-shadow);padding:18px}.admin-sessions-page .card-title{font-size:18px;font-weight:900;color:var(--as-text)}.admin-sessions-page .input,.admin-sessions-page select.input,.admin-sessions-page input.input{width:100%;min-height:44px;border:1px solid var(--as-border);border-radius:12px;padding:10px 12px;background:#fff;color:var(--as-text);font-size:14px;outline:none;transition:border-color .18s ease,box-shadow .18s ease}.admin-sessions-page .input:focus,.admin-sessions-page select.input:focus,.admin-sessions-page input.input:focus{border-color:#0b4d888c;box-shadow:0 0 0 4px #0b4d881f}.admin-sessions-page .btn,.admin-sessions-page .btn-primary,.admin-sessions-page .btn-secondary,.admin-sessions-page .btnDanger,.admin-sessions-page .btn-danger{appearance:none;border:none;border-radius:999px;min-height:42px;padding:10px 16px;font-size:14px;font-weight:800;cursor:pointer;transition:transform .15s ease,box-shadow .18s ease,background-color .18s ease,color .18s ease,border-color .18s ease}.admin-sessions-page .btn:hover,.admin-sessions-page .btn-primary:hover,.admin-sessions-page .btn-secondary:hover,.admin-sessions-page .btnDanger:hover,.admin-sessions-page .btn-danger:hover{transform:translateY(-1px)}.admin-sessions-page .btn,.admin-sessions-page .btn-primary{background:var(--as-accent);color:#fff;box-shadow:0 10px 18px #ff8a0038}.admin-sessions-page .btn:hover,.admin-sessions-page .btn-primary:hover{background:#f57c00}.admin-sessions-page .btn-secondary{background:#fff;color:var(--as-primary);border:1px solid rgba(0,51,102,.16)}.admin-sessions-page .btn-secondary:hover{background:#f8fbff}.admin-sessions-page .btnDanger,.admin-sessions-page .btn-danger{background:#fff1f2;color:var(--as-danger);border:1px solid rgba(220,38,38,.18)}.admin-sessions-page .btnDanger:hover,.admin-sessions-page .btn-danger:hover{background:#ffe4e6}.admin-sessions-page .btn:disabled,.admin-sessions-page .btn-primary:disabled,.admin-sessions-page .btn-secondary:disabled,.admin-sessions-page .btnDanger:disabled,.admin-sessions-page .btn-danger:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}.admin-sessions-page .tabs-row{display:flex;gap:10px;flex-wrap:wrap}.admin-sessions-page .tab-btn{appearance:none;border:1px solid var(--as-border);background:#fff;color:var(--as-text);border-radius:999px;padding:10px 16px;min-height:42px;font-size:14px;font-weight:800;cursor:pointer;transition:background-color .18s ease,color .18s ease,border-color .18s ease,transform .15s ease}.admin-sessions-page .tab-btn:hover{background:#f8fafc;transform:translateY(-1px)}.admin-sessions-page .tab-btn.active{background:linear-gradient(135deg,var(--as-primary) 0%,var(--as-primary-2) 100%);color:#fff;border-color:transparent}.admin-sessions-page .muted{color:var(--as-muted)}.admin-sessions-page .warn{border:1px dashed #cbd5e1;background:#f8fafc;color:var(--as-muted);border-radius:12px;padding:12px 14px}.admin-sessions-page .alert-error,.admin-sessions-page .admin-error-text{border:1px solid rgba(220,38,38,.18);background:#fff1f2;color:#b91c1c;border-radius:12px;padding:12px 14px;font-weight:800}.admin-sessions-page .grid2,.admin-sessions-page .grid-2{display:grid;gap:18px}.admin-sessions-page .grid2{grid-template-columns:minmax(320px,420px) minmax(0,1fr);align-items:start}.admin-sessions-page .grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-sessions-page .row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid var(--as-border-soft);border-radius:12px;background:#fff}.admin-sessions-page .list{display:grid;gap:10px;margin-top:12px}.admin-sessions-page .admin-sessions-list-head{display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap}.admin-sessions-page .admin-sessions-searchbar{margin-top:12px;display:flex;gap:10px;align-items:center}.admin-sessions-page .admin-sessions-pagination-top{margin-top:12px;display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.admin-sessions-page .admin-sessions-item-title{font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-sessions-page .listItem{appearance:none;width:100%;border:1px solid var(--as-border);border-radius:14px;background:#fff;padding:14px;display:flex;justify-content:space-between;align-items:center;gap:14px;text-align:left;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease,transform .15s ease}.admin-sessions-page .listItem:hover{background:#f8fbff;border-color:#0b4d882e;box-shadow:0 8px 20px #0f172a0f;transform:translateY(-1px)}.admin-sessions-page .listItem.active{background:linear-gradient(180deg,#eff6ff,#fff);border-color:#0b4d8852;box-shadow:0 10px 24px #0b4d881f}.admin-sessions-page .admin-sessions-panel-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap}.admin-sessions-page .admin-sessions-panel-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.admin-sessions-page .admin-sessions-detail-title{font-size:20px;font-weight:900;color:var(--as-text)}.admin-sessions-page .admin-sessions-subcard{background:linear-gradient(180deg,#fbfdff,#f8fafc)}.admin-sessions-page .admin-sessions-subcard-head{display:flex;justify-content:space-between;gap:10px;align-items:center}.admin-sessions-page .admin-sessions-mini-title{font-weight:900;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-sessions-page .admin-sessions-addbar{display:flex;gap:10px;align-items:center}.admin-sessions-page .admin-sessions-actions-line{margin-top:12px;display:flex;gap:10px;flex-wrap:wrap}.admin-sessions-page .card[style*="background: #f9fafb"]{border:1px solid var(--as-border);background:linear-gradient(180deg,#fbfdff,#f8fafc)!important}.admin-sessions-page .row>div:first-child{min-width:0}.admin-sessions-modal-backdrop{position:fixed;inset:0;background:#0206178c;display:flex;align-items:center;justify-content:center;z-index:9999;padding:16px}.admin-sessions-modal{width:min(820px,100%);max-height:85vh;overflow:auto}.admin-sessions-modal-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.admin-sessions-modal-body{margin-top:12px}@media(max-width:1100px){.admin-sessions-page .grid2{grid-template-columns:1fr}}@media(max-width:780px){.admin-sessions-page .grid-2{grid-template-columns:1fr}.admin-sessions-page .admin-toolbar-top{align-items:stretch}.admin-sessions-page .admin-toolbar-actions{width:100%}.admin-sessions-page .admin-sessions-searchbar,.admin-sessions-page .admin-sessions-addbar{flex-direction:column;align-items:stretch}.admin-sessions-page .tabs-row{display:grid;grid-template-columns:1fr}.admin-sessions-page .tab-btn{width:100%}.admin-sessions-page .listItem,.admin-sessions-page .row{flex-direction:column;align-items:flex-start}}@media(max-width:560px){.admin-sessions-page .card,.admin-sessions-page .admin-toolbar-card,.admin-sessions-page .admin-tabs-card{padding:14px}.admin-sessions-page .btn,.admin-sessions-page .btn-primary,.admin-sessions-page .btn-secondary,.admin-sessions-page .btnDanger,.admin-sessions-page .btn-danger{width:100%;justify-content:center}.admin-sessions-page .admin-toolbar-actions,.admin-sessions-page .admin-sessions-panel-actions,.admin-sessions-page .admin-sessions-actions-line{display:grid;grid-template-columns:1fr;width:100%}.admin-sessions-page .admin-sessions-list-head,.admin-sessions-page .admin-sessions-pagination-top,.admin-sessions-page .admin-sessions-subcard-head,.admin-sessions-page .admin-sessions-panel-head,.admin-sessions-modal-head{align-items:stretch}}.aus-page{min-height:100vh;background:radial-gradient(circle at top left,rgba(245,124,0,.08),transparent 26%),linear-gradient(180deg,#f8fafc,#eef2f7);padding:24px 14px 40px}.aus-container{max-width:1280px;margin:0 auto}.aus-hero{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;flex-wrap:wrap;margin-bottom:18px}.aus-hero-main{min-width:0}.aus-badge{display:inline-flex;align-items:center;padding:7px 12px;border-radius:999px;background:#f57c001f;color:#b45309;font-size:12px;font-weight:800;margin-bottom:10px}.aus-hero h1{margin:0 0 8px;font-size:clamp(28px,4vw,42px);line-height:1.04;color:#0f172a;letter-spacing:-.03em}.aus-hero p{margin:0;color:#475569;max-width:760px;line-height:1.5}.aus-hero-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.aus-summary{display:grid;grid-template-columns:repeat(4,minmax(180px,1fr));gap:14px;margin-bottom:18px}.aus-summary-card{background:#ffffffe0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(226,232,240,.95);border-radius:18px;padding:16px;box-shadow:0 12px 30px #0f172a0d}.aus-summary-card strong{display:block;font-size:22px;color:#0f172a;margin-top:6px}.aus-summary-label{display:block;font-size:12px;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.04em}.aus-toolbar{display:grid;grid-template-columns:minmax(260px,1fr) 260px auto;gap:12px;align-items:end;margin-bottom:16px;background:#ffffffe0;border:1px solid rgba(226,232,240,.95);border-radius:18px;padding:14px;box-shadow:0 12px 30px #0f172a0d}.aus-toolbar-search,.aus-toolbar-sort{display:flex;flex-direction:column;gap:6px}.aus-toolbar label{font-size:12px;font-weight:800;color:#64748b;text-transform:uppercase;letter-spacing:.04em}.aus-toolbar input,.aus-toolbar select{width:100%;padding:11px 12px;border-radius:12px;border:1px solid #dbe2ea;background:#fff;color:#0f172a;font-size:14px;box-sizing:border-box}.aus-toolbar input:focus,.aus-toolbar select:focus{outline:none;border-color:#f57c0099;box-shadow:0 0 0 4px #f57c001f}.aus-toggle{display:inline-flex;align-items:center;gap:10px;font-size:14px;font-weight:700;color:#0f172a;padding:12px 14px;border-radius:14px;background:#f8fafcf2;border:1px solid #e2e8f0;align-self:stretch;justify-content:center}.aus-toggle input{width:auto;margin:0}.aus-alert{border-radius:14px;padding:12px 14px;margin-bottom:14px;font-weight:700}.aus-alert-error{background:#ef444414;border:1px solid rgba(239,68,68,.18);color:#991b1b}.aus-alert-success{background:#22c55e1a;border:1px solid rgba(34,197,94,.18);color:#166534}.aus-state,.aus-empty{background:#ffffffe0;border:1px solid rgba(226,232,240,.95);border-radius:18px;padding:18px;box-shadow:0 12px 30px #0f172a0d}.aus-empty h2{margin:0 0 6px;font-size:20px;color:#0f172a}.aus-empty p,.aus-state{margin:0;color:#475569}.aus-table-wrap{overflow-x:auto;background:#ffffffeb;border:1px solid rgba(226,232,240,.95);border-radius:20px;box-shadow:0 16px 38px #0f172a0f}.aus-table{width:100%;border-collapse:collapse;min-width:1240px}.aus-table thead th{text-align:left;font-size:13px;font-weight:800;color:#334155;padding:14px 16px;background:#f8fafc;border-bottom:1px solid #e2e8f0;white-space:nowrap}.aus-table tbody td{padding:14px 16px;border-bottom:1px solid #eef2f7;vertical-align:middle;color:#0f172a}.aus-table tbody tr:hover{background:#94a3b80f}.aus-table tbody tr:last-child td{border-bottom:0}.aus-th-actions,.aus-td-actions{text-align:right}.aus-td-actions{white-space:nowrap}.aus-cell-primary{font-weight:800}.aus-cell-primary code,.aus-mobile-title code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;background:#0f172a0f;padding:4px 8px;border-radius:8px;color:#0f172a}.aus-cell-sub{display:block;margin-top:4px;font-size:12px;color:#64748b}.aus-user-agent{max-width:360px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.aus-status{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:999px;font-size:12px;font-weight:800}.aus-status.is-active{background:#22c55e1f;color:#166534}.aus-status.is-inactive{background:#94a3b824;color:#334155}.aus-inline-badges{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.aus-mini-badge{display:inline-flex;align-items:center;padding:5px 8px;border-radius:999px;font-size:11px;font-weight:800}.aus-mini-badge.is-newest{background:#f57c001f;color:#b45309}.aus-mini-badge.is-copied{background:#3b82f61f;color:#1d4ed8}.aus-activity-dot{display:inline-flex;align-items:center;gap:8px;font-weight:700}.aus-dot{width:9px;height:9px;border-radius:999px;display:inline-block;box-shadow:0 0 0 5px #94a3b814}.aus-activity-dot.live .aus-dot{background:#16a34a;box-shadow:0 0 0 5px #16a34a1f}.aus-activity-dot.recent .aus-dot{background:#f59e0b;box-shadow:0 0 0 5px #f59e0b24}.aus-activity-dot.stale .aus-dot{background:#94a3b8;box-shadow:0 0 0 5px #94a3b81f}.aus-btn{appearance:none;border:0;border-radius:12px;padding:11px 15px;font-weight:800;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,opacity .15s ease;text-decoration:none}.aus-btn:hover:not(:disabled){transform:translateY(-1px)}.aus-btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.aus-btn-sm{padding:9px 12px;border-radius:10px;font-size:13px}.aus-btn-secondary{background:#fff;color:#0f172a;border:1px solid #dbe2ea;box-shadow:0 8px 20px #0f172a0d}.aus-btn-danger{background:linear-gradient(135deg,#dc2626,#b91c1c);color:#fff;box-shadow:0 12px 24px #b91c1c38}.aus-mobile-list{display:none}.aus-mobile-card{background:#ffffffeb;border:1px solid rgba(226,232,240,.95);border-radius:18px;padding:14px;box-shadow:0 12px 30px #0f172a0d}.aus-mobile-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:12px}.aus-mobile-title{font-weight:900;color:#0f172a}.aus-mobile-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}.aus-mobile-grid strong,.aus-mobile-agent strong{display:block;color:#0f172a;margin-top:4px}.aus-mobile-label{display:block;font-size:12px;font-weight:800;color:#64748b;text-transform:uppercase;letter-spacing:.04em}.aus-mobile-agent{margin-bottom:14px}.aus-mobile-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.form-error{color:#b91c1c;font-weight:700}@media(max-width:1100px){.aus-summary{grid-template-columns:repeat(2,minmax(180px,1fr))}.aus-toolbar{grid-template-columns:1fr 1fr}.aus-toggle{grid-column:1 / -1}}@media(max-width:980px){.aus-table-wrap{display:none}.aus-mobile-list{display:grid;gap:12px}}@media(max-width:720px){.aus-summary,.aus-toolbar,.aus-mobile-grid{grid-template-columns:1fr}.aus-hero-actions{width:100%}.aus-hero-actions .aus-btn{flex:1 1 100%}.aus-page{padding:18px 10px 30px}}.admin-users-page{display:flex;flex-direction:column;gap:16px}.admin-users-page__hero{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap;padding:18px 20px;border-radius:18px;background:linear-gradient(135deg,#0f172af5,#1e293beb);color:#fff;box-shadow:0 12px 30px #0206172e}.admin-users-page__hero h1{margin:0;font-size:1.65rem;font-weight:800;line-height:1.15}.admin-users-page__hero p{margin:6px 0 0;color:#ffffffd1;max-width:720px}.admin-users-page__hero-actions{display:flex;gap:10px;flex-wrap:wrap}.admin-users-page__grid{display:grid;grid-template-columns:minmax(340px,440px) minmax(0,1fr);gap:16px;align-items:start}.admin-users-card{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:18px;padding:18px;box-shadow:0 10px 24px #0f172a0f}.admin-users-card--left{position:sticky;top:18px}.admin-users-card h2{margin:0 0 14px;font-size:1.08rem;font-weight:800;color:#0f172a}.admin-users-page__filters-actions,.admin-users-page__form-actions,.admin-users-page__pagination{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.admin-users-page__filters-actions{margin-top:10px}.admin-users-page__form-actions{margin-top:16px;padding-top:4px}.admin-users-page__pagination{justify-content:flex-end;margin-top:16px}.admin-users-page__sep{margin:18px 0;opacity:.18;border:none;border-top:1px solid rgba(15,23,42,.12)}.admin-users-page__table-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;flex-wrap:wrap}.admin-users-page__table-head .muted{margin-top:4px}.admin-users-page__form-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;flex-wrap:wrap}.admin-users-page__form-header h2{margin-bottom:4px}.admin-users-form-section{border:1px solid rgba(15,23,42,.08);border-radius:14px;background:linear-gradient(180deg,#f8fafccc,#fff);padding:14px;margin-bottom:14px}.admin-users-form-section__title{font-size:.98rem;font-weight:800;color:#0f172a;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid rgba(15,23,42,.08)}.admin-users-form-section__body{display:flex;flex-direction:column;gap:0}.admin-users-page .form-row{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.admin-users-page .form-row:last-child{margin-bottom:0}.admin-users-page .form-row label{font-size:.92rem;font-weight:700;color:#334155}.admin-users-page input,.admin-users-page select,.admin-users-page textarea{width:100%;border:1px solid rgba(15,23,42,.12);border-radius:12px;padding:11px 12px;font-size:.95rem;color:#0f172a;background:#fff;outline:none;transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease;box-sizing:border-box}.admin-users-page input:focus,.admin-users-page select:focus,.admin-users-page textarea:focus{border-color:#2563eb8c;box-shadow:0 0 0 4px #2563eb1a}.admin-users-page textarea{resize:vertical;min-height:90px}.admin-users-page input::placeholder,.admin-users-page textarea::placeholder{color:#94a3b8}.admin-users-table-wrap{overflow-x:auto;border:1px solid rgba(15,23,42,.08);border-radius:14px;background:#fff}.admin-users-table{width:100%;border-collapse:collapse;min-width:1120px;background:#fff}.admin-users-table thead tr{background:#0f172a0a}.admin-users-table th,.admin-users-table td{text-align:left;padding:12px 10px;vertical-align:top}.admin-users-table th{font-size:.92rem;font-weight:800;color:#0f172a;white-space:nowrap}.admin-users-table td{border-top:1px solid rgba(15,23,42,.06);color:#1e293b;font-size:.95rem}.admin-users-table tbody tr:hover{background:#f8fafce6}.admin-users-table__name{display:flex;flex-direction:column;gap:4px}.admin-users-table__name strong{color:#0f172a}.admin-users-table__name span{font-size:.84rem;color:#64748b}.admin-users-table__actions{display:flex;gap:8px;flex-wrap:wrap}.admin-users-badge{display:inline-flex;align-items:center;justify-content:center;padding:5px 10px;border-radius:999px;font-size:.82rem;font-weight:800;white-space:nowrap}.admin-users-badge--active{background:#22c55e1f;color:#15803d}.admin-users-badge--pending_payment,.admin-users-badge--pending_assignment{background:#f59e0b24;color:#b45309}.admin-users-badge--suspended{background:#ef44441f;color:#b91c1c}.admin-users-page .btn,.admin-users-page .btn-primary,.admin-users-page .btn-secondary,.admin-users-page .btn-danger{white-space:nowrap}@media(max-width:1280px){.admin-users-card--left{position:static;top:auto}}@media(max-width:1100px){.admin-users-page__grid{grid-template-columns:1fr}.admin-users-card--left{position:static;top:auto}}@media(max-width:768px){.admin-users-page__form-header,.admin-users-page__table-head,.admin-users-page__hero{flex-direction:column;align-items:stretch}.admin-users-page__hero-actions,.admin-users-page__filters-actions,.admin-users-page__form-actions,.admin-users-page__pagination{width:100%}.admin-users-page__pagination{justify-content:space-between}}@media(max-width:640px){.admin-users-page__hero{padding:16px;border-radius:14px}.admin-users-card{padding:14px;border-radius:14px}.admin-users-form-section{padding:12px;border-radius:12px}.admin-users-page__hero h1{font-size:1.35rem}.admin-users-table{min-width:980px}}.ard-page{min-height:100vh;background:#f6f8fb;color:#14213d}.ard-container{max-width:1280px;margin:0 auto;padding:24px}.ard-hero{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:22px;padding:24px;border-radius:20px;background:linear-gradient(135deg,#14213d,#1f3b73);color:#fff;box-shadow:0 14px 30px #14213d29}.ard-hero h1{margin:0 0 8px;font-size:1.9rem}.ard-hero p{margin:0 0 10px;color:#ffffffeb}.ard-hero-meta{display:flex;flex-wrap:wrap;gap:14px;font-size:.92rem;color:#ffffffdb}.ard-hero-actions{display:flex;gap:10px;flex-wrap:wrap}.ard-select,.ard-btn{min-height:42px;border-radius:12px;font-size:.95rem}.ard-select{min-width:180px;border:1px solid #d7dfec;padding:0 12px}.ard-btn{border:none;padding:0 14px;background:#ff8a00;color:#fff;font-weight:700;cursor:pointer}.ard-btn:hover{filter:brightness(1.03)}.ard-feedback,.ard-loading,.ard-empty{background:#fff;border:1px solid #e5eaf3;border-radius:16px;padding:18px;box-shadow:0 10px 20px #14213d0a}.ard-feedback.error{color:#991b1b;background:#fef2f2;border-color:#fecaca}.ard-health{display:grid;grid-template-columns:repeat(2,minmax(240px,1fr));gap:16px;margin-bottom:20px}.ard-health-card,.ard-kpi-card,.ard-panel{background:#fff;border:1px solid #e5eaf3;border-radius:16px;box-shadow:0 10px 20px #14213d0a}.ard-health-card{padding:20px}.ard-health-label{color:#64748b;margin-bottom:8px}.ard-health-value{font-size:2rem;font-weight:800;margin-bottom:8px}.ard-health-status{display:inline-flex;align-items:center;min-height:30px;padding:0 12px;border-radius:999px;font-weight:700;text-transform:capitalize}.ard-health-status.excellent,.ard-health-status.good{background:#ecfdf5;color:#166534}.ard-health-status.warning{background:#fffbeb;color:#b45309}.ard-health-status.critical{background:#fef2f2;color:#b91c1c}.ard-health-status.neutral{background:#eff6ff;color:#1d4ed8}.ard-section{margin-bottom:22px}.ard-section-head{margin-bottom:10px}.ard-section-head h2,.ard-panel-head h3{margin:0}.ard-kpis{display:grid;grid-template-columns:repeat(3,minmax(220px,1fr));gap:16px}.ard-kpi-card{padding:18px}.ard-kpi-title{color:#64748b;margin-bottom:10px;font-size:.95rem}.ard-kpi-value{font-size:1.7rem;font-weight:800;color:#14213d;margin-bottom:10px}.ard-kpi-footer{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}.ard-kpi-subtitle{color:#64748b;font-size:.88rem}.ard-variation{font-weight:700;font-size:.9rem}.ard-variation.up{color:#15803d}.ard-variation.down{color:#b91c1c}.ard-variation.neutral{color:#475569}.ard-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:22px}.ard-panel{padding:18px}.ard-panel-head{margin-bottom:14px}.ard-alerts,.ard-problems{display:flex;flex-direction:column;gap:12px}.ard-alert{border:1px solid #e5eaf3;border-left:5px solid #cbd5e1;border-radius:14px;padding:14px;background:#fff}.ard-alert.level-critical{border-left-color:#dc2626}.ard-alert.level-warning{border-left-color:#f59e0b}.ard-alert.level-info{border-left-color:#2563eb}.ard-alert-top{display:flex;justify-content:space-between;gap:8px;margin-bottom:8px}.ard-alert p{margin:0 0 10px;color:#334155}.ard-alert a{color:#2563eb;font-weight:700;text-decoration:none}.ard-alert a:hover{text-decoration:underline}.ard-problem-row{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;padding:12px 0;border-bottom:1px solid #eef2f7}.ard-problem-row:last-child{border-bottom:none}.ard-problem-title{font-weight:700;margin-bottom:4px}.ard-problem-msg{color:#475569}.ard-problem-level{min-width:110px;text-align:right;font-weight:700}.ard-problem-level.critical{color:#b91c1c}.ard-problem-level.warning{color:#b45309}.ard-problem-level.info{color:#1d4ed8}.ard-table{display:flex;flex-direction:column;gap:8px}.ard-table-head,.ard-table-row{display:grid;grid-template-columns:1.6fr .8fr .8fr;gap:12px;align-items:center}.ard-table-head{font-weight:800;color:#475569;padding-bottom:8px;border-bottom:1px solid #e5eaf3}.ard-table-row{padding:10px 0;border-bottom:1px solid #f1f5f9}.ard-table-row:last-child{border-bottom:none}@media(max-width:1100px){.ard-kpis{grid-template-columns:repeat(2,minmax(220px,1fr))}.ard-grid-2,.ard-health{grid-template-columns:1fr}.ard-hero{flex-direction:column}}@media(max-width:720px){.ard-container{padding:16px}.ard-kpis,.ard-table-head,.ard-table-row{grid-template-columns:1fr}.ard-alert-top,.ard-problem-row,.ard-kpi-footer{flex-direction:column;align-items:flex-start}}.admin-portfolio-page{min-height:100vh;padding-bottom:40px}.admin-portfolio-hero{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:24px;padding:24px;border-radius:24px;background:linear-gradient(135deg,#2563eb2e,#0f172ae0),#0f172a;border:1px solid rgba(255,255,255,.08)}.admin-portfolio-hero h1{margin:0 0 8px;font-size:32px;font-weight:800;color:#fff}.admin-portfolio-hero p{margin:0;max-width:820px;color:#ffffffbd;line-height:1.55}.admin-portfolio-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px;margin-bottom:20px}.admin-portfolio-stat-card{padding:16px 18px;border-radius:18px;background:#111827;border:1px solid rgba(255,255,255,.07)}.admin-portfolio-stat-label{font-size:12px;color:#ffffff9e;margin-bottom:6px}.admin-portfolio-stat-value{font-size:26px;font-weight:800;color:#fff}.admin-portfolio-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-bottom:18px;padding:18px;border-radius:20px;background:#0f172a;border:1px solid rgba(255,255,255,.07)}.admin-portfolio-filter{display:grid;gap:6px}.admin-portfolio-filter label{font-size:12px;color:#ffffffa8}.admin-portfolio-filter input,.admin-portfolio-filter select{height:42px;border-radius:12px;border:1px solid rgba(255,255,255,.08);background:#111827;color:#fff;padding:0 12px}.admin-portfolio-filter-actions{align-content:end}.admin-portfolio-error,.admin-portfolio-empty{padding:18px 20px;border-radius:18px;margin-bottom:18px}.admin-portfolio-error{background:#7f1d1d52;color:#fecaca;border:1px solid rgba(248,113,113,.2)}.admin-portfolio-empty{background:#ffffff0a;color:#e5e7eb}.admin-portfolio-list{display:grid;gap:18px}.admin-portfolio-card{border-radius:22px;padding:20px;background:linear-gradient(180deg,#111827,#0b1220);border:1px solid rgba(255,255,255,.08)}.admin-portfolio-card-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:12px}.admin-portfolio-card-main h3{margin:0 0 8px;color:#fff;font-size:20px}.admin-portfolio-meta{display:flex;gap:10px 16px;flex-wrap:wrap;font-size:12px;color:#fff9}.admin-portfolio-badges{display:flex;gap:8px;flex-wrap:wrap}.admin-portfolio-badge{display:inline-flex;align-items:center;padding:6px 11px;border-radius:999px;font-size:12px;font-weight:700}.admin-portfolio-badge.status-public{background:#16a34a2e;color:#86efac}.admin-portfolio-badge.status-private{background:#64748b2e;color:#cbd5e1}.admin-portfolio-badge.status-suspended{background:#b91c1c2e;color:#fca5a5}.admin-portfolio-badge.featured{background:#f59e0b29;color:#fcd34d}.admin-portfolio-summary{margin-bottom:14px;color:#ffffffd1;line-height:1.55}.admin-portfolio-meta-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-bottom:16px}.admin-portfolio-meta-grid div{display:grid;gap:4px;padding:12px;border-radius:14px;background:#ffffff0a}.admin-portfolio-meta-grid strong{font-size:12px;color:#ffffff94}.admin-portfolio-meta-grid span{font-size:13px;color:#fff;word-break:break-word}.admin-portfolio-actions{display:flex;gap:10px;flex-wrap:wrap}.admin-portfolio-btn{border:none;border-radius:14px;padding:10px 14px;cursor:pointer;font-size:13px;font-weight:700;color:#fff}.admin-portfolio-btn.primary{background:linear-gradient(135deg,#2563eb,#1d4ed8)}.admin-portfolio-btn.secondary{background:#475569}.admin-portfolio-btn.success{background:linear-gradient(135deg,#16a34a,#15803d)}.admin-portfolio-btn.warning{background:linear-gradient(135deg,#b45309,#92400e)}.admin-portfolio-btn.dark{background:#1f2937}@media(max-width:768px){.admin-portfolio-hero{flex-direction:column;align-items:stretch}.admin-portfolio-card-header{flex-direction:column}}.admin-portfolio-suspension-box{margin-top:16px;display:grid;gap:8px}.admin-portfolio-suspension-box label{font-size:13px;font-weight:600;color:#cbd5e1}.admin-portfolio-reason-input{width:100%;min-height:88px;resize:vertical;border-radius:12px;border:1px solid rgba(148,163,184,.22);background:#0f172ab3;color:#fff;padding:12px 14px;font-size:14px;outline:none}.admin-portfolio-reason-input:focus{border-color:#3b82f68c;box-shadow:0 0 0 3px #3b82f61f}*,*:before,*:after{box-sizing:border-box}html,body,#root{margin:0;padding:0;width:100%;min-width:100%;min-height:100%}body{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;background-color:#fff;color:#213547;text-align:left}a{font-weight:500;color:inherit;text-decoration:none}a:hover{text-decoration:underline}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;cursor:pointer;transition:border-color .25s,background-color .25s}button:focus,button:focus-visible{outline:3px auto -webkit-focus-ring-color}.app-layout{min-height:100vh;display:flex;flex-direction:column}.main-content{flex:1;padding-top:0}.page{max-width:1100px;margin:0 auto;padding:32px 16px 64px;box-sizing:border-box}.page-hero{margin-bottom:32px}.page-hero h1{font-size:2.4rem;margin:12px 0}.page-hero-subtitle{max-width:720px;font-size:1rem;color:#555}.badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;font-size:.75rem;background:#ffedd5;color:#9a3412;text-transform:uppercase;letter-spacing:.04em}.badge-soft{background:#e0f2fe;color:#075985}.page-section{margin-top:32px}.page-section h2{font-size:1.4rem;margin-bottom:12px}.page-grid-2{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1.3fr);gap:24px}@media(max-width:768px){.page-grid-2{grid-template-columns:1fr}.page{padding:24px 16px 40px}}.card{background:#fff;border-radius:12px;padding:20px 20px 18px;box-shadow:0 10px 25px #0f172a0f;border:1px solid #e5e7eb}.card h3{margin-top:0;margin-bottom:8px}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px}.stats-card{background:#0f172a;color:#f9fafb;border-radius:14px;padding:18px 18px 14px}.stats-card h3{margin-top:0;margin-bottom:14px}.stats-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.stat-value{font-size:1.6rem;font-weight:700;display:block}.stat-label{font-size:.85rem;color:#e5e7eb}.tag-list{list-style:none;padding:0;margin:8px 0 16px;display:flex;flex-wrap:wrap;gap:8px}.tag{padding:4px 10px;border-radius:999px;font-size:.8rem;background:#eff6ff;color:#1d4ed8}.partner-list,.bullet-list{margin:8px 0;padding-left:18px;color:#374151}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px;margin-top:16px}.form-field{display:flex;flex-direction:column;gap:4px;font-size:.9rem}.form-field.full-width{grid-column:1 / -1}.form-field input,.form-field textarea{border-radius:8px;border:1px solid #d1d5db;padding:8px 10px;font-size:.9rem;font-family:inherit}.form-field input:focus,.form-field textarea:focus{outline:none;border-color:#f97316;box-shadow:0 0 0 1px #f97316}.form-actions{grid-column:1 / -1;margin-top:4px}.btn-primary{background:#f97316;color:#fff;border-radius:999px;padding:8px 18px;border:none;font-size:.95rem}.btn-primary:hover{background:#ea580c}.contact-info-card{height:100%}.contact-info-list{list-style:none;padding:0;margin:0;display:grid;gap:12px;font-size:.95rem}.contact-highlight{margin-top:16px;padding:12px 14px;border-radius:10px;background:#fef3c7;border:1px solid #facc15}.mt-small{margin-top:8px}
