:root{--forest:#2d5016;--forest-d:#1e3610;--forest-l:#3d6b1e;--olive:#5c7a2a;--sage:#8fa85a;--sage-l:#b5c98a;--gold:#b8892a;--gold-l:#d4a84b;--gold-pale:#f0d89a;--khaki:#c8b882;--cream:#f5f0e8;--linen:#ede8dc;--linen-d:#d8d2c4;--white:#fdfbf7;--text:#1c2b0e;--text-mid:#3d4f2a;--text-muted:#7a8b6a;--red:#c0392b;--shadow:0 4px 24px #2d50161f}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{background:var(--white);color:var(--text);margin:0;font-family:DM Sans,sans-serif}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button{cursor:pointer;font-family:DM Sans,sans-serif}input,select,textarea{font-family:DM Sans,sans-serif}@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-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--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;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-red-50:oklch(97.1% .013 17.38);--color-red-100:oklch(93.6% .032 17.717);--color-red-200:oklch(88.5% .062 18.334);--color-red-500:oklch(63.7% .237 25.331);--color-red-600:oklch(57.7% .245 27.325);--color-red-700:oklch(50.5% .213 27.518);--color-amber-50:oklch(98.7% .022 95.277);--color-amber-100:oklch(96.2% .059 95.617);--color-amber-700:oklch(55.5% .163 48.998);--color-emerald-50:oklch(97.9% .021 166.113);--color-emerald-100:oklch(95% .052 163.051);--color-emerald-400:oklch(76.5% .177 163.223);--color-emerald-500:oklch(69.6% .17 162.48);--color-emerald-600:oklch(59.6% .145 163.225);--color-emerald-700:oklch(50.8% .118 165.612);--color-blue-50:oklch(97% .014 254.604);--color-blue-100:oklch(93.2% .032 255.585);--color-blue-700:oklch(48.8% .243 264.376);--color-gray-50:oklch(98.5% .002 247.839);--color-gray-500:oklch(55.1% .027 264.364);--color-gray-600:oklch(44.6% .03 256.802);--color-gray-900:oklch(21% .034 264.665);--color-stone-50:oklch(98.5% .001 106.423);--color-stone-100:oklch(97% .001 106.424);--color-stone-200:oklch(92.3% .003 48.717);--color-stone-300:oklch(86.9% .005 56.366);--color-stone-400:oklch(70.9% .01 56.259);--color-stone-500:oklch(55.3% .013 58.071);--color-stone-600:oklch(44.4% .011 73.639);--color-stone-700:oklch(37.4% .01 67.558);--color-stone-800:oklch(26.8% .007 34.298);--color-white:#fff;--spacing:.25rem;--container-sm:24rem;--container-5xl:64rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--tracking-wider:.05em;--leading-tight:1.25;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--animate-spin:spin 1s linear infinite;--blur-sm:8px;--blur-3xl:64px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, 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;-webkit-text-decoration:inherit;-webkit-text-decoration: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{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}: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{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-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]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.start{inset-inline-start:var(--spacing)}.\!end{inset-inline-end:var(--spacing)!important}.end{inset-inline-end:var(--spacing)}.-top-28{top:calc(var(--spacing) * -28)}.top-1\/2{top:50%}.-right-20{right:calc(var(--spacing) * -20)}.right-2{right:calc(var(--spacing) * 2)}.-bottom-28{bottom:calc(var(--spacing) * -28)}.-left-20{left:calc(var(--spacing) * -20)}.z-\[1\]{z-index:1}.mx-2{margin-inline:calc(var(--spacing) * 2)}.mx-auto{margin-inline:auto}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-7{margin-top:calc(var(--spacing) * 7)}.mb-1\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.table{display:table}.h-2{height:calc(var(--spacing) * 2)}.h-4{height:calc(var(--spacing) * 4)}.h-8{height:calc(var(--spacing) * 8)}.h-72{height:calc(var(--spacing) * 72)}.min-h-screen{min-height:100vh}.w-2{width:calc(var(--spacing) * 2)}.w-4{width:calc(var(--spacing) * 4)}.w-8{width:calc(var(--spacing) * 8)}.w-72{width:calc(var(--spacing) * 72)}.w-full{width:100%}.max-w-5xl{max-width:var(--container-5xl)}.max-w-sm{max-width:var(--container-sm)}.shrink-0{flex-shrink:0}.border-collapse{border-collapse:collapse}.-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-spin{animation:var(--animate-spin)}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:calc(var(--spacing) * 1)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 5) * calc(1 - var(--tw-space-y-reverse)))}.overflow-hidden{overflow:hidden}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-t-2{border-top-style:var(--tw-border-style);border-top-width:2px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-\[\#cfdbca\]{border-color:#cfdbca}.border-\[\#d8e3cf\]{border-color:#d8e3cf}.border-amber-100{border-color:var(--color-amber-100)}.border-blue-100{border-color:var(--color-blue-100)}.border-emerald-100{border-color:var(--color-emerald-100)}.border-emerald-400{border-color:var(--color-emerald-400)}.border-red-100{border-color:var(--color-red-100)}.border-red-200{border-color:var(--color-red-200)}.border-stone-200{border-color:var(--color-stone-200)}.border-stone-300{border-color:var(--color-stone-300)}.border-t-transparent{border-top-color:#0000}.bg-\[\#2d5016\]{background-color:#2d5016}.bg-\[\#2d5016\]\/15{background-color:oklab(39.0862% -.0673862 .0667978/.15)}.bg-\[\#6b8b52\]\/20{background-color:oklab(59.7806% -.0604318 .0660957/.2)}.bg-\[\#d7e8ca\]{background-color:#d7e8ca}.bg-amber-50{background-color:var(--color-amber-50)}.bg-blue-50{background-color:var(--color-blue-50)}.bg-emerald-50{background-color:var(--color-emerald-50)}.bg-gray-50{background-color:var(--color-gray-50)}.bg-red-50{background-color:var(--color-red-50)}.bg-stone-50{background-color:var(--color-stone-50)}.bg-stone-100{background-color:var(--color-stone-100)}.bg-white{background-color:var(--color-white)}.bg-white\/95{background-color:#fffffff2}@supports (color:color-mix(in lab, red, red)){.bg-white\/95{background-color:color-mix(in oklab, var(--color-white) 95%, transparent)}}.bg-gradient-to-br{--tw-gradient-position:to bottom right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-\[\#244015\]{--tw-gradient-from:#244015;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-\[\#f4f7f2\]{--tw-gradient-from:#f4f7f2;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.via-\[\#f8faf7\]{--tw-gradient-via:#f8faf7;--tw-gradient-via-stops:var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.to-\[\#385f21\]{--tw-gradient-to:#385f21;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-\[\#e9f0e4\]{--tw-gradient-to:#e9f0e4;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.p-1{padding:calc(var(--spacing) * 1)}.p-3{padding:calc(var(--spacing) * 3)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.p-10{padding:calc(var(--spacing) * 10)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-3\.5{padding-inline:calc(var(--spacing) * 3.5)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-3\.5{padding-block:calc(var(--spacing) * 3.5)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-24{padding-block:calc(var(--spacing) * 24)}.pr-20{padding-right:calc(var(--spacing) * 20)}.pl-10{padding-left:calc(var(--spacing) * 10)}.text-left{text-align:left}.text-right{text-align:right}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[0\.1em\]{--tw-tracking:.1em;letter-spacing:.1em}.tracking-\[0\.12em\]{--tw-tracking:.12em;letter-spacing:.12em}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.break-all{word-break:break-all}.text-\[\#1f3220\]{color:#1f3220}.text-\[\#2d3f2f\]{color:#2d3f2f}.text-\[\#2f5a1f\]{color:#2f5a1f}.text-\[\#3D4F2A\]{color:#3d4f2a}.text-\[\#8b4513\]{color:#8b4513}.text-\[\#9aaa9c\]{color:#9aaa9c}.text-\[\#607163\]{color:#607163}.text-amber-700{color:var(--color-amber-700)}.text-blue-700{color:var(--color-blue-700)}.text-emerald-600{color:var(--color-emerald-600)}.text-emerald-700{color:var(--color-emerald-700)}.text-gray-500{color:var(--color-gray-500)}.text-gray-600{color:var(--color-gray-600)}.text-gray-900{color:var(--color-gray-900)}.text-red-500{color:var(--color-red-500)}.text-red-600{color:var(--color-red-600)}.text-red-700{color:var(--color-red-700)}.text-stone-400{color:var(--color-stone-400)}.text-stone-500{color:var(--color-stone-500)}.text-stone-600{color:var(--color-stone-600)}.text-stone-700{color:var(--color-stone-700)}.text-stone-800{color:var(--color-stone-800)}.text-white{color:var(--color-white)}.text-white\/80{color:#fffc}@supports (color:color-mix(in lab, red, red)){.text-white\/80{color:color-mix(in oklab, var(--color-white) 80%, transparent)}}.text-white\/85{color:#ffffffd9}@supports (color:color-mix(in lab, red, red)){.text-white\/85{color:color-mix(in oklab, var(--color-white) 85%, transparent)}}.uppercase{text-transform:uppercase}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.underline{text-decoration-line:underline}.underline-offset-2{text-underline-offset:2px}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.shadow-\[0_16px_50px_rgba\(28\,53\,16\,0\.16\)\]{--tw-shadow:0 16px 50px var(--tw-shadow-color,#1c351029);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.blur{--tw-blur:blur(8px);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,)}.blur-3xl{--tw-blur:blur(var(--blur-3xl));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,)}.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,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-100{--tw-duration:.1s;transition-duration:.1s}.duration-150{--tw-duration:.15s;transition-duration:.15s}.\[mm\:ss\]{mm:ss}@media (hover:hover){.hover\:border-stone-300:hover{border-color:var(--color-stone-300)}.hover\:bg-\[\#234111\]:hover{background-color:#234111}.hover\:bg-\[\#eef4e9\]:hover{background-color:#eef4e9}.hover\:bg-stone-50:hover{background-color:var(--color-stone-50)}.hover\:bg-stone-50\/70:hover{background-color:#fafaf9b3}@supports (color:color-mix(in lab, red, red)){.hover\:bg-stone-50\/70:hover{background-color:color-mix(in oklab, var(--color-stone-50) 70%, transparent)}}.hover\:text-stone-700:hover{color:var(--color-stone-700)}}.focus\:border-\[\#2f5a1f\]:focus{border-color:#2f5a1f}.focus\:border-emerald-400:focus{border-color:var(--color-emerald-400)}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus\:ring-\[\#7ea06c\]\/25:focus{--tw-ring-color:oklab(66.6663% -.0589162 .0586378/.25)}.focus\:ring-emerald-500\/30:focus{--tw-ring-color:#00bb7f4d}@supports (color:color-mix(in lab, red, red)){.focus\:ring-emerald-500\/30:focus{--tw-ring-color:color-mix(in oklab, var(--color-emerald-500) 30%, transparent)}}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-60:disabled{opacity:.6}@media (width>=40rem){.sm\:p-10{padding:calc(var(--spacing) * 10)}}@media (width>=64rem){.lg\:flex{display:flex}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:flex-col{flex-direction:column}.lg\:justify-between{justify-content:space-between}}}html{scroll-behavior:smooth}body{margin:0}#root{width:100%;max-width:none;margin:0;padding:0;overflow-x:hidden}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@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-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@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:0}@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}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}.dashboard{--portal-sidebar-width:256px;--dashboard-mobile-topbar-h:52px;--forest:#2d5016;--forest-dark:#1e3610;--forest-light:#3d6b1e;--olive:#5c7a2a;--sage:#8fa85a;--sage-light:#b5c98a;--gold:#b8892a;--gold-light:#d4a84b;--gold-pale:#f0d89a;--khaki:#c8b882;--cream:#f5f0e8;--linen:#ede8dc;--linen-dark:#d8d2c4;--white:#fdfbf7;--text-dark:#1c2b0e;--text-mid:#3d4f2a;--text-muted:#7a8b6a;--red:#c0392b;--red-light:#fadbd8;--teal:#1a6b5a;--teal-light:#e8f5f1;--radius:10px;--shadow:0 2px 16px #2d50161a;--shadow-md:0 6px 32px #2d501624}.dashboard *,.dashboard :before,.dashboard :after{box-sizing:border-box;margin:0;padding:0}.dashboard{background:var(--cream);color:var(--text-dark);box-sizing:border-box;min-height:100vh;font-family:DM Sans,sans-serif}.dashboard .portal-sidebar{--sidebar-bg:var(--forest-dark);--sidebar-bg-soft:#243818;--sidebar-border:#d8d2c426;--sidebar-text:var(--white);--sidebar-text-soft:#fdfbf7b3;--sidebar-accent:var(--gold);--sidebar-accent-soft:#b8892a40;--sidebar-accent-strong:var(--gold-light);--sidebar-hover:#fdfbf714;--sidebar-card:#fdfbf714;letter-spacing:.1px;background:linear-gradient(180deg, var(--forest-dark) 0%, #182c0e 100%);border-right:1px solid var(--sidebar-border);height:100vh;width:var(--portal-sidebar-width);z-index:40;flex-direction:column;display:flex;position:fixed;top:0;left:0;box-shadow:0 20px 40px #121e0847,inset -1px 0 #ffffff08}.dashboard .portal-sidebar button{line-height:1.25}.dashboard .portal-sidebar__header{background:linear-gradient(90deg, var(--forest-dark), var(--sidebar-bg-soft));border-bottom:1px solid var(--sidebar-border);flex-shrink:0;justify-content:space-between;align-items:center;gap:10px;padding:14px 16px 12px;display:flex}.dashboard .portal-sidebar__close-mobile{color:var(--sidebar-text);cursor:pointer;background:#fdfbf71a;border:1px solid #d8d2c440;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;transition:background .2s,color .2s;display:none}.dashboard .portal-sidebar__close-mobile:hover{background:var(--sidebar-hover);color:var(--sidebar-accent-strong)}.dashboard .portal-sidebar__brand{align-items:center;gap:10px;display:flex}.dashboard .portal-sidebar__logo-img{object-fit:contain;flex-shrink:0;width:auto;height:36px;display:block}.dashboard .portal-sidebar__logo{background:linear-gradient(135deg, var(--sidebar-accent), var(--sidebar-accent-strong));color:#1e3610;border-radius:10px;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex}.dashboard .portal-sidebar__brand-text{min-width:0}.dashboard .portal-sidebar__brand-name{color:var(--sidebar-text);margin:0;font-size:14px;font-weight:700;line-height:1.2}.dashboard .portal-sidebar__brand-subtitle{color:var(--sidebar-accent-strong);letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:10px}.dashboard .portal-sidebar__body{scrollbar-width:thin;scrollbar-color:#b8892a73 transparent;flex:1;padding:14px 12px 12px;overflow-y:auto}.dashboard .portal-sidebar__body::-webkit-scrollbar{width:6px}.dashboard .portal-sidebar__body::-webkit-scrollbar-track{background:0 0}.dashboard .portal-sidebar__body::-webkit-scrollbar-thumb{background:#b8892a66;border-radius:999px}.dashboard .portal-sidebar__body::-webkit-scrollbar-thumb:hover{background:#b8892a99}.dashboard .portal-sidebar__title{background:linear-gradient(90deg, var(--sidebar-accent-strong), var(--sidebar-accent));letter-spacing:.1em;text-transform:uppercase;color:#0000;-webkit-background-clip:text;margin:0 6px 10px;font-size:11px;font-weight:700}.dashboard .portal-sidebar__nav{flex-direction:column;gap:10px;display:flex}.dashboard .portal-sidebar__section{border-bottom:1px solid #d8d2c40f;flex-direction:column;gap:6px;padding-bottom:4px;display:flex}.dashboard .portal-sidebar__section:last-child{border-bottom:none;padding-bottom:0}.dashboard .portal-sidebar__section-toggle{color:var(--sidebar-text-soft);cursor:pointer;letter-spacing:.14em;text-transform:uppercase;background:0 0;border:none;justify-content:space-between;align-items:center;padding:4px 8px;font-size:10px;font-weight:700;transition:color .2s,background .2s;display:flex}.dashboard .portal-sidebar__section-toggle:hover{background:var(--sidebar-hover);color:var(--sidebar-text)}.dashboard .portal-sidebar__chevron{font-size:10px;transition:transform .2s}.dashboard .portal-sidebar__chevron--open{transform:rotate(90deg)}.dashboard .portal-sidebar__items{flex-direction:column;gap:6px;display:flex}.dashboard .portal-sidebar__item{color:var(--sidebar-text);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;align-items:center;gap:10px;padding:8px 12px;transition:background .2s,transform .2s,border .2s,box-shadow .2s;display:flex;position:relative}.dashboard .portal-sidebar__item:hover{background:var(--sidebar-hover);border-color:#d8d2c433;transform:translate(2px);box-shadow:0 6px 18px #0a120640}.dashboard .portal-sidebar__item--active{background:var(--sidebar-accent-soft);color:var(--sidebar-text);border-color:#b8892a73;box-shadow:inset 0 0 0 1px #b8892a40}.dashboard .portal-sidebar__item-icon{color:var(--sidebar-accent-strong);background:#b8892a29;border-radius:8px;justify-content:center;align-items:center;width:22px;height:22px;font-size:12px;display:inline-flex}.dashboard .portal-sidebar__item--active .portal-sidebar__item-icon{background:#b8892a42}.dashboard .portal-sidebar__item-label{letter-spacing:.02em;font-size:11px;font-weight:600}.dashboard .portal-sidebar__item-indicator{background:var(--sidebar-accent-strong);border-radius:999px;width:3px;height:18px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.dashboard .portal-sidebar__footer{border-top:1px solid var(--sidebar-border);background:#1e3610eb;padding:8px 10px}.dashboard .portal-sidebar__profile{background:#fdfbf714;border:1px solid #d8d2c41f;border-radius:10px;margin-bottom:6px;padding:6px 8px}.dashboard .portal-sidebar__profile-row{align-items:center;gap:6px;display:flex}.dashboard .portal-sidebar__profile-icon{color:var(--sidebar-accent-strong)}.dashboard .portal-sidebar__profile-name{color:var(--sidebar-text);margin:0;font-size:10px;font-weight:600}.dashboard .portal-sidebar__profile-role{color:var(--sidebar-text-soft);margin:2px 0 0;font-size:9px}.dashboard .portal-sidebar__logout{color:var(--sidebar-text);cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:6px;width:100%;padding:5px 6px;transition:background .2s,color .2s;display:flex}.dashboard .portal-sidebar__logout:hover{background:var(--sidebar-hover);color:var(--sidebar-accent-strong)}.dashboard .portal-sidebar__logout-icon{color:var(--sidebar-accent-strong);font-size:11px;display:inline-flex}.dashboard .main-wrapper{margin-left:var(--portal-sidebar-width);width:calc(100% - var(--portal-sidebar-width));box-sizing:border-box;flex-direction:column;height:100dvh;display:flex;overflow:hidden}.dashboard__mobile-topbar,.dashboard__nav-backdrop{display:none}@media (width<=1023px){.dashboard__mobile-topbar{background:linear-gradient(90deg, var(--forest-dark), #243818);box-sizing:border-box;min-height:calc(var(--dashboard-mobile-topbar-h) + env(safe-area-inset-top,0px));padding:10px 14px;padding-left:max(14px, env(safe-area-inset-left,0px));padding-right:max(14px, env(safe-area-inset-right,0px));padding-top:max(10px, env(safe-area-inset-top,0px));z-index:120;border-bottom:1px solid #d8d2c42e;align-items:center;gap:12px;display:flex;position:fixed;top:0;left:0;right:0;box-shadow:0 2px 14px #0c140838}.dashboard__menu-toggle{color:var(--white);cursor:pointer;background:#fdfbf71a;border:1px solid #d8d2c447;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:16px;transition:background .2s,color .2s,border-color .2s;display:inline-flex}.dashboard__menu-toggle:hover{color:var(--gold-light);background:#fdfbf729;border-color:#d8d2c473}.dashboard__mobile-title{color:var(--white);letter-spacing:.02em;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:15px;font-weight:700;overflow:hidden}.dashboard__mobile-logo{object-fit:contain;filter:brightness(0)invert();flex-shrink:0;width:auto;height:44px}.dashboard__nav-backdrop{opacity:0;pointer-events:none;visibility:hidden;z-index:110;background:#0a100885;transition:opacity .25s,visibility .25s;display:block;position:fixed;inset:0}.dashboard--nav-open .dashboard__nav-backdrop{opacity:1;pointer-events:auto;visibility:visible}.dashboard .portal-sidebar{box-shadow:none;max-width:min(300px,92vw);width:min(var(--portal-sidebar-width), 92vw);z-index:115;transition:transform .28s cubic-bezier(.22,1,.36,1),box-shadow .28s;transform:translate(-100%)}.dashboard--nav-open .portal-sidebar{transform:translate(0);box-shadow:12px 0 48px #00000059}.dashboard .portal-sidebar__close-mobile{display:inline-flex}.dashboard .main-wrapper{padding-top:max(calc(var(--dashboard-mobile-topbar-h) + env(safe-area-inset-top,0px) + 14px), 58px);width:100%!important;margin-left:0!important}.dashboard .page-content{min-width:0;padding-left:max(8px, env(safe-area-inset-left,0px));padding-right:max(8px, env(safe-area-inset-right,0px));padding-bottom:max(8px, env(safe-area-inset-bottom,0px));overflow-x:auto}}.dashboard .page-content{-webkit-overflow-scrolling:touch;flex:1;min-height:0;padding:6px 8px;overflow-y:auto}@media (width>=1200px){.dashboard .page-content{box-sizing:border-box;width:100%;max-width:none;padding-left:14px;padding-right:14px}.dashboard .stats-grid{gap:8px}.dashboard .card{border-radius:8px}.dashboard .card-body{padding:7px 9px}.dashboard .btn{padding:4px 9px;font-size:10px}.dashboard .btn-sm{padding:3px 8px;font-size:10px}.dashboard th,.dashboard td{padding-top:5px;padding-bottom:5px}}.dashboard .stats-grid{grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:8px;display:grid}.dashboard .stat-card{background:var(--white);border:1px solid var(--linen-dark);border-radius:10px;padding:8px 10px;transition:transform .2s,box-shadow .2s;position:relative;overflow:hidden}.dashboard .stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.dashboard .stat-card:before{content:"";width:4px;height:100%;position:absolute;top:0;left:0}.dashboard .stat-card.green:before{background:var(--forest)}.dashboard .stat-card.gold:before{background:var(--gold)}.dashboard .stat-card.sage:before{background:var(--sage)}.dashboard .stat-card.teal:before{background:var(--teal)}.dashboard .stat-label{text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);margin-bottom:4px;font-size:9px;font-weight:600}.dashboard .stat-value{color:var(--text-dark);font-family:Cormorant Garamond,serif;font-size:17px;font-weight:700;line-height:1}.dashboard .stat-unit{color:var(--text-muted);font-size:12px;font-weight:400}.dashboard .stat-trend{align-items:center;gap:4px;margin-top:8px;font-size:11px;font-weight:600;display:flex}.dashboard .stat-trend.up{color:#3a8c4e}.dashboard .stat-trend.down{color:var(--red)}.dashboard .stat-icon{border-radius:8px;justify-content:center;align-items:center;width:28px;height:28px;font-size:12px;display:flex;position:absolute;top:8px;right:8px}.dashboard .stat-card.green .stat-icon{color:var(--forest);background:#2d50161a}.dashboard .stat-card.gold .stat-icon{color:var(--gold);background:#b8892a1f}.dashboard .stat-card.sage .stat-icon{color:var(--sage);background:#8fa85a26}.dashboard .stat-card.teal .stat-icon{color:var(--teal);background:#1a6b5a1f}.dashboard .card{background:var(--white);border-radius:var(--radius);border:1px solid var(--linen-dark);overflow:hidden}.dashboard .card-header{border-bottom:1px solid var(--linen);justify-content:space-between;align-items:center;padding:6px 10px 5px;display:flex}.dashboard .card-title{color:var(--forest-dark);font-family:Cormorant Garamond,serif;font-size:13px;font-weight:700}.dashboard .card-title span{color:var(--text-muted);font-family:DM Sans,sans-serif;font-size:10px;font-weight:400}.dashboard .card-body{padding:8px 10px}.dashboard .card-action{color:var(--gold);cursor:pointer;align-items:center;gap:4px;font-size:12px;font-weight:600;text-decoration:none;display:flex}.dashboard .quick-actions-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.dashboard .quick-action-btn{text-align:center;border-radius:8px;flex-direction:column;justify-content:center;gap:4px;min-height:56px;padding:8px 6px;font-size:10px;line-height:1.1}.dashboard .quick-action-icon{font-size:14px}.dashboard .quick-action-icon.qa-forest{color:var(--forest)}.dashboard .quick-action-icon.qa-sage{color:var(--sage)}.dashboard .quick-action-icon.qa-teal{color:var(--teal)}.dashboard .grid-2{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:8px;display:grid}.dashboard .grid-3{grid-template-columns:1fr 1fr 1fr;gap:8px;margin-bottom:8px;display:grid}.dashboard .grid-cols-3-1{grid-template-columns:3fr 1.4fr;gap:8px;margin-bottom:8px;display:grid}.dashboard .grid-cols-2-1{grid-template-columns:2fr 1fr;gap:8px;margin-bottom:8px;display:grid}.dashboard table{border-collapse:collapse;width:100%}.dashboard th{text-align:left;letter-spacing:1px;text-transform:uppercase;color:var(--text-muted);border-bottom:2px solid var(--linen);padding:6px 10px;font-size:9px;font-weight:700}.dashboard td{color:var(--text-dark);border-bottom:1px solid var(--linen);vertical-align:middle;padding:7px 10px;font-size:12px}.dashboard tr:last-child td{border-bottom:none}.dashboard tr:hover td{background:var(--cream)}.dashboard .badge{letter-spacing:.02em;text-transform:capitalize;white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;gap:5px;padding:4px 10px;font-size:11px;font-weight:600;display:inline-flex;box-shadow:0 1px 2px #0000000a}.dashboard .badge-confirmed{color:var(--forest-dark);background:linear-gradient(135deg,#2d501624 0%,#2d501614 100%);border-color:#2d501633}.dashboard .badge-pending{color:#7a5c1a;background:linear-gradient(135deg,#b8892a29 0%,#b8892a14 100%);border-color:#b8892a40}.dashboard .badge-checkin{color:var(--teal);background:linear-gradient(135deg,#1a6b5a24 0%,#1a6b5a14 100%);border-color:#1a6b5a33}.dashboard .badge-checkout{color:var(--olive);background:linear-gradient(135deg,#8fa85a24 0%,#8fa85a14 100%);border-color:#8fa85a33}.dashboard .badge-cancelled{color:#a02d22;background:linear-gradient(135deg,#c0392b1a 0%,#c0392b0f 100%);border-color:#c0392b33}.dashboard .badge-paid{color:var(--forest-dark);background:linear-gradient(135deg,#2d501624 0%,#2d501614 100%);border-color:#2d501633}.dashboard .badge-unpaid{color:#a02d22;background:linear-gradient(135deg,#c0392b1a 0%,#c0392b0f 100%);border-color:#c0392b33}.dashboard .badge-partial{color:#7a5c1a;background:linear-gradient(135deg,#b8892a29 0%,#b8892a14 100%);border-color:#b8892a40}.dashboard .badge-active{color:var(--teal);background:linear-gradient(135deg,#1a6b5a24 0%,#1a6b5a14 100%);border-color:#1a6b5a33}.dashboard .badge-inactive{background:var(--linen);color:var(--text-muted);border-color:var(--linen-dark)}.dashboard .badge-low{color:#a02d22;background:linear-gradient(135deg,#c0392b1a 0%,#c0392b0f 100%);border-color:#c0392b33}.dashboard .badge-good{color:var(--forest-dark);background:linear-gradient(135deg,#2d501624 0%,#2d501614 100%);border-color:#2d501633}.dashboard .badge-critical{background:var(--red);color:#fff;border-color:#c0392b66}.dashboard .statement-table td:has(.badge){vertical-align:middle}.dashboard .statement-table .badge{vertical-align:middle}.dashboard .statement-table select.form-control{border:1px solid var(--linen-dark);background:var(--white);cursor:pointer;border-radius:999px;min-height:28px;padding:4px 10px;font-size:11px;font-weight:600}.dashboard .statement-table select.form-control:focus{border-color:var(--forest);outline:none;box-shadow:0 0 0 2px #2d501626}.dashboard .btn{cursor:pointer;border:none;border-radius:8px;align-items:center;gap:6px;padding:6px 14px;font-family:DM Sans,sans-serif;font-size:12px;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.dashboard .btn-primary{background:linear-gradient(135deg, var(--forest), var(--forest-light));color:var(--white);box-shadow:0 2px 8px #2d501640}.dashboard .btn-primary:hover{background:linear-gradient(135deg, var(--forest-light), var(--olive));box-shadow:0 4px 14px #2d50164d}.dashboard .btn-gold{background:linear-gradient(135deg, var(--gold), var(--gold-light));color:var(--white);box-shadow:0 2px 8px #b8892a40}.dashboard .btn-gold:hover{box-shadow:0 4px 14px #b8892a59}.dashboard .btn-outline{border:1.5px solid var(--linen-dark);color:var(--text-mid);background:0 0}.dashboard .btn-outline:hover{background:var(--linen);border-color:var(--sage-light)}.dashboard .btn-ghost{background:var(--linen);border:1px solid var(--linen-dark);color:var(--text-mid)}.dashboard .btn-ghost:hover{background:var(--linen-dark);border-color:var(--sage-light)}.dashboard .btn-sm{padding:5px 10px;font-size:11px}.dashboard .hero-banner{background:linear-gradient(135deg, var(--forest-dark) 0%, var(--forest) 50%, var(--olive) 100%);border-radius:10px;justify-content:space-between;align-items:center;min-height:0;margin-bottom:12px;padding:12px 16px;display:flex;position:relative;overflow:hidden}.dashboard .hero-banner:before{content:"";background:#b8892a1a;border-radius:50%;width:120px;height:120px;position:absolute;top:-24px;right:-24px}.dashboard .hero-banner:after{content:"";background:#ffffff08;border-radius:50%;width:80px;height:80px;position:absolute;bottom:-32px;right:32px}.dashboard .hero-text{z-index:1;position:relative}.dashboard .hero-greeting{letter-spacing:1px;text-transform:uppercase;color:var(--gold-light);margin-bottom:2px;font-size:10px;font-weight:600}.dashboard .hero-title{color:var(--white);margin-bottom:2px;font-family:Cormorant Garamond,serif;font-size:16px;font-weight:700;line-height:1.2}.dashboard .hero-subtitle{color:#ffffffa6;font-size:11px}.dashboard .dashboard-period-filters{align-items:flex-end;gap:8px;margin-top:8px;display:flex}.dashboard .dashboard-period-filter{flex-direction:column;gap:3px;display:flex}.dashboard .dashboard-period-filter span{letter-spacing:.08em;text-transform:uppercase;color:#ffffffb8;font-size:9px;font-weight:700}.dashboard .dashboard-period-filter select{color:#f2f7ef;background:#0b1b1159;border:1px solid #ffffff47;border-radius:8px;min-width:88px;padding:5px 8px;font-size:11px;font-weight:600}.dashboard .hero-actions{gap:6px;margin-top:6px;display:flex}.dashboard .hero-banner .btn-sm{padding:4px 10px;font-size:11px}.dashboard .hero-stat{text-align:center;z-index:1;position:relative}.dashboard .hero-stat-value{color:var(--white);font-family:Cormorant Garamond,serif;font-size:18px;font-weight:700;line-height:1}.dashboard .hero-stat-label{color:#fff9;text-transform:uppercase;letter-spacing:.3px;margin-top:1px;font-size:9px}.dashboard .hero-stats-row{gap:14px;display:flex}.dashboard .btn-ghost-light{color:#ffffffe6;background:0 0;border-color:#ffffff59}.dashboard .btn-ghost-light:hover{color:#fff;background:#ffffff1f;border-color:#ffffff80}.dashboard .hero-banner--emp{flex-wrap:wrap;gap:10px;padding:10px 14px}.dashboard .hero-banner--emp .hero-stats-row{justify-content:flex-start;width:100%;margin-top:2px}@media (width<=640px){.dashboard .hero-banner--emp{flex-direction:column;align-items:flex-start;padding:10px 12px}.dashboard .hero-banner--emp .hero-stats-row{gap:12px}.dashboard .hero-banner--emp .hero-title{font-size:15px}}.dashboard .hero-divider{background:#ffffff26;align-self:stretch;width:1px}.dashboard .bar-chart{align-items:flex-end;gap:10px;height:120px;padding:8px 0;display:flex}.dashboard .bar-wrap{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:4px;height:100%;display:flex}.dashboard .bar-col{border-radius:5px 5px 0 0;width:100%;min-height:4px;transition:height .5s;position:relative}.dashboard .bar-col.forest{background:linear-gradient(0deg, var(--forest-dark), var(--forest-light))}.dashboard .bar-col.gold{background:linear-gradient(0deg, var(--gold), var(--gold-light))}.dashboard .bar-label{color:var(--text-muted);font-size:10px;font-weight:600}.dashboard .line-chart-wrap{flex-direction:column;gap:4px;display:flex}.dashboard .cashflow-kpis{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.dashboard .cashflow-kpi{background:#f9fcf8;border:1px solid #e1e6df;border-radius:8px;flex-direction:column;gap:3px;padding:6px 8px;display:flex}.dashboard .cashflow-kpi-label{color:#708177;font-size:10px;font-weight:600}.dashboard .cashflow-kpi strong{color:#22372b;font-size:12px;font-weight:700}.dashboard .line-chart-panel{grid-template-columns:48px minmax(0,1fr);align-items:stretch;gap:8px;display:grid}.dashboard .line-chart-yaxis{grid-template-rows:repeat(5,1fr);align-items:center;display:grid}.dashboard .line-chart-ylabel{color:#67766e;text-align:right;font-variant-numeric:tabular-nums;font-size:10px;font-weight:600}.dashboard .line-chart-canvas{min-width:0}.dashboard .line-chart-svg{background:linear-gradient(#fcfdfa,#f5f8f3);border:1px solid #dbe4d9;border-radius:12px;width:100%;height:156px}.dashboard .line-chart-guide{stroke:#4a5c541a;stroke-width:.32px}.dashboard .line-chart-guide--x{stroke:#4a5c5414;stroke-dasharray:.8 1.2}.dashboard .line-chart-zero{stroke:#4a5c5452;stroke-width:.8px;stroke-dasharray:1.6 1.2}.dashboard .line-chart-axis{stroke:#4a5c5473;stroke-width:.55px}.dashboard .line-chart-xlabel{fill:#4d5d54;dominant-baseline:middle;pointer-events:none;font-size:4.8px;font-weight:700}.dashboard .line-chart-area{stroke:none}.dashboard .line-chart-area--net{fill:#b8892a29}.dashboard .line-chart-line{fill:none;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round}.dashboard .line-chart-line--in{stroke:#316fda}.dashboard .line-chart-line--out{stroke:#d39d1f}.dashboard .line-chart-line--net{stroke:#18a66a}.dashboard .line-chart-point{stroke-width:0;cursor:pointer}.dashboard .line-chart-point--in{fill:#316fda}.dashboard .line-chart-point--out{fill:#d39d1f}.dashboard .line-chart-point--net{fill:#18a66a}.dashboard .line-chart-labels{grid-auto-columns:1fr;grid-auto-flow:column;gap:4px;margin-left:0;display:grid}.dashboard .line-chart-labels--aligned{height:16px;margin-left:56px;padding-left:0;padding-right:0;display:block;position:relative}.dashboard .line-chart-label--aligned{width:max-content;max-width:58px;position:absolute;top:0;transform:translate(-50%)}.dashboard .line-chart-label{color:#67766e;text-align:center;white-space:nowrap;text-overflow:ellipsis;font-size:10px;font-weight:500;overflow:hidden}.dashboard .line-chart-legend{color:#67766e;flex-wrap:nowrap;gap:12px;margin-left:0;font-size:10px;display:flex}.dashboard .line-chart-legend--aligned{margin-left:56px}.dashboard .line-chart-legend span{background:0 0;border:none;border-radius:0;align-items:center;padding:0;display:inline-flex}.dashboard .line-chart-dot{margin-right:5px;font-size:9px}.dashboard .line-chart-dot--in{color:#316fda}.dashboard .line-chart-dot--out{color:#d39d1f}.dashboard .line-chart-dot--net{color:#18a66a}.dashboard .rev-exp-wrap{flex-direction:column;gap:8px;display:flex}.dashboard .rev-exp-summary-line{color:#67766e;justify-content:space-between;gap:8px;font-size:10px;font-weight:600;display:flex}.dashboard .rev-exp-panel{grid-template-columns:48px minmax(0,1fr);align-items:stretch;gap:8px;display:grid}.dashboard .rev-exp-yaxis{grid-template-rows:repeat(5,1fr);align-items:center;display:grid}.dashboard .rev-exp-ylabel{color:#67766e;text-align:right;font-variant-numeric:tabular-nums;font-size:10px;font-weight:600}.dashboard .rev-exp-bars{background:linear-gradient(#fcfdfa,#f5f8f3);border:1px solid #dbe4d9;border-radius:12px;grid-auto-columns:1fr;grid-auto-flow:column;gap:8px;height:110px;padding:6px 8px 5px;display:grid;position:relative}.dashboard .rev-exp-bars:before{content:"";pointer-events:none;background-image:linear-gradient(0deg,#4a5c540f 1px,#0000 1px);background-size:100% 25%;position:absolute;inset:8px 10px 6px}.dashboard .rev-exp-col{z-index:1;flex-direction:column;align-items:center;gap:3px;min-width:0;display:flex;position:relative}.dashboard .rev-exp-track{border-bottom:1px solid #4a5c5440;flex:1;justify-content:center;align-items:flex-end;gap:2px;width:100%;display:flex}.dashboard .rev-exp-bar{border-radius:4px 4px 0 0;width:34%;min-height:2px}.dashboard .rev-exp-bar--income{background:linear-gradient(#27c281,#18a66a)}.dashboard .rev-exp-bar--expense{background:linear-gradient(#ef6a63,#d94f48)}.dashboard .rev-exp-label{color:#67766e;font-size:10px;font-weight:500}.dashboard .rev-exp-legend{color:#67766e;align-items:center;gap:8px;font-size:10px;display:flex}.dashboard .rev-exp-dot{margin-right:5px;font-size:9px}.dashboard .rev-exp-dot--income{color:#18a66a}.dashboard .rev-exp-dot--expense{color:#d94f48}.dashboard .finance-bnb-performance-card{background:linear-gradient(#fff,#f9fcf8);border:1px solid #dbe5dc;margin-top:12px;box-shadow:0 8px 20px #142b1e0d}.dashboard .bnb-perf-subtitle{color:#6f7e76;margin-top:2px;font-size:11px}.dashboard .ledger-bnb-booking-strip{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.dashboard .ledger-bnb-pill{color:#1f5c45;background:#18a66a1f;border:1px solid #18a66a3d;border-radius:999px;align-items:center;padding:4px 10px;font-size:11px;font-weight:700;display:inline-flex}.dashboard .ledger-bnb-pill--muted{color:#4c5d55;background:#6f7e761a;border-color:#6f7e7638}.dashboard .bnb-perf-wrap{flex-direction:column;gap:10px;display:flex}.dashboard .bnb-perf-help{color:#5a6a62;background:#f5f8f4;border:1px solid #e1e8df;border-radius:8px;padding:7px 9px;font-size:11px}.dashboard .bnb-perf-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.dashboard .bnb-perf-summary{background:#fafcf9;border:1px solid #e1e6df;border-radius:8px;flex-direction:column;gap:2px;padding:7px 9px;display:flex}.dashboard .bnb-perf-summary-label{color:#6f7e76;font-size:10px;font-weight:600}.dashboard .bnb-perf-summary strong{color:#22372b;font-size:12px;font-weight:700}.dashboard .bnb-perf-row{grid-template-columns:230px minmax(0,1fr);align-items:end;gap:10px;display:grid}.dashboard .bnb-perf-row--comparison{background:#fff;border:1px solid #e2e8e1;border-radius:8px;grid-template-columns:1fr;gap:6px;padding:8px 10px;transition:border-color .2s,box-shadow .2s}.dashboard .bnb-perf-row--comparison:hover{border-color:#cbd9cd;box-shadow:0 4px 12px #142b1e0f}.dashboard .bnb-perf-head{flex-direction:column;gap:2px;display:flex}.dashboard .bnb-perf-name{color:#23362b;align-items:center;gap:6px;font-size:12px;font-weight:700;display:inline-flex}.dashboard .bnb-perf-meta{color:#6f7e76;font-size:10px}.dashboard .bnb-perf-rank{border:1px solid #0000;border-radius:999px;padding:3px 6px;font-size:9px;line-height:1}.dashboard .bnb-perf-rank--top{color:#1f5c45;background:#18a66a1f;border-color:#18a66a3d}.dashboard .bnb-perf-rank--low{color:#8e322d;background:#d94f481f;border-color:#d94f483d}.dashboard .bnb-perf-compare-track{background:#eef2ec;border-radius:999px;height:9px;overflow:hidden}.dashboard .bnb-perf-compare-fill{border-radius:inherit;background:linear-gradient(90deg,#27c281,#18a66a);height:100%;display:block}.dashboard .bnb-perf-compare-fill.is-event{background:linear-gradient(90deg,#d39d1f,#b8892a)}.dashboard .bnb-perf-bars{background:linear-gradient(#fcfdfa,#f5f8f3);border:1px solid #dbe4d9;border-radius:8px;grid-auto-columns:1fr;grid-auto-flow:column;align-items:end;gap:6px;height:68px;padding:6px 8px 4px;display:grid}.dashboard .bnb-perf-bar{background:#afb8b18c;border-radius:4px 4px 0 0}.dashboard .bnb-perf-bar.has-data{background:linear-gradient(#27c281,#18a66a)}.dashboard .bnb-perf-months{color:#708177;text-align:center;grid-auto-columns:1fr;grid-auto-flow:column;gap:6px;margin-left:240px;font-size:10px;display:grid}@media (width<=720px){.dashboard .line-chart-panel{grid-template-columns:40px minmax(0,1fr);gap:6px}.dashboard .line-chart-labels,.dashboard .line-chart-legend{margin-left:42px}.dashboard .line-chart-labels--aligned,.dashboard .line-chart-legend--aligned{margin-left:46px}.dashboard .rev-exp-panel{grid-template-columns:40px minmax(0,1fr);gap:6px}.dashboard .line-chart-legend{flex-wrap:wrap}.dashboard .rev-exp-summary-line{flex-direction:column;gap:3px}.dashboard .bnb-perf-row{grid-template-columns:1fr;gap:6px}.dashboard .bnb-perf-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard .bnb-perf-months{margin-left:0}}.dashboard .progress-bar{background:var(--linen);border-radius:4px;height:8px;overflow:hidden}.dashboard .progress-fill{background:linear-gradient(90deg, var(--forest), var(--sage));border-radius:4px;height:100%;transition:width .6s}.dashboard .progress-fill.gold{background:linear-gradient(90deg, var(--gold), var(--gold-light))}.dashboard .progress-fill.red{background:linear-gradient(90deg, var(--red), #e74c3c)}.dashboard .section-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.dashboard .section-title{color:var(--forest-dark);font-family:Cormorant Garamond,serif;font-size:14px;font-weight:700}.dashboard .section-title span{color:var(--text-muted);margin-left:8px;font-family:DM Sans,sans-serif;font-size:12px;font-weight:400}.dashboard .filter-tabs{background:var(--linen);border-radius:10px;gap:4px;padding:4px;display:flex}.dashboard .filter-tab{cursor:pointer;color:var(--text-muted);background:0 0;border:none;border-radius:7px;padding:6px 14px;font-family:inherit;font-size:12px;font-weight:600;transition:all .2s}.dashboard .filter-tab.active{background:var(--white);color:var(--forest);box-shadow:0 1px 4px #00000014}.dashboard .page-header{border-bottom:1px solid var(--linen-dark);justify-content:space-between;align-items:flex-end;margin-bottom:10px;padding-bottom:8px;display:flex}.dashboard .page-header-right{flex-shrink:0;align-items:center;gap:8px;margin-bottom:2px;display:flex}.dashboard .page-header-left .page-title{color:var(--forest-dark);font-family:Cormorant Garamond,serif;font-size:18px;font-weight:700}.dashboard .page-header-left .page-subtitle{color:var(--text-muted);margin-top:1px;font-size:11px}.dashboard .timeline{padding:4px 0}.dashboard .tl-item{gap:10px;padding-bottom:12px;display:flex;position:relative}.dashboard .tl-item:not(:last-child):before{content:"";background:var(--linen);width:2px;position:absolute;top:24px;bottom:0;left:12px}.dashboard .tl-dot{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;font-size:12px;display:flex}.dashboard .tl-dot.green{color:var(--forest);background:#2d50161a}.dashboard .tl-dot.gold{color:var(--gold);background:#b8892a1f}.dashboard .tl-dot.red{background:var(--red-light);color:var(--red)}.dashboard .tl-dot.sage{color:var(--sage);background:#8fa85a26}.dashboard .tl-content{flex:1}.dashboard .tl-title{color:var(--text-dark);font-size:13px;font-weight:600}.dashboard .tl-desc{color:var(--text-muted);margin-top:2px;font-size:12px}.dashboard .tl-time{color:var(--text-muted);margin-top:4px;font-size:11px}.dashboard .kpi-ring-wrap{align-items:center;gap:12px;display:flex}.dashboard .kpi-ring-info{flex:1}.dashboard .kpi-ring-val{color:var(--forest-dark);font-family:Cormorant Garamond,serif;font-size:20px;font-weight:700;line-height:1}.dashboard .kpi-ring-label{color:var(--text-muted);margin-top:2px;font-size:11px}.dashboard .fin-summary{background:var(--forest-dark);border-radius:10px;gap:0;margin-bottom:12px;display:flex;overflow:hidden}.dashboard .fin-item{border-right:1px solid #ffffff1a;flex:1;padding:12px 16px}.dashboard .fin-item:last-child{border-right:none}.dashboard .fin-label{text-transform:uppercase;letter-spacing:1px;color:#ffffff80;margin-bottom:4px;font-size:9px}.dashboard .fin-value{color:var(--white);font-family:Cormorant Garamond,serif;font-size:20px;font-weight:700}.dashboard .fin-change{align-items:center;gap:3px;margin-top:4px;font-size:11px;display:flex}.dashboard .fin-change.pos{color:var(--sage-light)}.dashboard .fin-change.neg{color:#ff8a80}.dashboard .room-grid{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.dashboard .room-card{border:1.5px solid var(--linen-dark);text-align:center;cursor:pointer;border-radius:8px;padding:10px;transition:all .2s;position:relative;overflow:hidden}.dashboard .room-card.occupied{border-color:var(--forest);background:#2d50160d}.dashboard .room-card.vacant{border-color:var(--linen-dark);background:var(--white)}.dashboard .room-card.maintenance{border-color:var(--gold);background:#b8892a0d}.dashboard .room-card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.dashboard .room-number{color:var(--forest-dark);font-family:Cormorant Garamond,serif;font-size:18px;font-weight:700}.dashboard .room-type{text-transform:uppercase;letter-spacing:.8px;color:var(--text-muted);margin-bottom:4px;font-size:9px}.dashboard .room-status-icon{margin-bottom:2px;font-size:14px}.dashboard .room-guest{color:var(--text-mid);font-size:10px;font-weight:600}.dashboard .form-group{margin-bottom:10px}.dashboard .form-label{letter-spacing:.5px;text-transform:uppercase;color:var(--text-muted);margin-bottom:4px;font-size:10px;font-weight:700;display:block}.dashboard .form-control{border:1.5px solid var(--linen-dark);width:100%;color:var(--text-dark);background:var(--white);border-radius:8px;outline:none;padding:7px 10px;font-family:DM Sans,sans-serif;font-size:12px;transition:border-color .2s,box-shadow .2s}.dashboard .form-control:focus{border-color:var(--sage);box-shadow:0 0 0 3px #8fa85a26}.dashboard .page-tabs{border-bottom:2px solid var(--linen);gap:2px;margin-bottom:12px;display:flex}.dashboard .page-tab{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-2px;padding:6px 14px;font-family:inherit;font-size:12px;font-weight:600;transition:all .2s}.dashboard .page-tab.active{color:var(--forest);border-bottom-color:var(--forest)}.dashboard .page-tab:hover:not(.active){color:var(--text-mid)}.dashboard .donut-wrap{align-items:center;gap:16px;display:flex}.dashboard .donut-svg{flex-shrink:0}.dashboard .donut-legend{flex:1}.dashboard .legend-item{align-items:center;gap:6px;margin-bottom:6px;font-size:11px;display:flex}.dashboard .legend-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.dashboard .activity-item{border-bottom:1px solid var(--linen);gap:8px;padding:6px 0;display:flex}.dashboard .activity-item:last-child{border-bottom:none}.dashboard .activity-icon{border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;font-size:11px;display:flex}.dashboard .activity-text{color:var(--text-dark);flex:1;font-size:11px}.dashboard .activity-text strong{font-weight:600}.dashboard .activity-time{color:var(--text-muted);margin-top:2px;font-size:11px}.dashboard .task-item{border-bottom:1px solid var(--linen);align-items:flex-start;gap:10px;padding:8px 0;display:flex}.dashboard .task-item:last-child{border-bottom:none}.dashboard .task-check{border:2px solid var(--linen-dark);cursor:pointer;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;margin-top:1px;transition:all .2s;display:flex}.dashboard .task-check.done{background:var(--forest);border-color:var(--forest);color:#fff;font-size:11px}.dashboard .task-text{color:var(--text-dark);font-size:12px}.dashboard .task-text.done{color:var(--text-muted);text-decoration:line-through}.dashboard .task-meta{color:var(--text-muted);margin-top:1px;font-size:10px}.dashboard .task-assign{background:var(--linen);color:var(--text-muted);border-radius:6px;flex-shrink:0;margin-left:auto;padding:2px 8px;font-size:11px;font-weight:600}.dashboard .stock-row{border-bottom:1px solid var(--linen);align-items:center;gap:10px;padding:6px 0;display:flex}.dashboard .stock-row:last-child{border-bottom:none}.dashboard .stock-icon{background:var(--linen);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:13px;display:flex}.dashboard .stock-name{color:var(--text-dark);font-size:12px;font-weight:600}.dashboard .stock-qty{color:var(--text-muted);font-size:11px}.dashboard .stock-level{flex:1;margin:0 12px}.dashboard .stock-row--with-action{flex-wrap:wrap;gap:8px 10px}.dashboard .stock-row-main{flex:0 160px;min-width:0}.dashboard .stock-row--with-action .stock-level{flex:100px;min-width:72px;margin:0 8px}.dashboard .stock-row-update{flex-shrink:0;margin-left:auto}.dashboard .invoice-row{border-bottom:1px solid var(--linen);align-items:center;gap:10px;padding:8px 0;display:flex}.dashboard .invoice-row:last-child{border-bottom:none}.dashboard .invoice-num{color:var(--forest);font-family:Cormorant Garamond,serif;font-size:15px;font-weight:700}.dashboard .invoice-client{color:var(--text-dark);font-size:13px;font-weight:600}.dashboard .invoice-desc{color:var(--text-muted);font-size:11px}.dashboard .invoice-amount{color:var(--text-dark);margin-left:auto;font-family:Cormorant Garamond,serif;font-size:17px;font-weight:700}.dashboard .equip-card{background:var(--white);border:1px solid var(--linen-dark);border-radius:10px;align-items:flex-start;gap:10px;padding:10px 12px;transition:all .2s;display:flex}.dashboard .equip-card:hover{border-color:var(--sage-light);box-shadow:var(--shadow)}.dashboard .equip-icon{background:var(--linen);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:16px;display:flex}.dashboard .equip-name{color:var(--text-dark);font-size:12px;font-weight:700}.dashboard .equip-info{color:var(--text-muted);font-size:12px}.dashboard .equip-condition{text-transform:uppercase;letter-spacing:.5px;font-size:11px;font-weight:700}.dashboard .cond-good{color:var(--forest)}.dashboard .cond-fair{color:var(--gold)}.dashboard .cond-poor{color:var(--red)}.dashboard .report-card{background:var(--white);border:1px solid var(--linen-dark);border-radius:var(--radius);cursor:pointer;padding:22px;transition:all .2s}.dashboard .report-card:hover{box-shadow:var(--shadow-md);border-color:var(--sage-light);transform:translateY(-2px)}.dashboard .report-icon{border-radius:12px;justify-content:center;align-items:center;width:48px;height:48px;margin-bottom:14px;font-size:20px;display:flex}.dashboard .report-name{color:var(--forest-dark);margin-bottom:6px;font-family:Cormorant Garamond,serif;font-size:17px;font-weight:700}.dashboard .report-desc{color:var(--text-muted);font-size:12px;line-height:1.5}.dashboard .report-meta{border-top:1px solid var(--linen);justify-content:space-between;align-items:center;margin-top:14px;padding-top:12px;display:flex}.dashboard .report-date{color:var(--text-muted);font-size:11px}.dashboard .emp-card{background:var(--white);border:1px solid var(--linen-dark);border-radius:var(--radius);text-align:center;padding:20px;transition:all .2s}.dashboard .emp-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.dashboard .emp-avatar{width:54px;height:54px;color:var(--white);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 10px;font-family:Cormorant Garamond,serif;font-size:20px;font-weight:700;display:flex}.dashboard .emp-name{color:var(--text-dark);font-size:14px;font-weight:700}.dashboard .emp-role{color:var(--text-muted);text-transform:uppercase;letter-spacing:1px;margin-bottom:10px;font-size:11px}.dashboard .emp-stats{border-top:1px solid var(--linen);justify-content:space-around;padding-top:10px;display:flex}.dashboard .emp-stat-val{color:var(--forest);font-family:Cormorant Garamond,serif;font-size:18px;font-weight:700}.dashboard .emp-stat-lbl{color:var(--text-muted);font-size:10px}.dashboard .emp-task-card{background:var(--white);border:1px solid var(--linen-dark);border-radius:10px;align-items:center;gap:8px;margin-bottom:6px;padding:8px 12px;transition:all .2s;display:flex}.dashboard .emp-task-card:hover{border-color:var(--sage-light)}.dashboard .task-priority{border-radius:4px;flex-shrink:0;width:4px;height:28px}.dashboard .priority-high{background:var(--red)}.dashboard .priority-medium{background:var(--gold)}.dashboard .priority-low{background:var(--sage)}.dashboard .cal-grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.dashboard .cal-day-name{text-align:center;letter-spacing:1px;text-transform:uppercase;color:var(--text-muted);padding:6px 0;font-size:10px;font-weight:700}.dashboard .cal-cell{aspect-ratio:1;color:var(--text-mid);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;font-size:12px;font-weight:500;transition:all .15s;display:flex;position:relative}.dashboard .cal-cell:hover{background:var(--linen)}.dashboard .cal-cell.booked{color:var(--forest);background:#2d50161f;font-weight:700}.dashboard .cal-cell.booked:after{content:"";background:var(--forest);border-radius:50%;width:4px;height:4px;position:absolute;bottom:4px}.dashboard .cal-cell.today{background:var(--forest);color:var(--white);font-weight:700}.dashboard .cal-cell.event{color:#7a5c1a;background:#b8892a26}.dashboard .cal-cell.empty{cursor:default;background:0 0}.dashboard .tooltip-wrap{position:relative}.dashboard .tooltip-wrap:hover .tooltip-popup{opacity:1;pointer-events:all}.dashboard .tooltip-popup{background:var(--text-dark);color:var(--white);white-space:nowrap;opacity:0;pointer-events:none;z-index:500;border-radius:6px;padding:4px 10px;font-size:11px;transition:opacity .2s;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}.guest-booking-modal-overlay{z-index:200;background:#0006;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.guest-booking-modal{background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow-md);flex-direction:column;width:100%;max-width:440px;max-height:90vh;display:flex;overflow:hidden}.guest-booking-modal-header{border-bottom:1px solid var(--linen);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.guest-booking-modal-header h3{color:var(--forest-dark);margin:0;font-size:14px;font-weight:700}.guest-booking-modal-close{width:32px;height:32px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;display:flex}.guest-booking-modal-close:hover{background:var(--linen);color:var(--text-dark)}.guest-booking-modal-body{padding:16px;overflow-y:auto}.guest-booking-modal-body .review-block-header{letter-spacing:.5px;text-transform:uppercase;color:var(--text-muted);margin-bottom:8px;font-size:10px;font-weight:700}.guest-booking-modal-body .review-row{justify-content:space-between;padding:4px 0;font-size:12px;display:flex}.guest-booking-modal-body .rv-label{color:var(--text-muted);margin-right:12px}.guest-booking-modal-body .rv-val{color:var(--text-dark);text-align:right;font-weight:500}.guest-booking-availability{margin:16px 0}.guest-booking-availability-result{background:var(--linen);color:var(--text-dark);border-radius:8px;margin-top:10px;padding:10px 12px;font-size:11px}.guest-booking-availability-result.is-error{background:var(--red-light);color:var(--red)}.guest-booking-status-cell{vertical-align:middle}.guest-booking-status-select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 10 10'%3E%3Cpath fill='%237A8B6A' d='M2 4l3 3 3-3H2z'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;border:1px solid #0000;border-radius:20px;min-width:110px;padding:6px 28px 6px 12px;font-family:inherit;font-size:11px;font-weight:600;transition:box-shadow .2s,transform .1s}.guest-booking-status-select:hover:not(:disabled){transform:scale(1.02)}.guest-booking-status-select:focus{box-shadow:0 0 0 2px var(--sage-light);outline:none}.guest-booking-status-select.guest-status--pending{color:#7a5c1a;background-color:#b8892a26;border-color:#b8892a59}.guest-booking-status-select.guest-status--confirmed{color:var(--teal);background-color:#1a6b5a26;border-color:#1a6b5a59}.guest-booking-status-select.guest-status--waitlist{color:var(--forest-dark);background-color:#2d50161f;border-color:#2d501640}.guest-booking-status-select.guest-status--cancelled{color:#a02d22;background-color:#c0392b1f;border-color:#c0392b40}.guest-status-pill{text-transform:capitalize;border-radius:20px;padding:5px 12px;font-size:11px;font-weight:700;display:inline-block}.guest-status-pill.guest-status--pending{color:#7a5c1a;background:#b8892a33}.guest-status-pill.guest-status--confirmed{color:var(--teal);background:#1a6b5a33}.guest-status-pill.guest-status--waitlist{color:var(--forest-dark);background:#2d501626}.guest-status-pill.guest-status--cancelled{color:#a02d22;background:#c0392b26}.guest-booking-actions{border-top:1px solid var(--linen);flex-wrap:wrap;gap:10px;margin-top:16px;padding-top:16px;display:flex}.bookings-page .page-tabs{margin-bottom:12px}.bookings-page .page-tabs--bookings{flex-wrap:wrap;gap:8px}.bookings-page .bookings-admin-only-hint{color:var(--text-muted);font-weight:500}.bookings-add-internal-modal.rooms-events-modal{max-width:520px}.bookings-add-internal-form .bookings-add-internal-grid{grid-template-columns:1fr 1fr;gap:12px 14px;margin-bottom:16px;display:grid}.bookings-add-internal-form .bookings-add-field{color:var(--text-mid);flex-direction:column;gap:4px;font-size:11px;font-weight:600;display:flex}.bookings-add-internal-form .bookings-add-field--wide{grid-column:1/-1}.bookings-add-internal-form .bookings-add-field textarea.form-control{resize:vertical;min-height:52px}.bookings-add-internal-actions{border-top:1px solid var(--linen);flex-wrap:wrap;justify-content:flex-end;gap:10px;padding-top:4px;display:flex}.bookings-page-heading.page-title{font-size:16px}.bookings-add-pricing-hint{color:var(--text-mid);border:1px solid var(--linen);background:#2d50160f;border-radius:8px;padding:8px 10px;font-size:11px;line-height:1.4}.bookings-add-pricing-warn{color:#8a5a2a}.bookings-add-total-note{color:var(--text-muted);margin:0;font-size:10px;font-weight:500}@media (width<=520px){.bookings-add-internal-form .bookings-add-internal-grid{grid-template-columns:1fr}}.bookings-layout{grid-template-columns:1fr 320px;align-items:start;gap:20px;display:grid}@media (width<=1024px){.bookings-layout{grid-template-columns:1fr}}.bookings-main{min-width:0}.bookings-filters-bar{flex-wrap:wrap;gap:10px;margin-bottom:12px;display:flex}.bookings-sidebar-filters{flex-wrap:wrap;gap:6px;margin-bottom:12px;display:flex}.bookings-sidebar-filters .btn-ghost.active{background:var(--forest);color:var(--white)}.bookings-detail-panel{background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid var(--linen);min-height:200px;padding:16px;position:sticky;top:80px}.bookings-detail-empty,.bookings-detail-loading{color:var(--text-muted);text-align:center;padding:24px 16px;font-size:13px}.bookings-detail-header{border-bottom:1px solid var(--linen);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;padding-bottom:12px;display:flex}.bookings-detail-header h3{color:var(--forest-dark);margin:0;font-size:14px;font-weight:700}.bookings-detail-content .review-block{margin-bottom:12px}.bookings-detail-content .review-block-header{letter-spacing:.5px;text-transform:uppercase;color:var(--text-muted);margin-bottom:6px;font-size:10px;font-weight:700}.bookings-detail-content .review-row{justify-content:space-between;padding:3px 0;font-size:12px;display:flex}.bookings-detail-content .rv-label{color:var(--text-muted);margin-right:8px}.bookings-detail-content .rv-val{color:var(--text-dark);text-align:right;font-weight:500}.bookings-detail-actions{border-top:1px solid var(--linen);flex-wrap:wrap;gap:8px;margin-top:16px;padding-top:16px;display:flex}.statement-table tbody tr.selected{background:var(--teal-light)}.statement-table tbody tr{cursor:pointer}.statement-table tbody tr:hover{background:var(--linen)}.bookings-page .availability-tab{width:100%;min-width:0;max-width:100%;margin-top:10px}.bookings-page .availability-card--rooms-ref{--room-bg:#f5f2ec;--room-border:#d8d6cf;--room-surface:#fff;--room-pill:#eef1ed;--room-deep:#1f4b34;--room-muted:#587064;--chip-free-bg:#86a36b38;--chip-free-border:#86a36b73;--chip-booked-bg:#c0392b1a;--chip-booked-border:#c0392b47;border:1px solid var(--room-border);background:var(--room-surface);box-shadow:none;-webkit-overflow-scrolling:touch;border-radius:10px;max-width:100%;overflow:auto visible}.bookings-page .availability-card--rooms-ref .availability-card-header{border-bottom:1px solid var(--room-border);background:linear-gradient(135deg,#2d50160d 0%,#8fa85a12 100%);padding:14px 16px}.bookings-page .availability-card--rooms-ref .availability-title{color:#133b2f;letter-spacing:.02em;margin:0 0 4px;font-family:Cormorant Garamond,serif;font-size:18px;font-weight:700}.bookings-page .availability-card--rooms-ref .availability-subtitle{color:var(--room-muted);margin:0;font-size:11px;font-weight:500;line-height:1.4}.bookings-page .availability-card--rooms-ref .availability-nav{background:var(--room-surface);border-bottom:1px solid var(--room-border);flex-wrap:wrap;align-items:center;gap:8px;padding:10px 14px;display:flex}.bookings-page .availability-card--rooms-ref .availability-nav-btn{background:var(--room-pill);border:1px solid var(--room-border);color:#50685d;border-radius:999px;align-items:center;gap:4px;padding:5px 12px;font-size:10px;font-weight:600;transition:background .15s,border-color .15s;display:inline-flex}.bookings-page .availability-card--rooms-ref .availability-nav-btn:hover{color:var(--room-deep);background:#e8ebe6;border-color:#c7cfc7}.bookings-page .availability-card--rooms-ref .availability-nav-label{color:#133b2f;text-align:center;min-width:140px;font-family:Cormorant Garamond,serif;font-size:12px;font-weight:600}.bookings-page .availability-card--rooms-ref .availability-today-btn{color:#fff;box-shadow:none;background:#ba8f54;border:1px solid #a67d4a;border-radius:999px;margin-left:auto;padding:5px 12px;font-size:10px;font-weight:600}.bookings-page .availability-card--rooms-ref .availability-today-btn:hover{filter:brightness(1.05);color:#fff;transform:none}.bookings-page .availability-card--rooms-ref .availability-legend{color:var(--room-muted);background:var(--room-bg);border-bottom:1px solid var(--room-border);flex-wrap:wrap;align-items:center;gap:8px;padding:8px 14px;font-size:10px;display:flex}.bookings-page .availability-card--rooms-ref .availability-legend-item{background:var(--room-surface);border:1px solid var(--room-border);color:#50685d;border-radius:999px;align-items:center;gap:6px;padding:3px 10px;font-weight:600;display:inline-flex}.bookings-page .availability-card--rooms-ref .availability-legend-item:first-child{color:#2a5a3f;border-color:var(--chip-free-border);background:var(--chip-free-bg)}.bookings-page .availability-card--rooms-ref .availability-legend-item:nth-child(2){color:#8b2a22;border-color:var(--chip-booked-border);background:var(--chip-booked-bg)}.bookings-page .availability-card--rooms-ref .availability-dot.available{background:#86a36b}.bookings-page .availability-card--rooms-ref .availability-dot.booked{background:var(--red)}.bookings-page .availability-card--rooms-ref .availability-today-badge{color:#fff;text-transform:uppercase;letter-spacing:.06em;box-shadow:none;background:#ba8f54;border-radius:999px;padding:2px 8px;font-size:8px;font-weight:700}.bookings-page .availability-card--rooms-ref .availability-grid-wrap{background:var(--room-bg);min-width:min-content;padding:10px 12px 14px;overflow:visible}.bookings-page .availability-card--rooms-ref .availability-grid{border-collapse:separate;border-spacing:0;width:max-content;min-width:100%;box-shadow:none;border-radius:0;font-size:11px}.bookings-page .availability-card--rooms-ref .availability-grid thead th{text-align:center;background:var(--room-pill);color:var(--room-muted);border-bottom:1px solid var(--room-border);border-right:1px solid var(--room-border);min-width:48px;padding:8px 5px;font-weight:600}.bookings-page .availability-card--rooms-ref .availability-grid thead th:first-of-type{border-left:none}.bookings-page .availability-card--rooms-ref .availability-grid thead th.availability-room-col{z-index:3;text-align:left;background:var(--room-pill);border-right:2px solid var(--room-border);text-transform:uppercase;letter-spacing:.08em;color:#50685d;min-width:108px;max-width:160px;padding-left:12px;font-size:10px;font-weight:700;position:sticky;left:0}.bookings-page .availability-card--rooms-ref .availability-day-col{vertical-align:middle}.bookings-page .availability-card--rooms-ref .availability-day-weekday{text-transform:uppercase;letter-spacing:.08em;color:var(--room-muted);margin-bottom:2px;font-size:8px;font-weight:700;display:block}.bookings-page .availability-card--rooms-ref .availability-day-num{color:#133b2f;font-family:Cormorant Garamond,serif;font-size:17px;font-weight:700;line-height:1.1;display:block}.bookings-page .availability-card--rooms-ref .availability-day-month{text-transform:uppercase;letter-spacing:.05em;color:var(--room-muted);margin-top:1px;font-size:8px;font-weight:600;display:block}.bookings-page .availability-card--rooms-ref .availability-day-dmy{color:#133b2f;max-width:72px;margin-top:1px;margin-left:auto;margin-right:auto;font-family:Cormorant Garamond,serif;font-size:11px;font-weight:700;line-height:1.2;display:block}.bookings-page .availability-card--rooms-ref .availability-day-today{color:#fff;text-transform:uppercase;letter-spacing:.06em;box-shadow:none;background:#ba8f54;border-radius:999px;margin-top:3px;padding:2px 6px;font-size:7px;font-weight:800;display:inline-block}.bookings-page .availability-card--rooms-ref .availability-room-col{z-index:2;text-align:left;color:#133b2f;min-width:108px;max-width:160px;padding:8px 10px;font-size:12px;font-weight:600;position:sticky;left:0;background:linear-gradient(90deg, var(--room-surface) 0%, #f9f8f5 100%)!important;border-right:2px solid var(--room-border)!important;border-bottom:1px solid var(--room-border)!important;box-shadow:4px 0 12px -4px #1f4b3414!important}.bookings-page .availability-card--rooms-ref .availability-room-name{color:#133b2f;font-size:12px;font-weight:600}.bookings-page .availability-card--rooms-ref .availability-room-cal-btn{border:1px solid var(--room-border);background:var(--room-bg);width:100%;color:var(--room-deep);font:inherit;cursor:pointer;text-align:left;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;margin:0;padding:6px 8px;font-size:11px;font-weight:600;transition:background .15s,border-color .15s;display:flex}.bookings-page .availability-card--rooms-ref .availability-room-cal-btn:hover{background:var(--room-surface);border-color:#c7cfc7}.bookings-page .availability-card--rooms-ref .availability-room-cal-btn:focus-visible{outline:2px solid var(--room-deep);outline-offset:2px}.bookings-page .availability-card--rooms-ref .availability-room-cal-icon{color:#3f7252;opacity:.9;flex-shrink:0;font-size:12px}.bookings-page .availability-card--rooms-ref .availability-room-row:hover .availability-room-col{background:linear-gradient(90deg,#f5f2ec 0%,#ebe8e0 100%)!important}.bookings-page .availability-card--rooms-ref .availability-cell{text-align:center;vertical-align:middle;border-right:1px solid var(--room-border);border-bottom:1px solid var(--room-border);background:var(--room-surface);min-width:48px;padding:3px}.bookings-page .availability-card--rooms-ref .availability-cell-inner{background:0 0;border:1px solid #0000;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-height:48px;padding:7px 4px;transition:background .15s;display:flex}.bookings-page .availability-card--rooms-ref .availability-cell:hover .availability-cell-inner{transform:none}.bookings-page .availability-card--rooms-ref .availability-cell-icon{opacity:.92;font-size:13px}.bookings-page .availability-card--rooms-ref .availability-cell-icon.available{color:#3f7252}.bookings-page .availability-card--rooms-ref .availability-cell-label{text-transform:uppercase;letter-spacing:.06em;font-size:8px;font-weight:800}.bookings-page .availability-card--rooms-ref .availability-cell-guest{-webkit-line-clamp:2;line-clamp:2;color:#3d5a4f;text-overflow:ellipsis;word-break:break-word;-webkit-box-orient:vertical;max-width:100%;font-size:9px;font-weight:600;line-height:1.2;display:-webkit-box;overflow:hidden}.bookings-page .availability-card--rooms-ref .availability-cell.available .availability-cell-inner{background:var(--chip-free-bg);border-color:var(--chip-free-border)}.bookings-page .availability-card--rooms-ref .availability-cell.available .availability-cell-label{color:#2a5a3f}.bookings-page .availability-card--rooms-ref .availability-cell.available:hover .availability-cell-inner{background:#86a36b4d}.bookings-page .availability-card--rooms-ref .availability-cell.booked .availability-cell-inner{background:var(--chip-booked-bg);border-color:var(--chip-booked-border)}.bookings-page .availability-card--rooms-ref .availability-cell.booked .availability-cell-icon{color:var(--red)}.bookings-page .availability-card--rooms-ref .availability-cell.booked .availability-cell-label{color:#a02d22}.bookings-page .availability-card--rooms-ref .availability-cell.booked .availability-cell-guest{color:#6b3d38}.bookings-page .availability-card--rooms-ref .availability-cell.booked:hover .availability-cell-inner{background:#c0392b29;border-color:#c0392b61}.bookings-page .availability-card--rooms-ref .availability-cell.availability-cell--clickable{cursor:pointer}.bookings-page .availability-filters-bar{margin-top:8px}.bookings-page .bookings-admin-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.bookings-page .bookings-policy-field{flex-direction:column;gap:6px;margin-bottom:14px;display:flex}.bookings-page .bookings-policy-field>span:first-child{color:var(--text-dark);font-size:12px;font-weight:600}.bookings-page .bookings-avail-guest-card{border:1px solid var(--linen);border-radius:8px;margin-bottom:10px;padding:12px}.bookings-page .bookings-avail-guest-name{color:var(--forest-dark);margin-bottom:8px;font-weight:700}.bookings-page .bookings-avail-guest-dl{grid-template-columns:88px 1fr;gap:6px 12px;margin:0;font-size:12px;display:grid}.bookings-page .bookings-avail-guest-dl dt{color:var(--text-muted);margin:0}.bookings-page .bookings-avail-guest-dl dd{margin:0}.bookings-page .availability-card--rooms-ref .availability-cell.today .availability-cell-inner{box-shadow:inset 0 0 0 2px #ba8f54}.bookings-page .availability-card--rooms-ref .availability-day-col.today{background:#ba8f5424;box-shadow:inset 0 -2px #ba8f54}.bookings-page .availability-card--rooms-ref .availability-day-col.today .availability-day-dmy{color:#133b2f}.bookings-page .availability-card--rooms-ref .availability-empty{text-align:center;color:var(--room-muted);background:var(--room-surface);border-radius:0;font-size:12px;padding:24px 16px!important}.bookings-page .availability-card--rooms-ref .availability-empty--warning{border-left:3px solid var(--red);color:#6b2e24!important;text-align:left!important;background:#c0392b0f!important}.bookings-page .availability-card--rooms-ref .availability-empty-sub{color:var(--room-muted);margin-top:8px;font-size:11px;font-weight:500;display:block}.bookings-page .availability-card--rooms-ref .availability-footer{color:var(--room-muted);background:var(--room-surface);border-top:1px solid var(--room-border);margin:0;padding:10px 14px;font-size:10px;line-height:1.45}.availability-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px;display:inline-block}.availability-dot-inline{border-radius:3px;width:8px;height:8px;display:inline-block}.rooms-page{margin-bottom:24px}.rooms-page-header-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;display:flex}.rooms-page-title-wrap{align-items:center;gap:14px;display:flex}.rooms-page-icon{background:var(--forest);width:44px;height:44px;color:var(--white);border-radius:12px;justify-content:center;align-items:center;font-size:18px;display:inline-flex}.rooms-page-title{color:var(--forest-dark);letter-spacing:.02em;margin:0;font-family:Cormorant Garamond,serif;font-size:22px;font-weight:700;line-height:1.2}.rooms-page-subtitle{color:var(--text-muted);margin:2px 0 0;font-size:13px}.rooms-header-actions{align-items:center;gap:10px;display:flex}.rooms-header-actions .view-toggle{gap:2px;display:flex}.rooms-header-actions .view-toggle .btn{border-radius:8px;padding:8px 12px}.rooms-header-actions .view-toggle .btn.active{background:var(--forest);color:var(--white);border-color:var(--forest)}.rooms-add-btn{align-items:center;gap:6px;display:inline-flex}.rooms-filters-bar{background:var(--white);border:1px solid var(--linen);border-radius:12px;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:18px;padding:14px 18px;display:flex;box-shadow:0 1px 3px #2d50160a}.rooms-search{border:1px solid var(--linen-dark);background:var(--white);min-width:180px;color:var(--text-dark);border-radius:10px;flex:1;padding:9px 14px;font-family:inherit;font-size:13px;transition:border-color .2s,box-shadow .2s}.rooms-search:focus{border-color:var(--sage);outline:none;box-shadow:0 0 0 3px #8fa85a26}.rooms-search::placeholder{color:var(--text-muted)}.rooms-filter-select{border:1px solid var(--linen-dark);background:var(--white);color:var(--text-dark);cursor:pointer;border-radius:10px;min-width:120px;padding:9px 14px;font-family:inherit;font-size:12px;font-weight:500}.rooms-layout{grid-template-columns:1fr 340px;align-items:start;gap:20px;display:grid}@media (width<=1024px){.rooms-layout{grid-template-columns:1fr}}.rooms-main{min-width:0}.rooms-loading,.rooms-empty{text-align:center;color:var(--text-muted);background:var(--white);border:1px solid var(--linen);border-radius:12px;padding:32px 24px;font-size:14px;box-shadow:0 1px 3px #2d50160d}.rooms-grid{grid-template-columns:repeat(auto-fill,minmax(268px,1fr));gap:18px;display:grid}.rooms-card{background:var(--white);border:1px solid var(--linen);text-align:left;cursor:pointer;border-radius:14px;flex-direction:column;padding:0;font-family:inherit;transition:box-shadow .25s,border-color .2s,transform .2s;display:flex;overflow:hidden;box-shadow:0 2px 8px #2d50160f}.rooms-card:hover{border-color:var(--sage-light);transform:translateY(-3px);box-shadow:0 8px 24px #2d50161f}.rooms-card.selected{border-color:var(--forest);box-shadow:0 0 0 2px #2d501640,0 8px 24px #2d50161a}.rooms-card-photo-wrap{width:100%;position:relative}.rooms-card-photo{background-position:50%;background-size:cover;background-color:var(--linen);width:100%;height:152px}.rooms-card-photo-wrap:after{content:"";pointer-events:none;background:linear-gradient(#0000,#00000040);height:50%;position:absolute;bottom:0;left:0;right:0}.rooms-card-badge{text-transform:uppercase;letter-spacing:.03em;border-radius:20px;padding:5px 10px;font-size:10px;font-weight:700;position:absolute;top:10px;right:10px;box-shadow:0 2px 8px #00000026}.rooms-card-badge.badge-good{color:var(--white);background:#1a6b5af2}.rooms-card-badge.badge-pending{color:var(--white);background:#b8892af2}.rooms-card-badge.badge-checkout{color:var(--forest-dark);background:#8fa85af2}.rooms-card-badge.badge-inactive{color:var(--white);background:#505050e6}.rooms-card-badge.badge-active{color:var(--white);background:#2d5016e6}.rooms-card-body{flex-direction:column;gap:6px;padding:14px 16px;display:flex}.rooms-card-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.rooms-card-name{color:var(--forest-dark);letter-spacing:.01em;font-size:15px;font-weight:700}.rooms-card-specs{color:var(--text-muted);flex-wrap:wrap;gap:8px;font-size:11px;display:flex}.rooms-card-rate{color:var(--forest-dark);font-size:14px;font-weight:700}.rooms-card-next{color:var(--text-muted);margin-top:4px;font-size:11px;line-height:1.3}.rooms-card-next-label{text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);margin-right:4px;font-size:9px;font-weight:700}.rooms-card-next--current .rooms-card-next-label{color:var(--teal)}.rooms-list-next--current{color:var(--teal);font-weight:600}.rooms-list-card{border:1px solid var(--linen);border-radius:14px;overflow:hidden;box-shadow:0 2px 8px #2d50160f}.rooms-list-card-body{padding:0!important}.rooms-list{flex-direction:column;display:flex}.rooms-list-row{border-bottom:1px solid var(--linen);cursor:pointer;text-align:left;background:0 0;border-top:none;border-left:none;border-right:none;grid-template-columns:56px 1fr auto auto auto auto auto;align-items:center;gap:14px;padding:12px 18px;font-family:inherit;transition:background .2s;display:grid}.rooms-list-row:last-child{border-bottom:none}.rooms-list-row:hover{background:var(--cream)}.rooms-list-row.selected{background:#1a6b5a14}.rooms-list-photo{background-position:50%;background-size:cover;background-color:var(--linen);border-radius:8px;flex-shrink:0;width:56px;height:44px}.rooms-list-info{flex-direction:column;gap:2px;display:flex}.rooms-list-name{color:var(--text-dark);font-size:13px;font-weight:600}.rooms-list-type{color:var(--text-muted);font-size:11px}.rooms-list-specs{color:var(--text-muted);gap:10px;font-size:12px;display:flex}.rooms-list-rate{color:var(--forest-dark);font-size:12px;font-weight:600}.rooms-list-next{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;max-width:140px;font-size:11px;overflow:hidden}@media (width<=900px){.rooms-list-row{grid-template-rows:auto auto;grid-template-columns:48px 1fr 1fr}.rooms-list-row .rooms-list-specs,.rooms-list-row .rooms-list-rate{grid-column:2}.rooms-list-row .badge,.rooms-list-row .rooms-list-next{grid-column:3}}.rooms-detail-panel{background:var(--white);border:1px solid var(--linen);border-radius:14px;min-height:200px;padding:0;position:sticky;top:80px;overflow:hidden;box-shadow:0 6px 24px #2d50161a}.rooms-detail-empty,.rooms-detail-loading{color:var(--text-muted);text-align:center;padding:40px 24px;font-size:14px}.rooms-detail-empty{flex-direction:column;align-items:center;gap:12px;display:flex}.rooms-detail-empty-icon{background:var(--cream);width:48px;height:48px;color:var(--text-muted);border-radius:50%;justify-content:center;align-items:center;font-size:20px;display:inline-flex}.rooms-detail-empty p{margin:0}.rooms-detail-content .rooms-detail-hero{background-position:50%;background-size:cover;background-color:var(--linen);width:100%;height:180px;position:relative}.rooms-detail-content .rooms-detail-hero:after{content:"";pointer-events:none;background:linear-gradient(#0000,#0003);height:60%;position:absolute;bottom:0;left:0;right:0}.rooms-detail-content .rooms-detail-header{border-bottom:1px solid var(--linen);background:var(--white);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:16px 20px;display:flex}.rooms-detail-content .rooms-detail-header h3{color:var(--forest-dark);letter-spacing:.02em;margin:0;font-family:Cormorant Garamond,serif;font-size:18px;font-weight:700}.rooms-detail-content .rooms-detail-header .badge{text-transform:uppercase;letter-spacing:.03em;border-radius:20px;padding:5px 12px;font-size:10px;font-weight:700}.rooms-detail-content .review-block{border-bottom:1px solid var(--linen);margin:0;padding:14px 20px}.rooms-detail-content .review-block:nth-child(2n){background:#f5f7f399}.rooms-detail-content .review-block:last-of-type{border-bottom:none}.rooms-detail-content .review-block-header{letter-spacing:.5px;text-transform:uppercase;color:var(--text-muted);margin-bottom:8px;font-size:10px;font-weight:700}.rooms-detail-content .review-row{justify-content:space-between;padding:4px 0;font-size:12px;display:flex}.rooms-detail-content .rv-label{color:var(--text-muted);margin-right:8px}.rooms-detail-content .rv-val{color:var(--text-dark);text-align:right;font-weight:500}.rooms-amenities{flex-wrap:wrap;gap:6px;display:flex}.rooms-amenity-tag{color:var(--forest-dark);background:#8fa85a26;border:1px solid #8fa85a40;border-radius:20px;padding:5px 12px;font-size:11px;font-weight:600;display:inline-block}.rooms-upcoming-booking{flex-wrap:wrap;align-items:center;gap:8px;padding:8px 0;display:flex}.rooms-upcoming-guest{color:var(--text-dark);font-size:13px;font-weight:600}.rooms-upcoming-dates{color:var(--text-muted);width:100%;font-size:12px}.rooms-room-bookings-list{margin:0;padding:0;list-style:none}.rooms-room-bookings-list li{border-bottom:1px solid var(--linen);flex-wrap:wrap;align-items:center;gap:8px;padding:8px 0;font-size:12px;display:flex}.rooms-room-bookings-list li:last-child{border-bottom:none}.rooms-booking-guest{color:var(--text-dark);font-weight:600}.rooms-booking-dates{color:var(--text-muted)}.rooms-booking-code{color:var(--text-muted);font-family:monospace;font-size:11px}.rooms-status-pills{flex-wrap:wrap;gap:6px;display:flex}.rooms-status-pill{cursor:pointer;border:1px solid #0000;border-radius:16px;padding:4px 10px;font-family:inherit;font-size:10px;font-weight:600;transition:opacity .2s,transform .1s,box-shadow .2s}.rooms-status-pill:hover:not(:disabled){opacity:.9;transform:scale(1.02)}.rooms-status-pill:disabled{cursor:not-allowed;opacity:.7}.rooms-status-pill.active{border-color:var(--text-dark);box-shadow:0 0 0 1px}.rooms-status-pill.badge-good{color:var(--forest-dark);background:#2d50161f}.rooms-status-pill.badge-pending{color:#7a5c1a;background:#b8892a29}.rooms-status-pill.badge-checkout{color:var(--olive);background:#8fa85a33}.rooms-status-pill.badge-inactive{background:var(--linen);color:var(--text-muted)}.rooms-detail-actions{border-top:1px solid var(--linen);background:var(--white);flex-direction:column;gap:10px;padding:18px 20px;display:flex}.rooms-detail-actions .btn{border-radius:10px;justify-content:center;width:100%;padding:10px 16px;font-weight:600}.rooms-page-header{background:0 0;border:none;border-radius:0;margin-bottom:4px;padding:2px 0 6px}.rooms-page-title-wrap{gap:0}.rooms-page-icon{display:none}.rooms-page-title{color:#153f33;font-family:Cormorant Garamond,serif;font-size:20px;font-weight:700;line-height:1.05}.rooms-page-subtitle{color:#4f6a60;margin-top:2px;font-size:12px}.rooms-header-actions{gap:8px}.rooms-top-action{border-color:var(--linen-dark);color:var(--text-muted);background:#ffffffa6;border-radius:10px;padding:8px 14px}.rooms-filters-bar{box-shadow:none;background:0 0;border:none;justify-content:space-between;align-items:center;margin-bottom:6px;padding:2px 0 8px;display:flex}.rooms-filters-title{color:#153f33;font-family:DM Sans,sans-serif;font-size:14px;font-weight:600}.rooms-filters-title-wrap{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.rooms-click-hint{color:#587064;align-items:center;gap:6px;max-width:420px;margin:0;font-size:11px;font-weight:500;line-height:1.35;display:flex}.rooms-click-hint i{color:#244f37;opacity:.9;flex-shrink:0;font-size:12px}.rooms-card-calendar-hint{letter-spacing:.04em;text-transform:uppercase;color:#2a5a3f;opacity:.88;border-top:1px dashed #2d50162e;justify-content:center;align-items:center;gap:6px;margin-top:auto;padding-top:8px;font-size:10px;font-weight:700;display:flex}.rooms-card-calendar-hint i{opacity:.95;font-size:11px}.rooms-card--opens-calendar:hover .rooms-card-calendar-hint,.rooms-card--opens-calendar:focus-visible .rooms-card-calendar-hint{opacity:1;color:#173f34}.rooms-card--opens-calendar:focus-visible{outline-offset:2px;outline:2px solid #244f37}.rooms-list-row--opens-calendar:focus-visible{outline-offset:-2px;outline:2px solid #244f37}.rooms-list-calendar-hint-inline{color:#2a5a3f;align-items:center;gap:5px;margin-top:3px;font-size:10px;font-weight:600;display:inline-flex}.rooms-list-calendar-hint-inline i{opacity:.9;font-size:10px}.rooms-status-tabs{gap:8px;display:inline-flex}.rooms-status-tab{color:#38594d;cursor:pointer;background:#f8f8f6;border:1px solid #c7cfc7;border-radius:999px;padding:5px 14px;font-family:inherit;font-size:11px;font-weight:500}.rooms-status-tab.active{color:#fff;background:#244f37;border-color:#244f37}.rooms-layout{grid-template-columns:1fr;gap:10px}.rooms-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.rooms-card{box-shadow:none;background:#f9fbf8;border:1px solid #d7ddd5;border-radius:12px}.rooms-card-photo{height:100px}.rooms-card-body{background:#fff;padding:9px 10px 10px}.rooms-card-name{color:#173f34;font-family:Cormorant Garamond,serif;font-size:32px;line-height:1}.rooms-card-rate{color:#173f34;font-family:Cormorant Garamond,serif;font-size:31px;font-weight:700}.rooms-card-rate small{color:#6f8476;margin-left:1px;font-family:DM Sans,sans-serif;font-size:11px}.rooms-card-top{align-items:flex-end}.rooms-card-type{color:#4f6a60;margin-top:2px;font-size:12px}.rooms-card-topline{justify-content:space-between;align-items:center;display:flex;position:absolute;top:8px;left:10px;right:10px}.rooms-card-floor{letter-spacing:1.2px;color:#ffffffd1;text-transform:uppercase;font-size:8px;font-weight:700}.rooms-card-specs{font-size:12px}.rooms-card-next{border-top:1px solid var(--linen);margin-top:8px;padding-top:8px;font-size:12px}.rooms-card-badge{color:#fff;border:1px solid #fff3}.rooms-card-badge.rooms-chip-booked{background:#477352e6!important}.rooms-card-badge.rooms-chip-available{color:#153f33;background:#97a884eb!important}.rooms-card-badge.rooms-chip-maintenance{background:#c59865eb!important}.rooms-card-guest-row{align-items:center;gap:8px;display:flex}.rooms-card-guest-avatar{color:#2a4d3f;background:#8fa85a40;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:11px;font-weight:700;display:inline-flex}.rooms-card-guest-name{color:#153f33;font-family:Cormorant Garamond,serif;font-size:24px;line-height:1}.rooms-card-date-row{color:#5f7468;justify-content:space-between;margin-top:4px;font-size:11px;display:flex}.rooms-card-vacant-note{border-top:1px solid var(--linen);color:#799676;margin-top:8px;padding-top:8px;font-size:13px;font-style:italic}.rooms-detail-panel{display:none}.staff-page .staff-detail-section{margin-top:14px}.staff-page .staff-list-compact{margin:0;padding:0;font-size:12px;list-style:none}.staff-page .staff-list-compact li{border-bottom:1px solid var(--linen);padding:6px 0}.staff-page .staff-list-compact li:last-child{border-bottom:none}.staff-page .staff-logs-list li{padding:8px 0}.staff-page .text-muted{color:var(--text-muted);font-size:12px}.staff-view-modal-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:1200;background:#141c106b;justify-content:center;align-items:center;padding:20px;animation:.18s staffModalFadeIn;display:flex;position:fixed;inset:0}.staff-view-modal{background:var(--white);border:1px solid var(--linen-dark);border-radius:14px;flex-direction:column;width:min(920px,100%);max-height:88vh;animation:.22s staffModalSlideUp;display:flex;overflow:hidden;box-shadow:0 24px 70px #00000042}.staff-view-modal-header{border-bottom:1px solid var(--linen-dark);z-index:2;background:linear-gradient(#fff 0%,#f9fbf7 100%);justify-content:space-between;align-items:center;padding:12px 14px;display:flex;position:sticky;top:0}.staff-view-modal-title-wrap{align-items:center;gap:10px;display:flex}.staff-view-modal-avatar{width:34px;height:34px;color:var(--forest-dark);background:linear-gradient(135deg,#8fa85a40,#b8892a2e);border:1px solid #8fa85a59;border-radius:50%;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:inline-flex}.staff-view-modal-header h3{color:var(--forest-dark);margin:0;font-family:Cormorant Garamond,serif;font-size:17px;font-weight:700}.staff-view-modal-subtitle{color:var(--text-muted);margin:1px 0 0;font-size:11px}.staff-view-modal-header-actions{align-items:center;gap:8px;display:flex}.staff-view-modal-close{border:1px solid var(--linen-dark);background:var(--white);width:30px;height:30px;color:var(--text-mid);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.staff-view-modal-close:hover{background:var(--linen)}.staff-view-modal-body{background:#fcfdfb;padding:12px;overflow-y:auto}@keyframes staffModalFadeIn{0%{opacity:0}to{opacity:1}}@keyframes staffModalSlideUp{0%{opacity:0;transform:translateY(14px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}.staff-view-modal-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:10px;display:grid}.staff-view-stat{border:1px solid var(--linen-dark);background:var(--white);border-radius:10px;padding:8px 10px}.staff-view-stat-label{text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);margin-bottom:2px;font-size:10px}.staff-view-stat-value{color:var(--forest-dark);font-size:14px;font-weight:700}.staff-modal-section{border:1px solid var(--linen-dark);background:var(--white);border-radius:10px;margin-bottom:10px;padding:10px}.staff-modal-section:last-child{margin-bottom:0}.staff-modal-section-header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.staff-assign-form{background:var(--linen);border-radius:8px;margin-bottom:10px;padding:10px}.staff-assign-form-actions{gap:8px;display:flex}.staff-view-modal .statement-table{font-size:11px}.staff-view-modal .statement-table th{background:#f7f9f4}.staff-view-modal .statement-table th,.staff-view-modal .statement-table td{padding:7px 8px}@media (width<=900px){.staff-view-modal{width:100%;max-height:92vh}.staff-view-modal-stats{grid-template-columns:1fr}.staff-modal-section-header{flex-direction:column;align-items:flex-start}}@media (width<=1200px){.dashboard .stats-grid{grid-template-columns:repeat(2,1fr)}.dashboard .grid-cols-3-1{grid-template-columns:1fr}.dashboard .room-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=768px){.dashboard .grid-2,.dashboard .grid-3,.dashboard .grid-cols-2-1{grid-template-columns:1fr}}.dashboard .page-header--compact{flex-wrap:wrap;gap:8px;margin-bottom:10px;padding-bottom:8px}.dashboard .date-range-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.dashboard .date-range-label{text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);align-items:center;gap:4px;font-size:10px;font-weight:600;display:flex}.dashboard .date-range-input{border:1px solid var(--linen-dark);background:var(--white);color:var(--text-dark);border-radius:6px;padding:5px 8px;font-family:inherit;font-size:12px}.dashboard .fin-summary--compact{margin-bottom:10px}.dashboard .fin-summary--compact .fin-item{padding:8px 10px}.dashboard .fin-summary--compact .fin-value{font-size:16px}.dashboard .statement-table-wrap{-webkit-overflow-scrolling:touch;background:var(--white);border:1px solid var(--linen-dark);border-radius:10px;overflow-x:auto}.dashboard .statement-table{border-collapse:separate;border-spacing:0;width:100%;font-size:12px}.dashboard .statement-table th,.dashboard .statement-table td{text-align:left;border-bottom:1px solid var(--linen);vertical-align:middle;padding:7px 10px}.dashboard .statement-table th{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);background:#fafaf8;font-size:10px;font-weight:700}.dashboard .statement-table tbody tr:hover{background:#8fa85a14}.dashboard .statement-table-num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.dashboard .statement-block{margin-bottom:10px}.dashboard .statement-block-title{letter-spacing:.5px;text-transform:uppercase;color:var(--text-muted);margin-bottom:6px;font-size:10px;font-weight:700}.dashboard .statement-table tfoot td{border-top:2px solid var(--linen-dark);padding-top:6px}.dashboard .card--compact .card-body{padding:8px 10px}.dashboard .card-body--no-pad{padding:0}.dashboard .grid-2--sm-1{grid-template-columns:1fr 1fr;gap:10px;display:grid}.dashboard .pl-breakdown{font-size:12px}.dashboard .pl-row{border-bottom:1px solid var(--linen);justify-content:space-between;padding:4px 0;display:flex}.dashboard .pl-row--sub{color:var(--text-muted)}.dashboard .pl-row--total{border-bottom:none;border-top:2px solid var(--linen-dark);margin-top:4px;padding-top:6px;font-weight:700}.dashboard .pl-num{white-space:nowrap}.dashboard .pl-pos{color:var(--forest)}.dashboard .pl-neg,.dashboard .card--error .card-body{color:var(--red)}.dashboard .page-stack{margin-bottom:10px}.dashboard .pagination-bar{border-top:1px solid var(--linen);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px;padding:6px 10px;display:flex}.dashboard .pagination-info{color:var(--text-muted);font-size:11px}.dashboard .pagination-btns{gap:4px;display:flex}.dashboard .form-stack{flex-direction:column;gap:10px;display:flex}@media (width<=640px){.dashboard .fin-summary--sm-stack{flex-direction:column}.dashboard .fin-summary--sm-stack .fin-item{border-bottom:1px solid #ffffff1a;border-right:none}.dashboard .fin-summary--sm-stack .fin-item:last-child{border-bottom:none}.dashboard .page-header--compact{flex-direction:column;align-items:flex-start}.dashboard .grid-2--sm-1{grid-template-columns:1fr}.dashboard .statement-table{font-size:11px}.dashboard .statement-table th,.dashboard .statement-table td{padding:6px 8px}.dashboard .pl-breakdown{font-size:12px}}.dashboard .rooms-page.rooms-page--reference{margin-bottom:8px!important}.dashboard .rooms-page.rooms-page--reference .rooms-page-header{background:0 0!important;border:none!important;margin-bottom:4px!important;padding:0 0 4px!important}.dashboard .rooms-page.rooms-page--reference .rooms-page-title{color:#163f34!important;font-family:Cormorant Garamond,serif!important;font-size:20px!important;font-weight:700!important;line-height:1.05!important}.dashboard .rooms-page.rooms-page--reference .rooms-page-subtitle{color:#4f6a60!important;font-size:12px!important}.dashboard .rooms-page.rooms-page--reference .rooms-header-actions{gap:8px!important}.dashboard .rooms-page.rooms-page--reference .rooms-top-action{color:#6f7e70!important;background:#fffc!important;border:1px solid #d8d2c4!important;border-radius:10px!important;padding:7px 12px!important}.dashboard .rooms-page.rooms-page--reference .rooms-filters-bar{box-shadow:none!important;background:0 0!important;border:none!important;justify-content:space-between!important;align-items:flex-start!important;margin-bottom:6px!important;padding:0 0 8px!important;display:flex!important}.dashboard .rooms-page.rooms-page--reference .rooms-filters-title{color:#1e4036!important;font-size:14px!important;font-weight:600!important}.dashboard .rooms-page.rooms-page--reference .rooms-click-hint{max-width:100%;color:#6f877c!important;font-size:10px!important}.dashboard .rooms-page.rooms-page--reference .rooms-click-hint i{font-size:11px!important}.dashboard .rooms-page.rooms-page--reference .rooms-card-calendar-hint{border-top-color:#1d4b341f!important;padding-top:6px!important;font-size:9px!important}.dashboard .rooms-page.rooms-page--reference .rooms-list-calendar-hint-inline{color:#3b5a4f!important;font-size:9px!important}.dashboard .rooms-page.rooms-page--reference .rooms-status-tab{color:#38594d!important;background:#f8f8f6!important;border:1px solid #c7cfc7!important;border-radius:999px!important;padding:5px 14px!important;font-size:11px!important}.dashboard .rooms-page.rooms-page--reference .rooms-status-tab.active{color:#fff!important;background:#244f37!important;border-color:#244f37!important}.dashboard .rooms-page.rooms-page--reference .rooms-layout{grid-template-columns:1fr!important;gap:8px!important}.dashboard .rooms-page.rooms-page--reference .rooms-detail-panel{display:none!important}.dashboard .rooms-page.rooms-page--reference.rooms-page--admin .rooms-layout{grid-template-columns:1.5fr 1fr!important}.dashboard .rooms-page.rooms-page--reference.rooms-page--admin .rooms-detail-panel{display:block!important}.dashboard .rooms-page.rooms-page--reference.rooms-page--modal-details .rooms-layout{grid-template-columns:1fr!important}.dashboard .rooms-page.rooms-page--reference.rooms-page--modal-details .rooms-detail-panel{display:none!important}@media (width<=1200px){.dashboard .rooms-page.rooms-page--reference.rooms-page--admin .rooms-layout{grid-template-columns:1fr!important}}.dashboard .rooms-page .rooms-admin-upload-meta{color:var(--text-muted,#6f7e70);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:6px;font-size:12px;display:flex}.dashboard .rooms-page .rooms-admin-upload-previews{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.dashboard .rooms-page .rooms-admin-upload-thumb{object-fit:cover;border:1px solid var(--linen-dark,#d8d2c4);background:var(--linen,#f0ebe3);border-radius:8px;width:72px;height:72px}.dashboard .rooms-page.rooms-page--reference .rooms-card{box-shadow:none!important;background:#f9fbf8!important;border:1px solid #d7ddd5!important;border-radius:12px!important}.dashboard .rooms-page.rooms-page--reference .rooms-card:hover{box-shadow:none!important;transform:none!important}.dashboard .rooms-page.rooms-page--reference .rooms-card-photo{height:168px!important}.dashboard .rooms-page.rooms-page--reference .rooms-card-topline{z-index:3!important;justify-content:space-between!important;display:flex!important;position:absolute!important;top:8px!important;left:10px!important;right:10px!important}.dashboard .rooms-page.rooms-page--reference .rooms-card-floor{letter-spacing:1.2px!important;color:#ffffffd1!important;font-size:8px!important;font-weight:700!important}.dashboard .rooms-page.rooms-page--reference .rooms-card-badge{border-radius:999px!important;padding:4px 9px!important;font-size:9px!important}.dashboard .rooms-page.rooms-page--reference .rooms-card-top{align-items:flex-end!important}.dashboard .rooms-page.rooms-page--reference .rooms-card-rate{color:#173f34!important;font-family:Cormorant Garamond,serif!important;font-size:31px!important}.dashboard .rooms-page.rooms-page--reference .rooms-card-rate small{color:#6f8476!important;font-family:DM Sans,sans-serif!important;font-size:11px!important}.dashboard .rooms-page.rooms-page--reference .rooms-card-next,.dashboard .rooms-page.rooms-page--reference .rooms-card-vacant-note{border-top:1px solid #ece7db!important;margin-top:8px!important;padding-top:8px!important}.dashboard .rooms-page.rooms-page--reference .rooms-card-guest-name{color:#153f33!important;font-family:Cormorant Garamond,serif!important;font-size:24px!important}.dashboard .rooms-page.rooms-page--reference{--room-bg:#f5f2ec;--room-deep:#1f4b34;--room-deep-2:#2a5a3f;--room-muted:#587064;--room-border:#d8d6cf;--room-surface:#fff;--room-pill:#eef1ed}.dashboard .rooms-page.rooms-page--reference .rooms-page-title{font-size:18px!important}.dashboard .rooms-page.rooms-page--reference .rooms-page-subtitle{font-size:11px!important}.dashboard .rooms-page.rooms-page--reference .rooms-top-action{color:#9aa39a!important;box-shadow:none!important;background:#f3f3f1!important;border-color:#dfddd6!important}.dashboard .rooms-page.rooms-page--reference .rooms-filters-bar{margin-top:2px!important}.dashboard .rooms-page.rooms-page--reference .rooms-status-tabs{align-self:center!important;gap:6px!important}.dashboard .rooms-page.rooms-page--reference .rooms-status-tab{background:var(--room-pill)!important;border:1px solid var(--room-border)!important;color:#50685d!important;padding:4px 12px!important;font-size:10px!important}.dashboard .rooms-page.rooms-page--reference .rooms-status-tab.active{background:var(--room-deep)!important;border-color:var(--room-deep)!important;color:#fff!important}.dashboard .rooms-page.rooms-page--reference .rooms-grid{grid-template-columns:repeat(auto-fill,minmax(215px,1fr))!important;gap:8px!important}.dashboard .rooms-page.rooms-page--reference .rooms-card{background:var(--room-bg)!important;border:1px solid var(--room-border)!important;border-radius:10px!important;overflow:hidden!important}.dashboard .rooms-page.rooms-page--reference .rooms-card-photo-wrap{background:var(--room-deep)!important}.dashboard .rooms-page.rooms-page--reference .rooms-card-photo{opacity:1!important;filter:none!important;height:168px!important}.dashboard .rooms-page.rooms-page--reference .rooms-card-floor{color:#e7efe9e6!important;font-size:8px!important}.dashboard .rooms-page.rooms-page--reference .rooms-card-badge{color:#fff!important;letter-spacing:.3px!important;text-transform:uppercase!important;text-shadow:0 1px 1px #00000040!important;background:#2f5a43!important;border:1px solid #ffffff8c!important;border-radius:999px!important;padding:2px 8px!important;font-size:8px!important;font-weight:700!important;line-height:1.2!important}.dashboard .rooms-page.rooms-page--reference .rooms-card-badge.rooms-chip-booked{background:#3f7252!important}.dashboard .rooms-page.rooms-page--reference .rooms-card-badge.rooms-chip-available{color:#102f23!important;text-shadow:none!important;background:#86a36b!important;border-color:#ffffff73!important}.dashboard .rooms-page.rooms-page--reference .rooms-card-badge.rooms-chip-maintenance{background:#ba8f54!important}.dashboard .rooms-page.rooms-page--reference .rooms-card-body{background:var(--room-surface)!important;padding:7px 8px 8px!important}.dashboard .rooms-page.rooms-page--reference .rooms-card-name{color:#133b2f!important;font-family:Cormorant Garamond,serif!important;font-size:18px!important;line-height:1.05!important}.dashboard .rooms-page.rooms-page--reference .rooms-card-rate{color:#133b2f!important;font-size:18px!important;line-height:1!important}.dashboard .rooms-page.rooms-page--reference .rooms-card-rate small{color:#779084!important;font-size:9px!important}.dashboard .rooms-page.rooms-page--reference .rooms-card-type{color:#486256!important;font-size:10px!important}.dashboard .rooms-page.rooms-page--reference .rooms-card-next{margin-top:5px!important;padding-top:6px!important}.dashboard .rooms-page.rooms-page--reference .rooms-card-checkin-line{color:#628173;align-items:center;gap:6px;margin-bottom:4px;font-size:9px;display:flex}.dashboard .rooms-page.rooms-page--reference .rooms-card-checkin-line i{font-size:9px}.dashboard .rooms-page.rooms-page--reference .rooms-list-checkin-line{color:#628173;align-items:center;gap:5px;margin-bottom:2px;font-size:9px;display:flex}.dashboard .rooms-page.rooms-page--reference .rooms-card-guest-row{gap:7px!important}.dashboard .rooms-page.rooms-page--reference .rooms-card-guest-avatar{color:#3b5a4f!important;background:#d7e0d4!important;width:20px!important;height:20px!important;font-size:9px!important}.dashboard .rooms-page.rooms-page--reference .rooms-card-guest-name{color:#133b2f!important;font-family:DM Sans,sans-serif!important;font-size:13px!important;font-weight:600!important}.dashboard .rooms-page.rooms-page--reference .rooms-card-date-row{color:#6f877c!important;font-size:9px!important}.dashboard .rooms-page.rooms-page--reference .rooms-card-vacant-note{color:#7d9888!important;font-size:11px!important}.rooms-events-modal-overlay{z-index:10050;-webkit-backdrop-filter:blur(3px);pointer-events:auto;background:#141c188c;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0;overflow-y:auto}.rooms-events-modal{background:var(--white,#fff);border:1px solid var(--linen,#e8e4dc);pointer-events:auto;border-radius:14px;flex-direction:column;width:100%;max-width:520px;max-height:min(90vh,720px);display:flex;overflow:hidden;box-shadow:0 24px 48px #14281c38}.rooms-events-modal-header{border-bottom:1px solid var(--linen,#e8e4dc);background:linear-gradient(135deg,#2d50160f 0%,#8fa85a14 100%);flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:12px;padding:16px 18px 12px;display:flex}.rooms-events-modal-title{color:var(--forest-dark,#1a3d2e);margin:0;font-family:Cormorant Garamond,serif;font-size:20px;font-weight:700;line-height:1.2}.rooms-events-modal-sub{color:var(--text-muted,#6b7a72);margin:4px 0 0;font-size:12px}.rooms-events-modal-close{border:1px solid var(--linen,#e0dcd4);background:var(--white,#fff);width:36px;height:36px;color:var(--forest-dark,#1a3d2e);cursor:pointer;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s,border-color .15s;display:inline-flex}.rooms-events-modal-close:hover{background:var(--cream,#f7f4ee);border-color:var(--sage-light,#c5d4c0)}.rooms-events-modal-body{flex:1;min-height:0;padding:14px 18px 18px;overflow-y:auto}.rooms-detail-edit-modal{border:1px solid #e4e8e3;border-radius:16px;max-width:720px;box-shadow:0 24px 56px #111e1833}.rooms-detail-edit-modal .rooms-events-modal-header{background:#f7faf7;border-bottom:1px solid #e6ece6;padding:18px 22px 14px}.rooms-detail-edit-modal .rooms-events-modal-title{letter-spacing:.01em;color:#17382d;font-size:22px;font-weight:700}.rooms-detail-edit-modal .rooms-events-modal-sub{color:#5f7469;font-size:13px}.rooms-detail-edit-modal .rooms-events-modal-body{background:#f3f6f3;padding:18px 22px 22px}.rooms-detail-edit-modal .rooms-detail-compact-card{background:#fff;border:1px solid #d8e1d8;border-radius:12px;grid-template-columns:124px minmax(0,1fr);align-items:start;gap:14px;margin-bottom:14px;padding:14px;display:grid;box-shadow:0 2px 8px #182c210d}.rooms-detail-edit-modal .rooms-detail-corner-thumb-wrap{background:#ecf2ec;border:1px solid #d7dfd7;border-radius:10px;width:100%;height:92px;overflow:hidden;box-shadow:0 4px 10px #16241c1a}.rooms-detail-edit-modal .rooms-detail-corner-thumb{background-position:50%;background-size:cover;width:100%;height:100%}.rooms-detail-edit-modal .rooms-detail-compact-data{box-shadow:none;background:0 0;border:none;min-width:0;margin:0;padding:0}.rooms-detail-edit-modal .rooms-detail-card-header{justify-content:space-between;align-items:center;gap:10px;display:flex}.rooms-detail-edit-modal .rooms-detail-rate-chip{color:#214636;letter-spacing:0;text-transform:none;background:#f4f8f4;border:1px solid #cdd9cd;border-radius:999px;align-items:center;padding:5px 9px;font-size:11px;font-weight:700;display:inline-flex}.rooms-detail-edit-modal .rooms-detail-kv-grid{grid-template-columns:1fr 1fr;gap:8px 12px;display:grid}.rooms-detail-edit-modal .review-block{background:#fff;border:1px solid #dce4dc;border-radius:12px;margin-bottom:12px;padding:14px;box-shadow:0 2px 8px #182c210d}.rooms-detail-edit-modal .review-block-header{text-transform:uppercase;letter-spacing:.08em;color:#4b6257;margin-bottom:10px;font-size:12px}.rooms-detail-edit-modal .review-row{background:#fbfdfb;border:1px solid #e8eee8;border-radius:8px;grid-template-columns:84px minmax(0,1fr);align-items:start;gap:8px;padding:7px 8px;display:grid}.rooms-detail-edit-modal .rv-label{color:#60766a;text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:600}.rooms-detail-edit-modal .rv-val{color:#1d3f31;font-size:12px;font-weight:600;line-height:1.35}.rooms-detail-edit-modal .form-stack{grid-template-columns:1fr 1fr;gap:12px 14px;display:grid}.rooms-detail-edit-modal .form-stack .form-group{margin-bottom:0}.rooms-detail-edit-modal .form-stack .bookings-add-internal-actions{border-top:1px solid #e2e8e2;grid-column:1/-1;margin-top:8px;padding-top:12px}.rooms-detail-edit-modal .form-control{background:#fcfefc;border-color:#d2ddd2;border-radius:8px;min-height:38px}.rooms-detail-edit-modal .form-control:focus{border-color:#7ea488;box-shadow:0 0 0 3px #7ea48824}.rooms-delete-confirm-modal{border-radius:14px;max-width:440px}.rooms-delete-confirm-modal .rooms-events-modal-header{background:#fff6f6;border-bottom:1px solid #f0dede}.rooms-delete-confirm-text{color:var(--text-muted,#667a70);margin:0 0 12px;font-size:13px;line-height:1.55}@media (width<=768px){.rooms-detail-edit-modal{max-width:100%}.rooms-detail-edit-modal .rooms-events-modal-title{font-size:20px}.rooms-detail-edit-modal .rooms-detail-corner-thumb-wrap{grid-column:1/-1;width:100%;height:160px}.rooms-detail-edit-modal .rooms-detail-compact-card{grid-template-columns:1fr}.rooms-detail-edit-modal .review-row{grid-template-columns:92px minmax(0,1fr)}.rooms-detail-edit-modal .rooms-detail-kv-grid,.rooms-detail-edit-modal .form-stack{grid-template-columns:1fr}}.rooms-events-loading{color:var(--text-muted,#6b7a72);margin:0;font-size:13px}.rooms-events-cal-nav{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.rooms-events-cal-label{color:var(--forest-dark,#1a3d2e);font-size:14px;font-weight:600}.rooms-events-cal-grid{grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:18px;display:grid}.rooms-events-cal-dow{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted,#7a8a82);text-align:center;padding:4px 0;font-size:10px;font-weight:700}.rooms-events-cal-cell{border:1px solid var(--linen,#e8e4dc);background:var(--cream,#faf8f4);border-radius:8px;flex-direction:column;gap:2px;min-height:52px;padding:4px 5px;display:flex;overflow:hidden}.rooms-events-cal-cell.out-month{opacity:.45;background:#f3f1ec}.rooms-events-cal-cell.in-month{background:var(--white,#fff)}.rooms-events-cal-cell.has-booking{background:linear-gradient(#8fa85a24 0%,#ffffffe6 100%);border-color:#2d501659}.rooms-events-cal-cell.is-today{box-shadow:inset 0 0 0 2px var(--gold,#c9a227)}.rooms-events-cal-daynum{color:var(--forest-dark,#1a3d2e);font-size:11px;font-weight:700}.rooms-events-cal-guest{color:var(--forest,#2d5016);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:9px;font-weight:600;line-height:1.2;display:-webkit-box;overflow:hidden}.rooms-events-bookings-title{color:var(--forest-dark,#1a3d2e);margin:0 0 10px;font-size:13px;font-weight:700}.rooms-events-empty{color:var(--text-muted,#6b7a72);margin:0;font-size:12px}.rooms-events-bookings-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.rooms-events-bookings-list li{background:var(--cream,#f7f4ee);border:1px solid var(--linen,#e8e4dc);border-radius:10px;flex-wrap:wrap;align-items:baseline;gap:8px 12px;padding:10px 12px;display:flex}.rooms-events-b-name{color:var(--forest-dark,#1a3d2e);flex:120px;font-size:13px;font-weight:700}.rooms-events-b-dates{color:var(--text-mid,#4a5c54);font-size:11px}.rooms-events-b-status{text-transform:capitalize;color:var(--text-muted,#6b7a72);font-size:10px;font-weight:600}.rooms-events-b-status.confirmed{color:var(--teal,#1a6b5a)}.finance-legacy-banner{color:var(--text-mid,#4a5c54);background:#1a6b5a14;border:1px solid #1a6b5a33;border-radius:10px;margin-bottom:16px;padding:12px 16px;font-size:13px;line-height:1.45}.finance-legacy-banner-title{color:var(--forest-dark,#1a3d2e);align-items:center;gap:8px;margin-bottom:6px;font-weight:700;display:flex}.finance-legacy-banner p{margin:0}.finance-ledger-banner{color:var(--text-mid,#4a5c54);background:#2d501617;border:1px solid #2d501638;border-radius:10px;margin-bottom:16px;padding:12px 16px;font-size:13px;line-height:1.45}.finance-ledger-banner-title{color:var(--forest-dark,#1a3d2e);align-items:center;gap:8px;margin-bottom:6px;font-weight:700;display:flex}.finance-ledger-banner p{margin:0}.finance-ledger-tabs{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.finance-ledger-tab{border:1px solid var(--linen,#e8e4dc);background:var(--cream,#f7f4ee);color:var(--forest-dark,#1a3d2e);cursor:pointer;border-radius:999px;padding:8px 14px;font-size:13px;font-weight:600;transition:background .15s,border-color .15s}.finance-ledger-tab:hover{background:#1a6b5a0f;border-color:#1a6b5a59}.finance-ledger-tab.is-active{background:var(--teal,#1a6b5a);border-color:var(--teal,#1a6b5a);color:#fff}.finance-ledger-api-miss{background:#fff3cd59;border-color:#b8860b59;margin-bottom:16px}.finance-ledger-api-miss code{font-size:12px}.transactions-modal-overlay{z-index:1200;background:#0f1e1673;justify-content:center;align-items:flex-start;padding:24px 16px;display:flex;position:fixed;inset:0;overflow-y:auto}.transactions-modal{background:var(--cream,#f7f4ee);border:1px solid var(--linen,#e8e4dc);border-radius:14px;width:100%;max-width:480px;margin-top:40px;box-shadow:0 16px 48px #0000002e}.transactions-modal-header{border-bottom:1px solid var(--linen,#e8e4dc);justify-content:space-between;align-items:center;padding:16px 18px;display:flex}.transactions-modal-header h3{color:var(--forest-dark,#1a3d2e);margin:0;font-size:17px;font-weight:700}.transactions-modal-close{color:var(--text-muted,#6b7a72);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:4px 8px;font-size:22px;line-height:1}.transactions-modal-close:hover{color:var(--forest-dark,#1a3d2e);background:#0000000f}.transactions-modal-body{padding:18px}.transactions-form-grid{grid-template-columns:1fr 1fr;gap:12px 14px;display:grid}.transactions-form-field{flex-direction:column;gap:4px;display:flex}.transactions-form-field label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted,#6b7a72);font-size:11px;font-weight:600}.transactions-form-field--wide{grid-column:1/-1}.transactions-form-hint{color:var(--text-muted,#6b7a72);margin:6px 0 0;font-size:12px;line-height:1.35}.transactions-form-hint code{font-size:11px}.transactions-modal-actions{border-top:1px solid var(--linen,#e8e4dc);justify-content:flex-end;gap:10px;margin-top:18px;padding-top:16px;display:flex}.transactions-ledger-pill{text-transform:uppercase;letter-spacing:.03em;color:var(--teal,#1a6b5a);background:#1a6b5a1f;border-radius:999px;align-items:center;gap:4px;padding:3px 8px;font-size:10px;font-weight:600;display:inline-flex}.transactions-table-actions{flex-wrap:wrap;gap:6px;display:flex}.dashboard .statement-table .transactions-expand-col,.dashboard .statement-table .transactions-expand-cell{vertical-align:middle;width:36px;padding-left:8px;padding-right:4px}.tx-row-expand-btn{border:1px solid var(--linen-dark,#e8e4dc);background:var(--card-bg,#fff);width:28px;height:28px;color:var(--text-muted,#6b7a72);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;padding:0;display:inline-flex}.tx-row-expand-btn:hover{border-color:var(--teal,#1a6b5a);color:var(--teal,#1a6b5a)}.transactions-detail-row td{background:#8fa85a0f;border-top:none!important;padding:0!important}.transactions-detail-panel{flex-direction:column;gap:8px;padding:10px 12px 12px;display:flex}.transactions-detail-block{border:1px solid var(--linen-dark,#e8e4dc);background:var(--card-bg,#fff);border-radius:8px;overflow:hidden}.transactions-detail-block summary{cursor:pointer;align-items:center;gap:8px;padding:8px 12px;font-size:12px;font-weight:600;list-style:none;display:flex}.transactions-detail-block summary::-webkit-details-marker{display:none}.transactions-detail-block summary:before{content:"";border-left:5px solid var(--text-muted,#6b7a72);border-top:4px solid #0000;border-bottom:4px solid #0000;width:0;height:0;transition:transform .15s;transform:rotate(0)}.transactions-detail-block[open] summary:before{transform:rotate(90deg)}.transactions-detail-block-body{border-top:1px solid var(--linen-dark,#e8e4dc);padding:0 12px 10px;font-size:12px;line-height:1.45}.transactions-journal-lines{margin:8px 0 0;padding-left:18px}.transactions-journal-dr-cr{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted,#6b7a72);font-size:10px;font-weight:700}.transactions-journal-net,.transactions-journal-meta{color:var(--text-muted,#6b7a72);margin:8px 0 0;font-size:11px}.transactions-journal-net strong{color:var(--text-body,#2d3b34)}.transactions-detail-block-hint{color:var(--text-muted,#6b7a72);margin:6px 0 0;font-size:11px}.transactions-balance-subtotals{margin:8px 0 0;padding-left:18px}@media (width<=520px){.transactions-form-grid{grid-template-columns:1fr}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.dashboard .finance-stmt-page-header{align-items:flex-start}.dashboard .finance-stmt-toolbar{flex-wrap:wrap;align-items:flex-end;gap:12px 16px;display:flex}.dashboard .finance-stmt-toolbar--wrap{flex:100%;justify-content:flex-start}@media (width>=900px){.dashboard .finance-stmt-toolbar--wrap{flex:auto;justify-content:flex-end}}.dashboard .finance-stmt-toolbar-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted,#6b7a72);flex-direction:column;gap:4px;font-size:11px;font-weight:600;display:flex}.dashboard .finance-stmt-toolbar-label--grow{flex:200px;min-width:160px}.dashboard .finance-stmt-toolbar-label .form-control{text-transform:none;font-size:14px;font-weight:500}.dashboard .finance-stmt-select{min-width:100px}.dashboard .finance-stmt-fieldset{border:none;flex-wrap:wrap;align-items:center;gap:12px 20px;margin:0;padding:0;display:flex}.dashboard .finance-stmt-radio{color:var(--forest-dark,#1a3d2e);cursor:pointer;align-items:center;gap:8px;font-size:13px;font-weight:600;display:inline-flex}.dashboard .finance-stmt-radio input{accent-color:var(--teal,#1a6b5a)}.dashboard .finance-stmt-card{margin-bottom:16px}.dashboard .finance-stmt-doc-header{text-align:center;border-bottom:2px solid var(--forest-dark,#1a3d2e);margin-bottom:20px;padding-bottom:16px}.dashboard .finance-stmt-doc-title{color:var(--forest-dark,#1a3d2e);letter-spacing:.02em;margin:0 0 6px;font-size:1.35rem;font-weight:800}.dashboard .finance-stmt-doc-sub{color:var(--text-mid,#4a5c54);margin:0 0 4px;font-size:13px}.dashboard .finance-stmt-doc-period{color:var(--forest,#2d5016);margin:0;font-size:14px;font-weight:700}.dashboard .finance-stmt-asat{color:var(--text-mid,#4a5c54);margin:0 0 16px;font-size:13px}.dashboard .finance-stmt-h2{color:var(--forest-dark,#1a3d2e);margin:0 0 8px;font-size:1.05rem;font-weight:700}.dashboard .finance-stmt-hint{color:var(--text-muted,#6b7a72);margin:0 0 14px;font-size:12px;line-height:1.45}.dashboard .finance-stmt-empty-msg{margin:0 0 16px}.dashboard .finance-stmt-bs-block{margin-bottom:20px}.dashboard .finance-stmt-bs-block:last-child{margin-bottom:0}.dashboard .finance-stmt-table-wrap{overflow-x:auto}.dashboard .finance-stmt-table{border-collapse:collapse;width:100%;font-size:14px}.dashboard .finance-stmt-table--primary .finance-stmt-col-desc{width:72%}.dashboard .finance-stmt-table--primary .finance-stmt-col-note{width:8%}.dashboard .finance-stmt-table--primary .finance-stmt-col-amt{text-align:right;width:20%}.dashboard .finance-stmt-table th{text-align:left;border-bottom:2px solid var(--forest-dark,#1a3d2e);text-transform:uppercase;letter-spacing:.06em;color:var(--text-mid,#4a5c54);background:#1a6b5a0f;padding:10px 12px;font-size:11px;font-weight:700}.dashboard .finance-stmt-table th.finance-stmt-col-amt,.dashboard .finance-stmt-table th.finance-stmt-col-month,.dashboard .finance-stmt-table th.finance-stmt-col-total{text-align:right}.dashboard .finance-stmt-table td{border-bottom:1px solid var(--linen,#e8e4dc);vertical-align:top;padding:8px 12px}.dashboard .finance-stmt-section td{text-transform:uppercase;letter-spacing:.08em;color:var(--forest-dark,#1a3d2e);background:0 0;border-bottom:none;padding-top:16px;font-size:12px;font-weight:800}.dashboard .finance-stmt-line td{color:var(--text-mid,#4a5c54)}.dashboard .finance-stmt-indent{padding-left:24px!important}.dashboard .finance-stmt-num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.dashboard .finance-stmt-subtotal td{border-top:1px solid var(--forest,#2d5016);color:var(--forest-dark,#1a3d2e);padding-top:10px;font-weight:600}.dashboard .finance-stmt-grand td{padding-top:14px;padding-bottom:14px;font-size:15px}.dashboard .finance-stmt-double-top td{border-top:3px double var(--forest-dark,#1a3d2e)}.dashboard .finance-stmt-pos{color:var(--teal,#1a6b5a)}.dashboard .finance-stmt-neg{color:#9a3b2f}.dashboard .finance-stmt-muted{color:var(--text-muted,#6b7a72);font-style:italic}.dashboard .finance-stmt-monthly-scroll{-webkit-overflow-scrolling:touch;margin:0 -4px;padding:4px;overflow-x:auto}.dashboard .finance-stmt-table--months{min-width:720px}.dashboard .finance-stmt-col-month{min-width:72px;font-size:10px!important}.dashboard .finance-stmt-col-total{min-width:88px;background:#1a6b5a14!important}.dashboard .finance-stmt-month-sticky{z-index:1;min-width:120px;position:sticky;left:0;box-shadow:4px 0 8px -4px #0000001f;background:var(--cream,#f7f4ee)!important;text-align:left!important;font-size:11px!important}.dashboard .finance-stmt-row-label{font-weight:700;color:var(--forest-dark,#1a3d2e)!important;text-transform:none!important;letter-spacing:0!important}.dashboard .finance-stmt-month-net td,.dashboard .finance-stmt-month-net th{border-top:1px solid var(--linen,#e8e4dc);font-weight:600}.dashboard .acct-ui-page .finance-legacy-banner{margin-bottom:10px}.dashboard .acct-ui-topbar{background:linear-gradient(135deg, var(--forest-dark,#1a3d2e), var(--forest,#2d5016));color:var(--white,#fff);border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.dashboard .acct-ui-topbar-title{font-size:17px;font-weight:700}.dashboard .acct-ui-topbar-sub{color:#ffffffd1;margin-top:2px;font-size:12px}.dashboard .acct-ui-controls{flex-wrap:wrap;align-items:flex-end;gap:8px;display:flex}.dashboard .acct-ui-controls label{color:#ffffffe6;flex-direction:column;gap:3px;font-size:11px;font-weight:700;display:flex}.dashboard .acct-ui-controls .form-control{border-color:var(--linen,#e8e4dc);background:var(--white,#fff);min-width:108px;height:30px;color:var(--text-dark,#2f3a4a);padding:4px 8px}.dashboard .acct-ui-controls .btn{height:30px}.dashboard .acct-ui-controls .btn-outline{color:var(--white,#fff);background:0 0;border-color:#ffffff8c}.dashboard .acct-ui-controls .btn-outline:hover{color:var(--white,#fff);background:#ffffff24;border-color:#fffc}.dashboard .acct-ui-meta{color:var(--text-muted,#6b7a72);margin:8px 0 10px;font-size:12px}.dashboard .acct-ui-balance-flag{margin-left:10px;font-weight:700}.dashboard .acct-ui-balance-flag.ok{color:#237a3b}.dashboard .acct-ui-balance-flag.bad{color:#9a3b2f}.dashboard .acct-ui-table-card{border-radius:10px}.dashboard .acct-ui-table-card--cashflow .acct-ui-table-scroll{-webkit-overflow-scrolling:touch;overflow-x:auto}.dashboard .acct-ui-table--cashflow-statement{min-width:920px;font-size:13px}.dashboard .acct-ui-table--cashflow-statement .acct-ui-th-desc{min-width:220px}.dashboard .acct-ui-table--cashflow-statement .acct-ui-th-month,.dashboard .acct-ui-table--cashflow-statement .acct-ui-th-total{text-align:right;text-transform:none;letter-spacing:.02em;font-size:11px}.dashboard .acct-ui-table--cashflow-statement .acct-ui-section--cashflow td{letter-spacing:.05em;font-size:11px}.dashboard .acct-ui-table--cashflow-statement .acct-ui-cashflow-subhead td,.finance-statement-page .acct-ui-table--cashflow-statement .acct-ui-cashflow-subhead td{color:var(--forest-dark,#1a3d2e);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--linen-dark,#d5d1c7);background:#8fa85a0f;padding-top:10px;padding-bottom:6px;font-size:11px;font-weight:600}.finance-statement-page .acct-ui-table-card--cashflow .acct-ui-table-scroll{-webkit-overflow-scrolling:touch;overflow-x:auto}.finance-statement-page .acct-ui-table--cashflow-statement .acct-ui-th-month,.finance-statement-page .acct-ui-table--cashflow-statement .acct-ui-th-total{text-align:right;text-transform:none;letter-spacing:.02em;font-size:11px}.finance-statement-page .acct-ui-table--cashflow-statement{min-width:920px;font-size:13px}.finance-statement-page .acct-ui-table--cashflow-statement .acct-ui-section--cashflow td{letter-spacing:.05em;font-size:11px}.dashboard .acct-ui-table{border-collapse:separate;border-spacing:0;width:100%;font-size:12px}.dashboard .acct-ui-table th{color:var(--text-muted,#6b7a72);text-transform:uppercase;letter-spacing:.03em;text-align:left;border-bottom:1px solid var(--linen-dark,#d5d1c7);white-space:nowrap;background:#fafaf8;padding:8px;font-size:10px}.dashboard .acct-ui-table td{border-bottom:1px solid var(--linen,#e8e4dc);color:var(--text-mid,#4a5c54);padding:6px 8px}.dashboard .acct-ui-table tbody tr:hover{background:#8fa85a14}.dashboard .acct-ui-table .num{text-align:right;font-variant-numeric:tabular-nums}.dashboard .acct-ui-section td{text-transform:uppercase;letter-spacing:.03em;font-weight:700}.dashboard .acct-ui-section--neutral td{color:var(--forest-dark,#1a3d2e);background:#8fa85a1a}.dashboard .acct-ui-section--pos td{color:var(--teal,#1a6b5a);background:#1a6b5a1f}.dashboard .acct-ui-section--neg td{color:#8a342a;background:#9a3b2f1a}.dashboard .acct-ui-section--equity td{color:var(--forest-dark,#1a3d2e);background:#2d5a781a}.dashboard .acct-ui-table .pos{color:#237a3b}.dashboard .acct-ui-table .neg{color:#9a3b2f}.finance-statement-page .acct-ui-amount-drill,.dashboard .acct-ui-amount-drill{font:inherit;color:inherit;cursor:pointer;text-underline-offset:2px;background:0 0;border:none;margin:0;padding:0;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.finance-statement-page .acct-ui-amount-drill:hover,.dashboard .acct-ui-amount-drill:hover{color:var(--forest,#2d5a3f)}.finance-statement-page .acct-ui-td-drill,.dashboard .acct-ui-td-drill{vertical-align:middle}.statement-drill-modal-overlay{z-index:1200}.statement-drill-modal.transactions-modal{max-width:min(1240px,100vw - 32px)}.statement-drill-table-wrap{margin:0 -4px}.statement-drill-ledger-table{min-width:960px}.statement-drill-ledger-table th{white-space:nowrap}.statement-drill-col-date{min-width:9.5rem}.statement-drill-col-type{width:1%}.statement-drill-col-cat{min-width:7rem}.statement-drill-col-desc{text-overflow:ellipsis;max-width:12rem;overflow:hidden}.statement-drill-col-ledger{width:1%}.statement-drill-col-acct-debit,.statement-drill-col-acct-cr{min-width:10rem}.statement-drill-col-amt{min-width:5.25rem}.statement-drill-col-net,.statement-drill-col-run{min-width:6.5rem}.statement-drill-acct-cell{vertical-align:middle;background:#ffffff8c}.statement-drill-acct-name{color:var(--forest-dark,#1a3d2e);font-size:12px;font-weight:600;line-height:1.35}.statement-drill-acct-code{color:var(--text-muted,#6b7a72);font-variant-numeric:tabular-nums;margin-top:3px;font-size:10px;font-weight:600}.statement-drill-journal-ref-inline{border-top:1px dashed var(--linen-dark,#e8e4dc);color:var(--text-muted,#6b7a72);margin-top:6px;padding-top:6px;font-size:10px}.statement-drill-entry-ref-label{text-transform:uppercase;letter-spacing:.04em;margin-right:6px;font-weight:600}.statement-drill-journal-ref-inline code{font-size:10px}.statement-drill-ledger-foot td{background:#fafaf8;font-size:12px}.statement-drill-foot-hint{color:var(--text-muted,#6b7a72);font-weight:400}.statement-drill-ledger-note{color:var(--text-muted,#6b7a72);margin:8px 0 0;font-size:11px;line-height:1.4}.dashboard .chart-of-accounts-header.page-header--compact{border-bottom:1px solid var(--linen-dark,#e8e4dc);align-items:flex-start;margin-bottom:14px;padding-bottom:12px}.chart-of-accounts-lead{max-width:42rem;line-height:1.45}.chart-of-accounts-page .chart-of-accounts-warn{color:#9a5c1a;margin-top:6px;font-weight:500;display:block}.chart-of-accounts-card.coa-report-card{background:var(--white,#fff);border:1px solid var(--linen-dark,#e8e4dc);overflow:hidden;box-shadow:0 1px 3px #163f340f}.coa-report-toolbar{border-bottom:1px solid var(--linen-dark,#e8e4dc);background:var(--white,#fff);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:16px 18px;display:flex}.coa-report-title{color:var(--forest-dark,#1a3d2e);letter-spacing:-.02em;margin:0;font-size:1.2rem;font-weight:700}.coa-report-toolbar-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.coa-btn-add-entry.btn{border-radius:8px;align-items:center;gap:8px;padding:8px 14px;font-weight:600;display:inline-flex;color:#fff!important;background:var(--forest,#2d5a3f)!important;border-color:var(--forest-dark,#1a3d2e)!important}.coa-btn-add-entry.btn:hover{filter:brightness(1.05);color:#fff!important}.coa-btn-add-account.btn,.coa-btn-refresh.btn{border-radius:8px;align-items:center;gap:8px;padding:8px 14px;font-weight:600;display:inline-flex}.coa-report-filters{border-bottom:1px solid var(--linen-dark,#e8e4dc);background:#fafaf8;grid-template-columns:1fr minmax(11rem,13rem);align-items:end;gap:14px 20px;padding:14px 18px;display:grid}.coa-report-filters label{letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted,#6b7a72);margin-bottom:6px;font-size:10px;font-weight:700;display:block}.coa-report-count{color:var(--text-muted,#6b7a72);grid-column:1/-1;margin:0;font-size:12px}@media (width<=640px){.coa-report-filters{grid-template-columns:1fr}}.coa-report-table-wrap{border:none!important;border-radius:0!important}.coa-report-table th{letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted,#6b7a72);font-size:10px;font-weight:700}.coa-report-th-actions{width:5rem;text-align:center!important}.coa-table-type-pill{letter-spacing:.02em;text-transform:capitalize;color:#fff;background:#2563eb;border:1px solid #1d4ed8;border-radius:999px;padding:4px 12px;font-size:11px;font-weight:700;line-height:1.25;display:inline-block}.coa-table-type-pill--empty{color:var(--text-muted,#6b7a72);border-color:var(--linen-dark,#e8e4dc);background:#e8e6e1;font-weight:600}.coa-report-category{color:var(--text-dark,#1f2923);font-size:13px}.coa-report-actions-col{text-align:center;width:5rem;vertical-align:middle!important}.coa-report-icon-actions{justify-content:center;align-items:center;gap:6px;display:inline-flex}.coa-icon-action{border:1px solid var(--linen-dark,#e8e4dc);background:var(--white,#fff);width:34px;height:34px;color:var(--text-muted,#6b7a72);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;padding:0;transition:border-color .15s,color .15s,background .15s;display:inline-flex}.coa-icon-action:hover:not(:disabled){border-color:var(--forest,#2d5a3f);color:var(--forest-dark,#1a3d2e);background:#2d5a3f0f}.coa-icon-action:disabled{opacity:.35;cursor:not-allowed}.coa-icon-action--active{border-color:var(--forest,#2d5a3f);color:var(--forest,#2d5a3f);background:#8fa85a33}.coa-ledger-modal.transactions-modal{width:100%;max-width:min(1100px,100vw - 24px)}.coa-ledger-modal .transactions-modal-header h3{flex-wrap:wrap;font-size:1.05rem;line-height:1.35}.coa-ledger-modal-body{max-height:min(75vh,800px);padding-top:8px;overflow-y:auto}.coa-ledger-modal-hint{margin:0 0 12px}.coa-ledger-stats{margin-bottom:14px}.coa-ledger-table-wrap{margin:0 -4px;overflow-x:auto}.chart-of-accounts-page .chart-of-accounts-table-wrap{border:none;border-radius:0 0 10px 10px}.chart-of-accounts-table .chart-of-accounts-th-code{width:6.5rem}.chart-of-accounts-table .chart-of-accounts-th-tag{white-space:nowrap;width:1%}.chart-of-accounts-table .chart-of-accounts-th-num{width:1%}.chart-of-accounts-table .chart-of-accounts-th-actions{width:1%;padding-inline:12px!important}.chart-of-accounts-table .chart-of-accounts-code{font-variant-numeric:tabular-nums;vertical-align:middle}.chart-of-accounts-code-inner{color:var(--forest-dark,#1a3d2e);background:#2d5a3f1a;border:1px solid #2d5a3f2e;border-radius:6px;padding:2px 8px;font-size:12px;font-weight:700;display:inline-block}.chart-of-accounts-table .chart-of-accounts-name{color:var(--text-dark,#1f2923);max-width:22rem;font-weight:600}.chart-of-accounts-cell-tag{vertical-align:middle}.chart-of-accounts-amt{color:var(--text-dark,#1f2923);font-weight:600}.chart-of-accounts-txn-count{color:var(--text-muted,#6b7a72);font-weight:600}.coa-pill{letter-spacing:.03em;text-transform:uppercase;border:1px solid #0000;border-radius:999px;padding:3px 9px;font-size:10px;font-weight:700;line-height:1.3;display:inline-block}.coa-pill--asset{color:#1d4ed8;background:#3b82f61f;border-color:#3b82f640}.coa-pill--liability{color:#7e22ce;background:#a855f71f;border-color:#a855f747}.coa-pill--equity{color:#a16207;background:#eab30826;border-color:#eab30859}.coa-pill--revenue{color:#047857;background:#10b98124;border-color:#10b98147}.coa-pill--expense{color:#c2410c;background:#f9731624;border-color:#f9731647}.coa-pill--muted{color:var(--text-muted,#6b7a72);border-color:var(--linen-dark,#e8e4dc);background:#f3f2ee}.coa-pill--nb-debit{color:#b91c1c;background:#dc262614;border-color:#dc262633}.coa-pill--nb-credit{color:var(--forest-dark,#1a3d2e);background:#2d5a3f1f;border-color:#2d5a3f38}.chart-of-accounts-row--selected{box-shadow:inset 3px 0 0 var(--forest,#2d5a3f);background:#8fa85a24!important}.chart-of-accounts-actions{white-space:nowrap;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;width:1%;display:flex}.chart-of-accounts-row-btn{border-radius:7px;font-weight:600}.chart-of-accounts-modal.transactions-modal{border-radius:12px;max-width:min(640px,100vw - 32px);box-shadow:0 20px 50px #163f342e}.chart-of-accounts-modal .transactions-modal-header{border-bottom:1px solid var(--linen-dark,#e8e4dc);background:#fafaf8}.chart-of-accounts-modal .transactions-modal-header h3{color:var(--forest-dark,#1a3d2e);font-size:1.05rem;font-weight:700}.coa-checkbox-label{cursor:pointer;color:var(--text-dark,#1f2923);align-items:center;gap:10px;font-size:13px;font-weight:500;display:inline-flex}.coa-checkbox-label input{width:1.05rem;height:1.05rem;accent-color:var(--forest,#2d5a3f)}.chart-of-accounts-api-note{color:var(--text-muted,#6b7a72);margin:12px 0 0;font-size:11px;line-height:1.45}.chart-of-accounts-limit-note{color:var(--text-muted,#6b7a72);border-top:1px solid var(--linen-dark,#e8e4dc);background:#fafaf8;margin:0;padding:10px 14px;font-size:12px}.chart-of-accounts-limit-note a{color:var(--forest,#2d5a3f);font-weight:600}.chart-of-accounts-activity-code{font-variant-numeric:tabular-nums;background:#2d5a3f1f;border:1px solid #2d5a3f33;border-radius:8px;padding:2px 10px;font-size:.95em}.chart-of-accounts-activity-sep{color:var(--text-muted,#6b7a72);font-weight:500}.chart-of-accounts-activity-badge{text-transform:uppercase;letter-spacing:.04em;color:#9a3412;background:#fff7ed;border:1px solid #fed7aa;border-radius:999px;margin-left:4px;padding:3px 10px;font-size:11px;font-weight:700;display:inline-block}.chart-of-accounts-activity-hint{color:var(--text-muted,#6b7a72);max-width:40rem;margin:8px 0 0;font-size:12px;line-height:1.4}.chart-of-accounts-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}@media (width<=720px){.chart-of-accounts-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}.chart-of-accounts-stat{background:var(--white,#fff);border:1px solid var(--linen-dark,#e8e4dc);border-radius:10px;padding:12px 14px;box-shadow:0 1px 2px #163f340a}.chart-of-accounts-stat-label{letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted,#6b7a72);margin-bottom:6px;font-size:10px;font-weight:700;display:block}.chart-of-accounts-stat-value{font-variant-numeric:tabular-nums;color:var(--forest-dark,#1a3d2e);font-size:15px;font-weight:700}.chart-of-accounts-stat--pos{color:var(--forest,#2d5a3f)!important}.chart-of-accounts-stat--neg{color:var(--red)!important}.chart-of-accounts-activity-table th{white-space:nowrap}.chart-of-accounts-cp{max-width:16rem;font-size:12px}.booking-payments-toolbar{flex-direction:column;gap:8px;display:flex}.booking-payments-search-label{letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted,#6b7a72);font-size:10px;font-weight:700}.booking-payments-search{max-width:22rem}.booking-payments-hint{color:var(--text-muted,#6b7a72);max-width:48rem;margin:4px 0 0;font-size:12px;line-height:1.45}.booking-payments-table .booking-payments-ref{font-variant-numeric:tabular-nums;color:var(--forest-dark,#1a3d2e);font-weight:700}.booking-payments-guest{color:var(--text-dark,#1f2923);font-weight:600}.booking-payments-email{color:var(--text-muted,#6b7a72);margin-top:2px;font-size:11px}.booking-payments-dates{white-space:nowrap;font-size:12px}.booking-payments-room{font-size:12px}.booking-payments-type{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted,#6b7a72);margin-top:2px;font-size:10px;font-weight:600;display:block}.booking-payments-actions{white-space:nowrap;width:1%}.booking-payments-modal{max-width:min(520px,100vw - 32px)}.booking-payments-modal-summary{border:1px solid var(--linen-dark,#e8e4dc);background:#fafaf8;border-radius:8px;margin-bottom:16px;padding:12px 14px}.booking-payments-modal-summary strong{color:var(--forest-dark,#1a3d2e);font-size:15px;display:block}.booking-payments-modal-ref{color:var(--text-muted,#6b7a72);font-variant-numeric:tabular-nums;margin-top:4px;font-size:12px;font-weight:600;display:inline-block}.booking-payments-modal-meta{color:var(--text-muted,#6b7a72);margin-top:8px;font-size:12px}.statement-drill-modal .statement-drill-sub{color:var(--text-muted,#6b7a72);margin:4px 0 0;font-size:13px;font-weight:400}.statement-drill-meta{color:var(--text-muted,#6b7a72);margin:0 0 12px;font-size:12px}.statement-drill-loading,.statement-drill-empty{color:var(--text-muted,#6b7a72);margin:12px 0;font-size:13px}.statement-drill-compare{color:var(--text-mid,#4a5c54);margin:12px 0 0;font-size:12px}.statement-drill-compare-warn{color:#8a5a2b}.statement-drill-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:12px;display:flex}.statement-drill-table{font-size:12px}.dashboard .acct-ui-total-row td{border-top:2px solid var(--forest-dark,#1a3d2e);font-weight:700}.dashboard .acct-ui-bs-subtotal-row td{color:var(--text-muted,#6b7a72);background:#fafaf8f2;font-size:11px}.dashboard .acct-ui-section-total-row td{border-top:1px solid var(--linen-dark,#d5d1c7);background:#1a3d2e0f;font-size:12px}.dashboard .acct-ui-section-total-row td.num{font-variant-numeric:tabular-nums}.dashboard .acct-ui-meta--balance{flex-wrap:wrap;align-items:center;gap:6px 10px;display:flex}.dashboard .acct-ui-meta-sep{color:var(--text-muted,#6b7a72);opacity:.7}.dashboard .acct-ui-th-account{min-width:200px}.dashboard .acct-ui-td-account{color:var(--forest-dark,#1a3d2e);font-weight:500}.dashboard .acct-ui-td-muted{color:var(--text-muted,#6b7a72);font-size:11px}.dashboard .acct-ui-td-code{font-variant-numeric:tabular-nums;white-space:nowrap}.dashboard .acct-ui-balance-formula{border:1px solid var(--linen-dark,#d5d1c7);border-radius:10px;margin-top:16px;overflow:hidden}.dashboard .acct-ui-balance-formula.is-balanced{background:linear-gradient(135deg,#237a3b0f 0%,#8fa85a14 100%);border-color:#237a3b59}.dashboard .acct-ui-balance-formula.is-not-balanced{background:linear-gradient(135deg,#9a3b2f0f 0%,#faf8f5 100%);border-color:#9a3b2f59}.dashboard .acct-ui-balance-formula-inner{padding:16px 18px}.dashboard .acct-ui-balance-formula-title{color:var(--forest-dark,#1a3d2e);margin-bottom:6px;font-size:13px;font-weight:700}.dashboard .acct-ui-balance-formula-title .fa-equals{opacity:.65;margin-right:8px}.dashboard .acct-ui-balance-formula-desc{color:var(--text-muted,#6b7a72);margin:0 0 12px;font-size:12px}.dashboard .acct-ui-balance-formula-eq{flex-wrap:wrap;align-items:flex-end;gap:10px 14px;margin-bottom:14px;display:flex}.dashboard .acct-ui-formula-term{flex-direction:column;gap:2px;min-width:100px;display:flex}.dashboard .acct-ui-formula-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted,#6b7a72);font-size:10px}.dashboard .acct-ui-formula-val{font-variant-numeric:tabular-nums;color:var(--forest-dark,#1a3d2e);font-size:15px;font-weight:700}.dashboard .acct-ui-formula-op{color:var(--text-muted,#6b7a72);padding-bottom:2px;font-size:18px;font-weight:700}.dashboard .acct-ui-balance-formula-check{border-top:1px dashed var(--linen-dark,#d5d1c7);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding-top:12px;display:flex}.dashboard .acct-ui-formula-diff{font-variant-numeric:tabular-nums;font-size:14px;font-weight:700}.dashboard .acct-ui-formula-diff.ok{color:#237a3b}.dashboard .acct-ui-formula-diff.bad{color:#9a3b2f}@media print{.dashboard .acct-ui-balance-formula{break-inside:avoid}}.dashboard .acct-ui-table-wrap{overflow-x:auto}.dashboard .finance-dash-kpi-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:14px 18px;display:grid}.dashboard .finance-dash-kpi{flex-direction:column;gap:4px;min-width:0;display:flex}.dashboard .finance-dash-kpi-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted,#7a8b6a);font-size:10px;font-weight:700}.dashboard .finance-dash-kpi-value{font-variant-numeric:tabular-nums;color:var(--forest-dark,#1a3d2e);font-size:18px;font-weight:700;line-height:1.2}.dashboard .finance-dash-kpi-pos{color:#237a3b}.dashboard .finance-dash-kpi-neg{color:#9a3b2f}.dashboard .finance-dash-kpi-trend{font-variant-numeric:tabular-nums;font-size:11px}.dashboard .finance-dash-kpi-trend.up{color:#237a3b}.dashboard .finance-dash-kpi-trend.down{color:#9a3b2f}.dashboard .finance-dash-kpi-link{color:var(--forest,#2d5016);margin-top:2px;font-size:12px;font-weight:600;text-decoration:none}.dashboard .finance-dash-kpi-link:hover{text-decoration:underline}.dashboard .finance-dash-bookings-note{color:var(--text-mid,#3d4f2a)}.dashboard .finance-dash-activity-list{margin:8px 0 0;padding:0;font-size:13px;line-height:1.45;list-style:none}.dashboard .finance-dash-activity-list li{border-bottom:1px solid var(--linen,#ede8dc);padding:6px 0}.dashboard .finance-dash-activity-list li:last-child{border-bottom:none}.dashboard .finance-dash-activity-sub{color:var(--text-muted,#7a8b6a);margin-top:2px;font-size:11px;font-weight:400;display:block}.login-page{flex-direction:column;justify-content:center;align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden;background:linear-gradient(135deg,#f4f7f2 0%,#f8faf7 50%,#e9f0e4 100%)!important;padding:2rem 1rem!important}.login-page__blob{pointer-events:none;filter:blur(64px);border-radius:9999px;width:18rem;height:18rem;position:absolute}.login-page__blob--top{background:#6b8b5233;top:-7rem;left:-5rem}.login-page__blob--bottom{background:#2d501626;bottom:-7rem;right:-5rem}.login-back{color:#2d5016;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffffa6;border:1px solid #d8e3cf;border-radius:.75rem;padding:.5rem .75rem;font-size:.875rem;font-weight:600;text-decoration:none;position:absolute;top:1rem;left:1rem}.login-back:hover{background:#eef4e9d9}.login-card{background:#fff;border:1px solid #d8e3cf;border-radius:1rem;grid-template-columns:1fr;width:100%;max-width:64rem;display:grid;overflow:hidden;box-shadow:0 16px 50px #1c351029!important}@media (width>=1024px){.login-card{grid-template-columns:1fr 1fr}.login-hero{display:flex!important}}.login-hero{color:#fff;background:linear-gradient(135deg,#244015 0%,#385f21 100%);flex-direction:column;justify-content:space-between;gap:1rem;padding:2.5rem;display:none}.login-hero__pill{letter-spacing:.05em;text-transform:uppercase;background:#ffffff1a;border:1px solid #ffffff4d;border-radius:9999px;align-items:center;padding:.25rem .75rem;font-size:.75rem;font-weight:600;display:inline-flex}.login-panel{padding:1.5rem}@media (width>=640px){.login-panel{padding:2.5rem}}.login-field{color:#1f3220;width:100%;box-shadow:none;background:#fff;border:1px solid #cfdbca;border-radius:.75rem;padding:.625rem 5rem .625rem .875rem;font-size:.875rem;transition:border-color .15s,box-shadow .15s}.login-field:focus{outline:none;box-shadow:0 0 0 2px #7ea06c40;border-color:#2f5a1f!important}.login-toggle{color:#2f5a1f;background:0 0;border-radius:.375rem;padding:.25rem .5rem;font-size:.75rem;font-weight:600;position:absolute;top:50%;right:.5rem;transform:translateY(-50%)}.login-toggle:hover{background:#eef4e9}.login-submit{color:#fff;background:#2d5016;border:none;border-radius:.75rem;width:100%;padding:.625rem 0;font-size:.875rem;font-weight:600;transition:background-color .15s,opacity .15s}.login-submit:hover{background:#234111}.login-submit:disabled{cursor:not-allowed;opacity:.6}@media (width<=640px){.login-page{justify-content:center;padding:4.25rem .9rem 1.25rem!important}.login-back{border-radius:.625rem;padding:.4rem .6rem;font-size:.75rem;top:.75rem;left:.75rem}.login-card{border-radius:.875rem;max-width:30rem;box-shadow:0 12px 36px #1c351024!important}.login-panel{padding:1.25rem 1.1rem}.login-panel h2{font-size:1.4rem;line-height:1.2}.login-panel p{font-size:.84rem}.login-panel form{gap:.95rem;margin-top:1.1rem}.login-panel label{margin-bottom:.35rem!important;font-size:.82rem!important}.login-field{padding:.66rem 4rem .66rem .8rem;font-size:.84rem}.login-toggle{padding:.25rem .45rem;font-size:.6875rem;right:.35rem}.login-submit{padding:.68rem 0;font-size:.86rem}}@media (width<=420px){.login-page{padding:4rem .7rem 1rem!important}.login-back{padding:.35rem .55rem;font-size:.72rem;top:.6rem;left:.6rem}.login-card{border-radius:.8rem}.login-panel{padding:1.05rem .95rem}.login-panel h2{font-size:1.3rem}.login-panel p{font-size:.8rem}.login-field{padding-right:3.6rem;font-size:.8rem}.login-submit{font-size:.82rem}}
