@charset "UTF-8";*{box-sizing:border-box}html{width:100%;margin:0;padding:0}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{width:100%;margin:0;padding:0}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;min-width:320px;min-height:100vh;width:100%}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.rbc-btn{color:inherit;font:inherit;margin:0}button.rbc-btn{overflow:visible;text-transform:none;-webkit-appearance:button;-moz-appearance:button;appearance:button;cursor:pointer}button[disabled].rbc-btn{cursor:not-allowed}button.rbc-input::-moz-focus-inner{border:0;padding:0}.rbc-calendar{-webkit-box-sizing:border-box;box-sizing:border-box;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch}.rbc-m-b-negative-3{margin-bottom:-3px}.rbc-h-full{height:100%}.rbc-calendar *,.rbc-calendar *:before,.rbc-calendar *:after{-webkit-box-sizing:inherit;box-sizing:inherit}.rbc-abs-full,.rbc-row-bg{overflow:hidden;position:absolute;inset:0}.rbc-ellipsis,.rbc-show-more,.rbc-row-segment .rbc-event-content,.rbc-event-label{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rbc-rtl{direction:rtl}.rbc-off-range{color:#999}.rbc-off-range-bg{background:#e6e6e6}.rbc-header{overflow:hidden;-webkit-box-flex:1;-ms-flex:1 0 0%;flex:1 0 0%;text-overflow:ellipsis;white-space:nowrap;padding:0 3px;text-align:center;vertical-align:middle;font-weight:700;font-size:90%;min-height:0;border-bottom:1px solid #ddd}.rbc-header+.rbc-header{border-left:1px solid #ddd}.rbc-rtl .rbc-header+.rbc-header{border-left-width:0;border-right:1px solid #ddd}.rbc-header>a,.rbc-header>a:active,.rbc-header>a:visited{color:inherit;text-decoration:none}.rbc-button-link{color:inherit;background:none;margin:0;padding:0;border:none;cursor:pointer;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}.rbc-row-content{position:relative;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-user-select:none;z-index:4}.rbc-row-content-scrollable{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;height:100%}.rbc-row-content-scrollable .rbc-row-content-scroll-container{height:100%;overflow-y:scroll;-ms-overflow-style:none;scrollbar-width:none}.rbc-row-content-scrollable .rbc-row-content-scroll-container::-webkit-scrollbar{display:none}.rbc-today{background-color:#eaf6ff}.rbc-toolbar{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-bottom:10px;font-size:16px}.rbc-toolbar .rbc-toolbar-label{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;padding:0 10px;text-align:center}.rbc-toolbar button{color:#373a3c;display:inline-block;margin:0;text-align:center;vertical-align:middle;background:none;background-image:none;border:1px solid #ccc;padding:.375rem 1rem;border-radius:4px;line-height:normal;white-space:nowrap}.rbc-toolbar button:active,.rbc-toolbar button.rbc-active{background-image:none;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px #00000020;background-color:#e6e6e6;border-color:#adadad}.rbc-toolbar button:active:hover,.rbc-toolbar button:active:focus,.rbc-toolbar button.rbc-active:hover,.rbc-toolbar button.rbc-active:focus{color:#373a3c;background-color:#d4d4d4;border-color:#8c8c8c}.rbc-toolbar button:focus{color:#373a3c;background-color:#e6e6e6;border-color:#adadad}.rbc-toolbar button:hover{color:#373a3c;cursor:pointer;background-color:#e6e6e6;border-color:#adadad}.rbc-btn-group{display:inline-block;white-space:nowrap}.rbc-btn-group>button:first-child:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.rbc-btn-group>button:last-child:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.rbc-rtl .rbc-btn-group>button:first-child:not(:last-child){border-radius:0 4px 4px 0}.rbc-rtl .rbc-btn-group>button:last-child:not(:first-child){border-radius:4px 0 0 4px}.rbc-btn-group>button:not(:first-child):not(:last-child){border-radius:0}.rbc-btn-group button+button{margin-left:-1px}.rbc-rtl .rbc-btn-group button+button{margin-left:0;margin-right:-1px}.rbc-btn-group+.rbc-btn-group,.rbc-btn-group+button{margin-left:10px}@media(max-width:767px){.rbc-toolbar{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}}.rbc-event,.rbc-day-slot .rbc-background-event{border:none;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-box-shadow:none;box-shadow:none;margin:0;padding:2px 5px;background-color:#3174ad;border-radius:5px;color:#fff;cursor:pointer;width:100%;text-align:left}.rbc-slot-selecting .rbc-event,.rbc-slot-selecting .rbc-day-slot .rbc-background-event,.rbc-day-slot .rbc-slot-selecting .rbc-background-event{cursor:inherit;pointer-events:none}.rbc-event.rbc-selected,.rbc-day-slot .rbc-selected.rbc-background-event{background-color:#265985}.rbc-event:focus,.rbc-day-slot .rbc-background-event:focus{outline:5px auto #3b99fc}.rbc-event-label{font-size:80%}.rbc-event-overlaps{-webkit-box-shadow:-1px 1px 5px 0px rgba(51,51,51,.5);box-shadow:-1px 1px 5px #33333380}.rbc-event-continues-prior{border-top-left-radius:0;border-bottom-left-radius:0}.rbc-event-continues-after{border-top-right-radius:0;border-bottom-right-radius:0}.rbc-event-continues-earlier{border-top-left-radius:0;border-top-right-radius:0}.rbc-event-continues-later{border-bottom-left-radius:0;border-bottom-right-radius:0}.rbc-row{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.rbc-row-segment{padding:0 1px 1px}.rbc-selected-cell{background-color:#0000001a}.rbc-show-more{background-color:#ffffff4d;z-index:4;font-weight:700;font-size:85%;height:auto;line-height:normal;color:#3174ad}.rbc-show-more:hover,.rbc-show-more:focus{color:#265985}.rbc-month-view{position:relative;border:1px solid #ddd;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-flex:1;-ms-flex:1 0 0px;flex:1 0 0;width:100%;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-user-select:none;height:100%}.rbc-month-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.rbc-month-row{display:-webkit-box;display:-ms-flexbox;display:flex;position:relative;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-flex:1;-ms-flex:1 0 0px;flex:1 0 0;-ms-flex-preferred-size:0px;flex-basis:0px;overflow:hidden;height:100%}.rbc-month-row+.rbc-month-row{border-top:1px solid #ddd}.rbc-date-cell{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0;min-width:0;padding-right:5px;text-align:right}.rbc-date-cell.rbc-now{font-weight:700}.rbc-date-cell>a,.rbc-date-cell>a:active,.rbc-date-cell>a:visited{color:inherit;text-decoration:none}.rbc-row-bg{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-flex:1;-ms-flex:1 0 0px;flex:1 0 0;overflow:hidden;right:1px}.rbc-day-bg{-webkit-box-flex:1;-ms-flex:1 0 0%;flex:1 0 0%}.rbc-day-bg+.rbc-day-bg{border-left:1px solid #ddd}.rbc-rtl .rbc-day-bg+.rbc-day-bg{border-left-width:0;border-right:1px solid #ddd}.rbc-overlay{position:absolute;z-index:5;border:1px solid #e5e5e5;background-color:#fff;-webkit-box-shadow:0 5px 15px rgba(0,0,0,.25);box-shadow:0 5px 15px #00000040;padding:10px}.rbc-overlay>*+*{margin-top:1px}.rbc-overlay-header{border-bottom:1px solid #e5e5e5;margin:-10px -10px 5px;padding:2px 10px}.rbc-agenda-view{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-flex:1;-ms-flex:1 0 0px;flex:1 0 0;overflow:auto}.rbc-agenda-view table.rbc-agenda-table{width:100%;border:1px solid #ddd;border-spacing:0;border-collapse:collapse}.rbc-agenda-view table.rbc-agenda-table tbody>tr>td{padding:5px 10px;vertical-align:top}.rbc-agenda-view table.rbc-agenda-table .rbc-agenda-time-cell{padding-left:15px;padding-right:15px;text-transform:lowercase}.rbc-agenda-view table.rbc-agenda-table tbody>tr>td+td{border-left:1px solid #ddd}.rbc-rtl .rbc-agenda-view table.rbc-agenda-table tbody>tr>td+td{border-left-width:0;border-right:1px solid #ddd}.rbc-agenda-view table.rbc-agenda-table tbody>tr+tr{border-top:1px solid #ddd}.rbc-agenda-view table.rbc-agenda-table thead>tr>th{padding:3px 5px;text-align:left;border-bottom:1px solid #ddd}.rbc-rtl .rbc-agenda-view table.rbc-agenda-table thead>tr>th{text-align:right}.rbc-agenda-time-cell{text-transform:lowercase}.rbc-agenda-time-cell .rbc-continues-after:after{content:" »"}.rbc-agenda-time-cell .rbc-continues-prior:before{content:"« "}.rbc-agenda-date-cell,.rbc-agenda-time-cell{white-space:nowrap}.rbc-agenda-event-cell{width:100%}.rbc-time-column{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;min-height:100%}.rbc-time-column .rbc-timeslot-group{-webkit-box-flex:1;-ms-flex:1;flex:1}.rbc-timeslot-group{border-bottom:1px solid #ddd;min-height:40px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-flow:column nowrap;flex-flow:column nowrap}.rbc-time-gutter,.rbc-header-gutter{-webkit-box-flex:0;-ms-flex:none;flex:none}.rbc-label{padding:0 5px}.rbc-day-slot{position:relative}.rbc-day-slot .rbc-events-container{inset:0;position:absolute;margin-right:10px}.rbc-day-slot .rbc-events-container.rbc-rtl{left:10px;right:0}.rbc-day-slot .rbc-event,.rbc-day-slot .rbc-background-event{border:1px solid #265985;display:-webkit-box;display:-ms-flexbox;display:flex;max-height:100%;min-height:20px;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-flow:column wrap;flex-flow:column wrap;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;overflow:hidden;position:absolute}.rbc-day-slot .rbc-background-event{opacity:.75}.rbc-day-slot .rbc-event-label{-webkit-box-flex:0;-ms-flex:none;flex:none;padding-right:5px;width:auto}.rbc-day-slot .rbc-event-content{width:100%;-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0;word-wrap:break-word;line-height:1;height:100%;min-height:1em}.rbc-day-slot .rbc-time-slot{border-top:1px solid #f7f7f7}.rbc-time-view-resources .rbc-time-gutter,.rbc-time-view-resources .rbc-time-header-gutter{position:sticky;left:0;background-color:#fff;border-right:1px solid #ddd;z-index:10;margin-right:-1px}.rbc-time-view-resources .rbc-time-header{overflow:hidden}.rbc-time-view-resources .rbc-time-header-content{min-width:auto;-webkit-box-flex:1;-ms-flex:1 0 0px;flex:1 0 0;-ms-flex-preferred-size:0px;flex-basis:0px}.rbc-time-view-resources .rbc-time-header-cell-single-day{display:none}.rbc-time-view-resources .rbc-day-slot{min-width:140px}.rbc-time-view-resources .rbc-header,.rbc-time-view-resources .rbc-day-bg{width:140px;-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0;-ms-flex-preferred-size:0 px;flex-basis:0 px}.rbc-time-header-content+.rbc-time-header-content{margin-left:-1px}.rbc-time-slot{-webkit-box-flex:1;-ms-flex:1 0 0px;flex:1 0 0}.rbc-time-slot.rbc-now{font-weight:700}.rbc-day-header{text-align:center}.rbc-slot-selection{z-index:10;position:absolute;background-color:#00000080;color:#fff;font-size:75%;width:100%;padding:3px}.rbc-slot-selecting{cursor:move}.rbc-time-view{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-flex:1;-ms-flex:1;flex:1;width:100%;border:1px solid #ddd;min-height:0}.rbc-time-view .rbc-time-gutter{white-space:nowrap;text-align:right}.rbc-time-view .rbc-allday-cell{-webkit-box-sizing:content-box;box-sizing:content-box;width:100%;height:100%;position:relative}.rbc-time-view .rbc-allday-cell+.rbc-allday-cell{border-left:1px solid #ddd}.rbc-time-view .rbc-allday-events{position:relative;z-index:4}.rbc-time-view .rbc-row{-webkit-box-sizing:border-box;box-sizing:border-box;min-height:20px}.rbc-time-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.rbc-time-header.rbc-overflowing{border-right:1px solid #ddd}.rbc-rtl .rbc-time-header.rbc-overflowing{border-right-width:0;border-left:1px solid #ddd}.rbc-time-header>.rbc-row:first-child{border-bottom:1px solid #ddd}.rbc-time-header>.rbc-row.rbc-row-resource{border-bottom:1px solid #ddd}.rbc-time-header-cell-single-day{display:none}.rbc-time-header-content{-webkit-box-flex:1;-ms-flex:1;flex:1;display:-webkit-box;display:-ms-flexbox;display:flex;min-width:0;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;border-left:1px solid #ddd}.rbc-rtl .rbc-time-header-content{border-left-width:0;border-right:1px solid #ddd}.rbc-time-header-content>.rbc-row.rbc-row-resource{border-bottom:1px solid #ddd;-ms-flex-negative:0;flex-shrink:0}.rbc-time-content{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-ms-flex:1 0 0%;flex:1 0 0%;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;width:100%;border-top:2px solid #ddd;overflow-y:auto;position:relative}.rbc-time-content>.rbc-time-gutter{-webkit-box-flex:0;-ms-flex:none;flex:none}.rbc-time-content>*+*>*{border-left:1px solid #ddd}.rbc-rtl .rbc-time-content>*+*>*{border-left-width:0;border-right:1px solid #ddd}.rbc-time-content>.rbc-day-slot{width:100%;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-user-select:none}.rbc-current-time-indicator{position:absolute;z-index:3;left:0;right:0;height:1px;background-color:#74ad31;pointer-events:none}.rbc-resource-grouping.rbc-time-header-content{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.rbc-resource-grouping .rbc-row .rbc-header{width:141px}.sx__calendar-wrapper ul,.sx__date-picker-wrapper ul,.sx__date-picker-popup ul{list-style:none;padding:0}.sx__calendar-wrapper input,.sx__calendar-wrapper button,.sx__date-picker-wrapper input,.sx__date-picker-wrapper button,.sx__date-picker-popup input,.sx__date-picker-popup button{font-family:inherit;outline:none}.sx__calendar-wrapper button,.sx__date-picker-wrapper button,.sx__date-picker-popup button{background-color:inherit;outline:0;border:none;cursor:pointer}:root{--sx-color-primary: #6750a4;--sx-color-on-primary: #fff;--sx-color-primary-container: #eaddff;--sx-color-on-primary-container: #21005e;--sx-color-secondary: #625b71;--sx-color-on-secondary: #fff;--sx-color-secondary-container: #e8def8;--sx-color-on-secondary-container: #1e192b;--sx-color-tertiary: #7d5260;--sx-color-on-tertiary: #fff;--sx-color-tertiary-container: #ffd8e4;--sx-color-on-tertiary-container: #370b1e;--sx-color-surface: #fef7ff;--sx-color-surface-dim: #ded8e1;--sx-color-surface-bright: #fef7ff;--sx-color-on-surface: #1c1b1f;--sx-color-surface-container: #f3edf7;--sx-color-surface-container-low: #f7f2fa;--sx-color-surface-container-high: #ece6f0;--sx-color-background: #fff;--sx-color-on-background: #1c1b1f;--sx-color-outline: #79747e;--sx-color-outline-variant: #c4c7c5;--sx-color-shadow: #000;--sx-color-surface-tint: #6750a4;--sx-color-neutral: var(--sx-color-outline);--sx-color-neutral-variant: var(--sx-color-outline-variant);--sx-internal-color-gray-ripple-background: #e0e0e0;--sx-internal-color-light-gray: #fafafa;--sx-internal-color-text: #000}.is-dark{--sx-color-primary: #d0bcff;--sx-color-on-primary: #371e73;--sx-color-primary-container: #4f378b;--sx-color-on-primary-container: #eaddff;--sx-color-secondary: #ccc2dc;--sx-color-on-secondary: #332d41;--sx-color-secondary-container: #4a4458;--sx-color-on-secondary-container: #e8def8;--sx-color-tertiary: #efb8c8;--sx-color-on-tertiary: #492532;--sx-color-tertiary-container: #633b48;--sx-color-on-tertiary-container: #ffd8e4;--sx-color-surface: #141218;--sx-color-surface-dim: #141218;--sx-color-surface-bright: #3b383e;--sx-color-on-surface: #e6e1e5;--sx-color-surface-container: #211f26;--sx-color-surface-container-low: #1d1b20;--sx-color-surface-container-high: #2b2930;--sx-color-background: #141218;--sx-color-on-background: #e6e1e5;--sx-color-outline: #938f99;--sx-color-outline-variant: #444746;--sx-color-shadow: #000;--sx-color-surface-tint: #d0bcff;--sx-internal-color-text: #fff}:root{--sx-spacing-padding1: 4px;--sx-spacing-padding2: 8px;--sx-spacing-padding3: 12px;--sx-spacing-padding4: 16px;--sx-spacing-padding6: 24px;--sx-spacing-modal-padding: 16px}:root{--sx-box-shadow-level3: 0 3px 6px 0 rgb(0 0 0 / 16%), 0 3px 6px 0 rgb(0 0 0 / 23%);--sx-rounding-extra-small: 4px;--sx-rounding-small: 8px;--sx-rounding-extra-large: 28px;--sx-border: 1px solid var(--sx-color-outline-variant)}.is-dark{--sx-border: 1px solid var(--sx-color-outline-variant)}:root{--sx-font-small: .875rem;--sx-font-extra-small: .75rem;--sx-font-large: 1.125rem;--sx-font-extra-large: 1.25rem}@keyframes sx-ripple{0%{width:0;height:0;opacity:.16}40%{width:100px;height:100px;opacity:.08}to{width:150px;height:150px;opacity:0}}.sx__ripple{position:relative;overflow:hidden}.sx__ripple:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;transform:translate(-50%,-50%);border-radius:50%;background-color:currentcolor;opacity:.1;visibility:hidden;z-index:2}.sx__ripple:active:before{visibility:visible}.sx__ripple:not(:active):before{animation:sx-ripple .75s cubic-bezier(0,.1,.8,1);transition:visibility .75s step-end}@keyframes sx-ripple-wide{0%{width:0;height:0;opacity:.16}40%{width:300px;height:100px;opacity:.08}to{width:450px;height:150px;opacity:0}}.sx__ripple--wide{position:relative;overflow:hidden}.sx__ripple--wide:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;transform:translate(-50%,-50%);border-radius:50%;background-color:currentcolor;opacity:.1;visibility:hidden;z-index:2}.sx__ripple--wide:active:before{visibility:visible}.sx__ripple--wide:before{border-radius:var(--sx-rounding-small)}.sx__ripple--wide:not(:active):before{animation:sx-ripple-wide .75s cubic-bezier(0,.1,.8,1);transition:visibility .75s step-end}.sx__chevron-wrapper{position:relative;border-radius:50%;min-height:48px;min-width:48px;cursor:pointer;transition:background-color .2s ease-in-out;font-size:0}.sx__chevron-wrapper:active{background-color:var(--sx-internal-color-gray-ripple-background)}.sx__chevron-wrapper:disabled{cursor:not-allowed;opacity:.5}.sx__chevron-wrapper:hover,.sx__chevron-wrapper:focus{background-color:var(--sx-color-surface-dim)}.is-dark .sx__chevron-wrapper:hover,.is-dark .sx__chevron-wrapper:focus{background-color:var(--sx-color-surface-container-high)}.sx__chevron-wrapper .sx__chevron{position:absolute;top:50%;width:.6rem;height:.6rem;border-width:.2rem .2rem 0 0;border-style:solid;border-color:var(--sx-internal-color-text)}.sx__chevron--previous{left:calc(50% + .125rem);transform:translate(-50%,-50%) rotate(225deg)}[dir=rtl] .sx__chevron--previous,.sx__chevron--next{left:calc(50% - .125rem);transform:translate(-50%,-50%) rotate(45deg)}[dir=rtl] .sx__chevron--next{left:calc(50% + .125rem);transform:translate(-50%,-50%) rotate(225deg)}.sx__date-picker-wrapper{position:relative;color:var(--sx-color-on-background);width:fit-content}.sx__date-picker-wrapper.has-full-width{width:100%}.sx__date-picker-wrapper.is-disabled{opacity:.5;cursor:not-allowed}.sx__date-picker-wrapper *{color:var(--sx-color-on-background);box-sizing:border-box}.sx__date-input-wrapper{position:relative}.sx__date-input-chevron-wrapper{position:absolute;top:50%;right:1rem;transform:translateY(-50%);display:flex;align-items:center;padding:0;transition:transform .2s ease-in-out}.sx__date-input-chevron-wrapper:focus{border:2px solid var(--sx-color-primary)}.is-disabled .sx__date-input-chevron-wrapper{pointer-events:none;cursor:not-allowed}.sx__date-input--active .sx__date-input-chevron-wrapper{transform:translateY(-50%) rotate(180deg)}[dir=rtl] .sx__date-input-chevron-wrapper{left:1rem;right:auto}.sx__date-input-chevron{width:1rem;height:1rem;pointer-events:none;filter:brightness(.7)}.sx__date-input{font-size:1rem;padding:var(--sx-spacing-padding4);border:var(--sx-border);border-radius:var(--sx-rounding-extra-small);cursor:pointer;background-color:var(--sx-color-background);width:100%}.is-disabled .sx__date-input{pointer-events:none}.sx__date-input--active .sx__date-input{border-color:var(--sx-color-primary);outline:1px solid var(--sx-color-primary)}.sx__date-input-label{position:absolute;top:0;inset-inline-start:12px;padding:0 var(--sx-spacing-padding1);background-color:var(--sx-color-background);font-size:.75rem;color:var(--sx-color-neutral);line-height:1rem;transform:translateY(-50%);transition:transform .2s ease-in-out;pointer-events:none}.sx__date-input--active .sx__date-input-label{color:var(--sx-color-primary)}.is-dark .sx__date-input-label{display:none}.sx__date-picker-popup{position:absolute;height:fit-content;z-index:1;top:calc(100% + 1px);width:20.75rem;max-width:500px;max-height:400px;overflow:scroll;box-shadow:var(--sx-box-shadow-level3);padding:var(--sx-spacing-modal-padding);background-color:var(--sx-color-background);color:var(--sx-internal-color-text)}.sx__date-picker-popup.is-dark{background-color:var(--sx-color-surface-container-high)}.sx__date-picker-popup.bottom-end{left:auto;right:0;transform:translate(0)}.sx__date-picker-popup.bottom-end[dir=rtl]{right:auto;left:0;transform:translate(0)}.sx__date-picker-popup.bottom-start{left:0;right:auto;transform:translate(0)}.sx__date-picker-popup.bottom-start[dir=rtl]{left:auto;right:0;transform:translate(0)}.sx__date-picker-popup.top-start{inset:auto auto calc(100% + 1rem) 0;transform:translate(0)}.sx__date-picker-popup.top-end{inset:auto 0 calc(100% + 1rem) auto;transform:translate(0)}.sx__date-picker__years-view{margin:0}.sx__date-picker__years-accordion__expand-button{width:100%;border-radius:0;background-color:transparent;font-size:1rem;padding:1em;transition:background-color .2s ease-in-out;color:var(--sx-internal-color-text)}.sx__is-expanded .sx__date-picker__years-accordion__expand-button{background-color:var(--sx-color-surface-container)}.sx__date-picker__years-accordion__expand-button:hover{background-color:var(--sx-color-surface-dim)}.sx__date-picker__years-accordion__expand-button:active{background-color:var(--sx-internal-color-gray-ripple-background)}.sx__date-picker__years-view-accordion__panel{display:flex;flex-wrap:wrap}.sx__date-picker__years-view-accordion__month{flex:1 0 33.3333%;background-color:transparent;border:0;font-size:.9rem;padding:.5em 0;border-radius:25px;color:var(--sx-internal-color-text)}.sx__date-picker__years-view-accordion__month:hover{background-color:var(--sx-color-primary);color:var(--sx-color-on-primary)}.sx__date-picker__day-names{display:flex;width:100%;justify-content:space-evenly;margin-bottom:.5em}.sx__date-picker__day-names .sx__date-picker__day,.sx__date-picker__day-names .sx__date-picker__day-name{flex:1;text-align:center}.sx__date-picker__day-name{font-weight:700;color:var(--sx-color-neutral-variant)}.sx__date-picker__month-view-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1em}.sx__date-picker__month-view-header .sx__chevron-wrapper:hover{background-color:var(--sx-color-surface-dim)}.sx__date-picker__month-view-header__month-year{font-size:1.5rem;font-weight:300;color:var(--sx-internal-color-text)}.sx__date-picker__month-view-header__month-year:hover{color:var(--sx-color-primary);text-decoration:underline}.sx__date-picker__week{display:flex;width:100%;justify-content:space-evenly;margin-bottom:.5em}.sx__date-picker__week .sx__date-picker__day,.sx__date-picker__week .sx__date-picker__day-name{flex:1;text-align:center}.sx__date-picker__day{background-color:transparent;border-radius:50%;width:2.5rem;height:2.5rem;color:var(--sx-internal-color-text)}.sx__date-picker__day:hover{background-color:var(--sx-color-surface-dim)}.sx__date-picker__day:focus{outline-offset:-2px;outline:2px solid var(--sx-color-primary)}.sx__date-picker__day:disabled{color:var(--sx-color-neutral-variant);cursor:not-allowed}.sx__date-picker__day.is-leading-or-trailing{color:var(--sx-color-neutral-variant)}.sx__date-picker__day.sx__date-picker__day--selected{background-color:var(--sx-color-primary-container);color:var(--sx-color-on-primary-container)}.sx__date-picker__day.sx__date-picker__day--today{background-color:var(--sx-color-primary);color:var(--sx-color-on-primary)}:root{--sx-calendar-header-input-font-size: clamp(12px, .875rem, 28px);--sx-calendar-header-popup-z-index: 3;--sx-calendar-week-grid-padding-left: 75px}:root .sx__date-picker-popup.is-teleported{z-index:3}.sx__calendar-wrapper{height:100%;display:flex;color:var(--sx-internal-color-text)}.sx__calendar-wrapper *{box-sizing:border-box}.sx__calendar{position:relative;flex:1;height:100%;border:var(--sx-border);border-radius:var(--sx-rounding-small);display:flex;flex-flow:column;background-color:var(--sx-color-background);overflow:hidden}.sx__view-container{position:relative;flex:1;overflow-y:auto;scroll-behavior:smooth}.sx__slide-left{animation:sx-slide-left .3s ease-out}@keyframes sx-slide-left{0%{transform:translate(8%);filter:blur(.25rem);opacity:.1}to{transform:translate(0);filter:blur(0);opacity:1}}.sx__slide-right{animation:sx-slide-right .3s ease-out}@keyframes sx-slide-right{0%{transform:translate(-8%);filter:blur(.25rem);opacity:.1}to{transform:translate(0);filter:blur(0);opacity:1}}.sx__calendar-header{display:flex;justify-content:space-between;align-items:flex-start;padding:var(--sx-spacing-padding4);gap:var(--sx-spacing-padding4);flex-wrap:wrap}.sx__calendar-header .sx__date-input{padding:var(--sx-spacing-padding3) var(--sx-spacing-padding4);font-size:var(--sx-calendar-header-input-font-size)}.sx__calendar-header .sx__date-picker-popup{z-index:var(--sx-calendar-header-popup-z-index)}.sx__calendar-header-content{display:flex;align-items:center;gap:var(--sx-spacing-padding4);flex-wrap:wrap;min-width:0}.sx__forward-backward-navigation{height:45px}.sx__is-calendar-small .sx__forward-backward-navigation,.is-list-view .sx__forward-backward-navigation{display:none}.sx__calendar-header__week-number{border-radius:4px;background-color:#eceef1;color:var(--sx-color-on-surface);padding:var(--sx-spacing-padding1) var(--sx-spacing-padding2);font-size:.75rem;font-weight:500}.is-dark .sx__calendar-header__week-number{background-color:#4a4458}.sx__range-heading{font-size:clamp(16px,1.25rem,24px);max-width:12.5rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sx__is-calendar-small .sx__range-heading{font-size:16px}.is-list-view .sx__range-heading{display:none}.sx__today-button{padding:var(--sx-spacing-padding3) var(--sx-spacing-padding4);border-radius:var(--sx-rounding-extra-small);font-size:var(--sx-calendar-header-input-font-size);color:var(--sx-internal-color-text)}.sx__today-button:active{background-color:var(--sx-internal-color-gray-ripple-background)}.sx__is-calendar-small .sx__today-button{display:none}.sx__calendar-header .sx__today-button{border:var(--sx-border)}.sx__today-button:hover,.sx__today-button:focus{background-color:var(--sx-internal-color-light-gray)}.is-dark .sx__today-button:hover,.is-dark .sx__today-button:focus{background-color:var(--sx-color-surface-container-low)}.sx__view-selection{position:relative;font-size:var(--sx-calendar-header-input-font-size)}.sx__view-selection-label{position:absolute;top:0;inset-inline-start:12px;padding:0 var(--sx-spacing-padding1);background-color:var(--sx-color-background);font-size:.75rem;color:var(--sx-color-neutral);line-height:1rem;transform:translateY(-50%);transition:transform .2s ease-in-out;pointer-events:none;z-index:1}.is-dark .sx__view-selection-label{display:none}.sx__view-selection-selected-item{height:100%;width:fit-content;padding:var(--sx-spacing-padding3) var(--sx-spacing-padding4);cursor:pointer;border-radius:var(--sx-rounding-extra-small);border:var(--sx-border);display:flex;align-items:center;gap:var(--sx-spacing-padding2)}.sx__view-selection-selected-item:hover{background-color:var(--sx-internal-color-light-gray)}.is-dark .sx__view-selection-selected-item:hover{background-color:var(--sx-color-surface-container-low)}.sx__view-selection-chevron{width:1rem;height:1rem;pointer-events:none;filter:brightness(.7);transition:transform .2s ease-in-out}.sx__view-selection.is-open .sx__view-selection-chevron{transform:rotate(180deg)}.sx__view-selection-items{position:absolute;top:100%;box-shadow:var(--sx-box-shadow-level3);margin:0;background-color:var(--sx-color-background);z-index:var(--sx-calendar-header-popup-z-index)}.is-dark .sx__view-selection-items{background-color:var(--sx-color-surface-container-high)}.sx__view-selection-item{padding:var(--sx-spacing-padding4) var(--sx-spacing-padding6);cursor:pointer}.sx__view-selection-item:hover,.sx__view-selection-item:focus{background-color:var(--sx-color-primary);color:var(--sx-color-on-primary)}.sx__view-selection-item.is-selected{background-color:var(--sx-color-surface-dim)}.sx__view-selection-item.is-selected:hover,.sx__view-selection-item.is-selected:focus{background-color:var(--sx-color-primary);color:var(--sx-color-on-primary)}.sx__month-grid-wrapper{display:flex;flex-flow:column;height:100%}.sx__month-grid-week__week-number{display:flex;justify-content:center;padding-top:12px;background-color:#eceef1;color:var(--sx-color-on-surface);width:1.5rem;font-size:.75rem}.is-dark .sx__month-grid-week__week-number{background-color:#4a4458}.sx__month-grid-week{border-top:var(--sx-border);flex:1;display:flex}.sx__month-grid-week:first-child .sx__month-grid-week__week-number{padding-top:26px}.sx__month-grid-day{position:relative;padding:var(--sx-spacing-padding2) 0;flex:1}.sx__month-grid-day:not(:last-child){border-inline-end:var(--sx-border)}.sx__month-grid-day--dragover{background-color:var(--sx-color-surface-container)}.sx__month-grid-day__header{display:flex;flex-flow:column;align-items:center}.sx__month-grid-day__header-day-name{font-size:11px;text-transform:uppercase;color:var(--sx-color-neutral)}.sx__month-grid-day__header-date{font-size:var(--sx-font-extra-small);margin-bottom:var(--sx-spacing-padding1);border-radius:50%;height:24px;width:24px;display:flex;align-items:center;justify-content:center}.sx__month-grid-day__header-date.sx__is-today{background-color:var(--sx-color-primary);color:var(--sx-color-on-primary)}.sx__month-grid-day__events-more{width:calc(100% - 10px);font-size:var(--sx-font-extra-small);color:var(--sx-color-neutral);margin:var(--sx-spacing-padding1) 0;padding:var(--sx-spacing-padding1);border-radius:var(--sx-rounding-extra-small);cursor:pointer;transition:background-color .2s ease-in-out,color .2s ease-in-out}.sx__month-grid-day__events-more:hover{background-color:var(--sx-color-surface-container);color:var(--sx-color-on-surface)}.sx__month-grid-background-event{position:absolute;top:0;left:0;height:100%;width:100%}.sx__month-grid-day__events{display:grid;grid-gap:4px}.sx__month-grid-cell{height:clamp(20px,1.25rem,24px)}.sx__month-grid-event{position:relative;display:flex;align-items:center;padding:var(--sx-spacing-padding1);border-radius:var(--sx-rounding-extra-small);font-size:clamp(12px,var(--sx-font-extra-small),14px);overflow:hidden;white-space:nowrap;z-index:1}.sx__month-grid-event.is-event-new{animation:sx-grow-event .3s ease-in-out forwards}.sx__month-grid-event-time{margin-right:4px}.sx__month-grid-blocker{pointer-events:none}.sx__month-agenda-week{display:flex}.sx__month-agenda-week:not(:first-child){border-top:var(--sx-border)}.sx__month-agenda-week__week-number{text-align:center;background-color:#eceef1;color:var(--sx-color-on-surface);width:1.5rem;font-size:.75rem;padding-top:9px}.is-dark .sx__month-agenda-week__week-number{background-color:#4a4458}.sx__month-agenda-day{padding:var(--sx-spacing-padding2);flex:1;display:flex;flex-flow:column;align-items:center;height:3rem;border-radius:var(--sx-rounding-extra-small);color:var(--sx-internal-color-text)}.sx__month-agenda-day--active{box-shadow:inset 0 0 0 3px var(--sx-color-primary)}.sx__month-agenda-day__event-icons{margin-top:4px;display:flex;grid-gap:3px}.sx__month-agenda-day__event-icon{height:6px;width:6px;border-radius:50%;filter:brightness(1.6)}.is-dark .sx__month-agenda-day__event-icon{filter:initial}.sx__month-agenda-day-names{display:flex;padding:var(--sx-spacing-padding2) 0;font-size:var(--sx-font-extra-small);color:var(--sx-color-neutral)}.sx__month-agenda-day-names.sx__has-week-numbers{padding-inline-start:1.5rem}.sx__month-agenda-day-name{flex:1;display:flex;justify-content:center}.sx__month-agenda-events{padding:0 var(--sx-spacing-padding2)}.sx__month-agenda-event{padding:var(--sx-spacing-padding2);margin-bottom:var(--sx-spacing-padding2);border-radius:var(--sx-rounding-extra-small);font-size:var(--sx-font-small)}.sx__month-agenda-event.is-event-new{animation:sx-grow-event .3s ease-in-out forwards}.sx__month-agenda-event:first-child{margin-top:var(--sx-spacing-padding2)}.sx__month-agenda-event__title{font-weight:600}.sx__month-agenda-event__has-icon{display:flex;align-items:center}.sx__month-agenda-events__empty{margin-top:var(--sx-spacing-padding4);display:flex;justify-content:center}.sx__week-wrapper{position:relative}.sx__week-grid{position:relative;padding-left:var(--sx-calendar-week-grid-padding-left);display:flex;height:var(--sx-week-grid-height);overflow:hidden}.sx__week-header{position:sticky;top:0;z-index:2;background-color:var(--sx-color-background)}.sx__week-header-content{position:relative}.sx__week-header-border{position:absolute;width:100%;bottom:0;border-bottom:var(--sx-border);border-left:250px solid transparent}.sx__list-wrapper{padding:0;background-color:var(--sx-color-background);height:100%;overflow-y:auto;position:relative;scroll-behavior:smooth}.sx__list-day{padding:0;background-color:var(--sx-color-background);will-change:opacity;transform:translateZ(0)}.sx__list-day-header{padding:var(--sx-spacing-padding2) var(--sx-spacing-padding4);background-color:var(--sx-color-surface-container-low);position:sticky;top:0;z-index:1}.sx__list-day-date{font-size:var(--sx-font-extra-small);font-weight:600;color:var(--sx-color-neutral);text-transform:uppercase;letter-spacing:.5px}.sx__list-day-events{padding:0 16px;background:var(--sx-color-background)}.sx__list-event{padding:.75rem 0;display:flex;align-items:flex-start;gap:.75rem}.sx__list-event:not(:first-child){border-top:var(--sx-border)}.sx__list-event-color-line{width:3px;height:24px;border-radius:2px;flex-shrink:0}.sx__list-event-content{display:flex;justify-content:space-between;align-items:flex-start;width:100%}.sx__list-event-title{font-size:1em;color:var(--sx-color-on-background);flex:1}.sx__list-event-times{display:flex;flex-direction:column;align-items:flex-end;min-width:80px;gap:2px}.sx__list-event-start-time{font-size:.85em;color:var(--sx-color-on-background)}.sx__list-event-end-time{font-size:.85em;color:var(--sx-color-neutral)}.sx__list-event-arrow{font-size:.85em;color:var(--sx-color-neutral);line-height:1}.sx__list-event-all-day{font-size:.85em;color:var(--sx-color-neutral)}.sx__list-day-margin{height:16px}.sx__list-no-events{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:var(--sx-color-neutral);font-size:var(--sx-font-extra-small);text-align:center}.sx__week-grid__time-axis{display:flex;flex-flow:column;position:absolute;right:0;top:var(--sx-week-grid-offset-top);width:calc(100% - 60px)}.sx__week-grid__hour{position:relative;height:var(--sx-week-grid-hour-height);border-top:var(--sx-border);font-size:var(--sx-font-extra-small)}.sx__week-grid__hour:first-child{visibility:hidden}.sx__week-grid__hour-text{position:absolute;left:-43px;top:-.75em;color:var(--sx-color-neutral)}.sx__time-grid-day{position:relative;width:100%;height:100%;border-left:var(--sx-border)}.sx__week-grid__date-axis{padding-left:var(--sx-calendar-week-grid-padding-left);display:flex}.sx__week-grid__date{flex:1;display:flex;flex-flow:column;align-items:center;padding:var(--sx-spacing-padding3) 0;gap:var(--sx-spacing-padding1)}.sx__week-grid__day-name{text-transform:uppercase;font-size:var(--sx-font-extra-small);color:var(--sx-color-neutral);font-weight:500}.sx__week-grid__date--is-today .sx__week-grid__day-name{color:var(--sx-color-primary);font-weight:700}.sx__week-grid__date-number{display:flex;align-items:center;justify-content:center;font-size:var(--sx-font-extra-large);font-weight:500;color:var(--sx-color-neutral);height:2em;width:2em}.sx__week-grid__date--is-today .sx__week-grid__date-number{background-color:var(--sx-color-primary);color:var(--sx-color-on-primary);border-radius:50%}.sx__time-grid-event{width:calc(100% - 10px);padding:var(--sx-spacing-padding1);position:absolute;border-radius:var(--sx-rounding-extra-small);font-size:var(--sx-font-extra-small);overflow:hidden;-webkit-user-select:none;user-select:none}.sx__time-grid-event.is-event-copy{opacity:.5;box-shadow:var(--sx-box-shadow-level3);z-index:1;transition:transform .15s ease-in-out}.sx__time-grid-event.is-event-new{animation:sx-grow-event .3s ease-in-out forwards}[data-has-dnd=true] .sx__time-grid-event{touch-action:none}.sx__is-resizing .sx__time-grid-event:has(+.is-event-copy){opacity:0}.sx__is-resizing .is-event-copy{opacity:1}.sx__time-grid-event-inner{position:relative;height:100%}.sx__time-grid-event-resize-handle{display:block;position:absolute;width:100%;bottom:0;cursor:ns-resize;height:clamp(10px,20px,50%);touch-action:none}.sx__time-grid-event-title{font-weight:600}.sx__time-grid-event-time,.sx__time-grid-event-people,.sx__time-grid-event-location{display:flex;align-items:center;white-space:nowrap}.sx__title-and-time-compact{display:flex;align-items:center;gap:var(--sx-spacing-padding2)}.sx__title-and-time-compact .sx__time-grid-event-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sx__title-and-time-compact .sx__time-grid-event-time{flex-shrink:0}.sx__event-icon{min-width:15px;min-height:15px;max-width:15px;max-height:15px;margin-inline-end:var(--sx-spacing-padding2)}.sx__date-grid{display:flex;padding-left:var(--sx-calendar-week-grid-padding-left)}.sx__date-grid-day{position:relative;width:100%;display:grid;grid-gap:2px}.sx__date-grid-day .sx__spacer{display:var(--sx-draw-plugin-spacer-display, none);height:var(--sx-draw-plugin-spacer)}.sx__date-grid-event{z-index:1;position:relative;display:flex;align-items:center;padding:var(--sx-spacing-padding1);border-radius:var(--sx-rounding-extra-small);font-size:clamp(12px,var(--sx-font-extra-small),14px);font-weight:600;-webkit-user-select:none;user-select:none}.sx__date-grid-event:has(.sx__date-grid-event--left-overflow){margin-left:10px}.sx__date-grid-event:has(.sx__date-grid-event--right-overflow){margin-right:10px}.sx__date-grid-event.is-event-new{animation:sx-grow-event .3s ease-in-out forwards}@keyframes sx-grow-event{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}.sx__date-grid-event .sx__date-grid-event--left-overflow{position:absolute;z-index:1;width:10px;height:100%;left:-10px;clip-path:polygon(100% 0,0 50%,100% 100%,100% 0)}.sx__date-grid-event .sx__date-grid-event--right-overflow{position:absolute;z-index:1;width:10px;height:100%;right:-10px;clip-path:polygon(0 0,100% 50%,0 100%,0 0)}.sx__date-grid-event.sx__date-grid-event--copy{z-index:2;box-shadow:var(--sx-box-shadow-level3);transition-property:transform,width;transition-duration:.15s;transition-timing-function:ease-in-out}.sx__date-grid-event-text{width:calc(100% - var(--sx-spacing-padding1) * 2);left:var(--sx-spacing-padding1);position:absolute;text-overflow:ellipsis;overflow-x:hidden;white-space:nowrap}.sx__date-grid-event-text .sx__date-grid-event-time{font-weight:initial}.sx__date-grid-cell{height:clamp(20px,1.25rem,24px)}.sx__date-grid-event-resize-handle{position:absolute;right:0;height:100%;width:clamp(10px,15px,50%);cursor:ew-resize;z-index:1;touch-action:none}[dir=rtl] .sx__date-grid-event-resize-handle{left:0;right:auto}.sx__date-grid-background-event{position:absolute;height:100%;width:100%;top:0;left:0;z-index:-1}:root{--sx-week-grid-height: 0;--sx-time-axis-height: 0;--sx-week-grid-hour-height: 0;--sx-week-grid-offset-top: 0}.sx__event-modal{visibility:hidden;position:fixed;top:var(--sx-event-modal-top);left:var(--sx-event-modal-left);width:400px;max-width:100%;height:fit-content;background-color:var(--sx-color-background);z-index:2}.sx__event-modal.is-open{animation:slide-sideways;animation-duration:.3s;visibility:initial}.is-dark .sx__event-modal{background-color:var(--sx-color-surface-container-high)}.sx__event-modal-default{padding:var(--sx-spacing-padding6);background-color:var(--sx-color-background);box-shadow:0 24px 38px 3px #00000024,0 9px 46px 8px #0000001f,0 11px 15px -7px #0003;border-radius:var(--sx-rounding-small);max-height:250px;overflow-y:scroll}@keyframes slide-sideways{0%{opacity:0;transform:translate(var(--sx-event-modal-animation-start))}to{transform:translate(0);opacity:1}}.sx__event-modal .sx__event-icon{min-width:16px;min-height:16px;max-width:16px;max-height:16px;margin-inline-end:var(--sx-spacing-padding2)}.sx__event-modal__color-icon{display:inline-block;width:16px;height:16px;border-radius:25%;margin-inline-end:var(--sx-spacing-padding3)}.sx__has-icon{display:grid;align-items:flex-start;grid-template-columns:30px 1fr;margin-bottom:var(--sx-spacing-padding2)}.sx__has-icon .sx__event-icon{margin-top:2px}.sx__has-icon .sx__event-modal__color-icon{margin-top:4px}.sx__event-modal__title{font-size:var(--sx-font-large)}.sx__event-modal__time{font-size:var(--sx-font-small)}.sx__current-time-indicator{position:absolute;left:0;right:0;height:2px;background-color:red;z-index:0}.sx__current-time-indicator:before{content:"";position:absolute;left:-5px;top:-4px;width:10px;height:10px;border-radius:50%;background-color:red}.sx__current-time-indicator-full-week{width:calc(100% - var(--sx-calendar-week-grid-padding-left));position:absolute;inset:0 0 0 var(--sx-calendar-week-grid-padding-left);height:2px;background-color:#ff000061}.weekly-schedule-container{display:grid;grid-template-columns:300px 1fr;gap:24px;margin-top:20px}.course-sidebar{background:#fff;border-radius:12px;padding:20px;box-shadow:0 1px 3px #00000014;border:1px solid #e8eaed;max-height:700px;overflow-y:auto}.course-sidebar h3{margin:0 0 16px;font-size:1rem;font-weight:600;color:#202124}.course-list{display:flex;flex-direction:column;gap:12px}.course-item{padding:12px;border:2px solid transparent;border-radius:10px;background:#fafbfc;cursor:pointer;transition:all .2s ease}.course-item:hover{background:#f8f9fa;border-color:#8ab4f8}.course-item.selected{background:#e8f0fe;border-color:#8ab4f8}.course-item-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:6px;gap:8px}.course-item-header h4{margin:0;font-size:.9rem;font-weight:600;color:#202124;flex:1}.course-badge{background:#8ab4f8;color:#fff;padding:2px 8px;border-radius:8px;font-size:.7rem;font-weight:600;text-transform:uppercase;white-space:nowrap}.course-item-desc{margin:0;font-size:.8rem;color:#5f6368;line-height:1.4}.weekly-calendar{background:#fff;border-radius:12px;padding:20px;box-shadow:0 1px 3px #00000014;border:1px solid #e8eaed;min-height:600px}.week-navigation{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding:12px;background:#f8f9fa;border-radius:8px;border:1px solid #e8eaed}.week-nav-btn{background:#fff;border:1px solid #dadce0;border-radius:6px;padding:8px 16px;font-size:.875rem;font-weight:500;color:#5f6368;cursor:pointer;transition:all .2s ease}.week-nav-btn:hover{background:#f8f9fa;border-color:#8ab4f8;color:#1a73e8}.week-nav-btn:disabled{background:#f5f5f5;border-color:#e8eaed;color:silver;cursor:not-allowed;opacity:.6}.week-nav-btn:disabled:hover{background:#f5f5f5;border-color:#e8eaed;color:silver}.week-range{font-size:1rem;font-weight:600;color:#202124;text-transform:capitalize}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:500px;color:#5f6368}.empty-state svg{margin-bottom:16px;color:#bdc1c6}.empty-state p{font-size:1rem;margin:0}.schedule-grid{display:flex;flex-direction:column}.schedule-header{display:grid;grid-template-columns:80px repeat(6,1fr);gap:0;background:#e8eaed;border-radius:8px 8px 0 0;overflow:hidden;border:1px solid #e8eaed}.time-column-header{background:#f8f9fa;padding:12px 8px;font-weight:600;font-size:.875rem;color:#5f6368;text-align:center;border-right:1px solid #e8eaed}.day-header{background:#f8f9fa;padding:12px 8px;text-align:center;border-right:1px solid #e8eaed}.day-header:last-child{border-right:none}.day-name{font-weight:600;font-size:.875rem;color:#202124;text-transform:capitalize}.day-date{font-size:.75rem;color:#5f6368;margin-top:4px}.schedule-body{display:grid;grid-template-columns:80px repeat(6,1fr);grid-auto-rows:60px;border:1px solid #e8eaed;border-top:none;border-radius:0 0 8px 8px;overflow:hidden;background:#fff}.time-cell{background:#fafbfc;padding:8px 4px;font-size:.8rem;color:#5f6368;text-align:center;border-right:1px solid #e8eaed;border-bottom:1px solid #f1f3f4;display:flex;align-items:flex-start;justify-content:center}.schedule-cell{background:#fff;border-right:1px solid #f1f3f4;border-bottom:1px solid #f1f3f4;position:relative;padding:4px}.schedule-cell:nth-child(7n){border-right:none}.schedule-block{background:#8ab4f8;color:#fff;border-radius:6px;padding:8px;cursor:pointer;transition:all .2s ease;height:100%;display:flex;flex-direction:column;gap:4px;box-shadow:0 1px 3px #0000001a;position:relative;z-index:1}.schedule-block:hover:not(.disabled){background:#669df6;box-shadow:0 2px 6px #00000026;transform:scale(1.02);z-index:10}.schedule-block.disabled{pointer-events:none}.schedule-block.selected{background:#81c995;border:2px solid #5bb974}.schedule-time{font-weight:700;font-size:.75rem}.schedule-teacher{font-size:.75rem;font-weight:500}.schedule-places{font-size:.7rem;opacity:.9;margin-top:auto}.selected-schedule-info{margin-top:24px;padding:20px;background:#e8f5e9;border-radius:12px;border-left:3px solid #81c995;animation:slideInUp .3s ease-out}@keyframes slideInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.selected-schedule-info h3{margin:0 0 16px;color:#2e7d32;font-size:1rem;font-weight:600}.selected-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.info-item{display:flex;flex-direction:column;gap:4px}.info-label{font-size:.8rem;color:#5f6368;font-weight:500}.info-value{font-size:.95rem;color:#202124;font-weight:600}@media(max-width:1024px){.weekly-schedule-container{grid-template-columns:1fr}.course-sidebar{max-height:300px}.schedule-header,.time-row{grid-template-columns:60px repeat(6,1fr)}.time-column-header,.time-cell{font-size:.75rem;padding:8px 4px}.day-name{font-size:.8rem}.day-date{font-size:.7rem}}@media(max-width:768px){.schedule-header,.time-row{grid-template-columns:50px repeat(3,1fr)}.schedule-block{padding:6px;font-size:.7rem}.selected-info-grid{grid-template-columns:1fr}}.start-date-selector{margin:2rem 0;padding:0}.calendar-header{margin-bottom:2rem;text-align:center}.calendar-header h3{margin:0 0 .75rem;font-size:1.5rem;color:#1f2937;font-weight:700}.calendar-description{color:#6b7280;font-size:.9375rem;line-height:1.5;margin:0}.calendar-description strong{color:#47a1bf;font-weight:600}.calendar-container{max-width:650px;margin:0 auto;background:#fff;border-radius:12px;padding:1.75rem;box-shadow:0 2px 8px #00000014;border:1px solid #e5e7eb}.calendar-nav{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #e5e7eb}.current-month{margin:0;font-size:1.375rem;font-weight:700;color:#111827;text-transform:capitalize;text-align:center}.nav-button{background:#f9fafb;border:1px solid #d1d5db;border-radius:6px;padding:.5rem 1rem;font-size:.875rem;font-weight:600;color:#374151;cursor:pointer;transition:all .15s ease}.nav-button:hover{background:#fff;border-color:#47a1bf;color:#47a1bf}.date-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px 8px;margin-bottom:1rem}.date-calendar-weekdays{display:contents}.date-calendar-weekdays div{text-align:center;font-weight:600;font-size:.75rem;color:#6b7280;padding:8px 0;margin:0;text-transform:uppercase;letter-spacing:.025em;background:transparent;border:none}.date-calendar-days{display:contents}.date-calendar-day{background:#f9fafb;border-radius:8px;font-size:1rem;font-weight:600;color:#d1d5db;cursor:not-allowed;transition:all .15s ease;display:flex;align-items:center;justify-content:center;font-family:inherit;padding:0;margin:0;position:relative;width:100%;aspect-ratio:1;box-shadow:inset 0 0 0 2px #e5e7eb;border:none}.date-calendar-day.other-month{opacity:.3;background:#fafbfc;color:#e5e7eb;box-shadow:inset 0 0 0 2px #f3f4f6}.date-calendar-day.available{background:#fff;color:#111827;cursor:pointer;font-weight:700;box-shadow:inset 0 0 0 2px #47a1bf}.date-calendar-day.available:hover{background:#eff6ff}.date-calendar-day.selected{background:#47a1bf;color:#fff;font-weight:700;box-shadow:inset 0 0 0 2px #47a1bf}.date-calendar-day.selected:hover{background:#3b8ca8}.date-calendar-day.past{opacity:.3;cursor:not-allowed;background:#fafbfc;color:#e5e7eb;box-shadow:inset 0 0 0 2px #f3f4f6}.date-calendar-day.class-date{background:linear-gradient(135deg,#10b981,#059669);color:#fff;cursor:default;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.25rem;font-weight:600;box-shadow:inset 0 0 0 2px #10b981}.date-calendar-day.start-date{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;font-weight:700;box-shadow:inset 0 0 0 2px #f59e0b,0 4px 12px #f59e0b66}.date-calendar-day .day-number{font-size:1rem}.date-calendar-day .class-badge{font-size:.65rem;font-weight:600;background:#ffffff4d;padding:.1rem .3rem;border-radius:4px;white-space:nowrap}.date-calendar-day:disabled{cursor:not-allowed}.selected-date-info{margin-top:1.25rem;padding:1rem 1.25rem;background:#eff6ff;border-radius:8px;border:1px solid #47a1bf;text-align:center;color:#111827;font-size:.9375rem;font-weight:600}.selected-date-info strong{color:#47a1bf;text-transform:capitalize;font-weight:700}.loading-dates,.error-dates,.no-dates-message{text-align:center;padding:2.5rem 2rem;color:#6b7280}.loading-dates .spinner{border:3px solid #f3f4f6;border-top:3px solid #47a1bf;border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite;margin:0 auto 1rem}.loading-dates p{font-size:.9375rem;font-weight:600;color:#374151}.error-dates{color:#dc2626;background:#fee2e2;border-radius:8px;padding:1.5rem;border:1px solid #ef4444;font-weight:600}.no-dates-message{background:#fef3c7;color:#92400e;border-radius:8px;padding:1.5rem;border:1px solid #fbbf24;margin-top:1rem;font-weight:600}.calendar-legend{display:flex;gap:1.5rem;justify-content:center;margin-top:1.5rem;padding-top:1.5rem;border-top:2px solid #e9ecef}.legend-item{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:#495057}.legend-color{width:20px;height:20px;border-radius:4px;border:2px solid #dee2e6}.legend-color.start-date-color{background:linear-gradient(135deg,#f59e0b,#d97706);border-color:#f59e0b}.legend-color.class-date-color{background:linear-gradient(135deg,#10b981,#059669);border-color:#10b981}.legend-text{font-weight:500}.info-message{text-align:center;color:#6b7280;font-size:.9375rem;margin:1rem 0;font-weight:500}.calendar-placeholder{display:flex;justify-content:center;align-items:center;padding:3rem;background:#f9fafb;border-radius:12px;border:2px dashed #d1d5db;margin:2rem 0}@media(max-width:768px){.start-date-selector{padding:0}.calendar-container{padding:1.25rem;max-width:100%}.calendar-nav{flex-direction:column;gap:.75rem;margin-bottom:1.25rem}.current-month{font-size:1.25rem}.nav-button{width:100%;padding:.625rem 1rem}.date-calendar-grid{gap:6px 6px}.date-calendar-weekdays div{font-size:.6875rem;padding:6px 0;margin:0}.date-calendar-day{font-size:.875rem;border-radius:6px}.calendar-header h3{font-size:1.25rem}.calendar-description{font-size:.875rem}.selected-date-info{font-size:.875rem;padding:.875rem 1rem}}.editable-class-list{margin-top:3rem;background:#fff;border-radius:16px;padding:2rem;box-shadow:0 8px 24px #00000014;border:2px solid #e9ecef}.list-header{text-align:center;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:2px solid #e9ecef}.list-header h3{margin:0 0 .5rem;font-size:1.5rem;color:#2c3e50;font-weight:700}.list-description{margin:0;color:#6c757d;font-size:.9rem}.duplicate-warning-banner{display:flex;align-items:flex-start;gap:1rem;padding:1.25rem;margin-bottom:1.5rem;background:linear-gradient(135deg,#fff5f5,#ffe5e5);border:2px solid #dc3545;border-radius:12px;box-shadow:0 4px 12px #dc354533;animation:slideDown .3s ease}.warning-icon{font-size:2rem;flex-shrink:0;animation:pulse 2s infinite}.warning-content{flex:1}.warning-content strong{display:block;color:#dc3545;font-size:1.1rem;margin-bottom:.5rem}.warning-content p{margin:0;color:#721c24;font-size:.95rem;line-height:1.5}.class-items{display:flex;flex-direction:column;gap:1rem}.class-item{border:2px solid #e9ecef;border-radius:12px;overflow:hidden;transition:all .3s ease;background:#fff}.class-item.expanded{border-color:#667eea;box-shadow:0 4px 16px #667eea33}.class-item.duplicate{border-color:#dc3545;background:#fff5f5;box-shadow:0 4px 16px #dc354533}.class-item.duplicate .class-item-header{background:linear-gradient(135deg,#fff5f5,#ffe5e5)}.class-item-header{display:flex;align-items:center;gap:1rem;padding:1.25rem;background:#f8f9fa;transition:background .3s ease}.class-item.expanded .class-item-header{background:linear-gradient(135deg,#f0f2ff,#fff)}.class-number{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.number-badge{display:inline-flex;align-items:center;justify-content:center;min-width:90px;padding:.5rem .75rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:8px;font-weight:700;font-size:.9rem;box-shadow:0 2px 6px #667eea4d}.first-class-badge{padding:.25rem .5rem;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;border-radius:6px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.duplicate-badge{padding:.25rem .5rem;background:linear-gradient(135deg,#dc3545,#c82333);color:#fff;border-radius:6px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.class-date{display:flex;align-items:center;gap:.5rem;flex:1;color:#2c3e50;font-weight:600;font-size:1rem}.date-icon{font-size:1.25rem}.date-text{text-transform:capitalize}.change-date-btn{display:flex;align-items:center;gap:.5rem;padding:.65rem 1.25rem;background:#fff;border:2px solid #667eea;border-radius:8px;color:#667eea;font-weight:700;font-size:.9rem;cursor:pointer;transition:all .2s ease;font-family:inherit;white-space:nowrap}.change-date-btn:hover{background:#667eea;color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.class-item.expanded .change-date-btn{background:#dc3545;border-color:#dc3545;color:#fff}.class-item.expanded .change-date-btn:hover{background:#c82333;border-color:#c82333}.btn-icon{font-size:1rem}.date-selector{padding:1.5rem;background:#fff;border-top:2px solid #e9ecef;animation:slideDown .3s ease}@keyframes slideDown{0%{opacity:0;max-height:0;padding:0 1.5rem}to{opacity:1;max-height:1000px;padding:1.5rem}}.selector-title{margin:0 0 1rem;color:#495057;font-weight:600;font-size:.95rem}.available-dates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.75rem;max-height:300px;overflow-y:auto;padding:.5rem 0}.date-option{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.85rem;background:#f8f9fa;border:2px solid #dee2e6;border-radius:8px;cursor:pointer;transition:all .2s ease;font-family:inherit;font-size:.9rem;font-weight:600;color:#495057}.date-option:hover:not(:disabled){background:#e7f3ff;border-color:#667eea;transform:translateY(-2px);box-shadow:0 4px 12px #667eea33}.date-option.current{background:linear-gradient(135deg,#10b981,#059669);border-color:#10b981;color:#fff}.date-option:disabled{opacity:.4;cursor:not-allowed}.date-option-text{text-transform:capitalize}.current-badge{font-size:.7rem;padding:.2rem .4rem;background:#ffffff4d;border-radius:4px;text-transform:uppercase;letter-spacing:.5px}.list-footer{display:flex;align-items:center;gap:.75rem;margin-top:2rem;padding:1rem 1.25rem;background:linear-gradient(135deg,#e7f3ff,#fff);border-radius:8px;border:1px solid #667eea}.footer-icon{font-size:1.5rem;flex-shrink:0}.footer-text{margin:0;color:#495057;font-size:.85rem;line-height:1.5}.available-dates-grid::-webkit-scrollbar{width:8px}.available-dates-grid::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.available-dates-grid::-webkit-scrollbar-thumb{background:#667eea;border-radius:4px}.available-dates-grid::-webkit-scrollbar-thumb:hover{background:#5568d3}@media(max-width:768px){.editable-class-list{padding:1.5rem}.class-item-header{flex-direction:column;align-items:stretch;gap:.75rem}.class-number{justify-content:space-between}.class-date{justify-content:center}.change-date-btn{width:100%;justify-content:center}.available-dates-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.5rem}.list-header h3{font-size:1.25rem}.list-footer{flex-direction:column;text-align:center}}.multi-course-preview-section{margin-top:32px;padding:24px;background:#f9fafb;border:2px solid #e5e7eb;border-radius:16px;box-shadow:0 2px 8px #0000000d}.preview-header{margin-bottom:24px}.preview-header h3{margin:0 0 8px;font-size:20px;color:#111827;font-weight:700}.preview-description{margin:0;font-size:14px;color:#6b7280;line-height:1.5}.loading-preview{text-align:center;padding:40px;color:#666}.loading-preview .spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #667eea;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 16px}.courses-preview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;margin-bottom:24px}.course-preview-card{background:#fff;border:2px solid #e5e7eb;border-radius:12px;padding:20px;transition:all .2s ease}.course-preview-card:hover{border-color:#d1d5db;box-shadow:0 4px 12px #00000014}.course-preview-header{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:12px;border-bottom:2px solid #f3f4f6}.course-preview-color{width:4px;height:40px;border-radius:4px;flex-shrink:0}.course-preview-info{flex:1;min-width:0}.course-preview-info h4{margin:0 0 4px;font-size:16px;font-weight:700;color:#111827}.course-preview-info p{margin:0;font-size:13px;color:#6b7280}.course-preview-count{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:6px 12px;border-radius:20px;font-size:12px;font-weight:600;flex-shrink:0}.course-dates-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:8px}.date-chip{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#f3f4f6;border-radius:8px;font-size:13px;transition:all .2s ease}.date-chip:hover:not(.more){background:#e5e7eb;transform:translateY(-2px)}.date-chip.more{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;justify-content:center;font-weight:600}.date-number{width:20px;height:20px;background:#667eea;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex-shrink:0}.date-text{color:#374151;font-weight:600;font-size:12px;text-transform:capitalize}.change-dates-checkbox-container{margin:24px 0;padding:16px;background:#fff;border:2px solid #e5e7eb;border-radius:12px}.change-dates-checkbox-label{display:flex;align-items:center;gap:12px;cursor:pointer;-webkit-user-select:none;user-select:none}.checkbox-text{font-size:15px;color:#374151;font-weight:500}.dates-editor-section{margin-top:24px;padding:24px;background:#fff;border:2px solid #667eea;border-radius:12px}.editor-title{margin:0 0 8px;font-size:18px;color:#111827;font-weight:700}.editor-description{margin:0 0 20px;font-size:14px;color:#6b7280;line-height:1.5}.course-editor-card{margin-bottom:24px;padding:20px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px}.course-editor-card:last-child{margin-bottom:0}.course-editor-header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.course-editor-color{width:4px;height:24px;border-radius:4px;flex-shrink:0}.course-editor-header h5{margin:0;font-size:16px;color:#111827;font-weight:700}.validation-error{margin-top:16px;padding:12px 16px;background:#fee2e2;border:2px solid #ef4444;border-radius:8px;color:#991b1b;font-size:14px;font-weight:600;text-align:center}@media(max-width:768px){.multi-course-preview-section{padding:16px}.courses-preview-grid{grid-template-columns:1fr;gap:16px}.course-dates-list{grid-template-columns:repeat(auto-fill,minmax(80px,1fr))}.preview-header h3{font-size:18px}.dates-editor-section{padding:16px}.editor-title{font-size:16px}.date-chip{font-size:12px;padding:6px 10px}}.schedule-selector-layout{display:flex;flex-direction:column;gap:24px;margin:20px 0}.courses-sidebar{background-color:#f8f9fa;border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000001a}.sidebar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.sidebar-header h3{margin:0;font-size:18px;color:#2c3e50;font-weight:700}.filter-actions{display:flex;gap:8px;flex-direction:row}.filter-btn{padding:8px 12px;border:1px solid #dee2e6;border-radius:6px;background:#fff;cursor:pointer;font-size:12px;font-weight:500;transition:all .2s;color:#495057}.filter-btn:hover{background:#e9ecef;border-color:#adb5bd}.courses-list{display:flex;flex-direction:row;flex-wrap:wrap;gap:12px}.selected-course-display{display:flex;flex-direction:column;gap:8px;max-height:300px;overflow-y:auto;padding-right:4px}.selected-course-display::-webkit-scrollbar{width:6px}.selected-course-display::-webkit-scrollbar-track{background:#f1f1f1;border-radius:10px}.selected-course-display::-webkit-scrollbar-thumb{background:#10b981;border-radius:10px}.selected-course-display::-webkit-scrollbar-thumb:hover{background:#059669}.selected-course-item{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#fff;border-radius:10px;border:2px solid #10b981;box-shadow:0 2px 6px #10b98126;transition:all .2s ease}.selected-course-item:hover{transform:translate(4px);box-shadow:0 3px 10px #10b98140}.courses-list::-webkit-scrollbar{display:none}.course-item{display:flex;align-items:center;gap:8px;padding:10px 16px;background:#fff;border-radius:20px;cursor:pointer;transition:all .2s;border:2px solid transparent;box-shadow:0 1px 3px #0000000d;white-space:nowrap}.course-item:hover{transform:translateY(-2px);box-shadow:0 3px 8px #0000001f}.course-item.active{border-color:#667eea;background:#f0f2ff;box-shadow:0 2px 6px #667eea33}.course-item input[type=checkbox]{display:none}.course-color-indicator{width:20px;height:20px;border-radius:4px;flex-shrink:0;box-shadow:0 2px 4px #0003}.course-item-name{font-size:14px;font-weight:600;color:#2c3e50}.course-item:not(.active) .course-color-indicator{opacity:.4;filter:grayscale(50%)}.course-item:not(.active) .course-item-name{opacity:.5;text-decoration:line-through;color:#6c757d}.schedule-grid-wrapper{width:100%}.grid-calendar-container{background-color:#f8f9fa;border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000001a}.grid-calendar{display:flex;flex-direction:column;gap:2px}.grid-header{display:grid;grid-template-columns:100px repeat(6,1fr);gap:2px}.time-header{background-color:#e8e8e8}.day-header{background-color:#9e9e9e;color:#fff;font-weight:700;text-align:center;padding:12px 8px;font-size:14px;text-transform:uppercase}.grid-row{display:grid;grid-template-columns:100px repeat(6,1fr);gap:2px}.time-cell{background-color:#bdbdbd;color:#333;font-weight:600;padding:15px 10px;display:flex;align-items:center;justify-content:center;font-size:13px;min-height:80px}.grid-cell{background-color:#e0e0e0;min-height:80px;padding:4px;display:flex;flex-direction:column;gap:4px}.course-block{padding:8px 6px;border-radius:4px;cursor:pointer;transition:all .2s ease;flex:1;display:flex;align-items:center;justify-content:center;min-height:30px}.course-block:hover{transform:scale(1.02);box-shadow:0 2px 8px #0000004d}.course-block.selected{outline:3px solid #2ecc71;outline-offset:-3px;box-shadow:0 0 10px #2ecc7180}.course-name{color:#fff;font-weight:700;font-size:11px;text-align:center;text-transform:uppercase;text-shadow:0 1px 2px rgba(0,0,0,.3)}.selected-badge{position:absolute;top:2px;right:2px;background:#2ecc71;color:#fff;border-radius:50%;width:18px;height:18px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700}.course-block{position:relative}.selected-schedules-info{background:#fff;border-radius:8px;padding:20px;margin-top:20px;box-shadow:0 2px 8px #0000001a}.selected-schedules-info h3{margin:0 0 16px;font-size:16px;color:#333;font-weight:600}.selected-list{display:flex;flex-direction:column;gap:12px}.selected-item{display:flex;align-items:center;justify-content:space-between;padding:12px;background:#f9f9f9;border-radius:6px;border-left:4px solid #ccc;transition:all .2s}.selected-item:hover{background:#f0f0f0;box-shadow:0 2px 4px #0000001a}.selected-item-content{display:flex;align-items:center;gap:12px;flex:1;flex-wrap:wrap}.course-badge{padding:4px 10px;border-radius:4px;color:#fff;font-weight:600;font-size:12px;text-transform:uppercase}.schedule-day,.schedule-time,.schedule-teacher,.schedule-capacity{font-size:13px;color:#555}.schedule-day{font-weight:600;color:#333}.schedule-capacity{color:#666;font-size:12px}.remove-btn{background:#e74c3c;color:#fff;border:none;border-radius:50%;width:28px;height:28px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;font-size:16px;font-weight:700;flex-shrink:0}.remove-btn:hover{background:#c0392b;transform:scale(1.1)}.selected-schedule-info{background:#fff;border-radius:8px;padding:16px;margin-top:20px;max-width:320px;box-shadow:0 2px 8px #0000001a}.selected-schedule-info h3{margin:0 0 12px;font-size:14px;color:#333;font-weight:600}.selected-info-grid{display:flex;flex-direction:column;gap:8px}.info-item{display:flex;justify-content:space-between;padding-bottom:8px;border-bottom:1px solid #f0f0f0}.info-item:last-child{border-bottom:none;padding-bottom:0}.info-label{font-size:13px;color:#666}.info-value{font-weight:600;font-size:13px;color:#333}.available-dates-section{margin-top:20px;padding:16px;background:#f9f9f9;border-radius:8px}.available-dates-section h4{margin:0 0 12px;font-size:14px;color:#333;font-weight:600}.dates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px;margin-top:12px}.date-card{padding:12px;background:#fff;border:2px solid #e0e0e0;border-radius:8px;text-align:center;transition:all .2s;cursor:pointer;position:relative}.date-card:hover:not(.full){border-color:#3498db;transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.date-card.selected{border-color:#2ecc71;background:#d1fae5;box-shadow:0 0 10px #2ecc714d}.date-card.full{opacity:.5;background:#fee2e2;cursor:not-allowed}.date-label{font-weight:600;font-size:14px;margin-bottom:8px;color:#333;text-transform:capitalize}.date-availability{font-size:12px;color:#666}.date-availability .available{color:#2ecc71;font-weight:600}.date-availability .full-text{color:#e74c3c;font-weight:600}.selected-check{display:block;margin-top:8px;color:#2ecc71;font-size:18px;font-weight:700}.loading-dates{text-align:center;padding:20px;color:#666;font-size:14px}.no-dates{text-align:center;padding:20px;color:#999;font-size:14px;font-style:italic}.preview-dates-section{margin-top:30px;padding:24px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000001a}.course-info-compact{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:1rem;margin-bottom:1.5rem;display:flex;flex-direction:column;gap:.75rem}.course-info-compact .info-row{display:flex;align-items:center;gap:.5rem}.course-info-compact .info-label{font-size:.8125rem;color:#6b7280;font-weight:500;min-width:80px}.course-info-compact .info-value{font-size:.875rem;color:#111827;font-weight:600}.preview-dates-section h3{margin:0 0 1.5rem;font-size:1.25rem;color:#111827;font-weight:700}.preview-description{margin:0 0 1.5rem;font-size:.875rem;color:#6b7280;line-height:1.6}.loading-preview{text-align:center;padding:20px;color:#666;font-size:14px;font-style:italic}.preview-dates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:12px;margin-top:16px}.preview-date-card{background:#fff;border-radius:8px;padding:12px;text-align:center;box-shadow:0 2px 6px #00000014;transition:all .2s;border:2px solid transparent}.preview-date-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026;border-color:#3498db}.date-number{width:28px;height:28px;background:#3498db;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;margin:0 auto 8px}.date-info{font-size:13px;color:#333;font-weight:600;text-transform:capitalize}.no-preview{text-align:center;padding:20px;color:#999;font-size:14px;font-style:italic}@media(max-width:1024px){.schedule-selector-layout{grid-template-columns:1fr;gap:20px}.courses-sidebar{position:static;max-height:300px;overflow-y:auto}.courses-list{max-height:200px}}@media(max-width:900px){.grid-header,.grid-row{grid-template-columns:80px repeat(6,1fr)}.time-cell{font-size:11px;padding:10px 5px}.day-header{font-size:11px;padding:8px 4px}.course-name{font-size:9px}.sidebar-header h3{font-size:16px}.course-item-name{font-size:13px}}@media(max-width:600px){.grid-calendar-container{padding:10px;overflow-x:auto}.grid-calendar{min-width:600px}.courses-sidebar{padding:15px}.filter-actions{flex-direction:row}.filter-btn{font-size:11px;padding:6px 10px}}.selection-counter{background:#3498db;color:#fff;padding:4px 12px;border-radius:20px;font-size:14px;font-weight:600;margin-left:8px}.course-block.selected.multi-select{border:3px solid #2ecc71;box-shadow:0 4px 12px #2ecc7166;transform:scale(1.05);font-weight:700;position:relative;z-index:2}.course-block.selected.multi-select:after{content:"✓";position:absolute;top:-8px;right:-8px;background:#2ecc71;color:#fff;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;box-shadow:0 2px 6px #0003}.grid-cell.cell-occupied{background:#2ecc710d;border:1px dashed #2ecc71;border-radius:4px}.course-block.multi-select{transition:all .3s cubic-bezier(.4,0,.2,1)}.course-block:not(.selected):hover{transform:scale(1.03);box-shadow:0 2px 8px #00000026;z-index:1}@media(max-width:768px){.selection-counter{font-size:12px;padding:3px 10px}.course-block.selected.multi-select:after{width:20px;height:20px;font-size:12px;top:-6px;right:-6px}}.selection-summary-card{background:#fff;border:2px solid #e5e7eb;border-radius:16px;padding:24px;margin-bottom:24px;box-shadow:0 2px 8px #0000000d}.selection-summary-card h3{margin:0 0 20px;font-size:18px;color:#111827;font-weight:700}.summary-courses{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;margin-bottom:20px}.summary-course-item{display:flex;align-items:flex-start;gap:12px;padding:16px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;transition:all .2s ease}.summary-course-item:hover{background:#f3f4f6;box-shadow:0 2px 6px #00000014}.summary-course-item .course-color{width:4px;height:60px;border-radius:4px;flex-shrink:0}.summary-course-details{flex:1;min-width:0}.summary-course-details strong{display:block;font-size:16px;color:#111827;margin-bottom:6px}.summary-course-details p{margin:0 0 4px;font-size:14px;color:#6b7280}.start-date-small{font-size:13px;color:#9ca3af;font-style:italic}.summary-total{padding:16px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:12px;text-align:center;font-size:16px}.summary-total strong{font-size:18px;font-weight:700}@media(max-width:768px){.selection-summary-card{padding:16px}.summary-courses{grid-template-columns:1fr;gap:12px}.summary-course-details strong{font-size:15px}.summary-course-details p{font-size:13px}}.course-summary-item-payment{padding:12px 0}.course-summary-item-payment:first-child{padding-top:0}.course-summary-item-payment:last-child{padding-bottom:0}.course-divider{height:1px;background:#e5e7eb;margin:16px 0}@media(max-width:768px){.course-summary-item-payment{padding:10px 0}.course-divider{margin:12px 0}}.simplified-step{max-width:800px;margin:0 auto;padding:2rem 1rem;transition:max-width .3s ease}.simplified-step.calendar-expanded{max-width:1400px}.step-progress{text-align:center;font-size:.9rem;color:#6b7280;font-weight:600;margin-bottom:1.5rem;text-transform:uppercase;letter-spacing:1px}.step-title{text-align:center;font-size:2rem;font-weight:700;color:#1f2937;margin:0 0 3rem;line-height:1.2}.techniques-grid-simple{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1.5rem;margin-bottom:2rem}.technique-card-simple{background:#fff;border:3px solid #e5e7eb;border-radius:16px;padding:2rem 1.5rem;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;cursor:pointer;transition:all .3s ease;position:relative;min-height:180px}.technique-card-simple:hover{border-color:#47a1bf;box-shadow:0 8px 20px #47a1bf26;transform:translateY(-4px)}.technique-card-simple.selected{border-color:#47a1bf;background:linear-gradient(135deg,#f0f9fb,#fff);box-shadow:0 8px 24px #47a1bf40}.technique-icon-large{font-size:4rem;line-height:1}.technique-name-large{font-size:1.25rem;font-weight:600;color:#1f2937;margin:0;text-align:center}.selected-checkmark{position:absolute;top:12px;right:12px;width:32px;height:32px;background:linear-gradient(135deg,#47a1bf,#5ca1a9);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:700;animation:popIn .3s ease}@keyframes popIn{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}.hint-text{text-align:center;color:#6b7280;font-size:.95rem;margin:1rem 0 2rem;font-style:italic}.step-actions-center{display:flex;justify-content:center;gap:1rem;margin-top:2rem}.btn-primary-large{padding:1rem 3rem;background:linear-gradient(135deg,#47a1bf,#5ca1a9);color:#fff;border:none;border-radius:12px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #47a1bf4d;min-width:200px}.btn-primary-large:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 16px #47a1bf66}.btn-primary-large:disabled{opacity:.5;cursor:not-allowed}.btn-secondary-large{padding:1rem 3rem;background:#fff;color:#47a1bf;border:2px solid #47a1bf;border-radius:12px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;min-width:200px}.btn-secondary-large:hover{background:#f0f9fb;transform:translateY(-2px)}.calendar-section{margin:2rem 0;border-top:1px solid #e5e7eb;padding-top:2rem}.calendar-toggle{width:100%;background:#fff;border:2px solid #cbd5e1;border-radius:12px;padding:1rem 1.5rem;display:flex;justify-content:space-between;align-items:center;cursor:pointer;font-size:1rem;font-weight:600;color:#1f2937;transition:all .2s ease;box-shadow:0 2px 8px #0000000a}.calendar-toggle:hover{border-color:#47a1bf;background:#f8fafc;box-shadow:0 4px 12px #47a1bf1f;transform:translateY(-1px)}.toggle-icon{font-size:.75rem;color:#6b7280;transition:transform .3s ease}.calendar-content{margin-top:1.5rem;padding:1.5rem;background:#f8fafc;border-radius:12px;border:2px solid #cbd5e1;animation:slideDown .3s ease;overflow:hidden;box-shadow:0 4px 12px #0000000d}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.calendar-note{font-size:.85rem;color:#475569;margin:0 0 1.2rem;text-align:center;padding:.75rem 1rem;background:#fff;border-radius:8px;border-left:4px solid #47a1bf;font-weight:600;box-shadow:0 1px 3px #0000000d}.calendar-grid{width:100%;display:grid;grid-template-columns:minmax(80px,120px) repeat(6,minmax(0,1fr));gap:1px;grid-auto-flow:dense;background:#cbd5e1;padding:1px;border-radius:8px;overflow:hidden}.calendar-header{display:contents}.day-header{font-size:.75rem;font-weight:700;color:#fff;text-align:center;padding:.6rem;background:linear-gradient(135deg,#47a1bf,#5ca1a9);text-transform:uppercase;letter-spacing:.5px;border:none}.calendar-row{display:contents}.time-cell{font-size:.75rem;color:#1f2937;padding:.6rem .5rem;font-weight:700;display:flex;align-items:center;justify-content:center;background:#e2e8f0;border:none}.slot-cell{background:#fff;border:none;padding:.4rem;font-size:.75rem;text-align:center;color:#6b7280;font-weight:500;min-height:110px;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:.3rem;position:relative;cursor:default}.slot-cell.empty{background:#f8fafc;color:#cbd5e1;cursor:default;align-items:center;justify-content:center;font-size:.7rem;font-weight:600}.slot-cell.multi-course{background:#fff;padding:.3rem;gap:.3rem;display:grid;grid-template-columns:repeat(2,1fr);grid-auto-rows:minmax(auto,1fr);align-items:stretch}.slot-cell.multi-course.one-course{grid-template-columns:1fr;grid-template-rows:1fr}.slot-cell.multi-course.two-courses{grid-template-columns:1fr;grid-template-rows:repeat(2,1fr)}.course-item{padding:.5rem .3rem;border-radius:6px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.2rem;border:2px solid;text-align:center;min-height:55px;max-height:70px;overflow:hidden;cursor:default;pointer-events:none;transition:transform .15s ease;box-shadow:0 1px 3px #00000014}.course-item.unavailable{opacity:.4;filter:grayscale(.5)}.slot-course-name{font-size:.7rem;font-weight:700;line-height:1.2;text-align:center;width:100%;word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;letter-spacing:.02em}.availability-indicator{display:flex;align-items:center;justify-content:center;gap:.25rem;flex-shrink:0}.availability-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.availability-dot.available{background:#10b981;box-shadow:0 0 0 1px #10b9814d}.availability-dot.limited{background:#f59e0b;box-shadow:0 0 0 1px #f59e0b4d}.availability-dot.unavailable{background:#9ca3af;box-shadow:0 0 0 1px #9ca3af4d}.availability-text{font-size:.65rem;font-weight:500;color:#6b7280;white-space:nowrap}@media(max-width:640px){.simplified-step{padding:1.5rem 1rem}.simplified-step.calendar-expanded{max-width:100%;padding:1.5rem .5rem}.step-title{font-size:1.5rem;margin-bottom:2rem}.techniques-grid-simple{grid-template-columns:repeat(2,1fr);gap:1rem}.technique-card-simple{padding:1.5rem 1rem;min-height:150px}.technique-icon-large{font-size:3rem}.technique-name-large{font-size:1rem}.btn-primary-large,.btn-secondary-large{width:100%;min-width:auto}.step-actions-center{flex-direction:column}.calendar-section{margin:2rem 0;padding-top:2rem}.calendar-grid{grid-template-columns:minmax(80px,100px) repeat(6,minmax(0,1fr));gap:.3rem}.calendar-content{padding:1rem}.time-cell{font-size:.75rem}.day-header{font-size:.7rem;padding:.5rem .3rem}.slot-cell{padding:.3rem;min-height:120px}.slot-cell.multi-course{padding:.25rem;gap:.25rem}.slot-cell.multi-course.one-course{grid-template-columns:1fr;grid-template-rows:1fr}.slot-cell.multi-course.two-courses{grid-template-columns:1fr;grid-template-rows:repeat(2,1fr)}.course-item{padding:.4rem;gap:.25rem;min-height:50px}.slot-course-name{font-size:.65rem}.availability-text{font-size:.6rem}.availability-dot{width:6px;height:6px}}.step-subtitle{text-align:center;color:#64748b;font-size:1.125rem;margin:-1rem 0 2.5rem;font-weight:500}.quantity-selector-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;max-width:1000px;margin:0 auto 3rem;padding:0 1rem}.quantity-card{background:#fff;border:3px solid #cbd5e1;border-radius:16px;padding:2rem;display:flex;gap:1.5rem;cursor:pointer;transition:all .25s ease;box-shadow:0 2px 8px #0000000f;position:relative}.quantity-card:hover{border-color:#47a1bf;box-shadow:0 6px 20px #47a1bf26;transform:translateY(-4px)}.quantity-card.quantity-selected{border-color:#47a1bf;border-width:4px;background:linear-gradient(135deg,#e0f2fe,#f0f9fb);box-shadow:0 8px 24px #47a1bf40;transform:translateY(-4px)}.quantity-content{flex:1;display:flex;flex-direction:column;gap:1rem}.quantity-header{display:flex;justify-content:space-between;align-items:center;gap:1rem}.quantity-title{font-size:1.5rem;font-weight:800;color:#1f2937;margin:0}.quantity-card.quantity-selected .quantity-title{color:#47a1bf}.quantity-badge{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;padding:.375rem .875rem;border-radius:20px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;box-shadow:0 2px 6px #f59e0b4d}.quantity-classes{display:flex;align-items:baseline;gap:.75rem;padding:1.25rem;background:linear-gradient(135deg,#f8fafc,#fff);border-radius:12px;border:2px solid #e2e8f0}.quantity-card.quantity-selected .quantity-classes{background:linear-gradient(135deg,#fff,#f0f9fb);border-color:#47a1bf}.quantity-number{font-size:3rem;font-weight:900;color:#47a1bf;line-height:1}.quantity-label{font-size:1.125rem;font-weight:600;color:#475569}.quantity-pricing{display:flex;flex-direction:column;gap:.5rem;padding:1.25rem;background:linear-gradient(135deg,#fafbfc,#fff);border-radius:12px;border:2px solid #e2e8f0}.quantity-card.quantity-selected .quantity-pricing{background:linear-gradient(135deg,#fff,#f0f9fb);border-color:#47a1bf}.quantity-total{display:flex;justify-content:space-between;align-items:center}.quantity-price-label{font-size:.875rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.05em}.quantity-price{font-size:1.75rem;font-weight:900;color:#1f2937}.quantity-card.quantity-selected .quantity-price{color:#47a1bf}.quantity-per-class{font-size:.9375rem;color:#64748b;font-weight:600;text-align:right}.quantity-enrollment{font-size:.9375rem;color:#475569;font-weight:600;padding:.875rem 1.25rem;background:linear-gradient(135deg,#fef3c7,#fde68a);border-radius:8px;border:2px solid #fbbf24;text-align:center}.quantity-description{font-size:.9375rem;color:#64748b;margin:0;font-weight:500;line-height:1.5}@media(max-width:768px){.quantity-selector-container{grid-template-columns:1fr;padding:0}.quantity-card{padding:1.5rem}.quantity-title{font-size:1.25rem}.quantity-number{font-size:2.5rem}.quantity-price{font-size:1.5rem}.quantity-header{flex-direction:column;align-items:flex-start}}.datetime-container{display:grid;grid-template-columns:2fr 1fr;gap:2rem;margin-bottom:3rem;max-width:900px;margin-left:auto;margin-right:auto}.calendar-section,.timeslots-section{background:#fff;border:2px solid #cbd5e1;border-radius:16px;padding:2rem;box-shadow:0 4px 12px #00000014}.section-subtitle{font-size:1.2rem;font-weight:700;color:#1f2937;margin:0 0 1.5rem;text-align:left;padding-bottom:.75rem;border-bottom:2px solid #e2e8f0}.calendar-wrapper-simple{min-height:300px}.timeslots-list{display:flex;flex-direction:column;gap:1rem;margin-bottom:1rem}.timeslot-card{background:#fff;border:3px solid #cbd5e1;border-radius:12px;padding:1.25rem 1.5rem;display:flex;align-items:center;gap:1.25rem;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 6px #0000000f}.timeslot-card:hover{border-color:#47a1bf;box-shadow:0 4px 12px #47a1bf26;transform:translateY(-2px)}.timeslot-card.selected{border-color:#47a1bf;border-width:4px;background:linear-gradient(135deg,#e0f2fe,#f0f9fb);box-shadow:0 6px 16px #47a1bf40;transform:translateY(-2px)}.timeslot-info{display:flex;flex-direction:column;gap:.5rem;flex:1}.timeslot-text{font-size:1.1rem;font-weight:700;color:#1f2937;letter-spacing:.02em}.timeslot-card.selected .timeslot-text{color:#47a1bf}.timeslot-meta{font-size:.875rem;color:#64748b;font-weight:500}.timeslot-card.selected .timeslot-meta{color:#0891b2}.recurrence-info{background:linear-gradient(135deg,#f0f9fb,#fff);border-left:4px solid #47a1bf;padding:1.25rem;border-radius:12px;color:#475569;font-size:1rem;font-weight:600;text-align:center;margin-top:1.5rem;box-shadow:0 2px 8px #47a1bf1a}@media(max-width:768px){.datetime-container{grid-template-columns:1fr;gap:1.5rem}.calendar-section,.timeslots-section{padding:1.25rem}.calendar-wrapper-simple{min-height:250px}}.summary-container-simple{background:#fff;border:2px solid #e5e7eb;border-radius:16px;padding:2rem;margin-bottom:2rem;max-width:600px;margin-left:auto;margin-right:auto}.summary-row{display:grid;grid-template-columns:120px 1fr auto;align-items:center;gap:1rem;padding:1rem 0;border-bottom:1px solid #f3f4f6}.summary-row:last-child{border-bottom:none}.summary-label{font-size:.95rem;font-weight:600;color:#6b7280}.summary-value{font-size:1.05rem;font-weight:700;color:#1f2937}.btn-edit{padding:.5rem 1rem;background:transparent;color:#47a1bf;border:2px solid #47a1bf;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s ease;white-space:nowrap}.btn-edit:hover{background:#47a1bf;color:#fff;transform:translateY(-1px)}.total-price-box{background:linear-gradient(135deg,#47a1bf,#5ca1a9);border-radius:16px;padding:2rem;text-align:center;margin-bottom:2rem;max-width:600px;margin-left:auto;margin-right:auto;box-shadow:0 8px 24px #47a1bf4d}.price-label-large{font-size:1rem;font-weight:600;color:#ffffffe6;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:1px}.price-amount-large{font-size:2.5rem;font-weight:800;color:#fff;line-height:1}@media(max-width:640px){.summary-container-simple{padding:1.5rem}.summary-row{grid-template-columns:1fr;gap:.5rem;padding:1.25rem 0}.summary-label{font-size:.85rem}.summary-value{font-size:1rem;margin-bottom:.5rem}.btn-edit{width:100%}.total-price-box{padding:1.5rem}.price-amount-large{font-size:2rem}}.data-payment-container{max-width:700px;margin:0 auto 3rem;display:flex;flex-direction:column;gap:2rem}.form-section{background:#fff;border:2px solid #e5e7eb;border-radius:16px;padding:2rem}.form-section-title{font-size:1.25rem;font-weight:700;color:#1f2937;margin:0 0 1.5rem}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-label{font-size:.95rem;font-weight:600;color:#374151}.form-input{padding:.875rem 1rem;font-size:1rem;border:2px solid #e5e7eb;border-radius:10px;transition:all .3s ease;font-family:inherit}.form-input:focus{outline:none;border-color:#47a1bf;box-shadow:0 0 0 3px #47a1bf1a}.form-input::placeholder{color:#9ca3af}.form-input.input-error{border-color:#ef4444}.form-input.input-error:focus{box-shadow:0 0 0 3px #ef44441a}.error-message{font-size:.85rem;color:#ef4444;font-weight:600;margin-top:.25rem}.payment-methods-list{display:flex;flex-direction:column;gap:1rem}.payment-method-card{background:#fff;border:3px solid #e5e7eb;border-radius:12px;padding:1.25rem;display:flex;align-items:center;gap:1rem;cursor:pointer;transition:all .3s ease}.payment-method-card:hover{border-color:#47a1bf;box-shadow:0 2px 8px #47a1bf1a}.payment-method-card.selected{border-color:#47a1bf;background:linear-gradient(135deg,#f0f9fb,#fff);box-shadow:0 2px 10px #47a1bf33}.payment-method-icon{font-size:2rem;flex-shrink:0}.payment-method-content{flex:1}.payment-method-name{margin:0 0 .25rem;font-size:1.05rem;font-weight:700;color:#1f2937}.payment-method-description{margin:0;font-size:.9rem;color:#6b7280}@media(max-width:640px){.data-payment-container{max-width:100%}.form-section{padding:1.5rem}.form-grid{grid-template-columns:1fr}.payment-method-card{padding:1rem}.payment-method-icon{font-size:1.75rem}.payment-method-name{font-size:1rem}}.courses-summary{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-radius:12px;padding:1.5rem;margin:1.5rem 0;border:2px solid #0ea5e9}.summary-title{font-size:1.25rem;font-weight:600;margin:0 0 1rem;color:#0c4a6e}.courses-list{display:flex;flex-direction:column;gap:.75rem}.course-summary-card{background:#fff;border-radius:8px;padding:1rem;display:flex;gap:1rem;box-shadow:0 2px 4px #0000000d;border:1px solid #e2e8f0}.course-summary-card.current{border:2px solid #10b981;background:linear-gradient(135deg,#f0fdf4,#dcfce7)}.course-number{background:#0ea5e9;color:#fff;font-weight:600;font-size:.75rem;padding:.25rem .5rem;border-radius:6px;height:fit-content;white-space:nowrap}.course-summary-card.current .course-number{background:#10b981}.course-details{flex:1}.course-details h4{margin:0 0 .25rem;font-size:1rem;font-weight:600;color:#1e293b}.course-details p{margin:0;font-size:.875rem;color:#64748b}.course-schedule{margin-top:.25rem;font-size:.75rem;color:#94a3b8}.course-price{margin-top:.5rem;font-size:1rem;font-weight:700;color:#1e293b}.discount-badge{display:inline-block;background:#10b981;color:#fff;font-size:.75rem;font-weight:600;padding:.125rem .5rem;border-radius:4px;margin-left:.5rem}.total-price-section{margin-top:1.5rem;padding-top:1.5rem;border-top:3px solid #0ea5e9;display:flex;justify-content:space-between;align-items:center;background:#fff;padding:1.5rem;border-radius:8px}.total-label{font-size:1.25rem;font-weight:600;color:#0c4a6e}.total-amount{font-size:2rem;font-weight:700;color:#0ea5e9}@media(max-width:640px){.courses-summary{padding:1rem}.course-summary-card{flex-direction:column}.total-price-section{flex-direction:column;gap:.5rem;text-align:center}.total-amount{font-size:1.75rem}}.simplified-enrollment-container{min-height:100vh;background:linear-gradient(135deg,#f0f9fb,#fff);padding:2rem 0;position:relative}.simplified-enrollment-header{position:fixed;top:1rem;right:1rem;display:flex;gap:.5rem;z-index:100}.simplified-enrollment-content{max-width:1000px;margin:0 auto;padding:0 1rem}.simplified-step{animation:fadeInUp .4s ease}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){.simplified-enrollment-container{padding:1rem 0}.simplified-enrollment-header{top:.5rem;right:.5rem}}.techniques-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;margin:2rem 0}.technique-card{background:#fff;border:3px solid #e5e7eb;border-radius:16px;padding:0;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;display:flex;flex-direction:column}.technique-card:hover{border-color:#cbd5e1;box-shadow:0 8px 24px #0000001f;transform:translateY(-4px)}.technique-card.selected{border-color:#10b981;background:linear-gradient(135deg,#f0fdf4,#fafffe);box-shadow:0 8px 24px #10b98140;transform:translateY(-6px)}.technique-color-bar{height:8px;width:100%}.technique-content{padding:24px;flex:1;display:flex;flex-direction:column;gap:16px}.technique-name{font-size:1.5rem;font-weight:800;color:#1e293b;margin:0;letter-spacing:-.02em;line-height:1.2}.technique-card.selected .technique-name{color:#059669}.technique-info{display:flex;flex-direction:column;gap:10px}.info-item{display:flex;align-items:center;gap:10px;padding:10px 12px;background:#f9fafb;border-radius:8px;transition:all .2s ease}.technique-card.selected .info-item{background:#fff;border:1px solid #d1fae5}.info-icon{font-size:1.25rem;line-height:1}.info-text{font-size:.875rem;color:#475569;font-weight:600;line-height:1.4}.selected-badge{position:absolute;top:16px;right:16px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;padding:8px 16px;border-radius:20px;font-size:.8125rem;font-weight:700;display:flex;align-items:center;gap:6px;box-shadow:0 4px 12px #10b98166;animation:scaleIn .3s cubic-bezier(.34,1.56,.64,1)}@media(max-width:768px){.techniques-grid{grid-template-columns:1fr;gap:16px}.technique-content{padding:20px}.technique-name{font-size:1.25rem}.selected-badge{top:12px;right:12px;padding:6px 12px;font-size:.75rem}}.plan-types-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin:2rem 0}.plan-type-card{background:#fff;border:3px solid #e5e7eb;border-radius:20px;padding:32px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.plan-type-card:before{content:"";position:absolute;top:0;left:0;right:0;height:6px;background:linear-gradient(90deg,#667eea,#764ba2);opacity:0;transition:opacity .3s ease}.plan-type-card:hover{border-color:#cbd5e1;box-shadow:0 12px 32px #0000001f;transform:translateY(-4px)}.plan-type-card:hover:before{opacity:.5}.plan-type-card.selected{border-color:#667eea;background:linear-gradient(135deg,#f0f2ff,#fafbff);box-shadow:0 12px 32px #667eea40;transform:translateY(-6px)}.plan-type-card.selected:before{opacity:1}.plan-type-icon{font-size:4rem;margin-bottom:16px;display:flex;justify-content:center;filter:grayscale(100%);transition:filter .3s ease}.plan-type-card.selected .plan-type-icon,.plan-type-card:hover .plan-type-icon{filter:grayscale(0%)}.plan-type-name{font-size:1.75rem;font-weight:800;color:#1e293b;margin:0 0 12px;text-align:center;letter-spacing:-.02em}.plan-type-card.selected .plan-type-name{color:#667eea}.plan-type-description{font-size:.9375rem;color:#64748b;line-height:1.6;text-align:center;margin:0 0 24px;min-height:48px}.plan-type-features{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.plan-type-feature{display:flex;align-items:flex-start;gap:10px;padding:10px;background:#f9fafb;border-radius:8px;transition:all .2s ease}.plan-type-card.selected .plan-type-feature{background:#fff;border:1px solid #e0e7ff}.plan-type-feature:hover{background:#f3f4f6;transform:translate(4px)}.feature-check{color:#10b981;font-weight:900;font-size:1.125rem;flex-shrink:0}.feature-text{font-size:.875rem;color:#374151;font-weight:500;line-height:1.4}.selected-indicator{position:absolute;top:20px;right:20px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;padding:8px 16px;border-radius:20px;font-size:.8125rem;font-weight:700;display:flex;align-items:center;gap:6px;box-shadow:0 4px 12px #10b98166;animation:scaleIn .3s cubic-bezier(.34,1.56,.64,1)}@keyframes scaleIn{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}.check-icon{font-size:1rem;font-weight:900}@media(max-width:768px){.plan-types-grid{grid-template-columns:1fr;gap:20px}.plan-type-card{padding:24px}.plan-type-icon{font-size:3rem}.plan-type-name{font-size:1.5rem}.plan-type-description{font-size:.875rem;min-height:auto}}.dates-progress-bar{margin:24px 0;padding:16px 20px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;color:#fff}.progress-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.progress-text{font-size:15px;font-weight:600}.progress-percentage{font-size:20px;font-weight:700}.progress-track{width:100%;height:8px;background:#ffffff4d;border-radius:10px;overflow:hidden}.progress-fill{height:100%;background:#fff;border-radius:10px;transition:width .4s ease;box-shadow:0 0 10px #ffffff80}.multi-course-calendars{display:flex;flex-direction:column;gap:24px;margin:24px 0}.course-calendar-card{background:#fff;border:2px solid #e0e0e0;border-radius:16px;padding:24px;transition:all .3s ease;box-shadow:0 2px 8px #0000000d}.course-calendar-card:hover{box-shadow:0 6px 20px #0000001a;border-color:#ccc}.course-calendar-card.has-date{border-color:#2ecc71;background:linear-gradient(to bottom,#fff,#f0fdf4)}.course-calendar-header{display:flex;align-items:center;gap:16px;margin-bottom:20px;padding-bottom:16px;border-bottom:2px solid #f0f0f0}.course-number{width:36px;height:36px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:16px;flex-shrink:0}.course-color-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0}.course-info{flex:1;min-width:0}.course-title{margin:0 0 4px;font-size:18px;font-weight:700;color:#333}.schedule-info{margin:0;font-size:14px;color:#666}.date-selected-badge{width:32px;height:32px;background:#2ecc71;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;flex-shrink:0;box-shadow:0 2px 8px #2ecc7166}.calendar-wrapper{margin-top:16px}.loading-calendar,.error-calendar{padding:40px;text-align:center;color:#666}.loading-calendar .spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #3498db;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 16px}.error-calendar{color:#e74c3c}.date-confirmation{margin-top:16px;padding:12px 16px;background:#d1fae5;border:2px solid #2ecc71;border-radius:8px;color:#065f46;font-size:14px;font-weight:600;text-align:center}.date-confirmation strong{color:#047857}.dates-summary{margin:32px 0;padding:24px;background:#f8f9fa;border-radius:12px;border-left:4px solid #3498db}.dates-summary h4{margin:0 0 16px;font-size:16px;color:#333}.dates-summary-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}.date-summary-item{display:flex;align-items:center;gap:12px;padding:12px;background:#fff;border-radius:8px;font-size:14px}.summary-color-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0}.summary-course{font-weight:600;color:#333;min-width:150px}.summary-separator{color:#999}.summary-date{color:#666;text-transform:capitalize}.incomplete-warning{margin-top:16px;padding:12px 16px;background:#fff3cd;border:2px solid #ffc107;border-radius:8px;color:#856404;font-size:14px;text-align:center}@media(max-width:768px){.course-calendar-card{padding:16px}.course-calendar-header{flex-wrap:wrap;gap:12px}.course-number{width:32px;height:32px;font-size:14px}.course-title{font-size:16px}.schedule-info{font-size:13px}.dates-summary{padding:16px}.date-summary-item{flex-wrap:wrap;gap:8px}.summary-course{min-width:0;flex:1 0 100%}.progress-text{font-size:14px}.progress-percentage{font-size:18px}}.final-summary-container{display:flex;flex-direction:column;gap:1.5rem;margin-top:1.5rem}.final-summary-section{background:#fff;border-radius:12px;border:2px solid #e9ecef;padding:1.5rem;transition:all .3s ease}.final-summary-section:hover{border-color:#667eea;box-shadow:0 4px 12px #667eea26}.final-summary-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:2px solid #f1f3f5}.final-summary-title{display:flex;align-items:center;gap:.75rem}.final-summary-title h3{margin:0;font-size:1.25rem;color:#2c3e50;font-weight:700}.final-summary-icon{font-size:1.75rem}.edit-button{padding:.5rem 1rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s ease}.edit-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.final-summary-content{margin-top:1rem}.techniques-list{display:flex;flex-wrap:wrap;gap:.75rem}.technique-item{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#f8f9fa;border-radius:20px;font-weight:600;color:#2c3e50}.technique-color{width:16px;height:16px;border-radius:50%;flex-shrink:0}.technique-name{font-size:.95rem}.plan-info{display:flex;flex-direction:column;gap:1rem}.plan-type-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:20px;font-weight:700;font-size:.95rem;align-self:flex-start}.plan-details-summary h4{margin:0 0 .5rem;font-size:1.25rem;color:#2c3e50;font-weight:700}.plan-description-summary{margin:0 0 1rem;color:#6c757d;font-size:.95rem;line-height:1.5}.plan-features-summary{display:flex;flex-wrap:wrap;gap:1rem}.feature-item{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#f0f2ff;border-radius:8px;color:#667eea;font-weight:600;font-size:.9rem}.feature-icon{font-size:1.1rem}.schedules-list{display:flex;flex-direction:column;gap:1rem}.schedule-item{display:flex;align-items:flex-start;gap:1rem;padding:1rem;background:#f8f9fa;border-radius:10px;border:2px solid #e9ecef;transition:all .3s ease}.schedule-item:hover{border-color:#667eea;background:#fff}.schedule-number{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:50%;font-weight:700;font-size:.9rem;flex-shrink:0}.schedule-color{width:24px;height:24px;border-radius:50%;flex-shrink:0}.schedule-details{flex:1}.schedule-details h4{margin:0 0 .5rem;font-size:1.1rem;color:#2c3e50;font-weight:700}.schedule-info-row{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;margin-bottom:.5rem}.schedule-day{display:inline-flex;align-items:center;padding:.25rem .75rem;background:#fff;border:2px solid #667eea;border-radius:6px;color:#667eea;font-weight:600;font-size:.85rem}.schedule-teacher{color:#6c757d;font-size:.9rem}.schedule-start-date{color:#2c3e50;font-size:.9rem;margin-top:.5rem}.schedule-start-date strong{color:#667eea}.price-breakdown{display:flex;flex-direction:column;gap:.75rem}.price-row{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:#f8f9fa;border-radius:8px}.price-label{font-size:.95rem;color:#2c3e50;font-weight:600}.price-value{font-size:1.1rem;font-weight:700;color:#667eea}.price-detail{font-size:.85rem;color:#6c757d;font-style:italic}.price-total{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:10px;margin-top:.5rem}.total-label{font-size:1.1rem;color:#fff;font-weight:700}.total-amount{font-size:1.75rem;font-weight:800;color:#fff}.final-summary-policies{background:#fff8e1;border-color:#ffd54f}.policies-info h4{margin:0 0 1rem;font-size:1.1rem;color:#2c3e50;font-weight:700}.policies-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.policies-list li{color:#856404;font-size:.9rem;line-height:1.5;padding-left:.5rem}@media(max-width:768px){.final-summary-header{flex-direction:column;align-items:flex-start;gap:1rem}.edit-button{width:100%}.techniques-list{flex-direction:column}.technique-item{justify-content:flex-start}.schedule-item{flex-direction:column}.schedule-number{align-self:flex-start}.schedule-info-row{flex-direction:column;align-items:flex-start}.total-amount{font-size:1.5rem}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.final-summary-section{animation:fadeIn .4s ease}.final-summary-section:nth-child(1){animation-delay:.1s}.final-summary-section:nth-child(2){animation-delay:.2s}.final-summary-section:nth-child(3){animation-delay:.3s}.final-summary-section:nth-child(4){animation-delay:.4s}.enrollment-progress-summary{background:#fff;border:2px solid #e5e7eb;border-radius:16px;padding:20px;box-shadow:0 4px 12px #00000014;height:fit-content;position:sticky;top:20px}@keyframes slideInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.summary-header{display:flex;align-items:center;gap:10px;margin-bottom:20px;padding-bottom:16px;border-bottom:2px solid #f3f4f6}.summary-icon{font-size:1.5rem;line-height:1}.summary-header h3{margin:0;font-size:1.125rem;font-weight:800;color:#1e293b}.summary-grid{display:flex;flex-direction:column;gap:16px}.summary-section{background:#f9fafb;border:2px solid #e5e7eb;border-radius:12px;padding:16px;transition:all .3s ease}.summary-section.has-content{background:#fff;border-color:#10b981}.section-header{display:flex;align-items:center;gap:8px;margin-bottom:12px;padding-bottom:10px;border-bottom:2px solid #e5e7eb}.section-icon{font-size:1.25rem;line-height:1}.section-title{font-weight:700;color:#1e293b;font-size:.875rem;text-transform:uppercase;letter-spacing:.5px}.section-content{display:flex;flex-direction:column;gap:10px}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px 10px;opacity:.6}.empty-text{font-size:.75rem;color:#64748b;font-weight:600;text-align:center;font-style:italic}.courses-list{display:flex;flex-direction:column;gap:12px}.course-item{background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px;padding:12px;display:flex;flex-direction:column;gap:8px;transition:all .2s ease}.course-item:hover{background:#fff;box-shadow:0 2px 8px #00000014;transform:translate(4px)}.course-technique{display:flex;align-items:center;gap:8px;margin-bottom:4px}.course-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0;box-shadow:0 1px 3px #0000004d}.course-name{font-size:.875rem;font-weight:800;color:#1e293b;line-height:1.2}.course-schedule,.course-start-date{display:flex;align-items:baseline;gap:6px;font-size:.75rem;line-height:1.4}.course-schedule .label,.course-start-date .label{font-weight:700;color:#64748b;min-width:50px}.course-schedule .value,.course-start-date .value{font-weight:600;color:#374151;text-transform:capitalize}.class-count{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:16px;border-radius:10px;text-align:center;font-size:1.25rem;font-weight:900;box-shadow:0 4px 12px #667eea4d}.plan-info{display:flex;flex-direction:column;gap:8px;padding:14px;background:linear-gradient(135deg,#f0f2ff,#fafbff);border-radius:10px;border:2px solid #667eea;text-align:center}.plan-name{font-size:.875rem;font-weight:800;color:#667eea;line-height:1.2}.plan-price{font-size:1.5rem;font-weight:900;color:#1e293b;line-height:1}@media(max-width:1024px){.enrollment-progress-summary{position:static;margin-bottom:24px}}@media(max-width:640px){.enrollment-progress-summary{padding:16px}.summary-header h3{font-size:1rem}.summary-section{padding:12px}.section-header{margin-bottom:10px;padding-bottom:8px}.course-item{padding:10px}.class-count{padding:12px;font-size:1.125rem}.plan-price{font-size:1.25rem}}.trial-class-section{margin-bottom:2rem;max-width:700px;margin-left:auto;margin-right:auto;text-align:center}.trial-class-button{width:100%;background:linear-gradient(135deg,#f0f9fb,#fff);border:3px solid #47a1bf;border-radius:16px;padding:1.5rem 2rem;font-size:1.25rem;font-weight:700;color:#47a1bf;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:1rem;box-shadow:0 2px 8px #47a1bf26}.trial-class-button:hover{background:linear-gradient(135deg,#47a1bf,#5ca1a9);color:#fff;box-shadow:0 4px 16px #47a1bf4d;transform:translateY(-2px)}.trial-class-button.selected{background:linear-gradient(135deg,#47a1bf,#5ca1a9);color:#fff;box-shadow:0 4px 16px #47a1bf4d}.trial-icon{font-size:1.75rem}.trial-text{font-size:1.25rem}.config-section{margin-bottom:3rem;max-width:700px;margin-left:auto;margin-right:auto}.config-title{font-size:1.25rem;font-weight:700;color:#1f2937;margin:0 0 1.5rem;text-align:left;display:flex;align-items:center;gap:.75rem}.days-counter{font-size:.9rem;font-weight:600;color:#47a1bf;background:#f0f9fb;padding:.25rem .75rem;border-radius:12px}.frequency-options{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}.frequency-card{background:#fff;border:3px solid #e5e7eb;border-radius:16px;padding:2rem;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;cursor:pointer;transition:all .3s ease;min-height:140px}.frequency-card:hover{border-color:#47a1bf;box-shadow:0 4px 12px #47a1bf1a;transform:translateY(-2px)}.frequency-card.selected{border-color:#47a1bf;background:linear-gradient(135deg,#f0f9fb,#fff);box-shadow:0 4px 16px #47a1bf33}.frequency-number{font-size:3rem;font-weight:800;color:#1f2937;line-height:1}.frequency-card.selected .frequency-number{color:#47a1bf}.frequency-label{font-size:1.1rem;font-weight:600;color:#6b7280;text-align:center}.frequency-card.selected .frequency-label{color:#47a1bf}.days-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1rem}.day-card{background:#fff;border:3px solid #e5e7eb;border-radius:12px;padding:1rem;text-align:center;font-weight:600;font-size:1rem;color:#1f2937;cursor:pointer;transition:all .3s ease;position:relative;min-height:60px;display:flex;align-items:center;justify-content:center}.day-card:hover{border-color:#47a1bf;box-shadow:0 2px 8px #47a1bf1a}.day-card.selected{border-color:#47a1bf;background:linear-gradient(135deg,#47a1bf,#5ca1a9);color:#fff;box-shadow:0 4px 12px #47a1bf4d}.day-checkmark{position:absolute;top:6px;right:6px;font-size:1rem;font-weight:700;animation:checkPop .3s ease}@keyframes checkPop{0%{transform:scale(0) rotate(-45deg)}50%{transform:scale(1.3) rotate(10deg)}to{transform:scale(1) rotate(0)}}.info-note{text-align:center;color:#6b7280;font-size:.95rem;margin:1.5rem 0 0;font-style:italic;background:#f9fafb;padding:.75rem;border-radius:8px;border-left:4px solid #47a1bf}.loading-message,.error-message{text-align:center;padding:2rem;margin:2rem 0;border-radius:12px}.loading-message{background:#f0f9fb;color:#47a1bf}.error-message{background:#fef2f2;color:#dc2626;border:2px solid #fecaca}@media(max-width:1024px){.frequency-options{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.config-section{max-width:100%}.config-title{flex-direction:column;align-items:flex-start;gap:.5rem}.frequency-options{grid-template-columns:repeat(2,1fr);gap:1rem}.frequency-card{min-height:120px;padding:1.5rem}.frequency-number{font-size:2.5rem}.days-grid{grid-template-columns:repeat(2,1fr)}.day-card{min-height:50px;font-size:.9rem}.trial-class-button{padding:1rem 1.5rem;font-size:1.1rem}.trial-icon{font-size:1.5rem}.trial-text{font-size:1.1rem}}.multi-day-progress{background:#fff;border-radius:12px;padding:1.5rem;margin-bottom:2rem;border:1px solid #e2e8f0}.progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.progress-header h3{font-size:1.25rem;color:#2d3748;margin:0}.progress-counter{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:.4rem 1rem;border-radius:20px;font-size:.85rem;font-weight:600}.progress-bar-container{width:100%;height:8px;background:#e2e8f0;border-radius:10px;overflow:hidden;margin-bottom:1.5rem}.progress-bar-fill{height:100%;background:linear-gradient(135deg,#667eea,#764ba2);transition:width .3s ease;border-radius:10px}.day-tabs{display:flex;gap:.75rem;flex-wrap:wrap}.day-tab{flex:1;min-width:100px;background:#fff;border:2px solid #e2e8f0;border-radius:8px;padding:.8rem 1rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;font-weight:600;color:#4a5568}.day-tab:hover{border-color:#667eea;background:#f7fafc}.day-tab.active{border-color:#667eea;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.day-tab.completed{border-color:#48bb78;background:#f0fff4;color:#48bb78}.day-tab.completed.active{background:linear-gradient(135deg,#48bb78,#38a169);color:#fff}.day-tab-number{font-size:.9rem}.day-tab-check{font-size:1rem}.current-day-summary{background:linear-gradient(135deg,#f0f9fb,#e6f7ff);border-left:4px solid #47a1bf;padding:1rem 1.5rem;border-radius:8px;margin-bottom:1.5rem}.current-day-summary p{margin:0;color:#2d3748;font-size:.95rem}.current-day-summary strong{color:#47a1bf;font-weight:700}.btn-save-day{width:100%;margin-top:1rem;padding:1rem;background:linear-gradient(135deg,#48bb78,#38a169);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-save-day:hover{transform:translateY(-2px);box-shadow:0 4px 12px #48bb7866}@media(max-width:768px){.multi-day-progress{padding:1rem}.progress-header{flex-direction:column;align-items:flex-start;gap:.5rem}.progress-header h3{font-size:1.1rem}.day-tabs{gap:.5rem}.day-tab{min-width:80px;padding:.6rem .8rem;font-size:.85rem}.day-tab-number{font-size:.8rem}.current-day-summary{padding:.8rem 1rem}.current-day-summary p{font-size:.85rem}}.duration-selector-container{max-width:1200px;margin:0 auto;padding:2rem}.loading-plans{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;gap:1rem}.loading-plans .spinner{width:50px;height:50px;border:4px solid #e2e8f0;border-top-color:#667eea;border-radius:50%;animation:spin 1s linear infinite}.loading-plans p{color:#718096;font-size:1rem;margin:0}.duration-selector-header{text-align:center;margin-bottom:3rem}.duration-selector-header h2{font-size:2rem;color:#2d3748;margin-bottom:.5rem}.step-indicator{color:#718096;font-size:.9rem;margin-top:.5rem}.duration-options-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-bottom:2rem}.duration-card{position:relative;background:#fff;border:2px solid #e2e8f0;border-radius:12px;padding:1.5rem;cursor:pointer;transition:all .3s ease}.duration-card:hover{border-color:#667eea;box-shadow:0 4px 12px #667eea26;transform:translateY(-2px)}.duration-card.selected{border-color:#667eea;background:linear-gradient(135deg,#667eea05,#764ba210);box-shadow:0 4px 16px #667eea40}.badge{position:absolute;top:-12px;right:20px;padding:.4rem 1rem;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.badge-popular{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.badge-best-value{background:linear-gradient(135deg,#f6d365,#fda085);color:#2d3748}.duration-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.duration-card-header h3{font-size:1.5rem;color:#2d3748;margin:0}.discount-badge{background:#48bb78;color:#fff;padding:.3rem .8rem;border-radius:6px;font-weight:600;font-size:.85rem}.duration-card-body{text-align:center}.total-classes{color:#4a5568;font-size:.95rem;margin-bottom:1rem;font-weight:500}.price-original{color:#a0aec0;text-decoration:line-through;font-size:1rem;margin-bottom:.5rem}.price-final{color:#2d3748;font-size:2.25rem;font-weight:700;margin-bottom:.3rem}.price-monthly{color:#718096;font-size:.9rem;margin-bottom:.8rem}.savings{color:#48bb78;font-weight:600;font-size:.95rem;margin-top:.5rem}.plan-description{color:#718096;font-size:.85rem;margin-top:.5rem;font-style:italic}.selection-checkmark{position:absolute;top:15px;right:15px;width:30px;height:30px;background:#667eea;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.2rem;font-weight:700}.duration-selector-actions{display:flex;justify-content:space-between;gap:1rem;margin-top:2rem}@media(max-width:768px){.duration-options-grid{grid-template-columns:1fr;gap:1rem}.duration-selector-header h2{font-size:1.5rem}.duration-card-header h3{font-size:1.25rem}.price-final{font-size:1.75rem}}@media(max-width:480px){.duration-selector-container,.duration-card{padding:1rem}.badge{font-size:.65rem;padding:.3rem .8rem}.duration-selector-actions{flex-direction:column}.btn-primary,.btn-secondary{width:100%}}.trial-class-payment{display:flex;justify-content:center;padding:2rem 0;margin-bottom:2rem}.trial-class-card{background:linear-gradient(135deg,#f0f9fb,#fff);border:3px solid #47a1bf;border-radius:20px;padding:2.5rem;max-width:500px;width:100%;box-shadow:0 8px 24px #47a1bf33;display:flex;flex-direction:column;gap:2rem}.trial-badge{display:flex;align-items:center;justify-content:center;gap:.75rem;background:linear-gradient(135deg,#47a1bf,#5ca1a9);color:#fff;padding:.75rem 1.5rem;border-radius:12px;font-weight:700;font-size:1.1rem;box-shadow:0 4px 12px #47a1bf4d}.trial-icon{font-size:1.5rem}.trial-details{text-align:center}.trial-details h3{font-size:1.5rem;color:#1f2937;margin:0 0 .75rem;font-weight:700}.trial-description{color:#6b7280;font-size:1rem;margin:0;line-height:1.6}.trial-price-section{text-align:center;padding:2rem;background:#fff;border-radius:12px;border:2px solid #e5e7eb}.trial-price-label{font-size:.9rem;color:#6b7280;font-weight:600;text-transform:uppercase;letter-spacing:1px;margin-bottom:.5rem}.trial-price-value{font-size:3rem;font-weight:800;color:#059669;margin:.5rem 0;line-height:1}.trial-price-note{font-size:1rem;color:#47a1bf;font-weight:600;margin-top:.75rem}@media(max-width:768px){.trial-class-card{padding:1.5rem;gap:1.5rem}.trial-badge{font-size:1rem;padding:.6rem 1.2rem}.trial-icon,.trial-details h3{font-size:1.25rem}.trial-description{font-size:.9rem}.trial-price-value{font-size:2.5rem}.trial-price-section{padding:1.5rem}}.editable-schedule-calendar-container{max-width:1400px;margin:0 auto;padding:2rem}.editable-schedule-header{text-align:center;margin-bottom:2rem}.editable-schedule-header h2{font-size:2rem;color:#2d3748;margin-bottom:.5rem}.summary-compact{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:1rem 1.5rem;border-radius:8px;margin-bottom:2rem;text-align:center}.summary-text{margin:0;font-size:1.1rem;font-weight:500}.schedule-content-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:2rem;margin-bottom:2rem}.calendar-section h3,.summary-section h3{font-size:1.25rem;color:#2d3748;margin-bottom:1rem}.summary-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.5rem;margin-bottom:1.5rem}.summary-item{display:flex;flex-direction:column;gap:.5rem;padding:1rem 0;border-bottom:1px solid #f7fafc}.summary-item:last-child{border-bottom:none}.summary-item label{font-size:.85rem;color:#718096;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.summary-value{display:flex;justify-content:space-between;align-items:center}.summary-value span{font-size:1rem;color:#2d3748;font-weight:500}.edit-btn{background:none;border:1px solid #667eea;color:#667eea;padding:.4rem 1rem;border-radius:6px;cursor:pointer;font-size:.85rem;font-weight:600;transition:all .2s ease}.edit-btn:hover{background:#667eea;color:#fff}.summary-divider{height:1px;background:#e2e8f0;margin:1rem 0}.price-summary{margin-top:1rem}.price-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;font-size:.95rem;color:#4a5568}.price-original{text-decoration:line-through;color:#a0aec0}.discount-row{color:#48bb78;font-weight:600}.discount-amount{color:#48bb78;font-weight:700}.total-row{border-top:2px solid #e2e8f0;padding-top:1rem;margin-top:.5rem;font-size:1.1rem;font-weight:700;color:#2d3748}.price-final{font-size:1.5rem;color:#667eea;font-weight:700}.savings-badge{background:linear-gradient(135deg,#48bb78,#38a169);color:#fff;padding:.6rem 1rem;border-radius:8px;text-align:center;margin-top:1rem;font-weight:600;font-size:.9rem}.editor-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.5rem}.editor-toggle{margin-bottom:1rem}.editor-toggle label{display:flex;align-items:center;gap:.8rem;cursor:pointer;font-weight:500;color:#2d3748}.editor-toggle input[type=checkbox]{width:20px;height:20px;cursor:pointer}.editor-content{margin-top:1rem}.validation-warning{background:#fed7d7;color:#c53030;padding:1rem;border-radius:8px;margin-top:1rem;font-weight:600;text-align:center}.schedule-actions{display:flex;justify-content:space-between;gap:1rem;margin-top:2rem}.btn-primary,.btn-secondary{flex:1;padding:1rem 2rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;border:none}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:#fff;color:#4a5568;border:2px solid #e2e8f0}.btn-secondary:hover{background:#f7fafc;border-color:#cbd5e0}@media(max-width:1024px){.schedule-content-layout{grid-template-columns:1fr}.calendar-section{order:2}.summary-section{order:1}}@media(max-width:768px){.editable-schedule-calendar-container{padding:1rem}.editable-schedule-header h2{font-size:1.5rem}.summary-compact{padding:.8rem 1rem}.summary-text{font-size:.95rem}.summary-card,.editor-section{padding:1rem}.schedule-actions{flex-direction:column}.btn-primary,.btn-secondary{width:100%}}.courses-summary-section{display:flex;flex-direction:column;gap:1rem;margin:2rem 0}.course-summary-item{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border-radius:12px;padding:1.5rem;display:flex;align-items:center;gap:1rem;box-shadow:0 4px 6px #10b98133}.course-summary-item.completed{background:linear-gradient(135deg,#0ea5e9,#0284c7);box-shadow:0 4px 6px #0ea5e933}.course-summary-item.current{border:3px solid #10b981;background:linear-gradient(135deg,#ecfdf5,#d1fae5);color:#065f46}.summary-icon{font-size:2rem;background:#fff3;width:50px;height:50px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.course-summary-item.current .summary-icon{background:#10b981;color:#fff}.summary-content{flex:1}.summary-content h3{font-size:.875rem;font-weight:500;margin:0 0 .5rem;opacity:.9}.course-summary-item.current .summary-content h3{opacity:1;color:#065f46}.course-name{font-size:1.25rem;font-weight:600;margin:0 0 .25rem}.course-details{font-size:.875rem;margin:0;opacity:.9}.course-options{display:flex;flex-direction:column;gap:1rem;margin:2rem 0}.option-card{width:100%;background:#fff;border:2px solid #e5e7eb;border-radius:12px;padding:1.5rem;display:flex;align-items:center;gap:1rem;cursor:pointer;transition:all .2s ease;text-align:left}.option-card:hover{border-color:#8b5cf6;box-shadow:0 4px 12px #8b5cf626;transform:translateY(-2px)}.option-card.add-course{border-color:#8b5cf6;background:linear-gradient(135deg,#f5f3ff,#faf5ff)}.option-card.add-course:hover{background:linear-gradient(135deg,#ede9fe,#f3e8ff)}.option-card.continue-course{border-color:#10b981;background:linear-gradient(135deg,#f0fdf4,#f0fdf9)}.option-card.continue-course:hover{background:linear-gradient(135deg,#dcfce7,#d1fae5)}.option-icon{font-size:2rem;background:#8b5cf61a;width:60px;height:60px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.option-card.continue-course .option-icon{background:#10b9811a}.option-content h3{font-size:1.125rem;font-weight:600;margin:0 0 .5rem;color:#1f2937}.option-content p{font-size:.875rem;margin:0;color:#6b7280}@media(max-width:640px){.current-course-summary,.option-card{flex-direction:column;text-align:center}.option-content h3{font-size:1rem}}:root{--prof-primary: #2563eb;--prof-primary-dark: #1d4ed8;--prof-gray-50: #f9fafb;--prof-gray-100: #f3f4f6;--prof-gray-200: #e5e7eb;--prof-gray-300: #d1d5db;--prof-gray-400: #9ca3af;--prof-gray-500: #6b7280;--prof-gray-600: #4b5563;--prof-gray-700: #374151;--prof-gray-800: #1f2937;--prof-gray-900: #111827}.prof-enrollment-container{min-height:100vh;background:#fff;padding:0}.prof-enrollment-content{max-width:900px;margin:0 auto;padding:3rem 2rem}.prof-step{animation:profFadeIn .3s ease}@keyframes profFadeIn{0%{opacity:0}to{opacity:1}}.prof-step-header{margin-bottom:3rem}.prof-step-number{display:block;font-size:.875rem;color:var(--prof-gray-500);font-weight:500;margin-bottom:.75rem;letter-spacing:.05em;text-transform:uppercase}.prof-step-title{font-size:2rem;font-weight:600;color:var(--prof-gray-900);margin:0;line-height:1.2;letter-spacing:-.02em}.prof-techniques-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:3rem}.prof-technique-card{background:#fff;border:2px solid var(--prof-gray-200);border-radius:8px;padding:2rem;cursor:pointer;transition:all .2s ease;position:relative}.prof-technique-card:hover{border-color:var(--prof-primary)}.prof-technique-card.selected{border-color:var(--prof-primary);border-width:3px;background:#eff6ff;box-shadow:0 4px 12px #2563eb26}.prof-card-title{font-size:1.25rem;font-weight:600;color:var(--prof-gray-900);margin:0 0 .5rem}.prof-card-description{font-size:.9375rem;color:var(--prof-gray-600);line-height:1.5;margin:0}.prof-selected-indicator{position:absolute;top:1rem;right:1rem;width:24px;height:24px;background:var(--prof-primary);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:.875rem;box-shadow:0 2px 8px #2563eb4d}.prof-selected-indicator:after{content:"✓"}.prof-calendar-section{margin-bottom:3rem;border-top:1px solid var(--prof-gray-200);padding-top:2rem}.prof-calendar-toggle{width:100%;background:#fff;border:1px solid var(--prof-gray-300);border-radius:8px;padding:1rem 1.5rem;display:flex;justify-content:space-between;align-items:center;cursor:pointer;font-size:.9375rem;font-weight:500;color:var(--prof-gray-700);transition:all .2s ease}.prof-calendar-toggle:hover{border-color:var(--prof-gray-400);background:var(--prof-gray-50)}.toggle-icon{font-size:.75rem;color:var(--prof-gray-500);transition:transform .2s ease}.toggle-icon.open{transform:rotate(180deg)}.prof-calendar-content{margin-top:1.5rem;padding:1.5rem;background:var(--prof-gray-50);border-radius:8px}.prof-calendar-note{font-size:.875rem;color:var(--prof-gray-600);margin:0 0 1.5rem;font-style:italic}.prof-calendar-grid{overflow-x:auto}.prof-calendar-header{display:grid;grid-template-columns:120px repeat(6,1fr);gap:.5rem;margin-bottom:.5rem}.prof-day-header{font-size:.8125rem;font-weight:600;color:var(--prof-gray-700);text-align:center;padding:.5rem}.prof-calendar-row{display:grid;grid-template-columns:120px repeat(6,1fr);gap:.5rem;margin-bottom:.5rem}.prof-time-cell{font-size:.8125rem;color:var(--prof-gray-600);padding:.75rem .5rem;font-weight:500}.prof-slot-cell{background:#fff;border:1px solid var(--prof-gray-200);border-radius:4px;padding:.75rem .5rem;font-size:.75rem;text-align:center;color:var(--prof-gray-600)}.prof-slot-cell.available{background:#fff;border-color:var(--prof-gray-300)}.prof-slot-cell.limited{background:#fef3c7;border-color:#fbbf24;color:#92400e}.prof-slot-cell.unavailable{background:var(--prof-gray-100);color:var(--prof-gray-400)}.prof-step-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:3rem;padding-top:2rem;border-top:1px solid var(--prof-gray-200)}.prof-btn{padding:.875rem 2rem;border-radius:8px;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s ease;border:none;font-family:inherit}.prof-btn-primary{background:var(--prof-primary);color:#fff}.prof-btn-primary:hover:not(:disabled){background:var(--prof-primary-dark)}.prof-btn-primary:disabled{background:var(--prof-gray-300);color:var(--prof-gray-500);cursor:not-allowed}.prof-btn-secondary{background:#fff;color:var(--prof-gray-700);border:1px solid var(--prof-gray-300)}.prof-btn-secondary:hover{background:var(--prof-gray-50);border-color:var(--prof-gray-400)}.prof-header-controls{position:fixed;top:1.5rem;right:1.5rem;display:flex;gap:.5rem;z-index:100}.prof-header-btn{width:36px;height:36px;border-radius:8px;border:1px solid var(--prof-gray-300);background:#fff;color:var(--prof-gray-600);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.25rem;transition:all .2s ease}.prof-header-btn:hover{background:var(--prof-gray-50);border-color:var(--prof-gray-400)}@media(max-width:768px){.prof-enrollment-content{padding:2rem 1rem}.prof-step-title{font-size:1.5rem}.prof-techniques-grid{grid-template-columns:1fr}.prof-calendar-header,.prof-calendar-row{grid-template-columns:100px repeat(6,minmax(100px,1fr))}.prof-step-actions{flex-direction:column-reverse}.prof-btn{width:100%}}.prof-enrollment-wrapper .simplified-enrollment-container{background:#fff}.prof-enrollment-wrapper .step-progress{color:var(--prof-gray-500);font-weight:500;letter-spacing:.05em}.prof-enrollment-wrapper .step-title{font-size:2rem;font-weight:600;color:var(--prof-gray-900);letter-spacing:-.02em}.prof-enrollment-wrapper .technique-card-simple{border:2px solid var(--prof-gray-200);border-radius:8px;background:#fff;transition:all .2s ease}.prof-enrollment-wrapper .technique-card-simple:hover{border-color:var(--prof-primary)}.prof-enrollment-wrapper .technique-card-simple.selected{border-color:var(--prof-primary);border-width:3px;background:#eff6ff;box-shadow:0 4px 12px #2563eb26}.prof-enrollment-wrapper .technique-icon-large{display:none}.prof-enrollment-wrapper .selected-checkmark{width:24px;height:24px;background:var(--prof-primary);display:flex;align-items:center;justify-content:center;font-size:.875rem}.prof-enrollment-wrapper .hint-text{color:var(--prof-gray-500);font-size:.875rem;font-style:normal}.prof-enrollment-wrapper .btn-primary-large{background:var(--prof-primary);border-radius:8px;box-shadow:none;font-weight:600}.prof-enrollment-wrapper .btn-primary-large:hover:not(:disabled){background:var(--prof-primary-dark);box-shadow:none}.prof-enrollment-wrapper .btn-secondary-large{background:#fff;border:1px solid var(--prof-gray-300);border-radius:8px;color:var(--prof-gray-700);font-weight:600}.prof-enrollment-wrapper .btn-secondary-large:hover{background:var(--prof-gray-50);border-color:var(--prof-gray-400)}.prof-enrollment-wrapper .plan-type-option{border:2px solid var(--prof-gray-200);border-radius:8px;background:#fff}.prof-enrollment-wrapper .plan-type-option:hover{border-color:var(--prof-primary)}.prof-enrollment-wrapper .plan-type-option.selected{border-color:var(--prof-primary);background:#eff6ff}.prof-enrollment-wrapper .radio-indicator{border:2px solid var(--prof-gray-300)}.prof-enrollment-wrapper .plan-type-option.selected .radio-indicator{border-color:var(--prof-primary)}.prof-enrollment-wrapper .radio-dot{background:var(--prof-primary)}.prof-enrollment-wrapper .plan-type-icon-small{display:none}.prof-enrollment-wrapper .recommended-badge{background:var(--prof-primary);font-size:.75rem;font-weight:600;padding:.25rem .75rem;border-radius:4px}.prof-enrollment-wrapper .frequency-card{border:2px solid var(--prof-gray-200);border-radius:8px;background:#fff}.prof-enrollment-wrapper .frequency-card:hover{border-color:var(--prof-primary)}.prof-enrollment-wrapper .frequency-card.selected{border-color:var(--prof-primary);background:#eff6ff}.prof-enrollment-wrapper .frequency-number{color:var(--prof-gray-900)}.prof-enrollment-wrapper .frequency-card.selected .frequency-number{color:var(--prof-primary)}.prof-enrollment-wrapper .frequency-label{color:var(--prof-gray-600)}.prof-enrollment-wrapper .frequency-card.selected .frequency-label{color:var(--prof-primary)}.prof-enrollment-wrapper .day-card{border:2px solid var(--prof-gray-200);border-radius:8px;background:#fff}.prof-enrollment-wrapper .day-card:hover{border-color:var(--prof-primary)}.prof-enrollment-wrapper .day-card.selected{border-color:var(--prof-primary);background:var(--prof-primary);color:#fff}.prof-enrollment-wrapper .info-note{background:var(--prof-gray-50);border-left:3px solid var(--prof-primary);border-radius:4px;color:var(--prof-gray-700)}.prof-enrollment-wrapper .timeslot-card{border:2px solid var(--prof-gray-200);border-radius:8px;background:#fff}.prof-enrollment-wrapper .timeslot-card:hover{border-color:var(--prof-primary)}.prof-enrollment-wrapper .timeslot-card.selected{border-color:var(--prof-primary);background:#eff6ff}.prof-enrollment-wrapper .timeslot-text{color:var(--prof-gray-900)}.prof-enrollment-wrapper .timeslot-card.selected .timeslot-text{color:var(--prof-primary)}.prof-enrollment-wrapper .recurrence-info{background:var(--prof-gray-50);border-left:3px solid var(--prof-primary);border-radius:4px;color:var(--prof-gray-700)}.prof-enrollment-wrapper .total-price-box{background:var(--prof-primary);border-radius:8px;box-shadow:none}.prof-enrollment-wrapper .summary-container-simple{border:2px solid var(--prof-gray-200);border-radius:8px}.prof-enrollment-wrapper .btn-edit{border:1px solid var(--prof-primary);color:var(--prof-primary);border-radius:6px;background:#fff}.prof-enrollment-wrapper .btn-edit:hover{background:var(--prof-primary);color:#fff}.prof-enrollment-wrapper .payment-method-card{border:2px solid var(--prof-gray-200);border-radius:8px;background:#fff}.prof-enrollment-wrapper .payment-method-card:hover{border-color:var(--prof-primary)}.prof-enrollment-wrapper .payment-method-card.selected{border-color:var(--prof-primary);background:#eff6ff}.prof-enrollment-wrapper .payment-method-icon{display:none}.prof-enrollment-wrapper .form-input{border:2px solid var(--prof-gray-200);border-radius:8px}.prof-enrollment-wrapper .form-input:focus{border-color:var(--prof-primary);box-shadow:0 0 0 3px #2563eb1a}.prof-enrollment-wrapper .calendar-section,.prof-enrollment-wrapper .timeslots-section{border:2px solid var(--prof-gray-200);border-radius:8px}.prof-enrollment-wrapper .hint-text:before{content:""}.prof-enrollment-wrapper .simplified-step{padding:2rem 0}@media(max-width:768px){.prof-enrollment-wrapper .step-title{font-size:1.5rem}}.flow-selector-container{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem}.flow-selector-overlay{position:absolute;inset:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.flow-selector-modal{position:relative;background:#fff;border-radius:24px;padding:3rem;max-width:1200px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d;animation:modalSlideIn .4s ease}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.95) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.flow-selector-header{text-align:center;margin-bottom:3rem}.flow-selector-title{font-size:2.5rem;font-weight:800;color:#1f2937;margin:0 0 1rem;line-height:1.2}.flow-selector-subtitle{font-size:1.1rem;color:#6b7280;margin:0}.flow-options-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-bottom:2rem}@media(max-width:1024px){.flow-options-grid{grid-template-columns:1fr}}.flow-option-card{background:#fff;border:3px solid #e5e7eb;border-radius:20px;padding:2rem;display:flex;flex-direction:column;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden}.flow-option-card:hover{border-color:#47a1bf;box-shadow:0 12px 32px #47a1bf33;transform:translateY(-4px)}.flow-option-card.recommended{border-color:#10b981;border-width:4px}.flow-option-card.recommended:hover{border-color:#059669;box-shadow:0 12px 32px #10b98140}.recommended-ribbon{position:absolute;top:20px;right:-35px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;padding:.4rem 3rem;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;transform:rotate(45deg);box-shadow:0 4px 12px #10b9814d}.flow-badge{display:inline-flex;align-items:center;justify-content:center;padding:.4rem 1rem;border-radius:20px;color:#fff;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;align-self:flex-start;margin-bottom:1.5rem}.flow-icon{font-size:4rem;margin-bottom:1rem;text-align:center}.flow-name{font-size:1.75rem;font-weight:800;color:#1f2937;margin:0 0 .75rem;text-align:center}.flow-description{font-size:1rem;color:#6b7280;margin:0 0 2rem;text-align:center}.flow-features{display:flex;flex-direction:column;gap:.75rem;margin-bottom:2rem;flex:1}.flow-feature{display:flex;align-items:flex-start;gap:.75rem}.feature-check{font-size:1.25rem;font-weight:700;flex-shrink:0;line-height:1.4}.feature-text{font-size:.95rem;color:#374151;line-height:1.4}.btn-select-flow{width:100%;padding:1rem;border:none;border-radius:12px;color:#fff;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #00000026}.btn-select-flow:hover{transform:translateY(-2px);box-shadow:0 6px 16px #0003}.flow-selector-footer{text-align:center;padding-top:2rem;border-top:2px solid #f3f4f6}.footer-note{color:#6b7280;font-size:.9rem;margin:0;font-style:italic}@media(max-width:768px){.flow-selector-modal{padding:2rem 1.5rem;max-height:95vh}.flow-selector-title{font-size:1.75rem}.flow-selector-subtitle{font-size:1rem}.flow-options-grid{grid-template-columns:1fr;gap:1.5rem}.flow-option-card{padding:1.5rem}.flow-icon{font-size:3rem}.flow-name{font-size:1.5rem}.recommended-ribbon{font-size:.65rem;padding:.3rem 2.5rem}}.flow-selector-modal::-webkit-scrollbar{width:8px}.flow-selector-modal::-webkit-scrollbar-track{background:#f3f4f6;border-radius:10px}.flow-selector-modal::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:10px}.flow-selector-modal::-webkit-scrollbar-thumb:hover{background:#9ca3af}.calendar-test-page{min-height:100vh;padding:2rem;background:linear-gradient(135deg,#667eea,#764ba2)}.test-header{text-align:center;color:#fff;margin-bottom:3rem}.test-header h1{margin:0 0 .5rem;font-size:2.5rem;font-weight:700}.test-header p{margin:0;font-size:1.125rem;opacity:.9}.test-content{max-width:1200px;margin:0 auto}.debug-info{max-width:800px;margin:2rem auto;padding:1.5rem;background:#fff;border-radius:12px;box-shadow:0 4px 12px #0000001a}.debug-info h3{margin:0 0 .75rem;color:#1f2937;font-size:1.25rem}.debug-info p{margin:0;color:#47a1bf;font-size:1.125rem;font-weight:600}.payment-status-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;background:linear-gradient(135deg,#667eea,#764ba2)}.payment-status-card{max-width:600px;width:100%;padding:40px;background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;text-align:center;animation:slideIn .5s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.status-icon{font-size:80px;margin-bottom:20px;font-weight:700;line-height:1}.payment-status-card.success .status-icon{color:#4caf50;animation:scaleIn .6s ease-out}.payment-status-card.failure .status-icon{color:#f44336;animation:shake .6s ease-out}@keyframes scaleIn{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-10px)}20%,40%,60%,80%{transform:translate(10px)}}.payment-status-card h1{font-size:32px;margin:0 0 10px;color:#333}.payment-status-card.success h1{color:#4caf50}.payment-status-card.failure h1{color:#f44336}.status-message{font-size:18px;color:#666;margin-bottom:30px}.payment-details,.failure-details{margin:30px 0;padding:25px;background:#f9f9f9;border-radius:8px;text-align:left}.payment-details h3,.failure-details h3{margin:0 0 20px;font-size:18px;color:#333;text-align:center;border-bottom:2px solid #e0e0e0;padding-bottom:10px}.detail-row{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid #e0e0e0}.detail-row:last-child{border-bottom:none}.detail-row .label{font-weight:600;color:#555}.detail-row .value{color:#333;font-weight:500}.info-box{margin:25px 0;padding:20px;background:#e3f2fd;border-left:4px solid #2196f3;border-radius:4px;text-align:left}.info-box.warning{background:#fff3e0;border-left-color:#ff9800}.info-box h4{margin:0 0 10px;color:#333;font-size:16px}.info-box p{margin:0;color:#555;line-height:1.6}.info-box ul{margin:10px 0 0;padding-left:20px;color:#555}.info-box ul li{margin:8px 0;line-height:1.4}.actions{display:flex;gap:15px;justify-content:center;margin-top:30px;flex-wrap:wrap}.actions button{padding:14px 32px;border:none;border-radius:6px;cursor:pointer;font-size:16px;font-weight:600;transition:all .3s ease}.btn-primary{background:#667eea;color:#fff}.btn-primary:hover{background:#5568d3;transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-secondary{background:#fff;color:#667eea;border:2px solid #667eea}.btn-secondary:hover{background:#f5f7ff;transform:translateY(-2px);box-shadow:0 4px 12px #667eea33}.support-section{margin-top:30px;padding-top:20px;border-top:1px solid #e0e0e0}.support-section p{margin:0 0 10px;color:#666;font-size:14px}.btn-link{background:none;border:none;color:#667eea;cursor:pointer;font-size:16px;font-weight:600;text-decoration:underline;padding:0}.btn-link:hover{color:#5568d3}@media(max-width:600px){.payment-status-card{padding:30px 20px}.payment-status-card h1{font-size:24px}.status-message{font-size:16px}.status-icon{font-size:60px}.actions{flex-direction:column}.actions button{width:100%}.detail-row{flex-direction:column;gap:5px}}@media print{.payment-status-container{background:#fff;padding:0}.actions,.support-section{display:none}.payment-status-card{box-shadow:none;border:1px solid #ddd}.status-icon{font-size:60px}}:root{--primary-color: #47a1bf;--primary-dark: #5ca1a9;--secondary-color: #92ced5;--accent-color: #a7dce3;--success-color: #10b981;--warning-color: #f59e0b;--error-color: #ef4444;--text-dark: #1f2937;--text-light: #6b7280;--bg-light: #f9fafb;--bg-white: #ffffff;--border-color: #e5e7eb;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1)}body{margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--text-dark);line-height:1.6;width:100%}.app{min-height:100vh;width:100%;display:flex;flex-direction:column}main{width:100%;flex:1}.container{max-width:1600px;width:100%;margin:0 auto;padding:0 2rem}.app-header{background:#fff;box-shadow:var(--shadow-sm);position:sticky;top:0;z-index:100;padding:.5rem 0;width:100%}.app-header .container{display:flex;justify-content:space-between;align-items:center}.logo{font-size:1.5rem;font-weight:700;color:var(--primary-color);display:flex;align-items:center}.logo img{height:100px;width:auto;object-fit:contain}nav{display:flex;align-items:center;gap:2rem}nav a{text-decoration:none;color:var(--text-dark);font-weight:500;transition:color .3s}nav a:hover{color:var(--primary-color)}.enroll-button{background:var(--primary-color);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:.5rem;font-weight:600;cursor:pointer;transition:background .3s}.enroll-button:hover{background:var(--primary-dark)}.hero{width:100%;min-height:600px;display:flex;justify-content:center}.hero-container{display:flex;max-width:1400px;width:100%;margin:0 auto;align-items:stretch}.hero-content{background-position:right;flex:0 0 50%;display:flex;flex-direction:column;justify-content:center;padding:4rem 3rem;color:#0299b1;text-align:left}.hero-carousel{margin:1em;flex:0 0 50%;position:relative;overflow:hidden;border-radius:1em}.carousel-image{position:absolute;top:0;left:0;width:100%;height:100%;background-size:cover;background-position:center;background-repeat:no-repeat;opacity:0;transition:opacity 1s ease-in-out}.carousel-image.active{opacity:1}.carousel-nav{position:absolute;top:50%;transform:translateY(-50%);background:#ffffff4d;color:#fff;border:none;font-size:3rem;width:60px;height:60px;cursor:pointer;z-index:3;transition:background .3s;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.carousel-nav:hover{background:#ffffff80}.carousel-nav.prev{left:20px;border-radius:8px}.carousel-nav.next{right:20px;border-radius:8px}.carousel-indicators{position:absolute;bottom:20px;left:50%;transform:translate(-50%);display:flex;gap:8px;z-index:3;background:#0000004d;padding:8px 12px;border-radius:20px;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.indicator{width:10px;height:10px;border-radius:50%;border:none;background:#ffffff80;cursor:pointer;transition:all .3s;padding:0}.indicator:hover{background:#fffc}.indicator.active{background:#fff;width:30px;border-radius:5px}.hero h1{font-family:Gotham Condensed,Arial Narrow,sans-serif;color:var(--text-dark);font-size:4rem;margin:0;margin-bottom:1rem;padding:0;font-weight:800;line-height:1.1}.hero-subtitle{font-family:Raleway,sans-serif;font-size:1.5rem;margin:0;margin-bottom:.5rem;padding:0;color:var(--text-dark);font-weight:600;letter-spacing:.1em}.hero-description{font-size:1.125rem;margin:0;margin-bottom:2rem;color:var(--text-dark);padding:0;line-height:1.6;opacity:.85}.cta-button{background:var(--primary-color);color:#fff;border:none;padding:1.2rem 2.5rem;font-size:1.125rem;font-weight:700;border-radius:.5rem;cursor:pointer;transition:all .3s;box-shadow:0 4px 15px #77bdc54d;align-self:flex-start}.cta-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #77bdc580;background:var(--primary-dark)}.cta-buttons-group{display:flex;flex-direction:column;gap:1rem;align-items:flex-start}.cta-button.primary{background:var(--primary-color)}.cta-button.secondary{background:linear-gradient(135deg,#667eea,#764ba2);position:relative;padding:1.2rem 2rem;display:flex;align-items:center;gap:.75rem}.cta-button.secondary:hover{background:linear-gradient(135deg,#5568d3,#6a4190);box-shadow:0 6px 20px #667eea80}.new-badge{background:linear-gradient(135deg,#10b981,#059669);color:#fff;font-size:.65rem;font-weight:800;padding:.3rem .6rem;border-radius:6px;letter-spacing:.5px;text-transform:uppercase;box-shadow:0 2px 8px #10b9814d;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.courses-showcase{padding:5rem 0;background:var(--bg-light);width:100%}.courses-showcase h2{text-align:center;font-size:2.5rem;margin:0 auto 3rem;max-width:1400px;padding:0 2rem;color:var(--text-dark)}.courses-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:2rem;max-width:1400px;width:100%;margin:0 auto;padding:0 2rem}.course-card{background-image:url(/assets/fondo-base-atenuado-PQPkwUbb.png);border-radius:1rem;overflow:hidden;box-shadow:var(--shadow-md);transition:transform .3s,box-shadow .3s}.course-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-xl)}.course-image-container{position:relative;height:200px;overflow:hidden}.course-image{width:100%;height:100%;object-fit:cover}.course-category{position:absolute;top:1rem;right:1rem;background:var(--primary-color);color:#fff;padding:.5rem 1rem;border-radius:2rem;font-size:.875rem;font-weight:600}.course-info{padding:1.5rem}.course-info h3{font-size:1.5rem;margin-bottom:.75rem;color:var(--text-dark)}.course-description{color:var(--text-light);margin-bottom:1rem;font-size:.95rem}.course-meta{display:flex;justify-content:space-between;margin-bottom:1rem;font-size:.875rem;color:var(--text-light)}.course-availability{padding-top:1rem;border-top:1px solid var(--border-color)}.slots{font-weight:600;color:var(--success-color)}.slots.limited{color:var(--warning-color)}.about{padding:5rem 0;background:var(--bg-white);width:100%}.about h2{text-align:center;font-size:2.5rem;margin:0 auto 3rem;max-width:1400px;padding:0 2rem}.about-content{max-width:1400px;width:100%;margin:0 auto;padding:0 2rem}.about-text{text-align:left;max-width:1000px;margin:0 auto;font-size:1.125rem;line-height:1.8;color:var(--text-dark)}.about-text p{margin-bottom:1.5rem;text-align:justify}.about-text p:last-child{margin-bottom:0}.about-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem;text-align:center}.feature h3{font-size:3rem;color:var(--primary-color);margin-bottom:.5rem}.feature p{color:var(--text-light);font-weight:500}.app-footer{background:var(--text-dark);color:#fff;padding:3rem 0 1rem;margin-top:auto;width:100%}.footer-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem;margin-bottom:2rem}.footer-section h3,.footer-section h4{margin-bottom:1rem}.footer-section p{margin-bottom:.5rem;opacity:.8}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:1.5rem;text-align:center;opacity:.7}.enrollment-page{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);background-attachment:fixed;padding:3rem 1.5rem;display:flex;align-items:flex-start;justify-content:center;position:relative;overflow-x:hidden}.enrollment-page:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 80%,rgba(255,255,255,.1) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(255,255,255,.1) 0%,transparent 50%),radial-gradient(circle at 40% 40%,rgba(102,126,234,.2) 0%,transparent 50%);pointer-events:none}.enrollment-modal{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;overflow-y:auto}.enrollment-container{background:var(--bg-white);border-radius:24px;max-width:1000px;width:100%;margin:0 auto;box-shadow:0 20px 60px #0000004d,0 0 0 1px #ffffff1a inset;position:relative;overflow:hidden;animation:slideUp .6s cubic-bezier(.16,1,.3,1)}@keyframes slideUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.enrollment-page .enrollment-container{max-width:1600px;width:100%;margin:0;position:relative;z-index:1}.enrollment-container:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#667eea,#764ba2,#667eea);background-size:200% 100%;animation:shimmerGradient 3s ease-in-out infinite}@keyframes shimmerGradient{0%,to{background-position:0% 0%}50%{background-position:100% 0%}}.enrollment-header{display:flex;justify-content:space-between;align-items:center;padding:2rem;border-bottom:1px solid var(--border-color)}.enrollment-header h1{font-size:1.75rem;color:var(--text-dark)}.enrollment-header-buttons{position:absolute;top:1rem;right:1rem;display:flex;gap:.5rem;z-index:10}.close-button{background:none;border:none;font-size:1.75rem;cursor:pointer;color:var(--text-light);line-height:1;transition:all .3s;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%}.close-button:hover{color:var(--text-dark);background:var(--bg-light)}.reset-button{background:none;border:none;font-size:1.25rem;cursor:pointer;color:var(--text-light);line-height:1;transition:all .3s;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%}.reset-button:hover{color:var(--warning-color);background:#fef3c7;transform:rotate(180deg)}.enrollment-progress{display:flex;align-items:center;justify-content:center;padding:2.5rem 2rem 2rem;background:linear-gradient(180deg,#fafbff,#f5f7fa);position:relative;border-bottom:1px solid #e5e7eb}.enrollment-progress:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent 0%,#667eea 50%,transparent 100%);opacity:.5}.progress-step{display:flex;flex-direction:column;align-items:center;gap:.75rem;position:relative;transition:all .4s cubic-bezier(.4,0,.2,1)}.step-number{width:48px;height:48px;border-radius:50%;background:#e5e7eb;color:#9ca3af;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:1.125rem;transition:all .4s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 8px #00000014;position:relative;z-index:2;border:3px solid white}.step-label{font-size:.875rem;color:#6b7280;font-weight:600;transition:all .4s cubic-bezier(.4,0,.2,1);letter-spacing:.3px;text-transform:uppercase}.progress-step.active .step-number{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;transform:scale(1.15);box-shadow:0 4px 16px #667eea66,0 0 0 4px #667eea1a;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{box-shadow:0 4px 16px #667eea66,0 0 0 4px #667eea1a}50%{box-shadow:0 4px 20px #667eea80,0 0 0 6px #667eea26}}.progress-step.active .step-label{color:#667eea;font-weight:700}.progress-step.completed .step-number{background:linear-gradient(135deg,#10b981,#059669);color:#fff;box-shadow:0 2px 12px #10b9814d}.progress-step.completed .step-number:after{content:"✓";position:absolute;font-size:1.25rem;font-weight:900}.progress-step.completed .step-label{color:#10b981}.progress-line{height:3px;width:60px;background:#e5e7eb;margin:0 .75rem;position:relative;border-radius:10px;overflow:hidden;transition:all .4s ease}.progress-step.completed+.progress-line{background:linear-gradient(90deg,#10b981,#667eea);box-shadow:0 2px 8px #10b9814d}.enrollment-content{padding:3rem 2.5rem;min-height:600px;background:#fff}@media(min-width:1400px){.enrollment-content{padding:3.5rem 4rem}}.enrollment-layout-with-summary{display:grid;grid-template-columns:320px 1fr;gap:32px;align-items:start}.enrollment-summary-sidebar{width:100%}.enrollment-main-content{width:100%;min-width:0}@media(max-width:1024px){.enrollment-layout-with-summary{grid-template-columns:1fr;gap:24px}}.enrollment-step{animation:fadeInSlide .5s cubic-bezier(.16,1,.3,1);padding-bottom:2rem}@keyframes fadeInSlide{0%{opacity:0;transform:translateY(20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.enrollment-step h2{font-size:2rem;margin-bottom:.75rem;color:#111827;font-weight:800;letter-spacing:-.02em;background:linear-gradient(135deg,#111827,#374151);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}@media(min-width:1200px){.enrollment-step h2{font-size:2.25rem}}.enrollment-step.disabled{opacity:.6;pointer-events:none}.info-message,.loading-message{text-align:center;color:#6b7280;padding:3rem 2rem;background:linear-gradient(135deg,#fafbff,#f5f7fa);border-radius:16px;border:2px solid #e5e7eb;box-shadow:0 4px 12px #0000000d}.loading-message p{font-size:1.125rem;font-weight:600;color:#374151;margin-top:1rem}.loading-message .spinner{margin:0 auto}.step-description{color:#5f6368;font-size:.95rem;margin:-.5rem 0 1.5rem}.courses-selection{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem}@media(min-width:1200px){.courses-selection{grid-template-columns:repeat(3,1fr)}}@media(min-width:768px)and (max-width:1199px){.courses-selection{grid-template-columns:repeat(2,1fr)}}@media(max-width:767px){.courses-selection{grid-template-columns:1fr}}.course-card{background:#fff;border:2px solid transparent;border-radius:12px;cursor:pointer;transition:all .2s ease;overflow:hidden;box-shadow:0 1px 3px #00000014;position:relative;display:flex;flex-direction:column}.course-card:hover:not(.disabled){border-color:#8ab4f8;box-shadow:0 4px 12px #0000001f;transform:translateY(-2px)}.course-card.selected{border-color:#8ab4f8;background:#e8f0fe;box-shadow:0 4px 12px #8ab4f833}.course-card.disabled{opacity:.6;cursor:not-allowed}.course-card-badge{position:absolute;top:12px;right:12px;background:#8ab4f8;color:#fff;padding:4px 12px;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.course-card-content{padding:1.25rem;flex:1}.course-card-title{font-size:1.125rem;font-weight:600;color:#202124;margin:0 0 .75rem;padding-right:80px}.course-card-description{color:#5f6368;font-size:.875rem;line-height:1.5;margin:0 0 1rem}.course-card-info{display:flex;flex-direction:column;gap:.5rem}.course-info-item{display:flex;align-items:center;gap:8px;font-size:.8125rem;color:#5f6368}.course-info-icon{color:#70757a;flex-shrink:0}.course-card-footer{padding:.875rem 1.25rem;background:#f8f9fa;border-top:1px solid #e8eaed}.course-availability{display:flex;align-items:center;gap:6px;font-size:.875rem;font-weight:600}.course-availability.good{color:#137333}.course-availability.limited{color:#ea8600}.course-availability.full{color:#d93025}.course-availability svg{flex-shrink:0}.plans-selection{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-top:2rem}@media(min-width:1400px){.plans-selection{grid-template-columns:repeat(4,1fr)}}@media(min-width:1024px)and (max-width:1399px){.plans-selection{grid-template-columns:repeat(3,1fr)}}@media(min-width:768px)and (max-width:1023px){.plans-selection{grid-template-columns:repeat(2,1fr)}}.plan-option{position:relative;background:linear-gradient(135deg,#fff,#f8f9fa);border:2px solid #e9ecef;border-radius:16px;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 6px #0000000d,0 1px 3px #00000008;display:flex;flex-direction:column;overflow:hidden;cursor:pointer;transform:translateY(0)}.plan-option:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#667eea,#764ba2);opacity:0;transition:opacity .3s ease}.plan-option:hover{transform:translateY(-8px);box-shadow:0 12px 24px #0000001a,0 6px 12px #0000000d;border-color:#cbd5e1}.plan-option:hover:before{opacity:1}.plan-option.selected{border-color:#667eea;background:linear-gradient(135deg,#f0f2ff,#e0e7ff);box-shadow:0 12px 28px #667eea40,0 8px 16px #667eea26;transform:translateY(-4px)}.plan-option.selected:before{opacity:1}.plan-option h3{font-size:1.75rem;margin:0;padding:2rem 2rem 1rem;color:#1e293b;font-weight:800;letter-spacing:-.02em;background:linear-gradient(135deg,#fffc,#f8f9fa66)}.plan-option.selected h3{color:#667eea;background:linear-gradient(135deg,#667eea0d,#764ba205)}.plan-description{color:#64748b;margin:0;padding:0 2rem 1.5rem;font-size:.9375rem;line-height:1.6;background:linear-gradient(135deg,#fffc,#f8f9fa66);border-bottom:2px solid #f1f3f5}.plan-option.selected .plan-description{background:linear-gradient(135deg,#667eea0d,#764ba205);border-bottom-color:#e0e7ff}.plan-pricing{padding:2rem 1.5rem;text-align:center;background:#fff}.plan-option.selected .plan-pricing{background:linear-gradient(135deg,#fff,#f8faff)}.price-display{display:flex;align-items:baseline;justify-content:center;gap:.5rem;margin-bottom:.5rem}.price-currency{font-size:1.5rem;font-weight:700;color:#475569}.plan-option.selected .price-currency{color:#667eea}.price-amount{font-size:3.5rem;font-weight:900;color:#0f172a;line-height:1;letter-spacing:-.03em;background:linear-gradient(135deg,#1e293b,#334155);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.price-period{font-size:1rem;font-weight:600;color:#64748b}.plan-highlight{padding:2rem 1.5rem;background:linear-gradient(135deg,#667eea,#764ba2);text-align:center;box-shadow:inset 0 2px 8px #0000001a;position:relative;overflow:hidden}.plan-highlight:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%);animation:shimmer 3s ease-in-out infinite}@keyframes shimmer{0%,to{transform:translate(0)}50%{transform:translate(10%,10%)}}.highlight-number{font-size:3.5rem;font-weight:900;color:#fff;line-height:1;margin-bottom:.5rem;text-shadow:0 2px 8px rgba(0,0,0,.2);position:relative;z-index:1}.highlight-label{font-size:.9375rem;color:#fffffff2;text-transform:uppercase;letter-spacing:1px;font-weight:700;position:relative;z-index:1}.plan-features{padding:2rem 1.5rem;flex-grow:1;background:#fff}.plan-option.selected .plan-features{background:linear-gradient(180deg,#fff,#fafbff)}.plan-features ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:1rem}.plan-features li{display:flex;align-items:center;gap:.875rem;font-size:.9375rem;color:#475569;line-height:1.6;padding:.5rem;border-radius:8px;transition:all .2s ease}.plan-features li:hover{background:#f8fafc;transform:translate(4px)}.check-icon{flex-shrink:0;color:#10b981;width:20px;height:20px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#d1fae5,#a7f3d0);border-radius:50%;font-size:12px;font-weight:900}.plan-cta-button{margin:0 1.5rem 1.5rem;padding:.875rem 1.5rem;background:#111827;color:#fff;border:none;border-radius:.5rem;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s ease;width:calc(100% - 3rem)}.plan-cta-button:hover:not(:disabled){background:#1f2937;transform:translateY(-1px);box-shadow:0 4px 6px #0000001a}.plan-cta-button.selected{background:#6366f1}.plan-cta-button.selected:hover{background:#4f46e5}.plan-cta-button:disabled{background:#e5e7eb;color:#9ca3af;cursor:not-allowed}.selection-summary{background:#f0f9ff;border-left:4px solid var(--primary-color);padding:1rem 1.5rem;margin-bottom:2rem;border-radius:.5rem}.selection-summary p{margin:0;color:var(--text-dark);font-size:.95rem}.selection-summary strong{color:var(--primary-color);font-weight:600}.plan-option.incompatible{opacity:.6;pointer-events:none;filter:grayscale(30%)}.incompatibility-warning{background:linear-gradient(135deg,#fef2f2,#fee2e2);color:#991b1b;padding:1rem 1.5rem;margin:0 1.5rem 1rem;border-radius:10px;font-size:.8125rem;line-height:1.6;border:2px solid #fca5a5;box-shadow:0 2px 8px #dc26261a}.compatibility-badge{background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#065f46;padding:.75rem 1.5rem;margin:0 1.5rem 1rem;border-radius:10px;font-size:.875rem;font-weight:600;text-align:center;border:2px solid #6ee7b7;box-shadow:0 2px 8px #10b98126}.plan-price{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:2rem 2rem 1.5rem;background:#fff}.plan-option.selected .plan-price{background:linear-gradient(135deg,#fff,#f8faff)}.price-amount{font-size:3rem;font-weight:900;color:#0f172a;background:linear-gradient(135deg,#1e293b,#334155);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.plan-option.selected .price-amount{background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.plan-details{padding:1.5rem 2rem 2rem;display:flex;flex-direction:column;gap:1rem;background:#fff}.plan-option.selected .plan-details{background:#fff}.plan-classes{text-align:center;padding:1.25rem;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb}.classes-number{display:block;font-size:2.5rem;font-weight:800;color:#111827;line-height:1;margin-bottom:.5rem}.classes-label{display:block;font-size:.8125rem;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;font-weight:600}.plan-info-item{display:flex;align-items:center;justify-content:space-between;padding:.75rem 0;border-bottom:1px solid #e5e7eb;transition:all .15s ease}.plan-info-item:last-child{border-bottom:none}.plan-info-item:hover{padding-left:.5rem}.info-label{font-size:.875rem;color:#6b7280;font-weight:500}.info-value{font-size:.9375rem;color:#111827;font-weight:600}.plan-type-badge{text-align:center;padding:.625rem 1rem;background:#f9fafb;border-radius:6px;font-size:.875rem;font-weight:600;color:#6b7280;border:1px solid #e5e7eb}.schedule-info{text-align:center;font-size:1.125rem;color:var(--text-light);margin-bottom:2rem}.schedules-selection{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.schedule-option{padding:1.5rem;border:2px solid var(--border-color);border-radius:.75rem;cursor:pointer;text-align:center;transition:all .3s}.schedule-option:hover:not(.disabled){border-color:var(--primary-color);box-shadow:var(--shadow-md)}.schedule-option.selected{border-color:var(--primary-color);background:#6366f10d}.schedule-option.disabled{opacity:.5;cursor:not-allowed}.schedule-day{font-weight:700;color:var(--text-dark);margin-bottom:.5rem;font-size:1.125rem}.schedule-time{color:var(--text-light);margin-bottom:.75rem}.schedule-availability{padding-top:.75rem;border-top:1px solid var(--border-color);font-size:.875rem}.slots-full{color:var(--error-color);font-weight:600}.schedules-calendar{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem;margin-top:2rem}.section-card{border:2px solid var(--border-color);border-radius:1rem;padding:1.5rem;background:var(--bg-white);cursor:pointer;transition:all .3s ease;box-shadow:var(--shadow-sm)}.section-card:hover:not(.disabled){border-color:var(--primary-color);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.section-card.selected{border-color:var(--primary-color);background:linear-gradient(135deg,#77bdc50d,#92ced51a);box-shadow:var(--shadow-md)}.section-card.disabled{opacity:.6;cursor:not-allowed;background:var(--bg-light)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem;padding-bottom:1rem;border-bottom:2px solid var(--border-color)}.section-header h3{margin:0;color:var(--primary-dark);font-size:1.5rem;font-weight:700}.selected-badge{background:var(--primary-color);color:#fff;padding:.375rem .875rem;border-radius:2rem;font-size:.875rem;font-weight:600}.section-details{display:flex;flex-direction:column;gap:.875rem}.section-info-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0}.info-label{font-weight:600;color:var(--text-light);font-size:.95rem}.info-value{color:var(--text-dark);font-weight:500;text-align:left}.info-value.limited{color:var(--warning-color);font-weight:700}.student-form{max-width:700px;margin:0 auto;padding:2rem;background:linear-gradient(135deg,#fafbff,#f5f7fa);border-radius:16px;border:1px solid #e5e7eb}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.5rem}.form-group{margin-bottom:1.75rem;position:relative}.form-group label{display:block;margin-bottom:.75rem;font-weight:700;color:#1f2937;font-size:.875rem;text-transform:uppercase;letter-spacing:.5px}.form-group input{width:100%;padding:1rem 1.25rem;border:2px solid #e5e7eb;border-radius:10px;font-size:1rem;transition:all .3s cubic-bezier(.4,0,.2,1);background:#fff;color:#111827;font-weight:500;box-shadow:0 2px 4px #00000005}.form-group input::placeholder{color:#9ca3af;font-weight:400}.form-group input:hover{border-color:#cbd5e1;box-shadow:0 4px 8px #0000000a}.form-group input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 4px #667eea1a,0 4px 12px #667eea26;transform:translateY(-1px)}.form-group input.error{border-color:#ef4444;background:#fef2f2}.form-group input.error:focus{box-shadow:0 0 0 4px #ef44441a,0 4px 12px #ef444426}.error-message{display:block;color:#dc2626;font-size:.8125rem;margin-top:.5rem;font-weight:600;animation:slideDown .3s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.payment-summary{background:transparent;padding:0;border-radius:0;margin-bottom:2rem}.payment-summary h3{font-size:1.5rem;margin-bottom:1.5rem;color:#111827;font-weight:700;text-align:center}.payment-summary{display:grid;grid-template-columns:1fr;gap:0}.payment-summary>h3{grid-column:1 / -1}.payment-summary .summary-card{grid-column:auto}.payment-summary .payment-total-card{grid-column:1 / -1}.payment-summary:before{content:"";display:none}@media(min-width:768px){.payment-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.payment-summary>h3{grid-column:1 / -1}.payment-summary .payment-total-card{grid-column:1 / -1}}.summary-card{background:#fff;border:2px solid #e9ecef;border-radius:12px;margin-bottom:0;overflow:hidden;transition:all .4s cubic-bezier(.4,0,.2,1);position:relative}.summary-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#667eea,#764ba2);opacity:0;transition:opacity .3s ease}.summary-card:hover{border-color:#667eea;box-shadow:0 8px 20px #667eea33,0 4px 8px #667eea1a;transform:translateY(-4px) scale(1.01)}.summary-card:hover:before{opacity:1}.summary-card-header{background:#efefef;padding:1rem 1.25rem;font-size:.9375rem;font-weight:700;color:#222;border-bottom:none;text-align:center}.summary-card-content{padding:1.5rem 1.25rem;display:flex;flex-direction:column;gap:1rem}.summary-card-content .info-row{display:flex;flex-direction:column;gap:.25rem;padding-bottom:.75rem;border-bottom:1px solid #f3f4f6}.summary-card-content .info-row:last-child{border-bottom:none;padding-bottom:0}.summary-card-content .info-label{font-size:.75rem;color:#9ca3af;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.summary-card-content .info-value{font-size:.9375rem;color:#111827;font-weight:600}.classes-dates-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:.5rem;margin-top:.5rem}.class-date-item{padding:.5rem .75rem;background:#f3f4f6;border-radius:6px;font-size:.8125rem;font-weight:600;color:#374151;text-align:center;border:1px solid #e5e7eb;text-transform:capitalize}.class-date-item:hover{background:#e5e7eb;border-color:#d1d5db}.payment-total-card{background:var(--primary-color);padding:2rem;border-radius:12px;display:flex;justify-content:space-between;align-items:center;margin-top:1.5rem;box-shadow:0 8px 16px #10b98140;border:2px solid rgba(255,255,255,.2)}.total-label{font-size:1rem;color:#fffffff2;font-weight:700;text-transform:uppercase;letter-spacing:1px}.total-amount{font-size:2.5rem;color:#fff;font-weight:900;letter-spacing:-.02em;text-shadow:0 2px 4px rgba(0,0,0,.1)}.summary-detail{color:var(--text-light);font-size:.875rem;font-weight:400}.section-summary{margin-bottom:1rem;padding:.75rem;background:var(--bg-white);border-radius:.5rem;border-left:3px solid var(--primary-color)}.section-summary:last-of-type{margin-bottom:0}.section-title{font-weight:600;color:var(--text-dark);margin-bottom:.25rem}.payment-total{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;font-size:1.25rem;font-weight:700;color:var(--text-dark)}.total-amount{color:#fff;font-size:2rem}.payment-method-selection{margin:2rem 0}.payment-method-selection h3{margin-bottom:1.5rem;color:#111827;font-size:1.25rem;font-weight:700}.payment-methods-simple{display:flex;gap:1.5rem;align-items:center;justify-content:center;flex-wrap:wrap}.payment-logo-wrapper{padding:1rem;border:2px solid #e5e7eb;border-radius:.5rem;cursor:pointer;transition:all .2s ease;background:#fff;display:flex;align-items:center;justify-content:center}.payment-logo-wrapper:hover{border-color:#6366f1;box-shadow:0 4px 6px #0000001a}.payment-logo-wrapper.selected{border-color:#6366f1;background:#f0f1ff;box-shadow:0 0 0 3px #6366f11a}.webpay-logo-large{max-width:180px;max-height:80px;width:auto;height:auto;object-fit:contain}.payment-emoji-large{font-size:4rem;line-height:1}.payment-method-name{font-weight:600;color:var(--text-dark);margin-bottom:.25rem}.payment-method-description{font-size:.875rem;color:var(--text-light)}.payment-container{max-width:500px;margin:2rem auto 0}.webpay-container{max-width:500px;margin:0 auto}.webpay-logo{text-align:center;margin-bottom:2rem}.webpay-text{font-size:2rem;font-weight:700;color:var(--primary-color);margin-bottom:.5rem}.webpay-subtitle{color:var(--text-light)}.payment-info{text-align:center;color:var(--text-light);margin-bottom:2rem;padding:1rem;background:var(--bg-light);border-radius:.5rem}.processing-payment{text-align:center;padding:4rem 0;background:linear-gradient(135deg,#fafbff,#f5f7fa);border-radius:16px;margin:2rem 0}.spinner{width:60px;height:60px;border:4px solid #e5e7eb;border-top-color:#667eea;border-right-color:#764ba2;border-radius:50%;animation:spin .8s cubic-bezier(.68,-.55,.27,1.55) infinite;margin:0 auto 1.5rem;box-shadow:0 4px 12px #667eea33,inset 0 0 8px #667eea1a}@keyframes spin{to{transform:rotate(360deg)}}.processing-payment p{font-size:1.125rem;font-weight:600;color:#374151;margin-bottom:.5rem}.processing-info{color:#6b7280;font-size:.9375rem;margin-top:.75rem;font-weight:500;animation:pulse 2s ease-in-out infinite}@keyframes fadeInOut{0%,to{opacity:.6}50%{opacity:1}}.payment-confirmation{text-align:center;padding:3rem 0}.confirmation-icon{width:80px;height:80px;background:var(--success-color);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:3rem;margin:0 auto 1.5rem}.loading-dots{display:flex;justify-content:center;gap:.5rem;margin-top:1rem}.loading-dots span{width:10px;height:10px;background:var(--primary-color);border-radius:50%;animation:bounce 1.4s infinite ease-in-out both}.loading-dots span:nth-child(1){animation-delay:-.32s}.loading-dots span:nth-child(2){animation-delay:-.16s}@keyframes bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.success-container{max-width:700px}.success-content{padding:3rem;text-align:center}.success-icon{width:100px;height:100px;background:var(--success-color);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:4rem;margin:0 auto 2rem;animation:scaleIn .5s ease-out}@keyframes scaleIn{0%{transform:scale(0)}to{transform:scale(1)}}.success-content h1{color:var(--text-dark);margin-bottom:1rem}.success-message{font-size:1.25rem;color:var(--text-light);margin-bottom:2rem}.success-details{background:var(--bg-light);padding:2rem;border-radius:.75rem;margin-bottom:2rem;text-align:left}.success-details h3{text-align:center;margin-bottom:1.5rem;color:var(--text-dark)}.detail-item{display:flex;justify-content:space-between;padding:.75rem 0;border-bottom:1px solid var(--border-color)}.detail-item:last-child{border-bottom:none}.detail-item strong{color:var(--text-light);font-weight:600}.detail-item span{color:var(--text-dark);font-weight:500;text-align:right}.schedules-list{text-align:right}.success-info{margin-bottom:2rem}.success-info p{margin-bottom:.75rem;color:var(--text-light)}.step-actions,.form-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:2.5rem;padding-top:2rem;border-top:1px solid #f3f4f6}.btn-primary,.btn-secondary{padding:1rem 2.5rem;border:none;border-radius:12px;font-size:1rem;font-weight:700;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;letter-spacing:.3px;text-transform:uppercase;font-size:.875rem}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 15px #667eea66,0 2px 8px #764ba233}.btn-primary:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.btn-primary:hover:before{left:100%}.btn-primary:hover:not(:disabled){transform:translateY(-3px) scale(1.02);box-shadow:0 8px 25px #667eea80,0 4px 12px #764ba24d}.btn-primary:active:not(:disabled){transform:translateY(-1px) scale(.98)}.btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.btn-secondary{background:#fff;color:#374151;border:2px solid #e5e7eb;box-shadow:0 2px 8px #0000000d}.btn-secondary:hover{background:#f9fafb;border-color:#667eea;color:#667eea;transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.btn-secondary:active{transform:translateY(0)}.btn-webpay{background:linear-gradient(135deg,var(--primary-color),var(--secondary-color))}.change-dates-checkbox-container{margin:1.5rem 0;padding:1rem;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb}.change-dates-checkbox-label{display:flex;align-items:center;gap:.75rem;cursor:pointer;-webkit-user-select:none;user-select:none}.change-dates-checkbox{width:20px;height:20px;cursor:pointer;accent-color:#667eea}.checkbox-text{font-size:.9375rem;color:#374151;font-weight:500}.change-dates-checkbox-label:hover .checkbox-text{color:#667eea}@media(min-width:1600px){.enrollment-page .enrollment-container{max-width:1600px}.enrollment-content{padding:4rem 5rem}.plans-selection{grid-template-columns:repeat(4,1fr);gap:2rem}}@media(min-width:1400px){.container,.courses-grid,.about-content{padding:0 3rem}.enrollment-content{padding:3.5rem 4rem}}@media(min-width:1200px)and (max-width:1599px){.enrollment-page .enrollment-container{max-width:1400px}}@media(max-width:768px){.hero{min-height:auto}.hero-container{flex-direction:column}.hero-content{flex:1;padding:3rem 2rem;text-align:center}.hero-carousel{flex:1;min-height:400px}.hero h1{font-size:2.5rem}.hero-subtitle{font-size:1.25rem}.cta-buttons-group{align-items:center;width:100%}.cta-button{align-self:center;width:100%;text-align:center;justify-content:center}.cta-button.secondary{font-size:1rem;padding:1rem 1.5rem}.new-badge{font-size:.6rem}.carousel-nav{width:45px;height:45px;font-size:2rem}.carousel-nav.prev{left:10px}.carousel-nav.next{right:10px}.carousel-indicators{bottom:15px;padding:6px 10px}.indicator{width:8px;height:8px}.indicator.active{width:24px}nav{gap:1rem}nav a{display:none}.courses-grid{grid-template-columns:1fr;gap:3rem 1rem;padding:0 1rem 3rem}.course-card{border-width:6px}.plans-selection,.schedules-selection,.form-row{grid-template-columns:1fr}.payment-summary{grid-template-columns:1fr!important;gap:1.5rem}.summary-card-content .info-row{flex-direction:column}.total-amount{font-size:2rem}.enrollment-progress{padding:1.25rem 1rem .5rem;overflow-x:auto}.progress-line{width:25px}.step-label{font-size:.7rem}.step-number{width:28px;height:28px;font-size:.8rem}}@media(max-width:480px){.enrollment-modal{padding:0}.enrollment-container{border-radius:0;max-height:100vh}.enrollment-header,.enrollment-content{padding:1rem}.success-content{padding:1.5rem}}.validation-error-message{margin-top:1rem;padding:1rem 1.5rem;background:linear-gradient(135deg,#fff5f5,#ffe5e5);border:2px solid #dc3545;border-radius:8px;color:#721c24;font-weight:600;text-align:center;font-size:.95rem;animation:shake .5s ease}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-5px)}20%,40%,60%,80%{transform:translate(5px)}}.plan-section{margin-bottom:2rem;padding-bottom:2rem;border-bottom:2px solid #e9ecef}.plan-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.section-title{font-size:1.25rem;font-weight:700;color:#2c3e50;margin:0 0 1rem;display:flex;align-items:center;gap:.5rem}.section-title:before{content:"";width:4px;height:24px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:2px}.loading-message{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1rem;gap:1rem}.spinner{width:40px;height:40px;border:4px solid #f3f4f6;border-top:4px solid #667eea;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.error-message,.info-message{padding:1.5rem;border-radius:10px;text-align:center}.error-message{background:#fee2e2;color:#991b1b;border:2px solid #fca5a5}.info-message{background:#dbeafe;color:#1e40af;border:2px solid #93c5fd}.incomplete-warning,.validation-error-message{margin-top:1rem;padding:1rem;background:#fef3c7;border:2px solid #fbbf24;border-radius:8px;color:#92400e;font-weight:600;text-align:center}
