@charset "UTF-8";:root{--ion-color-primary: #0054e9;--ion-color-primary-rgb: 0, 84, 233;--ion-color-primary-contrast: #fff;--ion-color-primary-contrast-rgb: 255, 255, 255;--ion-color-primary-shade: #004acd;--ion-color-primary-tint: #1a65eb;--ion-color-secondary: #0163aa;--ion-color-secondary-rgb: 1, 99, 170;--ion-color-secondary-contrast: #fff;--ion-color-secondary-contrast-rgb: 255, 255, 255;--ion-color-secondary-shade: #015796;--ion-color-secondary-tint: #1a73b3;--ion-color-tertiary: #6030ff;--ion-color-tertiary-rgb: 96, 48, 255;--ion-color-tertiary-contrast: #fff;--ion-color-tertiary-contrast-rgb: 255, 255, 255;--ion-color-tertiary-shade: #542ae0;--ion-color-tertiary-tint: #7045ff;--ion-color-success: #2dd55b;--ion-color-success-rgb: 45, 213, 91;--ion-color-success-contrast: #000;--ion-color-success-contrast-rgb: 0, 0, 0;--ion-color-success-shade: #28bb50;--ion-color-success-tint: #42d96b;--ion-color-warning: #ffc409;--ion-color-warning-rgb: 255, 196, 9;--ion-color-warning-contrast: #000;--ion-color-warning-contrast-rgb: 0, 0, 0;--ion-color-warning-shade: #e0ac08;--ion-color-warning-tint: #ffca22;--ion-color-danger: #c5000f;--ion-color-danger-rgb: 197, 0, 15;--ion-color-danger-contrast: #fff;--ion-color-danger-contrast-rgb: 255, 255, 255;--ion-color-danger-shade: #ad000d;--ion-color-danger-tint: #cb1a27;--ion-color-light: #f4f5f8;--ion-color-light-rgb: 244, 245, 248;--ion-color-light-contrast: #000;--ion-color-light-contrast-rgb: 0, 0, 0;--ion-color-light-shade: #d7d8da;--ion-color-light-tint: #f5f6f9;--ion-color-medium: #636469;--ion-color-medium-rgb: 99, 100, 105;--ion-color-medium-contrast: #fff;--ion-color-medium-contrast-rgb: 255, 255, 255;--ion-color-medium-shade: #57585c;--ion-color-medium-tint: #737478;--ion-color-dark: #222428;--ion-color-dark-rgb: 34, 36, 40;--ion-color-dark-contrast: #fff;--ion-color-dark-contrast-rgb: 255, 255, 255;--ion-color-dark-shade: #1e2023;--ion-color-dark-tint: #383a3e}html.ios{--ion-default-font: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Roboto", sans-serif}html.md{--ion-default-font: "Roboto", "Helvetica Neue", sans-serif}html{--ion-dynamic-font: -apple-system-body;--ion-font-family: var(--ion-default-font)}body{background:var(--ion-background-color);color:var(--ion-text-color)}body.backdrop-no-scroll{overflow:hidden}html.ios ion-modal.modal-card ion-header ion-toolbar:first-of-type,html.ios ion-modal.modal-sheet ion-header ion-toolbar:first-of-type,html.ios ion-modal ion-footer ion-toolbar:first-of-type,html.ios ion-footer.modal-footer-moving ion-toolbar:first-of-type{padding-top:6px}html.ios ion-modal.modal-card ion-header ion-toolbar:last-of-type,html.ios ion-modal.modal-sheet ion-header ion-toolbar:last-of-type{padding-bottom:6px}html.ios ion-modal ion-toolbar,html.ios .modal-footer-moving ion-toolbar{padding-right:calc(var(--ion-safe-area-right) + 8px);padding-left:calc(var(--ion-safe-area-left) + 8px)}@media screen and (min-width:768px){html.ios ion-modal.modal-card:first-of-type{--backdrop-opacity: .18}}ion-modal.modal-default.show-modal~ion-modal.modal-default{--backdrop-opacity: 0;--box-shadow: none}html.ios ion-modal.modal-card .ion-page{border-top-left-radius:var(--border-radius)}.ion-color-primary{--ion-color-base: var(--ion-color-primary, #0054e9) !important;--ion-color-base-rgb: var(--ion-color-primary-rgb, 0, 84, 233) !important;--ion-color-contrast: var(--ion-color-primary-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-primary-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-primary-shade, #004acd) !important;--ion-color-tint: var(--ion-color-primary-tint, #1a65eb) !important}.ion-color-secondary{--ion-color-base: var(--ion-color-secondary, #0163aa) !important;--ion-color-base-rgb: var(--ion-color-secondary-rgb, 1, 99, 170) !important;--ion-color-contrast: var(--ion-color-secondary-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-secondary-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-secondary-shade, #015796) !important;--ion-color-tint: var(--ion-color-secondary-tint, #1a73b3) !important}.ion-color-tertiary{--ion-color-base: var(--ion-color-tertiary, #6030ff) !important;--ion-color-base-rgb: var(--ion-color-tertiary-rgb, 96, 48, 255) !important;--ion-color-contrast: var(--ion-color-tertiary-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-tertiary-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-tertiary-shade, #542ae0) !important;--ion-color-tint: var(--ion-color-tertiary-tint, #7045ff) !important}.ion-color-success{--ion-color-base: var(--ion-color-success, #2dd55b) !important;--ion-color-base-rgb: var(--ion-color-success-rgb, 45, 213, 91) !important;--ion-color-contrast: var(--ion-color-success-contrast, #000) !important;--ion-color-contrast-rgb: var(--ion-color-success-contrast-rgb, 0, 0, 0) !important;--ion-color-shade: var(--ion-color-success-shade, #28bb50) !important;--ion-color-tint: var(--ion-color-success-tint, #42d96b) !important}.ion-color-warning{--ion-color-base: var(--ion-color-warning, #ffc409) !important;--ion-color-base-rgb: var(--ion-color-warning-rgb, 255, 196, 9) !important;--ion-color-contrast: var(--ion-color-warning-contrast, #000) !important;--ion-color-contrast-rgb: var(--ion-color-warning-contrast-rgb, 0, 0, 0) !important;--ion-color-shade: var(--ion-color-warning-shade, #e0ac08) !important;--ion-color-tint: var(--ion-color-warning-tint, #ffca22) !important}.ion-color-danger{--ion-color-base: var(--ion-color-danger, #c5000f) !important;--ion-color-base-rgb: var(--ion-color-danger-rgb, 197, 0, 15) !important;--ion-color-contrast: var(--ion-color-danger-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-danger-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-danger-shade, #ad000d) !important;--ion-color-tint: var(--ion-color-danger-tint, #cb1a27) !important}.ion-color-light{--ion-color-base: var(--ion-color-light, #f4f5f8) !important;--ion-color-base-rgb: var(--ion-color-light-rgb, 244, 245, 248) !important;--ion-color-contrast: var(--ion-color-light-contrast, #000) !important;--ion-color-contrast-rgb: var(--ion-color-light-contrast-rgb, 0, 0, 0) !important;--ion-color-shade: var(--ion-color-light-shade, #d7d8da) !important;--ion-color-tint: var(--ion-color-light-tint, #f5f6f9) !important}.ion-color-medium{--ion-color-base: var(--ion-color-medium, #636469) !important;--ion-color-base-rgb: var(--ion-color-medium-rgb, 99, 100, 105) !important;--ion-color-contrast: var(--ion-color-medium-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-medium-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-medium-shade, #57585c) !important;--ion-color-tint: var(--ion-color-medium-tint, #737478) !important}.ion-color-dark{--ion-color-base: var(--ion-color-dark, #222428) !important;--ion-color-base-rgb: var(--ion-color-dark-rgb, 34, 36, 40) !important;--ion-color-contrast: var(--ion-color-dark-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-dark-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-dark-shade, #1e2023) !important;--ion-color-tint: var(--ion-color-dark-tint, #383a3e) !important}.ion-page{inset:0;display:flex;position:absolute;flex-direction:column;justify-content:space-between;contain:layout size style;z-index:0}.ion-page.ion-page-overlay-passthrough{pointer-events:none}ion-modal>.ion-page{position:relative;contain:layout style;height:100%}.split-pane-visible>.ion-page.split-pane-main{position:relative}ion-route,ion-route-redirect,ion-router,ion-select-option,ion-nav-controller,ion-menu-controller,ion-action-sheet-controller,ion-alert-controller,ion-loading-controller,ion-modal-controller,ion-picker-controller,ion-popover-controller,ion-toast-controller,.ion-page-hidden{display:none!important}.ion-page-invisible{opacity:0}.can-go-back>ion-header ion-back-button{display:block}html.plt-ios.plt-hybrid,html.plt-ios.plt-pwa{--ion-statusbar-padding: 20px}@supports (padding-top: 20px){html{--ion-safe-area-top: var(--ion-statusbar-padding)}}@supports (padding-top: env(safe-area-inset-top)){html{--ion-safe-area-top: var(--safe-area-inset-top, env(safe-area-inset-top));--ion-safe-area-bottom: var(--safe-area-inset-bottom, env(safe-area-inset-bottom));--ion-safe-area-left: var(--safe-area-inset-left, env(safe-area-inset-left));--ion-safe-area-right: var(--safe-area-inset-right, env(safe-area-inset-right))}}ion-card.ion-color .ion-inherit-color,ion-card-header.ion-color .ion-inherit-color{color:inherit}.menu-content{transform:translateZ(0)}.menu-content-open{cursor:pointer;touch-action:manipulation;pointer-events:none;overflow-y:hidden}.menu-content-open ion-content{--overflow: hidden}.menu-content-open .ion-content-scroll-host{overflow:hidden}.ios .menu-content-reveal{box-shadow:-8px 0 42px #00000014}[dir=rtl].ios .menu-content-reveal{box-shadow:8px 0 42px #00000014}.md .menu-content-reveal,.md .menu-content-push{box-shadow:4px 0 16px #0000002e}ion-accordion-group.accordion-group-expand-inset>ion-accordion:first-of-type{border-top-left-radius:8px;border-top-right-radius:8px}ion-accordion-group.accordion-group-expand-inset>ion-accordion:last-of-type{border-bottom-left-radius:8px;border-bottom-right-radius:8px}ion-accordion-group>ion-accordion:last-of-type ion-item[slot=header]{--border-width: 0px}ion-accordion.accordion-animated>[slot=header] .ion-accordion-toggle-icon{transition:.3s transform cubic-bezier(.25,.8,.5,1)}@media(prefers-reduced-motion:reduce){ion-accordion .ion-accordion-toggle-icon{transition:none!important}}ion-accordion.accordion-expanding>[slot=header] .ion-accordion-toggle-icon,ion-accordion.accordion-expanded>[slot=header] .ion-accordion-toggle-icon{transform:rotate(180deg)}ion-accordion-group.accordion-group-expand-inset.md>ion-accordion.accordion-previous ion-item[slot=header]{--border-width: 0px;--inner-border-width: 0px}ion-accordion-group.accordion-group-expand-inset.md>ion-accordion.accordion-expanding:first-of-type,ion-accordion-group.accordion-group-expand-inset.md>ion-accordion.accordion-expanded:first-of-type{margin-top:0}ion-input input::-webkit-date-and-time-value{text-align:start}.ion-datetime-button-overlay{--width: fit-content;--height: fit-content}.ion-datetime-button-overlay ion-datetime.datetime-grid{width:320px;min-height:320px}[ion-last-focus],header[tabindex="-1"]:focus,[role=banner][tabindex="-1"]:focus,main[tabindex="-1"]:focus,[role=main][tabindex="-1"]:focus,h1[tabindex="-1"]:focus,[role=heading][aria-level="1"][tabindex="-1"]:focus{outline:none}.popover-viewport:has(>ion-content){overflow:hidden}@supports not selector(:has(> ion-content)){.popover-viewport{overflow:hidden}}audio,canvas,progress,video{vertical-align:baseline}audio:not([controls]){display:none;height:0}b,strong{font-weight:700}img{max-width:100%}hr{height:1px;border-width:0;box-sizing:content-box}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}label,input,select,textarea{font-family:inherit;line-height:normal}textarea{overflow:auto;height:auto;font:inherit;color:inherit}textarea::placeholder{padding-left:2px}form,input,optgroup,select{margin:0;font:inherit;color:inherit}html input[type=button],input[type=reset],input[type=submit]{cursor:pointer;-webkit-appearance:button}a,a div,a span,a ion-icon,a ion-label,button,button div,button span,button ion-icon,button ion-label,.ion-tappable,[tappable],[tappable] div,[tappable] span,[tappable] ion-icon,[tappable] ion-label,input,textarea{touch-action:manipulation}a ion-label,button ion-label{pointer-events:none}button{padding:0;border:0;border-radius:0;font-family:inherit;font-style:inherit;font-variant:inherit;line-height:1;text-transform:none;cursor:pointer;-webkit-appearance:button}[tappable]{cursor:pointer}a[disabled],button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}*{box-sizing:border-box;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}html{width:100%;height:100%;-webkit-text-size-adjust:100%;text-size-adjust:100%}html.ion-ce body{display:block}html.plt-pwa{height:100vh}body{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;margin:0;padding:0;position:fixed;width:100%;max-width:100%;height:100%;max-height:100%;transform:translateZ(0);text-rendering:optimizeLegibility;overflow:hidden;touch-action:manipulation;-webkit-user-drag:none;-ms-content-zooming:none;word-wrap:break-word;overscroll-behavior-y:none;-webkit-text-size-adjust:none;text-size-adjust:none}html{font-family:var(--ion-font-family)}@supports (-webkit-touch-callout: none){html{font:var(--ion-dynamic-font, 16px var(--ion-font-family))}}a{background-color:transparent;color:var(--ion-color-primary, #0054e9)}h1,h2,h3,h4,h5,h6{margin-top:16px;margin-bottom:10px;font-weight:500;line-height:1.2}h1{margin-top:20px;font-size:1.625rem}h2{margin-top:18px;font-size:1.5rem}h3{font-size:1.375rem}h4{font-size:1.25rem}h5{font-size:1.125rem}h6{font-size:1rem}small{font-size:75%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}.ion-hide,.ion-hide-up,.ion-hide-down{display:none!important}@media(min-width:576px){.ion-hide-sm-up{display:none!important}}@media(max-width:575.98px){.ion-hide-sm-down{display:none!important}}@media(min-width:768px){.ion-hide-md-up{display:none!important}}@media(max-width:767.98px){.ion-hide-md-down{display:none!important}}@media(min-width:992px){.ion-hide-lg-up{display:none!important}}@media(max-width:991.98px){.ion-hide-lg-down{display:none!important}}@media(min-width:1200px){.ion-hide-xl-up{display:none!important}}@media(max-width:1199.98px){.ion-hide-xl-down{display:none!important}}.ion-display-none{display:none!important}@media(min-width:576px){.ion-display-sm-none{display:none!important}}@media(min-width:768px){.ion-display-md-none{display:none!important}}@media(min-width:992px){.ion-display-lg-none{display:none!important}}@media(min-width:1200px){.ion-display-xl-none{display:none!important}}.ion-display-inline{display:inline!important}@media(min-width:576px){.ion-display-sm-inline{display:inline!important}}@media(min-width:768px){.ion-display-md-inline{display:inline!important}}@media(min-width:992px){.ion-display-lg-inline{display:inline!important}}@media(min-width:1200px){.ion-display-xl-inline{display:inline!important}}.ion-display-inline-block{display:inline-block!important}@media(min-width:576px){.ion-display-sm-inline-block{display:inline-block!important}}@media(min-width:768px){.ion-display-md-inline-block{display:inline-block!important}}@media(min-width:992px){.ion-display-lg-inline-block{display:inline-block!important}}@media(min-width:1200px){.ion-display-xl-inline-block{display:inline-block!important}}.ion-display-block{display:block!important}@media(min-width:576px){.ion-display-sm-block{display:block!important}}@media(min-width:768px){.ion-display-md-block{display:block!important}}@media(min-width:992px){.ion-display-lg-block{display:block!important}}@media(min-width:1200px){.ion-display-xl-block{display:block!important}}.ion-display-flex{display:flex!important}@media(min-width:576px){.ion-display-sm-flex{display:flex!important}}@media(min-width:768px){.ion-display-md-flex{display:flex!important}}@media(min-width:992px){.ion-display-lg-flex{display:flex!important}}@media(min-width:1200px){.ion-display-xl-flex{display:flex!important}}.ion-display-inline-flex{display:inline-flex!important}@media(min-width:576px){.ion-display-sm-inline-flex{display:inline-flex!important}}@media(min-width:768px){.ion-display-md-inline-flex{display:inline-flex!important}}@media(min-width:992px){.ion-display-lg-inline-flex{display:inline-flex!important}}@media(min-width:1200px){.ion-display-xl-inline-flex{display:inline-flex!important}}.ion-display-grid{display:grid!important}@media(min-width:576px){.ion-display-sm-grid{display:grid!important}}@media(min-width:768px){.ion-display-md-grid{display:grid!important}}@media(min-width:992px){.ion-display-lg-grid{display:grid!important}}@media(min-width:1200px){.ion-display-xl-grid{display:grid!important}}.ion-display-inline-grid{display:inline-grid!important}@media(min-width:576px){.ion-display-sm-inline-grid{display:inline-grid!important}}@media(min-width:768px){.ion-display-md-inline-grid{display:inline-grid!important}}@media(min-width:992px){.ion-display-lg-inline-grid{display:inline-grid!important}}@media(min-width:1200px){.ion-display-xl-inline-grid{display:inline-grid!important}}.ion-display-table{display:table!important}@media(min-width:576px){.ion-display-sm-table{display:table!important}}@media(min-width:768px){.ion-display-md-table{display:table!important}}@media(min-width:992px){.ion-display-lg-table{display:table!important}}@media(min-width:1200px){.ion-display-xl-table{display:table!important}}.ion-display-table-cell{display:table-cell!important}@media(min-width:576px){.ion-display-sm-table-cell{display:table-cell!important}}@media(min-width:768px){.ion-display-md-table-cell{display:table-cell!important}}@media(min-width:992px){.ion-display-lg-table-cell{display:table-cell!important}}@media(min-width:1200px){.ion-display-xl-table-cell{display:table-cell!important}}.ion-display-table-row{display:table-row!important}@media(min-width:576px){.ion-display-sm-table-row{display:table-row!important}}@media(min-width:768px){.ion-display-md-table-row{display:table-row!important}}@media(min-width:992px){.ion-display-lg-table-row{display:table-row!important}}@media(min-width:1200px){.ion-display-xl-table-row{display:table-row!important}}.ion-no-padding{--padding-start: 0;--padding-end: 0;--padding-top: 0;--padding-bottom: 0;padding:0}.ion-padding{--padding-start: var(--ion-padding, 16px);--padding-end: var(--ion-padding, 16px);--padding-top: var(--ion-padding, 16px);--padding-bottom: var(--ion-padding, 16px);-webkit-padding-start:var(--ion-padding, 16px);padding-inline-start:var(--ion-padding, 16px);-webkit-padding-end:var(--ion-padding, 16px);padding-inline-end:var(--ion-padding, 16px);padding-top:var(--ion-padding, 16px);padding-bottom:var(--ion-padding, 16px)}.ion-padding-top{--padding-top: var(--ion-padding, 16px);padding-top:var(--ion-padding, 16px)}.ion-padding-start{--padding-start: var(--ion-padding, 16px);-webkit-padding-start:var(--ion-padding, 16px);padding-inline-start:var(--ion-padding, 16px)}.ion-padding-end{--padding-end: var(--ion-padding, 16px);-webkit-padding-end:var(--ion-padding, 16px);padding-inline-end:var(--ion-padding, 16px)}.ion-padding-bottom{--padding-bottom: var(--ion-padding, 16px);padding-bottom:var(--ion-padding, 16px)}.ion-padding-vertical{--padding-top: var(--ion-padding, 16px);--padding-bottom: var(--ion-padding, 16px);padding-top:var(--ion-padding, 16px);padding-bottom:var(--ion-padding, 16px)}.ion-padding-horizontal{--padding-start: var(--ion-padding, 16px);--padding-end: var(--ion-padding, 16px);-webkit-padding-start:var(--ion-padding, 16px);padding-inline-start:var(--ion-padding, 16px);-webkit-padding-end:var(--ion-padding, 16px);padding-inline-end:var(--ion-padding, 16px)}.ion-no-margin{--margin-start: 0;--margin-end: 0;--margin-top: 0;--margin-bottom: 0;margin:0}.ion-margin{--margin-start: var(--ion-margin, 16px);--margin-end: var(--ion-margin, 16px);--margin-top: var(--ion-margin, 16px);--margin-bottom: var(--ion-margin, 16px);-webkit-margin-start:var(--ion-margin, 16px);margin-inline-start:var(--ion-margin, 16px);-webkit-margin-end:var(--ion-margin, 16px);margin-inline-end:var(--ion-margin, 16px);margin-top:var(--ion-margin, 16px);margin-bottom:var(--ion-margin, 16px)}.ion-margin-top{--margin-top: var(--ion-margin, 16px);margin-top:var(--ion-margin, 16px)}.ion-margin-start{--margin-start: var(--ion-margin, 16px);-webkit-margin-start:var(--ion-margin, 16px);margin-inline-start:var(--ion-margin, 16px)}.ion-margin-end{--margin-end: var(--ion-margin, 16px);-webkit-margin-end:var(--ion-margin, 16px);margin-inline-end:var(--ion-margin, 16px)}.ion-margin-bottom{--margin-bottom: var(--ion-margin, 16px);margin-bottom:var(--ion-margin, 16px)}.ion-margin-vertical{--margin-top: var(--ion-margin, 16px);--margin-bottom: var(--ion-margin, 16px);margin-top:var(--ion-margin, 16px);margin-bottom:var(--ion-margin, 16px)}.ion-margin-horizontal{--margin-start: var(--ion-margin, 16px);--margin-end: var(--ion-margin, 16px);-webkit-margin-start:var(--ion-margin, 16px);margin-inline-start:var(--ion-margin, 16px);-webkit-margin-end:var(--ion-margin, 16px);margin-inline-end:var(--ion-margin, 16px)}.ion-align-content-start{align-content:flex-start!important}.ion-align-content-end{align-content:flex-end!important}.ion-align-content-center{align-content:center!important}.ion-align-content-between{align-content:space-between!important}.ion-align-content-around{align-content:space-around!important}.ion-align-content-stretch{align-content:stretch!important}@media(min-width:576px){.ion-align-content-sm-start{align-content:flex-start!important}.ion-align-content-sm-end{align-content:flex-end!important}.ion-align-content-sm-center{align-content:center!important}.ion-align-content-sm-between{align-content:space-between!important}.ion-align-content-sm-around{align-content:space-around!important}.ion-align-content-sm-stretch{align-content:stretch!important}}@media(min-width:768px){.ion-align-content-md-start{align-content:flex-start!important}.ion-align-content-md-end{align-content:flex-end!important}.ion-align-content-md-center{align-content:center!important}.ion-align-content-md-between{align-content:space-between!important}.ion-align-content-md-around{align-content:space-around!important}.ion-align-content-md-stretch{align-content:stretch!important}}@media(min-width:992px){.ion-align-content-lg-start{align-content:flex-start!important}.ion-align-content-lg-end{align-content:flex-end!important}.ion-align-content-lg-center{align-content:center!important}.ion-align-content-lg-between{align-content:space-between!important}.ion-align-content-lg-around{align-content:space-around!important}.ion-align-content-lg-stretch{align-content:stretch!important}}@media(min-width:1200px){.ion-align-content-xl-start{align-content:flex-start!important}.ion-align-content-xl-end{align-content:flex-end!important}.ion-align-content-xl-center{align-content:center!important}.ion-align-content-xl-between{align-content:space-between!important}.ion-align-content-xl-around{align-content:space-around!important}.ion-align-content-xl-stretch{align-content:stretch!important}}.ion-align-items-start{align-items:start!important}.ion-align-items-end{align-items:end!important}.ion-align-items-center{align-items:center!important}.ion-align-items-stretch{align-items:stretch!important}.ion-align-items-baseline{align-items:baseline!important}@media(min-width:576px){.ion-align-items-sm-start{align-items:start!important}.ion-align-items-sm-end{align-items:end!important}.ion-align-items-sm-center{align-items:center!important}.ion-align-items-sm-stretch{align-items:stretch!important}.ion-align-items-sm-baseline{align-items:baseline!important}}@media(min-width:768px){.ion-align-items-md-start{align-items:start!important}.ion-align-items-md-end{align-items:end!important}.ion-align-items-md-center{align-items:center!important}.ion-align-items-md-stretch{align-items:stretch!important}.ion-align-items-md-baseline{align-items:baseline!important}}@media(min-width:992px){.ion-align-items-lg-start{align-items:start!important}.ion-align-items-lg-end{align-items:end!important}.ion-align-items-lg-center{align-items:center!important}.ion-align-items-lg-stretch{align-items:stretch!important}.ion-align-items-lg-baseline{align-items:baseline!important}}@media(min-width:1200px){.ion-align-items-xl-start{align-items:start!important}.ion-align-items-xl-end{align-items:end!important}.ion-align-items-xl-center{align-items:center!important}.ion-align-items-xl-stretch{align-items:stretch!important}.ion-align-items-xl-baseline{align-items:baseline!important}}.ion-align-self-start{align-self:start!important}.ion-align-self-end{align-self:end!important}.ion-align-self-center{align-self:center!important}.ion-align-self-stretch{align-self:stretch!important}.ion-align-self-baseline{align-self:baseline!important}.ion-align-self-auto{align-self:auto!important}@media(min-width:576px){.ion-align-self-sm-start{align-self:start!important}.ion-align-self-sm-end{align-self:end!important}.ion-align-self-sm-center{align-self:center!important}.ion-align-self-sm-stretch{align-self:stretch!important}.ion-align-self-sm-baseline{align-self:baseline!important}.ion-align-self-sm-auto{align-self:auto!important}}@media(min-width:768px){.ion-align-self-md-start{align-self:start!important}.ion-align-self-md-end{align-self:end!important}.ion-align-self-md-center{align-self:center!important}.ion-align-self-md-stretch{align-self:stretch!important}.ion-align-self-md-baseline{align-self:baseline!important}.ion-align-self-md-auto{align-self:auto!important}}@media(min-width:992px){.ion-align-self-lg-start{align-self:start!important}.ion-align-self-lg-end{align-self:end!important}.ion-align-self-lg-center{align-self:center!important}.ion-align-self-lg-stretch{align-self:stretch!important}.ion-align-self-lg-baseline{align-self:baseline!important}.ion-align-self-lg-auto{align-self:auto!important}}@media(min-width:1200px){.ion-align-self-xl-start{align-self:start!important}.ion-align-self-xl-end{align-self:end!important}.ion-align-self-xl-center{align-self:center!important}.ion-align-self-xl-stretch{align-self:stretch!important}.ion-align-self-xl-baseline{align-self:baseline!important}.ion-align-self-xl-auto{align-self:auto!important}}.ion-justify-content-start{justify-content:flex-start!important}.ion-justify-content-end{justify-content:flex-end!important}.ion-justify-content-center{justify-content:center!important}.ion-justify-content-between{justify-content:space-between!important}.ion-justify-content-around{justify-content:space-around!important}.ion-justify-content-evenly{justify-content:space-evenly!important}@media(min-width:576px){.ion-justify-content-sm-start{justify-content:flex-start!important}.ion-justify-content-sm-end{justify-content:flex-end!important}.ion-justify-content-sm-center{justify-content:center!important}.ion-justify-content-sm-between{justify-content:space-between!important}.ion-justify-content-sm-around{justify-content:space-around!important}.ion-justify-content-sm-evenly{justify-content:space-evenly!important}}@media(min-width:768px){.ion-justify-content-md-start{justify-content:flex-start!important}.ion-justify-content-md-end{justify-content:flex-end!important}.ion-justify-content-md-center{justify-content:center!important}.ion-justify-content-md-between{justify-content:space-between!important}.ion-justify-content-md-around{justify-content:space-around!important}.ion-justify-content-md-evenly{justify-content:space-evenly!important}}@media(min-width:992px){.ion-justify-content-lg-start{justify-content:flex-start!important}.ion-justify-content-lg-end{justify-content:flex-end!important}.ion-justify-content-lg-center{justify-content:center!important}.ion-justify-content-lg-between{justify-content:space-between!important}.ion-justify-content-lg-around{justify-content:space-around!important}.ion-justify-content-lg-evenly{justify-content:space-evenly!important}}@media(min-width:1200px){.ion-justify-content-xl-start{justify-content:flex-start!important}.ion-justify-content-xl-end{justify-content:flex-end!important}.ion-justify-content-xl-center{justify-content:center!important}.ion-justify-content-xl-between{justify-content:space-between!important}.ion-justify-content-xl-around{justify-content:space-around!important}.ion-justify-content-xl-evenly{justify-content:space-evenly!important}}.ion-flex-row{flex-direction:row!important}.ion-flex-row-reverse{flex-direction:row-reverse!important}.ion-flex-column{flex-direction:column!important}.ion-flex-column-reverse{flex-direction:column-reverse!important}@media(min-width:576px){.ion-flex-sm-row{flex-direction:row!important}.ion-flex-sm-row-reverse{flex-direction:row-reverse!important}.ion-flex-sm-column{flex-direction:column!important}.ion-flex-sm-column-reverse{flex-direction:column-reverse!important}}@media(min-width:768px){.ion-flex-md-row{flex-direction:row!important}.ion-flex-md-row-reverse{flex-direction:row-reverse!important}.ion-flex-md-column{flex-direction:column!important}.ion-flex-md-column-reverse{flex-direction:column-reverse!important}}@media(min-width:992px){.ion-flex-lg-row{flex-direction:row!important}.ion-flex-lg-row-reverse{flex-direction:row-reverse!important}.ion-flex-lg-column{flex-direction:column!important}.ion-flex-lg-column-reverse{flex-direction:column-reverse!important}}@media(min-width:1200px){.ion-flex-xl-row{flex-direction:row!important}.ion-flex-xl-row-reverse{flex-direction:row-reverse!important}.ion-flex-xl-column{flex-direction:column!important}.ion-flex-xl-column-reverse{flex-direction:column-reverse!important}}.ion-wrap{flex-wrap:wrap!important}.ion-nowrap{flex-wrap:nowrap!important}.ion-wrap-reverse{flex-wrap:wrap-reverse!important}.ion-flex-wrap{flex-wrap:wrap!important}.ion-flex-nowrap{flex-wrap:nowrap!important}.ion-flex-wrap-reverse{flex-wrap:wrap-reverse!important}@media(min-width:576px){.ion-flex-sm-wrap{flex-wrap:wrap!important}.ion-flex-sm-nowrap{flex-wrap:nowrap!important}.ion-flex-sm-wrap-reverse{flex-wrap:wrap-reverse!important}}@media(min-width:768px){.ion-flex-md-wrap{flex-wrap:wrap!important}.ion-flex-md-nowrap{flex-wrap:nowrap!important}.ion-flex-md-wrap-reverse{flex-wrap:wrap-reverse!important}}@media(min-width:992px){.ion-flex-lg-wrap{flex-wrap:wrap!important}.ion-flex-lg-nowrap{flex-wrap:nowrap!important}.ion-flex-lg-wrap-reverse{flex-wrap:wrap-reverse!important}}@media(min-width:1200px){.ion-flex-xl-wrap{flex-wrap:wrap!important}.ion-flex-xl-nowrap{flex-wrap:nowrap!important}.ion-flex-xl-wrap-reverse{flex-wrap:wrap-reverse!important}}.ion-flex-1{flex:1!important}.ion-flex-auto{flex:auto!important}.ion-flex-initial{flex:initial!important}.ion-flex-none{flex:none!important}@media(min-width:576px){.ion-flex-sm-1{flex:1!important}.ion-flex-sm-auto{flex:auto!important}.ion-flex-sm-initial{flex:initial!important}.ion-flex-sm-none{flex:none!important}}@media(min-width:768px){.ion-flex-md-1{flex:1!important}.ion-flex-md-auto{flex:auto!important}.ion-flex-md-initial{flex:initial!important}.ion-flex-md-none{flex:none!important}}@media(min-width:992px){.ion-flex-lg-1{flex:1!important}.ion-flex-lg-auto{flex:auto!important}.ion-flex-lg-initial{flex:initial!important}.ion-flex-lg-none{flex:none!important}}@media(min-width:1200px){.ion-flex-xl-1{flex:1!important}.ion-flex-xl-auto{flex:auto!important}.ion-flex-xl-initial{flex:initial!important}.ion-flex-xl-none{flex:none!important}}.ion-flex-grow-0{flex-grow:0!important}.ion-flex-grow-1{flex-grow:1!important}.ion-flex-shrink-0{flex-shrink:0!important}.ion-flex-shrink-1{flex-shrink:1!important}@media(min-width:576px){.ion-flex-sm-grow-0{flex-grow:0!important}.ion-flex-sm-grow-1{flex-grow:1!important}.ion-flex-sm-shrink-0{flex-shrink:0!important}.ion-flex-sm-shrink-1{flex-shrink:1!important}}@media(min-width:768px){.ion-flex-md-grow-0{flex-grow:0!important}.ion-flex-md-grow-1{flex-grow:1!important}.ion-flex-md-shrink-0{flex-shrink:0!important}.ion-flex-md-shrink-1{flex-shrink:1!important}}@media(min-width:992px){.ion-flex-lg-grow-0{flex-grow:0!important}.ion-flex-lg-grow-1{flex-grow:1!important}.ion-flex-lg-shrink-0{flex-shrink:0!important}.ion-flex-lg-shrink-1{flex-shrink:1!important}}@media(min-width:1200px){.ion-flex-xl-grow-0{flex-grow:0!important}.ion-flex-xl-grow-1{flex-grow:1!important}.ion-flex-xl-shrink-0{flex-shrink:0!important}.ion-flex-xl-shrink-1{flex-shrink:1!important}}.ion-order-first{order:-1!important}.ion-order-0{order:0!important}.ion-order-1{order:1!important}.ion-order-2{order:2!important}.ion-order-3{order:3!important}.ion-order-4{order:4!important}.ion-order-5{order:5!important}.ion-order-6{order:6!important}.ion-order-7{order:7!important}.ion-order-8{order:8!important}.ion-order-9{order:9!important}.ion-order-10{order:10!important}.ion-order-11{order:11!important}.ion-order-12{order:12!important}.ion-order-last{order:13!important}@media(min-width:576px){.ion-order-sm-first{order:-1!important}.ion-order-sm-0{order:0!important}.ion-order-sm-1{order:1!important}.ion-order-sm-2{order:2!important}.ion-order-sm-3{order:3!important}.ion-order-sm-4{order:4!important}.ion-order-sm-5{order:5!important}.ion-order-sm-6{order:6!important}.ion-order-sm-7{order:7!important}.ion-order-sm-8{order:8!important}.ion-order-sm-9{order:9!important}.ion-order-sm-10{order:10!important}.ion-order-sm-11{order:11!important}.ion-order-sm-12{order:12!important}.ion-order-sm-last{order:13!important}}@media(min-width:768px){.ion-order-md-first{order:-1!important}.ion-order-md-0{order:0!important}.ion-order-md-1{order:1!important}.ion-order-md-2{order:2!important}.ion-order-md-3{order:3!important}.ion-order-md-4{order:4!important}.ion-order-md-5{order:5!important}.ion-order-md-6{order:6!important}.ion-order-md-7{order:7!important}.ion-order-md-8{order:8!important}.ion-order-md-9{order:9!important}.ion-order-md-10{order:10!important}.ion-order-md-11{order:11!important}.ion-order-md-12{order:12!important}.ion-order-md-last{order:13!important}}@media(min-width:992px){.ion-order-lg-first{order:-1!important}.ion-order-lg-0{order:0!important}.ion-order-lg-1{order:1!important}.ion-order-lg-2{order:2!important}.ion-order-lg-3{order:3!important}.ion-order-lg-4{order:4!important}.ion-order-lg-5{order:5!important}.ion-order-lg-6{order:6!important}.ion-order-lg-7{order:7!important}.ion-order-lg-8{order:8!important}.ion-order-lg-9{order:9!important}.ion-order-lg-10{order:10!important}.ion-order-lg-11{order:11!important}.ion-order-lg-12{order:12!important}.ion-order-lg-last{order:13!important}}@media(min-width:1200px){.ion-order-xl-first{order:-1!important}.ion-order-xl-0{order:0!important}.ion-order-xl-1{order:1!important}.ion-order-xl-2{order:2!important}.ion-order-xl-3{order:3!important}.ion-order-xl-4{order:4!important}.ion-order-xl-5{order:5!important}.ion-order-xl-6{order:6!important}.ion-order-xl-7{order:7!important}.ion-order-xl-8{order:8!important}.ion-order-xl-9{order:9!important}.ion-order-xl-10{order:10!important}.ion-order-xl-11{order:11!important}.ion-order-xl-12{order:12!important}.ion-order-xl-last{order:13!important}}:root{--ion-font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--ion-color-primary: #c9a24a;--ion-color-primary-rgb: 201, 162, 74;--ion-color-primary-contrast: #090806;--ion-color-secondary: #f0d992;--ion-background-color: #070604;--ion-text-color: #f8efd9}.calendar-appearance{border:1px solid rgba(201,162,74,.42);border-radius:8px;background:transparent;color:#f0d992;padding:8px 10px}.calendar-scroll{overflow:auto!important}.calendar-times{z-index:5}.service-role-row{grid-template-columns:minmax(220px,1fr) minmax(180px,.7fr);align-items:end}.calendar-fixed-lanes{position:sticky!important;left:68px;z-index:4!important}.calendar-bright .calendar-lane{background-color:#fff!important;background-image:repeating-linear-gradient(to bottom,transparent 0,transparent 450px,rgba(0,0,0,.22) 450px,rgba(0,0,0,.22) 451px)!important}.calendar-bright .calendar-controls button,.calendar-bright .calendar-appearance{color:#000;border-color:#000}.calendar-bright .calendar-now{background:#000;box-shadow:none}.calendar-bright .calendar-now-label{background:#000;color:#fff!important}ion-modal:has(input[min="0.01"]) .request-modal-actions>button{border:1px solid #d8b35a;border-radius:9px;background:linear-gradient(135deg,#e6c46d,#b78725);color:#171109;font-weight:900;padding:10px 15px}ion-modal:has(input[min="0.01"]) .request-modal-actions>button:hover{filter:brightness(1.08)}.calendar-rate-diagnostics{margin-top:18px;border:1px solid rgba(255,196,87,.5);border-radius:10px;background:#ffc4571a;color:#f0d992;padding:10px 12px}.calendar-rate-diagnostics summary{cursor:pointer;font-weight:900}.calendar-rate-diagnostics p,.calendar-rate-diagnostics span{color:#cdbf9d}.calendar-rate-diagnostics div{display:grid;gap:2px;margin-top:9px}app-admin-appointment .calendar-scroll{overflow:auto!important}app-admin-appointment .calendar-grid,app-admin-appointment .calendar-lanes{min-width:max-content!important}app-admin-appointment .calendar-technician-scroll{flex:0 0 auto!important;min-width:max-content!important;overflow:visible!important}app-admin-appointment .calendar-technician-lanes{min-width:max-content!important}app-admin-appointment .calendar-lane>header{z-index:8!important}body{background:#070604}ion-modal.technician-duration-modal{--width:min(1180px, calc(100vw - 32px) );--height:min(880px, calc(100vh - 32px) );--border-radius:18px}.technician-duration-editor{max-width:1140px}.technician-duration-category{gap:0;overflow:hidden;padding:0}.technician-duration-category h3{padding:14px 16px 10px}.technician-duration-columns,.technician-duration-row{display:grid;grid-template-columns:minmax(210px,1.5fr) minmax(145px,.8fr) minmax(165px,.85fr) minmax(105px,auto);gap:14px;align-items:center}.technician-duration-columns{border-top:1px solid rgba(201,162,74,.18);background:#c9a24a17;color:#c9a24a;font-size:.7rem;font-weight:900;letter-spacing:.08em;padding:9px 16px;text-transform:uppercase}.technician-duration-row{border-top:1px solid rgba(201,162,74,.14);padding:12px 16px}.technician-duration-row:first-of-type{border-top:0}.technician-duration-service{color:#f8efd9}.technician-duration-row label{margin:0}.technician-duration-row label>span{display:none}.technician-duration-not-applicable{color:#99895f;font-size:.82rem;font-style:italic}.technician-duration-actions{display:flex;justify-content:flex-end}.technician-duration-actions button{border:1px solid rgba(201,162,74,.36);border-radius:8px;background:transparent;color:#d8c89e;padding:9px 11px;white-space:nowrap}app-admin-appointment ion-modal:has(.request-modal),app-admin-appointment ion-modal:has(.multi-request-content){--width:min(1140px, calc(100vw - 48px) );--height:min(860px, calc(100vh - 56px) );--border-radius:18px}app-admin-appointment .multi-request-content{width:min(640px,100%);padding:28px}app-admin-appointment .request-summary-service.removed-request-summary{color:#c77b72;text-decoration:line-through;text-decoration-thickness:2px}app-admin-appointment .request-summary-service.removed-request-summary .technician-pill,app-admin-appointment .request-summary-service.removed-request-summary strong{opacity:.7;text-decoration:line-through}app-admin-appointment .removed-request-category{border:1px solid rgba(229,105,95,.78);border-radius:12px;background:#962f2821;padding:12px}app-admin-appointment .removed-request-category header small{color:#ffb4aa;font-weight:800}app-admin-appointment .calendar-request-actions{display:grid;gap:5px;margin-top:5px}app-admin-appointment .calendar-request-actions button{border:1px solid rgba(201,162,74,.45);border-radius:7px;background:#c9a24a1f;color:#fff4df;font:inherit;font-size:.72rem;font-weight:800;padding:5px 7px}app-admin-appointment .calendar-request-actions .decline-request{border-color:#d58a5ab3!important;background:#d58a5a29!important;color:#ffe0c6!important}@media(max-width:700px){ion-modal.technician-duration-modal,app-admin-appointment ion-modal:has(.request-modal),app-admin-appointment ion-modal:has(.multi-request-content){--width:100%;--height:100%;--border-radius:0}.technician-duration-columns{display:none}.technician-duration-row{grid-template-columns:1fr;gap:8px}.technician-duration-row label>span{display:block}.technician-duration-actions{justify-content:flex-start}}.kiosk-content .kiosk-shell .appointment-list{gap:16px}app-admin-appointment .calendar-lanes{position:relative}app-admin-appointment .calendar-now{position:absolute;right:0;left:0;z-index:5;height:2px;background:#ffdb75;box-shadow:0 0 8px #ffdb75;pointer-events:none}app-admin-appointment .calendar-now-label{z-index:6;border-radius:4px;background:#ffdb75;color:#171004!important;font-weight:900!important;transform:translateY(-50%);white-space:nowrap}app-admin-appointment .request-block{border-color:#e4b657;background:#7a5518}app-admin-appointment .live-waiting-block{border-color:#6aaeff;background:#244d85}app-admin-appointment .live-assigned-block{border-color:#5de5de;background:#08716f}app-admin-appointment .live-complete-block{border-color:#9ca5b4;background:#4d5562;opacity:.84}app-admin-appointment .no-show-block{border-color:#ff9388!important;background:#9d2525!important;color:#fff4ef!important}app-admin-appointment .technician-duration-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}app-admin-appointment .technician-duration-grid article{display:grid;gap:8px}app-admin-appointment .technician-duration-grid label{display:grid;grid-template-columns:minmax(0,1fr) 70px auto;align-items:center;gap:8px}app-admin-appointment .technician-duration-grid input{min-width:0;padding:7px}ion-modal.technician-duration-modal{--width:min(1140px, calc(100vw - 48px) );--height:min(860px, calc(100vh - 56px) );--border-radius:18px}app-admin-appointment .calendar-utility-lane-group{position:relative;display:grid;min-height:100%}app-admin-appointment .calendar-utility-lane-group>header{grid-area:1/1;position:sticky;top:0;z-index:8;display:grid;gap:2px;align-self:start;min-height:53px;border-bottom:1px solid rgba(201,162,74,.3);background:#17140e;padding:8px 10px}app-admin-appointment .calendar-utility-blue-header>header{background:#18233a}app-admin-appointment .calendar-utility-lane-group>header strong{color:#f0d992;font-size:.82rem}app-admin-appointment .calendar-utility-lane-group>header small{color:#aa9a7c;font-size:.7rem}app-admin-appointment .calendar-utility-lane-columns{grid-area:1/1;display:flex;min-height:100%}app-admin-appointment .shared-customer-card{overflow:hidden}app-admin-appointment .shared-customer-card-paired{font-size:.79rem;padding:7px}app-admin-appointment .shared-customer-card-paired strong{font-size:.87rem}app-admin-appointment .shared-customer-card-paired span,app-admin-appointment .shared-customer-card-paired small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}app-admin-appointment .technician-calendar-lane{width:130px;min-width:130px}app-admin-appointment .calendar-appointment-overlap-menu{position:absolute;z-index:10;left:4px;right:4px;display:grid;gap:6px;border:1px solid #fff4cf;border-radius:8px;background:#17140e;box-shadow:0 8px 22px #0000008c;padding:8px}app-admin-appointment .calendar-appointment-overlap-menu>strong{color:#fff4cf;font-size:.76rem}app-admin-appointment .calendar-appointment-overlap-menu button{display:grid;gap:2px;border:1px solid rgba(255,255,255,.38);border-radius:6px;color:#fff;padding:7px;text-align:left;font:inherit;cursor:pointer}app-admin-appointment .calendar-appointment-overlap-menu button.no-show-block{background:#8d302c;border-color:#ff8b7e}app-admin-appointment .calendar-appointment-overlap-menu button small{color:#fff4cf;font-weight:800}app-admin-appointment .calendar-appointment-overlap-menu button span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}app-admin-appointment .calendar-appointment-overlap-menu{right:auto;width:260px;max-width:calc(100vw - 32px)}app-admin-appointment .work-ticket-lane{position:relative;overflow:hidden}app-admin-appointment .work-ticket-row{position:absolute;right:4px;left:4px;z-index:1;display:grid;grid-template-rows:minmax(0,40fr) minmax(0,30fr) minmax(0,30fr);gap:2px}app-admin-appointment .work-ticket-half{display:grid;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:2px;min-height:0}app-admin-appointment .work-ticket-nails,app-admin-appointment .work-ticket-pedicure{border-bottom:1px solid rgba(255,255,255,.32)}app-admin-appointment .work-ticket-card{position:relative!important;inset:auto!important;isolation:isolate;align-self:stretch;box-sizing:border-box;height:100%!important;min-height:0!important;overflow:hidden;padding:4px 6px;gap:1px;font-size:.7rem}app-admin-appointment .work-ticket-card strong,app-admin-appointment .work-ticket-card span,app-admin-appointment .work-ticket-card small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}app-admin-appointment .work-ticket-lane:not(.work-ticket-stacks){display:none}app-admin-appointment .work-ticket-stacks{display:block;overflow:visible}app-admin-appointment .work-ticket-slot{position:absolute;right:0;left:0;z-index:1}app-admin-appointment .work-ticket-stack{position:absolute;top:0;bottom:0;display:grid;grid-template-rows:minmax(0,40fr) minmax(0,30fr) minmax(0,30fr);gap:2px;padding:0 2px}app-admin-appointment .work-ticket-pedicure .work-ticket-card .calendar-card-phone,app-admin-appointment .work-ticket-any .work-ticket-card .calendar-card-phone{display:none}app-admin-appointment .calendar-service-card{overflow:hidden}app-admin-appointment .calendar-requested-tech{color:#9bf2be!important;font-size:.8rem;font-weight:900;line-height:1.1}app-admin-appointment .calendar-info-button{position:absolute;z-index:2;top:4px;right:4px;display:grid;place-items:center;width:22px;height:22px;border:1px solid rgba(255,244,207,.7);border-radius:50%;background:#08141e7a;color:#fff4cf;padding:0}app-admin-appointment .calendar-info-button ion-icon{font-size:16px}app-admin-appointment .live-waiting-block,app-admin-appointment .request-block{border-width:2px;border-style:solid}app-admin-appointment .live-waiting-block{border-color:#6aaeff}app-admin-appointment .work-ticket-card.removing-ticket{opacity:.7;border-style:dashed;pointer-events:none}app-admin-appointment .work-ticket-card.removing-ticket:after{animation:none}app-admin-appointment .request-block{border-color:#f0c35f}app-admin-appointment .work-ticket-card.live-waiting-block:after,app-admin-appointment .work-ticket-card.request-block:after{content:"";position:absolute;inset:0;z-index:0;border-radius:inherit;pointer-events:none;opacity:.12;will-change:opacity;animation:calendar-glow-pulse 1.7s ease-in-out infinite}app-admin-appointment .work-ticket-card.live-waiting-block:after{box-shadow:inset 0 0 14px 3px #6aaeffe6}app-admin-appointment .work-ticket-card.request-block:after{box-shadow:inset 0 0 14px 3px #f0c35fe6}app-admin-appointment .work-ticket-card.live-waiting-block.selected-live-service{border:2px solid #fff4cf;outline:2px solid #ffdb75;outline-offset:-3px}app-admin-appointment .work-ticket-card.live-waiting-block.selected-live-service:after{animation:none;opacity:0}app-admin-appointment .calendar-service-card>:not(.calendar-info-button){position:relative;z-index:1}app-admin-appointment .calendar-request-actions{display:none!important}app-admin-appointment .work-ticket-card .calendar-nail-art{display:block;order:-1;margin:-4px -6px 3px;border-bottom:1px solid rgba(255,224,163,.3);background:#ffe0a338;color:#ffe0a3;font-size:.63rem;font-weight:800;padding:2px 6px;text-align:center}@keyframes calendar-glow-pulse{0%,to{opacity:.12}50%{opacity:1}}@media(prefers-reduced-motion:reduce){app-admin-appointment .work-ticket-card.live-waiting-block:after,app-admin-appointment .work-ticket-card.request-block:after{animation:none;opacity:.6}}@media(min-width:701px){app-admin-appointment .appointment-admin.calendar-full{max-width:none;padding-right:24px;padding-left:24px}}.kiosk-content .kiosk-shell .appointment-row{min-height:128px;padding:22px 26px;grid-template-columns:142px minmax(0,1fr) minmax(180px,260px) auto;gap:20px;border:2px solid #b88a38;border-left-width:9px;border-radius:16px;background:#fffaf0;box-shadow:0 10px 24px #3f2f1421;transition:transform .15s ease,box-shadow .15s ease,background-color .15s ease}.kiosk-content .kiosk-shell .appointment-row:not(:disabled):hover,.kiosk-content .kiosk-shell .appointment-row:not(:disabled):focus-visible{transform:translateY(-2px);background:#fff;box-shadow:0 16px 30px #3f2f1433;outline:3px solid rgba(184,138,56,.35);outline-offset:2px}.kiosk-content .kiosk-shell .appointment-row:not(:disabled):active{transform:translateY(0);background:#f3e3bc}.kiosk-content .kiosk-shell .appointment-time{color:#68450a;font:700 34px/1 Georgia,serif}.kiosk-content .kiosk-shell .appointment-detail{gap:9px}.kiosk-content .kiosk-shell .appointment-detail strong{font-size:23px}.kiosk-content .kiosk-shell .appointment-technician{padding-left:16px;border-left:1px solid #dac7a0;color:#5e5344;font-size:14px;line-height:1.35;text-align:left}.kiosk-content .kiosk-shell .appointment-select{min-width:102px;padding:12px 14px;border-radius:999px;background:var(--ink);color:#f3d58f;font:800 13px/1 Inter,sans-serif!important;letter-spacing:.06em;text-align:center;text-transform:uppercase}.kiosk-content .kiosk-shell .appointment-row.checked-in{border-color:#aaa093;border-left-color:#6f685c;background:#ebe7dee6;box-shadow:none}.kiosk-content .kiosk-shell .summary-actions{display:flex;align-items:center;justify-content:space-between;gap:10px}.kiosk-content .kiosk-shell .summary-pending-requirement{width:100%;grid-template-columns:1fr auto;border:0;border-bottom:1px solid #e4dac8;border-radius:0;background:transparent;color:#67470e;font:inherit;text-align:left}.kiosk-content .kiosk-shell .summary-pending-requirement strong{font-size:12px}.kiosk-content .kiosk-shell .summary-pending-requirement b{font-size:10px;text-transform:uppercase}@media(max-width:560px){.kiosk-content .kiosk-shell .appointment-row{grid-template-columns:88px minmax(0,1fr) auto;min-height:116px;padding:16px;gap:12px}.kiosk-content .kiosk-shell .appointment-time{font-size:24px}.kiosk-content .kiosk-shell .appointment-detail strong{font-size:18px}.kiosk-content .kiosk-shell .appointment-technician{grid-column:2/4;padding-left:0;border-left:0;text-align:left}.kiosk-content .kiosk-shell .appointment-select{min-width:76px;padding:10px 8px;font-size:10px!important}}.delete-confirm-alert{--background: #11100c;--color: #f8efd9;--backdrop-opacity: .7}.calendar-bright .calendar-lane{background-image:repeating-linear-gradient(to bottom,transparent 0,transparent 450px,#000 450px,#000 451px)!important;background-color:#fffdd0!important;box-shadow:inset -1px 0 #000!important}.calendar-bright .calendar-block:not(.no-show-block),.calendar-bright .calendar-block:not(.no-show-block) .calendar-block-time,.calendar-bright .calendar-block:not(.no-show-block) .calendar-nail-art,.calendar-bright .calendar-block:not(.no-show-block)>strong{color:#0b1117!important}.calendar-bright .calendar-block:not(.no-show-block)>span{color:#e5d0a3!important}.calendar-bright .request-block{background:#c5ad86;border-color:#9e8056}.calendar-bright .live-waiting-block{background:#8eafcc;border-color:#638aaa}.calendar-bright .live-assigned-block{background:#83adaa;border-color:#5e8985}.calendar-bright .live-complete-block{background:#a7adb5;border-color:#777f89}.calendar-bright .calendar-block:focus-visible{outline-color:#17212b}.calendar-bright .live-complete-block .calendar-block-time{color:#fff8dd!important}.calendar-bright .calendar-request-actions button,.calendar-bright .calendar-request-actions .decline-request{border-color:#17212b99!important;background:#f5f2eab8!important;color:#17212b!important}.calendar-bright .calendar-appointment-overlap-menu{border-color:#5f6670;background:#ebe7dd;box-shadow:0 8px 22px #17212b47}.calendar-bright .calendar-appointment-overlap-menu>strong,.calendar-bright .calendar-appointment-overlap-menu button,.calendar-bright .calendar-appointment-overlap-menu button small{color:#0b1117}.calendar-bright .calendar-appointment-overlap-menu button{border-color:#17212b80}.calendar-bright .calendar-appointment-overlap-menu button.no-show-block,.calendar-bright .calendar-appointment-overlap-menu button.no-show-block small{color:#fff4ef}.delete-confirm-alert .alert-head{color:#f0d992}app-admin-appointment .calendar-assignment-bar{display:grid;grid-template-columns:auto auto auto 1fr;align-items:center;gap:10px;margin-left:0}app-admin-appointment .calendar-assignment-sort{display:flex;gap:5px}app-admin-appointment .calendar-assignment-sort button{border:1px solid rgba(201,162,74,.42);border-radius:7px;background:transparent;color:#f0d992;font:inherit;font-size:.68rem;font-weight:800;padding:4px 7px}app-admin-appointment .calendar-assignment-sort button.active{border-color:#fff4cf;background:#c9a24a3d;color:#fff4cf}app-admin-appointment .calendar-assignment-rows{display:grid;justify-items:start;gap:6px}app-admin-appointment .calendar-assignment-row{display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:6px}app-admin-appointment .calendar-assignment-row small{min-width:66px;color:#cdbf9d;font-size:.64rem;font-weight:900;text-align:right;text-transform:uppercase}app-admin-appointment .calendar-assignment-row button{padding:5px 8px!important;border:1px solid transparent;border-radius:8px;color:#fff!important;font-size:.68rem;font-weight:800}app-admin-appointment .calendar-assignment-row.calendar-assignment-nails button{background:#1769aa!important;border-color:#5ca8df!important}app-admin-appointment .calendar-assignment-row.calendar-assignment-pedicure button{background:#b85f16!important;border-color:#e5a160!important}app-admin-appointment .calendar-assignment-row button.active{box-shadow:0 0 0 2px #fff4cf;filter:brightness(1.18)}app-admin-appointment .calendar-assignment-row button:disabled{cursor:not-allowed;opacity:.45}app-admin-appointment .calendar-assignment-row button.tech-lit:disabled{opacity:1;cursor:default}app-admin-appointment .calendar-assignment-row button.tech-busy:disabled{background:#4d5562!important;border-color:#9ca5b4;color:#e3e7ee!important;opacity:.8}app-admin-appointment .calendar-assignment-row button.tech-busy.tech-overtime:disabled{border-color:#ffd24a;animation:tech-overtime-blink 1.4s ease-in-out infinite}@keyframes tech-overtime-blink{0%,to{opacity:.85}50%{opacity:.3}}@media(prefers-reduced-motion:reduce){app-admin-appointment .calendar-assignment-row button.tech-busy.tech-overtime:disabled{animation:none}}app-admin-appointment .calendar-unassign{justify-self:center;border:1px solid rgba(208,91,79,.72)!important;border-radius:8px;background:transparent!important;color:#f0a79d!important;font-size:.68rem;font-weight:800;padding:4px 7px!important}app-admin-appointment .calendar-unassign:hover:not(:disabled){background:#d05b4f24!important;border-color:#ed9388!important;color:#ffd1ca!important}app-admin-appointment .calendar-unassign:focus-visible{outline:2px solid #ffd1ca;outline-offset:2px}app-admin-appointment .calendar-unassign:disabled{cursor:not-allowed;opacity:.4}app-admin-appointment .admin-header-bar{display:flex;align-items:center;flex-wrap:wrap;gap:6px 14px;padding:4px 8px 4px 0}app-admin-appointment .admin-header-title{color:#f8efd9;font-size:1.1rem;font-weight:700;white-space:nowrap}app-admin-appointment .admin-header-bar .admin-tabs{margin:0!important;gap:6px!important}app-admin-appointment .admin-header-bar .admin-tabs button{font-size:.8rem!important;line-height:1.1;padding:6px 10px!important;white-space:nowrap}app-admin-appointment .calendar-times .calendar-hour .calendar-capacity-pill{border:1px solid rgba(240,217,146,.6)!important;border-radius:999px!important;background:#c9a24a2e!important;color:#fff4cf!important;font:inherit;font-size:.9rem!important;font-weight:900!important;line-height:1;padding:3px 5px!important;white-space:nowrap;cursor:pointer}app-admin-appointment .calendar-times .calendar-hour .calendar-capacity-pill:hover,app-admin-appointment .calendar-times .calendar-hour .calendar-capacity-pill:focus-visible{background:#c9a24a61!important;outline:none}ion-modal:has(.capacity-popup){--width:min(560px, calc(100vw - 32px) );--height:auto;--max-height: calc(100vh - 32px) ;--border-radius:16px}.capacity-popup{display:grid;gap:12px;max-height:calc(100vh - 32px);overflow:auto;padding:18px;background:linear-gradient(145deg,#20170c,#0c0905);color:#f8efd9}.capacity-popup>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;border-bottom:1px solid rgba(201,162,74,.3);padding-bottom:10px}.capacity-popup>header div{display:grid;gap:2px}.capacity-popup>header strong{color:#fff0bf;font-size:1.05rem}.capacity-popup>header small,.capacity-popup .capacity-rule{color:#cdbf9d;font-size:.8rem;line-height:1.4}.capacity-popup>header button{border:1px solid rgba(201,162,74,.5);border-radius:8px;background:transparent;color:#f0d992;font:inherit;padding:6px 10px}.capacity-popup p{margin:0}.capacity-popup ol{display:grid;gap:8px;margin:0;padding:0;list-style:none}.capacity-popup li{display:grid;gap:2px;border:1px solid rgba(201,162,74,.28);border-radius:10px;background:#ffffff08;padding:9px 11px}.capacity-popup li strong{color:#fff4cf}.capacity-popup li span{color:#f0d992;font-size:.85rem}.capacity-popup li small{color:#aa9a7c;font-size:.76rem;line-height:1.35}.capacity-popup .capacity-technicians{color:#d8c89e;font-size:.82rem;line-height:1.4}app-admin-appointment .request-capacity{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px;color:#cdbf9d;font-size:.78rem}app-admin-appointment .request-capacity .capacity-chip{border:1px solid rgba(240,217,146,.5);border-radius:999px;background:#c9a24a24;color:#fff4cf;font-weight:800;padding:2px 8px}app-admin-appointment .work-ticket-card.request-block.request-highlight{outline:3px solid #fff;outline-offset:2px;animation:calendar-request-find .9s ease-in-out 6}@keyframes calendar-request-find{0%,to{box-shadow:0 0 #fff0}50%{box-shadow:0 0 22px 8px #ffffffd9}}app-admin-appointment .calendar-saved-note{margin:0 0 10px;border:1px solid rgba(240,217,146,.5);border-radius:10px;background:#c9a24a1f;color:#f0d992;padding:8px 12px}app-admin-appointment .calendar-heading{justify-content:flex-start;gap:28px}app-admin-appointment .calendar-controls{justify-content:center}@media(min-width:701px)and (max-width:1279px){app-admin-appointment .calendar-heading{flex-wrap:wrap;justify-content:flex-start!important;gap:14px 20px}app-admin-appointment .calendar-assignment-bar{flex:1 1 100%;min-width:0;margin-left:0}app-admin-appointment .calendar-assignment-rows{grid-column:1/-1;min-width:0}app-admin-appointment .calendar-controls{flex:1 1 100%;justify-content:flex-start}}app-admin-appointment .calendar-weekday{color:#f0d992;font-size:.8rem;font-weight:900}app-admin-appointment .selected-live-service{outline:3px solid #fff4cf;outline-offset:1px;z-index:2}app-admin-appointment .pending-live-service{box-shadow:inset 0 0 0 2px #fff4cfb3,0 4px 16px #0000004d}app-admin-appointment .calendar-times,app-admin-appointment .calendar-lane{display:grid;grid-template-rows:53px minmax(0,1fr);min-height:100%;background-position-y:53px!important}app-admin-appointment .calendar-time-header{position:sticky;top:0;z-index:6;height:53px;background:#12100c}app-admin-appointment .calendar-time-timeline,app-admin-appointment .calendar-lane-timeline{position:relative;min-height:0}app-admin-appointment .calendar-lanes{width:max-content!important}app-admin-appointment .calendar-lane>header{box-sizing:border-box;height:53px;min-height:0;align-self:start}app-admin-appointment .work-ticket-lane.work-ticket-stacks>header{position:sticky!important;top:0;z-index:9!important}app-admin-appointment .calendar-lane.requests-lane{background-color:#1c1710!important}.calendar-bright app-admin-appointment .calendar-lane.requests-lane{background-color:#f1e6c4!important}app-admin-appointment .work-ticket-card .calendar-request-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;margin-top:3px}app-admin-appointment .work-ticket-card .calendar-request-actions button{min-width:0;font-size:.58rem;line-height:1.1;padding:3px 2px}app-admin-appointment .work-ticket-stacks{display:grid;overflow:visible}app-admin-appointment .calendar-title-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px}app-admin-appointment .calendar-title-actions h2{margin:0}app-admin-appointment .calendar-scroll{position:relative}app-admin-appointment .calendar-loading-overlay{position:absolute;top:8px;right:12px;z-index:8;border-radius:999px;background:#0c0b09d6;color:#fff4cf;font-size:.72rem;font-weight:900;padding:5px 9px;pointer-events:none}.delete-confirm-alert .alert-message{color:#d8c89e}.delete-confirm-alert .alert-button-role-destructive{color:#ffb36b;font-weight:800}ion-modal.capacity-explanation-modal{--background: #0b0a07;--backdrop-opacity: .72;--border-color: rgba(201, 162, 74, .24);--border-radius: 24px 24px 0 0;--box-shadow: 0 24px 80px rgba(0, 0, 0, .65)}@media(min-width:768px){ion-modal.capacity-explanation-modal{--width: min(760px, calc(100vw - 48px) );--height: min(820px, calc(100vh - 64px) );--border-radius: 24px}}app-appointment .category-copy{display:grid;gap:6px}app-appointment .category-copy .selected-count{margin-top:2px}app-appointment .service-category-grid button.selected,app-appointment .quick-category-switcher button.selected{border-color:#76dca7b8!important;background:linear-gradient(145deg,#76dca72e,#ffffff0a)!important}app-appointment .category-back{display:flex!important;align-items:center;justify-content:center;gap:8px;width:100%!important;min-height:46px;border-color:#f0d992cc!important;background:#c9a24a2e!important;color:#f8efd9;font-weight:800}app-appointment .quick-category-switcher{display:grid;gap:8px;margin-top:6px;border-top:1px solid rgba(201,162,74,.24);padding-top:16px;color:#f0d992}app-appointment .quick-category-switcher>div{display:flex;flex-wrap:wrap;gap:8px}app-appointment .quick-category-switcher button{min-height:38px;border:1px solid rgba(201,162,74,.42);border-radius:999px;background:#c9a24a14;color:#f0d992;padding:7px 12px;font:inherit}app-appointment .quick-category-switcher button.active{border-color:#f0d992;background:#c9a24a3d}app-appointment .service-image-button{align-self:stretch;width:100%;min-width:0;border:0;border-radius:10px;background:#ffffff0a;padding:0;overflow:hidden;cursor:zoom-in}app-appointment .service-image-button img,app-appointment .service-card .service-image-button img{width:100%;height:100%;min-height:72px;object-fit:contain!important;background:#0a0906}app-appointment .service-preview-content{display:grid;place-items:center;min-height:100%;padding:20px;background:#080705}app-appointment .service-preview-content img{max-width:100%;max-height:calc(100vh - 130px);object-fit:contain}app-appointment .estimate-categories,app-appointment .estimate-categories ol{display:grid;gap:8px;margin:0;padding:0;list-style:none}app-appointment .estimate-categories>li{display:grid;gap:8px;border-top:1px solid rgba(201,162,74,.22);padding-top:9px}app-appointment .estimate-main-service{grid-template-columns:minmax(0,1fr) auto!important;gap:5px}app-appointment .estimate-service-edit,app-appointment .estimate-addon-service button{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;width:100%;border:0;background:transparent;color:inherit;padding:0;text-align:left;font:inherit;cursor:pointer}app-appointment .estimate-service-edit span,app-appointment .estimate-addon-service span{min-width:0;overflow-wrap:anywhere}app-appointment .estimate-service-edit small{grid-column:1/-1;color:#bcae8c;font-size:.75rem}app-appointment .estimate-remove{display:grid;place-items:center;width:32px;height:32px;border:0;background:transparent;color:#f0d992;font-size:1.2rem}app-appointment .estimate-addon-service{padding-left:16px!important}app-appointment .estimate-service-edit:hover,app-appointment .estimate-service-edit:focus-visible,app-appointment .estimate-addon-service button:hover,app-appointment .estimate-addon-service button:focus-visible{color:#f0d992;text-decoration:underline}app-appointment .review-services{display:grid;gap:16px}app-appointment .review-service-category{display:grid;gap:9px;border-top:1px solid rgba(201,162,74,.22);padding-top:11px}app-appointment .review-service-group{display:grid;gap:7px}app-appointment .review-service-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 12px;align-items:baseline}app-appointment .booking-shell{height:100%;max-width:none;margin:0;padding:0!important}app-appointment .booking-flow-shell{height:100%;display:grid;grid-template-rows:auto minmax(0,1fr) auto;background:#080705}app-appointment .booking-flow-header{z-index:2;border-bottom:1px solid rgba(201,162,74,.3);background:#0d0c09}app-appointment .booking-flow-brand{display:flex;justify-content:space-between;gap:12px;padding:11px 16px 7px;color:#f0d992;font-size:.8rem}app-appointment .booking-flow-brand span{color:#bcae8c;font-size:.72rem}app-appointment .header-progress{padding:5px 16px 10px}app-appointment .header-service-navigation{display:grid;gap:8px;padding:0 12px 11px}app-appointment .header-browse-categories{display:flex;align-items:center;justify-content:center;gap:7px;min-height:39px;border:1px solid rgba(240,217,146,.72);border-radius:9px;background:#c9a24a29;color:#f8efd9;font:inherit;font-weight:800}app-appointment .header-category-switcher{display:grid;gap:6px;color:#f0d992;font-size:.75rem;font-weight:800}app-appointment .header-category-switcher>div{display:flex;gap:7px;overflow-x:auto;padding-bottom:2px}app-appointment .header-category-switcher button{flex:0 0 auto;min-height:34px;border:1px solid rgba(201,162,74,.42);border-radius:999px;background:#c9a24a14;color:#f0d992;padding:5px 10px;font:inherit}app-appointment .header-category-switcher button.active{border-color:#f0d992;background:#c9a24a40}app-appointment .header-category-switcher button.selected{box-shadow:inset 0 0 0 1px #76dca7a6}app-appointment .booking-flow-body{min-height:0;overflow-y:auto;padding:12px}app-appointment .wizard-main{max-width:900px;margin:0 auto}app-appointment .estimate-footer{position:static!important;display:grid!important;max-height:46vh;border-width:1px 0 0!important;border-radius:0!important;background:#0d0c09!important;box-shadow:0 -12px 28px #0000004d}app-appointment .estimate-dock{display:grid!important;background:transparent!important}app-appointment .estimate-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;border:0;background:transparent;color:#f8efd9;padding:10px 14px;text-align:left;font:inherit}app-appointment .estimate-summary span{display:flex;align-items:center;gap:6px;font-size:.78rem;font-weight:800;text-transform:uppercase}app-appointment .estimate-content{display:grid!important;gap:10px;max-height:30vh;overflow-y:auto;padding:0 14px 12px}app-appointment .estimate-content>h2{display:none}app-appointment .estimate-actions{display:flex!important;align-items:center;gap:8px;border-top:1px solid rgba(201,162,74,.2);padding:5px 10px}app-appointment .estimate-actions ion-button:last-child{margin-left:auto}app-appointment .estimate-grand-total,app-appointment .review-grand-total{display:flex;justify-content:space-between;gap:12px;margin:3px 0 0;border-top:1px solid rgba(201,162,74,.36);padding-top:10px;color:#f0d992;font-weight:800}app-appointment .service-card .service-image-button{align-self:stretch;aspect-ratio:1/1}app-appointment .service-card .service-image-button img{display:block!important;width:100%!important;height:100%!important;min-height:0!important;object-fit:contain!important}app-appointment .service-category-grid button:has(.category-card-image){grid-template-columns:76px minmax(0,1fr) auto!important}app-appointment .category-card-image{width:76px;height:76px;border-radius:10px;object-fit:contain;background:#0a0906}app-appointment .category-heading{display:grid!important;gap:10px}app-appointment .category-heading .category-section-image{width:100%!important;height:min(220px,28vh)!important;border-radius:12px;object-fit:contain!important;background:#0a0906}app-appointment .review-time{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;margin:16px 0 20px!important;border:1px solid rgba(240,217,146,.55);border-radius:12px;background:#c9a24a21;color:#f0d992!important;padding:13px 14px;font-size:1rem;font-weight:800;line-height:1.35}app-appointment .review-services{display:grid!important;gap:14px}app-appointment .review-service-category{display:grid!important;grid-template-columns:1fr!important;gap:9px;border-top:1px solid rgba(201,162,74,.28);padding-top:11px}app-appointment .review-service-category>header{display:flex!important;grid-column:1/-1;justify-content:space-between;gap:12px;color:#f0d992}app-appointment .review-service-group{display:grid!important;grid-template-columns:1fr!important;gap:7px}app-appointment .review-service-row{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:5px 12px;align-items:baseline}app-appointment .review-service-row span{min-width:0;overflow-wrap:anywhere}app-appointment .review-main-service small{grid-column:1/-1;color:#bcae8c;font-size:.8rem}app-appointment .review-service-addon{padding-left:16px;color:#d8c89e}app-appointment .modifier-choice img{object-fit:contain!important;background:#0a0906}app-appointment .estimate-footer{font-size:.84rem}app-appointment .estimate-category-header{display:grid!important;grid-template-columns:minmax(0,1fr) auto 32px!important;align-items:center}app-appointment .estimate-main-service{display:grid!important;grid-template-columns:minmax(0,1fr) auto 32px!important;align-items:center;gap:8px}app-appointment .estimate-service-edit{display:block!important;min-width:0}app-appointment .estimate-service-edit>span{display:grid;gap:2px;min-width:0;overflow-wrap:anywhere}app-appointment .estimate-service-edit small{grid-column:auto!important;font-size:.72rem}app-appointment .estimate-service-price{justify-self:end;white-space:nowrap;font-size:.9rem}app-appointment .estimate-addon-service{display:grid!important;grid-template-columns:minmax(0,1fr) auto 32px!important;align-items:center}app-appointment .estimate-addon-service button{grid-column:1/3}app-appointment .estimate-category-header strong,app-appointment .estimate-addon-service strong{font-size:.82rem}app-appointment .estimate-summary{min-height:48px;border-top:1px solid rgba(255,232,160,.7);border-bottom:1px solid rgba(88,62,9,.72);background:linear-gradient(135deg,#e2ba55,#c89d38)!important;color:#171004!important;padding:10px 15px!important}app-appointment .estimate-summary span{font-size:.86rem!important;letter-spacing:.04em}app-appointment .estimate-summary strong{font-size:1.08rem;letter-spacing:.01em}app-appointment .modifier-choice{grid-template-columns:88px minmax(0,1fr) auto!important;min-height:96px}app-appointment .modifier-choice:not(:has(.modifier-choice-image)){grid-template-columns:minmax(0,1fr) auto!important;min-height:82px}app-appointment .modifier-choice-image{display:grid!important;place-items:center;width:88px;height:76px;border-radius:10px;background:#0a0906;overflow:hidden}app-appointment .modifier-choice-image img{display:block;width:auto!important;height:auto!important;max-width:100%!important;max-height:100%!important;min-width:0!important;min-height:0!important;border-radius:8px;object-fit:contain!important}app-appointment .modifier-choice-copy{display:grid;gap:3px;min-width:0}app-appointment .estimate-category-header,app-appointment .estimate-main-service,app-appointment .estimate-addon-service{grid-template-columns:minmax(0,1fr) 72px 28px!important;column-gap:8px}app-appointment .estimate-category-header strong:last-child{grid-column:2;justify-self:end;text-align:right;white-space:nowrap}app-appointment .estimate-service-price{grid-column:2;width:72px;text-align:right}app-appointment .estimate-remove{grid-column:3;width:28px!important}app-appointment .estimate-addon-service button{display:grid!important;grid-template-columns:minmax(0,1fr) 72px!important;grid-column:1/3;gap:8px}app-appointment .estimate-addon-service button strong{justify-self:end;width:72px;text-align:right;white-space:nowrap}@media(max-width:420px){app-appointment .modifier-choice{grid-template-columns:80px minmax(0,1fr) auto!important}app-appointment .modifier-choice-image{width:80px;height:70px}}app-appointment .header-category-switcher{border:1px solid rgba(240,217,146,.62);border-radius:12px;background:linear-gradient(135deg,#c9a24a38,#c9a24a0f);padding:10px 11px}app-appointment .header-category-switcher>span{display:flex;align-items:center;gap:7px;font-size:.9rem;letter-spacing:.02em}app-appointment .header-category-switcher>span ion-icon{font-size:1.15rem}app-appointment .header-category-switcher button{min-height:40px;padding:7px 14px;font-size:.84rem;font-weight:800}app-appointment .modifier-choice{grid-template-columns:96px minmax(0,1fr) auto!important;min-height:104px}app-appointment .modifier-choice-image{width:96px;height:84px;overflow:visible!important}app-appointment .modifier-choice-image img{width:auto!important;height:auto!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important}app-appointment .estimate-content{font-size:.78rem!important}app-appointment .estimate-content .eyebrow{font-size:.62rem}app-appointment .estimate-category-header,app-appointment .estimate-main-service,app-appointment .estimate-addon-service{grid-template-columns:minmax(0,1fr) 76px 32px!important;column-gap:8px}app-appointment .estimate-category-header strong:last-child,app-appointment .estimate-service-price,app-appointment .estimate-addon-price{grid-column:2;justify-self:end;width:76px;text-align:right;white-space:nowrap;font-size:.8rem!important}app-appointment .estimate-row-spacer{grid-column:3;width:32px}app-appointment .estimate-service-edit{font-size:.8rem!important}app-appointment .estimate-service-edit small{font-size:.68rem!important}app-appointment .estimate-addon-service button{display:block!important;grid-column:1!important;font-size:.78rem!important}app-appointment .estimate-remove{grid-column:3!important;width:32px!important}app-appointment .review-category-total{display:flex;justify-content:space-between;gap:12px;border-top:1px solid rgba(201,162,74,.3);padding-top:8px;color:#f0d992;font-size:.86rem;font-weight:800}app-appointment .service-card.flow-editable{cursor:pointer}app-appointment .service-card.flow-editable:focus-visible{outline:2px solid #f0d992;outline-offset:3px}@media(max-width:420px){app-appointment .modifier-choice{grid-template-columns:88px minmax(0,1fr) auto!important}app-appointment .modifier-choice-image{width:88px;height:78px}}ion-toast.booking-service-toast{--background:#17130a;--color:#f8efd9;--border-color:rgba(201,162,74,.7);--border-style:solid;--border-width:1px;--border-radius:14px;--box-shadow:0 12px 28px rgba(0,0,0,.38)}app-admin-appointment .service-settings-columns,app-admin-appointment .service-role-row{display:grid;grid-template-columns:minmax(180px,1.4fr) minmax(130px,.8fr) minmax(105px,.6fr) minmax(145px,.8fr);align-items:end;gap:12px}app-admin-appointment .service-settings-columns{color:#c9a24a;font-size:.72rem;font-weight:900;letter-spacing:.08em;padding:0 0 4px;text-transform:uppercase}app-admin-appointment .service-role-row label{margin:0}app-admin-appointment .service-role-row output{color:#d8c89e;padding:9px 0}@media(max-width:700px){app-admin-appointment .service-settings-columns{display:none}app-admin-appointment .service-role-row{grid-template-columns:1fr 1fr}app-admin-appointment .service-role-row>strong{grid-column:1/-1}}app-admin-appointment .multi-request-shell{display:grid;min-height:100%;place-items:center;padding:16px}app-admin-appointment .multi-request-content{display:grid;gap:13px;width:min(360px,100%);padding:20px;border:1px solid rgba(240,217,146,.65);border-radius:15px;background:linear-gradient(145deg,#20170c,#0c0905);color:#fff4df;box-shadow:0 24px 60px #00000094}app-admin-appointment .multi-request-content h2,app-admin-appointment .multi-request-content p{margin:0}app-admin-appointment .multi-request-content h2{font:1.22rem Georgia,serif;color:#f0d992}app-admin-appointment .multi-request-content p{color:#dfd0ae;line-height:1.42}app-admin-appointment .multi-request-content>div{display:flex;justify-content:flex-end;gap:8px}app-admin-appointment .debug-dashboard{display:grid;gap:18px;margin:16px 0 22px}app-admin-appointment .debug-section{display:grid;gap:14px;border:1px solid rgba(201,162,74,.28);border-radius:16px;background:#c9a24a0f;padding:16px}app-admin-appointment .debug-section-heading{border-bottom:1px solid rgba(201,162,74,.2);padding-bottom:13px}app-admin-appointment .debug-section-heading .eyebrow{margin:0 0 4px}app-admin-appointment .debug-section-heading h3{margin:0}app-admin-appointment .debug-section-heading p:last-child{margin:6px 0 0;max-width:680px}app-admin-appointment .debug-request-list,app-admin-appointment .diagnostic-list{display:grid;gap:12px}app-admin-appointment .debug-request-card,app-admin-appointment .diagnostic-card{display:grid;gap:12px;border:1px solid rgba(201,162,74,.3);border-radius:13px;background:#0000002e;padding:14px}app-admin-appointment .debug-request-card.hidden{display:none}app-admin-appointment .debug-request-card>header,app-admin-appointment .debug-command>header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:10px}app-admin-appointment .debug-request-card>header>div{display:grid;gap:3px;min-width:0}app-admin-appointment .debug-request-card>header>div>span{color:#cdbf9d;font-size:.8rem}app-admin-appointment .debug-recommendation{margin:0;border-left:3px solid #c9a24a;background:#c9a24a14;color:#f0d992!important;line-height:1.45;padding:9px 11px}app-admin-appointment .debug-metadata{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:9px 14px;margin:0}app-admin-appointment .debug-metadata>div{display:grid;gap:3px;min-width:0}app-admin-appointment .debug-metadata dt{color:#a99a77;font-size:.68rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}app-admin-appointment .debug-metadata dd{margin:0;color:#f8efd9;font-size:.82rem;line-height:1.35;overflow-wrap:anywhere}app-admin-appointment .debug-command{display:grid;gap:11px;border-top:1px solid rgba(201,162,74,.2);padding-top:12px}app-admin-appointment .debug-command h4,app-admin-appointment .diagnostic-card h4{margin:0;color:#f0d992;font:1rem Georgia,serif}app-admin-appointment .debug-command>header>span{border:1px solid rgba(201,162,74,.32);border-radius:999px;color:#d8c89e;font-size:.72rem;font-weight:800;padding:4px 8px;overflow-wrap:anywhere}app-admin-appointment .debug-command-reason{display:grid;gap:4px;margin:0;color:#cdbf9d!important;line-height:1.4;overflow-wrap:anywhere}app-admin-appointment .debug-command-reason strong{color:#f0d992}app-admin-appointment .diagnostic-card{background:#ffffff06}app-admin-appointment .debug-empty{margin:0;border:1px dashed rgba(201,162,74,.35);border-radius:10px;color:#cdbf9d!important;padding:12px}@media(max-width:700px){app-admin-appointment .debug-section{padding:13px}app-admin-appointment .debug-metadata{grid-template-columns:1fr}}app-admin-appointment ion-modal.group-editor-modal{--width:min(760px, calc(100vw - 36px) );--height:min(820px, calc(100vh - 48px) );--border-radius:18px}app-admin-appointment .group-editor{display:grid;gap:18px;padding:32px;max-width:720px;margin:auto}app-admin-appointment .group-editor p{margin:0;color:#cdbf9d;line-height:1.45}app-admin-appointment .group-editor label{display:grid;gap:6px;color:#f0d992;font-weight:700}app-admin-appointment .group-editor-time{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.group-editor-request{display:grid;gap:13px;border:1px solid rgba(201,162,74,.28);border-radius:14px;background:#ffffff06;padding:15px}.group-editor-request>header{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid rgba(201,162,74,.2);padding-bottom:11px}.group-editor-request>header strong{color:#fff0bf}.group-editor-request>header small{color:#cdbf9d}.group-editor-request.removed{opacity:.65}.group-editor-service{display:grid;gap:9px;border-top:1px solid rgba(201,162,74,.14);padding-top:12px}.group-editor-addon{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 0 7px 12px;color:#d8c89e}.group-editor-addon button,.group-editor-request button{border:1px solid rgba(213,138,90,.65);border-radius:7px;background:#d58a5a1f;color:#ffe0c6;padding:6px 9px;font:inherit}.group-editor>div:last-child{display:flex;justify-content:flex-end;gap:10px;border-top:1px solid rgba(201,162,74,.24);padding-top:16px}.group-editor>div:last-child ion-button:last-child{--background:#d8b35a;--color:#171109;font-weight:900}app-admin-appointment .multi-request-shell{min-height:0;padding:12px}app-admin-appointment .multi-request-content{margin:auto;text-align:center}app-admin-appointment .multi-request-content>div{justify-content:center}.calendar-nail-art{color:#ffe0a3;font-size:.68rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.approve-calendar-request{border:1px solid rgba(109,220,180,.78)!important;border-radius:8px;background:#4fb1843d!important;color:#d8ffe9!important;padding:7px 10px}@media(max-width:560px){app-admin-appointment .group-editor{padding:22px}.group-editor-time{grid-template-columns:1fr}.group-editor-request>header{align-items:flex-start;flex-direction:column}}ion-modal.group-editor-modal{--width:min(760px, calc(100vw - 36px) );--height:min(820px, calc(100vh - 48px) );--border-radius:18px}.group-editor{display:grid;gap:18px;max-width:720px;margin:auto;padding:clamp(20px,4vw,32px)}.group-editor p{margin:0;color:#cdbf9d;line-height:1.45}.group-editor label{display:grid;gap:6px;color:#f0d992;font-weight:700}.group-editor-time{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}ion-modal:has(.multi-request-content){--width:min(440px, calc(100vw - 32px) );--height:auto;--max-height: calc(100vh - 32px) ;--border-radius:18px}.multi-request-shell{display:grid;min-height:0;place-items:center;padding:24px}.multi-request-content{display:grid;gap:13px;width:min(360px,100%);margin:auto;padding:24px;border:1px solid rgba(240,217,146,.65);border-radius:15px;background:linear-gradient(145deg,#20170c,#0c0905);color:#fff4df;box-shadow:0 24px 60px #00000094;text-align:center}.multi-request-content h2,.multi-request-content p{margin:0}.multi-request-content h2{font:1.22rem Georgia,serif;color:#f0d992}.multi-request-content p{color:#dfd0ae;line-height:1.42}.multi-request-content>div{display:flex;justify-content:center;gap:8px}@media(max-width:700px){ion-modal.group-editor-modal{--width:100%;--height:100%;--border-radius:0}.group-editor{padding:20px}}.calendar-card-note{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-size:.72rem;font-style:italic;line-height:1.2;margin-bottom:2px;opacity:.85}.note-added-pill{display:inline-block;border:1px solid rgba(120,170,220,.62);border-radius:999px;background:#78aadc29;color:#bcd9f5;padding:7px 11px;font-size:.72rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase;white-space:nowrap}.request-note{margin:4px 0;padding:6px 10px;border-left:3px solid rgba(120,170,220,.6);background:#78aadc14}.request-import-warning{margin:6px 0;padding:6px 10px;border-radius:6px;background:#e6b43c24;color:#e6c670;font-size:.85rem}.request-import-warning.stuck{background:#dc5a4629;color:#f0a090;font-weight:600}app-admin-appointment .pos-block.request-highlight{outline:3px solid #fff;outline-offset:2px;animation:calendar-request-find .9s ease-in-out 6}.existing-booking-alert{display:grid;gap:10px;margin-bottom:16px;padding:14px 16px;border:2px solid #d9822b;border-radius:12px;background:#d9822b24}.existing-booking-alert h3{margin:0;color:#f2a65a;font-size:1.1rem}.existing-booking-alert p{margin:0}.existing-booking-alert .existing-booking-item{display:grid;gap:8px;padding:10px 12px;border-radius:10px;background:#0000002e}.existing-booking-alert .existing-booking-item small{display:block;opacity:.85}.existing-booking-alert .existing-booking-actions{display:flex;flex-wrap:wrap;gap:8px}.existing-booking-alert .existing-booking-status{font-weight:700}app-appointment .header-signin-link{margin-left:10px;padding:0;border:0;background:transparent;color:#f0d992;font:inherit;text-decoration:underline}app-appointment .member-bar{display:grid;gap:8px;margin-bottom:10px;padding:8px 10px;border:1px solid rgba(201,162,74,.4);border-radius:12px;background:#c9a24a17}app-appointment .member-bar-row{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:36px}app-appointment .member-bar-toggle{flex:1;min-width:0;overflow:hidden;padding:0;border:0;background:transparent;color:#f8efd9;font:inherit;text-align:left;text-overflow:ellipsis;white-space:nowrap}app-appointment .member-badge{margin-left:8px;padding:2px 8px;border-radius:999px;background:#d9822b40;color:#f2a65a;font-size:.72rem;font-weight:700}app-appointment .member-bar-panel{display:grid;gap:10px;max-height:40vh;overflow-y:auto}app-appointment .member-bar-panel h4{margin:0 0 4px;color:#f0d992}app-appointment .member-bar-panel p{margin:2px 0}app-appointment .member-note{color:#cdbf9d;font-size:.8rem}app-appointment .member-link{color:#f0d992;font-size:.85rem}app-appointment .existing-booking-reminder{margin:0 0 12px;padding:8px 12px;border:2px solid #d9822b;border-radius:10px;background:#d9822b24;font-weight:700}.welcome-sheet-body{display:grid;gap:12px;padding:20px 18px 28px;color:#f8efd9}.welcome-sheet-body h2{margin:0}.welcome-sheet-body ul{margin:0;padding-left:20px}.customer-sign-in{display:grid;gap:10px}.customer-sign-in label{display:grid;gap:4px}.customer-sign-in input{padding:10px 12px;border:1px solid rgba(201,162,74,.45);border-radius:10px;background:#0d0c09;color:#f8efd9;font-size:1rem}.customer-sign-in-hint{margin:0;color:#cdbf9d;font-size:.85rem}.customer-sign-in-error{margin:0;color:#f0a090;font-weight:600}app-admin-appointment .debug-section>.debug-section-heading{cursor:pointer;position:relative;padding-right:28px}app-admin-appointment .debug-section>.debug-section-heading:after{content:"\25be";position:absolute;top:2px;right:4px;color:#f0d992;transition:transform .15s ease}app-admin-appointment .debug-section.collapsed>.debug-section-heading:after{transform:rotate(-90deg)}app-admin-appointment .debug-section.collapsed>:not(.debug-section-heading){display:none!important}app-admin-appointment .calendar-block.stacked{box-shadow:-4px 0 8px #0006,0 4px 10px #00000038}app-admin-appointment .calendar-card-footer{display:flex;align-items:center;justify-content:space-between;gap:6px}app-admin-appointment .calendar-pos-icon{flex:none;width:13px;height:13px;margin-left:auto;opacity:.8;pointer-events:none}app-admin-appointment .calendar-nav-button{display:inline-flex;align-items:center;justify-content:center;min-width:36px;padding:6px 8px}app-admin-appointment .calendar-nav-button ion-icon{font-size:1.1rem}app-admin-appointment .calendar-now-chip{border-color:#ffdb75b3;background:#ffdb7529;color:#ffe9a8}app-admin-appointment .calendar-ticket-line{display:flex;align-items:baseline;gap:6px;min-width:0}app-admin-appointment .calendar-ticket-line .calendar-card-note{-webkit-line-clamp:1;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}app-admin-appointment .service-bulk-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:8px;padding:8px 10px;border:1px solid rgba(201,162,74,.35);border-radius:10px;background:#c9a24a14}app-admin-appointment .service-bulk-bar select{padding:6px 8px}app-admin-appointment .service-role-row strong input[type=checkbox]{margin-right:6px}.request-modal .pos-appointment-details .inline-row{display:flex!important;flex-wrap:wrap;align-items:baseline;gap:6px}.request-modal .pos-appointment-details .inline-row dt:after{content:":"}.request-modal .pos-appointment-details .inline-controls{display:flex;flex-wrap:nowrap;align-items:center;gap:8px;margin:0}.request-modal .pos-appointment-details .ticket-note-input{flex:1 1 auto;min-width:0;max-width:220px;padding:6px 8px}.request-modal .pos-appointment-details .ticket-seat .inline-controls label{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.request-modal .pos-appointment-details .ticket-seat .inline-controls select{min-width:0;max-width:150px}.request-modal .ticket-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.request-modal .pos-appointment-details .ticket-assign .assign-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:4px}.request-modal .pos-appointment-details .ticket-assign .assign-row small{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.request-modal .pos-appointment-details .ticket-assign .assign-row select{flex:0 0 auto;max-width:55%}app-admin-appointment .tech-lane-card{overflow:hidden!important}app-admin-appointment .tech-lane-card .calendar-block-time{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}app-admin-appointment .tech-lane-card.card-small,app-admin-appointment .tech-lane-card.card-tiny{padding:4px 6px;gap:1px}app-admin-appointment .tech-lane-card.card-small>strong,app-admin-appointment .tech-lane-card.card-small>span,app-admin-appointment .tech-lane-card.card-tiny>strong,app-admin-appointment .tech-lane-card.card-tiny>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}app-admin-appointment .tech-lane-card.card-small>span:not(.calendar-ticket-line):not(.calendar-requested-tech)~span:not(.calendar-ticket-line){display:none}app-admin-appointment .tech-lane-card.card-tiny>span:not(.calendar-ticket-line):not(.calendar-requested-tech)~span:not(.calendar-ticket-line),app-admin-appointment .tech-lane-card.card-tiny>.calendar-requested-tech,app-admin-appointment .tech-lane-card.card-tiny>.calendar-card-note,app-admin-appointment .tech-lane-card.card-tiny .calendar-ticket-line,app-admin-appointment .tech-lane-card.card-tiny .calendar-pos-icon{display:none}app-admin-appointment .tech-lane-card.card-tiny{flex-direction:row;flex-wrap:wrap;align-items:baseline;align-content:flex-start;gap:0 6px;font-size:.74rem;line-height:1.2}app-admin-appointment .tech-lane-card.card-tiny>*{min-width:0;margin:0}app-admin-appointment .tech-lane-card.card-tiny .calendar-card-footer{display:inline}app-admin-appointment .tech-lane-card.card-tiny:has(>.calendar-info-button){padding-right:24px}app-admin-appointment .tech-lane-card.card-small:has(>.calendar-info-button){padding-right:28px}app-admin-appointment .tech-lane-card.card-small .calendar-info-button{width:20px;height:20px;top:3px;right:3px}app-admin-appointment .tech-lane-card.card-small .calendar-info-button ion-icon{font-size:14px}app-admin-appointment .tech-lane-card.card-tiny .calendar-info-button ion-icon{font-size:12px}app-admin-appointment .calendar-assignment-bar{grid-template-columns:auto minmax(0,1fr);grid-template-areas:"sort rows" "unassign rows";align-items:start;row-gap:6px}app-admin-appointment .calendar-assignment-bar .calendar-assignment-sort{grid-area:sort}app-admin-appointment .calendar-assignment-bar .calendar-assignment-actions{grid-area:unassign;display:flex;flex-direction:column;align-items:flex-start;gap:4px;justify-self:start}app-admin-appointment .calendar-assignment-bar .calendar-suggest{border:1px solid #f0cf7a;border-radius:7px;background:#c9a24a33;color:#fff4cf;font:inherit;font-size:.64rem;font-weight:800;padding:3px 7px;cursor:pointer}app-admin-appointment .calendar-suggest:disabled{cursor:not-allowed;opacity:.4}app-admin-appointment .calendar-suggest-fold{display:none}@media(max-width:1279px){app-admin-appointment .calendar-assignment-bar .calendar-suggest{display:none}app-admin-appointment .calendar-suggest-fold{display:inline-block;font-size:.8rem;padding:6px 10px;border-radius:999px}}app-admin-appointment .calendar-assignment-bar .calendar-assignment-rows{grid-area:rows}app-admin-appointment .calendar-assignment-bar .calendar-unpaid-row{grid-column:1/-1;display:flex;align-items:center;flex-wrap:wrap;gap:6px}app-admin-appointment .calendar-unpaid-row small{min-width:66px;color:#cdbf9d;font-size:.64rem;font-weight:900;text-align:right;text-transform:uppercase}app-admin-appointment .calendar-unpaid-row button{padding:5px 10px!important;border:1px solid #f0cf7a;border-radius:8px;background:#c9962a!important;color:#1a1409!important;font-size:.7rem;font-weight:800;cursor:pointer}app-admin-appointment .calendar-unpaid-row button:hover:not(:disabled){filter:brightness(1.12)}app-admin-appointment .calendar-unpaid-row button:disabled{cursor:not-allowed;opacity:.55}.live-debug,.live-debug *{user-select:text;-webkit-user-select:text}app-admin-appointment .debug-dashboard,app-admin-appointment .debug-dashboard *:not(ion-button):not(ion-button *){user-select:text;-webkit-user-select:text}app-admin-appointment .debug-dashboard button,app-admin-appointment .debug-dashboard summary{user-select:text;-webkit-user-select:text;cursor:pointer}.live-debug .debug-card{display:block;margin-top:12px;padding:10px 12px;border:1px solid rgba(255,196,87,.25);border-radius:8px;background:#0000002e;line-height:1.5}.live-debug header{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px}.live-debug header strong{font-size:1.05rem;color:#f6e3a8}.live-debug .debug-state{font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;opacity:.8}.live-debug .debug-total{margin-left:auto;font-weight:700}.live-debug p{margin:4px 0;font-size:.92rem}.live-debug .debug-rule{padding:6px 8px;border-left:3px solid #8aa;background:#ffffff0d}.live-debug .debug-rule[data-kind=manual]{border-color:#e8a33d}.live-debug .debug-rule[data-kind=pos]{border-color:#6fb1e6}.live-debug .debug-rule[data-kind=rate]{border-color:#6cc08b}.live-debug .debug-rule[data-kind=fallback]{border-color:#c77}.live-debug .debug-math,.live-debug .debug-id{font-family:ui-monospace,Consolas,monospace;font-size:.82rem}.live-debug .debug-items{width:100%;border-collapse:collapse;margin:6px 0}.live-debug .debug-items td{padding:3px 8px 3px 0;vertical-align:top;border-top:1px solid rgba(255,255,255,.07)}.live-debug .debug-price{text-align:right;white-space:nowrap}.live-debug .debug-id{opacity:.6;word-break:break-all}.live-debug .debug-rates{font-size:.8rem;opacity:.65}.admin-tabs .tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;margin-left:6px;padding:0 6px;border-radius:10px;background:#e5484d;color:#fff;font-size:.75rem;font-weight:800;line-height:1;animation:tab-badge-pulse 1.6s ease-in-out infinite}@keyframes tab-badge-pulse{0%,to{transform:scale(1);box-shadow:0 0 #e5484d99}50%{transform:scale(1.18);box-shadow:0 0 0 7px #e5484d00}}@media(prefers-reduced-motion:reduce){.admin-tabs .tab-badge{animation:none}}.technician-duration-editor .tech-save-button{min-width:12rem;transition:background-color .2s,color .2s}.technician-duration-editor .tech-save-button[data-state=saved]{background:#2f8f5b;color:#fff}.technician-duration-editor .tech-save-button[data-state=error]{background:#c0392b;color:#fff}.technician-duration-editor .tech-save-button[data-state=none]{opacity:.75}app-admin-appointment .tech-lane-card>.calendar-block-time,app-admin-appointment .tech-lane-card>strong,app-admin-appointment .tech-lane-card>strong+span,app-admin-appointment .tech-lane-card>.calendar-ticket-line,app-admin-appointment .tech-lane-card>.calendar-requested-tech,app-admin-appointment .tech-lane-card>.calendar-card-footer{flex-shrink:0}app-admin-appointment .tech-lane-card>strong+span+span{flex-shrink:1;min-height:0;overflow:hidden}app-admin-appointment .calendar-info-button{border:0;background:transparent;width:24px;height:24px;top:3px;right:3px}app-admin-appointment .calendar-info-button ion-icon{font-size:22px;filter:drop-shadow(0 0 2px rgba(0,0,0,.45))}app-admin-appointment .tech-lane-card.card-small .calendar-info-button{width:20px;height:20px}app-admin-appointment .tech-lane-card.card-small .calendar-info-button ion-icon{font-size:18px}app-admin-appointment .tech-lane-card.card-tiny .calendar-info-button{width:16px;height:16px;top:2px;right:2px}app-admin-appointment .tech-lane-card.card-tiny .calendar-info-button ion-icon{font-size:15px}app-admin-appointment .seat-chip{flex:0 0 auto;padding:0 5px;border-radius:6px;background:#fff4cf;color:#3a2a00;font-size:.68rem;font-weight:800;line-height:1.3;white-space:nowrap;box-shadow:0 0 0 1px #00000040}app-admin-appointment .seat-chip[data-kind=chair]{background:#d6ecff;color:#0b2a44}app-admin-appointment .calendar-block button.calendar-info-button{border:0!important;background:transparent!important;box-shadow:none!important;padding:0!important;border-radius:50%!important}app-admin-appointment .calendar-ticket-line{align-items:center}app-admin-appointment .calendar-ticket-line>strong{line-height:1.2}app-admin-appointment .seat-chip{align-self:center;line-height:1.25}app-admin-appointment .calendar-block>.calendar-card-note,app-admin-appointment .calendar-ticket-line .calendar-card-note{display:none}app-admin-appointment .tech-lane-card{container-type:inline-size;container-name:lane-card}@container lane-card (max-width: 210px){.calendar-block-time .time-status{display:none}}@container lane-card (max-width: 165px){.calendar-block-time .time-min{display:none}}.request-modal.ticket-dialog{gap:10px;max-width:640px;margin:0 auto;padding:12px clamp(12px,2.5vw,20px) 20px;box-sizing:border-box}.request-modal.ticket-dialog .request-modal-heading{padding-bottom:8px}.request-modal.ticket-dialog h2{margin:2px 0;font-size:1.35rem;line-height:1.2}.request-modal.ticket-dialog .pos-appointment-details{gap:0;margin:0}.request-modal.ticket-dialog .pos-appointment-details>div{padding:7px 0}.request-modal.ticket-dialog .pos-appointment-details dt{font-size:.72rem}.request-modal.ticket-dialog .pos-appointment-details dd{margin:2px 0 0;min-width:0;overflow-wrap:anywhere}.request-modal.ticket-dialog .pos-appointment-details dd>div:not(.assign-row){display:flex;flex-wrap:wrap;align-items:baseline;gap:1px 8px;padding:3px 0}.request-modal.ticket-dialog .pos-appointment-details dd>div small{display:inline;opacity:.8}.request-modal.ticket-dialog .pos-appointment-details dd>div small:last-child{margin-left:auto;opacity:1;font-weight:700}.text-assistant{display:grid;gap:8px;-webkit-user-select:text;user-select:text}.text-assistant h4{margin:8px 0 0;font-size:.9rem;text-transform:uppercase;opacity:.75}.text-assistant p{margin:2px 0}.text-assistant .inline-controls{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.text-assistant .inline-controls input{flex:1 1 220px;min-width:0;padding:6px 8px}.text-assistant-token code{word-break:break-all}.text-assistant-chat p,.text-assistant-conversation p{padding:3px 8px;border-left:3px solid rgba(255,196,87,.5)}.text-assistant-chat p.you,.text-assistant-conversation p.you{border-left-color:#6fb1e6}.text-assistant-conversation{padding:8px 0;border-top:1px solid rgba(255,255,255,.1)}.text-assistant-provider{padding:6px 0;border-top:1px solid rgba(255,255,255,.1)}.text-assistant-choice{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.text-assistant-provider .inline-controls input[type=text]{flex:0 1 160px}.booking-health{display:grid;gap:8px;-webkit-user-select:text;user-select:text}.booking-health h4{margin:10px 0 0;font-size:.9rem;text-transform:uppercase;opacity:.75}.health-pill{display:inline-block;padding:1px 9px;border-radius:999px;font-weight:800;font-size:.8rem;background:#55606b;color:#fff}.health-pill[data-level=ok]{background:#2f8f5b}.health-pill[data-level=warn]{background:#c98a1b}.health-pill[data-level=fail]{background:#c0392b}.health-checks{list-style:none;margin:0;padding:0;display:grid;gap:4px}.health-checks li{display:grid;gap:1px;padding:6px 10px;border-left:4px solid #55606b;background:#ffffff0a}.health-checks li span,.health-checks li small{opacity:.85;font-size:.88rem}.health-checks li[data-level=ok]{border-left-color:#2f8f5b}.health-checks li[data-level=warn]{border-left-color:#c98a1b}.health-checks li[data-level=fail]{border-left-color:#c0392b}.health-days{display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:6px}.health-day{display:grid;gap:1px;padding:6px 8px;border-radius:8px;border:1px solid rgba(255,255,255,.15);background:#2f8f5b2e;font-size:.85rem}.health-day[data-level=closed]{background:#ffffff0a;opacity:.6}.health-day[data-level=info]{background:#6fb1e62e}.health-day[data-level=warn]{background:#c98a1b47}.health-day[data-level=fail]{background:#c0392b59}.health-hint{margin:2px 0;font-size:.85rem;opacity:.8}.health-history{display:flex;flex-wrap:wrap;gap:3px}.health-history i{width:10px;height:18px;border-radius:2px;background:#55606b}.health-history i[data-level=ok]{background:#2f8f5b}.health-history i[data-level=warn]{background:#c98a1b}.health-history i[data-level=fail]{background:#c0392b}.health-day b{text-transform:capitalize}.health-day{cursor:pointer;text-align:left;color:inherit;font:inherit}.health-day.selected{outline:2px solid #ffdb75;outline-offset:1px}.health-slot-chips{display:flex;flex-wrap:wrap;gap:4px}.health-slot{padding:3px 8px;border-radius:6px;font-size:.8rem;font-weight:700;border:1px solid transparent}.health-slot[data-state=open],.health-key[data-state=open]{background:#2f8f5b;color:#fff}.health-slot[data-state=expected],.health-key[data-state=expected]{background:#ffffff1a;color:#ffffffa6}.health-slot[data-state=blocked],.health-key[data-state=blocked]{background:#c0392b;color:#fff}.health-key{display:inline-block;width:10px;height:10px;border-radius:2px;margin:0 3px 0 8px;vertical-align:baseline}.review-progress{margin-top:16px;padding:10px 12px;border-radius:10px;background:#c9a24a1f;border:1px solid rgba(201,162,74,.4);font-size:.92rem;line-height:1.4}.review-progress.attention{background:#e07a1e29;border-color:#e07a1e}.review-progress span{display:block}.review-progress button{margin-left:6px;padding:2px 10px;border-radius:8px;border:1px solid currentColor;background:transparent;color:inherit;font:inherit;font-weight:700}app-appointment .disclaimer-consent.review-missing{border-color:#e07a1e;box-shadow:0 0 0 2px #e07a1e59}app-appointment .disclaimer-consent.review-missing>span:after{content:" (required)";font-weight:800;color:#e07a1e}.review-submit.review-blocked{opacity:.55}.tech-avail-list{display:grid;gap:12px}.tech-avail{padding:12px 14px;border:1px solid rgba(201,162,74,.3);border-radius:12px;background:#ffffff08}.tech-avail.off-booking{opacity:.72}.tech-avail>header{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin-bottom:10px}.tech-avail>header strong{font-size:1.1rem;color:#f6e3a8}.tech-avail>header small{opacity:.6}.tech-avail-pill{padding:2px 10px;border-radius:999px;font-size:.75rem;font-weight:800;background:#ffffff1f}.tech-avail-pill[data-on=true]{background:#2f8f5b;color:#fff}.tech-avail-count{margin-left:auto;font-size:.8rem;opacity:.8}.tech-avail-count+.tech-avail-count{margin-left:0}.tech-avail-count.warn{color:#f0b04a;opacity:1;font-weight:700}.tech-avail-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.tech-avail-week>div{display:grid;align-content:start;gap:2px;padding:6px 4px;border-radius:8px;text-align:center;font-size:.78rem;line-height:1.25;background:#ffffff0a;color:#ffffff73}.tech-avail-week>div.works{background:#2f8f5b33;color:#e9f6ee}.tech-avail-week>div.today{outline:2px solid #ffdb75;outline-offset:-1px}.tech-avail-week b{font-size:.75rem;text-transform:uppercase;letter-spacing:.04em}.tech-avail-time-off{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:10px 0 0;font-size:.85rem}.tech-avail-time-off b{font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;opacity:.7;margin-right:2px}.tech-avail-time-off span{padding:1px 8px;border-radius:6px;background:#e07a1e38}.tech-avail-time-off em{opacity:.6}.tech-avail-fields{margin-top:8px;font-size:.8rem;opacity:.75}.tech-avail-fields summary{cursor:pointer}.tech-avail-fields p{margin:6px 0 0;word-break:break-word}@media(max-width:640px){.tech-avail-week{grid-template-columns:repeat(4,minmax(0,1fr))}}app-admin-appointment .request-edit-category>h3{display:flex;align-items:baseline;gap:8px;margin:18px 0 8px}app-admin-appointment .request-edit-category>h3 small{opacity:.6;font-size:.8rem;font-weight:400}app-admin-appointment .ticket-categories{margin:0 0 14px;padding:12px;border:1px solid rgba(201,162,74,.35);border-radius:12px;background:#c9a24a0f}app-admin-appointment .ticket-categories h3{margin:0 0 8px;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px}app-admin-appointment .ticket-categories h3 small{opacity:.65;font-size:.78rem;font-weight:400}app-admin-appointment .ticket-category-list{list-style:none;margin:0 0 10px;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,230px),1fr));gap:8px}app-admin-appointment .ticket-category{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px;padding:8px 10px;border:1px solid rgba(201,162,74,.3);border-radius:10px}app-admin-appointment .ticket-category.built-in span{font-size:.78rem;opacity:.7}app-admin-appointment .ticket-category:not(.built-in){grid-template-columns:minmax(0,1fr) minmax(0,1fr)}app-admin-appointment .ticket-category:not(.built-in) input,app-admin-appointment .ticket-category:not(.built-in) select,app-admin-appointment .ticket-category-add input,app-admin-appointment .ticket-category-add select{min-width:0;width:100%;box-sizing:border-box;padding:7px 8px}app-admin-appointment .ticket-category-remove{grid-column:1/-1;justify-self:end;border:0;background:transparent;color:#f0a0a0;font-weight:700;padding:4px 6px}app-admin-appointment .ticket-category-add{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) auto;gap:8px;align-items:center}app-admin-appointment .svc-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:10px}app-admin-appointment .svc-card{display:grid;gap:10px;padding:12px;border:1px solid rgba(201,162,74,.28);border-radius:12px;background:#ffffff08;min-width:0}app-admin-appointment .svc-card.selected{border-color:#c9a24a;background:#c9a24a1f}app-admin-appointment .svc-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;min-width:0}app-admin-appointment .svc-pick{display:flex;align-items:flex-start;gap:10px;min-width:0;margin:0;cursor:pointer}app-admin-appointment .svc-pick input{flex:0 0 auto;width:20px;height:20px;margin:1px 0 0;accent-color:#c9a24a}app-admin-appointment .svc-name{font-weight:700;line-height:1.25;overflow-wrap:anywhere}app-admin-appointment .svc-badge{flex:0 0 auto;padding:2px 9px;border-radius:999px;font-size:.7rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;border:1px solid rgba(201,162,74,.5)}app-admin-appointment .svc-badge[data-role=main]{background:#c9a24a40}app-admin-appointment .svc-badge[data-role=addon]{background:#50a0dc33;border-color:#50a0dc99}app-admin-appointment .svc-badge[data-role=unclassified]{opacity:.65}app-admin-appointment .svc-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:8px 10px}app-admin-appointment .svc-fields label{display:grid;gap:3px;min-width:0;margin:0}app-admin-appointment .svc-fields label>span{font-size:.7rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;opacity:.75}app-admin-appointment .svc-fields select,app-admin-appointment .svc-fields input{width:100%;min-width:0;box-sizing:border-box;padding:8px}app-admin-appointment .svc-fields output{display:flex;align-items:center;min-height:36px;font-weight:700}app-admin-appointment .svc-switch{display:flex;align-items:center;gap:10px;margin:0;padding:8px 10px;border-radius:10px;background:#ffffff0a;cursor:pointer}app-admin-appointment .svc-switch input{position:absolute;opacity:0;width:1px;height:1px}app-admin-appointment .svc-switch-track{position:relative;flex:0 0 auto;width:40px;height:22px;border-radius:999px;background:#ffffff38;transition:background .15s}app-admin-appointment .svc-switch-track:after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .15s}app-admin-appointment .svc-switch input:checked+.svc-switch-track{background:#c9a24a}app-admin-appointment .svc-switch input:checked+.svc-switch-track:after{transform:translate(18px)}app-admin-appointment .svc-switch input:focus-visible+.svc-switch-track{outline:2px solid #f0d992;outline-offset:2px}app-admin-appointment .svc-switch-text{display:grid;gap:1px;min-width:0}app-admin-appointment .svc-switch-text small{opacity:.7;font-size:.74rem;line-height:1.25}@media(max-width:450px){app-admin-appointment .ticket-category-add{grid-template-columns:minmax(0,1fr)}app-admin-appointment .svc-fields{grid-template-columns:repeat(2,minmax(0,1fr))}app-admin-appointment .svc-list{grid-template-columns:minmax(0,1fr)}}.debug-section-heading h3{display:inline-block}.debug-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;margin-left:8px;padding:0 6px;border-radius:10px;font-size:.75rem;font-weight:800;line-height:1;color:#fff;background:#3b82c4;vertical-align:middle;animation:tab-badge-pulse 1.8s ease-in-out infinite}.debug-badge[data-level=warn]{background:#c98a1b}.debug-badge[data-level=fail]{background:#e5484d}@media(prefers-reduced-motion:reduce){.debug-badge{animation:none}}.blocked-list{display:grid;gap:8px;-webkit-user-select:text;user-select:text}.blocked-item{padding:10px 12px;border-left:4px solid #c98a1b;border-radius:6px;background:#ffffff0a}.blocked-item>header{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px}.blocked-item>header strong{font-size:1.02rem;color:#f6e3a8}.blocked-item>header small,.blocked-item>header time{opacity:.7}.blocked-item>header time{margin-left:auto;font-size:.85rem}.blocked-reason{padding:1px 9px;border-radius:999px;font-size:.75rem;font-weight:700;background:#c98a1b4d}.blocked-reason[data-reason=no_show]{background:#e5484d4d}.blocked-item p{margin:4px 0 0;font-size:.9rem}.blocked-found{opacity:.85;padding-left:10px;border-left:2px solid rgba(255,255,255,.2)}app-admin-appointment .technician-settings{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px 16px;margin:12px 0 16px;padding:12px 14px;border:1px solid rgba(201,162,74,.28);border-radius:12px;background:#ffffff08}app-admin-appointment .technician-settings label{margin:0}app-admin-appointment .technician-settings label>span{display:block;margin-bottom:4px;font-size:.8rem;opacity:.85}app-admin-appointment .technician-settings select,app-admin-appointment .technician-settings input{width:100%;box-sizing:border-box}app-admin-appointment .technician-list .technician-item.technician-item{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));align-items:end;gap:12px 16px;padding:14px 16px}app-admin-appointment .technician-list .technician-item>label{display:block}app-admin-appointment .technician-list .technician-item>label>span{display:block;margin-bottom:4px;font-size:.78rem;opacity:.8}app-admin-appointment .technician-list .technician-item>label input[type=text],app-admin-appointment .technician-list .technician-item>label select{width:100%;box-sizing:border-box}app-admin-appointment .technician-list .technician-item>.technician-toggle{display:flex;align-items:center;gap:12px;align-self:center}app-admin-appointment .technician-toggle strong{font-size:1.1rem;color:#f6e3a8}app-admin-appointment .technician-toggle input{width:20px;height:20px;accent-color:#c9a24a}app-admin-appointment .technician-availability{grid-column:1/-1;border-top:1px solid rgba(201,162,74,.22);padding-top:10px}app-admin-appointment .technician-availability>summary{display:flex;align-items:center;gap:12px;cursor:pointer;list-style:none}app-admin-appointment .technician-availability>summary::-webkit-details-marker{display:none}app-admin-appointment .technician-availability>summary:before{content:"\25b8";opacity:.7}app-admin-appointment .technician-availability[open]>summary:before{content:"\25be"}app-admin-appointment .technician-availability>summary h3{margin:0;font-size:1rem}app-admin-appointment .override-count{padding:1px 10px;border-radius:999px;font-size:.75rem;font-weight:700;background:#2f8f5b4d}app-admin-appointment .override-count:not([data-count="0"]){background:#c98a1b66}app-admin-appointment .override-note{margin:8px 0;font-size:.85rem;opacity:.8}app-admin-appointment .technician-availability-categories{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 10px}app-admin-appointment .technician-availability-categories label.toggle{display:inline-flex;align-items:center;gap:6px;margin:0;padding:4px 10px;border:1px solid rgba(201,162,74,.3);border-radius:999px;font-size:.82rem}app-admin-appointment .technician-availability-categories label.toggle:has(input:checked){background:#e5484d40;border-color:#e5484db3}app-admin-appointment .technician-service-groups{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:6px 14px}app-admin-appointment .technician-service-groups>details{padding:4px 8px;border-radius:8px;background:#ffffff08}app-admin-appointment .technician-service-groups>details>summary{cursor:pointer;font-size:.9rem}app-admin-appointment .technician-service-groups>details[open]{grid-column:1/-1}app-admin-appointment .technician-service-groups>details[open]>label{display:inline-flex;width:calc(33% - 8px);min-width:220px;margin:3px 4px;font-size:.85rem}app-admin-appointment .calendar-complete-times{font-size:.74rem;opacity:.9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}app-admin-appointment .live-complete-block .calendar-card-price{margin-top:auto}.group-editor-addons{display:grid;gap:4px;margin-top:8px;padding:8px 10px;border:1px solid rgba(201,162,74,.25);border-radius:10px;background:#ffffff08}.group-editor-addons>strong{font-size:.85rem;opacity:.85}app-admin-appointment .calendar-complete-times{display:grid;gap:0;white-space:normal;overflow:visible}app-admin-appointment .calendar-complete-times>span{display:block;font-size:.74rem;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}app-admin-appointment .settings-page{display:grid;gap:14px;margin-top:12px}app-admin-appointment .settings-group{padding:14px 16px;border:1px solid rgba(201,162,74,.28);border-radius:12px;background:#ffffff08}app-admin-appointment .settings-group>h3{margin:0 0 8px;font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#c9a24a}app-admin-appointment .setting-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.07);cursor:pointer}app-admin-appointment .setting-row:last-of-type{border-bottom:0}app-admin-appointment .setting-text{display:grid;gap:2px;min-width:0}app-admin-appointment .setting-text strong{font-size:.98rem;font-weight:600}app-admin-appointment .setting-text small{opacity:.7;font-size:.82rem;line-height:1.35}app-admin-appointment input.switch{appearance:none;-webkit-appearance:none;flex:0 0 auto;position:relative;width:44px;height:26px;margin:0;border-radius:999px;background:#ffffff2e;transition:background .18s;cursor:pointer}app-admin-appointment input.switch:after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;transition:transform .18s;box-shadow:0 1px 3px #0006}app-admin-appointment input.switch:checked{background:#c9a24a}app-admin-appointment input.switch:checked:after{transform:translate(18px)}app-admin-appointment input.switch:focus-visible{outline:2px solid #ffdb75;outline-offset:2px}app-admin-appointment .settings-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px 16px;margin-top:10px}app-admin-appointment .settings-fields.three{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));margin-top:0}app-admin-appointment .settings-fields label,app-admin-appointment .settings-message{display:grid;gap:4px;margin:0}app-admin-appointment .settings-fields label>span,app-admin-appointment .settings-message>span{font-size:.8rem;opacity:.85}app-admin-appointment .settings-fields small{opacity:.65;font-size:.78rem}app-admin-appointment .settings-fields input,app-admin-appointment .settings-fields select,app-admin-appointment .settings-message textarea{width:100%;box-sizing:border-box}app-admin-appointment .automation-note{display:block;margin-top:8px;font-size:.9rem;opacity:.85;line-height:1.4}.health-pill{margin-right:10px}.debug-section-heading .health-pill+*,.debug-section-heading p .health-pill{margin-right:10px}.health-checks li[data-level=info]{border-left-color:#6fb1e6}app-admin-appointment .request-filters{align-items:flex-end;gap:8px 10px}app-admin-appointment .request-filters .request-sort{flex-direction:column;align-items:stretch;gap:3px}app-admin-appointment .request-filters .request-sort input{min-height:38px;box-sizing:border-box}app-admin-appointment .request-filters>button{min-height:38px;border:1px solid rgba(201,162,74,.45);border-radius:8px;background:transparent;color:#f0d992;padding:0 12px;font:inherit;font-size:.82rem}app-admin-appointment .request-summary-strip{display:flex;flex-wrap:wrap;align-items:stretch;gap:8px;margin:4px 0 16px}app-admin-appointment .request-summary-strip>button{display:grid;gap:1px;min-width:96px;text-align:left;border:1px solid rgba(201,162,74,.3);border-radius:12px;background:#ffffff08;color:#d8c89e;padding:8px 14px;font:inherit}app-admin-appointment .request-summary-strip>button strong{font-size:1.35rem;line-height:1.1;color:#fff4cf}app-admin-appointment .request-summary-strip>button span{font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}app-admin-appointment .request-summary-strip>button.pending strong{color:#ffd36a}app-admin-appointment .request-summary-strip>button.confirmed strong{color:#8fd6a4}app-admin-appointment .request-summary-strip>button.attention.has-items{border-color:#e5695fb3;background:#962f2829}app-admin-appointment .request-summary-strip>button.attention.has-items strong{color:#ffb4aa}app-admin-appointment .request-summary-strip>button.active{border-color:#f0d992;background:#c9a24a33;box-shadow:0 0 0 1px #f0d992 inset}app-admin-appointment .request-summary-total{align-self:center;margin-left:auto;color:#a99a77;font-size:.8rem}app-admin-appointment .request-group>h4{margin:18px 0 8px;font-size:1.05rem}app-admin-appointment .request-hour>h5{position:sticky;top:0;z-index:2;display:flex;align-items:baseline;gap:10px;margin:10px 0 8px;padding:6px 2px;background:#110e09;color:#f0d992}app-admin-appointment .request-hour>h5 small{color:#a99a77;font-size:.74rem;font-weight:700}@media(max-width:700px){app-admin-appointment .request-summary-strip>button{flex:1 1 calc(50% - 8px)}app-admin-appointment .request-summary-total{margin-left:0;width:100%}}app-admin-appointment .text-assistant{display:grid;gap:12px;-webkit-user-select:text;user-select:text}app-admin-appointment .text-assistant h4{margin:10px 0 0;font-size:.74rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#c9a24a;opacity:1}app-admin-appointment .ta-status{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid rgba(201,162,74,.28);border-radius:12px;background:#ffffff08}app-admin-appointment .ta-switch{display:flex;align-items:center;gap:12px;cursor:pointer;margin:0}app-admin-appointment .ta-switch>span{display:grid;gap:2px}app-admin-appointment .ta-switch small,app-admin-appointment .ta-provider small{opacity:.7;font-size:.8rem}app-admin-appointment .ta-token{display:flex;align-items:center;gap:10px;flex-wrap:wrap}app-admin-appointment .ta-pill{display:inline-block;border:1px solid rgba(255,255,255,.2);border-radius:999px;padding:2px 10px;font-size:.72rem;font-weight:800;letter-spacing:.03em;white-space:nowrap}app-admin-appointment .ta-pill[data-level=ok]{border-color:#76dca78c;color:#b8ffd6;background:#76dca71a}app-admin-appointment .ta-pill[data-level=warn]{border-color:#ffc457b3;color:#ffe0a3;background:#ffc45724}app-admin-appointment .ta-pill[data-level=active]{border-color:#f0d992;color:#1b1405;background:#e8c864}app-admin-appointment .ta-pill[data-level=off]{opacity:.6}app-admin-appointment .text-assistant-token{margin:0;padding:10px 12px;border:1px dashed #e8c864;border-radius:10px;display:grid;gap:6px}app-admin-appointment .text-assistant-token code{word-break:break-all;-webkit-user-select:all;user-select:all}app-admin-appointment .ta-providers{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}app-admin-appointment .ta-provider{display:grid;gap:10px;align-content:start;padding:12px 14px;border:1px solid rgba(255,255,255,.14);border-radius:12px;background:#ffffff05}app-admin-appointment .ta-provider.active{border-color:#c9a24a;background:#c9a24a14}app-admin-appointment .ta-provider>header{display:flex;align-items:center;justify-content:space-between;gap:8px}app-admin-appointment .ta-field{display:grid;gap:4px}app-admin-appointment .ta-field>span{font-size:.76rem;opacity:.75}app-admin-appointment .text-assistant .inline-controls{display:flex;flex-wrap:nowrap;gap:8px;align-items:center}app-admin-appointment .text-assistant .inline-controls input{flex:1 1 auto;min-width:0;padding:8px 10px;box-sizing:border-box}app-admin-appointment .ta-compose{margin-top:2px}app-admin-appointment .ta-chat{display:grid;gap:8px;padding:10px;border-radius:12px;background:#0003;max-height:360px;overflow-y:auto}app-admin-appointment .ta-bubble{display:grid;gap:2px;max-width:86%;justify-self:start;padding:8px 12px;border-radius:14px 14px 14px 4px;background:#c9a24a29;border:1px solid rgba(201,162,74,.3);line-height:1.4;white-space:pre-wrap;overflow-wrap:anywhere;font-size:.92rem}app-admin-appointment .ta-bubble.customer{justify-self:end;border-radius:14px 14px 4px;background:#6fb1e629;border-color:#6fb1e666}app-admin-appointment .ta-bubble small{font-size:.68rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;opacity:.65}app-admin-appointment .ta-convo{border:1px solid rgba(255,255,255,.14);border-radius:12px;background:#ffffff05}app-admin-appointment .ta-convo>summary{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;padding:10px 14px;cursor:pointer;list-style:none}app-admin-appointment .ta-convo>summary::-webkit-details-marker{display:none}app-admin-appointment .ta-convo>summary small{margin-left:auto;opacity:.65}app-admin-appointment .ta-convo[open]>summary{border-bottom:1px solid rgba(255,255,255,.1)}app-admin-appointment .ta-convo>.ta-chat{margin:10px}app-admin-appointment .ta-reason{margin:8px 14px 0;font-size:.85rem;color:#ffe0a3}@media(max-width:700px){app-admin-appointment .ta-bubble{max-width:94%}app-admin-appointment .ta-providers{grid-template-columns:1fr}}app-admin-appointment .ta-provider .inline-controls>ion-button,app-admin-appointment .ta-provider .inline-controls>button{flex:0 0 auto;white-space:nowrap}app-admin-appointment .admin-more-inline{display:contents}app-admin-appointment .admin-more-panel,app-admin-appointment .admin-more-backdrop{display:none}app-admin-appointment .admin-more-toggle{display:none}@media(max-width:1100px){app-admin-appointment .admin-header-title,app-admin-appointment .card-only{display:none!important}app-admin-appointment .header-only{display:inline-flex}app-admin-appointment .admin-more-inline{display:none}app-admin-appointment .admin-more-panel .header-only{display:block}app-admin-appointment .admin-header-bar{flex:1 1 auto;min-width:0}app-admin-appointment .admin-header-bar .admin-tabs{position:relative;flex-wrap:nowrap;align-items:flex-start;width:100%}app-admin-appointment .admin-tab-main{display:flex;flex:1 1 auto;flex-wrap:wrap;align-items:center;gap:6px;min-width:0}app-admin-appointment .calendar-header-controls{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px}app-admin-appointment .calendar-header-controls .calendar-weekday{display:none}app-admin-appointment .calendar-header-controls input[type=date]{max-width:150px}app-admin-appointment .admin-more-toggle{margin-left:auto;flex:none}app-admin-appointment .admin-more-toggle{display:inline-flex;align-items:center;gap:2px;font-size:1.1rem!important;padding:4px 12px!important}app-admin-appointment .admin-more-backdrop{display:block;position:fixed;inset:0;z-index:999;background:transparent}app-admin-appointment .admin-more-panel{position:fixed;top:calc(env(safe-area-inset-top,0px) + 56px);right:8px;z-index:1000;min-width:220px;max-height:calc(100vh - 80px);overflow-y:auto;flex-direction:column;gap:4px;padding:8px;border:1px solid rgba(201,162,74,.4);border-radius:12px;background:#17130a;box-shadow:0 10px 28px #00000080}app-admin-appointment .admin-more-panel.open{display:flex}app-admin-appointment .admin-more-panel button{text-align:left;border-radius:999px;width:100%;border:1px solid rgba(201,162,74,.36);background:transparent;color:#d8c89e;padding:8px 12px}app-admin-appointment .admin-more-panel button.active{border-color:#f0d992;background:#c9a24a29;color:#f0d992;font-weight:800}}app-admin-appointment .calendar-view-toggle{display:inline-flex;gap:6px}app-admin-appointment .calendar-view-toggle button{border:1px solid rgba(201,162,74,.36)!important;border-radius:999px!important;background:transparent;color:#d8c89e;padding:8px 12px;margin:0!important}app-admin-appointment .calendar-view-toggle button.active{border-color:#f0d992!important;background:#c9a24a29;color:#f0d992;font-weight:800}app-admin-appointment .calendar-view-toggle button:disabled{opacity:.45}@media(min-width:1101px){app-admin-appointment .header-only{display:none}}app-admin-appointment .admin-tab-main{display:contents}app-admin-appointment .calendar-date-group{display:contents}.inline-edit .inline-row dd{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px}.inline-edit dt{display:flex;align-items:center;gap:6px}.inline-edit .inline-edit-button{display:inline-flex;align-items:center;gap:5px;margin-left:8px;border:1px solid #f0cf7a;background:#c9a24a1f;color:#f0d992;padding:4px 11px;font-size:.78rem;font-weight:800;line-height:1;cursor:pointer;border-radius:999px;vertical-align:middle}.inline-edit .inline-edit-button:after{content:"Edit"}.inline-edit .inline-edit-button svg{width:13px;height:13px}.inline-edit .inline-edit-button:hover{background:#c9962a;border-color:#f0cf7a;color:#1a1409}.inline-edit .inline-edit-button:focus-visible{outline:2px solid #fff4cf;outline-offset:2px}.inline-edit .inline-edit-actions{display:inline-flex;align-items:center;gap:4px}.inline-edit .save-notice{flex-basis:100%;margin:0}.inline-edit-bar{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:12px}.inline-edit-bar .save-notice{flex-basis:100%;margin:0}app-admin-appointment .today-weekday{display:none}@media(max-width:1100px){app-admin-appointment .calendar-header-controls .calendar-nav-button{display:none}app-admin-appointment .calendar-header-controls .today-weekday{display:inline}}app-admin-appointment .team-short{display:none}@media(max-width:1100px){app-admin-appointment .calendar-assignment-row .team-full{display:none}app-admin-appointment .calendar-assignment-row .team-short{display:inline}app-admin-appointment .calendar-header-controls input[type=date]{width:auto;max-width:160px;box-sizing:border-box;padding:6px 10px;font-size:.8rem;line-height:1.1;border:1px solid rgba(201,162,74,.36);border-radius:999px;background:transparent;color:#d8c89e;color-scheme:dark}app-admin-appointment ion-toolbar{--padding-top: 0;--padding-bottom: 0;--padding-start: 4px;--padding-end: 4px;--min-height: 0}app-admin-appointment .appointment-admin.calendar-full{padding:0!important;margin:0}app-admin-appointment .appointment-admin.calendar-full ion-card.booking-calendar-card{margin:0;border-radius:0;border-left:0;border-right:0}app-admin-appointment .appointment-admin.calendar-full ion-card.booking-calendar-card ion-card-content{padding:6px}}app-admin-appointment .calendar-assignment-sort{display:none!important}app-admin-appointment .calendar-options{display:flex;flex-direction:column;gap:6px;width:100%}app-admin-appointment .calendar-more-toggle{font-size:1.05rem;line-height:1;padding:6px 12px}app-admin-appointment .calendar-options-backdrop{display:block;position:fixed;inset:0;z-index:999;background:transparent}app-admin-appointment .calendar-options-panel{position:fixed;z-index:1000;min-width:220px;display:flex;flex-direction:column;gap:8px;padding:10px;border:1px solid rgba(201,162,74,.4);border-radius:12px;background:#17130a;box-shadow:0 10px 28px #00000080}app-admin-appointment .calendar-options-item{text-align:left;width:100%;border:1px solid rgba(201,162,74,.36);border-radius:999px;background:transparent;color:#d8c89e;padding:8px 12px}app-admin-appointment button.calendar-switch{display:flex;align-items:center;gap:10px;width:100%;min-height:44px;padding:4px;border:2px solid rgba(240,217,146,.7);border-radius:999px;background:transparent;color:#f0d992;font-weight:800;flex-direction:row;justify-content:flex-start;cursor:pointer}app-admin-appointment button.calendar-switch.on{flex-direction:row-reverse;border-color:#e8c864;background:#e8c864;color:#1b1405}app-admin-appointment .calendar-switch-knob{flex:none;width:34px;height:34px;border-radius:50%;background:#fff;box-shadow:0 1px 4px #00000059}app-admin-appointment .calendar-switch-text{flex:1 1 auto;text-align:center;letter-spacing:.04em}app-admin-appointment button.calendar-switch:disabled{opacity:.5}app-admin-appointment .admin-more-panel .calendar-options{display:flex}@media(max-width:1100px){app-admin-appointment .calendar-assignment-bar{grid-template-columns:67px minmax(0,1fr);grid-template-areas:"unassign rows";column-gap:0;align-items:center}app-admin-appointment .calendar-assignment-bar .calendar-unassign{width:62px;padding:5px 2px;font-size:.64rem;text-align:center;align-self:center}app-admin-appointment .calendar-assignment-row{position:relative;padding-left:24px;min-height:28px}app-admin-appointment .calendar-assignment-row small{position:absolute;left:0;top:50%;transform:translateY(-50%);width:24px;min-width:0;text-align:center}}@media(min-width:1101px){app-admin-appointment .calendar-options.header-only,app-admin-appointment .admin-more-panel{display:none!important}}app-admin-appointment .calendar-assignment-bar.bar-idle{visibility:hidden;pointer-events:none}@media(max-width:1100px){app-admin-appointment .calendar-assignment-bar.bar-idle{display:none}}app-admin-appointment .waiting-chip{flex:0 0 auto;align-self:center;color:#000;font-size:.78rem;font-weight:900;letter-spacing:.08em;line-height:1.3}app-admin-appointment .duration-chip{display:inline-block;padding:1px 9px;border-radius:999px;font-size:.78rem;font-weight:900;line-height:1.35;box-shadow:0 0 0 1px #00000040;background:#fff3;color:#fff}app-admin-appointment .duration-chip[data-level=ok]{background:#2fbf71;color:#052414}app-admin-appointment .duration-chip[data-level=short]{background:#e5484d;color:#fff}app-admin-appointment .duration-chip[data-level=long]{background:#ffd24a;color:#2b1d00}app-admin-appointment .calendar-complete-times{display:flex;justify-content:flex-start}app-admin-appointment .duration-chip{width:fit-content;flex:0 0 auto;align-self:flex-start;justify-self:start}app-admin-appointment .work-ticket-card.removing-ticket .calendar-block-time{color:#000!important;font-weight:900}.new-customer-pill,.edited-pill{display:inline-block;border-radius:999px;padding:7px 11px;font-size:.72rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase;white-space:nowrap}.new-customer-pill{border:1px solid rgba(90,200,140,.7);background:#5ac88c29;color:#a8ecc6}.edited-pill{border:1px solid rgba(240,180,80,.7);background:#f0b45029;color:#f6d08c}.request-edit-changes ul{margin:4px 0 0;padding-left:18px}.request-edit-changes{margin:4px 0;padding:6px 10px;border-left:3px solid rgba(240,180,80,.7);background:#f0b45014}.request-edit-changes:empty{display:none}app-checkin .guided-catalog{display:flex;flex-direction:column;min-height:0;overflow-y:auto}app-checkin .guided-pane{flex:0 0 auto;box-sizing:border-box;display:flex;flex-direction:column;gap:14px;padding:clamp(16px,3vh,30px);border:1px solid #c8bda9;background:#fffaf0;min-height:100%}app-checkin .guided-progress{margin:0;color:#7d6531;font-size:12px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}app-checkin .guided-prompt{margin:0;color:#171612;font:600 clamp(26px,4vh,38px)/1.15 Georgia,serif}app-checkin .guided-help{margin:0;color:#5d5646;font-size:16px}app-checkin .guided-hint{margin:0;color:#7d6531;font-size:14px;font-weight:700}app-checkin .guided-answers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}app-checkin .guided-answers.guided-many{gap:8px}app-checkin .guided-answer{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:68px;padding:10px 16px;border:2px solid #c8bda9;border-radius:10px;background:#fff;color:#171612;text-align:left;font-size:19px}app-checkin .guided-answer.selected{border-color:#73500f;background:#eee0bf}app-checkin .guided-answer:disabled{opacity:.6}app-checkin .guided-answer.guided-need{grid-column:1/-1;border-color:#b04a2a;background:#fff1ea}app-checkin .guided-check{display:grid;place-items:center;width:34px;height:34px;border:2px solid #8b7a52;border-radius:50%;color:#4e3b16;font-size:20px;font-weight:900}app-checkin .guided-answer.selected .guided-check{background:#73500f;border-color:#73500f;color:#fff}app-checkin .guided-answer-text{display:flex;flex-direction:column;gap:2px;min-width:0}app-checkin .guided-answer-text small{color:#7d6531;font-size:13px}app-checkin .guided-answer b{color:#4e3b16;font-size:17px;white-space:nowrap}app-checkin .guided-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px;margin-top:auto;padding-top:12px}app-checkin .guided-actions .primary-button{min-width:220px}@media(max-width:760px){app-checkin .guided-answers{grid-template-columns:1fr}}app-checkin .guided-preview{margin:0;padding:8px 12px;border:1px dashed #b04a2a;border-radius:8px;background:#fff1ea;color:#7a2f17;font-size:14px;font-weight:800}@keyframes appointment-updating{0%,to{opacity:1}50%{opacity:.55}}@keyframes appointment-spin{to{transform:rotate(360deg)}}app-admin-appointment .appointment-progress{position:fixed;left:50%;bottom:18px;transform:translate(-50%);z-index:1100;display:flex;align-items:center;gap:10px;padding:10px 18px;border:1px solid #e8c864;border-radius:999px;background:#17130a;color:#f0d992;font-weight:800;box-shadow:0 8px 24px #00000080}app-admin-appointment .appointment-progress-spinner{width:16px;height:16px;border:3px solid rgba(240,217,146,.3);border-top-color:#f0d992;border-radius:50%;animation:appointment-spin .8s linear infinite}app-admin-appointment .ticket-appointment{display:grid;gap:8px;margin:10px 0;padding:10px 12px;border:1px solid rgba(201,162,74,.45);border-radius:10px}app-admin-appointment .ticket-appointment-status{display:flex;align-items:center;gap:8px;margin:0;font-weight:800}app-admin-appointment .new-customer-badge{display:inline-block;margin-left:6px;padding:0 6px;border-radius:999px;background:#2fbf71;color:#052414;font-size:.6rem;font-weight:900;letter-spacing:.06em;vertical-align:middle}app-admin-appointment .work-ticket-card .calendar-new-customer{display:block;order:-2;margin:-4px -6px 3px;background:#2fbf71;color:#052414;font-size:.63rem;font-weight:900;letter-spacing:.06em;padding:2px 6px;text-align:center;text-transform:uppercase}app-admin-appointment .calendar-block .new-customer-badge{align-self:flex-start;width:fit-content;flex:0 0 auto;margin:2px 0 0}app-admin-appointment .waiting-chip.long-wait{font-weight:900;text-decoration:underline;text-underline-offset:2px;animation:long-wait-pulse 1.6s ease-in-out infinite}app-admin-appointment .work-ticket-wait-summary{display:block;font-size:.7rem;font-weight:700;opacity:.8}@keyframes long-wait-pulse{0%,to{opacity:1}50%{opacity:.45}}@media(prefers-reduced-motion:reduce){app-admin-appointment .waiting-chip.long-wait{animation:none}}app-checkin .guided-answer-image{flex:0 0 auto;width:104px;height:104px;border-radius:12px;object-fit:contain;background:#78643c14}app-admin-appointment .work-ticket-card>.waiting-chip{display:block;align-self:flex-start}app-admin-appointment .tech-kind{display:inline-flex;gap:10px;margin-left:8px;font-size:.78rem;color:#e3d6b0}app-admin-appointment .tech-kind label{display:inline-flex;align-items:center;gap:3px}app-admin-appointment .tech-kind-label{color:#cdbf9d;font-size:.72rem}ion-modal.technician-suggest-modal{--width: min(1180px, calc(100vw - 24px) );--height: min(760px, calc(100vh - 32px) );--border-radius: 18px;--background: #0b0a08}ion-modal.technician-suggest-modal::part(content){border:2px solid #d6a84f;box-shadow:0 18px 60px #000000d9}.technician-suggest{display:grid;gap:12px;color:#f0e6cc}.technician-suggest .suggest-rules{font-size:.76rem;color:#cdbf9d;border:1px solid rgba(201,162,74,.3);border-radius:10px;padding:8px 10px}.technician-suggest .suggest-rules ol{margin:4px 0 0;padding-left:18px}.technician-suggest .suggest-team h3{margin:4px 0 8px;font-size:.8rem;text-transform:uppercase;color:#f0d992}.technician-suggest .suggest-chips{display:flex;flex-wrap:wrap;gap:5px;align-items:flex-start}.technician-suggest .suggest-chip{display:grid;gap:3px;width:190px;padding:4px 6px;border:1px solid #f0cf7a;border-radius:8px;background:#c9a24a29}.technician-suggest .suggest-chip.suggest-busy{background:transparent;border-color:#c9a24a66}.technician-suggest .suggest-chip-head{display:flex;align-items:center;gap:4px;color:#fff4cf;font-size:.74rem}.technician-suggest .suggest-chip-head strong{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.technician-suggest .suggest-chip-head span{color:#f0d992;font-size:.64rem;font-weight:800;text-align:right}.technician-suggest .suggest-order{display:inline-block;min-width:15px;padding:0 3px;border-radius:8px;background:#c9962a;color:#1a1409;font-size:.62rem;font-weight:900;text-align:center}.technician-suggest .suggest-none{color:#9d927a;font-size:.62rem}.technician-suggest .suggest-item{display:grid;gap:1px;padding:3px 5px;border-radius:6px;background:#00000059;font-size:.66rem;line-height:1.25}.technician-suggest .suggest-item.suggest-expected{border:1px dashed rgba(201,162,74,.5);gap:3px;padding:7px 8px;font-size:.78rem;background:#c9a24a1f}.technician-suggest .suggest-item.suggest-expected .suggest-line{white-space:normal;font-size:.86rem}.technician-suggest .suggest-item.suggest-expected .suggest-line em{display:block;color:#ffe08a;font-size:.95rem;font-weight:900;letter-spacing:.02em}.technician-suggest .suggest-item.suggest-expected .suggest-service{white-space:normal}.technician-suggest .suggest-detail{color:#d8c89e;font-size:.7rem}.technician-suggest .suggest-walkin{justify-self:start;padding:1px 7px;border-radius:999px;border:1px solid rgba(201,162,74,.4);color:#d8c89e;font-size:.62rem;font-weight:800}.technician-suggest .suggest-walkin.suggest-walkin-yes{border-color:#6fcf97;background:#6fcf9729;color:#b8f0cf}.technician-suggest .suggest-line{color:#fff4cf;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.technician-suggest .suggest-line em{color:#f0d992;font-style:normal;font-size:.58rem;text-transform:uppercase;margin-right:2px}.technician-suggest .suggest-service{color:#cdbf9d;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.technician-suggest .suggest-item button{justify-self:start;margin-top:2px;padding:2px 8px;border:1px solid #f0cf7a;border-radius:6px;background:#c9962a;color:#1a1409;font:inherit;font-size:.62rem;font-weight:800;cursor:pointer}.technician-suggest .suggest-why{margin:6px 0 0;padding-left:16px;color:#cdbf9d;font-size:.66rem;line-height:1.35}.technician-suggest .suggest-why strong{color:#f0d992}.technician-suggest .suggest-outlook{margin:8px 0 0;padding:7px 10px;border-radius:8px;background:#c9a24a1f;font-size:.78rem;color:#fff4cf}.technician-suggest .suggest-warning{margin:6px 0 0;color:#ffb4a8;font-size:.74rem}.technician-suggest .suggest-empty{margin:0;color:#9d927a;font-size:.74rem}ion-modal.customer-lookup-modal{--width: min(520px, calc(100vw - 24px) );--height: min(760px, calc(100vh - 32px) );--border-radius: 18px;--background: #0b0a08}ion-modal.customer-lookup-modal::part(content){border:2px solid #d6a84f;box-shadow:0 0 0 1px #000000e6,0 18px 60px #000000d9,0 0 24px #d6a84f40}.customer-lookup{display:grid;gap:14px;padding:16px;color:#f6ecd2}.customer-lookup button{font:inherit;color:inherit;cursor:pointer}.lookup-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px}.lookup-tabs button{padding:10px;border-radius:10px;border:1px solid rgba(214,168,79,.45);background:transparent;font-weight:700}.lookup-tabs button.active{background:#d6a84f;color:#1a1408;border-color:#d6a84f}.lookup-digits{display:block;text-align:center;font-size:2.2rem;font-weight:800;letter-spacing:.12em;padding:14px;border:1px solid rgba(214,168,79,.55);border-radius:14px;background:#14110b;color:#ffdb75;font-variant-numeric:tabular-nums}.lookup-keypad{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.lookup-keypad button{min-height:58px;font-size:1.5rem;font-weight:700;border-radius:14px;border:1px solid rgba(214,168,79,.5);background:#1b160c;touch-action:manipulation}.lookup-keypad button:active{background:#d6a84f;color:#1a1408}.lookup-keypad .lookup-key-action{font-size:1rem;color:#d6a84f}.lookup-search{display:flex;gap:8px}.lookup-search input{flex:1;min-width:0;padding:12px 14px;border-radius:12px;border:1px solid rgba(214,168,79,.55);background:#14110b;color:#f6ecd2;font-size:1rem}.lookup-search-button{padding:0 18px;border-radius:12px;border:1px solid #d6a84f;background:#d6a84f;color:#1a1408!important;font-weight:800}.lookup-search-button:disabled{opacity:.5}.lookup-hint{margin:0;color:#f6ecd2bf;text-align:center}.lookup-results{list-style:none;margin:0;padding:0;display:grid;gap:8px}.lookup-results button{width:100%;display:flex;justify-content:space-between;gap:12px;padding:14px;border-radius:12px;border:1px solid rgba(214,168,79,.5);background:#14110b;text-align:left}.lookup-customer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px;padding:12px 14px;border:1px solid rgba(214,168,79,.5);border-radius:12px;background:#14110b}.lookup-customer>div{display:grid;flex:1 1 160px;gap:2px}.lookup-customer span{color:#f6ecd2bf}.lookup-link{background:transparent;border:0;color:#d6a84f!important;font-weight:700;padding:6px}.lookup-link:disabled{cursor:not-allowed;opacity:.45}.lookup-visit{border:1px solid rgba(214,168,79,.35);border-radius:12px;overflow:hidden;background:#100d08}.lookup-visit.open{border-color:#d6a84f}.lookup-visit-head{width:100%;display:flex;align-items:center;gap:12px;padding:13px 14px;background:transparent;border:0;text-align:left}.lookup-visit-head strong{flex:1;min-width:0}.lookup-visit-total{font-weight:800;color:#ffdb75}.lookup-visit-body{padding:0 14px 14px;display:grid;gap:10px}.lookup-group{border-radius:10px;padding:10px 12px;background:#17130b;border-left:4px solid #d6a84f}.lookup-group[data-team=nails]{border-left-color:#5f87ad}.lookup-group[data-team=pedicure]{border-left-color:#c08145}.lookup-group header{display:flex;align-items:baseline;gap:8px;margin-bottom:6px}.lookup-group h4{margin:0;font-size:.95rem}.lookup-tech{flex:1;color:#9bf2be;font-weight:700;font-size:.85rem}.lookup-group ul{list-style:none;margin:0;padding:0;display:grid;gap:4px}.lookup-group li{display:flex;justify-content:space-between;gap:12px}.lookup-main li{font-weight:700}.lookup-addon-label{margin:8px 0 2px;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:#f6ecd2a6}.lookup-addons li{color:#f6ecd2e6;padding-left:10px}.lookup-totals{margin:0;display:grid;gap:2px;border-top:1px solid rgba(214,168,79,.25);padding-top:8px}.lookup-totals>div{display:flex;justify-content:space-between;gap:12px}.lookup-totals dt,.lookup-totals dd{margin:0}.lookup-keyboard-toggle{padding:0 12px;border-radius:12px;border:1px solid rgba(214,168,79,.55);background:transparent;font-size:1.3rem}.lookup-keyboard-toggle.active{background:#d6a84f;color:#1a1408!important}.lookup-keyboard{display:grid;gap:6px}.lookup-keyboard-row{display:flex;gap:5px;justify-content:center}.lookup-keyboard-row button{flex:1 1 0;min-width:0;min-height:48px;font-size:1.15rem;font-weight:700;text-transform:uppercase;border-radius:10px;border:1px solid rgba(214,168,79,.5);background:#1b160c;touch-action:manipulation}.lookup-keyboard-row button:active{background:#d6a84f;color:#1a1408}.lookup-keyboard-row .lookup-key-action{flex:1.5 1 0;font-size:.9rem;color:#d6a84f;text-transform:none}.lookup-keyboard-row .lookup-key-space{flex:5 1 0;text-transform:none}.turn-chip{display:block;width:fit-content;align-self:flex-start;padding:1px 8px;border-radius:999px;font-size:.74rem;font-weight:800;line-height:1.4;background:#ffffff38;color:#111}.turn-chip[data-level=calling]{background:#ffd24a;color:#2b1d00;animation:long-wait-pulse 1.2s ease-in-out infinite}.turn-chip[data-level=ok]{background:#2fbf71;color:#052414}.turn-chip[data-level=bad]{background:#e5484d;color:#fff}.turn-alert-stack{position:fixed;bottom:calc(16px + env(safe-area-inset-bottom,0px));left:50%;transform:translate(-50%);z-index:20000;display:grid;gap:8px;width:min(560px,100vw - 24px)}.turn-alert{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 14px;border-radius:12px;background:#3a0d10;color:#fff;border:2px solid #e5484d;box-shadow:0 10px 30px #0009}.turn-alert strong{flex:1 1 auto}.turn-alert button{padding:6px 12px;border-radius:8px;border:1px solid #fff;background:transparent;color:#fff;font-weight:700;cursor:pointer}app-admin-appointment .technician-alert-admin{display:grid;gap:14px;padding:4px 0}app-admin-appointment .tech-alert-settings{display:flex;flex-wrap:wrap;gap:12px;align-items:end}app-admin-appointment .tech-alert-settings label,app-admin-appointment .tech-alert-enroll label{display:grid;gap:4px;font-size:.85rem}app-admin-appointment .tech-alert-code strong{font-size:1.6rem;letter-spacing:.15em}app-admin-appointment .tech-alert-devices{list-style:none;margin:0;padding:0;display:grid;gap:8px}app-admin-appointment .tech-alert-devices li{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:8px 10px;border:1px solid rgba(214,168,79,.35);border-radius:10px}app-admin-appointment .tech-alert-devices li.revoked{opacity:.5}app-admin-appointment .tech-alert-devices small{flex:1 1 100%;opacity:.75}app-admin-appointment .sound-pick{display:inline-flex;gap:8px;align-items:center}app-admin-appointment .tech-alert-sound{display:grid;gap:8px;min-width:min(100%,290px);border:1px solid rgba(201,162,74,.28);border-radius:12px;background:#c9a24a0f;padding:12px}app-admin-appointment .tech-alert-sound b{color:#f0d992}app-admin-appointment .tech-alert-sound small{display:block;margin-top:3px;color:#cdbf9d}.turn-alert,.turn-alert strong,.turn-alert span{color:#fff!important}.turn-alert strong{font-size:1.05rem}.turn-alert .turn-alert-detail{flex:1 1 100%;order:3;opacity:.9;font-size:.95rem}.turn-chip{max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.64rem!important;line-height:1.35!important;padding:0 7px!important}.lookup-make-appointment{justify-self:start;min-height:44px;padding:10px 16px;border-radius:12px;border:2px solid #d6a84f;background:transparent;color:inherit;font:inherit;font-weight:700;cursor:pointer}.appt-service-tech{display:flex;gap:8px;align-items:center;justify-content:space-between;margin-top:8px}.appt-service-tech span{flex:1 1 auto;min-width:0}.appt-service-tech select{flex:0 0 46%;min-height:40px}.appt-skipped{display:block;margin-bottom:8px;color:#b3261e}.tech-service-filter{display:flex;flex-wrap:wrap;gap:8px}.tech-service-filter button{min-height:40px;padding:8px 16px;border-radius:999px;border:1px solid rgba(201,162,74,.5);background:transparent;color:inherit;font:inherit;font-weight:700;cursor:pointer}.tech-service-filter button.active{background:#c9a24a;color:#171004;border-color:#c9a24a}.tech-revision{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;font-weight:700}.tech-revision-toggle{border:0;background:transparent;color:#c9a24a;font:inherit;text-decoration:underline;cursor:pointer;padding:4px}.tech-revision-history{margin:0;padding:12px 16px 12px 32px;display:grid;gap:10px;border:1px solid rgba(201,162,74,.3);border-radius:12px;max-height:260px;overflow:auto}.tech-revision-history ul{margin:4px 0 0;padding-left:18px}.debug-section[hidden]{display:none}.debug-overview{display:grid;gap:12px;margin-bottom:14px}.debug-overview-head{display:flex;align-items:center;gap:10px;font-size:1.1rem}.debug-overview-dot{width:14px;height:14px;border-radius:50%;background:#36c97d}.debug-overview-head[data-level=warn] .debug-overview-dot{background:#f0b429}.debug-overview-head[data-level=fail] .debug-overview-dot{background:#e5534b}.debug-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px}.debug-tile{display:grid;gap:4px;text-align:left;padding:12px 14px;border-radius:12px;border:1px solid rgba(128,128,128,.4);border-left:6px solid rgba(128,128,128,.6);background:#80808014;color:inherit;font:inherit;cursor:pointer}.debug-tile small{opacity:.75;text-transform:uppercase;letter-spacing:.04em;font-size:.72rem;font-weight:700}.debug-tile b{font-size:1.25rem}.debug-tile span{opacity:.8;font-size:.82rem;line-height:1.3}.debug-tile[data-level=ok]{border-left-color:#36c97d}.debug-tile[data-level=warn]{border-left-color:#f0b429}.debug-tile[data-level=fail]{border-left-color:#e5534b;background:#e5534b1f}.debug-filters{display:flex;flex-wrap:wrap;gap:8px}.debug-filters button{min-height:40px;padding:6px 16px;border-radius:999px;border:1px solid rgba(201,162,74,.5);background:transparent;color:inherit;font:inherit;font-weight:700;cursor:pointer}.debug-filters button.active{background:#c9a24a;color:#171004;border-color:#c9a24a}.debug-filters b{margin-left:8px;padding:1px 8px;border-radius:999px;background:#e5534b;color:#fff;font-size:.8rem}.reference-photos{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}.reference-photos figure{position:relative;width:84px;height:84px;margin:0;border-radius:10px;overflow:hidden;border:1px solid rgba(201,162,74,.5)}.reference-photos figure img{width:100%;height:100%;object-fit:cover;display:block}.reference-photos figure button{position:absolute;top:2px;right:2px;width:24px;height:24px;border:0;border-radius:50%;background:#000000b3;color:#fff;font-size:16px;line-height:1;cursor:pointer}.reference-photos .reference-add{display:inline-flex;align-items:center;justify-content:center;min-width:84px;height:84px;padding:0 10px;border:1px dashed rgba(201,162,74,.7);border-radius:10px;color:#f0d992;font-weight:700;cursor:pointer;text-align:center}.reference-photos .reference-add input{position:absolute;width:1px;height:1px;opacity:0}.reference-error{margin:8px 0 0;color:#ff9d8f}.request-reference-photos{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:8px 0}.request-reference-photos a{display:block;width:64px;height:64px;border-radius:8px;overflow:hidden;border:1px solid rgba(201,162,74,.5)}.request-reference-photos img{width:100%;height:100%;object-fit:cover;display:block}.lookup-upcoming{display:grid;gap:6px;margin:4px 0 12px;padding:10px 12px;border:1px solid rgba(111,207,151,.55);border-radius:12px;background:#6fcf9714}.lookup-upcoming h4{margin:0;color:#b8f0cf;font-size:.95rem}.lookup-upcoming-item{display:grid;gap:2px;padding-top:6px;border-top:1px solid rgba(255,255,255,.08)}.lookup-upcoming-item:first-of-type{border-top:0;padding-top:0}.lookup-upcoming-item strong{color:#fff4cf}.lookup-upcoming-item span{color:#e8dcc0;font-size:.88rem}.lookup-upcoming-item small{color:#b8f0cf}app-admin-appointment .section-heading-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}app-admin-appointment .section-editor{padding:0;overflow:hidden}app-admin-appointment .section-editor.has-image{display:block}app-admin-appointment .section-summary{display:flex;align-items:center;gap:12px;width:100%;padding:10px 14px;border:0;background:#c9a24a14;color:#fff4cf;text-align:left;cursor:pointer}app-admin-appointment .section-summary:hover{background:#c9a24a29}app-admin-appointment .section-thumb{display:grid;place-items:center;flex:0 0 56px;width:56px;height:56px;border-radius:10px;overflow:hidden;border:1px solid rgba(201,162,74,.4);background:#00000059}app-admin-appointment .section-thumb img{width:100%;height:100%;object-fit:cover;display:block}app-admin-appointment .section-thumb i{color:#8f8466;font-size:.62rem;font-style:normal;text-align:center}app-admin-appointment .section-summary-text{display:grid;gap:2px;flex:1;min-width:0}app-admin-appointment .section-summary-text strong{font-size:1.02rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}app-admin-appointment .section-summary-text small{color:#d8c89e}app-admin-appointment .section-pill{padding:3px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.25);color:#c9c0a8;font-size:.72rem;font-weight:800}app-admin-appointment .section-pill.on{border-color:#6fcf97;background:#6fcf9729;color:#b8f0cf}app-admin-appointment .section-editor.section-hidden .section-summary-text strong{opacity:.7}app-admin-appointment .section-chevron{color:#f0d992;font-style:normal}app-admin-appointment .section-editor>.section-fields,app-admin-appointment .section-editor>.image-actions,app-admin-appointment .section-editor>.section-full-image{margin:12px 14px}app-admin-appointment .section-editor.collapsed>.section-fields,app-admin-appointment .section-editor.collapsed>.image-actions,app-admin-appointment .section-editor.collapsed>.section-full-image{display:none}app-admin-appointment .section-full-image{max-width:220px;border-radius:10px}app-admin-appointment .section-service-order-item.collapsed .section-service-details>:not(strong):not(small){display:none}app-admin-appointment .section-service-order-item.collapsed{align-items:center;padding-top:6px;padding-bottom:6px}app-admin-appointment .service-edit-toggle{border-color:#f0cf7a;color:#f0d992;font-weight:800}.technician-suggest .suggest-rules summary{cursor:pointer;color:#f0d992;font-size:.8rem;font-weight:800}.technician-suggest .suggest-rules p{margin:6px 0 0;font-size:.78rem}.technician-suggest .suggest-line small{color:#d8c89e;font-weight:600;text-transform:none}.lookup-contact{display:inline-flex;align-items:center;gap:10px}.lookup-phone{color:#f0d992;font-weight:800;text-decoration:underline}.lookup-phone.lookup-text{padding:1px 9px;border:1px solid #f0cf7a;border-radius:999px;text-decoration:none;font-size:.78rem}.customer-phone-suggest{list-style:none;margin:4px 0 0;padding:0;border:1px solid rgba(201,162,74,.5);border-radius:10px;overflow:hidden;background:#14110a}.customer-phone-suggest li+li{border-top:1px solid rgba(255,255,255,.08)}.customer-phone-suggest button{display:flex;justify-content:space-between;gap:10px;width:100%;padding:8px 10px;border:0;background:transparent;color:#fff4cf;text-align:left;cursor:pointer}.customer-phone-suggest button:hover{background:#c9a24a29}.customer-phone-suggest span{color:#d8c89e}.customer-phone-hint{display:block;margin-top:4px;color:#b8f0cf}.lookup-upcoming-item .lookup-edit{justify-self:start;margin-top:4px}.agent-pill{display:inline-flex;align-items:center;justify-content:center;padding:3px 9px;border:1px solid #9bb9ff;border-radius:999px;background:#9bb9ff24;color:#cfe0ff}ion-modal.appointment-create-wide{--width: 440px;--height: 100%;--border-radius: 0;--backdrop-opacity: 0;align-items:stretch;justify-content:flex-start;pointer-events:none}ion-modal.appointment-create-wide::part(content){pointer-events:auto;border-right:2px solid #d6a84f}app-admin-appointment .appointment-admin.appt-panel-open{margin-left:440px}app-admin-appointment .section-editor>.image-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;grid-column:1/-1}app-admin-appointment .section-editor>.image-actions>button,app-admin-appointment .section-editor>.image-actions>label{width:auto;flex:0 0 auto;margin:0}app-admin-appointment .section-editor.has-image{grid-template-columns:92px minmax(0,1fr)}.add-on-note{display:block;margin-top:4px;color:#e0b95a;font-size:.8rem;font-weight:600}.modifier-section.modifier-section-missing{outline:2px solid #5bb8ff;outline-offset:4px;border-radius:10px}.modifier-missing-message{color:#5bb8ff;font-weight:600;margin:10px 0 0}.add-to-appointment.not-ready{opacity:.6}.modifier-section.modifier-section-open{border:2px solid #e0b95a;border-radius:14px;padding:12px;background:#e0b95a1a;box-shadow:0 0 0 4px #e0b95a1f}.modifier-section.modifier-section-open header h3{font-size:1.25rem}.modifier-section header>span{background:#e0b95a;color:#1a1408;font-weight:800;letter-spacing:.04em;text-transform:uppercase;font-size:.72rem;padding:3px 9px;border-radius:999px}.modifier-section.modifier-section-missing{border-color:#5bb8ff;background:#5bb8ff1f;box-shadow:0 0 0 4px #5bb8ff2e}.modifier-intro{font-size:1.05rem}.service-card{cursor:pointer}.booking-switch-content{display:grid;gap:14px;max-width:420px;margin:auto;padding:28px 22px calc(24px + env(safe-area-inset-bottom));border:1px solid rgba(224,185,90,.6);border-radius:18px;background:linear-gradient(145deg,#1d180d,#0c0a06);color:#f8efd9;box-shadow:0 24px 60px #0000008c}.booking-switch-content h2,.booking-switch-content p{margin:0}.booking-switch-content h2{font:1.5rem Georgia,serif;color:#f3dca0}.booking-switch-content p{line-height:1.5}.booking-switch-content ion-button{--background: #e0b95a;--color: #1a1408;--border-radius: 10px;font-weight:800}.booking-switch-content ion-button[fill=outline]{--background: transparent;--color: #f3dca0;--border-color: rgba(224, 185, 90, .6)}.kiosk-content .kiosk-shell .summary-customer{flex:1 1 auto;min-width:0;display:grid;justify-items:center;text-align:center;line-height:1.2}.kiosk-content .kiosk-shell .summary-customer strong{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:1rem}.kiosk-content .kiosk-shell .summary-customer small{font-size:.85rem;opacity:.8}.kiosk-content .kiosk-shell .guided-pane{position:relative}.kiosk-content .kiosk-shell .guided-bar{height:8px;border-radius:999px;background:#78643c33;overflow:hidden;margin:6px 0 10px}.kiosk-content .kiosk-shell .guided-bar>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#c9a24a,#e6c36a);transition:width .35s ease}.kiosk-content .kiosk-shell .guided-steps{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 4px}.kiosk-content .kiosk-shell .guided-step{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:8px 16px;border-radius:999px;border:2px solid #d8c9a6;background:transparent;color:inherit;font-size:1rem;font-weight:600}.kiosk-content .kiosk-shell .guided-step.done{border-color:#5f9d6a}.kiosk-content .kiosk-shell .guided-step.done>span{color:#3f8a4d;font-weight:800}.kiosk-content .kiosk-shell .guided-step.current{background:#c9a24a;border-color:#c9a24a;color:#1a1408}.kiosk-content .kiosk-shell .guided-topic{margin:4px 0 0;font-size:1.05rem}.kiosk-content .kiosk-shell .guided-topic strong{background:#c9a24a38;border-radius:8px;padding:2px 10px}.kiosk-content .kiosk-shell .guided-transition{position:absolute;inset:0;z-index:5;display:grid;place-content:center;justify-items:center;gap:14px;text-align:center;padding:24px;background:#faf5e8f7;border-radius:inherit;animation:guided-transition-in .3s ease;cursor:pointer}.kiosk-content .kiosk-shell .guided-transition-kicker{text-transform:uppercase;letter-spacing:.14em;font-size:.95rem;font-weight:700;color:#8a6a1f}.kiosk-content .kiosk-shell .guided-transition-topic{font-size:clamp(2rem,5vw,3.2rem);line-height:1.1;font-family:Georgia,serif}.kiosk-content .kiosk-shell .guided-transition-note{font-size:1.1rem;opacity:.8}@keyframes guided-transition-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.kiosk-content .kiosk-shell .guided-answer{min-height:72px}.kiosk-content .kiosk-shell .guided-actions .guided-checkin{flex:2 1 0;min-width:280px;min-height:88px;font-size:1.7rem;font-weight:800;letter-spacing:.01em;border-radius:18px}.kiosk-content .kiosk-shell .guided-actions .guided-checkin.ready{box-shadow:0 0 0 4px #c9a24a59,0 10px 28px #00000059;animation:guided-checkin-pulse 1.8s ease-in-out infinite}@keyframes guided-checkin-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.025)}}.kiosk-content .kiosk-shell .guided-actions .outline-button{flex:0 1 auto}app-checkin .reward-progress{margin-top:12px;padding:14px 18px 12px;border-radius:14px;border:1px solid rgba(201,162,74,.5);background:#ffffff0f}app-checkin .reward-progress-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px 14px;margin-bottom:14px}app-checkin .reward-progress-head strong{font:22px Georgia,serif;color:#f1cf81}app-checkin .reward-progress-head span{font-size:1.05rem;font-weight:600}app-checkin .reward-track{position:relative;height:14px;margin:0 44px 64px;border-radius:999px;background:#ffffff2e}app-checkin .reward-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,#c9a24a,#f1cf81);transition:width .5s ease}app-checkin .reward-milestone{position:absolute;top:50%;transform:translate(-50%);display:grid;justify-items:center;gap:2px;width:96px;text-align:center}app-checkin .reward-dot{width:30px;height:30px;margin-top:-15px;margin-bottom:4px;display:grid;place-items:center;border-radius:50%;border:3px solid #c9a24a;background:#2a2418;color:#1a1408;font-weight:800}app-checkin .reward-milestone.reached .reward-dot{background:#f1cf81}app-checkin .reward-milestone strong{font-size:1.1rem;white-space:nowrap}app-checkin .reward-milestone small{opacity:.8}app-checkin .reward-milestone:not(.reached) strong{opacity:.85}app-checkin .reward-note{display:block;opacity:.7}app-checkin .guided-answer:has(.guided-answer-image){grid-template-columns:38px auto minmax(0,1fr) auto}app-checkin .reward-progress-head strong{color:#8a6a1f}app-checkin .reward-track{background:#78643c38}app-checkin .reward-dot{background:#fff8e6}app-checkin .reward-milestone.reached .reward-dot{background:#c9a24a}app-checkin .reward-progress{background:#ffffff8c;color:#2a2418}app-checkin .reward-progress,app-checkin .reward-progress-head strong,app-checkin .reward-progress-head span,app-checkin .reward-milestone strong,app-checkin .reward-milestone small,app-checkin .reward-note{color:#000;opacity:1}app-checkin .reward-track{background:#e4dcc8;border:2px solid #a8966a;box-sizing:border-box;height:18px}app-checkin .reward-fill{min-width:0}.admin-error-content{display:grid;gap:12px;max-width:460px;margin:auto;padding:24px 22px calc(20px + env(safe-area-inset-bottom));border:2px solid #c0562f;border-radius:16px;background:#1b110d;color:#f8eadf;box-shadow:0 24px 60px #0000008c}.admin-error-content h2{margin:0;font:1.4rem Georgia,serif;color:#ffcfb5}.admin-error-content p{margin:0;line-height:1.5}.admin-error-content ion-button{--background: #e6a45e;--color: #241006;--border-radius: 10px;font-weight:800}app-admin-checkin .admin-group{display:grid;gap:16px;margin:0 0 28px;padding:16px;border:1px solid rgba(201,162,74,.35);border-radius:18px;background:#ffffff05}app-admin-checkin .admin-group-title{margin:0;font:1.5rem Georgia,serif;color:#f1cf81;display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px}app-admin-checkin .admin-group-title small{font:400 .9rem system-ui,sans-serif;opacity:.75}app-admin-checkin .admin-group>.artwork-editor{margin:0}app-admin-checkin .welcome-poster-controls img{display:block;width:auto;max-width:180px;height:auto;max-height:120px;object-fit:contain;border-radius:10px;border:1px solid rgba(201,162,74,.35)}app-admin-checkin .section-list{gap:12px}app-admin-checkin .section-row{align-items:start;padding:12px 14px;border:1px solid rgba(201,162,74,.28);border-radius:12px;background:#ffffff08}app-admin-checkin .section-row select{height:auto;min-height:0}app-admin-checkin .section-rules{grid-column:1/-1;border-top:1px dashed rgba(201,162,74,.3);padding-top:8px}app-admin-checkin .section-rules>summary{cursor:pointer;font-weight:700;color:#ead48f;list-style-position:inside}app-admin-checkin .section-rules .rule-count{display:inline-block;min-width:1.4em;padding:0 7px;margin-left:6px;border-radius:999px;background:#c9a24a40;text-align:center;font-size:.8rem}app-admin-checkin .section-rules .section-availability{display:grid;grid-template-columns:minmax(180px,260px) minmax(0,1fr);gap:10px 16px;align-items:start;margin:10px 0;padding:10px;border:1px solid rgba(201,162,74,.2);border-radius:10px}app-admin-checkin .section-rules .section-availability>label{display:grid;gap:4px}app-admin-checkin .section-rules .section-availability>button{grid-column:1/-1;justify-self:start}app-admin-checkin .availability-option-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:4px 12px;max-height:190px;overflow-y:auto;padding:8px 10px;border:1px solid rgba(201,162,74,.25);border-radius:10px;background:#00000040;align-content:start}app-admin-checkin .availability-option-list>span{grid-column:1/-1;font-size:.8rem;opacity:.8}app-admin-checkin .availability-option-list label.section-required{display:flex;align-items:center;gap:6px;margin:0;font-size:.85rem}app-admin-checkin .guided-editor{padding:22px;margin-bottom:8px}app-admin-checkin .guided-editor .button-row{margin:18px 0 20px;padding:12px 14px;display:flex;flex-wrap:wrap;align-items:center;gap:10px;border:1px solid rgba(201,162,74,.25);border-radius:12px;background:#ffffff08}app-admin-checkin .guided-editor .guided-save{margin-left:auto;min-width:230px;min-height:48px;padding:0 22px;border-radius:12px;font-size:1rem;font-weight:800;letter-spacing:.02em}app-admin-checkin .guided-editor .guided-save.dirty{background:linear-gradient(135deg,#f1cf81,#c9a24a);color:#1a1408;box-shadow:0 0 0 3px #f1cf814d,0 8px 22px #0006}app-admin-checkin .guided-editor .guided-save:disabled{opacity:1;box-shadow:none;background:#ffffff0f;color:#bfae85;border:1px solid rgba(201,162,74,.3)}@media(max-width:720px){app-admin-checkin .section-rules .section-availability{grid-template-columns:1fr}app-admin-checkin .guided-editor .guided-save{margin-left:0;width:100%}}.ta-monitor{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px;margin:0 0 16px}.ta-monitor-item{display:grid;gap:3px;padding:10px 12px;border-radius:12px;border:1px solid rgba(201,162,74,.3);background:#ffffff0a;border-left-width:5px}.ta-monitor-item small{font-size:.75rem;letter-spacing:.06em;text-transform:uppercase;opacity:.75}.ta-monitor-item strong{font-size:1.15rem}.ta-monitor-item span{font-size:.8rem;opacity:.8;line-height:1.3}.ta-monitor-item[data-level=ok]{border-left-color:#4caf6a}.ta-monitor-item[data-level=warn]{border-left-color:#e0b95a}.ta-monitor-item[data-level=fail]{border-left-color:#e0553a;background:#e0553a1a}.ta-monitor-item[data-level=info]{border-left-color:#6aa6d8}.ta-outbox{margin:14px 0}.ta-outbox>summary{cursor:pointer;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px}.ta-outbox>summary h4{display:inline;margin:0}.ta-outbox-item{display:grid;gap:6px;margin:8px 0;padding:10px 12px;border:1px solid rgba(201,162,74,.28);border-radius:12px;background:#ffffff08}.ta-outbox-item[data-status=queued]{border-color:#e0b95ab3}.ta-outbox-head{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px}.ta-outbox-text{margin:0;white-space:pre-wrap;line-height:1.4}app-admin-appointment .request-capacity .capacity-chip.over{border-color:#e0553a;background:#e0553a38;color:#ffd9d0}@media(max-width:760px){app-appointment .estimate-footer{display:flex!important;flex-direction:column}app-appointment .estimate-footer .estimate-content{order:1;overflow-y:auto}app-appointment .estimate-footer .estimate-actions{order:2;flex-wrap:wrap;border-top:1px solid rgba(201,162,74,.2)}app-appointment .estimate-footer .estimate-dock{order:3;border-top:1px solid rgba(201,162,74,.2);padding-bottom:env(safe-area-inset-bottom)}app-appointment .estimate-actions .footer-back,app-appointment .estimate-actions .footer-next{flex:1 1 calc(50% - 6px)!important;margin:0}app-appointment .estimate-actions .footer-next:only-of-type,app-appointment .estimate-actions .footer-next:first-child{flex-basis:100%!important}app-appointment .estimate-actions .add-another-service{flex:1 1 100%!important;order:-1}}app-appointment .month-calendar{margin:10px 0 14px;padding:14px 12px 12px;border:1px solid rgba(201,162,74,.28);border-radius:18px;background:linear-gradient(160deg,#c9a24a1a,#ffffff05)}app-appointment .calendar-title{margin-bottom:12px;font-size:1.15rem}app-appointment .calendar-title button{width:38px;height:38px;min-height:38px;border-radius:50%;border-color:#c9a24a80;background:#c9a24a1f;color:#f0d992}app-appointment .weekdays{margin-bottom:4px}app-appointment .weekdays span{color:#c9a24a;letter-spacing:.06em}app-appointment .calendar-days{gap:6px}app-appointment .calendar-days button{border-radius:50%;border-color:transparent;background:#ffffff0d;font-size:.95rem;font-weight:700}app-appointment .calendar-days button:not(:disabled){border-color:#c9a24a8c;background:#c9a24a24}app-appointment .calendar-days button.selected{border-color:#f0d992;background:#c9a24a;color:#080704;box-shadow:0 0 0 3px #c9a24a47}app-appointment .calendar-days button:disabled{border-color:transparent;background:transparent;color:#6f6657;opacity:.6}app-appointment .time-slots{gap:8px}app-appointment .time-slots button{min-height:42px;border-radius:999px;border-color:#c9a24a80;background:#c9a24a1a;font-weight:700}app-appointment .time-slots button.selected{border-color:#f0d992;background:#c9a24a;color:#080704}@media(max-width:700px){app-appointment .schedule-picker{display:block!important}app-appointment .schedule-picker>.available-times{max-height:none!important;margin-top:4px!important;padding:14px 0 0!important;border-left:0!important;border-top:1px solid rgba(201,162,74,.24)!important}app-appointment .schedule-picker>.available-times .time-slots{grid-template-columns:repeat(3,minmax(0,1fr))!important}}app-appointment{max-width:100vw;overflow-x:hidden}@media(max-width:430px){app-appointment .estimate-actions{flex-wrap:wrap;gap:6px;padding:8px 8px calc(8px + env(safe-area-inset-bottom))}app-appointment .estimate-actions ion-button{flex:1 1 0;min-width:0;margin:0;--padding-start: 6px;--padding-end: 6px;font-size:.85rem;line-height:1.15;white-space:normal}app-appointment .estimate-summary{padding:8px 12px!important;gap:8px;min-width:0}app-appointment .estimate-summary span{font-size:.75rem!important;min-width:0}app-appointment .estimate-summary strong{font-size:1rem;flex:0 0 auto}app-appointment .service-card h3,app-appointment .service-details h3{font-size:1.05rem;line-height:1.2;overflow-wrap:anywhere}app-appointment .service-details,app-appointment .service-card>*{min-width:0}app-appointment .booking-flow-total{font-size:.72rem}app-appointment .header-progress button{font-size:.56rem}}@media(max-width:340px){app-appointment .estimate-actions ion-button{font-size:.78rem}app-appointment .estimate-summary span{letter-spacing:0}app-appointment .service-card h3,app-appointment .service-details h3{font-size:.95rem}}app-admin-appointment .request-section-title{margin:18px 0 8px;font:1.25rem Georgia,serif;color:#f1cf81;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px}app-admin-appointment .request-section-title small{font:400 .85rem system-ui,sans-serif;opacity:.75}app-admin-appointment .request-section-empty{opacity:.7;margin:0 0 12px}app-admin-appointment .request-completed{margin-top:22px;padding-top:6px;border-top:2px solid rgba(201,162,74,.35)}app-admin-appointment .request-completed>summary{cursor:pointer;list-style-position:inside}app-admin-appointment .request-completed>summary h3{display:inline-flex}app-admin-appointment .open-hours-note,.open-hours-note{display:block;margin-top:4px;opacity:.75;font-size:.8rem}.ta-usage{margin:14px 0}.ta-usage>summary{cursor:pointer;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px}.ta-usage>summary h4{display:inline;margin:0}.ta-usage-totals{display:flex;flex-wrap:wrap;gap:8px 22px;margin:8px 0}.ta-usage-totals strong{font-size:1.2rem;margin-left:6px}.ta-usage-table{width:100%;border-collapse:collapse;font-size:.85rem}.ta-usage-table th,.ta-usage-table td{padding:5px 8px;text-align:right;border-bottom:1px solid rgba(201,162,74,.2)}.ta-usage-table th:first-child,.ta-usage-table td:first-child{text-align:left}app-checkin .guided-review-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:12px 24px}app-checkin .guided-review-head .guided-prompt{flex:1 1 320px;margin:0}app-checkin .guided-review-total{display:grid;justify-items:end;padding:8px 18px;border-radius:16px;background:#1a1408;color:#f1cf81;line-height:1.1}app-checkin .guided-review-total small{font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;opacity:.8}app-checkin .guided-review-total strong{font:2.1rem Georgia,serif}app-checkin .guided-review-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;margin:16px 0}app-checkin .guided-review-card{display:flex;flex-direction:column;gap:8px;align-items:stretch;text-align:left;padding:16px 18px;border:2px solid #c8bda9;border-radius:16px;background:#fff;color:#171612;font-size:1.05rem}app-checkin .guided-review-category{font-size:.8rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#7d6531}app-checkin .guided-review-main{display:flex;justify-content:space-between;align-items:baseline;gap:12px}app-checkin .guided-review-main strong{font-size:1.3rem;line-height:1.2;font-weight:700}app-checkin .guided-review-main b{font-size:1.3rem}app-checkin .guided-review-main b{color:#4e3b16;white-space:nowrap}app-checkin .guided-review-addon,app-checkin .guided-review-subtotal{display:flex;justify-content:space-between;gap:12px;color:#4a4033;padding-left:4px}app-checkin .guided-review-addon b{white-space:nowrap;font-weight:600}app-checkin .guided-review-subtotal{margin-top:auto;padding-top:6px;border-top:1px dashed #c8bda9;font-weight:700}app-checkin .guided-actions .guided-to-review{margin-right:28px}app-checkin .guided-stepper{display:inline-flex;align-items:center;gap:12px;margin-left:auto;padding:4px 6px;border-radius:999px;background:#fff;border:2px solid #6f4d0b}app-checkin .guided-stepper strong{min-width:1.6ch;text-align:center;font-size:1.4rem}app-checkin .guided-step-btn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:#1a1408;color:#f1cf81;font-size:1.6rem;font-weight:800;line-height:1;cursor:pointer;-webkit-user-select:none;user-select:none}app-checkin .guided-step-btn.disabled{opacity:.35;pointer-events:none}app-admin-appointment .status-off{border-color:#c8c8c859;background:#c8c8c81a;color:#d8d4cc}app-admin-appointment .health-checks .health-line{display:block;white-space:pre-wrap;overflow-wrap:anywhere}app-admin-appointment .card-photos{display:flex;flex-wrap:wrap;gap:8px}app-admin-appointment .card-photos img{display:block;width:110px;height:110px;object-fit:cover;border-radius:10px;border:1px solid rgba(201,162,74,.45)}app-admin-appointment .svc-goes{border-radius:10px;background:#ffffff0a;padding:6px 10px}app-admin-appointment .svc-goes summary{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 10px;cursor:pointer;list-style:none;font-size:.9rem}app-admin-appointment .svc-goes summary span{font-size:.7rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;opacity:.75}app-admin-appointment .svc-goes summary strong{font-weight:600;overflow-wrap:anywhere}app-admin-appointment .svc-goes-help{margin:6px 0;font-size:.76rem;opacity:.7}app-admin-appointment .svc-goes-options{display:flex;flex-wrap:wrap;gap:6px}app-admin-appointment .svc-goes-option{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border:1px solid rgba(201,162,74,.35);border-radius:999px;margin:0}app-admin-appointment .svc-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 14px;margin:4px 0 8px}app-admin-appointment .svc-filters{display:flex;flex-wrap:wrap;gap:6px}app-admin-appointment .svc-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border:1px solid rgba(201,162,74,.4);border-radius:999px;background:transparent;color:inherit;font-weight:700;font-size:.82rem}app-admin-appointment .svc-chip small{opacity:.7;font-weight:600}app-admin-appointment .svc-chip.active{background:#c9a24a;border-color:#c9a24a;color:#1a1408}app-admin-appointment .svc-view{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;font-size:.85rem}app-admin-appointment .svc-view label{display:inline-flex;align-items:center;gap:6px;margin:0}app-admin-appointment .svc-view select{padding:5px 8px}app-admin-appointment .svc-table{--svc-cols: 26px minmax(150px, 2.2fr) 112px minmax(130px, 1.3fr) 56px 78px 34px;display:grid;gap:0}app-admin-appointment .svc-table-head{position:sticky;top:0;z-index:3;display:grid;grid-template-columns:var(--svc-cols);gap:8px;padding:6px 8px;background:#17120a;border-bottom:1px solid rgba(201,162,74,.45);font-size:.7rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;opacity:.95}app-admin-appointment .svc-group h3{margin:0;padding:0}app-admin-appointment .svc-group-toggle{display:flex;align-items:center;gap:8px;width:100%;padding:8px;border:0;border-bottom:1px solid rgba(201,162,74,.25);background:#c9a24a14;color:inherit;text-align:left;font-size:.95rem;font-weight:800;cursor:pointer}app-admin-appointment .svc-group-toggle small{opacity:.65;font-weight:500}app-admin-appointment .svc-caret{width:1em;opacity:.8}app-admin-appointment .svc-row{position:relative;display:grid;grid-template-columns:var(--svc-cols);align-items:center;gap:4px 8px;padding:3px 8px;border-bottom:1px solid rgba(201,162,74,.12);border-left:3px solid transparent;min-width:0}app-admin-appointment .svc-row:hover{background:#ffffff0a}app-admin-appointment .svc-row.selected{background:#c9a24a1f}app-admin-appointment .svc-row.dirty{border-left-color:#c9a24a}app-admin-appointment .svc-row.open{background:#ffffff0d}app-admin-appointment .svc-row select,app-admin-appointment .svc-row input[type=number]{width:100%;min-width:0;box-sizing:border-box;padding:4px 6px;font-size:.85rem}app-admin-appointment .svc-c-pick{width:18px;height:18px;margin:0;accent-color:#c9a24a}app-admin-appointment .svc-c-name{min-width:0;padding:4px 0;border:0;background:transparent;color:inherit;text-align:left;font-weight:600;font-size:.92rem;line-height:1.2;overflow-wrap:anywhere;cursor:pointer}app-admin-appointment .svc-c-role[data-role=main]{border-color:#c9a24ab3}app-admin-appointment .svc-c-role[data-role=addon]{border-color:#50a0dcb3}app-admin-appointment .svc-c-role[data-role=unclassified]{opacity:.7}app-admin-appointment .svc-c-pos{text-align:center;opacity:.8;font-size:.85rem}app-admin-appointment .svc-c-more{width:30px;height:30px;padding:0;border:1px solid rgba(201,162,74,.35);border-radius:8px;background:transparent;color:inherit;cursor:pointer}app-admin-appointment .svc-panel{grid-column:2/-1;display:grid;gap:10px;padding:8px 0 10px}app-admin-appointment .svc-panel>label:not(.svc-switch){display:grid;gap:3px;max-width:280px;margin:0}app-admin-appointment .svc-panel>label:not(.svc-switch)>span,app-admin-appointment .svc-goes-title{font-size:.7rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;opacity:.75}app-admin-appointment .svc-panel .svc-goes{display:grid;gap:6px;background:transparent;padding:0}app-admin-appointment .svc-goes-title strong{margin-left:6px;text-transform:none;letter-spacing:0;opacity:1;font-weight:600}app-admin-appointment .svc-empty{padding:14px 8px;opacity:.7}@media(max-width:720px){app-admin-appointment .svc-table-head{display:none}app-admin-appointment .svc-row{grid-template-columns:26px minmax(0,1fr) minmax(0,1fr) 34px;grid-template-areas:"pick name name more" ". role cat cat" ". pos mins mins" "panel panel panel panel";padding:6px 8px;row-gap:6px}app-admin-appointment .svc-c-pick{grid-area:pick}app-admin-appointment .svc-c-name{grid-area:name;font-size:.95rem}app-admin-appointment .svc-c-more{grid-area:more}app-admin-appointment .svc-c-role{grid-area:role}app-admin-appointment .svc-c-cat{grid-area:cat}app-admin-appointment .svc-c-pos{grid-area:pos;text-align:left}app-admin-appointment .svc-c-pos:before{content:"POS min ";opacity:.65;font-size:.72rem}app-admin-appointment .svc-c-mins{grid-area:mins}app-admin-appointment .svc-panel{grid-area:panel;grid-column:1/-1}}app-checkin .appointment-prompt{font-size:1.15rem}app-checkin .appointment-prompt strong{color:#7d5a14}app-checkin .appointment-list{gap:18px}app-checkin .appointment-row:not(.checked-in){min-height:190px;padding:26px 34px;border:3px solid #b8872a;border-left-width:12px;border-radius:26px;background:#fffdf5;box-shadow:0 10px 30px #78540e47;animation:appointment-glow 1.8s ease-in-out infinite}app-checkin .appointment-row:not(.checked-in) .appointment-time{font-size:44px;color:#6b4b0b}app-checkin .appointment-row:not(.checked-in) .appointment-detail strong{font-size:30px}app-checkin .appointment-row:not(.checked-in) .appointment-technician{font-size:17px}app-checkin .appointment-row:not(.checked-in) .appointment-select{min-width:220px;padding:22px 30px;border-radius:999px;background:linear-gradient(135deg,#e7c46a,#b8872a);color:#1a1408;font-size:28px;font-weight:800;letter-spacing:0;text-transform:none;text-align:center;box-shadow:0 6px 16px #00000040}app-checkin .appointment-list+.outline-button{margin-top:30px;min-height:56px;border-color:#cfc3ae;background:transparent;color:#6f685c;font-size:1.05rem;font-weight:600}@keyframes appointment-glow{0%,to{box-shadow:0 10px 30px #78540e47}50%{box-shadow:0 10px 38px #c9a24abf}}@media(prefers-reduced-motion:reduce){app-checkin .appointment-row:not(.checked-in){animation:none}}@media(max-width:900px){app-checkin .appointment-row:not(.checked-in){min-height:0;grid-template-columns:1fr;padding:20px;border-left-width:8px}app-checkin .appointment-row:not(.checked-in) .appointment-time{font-size:34px}app-checkin .appointment-row:not(.checked-in) .appointment-detail strong{font-size:24px}app-checkin .appointment-row:not(.checked-in) .appointment-select{min-width:0;width:100%;font-size:24px}}app-checkin .guided-todo{display:grid;gap:12px;margin:18px 0}app-checkin .guided-todo-title{margin:0;font-size:1.15rem;font-weight:800;color:#8c2f12}app-checkin .guided-todo .guided-answer.guided-need{min-height:84px;padding:18px 22px;border-width:3px;border-radius:16px;animation:need-pulse 1.8s ease-in-out infinite}app-checkin .guided-todo .guided-need strong{font-size:1.35rem}app-checkin .guided-todo .guided-need small{display:block;margin-top:2px;font-size:1rem;color:#8c2f12}app-checkin .guided-todo .guided-need>b{padding:12px 20px;border-radius:12px;background:#b04a2a;color:#fff;font-size:1.15rem;white-space:nowrap}@keyframes need-pulse{0%,to{box-shadow:0 0 #b04a2a73}50%{box-shadow:0 0 0 10px #b04a2a00}}@media(prefers-reduced-motion:reduce){app-checkin .guided-todo .guided-answer.guided-need{animation:none}}@media(min-width:901px){app-checkin .appointment-row:not(.checked-in){grid-template-columns:170px minmax(0,1fr) auto;grid-template-areas:"time detail select" "time tech select";align-items:center}app-checkin .appointment-row:not(.checked-in) .appointment-time{grid-area:time}app-checkin .appointment-row:not(.checked-in) .appointment-detail{grid-area:detail}app-checkin .appointment-row:not(.checked-in) .appointment-technician{grid-area:tech;padding-left:0;border-left:0}app-checkin .appointment-row:not(.checked-in) .appointment-select{grid-area:select}}app-checkin .appointment-detail strong{display:block}app-checkin .appointment-detail .appointment-pick{font-size:.6em;font-weight:600;color:#8c2f12}app-checkin .guided-review-item{display:flex;flex-direction:column;gap:6px}app-checkin .guided-review-item .guided-review-card{flex:1 1 auto}app-checkin .guided-review-remove{align-self:flex-end;min-height:36px;padding:4px 14px;border:1px solid #c9a79b;border-radius:999px;background:#fff;color:#8c2f12;font-size:.95rem;font-weight:700}app-checkin .guided-heading{margin:22px 0 8px;font:800 1rem/1.2 inherit;letter-spacing:.14em;text-transform:uppercase;color:#7d6531}app-checkin .guided-heading:first-of-type{margin-top:6px}app-checkin .guided-groups{display:flex;flex-wrap:wrap;gap:4px 20px;align-items:flex-start}app-checkin .guided-group{flex:1 1 100%;min-width:0}app-checkin .guided-group.guided-group-small{flex:0 1 calc(33.333% - 14px);min-width:260px}app-checkin .guided-group.guided-group-small .guided-answers{grid-template-columns:minmax(0,1fr)}app-checkin .guided-group .guided-heading{margin:10px 0 6px;font-size:.9rem}app-checkin .guided-groups{--guided-card: clamp(44px, calc((100dvh - 400px) / var(--guided-rows, 4) - 12px), 74px)}.kiosk-content .kiosk-shell .guided-groups .guided-answer,app-checkin .guided-groups .guided-answer{min-height:var(--guided-card);padding-block:clamp(3px,var(--guided-card) / 8,10px)}app-checkin .guided-groups .guided-answer strong{font-size:clamp(14px,var(--guided-card) / 4.4,17px)}app-checkin .guided-groups .guided-answer-image{width:clamp(36px,var(--guided-card) * 1.4,104px);height:clamp(36px,var(--guided-card) * 1.4,104px)}app-admin-checkin .flow-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:12px;margin:4px 0 12px}app-admin-checkin .flow-card{display:grid;gap:8px;align-content:start;padding:14px;border:2px solid rgba(201,162,74,.3);border-radius:14px;background:#ffffff08}app-admin-checkin .flow-card.live{border-color:#c9a24a;background:#c9a24a1a}app-admin-checkin .flow-card strong{font-size:1.15rem}app-admin-checkin .flow-card small{opacity:.8;line-height:1.4}app-admin-checkin .flow-pill{justify-self:start;padding:2px 10px;border-radius:999px;font-size:.7rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;border:1px solid rgba(255,255,255,.25);opacity:.8}app-admin-checkin .flow-pill.on{background:#c9a24a;border-color:#c9a24a;color:#1a1408;opacity:1}app-admin-checkin .flow-card-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}app-admin-checkin .flow-use,app-admin-checkin .flow-edit{padding:8px 14px;border-radius:10px;border:1px solid rgba(201,162,74,.6);background:transparent;color:inherit;font-weight:700;cursor:pointer}app-admin-checkin .flow-use:not(:disabled){background:#c9a24a;border-color:#c9a24a;color:#1a1408}app-admin-checkin .flow-use:disabled{opacity:.7;cursor:default}app-admin-checkin .flow-tabs{display:flex;gap:6px;margin-bottom:14px;border-bottom:1px solid rgba(201,162,74,.35)}app-admin-checkin .flow-tabs button{padding:10px 16px;border:0;border-bottom:3px solid transparent;background:transparent;color:inherit;font-weight:700;opacity:.7;cursor:pointer}app-admin-checkin .flow-tabs button.active{border-bottom-color:#c9a24a;opacity:1}app-admin-appointment .flow-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:12px;margin:4px 0 12px}app-admin-appointment .flow-card{display:grid;gap:8px;align-content:start;padding:14px;border:2px solid rgba(201,162,74,.3);border-radius:14px;background:#ffffff08}app-admin-appointment .flow-card.live{border-color:#c9a24a;background:#c9a24a1a}app-admin-appointment .flow-card strong{font-size:1.15rem}app-admin-appointment .flow-card small{opacity:.8;line-height:1.4}app-admin-appointment .flow-pill{justify-self:start;padding:2px 10px;border-radius:999px;font-size:.7rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;border:1px solid rgba(255,255,255,.25);opacity:.8}app-admin-appointment .flow-pill.on{background:#c9a24a;border-color:#c9a24a;color:#1a1408;opacity:1}app-admin-appointment .flow-card-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}app-admin-appointment .flow-use,app-admin-appointment .flow-edit{padding:8px 14px;border-radius:10px;border:1px solid rgba(201,162,74,.6);background:transparent;color:inherit;font-weight:700}app-admin-appointment .flow-use:not(:disabled){background:#c9a24a;border-color:#c9a24a;color:#1a1408}app-admin-appointment .flow-use:disabled{opacity:.7}app-admin-appointment .flow-tabs{display:flex;gap:6px;border-bottom:1px solid rgba(201,162,74,.35)}app-admin-appointment .flow-tabs button{padding:10px 16px;border:0;border-bottom:3px solid transparent;background:transparent;color:inherit;font-weight:700;opacity:.7}app-admin-appointment .flow-tabs button.active{border-bottom-color:#c9a24a;opacity:1}app-appointment .guided-preview-note{margin:0 0 10px;padding:8px 12px;border:1px dashed #d08060;border-radius:10px;background:#b04a2a29;color:#f6c7b0;font-weight:700;font-size:.88rem}app-appointment .guided-meta{margin:0 0 4px;color:#c9a24a;font-size:.74rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}app-appointment .guided-help{margin:0 0 10px;opacity:.85}app-appointment .guided-group{margin:0 0 8px}app-appointment .guided-group .service-card .service-image-button{align-self:center;display:grid;place-items:center;height:auto;aspect-ratio:auto;border:0;border-radius:0;background:transparent;overflow:visible}app-appointment .guided-group .service-card .service-image-button img{width:auto!important;height:auto!important;max-width:100%!important;max-height:150px!important;object-fit:contain!important;border-radius:8px;background:#000!important}app-appointment .guided-group .service-card:has(.service-image-button){grid-template-columns:112px minmax(0,1fr) auto!important;align-items:center}@media(max-width:430px){app-appointment .guided-group .service-card:has(.service-image-button){grid-template-columns:92px minmax(0,1fr)!important}}app-appointment .guided-heading{margin:14px 0 8px;color:#c9a24a;font-size:.85rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}app-appointment .guided-choice{cursor:pointer}app-appointment .guided-mark{display:inline-grid;place-items:center;width:30px;height:30px;border:2px solid rgba(201,162,74,.7);border-radius:50%;font-weight:800}app-appointment .guided-choice.selected .guided-mark,app-appointment .guided-group .service-card.selected .guided-mark{background:#c9a24a;border-color:#c9a24a;color:#1a1408}app-appointment .guided-stepper{display:inline-flex;align-items:center;gap:10px}app-appointment .guided-stepper strong{min-width:1.4ch;text-align:center}app-appointment .guided-nav{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;margin-top:12px}.guided-booking{position:relative}.guided-booking .guided-booking-transition{position:fixed;inset:0;z-index:1000;display:grid;place-content:center;justify-items:center;gap:14px;text-align:center;padding:24px;background:#080808f7;animation:guided-booking-transition-in .3s ease;cursor:pointer}.guided-booking .guided-booking-transition-kicker{text-transform:uppercase;letter-spacing:.14em;font-size:.85rem;font-weight:700;color:#d9b45a}.guided-booking .guided-booking-transition-topic{font-size:clamp(1.8rem,6vw,3rem);line-height:1.1;font-family:Georgia,serif;color:#f3e6c4}.guided-booking .guided-booking-transition-note{opacity:.8}@keyframes guided-booking-transition-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}app-technician-lines-editor .tle{display:grid;gap:14px}app-technician-lines-editor .tle-status{margin:0;padding:8px 12px;border-radius:10px;border:1px dashed rgba(201,162,74,.6);font-size:.9rem}app-technician-lines-editor .tle-status.warn{border-color:#dc6464b3;color:#f0a0a0}app-technician-lines-editor .tle-status.ok{border-color:#64b478b3}app-technician-lines-editor .tle-line{display:grid;gap:10px;padding:12px;border:1px solid rgba(201,162,74,.35);border-radius:12px}app-technician-lines-editor .tle-head{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:flex-end}app-technician-lines-editor .tle-no{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#c9a24a;color:#1a1408;font-weight:800}app-technician-lines-editor .tle-field{display:grid;gap:3px;flex:1 1 170px;font-size:.8rem}app-technician-lines-editor .tle-check{display:inline-flex;gap:6px;align-items:center;font-size:.85rem}app-technician-lines-editor input[type=text],app-technician-lines-editor input[type=search],app-technician-lines-editor select{min-height:40px;padding:6px 10px;border-radius:9px;border:1px solid rgba(201,162,74,.5);background:#fff;color:#1a1408;font:inherit}app-technician-lines-editor .tle-chips{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}app-technician-lines-editor .tle-chips li{display:inline-flex;align-items:center;gap:4px;padding:3px 4px 3px 10px;border-radius:999px;background:#c9a24a33}app-technician-lines-editor .tle-chips li.tle-none{background:transparent;padding-left:0;opacity:.7}app-technician-lines-editor .tle-x{border:0;background:transparent;color:inherit;padding:0 7px;font-size:1.1rem}app-technician-lines-editor .tle-order{display:inline-flex;align-items:center;gap:2px}app-technician-lines-editor .tle-x:disabled{opacity:.3}app-technician-lines-editor .tle-add{display:flex;flex-wrap:wrap;gap:8px;align-items:center}app-technician-lines-editor .tle-add input{flex:1 1 160px}app-technician-lines-editor .tle-add select{flex:2 1 240px}app-technician-lines-editor .tle-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}app-technician-lines-editor .tle-button{padding:8px 14px;border-radius:9px;border:1px solid rgba(201,162,74,.6);background:transparent;color:inherit;font-weight:700}app-technician-lines-editor .tle-button.primary{background:#c9a24a;border-color:#c9a24a;color:#1a1408}app-technician-lines-editor .tle-button:disabled{opacity:.5}app-technician-lines-editor .tle-note{margin:0;font-size:.85rem;opacity:.75}app-technician-lines-editor .tle-group{display:grid;gap:8px;padding:10px;border:1px dashed rgba(201,162,74,.45);border-radius:10px}app-technician-lines-editor .tle-group-head{display:flex;flex-wrap:wrap;gap:8px;align-items:center}app-technician-lines-editor .tle-group-head input{flex:1 1 160px}app-admin-appointment .warning-flag{display:inline-block;margin-left:6px;padding:0 6px;border-radius:999px;background:#e5484d;color:#fff;font-size:.62rem;font-weight:900;letter-spacing:.04em;line-height:1.5;vertical-align:middle}app-admin-appointment .calendar-block .warning-flag{align-self:flex-start;width:fit-content;flex:0 0 auto;margin:2px 0 0}app-admin-appointment .work-ticket-card .calendar-warning{display:block;order:-2;margin:-4px -6px 3px;background:#e5484d;color:#fff;font-size:.63rem;font-weight:900;letter-spacing:.06em;padding:2px 6px;text-align:center;text-transform:uppercase}app-admin-appointment .warning-line{margin:4px 0;padding:4px 8px;border-radius:8px;background:#e5484d2e;border:1px solid rgba(229,72,77,.7);color:#ffb4b6;font-weight:800}app-admin-appointment .customer-note{display:block;margin-top:2px;color:#ffd24a;font-size:.74rem;font-weight:700;white-space:normal}app-admin-appointment .customer-note-line,app-admin-appointment .customer-flags{margin:6px 0;padding:5px 9px;border-radius:8px;background:#ffd24a1f;border:1px solid rgba(255,210,74,.55);color:#ffe08a;font-weight:700;font-size:.85rem}app-admin-appointment .customer-flags .warning-flag{margin:0 8px 0 0}app-admin-appointment .added-chip{display:inline-block;margin-left:4px;padding:1px 7px;border-radius:999px;background:#ffffff38;color:#fff;font-size:.72rem;font-weight:900;line-height:1.35;box-shadow:0 0 0 1px #00000040}app-admin-appointment .time-additions{margin:6px 0;padding:0;list-style:none;display:grid;gap:4px}app-admin-appointment .time-additions li{padding:4px 8px;border-radius:8px;background:#ffffff14;font-size:.82rem;font-weight:700}app-checkin .guided-catalog{overflow:hidden}app-checkin .guided-pane.guided-question{flex:1 1 auto;height:100%;min-height:0;gap:8px;padding:clamp(10px,2vh,22px) clamp(14px,2.4vw,26px);overflow:hidden}app-checkin .guided-pane.guided-question>*{flex-shrink:0}app-checkin .guided-pane.guided-question>.guided-groups{flex:1 1 auto;min-height:0;overflow:hidden;align-content:flex-start;container-type:size}app-checkin .guided-pane.guided-question .guided-group{--guided-card: clamp(28px, calc((100cqh - 10px - var(--guided-heads, 0) * 34px) / var(--guided-rows, 4) - 12px), 84px)}app-checkin .guided-pane.guided-question .guided-groups .guided-answer-image{width:clamp(22px,var(--guided-card) - 12px,80px);height:clamp(22px,var(--guided-card) - 12px,80px)}app-checkin .guided-pane.guided-question .guided-prompt{font-size:clamp(22px,3.4vh,34px)}app-checkin .guided-pane.guided-question .guided-bar{margin:2px 0 4px}app-checkin .guided-pane.guided-question .guided-step{min-height:38px;padding:4px 14px}app-checkin .guided-pane.guided-question .guided-help,app-checkin .guided-pane.guided-question .guided-hint{margin:0;font-size:14px}app-checkin .guided-pane.guided-question .guided-group .guided-heading{margin:4px 0}app-checkin .guided-pane.guided-question .guided-actions{margin-top:0;padding-top:6px}
