@import"https://fonts.googleapis.com/css2?family=Inter:opsz,wght@14..32,400..700&family=JetBrains+Mono:wght@400;500;600&display=swap";@layer properties;@layer theme,base,components,utilities;@layer theme{:root,:host{--font-sans: var(--font-sans-stack);--font-mono: var(--font-mono-stack);--spacing: .25rem;--container-2xl: 42rem;--container-3xl: 48rem;--container-4xl: 56rem;--tracking-tight: -.02em;--tracking-normal: 0em;--tracking-wider: .03em;--tracking-widest: .05em;--animate-spin: spin 1s linear infinite;--default-font-family: var(--font-sans);--default-mono-font-family: var(--font-mono);--color-white: #FFFFFF;--color-black: #000000;--color-canvas: var(--color-canvas);--color-surface: var(--color-surface);--color-surface-raised: var(--color-surface-raised);--color-surface-sunken: var(--color-surface-sunken);--color-surface-inset: var(--color-surface-inset);--color-surface-nav: var(--color-surface-nav);--color-border: var(--color-border);--color-border-strong: var(--color-border-strong);--color-border-hover: var(--color-border-hover);--color-text: var(--color-text);--color-muted: var(--color-text-muted);--color-subtle: var(--color-text-subtle);--color-brand: var(--color-brand);--color-brand-hover: var(--color-brand-hover);--color-brand-fg: var(--color-brand-fg);--color-brand-soft: var(--color-brand-soft);--color-brand-text: var(--color-brand-text);--color-link: var(--color-link);--color-focus: var(--color-focus-ring);--color-success: var(--color-status-success-fg);--color-success-bg: var(--color-status-success-bg);--color-warning: var(--color-status-warning-fg);--color-warning-bg: var(--color-status-warning-bg);--color-warning-border: var(--color-status-warning-border);--color-danger: var(--color-status-danger-fg);--color-danger-bg: var(--color-status-danger-bg);--color-danger-border: var(--color-status-danger-border);--color-info: var(--color-status-info-fg);--color-info-bg: var(--color-status-info-bg);--text-xs: .75rem;--text-xs--line-height: 1rem;--text-sm: .8125rem;--text-sm--line-height: 1.125rem;--text-base: .875rem;--text-base--line-height: 1.25rem;--text-md: 1rem;--text-md--line-height: 1.5rem;--text-lg: 1.125rem;--text-lg--line-height: 1.625rem;--text-xl: 1.375rem;--text-xl--line-height: 1.75rem;--text-xl--letter-spacing: -.01em;--text-2xl: 1.625rem;--text-2xl--line-height: 2rem;--text-2xl--letter-spacing: -.02em;--text-3xl: 2.25rem;--text-3xl--line-height: 2.5rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--radius-sm: var(--radius-sm);--radius-md: var(--radius-md);--radius-lg: var(--radius-lg);--radius-xl: var(--radius-xl);--radius-full: var(--radius-full);--shadow-card: var(--shadow-card);--shadow-popover: var(--shadow-popover);--shadow-dialog: var(--shadow-dialog);--ease-standard: var(--ease-standard);--color-neutral-50: var(--zinc-50);--color-neutral-100: var(--zinc-100);--color-neutral-200: var(--zinc-200);--color-neutral-300: var(--zinc-300);--color-neutral-400: var(--zinc-400);--color-neutral-500: var(--zinc-500);--color-neutral-600: light-dark(var(--zinc-600), var(--graphite-600));--color-neutral-700: light-dark(var(--zinc-700), var(--graphite-650));--color-neutral-800: light-dark(var(--zinc-800), var(--graphite-700));--color-neutral-900: light-dark(var(--zinc-900), var(--graphite-900));--color-neutral-950: light-dark(var(--zinc-950), var(--graphite-950));--color-primary-600: var(--blue-600);--color-primary-700: var(--blue-700);--color-error-50: var(--red-50);--color-error-500: #EF4444;--color-error-600: var(--red-600);--color-error-950: var(--red-950);--text-4xl: 1.875rem;--text-5xl: 2.5rem;--leading-4: 1rem;--leading-5: 1.25rem;--leading-6: 1.5rem;--leading-7: 1.75rem;--leading-8: 2rem;--leading-10: 2.5rem}}@layer base{*,:after,:before,::backdrop,::file-selector-button{box-sizing:border-box;margin:0;padding:0;border:0 solid}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;tab-size:4;font-family:var(--default-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings, normal);font-variation-settings:var(--default-font-variation-settings, normal);-webkit-tap-highlight-color:transparent}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;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings, normal);font-variation-settings:var(--default-mono-font-variation-settings, normal);font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea,::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;border-radius:0;background-color:transparent;opacity:1}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not (-webkit-appearance: -apple-pay-button)) or (contain-intrinsic-size: 1px){::placeholder{color:currentcolor}@supports (color: color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]),::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer utilities{.pointer-events-none{pointer-events:none!important}.invisible{visibility:hidden!important}.visible{visibility:visible!important}.absolute{position:absolute!important}.fixed{position:fixed!important}.relative{position:relative!important}.static{position:static!important}.inset-0{inset:0!important}.top-2{top:calc(var(--spacing) * 2)!important}.left-2{left:calc(var(--spacing) * 2)!important}.z-50{z-index:50!important}.col-span-full{grid-column:1 / -1!important}.container{width:100%!important}@media(width>=40rem){.container{max-width:40rem!important}}@media(width>=48rem){.container{max-width:48rem!important}}@media(width>=64rem){.container{max-width:64rem!important}}@media(width>=80rem){.container{max-width:80rem!important}}@media(width>=96rem){.container{max-width:96rem!important}}.-mx-3{margin-inline:calc(var(--spacing) * -3)!important}.mx-1{margin-inline:var(--spacing)!important}.mx-3{margin-inline:calc(var(--spacing) * 3)!important}.mx-auto{margin-inline:auto!important}.my-1{margin-block:var(--spacing)!important}.\!mt-0{margin-top:0!important}.\!mt-4{margin-top:calc(var(--spacing) * 4)!important}.-mt-1{margin-top:calc(var(--spacing) * -1)!important}.mt-0\.5{margin-top:calc(var(--spacing) * .5)!important}.mt-1{margin-top:var(--spacing)!important}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)!important}.mt-2{margin-top:calc(var(--spacing) * 2)!important}.mt-3{margin-top:calc(var(--spacing) * 3)!important}.mt-4{margin-top:calc(var(--spacing) * 4)!important}.mt-5{margin-top:calc(var(--spacing) * 5)!important}.mt-6{margin-top:calc(var(--spacing) * 6)!important}.mt-8{margin-top:calc(var(--spacing) * 8)!important}.-mr-2{margin-right:calc(var(--spacing) * -2)!important}.mr-1{margin-right:var(--spacing)!important}.mr-3{margin-right:calc(var(--spacing) * 3)!important}.-mb-px{margin-bottom:-1px!important}.mb-1{margin-bottom:var(--spacing)!important}.mb-2{margin-bottom:calc(var(--spacing) * 2)!important}.mb-3{margin-bottom:calc(var(--spacing) * 3)!important}.mb-4{margin-bottom:calc(var(--spacing) * 4)!important}.mb-5{margin-bottom:calc(var(--spacing) * 5)!important}.ml-1{margin-left:var(--spacing)!important}.ml-2{margin-left:calc(var(--spacing) * 2)!important}.ml-auto{margin-left:auto!important}.block{display:block!important}.flex{display:flex!important}.grid{display:grid!important}.hidden{display:none!important}.inline{display:inline!important}.inline-block{display:inline-block!important}.inline-flex{display:inline-flex!important}.table{display:table!important}.aspect-\[4\/3\]{aspect-ratio:4/3!important}.aspect-square{aspect-ratio:1 / 1!important}.size-3{width:calc(var(--spacing) * 3)!important;height:calc(var(--spacing) * 3)!important}.size-3\.5{width:calc(var(--spacing) * 3.5)!important;height:calc(var(--spacing) * 3.5)!important}.size-4{width:calc(var(--spacing) * 4)!important;height:calc(var(--spacing) * 4)!important}.size-5{width:calc(var(--spacing) * 5)!important;height:calc(var(--spacing) * 5)!important}.size-6{width:calc(var(--spacing) * 6)!important;height:calc(var(--spacing) * 6)!important}.size-7{width:calc(var(--spacing) * 7)!important;height:calc(var(--spacing) * 7)!important}.size-8{width:calc(var(--spacing) * 8)!important;height:calc(var(--spacing) * 8)!important}.size-9{width:calc(var(--spacing) * 9)!important;height:calc(var(--spacing) * 9)!important}.size-10{width:calc(var(--spacing) * 10)!important;height:calc(var(--spacing) * 10)!important}.h-3{height:calc(var(--spacing) * 3)!important}.h-4{height:calc(var(--spacing) * 4)!important}.h-5{height:calc(var(--spacing) * 5)!important}.h-6{height:calc(var(--spacing) * 6)!important}.h-7{height:calc(var(--spacing) * 7)!important}.h-8{height:calc(var(--spacing) * 8)!important}.h-9{height:calc(var(--spacing) * 9)!important}.h-10{height:calc(var(--spacing) * 10)!important}.h-12{height:calc(var(--spacing) * 12)!important}.h-14{height:calc(var(--spacing) * 14)!important}.h-20{height:calc(var(--spacing) * 20)!important}.h-24{height:calc(var(--spacing) * 24)!important}.h-36{height:calc(var(--spacing) * 36)!important}.h-40{height:calc(var(--spacing) * 40)!important}.h-44{height:calc(var(--spacing) * 44)!important}.max-h-\[60vh\]{max-height:60vh!important}.min-h-0{min-height:0px!important}.min-h-full{min-height:100%!important}.w-1\/2{width:50%!important}.w-1\/3{width:calc(1 / 3 * 100%)!important}.w-2\/3{width:calc(2 / 3 * 100%)!important}.w-3\/4{width:75%!important}.w-4\/5{width:80%!important}.w-6{width:calc(var(--spacing) * 6)!important}.w-8{width:calc(var(--spacing) * 8)!important}.w-10{width:calc(var(--spacing) * 10)!important}.w-12{width:calc(var(--spacing) * 12)!important}.w-14{width:calc(var(--spacing) * 14)!important}.w-16{width:calc(var(--spacing) * 16)!important}.w-20{width:calc(var(--spacing) * 20)!important}.w-24{width:calc(var(--spacing) * 24)!important}.w-28{width:calc(var(--spacing) * 28)!important}.w-32{width:calc(var(--spacing) * 32)!important}.w-36{width:calc(var(--spacing) * 36)!important}.w-40{width:calc(var(--spacing) * 40)!important}.w-44{width:calc(var(--spacing) * 44)!important}.w-48{width:calc(var(--spacing) * 48)!important}.w-52{width:calc(var(--spacing) * 52)!important}.w-56{width:calc(var(--spacing) * 56)!important}.w-60{width:calc(var(--spacing) * 60)!important}.w-64{width:calc(var(--spacing) * 64)!important}.w-72{width:calc(var(--spacing) * 72)!important}.w-\[var\(--sidebar-width\)\]{width:var(--sidebar-width)!important}.w-fit{width:fit-content!important}.w-full{width:100%!important}.max-w-2xl{max-width:var(--container-2xl)!important}.max-w-3xl{max-width:var(--container-3xl)!important}.max-w-4xl{max-width:var(--container-4xl)!important}.max-w-56{max-width:calc(var(--spacing) * 56)!important}.max-w-\[16rem\]{max-width:16rem!important}.max-w-\[22rem\]{max-width:22rem!important}.max-w-\[28rem\]{max-width:28rem!important}.max-w-\[var\(--dialog-w-sm\)\]{max-width:var(--dialog-w-sm)!important}.max-w-full{max-width:100%!important}.min-w-0{min-width:0px!important}.min-w-14{min-width:calc(var(--spacing) * 14)!important}.min-w-28{min-width:calc(var(--spacing) * 28)!important}.min-w-32{min-width:calc(var(--spacing) * 32)!important}.min-w-36{min-width:calc(var(--spacing) * 36)!important}.min-w-40{min-width:calc(var(--spacing) * 40)!important}.min-w-48{min-width:calc(var(--spacing) * 48)!important}.min-w-56{min-width:calc(var(--spacing) * 56)!important}.flex-1{flex:1!important}.flex-auto{flex:auto!important}.flex-none{flex:none!important}.shrink{flex-shrink:1!important}.shrink-0{flex-shrink:0!important}.basis-full{flex-basis:100%!important}.scale-3d{scale:var(--tw-scale-x) var(--tw-scale-y) var(--tw-scale-z)!important}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)!important}.animate-spin{animation:var(--animate-spin)!important}.cursor-pointer{cursor:pointer!important}.list-decimal{list-style-type:decimal!important}.columns-2{columns:2!important}.columns-3{columns:3!important}.columns-4{columns:4!important}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))!important}.grid-cols-\[auto_1fr\]{grid-template-columns:auto 1fr!important}.grid-cols-\[repeat\(auto-fill\,minmax\(7rem\,1fr\)\)\]{grid-template-columns:repeat(auto-fill,minmax(7rem,1fr))!important}.grid-cols-\[repeat\(auto-fill\,minmax\(10rem\,1fr\)\)\]{grid-template-columns:repeat(auto-fill,minmax(10rem,1fr))!important}.grid-cols-\[repeat\(auto-fill\,minmax\(12rem\,1fr\)\)\]{grid-template-columns:repeat(auto-fill,minmax(12rem,1fr))!important}.grid-cols-\[repeat\(auto-fill\,minmax\(var\(--unit-tile-w\)\,1fr\)\)\]{grid-template-columns:repeat(auto-fill,minmax(var(--unit-tile-w),1fr))!important}.flex-col{flex-direction:column!important}.flex-wrap{flex-wrap:wrap!important}.\!items-center{align-items:center!important}.items-baseline{align-items:baseline!important}.items-center{align-items:center!important}.items-end{align-items:flex-end!important}.items-start{align-items:flex-start!important}.justify-between{justify-content:space-between!important}.justify-center{justify-content:center!important}.justify-end{justify-content:flex-end!important}.gap-0\.5{gap:calc(var(--spacing) * .5)!important}.gap-1{gap:var(--spacing)!important}.gap-1\.5{gap:calc(var(--spacing) * 1.5)!important}.gap-2{gap:calc(var(--spacing) * 2)!important}.gap-3{gap:calc(var(--spacing) * 3)!important}.gap-4{gap:calc(var(--spacing) * 4)!important}.gap-5{gap:calc(var(--spacing) * 5)!important}.gap-6{gap:calc(var(--spacing) * 6)!important}.gap-x-1{column-gap:var(--spacing)!important}.gap-x-1\.5{column-gap:calc(var(--spacing) * 1.5)!important}.gap-x-2{column-gap:calc(var(--spacing) * 2)!important}.gap-x-2\.5{column-gap:calc(var(--spacing) * 2.5)!important}.gap-x-3{column-gap:calc(var(--spacing) * 3)!important}.gap-x-4{column-gap:calc(var(--spacing) * 4)!important}.gap-x-5{column-gap:calc(var(--spacing) * 5)!important}.gap-y-1{row-gap:var(--spacing)!important}.gap-y-2{row-gap:calc(var(--spacing) * 2)!important}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse: 0 !important;border-bottom-style:var(--tw-border-style)!important;border-top-style:var(--tw-border-style)!important;border-top-width:calc(1px * var(--tw-divide-y-reverse))!important;border-bottom-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)))!important}:where(.divide-border>:not(:last-child)){border-color:var(--color-border)!important}.self-center{align-self:center!important}.self-start{align-self:flex-start!important}.truncate{overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}.overflow-hidden{overflow:hidden!important}.overflow-x-auto{overflow-x:auto!important}.overflow-y-auto{overflow-y:auto!important}.rounded-full{border-radius:var(--radius-full)!important}.rounded-md{border-radius:var(--radius-md)!important}.rounded-none{border-radius:0!important}.border{border-style:var(--tw-border-style)!important;border-width:1px!important}.border-t{border-top-style:var(--tw-border-style)!important;border-top-width:1px!important}.border-r{border-right-style:var(--tw-border-style)!important;border-right-width:1px!important}.border-b{border-bottom-style:var(--tw-border-style)!important;border-bottom-width:1px!important}.border-dashed{--tw-border-style: dashed !important;border-style:dashed!important}.border-border{border-color:var(--color-border)!important}.border-brand{border-color:var(--color-brand)!important}.border-danger{border-color:var(--color-danger)!important}.border-danger-border{border-color:var(--color-danger-border)!important}.bg-black\/40{background-color:color-mix(in srgb,#000000 40%,transparent)!important}@supports (color: color-mix(in lab,red,red)){.bg-black\/40{background-color:color-mix(in oklab,var(--color-black) 40%,transparent)!important}}.bg-brand{background-color:var(--color-brand)!important}.bg-brand-soft{background-color:var(--color-brand-soft)!important}.bg-brand\/70{background-color:var(--color-brand)!important}@supports (color: color-mix(in lab,red,red)){.bg-brand\/70{background-color:color-mix(in oklab,var(--color-brand) 70%,transparent)!important}}.bg-canvas{background-color:var(--color-canvas)!important}.bg-danger-bg{background-color:var(--color-danger-bg)!important}.bg-surface{background-color:var(--color-surface)!important}.bg-surface-nav{background-color:var(--color-surface-nav)!important}.bg-surface-raised{background-color:var(--color-surface-raised)!important}.bg-surface-sunken{background-color:var(--color-surface-sunken)!important}.bg-transparent{background-color:transparent!important}.object-contain{object-fit:contain!important}.object-cover{object-fit:cover!important}.\!p-0{padding:0!important}.\!p-4{padding:calc(var(--spacing) * 4)!important}.p-2{padding:calc(var(--spacing) * 2)!important}.p-3{padding:calc(var(--spacing) * 3)!important}.p-4{padding:calc(var(--spacing) * 4)!important}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)!important}.px-2{padding-inline:calc(var(--spacing) * 2)!important}.px-3{padding-inline:calc(var(--spacing) * 3)!important}.px-4{padding-inline:calc(var(--spacing) * 4)!important}.px-5{padding-inline:calc(var(--spacing) * 5)!important}.px-6{padding-inline:calc(var(--spacing) * 6)!important}.\!py-2{padding-block:calc(var(--spacing) * 2)!important}.py-0{padding-block:0px!important}.py-1{padding-block:var(--spacing)!important}.py-2{padding-block:calc(var(--spacing) * 2)!important}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)!important}.py-3{padding-block:calc(var(--spacing) * 3)!important}.py-4{padding-block:calc(var(--spacing) * 4)!important}.py-6{padding-block:calc(var(--spacing) * 6)!important}.py-8{padding-block:calc(var(--spacing) * 8)!important}.py-10{padding-block:calc(var(--spacing) * 10)!important}.pt-2{padding-top:calc(var(--spacing) * 2)!important}.pt-4{padding-top:calc(var(--spacing) * 4)!important}.pt-5{padding-top:calc(var(--spacing) * 5)!important}.pt-\[12vh\]{padding-top:12vh!important}.pr-2{padding-right:calc(var(--spacing) * 2)!important}.pb-1{padding-bottom:var(--spacing)!important}.pb-1\.5{padding-bottom:calc(var(--spacing) * 1.5)!important}.pb-2{padding-bottom:calc(var(--spacing) * 2)!important}.pb-3{padding-bottom:calc(var(--spacing) * 3)!important}.pb-4{padding-bottom:calc(var(--spacing) * 4)!important}.pl-5{padding-left:calc(var(--spacing) * 5)!important}.pl-12{padding-left:calc(var(--spacing) * 12)!important}.text-center{text-align:center!important}.text-left{text-align:left!important}.text-right{text-align:right!important}.align-baseline{vertical-align:baseline!important}.align-middle{vertical-align:middle!important}.align-text-bottom{vertical-align:text-bottom!important}.font-mono{font-family:var(--font-mono)!important}.font-sans{font-family:var(--font-sans)!important}.text-2xl{font-size:var(--text-2xl)!important;line-height:var(--tw-leading, var(--text-2xl--line-height))!important;letter-spacing:var(--tw-tracking, var(--text-2xl--letter-spacing))!important}.text-xl{font-size:var(--text-xl)!important;line-height:var(--tw-leading, var(--text-xl--line-height))!important;letter-spacing:var(--tw-tracking, var(--text-xl--letter-spacing))!important}.text-3xl{font-size:var(--text-3xl)!important;line-height:var(--tw-leading, var(--text-3xl--line-height))!important}.text-base{font-size:var(--text-base)!important;line-height:var(--tw-leading, var(--text-base--line-height))!important}.text-lg{font-size:var(--text-lg)!important;line-height:var(--tw-leading, var(--text-lg--line-height))!important}.text-md{font-size:var(--text-md)!important;line-height:var(--tw-leading, var(--text-md--line-height))!important}.text-sm{font-size:var(--text-sm)!important;line-height:var(--tw-leading, var(--text-sm--line-height))!important}.text-xs{font-size:var(--text-xs)!important;line-height:var(--tw-leading, var(--text-xs--line-height))!important}.text-\[0\.625rem\]{font-size:.625rem!important}.leading-none{--tw-leading: 1 !important;line-height:1!important}.font-bold{--tw-font-weight: var(--font-weight-bold) !important;font-weight:var(--font-weight-bold)!important}.font-medium{--tw-font-weight: var(--font-weight-medium) !important;font-weight:var(--font-weight-medium)!important}.font-normal{--tw-font-weight: var(--font-weight-normal) !important;font-weight:var(--font-weight-normal)!important}.font-semibold{--tw-font-weight: var(--font-weight-semibold) !important;font-weight:var(--font-weight-semibold)!important}.tracking-\[0\.3em\]{--tw-tracking: .3em !important;letter-spacing:.3em!important}.tracking-tight{--tw-tracking: var(--tracking-tight) !important;letter-spacing:var(--tracking-tight)!important}.tracking-wider{--tw-tracking: var(--tracking-wider) !important;letter-spacing:var(--tracking-wider)!important}.tracking-widest{--tw-tracking: var(--tracking-widest) !important;letter-spacing:var(--tracking-widest)!important}.text-wrap{text-wrap:wrap!important}.break-all{word-break:break-all!important}.whitespace-nowrap{white-space:nowrap!important}.whitespace-pre-line{white-space:pre-line!important}.text-brand{color:var(--color-brand)!important}.text-brand-fg{color:var(--color-brand-fg)!important}.text-danger{color:var(--color-danger)!important}.text-info{color:var(--color-info)!important}.text-link{color:var(--color-link)!important}.text-muted{color:var(--color-muted)!important}.text-subtle{color:var(--color-subtle)!important}.text-success{color:var(--color-success)!important}.text-text{color:var(--color-text)!important}.text-warning{color:var(--color-warning)!important}.uppercase{text-transform:uppercase!important}.italic{font-style:italic!important}.tabular-nums{--tw-numeric-spacing: tabular-nums !important;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)!important}.line-through{text-decoration-line:line-through!important}.underline{text-decoration-line:underline!important}.scheme-dark{color-scheme:dark!important}.scheme-light{color-scheme:light!important}.opacity-50{opacity:50%!important}.opacity-60{opacity:60%!important}.opacity-70{opacity:70%!important}.shadow-dialog{--tw-shadow: var(--shadow-dialog) !important;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)!important}.blur{--tw-blur: blur(8px) !important;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,)!important}.grayscale{--tw-grayscale: grayscale(100%) !important;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,)!important}.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,)!important}.outline-none{--tw-outline-style: none !important;outline-style:none!important}.select-all{-webkit-user-select:all!important;user-select:all!important}.last\:border-0:last-child{border-style:var(--tw-border-style)!important;border-width:0px!important}.last\:border-r-0:last-child{border-right-style:var(--tw-border-style)!important;border-right-width:0px!important}@media(hover:hover){.hover\:bg-brand:hover{background-color:var(--color-brand)!important}.hover\:bg-surface-sunken:hover{background-color:var(--color-surface-sunken)!important}.hover\:text-text:hover{color:var(--color-text)!important}.hover\:underline:hover{text-decoration-line:underline!important}}@media(width>=40rem){.sm\:inline{display:inline!important}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media(width>=48rem){.md\:flex{display:flex!important}.md\:hidden{display:none!important}.md\:max-w-\[33\%\]{max-width:33%!important}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))!important}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))!important}}@media(width>=64rem){.lg\:col-span-2{grid-column:span 2 / span 2!important}.lg\:h-dvh{height:100dvh!important}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))!important}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))!important}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))!important}.lg\:overflow-hidden{overflow:hidden!important}}@media(width>=80rem){.xl\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))!important}.xl\:grid-cols-\[minmax\(0\,1fr\)_24rem\]{grid-template-columns:minmax(0,1fr) 24rem!important}}}:root{--blue-50: #EEF2FF;--blue-100: #DFE6FF;--blue-200: #BCCBFF;--blue-300: #93A9FF;--blue-400: #6F8CFF;--blue-500: #2B59FF;--blue-600: #1F45E6;--blue-700: #1A38BD;--blue-800: #172C8C;--blue-900: #141C5C;--blue-950: #0D1033;--navy-100: #DDE0F2;--navy-300: #A4AACB;--navy-400: #7E85AE;--navy-500: #5C6390;--navy-600: #3A4180;--navy-700: #2E3470;--navy-750: #262A57;--navy-800: #171B45;--navy-850: #121539;--navy-900: #0E1131;--navy-950: #0A0C26;--navy-990: #07091C;--graphite-50: #EDEEF2;--graphite-200: #C9CDD6;--graphite-300: #A3A9B6;--graphite-350: #9AA0AD;--graphite-400: #828898;--graphite-500: #6B7180;--graphite-600: #3A3F4B;--graphite-650: #2B2F38;--graphite-700: #23262E;--graphite-750: #1E2128;--graphite-800: #1B1E25;--graphite-850: #181B21;--graphite-900: #14161B;--graphite-925: #0F1115;--graphite-950: #0B0C10;--gold-350: #E2B36A;--canvas-light: #F6F7FA;--zinc-50: #FAFAFA;--zinc-100: #F4F4F5;--zinc-200: #E4E4E7;--zinc-300: #D4D4D8;--zinc-400: #A1A1AA;--zinc-500: #71717A;--zinc-600: #52525B;--zinc-700: #3F3F46;--zinc-800: #27272A;--zinc-900: #18181B;--zinc-950: #09090B;--green-50: #F0FDF4;--green-200: #BBF7D0;--green-400: #4ADE80;--green-600: #16A34A;--green-700: #15803D;--green-800: #166534;--green-950: #052E16;--violet-50: #F5F3FF;--violet-200: #DDD6FE;--violet-400: #A78BFA;--violet-700: #6D28D9;--violet-800: #5B21B6;--violet-950: #2E1065;--amber-50: #FFFBEB;--amber-200: #FDE68A;--amber-400: #FBBF24;--amber-600: #D97706;--amber-700: #B45309;--amber-800: #92400E;--amber-950: #451A03;--gold-50: #FCF5E8;--gold-100: #FCEACA;--gold-200: #F7D593;--gold-300: #EFBB58;--gold-400: #E4A22A;--gold-500: #D58D0E;--gold-600: #B4740A;--gold-700: #8E5A09;--gold-800: #6A430A;--gold-900: #4A2F08;--gold-950: #2C1C05;--brown-700: #5A3C0A;--brown-800: #352303;--brown-900: #1E1A14;--stone-50: #FAFAF9;--stone-100: #F5F5F4;--stone-200: #E7E5E4;--stone-300: #D6D3D1;--stone-400: #A8A29E;--stone-500: #78716C;--stone-600: #57534E;--stone-700: #44403C;--stone-800: #292524;--stone-900: #1C1917;--stone-950: #0C0A09;--emerald-50: #ECFDF5;--emerald-200: #A7F3D0;--emerald-400: #34D399;--emerald-600: #059669;--emerald-800: #065F46;--emerald-950: #022C22;--orange-50: #FFF7ED;--orange-200: #FED7AA;--orange-400: #FB923C;--orange-600: #EA580C;--orange-800: #9A3412;--orange-950: #431407;--red-50: #FEF2F2;--red-200: #FECACA;--red-400: #F87171;--red-600: #DC2626;--red-800: #991B1B;--red-950: #450A0A;--sky-50: #F0F9FF;--sky-100: #E0F2FE;--sky-200: #BAE6FD;--sky-400: #38BDF8;--sky-600: #0284C7;--sky-800: #075985;--sky-950: #082F49;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-7: 1.75rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--radius-full: 9999px;--shadow-1: 0 1px 2px rgb(22 21 25 / .04), 0 12px 32px -20px rgb(22 21 25 / .18);--shadow-2: 0 4px 12px rgb(24 24 27 / .1);--shadow-3: 0 24px 64px rgb(24 24 27 / .28), 0 0 0 1px rgb(24 24 27 / .06);--motion-fast: .12s;--motion-base: .2s;--motion-slow: .32s;--ease-standard: cubic-bezier(.2, .8, .2, 1);--font-sans-stack: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono-stack: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;color-scheme:light dark}html.scheme-light{color-scheme:light}html.scheme-dark{color-scheme:dark}:root{--color-canvas: light-dark(var(--canvas-light), var(--graphite-950));--color-surface: light-dark(#FFFFFF, var(--graphite-900));--color-surface-raised: light-dark(#FFFFFF, var(--graphite-800));--color-surface-sunken: light-dark(#EFF1F6, var(--graphite-925));--color-surface-inset: light-dark(#FFFFFF, var(--graphite-850));--color-surface-nav: light-dark(#FFFFFF, var(--graphite-925));--color-border: light-dark(var(--zinc-200), var(--graphite-700));--color-border-strong: light-dark(var(--zinc-300), var(--graphite-650));--color-border-hover: light-dark(var(--zinc-300), var(--graphite-600));--color-text: light-dark(var(--zinc-900), var(--graphite-50));--color-text-muted: light-dark(var(--zinc-500), var(--graphite-350));--color-text-subtle: light-dark(var(--zinc-400), var(--graphite-400));--color-text-inverse: light-dark(#FFFFFF, var(--graphite-950));--color-brand: light-dark(var(--blue-500), var(--gold-350));--color-brand-hover: light-dark(var(--blue-600), var(--gold-300));--color-brand-fg: light-dark(#FFFFFF, var(--graphite-950));--color-brand-soft: light-dark(var(--blue-50), var(--gold-350));--color-brand-text: light-dark(var(--blue-700), var(--gold-350));--color-link: light-dark(var(--blue-600), var(--gold-350));--color-focus-ring: light-dark(var(--blue-500), var(--gold-350));--color-control-accent: light-dark(var(--blue-600), var(--gold-350));--color-control-accent-dim: light-dark(var(--blue-500), var(--gold-300));--color-control-on-accent: light-dark(var(--blue-50), var(--graphite-950));--color-control-accent-container: light-dark(var(--blue-50), var(--gold-950));--color-control-on-accent-container: light-dark(var(--blue-950), var(--gold-100));--color-status-success-fg: light-dark(var(--green-700), var(--green-400));--color-status-success-bg: light-dark(var(--green-50), var(--green-400));--color-status-success-border: light-dark(var(--green-200), var(--green-400));--color-status-warning-fg: light-dark(var(--amber-700), var(--orange-400));--color-status-warning-bg: light-dark(var(--amber-50), var(--orange-400));--color-status-warning-border: light-dark(var(--amber-200), var(--orange-400));--color-status-danger-fg: light-dark(var(--red-600), var(--red-400));--color-status-danger-bg: light-dark(var(--red-50), var(--red-400));--color-status-danger-border: light-dark(var(--red-200), var(--red-400));--color-status-danger-solid: var(--red-600);--color-status-danger-on: #FFFFFF;--color-status-info-fg: light-dark(var(--sky-600), var(--sky-400));--color-status-info-bg: light-dark(var(--sky-50), var(--sky-400));--color-status-info-border: light-dark(var(--sky-200), var(--sky-400));--color-status-info-bg-strong: light-dark(var(--sky-100), var(--sky-400));--color-mode-short-fg: light-dark(var(--sky-600), var(--sky-400));--color-mode-short-bg: light-dark(var(--sky-50), var(--sky-400));--color-mode-monthly-fg: light-dark(var(--violet-700), var(--violet-400));--color-mode-monthly-bg: light-dark(var(--violet-50), var(--violet-400));--color-status-neutral-fg: light-dark(var(--zinc-600), var(--graphite-300));--color-status-neutral-bg: light-dark(var(--zinc-100), var(--graphite-750));--color-status-neutral-border: light-dark(var(--zinc-200), var(--graphite-700));--color-occ-reserved-border: light-dark(var(--zinc-200), var(--sky-400));--color-occ-occupied-border: light-dark(var(--zinc-200), var(--green-400));--color-occ-overstay-border: light-dark(var(--zinc-200), var(--red-400));--color-code-tile-bg: light-dark(var(--blue-50), var(--graphite-750));--color-track: light-dark(#EFF1F6, var(--graphite-750));--color-switch-knob: #FFFFFF;--color-chart-1: var(--color-brand);--color-chart-2: light-dark(var(--zinc-400), var(--graphite-50));--color-chart-grid: var(--color-border);--color-chart-axis: light-dark(var(--zinc-500), var(--graphite-500));--color-chart-tooltip: light-dark(#FFFFFF, var(--graphite-750));--color-internal-bg: light-dark(var(--amber-50), var(--amber-400));--color-internal-border: light-dark(var(--amber-200), var(--amber-400));--color-internal-fg: light-dark(var(--amber-700), var(--amber-400));--color-showcase-bg: light-dark(var(--blue-950), var(--graphite-900));--color-showcase-fg: light-dark(#FFFFFF, var(--graphite-50));--color-showcase-muted: light-dark(var(--blue-200), var(--graphite-350));--color-showcase-card: light-dark(rgb(255 255 255 / .06), rgb(255 255 255 / .035));--color-showcase-border: light-dark(rgb(255 255 255 / .12), var(--graphite-700));--color-showcase-accent: light-dark(var(--blue-300), var(--gold-350));--color-showcase-glow: light-dark(var(--blue-500), var(--gold-500));--color-legal-todo-bg: light-dark(var(--amber-200), var(--amber-400));--color-legal-todo-fg: light-dark(var(--amber-800), var(--amber-400));--color-row-highlight: light-dark(var(--color-status-warning-bg), var(--color-status-warning-bg));--shadow-card: var(--shadow-1);--shadow-popover: var(--shadow-2);--shadow-dialog: var(--shadow-3);--shadow-brand: 0 1px 0 rgb(255 255 255 / .25) inset, 0 8px 20px -8px rgb(43 89 255 / .7);--row-height: 3rem;--control-height: 2.5rem;--card-padding: var(--space-6);--gap-section: var(--space-6)}@supports (color: color-mix(in lab,red,red)){:root{--color-brand-soft: light-dark(var(--blue-50), color-mix(in oklab, var(--gold-350) 14%, transparent))}}@supports (color: color-mix(in lab,red,red)){:root{--color-status-success-bg: light-dark(var(--green-50), color-mix(in oklab, var(--green-400) 12%, transparent))}}@supports (color: color-mix(in lab,red,red)){:root{--color-status-success-border: light-dark(var(--green-200), color-mix(in oklab, var(--green-400) 30%, transparent))}}@supports (color: color-mix(in lab,red,red)){:root{--color-status-warning-bg: light-dark(var(--amber-50), color-mix(in oklab, var(--orange-400) 13%, transparent))}}@supports (color: color-mix(in lab,red,red)){:root{--color-status-warning-border: light-dark(var(--amber-200), color-mix(in oklab, var(--orange-400) 30%, transparent))}}@supports (color: color-mix(in lab,red,red)){:root{--color-status-danger-bg: light-dark(var(--red-50), color-mix(in oklab, var(--red-400) 13%, transparent))}}@supports (color: color-mix(in lab,red,red)){:root{--color-status-danger-border: light-dark(var(--red-200), color-mix(in oklab, var(--red-400) 30%, transparent))}}@supports (color: color-mix(in lab,red,red)){:root{--color-status-info-bg: light-dark(var(--sky-50), color-mix(in oklab, var(--sky-400) 12%, transparent))}}@supports (color: color-mix(in lab,red,red)){:root{--color-status-info-border: light-dark(var(--sky-200), color-mix(in oklab, var(--sky-400) 30%, transparent))}}@supports (color: color-mix(in lab,red,red)){:root{--color-status-info-bg-strong: light-dark(var(--sky-100), color-mix(in oklab, var(--sky-400) 22%, transparent))}}@supports (color: color-mix(in lab,red,red)){:root{--color-mode-short-bg: light-dark(var(--sky-50), color-mix(in oklab, var(--sky-400) 12%, transparent))}}@supports (color: color-mix(in lab,red,red)){:root{--color-mode-monthly-bg: light-dark(var(--violet-50), color-mix(in oklab, var(--violet-400) 12%, transparent))}}@supports (color: color-mix(in lab,red,red)){:root{--color-occ-reserved-border: light-dark(var(--zinc-200), color-mix(in oklab, var(--sky-400) 30%, transparent))}}@supports (color: color-mix(in lab,red,red)){:root{--color-occ-occupied-border: light-dark(var(--zinc-200), color-mix(in oklab, var(--green-400) 30%, transparent))}}@supports (color: color-mix(in lab,red,red)){:root{--color-occ-overstay-border: light-dark(var(--zinc-200), color-mix(in oklab, var(--red-400) 30%, transparent))}}@supports (color: color-mix(in lab,red,red)){:root{--color-internal-bg: light-dark(var(--amber-50), color-mix(in oklab, var(--amber-400) 10%, transparent))}}@supports (color: color-mix(in lab,red,red)){:root{--color-internal-border: light-dark(var(--amber-200), color-mix(in oklab, var(--amber-400) 30%, transparent))}}@supports (color: color-mix(in lab,red,red)){:root{--color-legal-todo-bg: light-dark(var(--amber-200), color-mix(in oklab, var(--amber-400) 22%, transparent))}}@supports (color: color-mix(in lab,red,red)){:root{--color-row-highlight: light-dark(color-mix(in srgb, var(--color-status-warning-bg) 60%, transparent), var(--color-status-warning-bg))}}html.scheme-dark{--shadow-card: none;--shadow-popover: none;--shadow-dialog: none;--shadow-brand: none}@media(prefers-color-scheme:dark){html:not(.scheme-light){--shadow-card: none;--shadow-popover: none;--shadow-dialog: none;--shadow-brand: none}}html[data-density=compact]{--row-height: 2.5rem;--control-height: 2.25rem;--card-padding: var(--space-4);--gap-section: var(--space-4)}:root{--button-height-sm: 2rem;--button-height-md: var(--control-height);--button-height-lg: 3rem;--button-radius: var(--radius-full);--button-px-sm: var(--space-3);--button-px-md: var(--space-4);--button-px-lg: var(--space-5);--button-primary-bg: var(--color-brand);--button-primary-bg-hover: var(--color-brand-hover);--button-primary-fg: var(--color-brand-fg);--button-secondary-border: var(--color-border);--button-secondary-fg: var(--color-text);--button-secondary-bg: var(--color-surface);--button-secondary-bg-hover: var(--color-surface-sunken);--button-ghost-fg: var(--color-text-muted);--button-ghost-bg-hover: var(--color-surface-sunken);--segmented-track: var(--color-surface-sunken);--segmented-active-bg: var(--color-brand);--segmented-active-fg: var(--color-brand-fg);--segmented-hover-bg: var(--color-brand-soft);--icon-button-bg-hover: var(--color-status-info-bg-strong);--icon-button-fg-hover: var(--color-status-info-fg);--button-danger-bg: var(--color-status-danger-solid);--button-danger-fg: var(--color-status-danger-on);--control-radius: var(--radius-sm);--control-bg: var(--color-surface);--control-border: var(--color-border);--control-border-focus: var(--color-focus-ring);--control-placeholder: var(--color-text-subtle);--control-label: var(--color-text-muted);--control-error: var(--color-status-danger-fg);--table-row-height: 3.5rem;--table-header-bg: var(--color-surface-sunken);--table-header-fg: var(--color-text-muted);--table-header-height: 2.625rem;--table-border: var(--color-border);--table-row-hover: var(--color-surface-sunken);--table-row-selected: var(--color-brand-soft);--table-row-selected-bar: var(--color-brand);--table-cell-px: var(--space-4);--card-bg: var(--color-surface);--card-radius: var(--radius-lg);--card-shadow: var(--shadow-card);--card-border: var(--color-border);--chip-height: 1.625rem;--chip-radius: var(--radius-full);--chip-px: var(--space-3);--badge-bg: var(--color-brand);--badge-fg: var(--color-brand-fg);--sidebar-width: 16.5rem;--sidebar-width-collapsed: 4.5rem;--sidebar-bg: var(--color-surface-nav);--sidebar-active-bg: var(--color-brand-soft);--sidebar-active-fg: var(--color-brand-text);--sidebar-item-radius: var(--radius-md);--header-height: 3.5rem;--unit-tile-w: 11.5rem;--unit-tile-h: auto;--unit-tile-radius: var(--radius-lg);--unit-occ-vacant: var(--color-surface-inset);--unit-occ-reserved: var(--color-status-info-bg);--unit-occ-occupied: var(--color-status-success-bg);--unit-occ-overstay: var(--color-status-danger-bg);--unit-occ-reserved-border: var(--color-occ-reserved-border);--unit-occ-occupied-border: var(--color-occ-occupied-border);--unit-occ-overstay-border: var(--color-occ-overstay-border);--unit-dot-size: .5rem;--page-max-w: 80rem;--page-px: var(--space-7);--page-py: var(--space-7);--internal-bg: var(--color-internal-bg);--internal-border: var(--color-internal-border);--internal-fg: var(--color-internal-fg);--dialog-w-sm: 30rem;--dialog-w-md: 40rem;--dialog-w-lg: 56rem;--dialog-w-xl: 61.25rem;--dialog-nav-w: 13.5rem;--drawer-w: 35rem;--toast-duration: 4s;--kpi-icon-size: 2.75rem;--kpi-icon-radius: var(--radius-md);--device-tile-radius: var(--radius-lg);--device-tile-bg: var(--color-surface-inset);--device-tile-border: var(--color-border);--device-tile-on-bg: var(--color-brand-soft);--device-tile-on-border: var(--color-brand);--device-icon-size: 2.5rem;--device-icon-bg: var(--color-status-neutral-bg);--device-icon-fg: var(--color-text-muted);--device-icon-on-bg: var(--color-brand);--device-icon-on-fg: var(--color-brand-fg)}@supports (color: color-mix(in lab,red,red)){:root{--device-tile-on-border: color-mix(in oklab, var(--color-brand) 45%, transparent)}}@layer components{.so-button{height:var(--button-height-md);padding-inline:var(--button-px-md);border-radius:var(--button-radius);font-size:var(--text-base);font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);transition:background-color var(--motion-fast) var(--ease-standard),color var(--motion-fast) var(--ease-standard)}.so-button[data-size=sm]{height:var(--button-height-sm);padding-inline:var(--button-px-sm);font-size:var(--text-sm)}.so-button[data-size=lg]{height:var(--button-height-lg);padding-inline:var(--button-px-lg);font-size:var(--text-md)}.so-button[data-variant=primary]{background:var(--button-primary-bg);color:var(--button-primary-fg);box-shadow:var(--shadow-brand)}.so-button[data-variant=primary]:hover{background:var(--button-primary-bg-hover)}.so-button[data-variant=secondary]{border:1px solid var(--button-secondary-border);color:var(--button-secondary-fg);background:var(--button-secondary-bg)}.so-button[data-variant=secondary]:hover{background:var(--button-secondary-bg-hover)}.so-button[data-variant=ghost]{color:var(--button-ghost-fg);background:transparent}.so-button[data-variant=ghost]:hover{background:var(--button-ghost-bg-hover)}.so-button[data-variant=danger]{background:var(--button-danger-bg);color:var(--button-danger-fg)}.so-button[data-variant=checkin]{background:var(--color-status-success-fg);color:var(--color-brand-fg)}.so-button[data-variant=checkout]{background:var(--color-status-warning-fg);color:var(--color-brand-fg)}.so-button[data-variant=checkin]:hover,.so-button[data-variant=checkout]:hover{filter:brightness(.92)}.so-button:disabled{opacity:.5;pointer-events:none}.so-button,.so-icon-button,.so-segmented>button,.so-tabs>button{cursor:pointer}.so-icon-button{width:2.25rem;height:2.25rem;border-radius:var(--radius-sm);display:inline-flex;align-items:center;justify-content:center;color:var(--color-text-muted);transition:background-color var(--motion-fast) var(--ease-standard),color var(--motion-fast) var(--ease-standard)}.so-icon-button:hover{background:var(--icon-button-bg-hover);color:var(--icon-button-fg-hover)}.so-icon-button[data-variant=danger]:hover{color:var(--color-status-danger-fg);background:var(--color-status-danger-bg)}.so-icon-button[data-variant=primary]{color:var(--color-brand-text);background:var(--color-brand-soft)}.so-icon-button[data-variant=primary]:hover{color:var(--color-brand-text);background:var(--color-brand-soft)}@supports (color: color-mix(in lab,red,red)){.so-icon-button[data-variant=primary]:hover{background:color-mix(in oklab,var(--color-brand-soft) 75%,var(--color-brand))}}.so-icon-button[data-variant=checkin]{color:var(--color-status-success-fg);background:var(--color-status-success-bg)}.so-icon-button[data-variant=checkout]{color:var(--color-status-warning-fg);background:var(--color-status-warning-bg)}.so-icon-button[data-variant=checkin]:hover{color:var(--color-status-success-fg);background:var(--color-status-success-bg)}@supports (color: color-mix(in lab,red,red)){.so-icon-button[data-variant=checkin]:hover{background:color-mix(in oklab,var(--color-status-success-bg) 70%,var(--color-status-success-fg))}}.so-icon-button[data-variant=checkout]:hover{color:var(--color-status-warning-fg);background:var(--color-status-warning-bg)}@supports (color: color-mix(in lab,red,red)){.so-icon-button[data-variant=checkout]:hover{background:color-mix(in oklab,var(--color-status-warning-bg) 70%,var(--color-status-warning-fg))}}.so-icon-button:disabled{opacity:.4;pointer-events:none}.so-icon-button[data-size=sm]{width:1.75rem;height:1.75rem}.so-icon-button[data-size=sm]>.mat-icon{width:1rem;height:1rem}.so-table .so-row-actions{white-space:nowrap;text-align:right;padding-inline:var(--space-2)}.so-table .so-row-actions>*+*{margin-left:var(--space-1)}.so-table .so-row-actions>.so-icon-button{width:1.75rem;height:1.75rem}.so-table .so-row-actions>.so-icon-button>.mat-icon{width:1rem;height:1rem}.so-content{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden}.so-header{flex:0 0 auto;height:var(--header-height)}*{scrollbar-width:thin;scrollbar-color:var(--color-border-strong) transparent}*::-webkit-scrollbar{width:.5rem;height:.5rem}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:var(--color-border-strong);border-radius:9999px;border:2px solid transparent;background-clip:padding-box}*::-webkit-scrollbar-thumb:hover{background-color:var(--color-text-subtle)}.so-skeleton{border-radius:var(--radius-sm);background:var(--color-surface-sunken);animation:so-pulse 1.4s ease-in-out infinite}@keyframes so-pulse{50%{opacity:.45}}@media(prefers-reduced-motion:reduce){.so-skeleton{animation:none}}.so-button:focus-visible,.so-icon-button:focus-visible,.so-segmented>button:focus-visible,.so-tabs>button:focus-visible,.so-unit-tile:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.so-nav-item{border-radius:var(--sidebar-item-radius);color:var(--color-text-muted)}.so-nav-item:hover{background:var(--color-surface-sunken);color:var(--color-text)}.so-nav-item.so-nav-active{background:var(--sidebar-active-bg);color:var(--sidebar-active-fg);font-weight:600}.so-cal{overflow:auto;max-height:calc(100vh - 20rem)}.so-cal-grid{display:grid;grid-template-columns:10rem repeat(var(--cal-days, 14),minmax(3.25rem,1fr));min-width:100%}.so-cal-corner,.so-cal-day{position:sticky;top:0;z-index:3;background:var(--color-surface);border-bottom:1px solid var(--color-border);height:3.5rem;display:flex;align-items:center;justify-content:center;gap:.375rem}.so-cal-corner{left:0;z-index:4;justify-content:flex-start;padding-inline:var(--space-4);font-size:var(--text-xs);font-weight:600;color:var(--color-text-muted);border-right:1px solid var(--color-border)}.so-cal-day{flex-direction:column;gap:0;height:3.5rem}.so-cal-day-dow{font-size:var(--text-sm);font-weight:600;line-height:1.2;color:var(--color-text)}.so-cal-day-dm{font-family:var(--font-mono-stack);font-size:var(--text-xs);line-height:1.2;color:var(--color-text-muted)}.so-cal-day[data-today] .so-cal-day-dow,.so-cal-day[data-today] .so-cal-day-dm{color:var(--color-brand-text)}.so-cal-day[data-past] .so-cal-day-dow{color:var(--color-text-subtle)}.so-cal-bar-skeleton{position:absolute;top:.5rem;height:2.5rem}.so-cal-day[data-today]{background:var(--color-brand-soft);color:var(--color-brand-text)}.so-cal-day[data-past]{color:var(--color-text-subtle)}.so-cal-day[data-weekend]:not([data-today]){background:var(--color-surface-sunken)}.so-cal-head{position:sticky;left:0;z-index:2;background:var(--color-surface);border-right:1px solid var(--color-border);border-bottom:1px solid var(--color-border);padding:var(--space-2) var(--space-4);min-height:3.5rem;display:flex;flex-direction:column;justify-content:center}.so-cal-head-wait{background:var(--color-status-warning-bg);min-height:0;padding-block:var(--space-1);font-size:var(--text-xs);font-weight:600;white-space:nowrap;color:var(--color-status-warning-fg)}.so-cal-head-wait>div{display:flex;align-items:center;gap:var(--space-1-5, .375rem);width:100%}.so-cal-wait-count{margin-left:auto;min-width:1.25rem;height:1.25rem;padding-inline:.375rem;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-full);font-family:var(--font-mono-stack);font-size:.6875rem;font-weight:700;color:#fff;background:var(--color-status-warning-fg)}.so-cal-row{grid-column:2 / -1;position:relative;display:flex;min-height:3.5rem;border-bottom:1px solid var(--color-border)}.so-cal-row-wait{min-height:0;background:var(--color-status-warning-bg)}@supports (color: color-mix(in lab,red,red)){.so-cal-row-wait{background:color-mix(in oklab,var(--color-status-warning-bg) 50%,transparent)}}.so-cal-cell{flex:1 1 0;min-width:0;border-right:1px solid var(--color-border);border-color:var(--color-border);background:transparent}@supports (color: color-mix(in lab,red,red)){.so-cal-cell{border-color:color-mix(in oklab,var(--color-border) 60%,transparent)}}.so-cal-cell[data-today]{background:var(--color-brand-soft)}@supports (color: color-mix(in lab,red,red)){.so-cal-cell[data-today]{background:color-mix(in oklab,var(--color-brand-soft) 45%,transparent)}}.so-cal-cell[data-weekend]:not([data-today]){background:var(--color-surface-sunken)}@supports (color: color-mix(in lab,red,red)){.so-cal-cell[data-weekend]:not([data-today]){background:color-mix(in oklab,var(--color-surface-sunken) 60%,transparent)}}.so-cal-cell[data-past]{background-image:repeating-linear-gradient(135deg,transparent 0 6px,var(--color-border) 6px 7px)}@supports (color: color-mix(in lab,red,red)){.so-cal-cell[data-past]{background-image:repeating-linear-gradient(135deg,transparent 0 6px,color-mix(in oklab,var(--color-border) 35%,transparent) 6px 7px)}}button.so-cal-cell:not(:disabled):hover{background:var(--color-brand-soft);cursor:cell}button.so-cal-cell:disabled{cursor:default}button.so-cal-cell[data-busy]{cursor:not-allowed}.so-cal-bar{position:absolute;top:.5rem;height:2.5rem;margin-inline:3px;box-sizing:border-box;width:calc(var(--bar-w) - 6px);border-radius:var(--radius-sm);padding:0 var(--space-2);display:flex;align-items:center;gap:.375rem;font-size:var(--text-sm);font-weight:600;overflow:hidden;white-space:nowrap;border:1px solid;cursor:pointer;text-align:left;background:var(--color-status-info-bg);color:var(--color-status-info-fg);border-color:var(--color-status-info-border);box-shadow:var(--shadow-card);transition:transform var(--motion-fast) var(--ease-standard)}.so-cal-bar:hover{transform:translateY(-1px);z-index:1}.so-cal-bar[data-compact]{font-size:var(--text-xs);padding:0 var(--space-1);gap:.25rem}.so-cal-bar[data-narrow]{padding:0 var(--space-1);gap:.25rem}.so-cal-swatch{display:inline-block;width:1.25rem;height:.75rem;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface)}.so-cal-swatch[data-status=planned]{background:var(--color-status-info-bg);border-color:var(--color-status-info-border)}.so-cal-swatch[data-status=active]{background:var(--color-status-success-bg);border-color:var(--color-status-success-border)}.so-cal-swatch[data-status=overstay]{background:var(--color-status-danger-bg);border-color:var(--color-status-danger-border)}.so-cal-swatch[data-status=wait]{border-style:dashed;border-color:var(--color-status-warning-border)}.so-cal-swatch[data-entered]{background:var(--color-status-info-bg);border:1px dashed var(--color-status-warning-fg)}.so-cal-swatch[data-cell=busy]{background:var(--color-status-success-bg);opacity:.6}.so-cal-swatch[data-cell=past]{background-image:repeating-linear-gradient(135deg,transparent 0 3px,var(--color-border) 3px 4px)}.so-cal-swatch[data-cell=today]{background:var(--color-brand-soft);border-color:var(--color-brand)}.so-cal-bar[data-status=active]{background:var(--color-status-success-bg);color:var(--color-status-success-fg);border-color:var(--color-status-success-border)}.so-cal-bar[data-status=overstay]{background:var(--color-status-danger-bg);color:var(--color-status-danger-fg);border-color:var(--color-status-danger-border)}.so-cal-bar[data-entered]{border-style:dashed;border-color:var(--color-status-warning-fg);box-shadow:inset 0 0 0 1px var(--color-status-warning-fg)}.so-cal-bar[data-status=completed],.so-cal-bar[data-status=transferred]{background:var(--color-status-neutral-bg);color:var(--color-status-neutral-fg);border-color:var(--color-status-neutral-border);font-weight:500}.so-cal-bar[data-kind=wait]{height:2.5rem;font-size:var(--text-sm);background:var(--color-surface);color:var(--color-status-warning-fg);border-color:var(--color-status-warning-border);border-style:dashed}.so-cal-block{background:repeating-linear-gradient(135deg,var(--color-surface-sunken) 0 6px,var(--color-border) 6px 8px);color:var(--color-text-muted);border-color:var(--color-border);cursor:default;font-weight:500}.so-cal-site{grid-column:1 / -1;background:var(--color-surface-sunken);border-bottom:1px solid var(--color-border)}.so-cal-site>span{position:sticky;left:0;display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);font-size:var(--text-sm);font-weight:600;color:var(--color-text)}.so-cal-empty{grid-column:1 / -1;padding:var(--space-10);text-align:center;color:var(--color-text-muted);font-size:var(--text-sm)}.so-pop{position:fixed;z-index:40;width:25rem;max-width:calc(100vw - 2rem);padding:var(--space-4);border-radius:var(--radius-lg);background:var(--color-surface-raised);border:1px solid var(--color-border);box-shadow:var(--shadow-popover);animation:so-pop-in var(--motion-base) var(--ease-standard)}@keyframes so-pop-in{0%{opacity:0;transform:translateY(4px)}}.so-pop-head{display:flex;align-items:flex-start;gap:var(--space-3)}.so-pop-head>so-chip{flex:none}.so-pop-avatar{flex:none;display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:var(--radius-md);background:var(--color-surface-sunken);color:var(--color-text-muted)}.so-pop-avatar[data-mode=short]{background:var(--color-mode-short-bg);color:var(--color-mode-short-fg)}.so-pop-avatar[data-mode=monthly]{background:var(--color-mode-monthly-bg);color:var(--color-mode-monthly-fg)}.so-pop-avatar[data-mode=wait]{background:var(--color-status-warning-bg);color:var(--color-status-warning-fg)}.so-pop-range{margin-top:var(--space-4);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--color-surface-sunken);border:1px solid var(--color-border)}.so-pop-range-col{display:flex;flex-direction:column;gap:.125rem;min-width:0}.so-pop-range-col[data-align=end]{align-items:flex-end;text-align:right}.so-pop-range-k{display:inline-flex;align-items:center;gap:.25rem;font-size:.6875rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted)}.so-pop-range-d{font-size:var(--text-base);font-weight:600;line-height:1.25;white-space:nowrap;color:var(--color-text)}.so-pop-range-d[data-long]{font-size:var(--text-sm)}.so-pop-range-t{font-family:var(--font-mono-stack);font-size:var(--text-xs);color:var(--color-text-muted)}.so-pop-range-mid{display:flex;flex-direction:column;align-items:center;gap:.125rem}.so-pop-range-n{white-space:nowrap;font-size:var(--text-xs);font-weight:600;color:var(--color-brand-text);background:var(--color-brand-soft);border-radius:var(--radius-full);padding:.125rem .5rem}.so-pop-range-line{color:var(--color-text-subtle)}.so-pop-facts{margin-top:var(--space-3);display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-3) var(--space-5);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md)}.so-pop-fact{display:flex;flex-direction:column;gap:.125rem;min-width:0}.so-dialog-tabs{display:block;position:sticky;top:calc(-1 * var(--space-2));z-index:2;margin:calc(-1 * var(--space-2)) calc(-1 * var(--space-6)) var(--space-1);padding:0 var(--space-6);background:var(--color-surface-raised)}.so-dialog-tabs+.so-pop-facts{margin-top:var(--space-3)}.so-pop-fact[data-span="2"]{grid-column:span 2}.so-pop-facts[data-cols="3"]{grid-template-columns:repeat(3,1fr)}.so-pop-tools{margin-top:var(--space-4);display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:var(--space-2)}.so-pop-tool{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.375rem;min-height:4rem;padding:var(--space-2);border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);font-size:var(--text-xs);font-weight:500;cursor:pointer;transition:background var(--motion-fast, .12s),border-color var(--motion-fast, .12s)}.so-pop-tool>.mat-icon{width:1.25rem;height:1.25rem;color:var(--color-brand-text)}.so-pop-tool:hover{background:var(--color-brand-soft);border-color:var(--color-brand)}.so-pop-tool:focus-visible{outline:2px solid var(--color-brand);outline-offset:1px}.so-pop-fact-k{font-size:.6875rem;color:var(--color-text-muted)}.so-pop-fact-v{display:inline-flex;align-items:center;gap:.375rem;font-size:var(--text-sm);font-weight:600;color:var(--color-text)}.so-pop-fact-v .mat-icon{color:var(--color-text-muted)}.so-pop-actions{margin-top:var(--space-4);display:flex;flex-direction:column;gap:var(--space-2)}.so-pop-actions-main{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--space-2)}.so-pop-actions-main>.so-button{flex:0 0 auto;white-space:nowrap}.so-pop-actions-sub{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1);padding-top:var(--space-2);border-top:1px solid var(--color-border)}.so-pop-danger,.so-button.so-pop-danger{color:var(--color-status-danger-fg)}.so-pop-wide{width:27.5rem}.so-pop-avatar[data-status=warning]{background:var(--color-status-warning-bg);color:var(--color-status-warning-fg)}.so-pop-avatar[data-status=danger]{background:var(--color-status-danger-bg);color:var(--color-status-danger-fg)}.so-evidence-thumb{display:inline-block;width:4.5rem;height:4.5rem;border-radius:var(--radius-sm);overflow:hidden;border:1px solid var(--color-border);background:var(--color-surface-sunken)}.so-evidence-thumb>img{width:100%;height:100%;object-fit:cover}.so-bell{position:relative}.so-bell-count{position:absolute;top:.125rem;right:.125rem;min-width:1rem;height:1rem;padding-inline:.25rem;border-radius:var(--radius-full);background:var(--color-status-danger-solid);color:var(--color-status-danger-on);font-family:var(--font-mono-stack);font-size:.625rem;font-weight:700;line-height:1rem;text-align:center}.so-qty{display:inline-flex;align-items:center;gap:.125rem}.so-menu-notif.mat-mdc-menu-panel{width:24rem;max-width:calc(100vw - 2rem)}.so-menu-notif .mat-mdc-menu-content{padding:0}.so-notif-head{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4) var(--space-2)}.so-notif-badge{font-size:var(--text-xs);font-weight:600;color:var(--color-brand-text);background:var(--color-brand-soft);border-radius:var(--radius-full);padding:.0625rem .5rem}.so-notif-list{max-height:min(60vh,32rem);overflow-y:auto;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.so-notif{position:relative;display:flex;align-items:flex-start;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-4) var(--space-3) 1.25rem;text-align:left;background:none;border:0;border-bottom:1px solid var(--color-border);cursor:pointer;color:var(--color-text)}.so-notif:last-child{border-bottom:0}.so-notif:hover{background:var(--color-surface-sunken)}.so-notif:focus-visible{outline:2px solid var(--color-brand);outline-offset:-2px}.so-notif[data-unread]{background:var(--color-brand-soft)}@supports (color: color-mix(in lab,red,red)){.so-notif[data-unread]{background:color-mix(in oklab,var(--color-brand-soft) 45%,transparent)}}.so-notif[data-unread]:hover{background:var(--color-brand-soft)}.so-notif[data-unread]:before{content:"";position:absolute;left:.5rem;top:1.125rem;width:.375rem;height:.375rem;border-radius:var(--radius-full);background:var(--color-brand)}.so-notif-sign{flex:none;width:2rem;height:2rem;margin-top:.0625rem}.so-notif-sign>.mat-icon{width:1rem;height:1rem}.so-notif-body{display:flex;flex-direction:column;gap:.125rem;min-width:0;flex:1 1 auto}.so-notif-title{font-size:var(--text-sm);font-weight:600;line-height:1.3;white-space:normal;overflow-wrap:anywhere}.so-notif[data-unread] .so-notif-title{color:var(--color-text)}.so-notif:not([data-unread]) .so-notif-title{font-weight:500}.so-notif-text{font-size:var(--text-sm);line-height:1.4;color:var(--color-text-muted);white-space:normal;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.so-notif-meta{margin-top:.125rem;font-size:var(--text-xs);color:var(--color-text-subtle)}.so-notif-foot{display:flex;gap:var(--space-1);padding:var(--space-2) var(--space-3)}.so-guests{display:inline-flex;align-items:center;gap:.125rem;margin-left:var(--space-2);color:var(--color-text-muted)}.so-amount-tile{display:flex;flex-direction:column;gap:.125rem;width:100%;margin-bottom:var(--space-4);padding:var(--space-3) var(--space-4);text-align:left;border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface-sunken);color:var(--color-text)}.so-amount-tile[data-status=success]{background:var(--color-status-success-bg);border-color:var(--color-status-success-border)}.so-amount-tile[data-status=success] .so-amount-tile-k,.so-amount-tile[data-status=success] .so-amount-tile-v{color:var(--color-status-success-fg)}.so-amount-tile-k{display:inline-flex;align-items:center;gap:.375rem;font-size:var(--text-xs);font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:var(--color-text-muted)}.so-amount-tile-v{font-family:var(--font-mono-stack);font-size:var(--text-2xl);font-weight:600;line-height:1.2;font-variant-numeric:tabular-nums}.so-amount-tile-h{display:inline-flex;align-items:center;gap:.25rem;font-size:var(--text-xs);color:var(--color-text-muted)}button.so-amount-tile{cursor:pointer;transition:border-color var(--motion-fast) var(--ease-standard),box-shadow var(--motion-fast) var(--ease-standard)}button.so-amount-tile:hover{border-color:var(--color-brand)}.so-progress{display:block;height:.25rem;border-radius:var(--radius-full);background:var(--color-surface-sunken);overflow:hidden;margin-top:.375rem}.so-progress>span{display:block;height:100%;border-radius:inherit;background:var(--color-status-info-fg)}.so-progress[data-status=success]>span{background:var(--color-status-success-fg)}.so-progress[data-status=warning]>span{background:var(--color-status-warning-fg)}.so-progress[data-status=danger]>span{background:var(--color-status-danger-fg)}.so-busy{opacity:.45;pointer-events:none;transition:opacity var(--motion-fast) var(--ease-standard)}.so-filter-rows{display:flex;flex-direction:column;gap:var(--space-3)}.so-kpi.so-kpi-6{grid-template-columns:repeat(3,minmax(0,1fr))}@media(min-width:1280px){.so-kpi.so-kpi-6{grid-template-columns:repeat(6,minmax(0,1fr))}}@media(max-width:640px){.so-kpi.so-kpi-6{grid-template-columns:repeat(2,minmax(0,1fr))}}.so-kpi-6 .so-kpi-value{flex-wrap:wrap;row-gap:.25rem}.so-table tfoot .so-table-total td{background:var(--color-surface-sunken);border-top:1px solid var(--color-border-strong);height:3rem}.so-confirm{display:flex;flex-direction:column;gap:var(--space-3);padding-bottom:var(--space-2)}.so-confirm-lead{display:flex;align-items:flex-start;gap:var(--space-3);font-size:var(--text-base)}.so-confirm-lead>p{margin:0;padding-top:.375rem}.so-confirm-icon{flex:none;width:2.25rem;height:2.25rem;border-radius:var(--radius-full);display:inline-flex;align-items:center;justify-content:center;background:var(--color-brand-soft);color:var(--color-brand-text)}.so-confirm-icon[data-variant=danger]{background:var(--color-status-danger-bg);color:var(--color-status-danger-fg)}.so-confirm-amount{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface-sunken)}.so-confirm-amount>span{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.02em;color:var(--color-text-muted)}.so-confirm-amount>strong{font-family:var(--font-mono-stack);font-size:var(--text-2xl);font-weight:600;font-variant-numeric:tabular-nums}.so-confirm-amount[data-status=success]{background:var(--color-status-success-bg);border-color:var(--color-status-success-border)}.so-confirm-amount[data-status=success]>*{color:var(--color-status-success-fg)}.so-confirm-amount[data-status=danger]{background:var(--color-status-danger-bg);border-color:var(--color-status-danger-border)}.so-confirm-amount[data-status=danger]>*{color:var(--color-status-danger-fg)}.so-confirm-rows{margin:0;display:flex;flex-direction:column;border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--text-sm)}.so-confirm-rows>div{display:flex;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) var(--space-3)}.so-confirm-rows>div+div{border-top:1px solid var(--color-border)}.so-confirm-rows dt{color:var(--color-text-muted)}.so-confirm-rows dd{margin:0;text-align:right;font-variant-numeric:tabular-nums}.so-confirm-rows dd[data-status=success]{color:var(--color-status-success-fg)}.so-confirm-rows dd[data-status=danger]{color:var(--color-status-danger-fg)}.so-confirm-rows dd[data-status=warning]{color:var(--color-status-warning-fg)}.so-confirm-effect{margin:0;display:flex;align-items:flex-start;gap:var(--space-2);font-size:var(--text-sm);color:var(--color-text-muted)}.so-confirm-effect>.mat-icon{flex:none;margin-top:.125rem}.so-amount-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2);margin-top:var(--space-3)}.so-amount-row>.so-amount-tile{margin-bottom:0}.so-amount-tile[data-status=danger]{background:var(--color-status-danger-bg);border-color:var(--color-status-danger-border)}.so-amount-tile[data-status=danger] .so-amount-tile-k,.so-amount-tile[data-status=danger] .so-amount-tile-v{color:var(--color-status-danger-fg)}.so-amount-tile[data-status=warning]{background:var(--color-status-warning-bg);border-color:var(--color-status-warning-border)}.so-amount-tile[data-status=warning] .so-amount-tile-k,.so-amount-tile[data-status=warning] .so-amount-tile-v{color:var(--color-status-warning-fg)}@media(max-width:640px){.so-amount-row{grid-template-columns:1fr}}.so-table tr[data-reversed] td{color:var(--color-text-muted)}.so-table tr[data-reversed] td.num{text-decoration:line-through;text-decoration-color:var(--color-text-subtle)}.so-section-h{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);margin-top:var(--space-5);margin-bottom:var(--space-2);font-size:var(--text-sm);font-weight:600}.so-section-h>span:last-child{font-weight:400;color:var(--color-text-muted);font-size:var(--text-xs)}.so-link{color:var(--color-brand-text);cursor:pointer;text-decoration:underline transparent;text-underline-offset:3px;transition:text-decoration-color var(--motion-fast, .12s)}.so-link:hover{text-decoration-color:currentColor}.so-table[data-roomy] td{height:4rem}.so-booking-table td{vertical-align:middle}.so-booking-table td:nth-child(2),.so-booking-table td:nth-child(7),.so-booking-table td:last-child{white-space:nowrap}.so-booking-table th.icon,.so-booking-table td.icon{width:4.5rem;text-align:center;white-space:nowrap}.so-booking-table th:nth-child(1){width:7.5rem}@container (max-width: 1150px){.so-booking-table .so-dates>span{display:block}}@media(prefers-reduced-motion:reduce){.so-pop{animation:none}.so-cal-bar{transition:none}}.so-stack{display:flex;flex-direction:column;gap:var(--gap-section)}.so-page{margin-inline:auto;display:flex;width:100%;max-width:var(--page-max-w);flex-direction:column;gap:var(--gap-section);padding:var(--page-py) var(--page-px)}.so-toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--space-3)}.so-toolbar>*{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--space-2)}.so-segmented{display:inline-flex;height:var(--control-height);gap:2px;border:0;border-radius:var(--radius-full);padding:3px;font-size:var(--text-sm);background:var(--segmented-track)}.so-segmented[data-size=sm]{height:1.75rem}.so-segmented[data-size=sm]>button{height:1.5rem;padding-inline:var(--space-2);font-size:var(--text-xs)}.so-segmented>button{border-radius:var(--radius-full);padding:0 var(--space-3);color:var(--color-text-muted);white-space:nowrap;display:inline-flex;align-items:center}.so-segmented>button:not([aria-pressed=true]):hover{color:var(--color-text);background:var(--segmented-hover-bg)}.so-segmented>button[aria-pressed=true]{background:var(--segmented-active-bg);color:var(--segmented-active-fg);font-weight:600}body.so-dialog-open .mat-drawer-content{z-index:5!important}.so-order-pick{display:grid;grid-template-columns:12rem minmax(0,1fr);gap:var(--space-5);min-height:24rem}.so-order-cats{display:flex;flex-direction:column;gap:2px;padding-right:var(--space-3);border-right:1px solid var(--color-border);align-self:start;position:sticky;top:0}.so-order-cat-n{min-width:1.25rem;height:1.25rem;padding-inline:.375rem;border-radius:var(--radius-full);background:var(--color-brand);color:var(--color-brand-fg);font-family:var(--font-mono-stack);font-size:.6875rem;line-height:1.25rem;text-align:center}.so-order-group-h{display:flex;align-items:center;gap:.375rem;margin:var(--space-3) 0 var(--space-2);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted)}.so-nav-badge{flex:none;min-width:1.375rem;height:1.375rem;padding:0 .375rem;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:var(--text-xs);font-weight:700;font-variant-numeric:tabular-nums;background:var(--color-danger-bg);color:var(--color-danger);box-shadow:inset 0 0 0 1px var(--color-danger-border)}.so-nav-badge[data-status=danger]{background:var(--color-danger);color:var(--color-white)}.so-kpi[data-stack] .so-kpi-value{flex-direction:column;align-items:flex-start;gap:.125rem}.so-live{display:inline-flex;align-items:center;gap:.375rem;font-size:var(--text-xs);color:var(--color-success)}.so-live>span{width:.5rem;height:.5rem;border-radius:999px;background:currentColor;animation:so-live-pulse 2s ease-in-out infinite}@keyframes so-live-pulse{0%,to{opacity:1}50%{opacity:.35}}@media(prefers-reduced-motion:reduce){.so-live>span{animation:none}}.so-pr-table tr[data-late] td:first-child{box-shadow:inset 3px 0 0 var(--color-danger)}.so-pay-state{display:inline-flex;align-items:center;gap:.25rem;white-space:nowrap;font-family:var(--font-sans);font-size:var(--text-xs);font-weight:500;color:var(--color-muted)}.so-pay-state mat-icon{width:.875rem;height:.875rem;flex:none}.so-pay-state[data-status=success]{color:var(--color-success)}.so-pay-state[data-status=warning]{color:var(--color-warning)}.so-pay-state[data-status=danger]{color:var(--color-danger);font-weight:600}.so-pay-state[data-status=info]{color:var(--color-info)}.so-pay-terms{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin:var(--space-1) 0 var(--space-2)}.so-pay-alert{display:flex;align-items:center;gap:var(--space-3);margin:var(--space-2) 0;padding:var(--space-3);border:1px solid var(--color-danger-border);border-radius:var(--radius-md);background:var(--color-danger-bg);color:var(--color-danger)}.so-pay-alert[data-tone=warning]{border-color:var(--color-warning-border);background:var(--color-warning-bg);color:var(--color-warning);margin:0 0 var(--space-3)}.so-pay-alert strong{display:block;font-size:var(--text-sm)}.so-pay-alert span{display:block;font-size:var(--text-xs);color:var(--color-text)}.so-stay-pick{display:grid;gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(21rem,1fr))}.so-stay-pick-item>.font-mono{white-space:nowrap;flex:none;min-width:3.75rem}.so-stay-pick-item>.so-chip{flex:none}.so-stay-pick-item{display:flex;align-items:center;gap:var(--space-3);min-height:3.5rem;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);text-align:left;cursor:pointer;transition:border-color .12s,background-color .12s}.so-stay-pick-item:hover{border-color:var(--color-brand);background:var(--color-brand-soft)}.so-stay-pick-item:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.so-order-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.so-order-card{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-surface-raised);transition:border-color var(--motion-fast) var(--ease-standard),box-shadow var(--motion-fast) var(--ease-standard)}.so-order-card:hover{box-shadow:var(--shadow-card)}.so-order-card.is-picked{border-color:var(--color-brand);background:var(--color-brand-soft)}.so-order-img{flex:none;width:4rem;height:4rem;border-radius:var(--radius-md);object-fit:cover}.so-order-img-empty{display:flex;align-items:center;justify-content:center;background:var(--color-surface-sunken);color:var(--color-text-subtle)}.so-order-img-empty>.mat-icon{width:1.5rem;height:1.5rem}.so-order-body{min-width:0;flex:1 1 0;display:flex;flex-direction:column;gap:.125rem}.so-order-name{font-size:var(--text-sm);font-weight:600;line-height:1.3}.so-order-desc{font-size:var(--text-xs);color:var(--color-text-muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.so-order-price{margin-top:.25rem;font-family:var(--font-mono-stack);font-size:var(--text-base);font-weight:700;color:var(--color-brand-text)}.so-order-price-from{margin-right:.25rem;font-family:var(--font-sans-stack, inherit);font-size:var(--text-xs);font-weight:500;color:var(--color-text-muted)}.so-order-price-unit{font-size:var(--text-xs);font-weight:500;color:var(--color-text-muted)}.so-order-open{font-size:.6875rem;color:var(--color-info-text, var(--color-text-muted))}.so-order-sum{display:flex;flex-direction:column;gap:.375rem;margin-bottom:var(--space-4);padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);background:var(--color-surface-sunken);font-size:var(--text-sm)}.so-order-sum-row{display:flex;flex-wrap:wrap;align-items:baseline;gap:.375rem}.so-order-sum-k{flex:none;width:4rem;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-subtle)}.so-order-sum-list{flex:1 1 auto;min-width:0;margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:.125rem}.so-order-sum-list>li{display:flex;align-items:baseline;gap:.5rem}.so-order-sum-qty{flex:none;min-width:1.75rem;font-family:var(--font-mono-stack);font-weight:600;text-align:right}.so-order-sum-qty:after{content:" x";font-weight:400;color:var(--color-text-muted)}.so-order-qty{flex:none;width:5.75rem;display:inline-flex;align-items:center;justify-content:flex-end;gap:.25rem}.so-roles{display:grid;grid-template-columns:16rem minmax(0,1fr);gap:var(--space-4);align-items:start}@media(max-width:48rem){.so-roles{grid-template-columns:minmax(0,1fr)}}.so-roles-list{display:flex;flex-direction:column;gap:2px;padding:var(--space-2);position:sticky;top:0}.so-roles-item{display:flex;align-items:center;gap:var(--space-2);width:100%;min-height:2.5rem;padding:0 var(--space-3);border:0;border-radius:var(--radius-md);background:none;color:var(--color-text);font-size:var(--text-sm);cursor:pointer}.so-roles-item:hover{background:var(--color-surface-sunken)}.so-roles-item[aria-selected=true]{background:var(--color-brand-soft);color:var(--color-brand-text);font-weight:600}.so-perm-group{margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--color-border)}.so-perm-group-h{margin-bottom:var(--space-2);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted)}.so-perm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(18rem,1fr));gap:2px var(--space-4)}.so-mfa-qr{display:flex;justify-content:center;padding:var(--space-3);border-radius:var(--radius-lg);background:var(--color-surface-sunken)}.so-mfa-qr>img{width:11rem;height:11rem;padding:var(--space-2);border-radius:var(--radius-md);background:#fff}.so-json{max-height:22rem;overflow:auto;margin:0;padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-surface-sunken);font-family:var(--font-mono-stack);font-size:var(--text-xs);line-height:1.5;white-space:pre-wrap;word-break:break-word}.so-minibar-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(7.5rem,1fr));gap:var(--space-2);margin-top:var(--space-3)}.so-minibar{display:flex;flex-direction:column;align-items:flex-start;gap:.125rem;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-raised);cursor:pointer;text-align:left}.so-minibar:hover{border-color:var(--color-brand);background:var(--color-brand-soft)}.so-bulkbar{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);border:1px dashed var(--color-border);border-radius:var(--card-radius);color:var(--color-text-muted)}.so-bulkbar[data-active]{border-style:solid;border-color:var(--color-brand);background:var(--color-brand-soft);color:var(--color-brand-text)}.so-profile{display:grid;gap:var(--space-5);align-items:start}@media(min-width:1024px){.so-profile{grid-template-columns:13rem minmax(0,1fr)}}.so-side-nav{display:flex;flex-direction:column;gap:.125rem;padding:var(--space-2);border:1px solid var(--card-border);border-radius:var(--card-radius);background:var(--card-bg)}@media(min-width:1024px){.so-side-nav{position:sticky;top:var(--space-4)}}.so-side-nav-group{padding:var(--space-3) var(--space-2) var(--space-1);font-size:var(--text-xs);font-weight:600;color:var(--color-text-subtle);text-transform:uppercase;letter-spacing:.04em}.so-side-nav-item{display:flex;align-items:center;gap:var(--space-2);width:100%;height:2.25rem;padding:0 var(--space-2);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--color-text-muted);text-align:left;transition:background-color var(--motion-fast) var(--ease-standard),color var(--motion-fast) var(--ease-standard)}.so-side-nav-item:hover{background:var(--color-surface-sunken);color:var(--color-text)}.so-side-nav-item.is-active{background:var(--color-brand-soft);color:var(--color-brand-text);font-weight:600}.so-side-nav-item:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:1px}.so-side-nav-dot{margin-left:auto;width:.5rem;height:.5rem;border-radius:999px;background:var(--color-status-warning-fg)}.so-missing{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--color-status-warning-border);border-radius:var(--radius-md);background:var(--color-status-warning-bg);color:var(--color-status-warning-fg);font-size:var(--text-sm)}.so-missing:hover{border-color:var(--color-status-warning-fg)}.so-hero{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:var(--space-4)}.so-hero-main{display:flex;align-items:center;gap:var(--space-4);min-width:0}.so-hero-tile{flex:none;width:3.5rem;height:3.5rem;border-radius:var(--radius-lg);display:inline-flex;align-items:center;justify-content:center;background:var(--color-brand-soft);color:var(--color-brand-text)}.so-hero-code{font-family:var(--font-mono-stack);font-size:var(--text-md);font-weight:600;letter-spacing:-.01em}.so-hero-title{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-3)}.so-hero-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-4);margin-top:var(--space-1);font-size:var(--text-sm);color:var(--color-text-muted)}.so-hero-meta>span{display:inline-flex;align-items:center;gap:.375rem}.so-hero-meta .mat-icon{color:var(--color-text-subtle)}.so-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-2) var(--space-4);margin-bottom:var(--space-4)}.so-card-head>div:first-child{min-width:0;flex:1 1 auto}@media(max-width:640px){.so-card-head{flex-wrap:wrap}}.so-card-head h2{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-md);font-weight:600;line-height:1.5rem}.so-card-head p{margin-top:.125rem;max-width:48rem;font-size:var(--text-sm);color:var(--color-text-muted)}.so-card-head>div+div{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);flex:none}.so-card-head:last-child{margin-bottom:0}.so-facts{display:grid;grid-template-columns:repeat(auto-fill,minmax(10rem,1fr));gap:var(--space-4) var(--space-6);margin:0}.so-facts[data-cols="2"]{grid-template-columns:repeat(2,minmax(0,1fr))}@media(min-width:768px){.so-facts[data-cols="3"]{grid-template-columns:repeat(3,minmax(0,1fr))}.so-facts[data-cols="4"]{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:767px){.so-facts[data-cols="3"],.so-facts[data-cols="4"]{grid-template-columns:repeat(2,minmax(0,1fr))}}.so-facts>div{display:flex;flex-direction:column;gap:.25rem;min-width:0}.so-facts dt{font-size:var(--text-xs);color:var(--color-text-muted)}.so-facts dd{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-2);margin:0;font-size:var(--text-sm);font-weight:500;color:var(--color-text);overflow-wrap:anywhere}.so-facts dd>small{flex-basis:100%;font-size:var(--text-xs);font-weight:400;color:var(--color-text-muted)}.so-hint{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-surface-sunken);font-size:var(--text-xs);line-height:1.125rem;color:var(--color-text-muted)}.so-hint>.mat-icon{flex:none;margin-top:.0625rem;color:var(--color-text-subtle)}.so-hint[data-status=warning]{background:var(--color-status-warning-bg);color:var(--color-status-warning-fg)}.so-hint[data-status=warning]>.mat-icon{color:inherit}.so-hint[data-status=info]{background:var(--color-status-info-bg);color:var(--color-status-info-fg)}.so-hint[data-status=info]>.mat-icon{color:inherit}.so-hint[data-status=danger]{background:var(--color-status-danger-bg);color:var(--color-status-danger-fg)}.so-hint[data-status=danger]>.mat-icon{color:inherit}.so-card-foot{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--color-border)}.so-empty{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-8) var(--space-4);text-align:center}.so-empty-icon{display:inline-flex;align-items:center;justify-content:center;width:3rem;height:3rem;margin-bottom:var(--space-1);border-radius:var(--radius-lg);background:var(--color-surface-sunken);color:var(--color-text-muted)}.so-empty-title{font-size:var(--text-sm);font-weight:600;color:var(--color-text)}.so-empty p{max-width:28rem;font-size:var(--text-sm);color:var(--color-text-muted)}.so-empty .so-button{margin-top:var(--space-2)}.so-link-rows{display:flex;flex-direction:column;margin-inline:calc(-1 * var(--space-3))}.so-link-row{display:flex;align-items:center;gap:var(--space-3);width:100%;min-height:3.5rem;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);text-align:left;font-size:var(--text-sm);color:var(--color-text);transition:background-color var(--motion-fast) var(--ease-standard)}.so-link-row:is(button,a):hover{background:var(--color-surface-sunken)}.so-link-row:is(button,a):focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:1px}.so-link-row-icon{flex:none;display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;border-radius:var(--radius-md);background:var(--color-surface-sunken);color:var(--color-text-muted)}.so-link-row-icon[data-status=success]{background:var(--color-status-success-bg);color:var(--color-status-success-fg)}.so-link-row-icon[data-status=warning]{background:var(--color-status-warning-bg);color:var(--color-status-warning-fg)}.so-link-row-icon[data-status=danger]{background:var(--color-status-danger-bg);color:var(--color-status-danger-fg)}.so-link-row-text{display:flex;flex-direction:column;flex:1 1 auto;min-width:0}.so-link-row-text>small{font-size:var(--text-xs);color:var(--color-text-muted)}.so-link-row[data-done] .so-link-row-text>span{color:var(--color-text-muted)}.so-link-row>.so-chip{flex:none}.so-link-row>.mat-icon:last-child{flex:none;color:var(--color-text-subtle)}.so-price-tiles{display:grid;gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(13rem,1fr))}.so-price-tiles[data-cols="3"]{grid-template-columns:repeat(auto-fit,minmax(10.5rem,1fr))}.so-price-tile{display:flex;flex-direction:column;gap:.25rem;min-width:0;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md)}.so-price-tile-k{display:flex;align-items:center;gap:.375rem;font-size:var(--text-xs);color:var(--color-text-muted)}.so-price-tile-v{font-family:var(--font-mono-stack);font-variant-numeric:tabular-nums;font-size:1.375rem;font-weight:500;letter-spacing:-.01em;line-height:1.75rem}.so-price-tile-v>small{margin-left:.25rem;font-family:var(--font-sans-stack, inherit);font-size:var(--text-xs);font-weight:400;color:var(--color-text-muted);letter-spacing:0}.so-price-tile-s{font-size:var(--text-xs);color:var(--color-text-muted)}.so-disclosure{margin-top:var(--space-4);border-top:1px solid var(--color-border)}.so-disclosure>summary{display:flex;align-items:center;gap:var(--space-2);padding-top:var(--space-3);list-style:none;cursor:pointer;font-size:var(--text-sm);font-weight:500;color:var(--color-text-muted)}.so-disclosure>summary::-webkit-details-marker{display:none}.so-disclosure>summary:hover{color:var(--color-text)}.so-disclosure>summary>.mat-icon{transition:transform var(--motion-fast) var(--ease-standard)}.so-disclosure[open]>summary>.mat-icon{transform:rotate(90deg)}.so-disclosure>.so-table{margin-top:var(--space-3)}.so-timeline{display:flex;flex-direction:column}.so-timeline>li{position:relative;display:flex;flex-direction:column;gap:.125rem;padding:0 0 var(--space-4) var(--space-6);font-size:var(--text-sm)}.so-timeline>li:before{content:"";position:absolute;left:.3125rem;top:.375rem;width:.5rem;height:.5rem;border-radius:999px;background:var(--color-text-subtle)}.so-timeline>li:after{content:"";position:absolute;left:.5rem;top:1.125rem;bottom:.125rem;width:1px;background:var(--color-border)}.so-timeline>li:last-child{padding-bottom:0}.so-timeline>li:last-child:after{display:none}.so-timeline>li[data-current]:before{background:var(--color-status-success-fg);box-shadow:0 0 0 .1875rem var(--color-status-success-bg)}.so-timeline small{font-size:var(--text-xs);color:var(--color-text-muted)}.so-qr-door{flex:none;width:8.5rem;height:8.5rem;padding:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:#fff;image-rendering:pixelated}.so-auto-row{display:grid;grid-template-columns:2.25rem minmax(0,1fr) auto;align-items:center;gap:var(--space-2) var(--space-3);padding:var(--space-3) 0;border-top:1px solid var(--color-border)}.so-auto-row:first-child{border-top:0}.so-auto-row>.so-auto-params{grid-column:2 / -1}@media(max-width:1023px){.so-side-nav{flex-direction:row;overflow-x:auto;scrollbar-width:none}.so-side-nav-group{display:none}.so-side-nav-item{flex:none;width:auto;white-space:nowrap}.so-side-nav-dot{margin-left:.25rem}}@media(max-width:640px){.so-profile .so-kpi-value>strong{font-size:1.375rem}}.so-state-tiles{display:grid;gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(10.5rem,1fr))}.so-state-tile{display:flex;align-items:center;gap:var(--space-3);min-width:0;padding:var(--space-3) var(--space-4);border:1px solid var(--card-border);border-radius:var(--card-radius);background:var(--card-bg)}.so-state-tile>div{display:flex;flex-direction:column;min-width:0}.so-state-tile small{font-size:var(--text-xs);color:var(--color-text-muted)}.so-state-tile strong{font-size:var(--text-sm);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.so-device-tiles{display:grid;gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(12rem,1fr))}@media(max-width:640px){.so-device-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}.so-device-tiles-off{opacity:.6}.so-hold{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2) var(--space-4);margin-bottom:var(--space-4);padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-surface-sunken)}.so-hold-text{display:flex;flex-direction:column;flex:1 1 16rem;min-width:0}.so-hold-text>b{font-size:var(--text-sm);font-weight:600}.so-hold-text>small{font-size:var(--text-xs);color:var(--color-text-muted)}.so-hold>.so-segmented{flex:none;max-width:100%;overflow-x:auto}.so-device-tiles+.so-device-tiles{margin-top:var(--space-3)}.so-device-tiles:not([data-group=climate])>.so-device-tile{height:9.5rem}.so-device-tiles:not([data-group=climate]) .so-device-tile-top{margin-bottom:var(--space-1)}.so-device-tile{display:flex;flex-direction:column;gap:.125rem;min-width:0;height:11.5rem;padding:var(--space-3);border:1px solid var(--device-tile-border);border-radius:var(--device-tile-radius);background:var(--device-tile-bg);transition:border-color var(--motion-fast) var(--ease-standard),background-color var(--motion-fast) var(--ease-standard)}.so-device-tile:hover{border-color:var(--color-border-hover)}.so-device-tile[data-on]{border-color:var(--device-tile-on-border);background:linear-gradient(180deg,var(--color-brand),var(--device-tile-bg) 70%)}@supports (color: color-mix(in lab,red,red)){.so-device-tile[data-on]{background:linear-gradient(180deg,color-mix(in oklab,var(--color-brand) 16%,var(--device-tile-bg)),var(--device-tile-bg) 70%)}}.so-device-tile-top{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-2)}.so-device-tile-icon{flex:none;width:var(--device-icon-size);height:var(--device-icon-size);border-radius:var(--radius-md);display:inline-flex;align-items:center;justify-content:center;background:var(--device-icon-bg);color:var(--device-icon-fg)}.so-device-tile[data-on] .so-device-tile-icon{background:var(--device-icon-on-bg);color:var(--device-icon-on-fg)}.so-device-tile-top>.so-switch{margin-left:auto}.so-curtain-btns{display:flex;gap:var(--space-1);margin-left:auto}.so-curtain-btns>button{display:inline-flex;align-items:center;gap:.25rem;height:1.75rem;padding:0 var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:600;color:var(--color-text-muted);background:transparent;cursor:pointer}.so-curtain-btns>button:hover:not(:disabled){border-color:var(--color-border-hover);color:var(--color-text)}.so-curtain-btns>button[aria-pressed=true]{border-color:var(--color-brand);background:var(--color-brand-soft);color:var(--color-brand-text)}.so-curtain-btns>button:disabled{opacity:.5;cursor:default}.so-curtain-btns>button:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.so-device-tile-name{font-size:var(--text-base);font-weight:600;line-height:1.25;overflow:hidden;overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.so-device-tile-desc{font-size:var(--text-xs);color:var(--color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.so-device-tile-desc+:not(.so-device-tile-foot){margin-top:auto}.so-device-tile-foot{display:flex;align-items:center;min-height:1rem;margin-top:var(--space-1);font-size:.6875rem;color:var(--color-status-warning-fg)}.so-device-tile-desc+.so-device-tile-foot{margin-top:auto}.so-device-tile-foot>span{display:inline-flex;align-items:center;gap:.25rem;white-space:nowrap}.so-device-tile-temp{display:flex;align-items:center;gap:var(--space-1)}.so-device-tile-temp>strong{font-family:var(--font-mono-stack);font-size:1.375rem;font-weight:600;line-height:1.75rem}.so-device-tile-temp>span{margin-left:var(--space-1);font-size:var(--text-xs);color:var(--color-text-muted)}.so-device-tile-level{width:100%;height:1rem;margin:0;background:transparent;cursor:pointer;appearance:none;-webkit-appearance:none}.so-device-tile-level:disabled{cursor:default}.so-device-tile-level::-webkit-slider-runnable-track{height:.25rem;border-radius:var(--radius-full);background:linear-gradient(90deg,var(--color-brand) var(--v, 0%),var(--color-status-neutral-bg) var(--v, 0%))}.so-device-tile-level::-moz-range-track{height:.25rem;border-radius:var(--radius-full);background:var(--color-status-neutral-bg)}.so-device-tile-level::-moz-range-progress{height:.25rem;border-radius:var(--radius-full);background:var(--color-brand)}.so-device-tile-level::-webkit-slider-thumb{-webkit-appearance:none;width:.875rem;height:.875rem;margin-top:-.3125rem;border-radius:var(--radius-full);background:var(--color-brand);border:2px solid var(--device-tile-bg)}.so-device-tile-level::-moz-range-thumb{width:.875rem;height:.875rem;border-radius:var(--radius-full);background:var(--color-brand);border:2px solid var(--device-tile-bg)}.so-device-tile-level:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.so-switch{position:relative;flex:none;width:2.25rem;height:1.25rem;padding:0;border-radius:var(--radius-full);border:none;background:var(--color-border-strong);cursor:pointer;transition:background-color var(--motion-fast) var(--ease-standard)}.so-switch>span{position:absolute;top:.125rem;left:.125rem;width:1rem;height:1rem;border-radius:var(--radius-full);background:var(--color-switch-knob);opacity:.55;transition:transform var(--motion-fast) var(--ease-standard)}.so-switch[aria-checked=true]{background:var(--color-brand)}.so-switch[aria-checked=true]>span{transform:translate(1rem);opacity:1}.so-switch:disabled{opacity:.5;cursor:default}.so-switch:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.so-energy{margin-bottom:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(10rem,1fr))}.so-energy .so-price-tile-k{display:inline-flex;align-items:center;gap:.375rem}.so-energy .so-price-tile[data-warn]{border-color:var(--color-status-warning-border);background:var(--color-status-warning-bg)}.so-energy .so-price-tile[data-warn] .so-price-tile-s{color:var(--color-status-warning-fg);font-weight:600}.so-device-sub{margin:var(--space-5) 0 var(--space-2);font-size:var(--text-xs);font-weight:600;color:var(--color-text-subtle);text-transform:uppercase;letter-spacing:.04em}.so-device-sub:first-child{margin-top:0}.so-pin,.so-secret-card{background:linear-gradient(160deg,var(--color-brand),var(--color-surface) 60%)}@supports (color: color-mix(in lab,red,red)){.so-pin,.so-secret-card{background:linear-gradient(160deg,color-mix(in oklab,var(--color-brand) 12%,var(--color-surface)),var(--color-surface) 60%)}}.so-secret-card:not(.so-card){padding:var(--space-4);border-radius:var(--radius-md);border:1px solid var(--color-border)}.so-pin-code,.so-secret-code{margin-top:var(--space-1);font-family:var(--font-mono-stack);font-size:2.125rem;font-weight:600;letter-spacing:.14em;line-height:2.5rem;color:var(--color-brand-text)}.so-scenes{display:flex;flex-wrap:wrap;gap:var(--space-2)}.so-scene{flex:1 1 7.5rem;display:flex;flex-direction:column;align-items:center;gap:var(--space-1);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-inset);font-size:.8125rem;font-weight:600;color:var(--color-text);cursor:pointer}.so-scene>.mat-icon{width:1.375rem;height:1.375rem;color:var(--color-text-muted)}.so-scene[aria-pressed=true]{border-color:var(--color-brand);color:var(--color-brand-text)}.so-scene[aria-pressed=true]>.mat-icon{color:var(--color-brand)}.so-scene{transition:border-color var(--motion-fast) var(--ease-standard),background-color var(--motion-fast) var(--ease-standard),color var(--motion-fast) var(--ease-standard)}.so-scene:hover:not(:disabled){border-color:var(--color-border-hover)}.so-scene:disabled{cursor:default}.so-scene[data-fx=running]>.mat-icon{animation:so-spin .9s linear infinite;color:var(--color-brand)}.so-scene[data-fx=done]{border-color:var(--color-brand);color:var(--color-brand-text);background:var(--color-brand-soft);animation:so-scene-flash .9s var(--ease-standard) 1}.so-scene[data-fx=done]>.mat-icon{color:var(--color-brand)}.so-scene[data-fx=error],.so-scene[data-fx=fail]{border-color:var(--color-status-danger-border);color:var(--color-status-danger-fg);background:var(--color-status-danger-bg)}.so-scene[data-fx=error]>.mat-icon,.so-scene[data-fx=fail]>.mat-icon{color:var(--color-status-danger-fg)}.so-scene[data-fx=timeout]{border-color:var(--color-status-warning-border);color:var(--color-status-warning-fg);background:var(--color-status-warning-bg)}.so-scene[data-fx=timeout]>.mat-icon{color:var(--color-status-warning-fg)}@keyframes so-spin{to{transform:rotate(360deg)}}@keyframes so-scene-flash{0%{box-shadow:0 0 color-mix(in oklab,var(--color-brand) 55%,transparent)}to{box-shadow:0 0 0 10px transparent}}@media(prefers-reduced-motion:reduce){.so-scene[data-fx],.so-scene[data-fx]>.mat-icon{animation:none}}.so-stat-cells{display:grid;gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(7.5rem,1fr))}.so-stat-cell{display:flex;flex-direction:column;gap:.125rem;min-width:0;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--color-surface-sunken)}.so-stat-cell>span{font-size:.6875rem;color:var(--color-text-muted)}.so-stat-cell>strong{font-family:var(--font-mono-stack);font-size:1.125rem;font-weight:600;line-height:1.5rem}.so-stat-cell>small{font-size:.6875rem;color:var(--color-text-subtle)}.so-stat-cell[data-status=success]>strong{color:var(--color-status-success-fg)}.so-stat-cell[data-status=warning]>strong{color:var(--color-status-warning-fg)}.so-stat-cell[data-status=danger]>strong{color:var(--color-status-danger-fg)}.so-chart{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto;column-gap:var(--space-2);touch-action:pan-y}.so-chart-y{position:relative;grid-row:1;min-width:2rem;font-family:var(--font-mono-stack);font-size:.6875rem;color:var(--color-chart-axis)}.so-chart-y>span{position:absolute;right:0;transform:translateY(50%);white-space:nowrap}.so-chart-plot{position:relative;grid-row:1;grid-column:2;min-height:0}.so-chart-plot>svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.so-chart-x{position:relative;grid-row:2;grid-column:2;height:1.25rem;font-size:.6875rem;color:var(--color-chart-axis)}.so-chart-x>span{position:absolute;top:.25rem;transform:translate(-50%);white-space:nowrap}.so-chart-x>span[data-edge=start]{transform:none}.so-chart-x>span[data-edge=end]{transform:translate(-100%)}.so-chart-grid{stroke:var(--color-chart-grid);stroke-width:1;vector-effect:non-scaling-stroke}.so-chart-line{stroke-width:2.5;vector-effect:non-scaling-stroke;stroke-linejoin:round;stroke-linecap:round}.so-chart-line[data-tone="1"]{stroke:var(--color-chart-1)}.so-chart-line[data-tone="2"]{stroke:var(--color-chart-2);stroke-width:2;stroke-opacity:.75}.so-chart-stop[data-tone="1"]{stop-color:var(--color-chart-1)}.so-chart-stop[data-tone="2"]{stop-color:var(--color-chart-2)}.so-chart-cursor{stroke:var(--color-chart-axis);stroke-width:1;stroke-dasharray:4 4;vector-effect:non-scaling-stroke}.so-chart-dot{position:absolute;width:.875rem;height:.875rem;border-radius:var(--radius-full);border:3px solid var(--color-canvas);transform:translate(-50%,-50%);pointer-events:none}.so-chart-dot[data-tone="1"],.so-chart-legend i[data-tone="1"],.so-chart-tip i[data-tone="1"]{background:var(--color-chart-1)}.so-chart-dot[data-tone="2"],.so-chart-legend i[data-tone="2"],.so-chart-tip i[data-tone="2"]{background:var(--color-chart-2)}.so-chart-tip{position:absolute;top:0;z-index:2;display:flex;flex-direction:column;gap:.125rem;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-chart-tooltip);box-shadow:var(--shadow-popover);font-size:var(--text-xs);white-space:nowrap;pointer-events:none}.so-chart-tip[data-side=right]{margin-left:var(--space-3)}.so-chart-tip[data-side=left]{transform:translate(calc(-100% - var(--space-3)))}.so-chart-tip>span{display:inline-flex;align-items:center;gap:.375rem;color:var(--color-text-muted)}.so-chart-legend{display:flex;flex-wrap:wrap;gap:var(--space-4);margin-bottom:var(--space-3);font-size:var(--text-xs);color:var(--color-text-muted)}.so-chart-legend>span{display:inline-flex;align-items:center;gap:.375rem}.so-chart-legend i,.so-chart-tip i{display:inline-block;width:.625rem;height:.625rem;border-radius:.1875rem}.so-chart-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);min-height:10rem;padding:var(--space-4);border:1px dashed var(--color-border);border-radius:var(--radius-md);text-align:center;font-size:var(--text-sm);color:var(--color-text-muted)}.so-unit-minis{display:grid;gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(5.5rem,1fr))}.so-unit-mini{display:flex;flex-direction:column;gap:.125rem;min-width:0;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--unit-occ-vacant);color:var(--color-text);text-align:left;transition:border-color var(--motion-fast) var(--ease-standard)}.so-unit-mini:hover{border-color:var(--color-border-hover)}.so-unit-mini:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.so-unit-mini>strong{font-family:var(--font-mono-stack);font-size:var(--text-sm);font-weight:600}.so-unit-mini>span{font-size:.6875rem;color:var(--color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.so-unit-mini[data-occupancy=reserved]{background:var(--unit-occ-reserved);border-color:var(--unit-occ-reserved-border)}.so-unit-mini[data-occupancy=occupied]{background:var(--unit-occ-occupied);border-color:var(--unit-occ-occupied-border)}.so-unit-mini[data-occupancy=overstay]{background:var(--unit-occ-overstay);border-color:var(--unit-occ-overstay-border)}.so-unit-mini[data-problem]{border-color:var(--color-status-warning-fg)}.so-event-icon{flex:none;width:1.875rem;height:1.875rem;border-radius:var(--radius-sm);display:inline-flex;align-items:center;justify-content:center;background:var(--color-status-neutral-bg);color:var(--color-status-neutral-fg)}.so-event-icon[data-status=success]{background:var(--color-status-success-bg);color:var(--color-status-success-fg)}.so-event-icon[data-status=warning]{background:var(--color-status-warning-bg);color:var(--color-status-warning-fg)}.so-event-icon[data-status=danger]{background:var(--color-status-danger-bg);color:var(--color-status-danger-fg)}.so-event-icon[data-status=info]{background:var(--color-status-info-bg);color:var(--color-status-info-fg)}.so-signals{display:flex;flex-direction:column;gap:var(--space-2)}.so-signal{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);text-align:left;color:var(--color-text-muted);transition:border-color var(--motion-fast) var(--ease-standard),background-color var(--motion-fast) var(--ease-standard)}button.so-signal:not(:disabled){cursor:pointer}button.so-signal:not(:disabled):hover,a.so-signal:hover{border-color:currentColor}button.so-signal:disabled{cursor:default}.so-signal-icon{flex:none;display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:var(--radius-md);background:var(--color-surface-sunken);color:var(--color-text-subtle)}.so-signal-text{display:flex;flex-direction:column;flex:1 1 auto;min-width:0}.so-signal-text b{font-size:var(--text-sm);font-weight:600}.so-signal-text small{font-size:var(--text-xs)}.so-signal[data-status]{color:var(--color-text)}.so-signal[data-status=warning]{border-color:var(--color-status-warning-border);background:var(--color-status-warning-bg)}.so-signal[data-status=warning] .so-signal-icon{background:var(--color-status-warning-fg);color:var(--color-surface)}.so-signal[data-status=info]{border-color:var(--color-status-info-border);background:var(--color-status-info-bg)}.so-signal[data-status=info] .so-signal-icon{background:var(--color-status-info-fg);color:var(--color-surface)}.so-signal[data-status=success]{border-color:var(--color-status-success-border);background:var(--color-status-success-bg)}.so-signal[data-status=success] .so-signal-icon{background:var(--color-status-success-fg);color:var(--color-surface)}.so-signal[data-status=danger]{border-color:var(--color-status-danger-border);background:var(--color-status-danger-bg)}.so-signal[data-status=danger] .so-signal-icon{background:var(--color-status-danger-fg);color:var(--color-surface)}.so-stay-row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) 0;border-top:1px solid var(--color-border);font-size:var(--text-sm)}.so-stay-row:first-child{border-top:0;padding-top:0}.so-stay-row>div{display:flex;flex-direction:column;flex:1 1 auto;min-width:0}.so-stay-row small{font-size:var(--text-xs);color:var(--color-text-muted)}@media(min-width:1280px){.so-form-aside .so-fieldset{display:grid;grid-template-columns:14rem minmax(0,1fr);gap:var(--space-8)}.so-form-aside .so-fieldset>header{margin-bottom:0}}.so-savebar{position:sticky;bottom:0;z-index:2;display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--space-3);margin:var(--space-2) calc(-1 * var(--card-padding)) calc(-1 * var(--card-padding));padding:var(--space-3) var(--card-padding);border-top:1px solid var(--color-border);border-radius:0 0 var(--card-radius) var(--card-radius);background:var(--card-bg);font-size:var(--text-sm);color:var(--color-text-muted)}.so-savebar>span{margin-right:auto;display:inline-flex;align-items:center;gap:.375rem}.so-savebar[data-dirty]>span{color:var(--color-status-warning-fg)}.so-alloc-input{width:9rem;height:2rem;padding-inline:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);font-family:var(--font-mono-stack);font-variant-numeric:tabular-nums;text-align:right;color:var(--color-text)}.so-alloc-input:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:1px;border-color:var(--color-brand)}.so-hist-chev{margin-right:var(--space-1);vertical-align:-.1875rem;color:var(--color-text-subtle);transition:transform var(--motion-fast) var(--ease-standard)}tr[aria-expanded=true] .so-hist-chev{transform:rotate(90deg)}.so-table tr.so-hist-detail td,.so-table tr.so-hist-detail:hover td{height:auto;padding-block:var(--space-2) var(--space-4);background:var(--color-surface-sunken)}.so-diff{width:100%;border-collapse:separate;border-spacing:0;font-size:var(--text-sm);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;background:var(--color-surface)}.so-diff th{padding:var(--space-2) var(--space-3);text-align:left;font-size:var(--text-xs);font-weight:600;color:var(--color-text-muted);background:var(--color-surface-sunken);border-bottom:1px solid var(--color-border)}.so-diff td{padding:var(--space-2) var(--space-3);vertical-align:top;overflow-wrap:anywhere;border-bottom:1px solid var(--color-border)}.so-diff tr:last-child td{border-bottom:0}.so-diff td:first-child{width:28%;color:var(--color-text-muted)}.so-diff-old{color:var(--color-text-muted);text-decoration:line-through;text-decoration-color:var(--color-text-subtle)}.so-rpt-scroll{margin:0 calc(-1 * var(--card-padding)) calc(-1 * var(--card-padding));overflow-x:auto}.so-rpt-people th,.so-rpt-people td{padding-inline:var(--space-2)}.so-rpt-people th:first-child,.so-rpt-people td:first-child{position:sticky;left:0;z-index:1;padding-left:var(--card-padding);background:var(--color-surface)}.so-rpt-people th:first-child{background:var(--table-header-bg)}.so-rpt-people tfoot td:first-child{background:var(--color-surface-sunken)}.so-rpt-people tr:hover td:first-child{background:var(--table-row-hover)}.so-rpt-people th[data-we],.so-rpt-people td[data-we]{background:var(--color-surface-sunken)}@supports (color: color-mix(in lab,red,red)){.so-rpt-people th[data-we],.so-rpt-people td[data-we]{background:color-mix(in oklab,var(--color-surface-sunken) 60%,transparent)}}.so-rpt-people th{line-height:1.1}.so-rpt-people td:last-child,.so-rpt-people th:last-child{padding-right:var(--card-padding)}.so-rpt-bar{height:.375rem;border-radius:999px;background:var(--color-surface-sunken);overflow:hidden}.so-rpt-bar>span{display:block;height:100%;border-radius:inherit;background:var(--color-brand)}.so-rpt-occ{display:flex;align-items:center;gap:var(--space-2);white-space:nowrap;font-variant-numeric:tabular-nums}.so-rpt-occ>.so-rpt-bar{flex:0 0 5rem}.so-rpt-dow{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:var(--space-2)}.so-rpt-dow>div{display:flex;flex-direction:column;align-items:center;gap:var(--space-1)}.so-rpt-col{position:relative;width:100%;max-width:2.5rem;height:8rem;border-radius:var(--radius-sm);background:var(--color-surface-sunken)}.so-rpt-col>span{position:absolute;inset:auto 0 0;border-radius:inherit;background:var(--color-brand);opacity:.75}.so-rpt-col>span[data-weekend]{opacity:1}.so-refill-lines{display:flex;flex-direction:column;gap:.25rem;padding-left:var(--space-6)}.so-refill-line{display:flex;align-items:center;gap:var(--space-3);font-size:var(--text-sm)}.so-guest{min-height:100dvh;margin-inline:auto;display:flex;width:100%;max-width:30rem;flex-direction:column;gap:var(--space-3);padding:var(--space-4);background:var(--color-canvas);font-size:var(--text-base)}.so-guest-head{display:flex;align-items:center;gap:var(--space-3);padding-block:var(--space-2)}.so-guest-brand{flex:none;display:flex;width:2.5rem;height:2.5rem;align-items:center;justify-content:center;border-radius:var(--radius-md);background:var(--color-brand);color:var(--color-brand-fg);font-weight:600}.so-guest-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;padding:3px;border-radius:var(--radius-full);background:var(--segmented-track)}.so-guest-tabs>button{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.375rem;height:2.5rem;border-radius:var(--radius-full);font-size:var(--text-sm);color:var(--color-text-muted)}.so-guest-tabs>button[aria-pressed=true]{background:var(--segmented-active-bg);color:var(--segmented-active-fg);font-weight:600}.so-guest-badge{position:absolute;top:.25rem;right:.5rem;min-width:1rem;height:1rem;padding-inline:.25rem;border-radius:var(--radius-full);background:var(--color-status-danger-solid);color:var(--color-status-danger-on);font-family:var(--font-mono-stack);font-size:.625rem;line-height:1rem}.so-guest-card{padding:var(--space-4);border-radius:var(--radius-lg);background:var(--color-surface-raised);border:1px solid var(--color-border)}.so-guest-code{text-align:center}.so-guest-code-v{margin-block:var(--space-2);font-family:var(--font-mono-stack);font-size:2.25rem;font-weight:700;letter-spacing:.25em;color:var(--color-brand-text)}.so-guest-group{display:flex;flex-direction:column;gap:var(--space-2)}.so-guest-group-h{display:flex;align-items:center;gap:.375rem;margin-top:var(--space-2);font-size:var(--text-sm);font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted)}.so-guest-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-surface-raised);border:1px solid var(--color-border)}.so-guest-item.is-picked{border-color:var(--color-brand);background:var(--color-brand-soft)}.so-guest-thumb{flex:none;width:3.5rem;height:3.5rem;border-radius:var(--radius-md);object-fit:cover}.so-guest-thumb-empty{display:flex;align-items:center;justify-content:center;background:var(--color-surface-sunken);color:var(--color-text-subtle)}.so-guest-cta{position:sticky;bottom:var(--space-3);display:flex;width:100%;align-items:center;justify-content:center;gap:var(--space-2);height:3rem;border-radius:var(--radius-full);background:var(--color-brand);color:var(--color-brand-fg);font-weight:600;box-shadow:var(--shadow-popover)}.so-guest-cta:disabled{opacity:.6}.so-pager{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) var(--space-4);border-top:1px solid var(--color-border);font-size:var(--text-sm);color:var(--color-text-muted)}.so-pager-ctl{display:flex;align-items:center;gap:var(--space-1)}.so-pager-page{min-width:4rem;text-align:center;font-family:var(--font-mono-stack);font-size:var(--text-xs);color:var(--color-text)}.so-segmented[data-size=sm]{height:1.75rem;padding:2px;font-size:var(--text-xs)}.so-segmented[data-size=sm]>button{padding-inline:var(--space-2)}.so-pager-size{margin-right:var(--space-2)}.so-drag-handle{display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;border-radius:var(--radius-sm);color:var(--color-text-subtle);cursor:grab}.so-drag-handle:hover{background:var(--color-surface-sunken);color:var(--color-text)}.so-drag-handle.is-off{cursor:not-allowed;opacity:.4}.so-drag-handle>.mat-icon{width:1rem;height:1rem}.cdk-drag-preview{display:table;box-sizing:border-box;border-radius:var(--radius-md);background:var(--color-surface-raised);box-shadow:var(--shadow-dialog)}.cdk-drag-placeholder{opacity:.3}.cdk-drag-animating,.cdk-drop-list-dragging tr:not(.cdk-drag-placeholder){transition:transform var(--motion-base) var(--ease-standard)}.so-product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(13.5rem,1fr));gap:var(--space-4)}.so-product-card{position:relative;display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);transition:border-color var(--motion-fast, .12s),box-shadow var(--motion-fast, .12s)}.so-product-card:hover{border-color:var(--color-border-strong);box-shadow:var(--shadow-card)}.so-product-card[data-off] .so-product-media img,.so-product-card[data-off] .so-product-ph{filter:grayscale(1);opacity:.55}.so-product-card.cdk-drag-preview{display:flex}.cdk-drop-list-dragging .so-product-card:not(.cdk-drag-placeholder){transition:transform var(--motion-base) var(--ease-standard)}.so-product-media{position:relative;display:block;width:100%;aspect-ratio:4 / 3;padding:0;border:0;border-bottom:1px solid var(--color-border);background:var(--color-surface-sunken);cursor:pointer}.so-product-media:disabled{cursor:default}.so-product-media>img{width:100%;height:100%;object-fit:cover;display:block}.so-product-ph{display:flex;width:100%;height:100%;align-items:center;justify-content:center;color:var(--color-text-subtle)}.so-product-kind{position:absolute;left:var(--space-2);top:var(--space-2);box-shadow:0 0 0 2px var(--color-surface)}.so-product-off{position:absolute;left:var(--space-2);bottom:var(--space-2);padding:.125rem var(--space-2);border-radius:999px;font-size:var(--text-xs);font-weight:600;background:var(--color-surface);color:var(--color-text-muted);border:1px solid var(--color-border)}.so-product-drag{position:absolute;right:var(--space-2);top:var(--space-2);background:var(--color-surface);box-shadow:0 0 0 1px var(--color-border)}.so-product-body{display:flex;flex:1;flex-direction:column;gap:var(--space-1);padding:var(--space-3) var(--space-3) var(--space-2)}.so-product-name{font-size:var(--text-sm);font-weight:600;line-height:1.25rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.so-product-foot{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-2);margin-top:auto;padding-top:var(--space-2)}.so-cat-cover{display:grid;width:100%;height:100%;gap:2px;background:var(--color-border);grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}.so-cat-cover>img{width:100%;height:100%;min-height:0;object-fit:cover;display:block}.so-cat-cover[data-n="1"]{grid-template-columns:1fr;grid-template-rows:1fr}.so-cat-cover[data-n="2"]{grid-template-rows:1fr}.so-cat-cover[data-n="3"]>img:first-child{grid-row:span 2}.so-product-empty{grid-column:1 / -1}.so-product-thumb{width:2rem;height:2rem;border-radius:var(--radius-sm);object-fit:cover;border:1px solid var(--color-border)}.so-pricing-table .mat-mdc-form-field{margin:0}.so-pricing-table th.so-pricing-site{min-width:11rem}.so-pricing-cell[data-off] .mat-mdc-form-field{opacity:.45}.so-pricing-cell[data-off] input{text-decoration:line-through}.so-notice-backdrop{position:fixed;inset:0;z-index:70;display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:#00000073;animation:so-fade-in var(--motion-base) var(--ease-standard)}.so-notice{--n-bg: var(--color-status-neutral-bg);--n-fg: var(--color-status-neutral-fg);--n-bd: var(--color-status-neutral-border);display:flex;flex-direction:column;align-items:center;gap:var(--space-2);width:100%;max-width:26rem;padding:var(--space-6) var(--space-6) var(--space-5);text-align:center;border-radius:var(--radius-xl);background:var(--color-surface-raised);border-top:4px solid var(--n-fg);box-shadow:var(--shadow-dialog);animation:so-pop-in var(--motion-base) var(--ease-standard)}.so-notice[data-status=success],.so-toast[data-status=success]{--n-bg: var(--color-status-success-bg);--n-fg: var(--color-status-success-fg);--n-bd: var(--color-status-success-border)}.so-notice[data-status=info],.so-toast[data-status=info]{--n-bg: var(--color-status-info-bg);--n-fg: var(--color-status-info-fg);--n-bd: var(--color-status-info-border)}.so-notice[data-status=warning],.so-toast[data-status=warning]{--n-bg: var(--color-status-warning-bg);--n-fg: var(--color-status-warning-fg);--n-bd: var(--color-status-warning-border)}.so-notice[data-status=danger],.so-toast[data-status=danger]{--n-bg: var(--color-status-danger-bg);--n-fg: var(--color-status-danger-fg);--n-bd: var(--color-status-danger-border)}.so-notice-icon{display:inline-flex;align-items:center;justify-content:center;width:3rem;height:3rem;border-radius:var(--radius-full);background:var(--n-bg);color:var(--n-fg)}.so-notice-icon>.mat-icon{width:1.5rem;height:1.5rem}.so-notice-title{margin-top:var(--space-1);font-size:var(--text-lg);font-weight:600;color:var(--color-text)}.so-notice-msg{font-size:var(--text-sm);line-height:1.5;color:var(--color-text);white-space:pre-line;overflow-wrap:anywhere}.so-notice-detail{width:100%;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--color-surface-sunken);font-size:var(--text-xs);line-height:1.5;color:var(--color-text-muted);text-align:left;overflow-wrap:anywhere}.so-notice-ok{margin-top:var(--space-3);min-width:8rem}.so-toast-stack{position:fixed;top:1rem;right:1rem;z-index:80;display:flex;flex-direction:column;gap:var(--space-2);width:22rem;max-width:calc(100vw - 2rem);pointer-events:none}.so-toast{--n-bg: var(--color-status-neutral-bg);--n-fg: var(--color-status-neutral-fg);--n-bd: var(--color-status-neutral-border);pointer-events:auto;display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-surface-raised);border:1px solid var(--n-bd);border-left:4px solid var(--n-fg);box-shadow:var(--shadow-popover);animation:so-pop-in var(--motion-base) var(--ease-standard)}.so-toast-icon{flex:none;display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;border-radius:var(--radius-full);background:var(--n-bg);color:var(--n-fg)}.so-toast-icon>.mat-icon{width:.875rem;height:.875rem}.so-toast-text{flex:1 1 auto;min-width:0;padding-top:.125rem;font-size:var(--text-sm);line-height:1.4;color:var(--color-text);overflow-wrap:anywhere}.so-toast-x{flex:none;display:inline-flex;padding:.125rem;border:0;background:none;color:var(--color-text-subtle);cursor:pointer;border-radius:var(--radius-sm)}.so-toast-x:hover{color:var(--color-text);background:var(--color-surface-sunken)}.so-toast-x>.mat-icon{width:1rem;height:1rem}@keyframes so-fade-in{0%{opacity:0}}.so-dialog-backdrop{background:#0000;transition:background-color var(--motion-base) var(--ease-standard)}.so-dialog-backdrop.is-open{background:#0006}.so-dialog-backdrop>.so-dialog{opacity:0;transform:translateY(.75rem) scale(.98);transition:opacity var(--motion-base) var(--ease-standard),transform var(--motion-base) var(--ease-standard)}.so-dialog-backdrop.is-open>.so-dialog{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){.so-dialog-backdrop,.so-dialog-backdrop>.so-dialog{transition:none}}.so-dialog{max-height:90vh;max-width:var(--dialog-w-md);background:var(--color-surface-raised);border-radius:var(--radius-xl);box-shadow:var(--shadow-dialog)}.so-dialog[data-size=sm]{max-width:var(--dialog-w-sm)}.so-dialog[data-size=lg]{max-width:var(--dialog-w-lg)}.so-dialog[data-size=xl]{max-width:var(--dialog-w-xl)}.so-dialog[data-nav],.so-dialog[data-fixed]{height:80vh}.so-dialog-nav{width:var(--dialog-nav-w);padding:var(--space-3) var(--space-3) var(--space-3) var(--space-5);border-right:1px solid var(--color-border);background:var(--color-surface-sunken);overflow-y:auto}.so-dialog-nav-item{display:flex;align-items:center;gap:var(--space-2);width:100%;height:2.25rem;padding:0 var(--space-2);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--color-text-muted);text-align:left;transition:background-color var(--motion-fast) var(--ease-standard),color var(--motion-fast) var(--ease-standard)}.so-dialog-nav-item:hover{background:var(--color-surface-raised);color:var(--color-text)}.so-dialog-nav-item.is-active{background:var(--color-brand-soft);color:var(--color-brand-text);font-weight:600}.so-dialog-nav-no{display:inline-flex;align-items:center;justify-content:center;flex:none;width:1.375rem;height:1.375rem;border-radius:999px;border:1px solid var(--color-border);font-size:var(--text-xs);font-weight:600;background:var(--color-surface-raised)}.so-dialog-nav-item.is-active .so-dialog-nav-no{background:var(--color-brand);border-color:var(--color-brand);color:var(--color-brand-fg)}.so-menu-wide{min-width:16rem}.so-fieldset{padding-block:var(--space-4)}so-fieldset+so-fieldset>.so-fieldset,.so-fieldset+.so-fieldset{border-top:1px solid var(--color-border)}.so-form-grid{display:grid;grid-template-columns:1fr;column-gap:var(--space-4);row-gap:var(--space-2)}@media(min-width:640px){.so-form-grid[data-cols="2"]{grid-template-columns:repeat(2,minmax(0,1fr))}.so-form-grid[data-cols="3"]{grid-template-columns:repeat(3,minmax(0,1fr))}}.so-form-grid>.span-2{grid-column:span 2 / span 2}.so-form-grid>.span-3{grid-column:1 / -1}@media(max-width:639px){.so-form-grid>.span-2{grid-column:auto}}.so-form-grid>mat-form-field{width:100%}.so-tabs{display:flex;gap:var(--space-1);box-shadow:inset 0 -1px 0 var(--color-border);overflow-x:auto;overflow-y:hidden;scrollbar-width:none}.so-tabs>button{height:2.75rem;padding:0 var(--space-3);border-bottom:2px solid transparent;color:var(--color-text-muted);font-size:var(--text-base);white-space:nowrap}.so-tabs>button:hover{color:var(--color-text)}.so-tabs>button[aria-pressed=true]{color:var(--color-text);font-weight:600;border-bottom-color:var(--color-brand)}.so-segmented .so-tab-count{margin-left:.375rem;font-family:var(--font-mono-stack);font-size:.625rem;line-height:1;padding:.125rem .375rem;border-radius:var(--radius-full);background:var(--color-brand);color:var(--color-brand-fg)}.so-segmented>button[aria-pressed=true] .so-tab-count{background:var(--color-brand-fg);color:var(--color-brand-text)}.so-segmented>button>.mat-icon{margin-right:.25rem}.so-tabs .so-tab-count{margin-left:var(--space-2);font-family:var(--font-mono-stack);font-size:.6875rem;color:var(--color-text-muted);background:var(--color-surface-sunken);border-radius:var(--radius-full);padding:.125rem .4375rem}.mat-sidenav-container{--mat-sidenav-content-background-color: var(--color-canvas);--mat-sidenav-container-background-color: var(--color-canvas);--mat-sidenav-sidenav-background-color: var(--color-surface)}.so-card{background:var(--card-bg);border-radius:var(--card-radius);border:1px solid var(--card-border);box-shadow:var(--card-shadow);padding:var(--card-padding)}.so-card[data-nested]{box-shadow:none}.so-card[data-status=warning]{border-color:var(--color-status-warning-border);background:var(--color-status-warning-bg)}.so-table-card{padding:0;overflow-x:auto;container-type:inline-size}@media(min-width:1024px){.so-table-card{overflow:hidden}}.so-card:not(.so-table-card)>.so-table{width:calc(100% + 2 * var(--card-padding));margin-inline:calc(-1 * var(--card-padding));margin-bottom:calc(-1 * var(--card-padding))}.so-card:not(.so-table-card):has(>.so-table:last-child){overflow:hidden}.so-chip{height:var(--chip-height);padding-inline:var(--chip-px);border-radius:var(--chip-radius);display:inline-flex;align-items:center;gap:.375rem;font-size:var(--text-xs);font-weight:600;border:1px solid transparent;white-space:nowrap}.so-chip>.mat-icon{width:.875rem;height:.875rem}.so-kpi{display:grid;grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:var(--space-3)}.so-kpi[data-dense]{grid-template-columns:repeat(auto-fit,minmax(10rem,1fr))}.so-kpi>*{box-sizing:border-box;padding:var(--space-4) var(--space-5);border-radius:var(--card-radius);background:var(--card-bg);border:1px solid var(--card-border);display:flex;flex-direction:column;gap:var(--space-2)}.so-kpi>.so-kpi-button{text-align:left;cursor:pointer;transition:border-color var(--motion-fast) var(--ease-standard),box-shadow var(--motion-fast) var(--ease-standard)}.so-kpi>.so-kpi-button:hover{border-color:var(--color-brand)}.so-kpi>.so-kpi-button[aria-pressed=true]{border-color:var(--color-brand);box-shadow:inset 0 0 0 1px var(--color-brand);background:var(--color-brand-soft)}.so-kpi-label{display:flex;align-items:center;justify-content:space-between;font-size:var(--text-sm);color:var(--color-text-muted);font-weight:500}.so-kpi-icon{width:1.75rem;height:1.75rem;border-radius:var(--radius-sm);display:inline-flex;align-items:center;justify-content:center;background:var(--color-brand-soft);color:var(--color-brand-text)}.so-kpi-icon[data-status=success]{background:var(--color-status-success-bg);color:var(--color-status-success-fg)}.so-kpi-icon[data-status=warning]{background:var(--color-status-warning-bg);color:var(--color-status-warning-fg)}.so-kpi-icon[data-status=danger]{background:var(--color-status-danger-bg);color:var(--color-status-danger-fg)}.so-kpi-icon[data-status=neutral]{background:var(--color-status-neutral-bg);color:var(--color-status-neutral-fg)}.so-kpi-value{display:flex;align-items:baseline;gap:var(--space-2)}.so-kpi-value>strong{font-family:var(--font-mono-stack);font-size:1.75rem;font-weight:500;letter-spacing:-.02em;line-height:1}.so-kpi-value>span{font-size:var(--text-xs);color:var(--color-text-muted)}.so-kpi[data-layout=side]>*{flex-direction:row;align-items:center;gap:var(--space-3);padding:var(--space-4)}.so-kpi.so-kpi-6[data-layout=side]{grid-template-columns:repeat(3,minmax(0,1fr))}@media(min-width:1536px){.so-kpi.so-kpi-6[data-layout=side]{grid-template-columns:repeat(6,minmax(0,1fr))}}@media(max-width:640px){.so-kpi.so-kpi-6[data-layout=side]{grid-template-columns:repeat(2,minmax(0,1fr))}}.so-kpi[data-layout=side] .so-kpi-icon{flex:none;width:var(--kpi-icon-size);height:var(--kpi-icon-size);border-radius:var(--kpi-icon-radius)}.so-kpi[data-layout=side] .so-kpi-icon>.mat-icon{width:1.25rem;height:1.25rem}.so-kpi-side-text{display:flex;flex-direction:column;min-width:0}.so-kpi-side-text>span:first-child{font-size:var(--text-xs);color:var(--color-text-muted);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.so-kpi-side-text>strong{font-family:var(--font-mono-stack);font-size:1.5rem;font-weight:600;line-height:2rem;letter-spacing:-.02em}.so-kpi-side-text>small{font-size:.6875rem;color:var(--color-text-subtle)}.so-code-tile{width:2.5rem;height:2.5rem;border-radius:var(--radius-md);background:var(--color-brand-soft);color:var(--color-brand-text);display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-mono-stack);font-size:var(--text-xs);font-weight:500;flex:0 0 auto}.so-code-tile[data-muted]{background:var(--color-surface-sunken);color:var(--color-text-muted)}.so-chip[data-status=success]{background:var(--color-status-success-bg);color:var(--color-status-success-fg);border-color:var(--color-status-success-border)}.so-chip[data-status=warning]{background:var(--color-status-warning-bg);color:var(--color-status-warning-fg);border-color:var(--color-status-warning-border)}.so-chip[data-status=danger]{background:var(--color-status-danger-bg);color:var(--color-status-danger-fg);border-color:var(--color-status-danger-border)}.so-chip[data-status=info]{background:var(--color-status-info-bg);color:var(--color-status-info-fg);border-color:var(--color-status-info-border)}.so-chip[data-status=neutral]{background:var(--color-status-neutral-bg);color:var(--color-status-neutral-fg);border-color:var(--color-status-neutral-border)}.so-chip[data-status=brand]{background:var(--color-brand-soft);color:var(--color-brand-text);border-color:transparent}.so-chip[data-status=plain]{background:var(--color-surface);color:var(--color-text);border-color:var(--color-border)}.so-chip[data-strong]{box-shadow:inset 0 0 0 1px currentColor}.so-mode-icon{display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;border-radius:var(--radius-sm);border:1px solid transparent}.so-mode-icon[data-mode=short],.so-chip[data-mode=short]{background:var(--color-mode-short-bg);color:var(--color-mode-short-fg);border-color:transparent}.so-mode-icon[data-mode=monthly],.so-chip[data-mode=monthly]{background:var(--color-mode-monthly-bg);color:var(--color-mode-monthly-fg);border-color:transparent}.so-mode-icon[data-status=neutral]{background:var(--color-status-neutral-bg);color:var(--color-status-neutral-fg)}.so-mode-icon[data-strong]{border-color:currentColor}.so-amenity-group{display:grid;grid-template-columns:repeat(auto-fill,minmax(11rem,1fr));gap:0 var(--space-3)}.so-amenity-group .mat-mdc-checkbox{--mat-checkbox-label-text-size: var(--text-sm)}.so-amenity-section+.so-amenity-section{margin-top:var(--space-4)}.so-fieldset h3[data-no]:before{content:attr(data-no);display:inline-flex;align-items:center;justify-content:center;width:1.375rem;height:1.375rem;margin-right:var(--space-2);border-radius:999px;background:var(--color-brand);color:var(--color-brand-fg);font-size:var(--text-xs);font-weight:600;vertical-align:.125rem}.so-tag-input{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1);min-height:var(--control-height);padding:.25rem var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);cursor:text}.so-tag-input:focus-within{box-shadow:inset 0 0 0 1px var(--color-brand);border-color:var(--color-brand)}.so-tag-input-field{flex:1 1 8rem;min-width:6rem;height:1.75rem;background:transparent;outline:none;font-size:var(--text-sm)}.so-legend{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:var(--card-radius);background:var(--color-surface-sunken);border:1px dashed var(--color-border);font-size:var(--text-xs);color:var(--color-text-muted)}.so-legend-title{font-weight:600;color:var(--color-text);font-size:var(--text-sm)}.so-legend-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-5)}.so-legend-row>.so-legend-label{min-width:9rem;font-weight:500;color:var(--color-text)}.so-legend-row>span:not(.so-legend-label){display:inline-flex;align-items:center;gap:var(--space-2)}.so-tag-input>.so-chip{background:var(--color-brand-soft);color:var(--color-brand-text);border-color:transparent;font-weight:500}.so-chip-x{display:inline-flex;margin-left:.125rem;margin-right:-.25rem;padding:.125rem;border-radius:999px;color:var(--color-brand-text);opacity:.7;transition:background-color var(--motion-fast) var(--ease-standard),color var(--motion-fast) var(--ease-standard),opacity var(--motion-fast) var(--ease-standard)}.so-chip-x:hover{opacity:1;background:var(--color-status-danger-bg);color:var(--color-status-danger-fg)}.so-table{width:100%;border-collapse:separate;border-spacing:0;font-size:var(--text-base)}.so-table th{height:var(--table-header-height);padding-inline:var(--table-cell-px);background:var(--table-header-bg);color:var(--table-header-fg);font-size:var(--text-xs);font-weight:600;text-align:left;border-bottom:1px solid var(--table-border)}.so-table td{height:var(--table-row-height);padding-inline:var(--table-cell-px);border-bottom:1px solid var(--table-border)}.so-table tr:hover td{background:var(--table-row-hover)}.so-table tr[aria-selected=true] td{background:var(--table-row-selected)}.so-table tr[aria-selected=true] td:first-child{box-shadow:inset 2px 0 0 var(--table-row-selected-bar)}.so-table .num{text-align:right;font-family:var(--font-mono-stack);font-variant-numeric:tabular-nums}.so-unit-tile{display:flex;flex-direction:column;gap:var(--space-2);min-width:0;padding:var(--space-3);border-radius:var(--unit-tile-radius);position:relative;border:1px solid var(--color-border);background:var(--unit-occ-vacant);color:var(--color-text)}.so-unit-tile[data-occupancy=reserved]{background:var(--unit-occ-reserved);border-color:var(--unit-occ-reserved-border)}.so-unit-tile[data-occupancy=occupied]{background:var(--unit-occ-occupied);border-color:var(--unit-occ-occupied-border)}.so-unit-tile[data-occupancy=overstay]{background:var(--unit-occ-overstay);border-color:var(--unit-occ-overstay-border)}.so-unit-tile:not([data-availability=out_of_order]):hover{border-color:var(--color-border-hover)}.so-unit-tile .so-code-tile:not([data-muted]){background:var(--color-code-tile-bg)}.so-unit-tile[data-availability=out_of_order]{border-color:var(--color-status-warning-fg);border-width:2px}.so-unit-tile[data-availability=out_of_service]{border-style:dashed}.so-unit-tile[data-operable=false]{opacity:.55}.so-unit-tile .so-code-tile{width:2rem;height:2rem;font-size:.6875rem}.so-unit-tile-foot{display:flex;align-items:center;gap:var(--space-1);margin-top:auto;min-height:1.5rem}.so-unit-tile{position:relative;overflow:hidden}.so-unit-tile-full{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;gap:var(--space-1);padding:var(--space-3);background:var(--color-surface-raised);transform:translateY(100%);opacity:0;transition:transform var(--motion-base) var(--ease-standard),opacity var(--motion-base) var(--ease-standard);pointer-events:none}.so-unit-tile:hover .so-unit-tile-full,.so-unit-tile:focus-visible .so-unit-tile-full{transform:translateY(0);opacity:1}.so-unit-tile-full .so-mode-icon{width:1.5rem;height:1.5rem}.so-unit-tile-full .so-mode-icon>.mat-icon{width:.875rem;height:.875rem}@media(prefers-reduced-motion:reduce){.so-unit-tile-full{transition:none}}.so-sign[data-status=neutral]{background:var(--color-status-neutral-bg);color:var(--color-status-neutral-fg)}.so-unit-tile-foot .so-mode-icon{width:1.5rem;height:1.5rem}.so-unit-tile-foot .so-mode-icon>.mat-icon{width:.875rem;height:.875rem}.so-sign{display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;border-radius:var(--radius-sm);background:var(--color-surface-sunken);color:var(--color-text-muted)}.so-sign>.mat-icon{width:.875rem;height:.875rem}.so-sign[data-status=warning]{background:var(--color-status-warning-bg);color:var(--color-status-warning-fg)}.so-sign[data-status=info]{background:var(--color-status-info-bg);color:var(--color-status-info-fg)}.so-sign[data-status=success]{background:var(--color-status-success-bg);color:var(--color-status-success-fg)}.so-sign[data-status=danger]{background:var(--color-status-danger-bg);color:var(--color-status-danger-fg)}.so-sign[data-status=strong]{background:var(--color-text);color:var(--color-surface)}@keyframes so-blink{0%,to{opacity:1}50%{opacity:.25}}@keyframes so-ring{0%{box-shadow:0 0 color-mix(in oklab,currentColor 55%,transparent)}80%,to{box-shadow:0 0 0 .625rem transparent}}.so-sign[data-blink]{animation:so-blink 1.1s ease-in-out infinite}.so-signal[data-blink] .so-signal-icon{animation:so-blink 1.1s ease-in-out infinite,so-ring 1.1s ease-out infinite}@media(prefers-reduced-motion:reduce){.so-sign[data-blink],.so-signal[data-blink] .so-signal-icon{animation:none;outline:2px solid currentColor;outline-offset:1px}}.so-swatch{display:inline-block;width:.875rem;height:.875rem;border-radius:.1875rem;border:1px solid var(--color-border);background:var(--unit-occ-vacant)}.so-swatch[data-occupancy=reserved]{background:var(--unit-occ-reserved)}.so-swatch[data-occupancy=occupied]{background:var(--unit-occ-occupied)}.so-swatch[data-occupancy=overstay]{background:var(--unit-occ-overstay)}.so-swatch[data-availability=out_of_order]{border:2px solid var(--color-status-warning-fg)}.so-swatch[data-availability=out_of_service]{border-style:dashed}.so-swatch[data-operable=false]{opacity:.5}.so-dot{display:inline-block;width:.5rem;height:.5rem;border-radius:999px;background:var(--color-status-neutral-fg);flex:none}.so-dot[data-status=success]{background:var(--color-status-success-fg)}.so-dot[data-status=danger]{background:var(--color-status-danger-fg)}.so-table-group td{height:auto;padding-block:var(--space-2);background:var(--color-surface-sunken);font-size:var(--text-sm);border-bottom:1px solid var(--table-border)}.so-meter-table tbody+tbody .so-table-group td{border-top:1px solid var(--color-border-strong)}.so-unit-row td{height:3.125rem;padding-block:var(--space-1);border-bottom:0}.so-meter-line{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3) var(--space-5);padding:var(--space-3) 0}.so-meter-line+.so-meter-line{border-top:1px solid var(--color-border)}.so-meter-line>.so-facts{flex:0 1 26rem;gap:var(--space-2) var(--space-5)}.so-price-tile[data-status=danger]{border-color:var(--color-status-danger-border);background:var(--color-status-danger-bg)}.so-price-tile[data-status=danger] .so-price-tile-v{color:var(--color-status-danger-fg)}.so-price-tile[data-status=warning]{border-color:var(--color-status-warning-border);background:var(--color-status-warning-bg)}.so-price-tile[data-status=success] .so-price-tile-v{color:var(--color-status-success-fg)}.so-utility{display:grid;gap:var(--space-4);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md)}.so-utility+.so-utility{margin-top:var(--space-3)}.so-utility[data-anomaly]{border-color:var(--color-status-warning-border)}.so-utility-head{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3) var(--space-5)}.so-utility-now{display:flex;align-items:center;gap:var(--space-3);flex:1 1 16rem;min-width:0}.so-utility-now>div{min-width:0}.so-utility-icon{flex:none;display:inline-flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;border-radius:var(--radius-md)}.so-utility-icon[data-kind=electric]{background:var(--color-status-warning-bg);color:var(--color-status-warning-fg)}.so-utility-icon[data-kind=water]{background:var(--color-status-info-bg);color:var(--color-status-info-fg)}.so-utility-reading{font-family:var(--font-mono-stack);font-variant-numeric:tabular-nums;font-size:1.375rem;font-weight:600;line-height:1.75rem}.so-utility-reading>small{margin-left:.25rem;font-family:var(--font-sans-stack, inherit);font-size:var(--text-xs);font-weight:400;color:var(--color-text-muted)}.so-utility-stats{display:grid;grid-template-columns:repeat(3,minmax(6.5rem,1fr));gap:var(--space-2) var(--space-5);flex:1 1 22rem}.so-utility-stats dt{font-size:var(--text-xs);color:var(--color-text-muted)}.so-utility-stats dd{margin:0;font-family:var(--font-mono-stack);font-variant-numeric:tabular-nums;font-size:var(--text-base);font-weight:600}.so-utility-stats dd>small{display:block;font-family:var(--font-sans-stack, inherit);font-size:var(--text-xs);font-weight:400;color:var(--color-text-muted)}.so-uchart{position:relative;display:flex;align-items:flex-end;gap:2px;height:4.5rem}.so-uchart>i{flex:1 1 0;min-width:2px;border-radius:2px 2px 0 0;background:var(--color-brand)}@supports (color: color-mix(in lab,red,red)){.so-uchart>i{background:color-mix(in oklab,var(--color-brand) 30%,transparent)}}.so-uchart>i[data-recent]{background:var(--color-brand)}.so-uchart[data-anomaly]>i[data-recent]{background:var(--color-status-warning-fg)}.so-uchart>i[data-empty]{background:var(--color-surface-sunken)}.so-uchart-base{position:absolute;left:0;right:0;border-top:1px dashed var(--color-text-subtle);pointer-events:none}.so-uchart-axis{display:flex;justify-content:space-between;gap:var(--space-2);margin-top:.25rem;font-size:var(--text-xs);color:var(--color-text-subtle)}.so-track{display:flex;gap:3px}.so-track>div{flex:1 1 0;min-width:0;display:flex;flex-direction:column;gap:.3rem}.so-track-bar{height:.625rem;border-radius:var(--radius-full);background:var(--color-surface-sunken)}.so-track-bar[data-state=paid]{background:var(--color-status-success-fg)}.so-track-bar[data-state=waiting]{background:var(--color-status-info-fg)}.so-track-bar[data-state=overdue]{background:var(--color-status-danger-fg)}.so-track-bar[data-state=due]{background:var(--color-status-warning-fg)}.so-track-bar[data-state=skipped]{background:repeating-linear-gradient(135deg,var(--color-border) 0 3px,transparent 3px 6px)}.so-track-label{overflow:hidden;font-size:var(--text-xs);color:var(--color-text-muted);text-align:center;white-space:nowrap;text-overflow:clip}.so-track>div[data-now] .so-track-label{color:var(--color-text);font-weight:600}.so-track-legend{display:flex;flex-wrap:wrap;gap:var(--space-1) var(--space-4);font-size:var(--text-xs);color:var(--color-text-muted)}.so-track-legend>span{display:inline-flex;align-items:center;gap:.375rem}.so-track-legend .so-track-bar{width:1rem;height:.5rem}.so-span{position:relative;height:.5rem;border-radius:var(--radius-full);background:var(--color-surface-sunken)}.so-span>span{position:absolute;inset:0 auto 0 0;border-radius:inherit;background:var(--color-brand)}.so-span[data-status=warning]>span{background:var(--color-status-warning-fg)}.so-span>i{position:absolute;top:-.25rem;bottom:-.25rem;width:2px;border-radius:1px;background:var(--color-status-warning-fg)}.so-span-axis{display:flex;justify-content:space-between;margin-top:.375rem;font-size:var(--text-xs);color:var(--color-text-muted)}.so-big-number{font-family:var(--font-mono-stack);font-variant-numeric:tabular-nums;font-size:var(--text-2xl);font-weight:600;line-height:1.2}.so-big-number>small{margin-left:.375rem;font-family:var(--font-sans-stack, inherit);font-size:var(--text-sm);font-weight:400;color:var(--color-text-muted)}.so-site-grid{display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,20rem),1fr))}.so-site-card{position:relative;display:flex;flex-direction:column;min-width:0;overflow:hidden;background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--card-radius);box-shadow:var(--card-shadow);transition:box-shadow .15s,border-color .15s}.so-site-card:hover{box-shadow:var(--shadow-2);border-color:var(--color-border-strong, var(--color-border))}.so-site-cover{position:relative;aspect-ratio:16 / 9;background:var(--color-surface-sunken);overflow:hidden}.so-site-cover>img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s}.so-site-card:hover .so-site-cover>img{transform:scale(1.02)}.so-site-card[data-inactive] .so-site-cover>img{filter:grayscale(1);opacity:.6}.so-site-cover-empty{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-1);color:var(--color-text-subtle);font-size:var(--text-xs);background:radial-gradient(circle at 30% 20%,var(--color-brand),transparent 60%),linear-gradient(135deg,var(--color-surface-sunken),var(--color-brand))}@supports (color: color-mix(in lab,red,red)){.so-site-cover-empty{background:radial-gradient(circle at 30% 20%,color-mix(in oklab,var(--color-brand) 14%,transparent),transparent 60%),linear-gradient(135deg,var(--color-surface-sunken),color-mix(in oklab,var(--color-brand) 8%,var(--color-surface-sunken)))}}.so-site-cover-bar{position:absolute;inset:var(--space-3) var(--space-3) auto;display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-2)}.so-site-cover-bar .so-chip,.so-site-code{background:var(--color-surface);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}@supports (color: color-mix(in lab,red,red)){.so-site-cover-bar .so-chip,.so-site-code{background:color-mix(in oklab,var(--color-surface) 88%,transparent)}}.so-site-code{display:inline-flex;align-items:center;height:1.5rem;padding:0 .5rem;border-radius:var(--radius-sm);font-family:var(--font-mono-stack);font-size:var(--text-xs);font-weight:600;color:var(--color-text)}.so-site-cover-actions{position:absolute;right:var(--space-3);bottom:var(--space-3);display:flex;gap:var(--space-1);opacity:0;transition:opacity .15s}.so-site-card:hover .so-site-cover-actions,.so-site-card:focus-within .so-site-cover-actions{opacity:1}.so-site-cover-actions .so-icon-button{background:var(--color-surface);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}@supports (color: color-mix(in lab,red,red)){.so-site-cover-actions .so-icon-button{background:color-mix(in oklab,var(--color-surface) 90%,transparent)}}@media(hover:none){.so-site-cover-actions{opacity:1}}.so-site-body{display:grid;gap:var(--space-3);padding:var(--space-4)}.so-site-title{font-size:var(--text-md);font-weight:600;line-height:1.3}.so-site-addr{display:flex;align-items:flex-start;gap:.375rem;margin-top:.25rem;font-size:var(--text-xs);color:var(--color-text-muted)}.so-site-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--color-border);border-radius:var(--radius-md)}.so-site-stats>div{display:grid;gap:.125rem;padding:var(--space-2) var(--space-3);min-width:0}.so-site-stats>div+div{border-left:1px solid var(--color-border)}.so-site-stats dt{font-size:var(--text-xs);color:var(--color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.so-site-stats dd{margin:0;font-family:var(--font-mono-stack);font-variant-numeric:tabular-nums;font-size:var(--text-lg);font-weight:600;line-height:1.5rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.so-site-stats dd>small{margin-left:.25rem;font-family:var(--font-sans-stack, inherit);font-size:var(--text-xs);font-weight:400;color:var(--color-text-muted)}.so-site-facts{display:grid;gap:var(--space-2);margin:0}.so-site-facts>div{display:grid;grid-template-columns:1.25rem minmax(0,1fr);gap:var(--space-2);align-items:start;font-size:var(--text-sm)}.so-site-facts>div>mat-icon{color:var(--color-text-subtle);margin-top:.125rem}.so-site-facts small{display:block;font-size:var(--text-xs);color:var(--color-text-muted)}.so-site-facts [data-missing]{color:var(--color-status-warning-fg)}.so-site-add{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);min-height:16rem;border:1.5px dashed var(--color-border);border-radius:var(--card-radius);color:var(--color-text-muted);font-size:var(--text-sm);background:transparent;cursor:pointer;transition:border-color .15s,color .15s,background .15s}.so-site-add:hover{border-color:var(--color-brand);color:var(--color-brand-text);background:var(--color-brand)}@supports (color: color-mix(in lab,red,red)){.so-site-add:hover{background:color-mix(in oklab,var(--color-brand) 4%,transparent)}}.so-cover-edit{position:relative;aspect-ratio:16 / 9;max-height:14rem;overflow:hidden;border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface-sunken)}.so-cover-edit>img{width:100%;height:100%;object-fit:cover;display:block}.so-meter-row td{height:3.125rem}.so-meter-row td:first-child{padding-left:calc(var(--table-cell-px) + var(--space-5))}.so-meter-row+.so-meter-row td,.so-unit-row+.so-meter-row td{border-top:0}.so-unit-row:hover td,.so-unit-row:hover+.so-meter-row td,.so-unit-row:hover+.so-meter-row+.so-meter-row td{background:var(--table-row-hover)}.so-money-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-2)}@media(max-width:640px){.so-money-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.so-money-cell{display:flex;flex-direction:column;gap:.125rem;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md)}.so-money-cell>span{font-size:var(--text-xs);color:var(--color-text-muted)}.so-money-cell>strong{font-family:var(--font-mono-stack);font-size:var(--text-base);font-weight:600}.so-money-cell>small{font-size:var(--text-xs);color:var(--color-text-muted)}.so-money-cell[data-status=warning]{border-color:var(--color-status-warning-border);background:var(--color-status-warning-bg)}.so-money-cell[data-status=warning]>strong{color:var(--color-status-warning-fg)}.so-money-cell[data-status=success]>strong{color:var(--color-status-success-fg)}.so-money-lines{margin-top:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md)}.so-money-lines>li{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) var(--space-3);font-size:var(--text-sm)}.so-money-lines>li+li{border-top:1px solid var(--color-border)}.so-money-lines small{font-size:var(--text-xs);color:var(--color-text-muted)}.so-settle-result{display:flex;align-items:center;gap:var(--space-3);margin-top:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);border:1px solid var(--color-border);font-size:var(--text-sm)}.so-settle-result>div{display:flex;flex-direction:column}.so-settle-result>div>span{color:var(--color-text-muted)}.so-settle-result[data-status=success]{border-color:var(--color-status-success-border);background:var(--color-status-success-bg);color:var(--color-status-success-fg)}.so-settle-result[data-status=warning]{border-color:var(--color-status-warning-border);background:var(--color-status-warning-bg);color:var(--color-status-warning-fg)}.so-settle-result[data-status=danger]{border-color:var(--color-status-danger-border);background:var(--color-status-danger-bg);color:var(--color-status-danger-fg)}.so-qr-pay{display:grid;grid-template-columns:11rem minmax(0,1fr);gap:var(--space-4);align-items:center;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md)}@media(max-width:640px){.so-qr-pay{grid-template-columns:1fr;justify-items:center}}.so-qr-pay-code{width:11rem}.so-vietqr{background:#fff;border-radius:var(--radius-sm);line-height:0}.so-vietqr svg{width:100%;height:auto}.so-qr-pay-facts{display:grid;gap:var(--space-1);font-size:var(--text-sm);width:100%}.so-qr-pay-facts>div{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding-block:.125rem;border-bottom:1px dashed var(--color-border)}.so-qr-pay-facts>div:last-child{border-bottom:0}.so-qr-pay-facts dt{color:var(--color-text-muted)}.so-qr-pay-facts dd{display:inline-flex;align-items:center;gap:var(--space-1);text-align:right}.so-compose-row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);cursor:pointer}.so-compose-row+.so-compose-row{border-top:1px solid var(--color-border)}.so-compose-row:hover,.so-compose-all{background:var(--color-surface-sunken)}.so-line-icon{display:inline-flex;flex:none;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:var(--radius-md);background:var(--color-surface-sunken);color:var(--color-muted)}.so-line-icon mat-icon{width:1.25rem;height:1.25rem}.so-line-icon[data-size=sm]{width:1.75rem;height:1.75rem;border-radius:var(--radius-sm)}.so-line-icon[data-size=sm] mat-icon{width:1rem;height:1rem}.so-line-icon[data-tone=brand]{background:var(--color-brand-soft);color:var(--color-brand-text)}.so-line-icon[data-tone=info]{background:var(--color-info-bg);color:var(--color-info)}.so-line-icon[data-tone=success]{background:var(--color-success-bg);color:var(--color-success)}.so-line-icon[data-tone=warning]{background:var(--color-warning-bg);color:var(--color-warning)}.so-line-icon[data-tone=danger]{background:var(--color-danger-bg);color:var(--color-danger)}.so-pr-lines{display:flex;flex-direction:column;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.so-pr-line{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--space-2);padding:var(--space-3)}.so-pr-line+.so-pr-line{border-top:1px solid var(--color-border)}.so-pr-lines>:not(.so-pr-line){padding:var(--space-2) var(--space-3);border-top:1px solid var(--color-border)}.so-pr-lines>:first-child:not(.so-pr-line){border-top:0}.so-pay-facts{display:grid;gap:var(--space-1);margin-top:var(--space-3);font-size:var(--text-sm)}.so-pay-facts>div{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.so-pay-facts dt{color:var(--color-text-muted)}.so-pay-facts dd{display:inline-flex;align-items:center;gap:var(--space-1);text-align:right}.so-pay-sum{display:grid;gap:var(--space-1);margin-top:var(--space-3)}.so-pay-sum>div{display:flex;justify-content:space-between;gap:var(--space-3);font-size:var(--text-sm)}.so-pay-sum dd{font-family:var(--font-mono-stack);font-weight:600}.so-pay-sum>div[data-big]{margin-top:var(--space-1);padding-top:var(--space-2);border-top:1px solid var(--color-border);font-size:var(--text-lg);font-weight:700}.so-meter-table tr.even td{background:var(--color-row-highlight)}.so-meter-table tr.odd td,.so-meter-table tr.even td{transition:background var(--motion-fast)}.so-meter-table tr.so-unit-row:hover td{background:var(--table-row-hover)}.so-spark-cell{width:11rem;min-width:8rem}.so-spark{display:block;width:100%;height:1.75rem}.so-spark rect{fill:var(--color-status-warning-fg);opacity:.75}.so-spark[data-kind=water] rect{fill:var(--color-status-info-fg)}.so-spark rect[data-hot]{fill:var(--color-status-danger-fg);opacity:1}.so-spark rect.so-spark-gap{fill:var(--color-border-strong);opacity:1}.so-legend-spark{display:inline-block;width:.5rem;height:.875rem;border-radius:1px;vertical-align:-2px;margin-right:.375rem;background:var(--color-status-warning-fg);opacity:.75}.so-legend-spark[data-hot]{background:var(--color-status-danger-fg);opacity:1}.so-legend-spark[data-gap]{height:.1875rem;vertical-align:0;background:var(--color-border-strong);opacity:1}.so-usage-chart{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:8rem auto;column-gap:var(--space-2)}.so-usage-chart>svg{width:100%;height:8rem;border-bottom:1px solid var(--color-border-strong)}.so-usage-chart-y{display:flex;flex-direction:column;justify-content:space-between;font-family:var(--font-mono-stack);font-size:var(--text-xs);color:var(--color-text-muted);text-align:right}.so-usage-chart-x{grid-column:2;position:relative;height:1.25rem;font-size:var(--text-xs);color:var(--color-text-muted)}.so-usage-chart-x>span{position:absolute;top:.25rem;transform:translate(-50%);white-space:nowrap}.so-usage-occ{fill:var(--color-surface-sunken)}.so-usage-bar{fill:var(--color-status-warning-fg)}.so-usage-chart[data-kind=water] .so-usage-bar{fill:var(--color-status-info-fg)}.so-usage-bar[data-hot]{fill:var(--color-status-danger-fg)!important}.so-usage-gap{fill:var(--color-border-strong)}.so-usage-mark{fill:none;stroke:var(--color-status-danger-fg);stroke-width:1;stroke-dasharray:3 2;vector-effect:non-scaling-stroke}}@media(prefers-reduced-motion:reduce){:root{--motion-fast: 0ms;--motion-base: 0ms;--motion-slow: 0ms}}.so-dense .mat-mdc-text-field-wrapper{height:var(--control-height)}.so-dense .mat-mdc-form-field-infix{padding-top:.5rem;padding-bottom:.5rem;min-height:auto}.so-dense .mat-mdc-floating-label{top:1.25rem}#fuse .mat-mdc-form-field.so-internal{--form-field-bg-color: var(--internal-bg);--form-field-border-color: var(--internal-border);--form-field-hint-color: var(--internal-fg);--form-field-affix-color: var(--internal-fg)}#fuse .mat-mdc-form-field.so-internal .mat-mdc-form-field-hint{font-style:italic}.so-internal textarea,.so-internal input{background:transparent}.so-internal-block{background:var(--internal-bg);border:1px solid var(--internal-border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4)}.so-internal-block>.so-internal-hint{display:flex;align-items:center;gap:var(--space-1);font-size:var(--text-xs);font-style:italic;color:var(--internal-fg);margin-bottom:var(--space-1)}#fuse .mat-mdc-form-field:has(.mat-mdc-text-field-wrapper:not(.mdc-text-field--no-label)){margin-top:calc(var(--form-field-gap-y) + var(--form-field-label-line-height) + var(--space-1))}.so-cal-bar[data-narrow=tight]>.so-cal-extra,.so-cal-bar[data-narrow=half]>.so-cal-extra,.so-cal-bar[data-compact]>.so-cal-extra,.so-cal-bar[data-compact]>.mat-icon{display:none}.so-cal-bar[data-narrow]>.mat-icon{flex:none}.so-cal-bar[data-narrow=tight]>.mat-icon{display:none}.so-meter-ico[data-kind=electric],.mat-icon.so-meter-fg[data-kind=electric]{color:var(--color-status-warning-fg)}.so-meter-ico[data-kind=water],.mat-icon.so-meter-fg[data-kind=water]{color:var(--color-status-info-fg)}@layer components{.hp-panel{position:fixed;top:var(--header-height);right:0;z-index:1500;display:flex;flex-direction:column;width:min(27rem,100vw);height:calc(100dvh - var(--header-height));background:var(--color-surface);border-left:1px solid var(--color-border);box-shadow:-24px 0 48px -24px #0e113159;transform:translate(104%);transition:transform var(--motion-slow) var(--ease-standard)}.hp-panel.is-open{transform:none}@media(min-width:64rem){body.hp-panel-open .so-dialog-backdrop{padding-right:calc(min(27rem,100vw) + var(--space-4))!important;transition:padding var(--motion-slow) var(--ease-standard)}}@media(prefers-reduced-motion:reduce){.hp-panel{transition:none}}.hp-panel-head{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4) var(--space-4) var(--space-3);border-bottom:1px solid var(--color-border)}.hp-panel-icon{display:inline-flex;width:1.75rem;height:1.75rem;align-items:center;justify-content:center;border-radius:var(--radius-sm);background:var(--color-brand-soft);color:var(--color-brand-text)}.hp-search{display:flex;align-items:center;gap:var(--space-2);height:var(--control-height);padding-inline:var(--space-3);border:1px solid var(--control-border);border-radius:var(--radius-full);background:var(--control-bg);color:var(--color-text-muted)}.hp-search:focus-within{border-color:var(--control-border-focus)}.hp-search>input{flex:1 1 auto;min-width:0;border:0;outline:0;background:transparent;color:var(--color-text);font-size:var(--text-base)}.hp-scroll{flex:1 1 auto;min-height:0;overflow-y:auto;padding:var(--space-4);overscroll-behavior:contain}.hp-lead,.hp-empty{font-size:var(--text-sm);color:var(--color-text-muted)}.hp-toc-part{margin:var(--space-4) 0 var(--space-1);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-subtle)}.hp-toc-part:first-child{margin-top:0}.hp-toc-item{display:flex;width:100%;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);font-size:var(--text-sm);text-align:left;color:var(--color-text)}.hp-toc-item:hover{background:var(--color-surface-sunken)}.hp-toc-item[aria-current=page]{background:var(--color-brand-soft);color:var(--color-brand-text);font-weight:600}.hp-toc-item>small{margin-left:auto;color:var(--color-text-subtle);white-space:nowrap}.hp-result{display:flex;width:100%;flex-direction:column;gap:2px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);text-align:left;font-size:var(--text-sm)}.hp-result:hover{background:var(--color-surface-sunken)}.hp-result>small{color:var(--color-text-muted);font-size:var(--text-xs)}.hp-article{font-size:var(--text-base);line-height:1.6;color:var(--color-text)}.hp-article-head{margin-bottom:var(--space-4)}.hp-crumb{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-subtle)}.hp-article-head h2{margin-top:var(--space-1);font-size:var(--text-xl);font-weight:600;letter-spacing:-.01em}.hp-tags{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-top:var(--space-2)}.hp-open{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--text-sm);font-weight:500;color:var(--color-link)}.hp-mini-toc{display:flex;flex-wrap:wrap;gap:var(--space-1) var(--space-3);margin:var(--space-4) 0;padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-surface-sunken);font-size:var(--text-sm)}.hp-mini-toc>b{width:100%;font-size:var(--text-xs);color:var(--color-text-muted)}.hp-mini-toc>a{color:var(--color-link)}.hp-sec{margin-top:var(--space-6);padding-top:var(--space-4);border-top:1px solid var(--color-border);scroll-margin-top:var(--space-4);border-radius:var(--radius-sm);transition:background-color .6s var(--ease-standard)}.hp-sec.is-target{background:var(--color-brand-soft);box-shadow:0 0 0 var(--space-2) var(--color-brand-soft)}.hp-sec>h3{font-size:var(--text-md);font-weight:600}.hp-who{display:flex;align-items:center;gap:var(--space-1);margin-top:var(--space-1);font-size:var(--text-xs);color:var(--color-text-muted)}.hp-html>*+*{margin-top:var(--space-3)}.hp-html{margin-top:var(--space-2)}.hp-html h4{margin-top:var(--space-4);font-size:var(--text-base);font-weight:600}.hp-html ul,.hp-html ol{padding-left:1.25rem}.hp-html ul{list-style:disc}.hp-html ol{list-style:decimal}.hp-html li+li{margin-top:var(--space-1)}.hp-html b{font-weight:600}.hp-html a{color:var(--color-link);text-decoration:underline;text-underline-offset:2px}.hp-html code,.hp-html kbd{padding:0 .3em;border:1px solid var(--color-border);border-radius:4px;background:var(--color-surface-sunken);font-family:var(--font-mono-stack);font-size:.85em}.hp-html table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.hp-html th,.hp-html td{padding:var(--space-2);border-bottom:1px solid var(--color-border);text-align:left;vertical-align:top}.hp-html th{color:var(--color-text-muted);font-weight:600}.hp-html figure{margin-block:var(--space-4)}.hp-html figure img{width:100%;border:1px solid var(--color-border);border-radius:var(--radius-md)}.hp-html figcaption{margin-top:var(--space-1);font-size:var(--text-xs);color:var(--color-text-muted)}.hp-call{padding:var(--space-3);border-radius:var(--radius-md);border:1px solid var(--color-status-info-border);background:var(--color-status-info-bg)}.hp-call[data-kind=warn]{border-color:var(--color-status-warning-border);background:var(--color-status-warning-bg)}.hp-call>b{display:block;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--color-status-info-fg)}.hp-call[data-kind=warn]>b{color:var(--color-status-warning-fg)}.hp-call>*+*{margin-top:var(--space-1)}.hp-page{display:grid;gap:var(--gap-section);align-items:start}@media(min-width:64rem){.hp-page{grid-template-columns:17rem minmax(0,1fr)}.hp-page-nav{position:sticky;top:var(--space-4);max-height:calc(100dvh - 8rem);overflow-y:auto}}.hp-page-nav{display:flex;flex-direction:column;gap:var(--space-3)}.hp-page-main{min-width:0;max-width:52rem}.so-auth{flex:1 1 auto;display:grid;min-height:100dvh;background:var(--color-canvas)}@media(min-width:64rem){.so-auth{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)}}.so-auth-main{display:flex;flex-direction:column;gap:var(--space-8);padding:var(--space-6) var(--space-4)}@media(min-width:40rem){.so-auth-main{padding:var(--space-8) var(--space-12)}}.so-auth-top{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.so-auth-top .so-segmented>button{width:2rem;justify-content:center;padding-inline:0}.so-auth-brand{display:flex;align-items:center;gap:var(--space-3)}.so-auth-logo{flex:none;display:flex;width:2.5rem;height:2.5rem;align-items:center;justify-content:center;border-radius:var(--radius-md);background:var(--color-brand);color:var(--color-brand-fg);font-size:var(--text-lg);font-weight:600}.so-auth-form{width:100%;max-width:24rem;margin:auto}.so-auth-form h1{font-size:var(--text-2xl);line-height:var(--text-2xl--line-height);letter-spacing:-.02em;font-weight:600}.so-auth-tagline{margin-top:var(--space-2);font-size:var(--text-sm);color:var(--color-text-muted)}@media(min-width:64rem){.so-auth-tagline{display:none}}.so-auth-google img{flex:none}.so-auth-or{display:flex;align-items:center;gap:var(--space-3);margin-block:var(--space-5);font-size:var(--text-xs);color:var(--color-text-muted)}.so-auth-or:before,.so-auth-or:after{content:"";flex:1;border-top:1px solid var(--color-border)}.so-auth-or span{text-align:center}.so-auth-legal{margin-top:var(--space-5);font-size:var(--text-xs);line-height:1.5;color:var(--color-text-muted)}.so-auth-legal a,.so-auth-foot a{color:var(--color-link);font-weight:500}.so-auth-legal a:hover,.so-auth-foot a:hover{text-decoration:underline}.so-auth-foot{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4);justify-content:space-between;font-size:var(--text-xs);color:var(--color-text-subtle)}.so-auth-foot nav{display:flex;gap:var(--space-4)}.so-auth-show{position:relative;display:none;overflow:hidden;isolation:isolate;padding:var(--space-12);background:var(--color-showcase-bg);color:var(--color-showcase-fg)}@media(min-width:64rem){.so-auth-show{display:flex;flex-direction:column;justify-content:center}}@media(min-width:80rem){.so-auth-show{padding:var(--space-16)}}.so-auth-show:before{content:"";position:absolute;inset:0;z-index:-1;opacity:.5;background-image:radial-gradient(circle at 1px 1px,rgb(255 255 255 / .14) 1px,transparent 0);background-size:22px 22px;-webkit-mask-image:radial-gradient(ellipse 70% 60% at 70% 30%,#000 20%,transparent 75%);mask-image:radial-gradient(ellipse 70% 60% at 70% 30%,#000 20%,transparent 75%)}.so-auth-show:after{content:"";position:absolute;z-index:-1;width:36rem;height:36rem;top:-14rem;right:-12rem;border-radius:50%;background:radial-gradient(closest-side,var(--color-showcase-glow),transparent);filter:blur(8px)}@supports (color: color-mix(in lab,red,red)){.so-auth-show:after{background:radial-gradient(closest-side,color-mix(in oklab,var(--color-showcase-glow) 45%,transparent),transparent)}}.so-auth-show-in{width:100%;max-width:34rem;margin-inline:auto}.so-auth-eyebrow{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);border:1px solid var(--color-showcase-border);border-radius:var(--radius-full);background:var(--color-showcase-card);font-size:var(--text-xs);font-weight:600;color:var(--color-showcase-accent)}.so-auth-show h2{margin-top:var(--space-5);font-size:clamp(1.75rem,2.4vw,2.375rem);line-height:1.15;letter-spacing:-.025em;font-weight:600;text-wrap:balance}.so-auth-show h2 em{font-style:normal;color:var(--color-showcase-accent)}.so-auth-lead{margin-top:var(--space-4);font-size:var(--text-md);line-height:1.6;color:var(--color-showcase-muted)}.so-auth-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3);margin-top:var(--space-8)}.so-auth-card{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4);border:1px solid var(--color-showcase-border);border-radius:var(--radius-lg);background:var(--color-showcase-card);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.so-auth-card-ic{display:inline-flex;width:2.25rem;height:2.25rem;align-items:center;justify-content:center;border-radius:var(--radius-sm);background:var(--color-showcase-accent);color:var(--color-showcase-accent)}@supports (color: color-mix(in lab,red,red)){.so-auth-card-ic{background:color-mix(in oklab,var(--color-showcase-accent) 16%,transparent)}}.so-auth-card b{margin-top:var(--space-1);font-size:var(--text-base);font-weight:600}.so-auth-card p{font-size:var(--text-sm);line-height:1.5;color:var(--color-showcase-muted)}.so-auth-facts{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-6);margin-top:var(--space-8);padding-top:var(--space-5);border-top:1px solid var(--color-showcase-border);font-size:var(--text-sm);color:var(--color-showcase-muted)}.so-auth-facts span{display:inline-flex;align-items:center;gap:var(--space-2)}.so-auth-facts mat-icon{color:var(--color-showcase-accent)}.so-legal{min-height:100dvh;background:var(--color-canvas);color:var(--color-text)}.so-legal-bar{position:sticky;top:0;z-index:10;border-bottom:1px solid var(--color-border);background:var(--color-surface-nav);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}@supports (color: color-mix(in lab,red,red)){.so-legal-bar{background:color-mix(in oklab,var(--color-surface-nav) 92%,transparent)}}.so-legal-bar>div{display:flex;height:var(--header-height);max-width:72rem;margin-inline:auto;align-items:center;justify-content:space-between;gap:var(--space-4);padding-inline:var(--space-4)}.so-legal-tabs{display:flex;min-width:0;gap:var(--space-1);overflow-x:auto;scrollbar-width:none}.so-legal-tabs a{padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:500;color:var(--color-text-muted);white-space:nowrap}.so-legal-tabs a:hover{color:var(--color-text)}.so-legal-tabs a[aria-current=page]{background:var(--color-brand-soft);color:var(--color-brand-text);font-weight:600}.so-legal-body{display:grid;gap:var(--space-8);max-width:72rem;margin-inline:auto;padding:var(--space-8) var(--space-4) var(--space-16)}@media(min-width:64rem){.so-legal-body{grid-template-columns:15rem minmax(0,1fr);gap:var(--space-12);padding-top:var(--space-12)}.so-legal-toc{position:sticky;top:calc(var(--header-height) + var(--space-6));align-self:start;max-height:calc(100dvh - 8rem);overflow-y:auto}}.so-legal-toc{font-size:var(--text-sm)}.so-legal-toc b{display:block;margin-bottom:var(--space-2);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-subtle)}.so-legal-toc ol{display:flex;flex-direction:column;gap:2px}.so-legal-toc a{display:flex;gap:var(--space-2);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);color:var(--color-text-muted)}.so-legal-toc a:hover{background:var(--color-surface-sunken);color:var(--color-text)}.so-legal-toc a>span{min-width:1.25rem;color:var(--color-text-subtle);font-variant-numeric:tabular-nums}@media(max-width:63.99rem){.so-legal-toc{display:none}}.so-legal-main{min-width:0;max-width:46rem}.so-legal-main h1{font-size:var(--text-3xl);line-height:var(--text-3xl--line-height);letter-spacing:-.025em;font-weight:600}.so-legal-meta{margin-top:var(--space-2);font-size:var(--text-sm);color:var(--color-text-muted)}.so-legal-draft{display:flex;gap:var(--space-3);margin-top:var(--space-5);padding:var(--space-3) var(--space-4);border:1px solid var(--color-status-warning-border);border-radius:var(--radius-md);background:var(--color-status-warning-bg);color:var(--color-status-warning-fg);font-size:var(--text-sm)}.legal-prose{margin-top:var(--space-6);font-size:var(--text-md);line-height:1.7}.legal-prose h2{margin-top:var(--space-10);padding-top:var(--space-2);font-size:var(--text-xl);line-height:1.3;font-weight:600;letter-spacing:-.01em;scroll-margin-top:calc(var(--header-height) + var(--space-4))}.legal-prose h2 .legal-n{color:var(--color-text-subtle);font-variant-numeric:tabular-nums}.legal-prose h3{margin-top:var(--space-6);font-size:var(--text-md);font-weight:600}.legal-prose p,.legal-prose ul,.legal-prose ol,.legal-prose .legal-table{margin-top:var(--space-3)}.legal-prose ul{list-style:disc;padding-left:var(--space-6)}.legal-prose ol{list-style:decimal;padding-left:var(--space-6)}.legal-prose li+li{margin-top:var(--space-1)}.legal-prose li::marker{color:var(--color-text-subtle)}.legal-prose a{color:var(--color-link);text-decoration:underline;text-underline-offset:2px}.legal-prose strong{font-weight:600}.legal-prose .legal-table{overflow-x:auto;border:1px solid var(--color-border);border-radius:var(--radius-md)}.legal-prose table{width:100%;border-collapse:collapse;font-size:var(--text-base);line-height:1.5}.legal-prose th{background:var(--color-surface-sunken);text-align:left;font-weight:600}.legal-prose th,.legal-prose td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border);vertical-align:top}.legal-prose tbody tr:last-child td{border-bottom:0}.legal-prose td{background:var(--color-surface)}.legal-todo{padding:0 var(--space-1);border-radius:4px;background:var(--color-legal-todo-bg);color:var(--color-legal-todo-fg);font-size:.9em;font-weight:500}}.cdk-overlay-container,.cdk-global-overlay-wrapper{pointer-events:none;top:0;left:0;height:100%;width:100%}.cdk-overlay-container{position:fixed;z-index:1000}.cdk-overlay-container:empty{display:none}.cdk-global-overlay-wrapper{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;display:flex;max-width:100%;max-height:100%;z-index:1000}.cdk-overlay-backdrop{position:absolute;inset:0;pointer-events:auto;-webkit-tap-highlight-color:transparent;opacity:0;touch-action:manipulation;z-index:1000;transition:opacity .4s cubic-bezier(.25,.8,.25,1)}@media(prefers-reduced-motion){.cdk-overlay-backdrop{transition-duration:1ms}}.cdk-overlay-backdrop-showing{opacity:1}@media(forced-colors:active){.cdk-overlay-backdrop-showing{opacity:.6}}.cdk-overlay-dark-backdrop{background:#00000052}.cdk-overlay-transparent-backdrop{transition:visibility 1ms linear,opacity 1ms linear;visibility:hidden;opacity:1}.cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing,.cdk-high-contrast-active .cdk-overlay-transparent-backdrop{opacity:0;visibility:visible}.cdk-overlay-backdrop-noop-animation{transition:none}.cdk-overlay-connected-position-bounding-box{position:absolute;display:flex;flex-direction:column;min-width:1px;min-height:1px;z-index:1000}.cdk-global-scrollblock{position:fixed;width:100%;overflow-y:scroll}.cdk-overlay-popover{background:none;border:none;padding:0;outline:0;overflow:visible;position:fixed;pointer-events:none;white-space:normal;color:inherit;text-decoration:none;width:100%;height:100%;inset:0 auto auto 0}.cdk-overlay-popover::backdrop{display:none}.cdk-overlay-popover .cdk-overlay-backdrop{position:fixed;z-index:auto}@layer base{:root{interpolate-size:allow-keywords}html,body{display:flex;flex-direction:column;flex:1 1 auto;min-height:100%;width:100%;overflow-x:clip}router-outlet+*{display:flex;flex-direction:column;flex:1 1 auto;width:100%}*,:after,:before,::backdrop,::file-selector-button{border-color:light-dark(var(--color-neutral-200),var(--color-neutral-800))}*:focus{outline:none}*:focus-visible:not(.cdk-program-focused),.cdk-keyboard-focused{outline:var(--color-control-accent) solid 2px;outline-offset:.125rem}body{background-color:var(--color-canvas);color:var(--color-text);font-family:var(--font-sans-stack);font-optical-sizing:auto;font-feature-settings:"cv11","ss01";-webkit-font-smoothing:antialiased}}#fuse a:focus-visible{outline-color:var(--link-outline-color)}#fuse a{--link-outline-color: var(--color-control-accent)}#fuse input:not(.restore-autofill-styles):-webkit-autofill{-webkit-background-clip:text;-webkit-text-fill-color:var(--input-text-color);transition:background-color 0s ease-in-out 999999s}#fuse input:not(.restore-autofill-styles){--input-text-color: light-dark( var(--color-neutral-950), var(--color-white) )}#fuse kbd{font-family:var(--kbd-font-family);font-feature-settings:var(--kbd-font-feature-settings);font-optical-sizing:var(--kbd-font-optical-sizing);-webkit-font-smoothing:var(--kbd-font-smoothing);font-size:var(--kbd-font-size);line-height:var(--kbd-line-height);font-weight:var(--kbd-font-weight);letter-spacing:var(--kbd-letter-spacing);color:var(--kbd-text-color);background:var(--kbd-bg-color);padding-block:var(--kbd-padding-y);padding-inline:var(--kbd-padding-x);border-style:solid;border-width:1px;border-color:var(--kbd-border-color);border-radius:var(--kbd-border-radius);--kbd-font-family: var(--font-sans);--kbd-font-feature-settings: var(--font-sans--font-feature-settings);--kbd-font-optical-sizing: var(--font-optical-sizing);--kbd-font-smoothing: var(--font-smoothing);--kbd-font-size: var(--text-sm);--kbd-line-height: var(--leading-4);--kbd-font-weight: var(--font-weight-medium);--kbd-letter-spacing: var(--tracking-widest);--kbd-padding-y: .125rem;--kbd-padding-x: .25rem;--kbd-border-radius: .25rem;--kbd-bg-color: var(--color-surface-sunken);--kbd-text-color: var(--color-text-muted);--kbd-border-color: var(--color-border)}#fuse{--mat-sys-body-large: 400 1rem / 1.5rem var(--font-sans);--mat-sys-body-large-font: var(--font-sans);--mat-sys-body-large-line-height: 1.5rem;--mat-sys-body-large-size: 1rem;--mat-sys-body-large-tracking: .031rem;--mat-sys-body-large-weight: 400;--mat-sys-body-medium: 400 .8125rem / 1.25rem var(--font-sans);--mat-sys-body-medium-font: var(--font-sans);--mat-sys-body-medium-line-height: 1.25rem;--mat-sys-body-medium-size: .8125rem;--mat-sys-body-medium-tracking: .016rem;--mat-sys-body-medium-weight: 400;--mat-sys-body-small: 400 .75rem / 1rem var(--font-sans);--mat-sys-body-small-font: var(--font-sans);--mat-sys-body-small-line-height: 1rem;--mat-sys-body-small-size: .75rem;--mat-sys-body-small-tracking: .025rem;--mat-sys-body-small-weight: 400;--mat-sys-display-large: 400 3.562rem / 4rem var(--font-display);--mat-sys-display-large-font: var(--font-display);--mat-sys-display-large-line-height: 4rem;--mat-sys-display-large-size: 3.562rem;--mat-sys-display-large-tracking: -.016rem;--mat-sys-display-large-weight: 400;--mat-sys-display-medium: 400 2.812rem / 3.25rem var(--font-display);--mat-sys-display-medium-font: var(--font-display);--mat-sys-display-medium-line-height: 3.25rem;--mat-sys-display-medium-size: 2.812rem;--mat-sys-display-medium-tracking: 0;--mat-sys-display-medium-weight: 400;--mat-sys-display-small: 400 2.25rem / 2.75rem var(--font-display);--mat-sys-display-small-font: var(--font-display);--mat-sys-display-small-line-height: 2.75rem;--mat-sys-display-small-size: 2.25rem;--mat-sys-display-small-tracking: 0;--mat-sys-display-small-weight: 400;--mat-sys-headline-large: 400 2rem / 2.5rem var(--font-display);--mat-sys-headline-large-font: var(--font-display);--mat-sys-headline-large-line-height: 2.5rem;--mat-sys-headline-large-size: 2rem;--mat-sys-headline-large-tracking: 0;--mat-sys-headline-large-weight: 400;--mat-sys-headline-medium: 400 1.75rem / 2.25rem var(--font-display);--mat-sys-headline-medium-font: var(--font-display);--mat-sys-headline-medium-line-height: 2.25rem;--mat-sys-headline-medium-size: 1.75rem;--mat-sys-headline-medium-tracking: 0;--mat-sys-headline-medium-weight: 400;--mat-sys-headline-small: 400 1.5rem / 2rem var(--font-display);--mat-sys-headline-small-font: var(--font-display);--mat-sys-headline-small-line-height: 2rem;--mat-sys-headline-small-size: 1.5rem;--mat-sys-headline-small-tracking: 0;--mat-sys-headline-small-weight: 400;--mat-sys-label-large: 500 .8125rem / 1.25rem var(--font-sans);--mat-sys-label-large-font: var(--font-sans);--mat-sys-label-large-line-height: 1.25rem;--mat-sys-label-large-size: .8125rem;--mat-sys-label-large-tracking: .006rem;--mat-sys-label-large-weight: 500;--mat-sys-label-large-weight-prominent: 700;--mat-sys-label-medium: 500 .75rem / 1rem var(--font-sans);--mat-sys-label-medium-font: var(--font-sans);--mat-sys-label-medium-line-height: 1rem;--mat-sys-label-medium-size: .75rem;--mat-sys-label-medium-tracking: .031rem;--mat-sys-label-medium-weight: 500;--mat-sys-label-medium-weight-prominent: 700;--mat-sys-label-small: 500 .688rem / 1rem var(--font-sans);--mat-sys-label-small-font: var(--font-sans);--mat-sys-label-small-line-height: 1rem;--mat-sys-label-small-size: .688rem;--mat-sys-label-small-tracking: .031rem;--mat-sys-label-small-weight: 500;--mat-sys-title-large: 400 1.375rem / 1.75rem var(--font-sans);--mat-sys-title-large-font: var(--font-sans);--mat-sys-title-large-line-height: 1.75rem;--mat-sys-title-large-size: 1.375rem;--mat-sys-title-large-tracking: 0;--mat-sys-title-large-weight: 400;--mat-sys-title-medium: 500 1rem / 1.5rem var(--font-sans);--mat-sys-title-medium-font: var(--font-sans);--mat-sys-title-medium-line-height: 1.5rem;--mat-sys-title-medium-size: 1rem;--mat-sys-title-medium-tracking: .009rem;--mat-sys-title-medium-weight: 500;--mat-sys-title-small: 500 .8125rem / 1.25rem var(--font-sans);--mat-sys-title-small-font: var(--font-sans);--mat-sys-title-small-line-height: 1.25rem;--mat-sys-title-small-size: .8125rem;--mat-sys-title-small-tracking: .006rem;--mat-sys-title-small-weight: 500;--mat-sys-background: light-dark( var(--color-neutral-100), var(--color-neutral-900) );--mat-sys-on-background: light-dark( var(--color-neutral-950), var(--color-white) );--mat-sys-surface: light-dark( var(--color-neutral-100), var(--color-neutral-900) );--mat-sys-surface-dim: light-dark( var(--color-neutral-100), var(--color-neutral-950) );--mat-sys-surface-bright: light-dark( var(--color-white), var(--color-neutral-900) );--mat-sys-surface-tint: var(--color-control-accent-container);--mat-sys-surface-variant: light-dark( var(--color-neutral-50), var(--color-neutral-800) );--mat-sys-surface-container-lowest: light-dark( var(--color-white), var(--color-neutral-950) );--mat-sys-surface-container-low: light-dark( var(--color-neutral-50), var(--color-neutral-900) );--mat-sys-surface-container: light-dark( var(--color-neutral-100), var(--color-neutral-800) );--mat-sys-surface-container-high: light-dark( var(--color-neutral-200), var(--color-neutral-700) );--mat-sys-surface-container-highest: light-dark( var(--color-neutral-300), var(--color-neutral-600) );--mat-sys-on-surface: light-dark( var(--color-neutral-950), var(--color-white) );--mat-sys-on-surface-variant: var(--color-neutral-500);--mat-sys-primary: var(--color-control-accent);--mat-sys-primary-container: var(--color-control-accent-container);--mat-sys-primary-fixed: var(--color-control-accent);--mat-sys-primary-fixed-dim: var(--color-control-accent-dim);--mat-sys-on-primary: var(--color-control-on-accent);--mat-sys-on-primary-container: var(--color-control-on-accent-container);--mat-sys-on-primary-fixed: var(--color-control-on-accent);--mat-sys-on-primary-fixed-variant: var(--color-control-on-accent);--mat-sys-error: var(--color-error-600);--mat-sys-error-container: light-dark( var(--color-error-50), var(--color-error-950) );--mat-sys-on-error: var(--color-error-50);--mat-sys-on-error-container: light-dark( var(--color-error-950), var(--color-error-50) );--mat-sys-outline: light-dark( var(--color-neutral-300), var(--color-neutral-700) );--mat-sys-outline-variant: light-dark( var(--color-neutral-300), var(--color-neutral-700) );--mat-sys-scrim: light-dark(var(--color-neutral-950), var(--color-black));--mat-sys-shadow: var(--color-black);--mat-sys-inverse-primary: var(--color-control-accent);--mat-sys-inverse-surface: light-dark( var(--color-neutral-900), var(--color-neutral-100) );--mat-sys-inverse-on-surface: light-dark( var(--color-white), var(--color-neutral-950) );--mat-sys-neutral-variant20: var(--color-neutral-900);--mat-sys-neutral10: var(--color-neutral-950);--mat-sys-level0: 0px 0px 0px 0px var(--mat-sys-shadow), 0px 0px 0px 0px var(--mat-sys-shadow), 0px 0px 0px 0px var(--mat-sys-shadow);--mat-sys-level1: 0px 2px 1px -1px var(--mat-sys-shadow), 0px 1px 1px 0px var(--mat-sys-shadow), 0px 1px 3px 0px var(--mat-sys-shadow);--mat-sys-level2: 0px 3px 3px -2px var(--mat-sys-shadow), 0px 3px 4px 0px var(--mat-sys-shadow), 0px 1px 8px 0px var(--mat-sys-shadow);--mat-sys-level3: 0px 3px 5px -1px var(--mat-sys-shadow), 0px 6px 10px 0px var(--mat-sys-shadow), 0px 1px 18px 0px var(--mat-sys-shadow);--mat-sys-level4: 0px 5px 5px -3px var(--mat-sys-shadow), 0px 8px 10px 1px var(--mat-sys-shadow), 0px 3px 14px 2px var(--mat-sys-shadow);--mat-sys-level5: 0px 7px 8px -4px var(--mat-sys-shadow), 0px 12px 17px 2px var(--mat-sys-shadow), 0px 5px 22px 4px var(--mat-sys-shadow);--mat-sys-corner-extra-large: 28px;--mat-sys-corner-extra-large-top: 28px 28px 0 0;--mat-sys-corner-extra-small: 4px;--mat-sys-corner-extra-small-top: 4px 4px 0 0;--mat-sys-corner-full: 9999px;--mat-sys-corner-large: 16px;--mat-sys-corner-large-end: 0 16px 16px 0;--mat-sys-corner-large-start: 16px 0 0 16px;--mat-sys-corner-large-top: 16px 16px 0 0;--mat-sys-corner-medium: 12px;--mat-sys-corner-none: 0;--mat-sys-corner-small: 8px;--mat-sys-dragged-state-layer-opacity: .16;--mat-sys-focus-state-layer-opacity: .12;--mat-sys-hover-state-layer-opacity: .08;--mat-sys-pressed-state-layer-opacity: .12;--mat-badge-background-color: var(--color-control-accent);--mat-badge-text-color: var(--color-control-on-accent);--mat-bottom-sheet-container-shape: .5rem;--mat-button-text-container-shape: .5rem;--mat-button-text-container-height: 2.25rem;--mat-button-text-horizontal-padding: .75rem;--mat-button-text-with-icon-horizontal-padding: .75rem;--mat-button-text-icon-offset: 0rem;--mat-button-outlined-container-shape: .5rem;--mat-button-outlined-container-height: 2.25rem;--mat-button-outlined-horizontal-padding: .75rem;--mat-button-outlined-icon-offset: 0rem;--mat-button-outlined-label-text-color: light-dark( var(--color-neutral-950), var(--color-white) );--mat-button-outlined-state-layer-color: light-dark( var(--color-neutral-950), var(--color-white) );--mat-button-outlined-ripple-color: light-dark( color-mix(in srgb, light-dark(var(--zinc-950), var(--graphite-950)) 10%, transparent), color-mix(in srgb, #FFFFFF 10%, transparent) );--mat-button-tonal-container-shape: .5rem;--mat-button-tonal-container-height: 2.25rem;--mat-button-tonal-horizontal-padding: .75rem;--mat-button-tonal-icon-offset: 0rem;--mat-button-filled-container-shape: .5rem;--mat-button-filled-container-height: 2.25rem;--mat-button-filled-horizontal-padding: .75rem;--mat-button-filled-icon-offset: 0rem;--mat-button-protected-container-shape: .5rem;--mat-button-protected-container-height: 2.25rem;--mat-button-protected-horizontal-padding: .75rem;--mat-button-protected-icon-offset: 0rem;--mat-icon-button-container-shape: .5rem;--mat-icon-button-icon-size: 1rem;--mat-icon-button-state-layer-size: 2.25rem;--mat-button-toggle-shape: .5rem;--mat-button-toggle-height: 2.125rem;--mat-card-elevated-container-shape: .75rem;--mat-card-elevated-container-color: light-dark( var(--color-white), var(--color-neutral-800) );--mat-card-filled-container-shape: .75rem;--mat-card-filled-container-color: light-dark( var(--color-neutral-100), var(--color-neutral-800) );--mat-card-outlined-container-shape: .75rem;--mat-card-outlined-container-color: light-dark( var(--color-white), var(--color-neutral-800) );--mat-checkbox-state-layer-size: 2.25rem;--mat-option-label-text-size: var(--text-base);--mat-option-label-text-line-height: var(--leading-5);--mat-datepicker-calendar-container-background-color: light-dark( var(--color-white), var(--color-neutral-800) );--mat-datepicker-calendar-container-elevation-shadow: var(--mat-sys-level2);--mat-datepicker-calendar-container-shape: .5rem;--mat-dialog-container-shape: 1rem;--mat-expansion-header-text-size: var(--text-base);--mat-expansion-header-text-weight: var(--font-weight-medium);--mat-expansion-container-text-size: var(--text-base);--mat-expansion-container-text-weight: var(--text-base--font-weight);--mat-expansion-container-text-tracking: var(--tracking-normal);--mat-expansion-container-shape: 0;--mat-expansion-container-elevation-shadow: none;--mat-expansion-container-background-color: transparent;--mat-icon-color: currentColor;--mat-list-active-indicator-shape: .5rem;--mat-list-list-item-one-line-container-height: 2.25rem;--mat-list-list-item-container-shape: .5rem;--mat-list-list-item-label-text-size: var(--text-base);--mat-list-list-item-label-text-tracking: var(--tracking-normal);--mat-list-active-indicator-color: light-dark( var(--color-neutral-200), var(--color-neutral-800) );--mat-menu-container-shape: .5rem;--mat-menu-container-color: light-dark( var(--color-white), var(--color-neutral-800) );--mat-menu-divider-bottom-spacing: .25rem;--mat-menu-divider-top-spacing: .25rem;--mat-menu-divider-color: light-dark( var(--color-neutral-200), var(--color-neutral-700) );--mat-menu-item-icon-color: currentColor;--mat-menu-item-icon-size: 1rem;--mat-menu-item-label-text-size: var(--text-base);--mat-menu-item-label-text-weight: var(--text-base--font-weight);--mat-paginator-container-background-color: light-dark( var(--color-white), var(--color-neutral-800) );--mat-progress-bar-track-color: light-dark( var(--color-neutral-200), var(--color-neutral-800) );--mat-select-trigger-text-size: var(--text-base);--mat-select-trigger-text-line-height: var(--leading-5);--mat-select-trigger-text-tracking: var(--tracking-normal);--mat-select-panel-background-color: light-dark( var(--color-white), var(--color-neutral-800) );--mat-sidenav-container-background-color: light-dark( var(--color-neutral-100), var(--color-neutral-950) );--mat-sidenav-sidenav-background-color: light-dark( var(--color-neutral-100), var(--color-neutral-950) );--mat-sidenav-content-background-color: light-dark( var(--color-white), var(--color-neutral-900) );--mat-sidenav-container-text-color: light-dark( var(--color-neutral-950), var(--color-white) );--mat-sidenav-container-shape: 0;--mat-sidenav-container-divider-color: transparent;--mat-slide-toggle-track-width: 2.5rem;--mat-slide-toggle-track-height: 1.5rem;--mat-slide-toggle-track-outline-width: 1px;--mat-slide-toggle-handle-height: 1rem;--mat-slide-toggle-with-icon-handle-size: 1rem;--mat-slide-toggle-selected-with-icon-handle-horizontal-margin: 0 1.25rem;--mat-slide-toggle-unselected-icon-size: .75rem;--mat-slide-toggle-selected-icon-size: .75rem;--mat-slide-toggle-selected-handle-size: 1rem;--mat-slide-toggle-unselected-handle-size: 1rem;--mat-slide-toggle-unselected-handle-horizontal-margin: 0 .25rem;--mat-slide-toggle-selected-handle-horizontal-margin: 0 1.25rem;--mat-slide-toggle-unselected-icon-color: light-dark( color-mix(in srgb, #000000 40%, transparent), color-mix(in srgb, #FFFFFF 40%, transparent) );--mat-slide-toggle-selected-icon-color: var(--color-neutral-950);--mat-table-background-color: transparent;--mat-table-row-item-outline-color: light-dark( var(--color-neutral-200), var(--color-neutral-800) );--mat-tab-container-height: 2.25rem;--mat-tab-divider-color: light-dark( var(--color-neutral-200), var(--color-neutral-800) )}@supports (color: color-mix(in lab,red,red)){#fuse{--mat-sys-level0: 0px 0px 0px 0px color-mix(in srgb, var(--mat-sys-shadow), transparent 80%), 0px 0px 0px 0px color-mix(in srgb, var(--mat-sys-shadow), transparent 86%), 0px 0px 0px 0px color-mix(in srgb, var(--mat-sys-shadow), transparent 88%)}}@supports (color: color-mix(in lab,red,red)){#fuse{--mat-sys-level1: 0px 2px 1px -1px color-mix(in srgb, var(--mat-sys-shadow), transparent 80%), 0px 1px 1px 0px color-mix(in srgb, var(--mat-sys-shadow), transparent 86%), 0px 1px 3px 0px color-mix(in srgb, var(--mat-sys-shadow), transparent 88%)}}@supports (color: color-mix(in lab,red,red)){#fuse{--mat-sys-level2: 0px 3px 3px -2px color-mix(in srgb, var(--mat-sys-shadow), transparent 80%), 0px 3px 4px 0px color-mix(in srgb, var(--mat-sys-shadow), transparent 86%), 0px 1px 8px 0px color-mix(in srgb, var(--mat-sys-shadow), transparent 88%)}}@supports (color: color-mix(in lab,red,red)){#fuse{--mat-sys-level3: 0px 3px 5px -1px color-mix(in srgb, var(--mat-sys-shadow), transparent 80%), 0px 6px 10px 0px color-mix(in srgb, var(--mat-sys-shadow), transparent 86%), 0px 1px 18px 0px color-mix(in srgb, var(--mat-sys-shadow), transparent 88%)}}@supports (color: color-mix(in lab,red,red)){#fuse{--mat-sys-level4: 0px 5px 5px -3px color-mix(in srgb, var(--mat-sys-shadow), transparent 80%), 0px 8px 10px 1px color-mix(in srgb, var(--mat-sys-shadow), transparent 86%), 0px 3px 14px 2px color-mix(in srgb, var(--mat-sys-shadow), transparent 88%)}}@supports (color: color-mix(in lab,red,red)){#fuse{--mat-sys-level5: 0px 7px 8px -4px color-mix(in srgb, var(--mat-sys-shadow), transparent 80%), 0px 12px 17px 2px color-mix(in srgb, var(--mat-sys-shadow), transparent 86%), 0px 5px 22px 4px color-mix(in srgb, var(--mat-sys-shadow), transparent 88%)}}@media(width>=40rem){#fuse [class^=mat-mdc-][class$=-touch-target]{display:none}}@supports (color: color-mix(in lab,red,red)){#fuse{--mat-button-outlined-ripple-color: light-dark( color-mix(in oklch, var(--color-neutral-950) 10%, transparent), color-mix(in oklch, var(--color-white) 10%, transparent) )}}#fuse .mat-mdc-button-base{--mat-icon-color: currentColor}#fuse .mat-mdc-button-base.small{--mat-button-text-container-height: 1.75rem;--mat-button-outlined-container-height: 1.75rem;--mat-button-tonal-container-height: 1.75rem;--mat-button-filled-container-height: 1.75rem;--mat-button-protected-container-height: 1.75rem}#fuse mat-card.mat-mdc-card-filled{padding:.5rem .25rem .25rem}#fuse mat-card.mat-mdc-card-filled .mat-mdc-card-header{padding:0 .25rem calc(.5rem - 1px) .75rem;min-height:2rem}#fuse mat-card.mat-mdc-card-filled .mat-mdc-card-content{background:light-dark(var(--color-white),var(--color-neutral-900));border-radius:.5rem;padding:1rem;border:1px solid light-dark(var(--color-neutral-200),var(--color-neutral-700))}#fuse .mat-pseudo-checkbox-minimal{width:1rem;height:1rem}#fuse .mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-checked:after{width:.625rem;height:.25rem;border-left-width:.09375rem;border-bottom-width:.09375rem}#fuse .mat-mdc-option{min-height:2.25rem}#fuse .mat-expansion-panel{border-radius:.5rem}#fuse .mat-mdc-form-field{height:fit-content;font-family:var(--form-field-font-family);font-feature-settings:var(--form-field-font-feature-settings);font-optical-sizing:var(--form-field-font-optical-sizing);-webkit-font-smoothing:var(--form-field-font-smoothing);font-size:var(--form-field-font-size);line-height:var(--form-field-line-height);font-weight:var(--form-field-font-weight);letter-spacing:var(--form-field-letter-spacing)}#fuse .mat-mdc-form-field:has(.mat-mdc-text-field-wrapper:not(.mdc-text-field--no-label)){margin-top:calc(var(--form-field-gap-y) + var(--form-field-label-line-height))}#fuse .mat-mdc-form-field .mat-mdc-form-field-focus-overlay,#fuse .mat-mdc-form-field .mdc-line-ripple{display:none}#fuse .mat-mdc-form-field .mat-mdc-text-field-wrapper{isolation:isolate;position:relative;overflow:visible;border-width:1px;border-style:solid;border-color:var(--form-field-border-color);border-radius:var(--form-field-border-radius);background:var(--form-field-bg-color);padding:0}#fuse .mat-mdc-form-field .mat-mdc-text-field-wrapper:not(.mdc-text-field--disabled){box-shadow:0 1px 2px 0 var(--form-field-shadow-color)}[dir=rtl] :is(#fuse .mat-mdc-form-field .mat-mdc-text-field-wrapper){padding:0}#fuse .mat-mdc-form-field .mat-mdc-text-field-wrapper:after{content:"";position:absolute;inset:-1px;z-index:-10;pointer-events:none;border-radius:var(--form-field-border-radius);box-shadow:inset 0 0 0 2px var(--form-field-outline-color)}#fuse .mat-mdc-form-field .mat-mdc-text-field-wrapper.mdc-text-field--invalid:not(.mdc-text-field--disabled){border-color:var(--form-field-border-color-error)}#fuse .mat-mdc-form-field .mat-mdc-text-field-wrapper.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mat-mdc-form-field-flex .mat-mdc-form-field-infix label{color:var(--form-field-text-color-error)}#fuse .mat-mdc-form-field .mat-mdc-text-field-wrapper.mdc-text-field--disabled{opacity:50%}#fuse .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex{position:static;align-items:center;column-gap:var(--form-field-gap-x);padding-block:calc(var(--form-field-padding-y) - 1px);padding-inline:calc(var(--form-field-padding-x) - 1px)}[dir=rtl] :is(#fuse .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex){padding-block:calc(var(--form-field-padding-y) - 1px);padding-inline:calc(var(--form-field-padding-x) - 1px)}#fuse .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex:has(.mat-mdc-form-field-textarea-control){align-items:flex-start}#fuse .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-form-field-infix{position:static;display:flex;width:auto;min-height:0;padding:0}#fuse .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-form-field-infix label{transition:none;transform:none;top:calc(-1 * (var(--form-field-label-line-height) + var(--form-field-gap-y)));left:0;font-size:var(--form-field-label-font-size);line-height:var(--form-field-label-line-height);font-weight:var(--form-field-label-font-weight);letter-spacing:var(--form-field-label-letter-spacing);color:var(--form-field-text-color)}[dir=rtl] :is(#fuse .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-form-field-infix label){left:auto;right:0}#fuse .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-form-field-infix .mat-mdc-input-element{color:var(--form-field-text-color);caret-color:currentColor}#fuse .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-form-field-infix .mat-mdc-input-element::placeholder{transition:none;opacity:1;color:var(--form-field-placeholder-color)}#fuse .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-form-field-infix .mat-mdc-input-element.mat-mdc-form-field-textarea-control{min-height:var(--form-field-line-height)}#fuse .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-form-field-text-prefix,#fuse .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-form-field-icon-prefix,#fuse .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-form-field-text-suffix,#fuse .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-form-field-icon-suffix{display:flex;align-items:center;justify-content:center;align-self:unset;padding:0;color:var(--form-field-affix-color);height:var(--form-field-line-height);line-height:var(--form-field-line-height)}:is(#fuse .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-form-field-text-prefix,#fuse .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-form-field-icon-prefix,#fuse .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-form-field-text-suffix,#fuse .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-form-field-icon-suffix) .mat-icon{box-sizing:border-box;padding:0;color:var(--form-field-affix-color);width:var(--form-field-icon-size);height:var(--form-field-icon-size);font-size:var(--form-field-icon-size);margin-left:var(--form-field-icon-margin-x);margin-right:var(--form-field-icon-margin-x)}[dir=rtl] :is(:is(#fuse .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-form-field-text-prefix,#fuse .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-form-field-icon-prefix,#fuse .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-form-field-text-suffix,#fuse .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-form-field-icon-suffix) .mat-icon){margin-left:var(--form-field-icon-margin-x);margin-right:var(--form-field-icon-margin-x)}:is(#fuse .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-form-field-text-prefix,#fuse .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-form-field-icon-prefix,#fuse .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-form-field-text-suffix,#fuse .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-form-field-icon-suffix) .mat-icon svg{width:var(--form-field-icon-size);height:var(--form-field-icon-size)}#fuse .mat-mdc-form-field .mat-mdc-form-field-subscript-wrapper{font-size:var(--form-field-subscript-font-size);line-height:var(--form-field-subscript-line-height);font-weight:var(--form-field-subscript-font-weight);letter-spacing:var(--form-field-subscript-letter-spacing);display:flex}#fuse .mat-mdc-form-field .mat-mdc-form-field-subscript-wrapper .mat-mdc-form-field-hint-wrapper,#fuse .mat-mdc-form-field .mat-mdc-form-field-subscript-wrapper .mat-mdc-form-field-error-wrapper{position:relative;display:flex;flex:1 1 auto;padding:0;margin:var(--form-field-gap-y) 0 0 0;min-height:var(--form-field-subscript-line-height)}#fuse .mat-mdc-form-field .mat-mdc-form-field-subscript-wrapper .mat-mdc-form-field-error{display:flex;color:var(--form-field-text-color-error)}#fuse .mat-mdc-form-field .mat-mdc-form-field-subscript-wrapper .mat-mdc-form-field-hint{display:flex;color:var(--form-field-hint-color)}#fuse .mat-mdc-form-field .mat-mdc-form-field-subscript-wrapper .mat-mdc-form-field-hint-spacer{flex:1 1 auto}#fuse .mat-mdc-form-field .mat-mdc-form-field-subscript-wrapper.mat-mdc-form-field-subscript-dynamic-size .mat-mdc-form-field-hint-wrapper:not(:has(.mat-mdc-form-field-hint)),#fuse .mat-mdc-form-field .mat-mdc-form-field-subscript-wrapper.mat-mdc-form-field-subscript-dynamic-size .mat-mdc-form-field-error-wrapper:not(:has(.mat-mdc-form-field-error)){margin:0}#fuse .mat-mdc-form-field .mat-mdc-form-field-subscript-wrapper.mat-mdc-form-field-subscript-dynamic-size .mat-mdc-form-field-hint-wrapper,#fuse .mat-mdc-form-field .mat-mdc-form-field-subscript-wrapper.mat-mdc-form-field-subscript-dynamic-size .mat-mdc-form-field-error-wrapper{min-height:0}#fuse .mat-mdc-form-field .mat-mdc-form-field-bottom-align:before{display:none}#fuse .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mdc-notched-outline .mdc-notched-outline__leading,#fuse .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mdc-notched-outline .mdc-notched-outline__trailing{display:none}#fuse .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mdc-notched-outline .mdc-notched-outline__notch{border:none!important;width:100%!important}#fuse .mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mdc-notched-outline .mdc-notched-outline__notch label{transition:none!important;transform:none!important;max-width:100%!important;top:calc(-1 * (var(--form-field-label-line-height) + var(--form-field-gap-y)));left:0;font-size:var(--form-field-label-font-size);line-height:var(--form-field-label-line-height);font-weight:var(--form-field-label-font-weight);letter-spacing:var(--form-field-label-letter-spacing);color:var(--form-field-text-color)}#fuse .mat-mdc-form-field{--form-field-font-family: var(--font-sans);--form-field-font-feature-settings: var(--font-sans--font-feature-settings);--form-field-font-optical-sizing: var(--font-optical-sizing);--form-field-font-smoothing: var(--font-smoothing);--form-field-font-size: var(--text-base);--form-field-line-height: var(--leading-5);--form-field-font-weight: var(--font-weight-normal);--form-field-letter-spacing: var(--tracking-normal);--form-field-label-font-size: var(--text-base);--form-field-label-line-height: var(--leading-5);--form-field-label-font-weight: var(--font-weight-medium);--form-field-label-letter-spacing: var(--tracking-normal);--form-field-subscript-font-size: var(--text-xs);--form-field-subscript-line-height: var(--leading-4);--form-field-subscript-font-weight: var(--font-weight-normal);--form-field-subscript-letter-spacing: var(--tracking-normal);--form-field-border-radius: .5rem;--form-field-margin-top: 1.5rem;--form-field-padding-y: .5rem;--form-field-padding-x: .75rem;--form-field-gap-y: .5rem;--form-field-gap-x: .5rem;--form-field-icon-size: 1rem;--form-field-icon-margin-x: -.125rem;--form-field-text-color: light-dark( var(--color-neutral-950), var(--color-white) );--form-field-text-color-error: var(--color-error-500);--form-field-hint-color: var(--color-neutral-500);--form-field-placeholder-color: var(--color-neutral-500);--form-field-affix-color: var(--color-neutral-500);--form-field-bg-color: light-dark( var(--color-white), var(--color-neutral-800) );--form-field-border-color: light-dark( var(--color-neutral-300), var(--color-neutral-700) );--form-field-border-color-error: light-dark( var(--color-error-600), var(--color-error-500) );--form-field-shadow-color: color-mix( in oklch, #000000, transparent 95% );--form-field-outline-color: transparent}@supports (color: color-mix(in lab,red,red)){#fuse .mat-mdc-form-field{--form-field-shadow-color: color-mix( in oklch, var(--color-black), transparent 95% )}}#fuse .mat-mdc-form-field.mat-focused{--form-field-outline-color: var(--color-control-accent)}:is(#fuse .mat-mdc-form-field .mat-mdc-form-field-text-prefix,#fuse .mat-mdc-form-field .mat-mdc-form-field-icon-prefix,#fuse .mat-mdc-form-field .mat-mdc-form-field-text-suffix,#fuse .mat-mdc-form-field .mat-mdc-form-field-icon-suffix) .mat-mdc-icon-button{--mat-icon-button-state-layer-size: var(--form-field-line-height);--mat-icon-button-hover-state-layer-opacity: 0;--mat-icon-button-focus-state-layer-opacity: 0;--mat-icon-button-pressed-state-layer-opacity: 0;--mat-icon-button-touch-target-display: none;display:flex;align-items:center;justify-content:center;padding:0}:is(#fuse .mat-mdc-form-field .mat-mdc-form-field-text-prefix,#fuse .mat-mdc-form-field .mat-mdc-form-field-icon-prefix,#fuse .mat-mdc-form-field .mat-mdc-form-field-text-suffix,#fuse .mat-mdc-form-field .mat-mdc-form-field-icon-suffix) .mat-mdc-icon-button:hover{color:var(--form-field-text-color)}@media screen and (max-width:640px){#fuse .mat-mdc-form-field{--form-field-font-size: var(--text-lg)}}#fuse .mat-icon{width:1rem;height:1rem}#fuse .mat-mdc-menu-content{padding:.25rem 0}#fuse .mat-mdc-menu-item{min-height:2rem}#fuse .mdc-linear-progress{border-radius:.5rem;overflow:hidden}#fuse .mat-mdc-select-arrow-wrapper{height:1.25rem;transform:none}#fuse .mat-mdc-select-panel{border-radius:.5rem}@media screen and (max-width:640px){#fuse{--mat-select-trigger-text-size: var(--text-lg)}}#fuse .mat-drawer-container{display:flex;flex:1 1 auto;background:var(--mat-sidenav-container-background-color)}#fuse .mat-drawer-container .mat-drawer{background:var(--mat-sidenav-sidenav-background-color)}#fuse .mat-drawer-container .mat-drawer .mat-drawer-inner-container{display:flex}#fuse .mat-drawer-container .mat-drawer-content{display:flex;flex:1 1 auto;flex-direction:column;height:auto;background:var(--mat-sidenav-content-background-color)}@supports (color: color-mix(in lab,red,red)){#fuse{--mat-slide-toggle-unselected-icon-color: light-dark( color-mix(in oklch, var(--color-black) 40%, transparent), color-mix(in oklch, var(--color-white) 40%, transparent) )}}#fuse .mdc-data-table__row:last-child>.mat-mdc-cell{border-bottom-color:var( --mat-table-row-item-outline-color, var(--mat-sys-outline, rgba(0, 0, 0, .12)) );border-bottom-width:var(--mat-table-row-item-outline-width, 1px);border-bottom-style:solid}#fuse .mat-mdc-tooltip{--mdc-plain-tooltip-container-color: var(--color-text);--mdc-plain-tooltip-supporting-text-color: var(--color-surface);--mdc-plain-tooltip-supporting-text-font: var(--font-sans-stack);--mdc-plain-tooltip-supporting-text-size: var(--text-xs);--mdc-plain-tooltip-supporting-text-weight: 500;--mdc-plain-tooltip-container-shape: var(--radius-sm)}#fuse .mat-mdc-tooltip .mdc-tooltip__surface{padding:.25rem .5rem;line-height:1.4;max-width:18rem}#fuse mat-icon svg{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}@property --tw-scale-x{syntax: "*"; inherits: false; initial-value: 1;}@property --tw-scale-y{syntax: "*"; inherits: false; initial-value: 1;}@property --tw-scale-z{syntax: "*"; inherits: false; initial-value: 1;}@property --tw-rotate-x{syntax: "*"; inherits: false;}@property --tw-rotate-y{syntax: "*"; inherits: false;}@property --tw-rotate-z{syntax: "*"; inherits: false;}@property --tw-skew-x{syntax: "*"; inherits: false;}@property --tw-skew-y{syntax: "*"; inherits: false;}@property --tw-divide-y-reverse{syntax: "*"; inherits: false; initial-value: 0;}@property --tw-border-style{syntax: "*"; inherits: false; initial-value: solid;}@property --tw-leading{syntax: "*"; inherits: false;}@property --tw-font-weight{syntax: "*"; inherits: false;}@property --tw-tracking{syntax: "*"; inherits: false;}@property --tw-ordinal{syntax: "*"; inherits: false;}@property --tw-slashed-zero{syntax: "*"; inherits: false;}@property --tw-numeric-figure{syntax: "*"; inherits: false;}@property --tw-numeric-spacing{syntax: "*"; inherits: false;}@property --tw-numeric-fraction{syntax: "*"; inherits: false;}@property --tw-shadow{syntax: "*"; inherits: false; initial-value: 0 0 #0000;}@property --tw-shadow-color{syntax: "*"; inherits: false;}@property --tw-shadow-alpha{syntax: "<percentage>"; inherits: false; initial-value: 100%;}@property --tw-inset-shadow{syntax: "*"; inherits: false; initial-value: 0 0 #0000;}@property --tw-inset-shadow-color{syntax: "*"; inherits: false;}@property --tw-inset-shadow-alpha{syntax: "<percentage>"; inherits: false; initial-value: 100%;}@property --tw-ring-color{syntax: "*"; inherits: false;}@property --tw-ring-shadow{syntax: "*"; inherits: false; initial-value: 0 0 #0000;}@property --tw-inset-ring-color{syntax: "*"; inherits: false;}@property --tw-inset-ring-shadow{syntax: "*"; inherits: false; initial-value: 0 0 #0000;}@property --tw-ring-inset{syntax: "*"; inherits: false;}@property --tw-ring-offset-width{syntax: "<length>"; inherits: false; initial-value: 0px;}@property --tw-ring-offset-color{syntax: "*"; inherits: false; initial-value: #fff;}@property --tw-ring-offset-shadow{syntax: "*"; inherits: false; initial-value: 0 0 #0000;}@property --tw-blur{syntax: "*"; inherits: false;}@property --tw-brightness{syntax: "*"; inherits: false;}@property --tw-contrast{syntax: "*"; inherits: false;}@property --tw-grayscale{syntax: "*"; inherits: false;}@property --tw-hue-rotate{syntax: "*"; inherits: false;}@property --tw-invert{syntax: "*"; inherits: false;}@property --tw-opacity{syntax: "*"; inherits: false;}@property --tw-saturate{syntax: "*"; inherits: false;}@property --tw-sepia{syntax: "*"; inherits: false;}@property --tw-drop-shadow{syntax: "*"; inherits: false;}@property --tw-drop-shadow-color{syntax: "*"; inherits: false;}@property --tw-drop-shadow-alpha{syntax: "<percentage>"; inherits: false; initial-value: 100%;}@property --tw-drop-shadow-size{syntax: "*"; inherits: false;}@keyframes spin{to{transform:rotate(360deg)}}@layer properties{@supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-scale-x: 1;--tw-scale-y: 1;--tw-scale-z: 1;--tw-rotate-x: initial;--tw-rotate-y: initial;--tw-rotate-z: initial;--tw-skew-x: initial;--tw-skew-y: initial;--tw-divide-y-reverse: 0;--tw-border-style: solid;--tw-leading: initial;--tw-font-weight: initial;--tw-tracking: initial;--tw-ordinal: initial;--tw-slashed-zero: initial;--tw-numeric-figure: initial;--tw-numeric-spacing: initial;--tw-numeric-fraction: initial;--tw-shadow: 0 0 #0000;--tw-shadow-color: initial;--tw-shadow-alpha: 100%;--tw-inset-shadow: 0 0 #0000;--tw-inset-shadow-color: initial;--tw-inset-shadow-alpha: 100%;--tw-ring-color: initial;--tw-ring-shadow: 0 0 #0000;--tw-inset-ring-color: initial;--tw-inset-ring-shadow: 0 0 #0000;--tw-ring-inset: initial;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-offset-shadow: 0 0 #0000;--tw-blur: initial;--tw-brightness: initial;--tw-contrast: initial;--tw-grayscale: initial;--tw-hue-rotate: initial;--tw-invert: initial;--tw-opacity: initial;--tw-saturate: initial;--tw-sepia: initial;--tw-drop-shadow: initial;--tw-drop-shadow-color: initial;--tw-drop-shadow-alpha: 100%;--tw-drop-shadow-size: initial}}}
