@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--leading-tight:1.25;--leading-snug:1.375;--leading-normal:1.5;--leading-relaxed:1.625;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--shadow-xs:0 1px 2px 0 #0000000d;--shadow-sm:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--shadow-2xl:0 25px 50px -12px #00000040;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.static{position:static}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.block{display:block}.hidden{display:none}.table{display:table}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}}:root{--primary-color:#c99383;--primary-light:#e8c4b5;--primary-dark:#b07a6a;--primary-50:#f9f5f3;--primary-100:#f0e8e4;--secondary-color:#f8f9fa;--secondary-dark:#e9ecef;--tertiary-color:#212529;--tertiary-light:#495057;--tertiary-lighter:#6c757d;--quaternary-color:#fff;--gray-50:#f8f9fa;--gray-100:#f1f3f5;--gray-200:#e9ecef;--gray-300:#dee2e6;--gray-400:#ced4da;--gray-500:#adb5bd;--gray-600:#868e96;--gray-700:#495057;--gray-800:#343a40;--gray-900:#212529;--success:#28a745;--success-light:#d4edda;--error:#dc3545;--error-light:#f8d7da;--warning:#ffc107;--warning-light:#fff3cd;--info:#17a2b8;--info-light:#d1ecf1;--font-sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--font-serif:"Merriweather",serif;--font-mono:"Roboto Mono",monospace;--font-display:"Playfair Display",serif;--font-heading:"Montserrat",sans-serif;--font-body:"Roboto",sans-serif;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--text-5xl:3rem;--font-normal:400;--font-medium:500;--font-semibold:600;--font-bold:700;--leading-tight:1.25;--leading-snug:1.375;--leading-normal:1.5;--leading-relaxed:1.625;--leading-loose:2;--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;--space-24:6rem;--spacing-xs:var(--space-2);--spacing-sm:var(--space-4);--spacing-md:var(--space-6);--spacing-lg:var(--space-8);--spacing-xl:var(--space-12);--spacing-2xl:var(--space-16);--radius-xs:.125rem;--radius-sm:.25rem;--radius-md:.5rem;--radius-lg:.75rem;--radius-xl:1rem;--radius-2xl:1.5rem;--radius-full:9999px;--shadow-xs:0 1px 2px 0 #0000000d;--shadow-sm:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;--shadow-xl:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;--shadow-2xl:0 25px 50px -12px #00000040;--shadow-inner:inset 0 2px 4px 0 #0000000f;--shadow-card:var(--shadow-md);--shadow-hover:var(--shadow-lg);--breakpoint-xs:480px;--breakpoint-sm:640px;--breakpoint-md:768px;--breakpoint-lg:1024px;--breakpoint-xl:1280px;--breakpoint-2xl:1536px;--layout-max:1280px;--transition-fast:.15s cubic-bezier(.4,0,.2,1);--transition-base:.25s cubic-bezier(.4,0,.2,1);--transition-slow:.35s cubic-bezier(.4,0,.2,1);--transition-all:all var(--transition-base);--z-dropdown:1000;--z-sticky:1020;--z-fixed:1030;--z-modal-backdrop:1040;--z-modal:1050;--z-popover:1060;--z-tooltip:1070}@media(min-width:1600px){:root{--layout-max:1520px}}@media(min-width:1920px){:root{--layout-max:1680px}}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-sans);color:var(--tertiary-color);line-height:var(--leading-normal);font-size:var(--text-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-family:var(--font-sans);font-weight:var(--font-bold);line-height:var(--leading-tight);color:var(--tertiary-color);margin-bottom:var(--space-4)}h1{font-size:var(--text-4xl)}h2{font-size:var(--text-3xl)}h3{font-size:var(--text-2xl)}h4{font-size:var(--text-xl)}h5{font-size:var(--text-lg)}h6{font-size:var(--text-base)}p{margin-bottom:var(--space-4);line-height:var(--leading-relaxed)}a{color:inherit;transition:var(--transition-all);text-decoration:none}img{max-width:100%;height:auto;display:block}.main-footer{background-color:var(--quaternary-color);color:var(--quaternary-color);border-top:1px solid var(--gray-400);padding:var(--space-16)0 var(--space-8);margin-top:var(--space-20)}.footer-content{max-width:var(--layout-max);padding:0 var(--space-4);margin:0 auto}.footer-grid{gap:var(--space-8);margin-bottom:var(--space-8);grid-template-columns:repeat(auto-fit,minmax(250px,1fr));display:grid}.footer-section h3,.footer-section h4{color:var(--tertiary-color);margin-top:0;margin-bottom:var(--space-4);font-family:var(--font-sans)}.footer-section h3{font-size:var(--text-2xl);font-weight:var(--font-bold)}.logo-dot{color:var(--primary-color)}.footer-description{margin-bottom:var(--space-4);color:var(--tertiary-color);line-height:var(--leading-relaxed);font-size:var(--text-sm)}.footer-links{margin:0;padding:0;list-style:none}.footer-links li{margin-bottom:var(--space-2)}.footer-links a{color:var(--tertiary-color);font-size:var(--text-sm);transition:var(--transition-all);text-decoration:none}.footer-links a:hover{color:var(--primary-color);padding-left:var(--space-1)}.contact-info{margin:0;padding:0;list-style:none}.contact-info li{align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);color:var(--tertiary-color);font-size:var(--text-sm);display:flex}.contact-info i{color:var(--tertiary-color);width:20px;font-size:var(--text-base)}.contact-info a{color:var(--tertiary-color);transition:var(--transition-all);text-decoration:none}.contact-info a:hover{color:var(--primary-color)}.social-links{gap:var(--space-3);margin-top:var(--space-4);display:flex}.social-link{background-color:var(--tertiary-color);border-radius:var(--radius-full);width:44px;height:44px;color:var(--quaternary-color);transition:var(--transition-all);justify-content:center;align-items:center;text-decoration:none;display:flex}.social-link:hover{background-color:var(--primary-color);box-shadow:var(--shadow-md);transform:translateY(-2px)}.social-link img{object-fit:contain;width:24px;height:24px}.footer-img{justify-content:center;align-items:center;display:flex}.footer-img img{opacity:.7;width:auto;height:70px}.footer-bottom{padding-top:var(--space-6);margin-top:var(--space-8);border-top:1px solid #ffffff1a}.footer-bottom-content{justify-content:space-between;align-items:center;gap:var(--space-4);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.footer-legal{gap:var(--space-6);display:flex}.footer-legal a{color:#ffffffbf;font-size:var(--text-sm);transition:var(--transition-all);text-decoration:none}.footer-legal a:hover{color:var(--primary-light)}.about{padding:var(--space-20)0;background-color:var(--quaternary-color)}.about-content{gap:var(--space-12);grid-template-columns:1fr 1fr;align-items:center;display:grid}.about-content h2{font-size:clamp(1.875rem,4vw,2.5rem);font-weight:var(--font-bold);margin-bottom:var(--space-6);color:var(--tertiary-color);font-family:var(--font-sans);line-height:var(--leading-tight)}.about-quote{color:var(--primary-color);margin-bottom:var(--space-6);font-size:clamp(1.25rem,2.5vw,1.5rem);font-style:italic;font-weight:var(--font-semibold);line-height:var(--leading-relaxed)}.about-text{font-size:var(--text-lg);color:var(--tertiary-color);margin-bottom:var(--space-8);max-width:58ch;line-height:1.8}.about-features{gap:var(--space-6);grid-template-columns:repeat(2,1fr);display:grid}.about-feature{align-items:center;gap:var(--space-3);color:var(--tertiary-color);font-size:var(--text-base);display:flex}.about-feature i{color:var(--tertiary-color);font-size:var(--text-xl);width:24px}.about-image{justify-content:center;align-items:center;display:flex}.about-image img{border-radius:var(--radius-xl);max-width:100%;height:auto;box-shadow:var(--shadow-lg)}.features{padding:var(--space-20)0;background-color:var(--secondary-color)}.features h2{text-align:center;font-size:clamp(1.875rem,4vw,2.5rem);font-weight:var(--font-bold);margin-bottom:var(--space-12);color:var(--tertiary-color);font-family:var(--font-sans);line-height:var(--leading-tight)}.benefits-grid{gap:var(--space-8);grid-template-columns:repeat(3,1fr);display:grid}.feature-card{background-color:var(--quaternary-color);border-radius:var(--radius-xl);padding:var(--space-8);box-shadow:var(--shadow-sm);transition:var(--transition-all);border:1px solid var(--gray-200)}.feature-card:hover{box-shadow:var(--shadow-lg);border-color:var(--gray-300);transform:translateY(-4px)}.benefit-icon{text-align:left;margin-bottom:var(--space-6);color:var(--primary-color);font-size:2rem;line-height:1}.benefit-icon i{border-radius:var(--radius-lg);background-color:#c9938324;border:1px solid #c993833d;justify-content:center;align-items:center;width:52px;height:52px;display:inline-flex}.feature-card h3{font-size:var(--text-xl);font-weight:var(--font-semibold);margin-bottom:var(--space-4);color:var(--tertiary-color);text-align:left;font-family:var(--font-sans);line-height:var(--leading-snug)}.feature-card p{color:var(--tertiary-light);text-align:left;line-height:1.8;font-size:var(--text-base);max-width:34ch}.about-section{padding:var(--space-20)0;background-color:var(--quaternary-color)}.about-section h2{text-align:center;font-size:clamp(1.875rem,4vw,2.5rem);font-weight:var(--font-bold);margin-bottom:var(--space-6);color:var(--tertiary-color);font-family:var(--font-sans);line-height:var(--leading-tight)}.about-section h3{text-align:center;font-size:clamp(1.5rem,3vw,2rem);font-weight:var(--font-semibold);margin-bottom:var(--space-12);color:var(--tertiary-color);font-family:var(--font-sans);line-height:var(--leading-snug)}.contact-section{padding:var(--space-20)0;background-color:var(--quaternary-color)}.contact-container{gap:var(--space-12);max-width:var(--layout-max);padding:0 var(--space-4);grid-template-columns:1fr 1fr;margin:0 auto;display:grid}.contact-info-2 h2{font-size:clamp(1.5rem,3vw,2rem);font-weight:var(--font-bold);margin-bottom:var(--space-8);color:var(--tertiary-color);font-family:var(--font-sans);line-height:var(--leading-tight)}.contact-details{gap:var(--space-6);flex-direction:column;display:flex}.contact-item{align-items:center;gap:var(--space-3);color:var(--tertiary-color);font-size:var(--text-base);display:flex}.contact-item i{color:var(--primary-color);font-size:var(--text-xl);width:24px}.contact-item a{color:var(--tertiary-color);transition:var(--transition-all);text-decoration:none}.contact-item a:hover{color:var(--primary-color)}.contact-form h2{font-size:clamp(1.5rem,3vw,2rem);font-weight:var(--font-bold);margin-bottom:var(--space-8);color:var(--tertiary-color);font-family:var(--font-sans);line-height:var(--leading-tight)}.rdv-container{max-width:900px;padding:var(--space-12)var(--space-4);background-color:var(--quaternary-color);min-height:calc(100vh - 200px);margin:0 auto}.rdv-header{text-align:center;margin-bottom:var(--space-12)}.page-title{font-size:clamp(1.875rem,4vw,2.5rem);font-weight:var(--font-bold);margin-bottom:var(--space-3);color:var(--tertiary-color);font-family:var(--font-sans);line-height:var(--leading-tight)}.page-subtitle{font-size:var(--text-lg);color:var(--tertiary-light);font-weight:var(--font-normal)}.rdv-progress{margin-bottom:var(--space-12)}.progress-steps{justify-content:center;align-items:center;gap:var(--space-4);display:flex}.step{align-items:center;gap:var(--space-2);flex-direction:column;display:flex}.step-number{border-radius:var(--radius-full);background-color:var(--gray-200);width:44px;height:44px;color:var(--tertiary-light);font-weight:var(--font-semibold);border:2px solid var(--gray-200);transition:var(--transition-all);font-size:var(--text-base);justify-content:center;align-items:center;display:flex}.step.active .step-number{background-color:var(--primary-color);color:var(--quaternary-color);border-color:var(--primary-color);box-shadow:var(--shadow-md)}.step-label{font-size:var(--text-sm);color:var(--tertiary-light);font-weight:var(--font-medium)}.step.active .step-label{color:var(--primary-color);font-weight:var(--font-semibold)}.step-line{background-color:var(--gray-300);width:120px;height:2px;margin:0 var(--space-2);border-radius:var(--radius-full)}.appointment-form{background-color:var(--quaternary-color)}.form-section{margin-bottom:var(--space-12);padding:var(--space-8);background-color:var(--secondary-color);border-radius:var(--radius-xl);border:1px solid var(--gray-200)}.requester-toggle{gap:var(--space-3);flex-wrap:wrap;display:flex}.requester-option{align-items:center;gap:var(--space-3);display:inline-flex;position:relative}.requester-option input[type=radio]{opacity:0;pointer-events:none;position:absolute}.requester-option .requester-pill{padding:var(--space-3)var(--space-5);border:1px solid var(--gray-300);border-radius:var(--radius-full);background-color:var(--quaternary-color);color:var(--tertiary-color);font-weight:var(--font-medium);transition:var(--transition-all);white-space:nowrap;justify-content:center;align-items:center;display:inline-flex}.requester-option input[type=radio]:checked+.requester-pill{color:var(--primary-dark);background-color:#c9938324;border-color:#c9938380}.requester-option input[type=radio]:focus-visible+.requester-pill{outline:2px solid var(--primary-color);outline-offset:2px}.requester-option .requester-desc{color:var(--tertiary-color);font-size:var(--text-base);line-height:var(--leading-normal)}.student-dependent-section[hidden]{display:none}.form-help-text{margin-top:var(--space-2);color:var(--tertiary-light);font-size:var(--text-sm);margin-bottom:0}.reservation-recap{margin:var(--space-6)0;padding:var(--space-5);border:1px solid var(--gray-200);border-radius:var(--radius-lg);background-color:var(--quaternary-color)}.reservation-recap-list{margin:var(--space-3)0 0;padding-left:var(--space-5);gap:var(--space-2);color:var(--tertiary-color);display:grid}.reservation-secondary-btn{background-color:var(--secondary-color);color:var(--tertiary-color);border-color:var(--gray-300)}.reservation-secondary-btn:hover:not(:disabled){background-color:var(--gray-100);border-color:var(--gray-400)}.section-header{align-items:center;gap:var(--space-3);margin-bottom:var(--space-8);display:flex}.section-header i{color:var(--primary-color);font-size:var(--text-2xl)}.section-header h2{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--tertiary-color);font-family:var(--font-sans);line-height:var(--leading-snug);margin:0}.form-row{gap:var(--space-6);grid-template-columns:1fr 1fr;display:grid}.select-wrapper{position:relative}.select-wrapper i{right:var(--space-4);color:var(--gray-500);pointer-events:none;z-index:1;position:absolute;top:50%;transform:translateY(-50%)}.radio-group,.checkbox-group{gap:var(--space-8);flex-wrap:wrap;display:flex}.radio-option,.checkbox-option{align-items:center;gap:var(--space-2);display:flex}.radio-option input[type=radio],.checkbox-option input[type=checkbox]{cursor:pointer;width:auto;margin:0}.radio-option label,.checkbox-option label{align-items:center;gap:var(--space-2);cursor:pointer;font-weight:var(--font-normal);font-size:var(--text-base);margin:0;display:flex}.radio-option label i,.checkbox-option label i{color:var(--primary-color);font-size:var(--text-lg)}.rgpd-group{align-items:flex-start;gap:var(--space-3);display:flex}.rgpd-group input[type=checkbox]{cursor:pointer;width:auto;margin-top:4px}.rgpd-group label{font-size:var(--text-sm);line-height:var(--leading-relaxed);cursor:pointer;margin:0}.rgpd-error{color:var(--error);font-size:var(--text-sm);margin-top:var(--space-2);display:block}.rgpd-group.error{border:2px solid var(--error);padding:var(--space-4);border-radius:var(--radius-md);background-color:var(--error-light)}.form-actions{margin-top:var(--space-12);justify-content:center;display:flex}.info-box{margin-top:var(--space-12);padding:var(--space-6);background-color:var(--secondary-color);border-radius:var(--radius-xl);gap:var(--space-4);border:1px solid var(--gray-200);flex-direction:column;display:flex}.info-item{align-items:center;gap:var(--space-3);color:var(--tertiary-color);font-size:var(--text-sm);display:flex}.info-item i{color:var(--primary-color);font-size:var(--text-base)}.modal{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);width:100%;height:100%;z-index:var(--z-modal);padding:var(--space-4);animation:fadeIn var(--transition-base);background-color:#0009;justify-content:center;align-items:center;display:none;position:fixed;top:0;left:0}.modal.active{display:flex}.modal-content{background-color:var(--quaternary-color);border-radius:var(--radius-xl);padding:var(--space-8);width:100%;max-width:600px;max-height:90vh;box-shadow:var(--shadow-2xl);animation:slideUp var(--transition-base);overflow-y:auto}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-header{margin-bottom:var(--space-6)}.modal-header h3{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--tertiary-color);align-items:center;gap:var(--space-3);font-family:var(--font-sans);line-height:var(--leading-snug);margin:0;display:flex}.modal-header i{color:var(--primary-color);font-size:var(--text-xl)}#recap-content{margin-bottom:var(--space-6);color:var(--tertiary-color);line-height:var(--leading-relaxed);font-size:var(--text-base)}.modal-actions{gap:var(--space-4);justify-content:flex-end;display:flex}.connexion-container{min-height:calc(100vh - 200px);padding:var(--space-12)var(--space-4);justify-content:center;align-items:center;display:flex}.connexion-wrapper{width:100%;max-width:480px}.connexion-header{text-align:center;margin-bottom:var(--space-8)}.connexion-card{background-color:var(--quaternary-color);border-radius:var(--radius-xl);padding:var(--space-8);box-shadow:var(--shadow-lg);border:1px solid var(--gray-200)}.connexion-form{width:100%}.form-options{margin-bottom:var(--space-6);justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.forgot-password{color:var(--primary-color);font-size:var(--text-sm);font-weight:var(--font-medium);transition:var(--transition-all);text-decoration:none}.forgot-password:hover{color:var(--primary-dark);text-decoration:underline}.form-divider{text-align:center;margin:var(--space-8)0;color:var(--gray-500);font-size:var(--text-sm);align-items:center;display:flex}.form-divider:before,.form-divider:after{content:"";border-bottom:1px solid var(--gray-300);flex:1}.form-divider span{padding:0 var(--space-4)}.form-footer{text-align:center;margin-top:var(--space-8);font-size:var(--text-sm);color:var(--tertiary-light)}.form-footer a{color:var(--primary-color);font-weight:var(--font-semibold);transition:var(--transition-all);text-decoration:none}.form-footer a:hover{color:var(--primary-dark);text-decoration:underline}[data-aos]{opacity:0;transition:opacity var(--transition-slow),transform var(--transition-slow);transform:translateY(20px)}[data-aos].aos-animate{opacity:1;transform:translateY(0)}[data-aos=fade-right]{transform:translate(-20px)}[data-aos=fade-right].aos-animate{transform:translate(0)}[data-aos=fade-left]{transform:translate(20px)}[data-aos=fade-left].aos-animate{transform:translate(0)}@media(max-width:1024px){.benefits-grid,.footer-grid{grid-template-columns:repeat(2,1fr)}.about-content{gap:var(--space-8);grid-template-columns:1fr}.about-image{order:-1}}@media(max-width:768px){.about,.features,.about-section{padding:var(--space-12)0}.benefits-grid,.contact-container,.form-row,.footer-grid{grid-template-columns:1fr}.footer-bottom-content{text-align:center;flex-direction:column}.progress-steps{gap:var(--space-2);flex-wrap:wrap}.step-line{width:60px}.radio-group,.checkbox-group{gap:var(--space-4);flex-direction:column}.about-features{grid-template-columns:1fr}.modal-content{padding:var(--space-6)}.modal-actions{flex-direction:column}.modal-actions button{width:100%}.rdv-container{padding:var(--space-8)var(--space-4)}.form-section{padding:var(--space-6)}}.container{max-width:var(--layout-max);padding:0 var(--space-4);margin:0 auto}@media(min-width:768px){.container{padding:0 var(--space-6)}}@media(min-width:1024px){.container{padding:0 var(--space-8)}}@media(min-width:1600px){.container{padding:0 var(--space-10)}}.cta-button{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-3)var(--space-6);border-radius:var(--radius-md);font-weight:var(--font-semibold);font-size:var(--text-base);transition:var(--transition-all);cursor:pointer;font-family:var(--font-sans);line-height:var(--leading-normal);white-space:nowrap;border:2px solid #0000;text-decoration:none;display:inline-flex}.cta-button:focus{outline:2px solid var(--primary-color);outline-offset:2px}.cta-button:disabled{opacity:.6;cursor:not-allowed;pointer-events:none}.cta-button.primary{background-color:var(--quaternary-color);color:var(--tertiary-color);box-shadow:var(--shadow-sm)}.cta-button.primary:hover:not(:disabled){background-color:var(--gray-100);box-shadow:var(--shadow-md);transform:translateY(-1px)}.cta-button.primary:active:not(:disabled){box-shadow:var(--shadow-sm);transform:translateY(0)}.cta-button.secondary{color:var(--primary-color);border-color:var(--primary-color);background-color:#0000}.cta-button.secondary:hover{background-color:var(--primary-color);color:var(--quaternary-color);border-color:var(--primary-color)}.required{color:var(--error);font-weight:var(--font-semibold);margin-left:var(--space-1)}.form-group{margin-bottom:var(--space-6)}.form-group:last-child{margin-bottom:0}.form-group label{margin-bottom:var(--space-2);font-weight:var(--font-medium);color:var(--tertiary-color);font-family:var(--font-sans);font-size:var(--text-sm);line-height:var(--leading-normal);display:block}.form-group input,.form-group textarea,.form-group select{width:100%;padding:var(--space-3)var(--space-4);border:1px solid var(--gray-300);border-radius:var(--radius-md);font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--tertiary-color);background-color:var(--quaternary-color);transition:var(--transition-all)}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--gray-500);opacity:1}.form-group input:hover:not(:disabled),.form-group textarea:hover:not(:disabled),.form-group select:hover:not(:disabled){border-color:var(--gray-400)}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--primary-color);outline:none;box-shadow:0 0 0 3px #c993831a}.form-group input:disabled,.form-group textarea:disabled,.form-group select:disabled{background-color:var(--gray-100);color:var(--gray-600);cursor:not-allowed}.form-group textarea{resize:vertical;min-height:120px}.input-with-icon{position:relative}.input-with-icon i{left:var(--space-4);color:var(--gray-500);font-size:var(--text-base);pointer-events:none;z-index:1;position:absolute;top:50%;transform:translateY(-50%)}.input-with-icon input{padding-left:calc(var(--space-4) + var(--space-4) + .5rem)}.input-with-icon input:focus+i,.input-with-icon:has(input:focus) i{color:var(--primary-color)}.submit-btn{background-color:var(--primary-color);color:var(--quaternary-color);padding:var(--space-3)var(--space-8);border-radius:var(--radius-md);font-weight:var(--font-semibold);font-size:var(--text-base);cursor:pointer;transition:var(--transition-all);font-family:var(--font-sans);justify-content:center;align-items:center;gap:var(--space-2);box-shadow:var(--shadow-sm);line-height:var(--leading-normal);border:none;display:inline-flex}.submit-btn:hover:not(:disabled){background-color:var(--primary-dark);box-shadow:var(--shadow-md);transform:translateY(-1px)}.submit-btn:active:not(:disabled){box-shadow:var(--shadow-sm);transform:translateY(0)}.submit-btn:focus{outline:2px solid var(--primary-color);outline-offset:2px}.submit-btn:disabled{opacity:.6;cursor:not-allowed;pointer-events:none}.btn-primary{background-color:var(--primary-color);color:var(--quaternary-color);padding:var(--space-3)var(--space-6);border-radius:var(--radius-md);font-weight:var(--font-semibold);cursor:pointer;transition:var(--transition-all);font-family:var(--font-sans);justify-content:center;align-items:center;gap:var(--space-2);box-shadow:var(--shadow-sm);font-size:var(--text-base);border:none;display:inline-flex}.btn-primary:hover:not(:disabled){background-color:var(--primary-dark);box-shadow:var(--shadow-md)}.btn-primary:focus{outline:2px solid var(--primary-color);outline-offset:2px}.btn-secondary{color:var(--tertiary-color);padding:var(--space-3)var(--space-6);border:2px solid var(--gray-300);border-radius:var(--radius-md);font-weight:var(--font-semibold);cursor:pointer;transition:var(--transition-all);font-family:var(--font-sans);justify-content:center;align-items:center;gap:var(--space-2);font-size:var(--text-base);background-color:#0000;display:inline-flex}.btn-secondary:hover:not(:disabled){background-color:var(--gray-100);border-color:var(--gray-400)}.btn-secondary:focus{outline:2px solid var(--tertiary-color);outline-offset:2px}.checkbox-group{align-items:center;gap:var(--space-2);display:flex}.checkbox-group input[type=checkbox]{cursor:pointer;width:auto;margin:0}.checkbox-group label{cursor:pointer;font-weight:var(--font-normal);margin:0}.appointment-form .radio-group,.appointment-form .checkbox-group{gap:var(--space-3);flex-wrap:wrap;display:flex}.appointment-form .radio-option,.appointment-form .checkbox-option{align-items:center;display:inline-flex;position:relative}.appointment-form .radio-option input[type=radio],.appointment-form .checkbox-option input[type=checkbox]{opacity:0;pointer-events:none;position:absolute}.appointment-form .radio-option label,.appointment-form .checkbox-option label{align-items:center;gap:var(--space-2);border:1px solid var(--gray-300);border-radius:var(--radius-full);background-color:var(--quaternary-color);color:var(--tertiary-color);font-weight:var(--font-medium);transition:var(--transition-all);padding:10px 14px;line-height:1.2;display:inline-flex}.appointment-form .radio-option label:before,.appointment-form .checkbox-option label:before{content:"";border:2px solid var(--gray-400);background-color:var(--quaternary-color);width:16px;height:16px;transition:var(--transition-all);display:inline-block}.appointment-form .radio-option label:before{border-radius:50%}.appointment-form .checkbox-option label:before{border-radius:4px}.appointment-form .radio-option input[type=radio]:checked+label,.appointment-form .checkbox-option input[type=checkbox]:checked+label{color:var(--primary-dark);background-color:#c993831f;border-color:#c9938399}.appointment-form .radio-option input[type=radio]:checked+label:before{border-color:var(--primary-color);background:radial-gradient(circle at center,var(--primary-color)45%,transparent 46%)var(--quaternary-color)}.appointment-form .checkbox-option input[type=checkbox]:checked+label:before{border-color:var(--primary-color);background-color:var(--primary-color);box-shadow:inset 0 0 0 2px var(--quaternary-color)}.appointment-form .radio-option input[type=radio]:focus-visible+label,.appointment-form .checkbox-option input[type=checkbox]:focus-visible+label{outline:2px solid var(--primary-color);outline-offset:2px}.appointment-form .radio-option label:hover,.appointment-form .checkbox-option label:hover{border-color:var(--gray-400);transform:translateY(-1px)}.appointment-form .form-hint{margin:0 0 var(--space-3);font-size:var(--text-sm);color:var(--gray-600);line-height:var(--leading-relaxed)}.appointment-form .checkbox-group--week{gap:var(--space-2)}.appointment-form .checkbox-group--week .checkbox-option label{justify-content:center;min-width:2.75rem;padding-inline:10px}@media(max-width:768px){.appointment-form .radio-option,.appointment-form .checkbox-option{width:100%}.appointment-form .checkbox-group--week .checkbox-option{flex:1 1 calc(25% - var(--space-2));width:auto;min-width:calc(25% - var(--space-2))}.appointment-form .radio-option label,.appointment-form .checkbox-option label{justify-content:flex-start;width:100%}.appointment-form .checkbox-group--week .checkbox-option label{justify-content:center;width:100%}}.appointment-form .custom-select-list{z-index:20;background-color:var(--quaternary-color);border:1px solid var(--gray-300);border-radius:var(--radius-md);box-shadow:var(--shadow-md);flex-direction:column;gap:6px;max-height:220px;margin:0;padding:0;list-style:none;display:flex;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto}.appointment-form .custom-select-item{background-color:var(--quaternary-color);color:var(--tertiary-color);font-weight:var(--font-medium);cursor:pointer;transition:var(--transition-all);border:0;border-radius:0;padding:11px 12px}.appointment-form .custom-select-item:hover{background-color:var(--gray-100);transform:none}.appointment-form .custom-select-item:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px}.appointment-form .custom-select-item.is-selected{color:var(--primary-dark);background-color:#c993831f;border-color:#0000}.appointment-form .select-wrapper{position:relative}.appointment-form .custom-select-trigger{border:1px solid var(--gray-300);border-radius:var(--radius-md);background-color:var(--quaternary-color);width:100%;min-height:44px;color:var(--tertiary-color);font:inherit;cursor:pointer;justify-content:space-between;align-items:center;padding:10px 12px;display:inline-flex}.appointment-form .custom-select-trigger:hover{border-color:var(--gray-400)}.appointment-form .select-wrapper.is-open .custom-select-trigger{border-color:var(--primary-color);box-shadow:0 0 0 3px #c993831f}.appointment-form .custom-select-trigger i{transition:transform var(--transition-base)}.appointment-form .select-wrapper.is-open .custom-select-trigger i{transform:rotate(180deg)}.hero{min-height:50vh;padding:var(--space-16)var(--space-4);background:var(--primary-color);justify-content:center;align-items:center;margin:50px auto 0;display:flex;position:relative;overflow:hidden}.hero-content{z-index:1;text-align:center;flex-direction:column;max-width:1200px;margin:0 auto;display:flex;position:relative}.hero-title{font-size:clamp(2rem,5vw,4em);font-weight:var(--font-bold);color:var(--quaternary-color);margin-bottom:var(--space-24);line-height:var(--leading-tight);font-family:var(--font-display);letter-spacing:-.02em;text-align:left}.search-bar{justify-content:center;width:100%;display:flex}.search-bar input{width:min(100%,860px);height:56px;padding:0 var(--space-5);border-radius:var(--radius-md)0 0 var(--radius-md);border:1px solid var(--primary-color);background-color:var(--quaternary-color);color:var(--text-color);border-right:none;font-size:1.1rem}.search-button{background-color:var(--tertiary-color);color:var(--primary-color);border-radius:0 var(--radius-md)var(--radius-md)0;border:1px solid var(--primary-color);cursor:pointer;border-left:none;justify-content:center;align-items:center;width:56px;height:56px;transition:background-color .2s,color .2s;display:inline-flex}.search-button i{font-size:1.1rem}.search-bar input:focus{outline:none}.search-button:hover{background-color:var(--tertiary-light)}.search-form{justify-content:center;width:min(100%,920px);display:flex}@media(max-width:768px){.hero{min-height:75vh;padding:var(--space-12)var(--space-4)}.hero-title{margin-bottom:var(--space-4)}}.timeline-heading{margin-bottom:var(--space-16)!important}.timeline-container{max-width:1120px;margin:0 auto var(--space-16);padding:0 var(--space-4)}.timeline{gap:var(--space-8);display:grid;position:relative}.timeline:before{content:"";background:linear-gradient(to bottom,#c9938359,var(--primary-color),#b07a6a59);border-radius:var(--radius-full);width:3px;position:absolute;top:8px;bottom:8px;left:50%;transform:translate(-50%)}.timeline-item{align-items:center;column-gap:var(--space-8);opacity:0;transition:opacity var(--transition-slow),transform var(--transition-slow);grid-template-columns:1fr auto 1fr;display:grid;position:relative;transform:translateY(22px)}.timeline-item.is-visible{opacity:1;transform:translateY(0)}.timeline-item:nth-child(odd) .timeline-card{grid-column:1/2}.timeline-item:nth-child(2n) .timeline-card{grid-column:3/4}.timeline-marker{z-index:2;align-items:center;gap:var(--space-2);flex-direction:column;grid-column:2/3;display:flex;position:relative}.timeline-dot{background-color:var(--primary-color);border:3px solid var(--quaternary-color);border-radius:var(--radius-full);width:14px;height:14px;box-shadow:var(--shadow-sm)}.timeline-year{border-radius:var(--radius-full);background-color:var(--primary-color);min-width:64px;color:var(--quaternary-color);font-size:var(--text-xs);font-weight:var(--font-semibold);text-align:center;letter-spacing:.04em;box-shadow:var(--shadow-sm);padding:6px 10px}.timeline-card{background-color:var(--quaternary-color);border-radius:var(--radius-xl);padding:var(--space-6);transition:transform var(--transition-base),box-shadow var(--transition-base),border-color var(--transition-base);border:1px solid #c9938333;box-shadow:0 18px 40px -28px #21252980}.timeline-card:hover{border-color:#c9938373;transform:translateY(-3px);box-shadow:0 24px 44px -28px #2125298c}.timeline-card h3{font-size:var(--text-xl);font-weight:var(--font-semibold);margin-bottom:var(--space-3);color:var(--tertiary-color);font-family:var(--font-sans);text-align:left;line-height:var(--leading-snug)}.timeline-details p{color:var(--tertiary-light);line-height:var(--leading-relaxed);margin-bottom:var(--space-3);font-size:var(--text-base)}.timeline-details p:last-child{margin-bottom:0}.timeline-stats{gap:var(--space-8);margin:var(--space-12)0;padding:0 var(--space-4);grid-template-columns:repeat(3,1fr);display:grid}.stat-card{background-color:var(--quaternary-color);padding:var(--space-8);border-radius:var(--radius-xl);text-align:center;box-shadow:var(--shadow-sm);transition:var(--transition-all),opacity var(--transition-slow),transform var(--transition-slow);border:1px solid var(--gray-200);opacity:0;transform:translateY(18px)}.stat-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.stat-card.is-visible{opacity:1;transform:translateY(0)}.stat-icon{margin-bottom:var(--space-4);font-size:3rem;line-height:1}.stat-card h4{font-size:clamp(2rem,4vw,2.5rem);font-weight:var(--font-bold);color:var(--primary-color);margin-bottom:var(--space-2);font-family:var(--font-sans);line-height:var(--leading-tight)}.stat-card p{color:var(--tertiary-light);font-weight:var(--font-medium);font-size:var(--text-sm);margin-bottom:0}@media(max-width:1024px){.timeline-stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.timeline-stats{grid-template-columns:1fr}.timeline{gap:var(--space-6)}.timeline:before{left:14px;transform:none}.timeline-item{column-gap:var(--space-4);grid-template-columns:28px 1fr;align-items:start}.timeline-marker{margin-top:var(--space-2);grid-column:1/2}.timeline-year{min-width:52px;padding:4px 8px;font-size:.65rem}.timeline-item .timeline-card,.timeline-item:nth-child(odd) .timeline-card,.timeline-item:nth-child(2n) .timeline-card{grid-column:2/3}.timeline-card h3{font-size:var(--text-lg)}}.partners-section{margin-top:var(--space-20);padding:var(--space-16)0;background-color:var(--secondary-color)}.partners-section h3{text-align:center;font-size:clamp(1.5rem,3vw,2rem);font-weight:var(--font-bold);margin-bottom:var(--space-12);color:var(--tertiary-color);font-family:var(--font-sans);line-height:var(--leading-tight)}.partner-cards{gap:var(--space-6);max-width:var(--layout-max);padding:0 var(--space-4);grid-template-columns:repeat(4,1fr);margin:0 auto;display:grid}.partner-card{background-color:var(--quaternary-color);padding:var(--space-6);border-radius:var(--radius-xl);text-align:center;box-shadow:var(--shadow-sm);transition:var(--transition-all);border:1px solid var(--gray-200)}.partner-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.partner-icon{margin-bottom:var(--space-4);font-size:3rem;line-height:1}.partner-icon img{max-width:80px;height:auto;margin:0 auto}.partner-card h4{font-size:var(--text-lg);font-weight:var(--font-semibold);margin-bottom:var(--space-3);color:var(--tertiary-color);font-family:var(--font-sans);line-height:var(--leading-snug)}.partner-card p{color:var(--tertiary-light);line-height:var(--leading-relaxed);font-size:var(--text-sm);margin-bottom:0}@media(max-width:1024px){.partner-cards{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.partner-cards{grid-template-columns:1fr}}.approach-section{padding:var(--space-16)0;text-align:center;max-width:900px;margin:0 auto}.approach-section h3{font-size:clamp(1.5rem,3vw,2rem);font-weight:var(--font-bold);margin-bottom:var(--space-6);color:var(--tertiary-color);font-family:var(--font-sans);line-height:var(--leading-tight)}.approach-section p{font-size:var(--text-lg);line-height:var(--leading-relaxed);color:var(--tertiary-color);margin-bottom:var(--space-8)}.emoji-list{justify-content:center;gap:var(--space-12);margin:var(--space-12)0;flex-wrap:wrap;display:flex}.emoji-item{align-items:center;gap:var(--space-3);flex-direction:column;display:flex}.emoji-item span:first-child{color:var(--primary-color);font-size:2.25rem;line-height:1}.emoji-item span:first-child i{border-radius:var(--radius-full);background-color:#c993831f;border:1px solid #c9938340;justify-content:center;align-items:center;width:56px;height:56px;display:inline-flex}.emoji-item span:last-child{font-weight:var(--font-semibold);color:var(--tertiary-color);font-size:var(--text-lg)}@media(max-width:768px){.emoji-list{gap:var(--space-6);flex-direction:column}}.services-container{padding:var(--space-12)var(--space-4);background-color:var(--quaternary-color);max-width:var(--layout-max);flex-direction:column;align-items:center;min-height:calc(100vh - 200px);margin:0 auto;display:flex}.services-hero{text-align:center;max-width:900px;margin:0 auto var(--space-14);flex-direction:column;justify-content:center;align-items:center;width:100%;display:flex}.services-hero .page-title{text-align:center;width:100%;margin-left:auto;margin-right:auto;margin-bottom:var(--space-4);display:block}.services-kicker{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--primary-dark);border-radius:var(--radius-full);padding:var(--space-2)var(--space-4);margin-bottom:var(--space-4);background-color:#c9938324;border:1px solid #c993834d;justify-content:center;align-items:center;display:inline-flex}.services-intro{max-width:720px;margin:0 auto var(--space-8);color:var(--tertiary-light);font-size:var(--text-lg)}.services-hero-actions{justify-content:center;gap:var(--space-3);margin-bottom:var(--space-5);flex-wrap:wrap;width:100%;display:flex}.services-hero .cta-button.secondary,.services-final-cta .cta-button.secondary{background-color:var(--secondary-color);color:var(--tertiary-color);border-color:var(--gray-300)}.services-hero .cta-button.secondary:hover:not(:disabled),.services-final-cta .cta-button.secondary:hover:not(:disabled){background-color:var(--gray-100);border-color:var(--gray-400)}.services-proof-list{justify-content:center;gap:var(--space-4);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.services-proof-list li{align-items:center;gap:var(--space-2);color:var(--tertiary-light);font-size:var(--text-sm);font-weight:var(--font-medium);display:inline-flex}.services-proof-list i{color:var(--primary-color)}.features-highlight{gap:var(--space-6);max-width:1120px;margin:0 auto var(--space-20);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.features-highlight .section-title{margin-bottom:var(--space-2);grid-column:1/-1}.feature-highlight-card{background-color:var(--secondary-color);border-radius:var(--radius-xl);padding:var(--space-8);box-shadow:var(--shadow-sm);transition:var(--transition-all);border:1px solid var(--gray-200);width:100%;overflow:hidden}.feature-highlight-card:hover{box-shadow:var(--shadow-lg);border-color:var(--gray-300)}.feature-content{flex-direction:column;display:flex}.feature-header{align-items:flex-start;gap:var(--space-6);margin-bottom:var(--space-5);display:flex}.feature-icon{background-color:var(--primary-color);border-radius:var(--radius-lg);width:64px;height:64px;color:var(--quaternary-color);font-size:var(--text-2xl);flex-shrink:0;justify-content:center;align-items:center;display:flex}.feature-header h2,.feature-header h3{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--tertiary-color);line-height:var(--leading-snug);flex:1;margin:0}.feature-details{margin-bottom:0}.feature-details p{color:var(--tertiary-light);line-height:var(--leading-relaxed);margin-bottom:var(--space-4)}.feature-details ul{margin-left:var(--space-6);color:var(--tertiary-light);line-height:var(--leading-relaxed)}.feature-details li{margin-bottom:var(--space-2)}.services-catalog{margin-bottom:var(--space-20)}.section-title{text-align:center;margin-bottom:var(--space-3)}.section-subtitle{text-align:center;color:var(--tertiary-light);max-width:720px;margin:0 auto var(--space-10)}.services-grid{gap:var(--space-8);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.card-service{background-color:var(--secondary-color);border-radius:var(--radius-xl);padding:var(--space-8);box-shadow:var(--shadow-sm);transition:var(--transition-all);border:1px solid var(--gray-200);position:relative}.card-service .card-actions .cta-button{min-height:46px}.card-service:hover{box-shadow:var(--shadow-lg);border-color:var(--gray-300);transform:translateY(-4px)}.card-service-featured{box-shadow:var(--shadow-md);border-color:#c9938373}.service-badge{top:var(--space-4);right:var(--space-4);font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--primary-dark);border-radius:var(--radius-full);background-color:#c9938329;border:1px solid #c9938366;padding:6px 10px;position:absolute}.card-header{text-align:center;margin-bottom:var(--space-6)}.card-icon{color:var(--primary-color);margin-bottom:var(--space-4);font-size:3rem;line-height:1}.card-header h2{font-size:var(--text-xl);font-weight:var(--font-semibold);margin-bottom:var(--space-2);color:var(--tertiary-color);line-height:var(--leading-snug)}.card-header h2 small{font-size:var(--text-sm);font-weight:var(--font-normal);margin-top:var(--space-2);color:var(--tertiary-light);display:block}.card-desc{color:var(--tertiary-light);font-size:var(--text-sm);margin-bottom:0}.service-includes{margin:0 0 var(--space-6);gap:var(--space-2);flex-direction:column;padding:0;list-style:none;display:flex}.service-includes li{align-items:flex-start;gap:var(--space-2);color:var(--tertiary-color);font-size:var(--text-sm);display:flex}.service-includes i{color:var(--primary-color);margin-top:2px}.card-actions{margin-bottom:var(--space-4)}.card-actions .cta-button{justify-content:center;width:100%}.card-price-row{width:100%;padding:var(--space-4);background-color:var(--quaternary-color);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-all);border:1px solid var(--gray-200);justify-content:space-between;align-items:center;display:flex}.card-price-row:hover{background-color:var(--gray-50);border-color:var(--gray-300)}.card-price-row[aria-expanded=true] .info-icon{transform:rotate(180deg)}.card-price-label{font-size:var(--text-sm);color:var(--tertiary-light);font-weight:var(--font-medium)}.card-price{font-size:var(--text-2xl);font-weight:var(--font-bold);color:var(--primary-color);line-height:var(--leading-tight)}.info-icon{color:var(--primary-color);font-size:var(--text-base);transition:transform var(--transition-base)}.accordion-content{max-height:0;transition:max-height var(--transition-base),padding-top var(--transition-base);overflow:hidden}.accordion-content.open{max-height:500px;padding-top:var(--space-3)}.accordion-details{padding:var(--space-4);background-color:var(--quaternary-color);border-radius:var(--radius-md);color:var(--tertiary-light);line-height:var(--leading-relaxed);font-size:var(--text-sm);border:1px solid var(--gray-200)}@media(max-width:1024px){.features-highlight{gap:var(--space-5);grid-template-columns:1fr}}@media(max-width:768px){.services-container{padding:var(--space-8)var(--space-4)}.services-hero-actions .cta-button{justify-content:center;width:100%}.services-proof-list{align-items:center;gap:var(--space-2);flex-direction:column}.feature-header{gap:var(--space-3);flex-direction:column}.feature-icon{width:56px;height:56px}.services-grid{grid-template-columns:1fr;justify-content:stretch}}@media(max-width:1100px)and (min-width:769px){.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.services-faq{margin-top:var(--space-16);margin-bottom:var(--space-16)}.faq-list{gap:var(--space-4);max-width:920px;margin:0 auto;display:grid}.faq-item{border:1px solid var(--gray-200);border-radius:var(--radius-lg);background-color:var(--quaternary-color);overflow:hidden}.faq-question{text-align:left;width:100%;color:var(--tertiary-color);font-size:var(--text-base);font-weight:var(--font-semibold);padding:var(--space-5)var(--space-6);justify-content:space-between;align-items:center;gap:var(--space-4);cursor:pointer;background:0 0;border:none;display:flex}.faq-question i{color:var(--primary-color);transition:transform var(--transition-base)}.faq-question[aria-expanded=true] i{transform:rotate(180deg)}.faq-answer{max-height:0;transition:max-height var(--transition-base),padding var(--transition-base);padding:0 var(--space-6);overflow:hidden}.faq-answer.open{max-height:220px;padding:0 var(--space-6)var(--space-5)}.faq-answer p{color:var(--tertiary-light);line-height:var(--leading-relaxed);margin:0}.services-final-cta{margin:var(--space-20)auto var(--space-8);text-align:center;border-radius:var(--radius-2xl);max-width:940px;padding:var(--space-12)var(--space-6);opacity:0;transition:opacity var(--transition-slow),transform var(--transition-slow);background:linear-gradient(135deg,#c9938324,#c993830d);border:1px solid #c9938347;transform:translateY(16px)}.services-final-cta.is-visible{opacity:1;transform:translateY(0)}.services-final-cta h2{margin-bottom:var(--space-4)}.services-final-cta p{color:var(--tertiary-light);max-width:68ch;margin:0 auto var(--space-6)}.services-final-actions{justify-content:center;gap:var(--space-3);flex-wrap:wrap;display:flex}@media(max-width:768px){.services-final-actions .cta-button{justify-content:center;width:100%}}.services-process{margin:0 auto var(--space-20)}.process-grid{gap:var(--space-5);margin-top:var(--space-8);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.process-step{background-color:var(--quaternary-color);border:1px solid var(--gray-200);border-radius:var(--radius-xl);padding:var(--space-6);box-shadow:var(--shadow-xs);transition:var(--transition-all);opacity:0;transform:translateY(18px)}.process-step:hover{box-shadow:var(--shadow-md);border-color:#c9938359;transform:translateY(-3px)}.process-step.is-visible{opacity:1;transform:translateY(0)}.process-number{border-radius:var(--radius-full);min-width:46px;height:34px;color:var(--primary-dark);font-size:var(--text-sm);font-weight:var(--font-semibold);margin-bottom:var(--space-4);background-color:#c9938324;border:1px solid #c9938359;justify-content:center;align-items:center;display:inline-flex}.process-step h3{font-size:var(--text-lg);margin-bottom:var(--space-3)}.process-step p{color:var(--tertiary-light);line-height:var(--leading-relaxed);font-size:var(--text-sm);margin-bottom:0}@media(max-width:1024px){.process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:768px){.process-grid{grid-template-columns:1fr}}.contact-v2{padding:var(--space-14)var(--space-4)var(--space-16);padding-top:var(--space-10)}.contact-v2-container{max-width:var(--layout-max);margin:0 auto}.contact-v2-header{text-align:center;max-width:760px;margin:0 auto var(--space-10)}.contact-v2-kicker{border-radius:var(--radius-full);color:var(--primary-dark);font-size:var(--text-sm);font-weight:var(--font-semibold);margin-bottom:var(--space-4);background-color:#c993831f;border:1px solid #c9938373;padding:6px 12px;display:inline-flex}.contact-v2-title{font-size:clamp(1.9rem,4vw,2.7rem);line-height:var(--leading-tight);color:var(--tertiary-color);margin:0 0 var(--space-3)}.contact-v2-subtitle{color:var(--tertiary-light);margin:0}.contact-v2-grid{gap:var(--space-8);grid-template-columns:minmax(280px,380px) minmax(0,1fr);align-items:start;display:grid}.contact-v2-card{background-color:var(--quaternary-color);border:1px solid var(--gray-200);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);padding:var(--space-12)}.contact-v2-card h2{margin:0 0 var(--space-3);font-size:clamp(1.35rem,2.4vw,1.7rem)}.contact-v2-muted{margin:0 0 var(--space-6);color:var(--tertiary-light)}.contact-v2-list{gap:var(--space-4);margin:0;padding:0;list-style:none;display:grid}.contact-v2-list li{gap:var(--space-3);grid-template-columns:40px 1fr;align-items:start;display:grid}.contact-v2-icon{border-radius:var(--radius-md);width:40px;height:40px;color:var(--primary-color);background-color:#c993831f;justify-content:center;align-items:center;display:inline-flex}.contact-v2-list small{color:var(--tertiary-light);margin-bottom:2px;display:block}.contact-v2-list a,.contact-v2-list span{color:var(--tertiary-color);text-decoration:none}.contact-v2-list a:hover{color:var(--primary-color)}.contact-v2-form .form-group{margin-bottom:var(--space-5)}.contact-v2-form textarea{min-height:140px}@media(max-width:900px){.contact-v2-grid{grid-template-columns:1fr}}.main-header{background-color:var(--quaternary-color);z-index:var(--z-sticky);box-shadow:var(--shadow-md);border-bottom:1px solid #ffffff1a;position:sticky;top:0}.nav-container{max-width:var(--layout-max);padding:var(--space-4)var(--space-6);justify-content:space-between;align-items:center;gap:var(--space-8);height:80px;margin:0 auto;display:flex}.logo{width:auto;height:70px;transition:var(--transition-all);border-radius:var(--radius-md);padding:var(--space-2);flex-shrink:0;justify-content:center;align-items:center;display:flex}.logo:hover{transform:scale(1.05)}.logo img{object-fit:contain;filter:drop-shadow(0 1px 2px #0000001a);width:100%;height:100%}.logo a{width:100%;height:100%;display:block}.nav-links{gap:var(--space-2);flex:1;justify-content:center;align-items:center;margin:0;padding:0;list-style:none;display:flex}.nav-links li{margin:0}.nav-links a{padding:var(--space-2)var(--space-5);color:var(--tertiary-color);font-weight:var(--font-semibold);font-family:var(--font-sans);font-size:var(--text-sm);transition:var(--transition-all);line-height:var(--leading-normal);opacity:.95;text-shadow:0 1px 2px #0000001a;white-space:nowrap;text-decoration:none;display:block;position:relative}.nav-links a:after{content:"";bottom:var(--space-1);width:calc(100% - var(--space-4));background-color:var(--primary-color);height:2px;transition:transform var(--transition-base);border-radius:var(--radius-full);position:absolute;left:50%;transform:translate(-50%)scaleX(0)}.nav-links a:hover{opacity:1;color:var(--primary-color);text-shadow:0 1px 3px #00000026;background-color:#ffffff26;transform:translateY(-1px)}.nav-links a:hover:after{transform:translate(-50%)scaleX(1)}.nav-links a.cta-link:hover{box-shadow:var(--shadow-md);background-color:#ffffff4d;border-color:#ffffff80;transform:translateY(-2px)}.nav-links a.cta-link:active{transition:transform var(--transition-fast);transform:translateY(0)}.nav-links a.cta-link.active{background-color:var(--quaternary-color);color:var(--tertiary-color);border-color:var(--quaternary-color)}.nav-actions{align-items:center;gap:var(--space-3);flex-shrink:0;display:flex}.connexion-btn{cursor:pointer;border-radius:var(--radius-full);transition:var(--transition-all);width:44px;height:44px;box-shadow:var(--shadow-xs);background:#ffffff26;border:1.5px solid #ffffff40;justify-content:center;align-items:center;padding:0;display:flex}.connexion-btn:hover{box-shadow:var(--shadow-sm);background-color:#ffffff40;border-color:#fff6;transform:translateY(-1px)}.connexion-btn:active{transition:transform var(--transition-fast);transform:translateY(0)}.connexion-btn:focus{outline:2px solid var(--quaternary-color);outline-offset:2px}.connexion-btn a{color:var(--quaternary-color);font-size:var(--text-lg);text-shadow:0 1px 2px #0000001a;justify-content:center;align-items:center;width:100%;height:100%;display:flex}.burger{cursor:pointer;padding:var(--space-2);z-index:var(--z-fixed);flex-direction:column;justify-content:center;align-items:center;gap:5px;width:32px;height:32px;display:none}.burger .line1,.burger .line2,.burger .line3{background-color:var(--quaternary-color);border-radius:var(--radius-full);width:24px;height:2px;transition:var(--transition-all);transform-origin:50%}@media(max-width:768px){.burger{display:flex}.nav-container{padding:var(--space-3)var(--space-4);height:70px}.nav-links{background-color:var(--primary-color);width:85%;max-width:320px;height:100vh;padding:var(--space-16)var(--space-6);padding-top:calc(var(--space-16) + 70px);justify-content:flex-start;align-items:flex-start;gap:var(--space-2);box-shadow:var(--shadow-2xl);transition:right var(--transition-base);z-index:var(--z-modal);flex-direction:column;position:fixed;top:0;right:-100%;overflow-y:auto}.nav-links.active{right:0}.nav-links li{width:100%}.nav-links a{width:100%;padding:var(--space-3)var(--space-4);font-size:var(--text-base)}.nav-links a:after{display:none}.nav-links a.active{background-color:var(--quaternary-color);color:var(--tertiary-color)}.main-header.nav-active .burger .line1{transform:rotate(45deg)translate(6px,6px)}.main-header.nav-active .burger .line2{opacity:0;transform:scaleX(0)}.main-header.nav-active .burger .line3{transform:rotate(-45deg)translate(6px,-6px)}.logo{width:55px;height:55px}.main-header.nav-active:before{content:"";-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);width:100%;height:100%;z-index:var(--z-modal-backdrop);animation:fadeIn var(--transition-base);background-color:#00000080;position:fixed;top:0;left:0}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.back-layout{background:linear-gradient(180deg,var(--primary-50)0%,var(--secondary-color)100%);color:var(--tertiary-color);min-height:100vh}.back-shell{grid-template-columns:260px 1fr;min-height:100vh;display:grid}.back-sidebar{flex-direction:column;gap:20px;padding:24px 16px;display:flex}.back-brand{align-items:center;gap:10px;font-weight:700;text-decoration:none;display:inline-flex}.back-user p{margin:0;font-weight:600}.back-nav{flex-direction:column;gap:8px;display:flex}.back-nav a{border-radius:10px;padding:10px 12px;text-decoration:none;transition:all .2s}.back-logout{cursor:pointer;border-radius:10px;margin-top:auto;padding:10px 12px}.back-main{padding:28px}.back-content{padding:24px}@media(max-width:980px){.back-shell{grid-template-columns:1fr}.back-main{padding:16px}.back-content{min-height:auto;padding:16px}}.back-layout-connexion .back-topbar{background:var(--tertiary-color);border-bottom:1px solid #ffffff14;align-items:center;height:68px;padding:0 20px;display:flex}.back-layout-connexion .back-topbar-link{color:var(--quaternary-color);font-weight:var(--font-semibold);align-items:center;gap:8px;text-decoration:none;display:inline-flex}.back-layout-connexion .back-topbar-link:hover{color:var(--primary-color)}.back-layout-connexion .back-auth-main{min-height:calc(100vh - 68px)}.back-layout-connexion .back-main{max-width:980px;margin:0 auto}.back-layout-student{background:#f6f7fb}.back-layout-student .student-shell{grid-template-columns:280px minmax(0,1fr);min-height:100vh;display:grid}.back-layout-student .student-sidebar{background:var(--quaternary-color);border-right:1px solid var(--gray-200);flex-direction:column;gap:20px;height:100vh;padding:24px 16px;display:flex;position:sticky;top:0}.back-layout-student .student-brand{color:var(--tertiary-color)}.back-layout-student .student-user-card{border:1px solid var(--gray-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);background:#fff;align-items:center;gap:10px;padding:10px;display:flex}.back-layout-student .student-user-avatar{width:36px;height:36px;color:var(--primary-color);background:#c993831f;border-radius:50%;place-items:center;display:grid}.back-layout-student .student-user-meta p{font-weight:var(--font-semibold);color:var(--tertiary-color);margin:0}.back-layout-student .student-user-meta small{color:var(--tertiary-light)}.back-layout-student .student-side-nav{gap:6px;display:grid}.back-layout-student .student-side-nav a{color:var(--tertiary-light);font-weight:var(--font-medium);transition:var(--transition-fast);border-radius:10px;align-items:center;gap:10px;padding:10px 12px;text-decoration:none;display:inline-flex}.back-layout-student .student-side-nav a:hover{color:var(--tertiary-color);background:#c9938324}.back-layout-student .student-side-nav a.active{background:var(--primary-color);color:var(--tertiary-color)}.back-layout-student .student-logout-form{margin-top:auto}.back-layout-student .student-main{min-width:0}.back-layout-student .student-main-header{justify-content:space-between;align-items:center;gap:12px;padding:12px 18px;display:flex}.back-layout-student .student-main-search{flex:1;max-width:420px;position:relative}.back-layout-student .student-main-search i{color:var(--gray-500);position:absolute;top:50%;left:12px;transform:translateY(-50%)}.back-layout-student .student-main-search input{border:1px solid var(--gray-200);border-radius:var(--radius-lg);background:#fff;width:100%;padding:10px 12px 10px 34px}.back-layout-student .student-main-header-icons{color:var(--tertiary-light);align-items:center;gap:12px;display:inline-flex}.back-layout-student .student-content{max-width:1440px;margin:0 auto}.back-layout-student .student-page{flex-direction:column;gap:16px;display:flex}.back-layout-student .student-page .page-title{margin:0}.back-layout-student .student-page .page-subtitle{color:var(--tertiary-lighter);max-width:72ch;margin:6px 0 0}.back-layout-student .prof-card{border:1px solid var(--gray-200);border-radius:var(--radius-xl);box-shadow:var(--shadow-xs);background:#fff;padding:16px}.back-layout-student .prof-card-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;display:flex}.back-layout-student .prof-card h3{margin:0}.back-layout-student .prof-muted{color:var(--tertiary-lighter);margin:0 0 6px}.back-layout-student .status-badge{border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:.03em;align-items:center;padding:5px 10px;display:inline-flex}.back-layout-student .status-pending{background:var(--warning-light);color:#8a6b0d}.back-layout-student .status-validated{background:var(--success-light);color:#1f7a33}.back-layout-student .status-refused,.back-layout-student .status-cancelled{background:var(--error-light);color:#a02632}.back-layout-student .status-neutral{background:var(--gray-100);color:var(--gray-700)}.back-layout-student .prof-pagination{margin-top:8px}@media(max-width:980px){.back-layout-student .student-shell{grid-template-columns:1fr}.back-layout-student .student-sidebar{border-right:0;border-bottom:1px solid var(--gray-200);height:auto;position:static}.back-layout-student .student-side-nav{grid-template-columns:repeat(4,minmax(0,1fr))}.back-layout-student .student-side-nav a{justify-content:center}.back-layout-student .student-side-nav a span{display:none}.back-layout-student .student-main-header{padding:10px 12px}.back-layout-student .student-main-search{max-width:none}}.student-page .student-page-header{margin-bottom:14px}.student-page .student-kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px;display:grid}.student-page .student-kpi-card{border:1px solid var(--gray-200);border-radius:var(--radius-xl);box-shadow:var(--shadow-xs);background:#fff;padding:14px 16px}.student-page .student-kpi-label{color:var(--tertiary-light);margin:0;font-size:.85rem}.student-page .student-kpi-value{font-size:1.7rem;font-weight:var(--font-semibold);color:var(--tertiary-color);margin:6px 0 0}.student-dashboard-page .student-dashboard-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.student-dashboard-page .student-dashboard-grid>.prof-card{flex-direction:column;min-height:240px;display:flex}.student-page .student-list{gap:8px;display:grid}.student-page .student-list-row{border-bottom:1px solid var(--gray-100);justify-content:space-between;align-items:center;gap:10px;padding:9px 0;display:flex}.student-page .student-row-title{font-weight:var(--font-medium);margin:0}.student-page .student-row-meta{color:var(--tertiary-light);margin:0;font-size:.88rem}.student-page .student-inline-link{margin-top:12px;display:inline-flex}.student-page .student-icon-btn{border:1px solid var(--gray-300);width:30px;height:30px;color:var(--tertiary-color);transition:var(--transition-fast);border-radius:8px;place-items:center;text-decoration:none;display:inline-grid}.student-page .student-icon-btn:hover{border-color:var(--primary-color);color:var(--primary-color)}.student-page .student-list-row:last-child{border-bottom:0}.student-dashboard-page .student-inline-link{margin-top:auto}@media(max-width:1120px){.student-page .student-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.student-dashboard-page .student-dashboard-grid{grid-template-columns:1fr}}.student-page .student-filters{border:1px solid var(--gray-200);border-radius:var(--radius-xl);box-shadow:var(--shadow-xs);background:#fff;flex-wrap:wrap;gap:8px;margin-bottom:14px;padding:12px;display:flex}.student-page .student-filters>*{flex:160px;min-width:0}.student-page .student-filters input[name=search]{flex:2 300px}.student-page .student-filters .submit-btn{flex:none}.student-page .student-filters input,.student-page .student-filters select{border:1px solid var(--gray-300);border-radius:var(--radius-md);width:100%;font:inherit;background:#fff;padding:10px 12px}.student-appointments-page .student-list-block{gap:12px;display:grid}.student-appointments-page .student-row-head{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.student-appointments-page .student-row-head h3{margin:0}.student-appointments-page .student-message{color:var(--tertiary-color);margin:10px 0 0;line-height:1.45}.student-appointments-page .student-row-card{border-left:4px solid var(--primary-light)}@media(max-width:860px){.student-page .student-filters>*{flex:100%}.student-appointments-page .student-row-head{flex-direction:column;align-items:flex-start}}.student-page .student-table-card h3{margin-top:0}.student-page .student-table-wrap{overflow-x:auto}.student-page .student-table{border-collapse:collapse;width:100%;min-width:700px}.student-page .student-table th,.student-page .student-table td{border-bottom:1px solid var(--gray-100);text-align:left;vertical-align:middle;padding:10px 8px}.student-page .student-table th{color:var(--tertiary-light);font-size:.86rem}.student-page .student-table tbody tr:hover{background:#c993830f}.student-page .student-doc-title{font-weight:var(--font-medium);margin:0}.student-page .student-doc-meta{color:var(--tertiary-light);margin:4px 0 0;font-size:.85rem}.student-page .student-actions{gap:8px;display:inline-flex}.student-page .student-empty-cell{text-align:center;color:var(--tertiary-light)}@media(max-width:860px){.student-page .student-table{min-width:620px}}.student-notes-page .student-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.student-notes-page .student-table td:last-child{white-space:nowrap;text-overflow:ellipsis;max-width:380px;overflow:hidden}@media(max-width:720px){.student-notes-page .student-kpis{grid-template-columns:1fr}.student-notes-page .student-table td:last-child{max-width:240px}}.student-profile-page .student-profile-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.student-profile-page .student-profile-form{gap:12px;margin-top:12px;display:grid}.student-profile-page .student-profile-field{gap:6px;display:grid}.student-profile-page .student-profile-field label{color:var(--tertiary-light);font-size:.9rem;font-weight:var(--font-medium)}.student-profile-page .student-profile-field input{border:1px solid var(--gray-300);border-radius:var(--radius-md);width:100%;font:inherit;color:var(--tertiary-color);background:#fff;padding:10px 12px}.student-profile-page .student-profile-field input:focus{border-color:var(--primary-color);outline:none;box-shadow:0 0 0 3px #c993831a}@media(max-width:980px){.student-profile-page .student-profile-grid{grid-template-columns:1fr}}.back-layout-prof{background:#f6f7fb}.back-layout-prof .prof-shell{grid-template-columns:280px minmax(0,1fr);min-height:100vh;display:grid}.back-layout-prof .prof-sidebar{background:var(--quaternary-color);border-right:1px solid var(--gray-200);flex-direction:column;gap:20px;height:100vh;padding:24px 16px;display:flex;position:sticky;top:0}.back-layout-prof .prof-brand{color:var(--tertiary-color);font-size:var(--text-2xl)}.back-layout-prof .prof-user-card{border:1px solid var(--gray-200);border-radius:var(--radius-xl);background:var(--gray-50);align-items:center;gap:10px;padding:10px;display:flex}.back-layout-prof .prof-user-avatar{width:40px;height:40px;color:var(--primary-dark);background:#c993832e;border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.back-layout-prof .prof-user-meta p{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--tertiary-color);margin:0}.back-layout-prof .prof-user-meta small{color:var(--tertiary-lighter)}.back-layout-prof .prof-side-nav{gap:6px;display:grid}.back-layout-prof .prof-side-nav a{color:var(--tertiary-light);font-weight:var(--font-medium);transition:var(--transition-fast);border-radius:10px;align-items:center;gap:10px;padding:10px 12px;text-decoration:none;display:inline-flex}.back-layout-prof .prof-side-nav a:hover{color:var(--tertiary-color);background:#c993831f}.back-layout-prof .prof-side-nav a.active{color:var(--tertiary-color);font-weight:var(--font-semibold);background:#c9938333}.back-layout-prof .prof-logout-form{margin-top:auto}.back-layout-prof .back-logout{border:1px solid var(--gray-300);background:var(--quaternary-color);width:100%;color:var(--tertiary-color)}.back-layout-prof .back-logout:hover{background:var(--primary-color);border-color:var(--primary-color);color:var(--tertiary-color)}.back-layout-prof .prof-main{padding:18px 22px}.back-layout-prof .prof-main-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.back-layout-prof .prof-main-search{border:1px solid var(--gray-200);background:var(--quaternary-color);border-radius:var(--radius-xl);align-items:center;gap:10px;width:min(560px,100%);padding:10px 12px;display:inline-flex}.back-layout-prof .prof-main-search input{width:100%;color:var(--tertiary-lighter);background:0 0;border:0}.back-layout-prof .prof-main-search input:focus{outline:none}.back-layout-prof .prof-main-header-icons{color:var(--tertiary-light);align-items:center;gap:12px;display:inline-flex}.back-layout-prof .prof-content{min-height:calc(100vh - 130px)}.back-layout-prof .prof-page{flex-direction:column;gap:18px;display:flex}.back-layout-prof .prof-page-header .page-title{margin-bottom:4px}.back-layout-prof .prof-page-header .page-subtitle{color:var(--tertiary-lighter);margin:0}.back-layout-prof .prof-toolbar{grid-template-columns:minmax(220px,1fr) 180px 180px auto;gap:10px;display:grid}.back-layout-prof .prof-toolbar input,.back-layout-prof .prof-toolbar select,.back-layout-prof .prof-note-form textarea,.back-layout-prof .prof-inline-form select,.back-layout-prof .prof-inline-form input,.back-layout-prof .prof-upload-form input,.back-layout-prof .prof-upload-form select{border:1px solid var(--gray-300);border-radius:var(--radius-md);background:var(--quaternary-color);padding:10px 12px}.back-layout-prof .prof-list{gap:14px;display:grid}.back-layout-prof .prof-card{border:1px solid var(--gray-200);border-radius:var(--radius-xl);background:var(--quaternary-color);box-shadow:var(--shadow-xs);padding:18px}.back-layout-prof .prof-card-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;display:flex}.back-layout-prof .prof-card h3{margin:0}.back-layout-prof .prof-muted{color:var(--tertiary-lighter);margin:0 0 6px}.back-layout-prof .status-badge{border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:.03em;align-items:center;padding:5px 10px;display:inline-flex}.back-layout-prof .status-pending{background:var(--warning-light);color:#8a6b0d}.back-layout-prof .status-validated{background:var(--success-light);color:#1f7a33}.back-layout-prof .status-refused,.back-layout-prof .status-cancelled{background:var(--error-light);color:#a02632}.back-layout-prof .status-neutral{background:var(--gray-100);color:var(--gray-700)}.back-layout-prof .prof-inline-form{grid-template-columns:170px 1fr auto;gap:10px;margin-top:10px;display:grid}.back-layout-prof .prof-note-form{gap:10px;margin-top:10px;display:grid}.back-layout-prof .prof-note-options{color:var(--tertiary-light);flex-wrap:wrap;gap:16px;display:flex}.back-layout-prof .prof-pagination{margin-top:8px}@media(max-width:980px){.back-layout-prof .prof-shell{grid-template-columns:1fr}.back-layout-prof .prof-sidebar{border-right:0;border-bottom:1px solid var(--gray-200);height:auto;position:static}.back-layout-prof .prof-side-nav{grid-template-columns:repeat(3,minmax(0,1fr))}.back-layout-prof .prof-side-nav a{justify-content:center}.back-layout-prof .prof-side-nav a span{display:none}.back-layout-prof .prof-main{padding:14px}.back-layout-prof .prof-main-header{flex-direction:column;align-items:stretch}.back-layout-prof .prof-main-search{width:100%}.back-layout-prof .prof-toolbar,.back-layout-prof .prof-inline-form{grid-template-columns:1fr}}.prof-appointments-page{max-width:1440px;margin-inline:auto}.prof-appointments-page .page-subtitle{color:var(--tertiary-light);max-width:52ch;margin:.35rem 0 0;font-size:.95rem}.prof-appointments-page .appointments-kpis{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin-bottom:16px;display:grid}.prof-appointments-page .appointments-kpi-card{background:var(--quaternary-color);border:1px solid var(--gray-200);border-radius:var(--radius-xl);box-shadow:var(--shadow-xs);padding:14px 16px}.prof-appointments-page .appointments-kpi-label{color:var(--tertiary-light);font-size:.85rem;font-weight:var(--font-medium);margin:0}.prof-appointments-page .appointments-kpi-value{font-size:1.75rem;font-weight:var(--font-semibold);color:var(--tertiary-color);margin:6px 0 0}.prof-appointments-page .appointments-filters{background:var(--quaternary-color);border:1px solid var(--gray-200);border-radius:var(--radius-xl);box-shadow:var(--shadow-xs);flex-wrap:wrap;gap:8px;margin-bottom:16px;padding:12px;display:flex}.prof-appointments-page .appointments-filters>*{flex:160px;min-width:0}.prof-appointments-page .appointments-filters input[name=search]{flex:2 280px}.prof-appointments-page .appointments-filters .submit-btn{flex:none}.prof-appointments-page .appointments-filters input,.prof-appointments-page .appointments-filters select{border:1px solid var(--gray-300);border-radius:var(--radius-md);width:100%;font:inherit;color:var(--tertiary-color);background:#fff;padding:10px 12px}.prof-appointments-page .appointments-list{flex-direction:column;gap:14px;display:flex}.prof-appointments-page .appointments-request-card{border-left:4px solid var(--primary-light)}.prof-appointments-page .appointments-card-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.prof-appointments-page .appointments-student-name{margin:0;font-size:1.15rem}.prof-appointments-page .appointments-meta-line{color:var(--tertiary-light);margin:.35rem 0 0;font-size:.95rem}.prof-appointments-page .appointments-meta-sep{opacity:.6;padding:0 .25rem}.prof-appointments-page .appointments-badges{flex-wrap:wrap;justify-content:flex-end}.prof-appointments-page .appointments-created{color:var(--tertiary-light);margin:10px 0 0;font-size:.88rem}.prof-appointments-page .appointments-contact-block{border-top:1px solid var(--gray-200);margin-top:12px;padding-top:12px;font-size:.95rem}.prof-appointments-page .appointments-contact-block p{margin:0 0 .35rem}.prof-appointments-page .appointments-message-details{border:1px solid var(--gray-200);border-radius:var(--radius-md);background:#fff;margin-top:12px;padding:0 12px}.prof-appointments-page .appointments-message-details summary{cursor:pointer;font-weight:var(--font-medium);color:var(--primary-color);padding:10px 0;list-style:none}.prof-appointments-page .appointments-message-details summary::-webkit-details-marker{display:none}.prof-appointments-page .appointments-message-body{white-space:pre-wrap;color:var(--tertiary-color);padding-bottom:12px;font-size:.95rem;line-height:1.5}.prof-appointments-page .appointments-actions{flex-wrap:wrap;align-items:flex-end;gap:10px;margin-top:16px;display:flex}.prof-appointments-page .appointments-status-form{flex-wrap:wrap;flex:280px;align-items:flex-end;gap:10px;display:flex}.prof-appointments-page .appointments-status-label{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.prof-appointments-page .appointments-status-form select{border:1px solid var(--gray-300);border-radius:var(--radius-md);min-width:160px;font:inherit;background:#fff;padding:10px 12px}.prof-appointments-page .appointments-actions .submit-btn{white-space:nowrap}.prof-appointments-page .create-session-form{margin-top:12px}.prof-appointments-page .appointments-pagination{margin-top:16px}@media(max-width:720px){.prof-appointments-page .appointments-actions,.prof-appointments-page .appointments-status-form{flex-direction:column;align-items:stretch}.prof-appointments-page .appointments-status-form select,.prof-appointments-page .appointments-actions .cta-button{text-align:center;width:100%}}.prof-students-page .prof-card{border-left:4px solid var(--info-light)}.prof-students-page .students-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;display:grid}.prof-students-page .student-card{flex-direction:column;gap:10px;display:flex}.prof-students-page .student-accordion{border:1px solid var(--gray-200);border-radius:var(--radius-md);background:var(--gray-50);padding:10px 12px}.prof-students-page .student-accordion summary{cursor:pointer;font-weight:var(--font-semibold);color:var(--tertiary-color)}.prof-students-page .student-quick-details{margin-top:10px}.prof-students-page .prof-note-options label{align-items:center;gap:6px;display:inline-flex}.prof-students-page .recent-notes-preview{border:1px dashed var(--gray-300);border-radius:var(--radius-md);background:var(--gray-50);margin-top:8px;padding:10px 12px}.prof-students-page .recent-notes-preview p{font-size:var(--text-sm);color:var(--tertiary-light);margin:0 0 6px}.prof-students-page .recent-notes-preview p:last-child{margin-bottom:0}.prof-students-page .student-create-card{max-width:860px}.prof-students-page .student-create-form{gap:14px;display:grid}.prof-students-page .student-create-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.prof-students-page .student-create-field{gap:6px;display:grid}.prof-students-page .student-create-field label{font-weight:var(--font-medium);color:var(--tertiary-color)}.prof-students-page .student-create-field input,.prof-students-page .student-create-field select{border:1px solid var(--gray-300);border-radius:var(--radius-md);width:100%;font:inherit;color:var(--tertiary-color);background:#fff;padding:10px 12px}.prof-students-page .student-create-actions{justify-content:flex-end;gap:10px;margin-top:4px;display:flex}.prof-student-show-page .student-kpi-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.prof-student-show-page .student-kpi-sections{gap:12px;display:grid}.prof-student-show-page .kpi-tile{border:1px solid var(--gray-200);border-radius:var(--radius-md);background:var(--gray-50);padding:12px}.prof-student-show-page .student-show-hero{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.prof-student-show-page .student-show-kicker{color:var(--primary-color);font-weight:var(--font-semibold);text-transform:uppercase;font-size:var(--text-xs);letter-spacing:.04em;margin:0 0 6px}.prof-student-show-page .student-show-contact{justify-items:end;gap:4px;display:grid}.prof-student-show-page .kpi-label{color:var(--tertiary-lighter);margin:0}.prof-student-show-page .kpi-value{font-size:var(--text-2xl);font-weight:var(--font-bold);margin:6px 0 0}.prof-student-show-page .kpi-meta{color:var(--tertiary-lighter);font-size:var(--text-sm);margin:6px 0 0}.prof-student-show-page .student-show-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.prof-student-show-page .student-contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.prof-student-show-page .student-contact-actions{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.prof-student-show-page .student-activity-list{gap:10px;display:grid}.prof-student-show-page .student-chart-card canvas{max-height:260px;width:100%!important}.prof-student-show-page .activity-row{border:1px solid var(--gray-200);border-radius:var(--radius-md);background:var(--gray-50);justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.prof-student-show-page .row-title{font-weight:var(--font-semibold);margin:0}.prof-student-show-page .row-meta{color:var(--tertiary-lighter);font-size:var(--text-sm);margin:2px 0 0}@media(max-width:980px){.prof-students-page .student-create-grid{grid-template-columns:1fr}.prof-students-page .student-create-actions{flex-direction:column;align-items:stretch}.prof-students-page .student-create-actions .cta-button,.prof-students-page .student-create-actions .submit-btn{text-align:center;width:100%}.prof-student-show-page .student-show-grid{grid-template-columns:1fr}.prof-student-show-page .student-show-hero{flex-direction:column}.prof-student-show-page .student-show-contact{justify-items:start}}.prof-notes-page .notes-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.prof-notes-page .notes-kpi-card{background:var(--quaternary-color);border:1px solid var(--gray-200);border-radius:var(--radius-xl);padding:14px 16px}.prof-notes-page .notes-kpi-label{color:var(--tertiary-light);margin:0}.prof-notes-page .notes-kpi-value{font-size:var(--text-2xl);font-weight:var(--font-semibold);margin:6px 0 0}.prof-notes-page .notes-create-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:10px;display:grid}.prof-notes-page .notes-create-form select,.prof-notes-page .notes-create-form input,.prof-notes-page .notes-create-form textarea{border:1px solid var(--gray-300);border-radius:var(--radius-md);background:var(--quaternary-color);width:100%;color:var(--tertiary-color);font:inherit;padding:10px 12px}.prof-notes-page .notes-create-form textarea{resize:vertical;min-height:88px}.prof-notes-page .notes-create-form select:focus,.prof-notes-page .notes-create-form input:focus,.prof-notes-page .notes-create-form textarea:focus{border-color:#c99383cc;outline:none;box-shadow:0 0 0 3px #c993831f}.prof-notes-page .notes-create-form textarea,.prof-notes-page .notes-create-form button{grid-column:1/-1}.prof-notes-page .notes-create-form .submit-btn{margin-top:2px}.prof-notes-page .notes-filters{grid-template-columns:minmax(240px,1fr) 220px 180px auto}.prof-notes-page .notes-list{gap:12px;display:grid}.prof-notes-page .note-card p:last-child{margin-bottom:0}@media(max-width:980px){.prof-notes-page .notes-kpis,.prof-notes-page .notes-create-form,.prof-notes-page .notes-filters{grid-template-columns:1fr}}.prof-documents-page{max-width:1440px;margin:0 auto}.prof-documents-page .docs-kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:12px;display:grid}.prof-documents-page .docs-kpi-card{background:var(--quaternary-color);border:1px solid var(--gray-200);border-radius:var(--radius-xl);box-shadow:var(--shadow-xs);padding:14px}.prof-documents-page .docs-kpi-label{color:var(--tertiary-lighter);font-size:var(--text-sm);margin:0 0 6px}.prof-documents-page .docs-kpi-value{color:var(--tertiary-color);font-size:var(--text-2xl);font-weight:var(--font-bold);margin:0}.prof-documents-page .docs-main-grid{grid-template-columns:minmax(0,1fr) minmax(300px,340px);align-items:start;gap:14px;display:grid}.prof-documents-page .docs-main-column,.prof-documents-page .docs-side-column{gap:14px;display:grid}.prof-documents-page .docs-main-column{min-width:0}.prof-documents-page .docs-filters{background:var(--quaternary-color);border:1px solid var(--gray-200);border-radius:var(--radius-xl);box-shadow:var(--shadow-xs);flex-wrap:wrap;gap:8px;padding:12px;display:flex}.prof-documents-page .docs-filters input,.prof-documents-page .docs-filters select{border:1px solid var(--gray-300);border-radius:var(--radius-md);background:var(--quaternary-color);padding:10px 12px}.prof-documents-page .docs-filters>*{flex:150px;min-width:0}.prof-documents-page .docs-filters input[name=search]{flex:2 320px}.prof-documents-page .docs-filters .submit-btn{flex:none}.prof-documents-page .docs-table-card h3{margin-bottom:12px}.prof-documents-page .docs-table-wrap{overflow-x:auto}.prof-documents-page .docs-table{border-collapse:collapse;width:100%}.prof-documents-page .docs-table th{text-align:left;color:var(--tertiary-lighter);font-size:var(--text-sm);border-bottom:1px solid var(--gray-200);padding:10px}.prof-documents-page .docs-table td{border-bottom:1px solid var(--gray-100);vertical-align:top;padding:10px}.prof-documents-page .docs-doc-title{color:var(--tertiary-color);font-weight:var(--font-semibold);margin:0}.prof-documents-page .docs-doc-meta{color:var(--tertiary-lighter);font-size:var(--text-xs);margin:4px 0 0}.prof-documents-page .docs-target-badge{border-radius:var(--radius-full);color:var(--primary-dark);font-size:var(--text-xs);font-weight:var(--font-medium);background:#c9938324;align-items:center;padding:5px 9px;display:inline-flex}.prof-documents-page .docs-actions{gap:6px;display:inline-flex}.prof-documents-page .docs-actions form{margin:0}.prof-documents-page .docs-icon-btn{border:1px solid var(--gray-300);background:var(--quaternary-color);width:32px;height:32px;color:var(--tertiary-light);transition:var(--transition-fast);cursor:pointer;border-radius:9px;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.prof-documents-page .docs-icon-btn:hover{border-color:var(--primary-color);color:var(--primary-dark)}.prof-documents-page .docs-icon-btn-danger:hover{color:#b72937;border-color:#d0424f}.prof-documents-page .docs-empty-cell{color:var(--tertiary-lighter)}.prof-documents-page .docs-upload-panel .prof-upload-form{gap:10px;display:grid}.prof-documents-page .docs-upload-header{justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:10px;display:flex}.prof-documents-page .docs-upload-header h3{margin:0 0 4px}.prof-documents-page .docs-upload-header .prof-muted{margin:0}.prof-documents-page .docs-student-add-btn{white-space:nowrap}.prof-documents-page .docs-student-presence-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:10px;display:grid}.prof-documents-page .docs-mini-kpi{border:1px solid var(--gray-200);border-radius:var(--radius-md);background:#c9938314;padding:9px 10px}.prof-documents-page .docs-mini-kpi-label{color:var(--tertiary-lighter);font-size:var(--text-xs);margin:0}.prof-documents-page .docs-mini-kpi-value{color:var(--tertiary-color);font-size:var(--text-lg);font-weight:var(--font-semibold);margin:3px 0 0}.prof-documents-page .docs-upload-errors{color:#8e2430;border-radius:var(--radius-md);background:#fff2f4;border:1px solid #f2c4cb;margin-bottom:10px;padding:10px 12px}.prof-documents-page .docs-upload-errors p{margin:0 0 6px}.prof-documents-page .docs-upload-errors ul{margin:0;padding-left:18px}.prof-documents-page .docs-upload-panel .prof-upload-form label{color:var(--tertiary-light);font-size:var(--text-sm);font-weight:var(--font-medium);margin-bottom:-3px}.prof-documents-page .docs-upload-panel .prof-upload-form input,.prof-documents-page .docs-upload-panel .prof-upload-form select{border:1px solid var(--gray-300);border-radius:var(--radius-md);padding:10px 12px}.prof-documents-page .docs-students-list{gap:8px;display:grid}.prof-documents-page .docs-student-row{border:1px solid var(--gray-200);border-radius:var(--radius-md);justify-content:space-between;align-items:center;gap:10px;padding:10px;display:flex}.prof-documents-page .docs-student-row-right{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:inline-flex}.prof-documents-page .docs-student-name{font-weight:var(--font-semibold);color:var(--tertiary-color);margin:0}.prof-documents-page .docs-student-level{color:var(--tertiary-lighter);font-size:var(--text-xs);margin:2px 0 0}.prof-documents-page .is-hidden{display:none}@media(max-width:1320px){.prof-documents-page .docs-main-grid{grid-template-columns:1fr}.prof-documents-page .docs-side-column{grid-template-columns:1fr 1fr;align-items:start}}@media(max-width:980px){.prof-documents-page .docs-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.prof-documents-page .docs-main-grid{grid-template-columns:1fr}.prof-documents-page .docs-filters>*{flex:100%}.prof-documents-page .docs-side-column{grid-template-columns:1fr}.prof-documents-page .docs-upload-header{flex-direction:column;align-items:stretch}.prof-documents-page .docs-student-add-btn{width:100%}}.prof-agenda-page{max-width:1440px;margin-inline:auto}.prof-agenda-page .google-connection-card{border:1px solid var(--gray-200);border-radius:var(--radius-lg);background:var(--quaternary-color);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:14px 16px;display:flex}.prof-agenda-page .google-disconnected{color:var(--tertiary-light);margin:0}.prof-agenda-page .agenda-view-tabs{background:var(--quaternary-color);border:1px solid var(--gray-200);border-radius:var(--radius-xl);box-shadow:var(--shadow-xs);gap:0;margin-bottom:16px;padding:4px;display:inline-flex}.prof-agenda-page .agenda-tab{border-radius:var(--radius-lg);font:inherit;font-weight:var(--font-medium);color:var(--tertiary-light);cursor:pointer;transition:var(--transition-fast);background:0 0;border:0;padding:10px 18px}.prof-agenda-page .agenda-tab.is-active{color:var(--tertiary-color);box-shadow:var(--shadow-xs);background:#fff}.prof-agenda-page .agenda-tab:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px}.prof-agenda-page .agenda-filters{background:var(--quaternary-color);border:1px solid var(--gray-200);border-radius:var(--radius-xl);box-shadow:var(--shadow-xs);flex-wrap:wrap;gap:8px;margin-bottom:16px;padding:12px;display:flex}.prof-agenda-page .agenda-filters>*{flex:160px;min-width:0}.prof-agenda-page .agenda-filters input[name=search]{flex:2 280px}.prof-agenda-page .agenda-filters .submit-btn{flex:none}.prof-agenda-page .agenda-filters input,.prof-agenda-page .agenda-filters select{border:1px solid var(--gray-300);border-radius:var(--radius-md);width:100%;font:inherit;color:var(--tertiary-color);background:#fff;padding:10px 12px}.prof-agenda-page .agenda-layout{grid-template-columns:minmax(280px,380px) minmax(0,1fr);align-items:start;gap:16px;display:grid}.prof-agenda-page .agenda-create-card h3{margin-top:0}.prof-agenda-page .prof-agenda-create{flex-direction:column;gap:14px;margin-top:8px;display:flex}.prof-agenda-page .agenda-field{flex-direction:column;gap:6px;min-width:0;display:flex}.prof-agenda-page .agenda-field label{font-size:.85rem;font-weight:var(--font-medium);color:var(--tertiary-light)}.prof-agenda-page .prof-agenda-create input,.prof-agenda-page .prof-agenda-create select,.prof-agenda-page .prof-agenda-create textarea,.prof-agenda-page .agenda-inline-form input,.prof-agenda-page .agenda-inline-form select,.prof-agenda-page .agenda-inline-form textarea{box-sizing:border-box;border:1px solid var(--gray-300);border-radius:var(--radius-md);width:100%;min-width:0;max-width:100%;font:inherit;color:var(--tertiary-color);background:#fff;padding:10px 12px}.prof-agenda-page .prof-agenda-create textarea{resize:vertical;min-height:88px}.prof-agenda-page .agenda-datetime-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.prof-agenda-page .agenda-datetime-row>.agenda-field{min-width:0}.prof-agenda-page .agenda-field-full{grid-column:1/-1}.prof-agenda-page .prof-agenda-create .submit-btn{width:100%;margin-top:4px}.prof-agenda-page .agenda-session-card{scroll-margin-top:100px}.prof-agenda-page .agenda-session-summary .prof-card-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.prof-agenda-page .agenda-session-summary h3{margin:0;font-size:1.1rem}.prof-agenda-page .agenda-session-line{color:var(--tertiary-color);margin:.35rem 0 0}.prof-agenda-page .agenda-session-slot{font-weight:var(--font-medium)}.prof-agenda-page .agenda-session-edit{border-top:1px solid var(--gray-200);margin-top:12px;padding-top:8px}.prof-agenda-page .agenda-session-edit summary{cursor:pointer;font-weight:var(--font-medium);color:var(--primary-color);list-style:none}.prof-agenda-page .agenda-session-edit summary::-webkit-details-marker{display:none}.prof-agenda-page .agenda-session-edit summary:before{content:"▸ ";transition:transform .15s;display:inline-block}.prof-agenda-page .agenda-session-edit[open] summary:before{transform:rotate(90deg)}.prof-agenda-page .agenda-session-edit-body{flex-direction:column;gap:12px;padding-top:14px;display:flex}.prof-agenda-page .agenda-inline-form{flex-direction:column;gap:12px;display:flex}.prof-agenda-page .agenda-inline-form .agenda-datetime-row{width:100%}.prof-agenda-page .agenda-inline-form .submit-btn{align-self:flex-start}.prof-agenda-page .agenda-inline-form .agenda-field{min-width:0}.prof-agenda-page .agenda-delete-form{margin:0}.prof-agenda-page .slot-warning{color:#8a6b0d;font-weight:var(--font-medium);margin-top:.5rem}.prof-agenda-page .agenda-session-highlight{outline:2px solid var(--primary-color);outline-offset:4px;border-radius:var(--radius-lg);transition:outline-offset .3s}.prof-agenda-page .agenda-panel-calendar{margin-top:0}.prof-agenda-page .agenda-calendar-card{padding:16px}.prof-agenda-page .agenda-calendar-hint{margin:0 0 12px;font-size:.9rem}.prof-agenda-page .prof-agenda-calendar-mount{min-height:560px}.prof-agenda-page .fc{--fc-border-color:var(--gray-200);--fc-button-bg-color:var(--primary-color);--fc-button-border-color:var(--primary-color);--fc-button-hover-bg-color:#b87d6d;--fc-button-hover-border-color:#b87d6d;--fc-button-active-bg-color:#a66f60;--fc-today-bg-color:#c993831f;font-family:inherit}.prof-agenda-page .fc .fc-button{font-weight:var(--font-medium)}.prof-agenda-page .fc .fc-toolbar-title{font-size:1.15rem;font-weight:var(--font-semibold)}.agenda-calendar-toast{z-index:9999;border-radius:var(--radius-lg);background:var(--tertiary-color);color:#fff;max-width:min(360px,100vw - 32px);box-shadow:var(--shadow-md);padding:12px 16px;font-size:.95rem;position:fixed;bottom:24px;right:24px}.agenda-calendar-toast-error{background:#a02632}@media(max-width:1100px){.prof-agenda-page .agenda-layout{grid-template-columns:1fr}}@media(max-width:980px){.prof-agenda-page .agenda-datetime-row{grid-template-columns:1fr}.prof-agenda-page .agenda-filters>*{flex:100%}}.prof-dashboard-page{gap:20px}.dashboard-kpis{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.dashboard-kpi-card{background:var(--quaternary-color);border:1px solid var(--gray-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);padding:14px}.kpi-label{color:var(--tertiary-lighter);font-size:var(--text-sm);margin:0 0 6px}.kpi-value{font-size:var(--text-2xl);font-weight:var(--font-bold);color:var(--tertiary-color);margin:0}.dashboard-main-grid{grid-template-columns:1.4fr 1fr;gap:14px;display:grid}.dashboard-column{gap:14px;display:grid}.dashboard-list{gap:10px;display:grid}.dashboard-row{border:1px solid var(--gray-200);border-radius:var(--radius-md);background:var(--gray-50);justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.row-title{font-weight:var(--font-semibold);margin:0}.row-meta{color:var(--tertiary-lighter);font-size:var(--text-sm);margin:2px 0 0}.row-date{color:var(--tertiary-light);font-size:var(--text-sm);white-space:nowrap;margin:0}.dashboard-link{color:var(--primary-dark);font-weight:var(--font-medium);text-decoration:none}.dashboard-link:hover{color:var(--primary-color)}.alert-block{border-top:1px dashed var(--gray-300);margin-top:10px;padding-top:10px}.alert-block:first-of-type{border-top:0;margin-top:4px;padding-top:0}.alert-title{font-weight:var(--font-semibold);margin:0 0 8px}.alert-item{color:var(--tertiary-light);font-size:var(--text-sm);margin:0 0 6px}.quick-actions{grid-template-columns:1fr 1fr;gap:10px;margin-top:10px;display:grid}.students-followup-table{gap:6px;margin-top:10px;display:grid}.followup-head,.followup-row{grid-template-columns:1.2fr 1fr 1fr 1.5fr;align-items:center;gap:10px;display:grid}.followup-head{font-size:var(--text-sm);color:var(--tertiary-lighter);padding:4px 2px}.followup-row{border:1px solid var(--gray-200);border-radius:var(--radius-md);background:var(--gray-50);font-size:var(--text-sm);padding:10px 12px}@media(max-width:1120px){.dashboard-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-main-grid{grid-template-columns:1fr}}@media(max-width:760px){.dashboard-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.quick-actions{grid-template-columns:1fr}.followup-head{display:none}.followup-row{grid-template-columns:1fr}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}
