:root{--vt-c-white: #ffffff;--vt-c-white-soft: #f8f8f8;--vt-c-white-mute: #f2f2f2;--vt-c-black: #181818;--vt-c-black-soft: #222222;--vt-c-black-mute: #282828;--vt-c-indigo: #2c3e50;--vt-c-divider-light-1: rgba(60, 60, 60, .29);--vt-c-divider-light-2: rgba(60, 60, 60, .12);--vt-c-divider-dark-1: rgba(84, 84, 84, .65);--vt-c-divider-dark-2: rgba(84, 84, 84, .48);--vt-c-text-light-1: var(--vt-c-indigo);--vt-c-text-light-2: rgba(60, 60, 60, .66);--vt-c-text-dark-1: var(--vt-c-white);--vt-c-text-dark-2: rgba(235, 235, 235, .64)}:root{--color-background: var(--vt-c-white);--color-background-soft: var(--vt-c-white-soft);--color-background-mute: var(--vt-c-white-mute);--color-border: var(--vt-c-divider-light-2);--color-border-hover: var(--vt-c-divider-light-1);--color-heading: var(--vt-c-text-light-1);--color-text: var(--vt-c-text-light-1);--section-gap: 160px}@media(prefers-color-scheme:dark){:root{--color-background: var(--vt-c-black);--color-background-soft: var(--vt-c-black-soft);--color-background-mute: var(--vt-c-black-mute);--color-border: var(--vt-c-divider-dark-2);--color-border-hover: var(--vt-c-divider-dark-1);--color-heading: var(--vt-c-text-dark-1);--color-text: var(--vt-c-text-dark-2)}}*,*:before,*:after{box-sizing:border-box;margin:0;font-weight:400}body{min-height:100vh;color:var(--color-text);background:var(--color-background);transition:color .5s,background-color .5s;line-height:1.6;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:15px;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#app{min-width:100%;margin:0 auto;font-weight:400}a,.green{text-decoration:none;color:#00bd7e;transition:.4s;padding:3px}@media(hover:hover){a:hover{background-color:#00bd7e33}}@media(min-width:1024px){body{display:flex;place-items:center}#app{display:grid;grid-template-columns:1fr 1fr}}.app-container[data-v-7a7a37b1]{display:flex;flex-direction:column;height:100vh;width:100vw}.topbar[data-v-7a7a37b1]{height:56px;background:#a10b0b;color:#fff;display:flex;align-items:center;padding:0 16px;background-image:url(/assets/logo-DAHdtUOE.svg);background-position:right;background-repeat:no-repeat;background-size:10rem}.topbar-title[data-v-7a7a37b1]{font-size:18px;font-weight:600;margin-left:12px}.hamburger[data-v-7a7a37b1]{background:none;border:none;font-size:26px;color:#fff;cursor:pointer}.sidebar[data-v-7a7a37b1]{position:fixed;top:0;left:-260px;width:260px;height:100%;background:#fff;box-shadow:2px 0 12px #0000001a;transition:left .25s ease;z-index:30;padding-top:20px}.sidebar.open[data-v-7a7a37b1]{left:0}.close-btn[data-v-7a7a37b1]{background:none;border:none;font-size:32px;color:#111;margin-left:16px;margin-bottom:16px;cursor:pointer}.menu[data-v-7a7a37b1]{display:flex;flex-direction:column;height:calc(100% - 60px);position:relative}.menu-item[data-v-7a7a37b1]{padding:14px 20px;font-size:16px;text-decoration:none;color:#111;cursor:pointer;border-bottom:1px solid #f3f4f6;text-align:left;background:none}.menu-item[data-v-7a7a37b1]:hover{background:#f3f4f6}.logout[data-v-7a7a37b1]{color:#dc2626;font-weight:600;border:none}.overlay[data-v-7a7a37b1]{position:fixed;inset:0;background:#0006;z-index:20}.content[data-v-7a7a37b1]{flex:1;overflow-y:auto}.content--full[data-v-7a7a37b1]{padding:0}.disabled-link[data-v-7a7a37b1]{padding:14px 20px;font-size:16px;text-decoration:none;color:#9ca3af;cursor:not-allowed;border-bottom:1px solid #f3f4f6;text-align:left;background:none;opacity:.6}.version-info[data-v-7a7a37b1]{margin-top:auto;padding:20px;text-align:center;font-size:14px;color:#111;opacity:.5}.disabled-link[data-v-7a7a37b1]:hover{color:#9ca3af;text-decoration:none}.logo[data-v-67e64f9f]{border-radius:50%;padding:16px}.login-page[data-v-67e64f9f]{min-height:100vh;display:flex;align-items:center;background:linear-gradient(160deg,#eef2ff,#f9fafb);padding:16px;flex-direction:column}.login-card[data-v-67e64f9f]{width:100%;max-width:380px;background:#fff;border-radius:16px;box-shadow:0 10px 25px #0000001f;padding:24px 20px}.title[data-v-67e64f9f]{font-size:22px;font-weight:700;margin-bottom:4px;text-align:center;color:#111827}.subtitle[data-v-67e64f9f]{font-size:14px;color:#6b7280;text-align:center;margin-bottom:20px}.form[data-v-67e64f9f]{display:flex;flex-direction:column;gap:12px}.field[data-v-67e64f9f]{display:flex;flex-direction:column;gap:4px}.field label[data-v-67e64f9f]{font-size:13px;font-weight:600;color:#374151}.field input[data-v-67e64f9f]{border-radius:999px;border:1px solid #e5e7eb;padding:10px 14px;font-size:14px;outline:none;background:#f9fafb}.field input[data-v-67e64f9f]:focus{border-color:#a10b0b;background:#fff}.error[data-v-67e64f9f]{font-size:13px;color:#dc2626;text-align:center}.submit-btn[data-v-67e64f9f]{margin-top:4px;border:none;border-radius:999px;padding:12px 0;font-size:15px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;background:#a10b0b;color:#fff;transition:transform .1s ease,opacity .1s ease}.submit-btn[data-v-67e64f9f]:disabled{opacity:.6;cursor:not-allowed}.submit-btn[data-v-67e64f9f]:not(:disabled):active{transform:scale(.97)}.grade-card[data-v-acb1119d]{display:flex;flex-direction:column;justify-content:space-between;max-width:420px;margin:0 auto;padding:16px;border-radius:16px;background:#fff;box-shadow:0 10px 25px #00000014;height:60vh}.grade-card__progress[data-v-acb1119d]{font-size:14px;color:#6b7280;text-align:right;margin-bottom:8px}.grade-card__content[data-v-acb1119d]{text-align:center;padding:16px 8px 8px}.grade-card__avatar[data-v-acb1119d]{width:120px;height:120px;border-radius:999px;margin:0 auto 16px;overflow:hidden;border:3px solid #e5e7eb;display:flex;align-items:center;justify-content:center}.grade-card__avatar img[data-v-acb1119d]{width:100%;height:100%;object-fit:cover}.grade-card__avatar--placeholder[data-v-acb1119d]{background:#f3f4f6;color:#4b5563;font-size:32px;font-weight:600}.grade-card__name[data-v-acb1119d]{font-size:22px;font-weight:700;margin-bottom:4px;color:#111827}.grade-card__meta[data-v-acb1119d]{font-size:14px;color:#6b7280}.grade-card__meta strong[data-v-acb1119d]{color:#374151}.grade-card__form[data-v-acb1119d]{margin-top:16px;display:flex;flex-direction:column;gap:8px}.grade-card__label[data-v-acb1119d]{font-size:13px;font-weight:600;color:#374151}.grade-card__test-info[data-v-acb1119d]{font-size:16px;font-weight:700;color:#2563eb;text-align:center;padding:8px;background:#eff6ff;border-radius:8px;margin-bottom:12px}.grade-card__input[data-v-acb1119d]{border-radius:999px;border:1px solid #e5e7eb;padding:10px 14px;font-size:16px;outline:none;text-align:center;background:#f9fafb}.grade-card__input[data-v-acb1119d]:focus{border-color:#3b82f6;background:#fff}.grade-card__error[data-v-acb1119d]{font-size:12px;color:#dc2626}.grade-card__btn[data-v-acb1119d]{margin-top:4px;border:none;border-radius:999px;padding:12px 0;font-size:16px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;background:#2563eb;color:#fff;transition:transform .1s ease,opacity .1s ease,box-shadow .1s ease}.grade-card__btn[data-v-acb1119d]:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.grade-card__btn[data-v-acb1119d]:not(:disabled):active{transform:scale(.97);box-shadow:0 4px 10px #0000001f}@media(max-width:480px){.grade-card[data-v-acb1119d]{border-radius:0}}.grade-swiper[data-v-ece414bf]{height:fit-content;background:linear-gradient(160deg,#eef2ff,#f9fafb);display:flex;justify-content:center}.card-wrapper[data-v-ece414bf]{width:100%;max-width:480px}.card-anim[data-v-ece414bf]{will-change:transform,opacity}.card-anim--enter[data-v-ece414bf]{animation:card-enter-ece414bf .22s ease-out}.card-anim--swipe-next[data-v-ece414bf]{animation:card-swipe-next-ece414bf .22s ease-in forwards}@keyframes card-enter-ece414bf{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes card-swipe-next-ece414bf{0%{opacity:1;transform:translate(0) scale(1)}to{opacity:0;transform:translate(-40px) scale(.97)}}.grade-swiper__done[data-v-ece414bf]{text-align:center;max-width:480px;margin:0 auto;background:#fff;padding:32px;border-radius:16px;box-shadow:0 4px 14px #00000014}.done-message h2[data-v-ece414bf]{font-size:24px;margin-bottom:12px;color:#111827}.done-message p[data-v-ece414bf]{font-size:16px;color:#6b7280;margin-bottom:24px}.btn-back[data-v-ece414bf]{padding:12px 32px;background:linear-gradient(135deg,#2563eb,#1d4ed8);border:none;border-radius:10px;color:#fff;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 8px #2563eb4d}.btn-back[data-v-ece414bf]:hover{transform:translateY(-2px);box-shadow:0 6px 12px #2563eb66}.btn-back[data-v-ece414bf]:active{transform:translateY(0)}.grades-table-container[data-v-9884ba8e]{width:100%;max-width:100%;margin:0 auto;padding:0}.header[data-v-9884ba8e]{display:flex;align-items:center;justify-content:center;position:relative;margin-bottom:8px}.btn-back-header[data-v-9884ba8e]{position:absolute;left:8px;padding:8px 16px;background:#e5e7eb;border:none;border-radius:8px;color:#374151;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-back-header[data-v-9884ba8e]:hover{background:#d1d5db}.title[data-v-9884ba8e]{font-size:20px;font-weight:700;margin-bottom:0;color:#111827;text-align:center}.subtitle[data-v-9884ba8e]{font-size:14px;color:#6b7280;margin-bottom:16px;text-align:center;padding:0 16px}.students-list[data-v-9884ba8e]{display:flex;flex-direction:column;gap:20px;padding:8px}.student-card[data-v-9884ba8e]{background:#fff;border-radius:16px;box-shadow:0 4px 12px #0000001f;border:2px solid #e5e7eb;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.student-header[data-v-9884ba8e]{display:flex;align-items:center;gap:12px;padding:16px;background:linear-gradient(135deg,#f9fafb,#f3f4f6);border-bottom:2px solid #d1d5db}.student-number[data-v-9884ba8e]{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:#2563eb;border-radius:50%;font-size:14px;font-weight:700;color:#fff;flex-shrink:0;box-shadow:0 2px 4px #2563eb4d}.student-name[data-v-9884ba8e]{flex:1;font-size:17px;font-weight:700;color:#111827;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.grades-list[data-v-9884ba8e]{padding:16px;display:flex;flex-direction:column;gap:12px;background:#fafbfc}.grade-item[data-v-9884ba8e]{padding:12px 14px;background:#fff;border-radius:10px;border:2px solid #e5e7eb;box-shadow:0 1px 3px #0000000f}.grade-item--recovery-input[data-v-9884ba8e]{background:#fffbeb;border-color:#f59e0b}.grade-item--regular-input[data-v-9884ba8e]{background:#eff6ff;border-color:#2563eb}.grade-item__header[data-v-9884ba8e]{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.grade-item__test[data-v-9884ba8e]{font-size:14px;font-weight:700;color:#111827}.grade-item__details[data-v-9884ba8e]{display:flex;justify-content:space-between;align-items:center}.grade-item__date[data-v-9884ba8e]{font-size:13px;color:#6b7280}.grade-item__value[data-v-9884ba8e]{font-size:20px;font-weight:700;color:#2563eb}.recovery-input[data-v-9884ba8e]{display:flex;gap:8px;align-items:center;margin-top:8px}.recovery-input__field[data-v-9884ba8e]{flex:1;padding:10px 12px;border:2px solid #d1d5db;border-radius:8px;font-size:16px;font-weight:600;color:#111827;background:#fff;transition:border-color .2s ease}.recovery-input__field[data-v-9884ba8e]:focus{outline:none;border-color:#f59e0b}.recovery-input__btn[data-v-9884ba8e]{padding:10px 20px;background:linear-gradient(135deg,#f59e0b,#d97706);border:none;border-radius:8px;color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 6px #f59e0b4d}.recovery-input__btn[data-v-9884ba8e]:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 8px #f59e0b66}.recovery-input__btn[data-v-9884ba8e]:disabled{opacity:.5;cursor:not-allowed}.recovery-input__btn--regular[data-v-9884ba8e]{background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 2px 6px #2563eb4d}.recovery-input__btn--regular[data-v-9884ba8e]:hover:not(:disabled){box-shadow:0 4px 8px #2563eb66}.type-chip[data-v-9884ba8e]{display:inline-block;padding:4px 8px;border-radius:8px;font-size:11px;font-weight:600;color:#fff}.type-chip.regular[data-v-9884ba8e]{background:#16a34a}.type-chip.recovery[data-v-9884ba8e]{background:#f59e0b}.status-chip[data-v-9884ba8e]{display:inline-block;padding:6px 10px;border-radius:8px;font-size:11px;font-weight:700;color:#fff;text-transform:uppercase;letter-spacing:.025em;flex-shrink:0}.status-chip--approved[data-v-9884ba8e]{background:#16a34a}.status-chip--waiting[data-v-9884ba8e]{background:#6b7280}.status-chip--waiting-recovery[data-v-9884ba8e]{background:#f59e0b}.status-chip--failed[data-v-9884ba8e]{background:#dc2626}.dp__input_wrap{position:relative;width:100%;box-sizing:unset}.dp__input_wrap:focus{border-color:var(--dp-border-color-hover);outline:none}.dp__input_valid{box-shadow:0 0 var(--dp-border-radius) var(--dp-success-color);border-color:var(--dp-success-color)}.dp__input_valid:hover{border-color:var(--dp-success-color)}.dp__input_invalid{box-shadow:0 0 var(--dp-border-radius) var(--dp-danger-color);border-color:var(--dp-danger-color)}.dp__input_invalid:hover{border-color:var(--dp-danger-color)}.dp__input{background-color:var(--dp-background-color);border-radius:var(--dp-border-radius);font-family:var(--dp-font-family);border:1px solid var(--dp-border-color);outline:none;transition:border-color .2s cubic-bezier(.645,.045,.355,1);width:100%;font-size:var(--dp-font-size);line-height:calc(var(--dp-font-size)*1.5);padding:var(--dp-input-padding);color:var(--dp-text-color);box-sizing:border-box}.dp__input::placeholder{opacity:.7}.dp__input:hover:not(.dp__input_focus){border-color:var(--dp-border-color-hover)}.dp__input_not_clearable{padding-inline-end:var(--dp-input-not-clearable-padding)!important}.dp__input_reg{caret-color:#0000}.dp__input_focus{border-color:var(--dp-border-color-focus)}.dp__disabled{background:var(--dp-disabled-color)}.dp__disabled::placeholder{color:var(--dp-disabled-color-text)}.dp__input_icons{display:inline-block;width:var(--dp-font-size);height:var(--dp-font-size);stroke-width:0;font-size:var(--dp-font-size);line-height:calc(var(--dp-font-size)*1.5);padding:6px 12px;color:var(--dp-icon-color);box-sizing:content-box}.dp__input_icon{cursor:pointer;position:absolute;top:50%;inset-inline-start:0;transform:translateY(-50%);color:var(--dp-icon-color)}.dp--clear-btn{position:absolute;top:50%;inset-inline-end:0;transform:translateY(-50%);cursor:pointer;color:var(--dp-icon-color);background:#0000;border:none;display:inline-flex;align-items:center;padding:0;margin:0}.dp__input_icon_pad{padding-inline-start:var(--dp-input-icon-padding)}.dp__menu{background:var(--dp-background-color);border-radius:var(--dp-border-radius);min-width:var(--dp-menu-min-width);font-family:var(--dp-font-family);font-size:var(--dp-font-size);-webkit-user-select:none;user-select:none;border:1px solid var(--dp-menu-border-color);box-sizing:border-box}.dp__menu:after{box-sizing:border-box}.dp__menu:before{box-sizing:border-box}.dp__menu:focus{border:1px solid var(--dp-menu-border-color);outline:none}.dp--menu-wrapper{position:absolute;z-index:99999}.dp__menu_inner{padding:var(--dp-menu-padding)}.dp--menu--inner-stretched{padding:6px 0}.dp__menu_index{z-index:99999}.dp-menu-loading,.dp__menu_readonly,.dp__menu_disabled{position:absolute;inset:0;z-index:999999}.dp__menu_disabled{background:#ffffff80;cursor:not-allowed}.dp__menu_readonly{background:#0000;cursor:default}.dp-menu-loading{background:#ffffff80;cursor:default}.dp--menu-load-container{display:flex;height:100%;width:100%;justify-content:center;align-items:center}.dp--menu-loader{width:48px;height:48px;border:var(--dp-loader);border-bottom-color:#0000;border-radius:50%;display:inline-block;box-sizing:border-box;animation:dp-load-rotation 1s linear infinite;position:absolute}@keyframes dp-load-rotation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.dp__arrow_top{height:12px;width:12px;background-color:var(--dp-background-color);position:absolute;border-inline-end:1px solid var(--dp-menu-border-color);border-top:1px solid var(--dp-menu-border-color);transform:translateY(-50%) rotate(-45deg)}.dp__arrow_bottom{left:var(--dp-arrow-left);bottom:0;height:12px;width:12px;background-color:var(--dp-background-color);position:absolute;border-inline-end:1px solid var(--dp-menu-border-color);border-bottom:1px solid var(--dp-menu-border-color);transform:translate(-50%,50%) rotate(45deg)}.dp__action_extra{text-align:center;padding:2px 0}.dp--preset-dates{padding:5px;border-inline-end:1px solid var(--dp-border-color)}.dp--preset-dates[data-dp-mobile],.dp--preset-dates-collapsed{display:flex;align-self:center;border:none;overflow-x:auto;max-width:calc(var(--dp-menu-width) - var(--dp-action-row-padding)*2)}.dp__sidebar_left{padding:5px;border-inline-end:1px solid var(--dp-border-color)}.dp__sidebar_right{padding:5px;margin-inline-end:1px solid var(--dp-border-color)}.dp--preset-range{display:block;width:100%;padding:5px;text-align:left;white-space:nowrap;color:var(--dp-text-color);border-radius:var(--dp-border-radius);transition:var(--dp-common-transition)}.dp--preset-range:hover{background-color:var(--dp-hover-color);color:var(--dp-hover-text-color);cursor:pointer}.dp--preset-range[data-dp-mobile]{border:1px solid var(--dp-border-color);margin:0 3px}.dp--preset-range[data-dp-mobile]:first-child{margin-left:0}.dp--preset-range[data-dp-mobile]:last-child{margin-right:0}.dp--preset-range-collapsed{border:1px solid var(--dp-border-color);margin:0 3px}.dp--preset-range-collapsed:first-child{margin-left:0}.dp--preset-range-collapsed:last-child{margin-right:0}.dp__menu_content_wrapper{display:flex}.dp__menu_content_wrapper[data-dp-mobile],.dp--menu-content-wrapper-collapsed{flex-direction:column-reverse}.dp__calendar_header{position:relative;display:flex;justify-content:center;align-items:center;color:var(--dp-text-color);white-space:nowrap;font-weight:700}.dp__calendar_header_item{text-align:center;flex-grow:1;height:var(--dp-cell-size);padding:var(--dp-cell-padding);width:var(--dp-cell-size);box-sizing:border-box}.dp__calendar_row{display:flex;justify-content:center;align-items:center;margin:var(--dp-row-margin)}.dp__calendar_item{text-align:center;flex-grow:1;box-sizing:border-box;color:var(--dp-text-color)}.dp__calendar{position:relative}.dp__calendar_header_cell{border-bottom:thin solid var(--dp-border-color);padding:var(--dp-calendar-header-cell-padding)}.dp__cell_inner{display:flex;align-items:center;text-align:center;justify-content:center;border-radius:var(--dp-cell-border-radius);height:var(--dp-cell-size);padding:var(--dp-cell-padding);width:var(--dp-cell-size);border:1px solid rgba(0,0,0,0);box-sizing:border-box;position:relative}.dp__cell_inner:hover{transition:all .2s}.dp__cell_auto_range_start,.dp__date_hover_start:hover,.dp__range_start{border-end-end-radius:0;border-start-end-radius:0}.dp__cell_auto_range_end,.dp__date_hover_end:hover,.dp__range_end{border-end-start-radius:0;border-start-start-radius:0}.dp__range_end,.dp__range_start,.dp__active_date{background:var(--dp-primary-color);color:var(--dp-primary-text-color)}.dp__date_hover_end:hover,.dp__date_hover_start:hover,.dp__date_hover:hover{background:var(--dp-hover-color);color:var(--dp-hover-text-color)}.dp__cell_offset{color:var(--dp-secondary-color)}.dp__cell_disabled{color:var(--dp-secondary-color);cursor:not-allowed}.dp--extended-fixed-end,.dp--extended-fixed-start,.dp__range_between{background:var(--dp-range-between-dates-background-color);color:var(--dp-range-between-dates-text-color);border-radius:0;border:1px solid var(--dp-range-between-border-color)}.dp__range_between_week{background:var(--dp-primary-color);color:var(--dp-primary-text-color);border-radius:0;border-top:1px solid var(--dp-primary-color);border-bottom:1px solid var(--dp-primary-color)}.dp__today{border:1px solid var(--dp-primary-color)}.dp__week_num{color:var(--dp-secondary-color);text-align:center}.dp__cell_auto_range{border-radius:0;border-top:1px dashed var(--dp-primary-color);border-bottom:1px dashed var(--dp-primary-color)}.dp__cell_auto_range_start{border-start-start-radius:var(--dp-cell-border-radius);border-end-start-radius:var(--dp-cell-border-radius);border-inline-start:1px dashed var(--dp-primary-color);border-top:1px dashed var(--dp-primary-color);border-bottom:1px dashed var(--dp-primary-color)}.dp__cell_auto_range_end{border-start-end-radius:var(--dp-cell-border-radius);border-end-end-radius:var(--dp-cell-border-radius);border-top:1px dashed var(--dp-primary-color);border-bottom:1px dashed var(--dp-primary-color);border-inline-end:1px dashed var(--dp-primary-color)}.dp__calendar_header_separator{width:100%;height:1px;background:var(--dp-border-color)}.dp__calendar_next{margin-inline-start:var(--dp-multi-calendars-spacing)}.dp__marker_line,.dp__marker_dot{height:5px;background-color:var(--dp-marker-color);position:absolute;bottom:0}.dp__marker_dot{width:5px;border-radius:50%;left:50%;transform:translate(-50%)}.dp__marker_line{width:100%;left:0}.dp__marker_tooltip{position:absolute;border-radius:var(--dp-border-radius);background-color:var(--dp-tooltip-color);padding:5px;border:1px solid var(--dp-border-color);z-index:99999;box-sizing:border-box;cursor:default}.dp__tooltip_content{white-space:nowrap}.dp__tooltip_text{display:flex;align-items:center;flex-flow:row nowrap;color:var(--dp-text-color)}.dp__tooltip_mark{height:5px;width:5px;border-radius:50%;background-color:var(--dp-text-color);color:var(--dp-text-color);margin-inline-end:5px}.dp__arrow_bottom_tp{bottom:0;height:8px;width:8px;background-color:var(--dp-tooltip-color);position:absolute;border-inline-end:1px solid var(--dp-border-color);border-bottom:1px solid var(--dp-border-color);transform:translate(-50%,50%) rotate(45deg)}.dp__instance_calendar{position:relative;width:100%}.dp__flex_display[data-dp-mobile],.dp--flex-display-collapsed{flex-direction:column}.dp__cell_highlight{background-color:var(--dp-highlight-color)}.dp__month_year_row{display:flex;align-items:center;height:var(--dp-month-year-row-height);color:var(--dp-text-color);box-sizing:border-box}.dp__inner_nav{display:flex;align-items:center;justify-content:center;cursor:pointer;height:var(--dp-month-year-row-button-size);width:var(--dp-month-year-row-button-size);color:var(--dp-icon-color);text-align:center;border-radius:50%}.dp__inner_nav svg{height:var(--dp-button-icon-height);width:var(--dp-button-icon-height)}.dp__inner_nav:hover{background:var(--dp-hover-color);color:var(--dp-hover-icon-color)}[dir=rtl] .dp__inner_nav{transform:rotate(180deg)}.dp__inner_nav_disabled:hover,.dp__inner_nav_disabled{background:var(--dp-disabled-color);color:var(--dp-disabled-color-text);cursor:not-allowed}.dp--year-select,.dp__month_year_select{text-align:center;cursor:pointer;height:var(--dp-month-year-row-height);display:flex;align-items:center;justify-content:center;border-radius:var(--dp-border-radius);box-sizing:border-box;color:var(--dp-text-color)}.dp--year-select:hover,.dp__month_year_select:hover{background:var(--dp-hover-color);color:var(--dp-hover-text-color);transition:var(--dp-common-transition)}.dp__month_year_select{width:50%}.dp--year-select{width:100%}.dp__month_year_wrap{display:flex;flex-direction:row;width:100%;align-items:center}.dp__year_disable_select{justify-content:space-around}.dp--header-wrap{display:flex;width:100%;flex-direction:column}.dp__overlay{width:100%;background:var(--dp-background-color);transition:opacity 1s ease-out;z-index:99999;font-family:var(--dp-font-family);color:var(--dp-text-color);box-sizing:border-box}.dp--overlay-absolute{position:absolute;height:100%;top:0;left:0}.dp--overlay-relative{position:relative}.dp__overlay_container::-webkit-scrollbar-track{box-shadow:var(--dp-scroll-bar-background);background-color:var(--dp-scroll-bar-background)}.dp__overlay_container::-webkit-scrollbar{width:5px;background-color:var(--dp-scroll-bar-background)}.dp__overlay_container::-webkit-scrollbar-thumb{background-color:var(--dp-scroll-bar-color);border-radius:10px}.dp__overlay:focus{border:none;outline:none}.dp__container_flex{display:flex}.dp__container_block{display:block}.dp__overlay_container{flex-direction:column;overflow-y:auto;height:var(--dp-overlay-height)}.dp__time_picker_overlay_container{height:100%}.dp__overlay_row{padding:0;box-sizing:border-box;display:flex;margin-inline:auto;flex-wrap:wrap;max-width:100%;width:100%;align-items:center}.dp__flex_row{flex:1}.dp__overlay_col{box-sizing:border-box;width:33%;padding:var(--dp-overlay-col-padding);white-space:nowrap}.dp__overlay_cell_pad{padding:var(--dp-common-padding) 0}.dp__overlay_cell_active{cursor:pointer;border-radius:var(--dp-border-radius);text-align:center;background:var(--dp-primary-color);color:var(--dp-primary-text-color)}.dp__overlay_cell{cursor:pointer;border-radius:var(--dp-border-radius);text-align:center}.dp__overlay_cell:hover{background:var(--dp-hover-color);color:var(--dp-hover-text-color);transition:var(--dp-common-transition)}.dp__cell_in_between{background:var(--dp-hover-color);color:var(--dp-hover-text-color)}.dp__over_action_scroll{right:5px;box-sizing:border-box}.dp__overlay_cell_disabled{cursor:not-allowed;background:var(--dp-disabled-color)}.dp__overlay_cell_disabled:hover{background:var(--dp-disabled-color)}.dp__overlay_cell_active_disabled{cursor:not-allowed;background:var(--dp-primary-disabled-color)}.dp__overlay_cell_active_disabled:hover{background:var(--dp-primary-disabled-color)}.dp__btn,.dp--qr-btn,.dp--time-overlay-btn,.dp--time-invalid{border:none;font:inherit;transition:var(--dp-common-transition);line-height:normal}.dp--year-mode-picker{display:flex;width:100%;align-items:center;justify-content:space-between;height:var(--dp-cell-size)}.dp--tp-wrap{width:100%}.dp--tp-wrap[data-dp-mobile]{max-width:100%}.dp__time_input{width:100%;display:flex;align-items:center;justify-content:center;-webkit-user-select:none;user-select:none;font-family:var(--dp-font-family);color:var(--dp-text-color)}.dp__time_col_reg_block{padding:0 20px}.dp__time_col_reg_inline{padding:0 10px}.dp__time_col_reg_with_button{padding:0 15px}.dp__time_col_reg_with_button[data-compact~=true]{padding:0 5px}.dp__time_col_sec{padding:0 10px}.dp__time_col_sec_with_button{padding:0 5px}.dp__time_col_sec_with_button[data-collapsed~=true]{padding:0}.dp__time_col{text-align:center;display:flex;align-items:center;justify-content:center;flex-direction:column}.dp__time_col_block{font-size:var(--dp-time-font-size)}.dp__time_display_block{padding:0 3px}.dp__time_display_inline{padding:5px}.dp__time_picker_inline_container{display:flex;width:100%;justify-content:center}.dp__inc_dec_button{padding:5px;margin:0;height:var(--dp-time-inc-dec-button-size);width:var(--dp-time-inc-dec-button-size);display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:50%;color:var(--dp-icon-color);box-sizing:border-box}.dp__inc_dec_button svg{height:var(--dp-time-inc-dec-button-size);width:var(--dp-time-inc-dec-button-size)}.dp__inc_dec_button:hover{background:var(--dp-hover-color);color:var(--dp-hover-icon-color)}.dp__time_display{cursor:pointer;color:var(--dp-text-color);border-radius:var(--dp-border-radius);display:flex;align-items:center;justify-content:center}.dp__time_display:hover:enabled{background:var(--dp-hover-color);color:var(--dp-hover-text-color)}.dp__inc_dec_button_inline{width:100%;padding:0;height:8px;cursor:pointer;display:flex;align-items:center}.dp__inc_dec_button_disabled,.dp__inc_dec_button_disabled:hover{background:var(--dp-disabled-color);color:var(--dp-disabled-color-text);cursor:not-allowed}.dp__pm_am_button{background:var(--dp-primary-color);color:var(--dp-primary-text-color);border:none;padding:var(--dp-common-padding);border-radius:var(--dp-border-radius);cursor:pointer}.dp__pm_am_button[data-compact~=true]{padding:7px}.dp__tp_inline_btn_bar{width:100%;height:4px;background-color:var(--dp-secondary-color);transition:var(--dp-common-transition);border-collapse:collapse}.dp__tp_inline_btn_top:hover .dp__tp_btn_in_r{background-color:var(--dp-primary-color);transform:rotate(12deg) scale(1.15) translateY(-2px)}.dp__tp_inline_btn_top:hover .dp__tp_btn_in_l,.dp__tp_inline_btn_bottom:hover .dp__tp_btn_in_r{background-color:var(--dp-primary-color);transform:rotate(-12deg) scale(1.15) translateY(-2px)}.dp__tp_inline_btn_bottom:hover .dp__tp_btn_in_l{background-color:var(--dp-primary-color);transform:rotate(12deg) scale(1.15) translateY(-2px)}.dp--time-overlay-btn{background:none}.dp--time-invalid{background-color:var(--dp-disabled-color)}.dp__action_row{display:flex;align-items:center;width:100%;padding:var(--dp-action-row-padding);box-sizing:border-box;color:var(--dp-text-color);flex-flow:row nowrap}.dp__action_row svg{height:var(--dp-button-icon-height);width:auto}.dp__selection_preview{display:block;color:var(--dp-text-color);font-size:var(--dp-preview-font-size);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.dp__action_buttons{display:flex;flex:0;white-space:nowrap;align-items:center;justify-content:flex-end;margin-inline-start:auto}.dp__action_button{display:inline-flex;align-items:center;background:#0000;border:1px solid rgba(0,0,0,0);padding:var(--dp-action-buttons-padding);line-height:var(--dp-action-button-height);margin-inline-start:3px;height:var(--dp-action-button-height);cursor:pointer;border-radius:var(--dp-border-radius);font-size:var(--dp-preview-font-size);font-family:var(--dp-font-family)}.dp__action_cancel{color:var(--dp-text-color);border:1px solid var(--dp-border-color)}.dp__action_cancel:hover{border-color:var(--dp-primary-color);transition:var(--dp-action-row-transition)}.dp__action_buttons .dp__action_select{background:var(--dp-primary-color);color:var(--dp-primary-text-color)}.dp__action_buttons .dp__action_select:hover{background:var(--dp-primary-color);transition:var(--dp-action-row-transition)}.dp__action_buttons .dp__action_select:disabled{background:var(--dp-primary-disabled-color);cursor:not-allowed}.dp-quarter-picker-wrap{display:flex;flex-direction:column;height:100%;min-width:var(--dp-menu-min-width)}.dp--qr-btn-disabled{cursor:not-allowed;background:var(--dp-disabled-color)}.dp--qr-btn-disabled:hover{background:var(--dp-disabled-color)}.dp--qr-btn{width:100%;padding:var(--dp-common-padding)}.dp--qr-btn:not(.dp--highlighted,.dp--qr-btn-active,.dp--qr-btn-disabled,.dp--qr-btn-between){background:none}.dp--qr-btn:hover:not(.dp--qr-btn-active,.dp--qr-btn-disabled){background:var(--dp-hover-color);color:var(--dp-hover-text-color);transition:var(--dp-common-transition)}.dp--quarter-items{display:flex;flex-direction:column;flex:1;width:100%;height:100%;justify-content:space-evenly}.dp--qr-btn-active{background:var(--dp-primary-color);color:var(--dp-primary-text-color)}.dp--qr-btn-between{background:var(--dp-hover-color);color:var(--dp-hover-text-color)}:root{--dp-common-transition: all .1s ease-in;--dp-menu-padding: 6px 8px;--dp-animation-duration: .1s;--dp-menu-appear-transition-timing: cubic-bezier(.4, 0, 1, 1);--dp-transition-timing: ease-out;--dp-action-row-transition: all .2s ease-in;--dp-font-family: -apple-system, blinkmacsystemfont, "Segoe UI", roboto, oxygen, ubuntu, cantarell, "Open Sans", "Helvetica Neue", sans-serif;--dp-border-radius: 4px;--dp-cell-border-radius: 4px;--dp-transition-length: 22px;--dp-transition-timing-general: .1s;--dp-button-height: 35px;--dp-month-year-row-height: 35px;--dp-month-year-row-button-size: 25px;--dp-button-icon-height: 20px;--dp-calendar-wrap-padding: 0 5px;--dp-cell-size: 35px;--dp-cell-padding: 5px;--dp-common-padding: 10px;--dp-input-icon-padding: 35px;--dp-input-padding: 6px 30px 6px 12px;--dp-input-not-clearable-padding: 12px;--dp-menu-min-width: 260px;--dp-action-buttons-padding: 1px 6px;--dp-row-margin: 5px 0;--dp-calendar-header-cell-padding: .5rem;--dp-multi-calendars-spacing: 10px;--dp-overlay-col-padding: 3px;--dp-time-inc-dec-button-size: 32px;--dp-font-size: 1rem;--dp-preview-font-size: .8rem;--dp-time-font-size: 2rem;--dp-action-button-height: 22px;--dp-action-row-padding: 8px;--dp-direction: ltr}.dp__theme_dark{--dp-background-color: #212121;--dp-text-color: #fff;--dp-hover-color: #484848;--dp-hover-text-color: #fff;--dp-hover-icon-color: #959595;--dp-primary-color: #005cb2;--dp-primary-disabled-color: #61a8ea;--dp-primary-text-color: #fff;--dp-secondary-color: #a9a9a9;--dp-border-color: #2d2d2d;--dp-menu-border-color: #2d2d2d;--dp-border-color-hover: #aaaeb7;--dp-border-color-focus: #aaaeb7;--dp-disabled-color: #737373;--dp-disabled-color-text: #d0d0d0;--dp-scroll-bar-background: #212121;--dp-scroll-bar-color: #484848;--dp-success-color: #00701a;--dp-success-color-disabled: #428f59;--dp-icon-color: #959595;--dp-danger-color: #e53935;--dp-marker-color: #e53935;--dp-tooltip-color: #3e3e3e;--dp-highlight-color: rgb(0 92 178 / 20%);--dp-range-between-dates-background-color: var(--dp-hover-color, #484848);--dp-range-between-dates-text-color: var(--dp-hover-text-color, #fff);--dp-range-between-border-color: var(--dp-hover-color, #fff);--dp-loader: 5px solid #005cb2}.dp__theme_light{--dp-background-color: #fff;--dp-text-color: #212121;--dp-hover-color: #f3f3f3;--dp-hover-text-color: #212121;--dp-hover-icon-color: #959595;--dp-primary-color: #1976d2;--dp-primary-disabled-color: #6bacea;--dp-primary-text-color: #fff;--dp-secondary-color: #c0c4cc;--dp-border-color: #ddd;--dp-menu-border-color: #ddd;--dp-border-color-hover: #aaaeb7;--dp-border-color-focus: #aaaeb7;--dp-disabled-color: #f6f6f6;--dp-scroll-bar-background: #f3f3f3;--dp-scroll-bar-color: #959595;--dp-success-color: #76d275;--dp-success-color-disabled: #a3d9b1;--dp-icon-color: #959595;--dp-danger-color: #ff6f60;--dp-marker-color: #ff6f60;--dp-tooltip-color: #fafafa;--dp-disabled-color-text: #8e8e8e;--dp-highlight-color: rgb(25 118 210 / 10%);--dp-range-between-dates-background-color: var(--dp-hover-color, #f3f3f3);--dp-range-between-dates-text-color: var(--dp-hover-text-color, #212121);--dp-range-between-border-color: var(--dp-hover-color, #f3f3f3);--dp-loader: 5px solid #1976d2}.dp__flex{display:flex;align-items:center}.dp__btn{background:none}.dp__main{font-family:var(--dp-font-family);-webkit-user-select:none;user-select:none;box-sizing:border-box;position:relative;width:100%}.dp__main *{direction:var(--dp-direction, ltr)}.dp__pointer{cursor:pointer}.dp__icon{stroke:currentcolor;fill:currentcolor}.dp__button{width:100%;text-align:center;color:var(--dp-icon-color);cursor:pointer;display:flex;align-items:center;place-content:center center;padding:var(--dp-common-padding);box-sizing:border-box;height:var(--dp-button-height)}.dp__button.dp__overlay_action{position:absolute;bottom:0}.dp__button:hover{background:var(--dp-hover-color);color:var(--dp-hover-icon-color)}.dp__button svg{height:var(--dp-button-icon-height);width:auto}.dp__button_bottom{border-bottom-left-radius:var(--dp-border-radius);border-bottom-right-radius:var(--dp-border-radius)}.dp__flex_display{display:flex}.dp__flex_display_with_input{flex-direction:column;align-items:flex-start}.dp__relative{position:relative}.calendar-next-enter-active,.calendar-next-leave-active,.calendar-prev-enter-active,.calendar-prev-leave-active{transition:all var(--dp-transition-timing-general) ease-out}.calendar-next-enter-from{opacity:0;transform:translate(var(--dp-transition-length))}.calendar-next-leave-to,.calendar-prev-enter-from{opacity:0;transform:translate(calc(var(--dp-transition-length) * -1))}.calendar-prev-leave-to{opacity:0;transform:translate(var(--dp-transition-length))}.dp-menu-appear-bottom-enter-active,.dp-menu-appear-bottom-leave-active,.dp-menu-appear-top-enter-active,.dp-menu-appear-top-leave-active,.dp-slide-up-enter-active,.dp-slide-up-leave-active,.dp-slide-down-enter-active,.dp-slide-down-leave-active{transition:all var(--dp-animation-duration) var(--dp-transition-timing)}.dp-menu-appear-top-enter-from,.dp-menu-appear-top-leave-to,.dp-slide-down-leave-to,.dp-slide-up-enter-from{opacity:0;transform:translateY(var(--dp-transition-length))}.dp-menu-appear-bottom-enter-from,.dp-menu-appear-bottom-leave-to,.dp-slide-down-enter-from,.dp-slide-up-leave-to{opacity:0;transform:translateY(calc(var(--dp-transition-length) * -1))}.dp--arrow-btn-nav{transition:var(--dp-common-transition);height:100%}.dp--highlighted{background-color:var(--dp-highlight-color)}.dp--hidden-el{visibility:hidden}.dp--centered{top:50%;left:50%;transform:translate(-50%,-50%);position:fixed}.filters[data-v-38144db1]{width:100%;max-width:640px;margin:0 auto 12px;background:#fff;border-radius:5px;box-shadow:0 6px 16px #0000000f;overflow:hidden}.filters__header[data-v-38144db1]{width:100%;border:none;background:#f9fafb;padding:10px 14px;display:flex;align-items:center;justify-content:space-between;cursor:pointer}.filters__header-main[data-v-38144db1]{display:flex;flex-direction:column;text-align:left}.filters__header-title[data-v-38144db1]{font-size:13px;font-weight:700;color:#111827}.filters__header-summary[data-v-38144db1]{font-size:12px;color:#6b7280;margin-top:2px}.filters__header-icon[data-v-38144db1]{font-size:16px;transition:transform .2s ease}.filters__header-icon--open[data-v-38144db1]{transform:rotate(180deg)}.filters__body[data-v-38144db1]{padding:12px 16px 8px}.filters__row[data-v-38144db1]{display:flex;gap:12px;margin-bottom:8px;flex-direction:column}.filters__row--single[data-v-38144db1]{flex-direction:column}.filters__field[data-v-38144db1]{flex:1;display:flex;flex-direction:column}.filters__label[data-v-38144db1]{font-size:12px;font-weight:600;color:#374151;margin-bottom:4px}.filters__select[data-v-38144db1],.filters__input[data-v-38144db1]{border-radius:999px;border:1px solid #e5e7eb;padding:8px 14px;font-size:14px;outline:none;background:#f9fafb}.filters__select[data-v-38144db1]:focus,.filters__input[data-v-38144db1]:focus{border-color:#3b82f6;background:#fff}.filters__select[data-v-38144db1]:disabled{background:#f3f4f6;color:#9ca3af}.filters__hint[data-v-38144db1]{font-size:11px;color:#6b7280;margin-top:4px}@media(max-width:640px){.filters[data-v-38144db1]{border-radius:0;box-shadow:none}.filters__row[data-v-38144db1]{flex-direction:column}}.grades-page[data-v-69e77868]{min-height:100vh;background:#f3f4f6;padding:8px 16px 16px}.title[data-v-69e77868]{text-align:center;color:#000;font-weight:700;padding:16px}.module-info[data-v-69e77868]{text-align:center;font-size:1.1rem;font-weight:600;color:#374151;padding:8px 16px;margin:0 auto 16px;max-width:600px;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a}.state-message[data-v-69e77868]{text-align:center;padding:16px;margin:16px auto;max-width:600px;border-radius:8px}.state-message--error[data-v-69e77868]{background-color:#fee;color:#c00}.state-message--info[data-v-69e77868]{background-color:#e0f2fe;color:#0369a1;font-weight:600}.test-selector[data-v-69e77868]{max-width:600px;margin:24px auto;padding:24px;background:#fff;border-radius:16px;box-shadow:0 4px 12px #0000001a}.test-selector__title[data-v-69e77868]{text-align:center;font-size:18px;font-weight:700;color:#111827;margin-bottom:20px}.test-selector__options[data-v-69e77868]{display:flex;flex-direction:column;gap:12px}.test-btn[data-v-69e77868]{display:flex;align-items:center;justify-content:center;padding:16px 20px;background:linear-gradient(135deg,#2563eb,#1d4ed8);border:none;border-radius:12px;color:#fff;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 8px #2563eb4d}.test-btn[data-v-69e77868]:hover{transform:translateY(-2px);box-shadow:0 6px 12px #2563eb66}.test-btn[data-v-69e77868]:active{transform:translateY(0)}.test-btn__number[data-v-69e77868]{font-size:17px}.student-card[data-v-0ffae9b6]{display:flex;flex-direction:column;justify-content:space-between;width:100%;margin:0 auto;padding:16px;border-radius:16px;background:#fff;box-shadow:0 10px 25px #00000014;height:60vh}.student-card__progress[data-v-0ffae9b6]{font-size:14px;color:#6b7280;text-align:right;margin-bottom:8px}.student-card__content[data-v-0ffae9b6]{text-align:center;padding:16px 8px 8px}.student-card__avatar[data-v-0ffae9b6]{width:120px;height:120px;border-radius:999px;margin:0 auto 16px;overflow:hidden;border:3px solid #e5e7eb;display:flex;align-items:center;justify-content:center}.student-card__avatar img[data-v-0ffae9b6]{width:100%;height:100%;object-fit:cover}.student-card__avatar--placeholder[data-v-0ffae9b6]{background:#f3f4f6;color:#4b5563;font-size:32px;font-weight:600}.student-card__name[data-v-0ffae9b6]{font-size:22px;font-weight:700;margin-bottom:4px;color:#111827}.student-card__meta[data-v-0ffae9b6]{font-size:14px;color:#6b7280}.student-card__meta strong[data-v-0ffae9b6]{color:#374151}.student-card__actions[data-v-0ffae9b6]{display:flex;gap:5px;margin-top:24px}.btn[data-v-0ffae9b6]{flex:1;border:none;border-radius:10px;padding:14px 0;font-size:20px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;transition:transform .1s ease,box-shadow .1s ease,opacity .1s ease}.btn[data-v-0ffae9b6]:active{transform:scale(.97);box-shadow:0 4px 10px #0000001f}.btn--present[data-v-0ffae9b6]{background:#16a34a;color:#fff}.btn--present[data-v-0ffae9b6]:hover{opacity:.9}.btn--absent[data-v-0ffae9b6]{background:#ef4444;color:#fff}.btn--absent[data-v-0ffae9b6]:hover{opacity:.9}.btn--late[data-v-0ffae9b6]{background:#f59e0b;color:#fff}.btn--late[data-v-0ffae9b6]:hover{opacity:.9}.btn--secondary[data-v-0ffae9b6]{background:#6b7280;color:#fff}.btn--secondary[data-v-0ffae9b6]:hover{opacity:.9}.student-card__absent-form[data-v-0ffae9b6]{display:flex;flex-direction:column;gap:12px;margin-top:24px}.absent-form__title[data-v-0ffae9b6]{font-size:18px;font-weight:600;color:#111827;margin:0 0 8px;text-align:center}.absent-form__select[data-v-0ffae9b6]{width:100%;padding:12px;border:2px solid #e5e7eb;border-radius:8px;font-size:16px;color:#374151;background:#fff;cursor:pointer;transition:border-color .2s ease}.absent-form__select[data-v-0ffae9b6]:focus{outline:none;border-color:#ef4444}.absent-form__textarea[data-v-0ffae9b6]{width:100%;padding:12px;border:2px solid #e5e7eb;border-radius:8px;font-size:14px;color:#374151;font-family:inherit;resize:vertical;transition:border-color .2s ease}.absent-form__textarea[data-v-0ffae9b6]:focus{outline:none;border-color:#ef4444}.absent-form__actions[data-v-0ffae9b6]{display:flex;gap:8px;margin-top:8px}@media(max-width:480px){.student-card[data-v-0ffae9b6]{border-radius:0;min-height:fit-content}}.attendance-table-container[data-v-e1837336]{width:100%;max-width:640px;margin:0 auto;background:#fff;padding:16px;border-radius:5px;box-shadow:0 4px 14px #00000014}.title[data-v-e1837336]{font-size:20px;font-weight:700;margin-bottom:16px;color:#111827;text-align:center}.attendance-table[data-v-e1837336]{width:100%;border-collapse:collapse;text-align:left}.attendance-table thead[data-v-e1837336]{background:#f3f4f6}.attendance-table th[data-v-e1837336]{padding:8px 12px;font-size:14px;text-align:left;color:#374151;font-weight:600}.attendance-table td[data-v-e1837336]{padding:10px 12px;font-size:14px;color:#111827;border-bottom:1px solid #f3f4f6}.index[data-v-e1837336]{width:40px;text-align:center}.presence[data-v-e1837336]{width:120px}.presence-chip[data-v-e1837336]{position:relative;display:inline-block;padding:6px 12px;border-radius:12px;font-size:13px;font-weight:600;color:#fff;cursor:default}.tooltip[data-v-e1837336]{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);background:#1f2937;color:#fff;padding:8px 12px;border-radius:6px;font-size:12px;font-weight:500;white-space:nowrap;z-index:1000;box-shadow:0 4px 6px #0000001a}.tooltip[data-v-e1837336]:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:6px solid transparent;border-top-color:#1f2937}.presence-chip.presente[data-v-e1837336]{background:#16a34a}.presence-chip.justificada[data-v-e1837336]{background:#3b82f6;cursor:help}.presence-chip.atrasado[data-v-e1837336]{background:#f59e0b;cursor:help}.presence-chip.ausente[data-v-e1837336]{background:#dc2626}.view-mode[data-v-e1837336]{display:flex;align-items:center;gap:8px}.edit-btn[data-v-e1837336]{background:transparent;border:none;cursor:pointer;font-size:16px;color:#6b7280;padding:4px 8px;border-radius:4px;transition:all .2s}.edit-btn[data-v-e1837336]:hover{background:#f3f4f6;color:#111827}.edit-mode[data-v-e1837336]{display:flex;flex-direction:column;gap:8px}.status-select[data-v-e1837336]{padding:6px 8px;border:1px solid #d1d5db;border-radius:4px;font-size:13px;background:#fff;cursor:pointer}.reason-input[data-v-e1837336]{padding:6px 8px;border:1px solid #d1d5db;border-radius:4px;font-size:13px;width:100%}.edit-actions[data-v-e1837336]{display:flex;gap:4px}.save-btn[data-v-e1837336],.cancel-btn[data-v-e1837336]{flex:1;padding:6px;border:none;border-radius:4px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.save-btn[data-v-e1837336]{background:#16a34a;color:#fff}.save-btn[data-v-e1837336]:hover{background:#15803d}.cancel-btn[data-v-e1837336]{background:#ef4444;color:#fff}.cancel-btn[data-v-e1837336]:hover{background:#dc2626}.card-wrapper[data-v-5ba973c0]{width:100%;max-width:480px}.card-anim[data-v-5ba973c0]{will-change:transform,opacity}.card-anim--enter[data-v-5ba973c0]{animation:card-enter .22s ease-out}.card-anim--swipe-right[data-v-5ba973c0]{animation:card-swipe-right-5ba973c0 .26s ease-in forwards}.card-anim--swipe-left[data-v-5ba973c0]{animation:card-swipe-left-5ba973c0 .26s ease-in forwards}keyframes card-enter from[data-v-5ba973c0]{opacity:0;transform:translateY(12px) scale(.97)}keyframes card-enter to[data-v-5ba973c0]{opacity:1;transform:translateY(0) scale(1)}@keyframes card-swipe-right-5ba973c0{0%{opacity:1;transform:translate(0) rotate(0) scale(1)}to{opacity:0;transform:translate(140%) rotate(10deg) scale(.96)}}@keyframes card-swipe-left-5ba973c0{0%{opacity:1;transform:translate(0) rotate(0) scale(1)}to{opacity:0;transform:translate(-140%) rotate(-10deg) scale(.96)}}.attendance-swiper[data-v-5ba973c0]{height:fit-content;background:linear-gradient(160deg,#eef2ff,#f9fafb);display:flex;justify-content:center}.attendance-swiper__done[data-v-5ba973c0]{text-align:center;width:100%}.attendance-swiper__done h2[data-v-5ba973c0]{font-size:24px;margin-bottom:8px;color:#111827}.attendance-swiper__done p[data-v-5ba973c0]{font-size:14px;color:#6b7280;margin-bottom:16px}.btn-restart[data-v-5ba973c0]{border:none;border-radius:999px;padding:12px 32px;font-size:14px;font-weight:600;background:#3b82f6;color:#fff;cursor:pointer}.filters[data-v-0ff34c05]{width:100%;max-width:640px;margin:0 auto 12px;background:#fff;border-radius:5px;box-shadow:0 6px 16px #0000000f;overflow:hidden}.filters__header[data-v-0ff34c05]{width:100%;border:none;background:#f9fafb;padding:10px 14px;display:flex;align-items:center;justify-content:space-between;cursor:pointer}.filters__header-main[data-v-0ff34c05]{display:flex;flex-direction:column;text-align:left}.filters__header-title[data-v-0ff34c05]{font-size:13px;font-weight:700;color:#111827}.filters__header-summary[data-v-0ff34c05]{font-size:12px;color:#6b7280;margin-top:2px}.filters__header-icon[data-v-0ff34c05]{font-size:16px;transition:transform .2s ease}.filters__header-icon--open[data-v-0ff34c05]{transform:rotate(180deg)}.filters__body[data-v-0ff34c05]{padding:12px 16px 8px}.filters__row[data-v-0ff34c05]{display:flex;gap:12px;margin-bottom:8px;flex-direction:column}.filters__row--single[data-v-0ff34c05]{flex-direction:column}.filters__field[data-v-0ff34c05]{flex:1;display:flex;flex-direction:column}.filters__label[data-v-0ff34c05]{font-size:12px;font-weight:600;color:#374151;margin-bottom:4px}.filters__select[data-v-0ff34c05],.filters__input[data-v-0ff34c05]{border-radius:999px;border:1px solid #e5e7eb;padding:8px 14px;font-size:14px;outline:none;background:#f9fafb}.filters__select[data-v-0ff34c05]:focus,.filters__input[data-v-0ff34c05]:focus{border-color:#3b82f6;background:#fff}.filters__select[data-v-0ff34c05]:disabled{background:#f3f4f6;color:#9ca3af}.filters__hint[data-v-0ff34c05]{font-size:11px;color:#6b7280;margin-top:4px}@media(max-width:640px){.filters[data-v-0ff34c05]{border-radius:0;box-shadow:none}.filters__row[data-v-0ff34c05]{flex-direction:column}}.attendance-page[data-v-8f139cf1]{min-height:100vh;background:#f3f4f6;padding:0 16px}.title[data-v-8f139cf1]{text-align:center;color:#000;font-weight:700;padding:16px}.module-info[data-v-8f139cf1]{text-align:center;font-size:1.1rem;font-weight:600;color:#374151;padding:8px 16px;margin:0 auto 16px;max-width:600px;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a}.state-message[data-v-8f139cf1]{text-align:center;padding:16px;margin:16px auto;max-width:600px;border-radius:8px}.state-message--error[data-v-8f139cf1]{background-color:#fee;color:#c00}.state-message--info[data-v-8f139cf1]{background-color:#e0f2fe;color:#0369a1;font-weight:600}.notfound-container[data-v-543787d3]{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(160deg,#eef2ff,#f9fafb);padding:20px}.notfound-card[data-v-543787d3]{background:#fff;padding:32px 24px;border-radius:16px;box-shadow:0 4px 18px #0000001a;text-align:center;max-width:380px}.title[data-v-543787d3]{font-size:54px;font-weight:800;color:#a10b0b;margin-bottom:8px}.message[data-v-543787d3]{font-size:20px;font-weight:600;color:#111827}.subtext[data-v-543787d3]{font-size:14px;color:#6b7280;margin:12px 0 24px}.btn[data-v-543787d3]{border:none;border-radius:999px;padding:12px 24px;font-size:14px;font-weight:700;background:#a10b0b;color:#fff;cursor:pointer;transition:transform .1s ease,opacity .1s ease}.btn[data-v-543787d3]:active{transform:scale(.97)}.btn[data-v-543787d3]:hover{opacity:.9}
