@charset "UTF-8";@import"https://fonts.googleapis.com/css2?family=Geologica:wght@400;500;600;700&family=Unbounded:wght@500;700&display=swap";.filters-container{display:flex;align-items:center;gap:.45rem;flex-shrink:0}.filters-toggle-button,.clear-filters-button{height:2.5rem;padding:0 .9rem;border-radius:999px;cursor:pointer;display:inline-flex;align-items:center;gap:.4rem;font-size:.84rem;font-weight:600;white-space:nowrap;transition:background-color .18s ease,color .18s ease,box-shadow .18s ease,border-color .18s ease}.filters-toggle-button{background:#f6f7fb;color:#140a22;border:1px solid rgba(20,10,34,.08)}.filters-toggle-button:hover:not(:disabled){background:#5c3ae814;color:#140a22}.filters-toggle-button img{opacity:.62}.filter-badge{min-width:1.15rem;height:1.15rem;padding:0 .3rem;border-radius:999px;background:#5c3ae8;color:#fff;font-size:.7rem;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 0 0 3px #5c3ae81f}.clear-filters-button{background:#f6f7fb;color:#140a22;border:1px solid rgba(20,10,34,.08)}.clear-filters-button:hover:not(:disabled){background:#5c3ae814;color:#140a22}.filters-modal{position:fixed;inset:0;z-index:4000;display:grid;place-items:center;padding:max(1.25rem,env(safe-area-inset-top)) max(1.25rem,env(safe-area-inset-right)) max(1.25rem,env(safe-area-inset-bottom)) max(1.25rem,env(safe-area-inset-left))}.filters-overlay{position:absolute;inset:0;border:0;padding:0;background:#0c06188c;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;animation:fadeIn .2s ease}.filters-panel{position:relative;z-index:1;width:min(30rem,100%);overflow:hidden;background:#fff;border:1px solid rgba(255,255,255,.7);border-radius:28px;box-shadow:0 30px 80px #140a223d;padding:1.45rem 1.45rem 1.3rem;-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);animation:popIn .28s cubic-bezier(.2,.9,.2,1)}.filters-panel:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,#8be67c,#4ed9c6 34%,#5c3ae8)}.filter-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.35rem}.filter-header h3{margin:0;font-family:Unbounded,sans-serif;font-size:1.7rem;letter-spacing:-.03em}.filter-close{width:2.2rem;height:2.2rem;border:1px solid rgba(20,10,34,.08);border-radius:50%;background:#fff;color:#5c566e;font-size:1.35rem;line-height:1;cursor:pointer}.filter-close:hover:not(:disabled){background:#5c3ae814;color:#140a22}.filters-content{display:flex;flex-direction:column;gap:1rem}.filter-field{display:flex;flex-direction:column;gap:.4rem;font-size:.78rem;font-weight:600;color:#5c566e}.filter-field select,.filter-field input{width:100%;height:2.85rem;border:1px solid rgba(20,10,34,.08);border-radius:14px;padding:0 .9rem;background:#fff;color:#140a22;font-size:.95rem;font-weight:500}.filter-field select:focus,.filter-field input:focus{outline:none;border-color:#4ed9c6;box-shadow:0 0 0 4px #4ed9c633}.filter-field select{appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235C3AE8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 12px center;background-size:16px;padding-right:2.4rem}.segmented{display:grid;grid-template-columns:repeat(3,1fr);gap:.3rem;padding:.25rem;border-radius:14px;background:#5c3ae80f}.segmented button{height:2.35rem;border:none;border-radius:11px;background:transparent;color:#5c566e;font-weight:700;font-size:.82rem;cursor:pointer}.segmented button:hover:not(:disabled){background:#5c3ae814;color:#140a22}.segmented button.is-active{background:#fff;color:#140a22;box-shadow:0 8px 18px #12081f14}.filter-dates{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.filter-hint{margin:-.35rem 0 0;font-size:.8rem;font-weight:600;color:#e05260}.panel-actions{display:grid;grid-template-columns:1fr 1.4fr;gap:.55rem;margin-top:.2rem}.reset-filters-btn,.apply-filters-btn{height:2.8rem;border-radius:999px;cursor:pointer;font-size:.9rem;font-weight:700}.reset-filters-btn{border:1px solid rgba(20,10,34,.08);background:#fff;color:#140a22}.reset-filters-btn:hover:not(:disabled){background:#5c3ae814;color:#140a22}.apply-filters-btn{position:relative;overflow:hidden;border:none;background:#4ed9c6;color:#140a22;box-shadow:0 10px 22px #4ed9c642}.apply-filters-btn:hover:not(:disabled){background:#6be3d2;color:#140a22}.apply-filters-btn:disabled{opacity:.45;cursor:default;box-shadow:none}@keyframes popIn{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}@media(max-width:48rem){.filters-container{flex-wrap:wrap;min-width:0}.filters-toggle-button,.clear-filters-button{flex:1 1 auto;justify-content:center;min-width:0}.filters-modal{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:max(.75rem,env(safe-area-inset-top)) max(.75rem,env(safe-area-inset-right)) max(.75rem,env(safe-area-inset-bottom)) max(.75rem,env(safe-area-inset-left));overflow-y:auto}.filters-panel{width:min(30rem,100%);margin:auto;overflow-y:visible;padding:1.2rem 1.1rem 1.15rem}}@media(max-width:30rem){.filter-header h3{font-size:1.4rem}.filter-dates,.panel-actions,.segmented{grid-template-columns:1fr}.filters-toggle-button,.clear-filters-button{flex:1 1 auto;justify-content:center}}.table-controls{display:flex;align-items:center;gap:.55rem;background:#fff;border:1px solid rgba(20,10,34,.08);border-radius:16px;box-shadow:0 10px 30px #140a220e,0 1px #fff inset;padding:.65rem .7rem}.search-field{position:relative;flex:1 1 auto;min-width:0;display:flex;align-items:center}.search-field .search-icon{position:absolute;left:.85rem;color:#5c3ae8;pointer-events:none}.search-field input{width:100%;height:2.5rem;border:1px solid rgba(20,10,34,.08);border-radius:999px;padding:0 2.9rem 0 2.5rem;background:#f6f7fb;color:#140a22;font-size:.875rem}.search-field input::placeholder{color:#5c566e}.search-field input:focus{outline:none;border-color:#4ed9c6;background:#fff;box-shadow:0 0 0 3px #4ed9c62e}.search-field:after{content:"/";position:absolute;right:.7rem;width:1.2rem;height:1.2rem;border-radius:5px;border:1px solid rgba(20,10,34,.08);background:#fff;color:#5c566e;font-size:.68rem;font-weight:700;display:grid;place-items:center;pointer-events:none}.search-field:focus-within:after,.search-field:has(.search-clear):after{display:none}.search-clear{position:absolute;right:.4rem;z-index:1;width:1.65rem;height:1.65rem;border:none;border-radius:50%;background:transparent;color:#5c566e;cursor:pointer;font-size:1.1rem;line-height:1}.search-clear:hover:not(:disabled){background:#5c3ae814;color:#140a22}.add-button{flex-shrink:0;height:2.5rem;padding:0 1.1rem 0 .9rem;border:none;border-radius:999px;background:#4ed9c6;color:#140a22;font-weight:700;font-size:.86rem;cursor:pointer;white-space:nowrap;box-shadow:0 8px 18px #4ed9c63d;display:inline-flex;align-items:center;gap:.35rem}.add-button:before{content:"+";font-size:1.1rem;line-height:1}.add-button:hover:not(:disabled){background:#6be3d2;color:#140a22}@media(max-width:48rem){.table-controls{flex-wrap:wrap;padding:.55rem;gap:.5rem}.search-field{width:100%;flex:1 1 100%}.search-field input{font-size:1rem}.search-field:after{display:none}.filters-container{flex:1 1 0;min-width:0}.add-button{flex:1 1 0;min-width:0;margin-left:0;justify-content:center;padding:0 .7rem}}@media(max-width:22.5rem){.filters-container,.add-button{flex:1 1 100%;width:100%}}.modal-backdrop{position:fixed;inset:0;background:#140a2285;z-index:3500;display:flex;align-items:center;justify-content:center;animation:fadeIn .3s ease;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);height:100%;padding:clamp(.5rem,1vw,1rem);box-sizing:border-box}.modal-content{border:1px solid rgba(20,10,34,.08);background:#fff;border-radius:16px;box-shadow:0 10px 30px #140a220e,0 1px #fff inset;padding:clamp(1rem,2vw,1.5rem);width:min(40rem,100vw - 1.5rem);max-width:100%;max-height:min(90dvh,40rem);margin:0 auto;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:1;overflow-y:auto;animation:slideIn .3s ease;text-align:center;box-sizing:border-box;display:flex;flex-direction:column}.modal-content p{margin-bottom:clamp(1rem,1.5vw,1.5rem);font-size:clamp(.95rem,1.1vw,1.1rem);line-height:1.5;color:#140a22;text-align:center;word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;padding:0 clamp(.5rem,1vw,1rem)}.modal-actions{display:flex;justify-content:center;gap:clamp(.75rem,1vw,1rem);flex-wrap:wrap;transition:background-color .18s ease,color .18s ease,box-shadow .18s ease,border-color .18s ease;width:100%;margin-top:auto}.modal-actions button{padding:.7rem 1.1rem;border-radius:10px;border:1px solid rgba(20,10,34,.08);cursor:pointer;font-size:.92rem;font-weight:600;background:#fff;color:#140a22;min-height:2.6rem;white-space:nowrap;transition:background-color .18s ease,color .18s ease,box-shadow .18s ease,border-color .18s ease;flex:1;min-width:min(8rem,45%);display:flex;align-items:center;justify-content:center}.modal-actions button:hover:not(:disabled){background:#5c3ae814;color:#140a22}.modal-actions .btn-confirm{background:#e05260;color:#fff;border-color:#e05260}.modal-actions .btn-confirm:hover:not(:disabled){background:#c94452;color:#fff}.modal-actions .btn-ok{background:#4ed9c6;color:#140a22;border-color:transparent}.modal-actions .btn-ok:hover:not(:disabled){background:#6be3d2;color:#140a22}.modal-actions button:only-child{max-width:min(12rem,70%)}.modal-actions button:first-child:nth-last-child(2),.modal-actions button:first-child:nth-last-child(2)~button{flex:1;min-width:min(7rem,40%)}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes slideOut{0%{opacity:1;transform:translate(-50%,-50%)}to{opacity:0;transform:translate(-50%,-60%)}}@media(max-width:48rem){.modal-backdrop{padding:clamp(.75rem,1.5vw,1rem);align-items:flex-start;padding-top:max(2rem,10vh)}.modal-content{width:min(95vw,35rem);max-height:min(85vh,35rem);padding:clamp(1rem,1.5vw,1.25rem);position:relative;top:0;left:0;transform:none;margin:0 auto}.modal-content p{font-size:clamp(.9rem,1.05vw,1.05rem);margin-bottom:clamp(1.25rem,1.8vw,1.5rem);padding:0 clamp(.25rem,.5vw,.5rem)}.modal-actions{gap:clamp(.75rem,1vw,1rem)}.modal-actions button{padding:clamp(.7rem,.9vw,.9rem) clamp(1rem,1.25vw,1.25rem);font-size:clamp(.9rem,1vw,1rem);min-height:clamp(2.75rem,3.5vw,3.25rem);min-width:min(7rem,40%)}}@media(max-width:30rem){.modal-backdrop{padding:clamp(.5rem,1vw,.75rem);padding-top:max(1.5rem,8vh);align-items:flex-start}.modal-content{width:100%;max-width:100%;padding:clamp(.875rem,1.25vw,1rem);max-height:min(90vh,30rem);border-radius:clamp(.5rem,.8vw,.8rem)}.modal-content p{font-size:clamp(.85rem,.95vw,.95rem);margin-bottom:clamp(1rem,1.5vw,1.25rem);line-height:1.4;padding:0}.modal-actions{flex-direction:column;gap:clamp(.5rem,.8vw,.75rem)}.modal-actions button{width:100%;min-width:100%;padding:clamp(.75rem,1vw,.85rem) clamp(1rem,1.25vw,1.25rem);font-size:clamp(.85rem,.95vw,.95rem);min-height:clamp(2.5rem,3vw,3rem)}.modal-actions button:first-child:nth-last-child(2),.modal-actions button:first-child:nth-last-child(2)~button{min-width:100%}.modal-actions button:only-child{max-width:100%}}@media(max-width:22.5rem){.modal-backdrop{padding:clamp(.25rem,.5vw,.5rem);padding-top:max(1rem,5vh)}.modal-content{padding:clamp(.75rem,1vw,.875rem)}.modal-content p{font-size:clamp(.8rem,.9vw,.9rem);margin-bottom:clamp(.875rem,1.25vw,1rem)}.modal-actions{gap:clamp(.375rem,.6vw,.5rem)}.modal-actions button{padding:clamp(.6rem,.8vw,.75rem) clamp(.875rem,1.1vw,1rem);font-size:clamp(.8rem,.9vw,.9rem);min-height:clamp(2.25rem,2.75vw,2.75rem)}}@media(max-width:48rem)and (orientation:landscape){.modal-backdrop{padding:clamp(.25rem,.5vw,.5rem);align-items:flex-start;padding-top:max(.5rem,3vh)}.modal-content{max-height:min(90vh,25rem);padding:clamp(.75rem,1vw,1rem)}.modal-content p{margin-bottom:clamp(.75rem,1vw,1rem);font-size:clamp(.85rem,.95vw,.95rem)}.modal-actions{flex-direction:row;gap:clamp(.5rem,.8vw,.75rem)}.modal-actions button{min-width:min(6rem,45%);padding:clamp(.5rem,.7vw,.65rem) clamp(.75rem,1vw,1rem);min-height:clamp(2.25rem,2.75vw,2.5rem)}}@media(min-width:75rem){.modal-content{width:min(45rem,60vw);max-height:min(80vh,45rem)}.modal-content p{font-size:clamp(1rem,1.1vw,1.1rem)}.modal-actions button{min-width:10rem;padding:.75rem 1.75rem;font-size:1rem}}.modal-backdrop.fade-out{animation:fadeOut .3s ease forwards}.modal-content.slide-out{animation:slideOut .3s ease forwards}.modal-content::-webkit-scrollbar{width:6px}.modal-content::-webkit-scrollbar-track{background:#ffffff1a;border-radius:3px}.modal-content::-webkit-scrollbar-thumb{background:#5c566e;border-radius:3px}.modal-actions button:focus{outline:2px solid rgba(78,217,198,.18);outline-offset:2px}.student-table{width:100%;border-collapse:collapse;background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 10px 30px #140a220e,0 1px #fff inset;border:1px solid rgba(20,10,34,.08);flex:1;min-height:0;display:flex;flex-direction:column}.student-table thead,.student-table tfoot{display:table;width:100%;table-layout:fixed;flex-shrink:0}.student-table tbody{display:block;flex:1;min-height:12rem;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:rgba(92,58,232,.45) transparent}.student-table tbody::-webkit-scrollbar{width:8px}.student-table tbody::-webkit-scrollbar-thumb{background:#5c3ae859;border-radius:8px}.student-table tbody::-webkit-scrollbar-thumb:hover{background:#5c3ae8}.student-table thead tr,.student-table tbody tr,.student-table tfoot tr{display:table;width:100%;table-layout:fixed}.student-table thead tr{width:calc(100% - 8px)}.student-table .col-index{width:5%}.student-table .col-name{width:22.5%}.student-table .col-gender{width:6.5%}.student-table .col-birth{width:11%}.student-table .col-address{width:24%}.student-table .col-parent{width:22.5%}.student-table .col-action{width:8.5%}.student-table thead{background:#fbfbfd;box-shadow:inset 0 -1px #140a220f}.student-table thead th{background:none;color:#5c566e;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:.62rem .75rem;text-align:left;font-size:.68rem;white-space:nowrap}.student-table thead th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .18s ease,color .18s ease,box-shadow .18s ease,border-color .18s ease}.student-table thead th.sortable:hover{background-color:#5c3ae814;color:#140a22}.student-table thead .col-action{text-align:center;padding-left:.5rem;padding-right:.5rem}.student-table thead .col-gender,.student-table thead .col-index{text-align:center}.student-table .sort-icon{display:inline-block;margin-left:.2rem;font-size:.62rem;font-weight:700;color:#5c3ae8;line-height:1;vertical-align:1px}.student-table tbody tr{transition:background-color .15s ease;border-bottom:1px solid rgba(20,10,34,.06)}.student-table tbody tr:nth-child(2n){background:#5c3ae805}.student-table tbody tr:hover{background:#4ed9c61a}.student-table tbody tr:last-child{border-bottom:none}.student-table tbody tr td{padding:.48rem .75rem;text-align:left;vertical-align:middle;color:#140a22;font-size:.875rem;line-height:1.3;font-weight:400}.student-table .col-index{text-align:center;color:#5c566e;font-variant-numeric:tabular-nums;font-size:.8rem}.student-table .col-name,.student-table .col-address,.student-table .col-parent{white-space:normal;overflow-wrap:break-word;word-break:break-word;line-height:1.28}.student-table .col-name{font-weight:600;color:#140a22}.student-table .col-address,.student-table .col-parent{font-weight:400;color:#5a5568}.student-table .col-gender{text-align:center}.student-table .col-action{text-align:center;vertical-align:middle}.student-table .empty-value{color:#9a96a4}.student-table .gender-tag{display:inline-flex;align-items:center;justify-content:center;min-width:1.65rem;height:1.45rem;padding:0 .35rem;border-radius:6px;background:#f6f7fb;color:#5c566e;font-size:.75rem;font-weight:500}.student-table .gender-tag.is-male{background:#5c3ae814;color:#5c3ae8}.student-table .gender-tag.is-female{background:#e07aab1f;color:#b24e7c}.student-table .birth-meta{display:flex;flex-direction:column;align-items:flex-start;gap:.12rem;line-height:1.2}.student-table .birth-date{font-variant-numeric:tabular-nums;font-weight:500;font-size:.84rem}.student-table .age-label{display:inline-flex;align-items:center;width:fit-content;padding:.04rem .38rem;border-radius:999px;background:#f6f7fb;font-size:.68rem;font-weight:400;color:#5c566e}.student-table .action-cell{text-align:center;vertical-align:middle;padding-left:.5rem;padding-right:.5rem}.student-table .action-group{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;vertical-align:middle}.student-table tfoot .table-footer{background:#fff;padding:.55rem .75rem;border-top:1px solid rgba(20,10,34,.06)}.edit-button,.delete-button{border:1px solid rgba(20,10,34,.08);width:2rem;height:2rem;padding:0;border-radius:7px;cursor:pointer;transition:background-color .18s ease,color .18s ease,box-shadow .18s ease,border-color .18s ease;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;background:#fff}.edit-button img,.delete-button img{width:14px;height:14px;display:block}.edit-button:hover:not(:disabled),.delete-button:hover:not(:disabled){background:#5c3ae814;color:#140a22}.edit-button:focus-visible,.delete-button:focus-visible{outline:2px solid #4ED9C6;outline-offset:1px}.delete-button{background:#fce8eb;border-color:transparent}.delete-button:hover:not(:disabled){background:#f5d0d6}.delete-button:focus-visible{outline-color:#e05260}.table-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.toolbar-group{display:flex;align-items:center;gap:.4rem}.toolbar-btn{height:2.1rem;padding:0 .85rem;border-radius:999px;border:1px solid rgba(20,10,34,.08);background:#f6f7fb;color:#140a22;font-weight:600;font-size:.78rem;cursor:pointer}.toolbar-btn:hover:not(:disabled){background:#5c3ae814;color:#140a22}.toolbar-btn:disabled{opacity:.4;cursor:default}.pager{display:inline-flex;align-items:center;gap:.25rem;padding:.12rem;border-radius:999px;background:#f6f7fb;border:1px solid rgba(20,10,34,.08)}.pager span{min-width:3.2rem;text-align:center;font-size:.78rem;font-weight:700;color:#140a22}.pager-btn{width:1.85rem;height:1.85rem;border:none;border-radius:50%;background:transparent;color:#140a22;font-size:1.1rem;line-height:1;cursor:pointer}.pager-btn:hover:not(:disabled){background:#5c3ae814;color:#140a22}.pager-btn.is-next:not(:disabled){background:#4ed9c6;color:#140a22}.pager-btn.is-next:not(:disabled):hover:not(:disabled){background:#6be3d2;color:#140a22}.pager-btn:disabled{opacity:.35;cursor:default}.toolbar-meta{margin-left:auto}.range-label{font-size:.76rem;color:#5c566e;font-weight:600}.page-size{display:inline-flex;align-items:center;gap:.35rem;font-size:.72rem;font-weight:600;color:#5c566e}.page-size select{height:2.1rem;border-radius:999px;border:1px solid rgba(20,10,34,.08);background:#fff;padding:0 1.5rem 0 .7rem;color:#140a22;font-weight:600;cursor:pointer}@media(max-width:64em)and (min-width:48.01rem){.table-shell{overflow-x:auto;-webkit-overflow-scrolling:touch}.student-table{min-width:58rem}.student-table tbody{min-height:14rem}}@media(max-width:48rem){.table-toolbar{flex-direction:column;align-items:stretch;justify-content:center;gap:.55rem}.toolbar-group,.pager,.toolbar-meta{width:100%;justify-content:center;flex-wrap:wrap}.toolbar-meta{margin-left:0}.student-table{min-width:0;width:100%;display:block;overflow:hidden;table-layout:auto}.student-table .col-index,.student-table .col-name,.student-table .col-gender,.student-table .col-birth,.student-table .col-address,.student-table .col-parent,.student-table .col-action{width:auto}.student-table thead,.student-table tbody,.student-table tfoot{display:block;width:100%}.student-table thead tr,.student-table tbody tr,.student-table tfoot tr{display:block;width:100%;table-layout:auto}.student-table thead tr{display:none}.student-table thead:before{content:"Список дітей";display:block;padding:.7rem .85rem;background:#140a22;color:#fff;font-weight:600;font-size:.92rem;text-align:center}.student-table tbody{min-height:0;max-height:none;overflow:visible;padding:.65rem 0 .15rem}.student-table tbody tr{width:auto;margin:0 .65rem .65rem;border:1px solid rgba(20,10,34,.08);border-radius:14px;padding:.7rem .85rem;background:#fff;box-shadow:none}.student-table tbody tr:nth-child(2n),.student-table tbody tr:hover{background:#fff}.student-table tbody tr td{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:.12rem;width:100%;max-width:100%;padding:.46rem 0;border:none;text-align:left;font-size:.9rem;overflow-wrap:break-word;word-break:break-word}.student-table tbody tr td:not(:last-child){border-bottom:1px solid rgba(20,10,34,.06)}.student-table tbody tr td:before{content:attr(data-label);display:block;width:100%;max-width:none;min-width:0;font-weight:600;color:#5c566e;text-align:left;text-transform:uppercase;letter-spacing:.03em;font-size:.68rem}.student-table tfoot tr,.student-table tfoot td{display:block;width:100%}.student-table tfoot .table-footer{padding:.7rem .65rem .85rem}.student-table .col-index,.student-table .col-gender,.student-table .col-action,.student-table .col-name,.student-table .col-address,.student-table .col-parent{text-align:left}.student-table .action-cell{flex-direction:row;align-items:center;justify-content:space-between;gap:.75rem}.student-table .action-cell:before{width:auto}.student-table .birth-meta{align-items:flex-start}.action-cell .edit-button,.action-cell .delete-button{width:2.35rem;height:2.35rem}}.form-container{position:fixed;inset:0;z-index:3000}.form-container .form-overlay{position:absolute;inset:0;background:#140a2285;animation:fadeIn .3s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.form-container .student-form-card{border:1px solid rgba(20,10,34,.08);background:linear-gradient(90deg,#8be67c,#4ed9c6 34%,#5c3ae8) top/100% 4px no-repeat,#fff;border-radius:22px;box-shadow:0 24px 64px #140a222e;padding:1.65rem 1.55rem 1.45rem;width:min(32rem,95vw);margin:0;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);overflow-y:auto;animation:slideIn .3s ease;max-height:90vh}.form-container .form-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.1rem}.form-container .form-header h2{margin:0;color:#140a22;text-align:left;font-size:1.25rem;font-weight:700;font-family:Unbounded,sans-serif;letter-spacing:-.03em}.form-container .form-close{width:2.2rem;height:2.2rem;border:1px solid rgba(20,10,34,.08);border-radius:50%;background:#fff;color:#5c566e;font-size:1.35rem;line-height:1;cursor:pointer;flex-shrink:0}.form-container .form-close:hover:not(:disabled){background:#5c3ae814;color:#140a22}.form-container .form-vertical{display:flex;flex-direction:column;gap:1rem}.form-container .form-vertical input[type=text]{font-size:.95rem;padding:.55rem .75rem;width:100%;border:1px solid rgba(20,10,34,.08);border-radius:18px;background:#fff;color:#140a22;transition:background-color .18s ease,color .18s ease,box-shadow .18s ease,border-color .18s ease}.form-container .form-vertical input[type=text]:not(:placeholder-shown){background:#f6f7fb}.form-container .form-vertical input[type=text]:focus{border-color:#4ed9c6;box-shadow:0 0 0 4px color-mix(in srgb,#4ED9C6 18%,transparent);outline:none}.form-container .field-label{display:flex;flex-direction:column;gap:.35rem}.form-container .field-label span{font-size:.8rem;font-weight:600;color:#5c566e}.form-container .date-gender-row{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:.75rem}.form-container .date-field{min-width:0;display:flex;flex-direction:column;align-items:stretch;gap:.35rem}.form-container .date-field span{font-size:.8rem;font-weight:600;color:#5c566e}.form-container .date-field input[type=date]{padding:.55rem .75rem;width:100%;height:2.85rem;border:1px solid rgba(20,10,34,.08);border-radius:18px;background:#fff;color:#140a22;transition:background-color .18s ease,color .18s ease,box-shadow .18s ease,border-color .18s ease;font-size:.95rem;cursor:pointer}.form-container .date-field input[type=date]:focus{border-color:#4ed9c6;box-shadow:0 0 0 4px color-mix(in srgb,#4ED9C6 18%,transparent);outline:none}.form-container .date-field input[type=date]:valid{background:#f6f7fb}.form-container .gender-block{min-width:0;margin:0;padding:0;border:0;display:flex;flex-direction:column;gap:.35rem}.form-container .gender-block legend{padding:0;font-size:.8rem;font-weight:600;color:#5c566e}.form-container .gender-segmented{display:grid;grid-template-columns:1fr 1fr;gap:.3rem;padding:.25rem;border-radius:14px;background:color-mix(in srgb,#5C3AE8 6%,transparent);min-height:2.85rem}.form-container .gender-option{display:block;cursor:pointer}.form-container .gender-option input[type=radio]{position:absolute;opacity:0;pointer-events:none}.form-container .gender-option input[type=radio]+span{height:2.35rem;border-radius:11px;display:flex;align-items:center;justify-content:center;background:transparent;color:#5c566e;font-size:.86rem;font-weight:700;transition:background-color .18s ease,color .18s ease,box-shadow .18s ease,border-color .18s ease}.form-container .gender-option input[type=radio]:checked+span{background:#fff;color:#140a22;box-shadow:0 8px 18px color-mix(in srgb,#140A22 8%,transparent)}.form-container .gender-option:hover input:not(:checked)+span{color:#140a22;background:#5c3ae814}.form-container .button-row{display:flex;justify-content:space-between;align-items:center;gap:.6rem;margin-top:.5rem;width:100%}.form-container .button-row .cancel-button,.form-container .button-row .save-button{padding:.7rem 1.1rem;border-radius:10px;cursor:pointer;font-size:.92rem;font-weight:600;min-height:2.6rem;white-space:nowrap;transition:background-color .18s ease,color .18s ease,box-shadow .18s ease,border-color .18s ease;flex:1;display:flex;align-items:center;justify-content:center}.form-container .button-row .cancel-button{background:#fff;color:#140a22;border:1px solid rgba(20,10,34,.08)}.form-container .button-row .cancel-button:hover:not(:disabled){background:#5c3ae814;color:#140a22}.form-container .button-row .save-button{background:#4ed9c6;color:#140a22;border:1px solid transparent;box-shadow:0 10px 22px color-mix(in srgb,#4ED9C6 26%,transparent)}.form-container .button-row .save-button:hover:not(:disabled){background:#6be3d2;color:#140a22}.form-container .button-row .save-button:disabled{opacity:.55;cursor:default}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{opacity:0;transform:translate(-50%,-60%)}to{opacity:1;transform:translate(-50%,-50%)}}@media(max-width:48rem){.form-container .student-form-card{top:max(.75rem,env(safe-area-inset-top));left:50%;transform:translate(-50%);width:min(32rem,100vw - 1.5rem);padding:1.15rem 1rem 1.05rem;max-height:calc(100dvh - 1.5rem);animation:slideInMobile .3s ease}.form-container .date-gender-row{grid-template-columns:1fr}.form-container .button-row{flex-direction:column}.form-container .button-row .cancel-button,.form-container .button-row .save-button{width:100%}@keyframes slideInMobile{0%{opacity:0;transform:translate(-50%) translateY(-12px)}to{opacity:1;transform:translate(-50%)}}}.signin-page{position:relative;isolation:isolate;min-height:100dvh;width:100%;overflow-x:hidden;overflow-y:auto;display:flex;flex-direction:column;padding:max(1.5rem,env(safe-area-inset-top)) max(1.5rem,env(safe-area-inset-right)) max(1.5rem,env(safe-area-inset-bottom)) max(1.5rem,env(safe-area-inset-left));background:#140a22}.signin-orb{position:absolute;border-radius:50%;filter:blur(40px);z-index:0;pointer-events:none;animation:drift 12s ease-in-out infinite}.signin-orb-a{width:28rem;height:28rem;left:-8rem;top:-6rem;background:#8be67c47}.signin-orb-b{width:32rem;height:32rem;right:-10rem;top:20%;background:#4ed9c642}.signin-orb-c{width:26rem;height:26rem;left:30%;bottom:-8rem;background:#5c3ae861;animation-delay:-4s}@keyframes drift{0%,to{transform:translate(0) scale(1)}50%{transform:translate(18px,-22px) scale(1.06)}}.signin-card{position:relative;z-index:1;width:min(28rem,100%);margin:auto;flex-shrink:0;overflow:hidden;background:#12081fc7;border:1px solid rgba(255,255,255,.14);border-radius:28px;padding:2.2rem 1.85rem 1.9rem;box-shadow:0 30px 80px #00000061;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);text-align:center;color:#fff}.signin-card:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,#8be67c,#4ed9c6 34%,#5c3ae8)}.signin-kicker{margin:0 0 .7rem;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:#4ed9c6;font-weight:600}.signin-logo{width:clamp(6.25rem,28vw,7.625rem);height:clamp(6.25rem,28vw,7.625rem);object-fit:contain;border-radius:50%;background:#fff;margin:0 auto .55rem;box-shadow:0 0 0 6px #4ed9c62e}.signin-card h1{margin:0;font-family:Unbounded,sans-serif;font-size:clamp(1.8rem,4vw,2.35rem);font-weight:700;letter-spacing:-.03em}.signin-lead{margin:.45rem 0 1.45rem;color:#ffffffc7;font-size:.95rem;line-height:1.4}.signin-card form{display:flex;flex-direction:column;gap:1rem;text-align:left}.signin-field{display:flex;flex-direction:column;gap:.4rem;font-size:.78rem;font-weight:600;color:#ffffff9e}.signin-input-wrap{position:relative;display:block}.signin-input-wrap input{width:100%;height:3rem;border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:0 2.75rem 0 1rem;font-size:1rem;font-weight:500;color:#fff;background:#ffffff0f}.signin-input-wrap input::placeholder{color:#ffffff59}.signin-input-wrap input:focus{outline:none;border-color:#4ed9c6;box-shadow:0 0 0 4px #4ed9c62e}.signin-toggle-key{position:absolute;top:50%;right:.45rem;transform:translateY(-50%);width:2.1rem;height:2.1rem;border:0;padding:0;border-radius:8px;background:transparent;color:#ffffff7a;cursor:pointer;display:grid;place-items:center}.signin-toggle-key svg{width:1.15rem;height:1.15rem}.signin-toggle-key:hover{color:#ffffffb8;background:#ffffff0f}.signin-toggle-key:focus-visible{outline:2px solid #4ED9C6;outline-offset:1px}.signin-field.is-error .signin-input-wrap input{border-color:#f08a96;box-shadow:0 0 0 4px #e052602e}.signin-error{margin:-.35rem 0 0;color:#f08a96;font-size:.82rem;font-weight:600}.signin-card button[type=submit]{height:2.9rem;border:none;border-radius:999px;background:#4ed9c6;color:#140a22;font-size:.98rem;font-weight:700;cursor:pointer;transition:background-color .18s ease,color .18s ease,box-shadow .18s ease,border-color .18s ease;box-shadow:0 8px 18px #4ed9c62e}.signin-card button[type=submit]:hover:not(:disabled){background:#6be3d2;color:#140a22}.signin-card button[type=submit]:hover:not(:disabled){box-shadow:0 8px 18px #4ed9c638}.signin-card button[type=submit]:active:not(:disabled){box-shadow:none}.signin-card button[type=submit]:focus-visible{outline:2px solid #fff;outline-offset:2px}.signin-card button[type=submit]:disabled{opacity:.45;cursor:default;box-shadow:none}@media(max-width:30rem){.signin-page{padding:max(1rem,env(safe-area-inset-top)) max(1rem,env(safe-area-inset-right)) max(1rem,env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-left))}.signin-orb-a,.signin-orb-b,.signin-orb-c{width:18rem;height:18rem}.signin-card{padding:1.55rem 1.1rem 1.3rem;border-radius:22px}.signin-logo{width:5.75rem;height:5.75rem}.signin-card h1{font-size:1.65rem}.signin-lead{font-size:.88rem;margin:.35rem 0 1.15rem}.signin-toggle-key{color:#ffffffb8}}@media(max-height:44rem){.signin-logo{width:5.25rem;height:5.25rem}.signin-card{padding-top:1.35rem;padding-bottom:1.2rem}.signin-lead{margin-bottom:1rem}}.app-header{position:sticky;top:0;z-index:20;background:#140a22f5;color:#fff;-webkit-backdrop-filter:blur(20px) saturate(1.1);backdrop-filter:blur(20px) saturate(1.1);box-shadow:0 8px 24px #140a222e}.app-header:after{content:"";display:block;height:3px;background:linear-gradient(90deg,#8be67c,#4ed9c6 34%,#5c3ae8)}.header-content{width:100%;max-width:88rem;margin:0 auto;min-height:3.5rem;padding:.4rem max(1.5rem,env(safe-area-inset-right)) .4rem max(1.5rem,env(safe-area-inset-left));display:flex;align-items:center;gap:1rem}.brand{display:flex;align-items:center;gap:.65rem;flex-shrink:0}.brand img{width:2.15rem;height:2.15rem;object-fit:contain;border-radius:50%;background:#fff;box-shadow:0 0 0 2px #4ed9c647}.brand-text{display:flex;flex-direction:column;justify-content:center;gap:.08rem;line-height:1.1;min-width:0}.brand-text strong{font-family:Unbounded,sans-serif;font-size:.92rem;font-weight:700;letter-spacing:-.03em}.brand-text span{font-size:.68rem;color:#4ed9c6db;font-weight:500;letter-spacing:.04em}.year-nav{display:flex;align-items:center;gap:.15rem;margin-left:auto;overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;padding:.16rem;background:#ffffff12;border:1px solid rgba(255,255,255,.1);border-radius:999px;scrollbar-width:none}.year-nav::-webkit-scrollbar{display:none}.loading-years{color:#ffffffb3;font-size:.8rem;padding:.25rem .6rem}.year-btn{border:none;background:transparent;color:#ffffffc7;min-height:1.7rem;padding:.18rem .62rem;border-radius:999px;font-size:.78rem;font-weight:600;cursor:pointer;white-space:nowrap}.year-btn:hover:not(:disabled){background:#ffffff1a;color:#fff}.year-btn.is-active{background:#4ed9c6;color:#140a22;box-shadow:0 4px 12px #4ed9c647}.year-btn.is-active:hover:not(:disabled){background:#6be3d2;color:#140a22}.header-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.logout-button{flex-shrink:0;min-height:1.85rem;padding:.28rem .85rem;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:transparent;color:#fff;font-size:.8rem;font-weight:600;cursor:pointer}.logout-button:hover:not(:disabled){background:#ffffff1a;color:#fff}@media(max-width:64rem){.header-content{flex-wrap:wrap;padding:.5rem max(1rem,env(safe-area-inset-right)) .55rem max(1rem,env(safe-area-inset-left));gap:.55rem}.year-nav{order:3;width:100%;margin-left:0;padding:.2rem;gap:.2rem}.year-btn{min-height:2rem;padding:.22rem .72rem}.header-actions{margin-left:auto}}@media(max-width:30rem){.brand{min-width:0}.brand img{width:1.9rem;height:1.9rem}.brand-text strong{font-size:.84rem}.brand-text span{font-size:.62rem}.logout-button{min-height:2rem;padding:.28rem .75rem}.year-btn{min-height:2rem;padding:.22rem .7rem}}.app-footer{background:#140a22;color:#ffffff9e;width:100%;margin-top:auto;flex-shrink:0}.app-footer:before{content:"";display:block;height:2px;background:linear-gradient(90deg,#8be67c,#4ed9c6 34%,#5c3ae8)}.app-footer .footer-content{max-width:88rem;margin:0 auto;padding:.28rem max(1.5rem,env(safe-area-inset-right)) max(.28rem,env(safe-area-inset-bottom)) max(1.5rem,env(safe-area-inset-left));text-align:center}.app-footer .footer-content p{margin:0;color:inherit;font-size:.72rem;letter-spacing:.01em;line-height:1.35}@media(max-width:48rem){.app-footer .footer-content{padding:.35rem 1rem max(.4rem,env(safe-area-inset-bottom))}.app-footer .footer-content p{font-size:.68rem}}:root{--toastify-color-light: #fff;--toastify-color-dark: #121212;--toastify-color-info: #3498db;--toastify-color-success: #07bc0c;--toastify-color-warning: #f1c40f;--toastify-color-error: hsl(6, 78%, 57%);--toastify-color-transparent: rgba(255, 255, 255, .7);--toastify-icon-color-info: var(--toastify-color-info);--toastify-icon-color-success: var(--toastify-color-success);--toastify-icon-color-warning: var(--toastify-color-warning);--toastify-icon-color-error: var(--toastify-color-error);--toastify-container-width: fit-content;--toastify-toast-width: 320px;--toastify-toast-offset: 16px;--toastify-toast-top: max(var(--toastify-toast-offset), env(safe-area-inset-top));--toastify-toast-right: max(var(--toastify-toast-offset), env(safe-area-inset-right));--toastify-toast-left: max(var(--toastify-toast-offset), env(safe-area-inset-left));--toastify-toast-bottom: max(var(--toastify-toast-offset), env(safe-area-inset-bottom));--toastify-toast-background: #fff;--toastify-toast-padding: 14px;--toastify-toast-min-height: 64px;--toastify-toast-max-height: 800px;--toastify-toast-bd-radius: 6px;--toastify-toast-shadow: 0px 4px 12px rgba(0, 0, 0, .1);--toastify-font-family: sans-serif;--toastify-z-index: 9999;--toastify-text-color-light: #757575;--toastify-text-color-dark: #fff;--toastify-text-color-info: #fff;--toastify-text-color-success: #fff;--toastify-text-color-warning: #fff;--toastify-text-color-error: #fff;--toastify-spinner-color: #616161;--toastify-spinner-color-empty-area: #e0e0e0;--toastify-color-progress-light: linear-gradient(to right, #4cd964, #5ac8fa, #007aff, #34aadc, #5856d6, #ff2d55);--toastify-color-progress-dark: #bb86fc;--toastify-color-progress-info: var(--toastify-color-info);--toastify-color-progress-success: var(--toastify-color-success);--toastify-color-progress-warning: var(--toastify-color-warning);--toastify-color-progress-error: var(--toastify-color-error);--toastify-color-progress-bgo: .2}.Toastify__toast-container{z-index:var(--toastify-z-index);-webkit-transform:translate3d(0,0,var(--toastify-z-index));position:fixed;width:var(--toastify-container-width);box-sizing:border-box;color:#fff;display:flex;flex-direction:column}.Toastify__toast-container--top-left{top:var(--toastify-toast-top);left:var(--toastify-toast-left)}.Toastify__toast-container--top-center{top:var(--toastify-toast-top);left:50%;transform:translate(-50%);align-items:center}.Toastify__toast-container--top-right{top:var(--toastify-toast-top);right:var(--toastify-toast-right);align-items:end}.Toastify__toast-container--bottom-left{bottom:var(--toastify-toast-bottom);left:var(--toastify-toast-left)}.Toastify__toast-container--bottom-center{bottom:var(--toastify-toast-bottom);left:50%;transform:translate(-50%);align-items:center}.Toastify__toast-container--bottom-right{bottom:var(--toastify-toast-bottom);right:var(--toastify-toast-right);align-items:end}.Toastify__toast{--y: 0;position:relative;touch-action:none;width:var(--toastify-toast-width);min-height:var(--toastify-toast-min-height);box-sizing:border-box;margin-bottom:1rem;padding:var(--toastify-toast-padding);border-radius:var(--toastify-toast-bd-radius);box-shadow:var(--toastify-toast-shadow);max-height:var(--toastify-toast-max-height);font-family:var(--toastify-font-family);z-index:0;display:flex;flex:1 auto;align-items:center;word-break:break-word}@media only screen and (max-width:480px){.Toastify__toast-container{width:100vw;left:env(safe-area-inset-left);margin:0}.Toastify__toast-container--top-left,.Toastify__toast-container--top-center,.Toastify__toast-container--top-right{top:env(safe-area-inset-top);transform:translate(0)}.Toastify__toast-container--bottom-left,.Toastify__toast-container--bottom-center,.Toastify__toast-container--bottom-right{bottom:env(safe-area-inset-bottom);transform:translate(0)}.Toastify__toast-container--rtl{right:env(safe-area-inset-right);left:initial}.Toastify__toast{--toastify-toast-width: 100%;margin-bottom:0;border-radius:0}}.Toastify__toast-container[data-stacked=true]{width:var(--toastify-toast-width)}.Toastify__toast--stacked{position:absolute;width:100%;transform:translate3d(0,var(--y),0) scale(var(--s));transition:transform .3s}.Toastify__toast--stacked[data-collapsed] .Toastify__toast-body,.Toastify__toast--stacked[data-collapsed] .Toastify__close-button{transition:opacity .1s}.Toastify__toast--stacked[data-collapsed=false]{overflow:visible}.Toastify__toast--stacked[data-collapsed=true]:not(:last-child)>*{opacity:0}.Toastify__toast--stacked:after{content:"";position:absolute;left:0;right:0;height:calc(var(--g) * 1px);bottom:100%}.Toastify__toast--stacked[data-pos=top]{top:0}.Toastify__toast--stacked[data-pos=bot]{bottom:0}.Toastify__toast--stacked[data-pos=bot].Toastify__toast--stacked:before{transform-origin:top}.Toastify__toast--stacked[data-pos=top].Toastify__toast--stacked:before{transform-origin:bottom}.Toastify__toast--stacked:before{content:"";position:absolute;left:0;right:0;bottom:0;height:100%;transform:scaleY(3);z-index:-1}.Toastify__toast--rtl{direction:rtl}.Toastify__toast--close-on-click{cursor:pointer}.Toastify__toast-icon{margin-inline-end:10px;width:22px;flex-shrink:0;display:flex}.Toastify--animate{animation-fill-mode:both;animation-duration:.5s}.Toastify--animate-icon{animation-fill-mode:both;animation-duration:.3s}.Toastify__toast-theme--dark{background:var(--toastify-color-dark);color:var(--toastify-text-color-dark)}.Toastify__toast-theme--light,.Toastify__toast-theme--colored.Toastify__toast--default{background:var(--toastify-color-light);color:var(--toastify-text-color-light)}.Toastify__toast-theme--colored.Toastify__toast--info{color:var(--toastify-text-color-info);background:var(--toastify-color-info)}.Toastify__toast-theme--colored.Toastify__toast--success{color:var(--toastify-text-color-success);background:var(--toastify-color-success)}.Toastify__toast-theme--colored.Toastify__toast--warning{color:var(--toastify-text-color-warning);background:var(--toastify-color-warning)}.Toastify__toast-theme--colored.Toastify__toast--error{color:var(--toastify-text-color-error);background:var(--toastify-color-error)}.Toastify__progress-bar-theme--light{background:var(--toastify-color-progress-light)}.Toastify__progress-bar-theme--dark{background:var(--toastify-color-progress-dark)}.Toastify__progress-bar--info{background:var(--toastify-color-progress-info)}.Toastify__progress-bar--success{background:var(--toastify-color-progress-success)}.Toastify__progress-bar--warning{background:var(--toastify-color-progress-warning)}.Toastify__progress-bar--error{background:var(--toastify-color-progress-error)}.Toastify__progress-bar-theme--colored.Toastify__progress-bar--info,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--success,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--warning,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--error{background:var(--toastify-color-transparent)}.Toastify__close-button{color:#fff;position:absolute;top:6px;right:6px;background:transparent;outline:none;border:none;padding:0;cursor:pointer;opacity:.7;transition:.3s ease;z-index:1}.Toastify__toast--rtl .Toastify__close-button{left:6px;right:unset}.Toastify__close-button--light{color:#000;opacity:.3}.Toastify__close-button>svg{fill:currentColor;height:16px;width:14px}.Toastify__close-button:hover,.Toastify__close-button:focus{opacity:1}@keyframes Toastify__trackProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.Toastify__progress-bar{position:absolute;bottom:0;left:0;width:100%;height:100%;z-index:1;opacity:.7;transform-origin:left}.Toastify__progress-bar--animated{animation:Toastify__trackProgress linear 1 forwards}.Toastify__progress-bar--controlled{transition:transform .2s}.Toastify__progress-bar--rtl{right:0;left:initial;transform-origin:right;border-bottom-left-radius:initial}.Toastify__progress-bar--wrp{position:absolute;overflow:hidden;bottom:0;left:0;width:100%;height:5px;border-bottom-left-radius:var(--toastify-toast-bd-radius);border-bottom-right-radius:var(--toastify-toast-bd-radius)}.Toastify__progress-bar--wrp[data-hidden=true]{opacity:0}.Toastify__progress-bar--bg{opacity:var(--toastify-color-progress-bgo);width:100%;height:100%}.Toastify__spinner{width:20px;height:20px;box-sizing:border-box;border:2px solid;border-radius:100%;border-color:var(--toastify-spinner-color-empty-area);border-right-color:var(--toastify-spinner-color);animation:Toastify__spin .65s linear infinite}@keyframes Toastify__bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(3000px,0,0)}60%{opacity:1;transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutRight{20%{opacity:1;transform:translate3d(-20px,var(--y),0)}to{opacity:0;transform:translate3d(2000px,var(--y),0)}}@keyframes Toastify__bounceInLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(-3000px,0,0)}60%{opacity:1;transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutLeft{20%{opacity:1;transform:translate3d(20px,var(--y),0)}to{opacity:0;transform:translate3d(-2000px,var(--y),0)}}@keyframes Toastify__bounceInUp{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,3000px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translateZ(0)}}@keyframes Toastify__bounceOutUp{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,-2000px,0)}}@keyframes Toastify__bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,-3000px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:none}}@keyframes Toastify__bounceOutDown{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,2000px,0)}}.Toastify__bounce-enter--top-left,.Toastify__bounce-enter--bottom-left{animation-name:Toastify__bounceInLeft}.Toastify__bounce-enter--top-right,.Toastify__bounce-enter--bottom-right{animation-name:Toastify__bounceInRight}.Toastify__bounce-enter--top-center{animation-name:Toastify__bounceInDown}.Toastify__bounce-enter--bottom-center{animation-name:Toastify__bounceInUp}.Toastify__bounce-exit--top-left,.Toastify__bounce-exit--bottom-left{animation-name:Toastify__bounceOutLeft}.Toastify__bounce-exit--top-right,.Toastify__bounce-exit--bottom-right{animation-name:Toastify__bounceOutRight}.Toastify__bounce-exit--top-center{animation-name:Toastify__bounceOutUp}.Toastify__bounce-exit--bottom-center{animation-name:Toastify__bounceOutDown}@keyframes Toastify__zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes Toastify__zoomOut{0%{opacity:1}50%{opacity:0;transform:translate3d(0,var(--y),0) scale3d(.3,.3,.3)}to{opacity:0}}.Toastify__zoom-enter{animation-name:Toastify__zoomIn}.Toastify__zoom-exit{animation-name:Toastify__zoomOut}@keyframes Toastify__flipIn{0%{transform:perspective(400px) rotateX(90deg);animation-timing-function:ease-in;opacity:0}40%{transform:perspective(400px) rotateX(-20deg);animation-timing-function:ease-in}60%{transform:perspective(400px) rotateX(10deg);opacity:1}80%{transform:perspective(400px) rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes Toastify__flipOut{0%{transform:translate3d(0,var(--y),0) perspective(400px)}30%{transform:translate3d(0,var(--y),0) perspective(400px) rotateX(-20deg);opacity:1}to{transform:translate3d(0,var(--y),0) perspective(400px) rotateX(90deg);opacity:0}}.Toastify__flip-enter{animation-name:Toastify__flipIn}.Toastify__flip-exit{animation-name:Toastify__flipOut}@keyframes Toastify__slideInRight{0%{transform:translate3d(110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInLeft{0%{transform:translate3d(-110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInUp{0%{transform:translate3d(0,110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInDown{0%{transform:translate3d(0,-110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideOutRight{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(110%,var(--y),0)}}@keyframes Toastify__slideOutLeft{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(-110%,var(--y),0)}}@keyframes Toastify__slideOutDown{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(0,500px,0)}}@keyframes Toastify__slideOutUp{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(0,-500px,0)}}.Toastify__slide-enter--top-left,.Toastify__slide-enter--bottom-left{animation-name:Toastify__slideInLeft}.Toastify__slide-enter--top-right,.Toastify__slide-enter--bottom-right{animation-name:Toastify__slideInRight}.Toastify__slide-enter--top-center{animation-name:Toastify__slideInDown}.Toastify__slide-enter--bottom-center{animation-name:Toastify__slideInUp}.Toastify__slide-exit--top-left,.Toastify__slide-exit--bottom-left{animation-name:Toastify__slideOutLeft;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--top-right,.Toastify__slide-exit--bottom-right{animation-name:Toastify__slideOutRight;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--top-center{animation-name:Toastify__slideOutUp;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--bottom-center{animation-name:Toastify__slideOutDown;animation-timing-function:ease-in;animation-duration:.3s}@keyframes Toastify__spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}*{box-sizing:border-box}html,body{font-family:Geologica,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;max-width:100%;-webkit-text-size-adjust:100%}body{margin:0;padding:0;color:#140a22;line-height:1.5;min-height:100vh;font-weight:400;background:radial-gradient(920px 440px at -8% -12%,rgba(139,230,124,.22),transparent 44%),radial-gradient(760px 500px at 108% -4%,rgba(78,217,198,.22),transparent 48%),radial-gradient(680px 540px at 82% 112%,rgba(92,58,232,.14),transparent 52%),#f3f1fa}body::-webkit-scrollbar{width:8px}body::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#4ed9c6,#5c3ae8);border-radius:8px}button,input,select{font-family:inherit}::selection{background:#4ed9c652;color:#140a22}.app-container{width:100%;min-height:100vh;display:flex;flex-direction:column;overflow-x:clip}.app-container.is-auth-screen{background:#140a22}.app-container:not(.is-auth-screen){height:100dvh;overflow:hidden}.main-content{flex:1;width:100%;max-width:88rem;margin:0 auto;padding:.85rem 1.5rem 1rem;display:flex;flex-direction:column;gap:.7rem;min-height:0;overflow:hidden}.loading-message{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 1rem;gap:1rem}.loading-spinner{width:42px;height:42px;border:3px solid rgba(92,58,232,.15);border-top-color:#4ed9c6;border-radius:50%;animation:spin .8s linear infinite}.loading-text{font-size:.95rem;color:#5c566e}@keyframes spin{to{transform:rotate(360deg)}}.empty-state,.no-data{text-align:center;padding:3rem 1.5rem;background:#fff;border:1px solid rgba(20,10,34,.08);border-radius:18px;box-shadow:0 10px 30px #140a220e,0 1px #fff inset;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);color:#5c566e}.empty-state{display:flex;flex-direction:column;align-items:center;gap:1rem}.empty-state p{margin:0;font-size:1.05rem;color:#140a22;font-family:Unbounded,sans-serif}.empty-state .empty-actions{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center}.empty-state button{border:1px solid rgba(20,10,34,.08);background:#fff;color:#140a22;border-radius:999px;padding:.7rem 1.2rem;cursor:pointer;transition:background-color .18s ease,color .18s ease,box-shadow .18s ease,border-color .18s ease;font-weight:600}.empty-state button:hover:not(:disabled){background:#5c3ae814;color:#140a22}.empty-state button:last-child{background:#4ed9c6;border-color:transparent;color:#140a22;box-shadow:0 10px 24px #4ed9c647}.empty-state button:last-child:hover:not(:disabled){background:#6be3d2;color:#140a22}.results-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.6rem;flex-shrink:0}.stat-card{position:relative;overflow:hidden;background:radial-gradient(120px 70px at 100% 120%,rgba(78,217,198,.1),transparent 64%),#fff;border:1px solid rgba(20,10,34,.08);border-radius:14px;padding:.7rem .85rem .65rem;box-shadow:0 10px 30px #140a220e,0 1px #fff inset;display:flex;flex-direction:column;gap:.08rem}.stat-card:before{content:"";position:absolute;inset:0 auto auto 0;width:100%;height:3px;background:linear-gradient(90deg,#8be67c,#4ed9c6 34%,#5c3ae8)}.stat-card:after{content:"";position:absolute;top:.72rem;right:.72rem;width:.42rem;height:.42rem;border-radius:50%;background:#4ed9c6;box-shadow:0 0 0 3px #4ed9c629}.stat-card.is-boys{background:radial-gradient(120px 70px at 100% 120%,rgba(92,58,232,.1),transparent 64%),#fff}.stat-card.is-boys:before{background:#5c3ae8}.stat-card.is-boys:after{background:#5c3ae8;box-shadow:0 0 0 3px #5c3ae824}.stat-card.is-girls{background:radial-gradient(120px 70px at 100% 120%,rgba(224,122,171,.12),transparent 64%),#fff}.stat-card.is-girls:before{background:#e07aab}.stat-card.is-girls:after{background:#e07aab;box-shadow:0 0 0 3px #e07aab29}.stat-card.is-pre:before{background:#4ed9c6}.stat-card.is-school{background:radial-gradient(120px 70px at 100% 120%,rgba(139,230,124,.14),transparent 64%),#fff}.stat-card.is-school:before{background:#8be67c}.stat-card.is-school:after{background:#8be67c;box-shadow:0 0 0 3px #8be67c2e}.stat-label{font-size:.66rem;color:#5c566e;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.stat-value{font-family:Unbounded,sans-serif;font-size:1.45rem;font-weight:700;color:#140a22;line-height:1.15}.stat-meta{font-size:.72rem;font-weight:600;color:#5c566e}.active-filters{display:flex;flex-wrap:wrap;gap:.35rem;flex-shrink:0}.filter-chip{display:inline-flex;align-items:center;gap:.25rem;background:#fff;color:#5c3ae8;border-radius:999px;padding:.18rem .28rem .18rem .55rem;font-size:.74rem;font-weight:600;border:1px solid rgba(92,58,232,.14)}.filter-chip:before{content:"";width:.38rem;height:.38rem;border-radius:50%;background:#4ed9c6}.filter-chip button{border:none;background:transparent;cursor:pointer;width:1.2rem;height:1.2rem;border-radius:50%;font-size:.95rem;line-height:1;color:inherit}.filter-chip button:hover:not(:disabled){background:#5c3ae814;color:#140a22}.table-shell{position:relative;flex:1;min-height:0;display:flex;flex-direction:column}.table-loading-overlay{position:absolute;inset:0;z-index:5;display:flex;align-items:center;justify-content:center;background:#ffffffb8;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:18px;font-size:.95rem;color:#5c566e;font-weight:600;cursor:progress}.table-controls,.empty-state,.no-data,.loading-message{flex-shrink:0}@media(max-width:64em){.app-container:not(.is-auth-screen){height:auto;min-height:100dvh;overflow-x:clip;overflow-y:visible}.main-content{overflow:visible;padding:.75rem max(1rem,env(safe-area-inset-right)) 1rem max(1rem,env(safe-area-inset-left))}.results-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.table-shell{flex:none}input,select,textarea{font-size:1rem}}@media(max-width:48em){.results-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.stat-card{padding:.55rem .7rem .5rem}.stat-card:after{display:none}.stat-label{font-size:.62rem;letter-spacing:.04em}.stat-value{font-size:1.28rem}}@media(max-width:36em){.main-content{padding:.65rem max(.75rem,env(safe-area-inset-right)) .85rem max(.75rem,env(safe-area-inset-left));gap:.55rem}}.Toastify__toast-container{max-width:calc(100vw - 1.5rem)}.Toastify__toast{border-radius:14px;font-family:Geologica,sans-serif;box-shadow:0 12px 32px #140a221f;color:#140a22}.Toastify__toast-body{font-size:.9rem;font-weight:500}.Toastify__toast--success{background:#e9f8f4}.Toastify__progress-bar--success{background:#4ed9c6}.Toastify__toast--error{background:#fdecee}.Toastify__progress-bar--error{background:#e05260}.Toastify__toast--info{background:#f1ecfe}.Toastify__progress-bar--info{background:#5c3ae8}.Toastify__toast--warning{background:#fff6e8}.Toastify__progress-bar--warning{background:#e0a24a}
