@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;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size: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-sm:.25rem;--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}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.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,)}.resize{resize:both}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}}: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)}.home-marketplace .visually-hidden{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.home-marketplace{background-color:var(--quaternary-color)}.home-hero{padding:var(--space-12)var(--space-4)var(--space-10);background:linear-gradient(180deg,var(--primary-50)0%,var(--quaternary-color)70%)}.home-hero-inner{text-align:center;max-width:920px;margin:0 auto}.home-kicker{margin:0 0 var(--space-3);font-size:var(--text-sm);font-weight:var(--font-semibold);letter-spacing:.06em;text-transform:uppercase;color:var(--primary-dark)}.home-hero-title{margin:0 0 var(--space-4);font-family:var(--font-heading);font-size:clamp(2rem,5vw,3.25rem);font-weight:var(--font-bold);line-height:var(--leading-tight);color:var(--tertiary-color);letter-spacing:-.02em}.home-hero-subtitle{margin:0 auto var(--space-8);max-width:640px;font-size:clamp(1rem,2vw,1.125rem);line-height:var(--leading-relaxed);color:var(--tertiary-light)}.home-search{margin-bottom:var(--space-5)}.home-search-form{background:var(--quaternary-color);border:1px solid var(--gray-200);border-radius:var(--radius-full);max-width:720px;box-shadow:var(--shadow-md);transition:box-shadow var(--transition-base),border-color var(--transition-base);align-items:stretch;margin:0 auto;display:flex;overflow:hidden}.home-search-form:focus-within{border-color:var(--primary-color);box-shadow:0 8px 24px #c9938333}.home-search-form input{min-width:0;padding:var(--space-4)var(--space-5);font-size:var(--text-base);color:var(--tertiary-color);background:0 0;border:none;flex:1}.home-search-form input:focus{outline:none}.home-search-btn{align-items:center;gap:var(--space-2);padding:0 var(--space-6);background:var(--tertiary-color);color:var(--quaternary-color);font-weight:var(--font-semibold);font-size:var(--text-sm);cursor:pointer;transition:background-color var(--transition-base);white-space:nowrap;border:none;display:inline-flex}.home-search-btn:hover{background:var(--gray-800)}.home-search-chips{justify-content:center;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.home-chips-label{font-size:var(--text-sm);color:var(--tertiary-lighter)}.home-chip{padding:var(--space-1)var(--space-3);border-radius:var(--radius-full);border:1px solid var(--gray-200);background:var(--quaternary-color);color:var(--tertiary-light);font-size:var(--text-sm);transition:border-color var(--transition-base),color var(--transition-base),background-color var(--transition-base);text-decoration:none;display:inline-block}.home-chip:hover{border-color:var(--primary-color);color:var(--primary-dark);background:var(--primary-50)}.home-trust{padding:var(--space-6)var(--space-4);border-top:1px solid var(--gray-100);border-bottom:1px solid var(--gray-100);background:var(--gray-50)}.home-trust-inner{max-width:var(--layout-max);gap:var(--space-4);grid-template-columns:repeat(4,1fr);margin:0 auto;display:grid}.home-stat{text-align:center}.home-stat strong{font-size:var(--text-lg);font-weight:var(--font-bold);color:var(--tertiary-color);margin-bottom:var(--space-1);display:block}.home-stat span{font-size:var(--text-sm);color:var(--tertiary-lighter)}.home-section-head{max-width:var(--layout-max);margin:0 auto var(--space-8);padding:0 var(--space-4);text-align:center}.home-section-title{margin:0 0 var(--space-2);font-family:var(--font-heading);font-size:clamp(1.5rem,3vw,2rem);font-weight:var(--font-bold);color:var(--tertiary-color)}.home-section-subtitle{font-size:var(--text-base);color:var(--tertiary-light);line-height:var(--leading-relaxed);margin:0}.home-categories{padding:var(--space-16)var(--space-4);overflow:hidden}.home-categories-carousel{max-width:var(--layout-max);align-items:center;gap:var(--space-3);grid-template-columns:auto 1fr auto;margin:0 auto;display:grid;position:relative}.home-categories-viewport{min-width:0;overflow:hidden}.home-categories-track{gap:var(--space-4);scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:var(--space-2)2px var(--space-4);-webkit-overflow-scrolling:touch;scrollbar-width:none;display:flex;overflow-x:auto}.home-categories-track::-webkit-scrollbar{display:none}.home-categories-track:focus-visible{outline:2px solid var(--primary-color);outline-offset:4px;border-radius:var(--radius-md)}.home-category-card{scroll-snap-align:start;border-radius:var(--radius-lg);border:1px solid var(--gray-200);background:var(--quaternary-color);transition:transform var(--transition-base),box-shadow var(--transition-base),border-color var(--transition-base);flex:0 0 clamp(148px,18vw,188px)}.home-category-card:hover{box-shadow:var(--shadow-md);border-color:var(--primary-light);transform:translateY(-3px)}.home-category-card a{align-items:center;gap:var(--space-3);padding:var(--space-6)var(--space-4);color:var(--tertiary-color);text-align:center;box-sizing:border-box;flex-direction:column;height:100%;text-decoration:none;display:flex}.home-category-card h3{font-size:var(--text-base);font-weight:var(--font-semibold);margin:0;line-height:1.3}.home-category-icon{border-radius:var(--radius-full);background:var(--primary-50);width:52px;height:52px;color:var(--primary-dark);justify-content:center;align-items:center;font-size:1.25rem;display:flex}.home-category-cta{font-size:var(--text-sm);color:var(--primary-dark);font-weight:var(--font-medium)}.home-categories-nav{border-radius:var(--radius-full);border:1px solid var(--gray-200);background:var(--quaternary-color);width:42px;height:42px;color:var(--tertiary-color);cursor:pointer;transition:background-color var(--transition-base),border-color var(--transition-base),color var(--transition-base),opacity var(--transition-base);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.home-categories-nav:hover:not(:disabled){border-color:var(--primary-light);background:var(--primary-50);color:var(--primary-dark)}.home-categories-nav:disabled{opacity:.35;cursor:default}@media(prefers-reduced-motion:reduce){.home-categories-track{scroll-behavior:auto}.home-category-card{transition:none}}.home-categories-more{max-width:var(--layout-max);margin:var(--space-6)auto 0;text-align:center}.home-categories-more .cta-button i{margin-left:.35em;font-size:.85em}.home-teachers{padding:var(--space-16)var(--space-4);background:var(--gray-50)}.home-teachers-grid{max-width:var(--layout-max);gap:var(--space-5);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));margin:0 auto;display:grid}.home-teacher-card{border-radius:var(--radius-lg);border:1px solid var(--gray-200);background:var(--quaternary-color);transition:transform var(--transition-base),box-shadow var(--transition-base);overflow:hidden}.home-teacher-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.home-teacher-card--demo{opacity:.92}.home-teacher-link{gap:var(--space-4);padding:var(--space-5);color:inherit;text-decoration:none;display:flex}.home-teacher-avatar{border-radius:var(--radius-full);background:linear-gradient(135deg,var(--primary-color),var(--primary-dark));width:56px;height:56px;color:var(--quaternary-color);font-weight:var(--font-bold);font-size:var(--text-lg);flex-shrink:0;justify-content:center;align-items:center;display:flex}.home-teacher-body h3{margin:0 0 var(--space-1);font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--tertiary-color)}.home-teacher-meta{margin:0 0 var(--space-3);font-size:var(--text-sm);color:var(--tertiary-lighter);align-items:center;gap:var(--space-2);display:flex}.home-teacher-tags{gap:var(--space-2);margin:0 0 var(--space-3);flex-wrap:wrap;padding:0;list-style:none;display:flex}.home-teacher-tags li{padding:2px var(--space-2);border-radius:var(--radius-sm);background:var(--primary-50);color:var(--primary-dark);font-size:var(--text-xs);font-weight:var(--font-medium)}.home-teacher-cta{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--primary-dark)}.home-teacher-cta--muted{color:var(--tertiary-lighter);font-weight:var(--font-medium)}.home-teachers-more{max-width:var(--layout-max);margin:var(--space-8)auto 0;text-align:center}.home-teachers-empty{padding:var(--space-10)var(--space-6);text-align:center;border:1px dashed var(--gray-300);border-radius:var(--radius-xl);background:var(--gray-50);grid-column:1/-1}.home-teachers-empty h3{margin:0 0 var(--space-2);font-size:var(--text-xl);color:var(--tertiary-color)}.home-teachers-empty p{margin:0 0 var(--space-6);color:var(--tertiary-light)}.home-steps{padding:var(--space-16)var(--space-4)}.home-steps-grid{max-width:var(--layout-max);gap:var(--space-6);grid-template-columns:repeat(3,1fr);margin:0 auto;padding:0;list-style:none;display:grid}.home-step{padding:var(--space-6);border-radius:var(--radius-lg);border:1px solid var(--gray-200);background:var(--quaternary-color)}.home-step-num{width:36px;height:36px;margin-bottom:var(--space-4);border-radius:var(--radius-full);background:var(--primary-color);color:var(--quaternary-color);font-weight:var(--font-bold);font-size:var(--text-sm);justify-content:center;align-items:center;display:inline-flex}.home-step h3{margin:0 0 var(--space-2);font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--tertiary-color)}.home-step p{font-size:var(--text-sm);line-height:var(--leading-relaxed);color:var(--tertiary-light);margin:0}.home-audience{padding:var(--space-12)var(--space-4)var(--space-16)}.home-audience-grid{max-width:var(--layout-max);gap:var(--space-5);grid-template-columns:repeat(2,1fr);margin:0 auto;display:grid}.home-audience-card{padding:var(--space-8);border-radius:var(--radius-xl);border:1px solid var(--gray-200)}.home-audience-card--family{background:var(--primary-50);border-color:#c9938340}.home-audience-card--teacher{background:var(--gray-50)}.home-audience-card h2{margin:0 0 var(--space-3);font-size:var(--text-xl);font-weight:var(--font-bold);color:var(--tertiary-color)}.home-audience-card p{margin:0 0 var(--space-6);color:var(--tertiary-light);line-height:var(--leading-relaxed)}.home-audience-actions{gap:var(--space-3);flex-wrap:wrap;display:flex}.home-marketplace .home-faq{padding:var(--space-16)var(--space-4);margin:0}.home-faq-cta{max-width:920px;margin:var(--space-8)auto 0;text-align:center;color:var(--tertiary-light);font-size:var(--text-base)}.home-faq-cta a{color:var(--primary-dark);font-weight:var(--font-semibold);text-underline-offset:3px;text-decoration:underline}.home-faq-cta a:hover{color:var(--primary-color)}.home-marketplace .home-final-cta{margin:0 var(--space-4)var(--space-16)}.home-marketplace.js-reveal .home-step,.home-marketplace.js-reveal .home-teacher-card,.home-marketplace.js-reveal .home-category-card{opacity:0;transition:opacity .5s,transform .5s;transform:translateY(12px)}.home-marketplace.js-reveal .home-step.is-visible,.home-marketplace.js-reveal .home-teacher-card.is-visible,.home-marketplace.js-reveal .home-category-card.is-visible{opacity:1;transform:translateY(0)}@media(max-width:900px){.home-trust-inner{grid-template-columns:repeat(2,1fr)}.home-steps-grid,.home-audience-grid{grid-template-columns:1fr}}@media(max-width:640px){.home-hero{padding-top:var(--space-8)}.home-search-form{border-radius:var(--radius-lg);flex-direction:column}.home-search-btn{padding:var(--space-3);border-radius:0;justify-content:center}.home-search-btn span{display:inline}.home-trust-inner{gap:var(--space-3);grid-template-columns:1fr 1fr}.home-categories,.home-teachers,.home-steps{padding:var(--space-10)var(--space-4)}.home-categories-carousel{gap:var(--space-2)}.home-categories-nav{width:36px;height:36px}.home-category-card{flex-basis:clamp(140px,42vw,170px)}.home-audience-actions .cta-button{justify-content:center;width:100%}}.become-teacher-page{background:var(--quaternary-color)}.become-teacher-hero{padding:var(--space-12)var(--space-4)var(--space-10);background:linear-gradient(180deg,var(--primary-50)0%,var(--quaternary-color)75%)}.become-teacher-hero-inner{text-align:center;max-width:820px;margin:0 auto}.become-teacher-kicker{border-radius:var(--radius-full);color:var(--primary-dark);font-size:var(--text-sm);font-weight:var(--font-semibold);margin:0 0 var(--space-4);background:#c993831f;border:1px solid #c9938373;padding:6px 12px;display:inline-flex}.become-teacher-title{margin:0 0 var(--space-4);font-family:var(--font-heading);font-size:clamp(2rem,4.5vw,3rem);line-height:var(--leading-tight);color:var(--tertiary-color)}.become-teacher-subtitle{margin:0 auto var(--space-6);max-width:640px;color:var(--tertiary-light);line-height:var(--leading-relaxed)}.become-teacher-proof{justify-content:center;gap:var(--space-4);color:var(--tertiary-light);font-size:var(--text-sm);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.become-teacher-proof i{color:var(--primary-dark);margin-right:var(--space-1)}.become-teacher-section-head{max-width:var(--layout-max);margin:0 auto var(--space-8);padding:0 var(--space-4);text-align:center}.become-teacher-section-head h2{margin:0 0 var(--space-2);color:var(--tertiary-color);font-size:clamp(1.5rem,3vw,2rem)}.become-teacher-section-head p{color:var(--tertiary-light);margin:0}.become-teacher-benefits{padding:var(--space-12)var(--space-4)}.become-teacher-benefits-grid{max-width:var(--layout-max);gap:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin:0 auto;display:grid}.become-teacher-benefit{padding:var(--space-6);border:1px solid var(--gray-200);border-radius:var(--radius-lg);background:var(--gray-50)}.become-teacher-benefit-icon{border-radius:var(--radius-full);background:var(--primary-50);width:44px;height:44px;color:var(--primary-dark);margin-bottom:var(--space-4);justify-content:center;align-items:center;display:inline-flex}.become-teacher-benefit h3{margin:0 0 var(--space-2);font-size:var(--text-lg);color:var(--tertiary-color)}.become-teacher-benefit p{font-size:var(--text-sm);color:var(--tertiary-light);line-height:var(--leading-relaxed);margin:0}.become-teacher-steps{padding:var(--space-12)var(--space-4);background:var(--gray-50)}.become-teacher-steps-grid{max-width:var(--layout-max);gap:var(--space-5);grid-template-columns:repeat(3,1fr);margin:0 auto;padding:0;list-style:none;display:grid}.become-teacher-steps-grid li{padding:var(--space-6);border-radius:var(--radius-lg);border:1px solid var(--gray-200);background:var(--quaternary-color)}.become-teacher-step-num{width:32px;height:32px;margin-bottom:var(--space-3);border-radius:var(--radius-full);background:var(--primary-color);color:var(--quaternary-color);font-weight:var(--font-bold);font-size:var(--text-sm);justify-content:center;align-items:center;display:inline-flex}.become-teacher-steps-grid h3{margin:0 0 var(--space-2);font-size:var(--text-base);color:var(--tertiary-color)}.become-teacher-steps-grid p{font-size:var(--text-sm);color:var(--tertiary-light);line-height:var(--leading-relaxed);margin:0}.become-teacher-form-section{padding:var(--space-16)var(--space-4)}.become-teacher-form-layout{max-width:var(--layout-max);gap:var(--space-8);grid-template-columns:1fr 1.2fr;align-items:start;margin:0 auto;display:grid}.become-teacher-form-intro h2{margin:0 0 var(--space-3);font-size:var(--text-2xl);color:var(--tertiary-color)}.become-teacher-form-intro>p{margin:0 0 var(--space-6);color:var(--tertiary-light);line-height:var(--leading-relaxed)}.become-teacher-success{gap:var(--space-3);padding:var(--space-4);margin-bottom:var(--space-6);border-radius:var(--radius-lg);border:1px solid var(--success);background:var(--success-light);color:var(--tertiary-color);display:flex}.become-teacher-success i{color:var(--success);margin-top:2px;font-size:1.25rem}.become-teacher-success p{margin:var(--space-1)0 0;font-size:var(--text-sm);color:var(--tertiary-light)}.become-teacher-faq-mini{margin-top:var(--space-6)}.become-teacher-faq-mini h3{margin:0 0 var(--space-3);font-size:var(--text-lg);color:var(--tertiary-color)}.become-teacher-faq-mini details{border:1px solid var(--gray-200);border-radius:var(--radius-md);padding:var(--space-3)var(--space-4);margin-bottom:var(--space-2);background:var(--gray-50)}.become-teacher-faq-mini summary{cursor:pointer;font-weight:var(--font-semibold);color:var(--tertiary-color)}.become-teacher-faq-mini p{margin:var(--space-2)0 0;font-size:var(--text-sm);color:var(--tertiary-light)}.become-teacher-form-card{padding:var(--space-8);border:1px solid var(--gray-200);border-radius:var(--radius-xl);background:var(--quaternary-color);box-shadow:var(--shadow-sm)}.become-teacher-form-row{gap:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.become-teacher-form .form-group{margin-bottom:var(--space-4)}.become-teacher-form label{margin-bottom:var(--space-2);font-weight:var(--font-semibold);color:var(--tertiary-color);font-size:var(--text-sm);display:block}.become-teacher-form input,.become-teacher-form select,.become-teacher-form textarea{width:100%;padding:var(--space-3);border:1px solid var(--gray-300);border-radius:var(--radius-md);font-size:var(--text-base);color:var(--tertiary-color);background:var(--quaternary-color)}.become-teacher-form input:focus,.become-teacher-form select:focus,.become-teacher-form textarea:focus{outline:2px solid var(--primary-light);border-color:var(--primary-color)}.become-teacher-subjects-label{margin-bottom:var(--space-2);font-weight:var(--font-semibold);color:var(--tertiary-color);font-size:var(--text-sm);display:block}.become-teacher-subject-grid{gap:var(--space-2);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.become-teacher-subject-chip{padding:var(--space-2)var(--space-4);border:1px solid var(--gray-300);border-radius:var(--radius-full);background:var(--quaternary-color);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--tertiary-color);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;transition:border-color .15s,background-color .15s,color .15s;display:inline-flex}.become-teacher-subject-chip:hover{border-color:var(--primary-light);background:var(--primary-50)}.become-teacher-subject-chip:has(input:checked){border-color:var(--primary-color);color:var(--primary-dark);background:#c993832e}.become-teacher-subject-chip:has(input:focus-visible){outline:2px solid var(--primary-light);outline-offset:2px}.become-teacher-subject-chip input{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.become-teacher-subjects-other{margin-top:var(--space-2)}.become-teacher-subjects-other label{margin-bottom:var(--space-2)}.become-teacher-form .form-hint{margin-top:var(--space-1);font-size:var(--text-xs);color:var(--tertiary-lighter);display:block}.become-teacher-form .form-error{margin-top:var(--space-1);font-size:var(--text-sm);color:var(--error);display:block}.become-teacher-checkbox{gap:var(--space-3);font-weight:var(--font-normal);font-size:var(--text-sm);color:var(--tertiary-light);cursor:pointer;align-items:flex-start;display:flex}.become-teacher-checkbox input{width:auto;margin-top:3px}.become-teacher-submit{width:100%;margin-top:var(--space-2);justify-content:center}@media(max-width:900px){.become-teacher-form-layout,.become-teacher-steps-grid{grid-template-columns:1fr}}@media(max-width:640px){.become-teacher-form-row{grid-template-columns:1fr}.become-teacher-form-card{padding:var(--space-5)}}.city-location{width:100%;margin-bottom:16px}.city-location-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:14px;display:grid}.city-autocomplete,.city-autocomplete-field{position:relative}.city-autocomplete-results{z-index:30;border:1px solid var(--gray-300);border-radius:var(--radius-md);background:var(--quaternary-color,#fff);max-height:240px;margin:0;padding:6px 0;list-style:none;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 10px 28px #1c19171f}.city-autocomplete-option{cursor:pointer;font-size:var(--text-sm);color:var(--tertiary-color);padding:10px 14px}.city-autocomplete-option:hover,.city-autocomplete-option.is-active{color:var(--primary-dark,var(--tertiary-color));background:#c993831f}.city-autocomplete-hint{font-size:var(--text-xs,.8rem);color:var(--tertiary-light);margin:6px 0 0}.city-autocomplete-hint[data-type=warn]{color:#b45309}@media(max-width:640px){.city-location-grid{grid-template-columns:1fr}}.search-page{background:var(--quaternary-color)}.search-page-hero{padding:var(--space-10)var(--space-4)var(--space-8);background:linear-gradient(180deg,var(--primary-50)0%,var(--quaternary-color)80%);border-bottom:1px solid var(--gray-100)}.search-page-hero-inner{max-width:920px;margin:0 auto}.search-page-title{margin:0 0 var(--space-2);font-family:var(--font-heading);color:var(--tertiary-color);font-size:clamp(1.75rem,4vw,2.5rem)}.search-page-subtitle{margin:0 0 var(--space-6);color:var(--tertiary-light);font-size:var(--text-base)}.search-page .home-search{margin-bottom:var(--space-4)}.search-page-filters{max-width:var(--layout-max);padding:var(--space-5)var(--space-4);align-items:center;gap:var(--space-3);flex-wrap:wrap;margin:0 auto;display:flex}.search-page-filters-label{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--tertiary-color)}.search-page-active-filters{gap:var(--space-2);flex-wrap:wrap;display:flex}.search-filter-badge{align-items:center;gap:var(--space-2);padding:var(--space-1)var(--space-3);border-radius:var(--radius-full);background:var(--primary-50);color:var(--primary-dark);font-size:var(--text-sm);border:1px solid #c9938359;text-decoration:none;display:inline-flex}.search-filter-badge:hover{background:var(--primary-100)}.search-filter-badge--clear{background:var(--gray-100);border-color:var(--gray-300);color:var(--tertiary-light)}.search-page-subject-chips{max-width:var(--layout-max);padding:0 var(--space-4)var(--space-6);gap:var(--space-2);flex-wrap:wrap;margin:0 auto;display:flex}.search-page-subject-chips .home-chip.is-active{background:var(--primary-color);border-color:var(--primary-color);color:var(--quaternary-color)}.search-page-results{max-width:var(--layout-max);padding:var(--space-6)var(--space-4)var(--space-16);margin:0 auto}.search-page-results-head{justify-content:space-between;align-items:baseline;gap:var(--space-3);margin-bottom:var(--space-6);flex-wrap:wrap;display:flex}.search-page-results-head h2{font-size:var(--text-xl);color:var(--tertiary-color);margin:0}.search-page-count{font-size:var(--text-sm);color:var(--tertiary-lighter);margin:0}.search-page-teachers-grid{gap:var(--space-5);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}.search-page-empty{text-align:center;padding:var(--space-12)var(--space-4);border:1px dashed var(--gray-300);border-radius:var(--radius-xl);background:var(--gray-50)}.search-page-empty h3{margin:0 0 var(--space-2);color:var(--tertiary-color)}.search-page-empty p{margin:0 0 var(--space-6);color:var(--tertiary-light)}.search-page-empty-actions{justify-content:center;gap:var(--space-3);margin-bottom:var(--space-6);flex-wrap:wrap;display:flex}.search-page-subjects-section{margin-top:var(--space-12);padding-top:var(--space-8);border-top:1px solid var(--gray-200)}.search-page-subjects-section h3{margin:0 0 var(--space-4);font-size:var(--text-lg);color:var(--tertiary-color)}.search-page-subjects-list{gap:var(--space-2);flex-wrap:wrap;display:flex}@media(max-width:640px){.search-page-hero{padding-top:var(--space-8)}.search-page-empty-actions .cta-button{justify-content:center;width:100%}}.plans-page{padding:var(--space-8)var(--space-4)var(--space-16);background:linear-gradient(180deg,var(--primary-50)0%,var(--quaternary-color)280px)}.plans-hero,.plans-detail-hero{max-width:var(--layout-max);margin:0 auto var(--space-10);text-align:center}.plans-kicker,.plans-breadcrumb{font-size:var(--text-sm);color:var(--primary-dark);font-weight:var(--font-semibold)}.plans-breadcrumb{max-width:var(--layout-max);margin:0 auto var(--space-6);gap:var(--space-2);text-align:left;flex-wrap:wrap;display:flex}.plans-breadcrumb a{color:var(--primary-dark);text-decoration:none}.plans-breadcrumb a:hover{text-decoration:underline}.plans-hero h1,.plans-detail-hero h1{margin:var(--space-3)0;font-family:var(--font-heading);color:var(--tertiary-color);font-size:clamp(2rem,4vw,2.75rem)}.plans-intro,.plans-detail-tagline{max-width:42rem;color:var(--tertiary-light);line-height:var(--leading-relaxed);margin:0 auto}.plans-hero-notes{justify-content:center;gap:var(--space-4);margin:var(--space-6)0 0;font-size:var(--text-sm);color:var(--tertiary-light);flex-wrap:wrap;padding:0;list-style:none;display:flex}.plans-hero-notes i{color:var(--primary-color)}.plans-grid{max-width:var(--layout-max);margin:0 auto var(--space-12);gap:var(--space-5);grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;display:grid}.plans-card{padding:var(--space-6);background:var(--quaternary-color);border:1px solid var(--gray-200);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);flex-direction:column;display:flex;position:relative}.plans-card--popular{border-color:var(--primary-color);box-shadow:var(--shadow-md);transform:translateY(-4px)}.plans-card-badge{top:var(--space-4);right:var(--space-4);padding:var(--space-1)var(--space-3);border-radius:var(--radius-full);background:var(--primary-color);color:var(--quaternary-color);font-size:var(--text-xs);font-weight:var(--font-bold);position:absolute}.plans-card-icon{border-radius:var(--radius-lg);width:3rem;height:3rem;color:var(--primary-dark);background:#c9938324;justify-content:center;align-items:center;font-size:1.25rem;line-height:1;display:inline-flex}.plans-card--performance .plans-card-icon{background:#c9938333}.plans-card--excellence .plans-card-icon{color:var(--tertiary-color);background:#8b6d4e1f}.plans-card-head h2{margin:var(--space-3)0 var(--space-2);font-size:var(--text-xl);color:var(--tertiary-color)}.plans-card-tagline{font-size:var(--text-sm);color:var(--tertiary-lighter);line-height:var(--leading-relaxed);min-height:3.5rem;margin:0}.plans-card-price,.plans-detail-price{margin:var(--space-5)0}.plans-card-price strong,.plans-detail-price strong{font-size:var(--text-3xl);color:var(--tertiary-color)}.plans-card-price span,.plans-detail-price span{font-size:var(--text-sm);color:var(--tertiary-lighter)}.plans-card-highlights,.plans-detail-meta{margin:0 0 var(--space-5);gap:var(--space-2);font-size:var(--text-sm);color:var(--tertiary-light);flex-direction:column;padding:0;list-style:none;display:flex}.plans-card-highlights i,.plans-detail-meta i{width:1.25rem;color:var(--primary-color)}.plans-card-actions,.plans-detail-actions{gap:var(--space-3);flex-direction:column;margin-top:auto;display:flex}.plans-compare{max-width:var(--layout-max);margin:0 auto}.plans-compare h2{margin-bottom:var(--space-5);text-align:center;font-size:var(--text-2xl)}.plans-compare-table-wrap{border:1px solid var(--gray-200);border-radius:var(--radius-xl);background:var(--quaternary-color);overflow-x:auto}.plans-compare-table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.plans-compare-table th,.plans-compare-table td{padding:var(--space-4);border-bottom:1px solid var(--gray-100);text-align:center}.plans-compare-table thead th{background:var(--gray-50);font-weight:var(--font-bold)}.plans-compare-table tbody th{text-align:left;font-weight:var(--font-medium);color:var(--tertiary-light)}.plans-yes{color:var(--success)}.plans-no{color:var(--gray-400)}.plans-page--detail{padding-top:var(--space-6)}.plans-detail-hero{padding:var(--space-8)var(--space-6);border-radius:var(--radius-xl);background:var(--quaternary-color);border:1px solid var(--gray-200)}.plans-detail-hero--essentiel{background:linear-gradient(135deg,var(--quaternary-color),var(--primary-50))}.plans-detail-hero--performance{background:linear-gradient(135deg,var(--quaternary-color),#eef4ff)}.plans-detail-hero--excellence{background:linear-gradient(135deg,#fff9f3,var(--primary-100))}.plans-detail-hero-content{max-width:40rem;margin:0 auto}.plans-detail-grid{max-width:var(--layout-max);margin:0 auto var(--space-10);gap:var(--space-6);grid-template-columns:minmax(0,1.4fr) minmax(280px,1fr);align-items:start;display:grid}.plans-detail-block{padding:var(--space-6);background:var(--quaternary-color);border:1px solid var(--gray-200);border-radius:var(--radius-xl);margin-bottom:var(--space-5)}.plans-detail-block h2{margin:0 0 var(--space-5);font-size:var(--text-xl);color:var(--tertiary-color)}.plans-detail-block--accent{background:var(--primary-50);border-color:var(--primary-light)}.plans-feature-list{gap:var(--space-4);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.plans-feature-list li{gap:var(--space-4);align-items:flex-start;display:flex}.plans-feature-icon{border-radius:var(--radius-md);background:var(--primary-100);width:40px;height:40px;color:var(--primary-dark);flex-shrink:0;justify-content:center;align-items:center;display:flex}.plans-feature-list strong{margin-bottom:var(--space-1);color:var(--tertiary-color);display:block}.plans-feature-list p{font-size:var(--text-sm);color:var(--tertiary-lighter);margin:0}.plans-bullet-list{padding-left:var(--space-5);color:var(--tertiary-light);line-height:var(--leading-relaxed);margin:0}.plans-limits-list{gap:var(--space-3);flex-direction:column;margin:0;display:flex}.plans-limits-list dt{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--tertiary-color)}.plans-limits-list dd{font-size:var(--text-sm);color:var(--tertiary-lighter);margin:0}.plans-addons{max-width:var(--layout-max);margin:0 auto var(--space-10)}.plans-addons h2{margin-bottom:var(--space-5);font-size:var(--text-2xl)}.plans-addons-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(200px,1fr));display:grid}.plans-addon-card{padding:var(--space-4);background:var(--quaternary-color);border:1px solid var(--gray-200);border-radius:var(--radius-lg)}.plans-addon-card h3{margin:0 0 var(--space-2);font-size:var(--text-sm);color:var(--tertiary-color)}.plans-addon-price{font-size:var(--text-lg);font-weight:var(--font-bold);color:var(--primary-dark);margin:0}.plans-addon-price span{font-size:var(--text-xs);font-weight:var(--font-normal);color:var(--tertiary-lighter)}.plans-other{max-width:var(--layout-max);margin:0 auto}.plans-other-grid{gap:var(--space-3);flex-wrap:wrap;display:flex}.plans-other-link{align-items:center;gap:var(--space-2);padding:var(--space-3)var(--space-4);border-radius:var(--radius-lg);border:1px solid var(--gray-200);background:var(--quaternary-color);color:var(--primary-dark);font-size:var(--text-sm);font-weight:var(--font-medium);text-decoration:none;display:inline-flex}.plans-other-link:hover{border-color:var(--primary-color);background:var(--primary-50)}.plans-subscribe-layout{max-width:var(--layout-max);gap:var(--space-8);grid-template-columns:minmax(0,1.4fr) minmax(0,.8fr);align-items:start;margin:0 auto;display:grid}.plans-subscribe-form,.plans-checkout-mock-form,.plans-subscribe-aside{background:var(--quaternary-color);border:1px solid var(--gray-200);border-radius:var(--radius-xl);padding:var(--space-6)}.plans-subscribe-grid{gap:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.plans-subscribe-full{grid-column:1/-1}.plans-subscribe-rgpd{margin-top:var(--space-5);padding:var(--space-4);border:1px solid var(--gray-200);border-radius:var(--radius-lg);background:var(--gray-50,#fafafa)}.plans-subscribe-rgpd-label{align-items:flex-start;gap:var(--space-3);cursor:pointer;font-size:var(--text-sm);color:var(--tertiary-color);line-height:1.45;font-weight:var(--font-normal);margin:0;display:flex}.plans-subscribe-rgpd-label input[type=checkbox]{width:1.15rem;min-width:1.15rem;height:1.15rem;accent-color:var(--primary-color);border:1px solid var(--gray-300);box-shadow:none;background:var(--quaternary-color);border-radius:3px;flex-shrink:0;margin:.15rem 0 0;padding:0}.plans-subscribe-rgpd .form-error{margin-top:var(--space-2);display:block}.plans-subscribe-submit{width:100%;margin-top:var(--space-5);min-height:3.25rem;font-size:var(--text-base);font-weight:var(--font-semibold);justify-content:center;box-shadow:0 8px 20px #c9938347}.plans-subscribe-submit i{margin-left:.4em}.plans-subscribe-aside h2{margin:0 0 var(--space-3);font-size:var(--text-lg)}.plans-subscribe-aside-plan{font-weight:var(--font-semibold);color:var(--primary-dark);margin:0 0 var(--space-2)}.plans-subscribe-aside ul{margin:var(--space-4)0;color:var(--tertiary-light);padding-left:1.1rem}.plans-subscribe-login{margin-top:var(--space-6);padding-top:var(--space-5);border-top:1px solid var(--gray-200);text-align:center}.plans-subscribe-login p{margin:0 0 var(--space-3);font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--tertiary-color)}.plans-subscribe-login-btn{justify-content:center;width:100%}.plans-subscribe-login-btn i{margin-left:.4em}.plans-checkout-mock-form{max-width:28rem;margin:0 auto}.plans-checkout-mock-row{gap:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.plans-checkout-mock-amount{margin:var(--space-4)0;color:var(--tertiary-color)}.plans-checkout-result-actions{max-width:var(--layout-max);gap:var(--space-3);flex-wrap:wrap;justify-content:center;margin:0 auto;display:flex}@media(max-width:1024px){.plans-grid{grid-template-columns:1fr;max-width:28rem}.plans-card--popular{transform:none}.plans-detail-grid,.plans-subscribe-layout,.plans-subscribe-grid{grid-template-columns:1fr}}.teacher-profile-page{--teacher-accent:var(--primary-color);padding:var(--space-6)var(--space-4)var(--space-16);background:linear-gradient(180deg,var(--primary-50)0%,var(--quaternary-color)220px)}.teacher-profile--premium .teacher-profile-hero{border-color:var(--teacher-accent)}@supports (color:color-mix(in lab,red,red)){.teacher-profile--premium .teacher-profile-hero{border-color:color-mix(in srgb,var(--teacher-accent)35%,var(--gray-200))}}.teacher-profile--premium .teacher-profile-kicker{color:var(--teacher-accent)}.teacher-profile-banner{max-width:var(--layout-max);height:180px;margin:0 auto var(--space-5);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);background-position:50%;background-size:cover}.teacher-profile-breadcrumb{max-width:var(--layout-max);margin:0 auto var(--space-6);align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--tertiary-lighter);flex-wrap:wrap;display:flex}.teacher-profile-breadcrumb a{color:var(--primary-dark);font-weight:var(--font-medium);text-decoration:none}.teacher-profile-breadcrumb a:hover{text-decoration:underline}.teacher-profile-layout{max-width:var(--layout-max);gap:var(--space-6);grid-template-columns:minmax(0,1fr) 320px;align-items:start;margin:0 auto;display:grid}.teacher-profile-main{gap:var(--space-5);flex-direction:column;display:flex}.teacher-profile-hero,.teacher-profile-section,.teacher-profile-booking-card{background:var(--quaternary-color);border:1px solid var(--gray-200);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm)}.teacher-profile-hero{padding:var(--space-6)}.teacher-profile-hero-top{gap:var(--space-5);margin-bottom:var(--space-6);flex-wrap:wrap;align-items:flex-start;display:flex}.teacher-profile-badge--excellence{color:#9a6b2f;background:linear-gradient(135deg,#fff3e6,#fdebd0)}.teacher-profile-badge--certified,.teacher-profile-badge--certified_plus{color:#1e4f8a;background:#eef6ff}.teacher-profile-badge--boost{color:#5b3ea6;background:#f3ecff}.teacher-profile-rating-summary{text-align:center;padding:var(--space-3)var(--space-4);border-radius:var(--radius-lg);background:var(--gray-50);border:1px solid var(--gray-200);margin-left:auto}.teacher-profile-rating-summary strong{font-size:var(--text-2xl);color:var(--tertiary-color);display:block}.teacher-profile-rating-summary span{font-size:var(--text-xs);color:var(--tertiary-lighter)}.teacher-profile-stars{color:#f5a623;font-size:var(--text-sm);letter-spacing:.05em}.teacher-profile-stars--sm{font-size:var(--text-xs)}.teacher-profile-star--muted{opacity:.25}.teacher-profile-section-head{justify-content:space-between;align-items:center;gap:var(--space-4);margin-bottom:var(--space-4);display:flex}.teacher-profile-section-head .teacher-profile-section-title{margin-bottom:0}.teacher-profile-media-btn{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-3);border-radius:var(--radius-full);background:var(--primary-50);color:var(--primary-dark);font-size:var(--text-sm);font-weight:var(--font-semibold);text-decoration:none;display:inline-flex}.teacher-profile-media-btn:hover{background:var(--primary-100)}.teacher-profile-avatar{border-radius:var(--radius-full);background:linear-gradient(135deg,var(--teacher-accent),var(--primary-dark));width:120px;height:120px;color:var(--quaternary-color);font-size:var(--text-3xl);font-weight:var(--font-bold);box-shadow:var(--shadow-md);flex-shrink:0;justify-content:center;align-items:center;display:flex}.teacher-profile-avatar-wrap{flex-shrink:0}.teacher-profile-avatar-img{border-radius:var(--radius-full);object-fit:cover;width:120px;height:120px;box-shadow:var(--shadow-md);border:4px solid var(--quaternary-color)}.teacher-profile-kicker{margin:0 0 var(--space-1);font-size:var(--text-xs);font-weight:var(--font-semibold);letter-spacing:.06em;text-transform:uppercase;color:var(--primary-dark)}.teacher-profile-name{margin:0 0 var(--space-2);font-family:var(--font-heading);font-size:clamp(1.75rem,4vw,2.25rem);font-weight:var(--font-bold);line-height:var(--leading-tight);color:var(--tertiary-color)}.teacher-profile-location{margin:0 0 var(--space-4);align-items:center;gap:var(--space-2);font-size:var(--text-base);color:var(--tertiary-light);display:flex}.teacher-profile-badges{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.teacher-profile-badges li{align-items:center;gap:var(--space-2);padding:var(--space-1)var(--space-3);border-radius:var(--radius-full);background:var(--primary-50);color:var(--primary-dark);font-size:var(--text-xs);font-weight:var(--font-medium);display:inline-flex}.teacher-profile-stats{gap:var(--space-3);padding-top:var(--space-5);border-top:1px solid var(--gray-100);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.teacher-profile-stat{text-align:center}.teacher-profile-stat strong{margin-bottom:var(--space-1);font-size:var(--text-xl);font-weight:var(--font-bold);color:var(--tertiary-color);display:block}.teacher-profile-stat span{font-size:var(--text-xs);color:var(--tertiary-lighter);line-height:var(--leading-snug)}.teacher-profile-section{padding:var(--space-6)}.teacher-profile-section-title{margin:0 0 var(--space-4);font-size:var(--text-xl);font-weight:var(--font-bold);color:var(--tertiary-color)}.teacher-profile-about p{margin:0 0 var(--space-4);font-size:var(--text-base);line-height:var(--leading-relaxed);color:var(--tertiary-light)}.teacher-profile-about p:last-child{margin-bottom:0}.teacher-profile-subjects-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(240px,1fr));display:grid}.teacher-profile-subject-card{gap:var(--space-2)var(--space-3);padding:var(--space-4);border:1px solid var(--gray-200);border-radius:var(--radius-lg);background:var(--gray-50);grid-template-columns:auto 1fr;display:grid}.teacher-profile-subject-body{grid-column:2}.teacher-profile-subject-rating{margin-top:var(--space-2);color:#f5a623;font-size:var(--text-xs)}.teacher-profile-subject-icon{border-radius:var(--radius-md);background:var(--primary-100);width:44px;height:44px;color:var(--primary-dark);font-size:var(--text-lg);grid-row:span 2;justify-content:center;align-items:center;display:flex}.teacher-profile-subject-card h3{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--tertiary-color);margin:0}.teacher-profile-subject-card p{font-size:var(--text-sm);color:var(--tertiary-lighter);grid-column:2;margin:0}.teacher-profile-subject-link{margin-top:var(--space-1);font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--primary-dark);grid-column:1/-1;text-decoration:none}.teacher-profile-subject-link:hover{text-decoration:underline}.teacher-profile-empty{color:var(--tertiary-lighter);margin:0;font-style:italic}.teacher-profile-steps{gap:var(--space-4);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.teacher-profile-steps li{gap:var(--space-4);align-items:flex-start;display:flex}.teacher-profile-step-num{border-radius:var(--radius-full);background:var(--teacher-accent);width:40px;height:40px;color:var(--quaternary-color);font-size:var(--text-base);flex-shrink:0;justify-content:center;align-items:center;display:flex}.teacher-profile-step-icon{border-radius:var(--radius-full);background:var(--primary-50);width:40px;height:40px;color:var(--teacher-accent);font-size:var(--text-base);flex-shrink:0;justify-content:center;align-items:center;display:flex}.teacher-profile-reviews{gap:var(--space-4);display:grid}.teacher-profile-review{padding:var(--space-4);border:1px solid var(--gray-200);border-radius:var(--radius-lg);background:var(--gray-50)}.teacher-profile-review-head{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-2);display:flex}.teacher-profile-review p{font-size:var(--text-sm);line-height:var(--leading-relaxed);color:var(--tertiary-light);margin:0}.teacher-profile-rating-inline{align-items:baseline;gap:var(--space-2);font-size:var(--text-sm);color:var(--tertiary-lighter);display:flex}.teacher-profile-rating-inline strong{font-size:var(--text-xl);color:var(--tertiary-color)}.teacher-profile-availability-card{padding:var(--space-5);background:linear-gradient(135deg,var(--primary-50),var(--quaternary-color));border:1px solid var(--primary-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm)}.teacher-profile-availability-card h3{margin:0 0 var(--space-4);font-size:var(--text-base);font-weight:var(--font-bold);color:var(--tertiary-color)}.teacher-profile-availability-list{gap:var(--space-3);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.teacher-profile-availability-list li{justify-content:space-between;gap:var(--space-3);font-size:var(--text-sm);display:flex}.teacher-profile-availability-list strong{color:var(--tertiary-color)}.teacher-profile-availability-list span{color:var(--tertiary-lighter);text-align:right}.teacher-profile-visio-note{margin:var(--space-4)0 0;padding-top:var(--space-3);border-top:1px solid var(--primary-light);font-size:var(--text-sm);color:var(--primary-dark);align-items:center;gap:var(--space-2);display:flex}.teacher-profile-map-section{overflow:hidden}.teacher-profile-map-caption{margin:0 0 var(--space-4);font-size:var(--text-sm);color:var(--tertiary-lighter)}.teacher-profile-map{border-radius:var(--radius-lg);border:1px solid var(--gray-200);z-index:0;height:320px}.teacher-profile-steps h3{margin:0 0 var(--space-1);font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--tertiary-color)}.teacher-profile-steps p{font-size:var(--text-sm);line-height:var(--leading-relaxed);color:var(--tertiary-light);margin:0}.teacher-profile-sidebar{top:calc(72px + var(--space-4));gap:var(--space-4);flex-direction:column;display:flex;position:sticky}.teacher-profile-booking-card{padding:var(--space-5)}.teacher-profile-booking-card h2{margin:0 0 var(--space-2);font-size:var(--text-lg);font-weight:var(--font-bold);color:var(--tertiary-color)}.teacher-profile-booking-card>p{margin:0 0 var(--space-5);font-size:var(--text-sm);line-height:var(--leading-relaxed);color:var(--tertiary-light)}.teacher-profile-sidebar-actions{gap:var(--space-3);margin-bottom:var(--space-5);flex-direction:column;display:flex}.teacher-profile-cta{justify-content:center;align-items:center;gap:var(--space-2);box-sizing:border-box;white-space:normal;text-align:center;width:100%;padding:var(--space-3)var(--space-4);line-height:1.3;display:inline-flex}.teacher-profile-cta i{flex-shrink:0}.teacher-profile-trust-list{padding:var(--space-4)0 0;border-top:1px solid var(--gray-100);gap:var(--space-2);flex-direction:column;margin:0;list-style:none;display:flex}.teacher-profile-trust-list li{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--tertiary-light);display:flex}.teacher-profile-trust-list i{color:var(--primary-color)}.teacher-profile-contact-note{margin:var(--space-4)0 0;padding-top:var(--space-4);border-top:1px solid var(--gray-100);font-size:var(--text-sm);color:var(--tertiary-lighter);align-items:center;gap:var(--space-2);display:flex}.teacher-profile-back{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-lg);border:1px solid var(--gray-200);background:var(--quaternary-color);color:var(--tertiary-light);font-size:var(--text-sm);font-weight:var(--font-medium);transition:var(--transition-fast);text-decoration:none;display:inline-flex}.teacher-profile-back:hover{border-color:var(--primary-color);color:var(--primary-dark);background:var(--primary-50)}.teacher-profile-related{max-width:var(--layout-max);margin:var(--space-12)auto 0;padding-top:var(--space-8);border-top:1px solid var(--gray-200)}.teacher-profile-related-head{justify-content:space-between;align-items:center;gap:var(--space-4);margin-bottom:var(--space-6);display:flex}.teacher-profile-related-head h2{font-size:var(--text-2xl);font-weight:var(--font-bold);color:var(--tertiary-color);margin:0}.teacher-profile-related-more{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--primary-dark);text-decoration:none}.teacher-profile-related-more:hover{text-decoration:underline}@media(max-width:1024px){.teacher-profile-layout{grid-template-columns:1fr}.teacher-profile-sidebar{position:static}.teacher-profile-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.teacher-profile-page{padding-top:var(--space-4)}.teacher-profile-hero-top{text-align:center;flex-direction:column;align-items:center}.teacher-profile-location,.teacher-profile-badges{justify-content:center}.teacher-profile-stats{grid-template-columns:1fr 1fr}}.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);background:linear-gradient(135deg,#c9938324,#c993830d);border:1px solid #c9938347}.services-container .services-final-cta{opacity:0;transition:opacity var(--transition-slow),transform var(--transition-slow);transform:translateY(16px)}.services-container .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}}.site-header{z-index:var(--z-sticky);position:sticky;top:0}.site-header__bar{-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--gray-200);transition:box-shadow var(--transition-base),background var(--transition-base);background:#ffffffeb}.site-header--scrolled .site-header__bar{box-shadow:var(--shadow-sm);background:#fffffffa}.site-header__inner{max-width:var(--layout-max);padding:0 var(--space-6);align-items:center;gap:var(--space-3);height:72px;margin:0 auto;display:flex;position:relative}.site-header__brand{z-index:1;transition:opacity var(--transition-fast);flex-shrink:0;align-items:center;line-height:0;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.site-header__brand:hover{opacity:.85}.site-header__brand img{object-fit:contain;width:auto;height:42px}.site-header__nav{z-index:2;flex:1 1 0;min-width:0;max-width:42%}.site-header__nav-list{align-items:center;gap:var(--space-1);margin:0;padding:0;list-style:none;display:flex}.site-header__nav-link{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-3);border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--gray-700);white-space:nowrap;transition:var(--transition-all);text-decoration:none;display:inline-flex}.site-header__nav-link i{color:var(--gray-500);transition:color var(--transition-fast);font-size:.85em}.site-header__nav-link:hover{color:var(--primary-dark);background:var(--primary-50)}.site-header__nav-link:hover i{color:var(--primary-color)}.site-header__nav-link.is-active{color:var(--primary-dark);background:var(--primary-100);font-weight:var(--font-semibold)}.site-header__nav-link.is-active i{color:var(--primary-color)}.site-header__nav-link--accent{color:var(--primary-dark)}.site-header__nav-link--accent i{color:var(--primary-color)}.site-header__search{z-index:2;align-items:center;gap:var(--space-2);min-width:0;max-width:280px;padding:var(--space-2)var(--space-4);background:var(--gray-50);border:1px solid var(--gray-200);border-radius:var(--radius-full);transition:var(--transition-all);flex:0 260px;margin-left:auto;display:flex}.site-header__search:focus-within{background:var(--quaternary-color);border-color:var(--primary-color);box-shadow:0 0 0 3px #c9938326}.site-header__search-icon{font-size:var(--text-sm);color:var(--gray-500);flex-shrink:0}.site-header__search input{min-width:0;font-family:var(--font-sans);font-size:var(--text-sm);color:var(--tertiary-color);background:0 0;border:none;outline:none;flex:1}.site-header__search input::placeholder{color:var(--gray-500)}.site-header__actions{align-items:center;gap:var(--space-2);z-index:2;flex-shrink:0;display:flex}.site-header__btn{padding:var(--space-2)var(--space-4);border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:var(--font-semibold);white-space:nowrap;transition:var(--transition-all);cursor:pointer;font-family:var(--font-sans);border:1.5px solid #0000;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.site-header__btn--ghost{color:var(--gray-700);border-color:var(--gray-300);background:0 0}.site-header__btn--ghost:hover{color:var(--primary-dark);border-color:var(--primary-color);background:var(--primary-50)}.site-header__btn--primary{color:var(--quaternary-color);background:var(--primary-color);border-color:var(--primary-color);box-shadow:var(--shadow-xs)}.site-header__btn--primary:hover{background:var(--primary-dark);border-color:var(--primary-dark);box-shadow:var(--shadow-md);transform:translateY(-1px)}.site-header__btn.is-active{box-shadow:inset 0 0 0 2px var(--primary-dark)}.site-header__user{position:relative}.site-header__user-toggle{align-items:center;gap:var(--space-2);padding:var(--space-1)var(--space-3)var(--space-1)var(--space-1);border:1px solid var(--gray-200);border-radius:var(--radius-full);background:var(--quaternary-color);cursor:pointer;font-family:var(--font-sans);transition:var(--transition-all);display:inline-flex}.site-header__user-toggle:hover,.site-header__user.is-open .site-header__user-toggle{border-color:var(--primary-color);box-shadow:0 0 0 3px #c993831f}.site-header__avatar{border-radius:var(--radius-full);background:linear-gradient(135deg,var(--primary-color),var(--primary-dark));width:32px;height:32px;color:var(--quaternary-color);font-size:var(--text-xs);font-weight:var(--font-bold);letter-spacing:.02em;justify-content:center;align-items:center;display:flex}.site-header__user-name{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--tertiary-color);text-overflow:ellipsis;white-space:nowrap;max-width:120px;overflow:hidden}.site-header__user-chevron{color:var(--gray-500);transition:transform var(--transition-fast);font-size:.65rem}.site-header__user.is-open .site-header__user-chevron{transform:rotate(180deg)}.site-header__user-menu{top:calc(100% + var(--space-2));min-width:220px;padding:var(--space-3);background:var(--quaternary-color);border:1px solid var(--gray-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:var(--z-dropdown);position:absolute;right:0}.site-header__user-menu-label{margin:0 0 var(--space-1);font-size:var(--text-xs);color:var(--gray-500);text-transform:uppercase;letter-spacing:.04em}.site-header__user-menu-email{margin:0 0 var(--space-3);padding-bottom:var(--space-3);border-bottom:1px solid var(--gray-100);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--tertiary-color);word-break:break-all}.site-header__user-menu-link{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-2)var(--space-3);border-radius:var(--radius-md);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--gray-700);cursor:pointer;transition:var(--transition-fast);background:0 0;border:none;text-decoration:none;display:flex}.site-header__user-menu-link:hover{background:var(--primary-50);color:var(--primary-dark)}.site-header__user-menu-link--danger:hover{background:var(--error-light);color:var(--error)}.site-header__logout-form{margin:0}.site-header__burger{border:1px solid var(--gray-200);border-radius:var(--radius-md);background:var(--quaternary-color);cursor:pointer;width:40px;height:40px;transition:var(--transition-all);flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:5px;padding:0;display:none}.site-header__burger span{background:var(--tertiary-color);border-radius:var(--radius-full);width:18px;height:2px;transition:var(--transition-all);display:block}.site-header__burger:hover{border-color:var(--primary-color);background:var(--primary-50)}.site-header.is-drawer-open .site-header__burger span:first-child{transform:translateY(7px)rotate(45deg)}.site-header.is-drawer-open .site-header__burger span:nth-child(2){opacity:0;transform:scaleX(0)}.site-header.is-drawer-open .site-header__burger span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.site-header__backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:var(--z-modal-backdrop);background:#21252973;position:fixed;inset:0}.site-header__drawer{width:min(100%,360px);height:100dvh;padding:var(--space-5);background:var(--quaternary-color);box-shadow:var(--shadow-2xl);z-index:var(--z-modal);transition:transform var(--transition-base);position:fixed;top:0;right:0;overflow-y:auto;transform:translate(100%)}.site-header.is-drawer-open .site-header__drawer{transform:translate(0)}.site-header__drawer-head{margin-bottom:var(--space-5);justify-content:space-between;align-items:center;display:flex}.site-header__drawer-title{font-size:var(--text-lg);font-weight:var(--font-bold);color:var(--tertiary-color)}.site-header__drawer-close{border-radius:var(--radius-md);background:var(--gray-100);width:36px;height:36px;color:var(--gray-700);cursor:pointer;transition:var(--transition-fast);border:none;justify-content:center;align-items:center;display:flex}.site-header__drawer-close:hover{background:var(--primary-50);color:var(--primary-dark)}.site-header__drawer-search{margin-bottom:var(--space-6);border:1px solid var(--gray-200);border-radius:var(--radius-lg);align-items:stretch;display:flex;overflow:hidden}.site-header__drawer-search input{min-width:0;padding:var(--space-3)var(--space-4);font-family:var(--font-sans);font-size:var(--text-base);border:none;outline:none;flex:1}.site-header__drawer-search-btn{background:var(--primary-color);width:48px;color:var(--quaternary-color);cursor:pointer;border:none;justify-content:center;align-items:center;display:flex}.site-header__drawer-group{margin:var(--space-4)0 var(--space-2);font-size:var(--text-xs);font-weight:var(--font-semibold);letter-spacing:.06em;text-transform:uppercase;color:var(--gray-500)}.site-header__drawer-group:first-of-type{margin-top:0}.site-header__drawer-nav ul{margin:0;padding:0;list-style:none}.site-header__drawer-nav li+li{margin-top:var(--space-1)}.site-header__drawer-nav a,.site-header__drawer-nav button{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3)var(--space-4);border-radius:var(--radius-lg);font-family:var(--font-sans);font-size:var(--text-base);font-weight:var(--font-medium);color:var(--tertiary-color);text-align:left;cursor:pointer;transition:var(--transition-fast);background:0 0;border:none;text-decoration:none;display:flex}.site-header__drawer-nav a:hover,.site-header__drawer-nav button:hover{background:var(--primary-50);color:var(--primary-dark)}.site-header__drawer-nav a i,.site-header__drawer-nav button i{width:1.25rem;color:var(--primary-color);text-align:center}.site-header__drawer-cta{background:var(--primary-color)!important;color:var(--quaternary-color)!important;font-weight:var(--font-semibold)!important}.site-header__drawer-cta i{color:var(--quaternary-color)!important}.site-header__drawer-cta:hover{background:var(--primary-dark)!important;color:var(--quaternary-color)!important}.site-header .visually-hidden{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media(max-width:1100px){.site-header__search{flex:0 200px;max-width:220px}}@media(max-width:960px){.site-header__nav{display:none}.site-header__search{margin-left:auto}}@media(max-width:768px){.site-header__inner{padding:0 var(--space-4);gap:var(--space-3);height:64px}.site-header__brand{margin-right:auto;position:static;transform:none}.site-header__search,.site-header__actions{display:none}.site-header__burger{flex-shrink:0;display:flex}.site-header__brand img{height:34px}}@media(min-width:769px){.site-header__drawer,.site-header__backdrop{display:none!important}}.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}}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.messaging-layout{grid-template-columns:minmax(280px,340px) minmax(0,1fr);gap:16px;min-height:560px;display:grid}.messaging-sidebar,.messaging-panel{flex-direction:column;min-height:560px;display:flex}.messaging-sidebar-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.messaging-sidebar-head h2,.messaging-panel-head h2{font-size:var(--text-lg);color:var(--tertiary-color);margin:0}.messaging-unread-pill{color:var(--primary-dark);font-size:var(--text-sm);background:#c993832e;border-radius:999px;align-items:center;padding:4px 10px;font-weight:600;display:inline-flex}.messaging-new-form{border-bottom:1px solid var(--gray-200);gap:8px;margin-bottom:16px;padding-bottom:16px;display:grid}.messaging-new-form label{font-size:var(--text-sm);color:var(--gray-700);font-weight:600}.messaging-new-form select,.messaging-compose textarea{border:1px solid var(--gray-200);border-radius:var(--radius-lg);width:100%;font:inherit;resize:vertical;padding:10px 12px}.messaging-new-btn{justify-self:start}.messaging-conversation-list{gap:8px;max-height:420px;margin:0;padding:0;list-style:none;display:grid;overflow:auto}.messaging-conversation-item{border-radius:var(--radius-lg);color:inherit;border:1px solid #0000;justify-content:space-between;align-items:flex-start;gap:10px;padding:12px;text-decoration:none;transition:background .15s,border-color .15s;display:flex}.messaging-conversation-item:hover,.messaging-conversation-item.is-active{background:var(--gray-50);border-color:var(--gray-200)}.messaging-conversation-name{color:var(--tertiary-color);margin:0 0 4px;font-weight:600}.messaging-conversation-preview{font-size:var(--text-sm);color:var(--gray-600);margin:0}.messaging-conversation-side{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:6px;display:flex}.messaging-conversation-side time{font-size:var(--text-xs);color:var(--gray-500)}.messaging-unread-dot{background:var(--primary-color);color:#fff;min-width:22px;height:22px;font-size:var(--text-xs);border-radius:999px;justify-content:center;align-items:center;padding:0 6px;font-weight:700;display:inline-flex}.messaging-list-empty,.messaging-empty{color:var(--gray-600);font-size:var(--text-sm);margin:0}.messaging-panel-head{border-bottom:1px solid var(--gray-200);justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;padding-bottom:16px;display:flex}.messaging-panel-head p{color:var(--gray-600);font-size:var(--text-sm);margin:4px 0 0}.messaging-panel-placeholder{text-align:center;color:var(--gray-600);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:48px 24px;display:flex}.messaging-panel-placeholder i{color:var(--primary-color);font-size:2rem}.messaging-panel-placeholder h2{color:var(--tertiary-color);margin:0}.messaging-thread{flex-direction:column;flex:1;min-height:0;display:flex}.messaging-messages{flex-direction:column;flex:1;gap:12px;max-height:420px;padding:4px 4px 16px;display:flex;overflow:auto}.messaging-bubble{background:var(--gray-100);border:1px solid var(--gray-200);border-radius:16px;max-width:min(78%,560px);padding:10px 14px}.messaging-bubble.is-mine{background:#c9938329;border-color:#c9938359;align-self:flex-end}.messaging-bubble.is-theirs{align-self:flex-start}.messaging-bubble-author{font-size:var(--text-xs);color:var(--primary-dark);margin:0 0 4px;font-weight:700}.messaging-bubble-content{white-space:pre-wrap;word-break:break-word;margin:0}.messaging-bubble-time{font-size:var(--text-xs);color:var(--gray-500);margin-top:6px;display:block}.messaging-importance-badge{color:var(--primary-dark);font-size:var(--text-xs);background:#c9938338;border-radius:999px;margin-bottom:6px;padding:2px 8px;font-weight:700;display:inline-flex}.messaging-compose-meta{gap:6px;display:grid}.messaging-compose-meta label{font-size:var(--text-sm);color:var(--gray-700);font-weight:600}.messaging-compose-meta select{border:1px solid var(--gray-200);border-radius:var(--radius-lg);width:100%;max-width:320px;font:inherit;padding:8px 10px}.messaging-compose{border-top:1px solid var(--gray-200);gap:8px;margin-top:auto;padding-top:16px;display:grid}.messaging-compose-actions{justify-content:flex-end;display:flex}.student-messaging-page .messaging-panel{min-height:620px}@media(max-width:960px){.messaging-layout{grid-template-columns:1fr}.messaging-messages{max-height:320px}}.header-icon-btn{width:38px;height:38px;color:var(--tertiary-color);border:1px solid var(--gray-200);background:#fff;border-radius:50%;justify-content:center;align-items:center;text-decoration:none;display:inline-flex;position:relative}.header-badge,.side-nav-badge{background:var(--primary-color);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:.7rem;font-weight:700;display:inline-flex;position:absolute;top:-4px;right:-4px}.prof-side-nav a,.student-side-nav a{position:relative}.side-nav-badge{margin-left:auto;position:static}.header-notifications{position:relative}.header-notifications-panel{border:1px solid var(--gray-200);border-radius:var(--radius-lg);z-index:30;background:#fff;width:min(360px,90vw);padding:12px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 12px 30px #00000014}.header-notifications-head{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.header-notifications-mark-all{color:var(--primary-dark);cursor:pointer;background:0 0;border:0;font-size:.85rem}.header-notifications-list{max-height:320px;margin:0;padding:0;list-style:none;overflow:auto}.header-notifications-list li{border-bottom:1px solid var(--gray-100);justify-content:space-between;gap:8px;padding:10px 0;display:flex}.header-notifications-list li.is-unread{border-radius:var(--radius-md);background:#c9938314;padding-inline:8px}.header-notifications-title{margin:0;font-weight:600}.header-notifications-message,.header-notifications-list time{color:var(--gray-600);margin:4px 0 0;font-size:.85rem}.header-notifications-link{color:var(--primary-dark);cursor:pointer;background:0 0;border:0;font-size:.85rem;text-decoration:none}.search-results-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;display:grid}.search-results-list{gap:8px;margin:12px 0 0;padding:0;list-style:none;display:grid}.homeworks-list{gap:12px;display:grid}.students-kpis{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-bottom:16px;display:grid}.students-kpi-card{border:1px solid var(--gray-200);border-radius:var(--radius-lg);background:#fff;padding:14px}.students-kpi-label{color:var(--gray-600);margin:0;font-size:.9rem}.students-kpi-value{color:var(--tertiary-color);margin:6px 0 0;font-size:1.6rem;font-weight:700}.student-create-choice{align-items:center;gap:8px;margin-bottom:8px;display:flex}.student-create-step{border:0;margin:0 0 16px;padding:0}.student-card-badges{flex-wrap:wrap;gap:6px;display:flex}.student-card-actions{margin-top:auto}.student-homework-list,.student-parents-list{gap:10px;margin:12px 0 0;padding:0;list-style:none;display:grid}.student-parents-list li{justify-content:space-between;align-items:center;gap:12px;display:flex}.connexion-layout{background:var(--gray-50);min-height:100vh;color:var(--tertiary-color)}.connexion-shell{grid-template-columns:minmax(280px,.95fr) minmax(0,1.05fr);min-height:100vh;display:grid}.connexion-brand-panel{background:linear-gradient(165deg,#f3e6e0 0%,var(--primary-50)42%,#c9938347 100%);border-right:1px solid #c9938338;flex-direction:column;justify-content:space-between;gap:32px;padding:36px 40px 40px;display:flex;position:relative;overflow:hidden}.connexion-brand-panel:before,.connexion-brand-panel:after{content:"";pointer-events:none;border-radius:50%;position:absolute}.connexion-brand-panel:before{background:#fff6;width:260px;height:260px;top:-80px;right:-90px}.connexion-brand-panel:after{background:#c993832e;width:180px;height:180px;bottom:-50px;left:-60px}.connexion-brand-logo,.connexion-brand-body,.connexion-brand-quote{z-index:1;position:relative}.connexion-brand-logo img{width:auto;height:40px;display:block}.connexion-brand-kicker{border-radius:var(--radius-full);color:var(--primary-dark);font-size:var(--text-xs);font-weight:var(--font-semibold);background:#ffffff8c;border:1px solid #c9938366;margin:0 0 12px;padding:6px 12px;display:inline-flex}.connexion-brand-title{font-family:var(--font-heading);color:var(--tertiary-color);max-width:18ch;margin:0 0 14px;font-size:clamp(1.7rem,3vw,2.2rem);line-height:1.2}.connexion-brand-text{max-width:34ch;color:var(--tertiary-light);line-height:1.55;font-size:var(--text-base);margin:0 0 28px}.connexion-brand-points{gap:12px;margin:0;padding:0;list-style:none;display:grid}.connexion-brand-points li{border-radius:var(--radius-lg);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--tertiary-color);background:#ffffffb8;border:1px solid #ffffffe6;align-items:center;gap:12px;padding:12px 14px;display:flex}.connexion-brand-points i{width:28px;height:28px;color:var(--primary-dark);background:#c9938333;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.connexion-brand-quote{border:0;margin:0;padding:0}.connexion-brand-quote p{font-size:1.05rem;font-weight:var(--font-medium);color:var(--tertiary-color);margin:0 0 8px;line-height:1.4}.connexion-brand-quote footer{font-size:var(--text-sm);color:var(--tertiary-light)}.connexion-main{background:radial-gradient(ellipse 60% 45% at 100% 0%,#c993831a,transparent 55%),var(--gray-50);flex-direction:column;justify-content:center;padding:36px 40px 48px;display:flex}.connexion-back-link{color:var(--tertiary-light);font-size:var(--text-sm);font-weight:var(--font-medium);align-self:flex-start;align-items:center;gap:8px;margin-bottom:28px;text-decoration:none;display:inline-flex}.connexion-back-link:hover{color:var(--primary-dark)}.connexion-card{background:var(--quaternary-color);border:1px solid var(--gray-200);border-radius:var(--radius-xl);width:100%;max-width:440px;margin:0 auto;padding:32px 32px 28px;box-shadow:0 16px 48px #21252914}.connexion-card-header{margin-bottom:24px}.connexion-card-header h2{font-family:var(--font-heading);color:var(--tertiary-color);margin:0 0 6px;font-size:clamp(1.6rem,2.5vw,1.9rem)}.connexion-card-header p{color:var(--tertiary-lighter);font-size:var(--text-sm);margin:0}.connexion-form .form-group{margin-bottom:16px}.connexion-form .form-group label{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--tertiary-color);margin-bottom:6px;display:block}.connexion-form .input-with-icon{position:relative}.connexion-form .input-with-icon i{color:var(--gray-500);pointer-events:none;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.connexion-form .input-with-icon input{box-sizing:border-box;border:1px solid var(--gray-300);border-radius:var(--radius-md);width:100%;font:inherit;color:var(--tertiary-color);background:var(--quaternary-color);padding:13px 14px 13px 42px}.connexion-form .input-with-icon input:focus{border-color:var(--primary-color);outline:none;box-shadow:0 0 0 3px #c9938324}.connexion-form .input-with-icon:has(input:focus) i{color:var(--primary-color)}.connexion-form-options{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:4px 0 22px;display:flex}.connexion-remember{font-size:var(--text-sm);color:var(--tertiary-light);cursor:pointer;align-items:center;gap:8px;display:inline-flex}.connexion-remember input{width:16px;height:16px;accent-color:var(--primary-color)}.connexion-forgot{color:var(--primary-dark);font-size:var(--text-sm);font-weight:var(--font-semibold);text-decoration:none}.connexion-forgot:hover{text-decoration:underline}.connexion-submit{border-radius:var(--radius-md);background:var(--primary-color);width:100%;min-height:52px;color:var(--quaternary-color);font-family:var(--font-heading);font-size:var(--text-base);font-weight:var(--font-semibold);cursor:pointer;border:none;justify-content:center;align-items:center;gap:10px;transition:background-color .15s,transform .15s,box-shadow .15s;display:inline-flex;box-shadow:0 8px 20px #c9938359}.connexion-submit:hover{background:var(--primary-dark);transform:translateY(-1px);box-shadow:0 10px 24px #b07a6a66}.connexion-submit:focus-visible{outline:2px solid var(--primary-dark);outline-offset:3px}.connexion-card-footer{border-top:1px solid var(--gray-200);text-align:center;margin-top:24px;padding-top:20px}.connexion-card-footer p{font-size:var(--text-sm);color:var(--tertiary-lighter);margin:0 0 12px}.connexion-register-btn{border:1.5px solid var(--primary-color);border-radius:var(--radius-md);width:100%;min-height:48px;color:var(--primary-dark);font-weight:var(--font-semibold);font-size:var(--text-sm);background:0 0;justify-content:center;align-items:center;padding:0 18px;text-decoration:none;transition:background-color .15s,color .15s;display:inline-flex}.connexion-register-btn:hover{color:var(--primary-dark);background:#c993831a}.connexion-card .form-status-success,.connexion-card .form-status-error{margin-bottom:16px}.back-layout-connexion .back-topbar,.back-layout-connexion .back-auth-main,.back-layout-connexion .back-main{display:none}@media(max-width:960px){.connexion-shell{grid-template-columns:1fr}.connexion-brand-panel{display:none}.connexion-main{min-height:100vh;padding:24px 18px 36px}.connexion-card{padding:28px 20px 24px}}.auth-register-layout{background:var(--gray-50);min-height:100vh}.auth-register-topbar{background:var(--quaternary-color);border-bottom:1px solid var(--gray-200);z-index:2;justify-content:space-between;align-items:center;padding:14px 28px;display:flex;position:relative}.auth-register-brand img{width:auto;height:36px;display:block}.auth-register-back{color:var(--tertiary-light);font-size:var(--text-sm);font-weight:var(--font-medium);align-items:center;gap:8px;text-decoration:none;display:inline-flex}.auth-register-back:hover{color:var(--primary-dark)}.auth-register-shell{grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);min-height:calc(100vh - 65px);display:grid}.auth-register-main{background:radial-gradient(ellipse 70% 50% at 0% 0%,#c993831f,transparent 55%),radial-gradient(ellipse 50% 40% at 100% 100%,#c9938314,transparent 50%),var(--gray-50);justify-content:center;align-items:flex-start;padding:40px 48px 48px;display:flex;position:relative;overflow-y:auto}.auth-register-panel{background:linear-gradient(165deg,#f3e6e0 0%,var(--primary-50)45%,#c9938338 100%);border-left:1px solid #c9938333;align-items:center;padding:48px 36px;display:flex;position:relative;overflow:hidden}.auth-register-panel:before,.auth-register-panel:after{content:"";pointer-events:none;border-radius:50%;position:absolute}.auth-register-panel:before{background:#ffffff59;width:220px;height:220px;top:-60px;right:-70px}.auth-register-panel:after{background:#c9938326;width:160px;height:160px;bottom:-40px;left:-50px}.auth-register-panel-inner{z-index:1;width:100%;max-width:360px;margin:0 auto;position:relative}.auth-register-panel-brand{font-family:var(--font-heading);font-size:1.5rem;font-weight:var(--font-bold);letter-spacing:.04em;text-transform:uppercase;color:var(--primary-dark);margin:0 0 6px}.auth-register-panel-kicker{font-size:var(--text-sm);color:var(--tertiary-light);margin:0 0 28px}.auth-register-quote{border:0;margin:0 0 24px;padding:0}.auth-register-quote p{color:var(--tertiary-color);font-size:1.2rem;line-height:1.45;font-weight:var(--font-medium);margin:0 0 10px}.auth-register-quote footer{font-size:var(--text-sm);color:var(--tertiary-light)}.auth-register-panel-highlight{border-radius:var(--radius-lg);background:#ffffffd1;border:1px solid #fffffff2;align-items:flex-start;gap:14px;padding:16px;display:flex;box-shadow:0 8px 24px #2125290a}.auth-register-panel-highlight-title{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--tertiary-color)!important;margin:0 0 4px!important}.auth-register-panel-highlight p{font-size:var(--text-sm);color:var(--tertiary-light);margin:0;line-height:1.45}.auth-register-panel-icon{border-radius:var(--radius-md);width:42px;height:42px;color:var(--primary-dark);background:#c9938338;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.auth-register-panel-points{gap:10px;margin:24px 0 0;padding:0;list-style:none;display:grid}.auth-register-panel-points li{font-size:var(--text-sm);color:var(--tertiary-color);font-weight:var(--font-medium);align-items:center;gap:10px;display:flex}.auth-register-panel-points i{color:var(--primary-dark);font-size:.75rem}.auth-register-page{background:var(--quaternary-color);border:1px solid var(--gray-200);border-radius:var(--radius-xl);width:100%;max-width:640px;margin:0 auto;padding:32px 36px 36px;box-shadow:0 12px 40px #2125290f}.auth-register-page--wide{max-width:680px}.auth-register-page-header{margin-bottom:8px}.auth-register-page-header h1{font-family:var(--font-heading);color:var(--tertiary-color);margin:0 0 8px;font-size:clamp(1.85rem,3.2vw,2.25rem);line-height:1.2}.auth-register-lead{color:var(--tertiary-lighter);font-size:var(--text-base);margin:0;line-height:1.55}.auth-register-steps{border-bottom:1px solid var(--gray-200);margin:0 0 28px;padding-bottom:20px;position:relative}.auth-register-steps-list{z-index:2;justify-content:space-between;gap:4px;margin:0;padding:0;list-style:none;display:flex;position:relative}.auth-register-step{text-align:center;min-width:0;color:var(--tertiary-lighter);z-index:2;flex-direction:column;flex:1;align-items:center;gap:8px;display:flex;position:relative}.auth-register-step-num{border:2px solid var(--gray-300);background:var(--quaternary-color);width:34px;height:34px;color:var(--tertiary-lighter);font-size:.8rem;font-weight:var(--font-bold);z-index:3;box-shadow:0 0 0 4px var(--quaternary-color);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s;display:inline-flex;position:relative}.auth-register-step-label{font-size:.72rem;font-weight:var(--font-medium);color:var(--tertiary-lighter);max-width:100%;line-height:1.25}.auth-register-step.is-active .auth-register-step-num{border-color:var(--primary-color);background:var(--primary-color);color:var(--quaternary-color);box-shadow:0 0 0 4px var(--quaternary-color),0 0 0 8px #c9938333}.auth-register-step.is-active .auth-register-step-label{color:var(--tertiary-color);font-weight:var(--font-semibold)}.auth-register-step.is-done .auth-register-step-num{border-color:var(--primary-color);background:var(--primary-50);color:var(--primary-dark);box-shadow:0 0 0 4px var(--quaternary-color);font-size:.7rem}.auth-register-step.is-done .auth-register-step-label{color:var(--tertiary-light)}.auth-register-steps-track{background:var(--gray-200);z-index:0;pointer-events:none;border-radius:99px;height:3px;position:absolute;top:16px;left:calc(10% + 8px);right:calc(10% + 8px)}.auth-register-steps-track-fill{background:linear-gradient(90deg,var(--primary-light),var(--primary-color));border-radius:99px;height:100%;transition:width .25s;display:block}.auth-register-steps-meta{font-size:var(--text-xs);color:var(--tertiary-lighter);font-weight:var(--font-medium);margin:12px 0 0}.auth-register-pill-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:24px 0 8px;padding:0;list-style:none;display:grid}.auth-register-pill-list li{background:var(--primary-50);border-radius:var(--radius-lg);font-size:var(--text-sm);color:var(--tertiary-color);font-weight:var(--font-medium);border:1px solid #c9938338;align-items:center;gap:10px;padding:14px 16px;display:flex}.auth-register-pill-list i{width:28px;height:28px;color:var(--primary-dark);background:#c993832e;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:.8rem;display:inline-flex}.auth-register-page-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:28px;display:flex}.auth-register-cta{align-items:center;gap:8px;min-height:48px;padding-inline:22px;display:inline-flex}.auth-register-page-actions .cta-button.primary,.auth-register-page-actions .submit-btn{min-height:48px}.auth-register-alt-link{width:100%;font-size:var(--text-sm);color:var(--tertiary-lighter);margin:4px 0 0}.auth-register-alt-link a{color:var(--primary-dark);font-weight:var(--font-semibold)}.auth-register-form--compact{margin-top:22px}.auth-register-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.auth-register-form-grid-full{grid-column:1/-1}.auth-register-form .form-group{margin-bottom:16px}.auth-register-form .form-group label{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--tertiary-color);margin-bottom:6px;display:block}.auth-register-form .form-group input,.auth-register-form .form-group select{border:1px solid var(--gray-300);border-radius:var(--radius-md);width:100%;font:inherit;color:var(--tertiary-color);background:var(--quaternary-color);box-sizing:border-box;padding:12px 14px}.auth-register-form .form-group input:focus,.auth-register-form .form-group select:focus{border-color:var(--primary-color);outline:none;box-shadow:0 0 0 3px #c9938324}.auth-register-optional{font-weight:var(--font-normal);color:var(--tertiary-lighter);font-size:var(--text-xs)}.auth-register-consent-block{margin:8px 0 4px}.auth-register-consent{font-size:var(--text-sm);color:var(--tertiary-light);cursor:pointer;align-items:flex-start;gap:10px;display:flex}.auth-register-consent input{width:16px;height:16px;accent-color:var(--primary-color);flex-shrink:0;margin-top:2px}.auth-register-consent a{color:var(--primary-dark)}.auth-register-field-label{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--tertiary-color);margin-bottom:8px;display:block}.auth-register-hint{font-size:var(--text-xs);color:var(--tertiary-lighter);margin-top:6px;display:block}.auth-register-form .form-error{font-size:var(--text-sm);color:#c0392b;margin-top:6px;display:block}.auth-register-subject-grid,.auth-register-choice-grid{flex-wrap:wrap;gap:8px;display:flex}.auth-register-subject-chip,.auth-register-choice-chip{border:1px solid var(--gray-300);border-radius:var(--radius-full);background:var(--quaternary-color);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--tertiary-color);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;padding:9px 14px;transition:border-color .15s,background-color .15s,color .15s;display:inline-flex}.auth-register-subject-chip:hover,.auth-register-choice-chip:hover{border-color:var(--primary-light);background:#c9938314}.auth-register-subject-chip:has(input:checked),.auth-register-choice-chip:has(input:checked){border-color:var(--primary-color);color:var(--primary-dark);background:#c993832e}.auth-register-subject-chip:has(input:focus-visible),.auth-register-choice-chip:has(input:focus-visible){outline:2px solid var(--primary-light);outline-offset:2px}.auth-register-subject-chip input,.auth-register-choice-chip input{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.auth-register-audience-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:8px;display:grid}.auth-register-audience-card{border:1px solid var(--gray-300);border-radius:var(--radius-lg);background:var(--quaternary-color);cursor:pointer;-webkit-user-select:none;user-select:none;flex-direction:column;align-items:flex-start;gap:10px;min-height:148px;padding:20px 18px;transition:border-color .15s,background-color .15s,box-shadow .15s;display:flex}.auth-register-audience-card:hover{border-color:var(--primary-light);background:#c993830f}.auth-register-audience-card:has(input:checked){border-color:var(--primary-color);background:#c993831f;box-shadow:0 0 0 1px #c9938340}.auth-register-audience-card:has(input:focus-visible){outline:2px solid var(--primary-light);outline-offset:2px}.auth-register-audience-card input{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.auth-register-audience-icon{border-radius:var(--radius-md);width:44px;height:44px;color:var(--primary-dark);background:#c9938326;justify-content:center;align-items:center;font-size:1.05rem;display:inline-flex}.auth-register-audience-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--tertiary-color)}.auth-register-audience-desc{font-size:var(--text-sm);color:var(--tertiary-lighter);line-height:1.45}.auth-register-fieldset{border:0;margin:0 0 18px;padding:0}.auth-register-fieldset legend{width:100%;font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--tertiary-color);margin-bottom:6px;padding:0;display:block}.auth-register-fieldset-lead{font-size:var(--text-xs);color:var(--tertiary-lighter);margin:0 0 12px;line-height:1.45}.auth-register-form .form-group input:disabled{background:var(--gray-50);color:var(--tertiary-light);cursor:not-allowed}.required{color:#c0392b}@media(max-width:960px){.auth-register-shell{grid-template-columns:1fr}.auth-register-panel{display:none}.auth-register-main{padding:20px 16px 32px}.auth-register-page{padding:24px 18px 28px}.auth-register-step-label{font-size:.62rem}.auth-register-step-num{width:30px;height:30px}.auth-register-steps-track{top:14px}.auth-register-pill-list,.auth-register-form-grid,.auth-register-audience-grid{grid-template-columns:1fr}.auth-register-page-actions{flex-direction:column-reverse;align-items:stretch}.auth-register-page-actions .cta-button,.auth-register-page-actions .submit-btn{justify-content:center;width:100%}}@media(max-width:520px){.auth-register-step-label{display:none}.auth-register-steps-track{top:15px;left:16px;right:16px}.auth-register-steps-meta{margin-top:8px}}.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-checkbox{color:var(--tertiary-light);align-items:center;gap:10px;font-size:.95rem;display:flex}.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}}.student-teachers-page .student-teachers-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;display:grid}.student-teachers-page .student-teacher-card{flex-direction:column;gap:12px;display:flex}.student-teachers-page .student-teacher-card-head{align-items:flex-start;gap:12px;display:flex}.student-teachers-page .student-teacher-card-head h3{margin:0 0 4px;font-size:1.05rem}.student-teachers-page .student-teacher-card-head .status-badge{flex-shrink:0;margin-left:auto}.student-teachers-page .student-teacher-avatar{width:48px;height:48px;color:var(--primary-dark);font-weight:var(--font-bold);background:#c993832e;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.student-teachers-page .student-teacher-tags{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.student-teachers-page .student-teacher-tags li{font-size:var(--text-xs);border-radius:var(--radius-full);background:var(--gray-100);color:var(--tertiary-light);padding:4px 10px}.student-teachers-page .student-teacher-meta{gap:20px;margin:0;display:flex}.student-teachers-page .student-teacher-meta dt{font-size:var(--text-xs);color:var(--tertiary-lighter);margin-bottom:2px}.student-teachers-page .student-teacher-meta dd{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--tertiary-color);margin:0}.student-teachers-page .student-teacher-actions{flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:4px;display:flex}.student-teachers-page .student-teacher-actions .cta-button{text-align:center;flex:1;justify-content:center;min-width:120px}.student-teachers-page .student-teachers-empty{text-align:center;padding:40px 24px}.student-teachers-page .student-teachers-empty i{color:var(--primary-color);margin-bottom:12px;font-size:2rem}.student-teachers-page .student-teachers-empty h2{margin:0 0 8px}.student-teachers-page .student-teachers-empty-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:20px;display:flex}.student-teachers-page .student-teachers-footer{text-align:center;font-size:var(--text-sm);margin-top:16px}.student-teachers-page .student-teachers-footer a{color:var(--primary-dark);font-weight:var(--font-semibold)}@media(max-width:640px){.student-teachers-page .student-teacher-actions{flex-direction:column}}.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-marketplace-page .prof-marketplace-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.prof-marketplace-page .prof-marketplace-header__text{flex:1;min-width:0}.prof-marketplace-page .prof-marketplace-header__actions{flex-shrink:0;gap:10px;display:flex}.prof-marketplace-page .prof-marketplace-preview-btn{white-space:nowrap;align-items:center;gap:8px;display:inline-flex}.prof-marketplace-page .prof-marketplace-grid{grid-template-columns:minmax(300px,1fr) minmax(0,2fr);align-items:start;gap:16px;display:grid}.prof-marketplace-page .prof-card h3{margin-bottom:4px}.prof-marketplace-page .prof-card .prof-muted{margin-bottom:16px}.prof-marketplace-page .prof-marketplace-form{flex-direction:column;gap:16px;width:100%;display:flex}.prof-marketplace-page .prof-marketplace-field{flex-direction:column;gap:6px;width:100%;min-width:0;display:flex}.prof-marketplace-page .prof-marketplace-field label{color:var(--tertiary-light);font-size:.9rem;font-weight:var(--font-medium)}.prof-marketplace-page .prof-marketplace-field input[type=text],.prof-marketplace-page .prof-marketplace-field input[type=url],.prof-marketplace-page .prof-marketplace-field input[type=number],.prof-marketplace-page .prof-marketplace-field textarea{border:1px solid var(--gray-300);border-radius:var(--radius-md);width:100%;min-width:0;font:inherit;color:var(--tertiary-color);box-sizing:border-box;background:#fff;padding:10px 12px}.prof-marketplace-page .prof-marketplace-field textarea{resize:vertical;min-height:160px;line-height:1.55}.prof-marketplace-page .prof-marketplace-field input:focus,.prof-marketplace-page .prof-marketplace-field textarea:focus{border-color:var(--primary-color);outline:none;box-shadow:0 0 0 3px #c993831f}.prof-marketplace-page .prof-marketplace-field--color input[type=color]{border:1px solid var(--gray-300);border-radius:var(--radius-md);cursor:pointer;background:#fff;width:100%;height:44px;padding:4px}.prof-marketplace-page .prof-marketplace-field-row{grid-template-columns:1fr auto;align-items:end;gap:16px;display:grid}.prof-marketplace-page .prof-marketplace-field-row--triple{grid-template-columns:repeat(3,minmax(0,1fr))}.prof-marketplace-page .prof-marketplace-field--color{width:120px}.prof-marketplace-page .prof-marketplace-fieldset{border:1px solid var(--gray-200);border-radius:var(--radius-lg);background:var(--gray-50);margin:0;padding:14px 16px}.prof-marketplace-page .prof-marketplace-fieldset legend{font-size:.9rem;font-weight:var(--font-semibold);color:var(--tertiary-color);padding:0 6px}.prof-marketplace-page .prof-marketplace-checkbox-group{flex-wrap:wrap;gap:16px;margin-top:4px;display:flex}.prof-marketplace-page .prof-marketplace-checkbox{cursor:pointer;color:var(--tertiary-color);align-items:center;gap:8px;font-size:.95rem;display:inline-flex}.prof-marketplace-page .prof-marketplace-checkbox input[type=checkbox]{width:18px;height:18px;accent-color:var(--primary-color);cursor:pointer}.prof-marketplace-page .prof-marketplace-section h4{color:var(--tertiary-color);margin:0 0 4px;font-size:1rem}.prof-marketplace-page .prof-marketplace-section .prof-muted{margin-bottom:12px}.prof-marketplace-page .prof-marketplace-availability-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px;display:grid}.prof-marketplace-page .prof-marketplace-availability-item{border:1px solid var(--gray-200);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--tertiary-color);cursor:pointer;transition:var(--transition-fast);background:#fff;align-items:center;gap:8px;padding:8px 10px;display:flex}.prof-marketplace-page .prof-marketplace-availability-item:hover{border-color:var(--primary-color);background:#c993830f}.prof-marketplace-page .prof-marketplace-availability-item input[type=checkbox]{width:16px;height:16px;accent-color:var(--primary-color);flex-shrink:0}.prof-marketplace-page .prof-marketplace-availability-item:has(input:checked){border-color:var(--primary-color);background:#c993831a}.prof-marketplace-page .prof-marketplace-media-block{border-bottom:1px solid var(--gray-200);flex-direction:column;gap:12px;margin-bottom:20px;padding-bottom:20px;display:flex}.prof-marketplace-page .prof-marketplace-media-block--banner{border-bottom:none;margin-bottom:0;padding-bottom:0}.prof-marketplace-page .prof-marketplace-avatar-preview{justify-content:center;display:flex}.prof-marketplace-page .prof-marketplace-avatar-img{object-fit:cover;border:3px solid var(--gray-200);border-radius:50%;width:96px;height:96px}.prof-marketplace-page .prof-marketplace-avatar-placeholder{background:var(--gray-100);width:96px;height:96px;color:var(--tertiary-lighter);border:2px dashed var(--gray-300);border-radius:50%;justify-content:center;align-items:center;font-size:2rem;display:inline-flex}.prof-marketplace-page .prof-marketplace-banner-preview{border-radius:var(--radius-lg);background:var(--gray-100);border:1px dashed var(--gray-300);justify-content:center;align-items:center;width:100%;height:120px;display:flex;overflow:hidden}.prof-marketplace-page .prof-marketplace-banner-img{object-fit:cover;width:100%;height:100%}.prof-marketplace-page .prof-marketplace-banner-placeholder{color:var(--tertiary-lighter);font-size:var(--text-sm)}.prof-marketplace-page .prof-marketplace-file-input{width:100%;font-size:var(--text-sm);color:var(--tertiary-light);padding:8px 0}.prof-marketplace-page .prof-marketplace-file-input::file-selector-button{border:1px solid var(--gray-300);border-radius:var(--radius-md);color:var(--tertiary-color);font:inherit;font-size:var(--text-sm);cursor:pointer;transition:var(--transition-fast);background:#fff;margin-right:10px;padding:8px 14px}.prof-marketplace-page .prof-marketplace-file-input::file-selector-button:hover{border-color:var(--primary-color);background:#c9938314}.prof-marketplace-page .prof-marketplace-upload-btn{justify-content:center;align-items:center;gap:8px;width:100%;display:inline-flex}.prof-marketplace-page .prof-marketplace-form-actions{border-top:1px solid var(--gray-200);flex-wrap:wrap;align-items:center;gap:12px;margin-top:4px;padding-top:8px;display:flex}.prof-marketplace-page .prof-marketplace-form-actions .submit-btn,.prof-marketplace-page .prof-marketplace-form-actions .cta-button{align-items:center;gap:8px;display:inline-flex}.prof-marketplace-page .prof-marketplace-form-actions .submit-btn{min-width:200px}.prof-marketplace-page .prof-marketplace-map-fieldset,.prof-marketplace-page .prof-marketplace-map-widget{flex-direction:column;gap:12px;display:flex}.prof-marketplace-page .prof-marketplace-map-search{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.prof-marketplace-page .prof-marketplace-field--grow{flex:1;min-width:220px}.prof-marketplace-page .prof-marketplace-map-search-btn{flex-shrink:0;justify-content:center;align-items:center;gap:8px;min-width:140px;display:inline-flex}.prof-marketplace-page .prof-marketplace-map-quick-actions{flex-wrap:wrap;gap:8px;display:flex}.prof-marketplace-page .prof-marketplace-map-quick-btn{border:1px solid var(--gray-300);border-radius:var(--radius-full);color:var(--tertiary-color);font:inherit;font-size:var(--text-sm);cursor:pointer;transition:var(--transition-fast);background:#fff;align-items:center;gap:6px;padding:8px 14px;display:inline-flex}.prof-marketplace-page .prof-marketplace-map-quick-btn:hover{border-color:var(--primary-color);background:#c9938314}.prof-marketplace-page .prof-marketplace-map-quick-btn--muted{color:var(--tertiary-lighter)}.prof-marketplace-page .prof-marketplace-map-results{border:1px solid var(--gray-200);border-radius:var(--radius-md);background:#fff;max-height:200px;margin:0;padding:0;list-style:none;overflow-y:auto}.prof-marketplace-page .prof-marketplace-map-results li+li{border-top:1px solid var(--gray-100)}.prof-marketplace-page .prof-marketplace-map-results button{text-align:left;width:100%;font:inherit;font-size:var(--text-sm);color:var(--tertiary-color);cursor:pointer;background:0 0;border:0;padding:10px 12px}.prof-marketplace-page .prof-marketplace-map-results button:hover{background:#c993831a}.prof-marketplace-page .prof-marketplace-map-status{font-size:var(--text-sm);color:var(--tertiary-lighter);margin:0}.prof-marketplace-page .prof-marketplace-map-status[data-type=success]{color:#1f7a33}.prof-marketplace-page .prof-marketplace-map-status[data-type=error]{color:#a02632}.prof-marketplace-page .prof-marketplace-map-canvas{border-radius:var(--radius-lg);border:1px solid var(--gray-200);background:var(--gray-100);z-index:0;width:100%;height:280px;overflow:hidden}.prof-marketplace-page .prof-marketplace-field--radius input[type=range]{width:100%;accent-color:var(--primary-color);margin-top:4px}.prof-marketplace-page .prof-marketplace-field--radius strong{color:var(--primary-dark)}@media(max-width:900px){.prof-marketplace-page .prof-marketplace-grid,.prof-marketplace-page .prof-marketplace-field-row,.prof-marketplace-page .prof-marketplace-field-row--triple{grid-template-columns:1fr}.prof-marketplace-page .prof-marketplace-field--color{width:100%}.prof-marketplace-page .prof-marketplace-form-actions .submit-btn{width:100%;min-width:0}.prof-marketplace-page .prof-marketplace-form-actions .cta-button{justify-content:center;width:100%}.prof-marketplace-page .prof-marketplace-map-search-btn{width:100%}}.prof-dashboard-page{gap:20px}.plan-limit-banner{border-radius:var(--radius-lg);border:1px solid var(--gray-200);background:var(--gray-50);font-size:var(--text-sm);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.plan-limit-banner--warning{border-color:var(--warning);background:var(--warning-light)}.plan-limit-banner--danger{border-color:var(--error);background:var(--error-light)}.plan-limit-banner strong{margin-bottom:2px;display:block}.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}}.admin-layout{background:linear-gradient(180deg,var(--primary-50)0%,var(--quaternary-color)220px);min-height:100vh;color:var(--tertiary-color)}.admin-topbar{z-index:40;border-bottom:1px solid var(--gray-200);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffeb;position:sticky;top:0}.admin-topbar-inner{flex-wrap:wrap;align-items:center;gap:1rem;max-width:1180px;margin:0 auto;padding:.85rem 1rem;display:flex}.admin-brand{color:var(--tertiary-color);font-weight:var(--font-semibold);align-items:center;gap:.65rem;text-decoration:none;display:inline-flex}.admin-brand span{font-size:var(--text-sm);color:var(--primary-dark);border-radius:var(--radius-full);background:var(--primary-50);border:1px solid #c9938359;padding:.2rem .55rem}.admin-nav{flex-wrap:wrap;flex:1;gap:.35rem;display:flex}.admin-nav a{border-radius:var(--radius-full);color:var(--tertiary-light);font-size:var(--text-sm);font-weight:var(--font-medium);align-items:center;gap:.45rem;padding:.5rem .85rem;text-decoration:none;display:inline-flex}.admin-nav a:hover,.admin-nav a.is-active{color:var(--primary-dark);background:var(--primary-50)}.admin-nav-badge{border-radius:var(--radius-full);background:var(--primary-color);color:#fff;min-width:1.25rem;height:1.25rem;font-size:.7rem;font-weight:var(--font-semibold);justify-content:center;align-items:center;padding:0 .35rem;display:inline-flex}.admin-topbar-user{font-size:var(--text-sm);color:var(--tertiary-light);align-items:center;gap:.75rem;margin-left:auto;display:flex}.admin-logout{border:1px solid var(--gray-300);background:var(--quaternary-color);color:var(--tertiary-color);border-radius:var(--radius-full);font:inherit;font-size:var(--text-sm);cursor:pointer;padding:.4rem .85rem}.admin-logout:hover{border-color:var(--primary-light);background:var(--primary-50)}.admin-shell{max-width:1180px;margin:0 auto;padding:1.5rem 1rem 3rem}.admin-flash{border-radius:var(--radius-lg);font-size:var(--text-sm);margin:0 0 1rem;padding:.85rem 1rem}.admin-flash--success{color:#065f46;background:#ecfdf5;border:1px solid #a7f3d0}.admin-flash--error{color:#991b1b;background:#fef2f2;border:1px solid #fecaca}.admin-page-header{margin-bottom:1.5rem}.admin-page-header h1{font-family:var(--font-heading);margin:0 0 .35rem;font-size:clamp(1.6rem,3vw,2rem)}.admin-page-header p{color:var(--tertiary-light);margin:0}.admin-actions{flex-wrap:wrap;gap:.65rem;margin:0 0 1.5rem;display:flex}.admin-kpi-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.85rem;margin-bottom:1.75rem;display:grid}.admin-kpi{background:var(--quaternary-color);border:1px solid var(--gray-200);border-radius:var(--radius-xl);padding:1rem 1.1rem}.admin-kpi strong{color:var(--tertiary-color);margin-bottom:.25rem;font-size:1.55rem;line-height:1.1;display:block}.admin-kpi span{font-size:var(--text-sm);color:var(--tertiary-light)}.admin-kpi--accent{background:linear-gradient(160deg,#c9938324,var(--quaternary-color));border-color:#c9938373}.admin-section-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.admin-panel{background:var(--quaternary-color);border:1px solid var(--gray-200);border-radius:var(--radius-xl);padding:1.1rem 1.2rem}.admin-panel h2{font-size:var(--text-lg);margin:0 0 .85rem}.admin-panel-list{gap:.65rem;margin:0;padding:0;list-style:none;display:grid}.admin-panel-list li{border-bottom:1px solid var(--gray-100,#f3f4f6);font-size:var(--text-sm);justify-content:space-between;gap:.75rem;padding-bottom:.65rem;display:flex}.admin-panel-list li:last-child{border-bottom:0;padding-bottom:0}.admin-panel-list .meta{color:var(--tertiary-light);white-space:nowrap}.admin-plan-bars{gap:.75rem;display:grid}.admin-plan-row{font-size:var(--text-sm);grid-template-columns:1fr auto;align-items:center;gap:.35rem .75rem;display:grid}.admin-plan-bar{border-radius:var(--radius-full);background:var(--gray-100,#f3f4f6);grid-column:1/-1;height:8px;overflow:hidden}.admin-plan-bar>span{background:var(--primary-color);border-radius:inherit;height:100%;display:block}.admin-empty{color:var(--tertiary-light);font-size:var(--text-sm);margin:0}.admin-apps-filters{flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;display:flex}.admin-app-card{background:var(--quaternary-color);border:1px solid var(--gray-200);border-radius:var(--radius-xl);margin-bottom:.85rem;padding:1.15rem 1.25rem}.admin-app-card h2{font-size:var(--text-xl);margin:0 0 .5rem}.admin-app-actions{flex-wrap:wrap;gap:.75rem;margin-top:1rem;display:flex}.admin-app-actions form{flex:1;min-width:240px}.admin-app-actions textarea{border:1px solid var(--gray-300);border-radius:var(--radius-md);width:100%;font:inherit;margin-bottom:.5rem;padding:.65rem .75rem}@media(max-width:860px){.admin-section-grid{grid-template-columns:1fr}.admin-topbar-user{justify-content:space-between;width:100%;margin-left:0}}@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}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
