:root{--bg-darker: oklch(.89 0 255);--bg-dark: oklch(.9 0 255);--bg: oklch(.93 0 255);--bg-light: oklch(.97 0 255);--bg-lighter: oklch(1 0 255);--text: oklch(.15 .04 202);--text-muted: oklch(.6 0 202);--text-on-primary: oklch(.95 0 202);--highlight: oklch(.8 .06 202);--border: oklch(.6 .04 202);--border-muted: oklch(.7 .04 202);--primary: oklch(.36 .04 202);--secondary: oklch(.73 .13 57);--danger: oklch(.5 .05 30);--warning: oklch(.5 .05 100);--success: oklch(.5 .05 160);--info: oklch(.5 .05 260)}[data-theme=dark]{--bg-darker: oklch(0 0 202);--bg-dark: oklch(.15 0 202);--bg: oklch(.2 0 202);--bg-light: oklch(.25 0 202);--bg-lighter: oklch(.3 0 202);--text: oklch(.96 0 202);--text-muted: oklch(.75 0 202);--text-on-primary: oklch(.95 0 202);--highlight: oklch(.7 .06 202);--border: oklch(.4 .04 202);--border-muted: oklch(.3 .04 202);--primary: oklch(.3566 .0434 202.27);--secondary: oklch(.7325 .1345 57.53);--danger: oklch(.7 .05 30);--warning: oklch(.7 .05 100);--success: oklch(.7 .05 160);--info: oklch(.7 .05 260)}*{margin:0;padding:0;box-sizing:border-box}body{background-color:var(--bg);color:var(--text);font-family:Montserrat,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,sans-serif;font-optical-sizing:auto;font-weight:400;font-style:normal}body.mobile-menu-open{overscroll-behavior-y:none;overflow:hidden;position:fixed;width:100%;height:100%}ul{list-style:none;margin:4px}ul li ul li:first-of-type{margin-top:0rem}ul li h2{font-size:1.2rem;color:var(--text-muted);font-weight:300;gap:.5rem;margin-top:.5rem;margin-left:.25rem}ul li a h2{color:var(--text);margin-bottom:.5rem}ul li:last-of-type{margin-bottom:.75rem}ul li ul li a{padding:.25rem .25rem .25rem 1rem;margin:0rem .5rem}ul li a.active{margin-left:-1px}ul li ul li a.active{margin-left:.5rem}.nav-bar-links a{color:var(--text);text-decoration:none;display:flex;align-items:center;gap:.25rem}a{color:var(--link-color)}.nav-bar-links a.active{font-weight:700;color:var(--text);background:var(--bg-lighter);border-radius:16px;border:1px solid var(--border);margin-top:-1px;margin-bottom:-1px}.has-icon{display:flex;flex-direction:row;align-items:center;gap:.25rem}.has-icon svg{flex-shrink:0;margin-top:.125rem}@media(max-width:800px){ul li h2{font-size:1.5rem;margin-top:.5rem;margin-left:1.5rem;margin-bottom:.5rem}ul li:last-of-type{margin-bottom:2rem}.has-icon{gap:1.5rem}ul li ul li a{font-size:1.25rem;padding:.75rem .75rem .75rem 3.6rem;margin:0rem .5rem}.nav-bar-links a.active{border-radius:32px}}.app-container{display:grid;grid-template-columns:15rem 1fr;grid-template-rows:1fr;grid-template-areas:"nav-bar main-content";height:100vh}.breadcrumb{font-size:.875rem;overflow:hidden}.breadcrumb-list{list-style:none;padding:0;margin:0;display:flex;align-items:center;color:var(--text-muted);text-wrap:nowrap;white-space:nowrap;overflow:hidden}.breadcrumb-separator{margin-left:.5rem;margin-right:.5rem;color:var(--text-muted)}.breadcrumb-link{color:var(--text);text-decoration:underline}.breadcrumb-link:hover{text-decoration:underline}.breadcrumb-current{color:var(--text);font-weight:600}.hamburger-menu{display:none;align-items:center}.hamburger-button{background:none;border:none;color:var(--text);cursor:pointer;padding:0;width:24px;height:24px;flex-shrink:0}.hamburger-button:hover{color:var(--highlight)}.nav-bar{width:100%;box-shadow:var(--border) 0 0 4px 0;z-index:1;min-height:100vh;display:flex;flex-direction:column;position:sticky;top:0}.nav-bar-header{background-color:var(--bg-dark);display:flex;justify-content:center;align-items:center;height:min-content}.nav-bar-links{background-color:var(--bg-dark);display:flex;flex-direction:column;height:100%;width:100%;gap:.5rem;overflow:auto;scrollbar-width:none}.nav-bar-user{background-color:var(--bg-dark);padding:1rem;margin-top:auto;height:auto}.breadcrumb{font-size:.9rem;color:var(--text);display:flex;align-items:center;gap:1rem;padding-left:1rem;background-color:var(--bg);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;height:3rem;min-height:3rem}.breadcrumb nav{flex:1}.breadcrumb-user{margin-left:auto;display:flex;flex-direction:row;width:auto;gap:1rem;align-items:center}.main-content{background-color:var(--bg);grid-area:main-content;display:flex;flex-direction:column;gap:1rem;flex-wrap:nowrap;padding:0 1rem 1rem;max-width:100%;overflow-x:hidden;overflow-y:visible}@media(max-width:800px){.app-container{grid-template-columns:1fr;grid-template-rows:1fr;grid-template-areas:"main-content";width:100vw}.nav-bar-user,.nav-bar-header{display:none}.nav-bar{display:block;left:-100%;top:3rem;position:fixed;transition:left .3s ease-in-out}.nav-bar.open{display:block;left:0;height:calc(100% - 3rem);overflow-y:auto;z-index:1000}.nav-bar-links{border-right:none;border-bottom:1px solid var(--border);border-top:1px solid var(--border);gap:0;overflow-y:auto}.main-content{padding:1rem;padding-top:0;width:100vw;overflow-y:visible}.breadcrumb{padding-left:0;width:100vw;height:3rem}.hamburger-menu{display:flex;flex:0;width:3rem}.breadcrumb-header{flex:1;max-width:calc(100% - 9rem);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.breadcrumb-list,.breadcrumb-current{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.breadcrumb-user{flex:0;width:6rem}}.card-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:1rem;justify-content:center}.card{background-color:var(--bg-dark);border:1px solid var(--border);border-radius:8px;padding:1rem;box-shadow:0 2px 4px #0000001a;display:flex;flex-direction:column;gap:.5rem}button{background:var(--bg-light);border:1px solid var(--border-muted);color:var(--text);font-size:1rem;border-radius:4px;cursor:pointer;height:2.5rem;flex-shrink:0;min-width:12rem;width:fit-content;padding:0 1rem}button.action{background:var(--primary);color:var(--text-on-primary);position:relative}button.action:hover:not(:disabled):not(.success){background:var(--highlight);color:var(--text-on-primary)}button.action.submitting{cursor:pointer}button.action.submitting:after{content:"...";color:var(--text-muted);position:absolute;right:1rem;top:2px;height:100%;font-size:1.5rem}button.action.success:after{content:"✓";color:var(--highlight);position:absolute;right:1rem;top:2px;height:100%;font-size:1.5rem}button.action.fail:after{content:"✗";color:var(--danger);position:absolute;right:1rem;top:2px;height:100%;font-size:1.5rem}button.danger{background:var(--danger);color:var(--text);border:none}button.muted{background:var(--bg);color:var(--text-muted)}@media(max-width:800px){button:not(.button-group *,.dropdown-menu-button){width:100%}}button:disabled{background:var(--bg-dark);color:var(--text-muted);cursor:not-allowed}button:hover:not(:disabled):not(.success){background:var(--bg)}.primary{color:var(--text)}.primary-subtle{color:var(--text-muted)}.button-group{display:flex;flex-direction:row;overflow:auto;border-bottom:1px solid var(--border);padding-bottom:.5rem;overflow-x:scroll;overflow-y:hidden;max-width:100%;scrollbar-width:none;-ms-overflow-style:none}.button-group::-webkit-scrollbar{display:none}.button-group-scroll-button{background:linear-gradient(to right,var(--bg),transparent);border-color:var(--border);border-radius:0;cursor:pointer;font-size:1.5rem;color:var(--text-primary);transition:opacity .2s}.button-group-scroll-button-background-left,.button-group-scroll-button-background-right{position:absolute;top:0;bottom:.5rem;width:3rem;background:linear-gradient(to right,var(--bg) 75%,transparent);border-radius:0;cursor:pointer;z-index:9;font-size:1.5rem;color:var(--text)}.button-group-scroll-button-background-right{right:0;background:linear-gradient(to left,var(--bg) 75%,transparent)}.button-group-scroll-left{left:0;background:linear-gradient(to right,var(--bg) 75%,transparent);border-right:none;border-top-left-radius:4px;border-bottom-left-radius:4px;min-width:unset;width:3rem}.button-group-scroll-right{right:0;background:linear-gradient(to left,var(--bg) 75%,transparent);border-top-right-radius:4px;border-bottom-right-radius:4px;border-left:none;min-width:unset;width:3rem}.button-group button{border:1px solid var(--border);background-color:var(--bg-dark);border-radius:0;min-width:10rem;word-break:keep-all}.button-group button:not(:first-child){border-left:none}.button-group button.active{background-color:var(--bg-light);border-color:var(--border);font-weight:600}.button-group button:last-child{border-top-right-radius:4px;border-bottom-right-radius:4px}.button-group button:first-child{border-top-left-radius:4px;border-bottom-left-radius:4px}.tab-button{padding:.5rem 1rem;border:none;background:transparent;color:var(--text);cursor:pointer;border-bottom:2px solid transparent}.tab-button:hover{color:var(--text);border-bottom-color:var(--border)}.tab-button.active{color:var(--text);border-bottom-color:var(--border);font-weight:600}.tab-content{margin-top:1rem;display:flex;flex-direction:column;gap:1rem}form{display:grid;gap:1rem;width:100%;grid-template-columns:1fr 1fr}form.single-column{grid-template-columns:1fr}@media(max-width:800px){form{grid-template-columns:1fr}}.form-group{margin-bottom:1rem;display:flex;flex-direction:column;gap:.25rem}.form-label{font-size:1rem;margin-bottom:.25rem;color:var(--text)}.form-input,.form-textarea,.form-select{width:100%;border:1px solid var(--border);padding:.5rem;border-radius:.25rem;background-color:var(--bg-light);color:var(--text);font-size:.875rem}.form-textarea{height:15rem}.form-input:focus,.form-textarea:focus,.form-select:focus{outline:none;border-color:var(--border);box-shadow:0 0 0 2px #1d43461a}.form-input:disabled,.form-select:disabled{background-color:var(--bg-light);cursor:not-allowed;opacity:.6}.form-textarea{resize:vertical;min-height:4rem}.phone-preview-wrapper{display:flex;flex-direction:column;gap:1rem}@media(max-width:800px){.phone-preview-wrapper{margin-left:-1rem;margin-right:-1rem;width:calc(100% + 2rem);align-items:center}}@media(max-width:400px){.phone-preview-wrapper{transform:scale(.75)}}@media(max-width:300px){.phone-preview-wrapper{transform:scale(.5)}}.phone-preview{min-width:375px;max-width:375px;min-height:667px;max-height:667px;border-radius:32px;border:4px solid black;color:#000;background-color:#faf9f4;overflow:hidden}.phone-content{display:flex;flex-direction:column;gap:1rem;padding-top:1rem;padding-bottom:4rem;overflow-y:auto;overflow-x:hidden;height:100%;scrollbar-width:none;-ms-overflow-style:none}.phone-content::-webkit-scrollbar{display:none}.dropdown-menu-button{width:auto;padding:.25rem .5rem;font-size:1.25rem;min-width:2rem;height:auto}.dropdown-menu-content{background-color:var(--bg-light);border:1px solid var(--border);border-radius:4px;box-shadow:0 2px 8px #00000026;z-index:1000;min-width:10rem;overflow:hidden}.dropdown-menu-item{width:100%;padding:.5rem 1rem;text-align:left;border:none;border-radius:0;background-color:transparent;color:var(--text);cursor:pointer;font-size:.875rem;display:block}.dropdown-menu-item:not(:first-child){border-top:1px solid var(--border-muted)}table{width:100%;border-collapse:separate;border-spacing:0;border:1px solid var(--border);border-radius:8px}th,td,tr,thead{padding:.75rem;text-align:left}th{background-color:var(--bg);border-bottom:1px solid var(--border)}tr:nth-child(odd){background-color:var(--bg-light)}tr:nth-child(2n){background-color:var(--bg-lighter)}thead tr:first-child th:first-child{border-top-left-radius:7px}thead tr:first-child th:last-child{border-top-right-radius:7px}tbody tr:last-child td:first-child{border-bottom-left-radius:7px}tbody tr:last-child td:last-child{border-bottom-right-radius:7px}table:not(:has(thead)) tbody tr:first-child td:first-child{border-top-left-radius:7px}table:not(:has(thead)) tbody tr:first-child td:last-child{border-top-right-radius:7px}td{max-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}td>span{display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:800px)and (orientation:portrait){th,thead{display:none}table,tbody,td,tr{display:grid;grid-template-columns:1fr;grid-template-rows:auto auto;border:none}tr{margin-bottom:1rem;border:1px solid var(--border);border-radius:8px;padding:.5rem}td{display:grid;grid-template-columns:1fr;grid-template-rows:auto auto;align-items:start;padding:.4rem 1rem;max-width:none}td>*{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;min-width:0}td:before{content:attr(data-cell);font-weight:700;white-space:normal;padding-bottom:.25rem;word-wrap:break-word;overflow-wrap:break-word;hyphens:auto}tr:nth-child(2n){background-color:var(--bg-light)}}.fullscreen-form{display:grid;justify-items:center;height:100vh;grid-template-rows:auto 1fr}.image-gallery-container{position:relative;width:100%;display:grid;grid-template-columns:auto 1fr auto}.image-gallery{display:flex;flex-direction:row;gap:.5rem;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;margin-left:-27px;padding-left:27px;margin-right:-27px;padding-right:27px}.image-thumbnail-button{width:100px!important;min-width:unset;height:100px;object-fit:cover;border:2px solid var(--border);border-radius:8px;overflow:hidden;cursor:pointer;padding:0}.image-thumbnail-button.active{border:2px solid var(--highlight)}.image-thumbnail{width:96px;height:96px;object-fit:cover;cursor:pointer}.image-gallery-scroll-button-background-left,.image-gallery-scroll-button-background-right{position:relative;width:27px;height:102px;display:flex;z-index:10;pointer-events:none}.image-gallery-scroll-button-background-left{background:linear-gradient(to right,var(--bg) 0%,var(--bg) 75%,transparent)}.image-gallery-scroll-button-background-right{background:linear-gradient(to left,var(--bg) 0%,var(--bg) 75%,transparent)}.image-gallery-scroll-button{width:100%;min-width:unset;padding:0;height:100%;border:none;background:transparent;color:var(--text);font-size:2rem;cursor:pointer;pointer-events:auto;display:flex;align-items:center;transition:color .2s}.image-gallery-scroll-button:hover{color:var(--highlight)}.image-gallery-scroll-left{justify-content:flex-start}.image-gallery-scroll-right{justify-content:flex-end}fieldset{border-radius:8px;padding:1rem;display:flex;flex-direction:column;gap:1rem}.paginator{display:flex;flex-direction:row;justify-content:flex-end;align-items:baseline;gap:.5rem}.paginator button{width:2rem}.paginator button.active{background-color:var(--bg-light);border-color:var(--border);font-weight:600}.input-group{display:flex;flex-direction:row;align-items:baseline;border:1px solid var(--border);border-radius:4px;overflow:hidden;background-color:var(--bg-light);max-width:25rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.input-group-unset-width{max-width:unset}.input-group[data-focused=true]{border-color:var(--primary);box-shadow:0 0 0 .2rem var(--highlight)}.input-group.editable-cell{border-color:var(--highlight);box-shadow:none;border-radius:unset}.input-group-icon{padding:0 .5rem;color:var(--text-muted);flex-shrink:0;cursor:text;align-self:center}.input-group-input{border:none;padding:.5rem;font-size:1rem;flex:1 1 0;min-width:0;background-color:var(--bg-light);color:var(--text);outline:none}.input-group-addon{display:block;padding:0 .5rem;color:var(--text-muted);flex-shrink:1;user-select:none;cursor:text;white-space:nowrap;font-size:.875rem;overflow:hidden;text-overflow:ellipsis;min-width:0;max-width:40%}.input-group-addon.editable-cell{font-size:1rem;overflow:unset;text-overflow:unset;padding:0;min-width:unset}@media(max-width:800px){.input-group{max-width:100%}.input-group-addon{padding:0 .35rem}}button.icon-button{width:min-content;min-width:min-content;font-size:1.25rem;height:auto;border:none;background:transparent;padding:0 .25rem}button.icon-button:hover{color:var(--highlight);background:transparent}@media(max-width:800px){.mobile-hide{display:none}}.flex-row{display:flex;flex-direction:row;align-items:center;gap:.5rem}.flex-column{display:flex;flex-direction:column;gap:1rem}.entry-grid{display:grid;grid-auto-rows:3rem;gap:2px;border:1px solid var(--border);border-radius:8px}.entry-grid div{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background-color:var(--bg-light);border-radius:8px}.entry-grid .grid-new-row{grid-column-start:1;justify-content:flex-end;gap:1rem;padding:1rem}.entry-grid div.grid-header{font-weight:600;background-color:var(--bg);border:none}.entry-grid div.grid-header.hoverable:hover{cursor:pointer}.entry-grid div.grid-header.hoverable:hover{background-color:var(--bg-lighter)}.entry-grid div.hoverable{cursor:pointer}.entry-grid div.hoverable:hover{background-color:var(--bg-lighter)}@media(max-width:800px){.entry-grid{grid-template-columns:100%!important}table.entry-grid td:before{text-decoration:none!important}.grid-header{justify-self:unset;margin-left:0rem}.grid-new-row{margin-left:0rem;justify-self:unset}.entry-grid .grid-new-row{justify-content:center}.entry-grid div.grid-header.hoverable{background-color:var(--bg-light)}}table.membership{border-spacing:2px;width:max-content}table.membership th{background-color:var(--bg);height:4rem;width:12rem;border-bottom:0}table.membership td{background-color:var(--bg-light);height:4rem;width:8rem;max-width:unset;justify-items:center}table.membership .interactable{cursor:pointer}table.membership th.interactable:hover,table.membership td.interactable:hover{background-color:var(--bg-lighter)}table.membership .centered{text-align:center}table.membership form{margin:0;width:100%;height:100%}table.membership input.editable-cell,table.membership .input-group.editable-cell{width:100%;height:100%;border:none;background-color:var(--bg-light);color:var(--text);font-size:1rem;padding:.5rem;box-sizing:border-box;outline:none}table.membership td.editing,table.membership th.editing{border:1px solid var(--highlight);padding:0}.table-container{overflow-x:auto;width:100%}@media(max-width:800px)and (orientation:landscape){table.membership{max-width:100%;width:100%;overflow-x:auto}table.membership tbody{overflow-x:visible}table.membership th,table.membership td{min-width:12rem}}@media(max-width:800px)and (orientation:portrait){table.membership{width:100%}table.membership th,table.membership td{text-align:left;height:5rem;width:unset}table.membership th:not(.mobile-hide){display:block;background-color:var(--bg-light);height:4rem;font-weight:700;font-size:1.5rem;text-align:center}table.membership td.interactable span{text-decoration:underline;font-size:1rem}table.membership th.interactable{font-size:1rem;text-decoration:underline}table.membership td:before{text-decoration:none}}.accordion{border-radius:.25rem;margin-bottom:1rem;overflow:hidden}.accordion-header{width:100%;padding:1rem;background-color:var(--bg-light);border:1px solid var(--border-muted);cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-size:1rem;font-weight:500;color:var(--text);text-align:left;transition:background-color .2s}.accordion-header:hover{background-color:var(--bg-lighter)}.accordion-icon{transition:transform .2s}.accordion-icon.open{transform:rotate(180deg)}.accordion-content{padding:1rem}.opening-hours{display:flex;flex-direction:row;align-items:center;gap:1rem;border-radius:32px;padding-left:1rem;padding-right:1rem;border:1px solid var(--border);height:3rem;width:min-content;cursor:pointer}.opening-hours{text-align:center}.opening-time:hover{color:var(--highlight)}.calendar{display:grid;grid-template-columns:.5fr repeat(7,1fr);gap:.5rem}.calendar-day{display:flex;flex-direction:column;gap:.5rem;align-items:center;border-radius:8px;cursor:pointer;border:1px solid var(--border);height:4rem;background-color:var(--bg-light)}.calendar-day:hover{background-color:var(--bg-lighter)}.calendar-day-past{background-color:var(--bg);color:var(--text-muted)}.calendar-week-header{font-weight:600;background-color:var(--bg);border:none;display:flex;justify-content:center;align-items:center}.calendar-day-header{font-weight:600;border:none;width:100%;height:2rem;display:flex;justify-content:center;align-items:center}.calendar-event{border-radius:50%;width:.5rem;height:.5rem;border:none}.calendar-legend{grid-column:1 / -1;display:flex;flex-direction:row;gap:1rem;justify-content:center;align-items:center}@media(max-width:800px){.calendar-day{height:2.5rem;gap:.25rem}.calendar-event{width:.25rem;height:.25rem}}
