.inactive{opacity:.3}.left{text-align:left}.right{text-align:right}.center{text-align:center}.mono{font-family:ui-monospace}@keyframes shake{10%,90%{transform:translate3d(-0.5px, 0, 0)}20%,80%{transform:translate3d(0.5px, 0, 0)}30%,50%,70%{transform:translate3d(-0.5px, 0, 0)}40%,60%{transform:translate3d(0.5px, 0, 0)}}body,html{font-family:-apple-system,sans-serif;margin:0;padding:0;min-height:100%}body *::selection,html *::selection{background-color:#e5f8fa}body{background-color:#f8f8f8;background-image:url("/img/logo-transparent.png");background-repeat:no-repeat;background-position:left 3em bottom 3em;background-size:50em auto}body.loading{background:red}@media(max-width: 1200px){body{background-image:none}}pre{font-family:ui-monospace,monospace;background:#f1f1f1;padding:.5em .7em;border-radius:.5em}form.standard{display:grid;grid-template-columns:180px 1fr;grid-row-gap:1em;max-width:600px}form label{font-weight:500;display:inline-block;margin-top:.42em}form input{border:1px solid #ccc;border-radius:.3em;font-size:1em;padding:.35em .6em}form input:focus{border-color:#25b1bb;outline:none}form button{display:inline-block;background:#25b1bb;border:1px solid #25b1bb;color:#fff;padding:.25em .5em;font-weight:400;font-size:1em;outline:none;cursor:pointer;border-radius:.3em}form .full{grid-column-start:1;grid-column-end:3}form .space-above{margin-top:1em}@media(max-width: 600px){form.standard{grid-template-columns:1fr;grid-row-gap:.5em}form.standard>*:nth-child(even){margin-bottom:1em}form.standard label{margin-top:0}form.standard .full{grid-column-end:2;margin-bottom:0}}nav{background:#fff;height:3.4em;box-shadow:0px 1px 3px #ddd;margin-top:3px;padding-top:.2em}nav div{display:flex;gap:1em;height:100%;max-width:1000px;padding:0 1em;margin:0 auto;align-items:center}nav a:first-child{flex-grow:1}nav a img{height:3em;width:auto}nav a svg{height:1.5em;width:auto;stroke:#25b1bb}nav .loader{background-image:url("/img/loading.png");background-repeat:no-repeat;background-position:50% 50%;background-size:1.2em 1.2em;width:1.2em;height:100%;transition:transform 20s linear;opacity:0}main,.notice{max-width:1000px;margin:0 auto;padding:1em}main h1,.notice h1{margin-bottom:1em}main .title h1,.notice .title h1{margin-top:0;font-size:2em;font-weight:normal}main .title h2,.notice .title h2{color:gray;margin-bottom:.5em}.notice{padding:0 1em;margin-top:1.1em}.notice div{font-size:.9em;padding:.7em;border-radius:.7em;box-shadow:0px 1px 4px #e6e6e6}.notice.success div{background:#bbf1de;color:#156549}.notice.error div{background:#f1bbbb;color:#651515}p.opening{margin-bottom:1.6em}.content-box{background:#fff;padding:1em;border-radius:.7em;margin:1em 0;box-shadow:0px 1px 3px #ddd;position:relative}.content-box p{margin-bottom:0}.content-box h1{color:#25b1bb;font-size:1.3em;font-weight:500;margin-top:0}.content-box h3{font-size:1.1em;font-weight:600;margin-top:0}div.bottom a{color:#b22;margin:1em}a,a:active{text-decoration:none;color:#25b1bb;font-weight:600}a.button{display:inline-block;background:#25b1bb;border:1px solid #25b1bb;color:#fff;padding:.25em .5em;font-weight:400;font-size:1em;outline:none;cursor:pointer;border-radius:.3em}a.secondary-button{display:inline-block;background:#25b1bb;border:1px solid #25b1bb;color:#fff;padding:.25em .5em;font-weight:400;font-size:1em;outline:none;cursor:pointer;border-radius:.3em;color:#25b1bb;background:#fff;margin-right:.3em}a.round-button{display:inline-block;background:#25b1bb;border:1px solid #25b1bb;color:#fff;padding:.25em .5em;font-weight:400;font-size:1em;outline:none;cursor:pointer;border-radius:.3em;border-radius:100%;padding:.25em;width:18px;height:18px;text-align:center;line-height:18px;font-weight:600}.icon-action{position:absolute;top:1.3em;right:1em;display:flex;gap:.6em;align-items:center}.icon-action a{display:flex;align-items:center}.icon-action a svg{width:1em;height:1em}.icon-action span{display:inline-block;padding:.1em .3em;background:#b22;color:#fff;font-size:.8em;border-radius:.4em;transition:opacity .2s}.icon-action span.hidden{opacity:0}.info-box{background:#eee;box-shadow:0px 1px 3px #ccc;padding:.5em .8em;font-size:.8em;display:inline-block;border-radius:.7em}.info-box h1{margin-top:0;margin-bottom:.5em;font-size:1.3em;color:#777}.info-box ul{padding-left:20px;margin:.2em 0}input.search{background:#f0f0f0;border:none;background-image:url("/img/search.svg");background-repeat:no-repeat;background-position:right .5em top 50%;background-size:1em 1em;padding-right:1.8em}div.suggestions{position:relative}div.suggestions ul{padding:0;margin:6px 1px;border-radius:.3em;box-shadow:0px 8px 40px #d9d9d9;position:absolute;overflow:hidden;width:calc(100% - 2px);list-style-type:none;background:#fff;transition:height .1s;height:0px;top:-0.6em;z-index:100}div.suggestions ul li{height:29px;line-height:30px;padding:0 10px;border-bottom:1px solid #e6e6e6;cursor:pointer}div.suggestions ul li:hover,div.suggestions ul li.selected{background:rgba(37,177,187,.1)}div.suggestions ul li:last-child{border-bottom:none}table.minimal{text-align:left;border-collapse:collapse;margin:2em 0 .5em 0;font-variant-numeric:tabular-nums}table.minimal tr{border-top:1px solid #eee}table.minimal tr.header{border-top:none;border-bottom:1px solid #bbb}table.minimal td,table.minimal th{padding:.3em .6em}main.home table td,.home.notice table td{vertical-align:top}main.home table .time,.home.notice table .time{display:inline-block;width:2.9em;text-align:right}main.home table .places,.home.notice table .places{color:gray}main.home table.payments tr td:nth-child(2),.home.notice table.payments tr td:nth-child(2){width:60px}main.students table,.students.notice table{margin:0}main.students table tr td,.students.notice table tr td{cursor:pointer}main.students table .state-label,.students.notice table .state-label{display:inline-block;background:gray;width:.6em;height:.6em;border-radius:50%}main.students table .state-label.s0,.students.notice table .state-label.s0{background:#f0dc24}main.students table .state-label.s1,.students.notice table .state-label.s1{background:rgba(0,0,0,0)}main.students table .state-label.s2,.students.notice table .state-label.s2{background:#f07d24}main.students table .state-label.s3,.students.notice table .state-label.s3{background:#25b1bb}main.students table ive-label,.students.notice table ive-label{background:#f0dc24}main.student .info,.student.notice .info{display:grid;grid-template-columns:max-content max-content;grid-row-gap:.5em;grid-column-gap:1em}main.student .info *:nth-child(2n-1),.student.notice .info *:nth-child(2n-1){font-weight:600}main.student #balance span,.student.notice #balance span{color:#25b1bb;font-weight:bold}main.student table.balance,.student.notice table.balance{margin-top:1em}main.student table.balance td,.student.notice table.balance td{vertical-align:top}main.student table.balance tr:first-child,.student.notice table.balance tr:first-child{border-top:none}main.student table.balance td.date,.student.notice table.balance td.date{color:gray}main.student table.payments,.student.notice table.payments{margin-top:1em}main.student table.payments .money-t,.student.notice table.payments .money-t{padding-right:0}main.student table.payments .money-v,.student.notice table.payments .money-v{padding-left:.3em;padding-right:0;text-align:right}main.student table.payments .tag,.student.notice table.payments .tag{display:inline-block;background:#eee;font-size:.9em;padding:.1em .2em;border-radius:.2em}main.student table.payments .small,.student.notice table.payments .small{font-size:1em}main.student-edit form div label,.student-edit.notice form div label{transform:translateY(0.1em)}main.student-edit form div.radio,.student-edit.notice form div.radio{display:flex;gap:1em;flex-wrap:wrap}main.balance form div label,.balance.notice form div label{margin-right:1em;transform:translateY(0.1em);margin-top:0}main.payment-add .students,.payment-add.notice .students{display:flex;gap:.4em}main.payment-add .students .student,.payment-add.notice .students .student{background:#e5f8fa;padding:.1em .3em .1em .5em;border-radius:1em;display:flex;gap:.3em;align-items:center;font-size:.9em}main.payment-add .students .student .close,.payment-add.notice .students .student .close{background:#c3f0f3;display:flex;justify-content:center;align-items:center;border-radius:1em;border:1px solid #25b1bb;width:.9em;height:.9em}main.payment-add .students .student .close svg,.payment-add.notice .students .student .close svg{width:.7em;height:.7em;fill:#25b1bb}main.payment-add .students .student .close:hover,.payment-add.notice .students .student .close:hover{background:#aaa;cursor:pointer}main.payment-add .students .student .close:hover svg,.payment-add.notice .students .student .close:hover svg{fill:#333}main.payment-add .students .student.template,.payment-add.notice .students .student.template{display:none}main.payment-add form,.payment-add.notice form{margin-top:1em}main.payment-add form .suggestions,.payment-add.notice form .suggestions{margin-bottom:1em}main.payment-add form .short-value,.payment-add.notice form .short-value{display:flex;gap:.6em;align-items:center}main.payment-add form .short-value input,.payment-add.notice form .short-value input{width:8em;color:#000}main.payment-add form .short-value span,.payment-add.notice form .short-value span{font-size:.9em;font-weight:600}main.payment-add form .radio,.payment-add.notice form .radio{display:flex;gap:2em}main.login form .text,.login.notice form .text{display:block;margin-bottom:.7em}main.login form button,.login.notice form button{display:block;margin-top:1.2em}main.calendar .content-box,.calendar.notice .content-box{position:relative}main.calendar .arrows,.calendar.notice .arrows{position:absolute;top:1em;right:1.3em;display:flex;gap:.8em}main.calendar .arrows a,.calendar.notice .arrows a{font-size:1.3em;font-weight:300}main.calendar .calendar,.calendar.notice .calendar{display:grid;grid-template-columns:repeat(7, 1fr);max-width:25em;grid-row-gap:1em}main.calendar .calendar .label,.calendar.notice .calendar .label{text-align:center;display:inline-block;font-weight:bold;color:gray;border-bottom:1px solid #ddd;padding-bottom:.5em;margin-bottom:-0.25em}main.calendar .calendar a,.calendar.notice .calendar a{text-align:center;color:#000;font-weight:normal;display:flex;flex-direction:column;align-items:center;gap:.2em}main.calendar .calendar a:nth-child(7n+1),.calendar.notice .calendar a:nth-child(7n+1),main.calendar .calendar a:nth-child(7n),.calendar.notice .calendar a:nth-child(7n){color:gray}main.calendar .calendar a.today,.calendar.notice .calendar a.today{color:#25b1bb}main.calendar .calendar a .dot,.calendar.notice .calendar a .dot{width:.25em;height:.25em;border-radius:50%}main.calendar .calendar a .dot.routine,.calendar.notice .calendar a .dot.routine{background:#77d}main.calendar .calendar a .dot.saved,.calendar.notice .calendar a .dot.saved{background:#fd0}main.calendar .calendar a .dot.resolved,.calendar.notice .calendar a .dot.resolved{background:#25b1bb}main.calendar .calendar a .dot.alert,.calendar.notice .calendar a .dot.alert{background:#e33}main.calendar table.routine,.calendar.notice table.routine{margin:1em 0 0 0}main.calendar table.routine tr:first-child,.calendar.notice table.routine tr:first-child{border-top:none}main.calendar table.routine td:first-child,.calendar.notice table.routine td:first-child{color:#25b1bb;font-weight:600}main.calendar table.routine a,.calendar.notice table.routine a{display:flex;align-items:center}main.calendar table.routine a svg,.calendar.notice table.routine a svg{width:1em;height:auto}.day .event{border-radius:.5em;margin:1em 0;box-shadow:0px 1px 3px #ddd;position:relative;font-size:.9em;transition:background-color .2s}.day .event.template{display:none}.day .event .top{background:rgba(255,255,255,.85);padding:.3em .6em;border-radius:.5em .5em 0 0;display:flex;font-weight:600}.day .event .top .time{flex-grow:1;font-variant-numeric:tabular-nums}.day .event .top .time input{-webkit-appearance:none;border:none;outline:none;background:none;font-size:1em;font-weight:600;color:#000;margin:0;padding:0}.day .event .top .instructor{color:#888;cursor:pointer}.day .event[data-routine="1"] .top{background:repeating-linear-gradient(35deg, rgba(255, 255, 255, 0.85), rgba(255, 255, 255, 0.85) 15px, rgba(255, 255, 255, 0.78) 15px, rgba(255, 255, 255, 0.78) 30px)}.day .event .students{padding:.3em .6em;background:rgba(255,255,255,.95)}.day .event .students.shake .name{animation:shake .5s;animation-iteration-count:infinite}.day .event .students.shake .name:nth-child(1){animation-duration:1.0068942219s}.day .event .students.shake .name:nth-child(2){animation-duration:1.0491050658s}.day .event .students.shake .name:nth-child(3){animation-duration:.8751080908s}.day .event .students.shake .name:nth-child(4){animation-duration:1.3844165719s}.day .event .students.shake .name:nth-child(5){animation-duration:1.3387373239s}.day .event .students.shake .name:nth-child(6){animation-duration:.8218168138s}.day .event .students.shake .name:nth-child(7){animation-duration:1.1835636734s}.day .event .students.shake .name:nth-child(8){animation-duration:.939450978s}.day .event .students.shake .name:nth-child(9){animation-duration:1.0271082241s}.day .event .students.shake .name:nth-child(10){animation-duration:1.3612344541s}.day .event .students .student{display:flex;padding:.15em 0;border-bottom:1px solid rgba(0,0,0,.1)}.day .event .students .student .name{flex-grow:1}.day .event .students .student .status{background:gray;display:inline-block;width:.9em;text-align:center;font-weight:600;border-radius:.3em;font-size:.9em;padding:0 .3em;color:#fff;cursor:pointer;transition:background-color .2s}.day .event .students .student .status[data-status="0"]{background:#55d}.day .event .students .student .status[data-status="1"]{background:#6b6}.day .event .students .student .status[data-status="2"]{background:#b22}.day .event .students .student:last-child{border-bottom:none}.day .event .input{background:rgba(255,255,255,.95);padding:0em .6em .6em .6em;overflow:hidden;height:24px;transition:height .2s,padding .2s}.day .event .input.closed{height:0;padding:0 1em 0 1em}.day .event .input.closed input{opacity:0}.day .event .input input{-webkit-appearance:none;border:none;outline:none;background:#fff;box-shadow:0px .5px 2px #eee;border:1px solid #eee;font-size:.9em;border-radius:1em;background-image:url("/img/search.svg");background-repeat:no-repeat;background-position:left .5em top 50%;background-size:.9em .9em;padding:.2em .2em .2em 1.8em;width:calc(100% - 2em);transition:opacity .2s}.day .event .suggestions{margin:0 .6em}.day .event .bottom{padding:.2em .6em;border-radius:0 0 .5em .5em;background:rgba(255,255,255,.92);font-weight:500;font-style:italic;color:#555;display:flex;align-items:center}.day .event .bottom .max{cursor:pointer}.day .event .bottom .spacer{flex-grow:1}.day .event .bottom .actions{display:flex;align-items:center;gap:.5em}.day .event .bottom .actions a{display:flex;align-items:center;color:#000}.day .event .bottom .actions a svg{color:inherit;width:1em;height:auto}.day .event .bottom .actions .label-r,.day .event .bottom .actions .label-s{display:inline-block;padding:.1em .3em;background:#b22;color:#fff;font-size:.8em;border-radius:.4em;transition:opacity .2s;font-style:normal}.day .event .bottom .actions .label-r.hidden,.day .event .bottom .actions .label-s.hidden{opacity:0}.day .event .bottom .actions .label-r{cursor:pointer}.day>.actions{text-align:center;margin-top:2em}.day>.actions .save{display:inline-block;width:6em}.day>.actions .warning{display:block;color:#b22;margin-top:1.8em;margin-bottom:1.8em}
