@media(max-width:640px){.page-card{max-width:100vw!important}}@media(max-width:640px){.admin-books-controls{display:flex;gap:.5rem}.admin-books-controls .admin-books-rest{display:flex;gap:.5rem;flex:1 1 auto;min-width:0}.admin-books-rest--split .admin-books-action{flex:0 0 40%;width:auto!important;white-space:nowrap}.admin-books-rest--split .admin-books-select{flex:0 0 60%;min-width:0}}@media(min-width:1024px){.page-card{max-width:550px}}.page-card.page-card--admin,.admin-page .page-card{max-width:720px}.page-card>*{max-width:600px;margin-left:auto;margin-right:auto}button{padding:.45rem .9rem;border-radius:999px;border:none;cursor:pointer;font-size:.85rem}.page-card{width:100%;max-width:1200px;margin:0 auto;padding:1rem 1.25rem;background:#f9fafb;border-radius:.75rem;box-shadow:0 10px 30px #0f172a14}@media(max-width:640px){.page-card{width:100%;max-width:550px;padding:.9rem 1rem;background:#f9fafb;box-shadow:0 10px 30px #0f172a14}}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:"";content:none}table{border-collapse:collapse;border-spacing:0}html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}html,body{min-height:100vh;max-width:100%;overflow-x:hidden}@media(max-width:640px){html,body{max-width:100vw!important}}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}*,*:before,*:after{box-sizing:border-box}img,svg,canvas,video{max-width:100%;height:auto}:root{--color-black: #262626;--color-white: #FFFFFF;--color-yellow-l: #FFE8D1;--color-yellow-m: #FFC97D;--color-yellow-f: #FF9D00;--color-red-l: #FFDFDE;--color-red-f: #FF5961}*,h1,h2,h3,h4,h5,h6,p,input,a,li{font-family:Helvetica,Helvetica Neue,Helvetica,Arial,sans-serif;color:var(--color-black)}:root{--color-background: var(--color-white);--color-footer-background: var(--color-yellow-l);--color-primary: var(--color-yellow-l);--color-card-background: var(--color-white)}:root{--button-color: var(--color-yellow-f);--button-text-color: var(--color-black);--btn-hover-font-color: var(--color-black);--color-input-borderline: var(--color-black)}#main{display:flex;flex-direction:column;align-items:center}.visually-hidden{border-width:0!important;clip:rect(1px,1px,1px,1px)!important;height:1px!important;overflow:hidden!important;padding:0!important;position:absolute!important;white-space:nowrap!important;width:1px!important}#main{min-height:100vh;text-align:center}#main,header{margin:2rem 1.5rem 0}footer{background-color:#ffe8d1!important;border-radius:3.125rem 3.125rem 0 0;padding:4.3rem 2rem 5rem;width:100%}html{font-family:Helvetica,sans-serif}:root{--mobile-root-font-size: 16px;--tablet-root-font-size: 18px;--desktop-root-font-size: 18px}@media(max-width:576px){*{font-size:var(--mobile-root-font-size)}h1{font-size:1.5rem}h2{font-size:1.4rem}h3{font-size:1.25rem}h4{font-size:1.15rem}input,select,textarea,button{font-size:var(--mobile-root-font-size)!important}}@media(min-width:577px){*{font-size:var(--tablet-root-font-size)}h1{font-size:2.125rem}h2{font-size:1.35rem}h3{font-size:1.25rem}h4{font-size:1.125rem}}@media(min-width:577px){*{font-size:var(--tablet-root-font-size)}h1{font-size:1.9rem}h2{font-size:1.35rem}h3{font-size:1.25rem}h4{font-size:1.125rem}}body h1{line-height:1;letter-spacing:.03rem}body h2{line-height:1.067;letter-spacing:.03rem}body h3{line-height:1.083;letter-spacing:.02rem}body h4{line-height:1.1;letter-spacing:.01rem}body h5{line-height:1.111;letter-spacing:.01rem}body h6{line-height:1.125;letter-spacing:.01rem}body p{line-height:1.3;letter-spacing:.02rem}body input,body select{font-size:1.1rem;letter-spacing:.02rem}body button{font-size:1rem;letter-spacing:.02rem}.thinFont{font-weight:100}.normalFont{font-weight:400}.boldFont{font-weight:700}.opaqueFont{opacity:.8}.errorTxt{color:var(--color-red-f)}.successTxt{color:var(--color-yellow-f)}.whiteTxt{color:var(--color-white)}.smallText{font-size:.8em}.spacedFont{letter-spacing:.03rem}.fontUnderline{text-decoration:underline}.fontUnderline:hover{text-decoration:none}}footer{background-color:#ffe8d1!important;border-radius:3.125rem 3.125rem 0 0;padding:4.3rem 2rem 5rem;width:100%}footer p{margin-top:1rem}footer .container{display:flex;margin:0 auto;justify-content:space-between}@media(min-width:700px){footer .container{max-width:80%;gap:4rem}footer img{width:9rem}.row1{text-align:left;width:70%}.row2{text-align:right;width:30%}}@media(max-width:699px){footer .container{max-width:90%;text-align:center;flex-direction:column;gap:0}footer img{width:8rem;margin-top:3rem;margin-bottom:1rem}}body{background-color:var(--color-background)}body{transition:background-color .3s,color .3s}.button{text-align:center;font-style:normal;cursor:pointer;transition:background .1s ease-in-out,transform .1s ease;-webkit-appearance:none;-moz-appearance:none}.button-fullwidth{width:100%}.button-small{text-align:center;padding:.5rem 1rem}.button-colorless{background-color:transparent}.button-black{background-color:var(--color-black);color:var(--color-white);border-color:var(--color-black)!important}.button-white{background-color:var(--color-white);border-color:var(--color-white);color:var(--color-black)!important}.button-red{background-color:var(--color-red-l);border-color:var(--color-red-l)!important;color:var(--color-black)!important}.button-opacity{opacity:.5}.card{width:100%;max-width:500px;padding:1.5rem 2rem}.round-corners-whole100{border-radius:2rem}.round-corners-whole50{border-radius:1rem}.round-corners-whole25{border-radius:.75rem}.round-corners-whole10{border-radius:.5rem}.round-corner-bottom100{border-radius:0 0 2rem 2rem}.round-corner-top100{border-radius:2rem 2rem 0 0}.link,.link:hover,.link:visited,a,a:hover,a:visited{color:var(--color-link)}a,.link:hover,a:hover{text-decoration:none}.link{font-weight:700;text-decoration:underline;padding-left:0}input,select{padding:.5rem .75rem;border-radius:1rem;cursor:pointer}.input-label{margin-left:.8rem;margin-bottom:.4rem}input:focus,select:focus{outline:.1rem solid var(--color-black);outline-offset:-.075rem}.thin-border{border:solid .1rem}.full-border{border:solid .2rem}.button-yellow{background-color:var(--color-yellow-l);border-color:var(--color-yellow-l)!important;color:var(--color-black)}.field-height-100{height:3.9rem}.field-height-50{height:3rem}.input-group,.authError{display:flex;flex-direction:column;text-align:left;margin-bottom:35px}.input100{width:100%}.input50{width:50%}.input40{width:40%}.input20{width:20%}#login-card{margin-top:0;width:100%!important}.login-card-container{width:100%;display:flex;flex-direction:column;align-items:center}#loginMan{margin:0 auto;width:20rem;display:flex;flex-direction:column;justify-content:end}#loginMan img{height:10rem}:is(#login-card,#teacher-card) h1{margin:2rem 0 3rem}#login-card button{margin-top:1rem}.card{margin-top:4rem;margin-bottom:4rem;padding:2rem}.card-bottom,#teacher-card{min-height:25rem}.card-top{margin-bottom:0;padding-bottom:0}.card-bottom{padding-top:0;margin-top:0}.card-top{background-color:var(--color-black);display:flex;justify-content:space-between;padding:1.5rem 2rem 0;text-align:left}.card-top p{margin-top:.5rem}.card-top img{height:4rem}.card-bottom,.teacher-card{align-content:center}:is(.card-bottom,.teacher-card) .code-input-container p{margin-bottom:2rem}:is(.card-bottom,.teacher-card) .qr-code-icon{margin-top:3rem;height:2.5rem}:is(.card-bottom,.teacher-card) .qr-code-button{margin-top:.5rem}:is(:is(.card-bottom,.teacher-card) .registered-sucsess,:is(.card-bottom,.teacher-card) .registered-error) img{height:7rem}:is(:is(.card-bottom,.teacher-card) .registered-sucsess,:is(.card-bottom,.teacher-card) .registered-error) h3{margin-top:2rem;margin-bottom:1rem}.student-overview-card,.teacher-recent-sessions{background-color:var(--color-black);padding-bottom:2.5rem}:is(.student-overview-card,.teacher-recent-sessions) *{color:var(--color-white)}:is(.student-overview-card,.teacher-recent-sessions) .table-container{margin-top:2rem;width:100%;text-align:left;--first-col-width: 2rem}:is(.student-overview-card,.teacher-recent-sessions) .table-container tr{border-bottom:1px solid rgba(255,255,255,.15);height:3.5rem;justify-self:center}:is(.student-overview-card,.teacher-recent-sessions) .table-container .main-table-overview-row:hover{background-color:#ffffff0d}:is(.student-overview-card,.teacher-recent-sessions) .table-container>tbody>tr:last-child{border-bottom:none}:is(.student-overview-card,.teacher-recent-sessions) .table-container td{vertical-align:middle}:is(.student-overview-card,.teacher-recent-sessions) .table-container td img{height:1rem}:is(.student-overview-card,.teacher-recent-sessions) .table-container td.requirement-meet-icon{width:var(--first-col-width);text-align:center}:is(.student-overview-card,.teacher-recent-sessions) .table-container .class-overview{padding-left:.5rem}:is(.student-overview-card,.teacher-recent-sessions) .table-container .required-classes{text-align:center;padding-right:1rem}:is(.student-overview-card,.teacher-recent-sessions) td.detail-cell{padding:.25rem 0 .5rem;border-bottom:none}:is(.student-overview-card,.teacher-recent-sessions) .subtable-wrapper{margin-left:calc(var(--first-col-width) + .5rem)}:is(.student-overview-card,.teacher-recent-sessions) table.subtable{width:100%;border-collapse:collapse;table-layout:auto}:is(.student-overview-card,.teacher-recent-sessions) table.subtable tr{border-bottom:1px solid rgba(255,255,255,.08);height:2rem}:is(.student-overview-card,.teacher-recent-sessions) table.subtable tr:last-child{border-bottom:none}:is(.student-overview-card,.teacher-recent-sessions) table.subtable td{vertical-align:middle;padding:.25rem}:is(.student-overview-card,.teacher-recent-sessions) .subtable-icon-cell{width:1.25rem}:is(.student-overview-card,.teacher-recent-sessions) .subtable-name-cell{text-align:left}:is(.student-overview-card,.teacher-recent-sessions) .subtable-date-cell{text-align:right;white-space:nowrap}} .approved-term-card{background-color:var(--color-yellow-l);border-color:var(--color-yellow-l);display:flex;flex-direction:column}#start-next-semester-button{color:var(--color-yellow-l);margin:2rem 0 1rem}#gap-life-button{color:var(--color-black)}:is(.student-overview-card,.approved-term-card,.teacher-card,.teacher-recent-sessions) h2{padding-top:2.5rem}:is(.student-overview-card,.approved-term-card,.teacher-card,.teacher-recent-sessions) p{margin-top:.5rem}:is(.student-overview-card,.approved-term-card,.teacher-card,.teacher-recent-sessions) table p{margin:.25rem 0}.teacher-recent-sessions table{text-align:right}.teacher-card{align-content:flex-start;min-height:70vh}.teacher-card h2{margin-bottom:1.75rem}.teacher-card .termButtons{margin-top:4rem}.admin-page{max-width:1200px}.admin-page h1{margin-top:5rem}@media(min-width:700px){.admin-page p{width:40%}}.filter-buttons{display:flex;gap:.5rem;margin-top:2rem;margin-bottom:3rem}.admin-table{width:100%;border-collapse:collapse;font-size:.85rem}.admin-table thead th{text-align:left;border-bottom:1px solid #e5e7eb;padding:.25rem;font-weight:600}.admin-table tbody td{padding:.25rem;border-bottom:1px solid #f3f4f6}.admin-table__row--clickable{cursor:pointer}.admin-table__empty{padding:.4rem;font-size:.85rem;color:#6b7280}.admin-filter-section{display:flex;flex-direction:row;gap:1rem;margin:1rem 0 2rem}.admin-page input[type=checkbox]{accent-color:var(--color-black)}.admin-table td:nth-child(1),.admin-table th:nth-child(1){text-align:left;width:50%}.admin-table td:nth-child(2),.admin-table th:nth-child(2){text-align:center;width:30%}.admin-table td:nth-child(3),.admin-table th:nth-child(3){text-align:center;width:20%}.admin-table tr:last-child td{border-bottom:none}.admin-table tr th{border-bottom:none}.admin-table tr td{padding-top:1rem;padding-bottom:1rem}.admin-books-new-group{margin-bottom:2rem}.class-group-table{margin-bottom:4rem}.header-container{display:flex;justify-content:space-between;flex-direction:row;max-width:500px;margin:2rem auto 0}.header-container .left-header{display:flex;align-items:flex-start}.header-container img{height:2.75rem}.header-container.admin{max-width:1000px}.header-buttons{display:flex;gap:1rem}.admin-page{width:100%;text-align:left}#main.admin{max-width:1000px;margin:0 auto}
