:root{--sgp-violet-bg:#f1e8ff;--sgp-violet-fg:#7d34f5;--sgp-green-bg:#e4faef;--sgp-green-fg:#1f9d57;--sgp-blue-bg:#e9f1ff;--sgp-blue-fg:#2354ff;--sgp-orange-bg:#fff1e4;--sgp-orange-fg:#f97316;--sgp-pink-bg:#ffe8f3;--sgp-pink-fg:#d6336c;--sgp-teal-bg:#e1f7f5;--sgp-teal-fg:#0f9488;--sgp-yellow-bg:#fff9db;--sgp-yellow-fg:#b8860b;--sgp-red-bg:#ffeaea;--sgp-red-fg:#d92d20;--bc-pale-slate:#cfd6e2;--bc-cobalt-blue:#0147b6;--bc-cobalt-blue-dark:#0345a7;--bc-prussian-blue:#00275a;--bc-golden-bronze:#cd9f29;--color-primary:var(--bc-cobalt-blue);--color-primary-hover:var(--bc-cobalt-blue-dark);--color-primary-active:var(--bc-prussian-blue);--color-primary-light:#e8f0ff;--color-primary-lighter:#f3f7ff;--color-secondary:var(--bc-prussian-blue);--color-secondary-hover:#001d44;--color-secondary-active:#00142f;--color-secondary-light:#e7edf5;--color-accent:var(--bc-golden-bronze);--color-accent-hover:#b88c21;--color-accent-active:#9f781a;--color-accent-light:#fff5d9;--color-background:#f5f7fa;--color-background-alt:#eef2f7;--color-surface:#fff;--color-surface-alt:#f8fafc;--color-surface-hover:#f0f4f9;--color-surface-selected:var(--color-primary-light);--color-surface-disabled:#edf0f4;--color-overlay:#00275a8c;--color-text-primary:#172033;--color-text-secondary:#5f6c80;--color-text-muted:#7d899a;--color-text-disabled:#a3acb9;--color-text-on-primary:#fff;--color-text-on-secondary:#fff;--color-text-on-accent:#172033;--color-text-link:var(--color-primary);--color-text-link-hover:var(--color-primary-active);--color-border:#d9e1ec;--color-border-light:#e7ecf3;--color-border-strong:#b8c4d4;--color-border-focus:var(--color-primary);--color-divider:#e2e7ee;--border-width-thin:1px;--border-width-medium:2px;--border-width-thick:4px;--border-default:var(--border-width-thin) solid var(--color-border);--border-strong:var(--border-width-thin) solid var(--color-border-strong);--border-focus:var(--border-width-medium) solid var(--color-border-focus);--color-success:#198754;--color-success-hover:#146c43;--color-success-active:#0f5132;--color-success-light:#e8f6ee;--color-success-border:#9bd4b4;--color-success-text:#125c3b;--color-danger:#c93636;--color-danger-hover:#aa2929;--color-danger-active:#8d2020;--color-danger-light:#fdebec;--color-danger-border:#efb0b4;--color-danger-text:#8e2222;--color-warning:#d98e04;--color-warning-hover:#b97503;--color-warning-active:#965f00;--color-warning-light:#fff4d8;--color-warning-border:#f0cd7b;--color-warning-text:#7a5200;--color-info:#1677c8;--color-info-hover:#105f9f;--color-info-active:#0b4b7e;--color-info-light:#e8f4fc;--color-info-border:#9dcbed;--color-info-text:#10567f;--color-neutral:#687386;--color-neutral-hover:#555f70;--color-neutral-light:#eef1f5;--color-neutral-border:#cfd6e2;--color-neutral-text:#4f5969;--status-active-bg:var(--color-success-light);--status-active-text:var(--color-success-text);--status-active-border:var(--color-success-border);--status-inactive-bg:var(--color-neutral-light);--status-inactive-text:var(--color-neutral-text);--status-inactive-border:var(--color-neutral-border);--status-archived-bg:#e5e8ed;--status-archived-text:#4c5563;--status-archived-border:#b9c0ca;--status-pending-bg:var(--color-warning-light);--status-pending-text:var(--color-warning-text);--status-pending-border:var(--color-warning-border);--status-validated-bg:var(--color-success-light);--status-validated-text:var(--color-success-text);--status-validated-border:var(--color-success-border);--status-rejected-bg:var(--color-danger-light);--status-rejected-text:var(--color-danger-text);--status-rejected-border:var(--color-danger-border);--status-justified-bg:var(--color-success-light);--status-justified-text:var(--color-success-text);--status-justified-border:var(--color-success-border);--status-unjustified-bg:var(--color-danger-light);--status-unjustified-text:var(--color-danger-text);--status-unjustified-border:var(--color-danger-border);--status-absent-bg:var(--color-danger-light);--status-absent-text:var(--color-danger-text);--status-absent-border:var(--color-danger-border);--status-late-bg:var(--color-warning-light);--status-late-text:var(--color-warning-text);--status-late-border:var(--color-warning-border);--button-primary-bg:var(--color-primary);--button-primary-bg-hover:var(--color-primary-hover);--button-primary-bg-active:var(--color-primary-active);--button-primary-text:var(--color-text-on-primary);--button-primary-border:var(--color-primary);--button-secondary-bg:var(--color-surface);--button-secondary-bg-hover:var(--color-surface-hover);--button-secondary-bg-active:var(--color-background-alt);--button-secondary-text:var(--color-secondary);--button-secondary-border:var(--color-border-strong);--button-accent-bg:var(--color-accent);--button-accent-bg-hover:var(--color-accent-hover);--button-accent-bg-active:var(--color-accent-active);--button-accent-text:var(--color-text-on-accent);--button-success-bg:var(--color-success);--button-success-bg-hover:var(--color-success-hover);--button-success-text:#fff;--button-danger-bg:var(--color-danger);--button-danger-bg-hover:var(--color-danger-hover);--button-danger-bg-active:var(--color-danger-active);--button-danger-text:#fff;--button-disabled-bg:#dde3ec;--button-disabled-text:#8b96a6;--button-disabled-border:#d3dae4;--button-height-sm:32px;--button-height-md:40px;--button-height-lg:48px;--button-padding-sm:0 12px;--button-padding-md:0 16px;--button-padding-lg:0 20px;--input-bg:var(--color-surface);--input-text:var(--color-text-primary);--input-placeholder:#8d98a8;--input-border:var(--color-border-strong);--input-border-hover:#8ea0b7;--input-border-focus:var(--color-primary);--input-focus-ring:#0147b629;--input-disabled-bg:var(--color-surface-disabled);--input-disabled-text:var(--color-text-disabled);--input-disabled-border:var(--color-border);--input-error-border:var(--color-danger);--input-error-ring:#c9363626;--input-success-border:var(--color-success);--input-success-ring:#19875426;--input-height-sm:36px;--input-height-md:44px;--input-height-lg:52px;--table-bg:var(--color-surface);--table-header-bg:#eef3f8;--table-header-text:#273247;--table-row-bg:var(--color-surface);--table-row-hover-bg:#f8fafd;--table-row-selected-bg:var(--color-primary-light);--table-row-danger-bg:var(--color-danger-light);--table-border:var(--color-border-light);--table-stripe-bg:#fbfcfe;--sidebar-bg:var(--color-secondary);--sidebar-text:#ffffffd1;--sidebar-text-hover:#fff;--sidebar-item-hover-bg:#ffffff14;--sidebar-item-active-bg:#0147b673;--sidebar-item-active-border:var(--color-accent);--header-bg:var(--color-surface);--header-text:var(--color-text-primary);--header-border:var(--color-border-light);--link-color:var(--color-primary);--link-color-hover:var(--color-primary-active);--link-color-visited:#4f46a5;--link-color-danger:var(--color-danger);--alert-success-bg:var(--color-success-light);--alert-success-text:var(--color-success-text);--alert-success-border:var(--color-success-border);--alert-danger-bg:var(--color-danger-light);--alert-danger-text:var(--color-danger-text);--alert-danger-border:var(--color-danger-border);--alert-warning-bg:var(--color-warning-light);--alert-warning-text:var(--color-warning-text);--alert-warning-border:var(--color-warning-border);--alert-info-bg:var(--color-info-light);--alert-info-text:var(--color-info-text);--alert-info-border:var(--color-info-border);--font-family-base:Inter, "Segoe UI", Roboto, Arial, sans-serif;--font-family-heading:Inter, "Segoe UI", Roboto, Arial, sans-serif;--font-size-xs:.75rem;--font-size-sm:.86rem;--font-size-md:.98rem;--font-size-lg:1.08rem;--font-size-xl:1.32rem;--font-size-2xl:1.68rem;--font-size-3xl:2.16rem;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-tight:1.2;--line-height-normal:1.5;--line-height-relaxed:1.7;--space-0:0;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--radius-none:0;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-2xl:24px;--radius-full:999px;--shadow-xs:0 1px 2px #00275a0d;--shadow-sm:0 2px 8px #00275a0f;--shadow-md:0 8px 24px #00275a1a;--shadow-lg:0 16px 40px #00275a29;--shadow-focus:0 0 0 3px var(--input-focus-ring);--shadow-danger-focus:0 0 0 3px var(--input-error-ring);--sidebar-width:250px;--sidebar-collapsed-width:72px;--header-height:64px;--content-max-width:1440px;--modal-width-sm:420px;--modal-width-md:640px;--modal-width-lg:900px;--transition-fast:.12s ease;--transition-normal:.2s ease;--transition-slow:.32s ease;--z-dropdown:1000;--z-sticky:1020;--z-fixed:1030;--z-overlay:1040;--z-modal:1050;--z-toast:1060;--breakpoint-mobile:640px;--breakpoint-tablet:768px;--breakpoint-desktop:1024px;--breakpoint-large:1280px}:root[data-theme=sira-green]{--bc-cobalt-blue:#18794e;--bc-cobalt-blue-dark:#14643f;--bc-prussian-blue:#0c5034;--bc-golden-bronze:#c58a1d}:root[data-theme=sira-violet]{--bc-cobalt-blue:#6841c4;--bc-cobalt-blue-dark:#5433a6;--bc-prussian-blue:#3e267d;--bc-golden-bronze:#cb8d27}:root[data-theme=sira-orange]{--bc-cobalt-blue:#c45c10;--bc-cobalt-blue-dark:#a84c0b;--bc-prussian-blue:#753207;--bc-golden-bronze:#b87f1d}[data-theme=dark]{--color-background:#0d1625;--color-background-alt:#121d2e;--color-surface:#162236;--color-surface-alt:#1b2940;--color-surface-hover:#22324c;--color-surface-selected:#173764;--color-surface-disabled:#263247;--color-text-primary:#f2f5f9;--color-text-secondary:#c2cad6;--color-text-muted:#9ca8b9;--color-text-disabled:#718095;--color-border:#34425a;--color-border-light:#2b3950;--color-border-strong:#4a5b75;--color-divider:#2f3d54;--table-header-bg:#1d2b42;--table-row-hover-bg:#1b2a40;--table-stripe-bg:#18253a;--header-bg:#162236;--header-text:#f2f5f9;--header-border:#2b3950;--input-bg:#18263b;--input-text:#f2f5f9;--input-placeholder:#8d9aae;--input-border:#465873;--input-disabled-bg:#243249;--color-overlay:#000000ad}*,:before,:after{box-sizing:border-box}html{min-width:320px;min-height:100%;font-size:90%}body{min-width:320px;min-height:100svh;color:var(--color-text-primary);background:var(--color-background);font-family:var(--font-family-base);font-size:var(--font-size-md);line-height:var(--line-height-normal);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;margin:0}button,input,select,textarea{font:inherit}img{max-width:100%}#root{min-height:100svh}.connexion-page{min-height:100svh;padding:var(--space-4);color:var(--color-text-primary);background:var(--color-surface);grid-template-rows:auto 1fr auto;display:grid}.connexion-header{justify-content:center;display:flex}.connexion-language-label{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.connexion-language-wrapper{align-items:center;gap:var(--space-2);width:150px;padding:var(--space-2) var(--space-4);background:var(--color-surface);border:var(--border-default);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);display:flex}.connexion-language-icon{color:var(--color-secondary);flex:none}.connexion-language-select{width:100%;color:var(--color-text-primary);font-weight:var(--font-weight-medium);cursor:pointer;background:0 0;border:0;outline:0}.connexion-main{justify-content:center;align-items:center;width:100%;display:flex}.connexion-container{width:100%;max-width:630px;padding-block:var(--space-8)}.connexion-introduction{margin-bottom:var(--space-8);text-align:center}.connexion-title{margin:0 0 var(--space-2);color:var(--color-secondary);font-family:var(--font-family-heading);font-size:clamp(var(--font-size-2xl), 5vw, var(--font-size-3xl));font-weight:var(--font-weight-bold);line-height:var(--line-height-tight)}.connexion-description{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin:0}.connexion-form{gap:var(--space-5);flex-direction:column;display:flex}.connexion-field{gap:var(--space-2);text-align:left;flex-direction:column;display:flex}.connexion-label{color:var(--color-text-primary);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold)}.connexion-input-wrapper{min-height:var(--input-height-lg);align-items:center;gap:var(--space-3);padding-inline:var(--space-4);background:var(--input-bg);border:var(--border-default);border-color:var(--input-border);border-radius:var(--radius-md);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);display:flex}.connexion-input-wrapper:hover{border-color:var(--input-border-hover)}.connexion-input-wrapper:focus-within{border-color:var(--input-border-focus);box-shadow:var(--shadow-focus)}.connexion-input-icon{color:var(--color-secondary);flex:none}.connexion-input{width:100%;min-width:0;color:var(--input-text);font-size:var(--font-size-md);background:0 0;border:0;outline:0}.connexion-input::placeholder{color:var(--input-placeholder)}.connexion-password-toggle{padding:var(--space-2);color:var(--color-secondary);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:0;flex:none}.connexion-password-toggle:hover{color:var(--color-primary);background:var(--color-primary-lighter)}.connexion-password-toggle:focus-visible{outline:var(--border-focus);outline-offset:2px}.connexion-error,.connexion-success{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--font-size-sm);text-align:left;margin:0}.connexion-error{color:var(--alert-danger-text);background:var(--alert-danger-bg);border:1px solid var(--alert-danger-border)}.connexion-success{color:var(--alert-success-text);background:var(--alert-success-bg);border:1px solid var(--alert-success-border)}.connexion-submit{min-height:var(--button-height-lg);justify-content:center;align-items:center;gap:var(--space-4);padding:var(--button-padding-lg);color:var(--button-primary-text);background:var(--button-primary-bg);border:1px solid var(--button-primary-border);border-radius:var(--radius-md);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);box-shadow:var(--shadow-sm);cursor:pointer;transition:background var(--transition-fast), transform var(--transition-fast), box-shadow var(--transition-fast);display:flex;position:relative}.connexion-submit:hover:not(:disabled){background:var(--button-primary-bg-hover);box-shadow:var(--shadow-md);transform:translateY(-1px)}.connexion-submit:active:not(:disabled){background:var(--button-primary-bg-active);transform:translateY(0)}.connexion-submit:focus-visible{outline:var(--border-focus);outline-offset:3px}.connexion-submit:disabled{color:var(--button-disabled-text);background:var(--button-disabled-bg);border-color:var(--button-disabled-border);cursor:wait}.connexion-submit-arrow{right:var(--space-4);position:absolute}.establishment-selection{gap:var(--space-4);display:grid}.establishment-selection-account{color:var(--color-text-secondary);text-align:center;font-size:var(--font-size-sm);margin:0}.establishment-selection-list{gap:var(--space-3);display:grid}.establishment-selection-option{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-4);color:var(--color-text-primary);text-align:left;background:var(--color-surface);border:var(--border-default);border-radius:var(--radius-md);cursor:pointer;display:flex}.establishment-selection-option svg{color:var(--color-primary);flex:none}.establishment-selection-option span{gap:var(--space-1);flex:1;display:grid}.establishment-selection-option small{color:var(--color-text-secondary)}.establishment-selection-option:hover:not(:disabled){border-color:var(--color-primary);background:var(--color-primary-lighter)}.establishment-selection-option:focus-visible{outline:var(--border-focus);outline-offset:3px}.connexion-footer-security{align-items:center;gap:var(--space-2);color:var(--color-text-on-secondary);opacity:.9;margin:0;display:flex}.connexion-footer-security svg{color:var(--bc-golden-bronze);flex:none}.connexion-copyright{color:var(--color-text-on-secondary);opacity:.75;margin:0;font-size:.85rem}.connexion-copyright strong{color:var(--color-text-on-secondary);opacity:1}.connexion-site-footer{width:100vw;margin:var(--space-6) calc(50% - 50vw) calc(var(--space-4) * -1);background:linear-gradient(135deg, var(--color-secondary), var(--color-primary-active));border-top:var(--border-width-thick) solid var(--color-accent)}.connexion-site-footer-inner{justify-content:space-between;align-items:center;gap:var(--space-5);max-width:1080px;padding:var(--space-5) var(--space-6);flex-wrap:wrap;margin:0 auto;display:flex}.connexion-site-footer-links{align-items:center;gap:var(--space-3);display:flex}.connexion-site-footer-link{color:var(--color-text-on-secondary);padding:var(--space-2) var(--space-4);border-radius:var(--radius-full,999px);border:var(--border-width-thin) solid #ffffff4d;font-size:.9rem;font-weight:600;text-decoration:none;transition:background-color .15s,border-color .15s}.connexion-site-footer-link:hover{background:#ffffff26;border-color:#fff9}@media (width<=640px){.connexion-site-footer-inner{text-align:center;flex-direction:column}}@media (width>=641px){.connexion-page{padding:var(--space-6) clamp(var(--space-6), 5vw, var(--space-12));background:radial-gradient(circle at top, var(--color-primary-lighter) 0, var(--color-surface) 42%)}.connexion-header{justify-content:flex-end}.connexion-language-wrapper{width:170px}.connexion-container{padding-block:var(--space-6)}.connexion-description{font-size:var(--font-size-md)}}.session-expired-page{min-height:100dvh;padding:var(--space-5);background:radial-gradient(circle at top, var(--color-primary-lighter) 0, var(--color-surface) 48%);place-items:center;display:grid}.session-expired-card{width:min(100%,31rem);padding:clamp(var(--space-6), 7vw, var(--space-10));border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);box-shadow:var(--shadow-lg);text-align:center}.session-expired-icon{width:4rem;height:4rem;margin:0 auto var(--space-4);color:var(--color-warning-dark);background:var(--color-warning-light);border-radius:50%;place-items:center;display:grid}.session-expired-eyebrow{margin:0 0 var(--space-2);color:var(--color-primary);font-size:var(--font-size-sm);font-weight:700}.session-expired-card h1{color:var(--color-text);margin:0;font-size:clamp(1.45rem,5vw,1.9rem)}.session-expired-card>p:not(.session-expired-eyebrow){margin:var(--space-4) 0 var(--space-6);color:var(--color-text-secondary);line-height:1.6}.session-expired-card .connexion-submit{width:100%}.application-status-page{min-height:calc(100dvh - 8rem);padding:var(--space-5);place-items:center;display:grid}.application-status-card{width:min(100%,34rem);padding:clamp(var(--space-6), 7vw, var(--space-10));border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);box-shadow:var(--shadow-md);text-align:center}.application-status-icon{width:4rem;height:4rem;margin:0 auto var(--space-4);color:var(--color-danger-text);background:var(--color-danger-light);border-radius:50%;place-items:center;display:grid}.application-status-icon--forbidden{color:var(--color-warning-dark);background:var(--color-warning-light)}.application-status-icon--unavailable{color:var(--color-primary-dark);background:var(--color-primary-lighter)}.application-status-eyebrow{margin:0 0 var(--space-2);color:var(--color-primary);font-size:var(--font-size-sm);font-weight:700}.application-status-card h1{color:var(--color-text);margin:0;font-size:clamp(1.45rem,5vw,1.9rem)}.application-status-card>p:not(.application-status-eyebrow){margin:var(--space-4) 0 var(--space-6);color:var(--color-text-secondary);line-height:1.6}.application-status-card .connexion-submit{width:100%}.students-main{gap:var(--space-6);padding:var(--space-6);max-width:var(--content-max-width);grid-template-columns:1fr 360px;margin:0 auto;display:grid}.students-header{justify-content:space-between;align-items:center;gap:var(--space-4);grid-column:1/-1;display:flex}.students-search{gap:var(--space-3);align-items:center;display:flex}.students-search input[type=search]{border-radius:var(--radius-md);border:var(--border-default);background:var(--color-surface);min-width:360px;padding:10px 14px}.students-search select{border-radius:var(--radius-md);border:var(--border-default);background:var(--color-surface);padding:10px 12px}.students-search button{border-radius:var(--radius-md);background:var(--button-primary-bg);color:var(--button-primary-text);border:1px solid var(--button-primary-border);cursor:pointer;padding:10px 14px}.students-list{background:var(--color-surface);border:var(--border-default);border-radius:var(--radius-md);padding:var(--space-4)}.students-table{border-collapse:collapse;width:100%}.students-table thead th{text-align:left;background:var(--table-header-bg);color:var(--table-header-text);font-weight:var(--font-weight-semibold);border-bottom:1px solid var(--table-border);padding:12px 8px}.students-table tbody tr{cursor:pointer;transition:background var(--transition-fast)}.students-table tbody tr:hover{background:var(--table-row-hover-bg)}.students-table td{border-bottom:1px solid var(--table-border);vertical-align:middle;padding:12px 8px}.student-avatar{border-radius:var(--radius-full);background:var(--color-surface-selected);width:36px;height:36px;color:var(--color-text-on-secondary);font-weight:var(--font-weight-semibold);justify-content:center;align-items:center;display:inline-flex}.status-badge{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);border-radius:999px;padding:4px 10px;display:inline-block}.status-active{background:var(--status-active-bg);color:var(--status-active-text);border:1px solid var(--status-active-border)}.status-inactive{background:var(--status-inactive-bg);color:var(--status-inactive-text);border:1px solid var(--status-inactive-border)}.status-archived{background:var(--status-archived-bg);color:var(--status-archived-text);border:1px solid var(--status-archived-border)}.student-details{background:var(--color-surface);border:var(--border-default);border-radius:var(--radius-md);padding:var(--space-4);height:fit-content}.student-header{gap:var(--space-3);margin-bottom:var(--space-4);align-items:center;display:flex}.student-header h2{font-size:var(--font-size-xl);margin:0}.student-meta{color:var(--color-text-muted)}@media (width<=900px){.students-main{grid-template-columns:1fr}.student-details{order:2}}.application-loading{min-height:100svh;padding:var(--space-4);color:var(--color-text-secondary);background:var(--color-surface);place-items:center;display:grid}.layout-page{background:var(--color-background);min-height:100svh}.layout-sidebar{z-index:var(--z-modal);width:min(84vw,280px);padding:var(--space-4);background:var(--color-surface);border-right:var(--border-default);box-shadow:var(--shadow-lg);transition:transform var(--transition-normal);flex-direction:column;display:flex;position:fixed;inset:0 auto 0 0;overflow-y:auto;transform:translate(-105%)}.layout-sidebar-open{transform:translate(0)}.layout-sidebar-brand{justify-content:space-between;align-items:center;gap:var(--space-3);padding-bottom:var(--space-5);border-bottom:var(--border-default);display:flex}.layout-logo{width:180px;height:auto}.layout-sidebar-close,.layout-menu-button{width:42px;height:42px;color:var(--color-secondary);border-radius:var(--radius-md);cursor:pointer;background:0 0;border:0;place-items:center;display:grid}.layout-sidebar-close:hover,.layout-menu-button:hover{background:var(--color-primary-lighter)}.layout-navigation{gap:var(--space-2);padding-block:var(--space-6);flex-direction:column;display:flex}.layout-navigation-item,.layout-logout{align-items:center;gap:var(--space-3);min-height:46px;padding-inline:var(--space-4);color:var(--color-text-secondary);border-radius:var(--radius-md);font-weight:var(--font-weight-medium);text-align:left;cursor:pointer;background:0 0;border:0;display:flex}.layout-navigation-item:hover{color:var(--color-primary);background:var(--color-primary-lighter)}.layout-navigation-item-active{color:var(--color-primary);background:var(--color-primary-light);font-weight:var(--font-weight-semibold)}.layout-navigation-group{gap:var(--space-1);display:grid}.layout-navigation-group-toggle{width:100%}.layout-navigation-group-toggle span{flex:1}.layout-navigation-chevron{transition:transform var(--transition-fast);flex:none}.layout-navigation-chevron-open{transform:rotate(180deg)}.layout-navigation-back{align-items:center;gap:var(--space-2);min-height:42px;margin:0 var(--space-3) var(--space-2);padding:0 var(--space-2);color:var(--color-primary);border-radius:var(--radius-md);font:inherit;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);cursor:pointer;background:0 0;border:0;display:inline-flex}.layout-navigation-back:hover{background:var(--color-primary-lighter)}.layout-navigation-submenu{margin-left:calc(var(--space-4) + 9px);padding:var(--space-1) 0 var(--space-1) var(--space-3);border-left:2px solid var(--color-primary-light);gap:2px;display:grid}.layout-navigation-subitem{align-items:center;gap:var(--space-2);width:100%;min-height:38px;padding:var(--space-2) var(--space-3);color:var(--color-text-secondary);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);text-align:left;cursor:pointer;background:0 0;border:0;display:flex}.layout-navigation-subitem:hover{color:var(--color-primary);background:var(--color-primary-lighter)}.layout-navigation-subitem-active{color:var(--color-primary);background:var(--color-primary-light);font-weight:var(--font-weight-semibold)}.layout-logout{width:100%;color:var(--color-danger)}.layout-logout:hover:not(:disabled){background:var(--color-danger-light)}.layout-logout:disabled{color:var(--color-text-disabled);cursor:wait}.layout-logout-error{margin:0 0 var(--space-2);padding:var(--space-3);color:var(--alert-danger-text);background:var(--alert-danger-bg);border:1px solid var(--alert-danger-border);border-radius:var(--radius-md);font-size:var(--font-size-sm)}.layout-overlay{z-index:var(--z-overlay);background:var(--color-overlay);border:0;position:fixed;inset:0}.layout-content{flex-direction:column;min-width:0;display:flex}.layout-content>main{flex:auto;min-height:auto}.layout-content>:not(main,.layout-header){flex:none}.mobile-bottom-nav{z-index:999;padding:var(--space-2) var(--space-2) max(var(--space-2), env(safe-area-inset-bottom));background:var(--color-surface);border-top:var(--border-default);will-change:transform;justify-content:space-around;align-items:stretch;display:flex;position:fixed;inset:auto 0 0;transform:translate(0,0);box-shadow:0 -4px 16px #0000000f}.mobile-bottom-nav__item{padding:var(--space-1) 0;color:var(--color-text-muted);border-radius:var(--radius-md);font-size:var(--font-size-xs);cursor:pointer;background:0 0;border:0;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;display:flex}.mobile-bottom-nav__icon{border-radius:var(--radius-full);place-items:center;width:28px;height:28px;display:grid}.mobile-bottom-nav__item--active{color:var(--color-primary);font-weight:var(--font-weight-semibold)}.mobile-bottom-nav__item--active .mobile-bottom-nav__icon{background:var(--color-primary-light);color:var(--color-primary)}.mobile-bottom-nav__label{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.layout-page--has-bottom-nav .layout-content{padding-bottom:calc(64px + env(safe-area-inset-bottom))}@media (width>=768px){.mobile-bottom-nav{display:none}.layout-page--has-bottom-nav .layout-content{padding-bottom:0}}.layout-header{min-height:var(--header-height);justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-4);background:var(--header-bg);border-bottom:1px solid var(--header-border);display:flex}.layout-header-spacer{flex:1}.layout-active-establishment{align-items:center;gap:var(--space-2);min-width:0;max-width:min(100%,360px);padding:4px var(--space-3) 4px 4px;background:var(--color-primary-lighter);border:1px solid var(--color-primary-light);border-left:4px solid var(--color-primary);border-radius:var(--radius-md);margin-right:auto;display:flex}.layout-active-establishment__icon{width:32px;height:32px;color:var(--color-text-on-primary,#fff);background:var(--color-primary);border-radius:var(--radius-sm);flex:none;place-items:center;display:grid}.layout-active-establishment__text{flex-direction:column;min-width:0;line-height:1.2;display:flex}.layout-active-establishment__text small{color:var(--color-text-muted);font-size:.6875rem;font-weight:var(--font-weight-medium);letter-spacing:.04em;text-transform:uppercase}.layout-active-establishment__text strong{color:var(--color-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.layout-current-account{align-items:center;gap:var(--space-2);display:flex}.layout-account-icon{width:38px;height:38px;color:var(--color-text-on-primary);background:var(--color-primary);border-radius:var(--radius-full);place-items:center;display:grid}.layout-current-account span:last-child{flex-direction:column;display:flex}.layout-current-account small{color:var(--color-text-secondary)}.layout-navigation-item:disabled{opacity:.55;cursor:not-allowed}.layout-navigation-soon{background:var(--color-surface-subtle,#eef2f7);color:var(--color-text-muted);border-radius:999px;margin-left:auto;padding:1px 8px;font-size:.65rem;font-weight:600}.layout-sidebar-toggle{display:none}@media (width>=768px){.layout-sidebar-toggle{z-index:60;border:1px solid var(--table-border,#d5deea);border-radius:var(--radius-md);background:var(--color-surface);width:36px;height:36px;color:var(--color-secondary,#2c4a7c);cursor:pointer;place-items:center;transition:background .15s,left .2s;display:grid;position:fixed;top:40px;left:218px;box-shadow:0 1px 3px #1018281f}.layout-sidebar-toggle:hover{background:var(--color-primary-lighter)}.layout-sidebar-toggle:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.layout-sidebar-toggle--collapsed{left:12px}.layout-page.layout-page--collapsed{grid-template-columns:minmax(0,1fr)}.layout-page.layout-page--collapsed .layout-sidebar{display:none}.layout-page--collapsed .layout-content{padding-left:44px}}.accueil-main,.comptes-main{width:100%;max-width:var(--content-max-width);padding:var(--space-5) var(--space-4);margin-inline:auto}.accueil-heading,.comptes-heading{margin-bottom:var(--space-6)}.accueil-hero{margin-bottom:var(--space-6);padding:var(--space-8) var(--space-6);background:linear-gradient(135deg, var(--bc-cobalt-blue) 0%, var(--bc-prussian-blue) 100%);border-radius:var(--radius-xl);box-shadow:var(--shadow-md)}.accueil-hero .accueil-title,.accueil-hero .accueil-description{color:var(--color-text-on-primary)}.accueil-hero .accueil-description{opacity:.88;max-width:46ch}.accueil-eyebrow,.comptes-breadcrumb{align-items:center;gap:var(--space-1);margin:0 0 var(--space-2);color:var(--color-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.04em;display:flex}.accueil-hero .accueil-eyebrow{color:var(--color-accent)}.comptes-breadcrumb{align-items:center;gap:var(--space-1);display:flex}.comptes-breadcrumb button{color:var(--color-primary);font:inherit;cursor:pointer;background:0 0;border:0;padding:0}.comptes-breadcrumb button:hover{text-decoration:underline}.comptes-breadcrumb .comptes-breadcrumb-current{color:var(--color-text-secondary)}.accueil-title,.comptes-title{color:var(--color-secondary);font-size:var(--font-size-2xl);line-height:var(--line-height-tight);margin:0}.accueil-description,.comptes-description{margin:var(--space-3) 0 0;color:var(--color-text-secondary)}.accueil-profile-section{margin-bottom:var(--space-5)}.accueil-profile-card{align-items:center;gap:var(--space-4);padding:var(--space-5);background:var(--color-surface);border:var(--border-default);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);display:flex}.accueil-profile-card__avatar{border-radius:var(--radius-full);background:linear-gradient(135deg, var(--bc-cobalt-blue), var(--bc-prussian-blue));width:56px;height:56px;color:var(--color-text-on-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);flex:none;place-items:center;display:grid}.accueil-profile-card__body{flex-direction:column;gap:3px;min-width:0;display:flex}.accueil-profile-card__body strong{font-size:var(--font-size-lg);color:var(--color-text-primary);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.accueil-profile-card__meta{color:var(--color-text-secondary);font-size:var(--font-size-sm);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:5px;display:flex;overflow:hidden}.accueil-profile-card__meta svg{color:var(--color-primary);flex:none}.accueil-profile-card__registration{color:var(--color-text-muted);font-size:var(--font-size-xs)}.accueil-quicklinks{gap:var(--space-4);margin-bottom:var(--space-6);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.accueil-quicklink{align-items:center;gap:var(--space-4);padding:var(--space-5);text-align:left;background:var(--color-surface);border:var(--border-default);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);cursor:pointer;transition:transform var(--transition-fast), box-shadow var(--transition-fast), border-color var(--transition-fast);display:flex}.accueil-quicklink:hover{box-shadow:var(--shadow-md);border-color:var(--color-border-strong);transform:translateY(-2px)}.accueil-quicklink__icon{border-radius:var(--radius-full);flex:none;place-items:center;width:48px;height:48px;display:grid}.accueil-quicklink--violet .accueil-quicklink__icon{color:var(--sgp-violet-fg);background:var(--sgp-violet-bg)}.accueil-quicklink--blue .accueil-quicklink__icon{color:var(--sgp-blue-fg);background:var(--sgp-blue-bg)}.accueil-quicklink--orange .accueil-quicklink__icon{color:var(--sgp-orange-fg);background:var(--sgp-orange-bg)}.accueil-quicklink--green .accueil-quicklink__icon{color:var(--sgp-green-fg);background:var(--sgp-green-bg)}.accueil-quicklink__text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.accueil-quicklink__text strong{color:var(--color-text-primary);font-size:var(--font-size-md)}.accueil-quicklink__text span{color:var(--color-text-secondary);font-size:var(--font-size-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.accueil-quicklink__chevron{color:var(--color-text-muted);flex:none}.accueil-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.accueil-card,.comptes-placeholder{padding:var(--space-5);background:var(--color-surface);border:var(--border-default);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm)}.accueil-card-icon,.comptes-placeholder-icon{width:52px;height:52px;margin-bottom:var(--space-4);color:var(--color-primary);background:var(--color-primary-light);border-radius:var(--radius-full);place-items:center;display:grid}.accueil-card h2,.comptes-placeholder h2{margin:0 0 var(--space-2);color:var(--color-secondary);font-size:var(--font-size-lg)}.accueil-card p,.comptes-placeholder p{margin:0 0 var(--space-2);color:var(--color-text-secondary)}@media (width<=767px){.accueil-main{padding:var(--space-4) var(--space-3)}.accueil-hero{padding:var(--space-6) var(--space-4);border-radius:var(--radius-lg)}.accueil-title{font-size:var(--font-size-xl)}.accueil-profile-card{padding:var(--space-4)}.accueil-profile-card__avatar{width:48px;height:48px;font-size:var(--font-size-md)}.accueil-quicklink--hide-on-mobile{display:none}.accueil-quicklinks{margin-bottom:var(--space-4);grid-template-columns:1fr}}.ajout-compte-overlay{z-index:1000;background:#081c3d8c;place-items:end center;padding:1rem;display:grid;position:fixed;inset:0;overflow-y:auto}.ajout-compte-modal{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);width:min(100%,34rem);max-height:calc(100vh - 2rem);box-shadow:var(--shadow-lg);overflow-y:auto}.ajout-compte-header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.25rem;display:flex}.ajout-compte-header h2,.ajout-compte-header p{margin:0}.ajout-compte-header p{color:var(--color-text-muted);margin-top:.35rem}.ajout-compte-close{border-radius:var(--radius-md);width:2.5rem;height:2.5rem;color:var(--color-text-primary);cursor:pointer;background:0 0;border:0;flex:none;place-items:center;display:grid}.ajout-compte-close:hover{background:var(--color-background)}.ajout-compte-form{gap:1rem;padding:1.25rem;display:grid}.ajout-compte-field{color:var(--color-text-primary);gap:.45rem;font-weight:600;display:grid}.ajout-compte-field input,.ajout-compte-field select{border:1px solid var(--color-border);border-radius:var(--radius-md);width:100%;min-height:3rem;color:var(--color-text-primary);background:var(--color-surface);font:inherit;padding:.7rem .85rem}.ajout-compte-field input:focus,.ajout-compte-field select:focus{border-color:var(--color-primary);outline:2px solid #0052cc26}.ajout-compte-field small{color:var(--color-text-muted);font-weight:400}.ajout-compte-password{display:block;position:relative}.ajout-compte-password input{padding-right:3rem}.ajout-compte-password button{color:var(--color-text-muted);cursor:pointer;background:0 0;border:0;place-items:center;display:grid;position:absolute;top:50%;right:.6rem;transform:translateY(-50%)}.ajout-compte-error{border:1px solid var(--color-danger);border-radius:var(--radius-md);color:var(--color-danger);background:var(--color-danger-light);margin:0;padding:.8rem}.ajout-compte-actions{grid-template-columns:1fr;gap:.75rem;margin-top:.25rem;display:grid}.ajout-compte-cancel,.ajout-compte-submit{border-radius:var(--radius-md);min-height:3rem;font:inherit;cursor:pointer;padding:.7rem 1rem;font-weight:700}.creation-compte-page{padding:var(--space-5);background:var(--color-background)}.creation-compte-heading{margin-bottom:var(--space-5)}.creation-compte-heading h1{margin:0 0 var(--space-2);color:var(--color-secondary);font-size:var(--font-size-2xl)}.creation-compte-heading nav{gap:var(--space-2);color:var(--color-text-muted);font-size:var(--font-size-sm);flex-wrap:wrap;align-items:center;display:flex}.creation-compte-heading nav button{color:var(--color-primary);cursor:pointer;font:inherit;font-weight:var(--font-weight-semibold);background:0 0;border:0;padding:0}.creation-compte-heading p{margin:var(--space-3) 0 0;color:var(--color-text-secondary)}.creation-compte-form{gap:var(--space-4);display:grid}.creation-compte-section{padding:var(--space-5);border:var(--border-default);border-radius:var(--radius-xl);background:var(--color-surface);box-shadow:var(--shadow-sm)}.creation-compte-section h2{gap:var(--space-2);margin:0 0 var(--space-5);color:var(--color-secondary);font-size:var(--font-size-base);align-items:center;display:flex}.creation-compte-section h2 svg{color:var(--color-primary)}.creation-compte-grid{gap:var(--space-4);align-items:start;display:grid}.creation-compte-grid label{gap:var(--space-2);color:var(--color-text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);display:grid}.creation-compte-grid input,.creation-compte-grid select{width:100%;height:var(--input-height-md);padding:0 var(--space-3);border:var(--border-width-thin) solid var(--input-border);border-radius:var(--radius-md);background:var(--input-bg);color:var(--input-text);font:inherit}.creation-compte-grid input:focus,.creation-compte-grid select:focus{border-color:var(--color-primary);outline:2px solid #0050be1f}.creation-compte-grid small{color:var(--color-text-muted);font-weight:var(--font-weight-normal)}.creation-compte-password{position:relative}.creation-compte-password input{padding-right:46px}.creation-compte-password button{top:50%;right:var(--space-3);color:var(--color-text-muted);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid;position:absolute;transform:translateY(-50%)}.creation-compte-generate{justify-self:start;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);min-height:var(--button-height-md);border:var(--border-width-thin) solid var(--button-primary-border);border-radius:var(--radius-md);background:var(--button-primary-bg);color:var(--button-primary-text);font:inherit;font-weight:var(--font-weight-semibold);cursor:pointer;display:inline-flex}.creation-compte-generate:hover{background:var(--button-primary-bg-hover)}.creation-compte-registration-field input[readonly]{background:var(--color-surface-disabled);color:var(--color-text-secondary);cursor:not-allowed}.creation-compte-registration-input{display:block;position:relative}.creation-compte-registration-input input{width:100%;padding-right:2.75rem}.creation-compte-registration-input svg{top:50%;right:var(--space-3);color:var(--color-text-muted);pointer-events:none;position:absolute;transform:translateY(-50%)}.notification-popup-backdrop{z-index:2000;padding:var(--space-4);background:#0f23417a;place-items:center;display:grid;position:fixed;inset:0}.notification-popup{align-items:center;gap:var(--space-3);width:min(100%,32rem);padding:var(--space-4);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-lg);grid-template-columns:auto 1fr auto;display:grid}.notification-popup p{margin:0}.notification-popup>button{padding:var(--space-2);cursor:pointer;background:0 0;border:0}.notification-popup--error{border:1px solid var(--color-danger-border);color:var(--color-danger-text)}.notification-popup--info{border:1px solid var(--status-active-border);color:var(--status-active-text)}.confirmation-popup{width:min(100%,28rem);padding:var(--space-5);border:var(--border-default);border-radius:var(--radius-xl);background:var(--color-surface);box-shadow:var(--shadow-lg)}.confirmation-popup header{align-items:center;gap:var(--space-2);grid-template-columns:auto 1fr auto;display:grid}.confirmation-popup h2,.confirmation-popup p{margin:0}.confirmation-popup h2{font-size:var(--font-size-lg)}.confirmation-popup p{padding-block:var(--space-4);color:var(--color-text-muted)}.confirmation-popup header button{padding:var(--space-1);cursor:pointer;background:0 0;border:0}.confirmation-popup footer{justify-content:flex-end;gap:var(--space-2);display:flex}.confirmation-popup footer button{min-height:38px;padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);font-weight:var(--font-weight-semibold);cursor:pointer}.confirmation-popup-cancel{border:var(--border-default);color:var(--color-text);background:var(--color-surface)}.confirmation-popup-confirm{border:1px solid var(--color-primary);color:var(--color-text-on-primary);background:var(--color-primary)}.creation-compte-summary{gap:var(--space-5);padding:var(--space-5);border:var(--border-default);border-radius:var(--radius-xl);background:var(--color-surface);box-shadow:var(--shadow-sm);display:grid}.creation-compte-summary>header{justify-content:space-between;align-items:center;gap:var(--space-4);padding-bottom:var(--space-4);border-bottom:var(--border-default);color:var(--color-primary);display:flex}.creation-compte-summary h2,.creation-compte-summary h3{margin:var(--space-2) 0;color:var(--color-secondary)}.creation-compte-summary-status{padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);background:var(--status-active-bg);color:var(--status-active-text);font-weight:var(--font-weight-semibold);display:inline-block}.creation-compte-summary dl{margin:0;display:grid}.creation-compte-summary dl div{gap:var(--space-1);padding:var(--space-3) 0;border-bottom:var(--border-default);display:grid}.creation-compte-summary dt{color:var(--color-text-secondary)}.creation-compte-summary dd{color:var(--color-text-primary);font-weight:var(--font-weight-semibold);overflow-wrap:anywhere;margin:0}.creation-compte-summary-warning{padding:var(--space-3);border:1px solid var(--color-warning-border);border-radius:var(--radius-md);background:var(--color-warning-light);color:var(--color-warning-text)}.creation-compte-summary-actions{justify-content:flex-end;gap:var(--space-3);flex-wrap:wrap;display:flex}.creation-compte-message{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);margin:0}.creation-compte-message-error{border:1px solid var(--color-danger-border);background:var(--color-danger-light);color:var(--color-danger-text)}.creation-compte-message-success{border:1px solid var(--status-active-border);background:var(--status-active-bg);color:var(--status-active-text)}.creation-compte-actions{bottom:var(--space-3);justify-content:flex-end;gap:var(--space-3);padding:var(--space-4);border:var(--border-default);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff0;display:flex;position:sticky}.creation-compte-cancel,.creation-compte-submit{min-height:var(--button-height-md);padding:var(--button-padding-lg);border-radius:var(--radius-md);font-weight:var(--font-weight-semibold);cursor:pointer}.creation-compte-cancel{border:var(--border-default);background:var(--button-secondary-bg);color:var(--button-secondary-text)}.creation-compte-submit{gap:var(--space-2);background:var(--button-primary-bg);color:var(--button-primary-text);border:0;align-items:center;display:inline-flex}.creation-compte-submit:disabled{background:var(--button-disabled-bg);color:var(--button-disabled-text);cursor:wait}.creation-compte-checkbox{align-items:center;gap:var(--space-2);width:fit-content;min-height:2.75rem;padding:var(--space-2) var(--space-3);border:var(--border-width-thin) solid var(--input-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text-primary);cursor:pointer;display:inline-flex}.creation-compte-checkbox:hover{border-color:var(--color-primary)}.creation-compte-grid .creation-compte-checkbox input[type=checkbox]{width:1.125rem;height:1.125rem;min-height:1.125rem;accent-color:var(--color-primary);margin:0;padding:0}.creation-compte-checkbox span{font-weight:var(--font-weight-semibold)}.creation-cned-toggle{align-items:center;gap:var(--space-3);min-height:4.75rem;padding:var(--space-3) var(--space-4);border:1px solid var(--color-primary-light,#b9d3ff);border-radius:var(--radius-md);cursor:pointer;background:linear-gradient(135deg,#f5f9ff,#eef5ff);grid-column:1/-1;display:flex}.creation-cned-toggle:hover{border-color:var(--color-primary)}.creation-cned-toggle:has(input:checked){border-color:var(--color-primary);background:#eaf2ff}.creation-compte-grid .creation-cned-toggle input[type=checkbox]{width:1.25rem;height:1.25rem;min-height:1.25rem;accent-color:var(--color-primary);margin:0;padding:0}.creation-cned-toggle span{gap:.15rem;display:grid}.creation-cned-toggle strong{color:var(--color-text-primary)}.creation-cned-toggle small{color:var(--color-text-secondary)}@media (width>=760px){.creation-compte-page{padding:var(--space-8) var(--space-10)}.creation-compte-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.creation-compte-wide{grid-column:1/-1}.creation-compte-summary dl{column-gap:var(--space-8);grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1120px){.creation-compte-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.creation-compte-confirmation-field{grid-column:3}}@media print{body *{visibility:hidden}.creation-compte-summary-page,.creation-compte-summary-page *{visibility:visible}.creation-compte-summary-page{background:#fff;width:100%;padding:0;position:absolute;inset:0}.creation-compte-summary-actions{display:none}}.ajout-compte-cancel{border:1px solid var(--color-border);color:var(--color-text-primary);background:var(--color-surface)}.ajout-compte-submit{border:1px solid var(--color-primary);color:#fff;background:var(--color-primary)}.ajout-compte-cancel:disabled,.ajout-compte-submit:disabled{cursor:not-allowed;opacity:.65}@media (width>=40rem){.ajout-compte-overlay{place-items:center}.ajout-compte-actions{grid-template-columns:auto auto;justify-content:end}}.comptes-heading{gap:var(--space-4);flex-direction:column;display:flex}.comptes-add-button{min-height:var(--button-height-lg);justify-content:center;align-items:center;gap:var(--space-2);padding:var(--button-padding-lg);color:var(--button-primary-text);background:var(--button-primary-bg);border:1px solid var(--button-primary-border);border-radius:var(--radius-md);font-weight:var(--font-weight-semibold);cursor:pointer;box-shadow:var(--shadow-sm);transition:background-color var(--transition-fast), border-color var(--transition-fast), transform var(--transition-fast), box-shadow var(--transition-fast);display:inline-flex}.comptes-add-button:hover{background:var(--button-primary-bg-hover);border-color:var(--button-primary-bg-hover);box-shadow:var(--shadow-md);transform:translateY(-1px)}.comptes-add-button:focus-visible{box-shadow:var(--shadow-focus);outline:none}.comptes-add-button:active{transform:translateY(0)}.comptes-error{margin:0 0 var(--space-4);padding:var(--space-3) var(--space-4);color:var(--color-danger-text);background:var(--color-danger-light);border:1px solid var(--color-danger-border);border-radius:var(--radius-md)}.comptes-stat-card{align-items:center;gap:var(--space-4);min-height:116px;padding:var(--space-5);border-radius:var(--radius-xl);background:linear-gradient(135deg,#fffffffa,#f3f7ffeb);border:1px solid #2964be2e;transition:transform .22s,border-color .22s,box-shadow .22s;display:flex;position:relative;overflow:hidden;box-shadow:0 10px 28px #00275a14}.comptes-stat-card:after{content:"";border-radius:var(--radius-full);background:radial-gradient(circle,#0050be1f,#0000 68%);width:90px;height:90px;position:absolute;top:-44px;right:-40px}.comptes-stat-card:hover{border-color:#0050be61;transform:translateY(-3px);box-shadow:0 16px 34px #00275a21}.comptes-stat-icon{border-radius:var(--radius-full);flex:0 0 48px;place-items:center;width:48px;height:48px;display:grid}.comptes-stat-icon-total,.comptes-stat-icon-student{color:var(--color-primary);background:var(--color-primary-light)}.comptes-stat-icon-admin,.comptes-stat-icon-guardian{color:var(--color-success);background:var(--color-success-light)}.comptes-stat-icon-teacher{color:var(--color-warning);background:var(--color-warning-light)}.comptes-stat-icon-inactive{color:var(--color-danger);background:var(--color-danger-light)}.comptes-stat-card strong{color:var(--color-secondary);font-size:var(--font-size-xl)}.comptes-stat-card h2{margin:var(--space-1) 0;color:var(--color-secondary);font-size:var(--font-size-sm)}.comptes-stat-card p{color:var(--color-text-secondary);font-size:var(--font-size-xs);margin:0}.comptes-stats{margin-bottom:var(--space-5);padding:var(--space-3);border-radius:calc(var(--radius-xl) + 4px);background:radial-gradient(circle at 50% 0%, #0050be17, transparent 44%), var(--color-background);border:1px solid #2964be1f}.comptes-stats-grid{gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(145px,1fr));display:grid}.comptes-stats-toggle{display:none}.comptes-stat-card{gap:var(--space-2);min-height:76px;padding:var(--space-3);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs)}.comptes-stat-card:after{width:64px;height:64px;top:-34px;right:-30px}.comptes-stat-card:hover{transform:translateY(-2px)}.comptes-stat-icon{flex-basis:38px;width:38px;height:38px}.comptes-stat-icon svg{width:20px;height:20px}.comptes-stat-card strong{font-size:var(--font-size-lg)}.comptes-stat-card h2{font-size:var(--font-size-xs);margin:0}.comptes-stat-card p{display:none}@media (width<=767px){.comptes-stats{background:var(--color-surface);padding:0}.comptes-stats-toggle{align-items:center;gap:var(--space-2);width:100%;min-height:48px;padding:0 var(--space-3);color:var(--color-secondary);font:inherit;font-weight:var(--font-weight-semibold);text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:minmax(0,1fr) auto auto;display:grid}.comptes-stats-toggle__label{align-items:center;gap:var(--space-2);display:inline-flex}.comptes-stats-toggle__label svg{color:var(--color-primary)}.comptes-stats-toggle__value{color:var(--color-text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.comptes-stats-toggle__chevron{transition:transform var(--transition-fast)}.comptes-stats--expanded .comptes-stats-toggle__chevron{transform:rotate(180deg)}.comptes-stats-grid{gap:var(--space-2);padding:0 var(--space-2) var(--space-2);border-top:var(--border-default);grid-template-columns:repeat(2,minmax(0,1fr));display:none}.comptes-stats--expanded .comptes-stats-grid{display:grid}.comptes-stat-card{min-height:66px;padding:var(--space-2)}}.comptes-list{background:var(--color-surface);border:var(--border-default);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);overflow:hidden}.comptes-toolbar{gap:var(--space-3);padding:var(--space-4);border-bottom:var(--border-default);flex-direction:column;display:flex}.comptes-search-wrapper{align-items:center;gap:var(--space-2);min-height:var(--input-height-lg,44px);padding-inline:var(--space-3);background:var(--input-bg,var(--color-surface));border:var(--border-default);border-radius:var(--radius-md);display:flex}.comptes-search-icon{color:var(--color-text-secondary);flex:none}.comptes-search-input{width:100%;color:var(--input-text,var(--color-text-primary));font-size:var(--font-size-md);background:0 0;border:0;outline:0}.comptes-filter-wrapper{align-items:center;display:flex;position:relative}.comptes-filter-select{width:100%;min-height:var(--input-height-lg,44px);padding:0 var(--space-8) 0 var(--space-3);color:var(--color-text-primary);background:var(--input-bg,var(--color-surface));border:var(--border-default);border-radius:var(--radius-md);appearance:none;cursor:pointer}.comptes-filter-icon{right:var(--space-3);color:var(--color-text-secondary);pointer-events:none;position:absolute}.comptes-table-status{padding:var(--space-6);color:var(--color-text-secondary);text-align:center}.comptes-empty-state{align-items:center;gap:var(--space-3);padding:var(--space-8);color:var(--color-text-secondary);text-align:center;flex-direction:column;display:flex}.comptes-table-wrapper{width:100%;overflow-x:auto}.comptes-table{border-collapse:collapse;width:100%;min-width:640px}.comptes-table-row-clickable:focus-visible{outline:var(--border-focus);outline-offset:-2px}.comptes-table th,.comptes-table td{padding:var(--space-3) var(--space-4);text-align:left;white-space:nowrap}.comptes-table th{color:var(--color-text-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.03em;border-bottom:var(--border-default)}.comptes-table tbody tr{border-bottom:var(--border-default);transition:background-color .16s}.comptes-table tbody tr:hover{background:var(--color-primary-lighter)}.comptes-table tbody tr:last-child{border-bottom:0}.comptes-table-identity{align-items:center;gap:var(--space-3);display:flex}.comptes-role-badge{padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);display:inline-flex}.comptes-role-badge-admin{color:var(--color-primary);background:var(--color-primary-light)}.comptes-role-badge-teacher{color:var(--color-warning);background:var(--color-warning-light)}.comptes-role-badge-student{color:#174ea6;background:#e8f0fe}.comptes-role-badge-guardian{color:#6b21a8;background:#f3e8ff}.comptes-status{align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);display:inline-flex}.comptes-status-dot{border-radius:var(--radius-full);width:8px;height:8px}.comptes-status-active{color:var(--color-success)}.comptes-status-active .comptes-status-dot{background:var(--color-success)}.comptes-status-inactive{color:var(--color-danger)}.comptes-status-inactive .comptes-status-dot{background:var(--color-danger)}.comptes-pagination{gap:var(--space-3);padding:var(--space-4);border-top:var(--border-default);flex-direction:column;align-items:center;display:flex}.comptes-pagination-info{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin:0}.comptes-pagination-controls{align-items:center;gap:var(--space-1);display:flex}.comptes-pagination-button{min-width:32px;height:32px;padding-inline:var(--space-2);color:var(--color-text-primary);border:var(--border-default);border-radius:var(--radius-md);cursor:pointer;background:0 0;place-items:center;display:grid}.comptes-pagination-button:hover:not(:disabled){background:var(--color-primary-lighter)}.comptes-pagination-button:disabled{color:var(--color-text-disabled,var(--color-text-secondary));cursor:not-allowed}.comptes-pagination-button-active{color:var(--color-text-on-primary);background:var(--color-primary);border-color:var(--color-primary)}.comptes-pagination-ellipsis{padding-inline:var(--space-1);color:var(--color-text-secondary)}.details-heading{gap:var(--space-4);margin-bottom:var(--space-6);flex-direction:column;display:flex}.details-heading-top{align-items:flex-start;gap:var(--space-3);display:flex}.details-back-button{width:38px;height:38px;color:var(--color-text-primary);background:var(--color-surface);border:var(--border-default);border-radius:var(--radius-full);cursor:pointer;flex:none;place-items:center;display:grid}.details-back-button:hover{background:var(--color-primary-lighter)}.details-heading-actions{gap:var(--space-3);flex-wrap:wrap;display:flex}.details-action-secondary,.details-action-primary{min-height:var(--button-height-lg,44px);align-items:center;gap:var(--space-2);padding:var(--button-padding-lg,0 var(--space-4));border-radius:var(--radius-md);font-weight:var(--font-weight-semibold);cursor:not-allowed;display:inline-flex}.details-action-secondary{color:var(--color-text-primary);background:var(--color-surface);border:var(--border-default)}.details-action-primary{color:var(--button-primary-text);background:var(--button-primary-bg);border:1px solid var(--button-primary-border)}.details-summary-card{gap:var(--space-5);padding:var(--space-5);margin-bottom:var(--space-5);background:var(--color-surface);border:var(--border-default);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);flex-direction:column;display:flex}.details-summary-identity{gap:var(--space-4);display:flex}.details-summary-avatar{width:104px;height:104px;color:var(--color-primary);background:var(--color-primary-light);border:var(--border-default);border-radius:var(--radius-md);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);flex:none;place-items:center;display:grid;position:relative;overflow:visible}.details-summary-avatar img{object-fit:cover;border-radius:inherit;width:100%;height:100%;display:block}.details-summary-photo-edit{width:2.25rem;height:2.25rem;color:var(--color-primary);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-full);box-shadow:var(--shadow-sm);cursor:pointer;place-items:center;display:grid;position:absolute;bottom:-.5rem;right:-.5rem}.details-summary-photo-edit svg{pointer-events:none}.details-summary-photo-edit:hover{color:var(--button-primary-text);background:var(--button-primary-bg);border-color:var(--button-primary-border)}.details-summary-photo-edit input{opacity:0;width:1px;height:1px;position:absolute}.details-summary-photo-edit:has(input:disabled){opacity:.55;cursor:wait}.details-summary-identity h2{margin:0 0 var(--space-2);color:var(--color-secondary);font-size:var(--font-size-xl)}.details-summary-profile-link{margin:0 0 var(--space-2);color:var(--color-primary);font:inherit;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline;display:flex}.details-summary-line{align-items:center;gap:var(--space-2);margin:var(--space-2) 0 0;color:var(--color-text-secondary);font-size:var(--font-size-sm);display:flex}.details-summary-facts{gap:var(--space-3);padding-top:var(--space-4);border-top:var(--border-default);display:grid}.details-summary-facts div{padding-bottom:var(--space-2);border-bottom:var(--border-default);font-size:var(--font-size-sm);justify-content:space-between;display:flex}.details-summary-facts dt{color:var(--color-text-secondary)}.details-summary-facts dd{color:var(--color-text-primary);font-weight:var(--font-weight-medium);margin:0}.details-badge-success{color:var(--color-success)}.details-badge-danger{color:var(--color-danger)}.comptes-title+.comptes-breadcrumb{margin:var(--space-2) 0 0}.details-action-primary:not(:disabled),.details-action-secondary:not(:disabled){cursor:pointer}.school-years-create-form{padding:var(--space-4);border-bottom:var(--border-default)}.school-years-create-form .details-field-full:last-child{justify-content:flex-end;display:flex}.details-badge-info{color:var(--color-primary)}.details-tabs{gap:var(--space-2);margin-bottom:var(--space-5);border-bottom:var(--border-default);display:flex;overflow-x:auto}.details-tab{padding:var(--space-3) var(--space-4);color:var(--color-text-secondary);font-weight:var(--font-weight-medium);white-space:nowrap;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;flex:none}.details-tab:hover{color:var(--color-primary)}.details-tab-active{color:var(--color-primary);border-bottom-color:var(--color-primary);font-weight:var(--font-weight-semibold)}.details-panels{gap:var(--space-5);display:grid}.details-panel{padding:var(--space-5);background:var(--color-surface);border:var(--border-default);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm)}.details-panel h3{margin:0 0 var(--space-4);color:var(--color-secondary);font-size:var(--font-size-md)}.details-panel-side{gap:var(--space-5);flex-direction:column;display:flex}.details-form-grid{gap:var(--space-4);grid-template-columns:1fr;display:grid}.details-field{gap:var(--space-2);flex-direction:column;display:flex}.details-field-full{grid-column:1/-1}.details-field label{color:var(--color-text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.details-field input{min-height:var(--input-height-lg,44px);padding-inline:var(--space-3);color:var(--color-text-primary);background:var(--input-bg,var(--color-surface));border:var(--border-default);border-radius:var(--radius-md)}.details-field input:disabled{color:var(--color-text-secondary);background:var(--color-background);cursor:not-allowed}.details-security-list,.details-quick-actions{margin:0;padding:0;list-style:none}.details-security-list li{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:var(--border-default);font-size:var(--font-size-sm);display:flex}.details-security-list li:last-child{border-bottom:0}.details-security-value{align-items:center;gap:var(--space-2);display:flex}.details-password-dots{letter-spacing:2px}.details-mini-button{min-height:40px;padding:0 var(--space-5);color:var(--color-primary);background:var(--color-primary-lighter);border:1px solid var(--color-primary-light);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);cursor:pointer;transition:background-color var(--transition-fast), transform var(--transition-fast)}.details-technical-value{overflow-wrap:anywhere;max-width:18rem;font-family:monospace;font-size:var(--font-size-xs)}.details-mini-button:not(:disabled){cursor:pointer}.details-mini-button:hover{background:var(--color-primary-light);transform:translateY(-1px)}.details-quick-actions li button{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-3) 0;color:var(--color-text-primary);border:0;border-bottom:var(--border-default);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);text-align:left;cursor:not-allowed;background:0 0;display:flex}.details-quick-actions li:last-child button{border-bottom:0}.details-quick-action-arrow{margin-left:auto}.details-quick-action-danger{color:var(--color-danger)!important}.details-coming-soon{padding:var(--space-6);color:var(--color-text-secondary);text-align:center}.details-account-grid{margin-bottom:var(--space-5);background:var(--color-surface);border:var(--border-default);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);grid-template-columns:1fr;display:grid;overflow:hidden}.details-account-column{min-width:0;padding:var(--space-5);border-bottom:var(--border-default)}.details-account-column-heading{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.details-account-column-heading h3{margin:0}.details-account-column-heading span{color:var(--color-text-muted);background:var(--color-background);border-radius:var(--radius-full);font-size:var(--font-size-xs);white-space:nowrap;padding:.2rem .45rem}.details-account-column h3,.details-linked-card h3{margin:0 0 var(--space-4);color:var(--color-secondary);font-size:var(--font-size-sm)}.details-account-column dl{margin:0}.details-account-column dl div,.details-access-rights li{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:var(--border-default);font-size:var(--font-size-xs);display:flex}.details-account-column dl div:last-child,.details-access-rights li:last-child{border-bottom:0}.details-account-column dt{color:var(--color-text-secondary)}.details-account-column dd{font-weight:var(--font-weight-medium);text-align:right;margin:0}.details-account-actions{gap:var(--space-3);background:var(--color-surface-alt);flex-direction:column;display:flex}.details-account-actions h3{margin-bottom:var(--space-1)}.details-account-action-list{gap:var(--space-2);flex-direction:column;display:flex}.details-account-action-list button{justify-content:center;align-items:center;gap:var(--space-2);width:100%;min-width:0;min-height:36px;padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);cursor:pointer;transition:color var(--transition-fast), background-color var(--transition-fast), border-color var(--transition-fast), transform var(--transition-fast);display:flex}.details-account-action-list button:disabled{opacity:.45;cursor:not-allowed}.details-account-action-danger{color:var(--color-danger);border:var(--border-width-thin) solid var(--color-danger);background:var(--color-surface)!important}.details-account-action-warning{color:var(--color-warning);border:var(--border-width-thin) solid var(--color-warning);background:var(--color-surface)!important}.details-account-action-success{color:var(--color-success);border:var(--border-width-thin) solid var(--color-success);background:var(--color-surface)!important}.details-account-action-danger:hover:not(:disabled){background:var(--color-danger-light)!important}.details-account-action-warning:hover:not(:disabled){background:var(--color-warning-light)!important}.details-account-action-success:hover:not(:disabled){background:var(--color-success-light)!important}.details-account-action-list button:hover:not(:disabled){transform:translateY(-1px)}.details-password-reset-overlay{z-index:1200;padding:var(--space-4);background:#00183d94;place-items:center;display:grid;position:fixed;inset:0}.details-password-reset-dialog{width:min(100%,34rem);padding:var(--space-5);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg)}.details-password-reset-dialog header{align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-5);display:flex}.details-password-reset-dialog header>span{width:42px;height:42px;color:var(--color-primary);background:var(--color-primary-light);border-radius:var(--radius-full);flex:none;place-items:center;display:grid}.details-password-reset-dialog h2,.details-password-reset-dialog p{margin:0}.details-password-reset-dialog h2{color:var(--color-secondary);font-size:var(--font-size-lg)}.details-password-reset-dialog p{margin-top:var(--space-1);color:var(--color-text-secondary);font-size:var(--font-size-sm)}.details-password-reset-dialog form,.details-password-reset-dialog label{gap:var(--space-2);display:grid}.details-password-reset-dialog form{gap:var(--space-4)}.details-password-reset-dialog label{color:var(--color-text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.details-password-reset-dialog input{width:100%;min-height:var(--input-height-md);padding:0 var(--space-3);color:var(--input-text);background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-md);font:inherit}.details-password-reset-dialog input:focus{border-color:var(--input-border-focus);box-shadow:var(--shadow-focus);outline:none}.details-password-reset-input{display:flex;position:relative}.details-password-reset-input input{padding-right:3rem}.details-password-reset-input button{top:50%;right:var(--space-2);color:var(--color-text-muted);cursor:pointer;background:0 0;border:0;place-items:center;display:grid;position:absolute;transform:translateY(-50%)}.details-password-generate{justify-content:center;align-items:center;gap:var(--space-2);min-height:40px;color:var(--color-primary);background:var(--color-primary-lighter);border:1px solid var(--color-primary-light);border-radius:var(--radius-md);font-weight:var(--font-weight-semibold);cursor:pointer;display:inline-flex}.details-password-reset-dialog form>small{color:var(--color-text-muted)}.details-password-reset-dialog footer{gap:var(--space-3);margin-top:var(--space-2);flex-direction:column-reverse;display:flex}.details-password-reset-dialog footer button{min-height:44px;padding:0 var(--space-4);border-radius:var(--radius-md);font-weight:var(--font-weight-semibold);cursor:pointer}.details-password-cancel{color:var(--button-secondary-text);background:var(--button-secondary-bg);border:1px solid var(--button-secondary-border)}.details-password-confirm{color:var(--button-primary-text);background:var(--button-primary-bg);border:1px solid var(--button-primary-border)}.details-password-confirm:disabled{opacity:.55;cursor:wait}.details-access-rights{margin:0;padding:0;list-style:none}.details-access-rights strong{padding:var(--space-1) var(--space-2);color:var(--status-active-text);background:var(--status-active-bg);border-radius:var(--radius-full);font-size:var(--font-size-xs)}.details-linked-card{padding:var(--space-5);background:var(--color-surface);border:var(--border-default);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm)}.details-linked-card>div{gap:var(--space-4);grid-template-columns:1fr;display:grid}.details-linked-card p{gap:var(--space-1);flex-direction:column;margin:0;display:flex}.details-linked-card span{color:var(--color-text-muted);font-size:var(--font-size-xs)}.details-linked-card strong{color:var(--color-text-primary);font-size:var(--font-size-sm)}@media (width>=640px){.details-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.school-years-create-form{grid-template-columns:repeat(3,minmax(0,1fr))}.details-account-grid{grid-template-columns:minmax(0,1fr) minmax(11rem,13rem)}.details-account-column{border-right:var(--border-default)}.details-linked-card>div{grid-template-columns:repeat(3,minmax(0,1fr))}.details-password-reset-dialog footer{flex-direction:row;justify-content:flex-end}}@media (width>=768px){.details-heading-top{align-items:center}.details-summary-card{flex-direction:row;justify-content:space-between}.details-summary-facts{border-top:0;border-left:var(--border-default);min-width:320px;padding-top:0;padding-left:var(--space-5)}}@media (width>=1024px){.details-panels{grid-template-columns:2fr 1fr}.details-account-grid{grid-template-columns:minmax(0,1fr) minmax(12rem,14rem)}.details-account-column{border-bottom:0}.details-account-column:last-child{border-right:0}.details-summary-facts{flex:1;grid-template-columns:repeat(4,minmax(110px,1fr))}.details-summary-facts div{border-bottom:0;border-left:var(--border-default);padding:0 0 0 var(--space-4);flex-direction:column;justify-content:flex-start;align-items:flex-start}}@media (width>=768px){.comptes-toolbar{flex-direction:row;align-items:center}.comptes-search-wrapper{flex:1}.comptes-filter-wrapper{width:220px}.comptes-pagination{flex-direction:row;justify-content:space-between}.layout-page{grid-template-columns:260px minmax(0,1fr);display:grid}.layout-sidebar{z-index:auto;width:260px;height:100svh;box-shadow:none;position:sticky;top:0;transform:none}.layout-sidebar-close,.layout-menu-button,.layout-overlay{display:none}.accueil-main,.comptes-main{padding:var(--space-8)}.accueil-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.comptes-heading{flex-direction:row;justify-content:space-between;align-items:flex-start}}.comptes-table-row-clickable{cursor:pointer}.comptes-table-row-clickable:hover{background:var(--color-primary-lighter)}.comptes-table-row-locked{cursor:not-allowed;opacity:.55}.details-summary-card .details-summary-facts{border-top:0;border-left:0;width:100%;padding-top:0}.school-year-header-actions{gap:var(--space-2);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.school-year-header-actions button{justify-content:center;align-items:center;gap:var(--space-2);display:inline-flex}.school-year-global-form{gap:var(--space-5);display:grid}.school-year-global-form h2{margin:0 0 var(--space-4);color:var(--color-secondary);font-size:var(--font-size-md)}.school-year-period-edit-list{gap:var(--space-4);display:grid}.school-year-period-edit-list fieldset{min-width:0;padding:var(--space-4);border:var(--border-default);border-radius:var(--radius-md)}.school-year-period-edit-list fieldset:disabled{opacity:.65}.school-year-period-edit-list legend{align-items:center;gap:var(--space-2);padding-inline:var(--space-2);font-weight:var(--font-weight-semibold);display:inline-flex}.school-year-global-form-actions{gap:var(--space-3);flex-direction:column-reverse;display:flex}.school-year-global-form-actions button{min-height:44px;padding-inline:var(--space-4);border-radius:var(--radius-md);font-weight:var(--font-weight-semibold);cursor:pointer}.school-year-edit-section-heading{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.school-year-edit-section-heading h2,.school-year-section-intro{margin:0}.school-year-section-intro{margin-bottom:var(--space-4);color:var(--color-text-secondary);font-size:var(--font-size-sm)}.school-year-holiday-remove{align-self:end}.details-mini-button-danger{color:var(--color-danger)}.school-year-delete-overlay{z-index:1000;padding:var(--space-4);background:#0000008c;place-items:center;display:grid;position:fixed;inset:0}.school-year-delete-dialog{width:min(100%,34rem);max-height:calc(100vh - var(--space-8));padding:var(--space-5);background:var(--color-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow-y:auto}.school-year-delete-dialog h2{margin:var(--space-3) 0;color:var(--color-secondary);font-size:var(--font-size-lg)}.school-year-delete-warning-icon,.school-year-delete-warning{color:var(--color-danger)}.school-year-delete-dialog ul{padding-left:var(--space-5)}.school-year-delete-dialog form{gap:var(--space-3);display:grid}.school-year-delete-dialog label{font-weight:var(--font-weight-semibold)}.school-year-delete-dialog input{min-height:44px;padding-inline:var(--space-3);border:var(--border-default);border-radius:var(--radius-md)}.school-year-delete-dialog-actions{gap:var(--space-3);flex-direction:column-reverse;display:flex}.school-year-delete-dialog-actions button{min-height:44px;padding-inline:var(--space-4);border-radius:var(--radius-md);font-weight:var(--font-weight-semibold)}.school-year-delete-confirm-button{color:#fff;background:var(--color-danger);border:1px solid var(--color-danger);cursor:pointer}.school-year-delete-confirm-button:disabled{opacity:.5;cursor:not-allowed}.school-years-holidays{gap:var(--space-3);min-width:0;padding:var(--space-4);border:var(--border-default);border-radius:var(--radius-md);margin:0;display:grid}.school-years-holidays legend{padding-inline:var(--space-2);font-weight:var(--font-weight-semibold)}.school-years-holidays>p{color:var(--color-text-muted);font-size:var(--font-size-sm);margin:0}.school-years-holiday-row{gap:var(--space-3);padding:var(--space-3);border:var(--border-default);border-radius:var(--radius-md);display:grid}.school-years-holiday-row label{gap:var(--space-1);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);display:grid}.school-years-holiday-row input{min-height:42px}@media (width>=52rem){.school-years-holiday-row{grid-template-columns:minmax(10rem,1.4fr) 1fr 1fr auto;align-items:end}}.creation-compte-photo-field{grid-column:1/-1}.creation-compte-photo-picker{align-items:center;gap:var(--space-3);min-height:76px;padding:var(--space-3);border:var(--border-default);border-radius:var(--radius-lg);color:var(--color-primary);background:var(--color-surface-alt);cursor:pointer;display:flex;position:relative}.creation-compte-photo-picker img{object-fit:cover;border-radius:var(--radius-full);width:52px;height:52px}.creation-compte-photo-picker span{gap:var(--space-1);font-weight:var(--font-weight-semibold);display:grid}.creation-compte-photo-picker small{color:var(--color-text-muted);font-weight:var(--font-weight-normal)}.creation-compte-photo-picker input{opacity:0;width:1px;height:1px;position:absolute}.creation-compte-photo-adjustments{gap:var(--space-3);margin-top:var(--space-2);padding:var(--space-4);border:var(--border-default);border-radius:var(--radius-lg);background:var(--color-surface-alt);grid-column:1/-1;display:grid}.creation-compte-photo-adjustments label{gap:var(--space-2);color:var(--color-text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);display:grid}.creation-compte-photo-adjustments input[type=range]{width:100%}.creation-compte-summary-photo{object-fit:cover;border-radius:var(--radius-full);width:64px;height:64px}@media (width>=48rem){.details-heading{justify-content:space-between;align-items:flex-start;gap:var(--space-4);display:flex}.school-year-header-actions{justify-content:flex-end;margin-top:0}.school-year-global-form-actions,.school-year-delete-dialog-actions{flex-direction:row;justify-content:flex-end}}.creation-compte-photo-title{margin-bottom:var(--space-2);display:block}.creation-compte-photo-field{gap:var(--space-2);justify-items:start;display:grid}.creation-compte-photo-field .photo-cropper{justify-items:center}.creation-compte-photo-change{min-height:44px;padding:0 var(--space-4);border:var(--border-default);border-radius:var(--radius-lg);color:var(--color-primary);font-weight:var(--font-weight-semibold);cursor:pointer;align-items:center;display:inline-flex;position:relative}.creation-compte-photo-change input{opacity:0;width:1px;height:1px;position:absolute}.bc-toast-region{top:var(--space-4);right:var(--space-4);z-index:4000;gap:var(--space-3);pointer-events:none;width:min(100%,24rem);display:grid;position:fixed}.bc-toast{pointer-events:auto;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-lg);border:var(--border-default);box-shadow:var(--shadow-lg);background:var(--color-surface);grid-template-columns:auto 1fr auto;align-items:start;display:grid}.bc-toast__icon,.bc-alert>svg,.bc-dialog__icon{flex:none;justify-content:center;align-items:center;display:inline-flex}.bc-toast__body p,.bc-alert__content p,.bc-dialog__header p{margin:0}.bc-toast__body strong,.bc-alert__content strong{margin-bottom:2px;display:block}.bc-toast__close,.bc-alert__close,.bc-dialog__close{color:inherit;cursor:pointer;background:0 0;border:0;padding:0}.bc-toast--success{border-color:var(--alert-success-border);background:var(--alert-success-bg);color:var(--alert-success-text)}.bc-toast--error{border-color:var(--alert-danger-border);background:var(--alert-danger-bg);color:var(--alert-danger-text)}.bc-toast--warning{border-color:var(--alert-warning-border);background:var(--alert-warning-bg);color:var(--alert-warning-text)}.bc-toast--info{border-color:var(--alert-info-border);background:var(--alert-info-bg);color:var(--alert-info-text)}.bc-alert{align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);border:var(--border-default);display:flex}.bc-alert__content{flex:1}.bc-alert__content p{margin-top:2px}.bc-alert--success{border-color:var(--alert-success-border);background:var(--alert-success-bg);color:var(--alert-success-text)}.bc-alert--error{border-color:var(--alert-danger-border);background:var(--alert-danger-bg);color:var(--alert-danger-text)}.bc-alert--warning{border-color:var(--alert-warning-border);background:var(--alert-warning-bg);color:var(--alert-warning-text)}.bc-alert--info{border-color:var(--alert-info-border);background:var(--alert-info-bg);color:var(--alert-info-text)}.bc-dialog-backdrop{z-index:4100;padding:var(--space-4);background:#0312278c;place-items:center;display:grid;position:fixed;inset:0}.bc-dialog{border-radius:var(--radius-xl);background:var(--color-surface);width:min(100%,34rem);box-shadow:var(--shadow-lg);overflow:hidden}.bc-dialog__header{gap:var(--space-3);padding:var(--space-5);border-bottom:var(--border-default);grid-template-columns:auto 1fr auto;align-items:start;display:grid}.bc-dialog__header h2{font-size:var(--font-size-lg);margin:0}.bc-dialog__header p{margin-top:var(--space-1);color:var(--color-text-secondary)}.bc-dialog__actions{justify-content:flex-end;gap:var(--space-3);padding:var(--space-5);display:flex}.bc-btn{min-height:var(--button-height-md);padding:0 var(--space-4);border-radius:var(--radius-md);border:var(--border-default);cursor:pointer;font-weight:var(--font-weight-semibold)}.bc-btn--secondary{background:var(--button-secondary-bg);color:var(--button-secondary-text);border-color:var(--button-secondary-border)}.bc-btn--danger{background:var(--color-danger);color:#fff;border-color:var(--color-danger)}.bc-btn--warning{background:var(--color-warning);color:#fff;border-color:var(--color-warning)}.bc-btn--info{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.bc-field-error{margin:var(--space-1) 0 0;color:var(--alert-danger-text);font-size:var(--font-size-xs)}@media (width<=640px){.bc-toast-region{left:var(--space-4);right:var(--space-4);width:auto}.bc-dialog-backdrop{align-items:end}}.public-page{background:var(--color-background);flex-direction:column;min-height:100vh;display:flex}.public-page-header{padding:var(--space-4) var(--space-6);border-bottom:var(--border-default);background:var(--color-surface);justify-content:space-between;align-items:center;display:flex}.public-page-back{align-items:center;gap:var(--space-2);color:var(--color-text-secondary);cursor:pointer;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:0 0;border:none;font-weight:600;transition:background-color .15s,color .15s;display:inline-flex}.public-page-back:hover{background:var(--color-surface-hover);color:var(--color-primary)}.public-page-logo{height:36px}.public-page-main{width:100%;max-width:960px;padding:var(--space-8) var(--space-6) var(--space-12);flex:1;margin:0 auto}.public-page-intro{text-align:center;margin-bottom:var(--space-8)}.public-page-title{color:var(--color-secondary);margin:0 0 var(--space-3);font-size:1.8rem;font-weight:700}.public-page-description{color:var(--color-text-secondary);max-width:640px;margin:0 auto;font-size:1rem;line-height:1.6}.about-developers{gap:var(--space-5);margin-bottom:var(--space-8);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));display:grid}.about-developer-card{background:var(--color-surface);border:var(--border-default);border-radius:var(--radius-lg);padding:var(--space-6);text-align:center;box-shadow:var(--shadow-xs)}.about-developer-avatar{background:var(--color-primary-light);width:56px;height:56px;color:var(--color-primary);margin-bottom:var(--space-4);border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.about-developer-name{color:var(--color-text-primary);margin:0 0 var(--space-1);font-size:1.1rem;font-weight:700}.about-developer-role{color:var(--color-accent);text-transform:uppercase;letter-spacing:.03em;margin:0 0 var(--space-3);font-size:.85rem;font-weight:600}.about-developer-bio{color:var(--color-text-secondary);margin:0;font-size:.9rem;line-height:1.55}.business-card-mini{align-items:center;gap:var(--space-4);margin-top:var(--space-4);padding:var(--space-4);border-radius:var(--radius-lg);background:linear-gradient(135deg, var(--color-secondary), var(--color-primary-active));border:var(--border-width-thin) solid #ffffff1f;text-align:left;display:flex}.business-card-mini-avatar{background:var(--color-accent);width:52px;height:52px;color:var(--color-text-on-accent);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:1rem;font-weight:700;display:inline-flex}.business-card-mini-body{min-width:0}.business-card-mini-name{color:var(--color-text-on-secondary);margin:0;font-size:.95rem;font-weight:700}.business-card-mini-status{margin:var(--space-1) 0 var(--space-2);color:#ffffffbf;font-size:.78rem}.business-card-mini-stack{gap:var(--space-2);margin-bottom:var(--space-3);display:flex}.business-card-mini-icon{border-radius:var(--radius-md);width:26px;height:26px;color:var(--color-accent);background:#ffffff1a;justify-content:center;align-items:center;display:inline-flex}.business-card-mini-links{gap:var(--space-2);flex-wrap:wrap;display:flex}.business-card-mini-link{align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full,999px);border:var(--border-width-thin) solid #ffffff4d;color:var(--color-text-on-secondary);font-size:.78rem;font-weight:600;text-decoration:none;transition:background-color .15s,border-color .15s;display:inline-flex}.business-card-mini-link:hover{background:#ffffff26;border-color:#fff9}@media (width<=480px){.business-card-mini{text-align:center;flex-direction:column}.business-card-mini-links{justify-content:center}}.about-footer-note{justify-content:center;align-items:center;gap:var(--space-2);color:var(--color-text-muted);font-size:.85rem;display:flex}.tuition-contact{justify-content:center;align-items:center;gap:var(--space-2);margin:var(--space-3) 0 0;color:var(--color-text-secondary);flex-wrap:wrap;font-size:.85rem;display:flex}.tuition-contact svg{color:var(--color-primary)}.tuition-fee-groups{gap:var(--space-5);margin-bottom:var(--space-6);grid-template-columns:repeat(auto-fit,minmax(260px,1fr));display:grid}.tuition-fee-group{background:var(--color-surface);border:var(--border-default);border-radius:var(--radius-lg);padding:var(--space-5);box-shadow:var(--shadow-xs)}.tuition-fee-group--wide{grid-column:1/-1}.tuition-table-scroll{overflow-x:auto}.tuition-fee-group-title{align-items:center;gap:var(--space-2);color:var(--color-secondary);margin:0 0 var(--space-3);font-size:1rem;font-weight:700;display:flex}.tuition-fee-group-note{margin:var(--space-2) 0 0;color:var(--color-text-muted);font-size:.8rem;line-height:1.5}.tuition-info-groups{gap:var(--space-5);margin-bottom:var(--space-9);grid-template-columns:repeat(auto-fit,minmax(260px,1fr));display:grid}.tuition-info-card{background:var(--color-surface);border:var(--border-default);border-radius:var(--radius-lg);padding:var(--space-5);box-shadow:var(--shadow-xs);color:var(--color-text-secondary);font-size:.88rem;line-height:1.6}.tuition-info-card--warning{background:var(--color-danger-light,#fff2f2);border-color:var(--color-danger-border,#f3c5c5)}.tuition-info-list{margin:0 0 var(--space-2);gap:var(--space-2);padding-left:1.1rem;display:grid}.tuition-info-list strong{color:var(--color-primary)}.tuition-fee-table{border-collapse:collapse;width:100%;font-size:.9rem}.tuition-fee-table th{text-align:left;color:var(--color-text-muted);padding:var(--space-2) 0;border-bottom:var(--border-default);font-weight:600}.tuition-fee-table td{padding:var(--space-2) 0;border-bottom:var(--border-width-thin) solid var(--color-divider);color:var(--color-text-primary)}.tuition-fee-table td:last-child{text-align:right;color:var(--color-primary);font-weight:600}.tuition-fee-table tr:last-child td{border-bottom:none}.tuition-enrollment{background:var(--color-primary-lighter);border:var(--border-default);border-radius:var(--radius-lg);padding:var(--space-6);text-align:center}.tuition-enrollment-download{align-items:center;gap:var(--space-2);margin-top:var(--space-4);padding:var(--space-3) var(--space-5);border-radius:var(--radius-md);background:var(--color-primary);color:var(--color-text-on-primary);cursor:pointer;border:none;font-weight:600;transition:background-color .15s;display:inline-flex}.tuition-enrollment-download:hover{background:var(--color-primary-hover)}.tuition-print-button{bottom:var(--space-6);right:var(--space-6);background:var(--color-secondary);width:52px;height:52px;color:var(--color-text-on-secondary);cursor:pointer;box-shadow:var(--shadow-md);border:none;border-radius:50%;justify-content:center;align-items:center;display:inline-flex;position:fixed}.tuition-print-button:hover{background:var(--color-secondary-hover)}.print-only{display:none}.enrollment-form-header{align-items:center;gap:var(--space-4);margin-bottom:var(--space-6);padding-bottom:var(--space-4);border-bottom:var(--border-width-thick) double var(--color-border-strong);display:flex}.enrollment-form-logo{height:48px}.enrollment-form-header h2{margin:0 0 var(--space-1)}.enrollment-form-header p{color:var(--color-text-secondary);margin:0}.enrollment-form-section{margin-bottom:var(--space-5)}.enrollment-form-section h3{text-transform:uppercase;letter-spacing:.03em;color:var(--color-secondary);margin:0 0 var(--space-3);font-size:.95rem}.enrollment-form-grid{gap:var(--space-4);grid-template-columns:repeat(2,1fr);display:grid}.enrollment-form-grid label{gap:var(--space-1);color:var(--color-text-secondary);flex-direction:column;font-size:.85rem;font-weight:600;display:flex}.enrollment-form-grid label span{color:var(--color-text-primary);font-weight:400}.enrollment-form-footer{margin-top:var(--space-8);color:var(--color-text-secondary);justify-content:space-between;display:flex}@media print{.no-print{display:none!important}.print-only{display:block!important}.public-page-main{max-width:none;padding:0}body{background:#fff}}@media (width<=640px){.enrollment-form-grid{grid-template-columns:1fr}}.csw__avatar,.csw__pill-avatar{color:var(--color-text-on-primary);background:var(--color-primary);border-radius:var(--radius-full);font-weight:var(--font-weight-bold);flex:none;place-items:center;display:grid}.csw__avatar{width:32px;height:32px;font-size:var(--font-size-xs)}.csw__pill-avatar{width:40px;height:40px;font-size:var(--font-size-sm)}.csw-chip{align-items:center;gap:var(--space-2);max-width:62vw;min-height:44px;color:var(--color-secondary);background:var(--color-primary-light);border:1px solid var(--color-primary);border-radius:var(--radius-full);cursor:pointer;padding:4px 12px 4px 6px;display:inline-flex}.csw-chip__text{text-align:left;flex-direction:column;min-width:0;line-height:1.15;display:flex}.csw-chip__text small{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.62rem}.csw-chip__text strong{text-overflow:ellipsis;white-space:nowrap;font-size:var(--font-size-sm);overflow:hidden}.csw-sheet-backdrop{z-index:1100;background:#0f172a73;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.csw-sheet{width:100%;max-width:480px;padding:var(--space-4);padding-bottom:calc(var(--space-4) + env(safe-area-inset-bottom,0px));background:var(--color-surface);border-radius:var(--radius-lg) var(--radius-lg) 0 0;animation:.2s ease-out csw-sheet-in}.csw-sheet__header{margin-bottom:var(--space-3);justify-content:space-between;align-items:center;display:flex}.csw-sheet__header h2{font-size:var(--font-size-lg);color:var(--color-secondary);margin:0}.csw-sheet__header button{cursor:pointer;width:40px;height:40px;color:var(--color-text-secondary);background:0 0;border:0;place-items:center;display:grid}.csw__list{gap:var(--space-2);flex-direction:column;max-height:60vh;display:flex;overflow-y:auto}.csw__pill{align-items:center;gap:var(--space-3);min-height:56px;padding:var(--space-2) var(--space-3);text-align:left;color:var(--color-text-secondary);background:var(--color-surface-alt);border:var(--border-default);border-radius:var(--radius-md);cursor:pointer;display:flex}.csw__pill-text{flex-direction:column;flex:1;min-width:0;display:flex}.csw__pill-text strong{color:var(--color-secondary)}.csw__pill-text small{color:var(--color-text-muted)}.csw__pill:hover{background:var(--color-surface-hover)}.csw__pill--active{color:var(--color-primary);background:var(--color-primary-light);border-color:var(--color-primary)}.csw__pill:not(.csw__pill--active) .csw__pill-avatar{background:var(--color-neutral)}@keyframes csw-sheet-in{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:none}}@media (width>=768px){.csw-sheet-backdrop{align-items:center}.csw-sheet{border-radius:var(--radius-lg)}}.gch-state{padding:var(--space-8) var(--space-6);text-align:center;color:var(--color-text-secondary)}.gch-state h1{margin:0 0 var(--space-2);color:var(--color-secondary);font-size:var(--font-size-xl)}.gch-state__error{padding:var(--space-3) var(--space-4);color:var(--color-danger-text);background:var(--color-danger-light);border:1px solid var(--color-danger-border);border-radius:var(--radius-md);display:inline-block}.csw-toast{z-index:1200;color:#fff;background:#1e3a8a;border-radius:12px;max-width:min(92vw,420px);padding:12px 18px;font-size:.92rem;font-weight:600;animation:.25s ease-out csw-toast-in;position:fixed;bottom:88px;left:50%;transform:translate(-50%);box-shadow:0 10px 30px #0f172a47}@keyframes csw-toast-in{0%{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%)}}.csw-bar{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:var(--color-surface);border-bottom:1px solid var(--header-border,var(--color-border-light));display:flex}.csw-bar__label{color:var(--color-text-muted);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.csw-chip--flat{background:var(--color-primary-lighter);border-color:#0000;max-width:100%;min-height:36px;padding:2px 10px 2px 3px}.csw-chip--flat:hover{background:var(--color-primary-light)}.csw-chip--flat .csw__avatar{width:28px;height:28px}.csw-chip__name{text-overflow:ellipsis;white-space:nowrap;font-size:var(--font-size-sm);overflow:hidden}.header-user{--user-accent:var(--color-primary);margin-left:auto;position:relative}.header-user--teacher{--user-accent:var(--color-secondary)}.header-user--student{--user-accent:var(--color-accent)}.header-user__trigger{align-items:center;gap:var(--space-2);max-width:280px;padding:4px var(--space-2) 4px 4px;color:var(--color-text-primary);background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-full);box-shadow:var(--shadow-xs);cursor:pointer;display:flex}.header-user__trigger:hover{background:var(--color-primary-lighter)}.header-user__trigger:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.header-user__avatar{width:36px;height:36px;color:var(--color-text-on-primary);background:var(--user-accent);border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);letter-spacing:.02em;flex:none;place-items:center;display:grid}.header-user__identity{flex-direction:column;align-items:flex-start;min-width:0;line-height:1.2;display:flex}.header-user__name{text-overflow:ellipsis;white-space:nowrap;max-width:180px;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);overflow:hidden}.header-user__role{color:var(--user-accent);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}.header-user__chevron{color:var(--color-text-secondary);flex:none}.header-user__menu{top:calc(100% + var(--space-2));z-index:80;background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);min-width:220px;box-shadow:var(--shadow-md);position:absolute;right:0;overflow:hidden}.header-user__menu-identity{padding:var(--space-3);border-bottom:1px solid var(--color-border-light);gap:2px;display:grid}.header-user__menu-identity span{color:var(--user-accent);font-size:var(--font-size-xs)}.header-user__menu .layout-logout-wrapper{padding:var(--space-1)}.user-menu-logout{align-items:center;gap:var(--space-3);width:100%;min-height:42px;padding-inline:var(--space-3);color:var(--color-danger);border-radius:var(--radius-md);font-weight:var(--font-weight-medium);text-align:left;cursor:pointer;background:0 0;border:0;display:flex}.user-menu-logout:hover:not(:disabled){background:var(--color-danger-light)}.user-menu-logout:disabled{color:var(--color-text-disabled);cursor:wait}@media (width<=767px){.header-user__identity,.header-user__chevron{display:none}.header-user__trigger{padding:3px}}.gtour-overlay{z-index:var(--z-toast);pointer-events:none;position:fixed;inset:0}.gtour-spotlight{z-index:var(--z-toast);border-radius:var(--radius-md);border:2px solid var(--color-accent);pointer-events:none;transition:top .25s,left .25s,width .25s,height .25s;position:fixed;box-shadow:0 0 0 9999px #00142e99}.gtour-tooltip{z-index:var(--z-toast);width:340px;max-width:calc(100vw - 32px);padding:var(--space-5);background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);pointer-events:auto;transition:top .25s,left .25s;position:fixed}.gtour-tooltip__close{top:var(--space-3);right:var(--space-3);width:28px;height:28px;color:var(--color-text-muted);border-radius:var(--radius-full);cursor:pointer;background:0 0;border:0;place-items:center;display:grid;position:absolute}.gtour-tooltip__close:hover{background:var(--color-surface-hover);color:var(--color-text-primary)}.gtour-tooltip__step{margin-bottom:var(--space-2);color:var(--color-primary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.04em;display:inline-block}.gtour-tooltip h3{margin:0 0 var(--space-2);padding-right:var(--space-6);font-size:var(--font-size-md);color:var(--color-text-primary)}.gtour-tooltip p{margin:0 0 var(--space-4);font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:var(--line-height-normal)}.gtour-tooltip__actions{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.gtour-tooltip__skip{color:var(--color-text-muted);font-size:var(--font-size-xs);cursor:pointer;background:0 0;border:0;padding:0}.gtour-tooltip__skip:hover{text-decoration:underline}.gtour-tooltip__nav{align-items:center;gap:var(--space-2);display:flex}.gtour-tooltip__btn{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;align-items:center;gap:4px;display:inline-flex}.gtour-tooltip__btn--primary{color:var(--button-primary-text);background:var(--button-primary-bg);border:1px solid var(--button-primary-border)}.gtour-tooltip__btn--primary:hover{background:var(--button-primary-bg-hover)}.gtour-tooltip__btn--ghost{color:var(--color-text-secondary);border:1px solid var(--color-border);background:0 0}.gtour-tooltip__btn--ghost:hover{background:var(--color-surface-hover)}@media (width<=767px){html{font-size:100%}select,textarea,input:not([type=checkbox]):not([type=radio]):not([type=file]){min-height:44px;font-size:16px}.layout-navigation-item,.layout-navigation-subitem,.comptes-pagination-button,.sgp-more__btn,.sgp-period-picker__button,.sp-btn-reset,.scp-btn-reset,.sjp-btn-reset{min-height:44px}.comptes-pagination-button{min-width:44px}.sp-page,.scp-page{min-width:40px;min-height:40px}.stp-day-tab{min-height:44px}.tmp-workspace{grid-template-columns:minmax(0,1fr)}.tmp-class-sidebar{min-width:0}.ntp-stats,.adp-stats-grid{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr))}.ntp-stat-card{padding:var(--space-3);align-items:flex-start;gap:var(--space-2);flex-direction:column}.ntp-stat-card strong{font-size:1.5rem}.ntp-stats>:last-child:nth-child(odd){grid-column:1/-1}}.mcards{margin:0;padding:0;list-style:none;display:none}@media (width<=767px){.mcards-hide{display:none!important}.mcards{gap:var(--space-2);padding:var(--space-3);grid-template-columns:minmax(0,1fr);display:grid}.mcards>li{min-width:0}.mcard{box-sizing:border-box;align-items:center;gap:var(--space-3);width:100%;min-height:64px;padding:var(--space-2) var(--space-3);text-align:left;font:inherit;color:inherit;background:var(--color-surface);border:var(--border-default);border-radius:var(--radius-md);cursor:pointer;display:flex}.mcard:active{background:var(--table-row-hover-bg)}.mcard__lead{flex:none;display:flex}.mcard__info{flex-direction:column;flex:1;min-width:0;line-height:1.3;display:flex}.mcard__info strong{text-overflow:ellipsis;white-space:nowrap;color:var(--color-secondary);overflow:hidden}.mcard__info span{text-overflow:ellipsis;white-space:nowrap;color:var(--color-text-secondary);font-size:var(--font-size-sm);overflow:hidden}.mcard__info small{color:var(--color-primary);font-weight:var(--font-weight-semibold)}.mcard__badge{flex:none}.mcard__actions{padding:0 var(--space-3) var(--space-3);background:var(--color-surface);border:var(--border-default);border-radius:0 0 var(--radius-md) var(--radius-md);border-top:0;justify-content:flex-end;display:flex}.mcard:has(+.mcard__actions){border-radius:var(--radius-md) var(--radius-md) 0 0}}.adp-stat-card:has(.adp-stat-card__icon){text-align:left;align-items:flex-start}.adp-stat-card:has(.adp-stat-card__icon)>*{align-self:flex-start}@media (width<=767px){[class$=-breadcrumb] button{align-items:center;min-height:40px;padding-inline:4px;display:inline-flex}[class*=-pagination] button{min-width:44px!important;min-height:44px!important}.adp-stat-card__link,.adp-panel-link{align-items:center;min-height:44px;display:inline-flex}.adp-performance-zoom button{min-width:40px;min-height:40px}.attendance-summary{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr))}.attendance-summary>:last-child:nth-child(odd){grid-column:1/-1}}
