:root{--coral: #FA7066;--coral-dark: #D85A30;--coral-light: #FAECE7;--teal: #1D9E75;--teal-dark: #0F6E56;--teal-light: #E1F5EE;--note-1: #E24B4A;--note-2: #BA7517;--note-3: #EF9F27;--note-4: #1D9E75;--note-5: #0F6E56;--acq-ap: #0F6E56;--acq-a: #1D9E75;--acq-bp: #EF9F27;--acq-b: #BA7517;--acq-c: #E24B4A;--bg: #FAFAF7;--surface: #FFFFFF;--surface-2: #F5F4EF;--border: rgba(0, 0, 0, .08);--border-strong: rgba(0, 0, 0, .15);--text: #2C2C2A;--text-secondary: #5F5E5A;--text-tertiary: #888780;--font-sans: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 2px 8px rgba(0, 0, 0, .06)}*{box-sizing:border-box;margin:0;padding:0}html,body{font-family:var(--font-sans);background:var(--bg);color:var(--text);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}a{color:var(--coral);text-decoration:none}a:hover{text-decoration:underline}button{font-family:inherit;cursor:pointer;border:none;background:none;font-size:inherit;color:inherit}input,textarea,select{font-family:inherit;font-size:inherit;color:inherit}.section-label{font-size:11px;font-weight:500;letter-spacing:.05em;text-transform:uppercase;color:var(--text-tertiary);margin-bottom:12px}.card{background:var(--surface);border:.5px solid var(--border);border-radius:var(--radius-lg);padding:1.25rem 1.5rem;margin-bottom:20px}.btn-primary{background:var(--coral);color:#fff;padding:12px 32px;border-radius:var(--radius-md);font-size:14px;font-weight:500;transition:all .15s}.btn-primary:hover{background:var(--coral-dark)}.btn-primary:disabled{background:var(--text-tertiary);cursor:not-allowed}.btn-secondary{background:var(--surface);color:var(--text);border:.5px solid var(--border-strong);padding:10px 24px;border-radius:var(--radius-md);font-size:14px;font-weight:500;transition:all .15s}.btn-secondary:hover{background:var(--surface-2)}input[type=text],input[type=email],input[type=password],input[type=date],select,textarea{width:100%;padding:10px 14px;border:.5px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface);transition:border-color .15s}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--coral);box-shadow:0 0 0 3px #fa70661a}textarea{resize:vertical;min-height:80px}.loading{display:flex;align-items:center;justify-content:center;min-height:50vh;color:var(--text-secondary)}.eval-page{min-height:100vh;padding:2rem 1rem}.eval-container{max-width:1280px;margin:0 auto}.eval-header{text-align:center;margin-bottom:2rem}.eval-header h1{font-size:24px;font-weight:500;color:var(--text);margin-bottom:4px}.eval-header p{color:var(--text-secondary);font-size:14px}.eval-logo{display:inline-block;margin-bottom:1rem}.session-info{background:var(--surface-2);border-radius:var(--radius-lg);padding:1rem 1.5rem;margin-bottom:24px;display:flex;flex-wrap:wrap;gap:24px}.session-info-item{display:flex;flex-direction:column;gap:2px}.session-info-label{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary)}.session-info-value{font-weight:500;color:var(--text)}.grid-card{background:var(--surface);border:.5px solid var(--border);border-radius:var(--radius-lg);padding:1.25rem 1.5rem;margin-bottom:20px}.grid-title{font-size:16px;font-weight:500;margin-bottom:4px}.grid-subtitle{font-size:13px;color:var(--text-secondary);margin-bottom:14px}.scale-bar{display:flex;align-items:center;justify-content:center;gap:8px;font-size:11px;color:var(--text-secondary);margin-bottom:16px;padding:10px 14px;background:var(--surface-2);border-radius:var(--radius-md);flex-wrap:wrap}.scale-end{font-weight:500;color:var(--text)}.scale-arrow{color:var(--text-tertiary);font-size:14px}.eval-table{width:100%;border-collapse:separate;border-spacing:0;font-size:13px}.eval-table th{text-align:left;padding:12px 8px;font-weight:500;color:var(--text-secondary);font-size:12px;vertical-align:bottom}.eval-table th.col-stagiaire{text-align:center;padding:12px 10px;border-left:.5px solid var(--border);min-width:130px}.eval-table th.col-stagiaire.alt{background:var(--surface-2);border-top-left-radius:var(--radius-md);border-top-right-radius:var(--radius-md)}.stagiaire-nom{display:block;font-weight:500;color:var(--text);font-size:13px;line-height:1.3}.stagiaire-entreprise{display:block;font-size:11px;color:var(--text-tertiary);margin-top:2px}.eval-table td{padding:12px 8px;vertical-align:middle}.eval-table td.col-critere{font-size:13px;color:var(--text);min-width:160px;font-weight:500}.eval-table td.col-cell{text-align:center;padding:12px 10px;border-left:.5px solid var(--border)}.eval-table td.col-cell.alt{background:var(--surface-2)}.eval-table tr.row-sep td{border-bottom:.5px dashed var(--border)}.eval-table tr:last-child td{border-bottom:none}.pill-row{display:flex;gap:4px;justify-content:center;align-items:center}.pill{width:28px;height:30px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:500;border:.5px solid var(--border-strong);border-radius:var(--radius-sm);cursor:pointer;color:var(--text-tertiary);background:var(--surface);transition:all .1s}.pill:hover{border-color:var(--text-tertiary);color:var(--text-secondary)}.pill.selected-1{background:var(--note-1);color:#fff;border-color:var(--note-1)}.pill.selected-2{background:var(--note-2);color:#fff;border-color:var(--note-2)}.pill.selected-3{background:var(--note-3);color:#fff;border-color:var(--note-3)}.pill.selected-4{background:var(--note-4);color:#fff;border-color:var(--note-4)}.pill.selected-5{background:var(--note-5);color:#fff;border-color:var(--note-5)}.acq-row{display:flex;gap:4px;justify-content:center}.acq{min-width:34px;height:30px;padding:0 6px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:500;border:.5px solid var(--border-strong);border-radius:var(--radius-sm);cursor:pointer;color:var(--text-tertiary);background:var(--surface);transition:all .1s}.acq:hover{border-color:var(--text-tertiary);color:var(--text-secondary)}.acq.selected-ap{background:var(--acq-ap);color:#fff;border-color:var(--acq-ap)}.acq.selected-a{background:var(--acq-a);color:#fff;border-color:var(--acq-a)}.acq.selected-bp{background:var(--acq-bp);color:#fff;border-color:var(--acq-bp)}.acq.selected-b{background:var(--acq-b);color:#fff;border-color:var(--acq-b)}.acq.selected-c{background:var(--acq-c);color:#fff;border-color:var(--acq-c)}.val-row{display:flex;gap:4px;justify-content:center}.val-btn{min-width:38px;height:28px;padding:0 8px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:500;border:.5px solid var(--border-strong);border-radius:var(--radius-sm);cursor:pointer;color:var(--text-tertiary);background:var(--surface);transition:all .1s}.val-btn.yes{background:var(--teal-dark);color:#fff;border-color:var(--teal-dark)}.val-btn.no{background:var(--note-1);color:#fff;border-color:var(--note-1)}tr.val-line td{border-top:.5px solid var(--border-strong);padding-top:16px}.obj-display{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.obj-text{flex:1;font-size:13px;line-height:1.4}.obj-num{font-weight:500;color:var(--text-secondary)}.obj-badge{display:inline-block;margin-left:8px;padding:2px 8px;font-size:10px;text-transform:uppercase;letter-spacing:.05em;background:var(--coral-light);color:var(--coral-dark);border-radius:var(--radius-sm);font-weight:500}.obj-actions{display:flex;gap:4px;flex-shrink:0}.obj-edit-btn,.obj-reset-btn{padding:4px 8px;font-size:14px;background:var(--surface);border:.5px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;opacity:.6;transition:opacity .15s}.obj-edit-btn:hover,.obj-reset-btn:hover{opacity:1;background:var(--surface-2)}.obj-edit{display:flex;flex-direction:column;gap:8px}.obj-edit-input{width:100%;padding:8px 10px;border:.5px solid var(--coral);border-radius:var(--radius-md);font-size:13px;font-family:var(--font-sans);resize:vertical;min-height:60px}.obj-edit-actions{display:flex;gap:6px}.obj-btn-save{padding:4px 12px;background:var(--coral);color:#fff;border-radius:var(--radius-sm);font-size:12px;font-weight:500}.obj-btn-cancel{padding:4px 12px;background:var(--surface);color:var(--text-secondary);border:.5px solid var(--border-strong);border-radius:var(--radius-sm);font-size:12px}.group-row{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:.5px dashed var(--border);gap:16px;flex-wrap:wrap}.group-row:last-of-type{border-bottom:none}.group-label{font-size:14px;color:var(--text);font-weight:500}.group-pill-row{display:flex;align-items:center;gap:6px}.scale-context{font-size:10px;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;font-weight:500}.prog-row{display:flex;align-items:center;justify-content:space-between;padding:16px 0 4px;border-top:.5px solid var(--border);margin-top:8px;gap:12px;flex-wrap:wrap}.prog-btns{display:flex;gap:8px}.prog-btn{padding:8px 16px;font-size:13px;font-weight:500;border:.5px solid var(--border-strong);border-radius:var(--radius-md);cursor:pointer;color:var(--text-secondary);background:var(--surface);transition:all .1s}.prog-btn.selected{background:var(--teal);color:#fff;border-color:var(--teal)}.cert-row{display:flex;align-items:center;gap:12px;margin-top:18px;padding-top:16px;border-top:.5px solid var(--border)}.checkbox{width:20px;height:20px;border:.5px solid var(--border-strong);border-radius:var(--radius-sm);cursor:pointer;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:var(--surface);transition:all .15s}.checkbox.checked{background:var(--teal);border-color:var(--teal)}.checkbox.checked:after{content:"";width:6px;height:10px;border-right:2px solid white;border-bottom:2px solid white;transform:rotate(45deg);margin-top:-2px}.cert-label{font-size:13px;color:var(--text)}.submit-bar{margin-top:2rem;text-align:center}.error-msg{color:var(--note-1);font-size:13px;margin-top:12px;text-align:center}.recap-section{margin-bottom:24px}.recap-section h3{font-size:16px;font-weight:500;margin-bottom:12px;color:var(--text)}.recap-stagiaire{background:var(--surface-2);padding:12px 16px;border-radius:var(--radius-md);margin-bottom:8px}.recap-stagiaire-nom{font-weight:500;margin-bottom:6px}.recap-notes{display:flex;flex-wrap:wrap;gap:12px;font-size:12px;color:var(--text-secondary)}.recap-action-bar{display:flex;gap:12px;justify-content:center;margin-top:2rem}.thanks-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem}.thanks-card{max-width:500px;text-align:center;background:var(--surface);border:.5px solid var(--border);border-radius:var(--radius-xl);padding:3rem 2rem}.thanks-icon{width:64px;height:64px;background:var(--teal);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem}.thanks-icon:after{content:"";width:22px;height:12px;border-left:3px solid white;border-bottom:3px solid white;transform:rotate(-45deg);margin-top:-4px}.thanks-card h2{font-size:22px;font-weight:500;margin-bottom:12px}.thanks-card p{color:var(--text-secondary);line-height:1.6}.error-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem}.error-card{max-width:500px;text-align:center;background:var(--surface);border:.5px solid var(--border);border-radius:var(--radius-xl);padding:3rem 2rem}.error-card h2{font-size:22px;font-weight:500;margin-bottom:12px;color:var(--note-1)}.admin-page{min-height:100vh;background:var(--bg)}.admin-header{background:var(--surface);border-bottom:.5px solid var(--border);padding:1rem 2rem;display:flex;align-items:center;justify-content:space-between}.admin-title{font-size:18px;font-weight:500}.admin-title-coral{color:var(--coral)}.admin-content{max-width:1200px;margin:0 auto;padding:2rem}.admin-content h1{font-size:24px;font-weight:500;margin-bottom:1.5rem}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem}.login-card{max-width:400px;width:100%;background:var(--surface);border:.5px solid var(--border);border-radius:var(--radius-xl);padding:2.5rem 2rem}.login-card h2{font-size:22px;font-weight:500;margin-bottom:8px;text-align:center}.login-card p{color:var(--text-secondary);text-align:center;margin-bottom:1.5rem;font-size:13px}.login-form{display:flex;flex-direction:column;gap:12px}.login-form button{background:var(--coral);color:#fff;padding:12px;border-radius:var(--radius-md);font-weight:500;margin-top:8px}.login-form button:hover{background:var(--coral-dark)}.dashboard-actions{display:flex;gap:12px;margin-bottom:2rem}.session-list{display:flex;flex-direction:column;gap:12px}.session-item{background:var(--surface);border:.5px solid var(--border);border-radius:var(--radius-lg);padding:1rem 1.25rem;display:flex;justify-content:space-between;align-items:center;gap:16px}.session-item-main{flex:1}.session-item-title{font-weight:500;margin-bottom:4px}.session-item-meta{font-size:12px;color:var(--text-secondary)}.session-status{padding:4px 12px;border-radius:var(--radius-md);font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.status-en_attente{background:var(--surface-2);color:var(--text-secondary)}.status-remplie{background:var(--coral-light);color:var(--coral-dark)}.status-validee{background:var(--teal-light);color:var(--teal-dark)}.status-archivee{background:var(--surface-2);color:var(--text-tertiary)}.session-actions{display:flex;gap:8px}.session-btn{padding:6px 14px;font-size:12px;background:var(--surface);border:.5px solid var(--border-strong);border-radius:var(--radius-md);cursor:pointer}.session-btn:hover{background:var(--surface-2)}.session-btn.primary{background:var(--coral);color:#fff;border-color:var(--coral)}.session-btn.primary:hover{background:var(--coral-dark)}.empty-state{text-align:center;padding:3rem;color:var(--text-secondary)}.create-form{background:var(--surface);border:.5px solid var(--border);border-radius:var(--radius-lg);padding:2rem;max-width:800px}.form-section{margin-bottom:2rem}.form-section h3{font-size:14px;font-weight:500;margin-bottom:12px;color:var(--text)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-field{display:flex;flex-direction:column;gap:6px}.form-field label{font-size:12px;color:var(--text-secondary);font-weight:500}.form-field-full{grid-column:1 / -1}.objectifs-list{display:flex;flex-direction:column;gap:8px}.objectif-input-row{display:flex;gap:8px;align-items:center}.objectif-input-row label{font-size:12px;color:var(--text-tertiary);width:24px}.stagiaires-list{display:flex;flex-direction:column;gap:8px}.stagiaire-input-row{display:flex;gap:8px}.stagiaire-input-row input{flex:1}.add-btn{padding:6px 12px;background:var(--surface-2);border:.5px dashed var(--border-strong);border-radius:var(--radius-md);font-size:12px;color:var(--text-secondary);cursor:pointer;width:fit-content}.add-btn:hover{background:var(--surface);border-color:var(--coral);color:var(--coral)}.remove-btn{padding:6px 8px;background:var(--surface);border:.5px solid var(--border-strong);border-radius:var(--radius-md);cursor:pointer;color:var(--note-1);font-size:12px}.success-banner{background:var(--teal-light);color:var(--teal-dark);padding:16px;border-radius:var(--radius-md);margin-bottom:1.5rem;text-align:center}.success-banner code{background:var(--surface);padding:4px 8px;border-radius:var(--radius-sm);font-family:monospace;word-break:break-all}
