*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.visible{visibility:visible}.collapse{visibility:collapse}.static{position:static}.mx-4{margin-left:1rem;margin-right:1rem}.my-3{margin-top:.75rem;margin-bottom:.75rem}.my-4{margin-top:1rem;margin-bottom:1rem}.inline-flex{display:inline-flex}.\!table{display:table!important}.table{display:table}.table-row{display:table-row}.grid{display:grid}.grow{flex-grow:1}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cursor-pointer{cursor:pointer}.rounded{border-radius:.25rem}.border{border-width:1px}.border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.px-4{padding-left:1rem;padding-right:1rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.text-sm{font-size:.875rem;line-height:1.25rem}.capitalize{text-transform:capitalize}.italic{font-style:italic}.text-primary{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.text-secondary{--tw-text-opacity: 1;color:rgb(100 116 139 / var(--tw-text-opacity, 1))}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}:root{--color-light: #ffffff;--color-dark: #171717}.accent-text{--tw-text-opacity: 1;color:rgb(71 85 105 / var(--tw-text-opacity, 1))}body{font-family:Inter Variable,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";color:var(--color-dark);background:var(--color-light)}.auth-input-field{width:100%;border-radius:.75rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding:.75rem 1rem;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);outline:2px solid transparent;outline-offset:2px;transition-property:box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.auth-input-field:hover{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.auth-input-field:focus{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1));--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.auth-button{width:100%;border-radius:.25rem;--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1));padding:.75rem 1rem;font-weight:600;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1));--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.auth-button:hover{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1));--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.auth-button:disabled{cursor:not-allowed;opacity:.5}.hover\:bg-gray-50:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.hover\:text-primary-hover:hover{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:shadow:hover{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}: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{left:0;right:0;top:0;bottom:0;display:flex;position:absolute;flex-direction:column;justify-content:space-between;contain:layout size style;z-index:0}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: env(safe-area-inset-top);--ion-safe-area-bottom: env(safe-area-inset-bottom);--ion-safe-area-left: env(safe-area-inset-left);--ion-safe-area-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::-moz-placeholder{padding-left:2px}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%;-moz-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;-moz-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-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);padding-inline-start: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);padding-inline-start:var(--ion-padding, 16px)}.ion-padding-end{--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);padding-inline-start: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);margin-inline-start: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);margin-inline-start:var(--ion-margin, 16px)}.ion-margin-end{--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);margin-inline-start:var(--ion-margin, 16px);margin-inline-end:var(--ion-margin, 16px)}.ion-float-left{float:left!important}.ion-float-right{float:right!important}.ion-float-start{float:left!important}:host-context([dir=rtl]) .ion-float-start{float:right!important}[dir=rtl] .ion-float-start{float:right!important}@supports selector(:dir(rtl)){.ion-float-start:dir(rtl){float:right!important}}.ion-float-end{float:right!important}:host-context([dir=rtl]) .ion-float-end{float:left!important}[dir=rtl] .ion-float-end{float:left!important}@supports selector(:dir(rtl)){.ion-float-end:dir(rtl){float:left!important}}@media (min-width: 576px){.ion-float-sm-left{float:left!important}.ion-float-sm-right{float:right!important}.ion-float-sm-start{float:left!important}:host-context([dir=rtl]) .ion-float-sm-start{float:right!important}[dir=rtl] .ion-float-sm-start{float:right!important}@supports selector(:dir(rtl)){.ion-float-sm-start:dir(rtl){float:right!important}}.ion-float-sm-end{float:right!important}:host-context([dir=rtl]) .ion-float-sm-end{float:left!important}[dir=rtl] .ion-float-sm-end{float:left!important}@supports selector(:dir(rtl)){.ion-float-sm-end:dir(rtl){float:left!important}}}@media (min-width: 768px){.ion-float-md-left{float:left!important}.ion-float-md-right{float:right!important}.ion-float-md-start{float:left!important}:host-context([dir=rtl]) .ion-float-md-start{float:right!important}[dir=rtl] .ion-float-md-start{float:right!important}@supports selector(:dir(rtl)){.ion-float-md-start:dir(rtl){float:right!important}}.ion-float-md-end{float:right!important}:host-context([dir=rtl]) .ion-float-md-end{float:left!important}[dir=rtl] .ion-float-md-end{float:left!important}@supports selector(:dir(rtl)){.ion-float-md-end:dir(rtl){float:left!important}}}@media (min-width: 992px){.ion-float-lg-left{float:left!important}.ion-float-lg-right{float:right!important}.ion-float-lg-start{float:left!important}:host-context([dir=rtl]) .ion-float-lg-start{float:right!important}[dir=rtl] .ion-float-lg-start{float:right!important}@supports selector(:dir(rtl)){.ion-float-lg-start:dir(rtl){float:right!important}}.ion-float-lg-end{float:right!important}:host-context([dir=rtl]) .ion-float-lg-end{float:left!important}[dir=rtl] .ion-float-lg-end{float:left!important}@supports selector(:dir(rtl)){.ion-float-lg-end:dir(rtl){float:left!important}}}@media (min-width: 1200px){.ion-float-xl-left{float:left!important}.ion-float-xl-right{float:right!important}.ion-float-xl-start{float:left!important}:host-context([dir=rtl]) .ion-float-xl-start{float:right!important}[dir=rtl] .ion-float-xl-start{float:right!important}@supports selector(:dir(rtl)){.ion-float-xl-start:dir(rtl){float:right!important}}.ion-float-xl-end{float:right!important}:host-context([dir=rtl]) .ion-float-xl-end{float:left!important}[dir=rtl] .ion-float-xl-end{float:left!important}@supports selector(:dir(rtl)){.ion-float-xl-end:dir(rtl){float:left!important}}}.ion-text-center{text-align:center!important}.ion-text-justify{text-align:justify!important}.ion-text-start{text-align:start!important}.ion-text-end{text-align:end!important}.ion-text-left{text-align:left!important}.ion-text-right{text-align:right!important}.ion-text-nowrap{white-space:nowrap!important}.ion-text-wrap{white-space:normal!important}@media (min-width: 576px){.ion-text-sm-center{text-align:center!important}.ion-text-sm-justify{text-align:justify!important}.ion-text-sm-start{text-align:start!important}.ion-text-sm-end{text-align:end!important}.ion-text-sm-left{text-align:left!important}.ion-text-sm-right{text-align:right!important}.ion-text-sm-nowrap{white-space:nowrap!important}.ion-text-sm-wrap{white-space:normal!important}}@media (min-width: 768px){.ion-text-md-center{text-align:center!important}.ion-text-md-justify{text-align:justify!important}.ion-text-md-start{text-align:start!important}.ion-text-md-end{text-align:end!important}.ion-text-md-left{text-align:left!important}.ion-text-md-right{text-align:right!important}.ion-text-md-nowrap{white-space:nowrap!important}.ion-text-md-wrap{white-space:normal!important}}@media (min-width: 992px){.ion-text-lg-center{text-align:center!important}.ion-text-lg-justify{text-align:justify!important}.ion-text-lg-start{text-align:start!important}.ion-text-lg-end{text-align:end!important}.ion-text-lg-left{text-align:left!important}.ion-text-lg-right{text-align:right!important}.ion-text-lg-nowrap{white-space:nowrap!important}.ion-text-lg-wrap{white-space:normal!important}}@media (min-width: 1200px){.ion-text-xl-center{text-align:center!important}.ion-text-xl-justify{text-align:justify!important}.ion-text-xl-start{text-align:start!important}.ion-text-xl-end{text-align:end!important}.ion-text-xl-left{text-align:left!important}.ion-text-xl-right{text-align:right!important}.ion-text-xl-nowrap{white-space:nowrap!important}.ion-text-xl-wrap{white-space:normal!important}}.ion-text-uppercase{text-transform:uppercase!important}.ion-text-lowercase{text-transform:lowercase!important}.ion-text-capitalize{text-transform:capitalize!important}@media (min-width: 576px){.ion-text-sm-uppercase{text-transform:uppercase!important}.ion-text-sm-lowercase{text-transform:lowercase!important}.ion-text-sm-capitalize{text-transform:capitalize!important}}@media (min-width: 768px){.ion-text-md-uppercase{text-transform:uppercase!important}.ion-text-md-lowercase{text-transform:lowercase!important}.ion-text-md-capitalize{text-transform:capitalize!important}}@media (min-width: 992px){.ion-text-lg-uppercase{text-transform:uppercase!important}.ion-text-lg-lowercase{text-transform:lowercase!important}.ion-text-lg-capitalize{text-transform:capitalize!important}}@media (min-width: 1200px){.ion-text-xl-uppercase{text-transform:uppercase!important}.ion-text-xl-lowercase{text-transform:lowercase!important}.ion-text-xl-capitalize{text-transform:capitalize!important}}.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}}.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}}:root{--ion-color-primary: #F6D57A;--ion-color-primary-rgb: 248, 208, 61;--ion-color-primary-contrast: #ffffff;--ion-color-primary-contrast-rgb: 255, 255, 255;--ion-color-primary-shade: #F6D57A;--ion-color-primary-tint: #F6D57A;--ion-color-secondary: #FAAB35;--ion-color-secondary-rgb: 250, 171, 53;--ion-color-secondary-contrast: #ffffff;--ion-color-secondary-contrast-rgb: 255, 255, 255;--ion-color-secondary-shade: #FAAB35;--ion-color-secondary-tint: #FAAB35;--ion-color-tertiary: #5260ff;--ion-color-tertiary-rgb: 82, 96, 255;--ion-color-tertiary-contrast: #ffffff;--ion-color-tertiary-contrast-rgb: 255, 255, 255;--ion-color-tertiary-shade: #4854e0;--ion-color-tertiary-tint: #6370ff;--ion-color-success: #2dd36f;--ion-color-success-rgb: 45, 211, 111;--ion-color-success-contrast: #ffffff;--ion-color-success-contrast-rgb: 255, 255, 255;--ion-color-success-shade: #28ba62;--ion-color-success-tint: #42d77d;--ion-color-warning: #ffc409;--ion-color-warning-rgb: 255, 196, 9;--ion-color-warning-contrast: #000000;--ion-color-warning-contrast-rgb: 0, 0, 0;--ion-color-warning-shade: #e0ac08;--ion-color-warning-tint: #ffca22;--ion-color-danger: #eb445a;--ion-color-danger-rgb: 235, 68, 90;--ion-color-danger-contrast: #ffffff;--ion-color-danger-contrast-rgb: 255, 255, 255;--ion-color-danger-shade: #cf3c4f;--ion-color-danger-tint: #ed576b;--ion-color-dark: #222428;--ion-color-dark-rgb: 34, 36, 40;--ion-color-dark-contrast: #ffffff;--ion-color-dark-contrast-rgb: 255, 255, 255;--ion-color-dark-shade: #1e2023;--ion-color-dark-tint: #383a3e;--ion-color-medium: #92949c;--ion-color-medium-rgb: 146, 148, 156;--ion-color-medium-contrast: #ffffff;--ion-color-medium-contrast-rgb: 255, 255, 255;--ion-color-medium-shade: #808289;--ion-color-medium-tint: #9d9fa6;--ion-color-light: #f4f5f8;--ion-color-light-rgb: 244, 245, 248;--ion-color-light-contrast: #000000;--ion-color-light-contrast-rgb: 0, 0, 0;--ion-color-light-shade: #d7d8da;--ion-color-light-tint: #f5f6f9}:root{--studyhub-primary: #F8D03D;--studyhub-primary-light: #f0d884;--studyhub-primary-dark: #34332e;--studyhub-secondary: #FAAB35;--studyhub-accent: #f4d6a0;--studyhub-success: #10b981;--studyhub-warning: #f59e0b;--studyhub-error: #ef4444;--ion-color-primary: var(--studyhub-primary);--ion-color-primary-shade: var(--studyhub-primary-dark);--ion-color-primary-tint: var(--studyhub-primary-light)}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--ion-color-medium);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--ion-color-medium-shade)}.custom-focus:focus{outline:2px solid var(--ion-color-primary);outline-offset:2px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.fade-in{animation:fadeIn .3s ease-out}.slide-up{animation:slideUp .4s ease-out}.pulse{animation:pulse 2s infinite}.custom-card{--background: white;--color: var(--ion-color-dark);border-radius:16px;box-shadow:0 4px 20px #00000014;margin:16px;overflow:hidden;transition:all .3s ease}.custom-card:hover{transform:translateY(-2px);box-shadow:0 8px 30px #0000001f}.btn-gradient{background:linear-gradient(135deg,var(--ion-color-primary) 0%,var(--ion-color-primary-shade) 100%);--border-radius: 12px;--box-shadow: 0 4px 12px rgba(79, 70, 229, .3);font-weight:600;transition:all .3s ease}.btn-gradient:hover{--box-shadow: 0 6px 20px rgba(79, 70, 229, .4);transform:translateY(-1px)}.status-active{color:var(--ion-color-success)}.status-inactive{color:var(--ion-color-medium)}.status-pending{color:var(--ion-color-warning)}.status-error{color:var(--ion-color-danger)}.text-gradient{background:linear-gradient(135deg,var(--ion-color-primary) 0%,var(--ion-color-secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.glass-effect{background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}.shadow-soft{box-shadow:0 2px 15px #00000014}.shadow-medium{box-shadow:0 4px 25px #00000026}.shadow-strong{box-shadow:0 10px 40px #0003}.text-xs{font-size:12px}.text-sm{font-size:14px}.text-base{font-size:16px}.text-lg{font-size:18px}.text-xl{font-size:20px}.text-2xl{font-size:24px}.text-3xl{font-size:30px}.font-light{font-weight:300}.font-normal{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.m-0{margin:0}.m-1{margin:4px}.m-2{margin:8px}.m-3{margin:12px}.m-4{margin:16px}.m-5{margin:20px}.m-6{margin:24px}.p-0{padding:0}.p-1{padding:4px}.p-2{padding:8px}.p-3{padding:12px}.p-4{padding:16px}.p-5{padding:20px}.p-6{padding:24px}.flex{display:flex}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.justify-end{justify-content:flex-end}.gap-1{gap:4px}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.gap-5{gap:20px}.gap-6{gap:24px}.rounded-none{border-radius:0}.rounded-sm{border-radius:4px}.rounded{border-radius:8px}.rounded-md{border-radius:12px}.rounded-lg{border-radius:16px}.rounded-xl{border-radius:20px}.rounded-full{border-radius:9999px}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.w-full{width:100%}.h-full{height:100%}.w-auto{width:auto}.h-auto{height:auto}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.block{display:block}.inline{display:inline}.inline-block{display:inline-block}.hidden{display:none}.ios .custom-card{--background: var(--ion-color-light)}.ios .btn-gradient{--box-shadow: none;border:none}.md .custom-card{border-radius:12px}.md .btn-gradient{--box-shadow: 0 2px 8px rgba(79, 70, 229, .3)}ion-content{--padding-top: env(safe-area-inset-top);--padding-bottom: env(safe-area-inset-bottom)}.transition-all{transition:all .3s ease}.transition-opacity{transition:opacity .3s ease}.transition-transform{transition:transform .3s ease}@media (hover: hover){.hover-lift:hover{transform:translateY(-2px)}.hover-scale:hover{transform:scale(1.05)}.hover-opacity:hover{opacity:.8}}.focus-ring:focus{outline:2px solid var(--ion-color-primary);outline-offset:2px}@media print{.no-print{display:none!important}}.login-content{--background: linear-gradient(135deg, var(--ion-color-primary) 0%, var(--ion-color-secondary) 100%)}.login-container{display:flex;flex-direction:column;justify-content:center;min-height:100%;padding:32px 24px}.login-header{text-align:center;margin-bottom:48px}.login-header h1{color:#fff;font-size:28px;font-weight:600;margin:0 0 8px}.login-header p{color:#fffc;font-size:16px;margin:0}.login-form{background:#fff;border-radius:16px;padding:32px 24px;box-shadow:0 8px 32px #0000001a;margin-bottom:24px}.login-form ion-item{--border-color: var(--ion-color-light-shade);--highlight-color: var(--ion-color-primary);margin-bottom:16px}.login-form ion-item.ion-invalid{--highlight-color: var(--ion-color-danger)}.error-text{font-size:12px;padding:0 16px;margin:-12px 0 16px;display:block}.login-button{margin-top:24px;--border-radius: 12px;height:48px;font-weight:600}.login-footer{text-align:center}.login-footer p{color:#ffffffe6;margin:0;font-size:14px}.register-link{color:#fff;text-decoration:none;font-weight:600}.register-link:hover{text-decoration:underline}.register-content{--background: linear-gradient(135deg, var(--ion-color-secondary) 0%, var(--ion-color-secondary-shade) 100%)}.register-container{display:flex;flex-direction:column;justify-content:center;min-height:100%;padding:32px 24px}.register-header{text-align:center;margin-bottom:32px}.register-header h1{color:#fff;font-size:28px;font-weight:600;margin:0 0 8px}.register-header p{color:#fffc;font-size:16px;margin:0}.register-form{background:#fff;border-radius:16px;padding:32px 24px;box-shadow:0 8px 32px #0000001a}.register-form ion-item{--border-color: var(--ion-color-light-shade);--highlight-color: var(--ion-color-secondary);margin-bottom:16px}.register-form ion-item.ion-invalid{--highlight-color: var(--ion-color-danger)}.register-button{margin-top:24px;--border-radius: 12px;height:48px;font-weight:600;--background: var(--ion-color-secondary)}.confirm-toast-alert{--backdrop-opacity: .6;--max-width: 400px;--border-radius: 16px;--box-shadow: 0 8px 32px rgba(0, 0, 0, .15)}.confirm-toast-alert .alert-wrapper{border-radius:16px;overflow:hidden;background:var(--ion-color-step-50, #f9f9f9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--ion-color-step-150, #e1e1e1)}.confirm-toast-alert .alert-head{padding:16px 20px 8px;background:linear-gradient(135deg,var(--ion-color-primary, #3880ff),var(--ion-color-secondary, #3171e0));color:#fff;font-weight:600}.confirm-toast-alert .alert-message{padding:12px 20px 16px;color:var(--ion-color-step-850, #262626);line-height:1.5;font-size:14px}.confirm-toast-alert .alert-button-group{display:flex;gap:8px;padding:12px 20px 16px;background:var(--ion-color-step-50, #f9f9f9)}.confirm-toast-cancel{--border-radius: 8px;--padding-start: 16px;--padding-end: 16px;--color: var(--ion-color-medium, #92949c);font-weight:500;flex:1}.confirm-toast-confirm{--border-radius: 8px;--padding-start: 16px;--padding-end: 16px;--background: var(--ion-color-primary, #3880ff);--color: white;font-weight:600;flex:1;box-shadow:0 2px 8px #3880ff4d}@keyframes slideInDown{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}.confirm-toast-alert.alert-enter-active{animation:slideInDown .3s ease-out}@media (prefers-color-scheme: dark){.confirm-toast-alert .alert-wrapper{background:var(--ion-color-step-100, #1e1e1e);border-color:var(--ion-color-step-200, #2c2c2c)}.confirm-toast-alert .alert-message{color:var(--ion-color-step-150, #d4d4d4)}.confirm-toast-alert .alert-button-group{background:var(--ion-color-step-100, #1e1e1e)}}@media (max-width: 767px){.confirm-toast-alert{--max-width: calc(100vw - 32px) }.confirm-toast-alert .alert-head,.confirm-toast-alert .alert-message,.confirm-toast-alert .alert-button-group{padding-left:16px;padding-right:16px}}.dashboard-content{background:var(--ion-color-primary);--padding-top: 0;--padding-bottom: 0}.dashboard-header{background:var(--ion-color-primary);--color: white}.dashboard-header ion-toolbar{--background: #F8D03D;--color: white}.dashboard-header ion-title{font-weight:700;font-size:20px;letter-spacing:-.5px}.profile-button{--color: rgba(255, 255, 255, .9);font-size:24px}.dashboard-container{padding:0;max-width:100%;margin:0}.hero-section{background:var(--ion-color-primary);padding:40px 24px 60px;position:relative;overflow:hidden}.hero-section:before{content:"";position:absolute;top:-50%;right:-20%;width:300px;height:300px;background:#ffffff1a;border-radius:50%;filter:blur(40px)}.hero-section:after{content:"";position:absolute;bottom:-30%;left:-10%;width:200px;height:200px;background:#ffffff0d;border-radius:50%;filter:blur(30px)}.hero-content{position:relative;z-index:2}.greeting-section{text-align:center;margin-bottom:32px}.greeting-text{font-size:16px;font-weight:500;color:var(--ion-color-dark);margin:0 0 4px;letter-spacing:.5px}.user-name{font-size:32px;font-weight:800;color:var(--ion-color-dark);margin:0 0 8px;letter-spacing:-1px;text-shadow:0 2px 20px rgba(0,0,0,.1)}.welcome-subtitle{font-size:16px;color:var(--ion-color-dark);margin:0;line-height:1.4}.hero-stats{display:flex;justify-content:center;align-items:center;gap:32px}.hero-stat{text-align:center;color:#fff}.stat-number{font-size:28px;font-weight:800;margin-bottom:4px;text-shadow:0 2px 10px rgba(0,0,0,.1)}.stat-label{font-size:13px;font-weight:500;color:#111010;text-transform:uppercase;letter-spacing:.5px}.stat-divider{width:1px;height:40px;background:#fff3}.active-session-banner{margin:-30px 16px 20px;background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000014;border:1px solid rgba(16,185,129,.2);border-left:4px solid #10b981;overflow:hidden;position:relative}.active-session-banner:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,#10b9810d,#10b98105);z-index:1}.session-banner-content{padding:12px 16px;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:2;gap:12px}.session-info-compact{flex:1;display:flex;flex-direction:column;gap:4px}.session-status-mini{display:flex;align-items:center;gap:8px}.status-dot-mini{width:6px;height:6px;background:#10b981;border-radius:50%;position:relative}.status-dot-mini:before{content:"";position:absolute;top:-2px;left:-2px;right:-2px;bottom:-2px;background:#10b981;border-radius:50%;opacity:.3;animation:pulse-mini 2s ease-in-out infinite}@keyframes pulse-mini{0%,to{transform:scale(1);opacity:.3}50%{transform:scale(1.4);opacity:.1}}.session-text{font-size:14px;font-weight:600;color:#1f2937;letter-spacing:.2px}.session-metrics-mini{display:flex;align-items:center;gap:8px}.metric-mini{font-size:12px;font-weight:600;color:#6b7280}.metric-separator{color:#d1d5db;font-weight:500}.end-session-mini{--padding-start: 12px;--padding-end: 12px;--border-radius: 8px;height:32px;font-size:12px;font-weight:600;min-width:auto;--color: white;--background: #ef4444;border:1px solid #ef4444;transition:all .2s ease;letter-spacing:.2px}.end-session-mini:hover{--background: #dc2626;transform:scale(1.05)}@media (max-width: 480px){.active-session-banner{margin:-25px 12px 16px;border-radius:10px}.session-banner-content{padding:10px 14px;gap:10px}.session-text{font-size:13px}.metric-mini{font-size:11px}.end-session-mini{height:28px;width:auto;--padding-start: 10px;--padding-end: 10px;font-size:11px;font-weight:600}}.session-card-header{background:linear-gradient(135deg,#10b981,#059669);color:#fff;padding:24px;display:flex;justify-content:space-between;align-items:flex-start}.session-info{flex:1}.session-title{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;margin-bottom:8px;opacity:.9}.session-icon{font-size:16px}.session-badge{font-size:11px;font-weight:700;padding:6px 12px;border-radius:20px;background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.3)}.session-table h3{font-size:20px;font-weight:700;margin:0 0 4px;text-shadow:0 1px 3px rgba(0,0,0,.1)}.session-table p{font-size:14px;opacity:.8;margin:0}.session-details{padding:24px}.session-metrics{display:flex;gap:24px;margin-bottom:24px}.metric{display:flex;align-items:center;gap:12px;flex:1}.metric ion-icon{font-size:20px;color:#6366f1}.metric-value{font-size:18px;font-weight:700;color:#1f2937;display:block}.metric-label{font-size:12px;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;font-weight:600}.end-session-btn{--border-radius: 12px;--border-width: 2px;font-weight:600;height:48px}.stats-section{padding:16px 16px 24px}.section-title{font-size:20px;font-weight:700;color:#1f2937;margin:0 0 20px;letter-spacing:-.5px}.stats-grid{padding:0;margin:0}.stats-grid ion-row{margin:0 -8px}.stats-grid ion-col{padding:8px}.modern-stat-card{background:var(--ion-color-primary);border-radius:20px;padding:0;box-shadow:0 8px 32px #0000001a;border:1px solid rgba(255,255,255,.2);position:relative;overflow:hidden;height:160px;display:flex;flex-direction:column;transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer}.modern-stat-card:hover{transform:translateY(-2px);box-shadow:0 8px 25px #0000001a}.modern-stat-card:active{transform:translateY(-1px);transition:all .1s ease}.modern-stat-card:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;opacity:.05;z-index:1}.modern-stat-card:after{display:none}.modern-stat-card:hover:after{display:none}.credits-card{background:var(--ion-color-primary);border:1px solid rgba(255,255,255,.1)}.credits-card:before{background:#0000000d}.premise-card{background:var(--ion-color-primary);border:1px solid rgba(255,255,255,.1)}.premise-card:before{background:#0000000d}.sessions-card{background:var(--ion-color-primary);border:1px solid rgba(255,255,255,.1)}.sessions-card:before{background:#0000000d}.performance-card{background:var(--ion-color-primary);border:1px solid rgba(255,255,255,.1)}.performance-card:before{background:#0000000d}.stat-card-header{padding:16px 20px 0;display:flex;justify-content:space-between;align-items:flex-start;position:relative;z-index:2}.stat-icon-container{width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px #0000001a;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.stat-icon-container:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:#0000000d;opacity:0;transition:opacity .3s ease}.modern-stat-card:hover .stat-icon-container{transform:scale(1.05);box-shadow:0 4px 12px #0000001a}.modern-stat-card:hover .stat-icon-container:before{opacity:1}.credits-icon,.premise-icon,.sessions-icon,.performance-icon{background:#0000000d;color:#000;border:1px solid rgba(0,0,0,.1)}.stat-icon-container ion-icon{font-size:20px;transition:all .3s ease;z-index:2;position:relative}.modern-stat-card:hover .stat-icon-container ion-icon{transform:scale(1.05)}.stat-trend{display:flex;align-items:center;gap:4px;padding:3px 6px;background:#0000001a;border-radius:10px;font-size:11px;font-weight:600;color:#000}.stat-trend ion-icon{font-size:10px}.status-badge{padding:3px 8px;border-radius:10px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.status-badge.active{background:#0000001a;color:#000;border:1px solid rgba(0,0,0,.2)}.status-badge.inactive{background:#0000000d;color:#000;opacity:.6;border:1px solid rgba(0,0,0,.1)}.stat-change{display:flex;align-items:center;gap:4px;padding:3px 6px;border-radius:10px;font-size:11px;font-weight:600}.stat-change.positive{background:#0000001a;color:#000}.performance-badge{font-size:16px;display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:#0000000d;border-radius:10px;border:1px solid rgba(0,0,0,.1)}.stat-card-content{padding:12px 20px 20px;flex:1;position:relative;z-index:2;display:flex;flex-direction:column;justify-content:center}.stat-main-value{font-size:28px;font-weight:900;color:#000;margin-bottom:6px;line-height:1;display:flex;align-items:baseline;gap:4px}.stat-unit{font-size:16px;font-weight:600;color:#000}.stat-title{font-size:13px;font-weight:600;color:#000;margin-bottom:4px;letter-spacing:.2px}.stat-subtitle{font-size:11px;color:#000;line-height:1.3;opacity:.8}.stat-change-text{color:#000;opacity:.6}.stat-highlight{font-weight:700;color:#000}.access-active{color:#000;opacity:.9}.access-inactive{color:#000;opacity:.6}.stat-card-footer{padding:0 20px 16px;position:relative;z-index:2}.progress-bar{width:100%;height:4px;background:#0000001a;border-radius:2px;overflow:hidden}.progress-fill{height:100%;border-radius:2px;transition:width .3s ease}.credits-progress{background:#0009}.access-indicator{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:500;color:#000;opacity:.8}.indicator-dot{width:8px;height:8px;border-radius:50%;position:relative}.indicator-dot.active{background:#000;opacity:.8}.indicator-dot.inactive{background:#000;opacity:.3}.indicator-dot.active:before{content:"";position:absolute;top:-2px;left:-2px;right:-2px;bottom:-2px;background:#000;border-radius:50%;opacity:.2;animation:pulse-dot 2s ease-in-out infinite}@keyframes pulse-dot{0%,to{transform:scale(1);opacity:.3}50%{transform:scale(1.2);opacity:.1}}.completion-rate{display:flex;justify-content:space-between;align-items:center}.rate-label{font-size:11px;color:#000;opacity:.7;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.rate-value{font-size:14px;font-weight:700;color:#000}.weekly-goal,.goal-progress{width:100%}.goal-bar{width:100%;height:6px;background:#0000001a;border-radius:3px;overflow:hidden;margin-bottom:6px}.goal-fill{height:100%;background:#0009;border-radius:3px;transition:width .3s ease}.goal-text{font-size:11px;color:#000;opacity:.7;font-weight:500}@media (prefers-color-scheme: dark){.modern-stat-card{background:var(--ion-color-primary);border-color:#ffffff1a}.stat-main-value,.stat-title{color:#000}.stat-subtitle{color:#000;opacity:.8}.stat-highlight,.rate-value{color:#000}}@media (max-width: 480px){.modern-stat-card{height:140px;border-radius:16px}.stat-card-header{padding:10px 16px 0}.stat-icon-container{width:32px;height:32px;border-radius:8px}.stat-icon-container ion-icon{font-size:16px}.stat-card-content{padding:8px 16px 16px}.stat-main-value{font-size:24px}.stat-unit{font-size:14px}.stat-title{font-size:12px}.stat-subtitle{font-size:10px}}.actions-section{padding:0 16px 100px}.action-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px}.action-card{border-radius:16px;box-shadow:0 4px 20px #0000000f;border:1px solid #f1f5f9;transition:all .3s ease;cursor:pointer;overflow:hidden;position:relative}.action-card:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;opacity:0;transition:opacity .3s ease}.primary-action:before{background:#667eea}.secondary-action:before{background:linear-gradient(135deg,#f093fb,#f5576c)}.tertiary-action:before{background:linear-gradient(135deg,#4facfe,#00f2fe)}.quaternary-action:before{background:linear-gradient(135deg,#43e97b,#38f9d7)}.action-card:hover{transform:translateY(-4px);box-shadow:0 8px 30px #0000001f}.action-card:hover:before{opacity:.05}.action-content{padding:20px;position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px}.action-icon-wrapper{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;position:relative}.primary-action .action-icon-wrapper,.secondary-action .action-icon-wrapper,.tertiary-action .action-icon-wrapper,.quaternary-action .action-icon-wrapper{background:#fff}.action-icon{font-size:20px;color:#fff}.action-text h4{font-size:14px;font-weight:600;color:#1f2937;margin:0 0 4px;line-height:1.2}.action-text p{font-size:12px;color:#6b7280;margin:0;line-height:1.3}@media (max-width: 480px){.hero-stats{gap:24px}.stat-number{font-size:24px}.session-card-header{flex-direction:column;align-items:flex-start;gap:16px}.session-metrics{flex-direction:column;gap:16px}.action-cards{grid-template-columns:1fr 1fr;gap:16px}.action-content{flex-direction:row;text-align:left;align-items:center}.action-text{flex:1;text-align:center}}.active-session{border-left:4px solid var(--ion-color-success);background:linear-gradient(135deg,var(--ion-color-success-tint) 0%,white 100%)}.session-card-title{display:flex;align-items:center;gap:8px;color:var(--ion-color-success);font-size:18px}.session-details{display:flex;justify-content:space-between;align-items:center}.session-info h3{font-size:20px;font-weight:600;margin:0 0 4px;color:var(--ion-color-dark)}.session-info p{font-size:14px;color:var(--ion-color-medium);margin:0 0 8px}.session-stats{display:flex;flex-direction:column;gap:2px}.session-stats span{font-size:12px;color:var(--ion-color-medium-shade)}.stats-grid{margin:0 0 24px}.stat-card{margin:0;border-radius:12px;box-shadow:0 2px 8px #00000014;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #0000001f}.stat-content{display:flex;align-items:center;gap:12px;padding:4px 0}.stat-icon{font-size:28px;color:var(--ion-color-primary)}.premise-card .stat-icon{color:var(--ion-color-tertiary)}.stat-info h3{font-size:24px;font-weight:700;margin:0;color:var(--ion-color-dark)}.stat-info p{font-size:12px;color:var(--ion-color-medium);margin:0;text-transform:uppercase;font-weight:500}.stat-info ion-badge{font-size:11px;font-weight:600}.quick-actions h2{font-size:20px;font-weight:600;margin:0 0 16px 8px;color:var(--ion-color-dark)}.action-card{margin-bottom:12px;border-radius:12px;box-shadow:0 2px 8px #00000014;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.action-card:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0000001a}.action-content{display:flex;flex-direction:column;align-items:center;gap:16px;padding:4px 0}.action-icon{font-size:32px;color:var(--ion-color-primary);min-width:32px}.action-info h3{font-size:16px;font-weight:600;margin:0 0 2px;color:var(--ion-color-dark)}.action-info p{font-size:14px;color:var(--ion-color-medium);margin:0}.loading-spinner{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px}.loading-spinner--small{gap:8px}.loading-spinner--small ion-spinner{width:20px;height:20px}.loading-spinner--medium{gap:16px}.loading-spinner--medium ion-spinner{width:32px;height:32px}.loading-spinner--large{gap:24px;height:200px}.loading-spinner--large ion-spinner{width:48px;height:48px}.loading-spinner__message{color:var(--ion-color-medium);margin:0;font-size:14px;font-weight:500}.loading-spinner--small .loading-spinner__message{font-size:12px}.loading-spinner--large .loading-spinner__message{font-size:16px}.scanner-content{--background: var(--ion-color-dark)}.scanner-container{height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:20px}.scanner-idle{width:100%;max-width:400px}.scanner-card{background:#fff;border-radius:16px;box-shadow:0 8px 32px #0003}.scanner-idle-content{text-align:center;padding:20px 0}.scanner-icon{font-size:80px;color:var(--ion-color-primary);margin-bottom:20px}.scanner-idle-content h2{font-size:24px;font-weight:600;margin:0 0 12px;color:var(--ion-color-dark)}.scanner-idle-content p{font-size:16px;color:var(--ion-color-medium);margin:0 0 32px;line-height:1.5}.scan-button{--border-radius: 12px;height:56px;font-weight:600;font-size:16px}.scanner-active{position:fixed;top:0;left:0;width:100%;height:100%;z-index:9999}.scanner-overlay{position:relative;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:transparent}.scanner-frame{position:relative;width:250px;height:250px;margin-bottom:40px}.scanner-corners{position:relative;width:100%;height:100%}.corner{position:absolute;width:30px;height:30px;border:3px solid var(--ion-color-light)}.corner.top-left{top:0;left:0;border-right:none;border-bottom:none;border-top-left-radius:8px}.corner.top-right{top:0;right:0;border-left:none;border-bottom:none;border-top-right-radius:8px}.corner.bottom-left{bottom:0;left:0;border-right:none;border-top:none;border-bottom-left-radius:8px}.corner.bottom-right{bottom:0;right:0;border-left:none;border-top:none;border-bottom-right-radius:8px}.scanner-instructions{margin-bottom:40px;text-align:center}.scanner-instructions h3{font-size:18px;font-weight:500;margin:0;text-shadow:0 1px 3px rgba(0,0,0,.3)}.stop-scan-button{position:absolute;top:60px;right:20px;--border-radius: 50%;width:48px;height:48px;--background: rgba(0, 0, 0, .5)}.stop-scan-button ion-icon{font-size:24px}.permission-card{background:#fff;border-radius:16px;box-shadow:0 8px 32px #0000001a}.permission-content{text-align:center;padding:20px 0}.permission-icon{font-size:64px;color:var(--ion-color-warning);margin-bottom:20px}.permission-content h2{font-size:20px;font-weight:600;margin:0 0 12px;color:var(--ion-color-dark)}.permission-content p{font-size:14px;color:var(--ion-color-medium);margin:0 0 24px;line-height:1.5}.active-session-content{--background: linear-gradient(180deg, var(--ion-color-primary) 0%, var(--ion-color-secondary) 200%)}.active-session-wrapper{min-height:100%;display:flex;align-items:flex-start;padding:16px;padding-top:max(16px,env(safe-area-inset-top));padding-bottom:max(16px,env(safe-area-inset-bottom))}.active-session-card{background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);width:100%;max-width:600px;margin:0 auto;border-radius:20px;box-shadow:0 20px 60px #0000004d}.active-session-card ion-card-content{padding:24px}.active-session-info{color:var(--ion-color-dark)}.session-header{display:flex;flex-direction:column;gap:12px;margin-bottom:24px;padding-bottom:20px;border-bottom:2px solid var(--ion-color-light)}.session-header h2{margin:0;font-size:24px;font-weight:700;color:var(--ion-color-dark)}.session-status-badge{display:inline-flex;align-items:center;gap:6px;background:linear-gradient(135deg,#10b981,#059669);padding:8px 16px;border-radius:20px;font-size:12px;font-weight:600;color:#fff;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 2px 8px #10b9814d;align-self:flex-start}.status-dot{width:8px;height:8px;background:#fff;border-radius:50%;animation:pulse 2s ease-in-out infinite}.session-details{display:flex;flex-direction:column;gap:12px}.session-detail-item{display:flex;flex-direction:column;gap:4px;padding:12px 14px;background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:12px;border:1px solid rgba(255,255,255,.2)}.detail-label{font-size:11px;font-weight:600;color:#ffffffb3;text-transform:uppercase;letter-spacing:.5px}.detail-value{font-size:15px;font-weight:600;color:#fff}.session-timer-container{margin-bottom:24px;padding:28px 20px;background:linear-gradient(135deg,var(--ion-color-primary) 0%,var(--ion-color-secondary) 200%);border-radius:20px;text-align:center;box-shadow:0 8px 24px rgba(var(--ion-color-primary-rgb, 56, 128, 255),.3)}.timer-label{font-size:13px;font-weight:600;color:#ffffffe6;text-transform:uppercase;letter-spacing:1px;margin-bottom:12px}.timer-display{font-size:56px;font-weight:800;color:#fff;font-variant-numeric:tabular-nums;letter-spacing:2px;text-shadow:0 4px 12px rgba(0,0,0,.2);line-height:1}.timer-progress-bar{margin-top:16px;height:6px;background:#fff3;border-radius:10px;overflow:hidden}.timer-progress-fill{height:100%;background:#fff;border-radius:10px;transition:width 1s linear;box-shadow:0 0 10px #ffffff80}.section-title{font-size:14px;font-weight:700;color:var(--ion-color-dark);margin:0 0 16px;text-transform:uppercase;letter-spacing:.5px}.session-table-info{margin-bottom:24px}.table-info-grid{display:grid;grid-template-columns:1fr;gap:12px}.info-item{display:flex;align-items:center;gap:12px;padding:16px;background:var(--ion-color-light);border-radius:12px;border:1px solid var(--ion-color-light-shade)}.info-icon{font-size:24px;flex-shrink:0}.info-content{display:flex;flex-direction:column;gap:4px;flex:1}.info-label{font-size:11px;font-weight:600;color:var(--ion-color-medium);text-transform:uppercase;letter-spacing:.5px}.info-value{font-size:16px;font-weight:600;color:var(--ion-color-dark)}.session-timeline{margin-bottom:24px}.timeline-item{display:flex;gap:12px;margin-bottom:16px;position:relative}.timeline-item:not(:last-child):before{content:"";position:absolute;left:11px;top:28px;width:2px;height:calc(100% + 4px);background:var(--ion-color-light)}.timeline-dot{width:14px;height:14px;margin-top:3px;border-radius:50%;flex-shrink:0;position:relative;z-index:1}.timeline-dot-start{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 2px 8px #10b9814d}.timeline-dot-end{background:linear-gradient(135deg,var(--ion-color-primary) 0%,var(--ion-color-primary-shade) 100%);box-shadow:0 2px 8px rgba(var(--ion-color-primary-rgb, 56, 128, 255),.3)}.timeline-content{display:flex;flex-direction:column;gap:4px;flex:1;padding-top:2px}.timeline-label{font-size:11px;font-weight:600;color:var(--ion-color-medium);text-transform:uppercase;letter-spacing:.5px}.timeline-value{font-size:14px;font-weight:600;color:var(--ion-color-dark)}.view-dashboard-button{--border-width: 2px;--border-color: var(--ion-color-primary);--color: var(--ion-color-primary);--border-radius: 12px;height:48px;font-weight:600;font-size:15px;margin-top:8px}@media (min-width: 768px){.active-session-wrapper{padding:32px;align-items:center}.active-session-card ion-card-content{padding:32px}.session-header{flex-direction:row;justify-content:space-between;align-items:center;margin-bottom:32px}.session-header h2{font-size:28px}.session-status-badge{font-size:13px;padding:10px 20px;align-self:auto}.session-timer-container{padding:36px 24px;margin-bottom:32px}.timer-label{font-size:14px;margin-bottom:16px}.timer-display{font-size:72px;letter-spacing:3px}.table-info-grid{grid-template-columns:1fr 1fr}.info-item{padding:20px}.info-icon{font-size:28px}.info-value{font-size:18px}.timeline-value{font-size:15px}.view-dashboard-button{height:52px;font-size:16px}.section-title{font-size:15px}}@media (max-width: 375px){.active-session-wrapper{padding:12px}.active-session-card{border-radius:16px}.active-session-card ion-card-content{padding:20px}.session-header{margin-bottom:20px;padding-bottom:16px}.session-header h2{font-size:20px}.session-status-badge{font-size:11px;padding:6px 12px}.timer-display{font-size:48px}.session-timer-container{padding:24px 16px;margin-bottom:20px}.info-item{padding:14px}.info-icon{font-size:20px}.info-value{font-size:15px}.timeline-value{font-size:13px}.view-dashboard-button{height:44px;font-size:14px}.section-title{font-size:13px;margin-bottom:12px}}body.scanner-active{background:transparent!important}body.scanner-active ion-app{background:transparent!important}body.scanner-active .scanner-content{--background: transparent !important}.session-confirm-modal{--height: auto;--max-height: 90vh}.session-confirm-modal::part(backdrop){background:#0009}.session-confirm-modal::part(content){border-radius:20px 20px 0 0;max-width:100%}.session-confirm-modal ion-toolbar{--background: var(--ion-color-primary);--color: white}.session-confirm-modal ion-title{font-weight:600}.session-confirm-modal ion-content{--padding-top: 0;--padding-bottom: 0;--padding-start: 0;--padding-end: 0}.modal-content{padding:0;min-height:100%;display:flex;flex-direction:column}.table-info-section{padding:20px;background:var(--ion-color-light);border-bottom:2px solid var(--ion-color-light-shade)}.table-number{font-size:22px;font-weight:700;color:var(--ion-color-primary);margin:0 0 16px;text-align:center}.table-details{display:flex;flex-direction:column;gap:4px}.table-details ion-item{--padding-start: 0;--inner-padding-end: 0;--background: transparent;--min-height: auto;margin-bottom:4px}.table-details ion-label{margin:0}.detail-label{font-size:11px;font-weight:600;color:var(--ion-color-medium)!important;text-transform:uppercase;letter-spacing:.5px;margin:0 0 2px!important}.detail-value{font-size:15px;font-weight:600;color:var(--ion-color-dark)!important;margin:0!important}.hours-selection-section{padding:20px;background:#fff}.section-label{display:block;margin-bottom:0}.section-label h3{font-size:15px;font-weight:700;color:var(--ion-color-dark);margin:0 0 16px}.hours-selector{padding:16px;background:var(--ion-color-light);border-radius:16px}.hours-display{display:flex;flex-direction:column;align-items:center;margin-bottom:12px}.hours-number{font-size:42px;font-weight:800;color:var(--ion-color-primary);line-height:1}.hours-text{font-size:13px;font-weight:600;color:var(--ion-color-medium);text-transform:uppercase;letter-spacing:.8px;margin-top:4px}.hours-range{--bar-background: var(--ion-color-light-shade);--bar-height: 8px;--bar-border-radius: 8px;--knob-background: var(--ion-color-primary);--knob-size: 28px;padding:8px 0}.range-labels{display:flex;justify-content:space-between;margin-top:8px;padding:0 4px}.range-labels span{font-size:12px;font-weight:600;color:var(--ion-color-medium)}.credits-summary{padding:20px;background:#fff;border-top:1px solid var(--ion-color-light)}.summary-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid var(--ion-color-light)}.summary-row:last-of-type{border-bottom:none}.summary-row.total{padding:14px 0;margin-top:4px;border-top:2px solid var(--ion-color-primary);border-bottom:none}.summary-label{font-size:13px;font-weight:600;color:var(--ion-color-medium)}.summary-value{font-size:13px;font-weight:600;color:var(--ion-color-dark)}.summary-value.highlight{font-size:18px;font-weight:800;color:var(--ion-color-primary)}.modal-buttons{display:flex;gap:12px;padding:16px 20px 20px;background:#fff}.modal-buttons ion-button{flex:1;--border-radius: 12px;height:48px;font-weight:600;margin:0}.start-session-btn{--background: var(--ion-color-primary)}.error-content{padding:32px 20px;text-align:center}.error-icon{font-size:56px;color:var(--ion-color-danger);margin-bottom:16px}.error-content h2{font-size:18px;font-weight:700;color:var(--ion-color-dark);margin:0 0 8px}.error-content p{font-size:14px;color:var(--ion-color-medium);margin:0 0 20px;line-height:1.5}@media (min-width: 768px){.session-confirm-modal::part(content){max-width:500px;margin:auto;border-radius:20px}.table-info-section{padding:28px}.table-number{font-size:26px}.hours-selection-section{padding:28px}.section-label h3{font-size:16px}.hours-number{font-size:52px}.credits-summary{padding:28px}.summary-label,.summary-value{font-size:14px}.summary-value.highlight{font-size:22px}.modal-buttons{padding:20px 28px 28px}.modal-buttons ion-button{height:52px}}.error-message{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 16px;gap:16px;text-align:center}.error-message__icon{font-size:48px;color:var(--ion-color-danger)}.error-message__text{color:var(--ion-color-danger);margin:0;font-size:16px;font-weight:500;line-height:1.4}.error-message__retry{background:var(--ion-color-primary);color:#fff;border:none;border-radius:8px;padding:12px 24px;font-size:14px;font-weight:500;display:flex;align-items:center;gap:8px;cursor:pointer;transition:opacity .2s ease}.error-message__retry:hover{opacity:.8}.error-message__retry ion-icon{font-size:16px}.table-details-content{--background: var(--ion-color-light-tint)}.table-details-container{padding:16px;max-width:500px;margin:0 auto}.table-info-card{border-radius:16px;box-shadow:0 4px 20px #0000001a;margin-bottom:20px;background:linear-gradient(135deg,var(--ion-color-primary-tint) 0%,white 100%)}.table-title{margin:0}.title-content{display:flex;justify-content:space-between;align-items:center;width:100%}.title-content h1{font-size:28px;font-weight:700;margin:0;color:var(--ion-color-dark)}.status-badge{font-size:12px;font-weight:600;padding:6px 12px}.table-specs{margin-top:16px}.spec-item{--background: rgba(255, 255, 255, .7);--border-radius: 8px;margin-bottom:8px;border-radius:8px}.spec-item ion-icon{color:var(--ion-color-primary);font-size:20px}.spec-item ion-label h3{font-size:16px;font-weight:600;color:var(--ion-color-dark);margin:0 0 2px}.spec-item ion-label p{font-size:14px;color:var(--ion-color-medium);margin:0}.session-card{border-radius:12px;box-shadow:0 2px 12px #00000014;margin-bottom:20px}.session-card.active{background:linear-gradient(135deg,var(--ion-color-success-tint) 0%,white 100%);border-left:4px solid var(--ion-color-success)}.session-title{display:flex;align-items:center;gap:8px;color:var(--ion-color-success);font-size:18px;margin:0}.session-details{margin-top:16px}.session-stats{display:flex;gap:20px;margin-bottom:16px;padding:16px;background:#fffc;border-radius:8px}.stat{display:flex;align-items:center;gap:8px;flex:1}.stat ion-icon{font-size:20px;color:var(--ion-color-success)}.stat-content{display:flex;flex-direction:column;gap:2px}.stat-label{font-size:12px;color:#121010;font-weight:500}.stat-value{font-size:16px;font-weight:700;color:var(--ion-color-dark)}.session-info{font-size:14px;color:var(--ion-color-dark);line-height:1.5}.session-info p{margin:0 0 4px}.session-info strong{color:var(--ion-color-medium);font-weight:600}.credits-card{border-radius:12px;box-shadow:0 2px 12px #00000014;margin-bottom:20px}.credits-info{display:flex;flex-direction:column;gap:12px}.credits-balance{display:flex;align-items:center;gap:12px}.credits-icon{font-size:24px;color:var(--ion-color-primary)}.balance-content{display:flex;flex-direction:column;gap:2px;flex:1}.balance-label{font-size:14px;color:var(--ion-color-medium);font-weight:500}.balance-value{font-size:20px;font-weight:700;color:var(--ion-color-primary)}.insufficient-credits{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--ion-color-danger-tint);border-radius:6px;font-size:14px;color:var(--ion-color-danger-shade);font-weight:500}.insufficient-credits ion-icon{font-size:16px;color:var(--ion-color-danger)}.table-actions{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.action-button{--border-radius: 12px;height:56px;font-weight:600;font-size:16px}.qr-button{--border-radius: 12px;height:48px;font-weight:600;--border-width: 2px}.guidelines-card{border-radius:12px;box-shadow:0 2px 12px #00000014;margin-bottom:20px}.guidelines-card h3{font-size:18px;font-weight:600;margin:0 0 16px;color:var(--ion-color-dark)}.guidelines-list{display:flex;flex-direction:column;gap:12px}.guideline-item{display:flex;align-items:flex-start;gap:12px;font-size:14px;line-height:1.4;color:var(--ion-color-dark)}.guideline-item ion-icon{font-size:16px;margin-top:2px;flex-shrink:0}@media (max-width: 480px){.title-content{flex-direction:column;align-items:flex-start;gap:8px}.title-content h1{font-size:24px}.session-stats{flex-direction:column;gap:12px}.stat,.credits-balance{justify-content:center;text-align:center}}.action-button ion-spinner{width:20px;height:20px}.action-button:disabled{--opacity: .6;cursor:not-allowed}.session-card{transition:all .3s ease}.session-card.active{animation:slideUp .4s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.credits-content{--background: var(--ion-color-light-tint)}.credits-container{padding:16px}.balance-card{margin-bottom:24px;border-radius:16px;background:linear-gradient(135deg,var(--ion-color-primary) 0%,var(--ion-color-secondary) 100%);color:#000;box-shadow:0 8px 32px #00000026}.balance-card ion-card-header{padding-bottom:8px}.balance-title{display:flex;align-items:center;gap:8px;color:#818080e6;font-size:16px;font-weight:500}.balance-content{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:20px}.balance-amount h1{font-size:48px;font-weight:700;margin:0;color:#818080e6;line-height:1}.balance-amount span{font-size:16px;color:#818080e6;font-weight:500}.purchase-button{--background: rgba(255, 255, 255, .2);--color: rgba(129, 128, 128, .9);--border-radius: 12px;font-weight:600;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.balance-stats{display:flex;justify-content:space-between;padding-top:16px;border-top:1px solid rgba(255,255,255,.2)}.stat{display:flex;flex-direction:column;align-items:center;gap:4px}.stat .stat-label{font-size:12px;color:#818080e6;text-transform:uppercase;font-weight:500}.stat .stat-value{font-size:20px;font-weight:600;color:#818080e6}.transactions-section h2{font-size:20px;font-weight:600;margin:0 0 16px 8px;color:var(--ion-color-dark)}.empty-card{border-radius:12px;box-shadow:0 2px 8px #00000014}.empty-content{text-align:center;padding:32px 16px}.empty-icon{font-size:48px;color:var(--ion-color-medium);margin-bottom:16px}.empty-content h3{font-size:18px;font-weight:600;margin:0 0 8px;color:var(--ion-color-dark)}.empty-content p{font-size:14px;color:var(--ion-color-medium);margin:0}.transactions-list{display:flex;flex-direction:column;gap:12px}.transaction-card{border-radius:12px;box-shadow:0 2px 8px #00000014;margin:0}.transaction-content{padding:4px 0}.transaction-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.transaction-header h3{font-size:18px;font-weight:600;margin:0;color:var(--ion-color-dark)}.transaction-header ion-badge{display:flex;align-items:center;gap:4px;font-size:11px;font-weight:600;padding:4px 8px}.transaction-header ion-badge ion-icon{font-size:14px}.transaction-details{display:flex;flex-direction:column;gap:2px}.transaction-details p{font-size:13px;color:var(--ion-color-medium);margin:0}.purchase-modal-content{--background: var(--ion-color-light-tint)}.purchase-form{padding:16px}.form-section{margin-bottom:24px}.form-section h3{font-size:18px;font-weight:600;margin:0 0 16px;color:var(--ion-color-dark)}.package-options{display:flex;gap:12px}.package-option{flex:1;padding:16px;border:2px solid var(--ion-color-light);border-radius:12px;text-align:center;cursor:pointer;transition:all .2s ease;background:#fff}.package-option:hover{border-color:var(--ion-color-primary-tint)}.package-option.selected{border-color:var(--ion-color-primary);background:var(--ion-color-primary-tint)}.package-option h4{font-size:16px;font-weight:600;margin:0 0 4px;color:var(--ion-color-dark)}.package-option p{font-size:14px;font-weight:600;margin:0;color:var(--ion-color-primary)}.purchase-summary{background:var(--ion-color-light);border-radius:12px;padding:16px;margin:24px 0}.summary-row{display:flex;justify-content:space-between;margin-bottom:8px;font-size:14px}.summary-row:last-child{margin-bottom:0}.summary-row.total{font-size:18px;font-weight:600;padding-top:8px;border-top:1px solid var(--ion-color-medium-tint);color:var(--ion-color-dark)}.confirm-purchase-button{--border-radius: 12px;height:48px;font-weight:600;margin-bottom:16px}.purchase-note{text-align:center}.purchase-note small{color:var(--ion-color-medium);line-height:1.4}.premise-content{--background: var(--ion-color-light-tint)}.premise-container{padding:16px;max-width:500px;margin:0 auto}.access-card{border-radius:16px;box-shadow:0 4px 20px #0000001a;margin-bottom:24px;overflow:hidden}.access-card.active{background:linear-gradient(135deg,var(--ion-color-success-tint) 0%,white 100%);border-left:4px solid var(--ion-color-success)}.access-card.inactive{background:linear-gradient(135deg,var(--ion-color-medium-tint) 0%,white 100%);border-left:4px solid var(--ion-color-medium)}.access-title{display:flex;align-items:center;gap:12px;font-size:18px;margin:0}.access-icon{font-size:24px}.access-icon.active{color:var(--ion-color-success)}.access-icon.inactive{color:var(--ion-color-medium)}.title-content{display:flex;flex-direction:column;gap:4px;flex:1}.title-content span{font-weight:600}.access-badge{align-self:flex-start;font-size:11px;font-weight:600}.access-details{display:flex;flex-direction:column;gap:20px;margin-bottom:16px}.location-info h3{font-size:20px;font-weight:600;margin:0 0 4px;color:var(--ion-color-dark)}.location-info p{font-size:14px;color:var(--ion-color-medium);margin:0}.time-info{display:flex;flex-direction:column;gap:12px}.time-remaining{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:600;color:var(--ion-color-success)}.time-remaining.time-warning,.time-remaining .time-warning{color:var(--ion-color-warning)}.progress-container{display:flex;flex-direction:column;gap:4px}.progress-text{font-size:12px;color:var(--ion-color-medium);text-align:center}.access-timestamps{display:flex;flex-direction:column;gap:8px;padding:16px;background:#ffffffb3;border-radius:12px}.timestamp{display:flex;justify-content:space-between;align-items:center}.timestamp-label{font-size:14px;color:var(--ion-color-medium);font-weight:500}.timestamp-value{font-size:14px;color:var(--ion-color-dark);font-weight:600}.warning-message{display:flex;align-items:center;gap:8px;padding:12px;background:var(--ion-color-warning-tint);border-radius:8px;border-left:3px solid var(--ion-color-warning);margin-top:16px}.warning-message ion-icon{color:var(--ion-color-warning);font-size:20px;flex-shrink:0}.warning-message span{font-size:14px;color:var(--ion-color-warning-shade);line-height:1.4}.no-access-content{text-align:center;padding:16px 0}.no-access-content p{font-size:16px;color:var(--ion-color-medium);line-height:1.5;margin:0}.premise-actions{display:flex;flex-direction:column;gap:16px}.action-card{border-radius:12px;box-shadow:0 2px 12px #00000014;margin:0}.action-content{padding:8px 0}.action-header{display:flex;align-items:flex-start;gap:16px;margin-bottom:20px}.action-icon{font-size:32px;color:var(--ion-color-primary);flex-shrink:0;margin-top:4px}.action-info h3{font-size:18px;font-weight:600;margin:0 0 8px;color:var(--ion-color-dark)}.action-info p{font-size:14px;color:var(--ion-color-medium);margin:0;line-height:1.5}.scan-premise-button{--border-radius: 12px;height:48px;font-weight:600}.instructions-card{border-radius:12px;box-shadow:0 2px 12px #00000014;margin:0}.instructions-card h3{font-size:18px;font-weight:600;margin:0 0 20px;color:var(--ion-color-dark);text-align:center}.instructions-list{display:flex;flex-direction:column;gap:20px}.instruction-item{display:flex;align-items:flex-start;gap:16px}.step-number{width:32px;height:32px;background:var(--ion-color-primary);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600;flex-shrink:0}.step-content h4{font-size:16px;font-weight:600;margin:0 0 4px;color:var(--ion-color-dark)}.step-content p{font-size:14px;color:var(--ion-color-medium);margin:0;line-height:1.4}.permission-card{border-radius:12px;box-shadow:0 2px 12px #00000014;margin:16px 0 0;border-left:4px solid var(--ion-color-warning)}.permission-content{text-align:center;padding:8px 0}.permission-icon{font-size:48px;color:var(--ion-color-warning);margin-bottom:16px}.permission-content h3{font-size:18px;font-weight:600;margin:0 0 8px;color:var(--ion-color-dark)}.permission-content p{font-size:14px;color:var(--ion-color-medium);margin:0 0 20px;line-height:1.5}@media (max-width: 480px){.access-timestamps{padding:12px}.timestamp{flex-direction:column;align-items:flex-start;gap:2px}.action-header,.instruction-item{flex-direction:column;align-items:center;text-align:center;gap:12px}}.profile-content{--background: var(--ion-color-light-tint)}.profile-container{padding:16px;width:100vw;margin:0 auto}.profile-header-card{border-radius:16px;box-shadow:0 8px 24px rgba(var(--ion-color-primary-rgb, 56, 128, 255),.3);margin-bottom:20px;background:linear-gradient(135deg,var(--ion-color-primary) 0%,var(--ion-color-secondary) 200%)}.profile-header{display:flex;justify-content:space-between;align-items:flex-start;padding:8px 0}.profile-avatar-section{display:flex;align-items:center;gap:16px;flex:1}.profile-avatar{width:80px;height:80px;border:3px solid white;box-shadow:0 4px 12px #00000026}.avatar-placeholder{width:100%;height:100%;background:#fff3;color:#fff;display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:700}.profile-basic-info h2{font-size:24px;font-weight:700;margin:0 0 4px;color:#fff}.profile-basic-info p{font-size:14px;color:#ffffffe6;margin:0 0 8px}.verified-badge{font-size:11px;font-weight:600;padding:4px 8px;display:inline-flex;align-items:center;gap:4px}.verified-badge ion-icon{font-size:12px}.edit-profile-btn{--border-radius: 12px;--border-width: 2px;--border-color: white;--color: white;--background: transparent;font-weight:600}.edit-profile-btn:hover{--background: rgba(255, 255, 255, .1)}.account-info-card,.stats-card,.settings-card{border-radius:12px;box-shadow:0 2px 12px #00000014;margin-bottom:16px}.account-info-card ion-card-title,.settings-card ion-card-title{display:flex;align-items:center;gap:8px;font-size:18px;font-weight:600}.account-info-card ion-card-title ion-icon,.settings-card ion-card-title ion-icon{font-size:20px;color:var(--ion-color-dark)}.info-list,.settings-list{background:transparent;padding:0}.info-item,.settings-list ion-item{--background: transparent;--border-color: var(--ion-color-light-shade);--padding-start: 0;--inner-padding-end: 0}.info-item ion-icon{color:var(--ion-color-dark);font-size:20px}.info-item ion-label h3{font-size:16px;font-weight:600;color:var(--ion-color-dark)}.info-item ion-label p{font-size:14px;color:var(--ion-color-medium)}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;padding:8px 0}.stat-item{text-align:center;padding:16px;background:var(--ion-color-light);border-radius:12px}.stat-value{font-size:24px;font-weight:700;color:var(--ion-color-primary);margin-bottom:4px}.stat-label{font-size:12px;color:#0b0a0a;text-transform:uppercase;font-weight:500}.settings-list ion-item ion-label h3{font-size:16px;font-weight:600;color:var(--ion-color-dark)}.settings-list ion-item ion-label p{font-size:14px;color:var(--ion-color-medium);margin-top:2px}.account-actions{margin-top:24px;padding-bottom:32px}.sign-out-button{--border-radius: 12px;height:48px;font-weight:600;--border-width: 2px}.edit-modal-content{--background: var(--ion-color-light-tint)}.edit-form{padding:16px}.edit-avatar-section{display:flex;flex-direction:column;align-items:center;gap:16px;margin-bottom:24px}.edit-avatar{width:100px;height:100px;border:3px solid var(--ion-color-light-shade)}.edit-fields{margin-bottom:24px}.edit-fields ion-item{--background: white;--border-radius: 8px;margin-bottom:16px;border-radius:8px}.edit-actions ion-button{--border-radius: 12px;height:48px;font-weight:600}@media (max-width: 480px){.profile-header{flex-direction:column;align-items:center;gap:16px;text-align:center}.profile-avatar-section{flex-direction:column;text-align:center;gap:12px}.stats-grid{grid-template-columns:repeat(2,1fr);gap:12px}.stat-item{padding:12px}.stat-value{font-size:20px}}@media (min-width: 768px){.profile-container{max-width:900px;padding:24px}.profile-avatar{width:120px;height:120px}.avatar-placeholder{font-size:42px}.profile-basic-info h2{font-size:28px}.stats-grid{grid-template-columns:repeat(4,1fr);gap:20px}.stat-item{padding:20px}.stat-value{font-size:32px}.stat-label{font-size:13px}}@media (min-width: 1024px){.profile-container{padding:32px}.profile-avatar{width:140px;height:140px}.avatar-placeholder{font-size:48px}.profile-basic-info h2{font-size:32px}.profile-basic-info p{font-size:16px}.stat-value{font-size:36px}}.history-content{--background: var(--ion-color-light-tint)}.history-container{padding:16px}.filter-tabs{margin-bottom:20px}.filter-tabs ion-segment{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;color:#000}.filter-tabs ion-segment-button{--indicator-color: var(--ion-color-primary);--color: var(--ion-color-medium);--color-checked: white;font-weight:600}.history-section{margin-bottom:24px}.section-title{font-size:20px;font-weight:600;margin:0 0 16px 8px;color:var(--ion-color-dark)}.history-list{display:flex;flex-direction:column;gap:12px}.history-item{border-radius:12px;box-shadow:0 2px 8px #00000014;margin:0;overflow:hidden}.session-item{border-left:4px solid var(--ion-color-success)}.session-item.active{border-left-color:var(--ion-color-warning);background:linear-gradient(135deg,var(--ion-color-primary) 0%,var(--ion-color-secondary) 100%)}.transaction-item{border-left:4px solid var(--ion-color-secondary)}.transaction-item.approved{border-left-color:var(--ion-color-success)}.transaction-item.rejected{border-left-color:var(--ion-color-danger)}.transaction-item.pending{border-left-color:var(--ion-color-warning)}.item-content{padding:4px 0}.item-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px}.item-title{display:flex;align-items:center;gap:8px}.item-title h3{font-size:18px;font-weight:600;margin:0;color:var(--ion-color-dark)}.item-icon{font-size:20px;color:var(--ion-color-primary)}.item-badge{font-size:11px;font-weight:600;padding:4px 8px}.item-details{font-size:13px;display:flex;justify-content:space-between;flex-direction:column}.item-detail{display:flex;justify-content:space-between;align-items:center;font-size:14px}.detail-label{color:var(--ion-color-medium);font-weight:500}.detail-value{color:var(--ion-color-dark);font-weight:600}.detail-value.credits{color:var(--ion-color-primary)}.detail-value.duration{color:var(--ion-color-success)}.detail-value.cost{color:var(--ion-color-secondary)}.item-timestamp{font-size:12px;color:var(--ion-color-medium);text-align:right;margin-top:8px}.empty-history{text-align:center;padding:60px 20px;display:flex;flex-direction:column;align-items:center}.empty-icon{font-size:64px;color:var(--ion-color-medium);margin-bottom:16px}.empty-history h3{font-size:20px;font-weight:600;margin:0 0 8px;color:var(--ion-color-dark)}.empty-history p{font-size:16px;color:var(--ion-color-medium);margin:0;line-height:1.5}.loading-more{text-align:center;padding:20px}@media (max-width: 480px){.item-header{flex-direction:column;align-items:flex-start;gap:8px}.item-details{font-size:13px}.item-detail{flex-direction:row;align-items:flex-start;gap:2px}}.segment-lable{color:#000}.auth-guard-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;gap:16px}.auth-guard-loading p{color:var(--ion-color-medium);margin:0}.app-layout{display:flex;height:100vh;width:100vw;overflow:hidden;position:relative}.app-layout.user-layout{flex-direction:column}.app-layout.user-layout .main-content{margin-left:0!important}.app-layout.admin-layout{flex-direction:row}.admin-loading{width:100vw;height:100vh;background:var(--ion-background-color, #f8f9fa)}.admin-loading .spinner{width:40px;height:40px;border:4px solid rgba(var(--ion-color-primary-rgb),.2);border-left:4px solid var(--ion-color-primary);border-radius:50%;animation:spin 1s linear infinite}.mobile-menu-btn{display:none;position:fixed;top:50%;left:0;transform:translateY(-50%);z-index:1001;--background: var(--ion-color-primary);--background-hover: var(--ion-color-primary-shade);--background-activated: var(--ion-color-primary-tint);--color: white;--border-radius: 0 12px 12px 0;--padding-start: 0;--padding-end: 0;width:40px;height:60px;min-height:60px;box-shadow:2px 0 12px #00000026;transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:0 12px 12px 0;border-left:none}.mobile-menu-btn.sidebar-open{left:280px;--border-radius: 12px 0 0 12px;border-radius:12px 0 0 12px;box-shadow:-2px 0 12px #00000026}.mobile-menu-btn:hover{left:8px;box-shadow:4px 0 16px #0003;transform:translateY(-50%) scale(1.05)}.mobile-menu-btn.sidebar-open:hover{left:272px;box-shadow:-4px 0 16px #0003;transform:translateY(-50%) scale(1.05)}.mobile-menu-btn ion-icon{font-size:20px;transition:transform .2s ease}.mobile-menu-btn:active ion-icon{transform:scale(.95)}.sidebar-overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:999}.sidebar-close-btn{display:none;--color: white;--background: transparent}.sidebar{display:none;flex-direction:column;width:280px;background:linear-gradient(180deg,var(--ion-color-primary) 0%,var(--ion-color-primary-shade) 100%);color:#fff;box-shadow:2px 0 12px #0000001a;z-index:1000;overflow-y:auto;flex-shrink:0;transition:transform .3s ease}.sidebar-header{padding:20px 24px;border-bottom:1px solid rgba(255,255,255,.1);background:#0000001a;display:flex;justify-content:space-between;align-items:center}.sidebar-header h2{margin:0;font-size:20px;font-weight:700;color:#fff;letter-spacing:.5px}.sidebar-menu{display:flex;flex-direction:column;padding:12px 8px;gap:6px}.sidebar-item{display:flex;align-items:center;padding:12px 16px;border-radius:8px;color:#ffffffd9;text-decoration:none;font-size:14px;font-weight:500;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;gap:12px;background:none;border:none;cursor:pointer;font-family:inherit;width:100%;text-align:left}.sidebar-item:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#fff;transform:scaleY(0);transition:transform .3s ease}.sidebar-item:hover{background:#ffffff26;color:#fff;transform:translate(4px)}.sidebar-item:hover:before{transform:scaleY(1)}.sidebar-item:focus{outline:none;background:#ffffff26;color:#fff;transform:translate(4px)}.sidebar-item:focus:before{transform:scaleY(1)}.sidebar-item.active,.sidebar-item[aria-current=page]{background:#fff3;color:#fff;font-weight:600}.sidebar-item.active:before,.sidebar-item[aria-current=page]:before{transform:scaleY(1)}.sidebar-item ion-icon{font-size:20px;flex-shrink:0}.sidebar-item span{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.main-content{flex:1;display:flex;flex-direction:column;overflow:hidden;width:100%;min-width:0}.main-content ion-tabs{width:100%;height:100%;display:flex;flex-direction:column}.main-content ion-router-outlet{flex:1;overflow:auto}.tabs-bar{--background: var(--ion-color-light);--border: 1px solid var(--ion-color-light-shade);height:65px;display:flex}.tabs-bar ion-tab-button{--color: var(--ion-color-medium);--color-selected: var(--ion-color-primary);--ripple-color: var(--ion-color-primary-tint);min-height:65px}.tabs-bar ion-tab-button ion-icon{font-size:24px;margin-bottom:2px}.tabs-bar ion-tab-button ion-label{font-size:11px;font-weight:500;margin-top:2px}@media (max-width: 767px){.admin-layout .mobile-menu-btn{display:flex;align-items:center;justify-content:center}.admin-layout .sidebar{position:fixed;top:0;left:0;height:100vh;width:280px;transform:translate(-100%);z-index:1000;transition:transform .3s cubic-bezier(.4,0,.2,1);box-shadow:2px 0 8px #0000001a}.admin-layout .sidebar.sidebar-open{display:flex;transform:translate(0)}.admin-layout .sidebar-overlay{display:block;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.admin-layout .sidebar-close-btn{display:block;position:absolute;top:16px;right:16px;--background: transparent;--color: var(--ion-color-medium);--border-radius: 8px;width:32px;height:32px;min-height:32px}.admin-layout .sidebar-close-btn:hover{--background: var(--ion-color-light);--color: var(--ion-color-dark)}.admin-layout .main-content{padding-left:0}.admin-layout .tables-management{margin-left:45px;transition:margin-left .3s ease;padding-bottom:20px;position:relative;z-index:1}.admin-layout.sidebar-open .tables-management{margin-left:0;padding-bottom:20px}.admin-layout .main-content{position:relative;z-index:1}.admin-layout .modal-backdrop{z-index:999}.admin-layout .mobile-menu-btn{bottom:auto;top:50%;transform:translateY(-50%)}.admin-layout .mobile-menu-btn.sidebar-open{left:280px}.admin-layout .sidebar-header{padding:16px 20px}.admin-layout .sidebar-header h2{font-size:18px}.admin-layout .sidebar-menu{padding:12px 8px;gap:4px}.admin-layout .sidebar-item{padding:10px 12px;font-size:13px;gap:10px}.admin-layout .sidebar-item ion-icon{font-size:18px}.admin-layout .tabs-bar.mobile-only{display:flex!important}.admin-layout .main-content{margin-left:0;padding-top:60px}}@media (min-width: 768px){.admin-layout .sidebar{display:flex}.admin-layout .main-content{margin-left:0}.admin-layout .tabs-bar.mobile-only,.user-layout .sidebar{display:none}.user-layout .main-content{margin-left:0}.user-layout .tabs-bar{display:flex}}@media (min-width: 1024px){.admin-layout .sidebar{width:300px}.admin-layout .main-content{margin-left:0}.sidebar-header{padding:32px 28px}.sidebar-header h2{font-size:26px}.sidebar-menu{padding:20px 16px;gap:10px}.sidebar-item{padding:18px 24px;font-size:16px}.sidebar-item ion-icon{font-size:26px}.user-layout .main-content{margin-left:0}}.admin-login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--ion-color-primary) 0%,var(--ion-color-secondary) 100%);padding:20px}.admin-login-card{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000001a;width:100%;max-width:600px;overflow:hidden;height:100%;animation:slideUp .6s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.admin-login-header{background:linear-gradient(135deg,var(--ion-color-primary) 0%,var(--ion-color-secondary) 100%);color:#fff;padding:40px 32px;text-align:center;position:relative;overflow:hidden}.admin-login-header:before{content:"";position:absolute;top:-50%;right:-50%;width:200px;height:200px;background:#ffffff1a;border-radius:50%;filter:blur(20px)}.admin-logo{position:relative;z-index:2;display:flex;flex-direction:column;align-content:center;align-items:center}.logo-icon{font-size:48px;margin-bottom:16px;text-shadow:0 2px 10px rgba(0,0,0,.1)}.admin-login-header h1{font-size:28px;font-weight:700;margin:0 0 8px;text-shadow:0 2px 10px rgba(0,0,0,.1)}.admin-login-header p{font-size:16px;opacity:.9;margin:0}.admin-login-form{padding:32px}.error-alert{background:#fee2e2;color:#dc2626;padding:12px 16px;border-radius:8px;margin-bottom:24px;display:flex;align-items:center;gap:8px;font-size:14px;border:1px solid #fecaca}.error-icon{font-size:16px;flex-shrink:0}.form-group{margin-bottom:24px}.form-group label{display:block;font-weight:600;color:#374151;margin-bottom:8px;font-size:14px}.form-group input{width:100%;padding:12px 16px;border:2px solid #e5e7eb;border-radius:8px;font-size:16px;transition:all .2s ease;background:#f9fafb}.form-group input:focus{outline:none;border-color:#667eea;background:#fff;box-shadow:0 0 0 3px #667eea1a}.form-group input.error{border-color:#dc2626;background:#fef2f2}.form-group input.error:focus{border-color:#dc2626;box-shadow:0 0 0 3px #dc26261a}.field-error{color:#dc2626;font-size:12px;margin-top:4px;display:block;font-weight:500}.admin-login-button{width:100%;background:linear-gradient(135deg,var(--ion-color-primary) 0%,var(--ion-color-secondary) 100%);color:#fff;border:none;padding:14px 24px;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 4px 12px #667eea4d}.admin-login-button:hover{transform:translateY(-2px);box-shadow:0 8px 20px #667eea66}.admin-login-button:active{transform:translateY(0)}.admin-login-button:disabled{opacity:.7;cursor:not-allowed;transform:none;box-shadow:0 4px 12px #667eea33}.spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top:2px solid white;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.admin-login-footer{background:#f9fafb;padding:24px 32px;text-align:center;border-top:1px solid #e5e7eb}.admin-login-footer p{margin:0;color:#6b7280;line-height:1.5}@media (max-width: 480px){.admin-login-container{padding:16px}.admin-login-header{padding:32px 24px}.admin-login-form{padding:24px}.admin-login-footer{padding:20px 24px}.logo-icon{font-size:40px}.admin-login-header h1{font-size:24px}}.premise-management{margin:0 auto}.premise-codes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:24px;margin-bottom:40px}.premise-code-card{background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;overflow:hidden;transition:all .3s ease;border:1px solid #f1f5f9}.premise-code-card:hover{transform:translateY(-4px);box-shadow:0 8px 30px #0000001f}.premise-card-header{background:linear-gradient(135deg,var(--ion-color-primary),var(--ion-color-secondary));color:#fff;padding:20px 24px;display:flex;justify-content:space-between;align-items:center}.premise-card-header h3{margin:0;font-size:18px;font-weight:600;display:flex;align-items:center;gap:8px}.status-indicator.active{background:#10b98133;color:#10b981;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600;border:1px solid rgba(16,185,129,.3)}.status-indicator.inactive{background:#6b728033;color:#6b7280;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600;border:1px solid rgba(107,114,128,.3)}.premise-card-body{padding:24px}.premise-detail{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #f1f5f9}.premise-detail:last-child{margin-bottom:0;border-bottom:none}.premise-detail.code-section{flex-direction:column;align-items:stretch;gap:8px}.detail-label{font-size:14px;color:#6b7280;font-weight:500;display:flex;align-items:center;gap:4px}.detail-value{font-size:14px;color:#1f2937;font-weight:600}.code-container{display:flex;align-items:center;gap:8px;background:#f8fafc;padding:8px 12px;border-radius:8px;border:1px solid #e2e8f0}.code-value{font-family:Courier New,monospace;font-size:12px;color:#374151;flex:1;word-break:break-all}.copy-button{background:var(--ion-color-primary);color:#fff;border:none;padding:4px 8px;border-radius:4px;cursor:pointer;font-size:12px;transition:background .2s ease}.copy-button:hover{background:#5a67d8}.premise-card-footer{padding:16px 24px;background:#f8fafc;border-top:1px solid #e5e7eb;display:flex;gap:8px;flex-wrap:wrap}.premise-card-footer .btn{flex:1;min-width:0;font-size:12px;padding:6px 12px}.instructions-section{background:#fff;border-radius:16px;padding:32px;box-shadow:0 4px 20px #00000014;border:1px solid #f1f5f9}.instructions-section h3{font-size:24px;font-weight:700;color:#1f2937;margin:0 0 24px;text-align:center}.instructions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}.instruction-card{text-align:center;padding:24px;background:#f8fafc;border-radius:12px;border:1px solid #e2e8f0}.instruction-icon{font-size:32px;margin-bottom:16px;display:block}.instruction-card h4{font-size:16px;font-weight:600;color:#1f2937;margin:0 0 8px}.instruction-card p{font-size:14px;color:#6b7280;margin:0;line-height:1.5}.empty-state{text-align:center;padding:80px 40px;background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014}.empty-icon{font-size:64px;margin-bottom:20px;display:block}@media (max-width: 768px){.premise-codes-grid{grid-template-columns:1fr;gap:16px}.premise-card-footer{flex-direction:column}.premise-card-footer .btn{flex:none}.instructions-grid{grid-template-columns:1fr}.instructions-section{padding:24px}}.controls-section{background:#fff;border-radius:12px;padding:20px;margin-bottom:20px;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column;gap:16px}.search-bar{width:100%}.search-input{width:100%;padding:12px 16px;border:2px solid #e0e0e0;border-radius:8px;font-size:14px;transition:border-color .2s ease}.search-input:focus{outline:none;border-color:#007bff}.filter-btn{background:#f8f9fa;color:#6c757d;border:1px solid #dee2e6;padding:8px 16px;border-radius:20px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.filter-btn:hover{background:#e9ecef;border-color:#adb5bd}.filter-btn.active{background:#007bff;color:#fff;border-color:#007bff}.users-table .table-header,.users-table .table-row{grid-template-columns:2fr 1fr 1fr 1fr 1fr 1.5fr}.user-cell{display:flex;align-items:center;gap:12px}.user-avatar{width:40px;height:40px;background:linear-gradient(135deg,#007bff,#6f42c1);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:16px}.user-info{display:flex;flex-direction:column;gap:4px}.status-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.badge-icon{font-size:14px}.session-badge{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600}.session-dot.active{background:#28a745;box-shadow:0 0 6px #28a74599}.session-dot.inactive{background:#6c757d}.joined-date{font-size:14px;color:#6c757d}.btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;text-decoration:none}.btn-icon{font-size:14px}.btn-loading{animation:pulse 1.5s infinite}.create-form-section{background:#fff;border-radius:12px;padding:24px;margin-bottom:24px;box-shadow:0 2px 8px #0000001a}.create-table-form h3,.edit-table-form h3{margin:0 0 20px;font-size:20px;font-weight:600;color:#333}.edit-table-form .form-grid{margin-top:20px}.edit-table-form .form-actions{border-top:1px solid #e0e0e0;padding-top:20px;margin-top:20px}.global-settings{padding:20px;max-width:800px;margin:0 auto}.settings-card{box-shadow:0 4px 6px #0000001a;border-radius:12px;margin-bottom:20px}.settings-form .form-group{margin-bottom:20px}.rate-input-item{--background: #fff;--border-color: #ddd;--border-radius: 8px;--padding: 15px;margin-bottom:10px}.rate-preview{display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center}.settings-info{padding:15px;background:#fff3cd;border:1px solid #ffeaa7;border-radius:8px;margin-top:20px}@media (max-width: 768px){.global-settings{padding:15px}.settings-card{margin-bottom:15px}}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:24px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-weight:600;color:#333;font-size:14px}.form-group input,.form-group select{padding:12px;border:2px solid #e0e0e0;border-radius:8px;font-size:14px;transition:border-color .2s ease}.form-group input:focus,.form-group select:focus{outline:none;border-color:#007bff}.form-actions{display:flex;gap:12px;justify-content:flex-end}.tables-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px;padding:30px}.table-card{background:#fff;border-radius:12px;box-shadow:0 2px 12px #00000014;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.table-card:hover{transform:translateY(-4px);box-shadow:0 8px 25px #00000026}.table-card-header{background:linear-gradient(135deg,#007bff,#6f42c1);color:#fff;padding:16px 20px;display:flex;justify-content:space-between;align-items:center}.table-card-header h3{margin:0;font-size:18px;font-weight:600}.status-indicator{padding:4px 8px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase}.status-indicator.available{background:#28a74533;color:#28a745}.status-indicator.occupied{background:#dc354533;color:#dc3545}.table-card-body{padding:20px}.table-detail{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid #f0f0f0}.table-detail:last-child{margin-bottom:0;border-bottom:none}.detail-label{font-size:14px;color:#6c757d;font-weight:500}.detail-value{font-size:14px;color:#333;font-weight:600}.detail-value.qr-code{font-family:Courier New,monospace;font-size:12px;background:#f8f9fa;padding:2px 4px;border-radius:4px}.table-card-footer{padding:16px 20px;background:#f8f9fa;border-top:1px solid #e9ecef;display:flex;gap:8px}.btn-outline{background:transparent;color:#007bff;border:2px solid #007bff}.btn-outline:hover{background:#007bff;color:#fff}.btn-secondary{background:#6c757d;color:#fff}.btn-secondary:hover{background:#545b62}@media (max-width: 768px){.controls-section{padding:16px}.filter-buttons{flex-direction:column}.filter-btn{text-align:center}.form-grid{grid-template-columns:1fr;gap:16px}.form-actions{flex-direction:column-reverse}.form-actions .btn{width:100%;justify-content:center}.tables-grid{grid-template-columns:1fr}.table-card-footer{flex-direction:column}.table-header,.table-row{font-size:12px;padding:8px 12px}.users-table .table-header,.users-table .table-row{grid-template-columns:2fr 80px 80px 80px 80px 120px}.user-avatar{width:32px;height:32px;font-size:14px}}.btn-loading{opacity:.8}.empty-state{text-align:center;padding:80px 20px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014}.empty-state h3{font-size:20px;font-weight:600;margin:0 0 8px;color:#333}.empty-state p{font-size:16px;color:#6c757d;margin:0}@keyframes pulse{0%{opacity:1}50%{opacity:.5}to{opacity:1}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.table-card{animation:fadeIn .3s ease-out}.page-header{display:flex;flex-direction:column;gap:15px;margin-bottom:30px}.page-header h1{margin:0;font-size:28px;font-weight:700}.page-header p{margin:0;color:#6c757d;font-size:16px}.page-header>div{display:flex;gap:15px;align-items:center;flex-wrap:wrap}.header-actions ion-button{--border-radius: 8px;--padding-start: 16px;--padding-end: 16px;font-weight:500}.running-time-display{font-family:Courier New,monospace;font-weight:700;padding:4px 8px;border-radius:4px;font-size:.9em}.running-time-normal{color:#27ae60;background-color:#27ae601a}.running-time-warning{color:#f39c12;background-color:#f39c121a}.running-time-critical{color:#e74c3c;background-color:#e74c3c1a}.table-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.table-actions ion-button{--min-height: 32px;--font-size: 12px}.table-actions-container{display:flex;flex-direction:column;gap:8px;min-width:200px;padding:4px}.table-actions-container.row-layout{flex-direction:row;justify-content:center;align-items:center;gap:6px;min-width:160px;padding:6px}.table-actions-container{width:100%}.table-actions-container.row-layout{width:180px;max-width:180px}.table-actions-header{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:1px solid #dee2e6;border-radius:12px;padding:16px 20px;margin:20px 0;text-align:center;box-shadow:0 2px 8px #0000000d}.table-actions-header h3{margin:0 0 4px;color:#495057;font-size:18px;font-weight:600}.table-actions-header p{margin:0;color:#6c757d;font-size:14px}.session-actions{display:flex;gap:6px;flex-wrap:wrap}.actions-row-layout{display:flex;flex-direction:row;flex-wrap:nowrap}.actions-row-layout .action-btn{margin:0;flex:none;width:auto;min-width:70px}.action-btn{--min-height: 36px;--font-size: 13px;--font-weight: 500;--border-radius: 8px;--padding-start: 12px;--padding-end: 12px;--transition: all .2s cubic-bezier(.4, 0, .2, 1);text-transform:none;letter-spacing:.025em;box-shadow:0 2px 4px #0000001a;position:relative;overflow:hidden;width:100%;margin-bottom:4px}.action-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.action-btn:hover:before{left:100%}.action-btn ion-icon{font-size:16px;margin-right:4px}.edit-btn{--color: #495057;--border-color: #6c757d;--background: transparent}.actions-row-layout .edit-btn{width:auto;margin-bottom:0;margin-right:0}.edit-btn:hover{--background: #f8f9fa;--color: #343a40;--border-color: #495057;transform:translateY(-1px);box-shadow:0 4px 8px #00000026}.start-btn{--background: linear-gradient(135deg, #28a745 0%, #20c997 100%);--color: white}.actions-row-layout .start-btn{flex:none;min-width:70px}.start-btn:hover{--background: linear-gradient(135deg, #218838 0%, #1aa085 100%);transform:translateY(-1px);box-shadow:0 4px 12px #28a7454d}.change-btn{--background: linear-gradient(135deg, #ffc107 0%, #fd7e14 100%);--color: #212529}.actions-row-layout .change-btn{flex:none;min-width:70px}.change-btn:hover{--background: linear-gradient(135deg, #e0a800 0%, #e55900 100%);transform:translateY(-1px);box-shadow:0 4px 12px #ffc1074d}.stop-btn{--background: linear-gradient(135deg, #dc3545 0%, #e91e63 100%);--color: white}.actions-row-layout .stop-btn{flex:none;min-width:60px}.stop-btn:hover{--background: linear-gradient(135deg, #c82333 0%, #d81b60 100%);transform:translateY(-1px);box-shadow:0 4px 12px #dc35454d}.action-btn:active{transform:translateY(0);box-shadow:0 1px 2px #0000001a}.action-btn[disabled]{opacity:.6;cursor:not-allowed;transform:none!important}.action-btn[disabled]:before{display:none}.action-btn.processing:after{content:"";position:absolute;top:50%;right:8px;width:12px;height:12px;border:2px solid currentColor;border-top:2px solid transparent;border-radius:50%;animation:spin 1s linear infinite;transform:translateY(-50%)}@keyframes spin{0%{transform:translateY(-50%) rotate(0)}to{transform:translateY(-50%) rotate(360deg)}}.action-btn[title]:hover:after{content:attr(title);position:absolute;bottom:100%;left:50%;transform:translate(-50%);background:#343a40;color:#fff;padding:4px 8px;border-radius:4px;font-size:11px;white-space:nowrap;z-index:1000;margin-bottom:4px}.action-btn[title]:hover:before{content:"";position:absolute;bottom:100%;left:50%;transform:translate(-50%);border:4px solid transparent;border-top-color:#343a40;z-index:1000}.session-details-card{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:16px;margin-bottom:20px}.session-details-card h3{margin:0 0 12px;color:#495057;font-size:16px;font-weight:600}.session-details-card p{margin:4px 0;color:#6c757d}.session-details-card strong{color:#343a40}.warning-card{background:#fff3cd;border:1px solid #ffeaa7;border-radius:8px;padding:16px;margin-top:20px}.warning-card p{margin:0;color:#856404}.success-preview-card{background:#d4edda;border:1px solid #c3e6cb;border-radius:8px;padding:16px;margin-top:20px}.success-preview-card p{margin:0;color:#155724}.action-btn-group{display:flex;flex-direction:column;gap:6px;background:#f8f9fa;padding:8px;border-radius:12px;border:1px solid #e9ecef;box-shadow:0 2px 8px #0000000d;transition:all .2s ease}.action-btn-group:hover{background:#fff;border-color:#dee2e6;box-shadow:0 4px 12px #0000001a}.action-btn:focus{outline:2px solid var(--ion-color-primary);outline-offset:2px;z-index:1}.action-btn:focus-visible{outline:2px solid var(--ion-color-primary);outline-offset:2px}@media (prefers-contrast: high){.action-btn{--border-width: 2px;font-weight:600}.edit-btn{--border-color: #000000;--color: #000000}.start-btn{--background: #006400}.change-btn{--background: #ff8c00;--color: #000000}.stop-btn{--background: #dc143c}}@media (prefers-reduced-motion: reduce){.action-btn,.action-btn:before,.table-actions-container,.session-actions{transition:none;animation:none}.action-btn:hover{transform:none}.action-btn.processing:after{animation:none}}@media (prefers-color-scheme: dark){.table-actions-container{background:#ffffff0d;border-radius:8px}.action-btn{box-shadow:0 2px 4px #0000004d}.edit-btn{--color: #adb5bd;--border-color: #6c757d}.edit-btn:hover{--background: rgba(255, 255, 255, .1);--color: #ffffff}}@media (max-width: 768px){.page-header>div{flex-direction:column;align-items:stretch}.table-actions{flex-direction:column}.table-actions ion-button{width:100%;margin:2px 0}.table-actions-container{min-width:auto;width:100%}.session-actions{flex-direction:row;justify-content:space-between}.action-btn{--min-height: 40px;--font-size: 14px}.edit-btn{margin-bottom:8px}.change-btn,.stop-btn{flex:1;margin:0 2px}.start-btn{width:100%}.action-btn[title]:hover:after,.action-btn[title]:hover:before{display:none}}@media (max-width: 1024px) and (min-width: 769px){.table-actions-container{min-width:180px}.action-btn{--min-height: 34px;--font-size: 12px}.session-actions{gap:4px}}@media (min-width: 1200px){.table-actions-container{min-width:220px}.action-btn{--min-height: 38px;--font-size: 14px}.session-actions{gap:8px}}.admin-layout .slideout-modal{z-index:1050!important}.admin-layout .modal-backdrop{z-index:1049!important}.qr-modal-footer{background:#fff;--background: white}.modal-action-buttons ion-button{min-width:80px}.session-details-card,.success-preview-card,.warning-card{margin:12px 0}.slideout-modal .modal-content{padding-bottom:80px}@media (max-width: 768px){.admin-layout .slideout-modal{width:100%!important;height:100%!important;max-width:none!important}.admin-layout .modal-content{padding:12px;max-height:calc(100vh - 120px)}}.btn-success{background:#28a745;color:#fff}.btn-success:hover{background:#218838}.btn-danger{background:#dc3545;color:#fff}.btn-primary{background:#007bff;color:#fff}.btn-primary:hover{background:#0056b3}.transactions-table .table-header,.transactions-table .table-row{grid-template-columns:2fr 1fr 1fr 1.2fr 1fr 1.8fr}.amount{color:#007bff;font-weight:600}.cost{color:#28a745;font-weight:600}.method{text-transform:capitalize;font-size:13px}.date{font-size:13px;color:#6c757d}.col-actions{display:flex;gap:8px;align-items:center}.col-actions .btn{padding:6px 12px;font-size:12px;font-weight:600;border-radius:4px}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px;background:#fff;padding:24px;border-radius:12px;box-shadow:0 2px 8px #00000014}.page-header h1{font-size:28px;font-weight:700;margin:0 0 8px;color:#333}.page-header p{font-size:16px;color:#6c757d;margin:0}.page-header .btn{padding:12px 24px;font-size:14px;font-weight:600;border-radius:8px;text-decoration:none}.header-actions{display:flex;justify-content:center;gap:12px;margin-top:16px}.header-actions ion-button{--border-radius: 8px}.status-badge.admin{background:linear-gradient(135deg,#007bff,#6f42c1);color:#fff}.status-badge.user{background:#e9ecef;color:#495057}.session-badge.active{color:#28a745}.session-badge.inactive{color:#6c757d}.table-row:hover{background:#f8f9fa;transform:translate(4px)}.btn:hover{transform:translateY(-1px);box-shadow:0 2px 8px #00000026}.btn:focus,.search-input:focus,.form-group input:focus,.form-group select:focus{outline:2px solid #007bff;outline-offset:2px}@media print{.page-header .btn,.col-actions,.create-form-section{display:none}.table-card{-moz-column-break-inside:avoid;break-inside:avoid;box-shadow:none;border:1px solid #ddd}}.admin-app{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#f5f5f5;min-height:100vh}.admin-layout{display:flex;min-height:100vh}.sidebar{width:250px;background:#1a1a1a;color:#fff;position:fixed;top:0;left:0;height:100vh;transform:translate(-100%);transition:transform .3s ease;z-index:1000}.sidebar-open{transform:translate(0)}.sidebar-header{padding:20px;border-bottom:1px solid #333;display:flex;justify-content:space-between;align-items:center}.sidebar-header h2{margin:0;font-size:18px;font-weight:600}.sidebar-toggle{background:none;border:none;color:#fff;font-size:18px;cursor:pointer;padding:5px}.sidebar-nav{padding:20px 0}.nav-item{display:flex;align-items:center;gap:12px;padding:12px 20px;color:#ccc;text-decoration:none;transition:all .2s ease;border-left:3px solid transparent}.nav-item:hover{background:#333;color:#fff}.nav-item.active{background:#333;color:#fff;border-left-color:#007bff}.nav-icon{font-size:18px;width:20px;text-align:center}.nav-text{font-weight:500}.sidebar-footer{position:absolute;bottom:0;left:0;right:0;padding:20px;border-top:1px solid #333}.user-info{display:flex;flex-direction:column;gap:12px}.user-details{display:flex;flex-direction:column;gap:4px}.user-name{font-weight:600;font-size:14px}.user-role{font-size:12px;color:#ccc}.sign-out-btn{background:#dc3545;color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:background .2s ease}.sign-out-btn:hover{background:#c82333}.main-content{position:relative;flex:1;margin-left:0;transition:margin-left .3s ease}.main-header{background:#fff;padding:20px;border-bottom:1px solid #e0e0e0;display:flex;align-items:center;gap:20px}.mobile-menu-btn{background:none;border:none;font-size:18px;cursor:pointer;padding:8px;border-radius:6px;transition:background .2s ease}.mobile-menu-btn:hover{background:#f0f0f0}.main-header h1{margin:0;font-size:24px;font-weight:600;color:#333}.main-body{padding:30px}.sidebar-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:999}.users-table,.transactions-table{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.table-header{display:grid;background:#f8f9fa;padding:16px 20px;font-weight:600;color:#333;border-bottom:1px solid #e0e0e0}.users-table .table-header,.transactions-table .table-header{grid-template-columns:1fr 1fr 1fr 1fr 1fr 1fr 1fr}.table-body{max-height:600px;overflow-y:auto}.table-row{display:grid;padding:16px 20px;border-bottom:1px solid #f0f0f0;transition:background .2s ease}.table-row:hover{background:#f8f9fa}.users-table .table-row,.transactions-table .table-row{grid-template-columns:1fr 1fr 1fr 1fr 1fr 1fr 1fr}.user-cell strong{font-weight:600;color:#333}.user-cell span{font-size:14px;color:#666}.status-badge,.session-badge{display:inline-block;padding:4px 8px;border-radius:12px;font-size:12px;font-weight:600}.status-badge.admin{background:#e3f2fd;color:#1976d2}.status-badge.user{background:#f3e5f5;color:#7b1fa2}.session-badge.active{background:#e8f5e8;color:#2e7d32}.session-badge.inactive{background:#fafafa;color:#757575}.btn{background:#007bff;color:#fff;border:none;padding:8px 16px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s ease;margin-right:8px}.btn:hover{background:#0056b3}.btn-success{background:#28a745}.btn-success:hover{background:#1e7e34}.btn-danger{background:#dc3545}.btn-danger:hover{background:#c82333}.btn-warning{background:#ffc107;color:#212529}.btn-warning:hover{background:#e0a800}.btn:disabled{opacity:.6;cursor:not-allowed}.empty-state{text-align:center;padding:60px 20px;color:#666}.empty-state h3{margin:0 0 8px;font-size:18px;font-weight:600}.empty-state p{margin:0;font-size:14px}@media (min-width: 768px){.sidebar{position:static;transform:translate(0)}.main-content{margin-left:250px}.mobile-menu-btn{display:none}}@media (max-width: 767px){.dashboard-sections{grid-template-columns:1fr}.stats-grid{display:flex;flex-direction:column}.table-header,.table-row{font-size:14px;padding:12px 16px}}.detail-qr{display:flex;flex-direction:column;align-items:center;gap:8px;width:100%}.qr-code-container{display:flex;flex-direction:row;justify-content:center}.col-joined{gap:12px}.slideout-actions-button{font-size:12px;text-transform:none}.dashboard-section{margin-bottom:20px;padding:0 16px}.management-section{margin-top:20px}.cinema-grid-container{background:#fff;padding:16px;border-radius:8px;margin-bottom:16px;border:1px solid #e8e8e8;box-shadow:0 2px 6px #0000000a}.cinema-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;max-width:1000px;margin:0 auto;padding:12px 0}.cinema-seat{width:140px;height:110px;border-radius:16px 16px 6px 6px;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;position:relative;background:#fff;border:2px solid #e0e0e0;box-shadow:0 6px 12px #00000014}.cinema-seat:before{content:"";position:absolute;bottom:-6px;left:25%;right:25%;height:12px;background:#e0e0e0;border-radius:0 0 12px 12px;transition:all .3s ease}.cinema-seat:after{content:"";position:absolute;top:12px;left:12px;right:12px;height:60px;background:#f8f8f8;border-radius:12px 12px 0 0;border:1px solid #e8e8e8;transition:all .3s ease}.cinema-seat:hover{transform:translateY(-3px);box-shadow:0 6px 16px #0000001f;border-color:var(--ion-color-primary)}.cinema-seat:hover:before{background:var(--ion-color-primary)}.cinema-seat.available{border-color:var(--ion-color-primary);background:#fff}.cinema-seat.available:before{background:var(--ion-color-primary)}.cinema-seat.available:after{background:#f0f8ff;border-color:var(--ion-color-primary)}.cinema-seat.occupied{border-color:var(--ion-color-secondary);background:#fff}.cinema-seat.occupied:before{background:var(--ion-color-secondary)}.cinema-seat.occupied:after{background:#fff8f0;border-color:var(--ion-color-secondary)}.cinema-seat.disabled{border-color:#ccc;background:#f5f5f5;cursor:not-allowed;opacity:.6}.cinema-seat.disabled:before{background:#ccc}.cinema-seat.disabled:after{background:#f0f0f0;border-color:#ccc}.table-number{font-size:18px;font-weight:700;margin-bottom:4px;color:#000;position:relative;z-index:2}.table-status{font-size:12px;color:#666;position:relative;z-index:2;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.cinema-seat.available .table-number{color:var(--ion-color-primary)}.cinema-seat.occupied .table-number{color:var(--ion-color-secondary)}.cinema-seat.disabled .table-number{color:#999}.cinema-seat.available .table-status{color:var(--ion-color-primary)}.cinema-seat.occupied .table-status{color:var(--ion-color-secondary)}.cinema-seat.disabled .table-status{color:#999}.table-timer{position:absolute;bottom:18px;left:50%;transform:translate(-50%);font-size:11px;background:linear-gradient(135deg,var(--ion-color-secondary),var(--ion-color-secondary-shade));color:#fff;padding:4px 8px;border-radius:8px;white-space:nowrap;z-index:3;font-weight:600;box-shadow:0 2px 6px #0003;border:1px solid rgba(255,255,255,.2)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:16px}.stat-card{background:#fff;padding:16px;border-radius:8px;display:flex;align-items:center;gap:12px;box-shadow:0 2px 6px #0000000a;transition:transform .2s ease;border:1px solid #e8e8e8}.stat-card:hover{transform:translateY(-1px);box-shadow:0 4px 8px #00000014}.stat-card.available{border-left:4px solid var(--ion-color-primary)}.stat-card.occupied{border-left:4px solid var(--ion-color-secondary)}.stat-card.disabled{border-left:4px solid #999999}.stat-card.total{border-left:4px solid var(--ion-color-primary)}.stat-icon{font-size:20px;color:#666;font-weight:400}.stat-card.available .stat-icon{color:var(--ion-color-primary)}.stat-card.occupied .stat-icon{color:var(--ion-color-secondary)}.stat-card.disabled .stat-icon{color:#999}.stat-card.total .stat-icon{color:var(--ion-color-primary)}.stat-content h3{margin:0;font-size:24px;font-weight:600;color:#000}.stat-content p{margin:4px 0 0;color:#000;font-weight:400;font-size:14px;opacity:.7}.recent-activity{background:#fff;padding:16px;border-radius:8px;box-shadow:0 2px 6px #0000000a;border:1px solid #e8e8e8}.activity-list{display:flex;flex-direction:column;gap:8px}.activity-item{display:flex;align-items:flex-start;gap:10px;padding:12px;background:#f9f9f9;border-radius:6px;border-left:3px solid var(--ion-color-primary)}.activity-icon{font-size:14px;margin-top:2px;color:var(--ion-color-primary);font-weight:400}.activity-content{flex:1}.activity-main{font-weight:500;color:#000;margin-bottom:3px;font-size:13px}.activity-details{font-size:12px;color:#000;margin-bottom:3px;opacity:.7}.activity-time{font-size:12px;color:#000;opacity:.6}.dashboard-section .page-header h1,.management-section .page-header h1{font-size:28px;font-weight:600;margin-bottom:8px;color:var(--ion-color-primary)}.dashboard-section .page-header p,.management-section .page-header p{font-size:14px;color:#000;margin-bottom:20px;opacity:.7;font-weight:400}.cinema-grid-container h2,.recent-activity h2{font-size:18px;font-weight:500;color:var(--ion-color-secondary);margin-bottom:20px}@media (max-width: 768px){.cinema-grid{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:10px}.cinema-seat{width:110px;height:90px;border-radius:12px 12px 4px 4px}.cinema-seat:before{bottom:-4px;height:8px;border-radius:0 0 8px 8px}.cinema-seat:after{top:8px;left:8px;right:8px;height:45px;border-radius:8px 8px 0 0}.table-number{font-size:14px}.table-status{font-size:10px}.table-timer{bottom:14px;font-size:9px;padding:2px 5px}.stats-grid{grid-template-columns:1fr 1fr;gap:10px}.stat-card{padding:12px;gap:10px}.stat-icon,.stat-content h3{font-size:18px}.dashboard-section{padding:0 12px}.cinema-grid-container{padding:12px;margin-bottom:12px}.recent-activity{padding:12px}.activity-item{padding:10px;gap:8px}}@media (max-width: 480px){.cinema-grid{grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:8px}.cinema-seat{width:90px;height:75px;border-radius:10px 10px 3px 3px}.cinema-seat:before{bottom:-3px;height:6px;border-radius:0 0 6px 6px}.cinema-seat:after{top:6px;left:6px;right:6px;height:35px;border-radius:6px 6px 0 0}.table-number{font-size:12px}.table-status{font-size:9px}.table-timer{bottom:10px;font-size:8px;padding:1px 4px}.stats-grid{grid-template-columns:1fr;gap:8px}.activity-item{flex-direction:column;align-items:flex-start;gap:6px;padding:8px}.dashboard-section{padding:0 8px}.cinema-grid-container{padding:8px;margin-bottom:8px}.recent-activity{padding:8px}}.rate-container{display:flex;flex-direction:row;justify-content:space-between;gap:10px}.premise-management,.tables-management,.transactions-management,.users-management{width:100%;margin:0 auto;padding:16px;min-height:100vh;background:var(--ion-background-color, #f5f7fa)}.page-header{display:flex;flex-direction:column;gap:16px;margin-bottom:24px;padding:20px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d}.header-content{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;width:100%}.header-text{flex:1}.header-actions{display:flex;gap:12px;align-items:center}.page-header h1{margin:0;font-size:24px;font-weight:700;color:var(--ion-color-dark)}.page-header p{margin:0;font-size:14px;color:var(--ion-color-medium);line-height:1.5}.page-header .btn{align-self:flex-start}.btn{padding:10px 20px;border-radius:8px;border:none;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.btn-primary{background:var(--ion-color-primary);color:#fff}.btn-primary:hover{background:var(--ion-color-primary-shade);transform:translateY(-1px);box-shadow:0 4px 12px rgba(var(--ion-color-primary-rgb),.3)}.btn-secondary{background:var(--ion-color-light);color:var(--ion-color-dark)}.btn-secondary:hover{background:var(--ion-color-light-shade)}.btn-success{background:#10b981;color:#fff}.btn-success:hover{background:#059669;transform:translateY(-1px)}.btn-danger{background:var(--ion-color-danger);color:#fff}.btn-danger:hover{background:var(--ion-color-danger-shade)}.btn-warning{background:var(--ion-color-warning);color:#fff}.btn-warning:hover{background:var(--ion-color-warning-shade)}.btn-outline{background:transparent;border:2px solid var(--ion-color-primary);color:var(--ion-color-primary)}.btn-outline:hover{background:var(--ion-color-primary);color:#fff}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.create-form-section{margin-bottom:24px;animation:slideDown .3s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.create-premise-form,.create-table-form{background:#fff;padding:24px;border-radius:12px;box-shadow:0 2px 8px #0000000d}.create-premise-form h3,.create-table-form h3{margin:0 0 20px;font-size:18px;font-weight:700;color:var(--ion-color-dark)}.form-grid{display:grid;grid-template-columns:1fr;gap:16px;margin-bottom:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:13px;font-weight:600;color:var(--ion-color-dark)}.form-group input,.form-group select{padding:12px;border:2px solid var(--ion-color-light);border-radius:8px;font-size:14px;font-family:inherit;transition:all .2s ease}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--ion-color-primary);box-shadow:0 0 0 3px rgba(var(--ion-color-primary-rgb),.1)}.form-actions{display:flex;gap:12px;justify-content:flex-end;flex-wrap:wrap}.controls-section{display:flex;flex-direction:column;gap:16px;margin-bottom:20px;padding:16px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d}.search-bar{flex:1}.search-input{width:100%;padding:12px 16px;border:2px solid var(--ion-color-light);border-radius:8px;font-size:14px;transition:all .2s ease}.search-input:focus{outline:none;border-color:var(--ion-color-primary);box-shadow:0 0 0 3px rgba(var(--ion-color-primary-rgb),.1)}.filter-buttons{display:flex;gap:8px;flex-wrap:wrap}.filter-btn{padding:8px 16px;border-radius:8px;border:2px solid var(--ion-color-light);background:#fff;font-size:13px;font-weight:600;color:var(--ion-color-medium);cursor:pointer;transition:all .2s ease}.filter-btn.active{background:var(--ion-color-primary);border-color:var(--ion-color-primary);color:#fff}.filter-btn:hover:not(.active){border-color:var(--ion-color-primary);color:var(--ion-color-primary)}.transactions-table,.users-table{display:flex;flex-direction:column;gap:16px}.table-header{display:none}.transactions-table .table-body,.users-table .table-body{display:flex;flex-direction:column;gap:12px;padding:0}.table-row{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000000d;transition:all .2s ease;display:flex;flex-direction:column;gap:16px;border:2px solid transparent;width:100%;max-width:100%;box-sizing:border-box}.table-row:hover{box-shadow:0 4px 16px #0000001a;transform:translateY(-2px);border-color:var(--ion-color-primary)}.table-row>div{display:flex;flex-direction:column;gap:6px}.table-row>div:before{content:attr(data-label);font-size:11px;font-weight:700;color:var(--ion-color-medium);text-transform:uppercase;letter-spacing:.5px}.table-row>div{font-size:15px;font-weight:600;color:var(--ion-color-dark)}.user-cell{display:flex;flex-direction:column;gap:4px}.user-cell strong{font-size:16px;font-weight:700;color:var(--ion-color-dark)}.user-cell span{font-size:13px;color:var(--ion-color-medium)}.amount,.cost,.credits{font-size:18px;font-weight:700;color:var(--ion-color-primary)}.method,.joined-date{font-size:14px;color:var(--ion-color-dark)}.col-actions,.col-action{display:flex;gap:8px;flex-wrap:wrap;margin-top:4px}.col-actions .btn,.col-action .btn{flex:1;min-width:100px}.status-badge,.session-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:20px;font-size:12px;font-weight:600}.status-badge.admin{background:var(--ion-color-primary);color:#fff}.status-badge.user{background:var(--ion-color-light);color:var(--ion-color-dark)}.status-badge.approved{background:#d1fae5;color:#065f46;border:1px solid #10b981}.status-badge.pending{background:#fef3c7;color:#92400e;border:1px solid #f59e0b}.session-badge.active{background:#d1fae5;color:#065f46}.session-badge.inactive{background:var(--ion-color-light);color:var(--ion-color-medium)}.session-dot{width:8px;height:8px;border-radius:50%}.session-dot.active{background:#10b981;animation:pulse 2s infinite}.session-dot.inactive{background:var(--ion-color-medium)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.empty-state{text-align:center;padding:60px 20px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d}.empty-icon{font-size:64px;margin-bottom:16px}.empty-state h3{margin:0 0 8px;font-size:18px;font-weight:600;color:var(--ion-color-dark)}.empty-state p{margin:0;font-size:14px;color:var(--ion-color-medium);line-height:1.5}.instructions-section{margin-top:32px;padding:24px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d}.instructions-section h3{margin:0 0 20px;font-size:18px;font-weight:700;color:var(--ion-color-dark)}.instructions-grid{display:grid;grid-template-columns:1fr;gap:16px}.instruction-card{padding:16px;background:var(--ion-color-light);border-radius:8px;display:flex;flex-direction:column;gap:8px}.instruction-number{width:40px;height:40px;border-radius:50%;background:var(--ion-color-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;flex-shrink:0}.instruction-card h4{margin:0;font-size:15px;font-weight:600;color:var(--ion-color-dark)}.instruction-card p{margin:0;font-size:13px;color:var(--ion-color-medium);line-height:1.5}.qr-modal-footer{--background: white;border-top:1px solid var(--ion-color-light)}.modal-action-buttons{gap:8px}.qr-controls{padding:16px;background:var(--ion-color-light);border-radius:8px;margin-bottom:16px}@media (min-width: 768px){.premise-management,.tables-management,.transactions-management,.users-management{padding:24px}.page-header{flex-direction:row;justify-content:space-between;align-items:center;padding:24px}.page-header h1{font-size:28px}.form-grid{grid-template-columns:repeat(2,1fr);gap:20px}.controls-section{flex-direction:row;align-items:center;padding:20px}.instructions-grid{grid-template-columns:repeat(2,1fr);gap:20px}.transactions-table{display:flex;flex-direction:column;gap:16px}.users-table{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.transactions-table .table-body{display:flex;flex-direction:column;gap:16px}.users-table .table-body{display:contents}.table-row{padding:24px;width:100%;max-width:100%}.table-row>div:before{font-size:12px}.user-cell strong{font-size:17px}.amount,.cost,.credits{font-size:20px}}@media (min-width: 1024px){.premise-management,.tables-management,.transactions-management,.users-management{padding:32px}.page-header{padding:28px}.page-header h1{font-size:32px}.create-premise-form,.create-table-form{padding:32px}.form-grid,.instructions-grid{grid-template-columns:repeat(4,1fr)}.transactions-table,.transactions-table .table-body{display:flex;flex-direction:column;gap:20px}.users-table{grid-template-columns:repeat(3,1fr);gap:20px}.table-row{padding:28px;width:100%;max-width:100%}.table-row>div:before{font-size:12px}.user-cell strong{font-size:18px}.amount,.cost,.credits{font-size:22px}}.dynamic-table-container{max-height:calc(100vh - 250px);overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:var(--ion-color-primary-tint) rgba(0,0,0,.05);position:relative;scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.dynamic-table-container::-webkit-scrollbar{width:6px}.dynamic-table-container::-webkit-scrollbar-track{background:#00000005;border-radius:10px}.dynamic-table-container::-webkit-scrollbar-thumb{background:var(--ion-color-primary-tint);border-radius:10px;-webkit-transition:background .2s ease;transition:background .2s ease}.dynamic-table-container::-webkit-scrollbar-thumb:hover{background:var(--ion-color-primary)}table{display:block;border:none!important;box-shadow:none!important;background:transparent!important;width:100%}table thead{display:none}table tbody{display:flex;flex-direction:column;gap:10px;padding:4px;min-height:-moz-min-content;min-height:min-content;width:100%}table tbody tr{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;background:#fff;border-radius:10px;padding:14px 18px;box-shadow:0 1px 2px #0000000f,0 2px 6px #0000000a;border:1px solid rgba(0,0,0,.08);border-left:4px solid var(--ion-color-primary);transition:all .2s cubic-bezier(.4,0,.2,1);gap:12px;position:relative;overflow:hidden;width:100%}table tbody tr:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--ion-color-primary) 0%,var(--ion-color-secondary) 100%);opacity:.7;transition:opacity .2s ease}table tbody tr:hover{box-shadow:0 2px 4px #00000014,0 4px 12px #0000001a;transform:translateY(-2px);border-left-color:var(--ion-color-secondary);cursor:pointer}table tbody tr:hover:before{opacity:1}table tbody tr:active{transform:translateY(-1px) scale(.99)}table tbody td{display:flex;flex-direction:column;gap:4px;padding:0!important;border:none!important;text-align:left!important;min-width:0;flex:1 1 auto}table tbody td:last-child{flex:0 0 auto;flex-direction:row;align-items:center;gap:6px;margin-left:auto}table tbody td:before{content:attr(data-label);font-size:9px;font-weight:700;color:#888;text-transform:uppercase;letter-spacing:.6px;white-space:nowrap}table tbody td>*{font-size:13px;font-weight:600;color:#000;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}table tbody td ion-button{margin:0;--border-radius: 6px;--padding-start: 8px;--padding-end: 8px;font-weight:600;font-size:0;letter-spacing:0;text-transform:none;box-shadow:0 1px 2px #00000014;transition:all .2s ease;height:32px;min-width:32px;width:32px}table tbody td ion-button ion-icon{font-size:18px;color:#444;margin:0;padding:0}table tbody td ion-button:hover{transform:translateY(-1px);box-shadow:0 2px 4px #0000001f;background:#0000000a}table tbody td ion-button:hover ion-icon{color:#000}table tbody td ion-button[size=small]{font-size:11px;width:auto;min-width:auto}.slideout-actions-button{height:32px;font-size:11px;border-radius:6px;padding:0 10px}@media (min-width: 768px){.dynamic-table-container{max-height:calc(100vh - 220px)}table tbody{display:flex;flex-direction:column;gap:10px;padding:8px;width:100%}table tbody tr{padding:16px 20px;border-radius:10px}table tbody tr:before{height:2px}table tbody td{flex:1 1 150px;max-width:200px}table tbody td:before{font-size:9px;letter-spacing:.6px}table tbody td>*{font-size:13px}table tbody td:last-child{flex:0 0 auto;gap:8px}table tbody td ion-button{height:34px;min-width:34px;width:34px}table tbody td ion-button ion-icon{font-size:19px}}@media (min-width: 1024px){.dynamic-table-container{max-height:calc(100vh - 200px)}table tbody{display:flex;flex-direction:column;gap:10px;padding:10px;width:100%}table tbody tr{padding:18px 24px;border-radius:10px}table tbody tr:hover{transform:translateY(-2px);box-shadow:0 3px 6px #0000001a,0 6px 12px #00000014}table tbody td{flex:1 1 180px;max-width:220px}table tbody td:before{font-size:9px}table tbody td>*{font-size:14px}table tbody td:last-child{flex:0 0 auto;gap:8px}table tbody td ion-button{height:36px;min-width:36px;width:36px}table tbody td ion-button ion-icon{font-size:20px}.slideout-actions-button{height:36px;font-size:11px}}@media (min-width: 1440px){table tbody tr{padding:20px 28px}table tbody td{flex:1 1 200px;max-width:250px}table tbody td>*{font-size:14px}}.users-table{width:100%}.users-table .table-header{display:none}.users-table .table-body{display:flex;flex-direction:column;gap:10px;padding:4px;width:100%;max-width:100%}.users-table .table-row{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;background:#fff;border-radius:10px;padding:14px 18px;box-shadow:0 1px 2px #0000000f,0 2px 6px #0000000a;border:1px solid rgba(0,0,0,.08);border-left:4px solid var(--ion-color-primary);transition:all .2s cubic-bezier(.4,0,.2,1);gap:12px;position:relative;overflow:hidden;width:100%;max-width:100%}.users-table .table-row:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--ion-color-primary) 0%,var(--ion-color-secondary) 100%);opacity:.7;transition:opacity .2s ease}.users-table .table-row:hover{box-shadow:0 2px 4px #00000014,0 4px 12px #0000001a;transform:translateY(-2px);border-left-color:var(--ion-color-secondary);cursor:pointer}.users-table .table-row:hover:before{opacity:1}.users-table .table-row>div{display:flex;flex-direction:column;gap:4px;padding:0;border:none;min-width:0;flex:1 1 100px;max-width:200px}.users-table .table-row>div:last-child{flex:0 0 auto;flex-direction:row;align-items:center;gap:6px;margin-left:auto}.users-table .table-row>div:before{content:attr(class);font-size:9px;font-weight:700;color:#888;text-transform:uppercase;letter-spacing:.6px;white-space:nowrap}.users-table .col-user:before{content:"User"}.users-table .col-email:before{content:"Email"}.users-table .col-credits:before{content:"Credits"}.users-table .col-status:before{content:"Status"}.users-table .col-session:before{content:"Session"}.users-table .col-joined:before{content:"Joined"}.users-table .col-action:before{content:"Action"}.users-table .table-row>div>*{font-size:13px;font-weight:600;color:#000;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.users-table .col-action{justify-content:flex-end;gap:6px}.users-table .col-action:before{display:none}.users-table .btn{margin:0;border-radius:6px;padding:8px 12px;font-weight:600;font-size:11px;letter-spacing:.3px;text-transform:uppercase;box-shadow:0 1px 2px #00000014;transition:all .2s ease;height:32px;min-width:auto;width:auto;border:1px solid rgba(0,0,0,.1);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px;background:#fff;color:#333;white-space:nowrap}.users-table .btn:before{content:"↑";font-size:14px;font-weight:700;color:#666;line-height:1}.users-table .btn-primary:before{content:"↑"}.users-table .btn-warning:before{content:"↓"}.users-table .btn:hover{transform:translateY(-1px);box-shadow:0 2px 4px #0000001f;background:#f8f9fa;border-color:#00000026}.users-table .btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.users-table .status-badge,.users-table .session-badge{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border-radius:6px;font-size:11px;font-weight:600;border:1px solid rgba(0,0,0,.1);background:#fff}.users-table .status-badge.admin{border-color:#333;color:#333}.users-table .status-badge.user{border-color:#999;color:#666}.users-table .status-badge .badge-icon{filter:grayscale(100%);font-size:12px}.users-table .session-badge{font-size:11px}.users-table .session-badge.active{color:#333;border-color:#333}.users-table .session-badge.inactive{color:#999;border-color:#ccc}.users-table .session-dot{width:6px;height:6px;border-radius:50%}.users-table .session-dot.active{background:#333}.users-table .session-dot.inactive{background:#999}.session-timer-wrapper{display:inline-flex;align-items:center;justify-content:center;width:100%}.table-body .session-timer-badge{margin:0 auto;min-width:120px;justify-content:center}@media (max-width: 767px){.table-body .session-timer-badge{margin:8px 0;width:auto;max-width:200px}.header-content{flex-direction:column;align-items:stretch;gap:15px}.header-actions{justify-content:flex-start}.header-actions ion-button{width:100%;justify-content:center}}@media (min-width: 768px){.users-table .table-body{gap:10px;padding:8px}.users-table .table-row{padding:16px 20px}.users-table .table-row>div{flex:1 1 110px;max-width:170px}.users-table .col-user{flex:1 1 130px;max-width:190px}.users-table .col-email{flex:1 1 150px;max-width:210px}.users-table .table-row>div>*{font-size:13px}.users-table .btn{height:34px;padding:8px 14px;font-size:11px}.users-table .btn:before{font-size:15px}}@media (min-width: 1024px){.users-table .table-row{padding:18px 24px}.users-table .table-row>div{flex:1 1 120px;max-width:180px}.users-table .col-user{flex:1 1 140px;max-width:200px}.users-table .col-email{flex:1 1 160px;max-width:220px}.users-table .table-row>div>*{font-size:14px}.users-table .btn{height:36px;padding:8px 16px;font-size:12px}.users-table .btn:before{font-size:16px}}@media print{.page-header .btn,.form-actions,.col-actions,.col-action{display:none!important}table{display:table!important}table thead{display:table-header-group!important}table tbody{display:table-row-group!important}table tbody tr{display:table-row!important}table tbody td{display:table-cell!important}.users-table .table-header{display:flex!important}.users-table .table-row{-moz-column-break-inside:avoid;break-inside:avoid}}.rate-container{display:flex;flex-direction:row;justify-content:space-between}.modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#0006;z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.slideout-modal{position:absolute;top:0;bottom:0;z-index:1001;background:#fff;box-shadow:-4px 0 20px #00000026;display:flex;flex-direction:column;animation:slideIn .3s cubic-bezier(.25,.46,.45,.94)}.slideout-start{left:0;transform-origin:left}.slideout-end{right:0;transform-origin:right}.admin-layout .slideout-end{right:0}@media (min-width: 768px){.admin-layout .slideout-end{right:0}.admin-layout .slideout-start{left:280px}}@media (max-width: 767px){.admin-layout .slideout-modal{z-index:1002}.admin-layout .modal-backdrop{z-index:1001}}.slideout-small{width:380px}.slideout-medium{width:560px}.slideout-large,.slideout-full{width:100%}.admin-layout .slideout-large{max-width:calc(100vw - 60px)}.admin-layout .slideout-medium{max-width:560px}.admin-layout .slideout-small{max-width:380px}.admin-layout.sidebar-open .slideout-end{right:0}.admin-layout.sidebar-open .slideout-start{left:0}@media (min-width: 768px){.admin-layout.sidebar-open .slideout-start{left:280px}}.modal-header{padding:16px 20px;border-bottom:1px solid #e0e0e0;display:flex;align-items:center;justify-content:space-between;background:#f8f9fa;flex-shrink:0}.modal-title{margin:0;font-size:18px;font-weight:600;color:#333}.close-button{background:none;border:none;font-size:20px;cursor:pointer;color:#666;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.close-button:hover{background:#e0e0e0;color:#333}.modal-content{flex:1;overflow-y:auto;padding:20px;height:100%;position:relative}.admin-layout .modal-content{padding:16px;max-height:calc(100vh - 140px)}.admin-layout .slideout-modal .modal-content{overflow-y:auto;-webkit-overflow-scrolling:touch}.admin-layout .slideout-modal ion-footer{position:sticky;bottom:0;z-index:10;background:#fff;border-top:1px solid #e0e0e0}@keyframes slideInFromLeft{0%{transform:translate(-100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideInFromRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.slideout-start{animation:slideInFromLeft .3s cubic-bezier(.25,.46,.45,.94)}.slideout-end{animation:slideInFromRight .3s cubic-bezier(.25,.46,.45,.94)}.admin-layout .slideout-modal{animation-duration:.2s;animation-timing-function:cubic-bezier(.4,0,.2,1)}@media (max-width: 768px){.slideout-modal{width:100%!important}.admin-layout .slideout-modal{z-index:1050}.admin-layout .modal-backdrop{z-index:1049}.admin-layout .slideout-start{left:0}.admin-layout .slideout-end{right:0}}.slideout-modal{will-change:transform;backface-visibility:hidden}.admin-layout .slideout-modal{isolation:isolate}.ion-button{background:#3880ff;color:#fff;border:none;border-radius:4px;padding:12px 24px;font-size:16px;font-weight:500;cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:all .2s ease;text-decoration:none}.ion-button:hover{background:#3171e0;transform:translateY(-1px)}.ion-button.block{width:100%;justify-content:center}.ion-button.outline{background:transparent;color:#3880ff;border:1px solid #3880ff}.ion-button.outline:hover{background:#3880ff;color:#fff}.ion-button.secondary{background:#3dc2ff}.ion-button.tertiary{background:#5260ff}.ion-button.success{background:#2dd36f}.ion-card{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin:16px 0;overflow:hidden}.ion-card-header{padding:20px 20px 0}.ion-card-title{font-size:20px;font-weight:600;margin:0 0 8px;color:#333}.ion-card-content{padding:20px}.ion-item{display:flex;align-items:center;padding:12px 0;border-bottom:1px solid #f0f0f0}.ion-item:last-child{border-bottom:none}.ion-label{flex:1}.ion-label h3{margin:0 0 4px;font-size:16px;font-weight:500;color:#333}.ion-label p{margin:0;font-size:14px;color:#666}.ion-input,.ion-textarea{width:100%;padding:12px;border:1px solid #ddd;border-radius:4px;font-size:16px;margin-top:8px;transition:border-color .2s ease}.ion-input:focus,.ion-textarea:focus{outline:none;border-color:#3880ff}.ion-checkbox{width:20px;height:20px;margin-left:12px;accent-color:#3880ff}.ion-list{margin:0;padding:0;list-style:none}.space-y-4>*+*{margin-top:16px}.clickable{cursor:pointer;transition:background-color .2s ease}.clickable:hover{background-color:#f8f9fa}.session-timer-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:600;border-radius:16px;white-space:nowrap;max-width:150px}.session-timer-badge.compact{gap:4px;padding:4px 8px;font-size:12px;border-radius:12px;min-width:-moz-fit-content;min-width:fit-content}.session-timer-badge ion-icon{font-size:16px}.session-timer-badge.compact ion-icon{font-size:14px}.session-timer-badge.ended{animation:pulse-danger 1.5s ease-in-out infinite;max-width:150px}@keyframes pulse-danger{0%,to{opacity:1}50%{opacity:.7}}@media (max-width: 767px){.session-timer-badge{font-size:12px;padding:5px 10px}.session-timer-badge ion-icon{font-size:14px}.session-timer-badge.compact{font-size:11px;padding:3px 6px}.session-timer-badge.compact ion-icon{font-size:12px}}.reports-page{--background: #f5f7fa;--color: #2d3748}.reports-container{max-width:1200px;margin:0 auto;padding:16px}.quick-stats-card-title{color:#393535;font-weight:600;font-size:1.2rem}.quick-stats-card{background:linear-gradient(135deg,var(--ion-color-primary) 0%,var(--ion-color-secondary) 100%);color:#393535;margin-bottom:16px;border-radius:16px;overflow:hidden}.quick-stats-card ion-card-title{color:#fff;font-weight:600;font-size:1.2rem}.stat-period{background:#ffffff1a;border-radius:12px;padding:16px;margin-bottom:16px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.stat-period h3{margin:0 0 16px;display:flex;align-items:center;gap:8px;font-size:1.1rem;font-weight:600}.stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.stat-item{display:flex;align-items:center;gap:12px;background:#ffffff1a;padding:12px;border-radius:8px;transition:transform .2s ease}.stat-item:hover{transform:translateY(-2px);background:#ffffff26}.stat-item ion-icon{font-size:1.5rem;opacity:.8}.stat-item div{display:flex;flex-direction:column}.stat-value{color:#393535;font-size:1.3rem;font-weight:700;line-height:1.2}.stat-label{font-size:.8rem;opacity:.8;text-transform:uppercase;letter-spacing:.5px}.report-controls-card{margin-bottom:16px;box-shadow:0 4px 12px #0000001a;border-radius:16px}.report-controls-card ion-card-title{color:#4a5568;font-weight:600}.summary-item{display:flex;align-items:center;gap:16px;padding:16px;background:#f8fafc;border-radius:12px;border-left:4px solid #4299e1;transition:all .3s ease}.summary-item:hover{transform:translateY(-2px);box-shadow:0 8px 25px #0000001a}.summary-icon{font-size:2rem;color:#4299e1}.summary-content{flex:1}.summary-label{font-size:.9rem;color:#718096;margin-bottom:4px;text-transform:uppercase;letter-spacing:.5px;font-weight:500}.summary-value{font-size:1.8rem;font-weight:700;color:#2d3748;line-height:1.2}.table-container{border-radius:12px;overflow:hidden;border:1px solid #e2e8f0}.table-row{border-bottom:1px solid #e2e8f0;transition:background-color .2s ease}.table-row:hover{background-color:#f7fafc}.table-row:last-child{border-bottom:none}.row-content{display:flex;justify-content:space-between;align-items:center;padding:16px}.row-main{display:flex;align-items:center;gap:12px}.row-count{font-size:.9rem;color:#718096}.row-details{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.row-amount{font-weight:600;color:#2d3748;font-size:1.1rem}.row-percentage{font-size:.8rem;color:#4a5568;background:#edf2f7;padding:2px 8px;border-radius:12px}.top-users-list{display:flex;flex-direction:column;gap:12px}.user-item{display:flex;align-items:center;gap:16px;padding:16px;background:#f8fafc;border-radius:12px;border:1px solid #e2e8f0;transition:all .3s ease}.user-item:hover{transform:translateY(-2px);box-shadow:0 8px 25px #0000001a;border-color:#4299e1}.user-rank{flex-shrink:0}.user-info{flex:1;min-width:0}.user-name{font-weight:600;color:#2d3748;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-email{font-size:.9rem;color:#718096;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-stats{display:flex;gap:24px}.user-stat{text-align:center}.user-stat .stat-value{display:block;font-weight:700;color:#2d3748;font-size:1.2rem;line-height:1.2}.user-stat .stat-label{font-size:.75rem;color:#718096;text-transform:uppercase;letter-spacing:.5px}.report-metadata{background:#f8fafc;border-radius:8px;padding:16px;border-left:4px solid #38b2ac}.metadata-item{margin-bottom:8px;color:#4a5568;font-size:.9rem}.metadata-item:last-child{margin-bottom:0}.metadata-item strong{color:#2d3748;margin-right:8px}.no-report{text-align:center;padding:40px 20px;color:#718096}.no-report ion-icon{color:#cbd5e0;margin-bottom:16px}.no-report h3{color:#4a5568;margin-bottom:8px}ion-card{transition:all .3s ease;border-radius:16px;box-shadow:0 4px 12px #0000001a}ion-card:hover{transform:translateY(-2px);box-shadow:0 8px 25px #00000026}ion-badge{--padding-start: 8px;--padding-end: 8px;--padding-top: 4px;--padding-bottom: 4px;font-weight:600}ion-progress-bar{margin-top:8px}ion-button{--border-radius: 8px;font-weight:600}ion-button[fill=outline]{--border-width: 2px}@media (max-width: 768px){.reports-container{padding:8px}.stat-grid{grid-template-columns:1fr}.user-stats{flex-direction:column;gap:8px}.row-content{flex-direction:column;align-items:flex-start;gap:8px}.row-details{align-items:flex-start;width:100%}.summary-value{font-size:1.4rem}.user-item{flex-direction:column;align-items:flex-start;text-align:left}}.public-wifi-portal{background:linear-gradient(135deg,#667eea,#764ba2);--background: linear-gradient(135deg, #667eea 0%, #764ba2 100%)}.portal-container{max-width:500px;margin:0 auto;padding:20px;min-height:100vh;display:flex;flex-direction:column;justify-content:center}.portal-header{text-align:center;margin-bottom:30px}.portal-header .logo h1{color:#fff;font-size:48px;margin:0;font-weight:700;text-shadow:2px 2px 4px rgba(0,0,0,.3)}.portal-header .tagline{color:#ffffffe6;font-size:18px;margin:10px 0 0;font-weight:300}.access-card,.success-card{border-radius:16px;box-shadow:0 8px 32px #0003;margin-bottom:20px}.access-card ion-card-header{text-align:center;padding-bottom:10px}.access-card ion-card-title{font-size:24px;font-weight:600;color:var(--ion-color-primary)}.form-content{padding:10px 0}.form-content>p{text-align:center;font-size:14px;margin-bottom:20px}.input-wrapper{margin:20px 0}.access-input{--background: #f5f5f5;--padding-start: 16px;--padding-end: 16px;border-radius:8px;font-size:18px;text-align:center;border:2px solid #e0e0e0;transition:border-color .3s}.access-input:focus-within{border-color:var(--ion-color-primary)}.error-message{text-align:center;font-size:14px;margin:10px 0;padding:10px;background:rgba(var(--ion-color-danger-rgb),.1);border-radius:8px}.connect-button{margin-top:20px;--border-radius: 12px;height:52px;font-size:16px;font-weight:600;text-transform:none}.close-button{margin-top:20px;--border-radius: 12px;height:48px;font-size:16px;font-weight:600;text-transform:none}.help-text{text-align:center;margin-top:20px}.help-text p{margin:0}.success-content{text-align:center;padding:20px}.success-icon{font-size:72px;margin-bottom:20px;animation:scaleIn .5s ease-out}@keyframes scaleIn{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}.success-content h2{color:var(--ion-color-success);font-size:32px;margin:0 0 15px;font-weight:700}.success-content p{font-size:16px;margin:8px 0}.wifi-info{margin:30px 0;padding:20px;background:rgba(var(--ion-color-medium-rgb),.1);border-radius:12px}.wifi-info p{margin:0;line-height:1.6}.terms{text-align:center;margin:20px 0}.terms p{margin:0;color:#fffc}.terms a{color:#ffffffe6;text-decoration:underline}.portal-footer{text-align:center;margin-top:20px;padding:20px 0}.portal-footer p{margin:0;color:#ffffffb3}@media (max-width: 576px){.portal-container{padding:15px}.portal-header .logo h1{font-size:36px}.portal-header .tagline{font-size:16px}.access-card ion-card-title{font-size:20px}.success-content h2{font-size:28px}.success-icon{font-size:64px}}.connect-button ion-spinner{width:20px;height:20px}.access-input:focus,.connect-button:focus,.close-button:focus{outline:2px solid rgba(255,255,255,.5);outline-offset:2px}.access-card,.success-card,.expired-card{animation:slideUp .4s ease-out}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.countdown-wrapper{margin:30px 0;padding:20px;background:linear-gradient(135deg,#667eea1a,#764ba21a);border-radius:16px;border:2px solid rgba(var(--ion-color-primary-rgb),.2)}.countdown-display{text-align:center}.countdown-display h3{font-size:16px;margin:0 0 15px;color:var(--ion-color-dark);font-weight:600}.time-badge{margin:15px 0}.time-remaining-badge{font-size:32px;padding:15px 30px;border-radius:12px;font-weight:700;letter-spacing:1px}.countdown-wrapper ion-progress-bar{margin-top:15px;height:8px;border-radius:4px}.warning-box{margin:20px 0;padding:15px;background:rgba(var(--ion-color-warning-rgb),.1);border:2px solid var(--ion-color-warning);border-radius:12px;animation:pulse 2s infinite}.warning-box p{margin:0;text-align:center}@keyframes pulse{0%,to{opacity:1}50%{opacity:.8}}.expired-card{border-radius:16px;box-shadow:0 8px 32px #0003;margin-bottom:20px}.expired-content{text-align:center;padding:20px}.expired-icon{font-size:72px;margin-bottom:20px;animation:fadeIn .5s ease-out}@keyframes fadeIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.expired-content h2{color:var(--ion-color-warning);font-size:32px;margin:0 0 15px;font-weight:700}.expired-info{margin:30px 0;padding:20px;background:rgba(var(--ion-color-medium-rgb),.1);border-radius:12px}.expired-info p{margin:0;line-height:1.6}.renew-button,.extend-button{margin-top:20px;--border-radius: 12px;height:48px;font-size:16px;font-weight:600;text-transform:none}@media (max-width: 576px){.time-remaining-badge{font-size:24px;padding:12px 20px}.countdown-display h3{font-size:14px}.warning-box{padding:12px}.expired-icon{font-size:64px}.expired-content h2{font-size:28px}}
