@keyframes shimmer{0%{background-position:-200px 0}to{background-position:200px 0}}.holidays-page{flex-direction:column;gap:16px;max-width:480px;margin:0 auto;padding:16px;display:flex}.holidays-list{flex-direction:column;gap:18px;display:flex}.holiday-card{position:relative}.holiday-card__body{background-image:var(--holiday-gradient);color:#fff;border-radius:20px;flex-direction:column;padding:18px;display:flex;position:relative;box-shadow:0 16px 34px #0f172a14}[data-theme=dark] .holiday-card__body{box-shadow:0 22px 44px #03071280}.holiday-card__header{align-items:center;gap:14px;display:flex}.holiday-card__icon{flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.holiday-card__icon img{filter:brightness(0)invert();width:32px;height:32px}.holiday-card__heading{flex-direction:column;flex:1;gap:4px;display:flex}.holiday-card__title{color:#fff;font-size:18px;font-weight:700}.holiday-card__date-value{color:#ffffffe6;font-size:15px;font-weight:500}.holiday-card__date-value--empty{color:#fff9;font-size:14px}.holiday-card__muted{color:#ffffffb3;font-size:14px}.holiday-card__skeleton{background:#ffffff40;border-radius:8px;width:140px;height:20px;position:relative;overflow:hidden}.holiday-card__skeleton:before{content:"";background:linear-gradient(90deg,#0000 0% 40%,#fff9 50%,#0000 60% 100%);width:150%;height:100%;animation:2s linear infinite shimmer;position:absolute;top:0;left:-150%}@media (prefers-reduced-motion:reduce){.holiday-card__skeleton:before{animation:none}}.ReactCrop{cursor:crosshair;max-width:100%;display:inline-block;position:relative;overflow:hidden}.ReactCrop *,.ReactCrop :before,.ReactCrop :after{box-sizing:border-box}.ReactCrop--disabled,.ReactCrop--locked{cursor:inherit}.ReactCrop__child-wrapper{max-height:inherit}.ReactCrop__child-wrapper>img,.ReactCrop__child-wrapper>video{max-width:100%;max-height:inherit;display:block}.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>img,.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>video,.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__crop-selection{touch-action:none}.ReactCrop__crop-selection{cursor:move;position:absolute;top:0;left:0;transform:translateZ(0);box-shadow:0 0 0 9999em #00000080}.ReactCrop--disabled .ReactCrop__crop-selection{cursor:inherit}.ReactCrop--circular-crop .ReactCrop__crop-selection{border-radius:50%}.ReactCrop--no-animate .ReactCrop__crop-selection{outline:1px dashed #fff}.ReactCrop__crop-selection:not(.ReactCrop--no-animate .ReactCrop__crop-selection){color:#fff;background-image:linear-gradient(90deg,#fff 50%,#444 50%),linear-gradient(90deg,#fff 50%,#444 50%),linear-gradient(#fff 50%,#444 50%),linear-gradient(#fff 50%,#444 50%);background-position:0 0,0 100%,0 0,100% 0;background-repeat:repeat-x,repeat-x,repeat-y,repeat-y;background-size:10px 1px,10px 1px,1px 10px,1px 10px;animation:1s linear infinite marching-ants}@keyframes marching-ants{0%{background-position:0 0,0 100%,0 0,100% 0}to{background-position:20px 0,-20px 100%,0 -20px,100% 20px}}.ReactCrop__crop-selection:focus{border-style:solid;border-color:#00f;outline:none}.ReactCrop--invisible-crop .ReactCrop__crop-selection{display:none}.ReactCrop__rule-of-thirds-vt:before,.ReactCrop__rule-of-thirds-vt:after,.ReactCrop__rule-of-thirds-hz:before,.ReactCrop__rule-of-thirds-hz:after{content:"";background-color:#fff6;display:block;position:absolute}.ReactCrop__rule-of-thirds-vt:before,.ReactCrop__rule-of-thirds-vt:after{width:1px;height:100%}.ReactCrop__rule-of-thirds-vt:before{left:33.3333%}.ReactCrop__rule-of-thirds-vt:after{left:66.6667%}.ReactCrop__rule-of-thirds-hz:before,.ReactCrop__rule-of-thirds-hz:after{width:100%;height:1px}.ReactCrop__rule-of-thirds-hz:before{top:33.3333%}.ReactCrop__rule-of-thirds-hz:after{top:66.6667%}.ReactCrop__drag-handle{position:absolute}.ReactCrop__drag-handle:after{content:"";background-color:#0003;border:1px solid #ffffffb3;outline:1px solid #0000;width:10px;height:10px;display:block;position:absolute}.ReactCrop__drag-handle:focus:after{background:#2dbfff;border-color:#00f}.ReactCrop .ord-nw{cursor:nw-resize;margin-top:-5px;margin-left:-5px;top:0;left:0}.ReactCrop .ord-nw:after{top:0;left:0}.ReactCrop .ord-n{cursor:n-resize;margin-top:-5px;margin-left:-5px;top:0;left:50%}.ReactCrop .ord-n:after{top:0}.ReactCrop .ord-ne{cursor:ne-resize;margin-top:-5px;margin-right:-5px;top:0;right:0}.ReactCrop .ord-ne:after{top:0;right:0}.ReactCrop .ord-e{cursor:e-resize;margin-top:-5px;margin-right:-5px;top:50%;right:0}.ReactCrop .ord-e:after{right:0}.ReactCrop .ord-se{cursor:se-resize;margin-bottom:-5px;margin-right:-5px;bottom:0;right:0}.ReactCrop .ord-se:after{bottom:0;right:0}.ReactCrop .ord-s{cursor:s-resize;margin-bottom:-5px;margin-left:-5px;bottom:0;left:50%}.ReactCrop .ord-s:after{bottom:0}.ReactCrop .ord-sw{cursor:sw-resize;margin-bottom:-5px;margin-left:-5px;bottom:0;left:0}.ReactCrop .ord-sw:after{bottom:0;left:0}.ReactCrop .ord-w{cursor:w-resize;margin-top:-5px;margin-left:-5px;top:50%;left:0}.ReactCrop .ord-w:after{left:0}.ReactCrop__disabled .ReactCrop__drag-handle{cursor:inherit}.ReactCrop__drag-bar{position:absolute}.ReactCrop__drag-bar.ord-n{width:100%;height:6px;margin-top:-3px;top:0;left:0}.ReactCrop__drag-bar.ord-e{width:6px;height:100%;margin-right:-3px;top:0;right:0}.ReactCrop__drag-bar.ord-s{width:100%;height:6px;margin-bottom:-3px;bottom:0;left:0}.ReactCrop__drag-bar.ord-w{width:6px;height:100%;margin-left:-3px;top:0;left:0}.ReactCrop--new-crop .ReactCrop__drag-bar,.ReactCrop--new-crop .ReactCrop__drag-handle,.ReactCrop--fixed-aspect .ReactCrop__drag-bar,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-n,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-e,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-s,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-w{display:none}@media (pointer:coarse){.ReactCrop .ord-n,.ReactCrop .ord-e,.ReactCrop .ord-s,.ReactCrop .ord-w{display:none}.ReactCrop__drag-handle{width:24px;height:24px}}.calendar-root{background:var(--surface);color:var(--text);font-family:var(--font-family-base);box-sizing:border-box;width:320px;box-shadow:var(--shadow-2);border-radius:8px;flex-direction:column;gap:12px;padding:16px;display:inline-flex}.calendar-header{color:var(--text);justify-content:space-between;align-items:center;display:flex}.calendar-title{flex-direction:column;align-items:center;gap:2px;display:flex}.calendar-month{text-transform:capitalize;color:var(--brand);font-size:20px;font-weight:600}.calendar-year{color:var(--text-muted);font-size:16px;font-weight:500}.calendar-nav-btn{cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;border-radius:999px;justify-content:center;align-items:center;width:36px;height:36px;transition:transform .2s,background-color .2s;display:inline-flex}.calendar-arrow{width:18px;height:18px;color:var(--brand);transition:transform .2s}.calendar-arrow--prev{transform:rotate(-90deg)}.calendar-arrow--next{transform:rotate(90deg)}.calendar-nav-btn:hover,.calendar-nav-btn:focus-visible{background:var(--brand-quiet)}.calendar-nav-btn:active{transform:scale(.92)}.calendar-weekdays{text-transform:uppercase;color:var(--text-muted);grid-template-columns:repeat(7,36px);justify-content:center;gap:6px;font-size:11px;display:grid}.calendar-weekday{text-align:center;white-space:nowrap;font-weight:600}.calendar-grid-wrapper{position:relative;overflow:hidden}.calendar-grid{grid-template-columns:repeat(7,36px);justify-content:center;gap:6px;display:grid}.calendar-day{cursor:pointer;width:36px;height:36px;color:var(--text);-webkit-tap-highlight-color:transparent;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:14px;font-weight:500;transition:background-color .2s,color .2s,transform .2s;display:inline-flex;position:relative}.calendar-day span{z-index:1;position:relative}.calendar-day:focus-visible,.calendar-day:hover{background:var(--brand-quiet)}.calendar-day:active{transform:scale(.94)}.calendar-day--muted{color:var(--text-muted)}.calendar-day--selected{background:var(--brand);color:var(--surface);box-shadow:var(--shadow-2)}[data-theme=dark] .calendar-day--selected{color:var(--text-strong)}.calendar-day--today:not(.calendar-day--selected){border:1px solid var(--brand)}.calendar-fade-enter{opacity:0;transform:scale(.96)}.calendar-fade-enter-active{opacity:1;transition:opacity .2s,transform .2s;transform:scale(1)}.calendar-fade-exit{opacity:1;transform:scale(1)}.calendar-fade-exit-active{opacity:0;transition:opacity .18s,transform .18s;transform:scale(.96)}.calendar-month-label-forward-enter{opacity:0;transform:translateY(-16px)}.calendar-month-label-forward-enter-active{opacity:1;transition:opacity .25s,transform .25s;transform:translateY(0)}.calendar-month-label-forward-exit{opacity:1;transform:translateY(0)}.calendar-month-label-forward-exit-active{opacity:0;transition:opacity .25s,transform .25s;transform:translateY(16px)}.calendar-month-label-backward-enter{opacity:0;transform:translateY(16px)}.calendar-month-label-backward-enter-active{opacity:1;transition:opacity .25s,transform .25s;transform:translateY(0)}.calendar-month-label-backward-exit{opacity:1;transform:translateY(0)}.calendar-month-label-backward-exit-active{opacity:0;transition:opacity .25s,transform .25s;transform:translateY(-16px)}.calendar-year-label-forward-enter{opacity:0;transform:translateY(-12px)}.calendar-year-label-forward-enter-active{opacity:1;transition:opacity .25s,transform .25s;transform:translateY(0)}.calendar-year-label-forward-exit{opacity:1;transform:translateY(0)}.calendar-year-label-forward-exit-active{opacity:0;transition:opacity .25s,transform .25s;transform:translateY(12px)}.calendar-year-label-backward-enter{opacity:0;transform:translateY(12px)}.calendar-year-label-backward-enter-active{opacity:1;transition:opacity .25s,transform .25s;transform:translateY(0)}.calendar-year-label-backward-exit{opacity:1;transform:translateY(0)}.calendar-year-label-backward-exit-active{opacity:0;transition:opacity .25s,transform .25s;transform:translateY(-12px)}.calendar-grid-forward-enter{opacity:0;transform:translateY(12px)}.calendar-grid-forward-enter-active{opacity:1;transition:opacity .25s,transform .25s;transform:translateY(0)}.calendar-grid-forward-exit{opacity:1;transform:translateY(0)}.calendar-grid-forward-exit-active{opacity:0;transition:opacity .25s,transform .25s;transform:translateY(-12px)}.calendar-grid-backward-enter{opacity:0;transform:translateY(-12px)}.calendar-grid-backward-enter-active{opacity:1;transition:opacity .25s,transform .25s;transform:translateY(0)}.calendar-grid-backward-exit{opacity:1;transform:translateY(0)}.calendar-grid-backward-exit-active{opacity:0;transition:opacity .25s,transform .25s;transform:translateY(12px)}.calendar-grid-forward-enter-active,.calendar-grid-backward-enter-active{z-index:2}@media (prefers-reduced-motion:reduce){.calendar-root,.calendar-grid,.calendar-month,.calendar-year,.calendar-day,.calendar-nav-btn,.calendar-weekdays{transition:none!important;animation:none!important}}html,body{user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}input,textarea,[contenteditable=true],[data-selectable=true]{user-select:text!important;-webkit-touch-callout:default!important;pointer-events:auto!important;touch-action:manipulation!important}img,a,button{-webkit-user-drag:none;-webkit-touch-callout:none}::selection{background:0 0}input::selection,textarea::selection,[contenteditable=true]::selection,[data-selectable=true]::selection{background:var(--selection-bg,#6496ff59)}input::-moz-selection{background:var(--selection-bg,#6496ff59)}textarea::-moz-selection{background:var(--selection-bg,#6496ff59)}[contenteditable=true]::-moz-selection{background:var(--selection-bg,#6496ff59)}[data-selectable=true]::-moz-selection{background:var(--selection-bg,#6496ff59)}.editor,.editor *{user-select:text!important}.editor ::selection,.editor ::selection{background:var(--selection-bg,#6496ff59)}.editor ::-moz-selection{background:var(--selection-bg,#6496ff59)}html{background-color:var(--bg)!important}[data-theme=dark],[data-theme=dark] body{background-color:#121212!important}body{font-family:var(--font-family-base);color:var(--text);box-sizing:border-box;min-height:100vh;padding:0;padding-bottom:calc(84px + env(safe-area-inset-bottom));flex-direction:column;align-items:stretch;margin:0;display:flex;overflow-x:hidden;background-color:var(--bg)!important}body::-webkit-scrollbar{width:0;height:0}body{scrollbar-width:none}#root{background-color:var(--bg);flex:1;width:100%}h1,h2,h3,h4,p,span{overflow-wrap:anywhere;word-wrap:break-word;word-break:break-word;box-sizing:border-box;max-width:100%;margin:0;padding:0}h1{font-family:var(--font-family-heading);font-size:var(--font-size-h1);font-weight:700}h2{font-family:var(--font-family-heading);font-size:var(--font-size-h2);font-weight:600}h3{font-family:var(--font-family-heading);font-size:var(--font-size-h3);font-weight:500}h4{font-family:var(--font-family-heading);font-size:var(--font-size-h4);font-weight:500}p,span{font-size:var(--font-size-base);font-family:var(--font-family-base)}.text-h1{font-size:var(--font-size-h1);font-weight:700}.text-h2{font-size:var(--font-size-h2);font-weight:600}.text-h3{font-size:var(--font-size-h3);font-weight:500}.text-h4{font-size:var(--font-size-h4);font-weight:500}.text-sm{font-size:var(--font-size-small)}.text-bs{font-size:var(--font-size-base)}.header-container{background:var(--bg);z-index:1000;height:56px;position:fixed;top:0;left:0;right:0}.header-inner{box-sizing:border-box;justify-content:space-between;align-items:center;max-width:100%;height:100%;margin:0 auto;padding:0 12px;display:flex}.header-logo-button{background-color:var(--bg);cursor:pointer;border:none;padding:0}.header-profile-button{background:0 0;border-radius:8px;justify-content:center;align-items:center;width:40px;height:40px;transition:background .2s;display:flex}.header-profile-button.active{background:var(--brand-quiet)}.header-title{white-space:nowrap;text-overflow:ellipsis;pointer-events:none;position:absolute;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)}.logo{background:url(logo.b486f175.png) 50%/contain no-repeat;width:50px;height:50px}.container{box-sizing:border-box;text-align:left;background-color:var(--bg);width:100%;max-width:100%;padding:0 15px;margin-top:56px!important}.header{font-size:var(--font-size-h1);color:var(--text);text-align:left;margin-bottom:10px;font-weight:600}.description{font-size:var(--font-size-h2);color:var(--text-muted);text-align:left;margin-bottom:20px;font-weight:500}.dropdown-label{font-family:var(--font-family-base)!important;font-size:var(--font-size-h3)!important;color:var(--text)!important;text-align:left!important;margin-bottom:5px!important;font-weight:500!important;display:block!important}.dropdown{font-family:var(--font-family-base)!important;font-size:var(--font-size-h3)!important;color:var(--text)!important;background-color:var(--dropdown-bg)!important;border:1px solid var(--border)!important;appearance:none!important;width:100%!important;box-shadow:var(--shadow-2)!important;background-image:url("data:image/svg+xml,%3Csvg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 10 6\"%3E%3Cpath fill=\"none\" stroke=\"%233c3c43\" stroke-width=\"1.5\" d=\"M1 1l4 4 4-4\"/%3E%3C/svg%3E")!important;background-position:right 10px center!important;background-repeat:no-repeat!important;background-size:12px!important;border-radius:8px!important;margin-bottom:20px!important;padding:10px!important}.dropdown-input{width:100%;font-size:var(--font-size-small);border:1px solid var(--border);box-sizing:border-box;background-color:var(--surface);box-shadow:var(--shadow-2);border-radius:8px;margin-bottom:12px;padding:8px 12px;user-select:text!important;pointer-events:auto!important;touch-action:manipulation!important}.dropdown-textarea{width:100%;font-size:var(--font-size-small);border:1px solid var(--border);box-sizing:border-box;resize:vertical;background-color:var(--surface);box-shadow:var(--shadow-2);border-radius:8px;margin-bottom:12px;padding:8px 12px;overflow-y:auto;user-select:text!important;pointer-events:auto!important;touch-action:manipulation!important}.day-slider{box-sizing:border-box;border:1px solid var(--border);background-color:var(--surface);width:100%;height:40px;box-shadow:var(--shadow-2);--slider-items:2;--slider-padding:4px;border-radius:9999px;align-items:center;display:flex;position:relative;overflow:hidden}.slider-active-bg{top:var(--slider-padding);bottom:var(--slider-padding);left:var(--slider-padding);width:calc((100% - (var(--slider-padding)*2))/var(--slider-items));background-color:var(--brand);z-index:1;border-radius:9999px;transition:transform .3s ease-out,width .3s ease-out;position:absolute;transform:translate(0)}.day-slider .slider-btn{z-index:2;color:var(--brand);font-size:var(--font-size-base);cursor:pointer;user-select:none;-webkit-tap-highlight-color:transparent;appearance:none;height:100%;box-shadow:none;background:0 0;border:none;outline:none;flex:1;justify-content:center;align-items:center;font-weight:500;transition:color .2s ease-in-out;display:flex;position:relative}.day-slider .slider-btn:hover,.day-slider .slider-btn:active,.day-slider .slider-btn:focus{box-shadow:none!important;background:0 0!important;outline:none!important}.day-slider .slider-btn.active{color:var(--surface);transition:color .2s ease-in-out}.switch{width:48px;height:26px;display:inline-block;position:relative}.switch input{opacity:0;width:0;height:0}.slider{cursor:pointer;background-color:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-2);border-radius:26px;transition:all .4s;position:absolute;inset:0}.slider:before{content:"";background-color:var(--brand);border-radius:50%;width:20px;height:20px;transition:all .4s;position:absolute;top:3px;left:3px;transform:translate(0)}input:checked+.slider{background-color:var(--surface)}input:not(:checked)+.slider:before{background-color:var(--knob-muted);transform:translate(0)}input:checked+.slider:before{background-color:var(--brand);transform:translate(21px)}.slider.round{border-radius:26px}.slider.round:before{border-radius:50%}.no-border-table{border-collapse:collapse;table-layout:fixed;border:none;width:100%}.no-border-table th,.no-border-table td{word-wrap:break-word;overflow-wrap:break-word;border:none;padding:8px}.no-border-table tbody tr:not(:last-child){border-bottom:1px solid var(--divider)}.dragging{background-color:var(--drag-bg)!important}.button{appearance:none;font-family:var(--font-family-base);font-weight:500;font-size:var(--font-size-h3);background-color:var(--brand);cursor:pointer;white-space:normal;border:none;border-radius:8px;outline:none;max-width:100%;margin:20px auto 0;padding:10px;transition:background-color .3s,color .3s;display:block;color:var(--surface)!important;border:none!important}.button.small{font-size:var(--font-size-small);white-space:nowrap;max-width:100%;margin:0;padding:6px 12px;display:inline-block}.button:hover{background-color:var(--brand-hover)}.button:active{background-color:var(--brand-hover);transition:all .1s;transform:scale(.98)}.schedule-toggle-btn{-webkit-tap-highlight-color:transparent;transition:none}.schedule-toggle-btn:hover{background-color:var(--brand)!important}.schedule-toggle-btn:active{transform:scale(.97);background-color:var(--brand)!important}.schedule-toggle-btn:focus{background-color:var(--brand)}.schedule-toggle-btn:focus:active,.schedule-toggle-btn:hover:active{background-color:var(--brand)!important}@media (width<=480px){.schedule-toggle-btn,.schedule-toggle-btn:active,.schedule-toggle-btn:hover,.schedule-toggle-btn:focus{background-color:var(--brand);-webkit-tap-highlight-color:transparent!important}.schedule-toggle-btn:active{background-color:var(--link)!important}}.button:disabled{background-color:var(--disabled);cursor:not-allowed;color:var(--surface)!important}.button:focus{box-shadow:none;background-color:var(--brand);outline:none}.button.danger{background-color:var(--error-press)}.button.danger:hover,.button.danger:active{background-color:var(--error)}.button.danger:disabled{background-color:var(--disabled)!important;color:var(--surface)!important;cursor:not-allowed!important}.button.light:hover,.button.light:focus{background-color:var(--surface-2)!important;color:var(--text-strong)!important}.button.light:active{transform:scale(.98);background-color:var(--surface-3)!important;color:var(--text-strong)!important}.button.outline{background-color:var(--surface)!important;color:var(--text-strong)!important;border:1px solid var(--border)!important}.button.outline:hover,.button.outline:focus{background-color:var(--surface-2)!important;color:var(--text-strong)!important;border-color:var(--border)!important}.button.outline:active{transition:all .1s;transform:scale(.98);background-color:var(--surface-3)!important;color:var(--text-strong)!important}.button.outline:disabled{opacity:.6;cursor:not-allowed;background-color:var(--surface)!important;color:var(--text-muted)!important;border-color:var(--border)!important}.lesson-row{border-bottom:1px solid var(--divider);justify-content:space-between;align-items:center;padding:8px;display:flex}.timer{font-size:var(--font-size-h2);margin-top:15px;font-weight:700}.notification{border:1px solid var(--border);border-radius:8px;margin:10px 0;padding:10px;position:relative}@media (width<=480px){.container{margin-top:110px;padding:0 10px}.button:active{background-color:var(--link)!important;transition:all .1s!important;transform:scale(.98)!important}.button:focus{background-color:var(--link)!important;outline:none!important;transform:none!important}.button:focus:active{background-color:var(--link)!important;transform:scale(.98)!important}.button{-webkit-tap-highlight-color:transparent!important;-webkit-touch-callout:none!important;user-select:none!important;-khtml-user-select:none!important;appearance:none!important;transition:all .2s!important}.button:hover:active,.button:focus:active,.button:active:focus{background-color:var(--link)!important;transition:all .1s!important;transform:scale(.98)!important}.button *{-webkit-tap-highlight-color:transparent!important;-webkit-touch-callout:none!important}.button,.button:active,.button:focus,.button:hover,.button:visited{-webkit-tap-highlight-color:transparent!important;-webkit-touch-callout:none!important;user-select:none!important}}.subject-dragging .subject-actions{opacity:0;transition:opacity .2s}.subject-dragging .subject-name{font-weight:600}.dragging-over{background-color:var(--drag-bg)!important}.fade-appear{opacity:0;filter:blur(4px)}.fade-appear-active{opacity:1;filter:blur();transition:opacity .2s,filter .2s}.fade-enter{opacity:0;filter:blur(4px)}.fade-enter-active{opacity:1;filter:blur();transition:opacity .2s ease-out,filter .2s ease-out}.fade-exit{opacity:1}.fade-exit-active{opacity:0;transition:opacity .15s ease-out}.fade-simple-enter{opacity:0}.fade-simple-enter-active{opacity:1;transition:opacity .2s}.fade-simple-appear{opacity:0}.fade-simple-appear-active{opacity:1;transition:opacity .2s}.fade-simple-exit{opacity:1}.fade-simple-exit-active{opacity:0;transition:opacity .2s}.fade-y-enter{opacity:0;transform:translateY(6px)}.fade-y-enter-active{opacity:1;transition:opacity .2s,transform .2s;transform:translateY(0)}.fade-y-appear{opacity:0;transform:translateY(6px)}.fade-y-appear-active{opacity:1;transition:opacity .2s,transform .2s;transform:translateY(0)}.fade-y-exit{opacity:1;transform:translateY(0)}.fade-y-exit-active{opacity:0;transition:opacity .2s,transform .2s;transform:translateY(-6px)}.slide-right-enter{opacity:0;transform:translate(-100%)}.slide-right-enter-active{opacity:1;transition:opacity .3s,transform .3s;transform:translate(0)}.slide-right-exit{opacity:1;transform:translate(0)}.slide-right-exit-active{opacity:0;transition:opacity .3s,transform .3s;transform:translate(100%)}.slide-left-enter{opacity:0;transform:translate(100%)}.slide-left-enter-active{opacity:1;transition:opacity .3s,transform .3s;transform:translate(0)}.slide-left-exit{opacity:1;transform:translate(0)}.slide-left-exit-active{opacity:0;transition:opacity .3s,transform .3s;transform:translate(-100%)}.skeleton{background:var(--surface-3);border-radius:6px;position:relative;overflow:hidden}.skeleton.shimmer:before{content:"";background:linear-gradient(90deg,#0000 0%,#fff9 50%,#0000 100%) 0 0/200px 100%;animation:1.2s infinite shimmer;position:absolute;inset:0}.bc-overlay{background:var(--overlay);z-index:9999;pointer-events:auto;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.bc-modal{background:var(--bg);width:90%;max-width:400px;box-shadow:var(--shadow-2);pointer-events:auto;border-radius:12px;position:relative;overflow:hidden}.bc-close{width:32px;height:32px;font-size:var(--font-size-h2);text-align:center;cursor:pointer;background:#fffc;border:none;border-radius:50%;line-height:32px;position:absolute;top:12px;right:12px}.bc-image-container{background:var(--link);text-align:center;padding:24px}.bc-image{object-fit:contain;max-width:100%;max-height:160px}.bc-content{text-align:left;padding:16px 20px 24px}.bc-title{font-size:var(--font-size-h2);color:var(--text-strong);margin:0 0 8px;font-weight:600}.bc-desc{font-size:var(--font-size-small);color:var(--text-muted);margin:0 0 16px;line-height:1.4}.bc-desc b{font-weight:600}.bc-desc i{font-style:italic}.bc-desc u{text-decoration:underline}.bc-btn{border:2px solid var(--link);color:var(--link);cursor:pointer;background:0 0;border-radius:6px;padding:8px 16px;font-weight:500;text-decoration:none;display:inline-block}.bc-btn:hover{background:var(--link);color:var(--surface)}.toolbar{flex-wrap:wrap;gap:6px;margin-bottom:6px;display:flex}.tool-btn{cursor:pointer}.editor{border:1px solid var(--border);border-radius:6px;outline:none;min-height:160px;padding:8px 8px 1em;font-size:15px;line-height:1.45;user-select:text!important;pointer-events:auto!important;touch-action:manipulation!important}.editor *{font-size:inherit!important;line-height:inherit!important}.editor:empty:before{content:attr(data-ph);color:var(--text-muted)}.file-row{align-items:center;gap:8px;margin:12px 0 16px;display:flex}.file-add{border:1px dashed var(--border);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;width:80px;height:80px;display:inline-flex}.file-thumb{border:1px solid var(--border);border-radius:6px;width:80px;height:80px;position:relative;overflow:hidden}.file-thumb img{object-fit:cover;width:100%;height:100%}.file-thumb .remove{color:var(--surface);cursor:pointer;background:#00000080;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-weight:700;display:flex;position:absolute;top:2px;right:4px}.id-container{border:1px solid var(--border);border-radius:6px;flex-wrap:wrap;align-items:center;gap:8px;min-height:42px;padding:6px;display:flex}.id-container input{min-width:80px;font-size:var(--font-size-small);border:none;outline:none;flex:1 0 120px;user-select:text!important;pointer-events:auto!important;touch-action:manipulation!important}.id-chip{background:var(--chip-bg);font-size:var(--font-size-small);text-align:center;font-variant-numeric:tabular-nums;border-radius:16px;align-items:center;padding:4px 8px;display:inline-flex}.id-chip span{cursor:pointer;margin-left:6px;font-weight:700}.spoiler,tg-spoiler{background:var(--surface-2);color:var(--text-muted);pointer-events:none;border-radius:4px;padding:2px 6px}.quote{background:var(--brand-quiet);border-radius:8px;margin:10px 0;padding:14px 16px 10px;position:relative}.quote.collapsed>:not(.quote-check){display:none}.quote-check{all:unset;background:var(--bg);border:1px solid var(--border);cursor:pointer;user-select:none;z-index:1;border-radius:5px;margin-right:6px;padding:2px 6px;font-size:11px;font-weight:600;display:inline-block;position:relative}.announcement-page{max-width:600px;margin:0 auto;padding:16px}.announcement-page.sending .message-preview{opacity:0;max-height:0;transition:opacity .3s,max-height .3s;overflow:hidden}.announcement-page.done .message-preview{opacity:1;max-height:2000px;transition:opacity .3s,max-height .3s}.message-preview{border:1px solid var(--border);border-radius:8px;margin-bottom:16px;padding:12px;font-size:15px;line-height:1.45}.message-preview blockquote.quote{background:var(--brand-quiet);border-radius:8px;margin:10px 0;padding:14px 16px 10px;transition:max-height .2s;position:relative;overflow:hidden}.message-preview blockquote.quote.collapsed{max-height:calc(4.35em + 10px)}.message-preview .quote-check{display:none!important}.preview-files{gap:8px;margin-bottom:16px;display:flex}.preview-files img{object-fit:cover;border:1px solid var(--border);border-radius:6px;width:80px;height:80px}.progress-wrap{opacity:1;max-height:200px;transition:opacity .3s,max-height .3s;overflow:hidden}.progress-wrap.hidden{opacity:0;max-height:0}.results-block{opacity:0;max-height:0;transition:max-height .3s,opacity .3s;overflow:hidden}.results-block.visible{opacity:1;max-height:500px;margin-bottom:16px}.preview-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.copy-btn{color:var(--brand);font-size:var(--font-size-small);cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;padding:0;display:inline-flex}.copy-btn svg{stroke:currentColor}.copy-btn:active{transform:scale(.98)}@keyframes msg-appear{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.msg-new{animation:.3s msg-appear}@keyframes modal-pop{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.menu-modal{animation:.2s modal-pop}.modal-overlay{z-index:1000;pointer-events:none;background:0 0;justify-content:center;align-items:center;padding:16px;animation:.2s ease-out modalFadeIn;display:flex;position:fixed;inset:0}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}body.modal-open{overflow:hidden}.modal-content{background:var(--bg);border:1px solid var(--border);box-shadow:var(--shadow-1);transform-origin:50%;pointer-events:auto;border-radius:8px;width:100%;max-width:320px;animation:.2s ease-out modalSlideIn;overflow:hidden}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.95)translateY(-10px)}to{opacity:1;transform:scale(1)translateY(0)}}.modal-header{text-align:center;padding:12px 16px 0}.modal-title{color:var(--text);margin:0;font-size:20px;font-weight:600;line-height:1.3}.modal-body{text-align:center;padding:20px}.modal-message{color:var(--text-muted);margin:0 0 20px;font-size:16px;line-height:1.4}.modal-field{text-align:left;margin-bottom:16px}.modal-field:last-child{margin-bottom:0}.modal-field-label{color:var(--text);margin-bottom:8px;font-size:14px;font-weight:500;display:block}.modal-input{border:1px solid var(--border);background:var(--bg);width:100%;box-shadow:var(--shadow-1);box-sizing:border-box;border-radius:8px;padding:12px 16px;font-size:16px;transition:border-color .2s,box-shadow .2s;user-select:text!important;pointer-events:auto!important;touch-action:manipulation!important}.modal-input:focus{border-color:var(--link);outline:none;box-shadow:0 2px 10.9px #7353ea26}.modal-input.error{border-color:var(--error);box-shadow:0 2px 10.9px #ff444426}.modal-field-error{color:var(--error);margin-top:6px;font-size:12px;line-height:1.3}.modal-footer{flex-direction:column;gap:4px;padding:4px 16px 8px;display:flex}.modal-footer .button{margin:0!important}.type-slider{--slider-padding:4px;--slider-items:3;--active-index:0;background:var(--surface);border:1px solid var(--border);height:40px;padding:var(--slider-padding);box-sizing:border-box;box-shadow:var(--shadow-2);border-radius:8px;display:flex;position:relative;overflow:hidden}.type-slider-active-bg{top:var(--slider-padding);left:calc(var(--slider-padding) + ((100% - (var(--slider-padding)*2))/var(--slider-items))*var(--active-index));bottom:var(--slider-padding);width:calc((100% - (var(--slider-padding)*2))/var(--slider-items));background:var(--brand);border:1px solid var(--border);box-sizing:border-box;z-index:0;pointer-events:none;border-radius:6px;transition:left .35s cubic-bezier(.34,1.56,.64,1);position:absolute;box-shadow:0 1px 3px #0000001a}.type-slider-btn{z-index:1;cursor:pointer;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;user-select:none;background:0 0;border:none;flex:1;justify-content:center;align-items:center;min-width:48px;padding:0;transition:transform .15s;display:flex;position:relative}.type-slider-btn:active{transform:scale(.92)}.type-slider-btn.active{animation:.4s ease-out type-wiggle}@keyframes type-wiggle{0%{transform:scale(1)rotate(0)}20%{transform:scale(1.08)rotate(-2deg)}50%{transform:scale(1.12)rotate(2deg)}80%{transform:scale(1.06)rotate(-1deg)}to{transform:scale(1)rotate(0)}}.modal-overlay.modal-closing{animation:.2s ease-in modalFadeOut}.modal-overlay.modal-closing .modal-content{animation:.2s ease-in modalSlideOut}@keyframes modalFadeOut{0%{opacity:1;backdrop-filter:blur(2px)}to{opacity:0;backdrop-filter:blur()}}@keyframes modalSlideOut{0%{opacity:1;transform:scale(1)translateY(0)}to{opacity:0;transform:scale(.95)translateY(-5px)}}@media (width<=480px){.modal-overlay{padding:8px}.modal-content{width:100%;max-width:none}.modal-header{padding:16px 16px 12px}.modal-title{font-size:16px}.modal-body{padding:16px}.modal-message{font-size:14px}.modal-footer{padding:12px 16px 16px}}:root{--bg:#fff;--surface:#fff;--surface-2:#f7f7f7;--surface-3:#f2f2f7;--text-strong:#222;--text:#3c3c43;--text-muted:#6f6f6f;--border:#e8e8e8;--divider:#ebebeb;--brand:#411fff;--brand-hover:#6f56ff;--brand-quiet:#f5f3ff;--link:#7353ea;--success:#00c116;--success-press:#00a526;--success-soft:#e9fff0;--success-text:#0a7c2e;--error:red;--error-press:#dc0000;--error-soft:#ffe9e9;--error-text:#721c24;--dropdown-bg:#fff;--dropdown-arrow:#3c3c43;--input-shadow:#00000012;--overlay:#00000080;--shadow-1:0 2px 10.9px #00000012;--shadow-2:0 4px 10.9px #0000001a;--chip-bg:#f0f0ff;--drag-bg:#e0f7ff;--disabled:#c8c8c8;--knob-muted:#c4c4c4;--background-color:var(--bg);--text-color:var(--text);--primary-color:var(--brand);--secondary-color:var(--surface-2);--border-color:var(--border);--dropdown-arrow-color:var(--dropdown-arrow);--font-family-base:"Montserrat",Arial,sans-serif;--font-family-heading:"Montserrat",Arial,sans-serif;--font-size-base:18px;--font-size-small:16px;--font-size-h1:28px;--font-size-h2:24px;--font-size-h3:20px;--font-size-h4:18px}[data-theme=dark]{--bg:#121212;--surface:#1e1e1e;--surface-2:#2c2c2e;--surface-3:#202023;--text-strong:#fff;--text:#e0e0e0;--text-muted:#a7a7ad;--border:#2f3136;--divider:#2a2c31;--brand:#9c87ff;--brand-hover:#b29cff;--brand-quiet:#9c87ff24;--link:#bb86fc;--success:#00c116;--success-press:#00a526;--success-soft:#00c11624;--success-text:#b8f7c6;--error:#ff4d4f;--error-press:red;--error-soft:#ff4d4f29;--error-text:#ffc1c3;--dropdown-bg:#1e1e1e;--dropdown-arrow:#e0e0e0;--input-shadow:#0000004d;--overlay:#000c;--shadow-1:0 2px 10.9px #00000059;--shadow-2:0 4px 18px #00000073;--chip-bg:#7474ff29;--drag-bg:#4095ff33;--disabled:#555;--knob-muted:#48484d;--background-color:var(--bg);--text-color:var(--text);--primary-color:var(--brand);--secondary-color:var(--surface-2);--border-color:var(--border);--dropdown-arrow-color:var(--dropdown-arrow)}body{background-color:var(--bg);color:var(--text)}.icon{filter:brightness(0)}[data-theme=dark] .icon{filter:brightness(0)invert()}[data-theme=dark] input,[data-theme=dark] textarea{color:var(--text)!important}[data-theme=dark] input::placeholder,[data-theme=dark] textarea::placeholder{color:var(--text-muted)!important}.button{color:var(--surface);background:var(--brand);border:1px solid var(--brand)}.button:hover{background-color:var(--brand-hover);border-color:var(--brand-hover)}.button.light{background-color:var(--surface);color:var(--text-strong);border:1px solid var(--border)}.button.light:hover{background-color:var(--surface-2)}.dropdown{color:var(--text);background-color:var(--dropdown-bg);border:1px solid var(--border)}.notification{border:1px solid var(--border);background-color:var(--surface-2);color:var(--text)}.notification.success{background-color:var(--success-soft);border-color:var(--success);color:var(--success-text)}.notification.error{background-color:var(--error-soft);border-color:var(--error);color:var(--error-text)}
/*# sourceMappingURL=app.4721b2f5.css.map */
