@import"https://fonts.googleapis.com/css2?family=Zalando+Sans:ital,wdth,wght@0,100,200..900;0,125,200..900;1,100,200..900;1,125,200..900&display=swap";*,*:before,*:after{box-sizing:border-box}:root{--white: #fff;--white-semi-opaque: rgba(255, 255, 255, .9);--glass-background: rgba(255, 255, 255, .1);--glass-border: hsla(0, 0%, 100%, .4);--drop-shadow: #210a431a;--light-grey: #CCCCCC;--grey: #868684;--black: #000000;--black-opaque: #00000087;--accent1: #6dff60;--accent1-opaque: rgba(109, 255, 96, .5);--accent1-shadow: rgba(46, 148, 56, .25);--accent2: #8A38F5;--link-hover: var(--accent2);--input-text: #8A38F5;--warning: #f44236;--gap-small: .5rem;--gap-md: 1rem;--gap-lg: 3rem;--border-radius-inside: 10px;--border-radius-outside: 18px;--max-width: 450px;--background-color: #97bbeb;--footer-background-color: var(--glass-background);--dialog-background-color: var(--background-color);--dialog-backdrop-color: var(--black-opaque)}body{margin:0;background:var(--background-color);background-image:url(/bg/bg.jpg);background-size:cover;background-position:center;background-repeat:no-repeat}body.theme-admin{background-image:url(/bg/admin-bg.jpg)}body.theme-faculty{background-image:url(/bg/faculty-bg.jpg)}#root{margin:0;width:100%;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;justify-content:space-between;color:var(--black)}main{flex:1;display:flex;flex-direction:column;justify-content:start;align-items:center;text-align:center;overflow-x:clip;overflow-y:visible;overflow-wrap:break-word;padding:var(--gap-small);text-wrap:balance;margin:clamp(8px,2vw,20px);margin-bottom:clamp(24px,5vw,60px)}article{width:100%;max-width:1450px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:var(--gap-lg)}section{width:100%;max-width:calc(var(--max-width) + (var(--gap-small) * 2))}.wide{max-width:none}.flow-lg>*+*{margin-top:var(--gap-lg)}.flow>*+*{margin-top:var(--gap-md)}:focus-visible{outline:2px solid color-mix(in oklab,var(--accent1) 70%,white);outline-offset:3px}.icon{fill:var(--black);transition:fill .2s ease;cursor:pointer}.icon:hover{fill:var(--accent2)}li>button.nav{background-color:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;border:none;box-shadow:none;text-align:center;font-family:Zalando Sans,sans-serif;font-size:1rem;font-weight:400;padding:5px;min-width:0}li>button.nav:hover,li>button.nav:focus{color:var(--link-hover)}li>button.nav:disabled{color:var(--grey)}hr{width:100%;height:0}.card-box{display:flex;gap:var(--gap-md);flex-wrap:wrap;align-items:flex-start;justify-content:center}div#success{width:100%;background-color:var(--accent1-opaque);padding:var(--gap-small);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);border:1px solid var(--accent1);box-shadow:0 4px 6px var(--drop-shadow);text-align:center;font-family:Zalando Sans,sans-serif;font-size:1.125rem;font-weight:800;color:var(--black);position:fixed;bottom:0;left:0;z-index:3}div#success.hidden{display:none}fieldset{border:2px solid var(--glass-border);padding:var(--gap-small);border-radius:var(--border-radius-outside)}fieldset>legend{color:var(--white);font-family:Zalando Sans,sans-serif;font-weight:700}:root{--font-sans: "Zalando Sans", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;--text-xs: clamp(.78rem, .75rem + .15vw, .875rem);--text-sm: clamp(.88rem, .84rem + .18vw, 1rem);--text-md: clamp(1rem, .96rem + .22vw, 1.125rem);--text-lg: clamp(1.125rem, 1.06rem + .35vw, 1.35rem);--h4: clamp(1rem, .96rem + .25vw, 1.125rem);--h3: clamp(1.25rem, 1.12rem + .6vw, 1.6rem);--h2: clamp(1.5rem, 1.28rem + 1vw, 2.1rem);--h1: clamp(2.05rem, 1.55rem + 2.2vw, 3.1rem);--lh-tight: 1.1;--lh-snug: 1.25;--lh-body: 1.55;--track-tight: -.015em;--track-normal: 0em}html{text-size-adjust:100%}body{font-family:var(--font-sans);font-weight:400;font-size:var(--text-sm);line-height:var(--lh-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}p{margin:0;line-height:var(--lh-body)}a{cursor:pointer;font-weight:700;text-decoration-thickness:.08em;text-underline-offset:.18em;text-decoration:underline;text-decoration-color:color-mix(in oklab,var(--link-hover) 50%,transparent);text-decoration-thickness:.12em;text-underline-offset:.2em}a:hover,a:focus{color:var(--link-hover);text-decoration-color:var(--link-hover)}a.highlight{text-decoration:underline}h1,h2,h3,h4,h5,h6{font-family:var(--font-sans);margin:0;text-wrap:balance}h1{font-weight:750;font-size:var(--h1);line-height:var(--lh-tight);letter-spacing:var(--track-tight);font-variation-settings:"wdth" 125}.title-emphasis{text-transform:uppercase;font-weight:900}h2{font-weight:700;font-size:var(--h2);line-height:var(--lh-snug);letter-spacing:var(--track-tight);font-variation-settings:"wdth" 125}h3{font-weight:650;font-size:var(--h3);line-height:var(--lh-snug);letter-spacing:var(--track-tight)}h4{font-weight:600;font-size:var(--h4);line-height:var(--lh-snug);letter-spacing:var(--track-normal)}.kicker{font-size:var(--text-sm);font-weight:600;letter-spacing:.06em;text-transform:uppercase;opacity:.85;font-variation-settings:"wdth" 125}.disclaimer{font-size:var(--text-sm);font-style:italic;line-height:var(--lh-body);opacity:.9}.error-message{color:var(--warning);font-size:var(--text-sm);font-weight:600;font-style:italic;line-height:var(--lh-body)}.text-to-copy{cursor:pointer;text-decoration:underline;text-decoration-color:color-mix(in oklab,var(--accent1) 50%,transparent);text-decoration-thickness:.12em;text-underline-offset:.2em}.text-to-copy:hover{text-decoration-color:var(--accent1);font-weight:500}.limit-width{max-width:60ch}button{box-sizing:border-box;background-color:var(--glass-background);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);border:1px solid var(--glass-border);box-shadow:0 4px 6px var(--drop-shadow);text-align:center;display:flex;justify-content:center;align-items:center;gap:5px;font-family:Zalando Sans,sans-serif;font-size:1.125rem;line-height:1.2;font-weight:600;cursor:pointer;color:var(--black);border-radius:var(--border-radius-inside);padding:12px;width:min(100%,450px);max-width:100%}button.small{width:max-content}button.back-button{flex:2;text-wrap:nowrap;font-size:.85rem}button:hover,button:focus{background-color:var(--accent1-opaque);border:1px solid var(--accent1);box-shadow:0 4px 6px var(--accent1-shadow)}button.button-selected{background-color:var(--accent1-opaque);box-shadow:0 4px 6px var(--accent1-shadow)}button:disabled{opacity:.25;cursor:not-allowed}.button-group{display:flex;flex-direction:column;justify-content:stretch;align-items:center;width:100%;max-width:calc(var(--max-width) + (var(--gap-small) * 2));gap:var(--gap-small)}.appointment-buttons{width:100%}@media(max-width:768px){button{font-size:1rem;padding:10px}}input{width:100%;height:45px;background-color:var(--white-semi-opaque);border:1px solid var(--light-grey);border-radius:10px;color:var(--input-text);font-family:Zalando Sans,sans-serif;font-size:1rem;font-weight:600;padding:10px;text-align:center}input::placeholder{color:var(--grey);font-family:Zalando Sans,sans-serif;font-size:1rem;font-weight:400}input:hover{outline:2px solid color-mix(in oklab,var(--accent2) 70%,white);outline-offset:3px}input[type=checkbox],input[type=radio]{width:20px;height:20px;margin-block:5px;accent-color:var(--accent1);outline:1px solid var(--accent1-opaque)}input[type=date]{color-scheme:light}input.invalid{border:1px solid var(--warning)}input.invalid:focus,input.invalid:active{outline-color:var(--warning)}div.input-group-wrapper{display:flex;align-items:center;gap:10px;text-align:start}div.input-group-wrapper.column{flex-direction:column;gap:0}.input-group-wrapper input[type=checkbox]{flex-shrink:0}form{box-sizing:border-box;display:flex;flex-direction:column;gap:var(--gap-md);justify-content:center;text-align:center;width:min(100%,450px);max-width:100%}form>button[type=submit]{margin-block-start:var(--gap-small)}textarea{display:block;width:100%;min-height:clamp(120px,18vh,220px);background-color:var(--white-semi-opaque);border:1px solid var(--light-grey);border-radius:10px;color:var(--input-text);font-family:Zalando Sans,sans-serif;font-size:1rem;font-weight:600;padding:10px;text-align:start}textarea::placeholder{color:var(--grey);font-family:Zalando Sans,sans-serif;font-size:1rem;font-weight:400;text-align:start}textarea:hover,textarea:focus{border:1px solid var(--accent1)}select{box-sizing:border-box;width:100%;height:45px;background-color:var(--white-semi-opaque);border:1px solid var(--light-grey);border-radius:10px;color:var(--input-text);font-family:Zalando Sans,sans-serif;font-size:1rem;font-weight:600;padding:10px;text-align:center}@media(max-width:768px){form{gap:var(--gap-small)}}.card{display:flex;flex-direction:column;gap:var(--gap-small);justify-content:center;text-align:start;width:min(100%,305px);padding:var(--gap-small);background-color:var(--glass-background);border:1px solid var(--glass-border);border-radius:var(--border-radius-outside);box-shadow:0 4px 6px var(--drop-shadow);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.card>:not(hr){padding:clamp(8px,1.4vw,10px)}.card>.hover{border:1px solid transparent}.card>.hover:hover{box-shadow:0 4px 6px var(--drop-shadow);border-radius:var(--border-radius-inside);border:1px solid var(--glass-border);cursor:pointer}.card.edit-appointment{width:100%}.card-content-group{display:flex;flex-direction:column;align-items:start;text-align:start;gap:var(--gap-md);position:relative}.card-icon-text{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.dropdown-icon{position:absolute;top:10px;right:10px}.card-button-group{display:flex;gap:var(--gap-md);justify-content:stretch}.card-button-group.column{flex-direction:column}.card.deleted{opacity:.4}article.edit-appointment{width:100%;max-width:450px;display:flex;justify-content:center}@media(max-width:480px){.card{width:100%}.card-button-group{flex-direction:column}}dialog,dialog:open,dialog[open]{box-sizing:border-box;border:1px solid var(--glass-border);border-radius:var(--border-radius-outside);background-color:var(--dialog-background-color);background-color:color-mix(in oklab,var(--dialog-background-color) 92%,white);color:var(--black);box-shadow:0 20px 50px #00000047;width:min(92vw,500px);max-width:min(92vw,500px);padding:0;margin:auto;display:flex;flex-direction:column;overflow:auto;overscroll-behavior:contain}dialog:not([open]){display:none}dialog:open,dialog[open]{max-height:calc(100vh - 24px)}@supports (height: 1dvh){dialog:open,dialog[open]{max-height:calc(100dvh - 24px)}}dialog::backdrop{background:var(--dialog-backdrop-color);background:color-mix(in oklab,var(--dialog-backdrop-color) 88%,black);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}dialog>.dialog-close-button-wrapper{position:sticky;top:0;z-index:2;display:flex;justify-content:flex-end;align-items:center;padding:10px 14px;border-bottom:1px solid var(--glass-border);border-bottom:1px solid color-mix(in oklab,var(--glass-border) 75%,white);background:var(--dialog-background-color);background:color-mix(in oklab,var(--dialog-background-color) 95%,white)}dialog>:not(.dialog-close-button-wrapper):not(form){padding-inline:14px}dialog>:not(.dialog-close-button-wrapper):not(form):last-child{padding-bottom:14px}dialog button.dialog-close-button{width:max-content;max-width:max-content;min-width:0;font-size:.875rem;padding:8px 10px}dialog>form,dialog .dialog-close-button-wrapper+form{box-sizing:border-box;width:100%;max-width:none;padding:14px;overflow:auto;text-align:left;align-items:stretch;justify-content:flex-start;gap:14px}@supports (height: 1dvh){dialog>form,dialog .dialog-close-button-wrapper+form{max-height:calc(100dvh - 110px)}}@supports not (height: 1dvh){dialog>form,dialog .dialog-close-button-wrapper+form{max-height:calc(100vh - 110px)}}dialog h2,dialog h3,dialog h4{margin:0;line-height:1.2}dialog p{line-height:1.4}dialog form>h2,dialog form>h3,dialog form>h4{padding-bottom:8px;border-bottom:1px solid color-mix(in oklab,var(--glass-border) 70%,white)}dialog .input-group-wrapper{align-items:flex-start}dialog label{font-weight:700}dialog input,dialog textarea,dialog select{text-align:left}dialog textarea{min-height:120px}dialog form>button[type=submit]{width:100%;max-width:none}dialog .dialog-content{box-sizing:border-box;width:100%;max-width:none;padding:14px;text-align:left;display:flex;flex-direction:column;gap:14px}dialog .dialog-actions{display:flex;flex-wrap:wrap;gap:10px;width:100%}dialog .dialog-actions>button{flex:1 1 180px;max-width:none}@media(max-width:768px){dialog,dialog:open,dialog[open]{width:calc(100vw - 16px);max-width:calc(100vw - 16px);border-radius:14px}dialog>.dialog-close-button-wrapper{padding:8px 10px}dialog>:not(.dialog-close-button-wrapper):not(form){padding-inline:10px}dialog>:not(.dialog-close-button-wrapper):not(form):last-child{padding-bottom:10px}dialog>form,dialog .dialog-close-button-wrapper+form{padding:10px;gap:10px}dialog .dialog-content{padding:10px;gap:10px}dialog .dialog-actions{gap:8px}dialog .dialog-actions>button{flex:1 1 100%}}header{background-color:var(--glass-background);border:1px solid var(--glass-border);border-radius:15px;box-shadow:0 4px 12px var(--drop-shadow);padding:clamp(10px,1.8vw,16px);margin:clamp(10px,2.5vw,20px);min-height:clamp(72px,9vw,96px);display:flex;justify-content:space-between;align-items:center;gap:clamp(12px,3vw,30px);position:sticky;top:clamp(10px,2vw,20px);z-index:3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){header{background-color:color-mix(in oklab,var(--glass-background) 70%,white)}}header *{cursor:default}header>.logo-container{padding:clamp(6px,1.2vw,10px);border:1px solid transparent;border-radius:var(--border-radius-inside);display:flex;flex-direction:column;text-align:start;font-family:Zalando Sans Expanded,sans-serif;font-weight:800;font-size:clamp(1rem,1.1vw + .6rem,1.2rem);line-height:1.1;cursor:pointer}header>.logo-container:hover{border-color:var(--glass-border);box-shadow:0 4px 10px var(--drop-shadow)}header a:focus-visible,header button:focus-visible,header [role=button]:focus-visible,header .logo-container:focus-visible{outline:3px solid color-mix(in oklab,var(--accent2) 70%,white);outline-offset:4px}header>div{display:flex;align-items:center;gap:clamp(14px,3vw,40px)}header nav{display:flex;align-items:center;gap:clamp(16px,3.5vw,40px);white-space:nowrap;border:0}header nav ul{display:flex;align-items:center;gap:clamp(14px,3.5vw,40px);list-style:none;padding:0;margin:0;font-family:Zalando Sans,sans-serif;font-size:clamp(.95rem,.35vw + .85rem,1rem);font-weight:500}header nav a,header nav button{cursor:pointer}header span.user-type{font-family:Zalando Sans Expanded,sans-serif;font-variation-settings:"wdth" 125;font-weight:800;font-size:clamp(.85rem,.3vw + .8rem,1rem);text-transform:uppercase;letter-spacing:.04em}img.header-logo{height:clamp(44px,5.5vw,58px);width:auto}#hamburger{display:none;min-width:0;cursor:pointer}@media(max-width:768px){#hamburger{display:inline-flex;align-items:center;justify-content:center}header>div{flex-direction:column-reverse;align-items:flex-end;gap:12px}header nav{position:absolute;top:calc(100% + 10px);right:0;max-height:0;overflow:clip;transition:max-height .2s ease;flex-direction:column;align-items:stretch;gap:12px;width:min(92vw,450px);padding:0;border-radius:15px;background-color:color-mix(in oklab,var(--background-color) 82%,white);border:1px solid var(--glass-border);box-shadow:0 10px 22px #0000002e;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0}header nav ul{flex-direction:column;align-items:stretch;gap:12px}header nav.open{max-height:60vh;padding:16px;opacity:1}}@media(prefers-reduced-motion:reduce){header nav{transition:none}}footer{background:var(--glass-background);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);border:1px solid var(--glass-border);min-height:clamp(160px,18vh,200px);display:flex;flex-direction:column;justify-content:space-between;align-items:center;gap:var(--gap-small);padding:clamp(10px,1.5vw,16px)}footer>.information{width:100%;display:flex;justify-content:space-evenly;text-align:start;gap:var(--gap-small)}footer>.logo-container{display:flex;width:100%;justify-content:space-between;color:var(--white);font-family:Zalando Sans Expanded,sans-serif;font-weight:800;font-size:clamp(1rem,.5vw + .9rem,1.3rem)}@media(max-width:768px){footer>.information{flex-direction:column;align-items:center;text-align:center}footer>.logo-container{flex-direction:column;align-items:center;text-align:center}}.loader-wrap{min-height:160px;display:grid;place-items:center}.loader-orbit{width:72px;height:72px;position:relative;display:grid;place-items:center;border-radius:50%;isolation:isolate}.loader-orbit:before{content:"";position:absolute;inset:18px;border-radius:50%;background:radial-gradient(circle at 30% 30%,rgba(255,255,255,.75),var(--background-color) 58%),radial-gradient(circle at 70% 70%,color-mix(in oklab,var(--accent1) 35%,transparent),color-mix(in oklab,var(--accent2) 25%,transparent));box-shadow:inset 0 0 0 1px #ffffff59,0 10px 18px #0003;z-index:1}.loader-orbit:after{content:"";position:absolute;inset:1px;border-radius:50%;border:2px solid rgba(255,255,255,.55);opacity:.95;z-index:0}.loader-orbit>span{position:absolute;top:50%;left:50%;border-radius:999px;box-shadow:0 0 0 2px #0000002e,0 6px 12px #0000002e,0 0 14px #ffffff59;--r: 40px}.loader-orbit>span:nth-child(1){width:10px;height:10px;background:var(--accent1);animation:orbit-spin 1s linear infinite}.loader-orbit>span:nth-child(2){width:8px;height:8px;background:var(--accent2);animation:orbit-spin 1.15s linear infinite reverse;opacity:.98}.loader-orbit>span:nth-child(3){width:6px;height:6px;background:#ffffffeb;animation:orbit-spin 1.35s linear infinite;opacity:.95}@keyframes orbit-spin{0%{transform:translate(-50%,-50%) rotate(0) translate(var(--r))}to{transform:translate(-50%,-50%) rotate(360deg) translate(var(--r))}}@media(prefers-reduced-motion:reduce){.loader-orbit,.loader-orbit>span{animation:none!important}}.demo-login-account-list{display:flex;flex-direction:column;align-items:center}.demo-login-account-list>button{margin-inline:auto}
