/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@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-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-font-weight: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-outline-style:solid;--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-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-space-y-reverse:0;--tw-leading:initial;--tw-tracking:initial;--tw-duration:initial;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1}}}@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-black:#000;--color-white:#fff;--spacing:.25rem;--container-md:28rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--font-weight-medium:500;--radius-lg:.5rem;--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);--color-status-done:#16a34a;--color-status-done-bg:#e8f6ec;--color-status-problem:#dc2626;--color-status-problem-bg:#fdecec;--color-red-50:oklch(97.1% .013 17.38);--color-red-100:oklch(93.6% .032 17.717);--color-red-400:oklch(70.4% .191 22.216);--color-red-500:oklch(63.7% .237 25.331);--color-red-600:oklch(57.7% .245 27.325);--color-red-900:oklch(39.6% .141 25.723);--color-orange-100:oklch(95.4% .038 75.164);--color-orange-400:oklch(75% .183 55.934);--color-orange-600:oklch(64.6% .222 41.116);--color-orange-900:oklch(40.8% .123 38.172);--color-yellow-50:oklch(98.7% .026 102.212);--color-yellow-100:oklch(97.3% .071 103.193);--color-yellow-400:oklch(85.2% .199 91.936);--color-yellow-700:oklch(55.4% .135 66.442);--color-yellow-900:oklch(42.1% .095 57.708);--color-green-100:oklch(96.2% .044 156.743);--color-green-400:oklch(79.2% .209 151.711);--color-green-600:oklch(62.7% .194 149.214);--color-green-900:oklch(39.3% .095 152.535);--color-blue-50:oklch(97% .014 254.604);--color-blue-100:oklch(93.2% .032 255.585);--color-blue-400:oklch(70.7% .165 254.624);--color-blue-600:oklch(54.6% .245 262.881);--color-blue-700:oklch(48.8% .243 264.376);--color-blue-900:oklch(37.9% .146 265.522);--color-indigo-100:oklch(93% .034 272.788);--color-indigo-400:oklch(67.3% .182 276.935);--color-indigo-600:oklch(51.1% .262 276.966);--color-indigo-900:oklch(35.9% .144 278.697);--color-purple-100:oklch(94.6% .033 307.174);--color-purple-400:oklch(71.4% .203 305.504);--color-purple-600:oklch(55.8% .288 302.321);--color-purple-900:oklch(38.1% .176 304.987);--color-pink-100:oklch(94.8% .028 342.258);--color-pink-400:oklch(71.8% .202 349.761);--color-pink-600:oklch(59.2% .249 .584);--color-pink-900:oklch(40.8% .153 2.432);--color-gray-100:oklch(96.7% .003 264.542);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-400:oklch(70.7% .022 261.325);--color-gray-600:oklch(44.6% .03 256.802);--container-2xl:42rem;--container-4xl:56rem;--container-6xl:72rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75/1.25);--text-3xl:1.875rem;--text-3xl--line-height:1.2;--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5/2.25);--text-5xl:3rem;--text-5xl--line-height:1;--text-6xl:3.75rem;--text-6xl--line-height:1;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-black:900;--tracking-tight:-.025em;--leading-tight:1.25;--radius-md:.375rem;--radius-xl:.75rem;--radius-2xl:1rem;--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite}}@layer base{a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}:-moz-focusring:where(:not(iframe)){outline:auto}@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)}}}*,: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;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{.fixed{position:fixed}.static{position:static}.end-1{inset-inline-end:calc(var(--spacing) * 1)}.top-14{top:calc(var(--spacing) * 14)}.right-2{right:calc(var(--spacing) * 2)}.right-6{right:calc(var(--spacing) * 6)}.bottom-2{bottom:calc(var(--spacing) * 2)}.left-2{left:calc(var(--spacing) * 2)}.z-40{z-index:40}.z-\[100\]{z-index:100}.\!container{width:100%!important}@media (width>=40rem){.\!container{max-width:40rem!important}}@media (width>=48rem){.\!container{max-width:48rem!important}}@media (width>=64rem){.\!container{max-width:64rem!important}}@media (width>=80rem){.\!container{max-width:80rem!important}}@media (width>=96rem){.\!container{max-width:96rem!important}}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.hidden{display:none}.inline{display:inline}.list-item{display:list-item}.table{display:table}.w-9{width:calc(var(--spacing) * 9)}.w-\[min\(440px\,42vw\)\]{width:min(440px,42vw)}.w-\[min\(500px\,92vw\)\]{width:min(500px,92vw)}.w-\[min\(1400px\,94vw\)\]{width:min(1400px,94vw)}.min-w-0{min-width:0}.shrink-0{flex-shrink:0}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.flex-row{flex-direction:row}.items-end{align-items:flex-end}.overflow-hidden{overflow:hidden}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-\[\#e0e0e0\]{border-color:#e0e0e0}.bg-\[\#eaf2fe\]{background-color:#eaf2fe}.bg-black\/20{background-color:#0003}@supports (color:color-mix(in lab, red, red)){.bg-black\/20{background-color:color-mix(in oklab, var(--color-black) 20%, transparent)}}.bg-status-done-bg{background-color:var(--color-status-done-bg)}.bg-status-problem-bg{background-color:var(--color-status-problem-bg)}.p-5{padding:calc(var(--spacing) * 5)}.text-left{text-align:left}.text-\[\#2563eb\]{color:#2563eb}.text-\[var\(--color-primary\)\]{color:var(--color-primary)}.text-status-done{color:var(--color-status-done)}.text-status-problem{color:var(--color-status-problem)}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.underline{text-decoration-line:underline}.shadow-\[0_2px_10px_rgba\(0\,0\,0\,0\.08\)\]{--tw-shadow:0 2px 10px var(--tw-shadow-color,#00000014);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[2px_16px_19px_rgba\(0\,0\,0\,0\.09\)\]{--tw-shadow:2px 16px 19px var(--tw-shadow-color,#00000017);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px 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)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,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))}.select-all{-webkit-user-select:all;user-select:all}@media (hover:hover){.hover\:bg-\[\#fafdff\]:hover{background-color:#fafdff}}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:calc(var(--spacing)*0)}.z-\[1\]{z-index:1}.z-\[2\]{z-index:2}.z-\[3\]{z-index:3}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.mx-auto{margin-inline:auto}.my-2{margin-block:calc(var(--spacing)*2)}.my-4{margin-block:calc(var(--spacing)*4)}.my-6{margin-block:calc(var(--spacing)*6)}.mt-4{margin-top:calc(var(--spacing)*4)}.mt-20{margin-top:calc(var(--spacing)*20)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-3{margin-bottom:calc(var(--spacing)*3)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.mb-6{margin-bottom:calc(var(--spacing)*6)}.mb-16{margin-bottom:calc(var(--spacing)*16)}.ml-8{margin-left:calc(var(--spacing)*8)}.flex{display:flex}.grid{display:grid}.inline-flex{display:inline-flex}.h-4{height:calc(var(--spacing)*4)}.h-6{height:calc(var(--spacing)*6)}.h-10{height:calc(var(--spacing)*10)}.h-12{height:calc(var(--spacing)*12)}.h-16{height:calc(var(--spacing)*16)}.h-20{height:calc(var(--spacing)*20)}.h-\[280px\]{height:280px}.h-full{height:100%}.max-h-4{max-height:calc(var(--spacing)*4)}.max-h-40{max-height:calc(var(--spacing)*40)}.min-h-screen{min-height:100vh}.w-4{width:calc(var(--spacing)*4)}.w-6{width:calc(var(--spacing)*6)}.w-10{width:calc(var(--spacing)*10)}.w-12{width:calc(var(--spacing)*12)}.w-16{width:calc(var(--spacing)*16)}.w-32{width:calc(var(--spacing)*32)}.w-\[280px\]{width:280px}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-4xl{max-width:var(--container-4xl)}.max-w-6xl{max-width:var(--container-6xl)}.max-w-md{max-width:var(--container-md)}.min-w-64{min-width:calc(var(--spacing)*64)}.flex-1{flex:1}.flex-shrink-0{flex-shrink:0}.-translate-x-1\/2{--tw-translate-x:-50%;translate:var(--tw-translate-x)var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y:-50%;translate:var(--tw-translate-x)var(--tw-translate-y)}.animate-pulse{animation:var(--animate-pulse)}.cursor-default{cursor:default}.cursor-grab{cursor:grab}.cursor-pointer{cursor:pointer}.touch-none{touch-action:none}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.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)}.gap-4{gap:calc(var(--spacing)*4)}.gap-8{gap:calc(var(--spacing)*8)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*1)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*1)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*2)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-y-reverse)))}: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-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*4)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-y-reverse)))}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:3.40282e38px}.rounded-inherit{border-radius:inherit}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-b-none{border-bottom-right-radius:0;border-bottom-left-radius:0}.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-gray-200{border-color:var(--color-gray-200)}.border-white{border-color:var(--color-white)}.bg-black\/5{background-color:#0000000d}@supports (color:color-mix(in lab,red,red)){.bg-black\/5{background-color:color-mix(in oklab,var(--color-black)5%,transparent)}}.bg-blue-50{background-color:var(--color-blue-50)}.bg-blue-100{background-color:var(--color-blue-100)}.bg-blue-600{background-color:var(--color-blue-600)}.bg-green-100{background-color:var(--color-green-100)}.bg-indigo-100{background-color:var(--color-indigo-100)}.bg-orange-100{background-color:var(--color-orange-100)}.bg-pink-100{background-color:var(--color-pink-100)}.bg-purple-100{background-color:var(--color-purple-100)}.bg-red-50{background-color:var(--color-red-50)}.bg-white{background-color:var(--color-white)}.bg-yellow-50{background-color:var(--color-yellow-50)}.p-1{padding:calc(var(--spacing)*1)}.p-3{padding:calc(var(--spacing)*3)}.p-4{padding:calc(var(--spacing)*4)}.p-6{padding:calc(var(--spacing)*6)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-3{padding-inline:calc(var(--spacing)*3)}.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-2{padding-block:calc(var(--spacing)*2)}.py-10{padding-block:calc(var(--spacing)*10)}.py-12{padding-block:calc(var(--spacing)*12)}.py-20{padding-block:calc(var(--spacing)*20)}.pt-0{padding-top:calc(var(--spacing)*0)}.pr-2{padding-right:calc(var(--spacing)*2)}.pb-28{padding-bottom:calc(var(--spacing)*28)}.text-center{text-align:center}.font-\[family-name\:var\(--font-inter\)\]{font-family:var(--font-inter)}.font-\[family-name\:var\(--font-pacifico\)\]{font-family:var(--font-pacifico)}.font-mono{font-family:var(--font-mono)}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-6xl{font-size:var(--text-6xl);line-height:var(--tw-leading,var(--text-6xl--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-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--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-black{--tw-font-weight:var(--font-weight-black);font-weight:var(--font-weight-black)}.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-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.text-\[\#61DAFB\]{color:#61dafb}.text-black{color:var(--color-black)}.text-black\/70{color:#000000b3}@supports (color:color-mix(in lab,red,red)){.text-black\/70{color:color-mix(in oklab,var(--color-black)70%,transparent)}}.text-blue-600{color:var(--color-blue-600)}.text-gray-600{color:var(--color-gray-600)}.text-green-600{color:var(--color-green-600)}.text-indigo-600{color:var(--color-indigo-600)}.text-orange-600{color:var(--color-orange-600)}.text-pink-600{color:var(--color-pink-600)}.text-purple-600{color:var(--color-purple-600)}.text-red-500{color:var(--color-red-500)}.text-red-600{color:var(--color-red-600)}.text-yellow-700{color:var(--color-yellow-700)}.opacity-80{opacity:.8}.shadow-\[0_2px_8px_rgba\(0\,0\,0\,0\.15\)\]{--tw-shadow:0 2px 8px var(--tw-shadow-color,#00000026);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px 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)}.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)}.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))}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}@media (hover:hover){.group-hover\:rotate-12:is(:where(.group):hover *){rotate:12deg}.hover\:scale-105:hover{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x)var(--tw-scale-y)}.hover\:bg-black\/10:hover{background-color:#0000001a}@supports (color:color-mix(in lab,red,red)){.hover\:bg-black\/10:hover{background-color:color-mix(in oklab,var(--color-black)10%,transparent)}}.hover\:bg-blue-100:hover{background-color:var(--color-blue-100)}.hover\:bg-blue-700:hover{background-color:var(--color-blue-700)}.hover\:bg-gray-100:hover{background-color:var(--color-gray-100)}.hover\:bg-red-100:hover{background-color:var(--color-red-100)}.hover\:bg-yellow-100:hover{background-color:var(--color-yellow-100)}.hover\:text-black:hover{color:var(--color-black)}.hover\:underline:hover{text-decoration-line:underline}.hover\:shadow-lg:hover{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px 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)}}.active\:cursor-grabbing:active{cursor:grabbing}@media (width>=40rem){.sm\:flex-row{flex-direction:row}}@media (width>=48rem){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.md\:text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}}@media (width>=64rem){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (prefers-color-scheme:dark){.dark\:bg-black\/200{background-color:#000}@supports (color:color-mix(in lab,red,red)){.dark\:bg-black\/200{background-color:color-mix(in oklab,var(--color-black)200%,transparent)}}.dark\:bg-blue-900\/20{background-color:#1c398e33}@supports (color:color-mix(in lab,red,red)){.dark\:bg-blue-900\/20{background-color:color-mix(in oklab,var(--color-blue-900)20%,transparent)}}.dark\:bg-green-900\/20{background-color:#0d542b33}@supports (color:color-mix(in lab,red,red)){.dark\:bg-green-900\/20{background-color:color-mix(in oklab,var(--color-green-900)20%,transparent)}}.dark\:bg-indigo-900\/20{background-color:#312c8533}@supports (color:color-mix(in lab,red,red)){.dark\:bg-indigo-900\/20{background-color:color-mix(in oklab,var(--color-indigo-900)20%,transparent)}}.dark\:bg-orange-900\/20{background-color:#7e2a0c33}@supports (color:color-mix(in lab,red,red)){.dark\:bg-orange-900\/20{background-color:color-mix(in oklab,var(--color-orange-900)20%,transparent)}}.dark\:bg-pink-900\/20{background-color:#86104333}@supports (color:color-mix(in lab,red,red)){.dark\:bg-pink-900\/20{background-color:color-mix(in oklab,var(--color-pink-900)20%,transparent)}}.dark\:bg-purple-900\/20{background-color:#59168b33}@supports (color:color-mix(in lab,red,red)){.dark\:bg-purple-900\/20{background-color:color-mix(in oklab,var(--color-purple-900)20%,transparent)}}.dark\:bg-red-900\/20{background-color:#82181a33}@supports (color:color-mix(in lab,red,red)){.dark\:bg-red-900\/20{background-color:color-mix(in oklab,var(--color-red-900)20%,transparent)}}.dark\:bg-white\/10{background-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.dark\:bg-white\/10{background-color:color-mix(in oklab,var(--color-white)10%,transparent)}}.dark\:bg-yellow-900\/20{background-color:#733e0a33}@supports (color:color-mix(in lab,red,red)){.dark\:bg-yellow-900\/20{background-color:color-mix(in oklab,var(--color-yellow-900)20%,transparent)}}.dark\:text-blue-400{color:var(--color-blue-400)}.dark\:text-gray-400{color:var(--color-gray-400)}.dark\:text-green-400{color:var(--color-green-400)}.dark\:text-indigo-400{color:var(--color-indigo-400)}.dark\:text-orange-400{color:var(--color-orange-400)}.dark\:text-pink-400{color:var(--color-pink-400)}.dark\:text-purple-400{color:var(--color-purple-400)}.dark\:text-red-400{color:var(--color-red-400)}.dark\:text-white{color:var(--color-white)}.dark\:text-white\/70{color:#ffffffb3}@supports (color:color-mix(in lab,red,red)){.dark\:text-white\/70{color:color-mix(in oklab,var(--color-white)70%,transparent)}}.dark\:text-yellow-400{color:var(--color-yellow-400)}@media (hover:hover){.dark\:hover\:bg-blue-900\/30:hover{background-color:#1c398e4d}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-blue-900\/30:hover{background-color:color-mix(in oklab,var(--color-blue-900)30%,transparent)}}.dark\:hover\:bg-red-900\/30:hover{background-color:#82181a4d}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-red-900\/30:hover{background-color:color-mix(in oklab,var(--color-red-900)30%,transparent)}}.dark\:hover\:bg-white\/10:hover{background-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-white\/10:hover{background-color:color-mix(in oklab,var(--color-white)10%,transparent)}}.dark\:hover\:bg-white\/20:hover{background-color:#fff3}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-white\/20:hover{background-color:color-mix(in oklab,var(--color-white)20%,transparent)}}.dark\:hover\:bg-yellow-900\/30:hover{background-color:#733e0a4d}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-yellow-900\/30:hover{background-color:color-mix(in oklab,var(--color-yellow-900)30%,transparent)}}.dark\:hover\:text-white:hover{color:var(--color-white)}}}.focus\:\[\&_\.react-colorful-pointer\]\:scale-110:focus .react-colorful-pointer{--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x)var(--tw-scale-y)}}@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-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{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-outline-style{syntax:"*";inherits:false;initial-value:solid}@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}:root{--color-primary:#4289fd;--color-primary-rgb:66, 137, 253;--color-primary-dark:#3272e0;--gray-900:#1a2a3a;--gray-700:#4a5660;--gray-500:#6b7280;--gray-400:#9ca3af;--gray-300:#d1d5db;--gray-200:#e5e7eb;--gray-100:#f8f9fa;--color-background:#fff;--color-border:#3c3c3c1f;--color-border-hover:#3c3c3c4a;--color-heading:var(--gray-900);--color-text:var(--gray-900);--color-text-strong:var(--gray-900);--color-text-light:var(--gray-500);--color-text-inverse:#fff;--color-accent:#34a853;--color-accent-dark:#2d8544;--color-warning:#b5a800;--color-error:#ea4335;--color-surface:var(--gray-100);--color-surface-alt:#e8eaed;--color-surface-muted:#f1f3f4;--primary-blue:var(--color-primary);--text-dark:var(--gray-700);--text-light:#b5bec6;--border-light:var(--gray-200);--header-height:48px}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100%;color:var(--color-text-strong);background:var(--color-surface);margin:0;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;font-size:15px;line-height:1.6}html,body,#root{height:100%}.app-shell{flex-direction:column;width:100%;height:100%;display:flex;overflow:hidden;container:app/size}.main-content{flex-direction:column;flex:1;align-items:stretch;width:100%;min-height:0;margin:0;padding:12px;display:flex;position:relative;overflow-y:auto}@container app (width<=640px){.main-content{padding:8px}}@scope(.header){:scope{box-sizing:border-box;background:#fff;width:100%;padding:5px 24px;position:relative;overflow:visible;box-shadow:0 2px 8px #0000001a}.header-content{flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:24px;width:100%;margin:0;display:flex}.header-title{color:var(--color-primary);-webkit-user-select:none;user-select:none;pointer-events:none;flex:1 0 auto;align-items:center;gap:10px;font-size:32px;font-weight:700;display:flex}.version{color:var(--gray-500);-webkit-user-select:none;user-select:none;pointer-events:none;background:0 0;border:none;padding:0;font-size:9px;font-weight:400;line-height:1}.header-title h1,.header-title .version{align-self:baseline}.nav-links,.nav-links.desktop-only{white-space:nowrap;flex-wrap:nowrap;flex-shrink:0;align-items:center;gap:4px}@container app (width>=769px){.nav-links,.nav-links.desktop-only{display:flex}}.nav-link{color:var(--color-text-strong);border-radius:6px;margin-right:16px;padding:8px 16px;font-weight:500;text-decoration:none;transition:all .2s}.nav-link:last-child{margin-right:0}.nav-link-documents-icon{justify-content:center;align-items:center;padding-left:12px;padding-right:12px;display:inline-flex}.documents-nav-icon{opacity:.92;width:21px;height:22px;line-height:0;display:inline-block}.documents-nav-icon svg{width:21px;height:22px;display:block}.nav-link:hover{background:var(--color-surface-alt)}.nav-link.router-link-active{color:var(--color-primary);background:var(--color-surface-alt)}.right-section{align-items:center;display:flex}.header-spacer{flex:1 0 auto}.user-menu{position:relative}.user-button{color:var(--color-text-strong);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:8px;transition:all .2s;display:flex}.user-button:hover{background:var(--color-surface-alt);color:var(--color-primary)}.user-dropdown{z-index:1000;background:#fff;border-radius:8px;min-width:200px;margin-top:8px;position:absolute;top:100%;right:0;overflow:hidden;box-shadow:0 4px 12px #0000001a}.dropdown-item{width:100%;color:var(--color-text-strong);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:8px;padding:12px 16px;font-size:14px;transition:all .2s;display:flex}.dropdown-item:hover{background:var(--color-surface-alt)}.dropdown-item svg{color:var(--color-text-light)}.dropdown-item:last-child{border-top:1px solid var(--color-border);color:var(--color-error)}.dropdown-item:last-child svg{color:var(--color-error)}.mobile-menu-button{color:var(--color-text-strong);cursor:pointer;z-index:1001;background:0 0;border:none;border-radius:6px;padding:8px;transition:all .2s;display:none;position:relative}.mobile-menu-button:hover{background:var(--color-surface-alt);color:var(--color-primary)}.mobile-menu{z-index:1000;opacity:1;visibility:visible;background:#fff;border-top:1px solid #e0e0e0;display:block;position:absolute;top:100%;left:0;right:0;box-shadow:0 4px 12px #0000001a}.mobile-nav-links{flex-direction:column;padding:8px 0;display:flex}.mobile-nav-link{color:var(--color-text-strong);text-align:left;background:0 0;border:none;align-items:center;gap:12px;width:100%;padding:16px 24px;font-weight:500;text-decoration:none;transition:all .2s;display:flex}.mobile-nav-link:hover{background:var(--color-surface-alt);color:var(--color-primary)}.mobile-nav-link.router-link-active{color:var(--color-primary);background:var(--color-surface-alt)}.mobile-nav-link svg{color:var(--color-text-light);flex-shrink:0}.mobile-nav-link.router-link-active svg{color:var(--color-primary)}.desktop-only{display:block}.mobile-only{display:none}@container app (width<=768px){.desktop-only{display:none}.mobile-only{display:block}:scope{padding:12px 16px}.header-content{gap:8px}.header-title{font-size:22px}.header-title h1,.header-title .version{display:none}.header-zoom.desktop-only{display:none!important}.version{font-size:7px}.mobile-menu-button,.mobile-menu{display:block}}}@scope(.login-container){:scope{background:var(--color-surface);justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.login-card{--login-card-padding:40px;box-sizing:border-box;padding:var(--login-card-padding);background:#fff;border-radius:12px;width:min(100%,450px);max-width:450px;min-height:360px;transition:box-shadow .3s,transform .3s;position:relative;overflow:hidden;box-shadow:0 4px 24px #0000001a}.auth-login-card{height:360px}.form-section{opacity:1;width:auto;transition:all .3s;transform:translate(0)}.form-section.hidden{opacity:0;inset:var(--login-card-padding);pointer-events:none;position:absolute;transform:translate(-100%)}.two-fa-section{opacity:0;inset:var(--login-card-padding);pointer-events:none;position:absolute;transform:translate(100%)}.two-fa-section.visible{opacity:1;inset:var(--login-card-padding);pointer-events:all;flex-direction:column;justify-content:center;gap:24px;display:flex;position:absolute;transform:translate(0)}.auth-login-card>.form-section:not(.two-fa-section){height:100%;display:flex}h1{color:var(--color-text-strong);text-align:center;margin:0;font-size:28px;font-weight:600}.subtitle{color:var(--color-text-light);text-align:center;margin:8px 0 24px}.login-form,.two-fa-form{flex-direction:column;gap:20px;display:flex}.auth-login-card.two-fa-mode .two-fa-form{justify-content:center;gap:24px}.auth-login-card.two-fa-mode .two-fa-form>.form-group{margin:0}.login-form--primary{padding-top:20px;padding-bottom:20px}.login-form--primary>.submit-button{margin-top:24px}.auth-login-card .login-form--primary{flex:1;padding-top:0;padding-bottom:0}.form-group{flex-direction:column;gap:8px;display:flex}label{color:var(--color-text-strong);font-weight:500}input{border:2px solid var(--color-surface-alt);text-align:center;border-radius:8px;padding:12px;font-size:16px;transition:border-color .2s}input:focus{border-color:var(--color-primary);outline:none}input:disabled{background:var(--color-surface-alt);cursor:not-allowed}.code-input-container{justify-content:center;align-items:center;display:flex;position:relative}.code-input{text-align:center;letter-spacing:2px;z-index:2;color:#0000;width:100%;height:100%;caret-color:var(--color-primary);background:0 0;border:none;outline:none;font-size:16px;position:absolute;top:0;left:0}.code-placeholder{border:2px solid var(--color-surface-alt);z-index:1;background:#fff;border-radius:8px;justify-content:center;align-items:center;gap:8px;width:100%;height:48px;display:flex}.placeholder-char{color:var(--color-text-light);text-align:center;min-width:20px;font-size:16px;font-weight:500}.code-input:focus+.code-placeholder{border-color:var(--color-primary)}.two-fa-message{text-align:center;border-radius:8px;justify-content:center;align-items:center;gap:12px;margin-bottom:0;padding:16px;display:flex}.two-fa-message.email,.two-fa-message.totp{border:1px solid var(--color-primary);color:var(--color-primary-dark);background:#e3f2fd}.two-fa-message .icon{flex:none;justify-content:center;align-items:center;font-size:24px;line-height:0;display:inline-flex}.two-fa-message .icon svg{display:block}.two-fa-message p{text-align:center;margin:0;font-weight:500}.submit-button{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:14px;font-size:16px;font-weight:600;transition:background .2s}.submit-button:hover:not(:disabled){background:var(--color-primary-dark)}.submit-button:disabled{opacity:.7;cursor:not-allowed}.two-fa-actions{gap:12px;margin-top:0;display:flex}.two-fa-actions--single{margin-top:0;display:block}.resend-button,.back-button{border:1px solid var(--color-surface-alt);color:var(--color-text-strong);cursor:pointer;background:#fff;border-radius:8px;flex:1;padding:10px;font-size:14px;transition:all .2s}.two-fa-actions--single .back-button{border-radius:8px;width:100%;padding:14px;font-size:16px;font-weight:400}.back-button--standalone{width:100%;margin-top:12px}.resend-button:hover:not(:disabled){background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.back-button:hover:not(:disabled){background:var(--color-surface-alt)}.resend-button:disabled,.back-button:disabled{opacity:.5;cursor:not-allowed}.error-message{color:var(--color-error);text-align:center;margin-top:8px;font-size:14px}.success-message{color:#16a34a;text-align:center;margin-top:8px;font-size:14px}.bootstrap-header h2{color:var(--color-text-strong);margin:0 0 6px;font-size:20px;font-weight:700}.bootstrap-header p{color:var(--color-text-light);margin:0 0 16px}.bootstrap-message{color:var(--color-text-light);text-align:center;margin:0;font-size:14px}.bootstrap-intro{text-align:center;flex-direction:column;align-items:center;gap:16px;display:flex}.bootstrap-actions{justify-content:center;margin-top:8px;display:flex}.bootstrap-actions .submit-button:disabled{background:var(--gray-400);opacity:1}.two-fa-section.visible{animation:.3s ease-out slideIn}.form-section.hidden{animation:.3s ease-out slideOut}.success-animation-overlay{z-index:20;background:#fff;justify-content:center;align-items:center;animation:.3s ease-out fadeIn-login;display:flex;position:absolute;inset:0}.success-content{text-align:center;animation:2s ease-in-out successPulse}.success-icon{animation:.6s ease-out successBounce}@media (width<=480px){.login-card{--login-card-padding:24px;padding:var(--login-card-padding);margin:16px}.two-fa-actions{flex-direction:column}.resend-button,.back-button{flex:none}}.auth-login-card{height:auto;min-height:360px}.auth-login-card .login-form--primary>.submit-button{margin-top:24px}}@keyframes slideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes slideOut{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-100%)}}@keyframes fadeIn-login{0%{opacity:0}to{opacity:1}}@keyframes successBounce{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}@keyframes successPulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.password-setup-card{width:min(440px,92vw);height:auto;min-height:0;padding:32px}.password-setup-body{flex-direction:column;display:flex}.password-setup-body .login-form{width:100%}.bootstrap-title{text-align:center;color:var(--gray-900,#111827);margin:8px 0 0;font-size:20px;font-weight:700}.bootstrap-subtitle{text-align:center;color:var(--gray-500,#6b7280);margin:0 0 8px;font-size:14px}.bootstrap-success{text-align:center;color:#10b981;margin:8px 0 0;font-size:14px;font-weight:600}@scope(.dashboard){:scope{box-sizing:border-box;flex-direction:column;flex:1;width:100%;min-height:0;margin:0;padding:0;display:flex;overflow:hidden}.dashboard-content{box-sizing:border-box;flex:1;gap:20px;width:100%;min-height:0;display:flex}.filter-btn{height:32px;color:var(--gray-900);cursor:pointer;text-align:center;white-space:nowrap;background:#fafdff;border:1px solid #e0eaff;border-radius:6px;justify-content:center;align-items:center;min-width:fit-content;padding:0 12px;font-size:.8rem;font-weight:500;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.filter-btn.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.calendar-export-button,.list-export-button{width:32px;height:32px;color:var(--gray-900);cursor:pointer;box-shadow:none;background:0 0;border:none;border-radius:8px;outline:none;justify-content:center;align-items:center;margin:0;padding:0;transition:color .2s cubic-bezier(.4,0,.2,1);display:inline-flex}.calendar-export-button:hover,.list-export-button:hover{box-shadow:none;color:var(--color-primary);background:0 0;border:none}.calendar-export-button:focus-visible,.list-export-button:focus-visible{box-shadow:none;outline:none}.calendar-export-button svg,.list-export-button svg{width:20px;height:20px}.list-export-button{width:36px;height:36px}.list-export-button svg{width:21px;height:21px}.filter-btn:hover{border-color:var(--color-primary);box-shadow:0 2px 8px rgba(var(--color-primary-rgb), .15);background:#e0eaff}.filter-btn.active:hover{background:var(--color-primary-dark);border-color:var(--color-primary-dark)}.bottom-pane-toggle{justify-content:center;margin-bottom:8px;display:none}.bottom-pane-toggle .view-toggle{cursor:pointer;-webkit-user-select:none;user-select:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.bottom-pane-toggle .toggle-track{background:#fff;border-radius:6px;width:220px;height:32px;transition:all .3s;position:relative;overflow:hidden;box-shadow:0 2px 4px #0000001a}.bottom-pane-toggle .toggle-handle{background:var(--color-primary);z-index:1;border-radius:6px;width:50%;height:100%;transition:all .3s;position:absolute;top:0;left:0}.bottom-pane-toggle .is-right .toggle-handle{background:#ff6b35;transform:translate(100%)}.bottom-pane-toggle .toggle-labels{z-index:2;width:100%;height:100%;display:flex;position:absolute;top:0;left:0}.bottom-pane-toggle .label-left,.bottom-pane-toggle .label-right{width:50%;height:100%;color:var(--gray-500);justify-content:center;align-items:center;font-size:13px;font-weight:500;transition:color .3s;display:flex}.bottom-pane-toggle .toggle-track:not(.is-right) .label-left,.bottom-pane-toggle .is-right .label-right{color:#fff}.bottom-pane-toggle .toggle-text,.addresses-pane{display:none}.addresses-content{background:#fff;border-radius:8px;grid-template-columns:1fr 1fr 1fr;gap:40px;height:100%;padding:20px;display:grid;box-shadow:0 2px 10px #00000014}.due-dates-section,.reserved-objects-section,.sampled-locations-section{flex-direction:column;height:100%;display:flex}.address-scroll-container,.location-scroll-container{flex:1;min-height:0;overflow-y:auto}.address-list,.location-list{flex-direction:column;gap:8px;width:100%;display:flex}.section-title{color:var(--gray-700);border-bottom:none;margin:0;padding-bottom:0;font-size:20px;font-weight:700}.section-title-row{border-bottom:3px solid var(--gray-200);justify-content:space-between;align-items:center;gap:8px;margin:0 0 20px;padding-bottom:12px;display:flex}.section-title-row .list-export-button{margin-top:3px;margin-right:8px}.sidebar{box-sizing:border-box;background:#fff;border-radius:20px;flex-direction:column;flex-shrink:0;width:500px;height:100%;padding:20px;display:flex;overflow:hidden;box-shadow:0 2px 10px #00000014}.sidebar-search{margin-top:16px}.sidebar-content{flex-direction:column;flex:1;display:flex;overflow:hidden}.sidebar-list-container{scrollbar-gutter:stable;flex:1;min-height:0;overflow-y:auto}.desktop-sidebar{display:block}.mobile-sidebar,.section-header,.due-dates-view,.reserved-objects-view,.sampled-locations-view{display:none}.due-dates-view.active,.reserved-objects-view.active,.sampled-locations-view.active{flex-direction:column;flex:auto;width:100%;min-width:0;height:100%;min-height:0;display:flex}@container app (width<=1980px){:scope{padding-top:0;overflow-y:auto}.dashboard-content{flex-direction:column;gap:20px;height:auto;min-height:0}.bottom-pane-toggle{display:block!important}.addresses-pane{height:80vh;overflow:hidden;display:block!important}.addresses-pane .addresses-content{height:100%;overflow:hidden}.addresses-pane .due-dates-section,.addresses-pane .reserved-objects-section,.addresses-pane .sampled-locations-section{flex-direction:column;height:100%;display:flex;overflow:hidden}.addresses-pane .section-title{flex-shrink:0}.addresses-pane .address-scroll-container,.addresses-pane .location-scroll-container{flex:1;min-height:0;overflow-y:auto}.sidebar{display:none!important}}@container app (width<=768px){.dashboard-content,.sidebar{display:none}}.sidebar-header{margin-bottom:0;padding-bottom:0}.sidebar-header h3{color:var(--gray-700);margin:0 0 16px;font-size:18px;font-weight:600}.sidebar-switcher{background:var(--gray-100);border-radius:6px;gap:2px;padding:2px;display:flex}.sidebar-header{scrollbar-gutter:stable;overflow-y:auto}.sidebar-switcher button{color:var(--gray-500);cursor:pointer;background:0 0;border:none;border-radius:4px;flex:1;padding:8px 12px;font-size:14px;font-weight:500;transition:all .2s}.sidebar-switcher button.active{color:var(--color-primary);background:#fff;box-shadow:0 1px 3px #0000001a}.sidebar-switcher--slider{position:relative}.sidebar-switcher--slider .sidebar-switcher-handle{pointer-events:none;background:#fff;border-radius:4px;width:calc(33.3333% - 1.33333px);transition:transform .25s cubic-bezier(.4,0,.2,1);position:absolute;top:2px;bottom:2px;left:2px;box-shadow:0 1px 3px #0000001f}.sidebar-switcher--slider[data-active="1"] .sidebar-switcher-handle{transform:translate(100%)}.sidebar-switcher--slider[data-active="2"] .sidebar-switcher-handle{transform:translate(200%)}.sidebar-switcher--slider button{z-index:1;position:relative}.sidebar-switcher--slider button.active{box-shadow:none;background:0 0}.sidebar-content{flex:1;overflow:hidden}.sidebar-views{flex:1;width:100%;min-height:0;display:flex}.sidebar-content h4{color:var(--gray-700);margin:0 0 12px;font-size:16px;font-weight:600}.address-item,.location-item{--card-badge-gap:6px;box-sizing:border-box;border-left:3px solid var(--item-outline-color,var(--gray-200));border-right:1px solid var(--item-outline-color,var(--gray-200));border-top:1px solid var(--item-outline-color,var(--gray-200));border-bottom:1px solid var(--item-outline-color,var(--gray-200));background:0 0;border-radius:6px;width:100%;padding:12px}.address-header{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.address-info{flex-direction:column;flex:1;gap:4px;min-width:calc(60% - 8px);display:flex}.address-info>*{align-items:center;min-height:24px;display:flex}.address-title{color:#1f2937;min-width:0;margin-bottom:0;font-size:.875rem;font-weight:400;line-height:1.2}.address-subtitle{color:var(--gray-500);font-size:.875rem;line-height:1.4}.address-subtitle-strong-line{color:#1f2937;font-size:.875rem;font-weight:400;line-height:1.2}.address-subtitle-id-bwb{margin-top:0;font-weight:400}.sampling-badges-row,.tour-badge,.sampling-badge{flex-shrink:0}.address-name,.location-name{color:var(--gray-900);flex:1;min-width:0;font-weight:500}.due-date,.sampled-date{color:var(--gray-500);font-size:12px}.address-item .due-date,.sampled-date-btn,.reserved-route-btn{align-items:center;min-height:24px;margin-top:4px;display:flex}.location-item .sampled-date,.address-item.overdue .due-date,.address-item.due-today .due-date,.address-item.due-future .due-date{color:var(--gray-700);font-weight:500}.tour-badge{border-radius:4px;flex-shrink:0;padding:2px 8px;font-size:.8em;font-weight:500}.address-badge-stack{flex-direction:column;flex-shrink:1;align-items:flex-end;gap:4px;min-width:0;max-width:40%;display:flex}.address-badge-stack>.tour-badge,.address-badge-stack>.sampling-badge,.address-badge-stack .sampling-badges-row .sampling-badge{box-sizing:border-box;align-items:center;min-height:24px;display:inline-flex}.address-badges{justify-content:flex-start;align-items:flex-end;gap:var(--card-badge-gap);flex-direction:column;margin:0;display:flex}.sampling-badges-row{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.sampling-badge{color:#111827;white-space:nowrap;background:#f1f5f9;border-radius:4px;align-items:center;gap:4px;padding:2px 8px;font-size:.8em;font-weight:500;display:inline-flex}.sampling-badge--non-default{color:#92400e;background:#fde68a}.sampling-badge--duration{color:#111827;background:#f1f5f9;font-weight:500}.sampling-badge-icon{flex:none;width:12px;height:12px;display:block}.tour-badge.rn-tour{color:#4caf50;background:#4caf501a}.tour-badge.tb-tour{background:rgba(var(--color-primary-rgb), .1);color:var(--color-primary)}.tour-badge.project{color:#9c27b0;background:#9c27b01a}.tour-badge.bim-tour{color:#b8860b;background:#f0d72240}.sampled-date-btn{color:var(--gray-700);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:4px;align-items:center;width:auto;min-height:24px;margin-top:4px;margin-left:0;padding:0;font-size:12px;font-weight:500;transition:color .2s;display:flex}.sampled-date-btn:hover,.sampled-date-btn:active{color:var(--color-primary)}.reserved-route-btn{color:var(--gray-700);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:4px;align-items:center;width:auto;min-height:24px;margin-top:4px;margin-left:0;padding:0;font-size:12px;font-weight:500;transition:color .2s;display:flex}.reserved-route-btn:hover,.reserved-route-btn:active{color:var(--color-primary)}.empty-state{text-align:center;color:var(--gray-500);padding:20px;font-style:italic}.search-container{margin-bottom:16px}.search-input-wrapper{width:100%;position:relative}.search-toolbar{scrollbar-gutter:stable;align-items:stretch;gap:4px;display:flex;overflow-y:auto}.search-toolbar .search-input-wrapper{flex:1;align-items:stretch;display:flex}.search-toolbar .list-export-button{align-self:stretch;width:40px;height:auto;min-height:40px}.search-toolbar .list-export-button svg{width:24px;height:24px}.search-input{border:1px solid var(--gray-300);box-sizing:border-box;background:#fff;border-radius:6px;width:100%;padding:8px 36px 8px 12px;font-size:14px}.search-clear-btn{color:var(--gray-400);cursor:pointer;z-index:1;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;padding:2px;font-size:16px;font-weight:700;transition:all .2s;display:flex;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.search-clear-btn:hover{color:#333;background:#f0f0f0}.search-input:focus{border-color:var(--gray-300);box-shadow:none;outline:none}.loading{text-align:center;color:var(--gray-500);padding:20px}.sidebar p{color:var(--gray-500);margin:0;font-size:14px;line-height:1.5}.loading,.error,.empty-state{text-align:center;background:var(--color-surface-alt);color:var(--color-text-light);border-radius:12px;margin:20px 0;padding:40px 20px}.error{color:var(--color-error);background:#e74c3c1a;border:1px solid #e74c3c33}.empty-state{color:var(--color-text-light);padding:60px 20px;font-size:18px}.dashboard-list-loading{justify-content:center;align-items:center;min-height:72px;margin:12px 0;display:flex}.dashboard-loading-spinner{border:3px solid var(--gray-300);border-top-color:var(--color-primary);border-radius:50%;width:26px;height:26px;animation:.8s linear infinite dashboard-spin}.logout-section{justify-content:center;margin-top:48px;display:flex}.logout-btn{background:var(--color-surface-alt);color:var(--color-text-strong);border:1px solid var(--color-border);cursor:pointer;border-radius:8px;padding:10px 24px;font-size:16px;transition:background .2s}.logout-btn:hover{background:var(--color-surface-muted)}.mobile-only{display:none}.mobile-routes-btn{background:var(--color-surface);border:2px solid var(--color-border);cursor:pointer;border-radius:12px;justify-content:center;align-items:center;gap:16px;width:100%;min-height:80px;padding:32px 24px;transition:all .3s;display:flex;box-shadow:0 4px 12px #0000001a}.mobile-routes-btn span{align-items:center;height:100%;display:flex}.mobile-routes-btn:hover{border-color:var(--color-primary);transform:translateY(-2px);box-shadow:0 8px 24px #00000026}.btn-icon{width:40px;height:40px;color:var(--color-primary);flex-shrink:0;margin:0;padding:0;display:block;overflow:visible}.mobile-routes-btn span{color:var(--color-text-strong);align-items:center;height:100%;font-size:18px;font-weight:600;display:flex}@container app (width<=600px){.dashboard-container{max-width:none;padding:24px 8px}.desktop-only{display:none}.mobile-only{width:100%;display:block}.mobile-routes-btn{width:100%;max-width:none;min-height:100px;padding:40px 32px}.btn-icon{width:48px;height:48px;margin:0;padding:0;display:block;overflow:visible}.mobile-routes-btn span{font-size:20px}}.type-counters{flex-wrap:wrap;gap:6px;margin-bottom:12px;padding:0 2px;display:flex}.type-counter{cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:4px;align-items:center;gap:4px;padding:4px 8px;font-size:12px;font-weight:500;transition:opacity .2s,box-shadow .2s,filter .2s;display:flex}.type-counter:hover{box-shadow:0 2px 4px #0000001a}.type-counter-active{opacity:1;box-shadow:0 2px 6px #00000026}.type-counter-active .counter-value{background:#ffffff80;font-weight:800}.type-counter-inactive{opacity:.4;filter:grayscale(.6)}.counter-label{font-weight:500}.counter-value{text-align:center;background:#ffffff4d;border-radius:3px;min-width:20px;padding:1px 4px;font-size:12px;font-weight:700}@container app (width<=1980px){:scope{padding-top:0;overflow:hidden}:scope .dashboard-content{flex-direction:row;height:auto;min-height:0}:scope .sidebar{display:flex!important}:scope .route-calendar{flex:auto;width:auto;min-width:0;max-width:none;height:100%}:scope .sidebar{width:420px}}:scope.dashboard--sidebar-collapsed .sidebar,:scope:not(.dashboard--sidebar-collapsed) .sidebar-rail,:scope:not(.dashboard--sidebar-collapsed) .sidebar-drawer{display:none!important}.modal-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:flex-end;padding:16px;display:flex;position:fixed;inset:64px 0 0}.modal-overlay .modal-content{background:#fff;border-radius:8px;flex-direction:column;width:calc(100vw - 32px);max-width:calc(100vw - 32px);height:calc(100vh - 96px);max-height:calc(100vh - 96px);display:flex;overflow:hidden}.card-select-checkbox{width:16px;height:16px;accent-color:var(--color-primary);cursor:pointer;flex-shrink:0;margin-right:4px}.list-select-all-row{align-items:center;gap:8px;padding:6px 2px;display:flex}.list-select-all{color:var(--gray-700);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;font-size:.85rem;display:flex}.list-select-all input{accent-color:var(--color-primary);cursor:pointer}.list-select-all-count{background:var(--color-primary);color:#fff;border-radius:11px;justify-content:center;align-items:center;min-width:22px;height:22px;padding:0 6px;font-size:.74rem;font-weight:700;display:inline-flex}.reactivate-bar{border:1px solid var(--gray-200);background:#fff;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;margin-top:10px;padding:10px 14px;display:flex;box-shadow:0 4px 14px #11182714}.reactivate-bar-count{color:var(--gray-900);font-size:.85rem;font-weight:600}.reactivate-bar-btn{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:6px;height:32px;padding:0 14px;font-size:13px;font-weight:600}.reactivate-bar-btn:hover{background:var(--color-primary-dark)}.card-footer-row{flex-wrap:wrap;align-items:center;gap:2px 8px;display:flex}.card-action-row{justify-content:flex-end;gap:6px;margin-top:4px;margin-left:auto;display:flex}.card-action-btn{color:#111827;cursor:pointer;background:#fff;border:1px solid #111827;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;padding:0;transition:background .15s,color .15s;display:inline-flex}.card-action-btn svg{width:60%;height:60%}.card-action-btn:hover{color:#fff;background:#111827}.tour-suggestions{background:#fff;border:1px solid #e0e0e0;border-radius:20px;flex-direction:column;flex:1;min-width:0;min-height:0;display:flex;overflow:hidden;box-shadow:0 2px 10px #00000014}.tour-suggestions-header{border-bottom:1px solid #eef2f7;flex-shrink:0;align-items:center;gap:10px;padding:12px 16px;display:flex}.tour-suggestions-label{color:var(--gray-500);margin-right:6px;font-size:.82rem;font-weight:500}.tour-suggestions-object{color:var(--gray-900);font-size:.95rem;font-weight:700}.tour-suggestions-close{color:var(--gray-500);cursor:pointer;background:0 0;border:none;border-radius:6px;margin-left:auto;padding:2px 8px;font-size:1.4rem;line-height:1}.tour-suggestions-close:hover{color:var(--gray-900);background:#eef4ff}.tour-suggestions-body{flex:1;min-height:0;display:flex}.tour-suggestions-map{flex:1;min-width:0}.tour-suggestions-list{border-left:1px solid #eef2f7;flex-direction:column;flex-shrink:0;gap:8px;width:340px;padding:10px;display:flex;overflow-y:auto}.tour-suggestions-empty{text-align:center;color:var(--gray-500);padding:24px 8px;font-size:.85rem}.tour-suggestion-card{border:2px solid var(--gray-200);cursor:pointer;background:#fff;border-radius:10px;padding:10px 12px;transition:border-color .15s,background .15s}.tour-suggestion-card:hover{border-color:var(--color-primary)}.tour-suggestion-card.selected{border-color:var(--color-primary);background:#fafdff}.tour-suggestion-head{align-items:center;gap:8px;display:flex}.tour-suggestion-name{color:var(--gray-900);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.85rem;font-weight:600;overflow:hidden}.tour-suggestion-edit{color:#f59e0b;cursor:pointer;background:#fff;border:1.5px solid #f59e0b;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;margin-left:auto;transition:background .15s,color .15s;display:inline-flex}.tour-suggestion-edit svg{width:62%;height:62%}.tour-suggestion-edit:hover{color:#fff;background:#f59e0b}.tour-suggestion-edit--hidden{visibility:hidden;pointer-events:none}.tour-suggestion-sub{color:var(--gray-500);align-items:center;gap:8px;margin-top:3px;font-size:.74rem;display:flex}.tour-suggestion-state{color:#3160b3;background:#eef4ff;border-radius:999px;padding:1px 7px;font-size:.68rem;font-weight:600}.tour-suggestion-state.completed{color:#15803d;background:#e8f6ee}.tour-suggestion-state.started{color:#b45309;background:#fef3e2}.tour-suggestion-distance{color:var(--gray-700);margin-left:auto;font-weight:600}.tour-suggestion-metrics{grid-template-columns:1fr 1fr;gap:3px 12px;margin-top:8px;display:grid}.tour-suggestion-metrics>div{color:var(--gray-500);justify-content:space-between;font-size:.74rem;display:flex}.tour-suggestion-metrics strong{color:var(--gray-900);font-variant-numeric:tabular-nums;font-weight:600}}@keyframes dashboard-spin{to{transform:rotate(360deg)}}@scope(.route-calendar){:scope{background-color:#fff;border-radius:20px;flex-direction:column;flex:1;gap:16px;min-width:0;height:100%;max-height:100%;padding:20px;display:flex;overflow:hidden;box-shadow:0 2px 10px #00000014}:scope:not(.route-calendar--fullwidth){overflow:visible}.route-calendar--fullwidth{width:100%;min-width:100%;max-width:100%;height:100%;max-height:100%;box-shadow:none;border-radius:0;padding:0;overflow:hidden}.calendar-header-with-filters{flex-shrink:0;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px 16px;margin-bottom:0;padding:6px 16px;display:grid;position:relative}.calendar-filters{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;height:100%;display:flex}.navigation-section{grid-area:1/2;justify-content:center;align-items:center;gap:2px;width:fit-content;display:flex}.calendar-filters{grid-area:1/1;justify-self:start}.calendar-right-controls{grid-area:1/3;justify-self:end}.current-period{color:var(--gray-700);text-align:center;white-space:nowrap;flex:none;width:320px;font-family:Avenir Next LT Pro,sans-serif;font-size:24px;font-weight:600}.view-toggle{cursor:pointer;-webkit-user-select:none;user-select:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.calendar-right-controls{flex-shrink:0;align-items:center;gap:8px;margin-left:auto;display:flex}.calendar-actions{align-items:center;gap:6px;min-height:32px;display:flex}.toggle-track{background:#fff;border-radius:6px;width:180px;height:32px;transition:all .3s;position:relative;overflow:hidden;box-shadow:0 2px 4px #0000001a}.toggle-handle{background:var(--color-primary);z-index:1;border-radius:6px;width:50%;height:100%;transition:all .3s;position:absolute;top:0;left:0}.is-right .toggle-handle{background:var(--color-primary);transform:translate(100%)}.toggle-labels{z-index:2;width:100%;height:100%;display:flex;position:absolute;top:0;left:0}.label-left,.label-right{width:50%;height:100%;color:var(--gray-500);justify-content:center;align-items:center;font-size:13px;font-weight:500;transition:color .3s;display:flex}.toggle-track:not(.is-right) .label-left,.is-right .label-right{color:#fff}.toggle-text{display:none}.nav-button{cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:28px;height:28px;padding:0;transition:background-color .2s;display:flex}.nav-button:hover{background-color:#b5bec61a}.nav-button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.weekdays{border-bottom:1px solid var(--gray-200);flex-shrink:0;justify-content:space-between;padding:4px 16px;display:flex}.weekday{text-align:center;color:#b5bec6;letter-spacing:1px;text-transform:uppercase;flex:1;min-width:0;font-family:Avenir Next LT Pro,sans-serif;font-size:14px;font-weight:600}.days{box-sizing:border-box;flex:1;grid-template-columns:repeat(7,1fr);gap:8px;width:100%;min-width:0;height:100%;min-height:0;padding:0 16px 16px;display:grid;overflow:visible}.month-view{grid-template-rows:repeat(var(--weeks-count), 1fr)}.week-view{grid-template-rows:1fr}.week-day-container{border:1px solid var(--gray-200);background:#fafafa;border-radius:8px;flex-direction:column;flex-shrink:0;width:100%;min-width:0;height:100%;min-height:0;display:flex;overflow:hidden}.day-container{z-index:1;background:#fafafa;border:1px solid #f3f4f6;border-radius:4px;flex-direction:column;min-width:0;height:100%;min-height:0;display:flex;position:relative;overflow:hidden}.day-container--expanded{z-index:120;overflow:visible}.day-container--empty{background:0 0;border:none}.day-cell{box-sizing:border-box;flex-direction:column;flex:1;gap:4px;min-width:0;min-height:0;padding:8px;display:flex;position:relative;overflow:hidden}.day-cell--expanded{overflow:visible}.day-cell--today{background:rgba(var(--color-primary-rgb), .05);box-shadow:inset 0 0 0 1px rgba(var(--color-primary-rgb), .2)}.day-header-line{align-items:center;gap:6px;min-width:0;min-height:22px;margin-bottom:2px;display:flex}.day-number{color:var(--gray-700);flex-shrink:0;font-size:18px;font-weight:600}.day-cell--today .day-number{color:var(--color-primary);font-weight:700}.day-number--holiday,.day-cell--today .day-number.day-number--holiday{color:#b91c1c}.day-holiday-label{color:#b91c1c;white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:11px;font-weight:600;overflow:hidden}.routes-area{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.routes-list{box-sizing:border-box;flex-direction:column;flex:1;gap:4px;width:100%;height:100%;min-height:0;display:flex;overflow:hidden}.week-view .day-cell{height:100%;min-height:0;max-height:100%}.week-view .day-number{flex-shrink:0;margin-bottom:2px}.week-view .routes-list{flex:1;height:100%;max-height:none;padding-bottom:8px;overflow:hidden}.routes-list,.week-view .routes-list{transition:overflow 0s .25s allow-discrete}.routes-list:has(.route-mini-card:hover){transition-delay:0s;overflow:visible}.week-view .routes-list:has(.route-mini-card:hover){transition-delay:0s;overflow:visible}.routes-overlay{z-index:240;isolation:isolate;flex-direction:column;gap:4px;padding:0;display:flex;position:absolute;top:0;left:0;right:0;overflow:visible}.routes-overlay:before{content:"";border:1px solid var(--gray-200);z-index:-1;pointer-events:none;background:#fffffff5;border-radius:8px;position:absolute;inset:-6px;box-shadow:0 8px 20px #0f172a2e}.route-mini-card{background:var(--color-primary);color:var(--color-text-inverse);cursor:pointer;transform-origin:50%;box-sizing:border-box;border-radius:4px;align-items:center;width:100%;min-height:26px;padding:4px 6px;font-size:13px;font-weight:500;line-height:1.3;text-decoration:none;transition:transform .18s cubic-bezier(.34,1.3,.64,1),box-shadow .18s,background-color .2s;display:flex;position:relative;overflow:hidden}.route-mini-card:hover{background:var(--color-primary-dark);z-index:6;transform:scale(1.03);box-shadow:0 6px 16px #0f172a38}.day-container{transition:z-index 0s .25s}.day-container:has(.route-mini-card:hover){z-index:200;transition-delay:0s}.route-mini-card.route-started{color:#fff;background:#16a34a}.route-mini-card.route-started:hover{background:#15803d}.route-mini-card.route-generated{color:#fff;background:#f6a31a}.route-mini-card.route-generated:hover{background:#de8d08}.route-mini-card.route-completed{background:var(--gray-400);color:#f9fafb;opacity:.7}.route-mini-card.route-completed:hover{background:var(--gray-500)}.route-mini-card.route-planned{color:#111827;background:#fff;border:1px solid #111827}.route-mini-card.route-planned:hover{background:#f3f4f6}.route-mini-card.route-planned .sampler-badge{border-color:#111827}.route-mini-card.route-incomplete{color:#fff;opacity:.9;background:#dc2626}.route-mini-card.route-incomplete:hover{background:#b91c1c}.route-overflow-indicator{color:#fff;white-space:nowrap;box-sizing:border-box;background:var(--color-primary);min-width:30px;height:22px;box-shadow:none;cursor:pointer;appearance:none;border:none;border-radius:999px;flex-shrink:0;justify-content:center;align-self:center;align-items:center;margin-left:auto;padding:0 8px;font-size:12px;font-weight:700;line-height:1;transition:transform .15s,box-shadow .15s,background-color .15s,border-color .15s;display:inline-flex}.route-overflow-indicator:hover{background:var(--color-primary-dark);box-shadow:none}.route-overflow-indicator:active{transform:translateY(.5px)}.route-overflow-indicator:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.route-content{justify-content:space-between;align-items:center;gap:6px;width:100%;min-width:0;display:flex}.route-mini-card{container-type:inline-size}@container (width<=96px){.route-content .generate-report-btn,.route-mini-card:hover .route-content .generate-report-btn{display:none}.route-content{justify-content:flex-start}}@container (width<=58px){.route-content .route-name{display:none}}.route-mini-card--day-highlight{box-shadow:0 0 0 2px #ffffffe6}.sampler-badge{color:#000;white-space:nowrap;background:#fff;border:1px solid #ffffff4d;border-radius:10px;flex-shrink:0;padding:2px 6px;font-size:10px;font-weight:700}.route-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;margin-bottom:1px;margin-right:6px;font-weight:600;line-height:1.3;overflow:hidden}.route-mini-card,.route-mini-card *{white-space:nowrap;word-break:normal;overflow-wrap:normal;-webkit-hyphens:none;hyphens:none}.route-content .generate-report-btn{display:none}.route-mini-card:hover .route-content .generate-report-btn{display:flex}.generate-report-btn{color:var(--color-text-inverse);cursor:pointer;background:#fff3;border:1px solid #ffffff4d;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;padding:4px;transition:all .2s;display:flex}.print-icon{color:currentColor;width:14px;height:14px}.generate-report-btn:hover{background:#ffffff4d;border-color:#ffffff80;transform:translateY(-1px)}.generate-report-btn:active{background:#fff6;transform:translateY(0)}.route-sampler{opacity:.8;font-size:9px}@container app (height<=900px){.route-calendar--fullwidth .days{max-height:400px}}@container app (height<=700px){.route-calendar--fullwidth .days{max-height:300px}}@container app (height<=600px){.route-calendar--fullwidth .days{max-height:250px}}@container app (width<=1980px){:scope{flex:none;width:100%;min-width:100%;max-width:100%;height:80vh}:scope .days{flex:1;height:100%;max-height:none}.month-view{grid-template-rows:repeat(var(--weeks-count), 1fr)}.week-view{grid-template-rows:1fr}}@container app (width<=768px){.navigation-section{justify-content:space-between;width:100%;max-width:500px}:scope{max-width:100%;padding:16px}.day-container{height:50px}.day-cell{padding:4px}.day-number{font-size:12px}.route-mini-card{padding:3px 4px;font-size:9px}.route-sampler{font-size:8px}.weekday{width:auto;font-size:10px}.generate-report-btn{width:20px;height:20px;padding:2px}.print-icon{width:12px;height:12px}.route-name{margin-right:4px}}:scope{container-type:inline-size}@container (width<=1320px){:scope .calendar-header-with-filters{grid-template-columns:1fr auto}:scope .calendar-filters{grid-column:1;height:auto}:scope .calendar-right-controls{grid-column:2}:scope .navigation-section{grid-area:2/1/auto/-1;justify-self:center}}:scope .routes-overlay{left:-6px;right:-6px}}@scope(.routes-container:not(.route-details-page)){:scope{box-sizing:border-box;flex-direction:column;flex:auto;width:100%;height:auto;min-height:0;max-height:none;margin:0;padding:0;display:flex;overflow:hidden}.routes-header{flex-shrink:0;justify-content:center;align-items:center;margin-bottom:0;padding:8px 0 4px;display:flex}.view-toggle{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;display:inline-flex}.toggle-track{background:#fff;border-radius:6px;width:180px;height:32px;transition:all .3s;position:relative;overflow:hidden;box-shadow:0 2px 4px #0000001a}.toggle-handle{background:var(--color-primary);z-index:1;border-radius:6px;width:50%;height:100%;transition:all .3s;position:absolute;top:0;left:0}.is-right .toggle-handle{background:var(--color-primary);transform:translate(100%)}.toggle-labels{z-index:2;width:100%;height:100%;display:flex;position:absolute;top:0;left:0}.label-left,.label-right{width:50%;height:100%;color:var(--gray-500);justify-content:center;align-items:center;font-size:13px;font-weight:500;transition:color .3s;display:flex}.toggle-track:not(.is-right) .label-left,.is-right .label-right{color:#fff}.toggle-text{display:none}.calendar-view{flex:1;justify-content:center;gap:20px;height:100%;min-height:0;padding:0 20px;display:flex;overflow:hidden}.calendar-container{flex:1;justify-content:center;min-width:0;max-width:calc(83.33% - 20px);display:flex}.compact-list-container{flex-shrink:0;width:16.67%;min-width:200px;height:100%;min-height:0;max-height:100%;padding:0 12px;overflow:hidden auto}.compact-list-content{width:100%;padding:0}.compact-date-group{margin-bottom:32px}.compact-archive-header{text-align:center;margin:40px 0 24px}.compact-archive-title{color:var(--gray-500);border-bottom:3px solid var(--gray-300);text-transform:uppercase;letter-spacing:1px;margin:0;padding:16px 0;font-size:24px;font-weight:700;display:inline-block}.compact-date-header{color:var(--color-text-strong);border-bottom:2px solid var(--color-primary);text-align:center;width:100%;margin-bottom:16px;padding-bottom:8px;font-size:18px;font-weight:600;display:block}.compact-routes-list{flex-direction:column;justify-content:center;gap:20px;display:flex}.compact-route-card{background:var(--color-surface);color:inherit;cursor:pointer;box-sizing:border-box;border:2px solid #0000;border-radius:12px;width:100%;min-width:0;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);display:block;position:relative;overflow:hidden;box-shadow:0 2px 8px #00000014}.compact-route-card:hover{border-color:var(--color-primary);transform:translateY(-6px)scale(1.02);box-shadow:0 8px 25px #00000026}.compact-route-card:active{transition:all .1s;transform:translateY(-2px)scale(.98)}.compact-route-header{background:var(--color-primary);color:var(--color-text-inverse);justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.compact-route-header-actions{align-items:center;gap:8px;display:flex}.compact-generate-report-btn{color:var(--color-text-inverse);cursor:pointer;background:#fff3;border:1px solid #ffffff4d;border-radius:8px;justify-content:center;align-items:center;width:40px;height:40px;padding:8px;transition:all .2s;display:flex}.compact-print-icon{color:currentColor;width:20px;height:20px}.compact-generate-report-btn:hover{background:#ffffff4d;border-color:#ffffff80;transform:translateY(-1px)}.compact-generate-report-btn:active{background:#fff6;transform:translateY(0)}.compact-route-header--completed{background:var(--gray-400);color:#374151}.compact-route-header--started{color:#fff;background:#16a34a}.compact-route-header--generated{color:#fff;background:#f59e0b}.compact-route-status-badge{text-transform:uppercase;letter-spacing:.5px;border-radius:12px;padding:4px 8px;font-size:11px;font-weight:600}.compact-route-status-badge--new{color:#ffffffe6;background:#fff3}.compact-route-status-badge--started{color:#fff;background:#ffffff4d;animation:2s infinite pulse}.compact-route-status-badge--completed{color:#374151;background:#37415133}.compact-route-details{flex-direction:column;gap:8px;min-height:60px;padding:16px;display:flex}.list-view{justify-content:center;width:100%;height:100%;min-height:0;max-height:100%;padding:24px 0 0;display:flex;overflow:hidden auto}.list-content{flex:1;width:100%;max-width:1200px;min-height:0;padding:0 20px 40px}.date-group{margin-bottom:32px}.archive-header{text-align:center;margin:40px 0 24px}.archive-title{color:var(--gray-500);border-bottom:3px solid var(--gray-300);text-transform:uppercase;letter-spacing:1px;margin:0;padding:16px 0;font-size:24px;font-weight:700;display:inline-block}.date-header{color:var(--color-text-strong);border-bottom:2px solid var(--color-primary);text-align:center;width:100%;margin-bottom:16px;padding-bottom:8px;font-size:18px;font-weight:600;display:block}@container app (width<=768px){.date-header{margin-bottom:12px;font-size:16px}.date-group{margin-bottom:24px}}.loading,.error,.empty-state{text-align:center;background:var(--color-surface-alt);border-radius:8px;margin:20px 0;padding:20px}.error{color:var(--color-error)}.empty-state{color:var(--color-text-light);padding:40px 20px}.routes-list{grid-template-columns:repeat(auto-fill,320px);justify-content:center;justify-items:stretch;gap:20px;display:grid}@container app (width<=768px){.routes-list{grid-template-columns:1fr;gap:16px}}.route-card{background:var(--color-surface);color:inherit;cursor:pointer;box-sizing:border-box;border:2px solid #0000;border-radius:12px;width:320px;max-width:100%;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);display:block;position:relative;overflow:hidden;box-shadow:0 2px 8px #00000014}.route-card:hover{border-color:var(--color-primary);transform:translateY(-6px)scale(1.02);box-shadow:0 8px 25px #00000026}.route-card:active{transition:all .1s;transform:translateY(-2px)scale(.98)}.route-header{background:var(--color-primary);color:var(--color-text-inverse);justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.route-header-actions{align-items:center;gap:8px;display:flex}.generate-report-btn{color:var(--color-text-inverse);cursor:pointer;background:#fff3;border:1px solid #ffffff4d;border-radius:8px;justify-content:center;align-items:center;width:40px;height:40px;padding:8px;transition:all .2s;display:flex}.print-icon{color:currentColor;width:20px;height:20px}.generate-report-btn:hover{background:#ffffff4d;border-color:#ffffff80;transform:translateY(-1px)}.generate-report-btn:active{background:#fff6;transform:translateY(0)}.route-header--completed{background:var(--gray-400);color:#374151}.route-header--started{color:#fff;background:#16a34a}.route-header--generated{color:#fff;background:#f59e0b}.route-status-badge{text-transform:uppercase;letter-spacing:.5px;border-radius:12px;padding:4px 8px;font-size:11px;font-weight:600}.route-status-badge--new{color:#ffffffe6;background:#fff3}.route-status-badge--started{color:#fff;background:#ffffff4d;animation:2s infinite pulse}.route-status-badge--completed{color:#374151;background:#37415133}.route-details{flex-direction:column;gap:8px;min-height:60px;padding:16px;display:flex}.route-details .route-detail{justify-content:space-between;align-items:baseline;gap:12px;width:100%;display:flex}.route-details .route-detail-value{text-align:right;font-weight:700}@container app (height<=900px){:scope,.list-view,.compact-list-container{height:100%;max-height:100%}}@container app (height<=700px){:scope,.list-view,.compact-list-container{height:100%;max-height:100%}}@container app (height<=600px){:scope,.list-view,.compact-list-container{height:100%;max-height:100%}}@container app (width<=1200px){.calendar-view{gap:0;padding:0}.calendar-container{flex:1;max-width:100%}.compact-list-container{display:none}}@container app (width<=768px){:scope{padding:12px}.view-toggle,.routes-header{display:none}.list-view{height:100%;padding:0 0 20px;overflow:hidden}.list-content{flex:1;min-height:0;padding:0 12px 40px;overflow:hidden auto}.toggle-track{width:160px;height:28px}.label-left,.label-right{font-size:12px}.route-card{width:100%;margin-bottom:0}.route-header{padding:10px 12px}.route-header h3{font-size:16px}.generate-report-btn{padding:3px 6px;font-size:10px}.route-details{min-height:50px;padding:12px}.route-card:hover{transform:translateY(-4px)scale(1.01)}}.routes-calendar-view{flex:1;justify-content:center;gap:20px;height:100%;min-height:0;padding:0 20px;display:flex;overflow:hidden}@container app (width<=1200px){.routes-calendar-view{gap:0;padding:0}}}@keyframes pulse{50%{opacity:.5}}@scope(.calendar-view){:scope{box-sizing:border-box;flex-direction:column;flex:1;width:100%;min-height:0;margin:0;padding:0;display:flex;overflow:hidden}.calendar-container{background-color:#fff;border-radius:20px;flex-direction:column;flex:1;gap:16px;min-width:0;height:100%;max-height:100%;padding:12px;display:flex;overflow:hidden;box-shadow:0 2px 10px #00000014}.calendar-header-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;margin-left:auto;display:flex}.calendar-header-with-filters{justify-content:space-between;align-items:center;gap:16px;padding-left:0;padding-right:0;display:flex;position:relative}.calendar-header-with-filters .navigation-section{width:auto;max-width:100%;margin:0;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.calendar-header-with-filters .current-period{flex:none;max-width:none;overflow:visible}.calendar-header-with-filters .calendar-filters{margin-left:auto}.calendar-filter-dropdowns{align-items:center;gap:10px;display:flex}.time-mask-input{text-align:center;font-variant-numeric:tabular-nums;letter-spacing:1px}.all-day-toggle{color:var(--gray-700);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;margin:6px 0 8px;font-size:.85rem;display:flex}.all-day-toggle input{accent-color:var(--color-primary);cursor:pointer}.calendar-filter-icon{color:var(--gray-500);align-items:center;display:inline-flex}.calendar-filter-icon svg{width:21px;height:21px}.calendar-filter-dropdown{position:relative}.calendar-filter-dropdown>.filter-btn{min-width:88px}.calendar-filter-dropdown-panel{z-index:40;border:1px solid var(--gray-200);opacity:0;pointer-events:none;background:#fff;border-radius:10px;flex-direction:column;align-items:stretch;gap:6px;min-width:150px;padding:8px;transition:opacity .18s,transform .18s;display:flex;position:absolute;top:100%;left:0;transform:translateY(-6px);box-shadow:0 10px 28px #0f172a24}.calendar-filter-dropdown:hover .calendar-filter-dropdown-panel,.calendar-filter-dropdown:focus-within .calendar-filter-dropdown-panel{opacity:1;pointer-events:auto;transform:translateY(0)}.calendar-filter-dropdown-panel .filter-btn{text-align:left;justify-content:flex-start;width:100%}.calendar-filter-toolbar{flex-wrap:wrap;align-items:center;gap:10px;width:100%;min-width:0;display:flex}.calendar-sampler-filters{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.filter-btn{height:32px;color:var(--gray-900);cursor:pointer;text-align:center;white-space:nowrap;background:#fafdff;border:1px solid #e0eaff;border-radius:6px;justify-content:center;align-items:center;min-width:fit-content;padding:0 12px;font-size:.8rem;font-weight:500;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.filter-btn.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.filter-btn:hover{border-color:var(--color-primary);box-shadow:0 2px 8px rgba(var(--color-primary-rgb), .15);background:#e0eaff}.filter-btn.active:hover{background:var(--color-primary-dark);border-color:var(--color-primary-dark)}.calendar-generate-route{border:1px solid var(--gray-300);color:var(--gray-400);cursor:not-allowed;background:#f3f4f6;border-radius:6px;align-items:center;height:32px;padding:0 12px;font-size:13px;font-weight:600;transition:all .2s;display:inline-flex}.calendar-header-with-filters .nav-button{width:32px;height:32px}.calendar-header-with-filters .current-period,.calendar-header-with-filters .calendar-missing-routes{align-items:center;height:32px;display:inline-flex}.calendar-generate-route--active{color:#fff;cursor:pointer;background:#2563eb;border-color:#2563eb}.calendar-generate-route--active:hover{background:#1d4ed8;border-color:#1d4ed8}.calendar-missing-routes{color:#b45309;cursor:pointer;white-space:nowrap;background:#fef3c7;border:1px solid #fde68a;border-radius:6px;padding:8px 12px;font-size:13px;font-weight:600;transition:all .2s}.calendar-missing-routes:hover{color:#92400e;background:#fde68a;border-color:#f59e0b}}@scope(.calendar-view){.weekdays{border-bottom:1px solid var(--gray-200);width:100%;padding-right:var(--week-grid-scrollbar-width,0px);box-sizing:border-box;background:#fff;flex-shrink:0;display:flex}.weekdays-with-hours{padding-left:0}.weekdays-grid{box-sizing:border-box;flex:1;grid-template-columns:repeat(7,minmax(0,1fr));gap:0;padding:0;display:grid}.all-day-row{border-bottom:1px solid var(--gray-200);padding-right:var(--week-grid-scrollbar-width,0px);box-sizing:border-box;background:#fff;flex-shrink:0;display:flex}.all-day-label{color:var(--gray-400);text-transform:uppercase;letter-spacing:.8px;justify-content:center;align-items:center;font-size:12px;font-weight:600;display:flex}.all-day-cell{border-right:1px solid var(--gray-200);box-sizing:border-box;flex-direction:column;gap:2px;min-height:48px;padding:6px;display:flex}.all-day-entry{color:#111827;box-sizing:border-box;background:#94a3b829;border:none;border-radius:4px;align-items:center;gap:6px;min-height:22px;padding:4px 6px;font-size:11px;display:flex;overflow:hidden}.all-day-entry--clickable{cursor:pointer;transition:background-color .2s,box-shadow .2s}.all-day-entry--clickable:hover{background:#94a3b838}.all-day-entry--completed{color:var(--gray-500);opacity:.85;background:#9ca3af4d}.all-day-entry--completed.all-day-entry--clickable:hover{background:#9ca3af5c}.all-day-entry--dimmed{opacity:.35}.all-day-entry--highlighted{background:#3b82f633;box-shadow:0 0 0 2px #3b82f6b3,0 6px 16px #2563eb3d}.all-day-entry--status-draft{background:#f59e0b2e}.all-day-entry--status-started{background:#16a34a2e}.all-day-entry--status-published{background:#3b82f629}.all-day-entry--status-none{color:#111827;background:#fff;border:1px solid #111827}.all-day-entry--status-none.all-day-entry--clickable:hover{background:#fff;border-color:#111827}.all-day-entry--restricted{-webkit-user-select:none;user-select:none}.all-day-badge{color:#111827;border:1px solid var(--gray-300);background:#f3f4f6;border-radius:999px;flex-shrink:0;padding:2px 6px;font-size:10px;font-weight:700}.all-day-text{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;max-width:100%;overflow:hidden}.all-day-text--restricted{filter:blur(4px)}.weekday{text-align:center;color:#b5bec6;letter-spacing:1px;text-transform:uppercase;border-right:1px solid var(--gray-200);box-sizing:border-box;min-width:0;padding:8px 4px;font-family:Avenir Next LT Pro,sans-serif;font-size:14px;font-weight:600}.weekday-date{line-height:1.4}.weekday-number{color:var(--gray-700);font-size:18px;font-weight:700}.weekday-today{color:var(--color-primary)}.week-view-container{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.week-view-grid{flex:1;min-height:0;display:flex;position:relative;overflow:hidden auto}.week-view-container{-webkit-user-select:none;user-select:none}.week-view-container input,.week-view-container textarea{-webkit-user-select:text;user-select:text}.hour-column{width:var(--calendar-hour-column-width,80px);min-width:var(--calendar-hour-column-width,80px);max-width:var(--calendar-hour-column-width,80px);border-right:1px solid var(--gray-200);z-index:5;height:calc(var(--calendar-hour-row-height,72px) * var(--calendar-grid-hours,17));box-sizing:border-box;background:#fafafa;flex-direction:column;flex-shrink:0;display:flex;position:sticky;left:0}.hour-column-spacer{display:none}.hour-column-header{width:var(--calendar-hour-column-width,80px);min-width:var(--calendar-hour-column-width,80px);max-width:var(--calendar-hour-column-width,80px);border-right:1px solid var(--gray-200);box-sizing:border-box;background:#fafafa;flex-shrink:0}.hour-cell{height:var(--calendar-hour-row-height,72px);min-height:var(--calendar-hour-row-height,72px);max-height:var(--calendar-hour-row-height,72px);border-bottom:1px solid var(--gray-200);color:var(--gray-500);box-sizing:border-box;flex-shrink:0;align-items:flex-start;padding:4px 8px;font-size:12px;font-weight:500;display:flex}.week-view{box-sizing:border-box;flex:1;grid-template-columns:repeat(7,minmax(0,1fr));align-self:flex-start;gap:0;width:100%;padding:0;display:grid}.week-day-container{border-right:1px solid var(--gray-200);box-sizing:border-box;background:#fff;flex-direction:column;flex-shrink:0;min-width:0;display:flex}.day-cell{min-height:calc(var(--calendar-hour-row-height,72px) * var(--calendar-grid-hours,17));flex-direction:column;padding:0;display:flex}.day-cell--today{background:0 0;border:none}.hour-grid{min-height:calc(var(--calendar-hour-row-height,72px) * var(--calendar-grid-hours,17));flex-direction:column;display:flex;position:relative;overflow:visible}.hour-slot{height:var(--calendar-hour-row-height,72px);min-height:var(--calendar-hour-row-height,72px);max-height:var(--calendar-hour-row-height,72px);border-bottom:1px solid var(--gray-200);box-sizing:border-box;cursor:pointer;flex-shrink:0;padding:2px;transition:background-color .2s;position:relative}.hour-slot:hover{background-color:#0000}.calendar-panel-overlay{z-index:1000;box-sizing:border-box;background:#00000080;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.calendar-panel{background:#fff;border-radius:12px;flex-direction:column;width:500px;max-width:calc(100vw - 40px);max-height:calc(100vh - 40px);display:flex;position:relative;overflow:hidden;box-shadow:0 20px 60px #0000004d}.panel-header{border-bottom:1px solid var(--gray-200);flex-shrink:0;justify-content:space-between;align-items:center;padding:20px;display:flex}.panel-title{color:#1f2937;margin:0;font-size:18px;font-weight:600}.panel-close-btn{color:var(--gray-500);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-size:28px;transition:all .2s;display:flex}.panel-close-btn:hover{color:#1f2937;background:#f3f4f6}.panel-content{flex-direction:column;flex:1;gap:20px;padding:20px;display:flex;overflow-y:auto}.panel-section{flex-shrink:0}.panel-results{flex:1;min-height:0;overflow-y:auto}.search-container{margin-bottom:0}.search-input-wrapper{width:100%;position:relative}.search-input{border:1px solid var(--gray-300);box-sizing:border-box;background:#fff;border-radius:6px;width:100%;padding:8px 36px 8px 12px;font-size:14px}.search-clear-btn{color:var(--gray-400);cursor:pointer;z-index:1;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;padding:2px;font-size:16px;font-weight:700;transition:all .2s;display:flex;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.search-clear-btn:hover{color:#333;background:#f0f0f0}.search-input:focus{border-color:#0d6efd;outline:none;box-shadow:0 0 0 2px #0d6efd1a}.address-list{flex-direction:column;gap:8px;display:flex}.address-item{background:var(--gray-100);border-left:3px solid var(--gray-200);border-radius:6px;padding:12px}.address-header{justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:4px;display:flex}.address-info{flex:1}.address-title{color:#1f2937;margin-bottom:4px;font-weight:600}.address-subtitle{color:var(--gray-500);font-size:.875rem;line-height:1.4}.tour-badge{white-space:nowrap;border-radius:4px;flex-shrink:0;padding:2px 8px;font-size:.8em;font-weight:500}.tour-badge.rn-tour{color:#4caf50;background:#4caf501a}.tour-badge.tb-tour{background:rgba(var(--color-primary-rgb), .1);color:var(--color-primary)}.tour-badge.project{color:#9c27b0;background:#9c27b01a}.tour-badge.bim-tour{color:#b8860b;background:#f0d72240}.loading{text-align:center;color:var(--gray-500);padding:20px}.empty-state{text-align:center;color:var(--gray-500);padding:20px;font-style:italic}.entry-badge-inline{vertical-align:1px;border-radius:4px;align-items:center;margin-right:4px;padding:0 4px;font-size:.62rem;line-height:1.5;display:inline-flex}}@scope(.calendar-view){.calendar-entry-card{color:#111827;cursor:pointer;z-index:20;box-sizing:border-box;pointer-events:auto;clip-path:none;cursor:grab;background:#94a3b829;border:none;border-radius:4px;padding:1px 4px;font-size:11px;font-weight:500;line-height:1.2;transition:background-color .2s,box-shadow .2s;position:absolute;overflow:visible}.calendar-entry-card.entry-continues-below{border-bottom-right-radius:0;border-bottom-left-radius:0;margin-bottom:-1px}.calendar-entry-card.entry-continues-above{border-top-left-radius:0;border-top-right-radius:0;margin-top:-1px}.calendar-entry-card:hover{background:#94a3b838}.calendar-entry-card.entry-status-draft{background:#f59e0b2e}.calendar-entry-card.entry-status-started{background:#16a34a2e}.calendar-entry-card.entry-status-published{background:#3b82f629}.calendar-entry-card.entry-status-none{color:#111827;background:#fff;border:1px solid #111827}.calendar-entry-card.entry-status-none:hover{background:#fff;border-color:#111827}.calendar-entry-card.entry-completed{color:var(--gray-500);opacity:.85;background:#9ca3af4d}.calendar-entry-card.entry-completed:hover{background:#9ca3af5c}.calendar-entry-card.entry-dimmed{opacity:.35}.calendar-entry-card.entry-highlighted{background:#3b82f638;box-shadow:0 0 0 2px #3b82f6b3,0 10px 22px #2563eb3d}.calendar-entry-card.entry-dragging{cursor:grabbing;z-index:60;background:#eff6ff;border-style:dashed;border-color:#2563eb;box-shadow:0 0 0 2px #2563eb40,0 8px 16px #2563eb40}.calendar-entry-card.entry-readonly-clickable{cursor:pointer}.calendar-entry-card.entry-readonly-disabled{cursor:default}.calendar-entry-card.entry-compact{padding:1px 3px}.calendar-entry-card.entry-compact .sampler-badge{display:none}.calendar-entry-card.entry-compact .entry-address{font-size:10px;line-height:1.2}.calendar-entry-card.entry-tiny .sampler-badge,.calendar-entry-card.entry-tiny .entry-info{display:none}.calendar-entry-card.entry-tiny .entry-address{font-size:10px;line-height:1.1}.calendar-entry-card.entry-tiny .entry-time{color:var(--gray-500);font-size:9px}.entry-content{pointer-events:none;flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:2px;width:100%;min-width:0;max-width:100%;height:100%;padding:0;display:flex;overflow:hidden}.entry-content--single{justify-content:center}.entry-single-line{white-space:nowrap;align-items:center;gap:4px;width:100%;min-width:0;display:flex;overflow:hidden}.entry-address-inline{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;font-size:10px;font-weight:600;line-height:1.2;overflow:hidden}.entry-address-inline--restricted{filter:blur(4px);-webkit-user-select:none;user-select:none}.calendar-entry-card.entry-compact .entry-content{justify-content:center}.entry-main{flex-direction:column;flex-shrink:0;gap:1px;width:100%;min-width:0;max-width:100%;display:flex;overflow:hidden}.entry-info{flex-shrink:0;align-items:center;gap:4px;min-width:0;max-width:100%;display:flex;overflow:hidden}.sampler-badge{color:#111827;border:1px solid var(--gray-300);white-space:nowrap;background:#f3f4f6;border-radius:10px;flex-shrink:0;padding:1px 4px;font-size:8px;font-weight:700}.tour-badge.terminart-badge,.terminart-badge{color:#111827;border:1px solid var(--gray-300);white-space:nowrap;background:#f3f4f6;border-radius:4px;flex-shrink:0;padding:1px 4px;font-size:8px;font-weight:700}.entry-time{color:#4b5563;white-space:nowrap;text-overflow:ellipsis;flex-shrink:0;min-width:0;max-width:100%;font-size:10px;font-weight:500;display:block;overflow:hidden}.entry-address{word-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;font-size:11px;font-weight:600;line-height:1.3;overflow:hidden}.entry-address--restricted{filter:blur(4px);-webkit-user-select:none;user-select:none}.entry-description{color:#4b5563;white-space:nowrap;text-overflow:ellipsis;font-size:10px;overflow:hidden}.entry-resize-handle{cursor:ns-resize;z-index:1000;background:0 0;height:12px;min-height:12px;position:absolute;left:0;right:0;transform:translateZ(0);pointer-events:auto!important}.entry-resize-handle-bottom{bottom:-6px}.entry-resize-handle:hover{background:#1118271f;border-top:2px solid #11182759;border-bottom:2px solid #11182759}.calendar-entry-card .sampler-badge{padding:1px 4px;font-size:8px}.calendar-entry-card .entry-time{font-size:10px}.calendar-entry-card .entry-address{font-size:11px;line-height:1.3}}@scope(.planner-view,.cell-menu){:scope.planner-view{flex-direction:column;gap:16px;height:100%;min-height:0;display:flex;overflow:hidden}.planner-header{background:#fff;border-radius:12px;flex-shrink:0;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;padding:12px 16px;display:grid;box-shadow:0 8px 24px #0000000f}.planner-header-left{grid-column:1;justify-self:start;align-items:center;gap:12px;display:flex}.availability-sampler-filters{scrollbar-width:none;flex-wrap:nowrap;flex:auto;align-items:center;gap:6px;min-width:0;height:32px;display:flex;overflow-x:auto}.availability-sampler-filters::-webkit-scrollbar{display:none}.availability-sampler-filters .filter-btn{flex:none}.filter-btn{height:32px;color:var(--gray-900);cursor:pointer;text-align:center;white-space:nowrap;background:#fafdff;border:1px solid #e0eaff;border-radius:6px;justify-content:center;align-items:center;min-width:fit-content;padding:0 12px;font-size:.8rem;font-weight:500;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.filter-btn.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.filter-btn:hover{border-color:var(--color-primary);box-shadow:0 2px 8px rgba(var(--color-primary-rgb), .15);background:#e0eaff}.filter-btn.active:hover{background:var(--color-primary-dark);border-color:var(--color-primary-dark)}.filter-btn:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}.view-toggle{cursor:pointer;-webkit-user-select:none;user-select:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.planner-toggle{margin-left:0}.toggle-track{--toggle-half-width:90px;width:calc(var(--toggle-half-width) * 2);background:#fff;border-radius:6px;height:32px;transition:all .3s;position:relative;overflow:hidden;box-shadow:0 2px 4px #0000001a}.toggle-handle{width:var(--toggle-half-width);background:var(--color-primary);z-index:1;border-radius:6px;height:100%;transition:all .3s;position:absolute;top:0;left:0}.is-right .toggle-handle{background:var(--color-primary);transform:translate(100%)}.toggle-labels{z-index:2;width:100%;height:100%;display:flex;position:absolute;top:0;left:0}.label-left,.label-right{box-sizing:border-box;white-space:nowrap;width:50%;height:100%;color:var(--gray-500);justify-content:center;align-items:center;padding:0 14px;font-size:13px;font-weight:500;transition:color .3s;display:flex}.toggle-track:not(.is-right) .label-left,.is-right .label-right{color:#fff}.toggle-text{display:none}.month-nav{grid-column:2;justify-content:space-between;justify-self:center;align-items:center;gap:12px;width:320px;display:flex}.month-label{color:var(--gray-700);text-align:center;white-space:nowrap;flex:1;min-width:0;font-family:Avenir Next LT Pro,sans-serif;font-size:24px;font-weight:600}.month-nav-button{cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:40px;height:40px;padding:0;transition:background-color .2s;display:flex}.month-nav-button:hover:not(:disabled){background-color:#b5bec61a}.month-nav-button:disabled{opacity:.6;cursor:not-allowed}.ghost-button{color:var(--color-text-strong);cursor:pointer;background:#f8fafc;border:1px solid #d9e1ec;border-radius:8px;width:36px;height:36px;transition:all .2s}.ghost-button:hover:not(:disabled){background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.ghost-button:disabled{opacity:.6;cursor:not-allowed}.status{color:var(--gray-500);grid-column:1;justify-self:start;align-items:center;gap:8px;font-size:14px;display:flex}.status.saving{color:var(--color-primary)}.status.error{color:var(--color-error)}.generate-button{color:#fff;cursor:pointer;background:#2563eb;border:1px solid #2563eb;border-radius:6px;grid-column:3;justify-self:end;align-items:center;height:32px;padding:0 12px;font-size:13px;font-weight:600;transition:all .2s;display:inline-flex}.generate-button:disabled{border-color:var(--gray-300);color:var(--gray-400);cursor:not-allowed;box-shadow:none;background:#f3f4f6}.planner-table-card{background:#fff;border-radius:16px;flex-direction:column;flex:1;width:100%;min-height:0;padding:12px;display:flex;overflow:visible;box-shadow:0 10px 30px #00000014}.planner-availability-card{background:#fff;border-radius:16px;flex-direction:column;flex:1;width:100%;min-height:0;padding:16px;display:flex;overflow:hidden;box-shadow:0 10px 30px #00000014}.table-scroll{border:1px solid var(--gray-200);--planner-header-height:44px;--planner-cell-width:360px;--planner-day-column-width:120px;--planner-row-height:76px;--planner-cell-padding-y:8px;--planner-cell-gap:6px;--planner-day-gap:4px;background:linear-gradient(#f8fafc 0, #f8fafc var(--planner-header-height), #fff var(--planner-header-height));border-radius:12px;flex:1;width:100%;max-width:100%;min-height:0;position:relative;overflow:auto}.table-scroll--compact{overflow-x:hidden}.planner-table{table-layout:fixed;border-collapse:collapse;width:max-content;min-width:0}.planner-table thead th,.planner-table thead{overflow:visible}.planner-table th,.planner-table td{padding:var(--planner-cell-padding-y) 12px;vertical-align:top;border-bottom:1px solid #eef2f7;border-right:1px solid #eef2f7}.planner-table tbody tr{height:auto}.planner-table tbody td{height:auto;min-height:var(--planner-row-height)}.planner-table th:last-child,.planner-table td:last-child{border-right:none}.planner-table thead th{z-index:2;height:var(--planner-header-height);vertical-align:middle;padding:var(--planner-cell-padding-y) 12px;background:#fff;position:sticky;top:0}.day-header,.day-cell{z-index:3;width:var(--planner-day-column-width);min-width:var(--planner-day-column-width);max-width:var(--planner-day-column-width);background:#fff;position:sticky;left:0;overflow:hidden;box-shadow:4px 0 10px -6px #00000014}.add-menu-shell{align-items:center;gap:8px;display:inline-flex}.add-menu-inline{color:#111827;background:0 0;border:none;border-radius:0;flex-wrap:wrap;align-items:center;gap:8px;padding:0;font-size:14px;display:flex}.add-menu-empty{color:var(--gray-500);padding:4px 8px;font-weight:600}.add-menu-item{height:32px;color:var(--gray-900);text-align:center;cursor:pointer;white-space:nowrap;background:#fafdff;border:1px solid #e0eaff;border-radius:6px;justify-content:center;align-items:center;min-width:fit-content;padding:0 12px;font-size:.8rem;font-weight:500;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.add-menu-item:hover:not(:disabled),.add-menu-item:focus-visible:not(:disabled){border-color:var(--color-primary);box-shadow:0 2px 8px rgba(var(--color-primary-rgb), .15);background:#e0eaff}.add-menu-item:disabled{opacity:.6;cursor:not-allowed}.add-menu-plus-indicator{background:var(--color-primary);color:#fff;opacity:0;pointer-events:none;border-radius:999px;justify-content:center;align-items:center;width:20px;height:20px;font-size:14px;font-weight:800;transition:opacity .15s,transform .15s;display:inline-flex;transform:scale(.9)}.add-menu-plus-icon{line-height:1;display:block;transform:translateY(-1px)}.add-menu-shell:hover .add-menu-plus-indicator,.add-menu-shell:focus-within .add-menu-plus-indicator{opacity:1;transform:scale(1)}.modal-backdrop{z-index:999;background:#00000059;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:#fff;border-radius:12px;flex-direction:column;width:90%;max-width:980px;max-height:90%;display:flex;box-shadow:0 20px 60px #0003}.modal-header,.modal-footer{border-bottom:1px solid var(--gray-200);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.modal-footer{border-top:1px solid var(--gray-200);border-bottom:none}.publish-toggle{color:#111827;align-items:center;gap:8px;font-size:13px;font-weight:600;display:inline-flex}.publish-toggle input{width:16px;height:16px}.modal-body{gap:16px;padding:16px;display:grid;overflow:auto}.planner-delete-modal-overlay{z-index:1100;background:#00000080;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.planner-delete-modal{background:#fff;border-radius:12px;width:100%;max-width:500px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.planner-delete-modal-body{padding:32px 24px 20px}.planner-delete-title{color:#1f2937;text-align:center;margin:0;padding:20px 0;font-size:24px;font-weight:700}.planner-delete-message{color:var(--gray-500);margin:0 0 20px;line-height:1.5}.planner-delete-route-name{text-align:center;color:#374151;word-break:break-word;margin:0;font-size:16px;font-weight:600}.planner-delete-details{background:#f9fafb;border-radius:8px;margin-top:16px;padding:16px}.planner-delete-detail-item{justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;font-size:.9rem;display:flex}.planner-delete-detail-item:last-child{margin-bottom:0}.planner-delete-detail-item strong{color:#374151;font-weight:500}.planner-delete-detail-item span{color:var(--gray-500);text-align:right}.planner-delete-modal-footer{border-top:1px solid var(--gray-200);justify-content:center;gap:12px;padding:20px 24px 24px;display:flex}.planner-delete-btn{cursor:pointer;border:none;border-radius:8px;min-width:80px;padding:10px 20px;font-size:14px;font-weight:500;transition:all .2s}.planner-delete-btn--cancel{color:#374151;border:1px solid var(--gray-300);background:#f3f4f6}.planner-delete-btn--cancel:hover:not(:disabled){background:var(--gray-200);border-color:var(--gray-400)}.planner-delete-btn--danger{color:#fff;background:#dc2626;border:1px solid #dc2626}.planner-delete-btn--danger:hover:not(:disabled){background:#b91c1c;border-color:#b91c1c}.planner-delete-btn--danger:disabled{cursor:not-allowed;background:#fca5a5;border-color:#fca5a5}.close{cursor:pointer;background:0 0;border:none;font-size:20px}.modal-body--generation-simple{gap:12px;display:grid}.draft-list{gap:8px;display:grid}.draft-list--simple{gap:12px;max-height:340px;padding-right:2px;overflow-y:auto}.draft-card{border:1px solid var(--gray-200);background:#fff;border-radius:8px;padding:10px 12px}.draft-title{font-weight:700}.draft-meta{color:var(--gray-500);gap:8px;font-size:12px;display:flex}.draft-progress-row{gap:6px;min-height:44px;margin-top:10px;display:grid}.draft-progress-track{background:var(--gray-200);border-radius:999px;height:6px;overflow:hidden}.draft-progress-fill{background:var(--gray-300);height:100%;transition:width .25s}.draft-progress-fill.status-queued{background:#93c5fd}.draft-progress-fill.status-running{background:#60a5fa}.draft-progress-fill.status-completed{background:#34d399}.draft-progress-fill.status-failed{background:#f87171}.draft-progress-fill.status-skipped{background:var(--gray-400)}.draft-progress-meta{color:var(--gray-500);font-size:11px;line-height:1.2}.draft-progress-error{color:var(--color-error);word-break:break-word;font-size:11px;line-height:1.25}.error-text{color:var(--color-error)}.planner-header-cell{width:var(--planner-cell-width);min-width:var(--planner-cell-width);max-width:var(--planner-cell-width);cursor:grab;overflow-wrap:anywhere;word-break:break-word;background:#f8fafc;position:relative}.planner-header-cell.is-dragging{cursor:grabbing;opacity:.6}.planner-header-cell.is-drag-over{background:#eef6ff;box-shadow:inset 0 0 0 2px #93c5fd}.planner-header-cell.is-drag-over-before:before,.planner-header-cell.is-drag-over-after:after{content:"";opacity:1;pointer-events:none;background:#3b82f6;border-radius:999px;width:3px;transition:opacity .15s,transform .15s;position:absolute;top:8px;bottom:8px;box-shadow:0 0 0 2px #3b82f626}.planner-header-cell.is-drag-over-before:before{left:-1px}.planner-header-cell.is-drag-over-after:after{right:-1px}.column-header{justify-content:space-between;align-items:center;gap:10px;min-width:0;display:flex}.column-title{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;font-weight:700;display:flex}.column-label{overflow-wrap:anywhere;word-break:break-word;font-weight:700}.edit-pen{cursor:pointer;color:var(--gray-400);background:0 0;border:none;justify-content:center;align-items:center;width:18px;height:18px;padding:0;display:inline-flex}.edit-pen svg{width:16px;height:16px}.edit-pen:hover{color:var(--color-primary)}.type-badge{border-radius:8px;align-items:center;gap:6px;padding:6px 10px;font-size:.9rem;font-weight:700;line-height:1;display:inline-flex}.column-input{border:1px solid #d5dbe5;border-radius:8px;width:100%;padding:6px 8px;font-weight:700}.remove-button{color:var(--gray-400);cursor:pointer;background:0 0;border:none;border-radius:999px;justify-content:center;align-items:center;padding:4px;font-size:18px;line-height:1;transition:color .2s,background-color .2s,transform .2s;display:inline-flex}.remove-button:hover{color:#fff;background:var(--color-error);transform:scale(1.08)}.day-cell-content{justify-content:center;align-items:flex-start;gap:var(--planner-day-gap);flex-direction:column;height:100%;min-height:0;display:flex}.day-number{color:#111827;font-size:16px;font-weight:800}.day-week{color:var(--gray-500);font-size:12px;line-height:1.2}.day-holiday{color:#b91c1c;overflow-wrap:anywhere;word-break:break-word;white-space:nowrap;text-overflow:ellipsis;font-size:11px;font-weight:600;line-height:1.2;overflow:hidden}.day-cell--holiday{background:#fee2e2}.day-cell--holiday .day-number,.day-cell--holiday .day-week{color:#b91c1c}.day-cell--holiday .day-number{font-size:15px;line-height:1.2}.day-cell--holiday .day-week{line-height:1.2}.day-cell--holiday .day-holiday{font-size:10px;line-height:1.2}.planner-cell{width:var(--planner-cell-width);min-width:var(--planner-cell-width);max-width:var(--planner-cell-width);overflow-wrap:anywhere;word-break:break-word;background:#fff;position:relative;overflow:hidden}.planner-cell--menu-open{z-index:6;overflow:visible}.planner-cell--menu-open .planner-cell-content{overflow:visible}.planner-cell-content{justify-content:center;align-items:stretch;gap:var(--planner-cell-gap);flex-direction:column;height:100%;min-height:0;display:flex;overflow:hidden}.planner-cell-content--stacked{height:100%}.planner-cell-content--empty{min-height:var(--planner-row-height);justify-content:center}.planner-cell--alt{background:#fcfdff}.planner-cell.is-clickable{cursor:pointer}.planner-cell select,.planner-cell textarea{width:100%}.cell-select{min-width:0;position:relative}.cell-select--sampler{align-items:center;gap:6px;display:flex}.cell-value{color:#111827;cursor:pointer;align-items:center;gap:6px;width:100%;min-width:0;padding:0 2px;font-size:14px;display:inline-flex;overflow:hidden}.cell-value-text{white-space:nowrap;text-overflow:ellipsis;overflow-wrap:anywhere;word-break:break-word;flex:auto;min-width:0;overflow:hidden}.cell-value:hover{color:#0f172a}.pn-lab-value{align-items:center}.pn-lab-icon{color:#94a3b8;flex-shrink:0;align-items:center;display:inline-flex}.pn-lab-icon .sampler-icon{width:16px;height:16px}.cell-clear{color:var(--gray-400);cursor:pointer;background:0 0;border:none;border-radius:999px;justify-content:center;align-items:center;width:18px;height:18px;padding:0;font-size:16px;line-height:1;display:inline-flex}.cell-clear:hover{color:#fff;background:var(--color-error)}.planner-route-card--focus{outline-offset:2px;outline:3px solid #ff6b35;animation:.9s ease-in-out 2 planner-focus-pulse}@keyframes planner-focus-pulse{50%{outline-color:#ff6b3540}}.planner-action-slot{flex-shrink:0;width:20px;height:20px}.planner-trash-delete-button{color:#fff;cursor:pointer;background:0 0;border:none;border-radius:10px;justify-content:center;align-items:center;width:20px;height:20px;padding:0;display:inline-flex}.planner-trash-delete-button:hover{color:#b91c1c;background:0 0}.planner-trash-delete-button:disabled{color:#fca5a5;cursor:not-allowed;background:0 0}.planner-trash-icon{width:14px;height:14px}:scope.cell-menu{z-index:1000;overscroll-behavior:contain;background:#fff;border:1px solid #d5dbe5;border-radius:10px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:6px;width:max-content;min-width:260px;max-width:min(520px,100vw - 40px);max-height:calc(100% - 16px);padding:0;display:grid;position:fixed;overflow-y:auto;box-shadow:0 12px 24px #0000001f}.cell-menu-item{text-align:left;cursor:pointer;color:#111827;white-space:normal;overflow-wrap:anywhere;word-break:break-word;background:#fff;border:1px solid #e2e8f0;border-radius:8px;width:100%;padding:6px 10px;font-size:13px;line-height:1.25}.cell-menu-item:hover{background:#f3f4f6}.cell-menu-item:disabled{border-color:var(--gray-200);color:var(--gray-400);cursor:not-allowed;background:#f3f4f6}.note-input{resize:none;box-sizing:border-box;background:0 0;border:none;width:auto;min-width:80px;max-width:100%;min-height:38px;padding:0;font-size:14px;display:inline-block;overflow:hidden}.note-input:focus{outline:none}:scope.cell-menu--align-right{transform-origin:100% 0}:scope.cell-menu--up{transform-origin:0 100%}.sampler-row{align-items:center;gap:6px;min-width:0;display:flex}.sampler-trigger{cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.sampler-trigger:disabled{cursor:not-allowed;opacity:.5}.sampler-control{flex:none;width:0;min-width:0;position:relative}:scope.cell-menu--sampler{grid-template-columns:1fr;width:min(140px,100vw - 40px);min-width:110px;max-width:min(160px,100vw - 40px)}:scope.cell-menu--repeat{min-width:340px;display:block}:scope.cell-menu--delete-series{min-width:220px}:scope.cell-menu--add-tour{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));width:min(640px,100vw - 40px);min-width:min(520px,100vw - 40px);max-width:min(640px,100vw - 40px)}.planner-recurrence-menu{gap:12px;min-width:320px;display:grid}.planner-recurrence-title{color:#111827;font-size:12px;font-weight:700}.planner-recurrence-row{color:#4b5563;grid-template-columns:auto 1fr 1fr;align-items:center;gap:8px;font-size:12px;display:grid}.planner-recurrence-row select{border:1px solid var(--gray-300);color:#111827;background:#fff;border-radius:8px;width:100%;padding:6px 8px;font-size:12px}.planner-recurrence-end-label{color:#374151;font-size:12px;font-weight:600}.planner-recurrence-calendar-wrap{background:0 0;border:none;border-radius:0;padding:0}.planner-recurrence-calendar-wrap .calendar{max-width:100%;min-height:0;box-shadow:none;border-radius:0;gap:8px;padding:6px}.planner-recurrence-calendar-wrap .day{width:24px;height:24px;font-size:11px}.planner-recurrence-calendar-wrap .current-month{min-width:100px;font-size:12px}.planner-recurrence-actions{gap:8px;display:flex}.planner-recurrence-actions .cell-menu-item{flex:auto}.sampler-row--hidden{visibility:hidden;pointer-events:none}.sampler-icon{width:18px;height:18px;color:var(--gray-400);flex-shrink:0}.sampler-value{color:#111827;cursor:pointer;text-align:left;white-space:nowrap;text-overflow:ellipsis;background:0 0;border:none;width:100%;min-width:0;padding:0;font-size:12px;font-weight:700;overflow:hidden}.cell-select--sampler .sampler-value{flex:auto;width:auto}.sampler-value:hover{color:#0f172a}.planner-cell select.cell-input{border-radius:8px;min-height:32px;padding:4px 6px;font-size:13px}.cell-input{box-sizing:border-box;background:#fbfdff;border:1px solid #d5dbe5;border-radius:10px;width:100%;padding:8px 10px;font-size:14px;transition:border-color .2s,box-shadow .2s}.cell-input.select-input{height:30px;padding:4px 8px;font-size:12px}.cell-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb), .15);outline:none}.cell-input.text{resize:vertical;min-height:38px}.weekend .day-cell{background:#f3f4f6}.weekend .day-cell.day-cell--holiday{background:#fee2e2}.empty-state{text-align:center;color:var(--gray-500);padding:32px}.empty-state.loading{color:var(--color-primary)}@container app (width<=960px){.planner-header{grid-template-columns:1fr;justify-items:center}.status,.planner-header-left,.month-nav,.generate-button{grid-column:auto}.month-nav{width:100%;max-width:320px}.status,.generate-button{justify-self:center}}.planner-table--single{width:max-content}.planner-header-cell--full,.planner-cell--full{width:var(--planner-cell-width);min-width:var(--planner-cell-width);max-width:var(--planner-cell-width);border-right:1px solid #e2e8f0;overflow:hidden}.planner-header-cell--pnlab,.planner-cell--pnlab{width:160px;min-width:160px;max-width:160px}.planner-header-cell--custom,.planner-cell--custom{width:180px;min-width:180px;max-width:180px}.planner-column-resizer{cursor:col-resize;background:0 0;border-radius:6px;flex:none;width:6px;height:24px;margin-left:6px}.planner-column-resizer:hover{background:#94a3b880}.planner-cell--custom .planner-cell-content{height:100%}.planner-header-cell--custom .column-header,.planner-header-cell--pnlab .column-header{flex-wrap:nowrap}.planner-header-cell--custom .planner-remove-column-button,.planner-header-cell--pnlab .planner-remove-column-button{margin-left:auto}.table-scroll--single{--planner-cell-width:50vw}.planner-cell-content--stacked{justify-content:flex-start;gap:10px}.planner-route-list{gap:8px;min-width:0;max-width:100%;display:grid}.planner-route-card{background:var(--color-primary);color:var(--color-text-inverse);box-shadow:none;box-sizing:border-box;border:none;border-radius:4px;flex-direction:column;gap:6px;width:100%;max-width:100%;padding:6px 8px;display:flex;overflow:hidden}.planner-route-card--menu-open{z-index:7;position:relative;overflow:visible}.planner-route-card--menu-open .planner-route-title-wrap,.planner-route-card--menu-open .planner-route-title-row,.planner-route-card--menu-open .planner-route-line{overflow:visible}.planner-route-title-wrap{flex-direction:column;flex:1 1 0;justify-content:center;min-width:0;max-width:100%;display:flex;overflow:hidden}.planner-route-title-row{align-items:center;gap:6px;width:100%;min-width:0;min-height:24px;display:flex;overflow:hidden}.planner-series-indicator{color:#fff;letter-spacing:.01em;background:#ffffff2e;border-radius:999px;flex-shrink:0;align-items:center;gap:4px;height:18px;padding:0 6px;font-size:10px;font-weight:700;display:inline-flex}.planner-series-indicator svg{opacity:.95;width:10px;height:10px}.planner-add-column-header{text-align:center;width:44px;min-width:44px;max-width:44px;padding:var(--planner-cell-padding-y) 8px!important;border-bottom:none!important;border-right:none!important}.planner-add-column-button{background:var(--color-primary);color:#fff;width:calc(var(--planner-header-height) - 2 * var(--planner-cell-padding-y));height:calc(var(--planner-header-height) - 2 * var(--planner-cell-padding-y));cursor:pointer;white-space:nowrap;border:none;border-radius:7px;justify-content:center;align-items:center;padding:0;line-height:1;transition:background .15s,box-shadow .15s;display:inline-flex}.planner-add-column-wrap{justify-content:center;display:inline-flex;position:relative}:scope.cell-menu--add-column{border:1px solid #e2e8f0;border-radius:10px;flex-direction:column;gap:10px;width:250px;min-width:0;padding:12px;display:flex;box-shadow:0 8px 24px #0000001f}.planner-add-column-name{box-sizing:border-box;color:#111827;border:1px solid #e2e8f0;border-radius:8px;width:100%;height:32px;padding:0 10px;font-size:13px}.planner-add-column-name:focus{border-color:var(--color-primary);outline:none}.planner-add-column-sampler{color:#334155;cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;font-size:13px;display:flex}.planner-add-column-sampler input{margin:0}.planner-add-column-confirm{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:8px;height:32px;font-size:13px;font-weight:600}.planner-add-column-confirm:hover{background:var(--color-primary-dark)}.planner-add-column-button:hover{background:var(--color-primary-dark);box-shadow:0 2px 8px rgba(var(--color-primary-rgb), .25)}.planner-custom-header-input{color:#0f172a;background:0 0;border:none;flex:auto;width:100%;min-width:0;padding:2px 4px;font-size:.95rem;font-weight:700}.planner-custom-header-input:focus{outline:none}.planner-custom-cell-input{color:#0f172a;resize:none;background:0 0;border:none;border-radius:0;width:100%;height:100%;min-height:100%;padding:0;font-size:.85rem;line-height:1.4;overflow:auto}.planner-custom-cell-input:focus{outline:none}.planner-remove-column-button{color:var(--gray-400);cursor:pointer;background:0 0;border:none;padding:2px 4px;font-size:1rem;font-weight:700;line-height:1}.planner-remove-column-button:hover{color:var(--gray-500)}.planner-note-add-inline{color:#fff;cursor:pointer;white-space:nowrap;opacity:0;pointer-events:none;text-overflow:ellipsis;background:#fff3;border:1px solid #ffffff59;border-radius:10px;flex:0 120px;justify-content:center;align-items:center;min-width:0;max-width:120px;min-height:20px;padding:2px 6px;font-size:11px;font-weight:600;line-height:1;display:inline-flex;overflow:hidden}.planner-note-add-inline--locked{visibility:hidden;opacity:0!important;pointer-events:none!important}.planner-start-time{box-sizing:border-box;border-bottom:1px solid #94a3b833;flex-direction:column;justify-content:center;align-items:center;gap:6px;width:100%;margin-bottom:6px;padding:8px 10px;display:flex}.planner-start-time-label{letter-spacing:.08em;text-transform:uppercase;color:#64748b;text-align:center;width:100%;font-size:.7em;font-weight:700}.planner-start-time-input{width:fit-content;min-width:82px;color:var(--gray-900);text-align:center;background:#fff;border:1px solid #cbd5e1;border-radius:8px;margin:0 auto;padding:6px 8px;font-size:.85em;font-weight:600}.planner-start-time-input:focus{box-shadow:none;border-color:#94a3b8;outline:none}.planner-route-actions .planner-start-time-input{color:#fff;width:fit-content;min-width:82px;height:20px;box-shadow:none;background:0 0;border:none;border-radius:0;align-items:center;padding:0;font-size:13px;font-weight:600;line-height:20px;display:inline-flex}.planner-route-actions .planner-start-time-input::placeholder{color:#ffffffeb}.planner-route-actions .planner-start-time-input:focus{box-shadow:none;border:none;outline:none}.planner-route-actions .planner-start-time-input::-webkit-datetime-edit{color:#fff;padding:0}.planner-route-actions .planner-start-time-input::-webkit-datetime-edit-fields-wrapper{color:#fff;padding:0}.planner-route-actions .planner-start-time-input::-webkit-datetime-edit-hour-field{color:#fff;padding:0}.planner-route-actions .planner-start-time-input::-webkit-datetime-edit-minute-field{color:#fff;padding:0}.planner-route-actions .planner-start-time-input::-webkit-datetime-edit-text{color:#fff;padding:0}.planner-route-actions .planner-start-time-input::-webkit-calendar-picker-indicator{filter:invert();opacity:.92}.planner-start-time-text{color:#fff;background:0 0;border-radius:999px;align-items:center;min-height:20px;margin-right:8px;padding:2px 6px;font-size:13px;font-weight:600;line-height:1.2;display:inline-flex}.planner-route-card:hover .planner-note-add-inline{opacity:1;pointer-events:auto}.planner-route-actions{flex-shrink:1;justify-content:flex-end;align-items:center;gap:6px;min-width:0;min-height:24px;margin-left:auto;display:inline-flex}.planner-route-actions>*{flex-shrink:0;align-self:center}.planner-route-actions>.planner-note-add-inline{flex-shrink:1}.planner-repeat-button,.planner-favorite-button{color:#111827;cursor:pointer;background:#f8fafc;border:none;border-radius:7px;justify-content:center;align-items:center;width:24px;height:24px;padding:0;display:inline-flex}.planner-favorite-button:hover,.planner-favorite-button--active{color:#f59e0b}.planner-combine-button{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:7px;justify-content:center;align-items:center;width:24px;height:24px;padding:0;font-size:0;line-height:1;display:inline-flex}.planner-combine-button-icon{width:12px;height:12px;display:block;position:relative}.planner-combine-button-icon:before,.planner-combine-button-icon:after{content:"";background:currentColor;border-radius:999px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.planner-combine-button-icon:before{width:12px;height:2.4px}.planner-combine-button-icon:after{width:2.4px;height:12px}.planner-combine-button:hover{background:var(--color-primary-dark)}.planner-repeat-button svg{width:18px;height:18px}.planner-repeat-button:hover,.planner-repeat-button--active{color:#111827;background:#f1f5f9}.planner-repeat-button:disabled{color:#cbd5e1;cursor:not-allowed;background:#f8fafc}.planner-route-title{flex:auto;align-items:center;width:100%;min-width:0;max-width:100%;min-height:24px;display:flex;overflow:hidden}.planner-route-title-button{text-align:left;cursor:default;max-width:100%;color:inherit;background:0 0;border:none;width:100%;min-width:0;padding:0;text-decoration:none;display:block}.planner-route-title-button--editable{cursor:text}.planner-route-title-button--openable{cursor:pointer}.planner-route-title-button:disabled{opacity:1}.planner-route-name-input{width:100%;min-width:0;height:22px;color:inherit;background:#ffffff29;border:1px solid #ffffff6b;border-radius:4px;padding:0 6px;font-size:13px;font-weight:600}.planner-route-name-input:focus{background:#fff3;border-color:#ffffffa6;outline:none}.planner-route-name{color:inherit;white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:13px;font-weight:600;line-height:1.2;display:block;overflow:hidden}.planner-route-card,.planner-route-card *{white-space:nowrap;word-break:normal;overflow-wrap:normal;-webkit-hyphens:none;hyphens:none}.planner-route-id{color:inherit;opacity:.85;font-size:11px;line-height:1.2}.planner-route-line{box-sizing:border-box;flex-wrap:nowrap;align-items:center;gap:8px;width:100%;min-width:0;max-width:100%;min-height:24px;display:flex;overflow:hidden}.planner-sampler-badge{color:#111827;box-sizing:border-box;white-space:nowrap;cursor:pointer;background:#fff;border:1px solid #ffffff4d;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;height:20px;padding:2px 6px;font-size:10px;font-weight:700;line-height:1;display:inline-flex}.planner-route-card--sampler-hint .planner-sampler-badge{box-shadow:none;background:#fff;border:2px solid #f59e0b}.planner-route-card--sampler-hint .planner-sampler-badge--empty{color:#92400e}.planner-route-actions .cell-clear{width:20px;height:20px}.planner-sampler-badge--empty{color:var(--gray-500);text-align:center;background:#fff;border:1px solid #ffffff4d;width:28px}.planner-note-input-inline{color:#111827;background:#fff;border:none;border-radius:4px;width:100%;margin-top:0;padding:2px 6px;font-size:12px;display:block}.planner-note-input-inline::placeholder{color:var(--gray-400)}.planner-route-note-row{width:100%}.planner-route-favorite-row{color:#b45309;align-items:center;gap:5px;width:100%;padding:1px 0 0 2px;font-size:11px;display:flex}.planner-route-favorite-row svg{color:#f59e0b;flex-shrink:0}.planner-route-favorite-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.planner-route-favorite-remove{color:inherit;cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:0 2px;font-size:13px;line-height:1}.planner-route-favorite-remove:hover{color:#dc2626}.cell-menu--favorite .cell-menu-item--selected{color:var(--color-primary);font-weight:700}.cell-menu--favorite .cell-menu-item--danger{color:#dc2626}.cell-menu-item--back{text-align:center;font-size:18px;font-weight:700;line-height:1}.route-status-badge{text-transform:uppercase;letter-spacing:.5px;color:#fff;background:#fff3;border-radius:12px;padding:4px 8px;font-size:11px;font-weight:600}.route-status-badge--planned,.route-status-badge--new{color:#fff;background:#fff3}.route-status-badge--started,.route-status-badge--completed{color:#fff;background:#ffffff40}.planner-route-card--started{background:#16a34ad9}.planner-route-card--planned{color:#111827;background:#fff;border:1px solid #111827}.planner-route-card--planned .planner-series-indicator{color:#111827;background:#f3f4f6}.planner-route-card--planned .planner-note-add-inline{color:#111827;border-color:var(--gray-300);background:#f9fafb}.planner-route-card--planned .planner-route-actions .planner-start-time-input{color:#111827}.planner-route-card--planned .planner-route-actions .planner-start-time-input::-webkit-datetime-edit{color:#111827}.planner-route-card--planned .planner-route-actions .planner-start-time-input::-webkit-datetime-edit-fields-wrapper{color:#111827}.planner-route-card--planned .planner-route-actions .planner-start-time-input::-webkit-datetime-edit-hour-field{color:#111827}.planner-route-card--planned .planner-route-actions .planner-start-time-input::-webkit-datetime-edit-minute-field{color:#111827}.planner-route-card--planned .planner-route-actions .planner-start-time-input::-webkit-datetime-edit-text{color:#111827}.planner-route-card--planned .planner-route-actions .planner-start-time-input::-webkit-calendar-picker-indicator{filter:none;opacity:.7}.planner-route-card--planned .planner-start-time-text{color:#111827}.planner-route-card--planned .planner-repeat-button{color:#111827;background:#f8fafc}.planner-route-card--planned .planner-favorite-button{background:#f8fafc}.planner-route-card--planned .planner-favorite-button--active{color:#f59e0b}.planner-route-card--planned .planner-trash-delete-button{color:#111827}.planner-route-card--planned .planner-repeat-button:hover,.planner-route-card--planned .planner-repeat-button--active{color:#111827;background:#f1f5f9}.planner-route-card--planned .planner-repeat-button:disabled{color:#cbd5e1;background:#f8fafc}.planner-route-card--planned .planner-combine-button{background:var(--color-primary);color:#fff}.planner-route-card--planned .planner-combine-button:hover{background:var(--color-primary-dark)}.planner-route-card--planned .planner-sampler-badge,.planner-route-card--planned .planner-sampler-badge--empty{border-color:var(--gray-300)}.planner-route-card--planned .planner-route-name-input{border-color:var(--gray-300);color:#111827;background:#fff}.planner-route-card--planned .planner-route-name-input:focus{border-color:var(--gray-400);background:#fff}.planner-route-card--generated{background:#f59e0b}.planner-route-card--completed{background:var(--gray-400);color:#f9fafb;opacity:.85}.planner-route-card--incomplete{background:#dc2626}.planner-route-notes{border-top:1px dashed var(--gray-200);gap:6px;padding-top:6px;display:grid}.planner-note-row{grid-template-columns:140px 1fr;align-items:start;gap:8px;display:grid}.planner-note-label{color:var(--gray-500);text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:600}.note-input--card{border:1px solid var(--gray-200);resize:vertical;background:#f9fafb;border-radius:8px;width:100%;min-height:32px;padding:6px 8px;font-size:13px;line-height:1.4}.note-input--card:focus{border-color:#93c5fd;outline:none;box-shadow:0 0 0 2px #3b82f633}.planner-note-add{align-items:center;gap:8px;display:flex}.planner-note-input{flex:auto;min-width:0;font-size:12px}.planner-note-button{height:30px;padding:0 10px;font-size:12px}.planner-add-row{opacity:0;pointer-events:none;justify-content:flex-end;align-items:center;min-height:32px;padding-right:6px;transition:opacity .15s;display:flex}.planner-cell--full:hover .planner-add-row,.planner-add-row.planner-add-row--visible{opacity:1;pointer-events:auto}.planner-add-button{color:#1f2937;background:#fff;border:1px solid #e2e8f0;border-radius:999px;height:30px;padding:0 12px;font-size:12px;font-weight:600;transition:transform .15s,box-shadow .15s,border-color .15s;box-shadow:0 6px 14px #0f172a14}.planner-add-button:hover{border-color:#cbd5f5;transform:translateY(-1px);box-shadow:0 10px 20px #0f172a1f}.planner-empty-day{color:#94a3b8;padding:4px 2px;font-size:13px}.pn-lab-placeholder{color:var(--gray-400);font-size:12px}.planner-cell-content--pnlab{flex-direction:column;align-items:stretch;gap:4px;height:100%;display:flex}.pn-lab-pick{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;width:26px;height:26px;padding:0;transition:color .15s,background .15s;display:inline-flex}.pn-lab-pick:hover:not(:disabled){color:var(--color-primary);background:rgba(var(--color-primary-rgb), .08)}.pn-lab-pick:disabled{cursor:default}.pn-lab-pick .sampler-icon{width:17px;height:17px}.pn-lab-note-input{flex:1;height:auto;min-height:22px}.cell-menu-empty{color:var(--gray-500);padding:6px 8px;font-size:12px;font-weight:600}}@scope(.route-planner){:scope{--layout-edge-gap:clamp(3px, .75vw, 10px);--layout-panel-gap:clamp(6px, .85vw, 12px);background:var(--color-surface);width:100%;min-height:0;padding:var(--layout-edge-gap);box-sizing:border-box;flex-direction:column;flex:auto;max-width:none;display:flex;position:relative;overflow:hidden}.main-container{gap:var(--layout-panel-gap);background:var(--color-surface);width:100%;height:100%;box-shadow:none;z-index:1;box-sizing:border-box;border-radius:0;flex-direction:row;min-height:0;margin:0;display:flex;position:relative;overflow:hidden}.left-panel{box-sizing:border-box;background:var(--color-surface);border-right:none;flex-direction:column;gap:16px;width:55%;min-width:500px;height:100%;padding:0;display:flex;overflow:hidden}.lists-container{flex:1;gap:16px;min-height:0;display:flex}.panel-column{flex-direction:column;gap:12px;height:100%;display:flex}.panel-column.compact-objects-active,.panel-column.compact-summary-active{gap:8px}.panel-column:first-child{width:52%}.panel-column:last-child{width:48%}.day-tabs{border-bottom:1px solid var(--color-border,#e0e0e0);flex-wrap:wrap;gap:8px;padding:2px 0 6px;display:flex}.day-tab-btn{min-height:40px;color:var(--gray-900);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;background:#fafdff;border:1px solid #e0eaff;border-radius:8px;justify-content:center;align-items:center;padding:8px 10px;font-size:clamp(.72rem,.95vw,.9rem);font-weight:500;line-height:1.2;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.day-tab-btn.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.day-tab-btn:hover:not(.active){border-color:var(--color-primary);box-shadow:0 2px 8px rgba(var(--color-primary-rgb), .15);background:#e0eaff}.day-tab-btn[data-drag-over]{outline:2px dashed var(--color-primary)}.debug-report-copy-wrap{width:100%;display:flex}.debug-report-copy-btn{color:#2d5ea8;text-align:center;cursor:pointer;background:#fff;border:1px solid #c5d4ef;border-radius:6px;width:100%;padding:10px 12px;font-size:15px;font-weight:600}.debug-report-copy-btn:hover{background:#eef4ff}.panel-section{flex-direction:column;gap:8px;width:100%;display:flex}.left-panel-compact-toggle-row{justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:40px;display:flex}.left-panel-compact-toggle{flex-shrink:0;align-items:center;display:inline-flex}.left-panel-compact-toggle-row .list-toggle{flex-shrink:0;margin-left:0}.left-panel-compact-toggle-track{background:#fff;border-radius:6px;width:200px;height:40px;transition:all .3s;display:flex;position:relative;overflow:hidden;box-shadow:0 2px 4px #0000001a}.left-panel-compact-toggle-handle{background:var(--color-primary);z-index:1;border-radius:6px;width:50%;height:100%;transition:transform .3s;position:absolute;top:0;left:0}.left-panel-compact-toggle-track.is-objects .left-panel-compact-toggle-handle{transform:translate(100%)}.left-panel-compact-toggle-option{width:50%;height:100%;color:var(--gray-500);cursor:pointer;z-index:2;background:0 0;border:none;justify-content:center;align-items:center;padding:0;transition:color .3s;display:flex}.left-panel-compact-toggle-option-content{justify-content:center;align-items:center;gap:0;font-size:.84rem;font-weight:600;display:inline-flex}.left-panel-compact-toggle-track:not(.is-objects) .left-panel-compact-toggle-option--summary,.left-panel-compact-toggle-track.is-objects .left-panel-compact-toggle-option--objects{color:#fff}.left-panel-compact-toggle-option:focus-visible{outline:2px solid rgba(var(--color-primary-rgb), .45);outline-offset:-2px}.section-title{color:var(--color-text);margin:0;padding:0 4px;font-size:.85em;font-weight:600}.tours-list,.waypoints-list{flex-direction:column;flex:1;min-height:0;display:flex}.route-summary-section{flex:0 0 200px;transition:all .3s;overflow:visible}.route-summary-section.compact-fill{flex:auto;min-height:0;display:flex}.route-summary-section.compact-fill .route-summary-container{width:100%;height:100%;min-height:0}.route-summary-section.hidden{display:none}.tours-expanded .tours-scroll-container{flex:1;height:100%}.tours-expanded .tours-view{height:100%}.suggestions-list{border-radius:0;flex-direction:column;flex:1;min-height:0;padding:8px 8px 0;display:flex}.suggestions-content{flex-direction:column;flex:1;min-height:0;padding:4px 0;display:flex;overflow-y:auto}.suggestions-expanded .suggestions-scroll-wrapper{flex:1;height:100%}.suggestions-expanded .suggestions-items{height:100%}.tours-content{flex-direction:column;gap:8px;min-width:0;height:100%;min-height:0;display:flex;overflow:hidden}.tours-content>.tours-scroll-container{flex:1;min-height:0}.tours-content>.tours-search-container{flex:none}.tours-header{box-sizing:border-box;flex-direction:column;flex-shrink:0;gap:8px;width:100%;min-width:0;max-width:100%;padding:0;display:flex;position:relative;overflow:hidden}.tours-header-top{align-items:flex-start;gap:12px;width:100%;min-width:0;display:flex;position:relative}.tours-header-top .list-toggle{flex-shrink:1;min-width:0;max-width:220px;margin-left:auto}.tours-header.stacked .tours-header-top{align-items:flex-start;gap:12px;display:flex;position:relative}.tours-header.stacked .tours-header-top .tour-type-selector{flex:1;min-width:0;margin-right:100px;padding-right:5px}.tours-header.stacked .tours-header-top .tour-type-selector .type-buttons{flex-wrap:wrap;align-items:flex-start}.tours-header.stacked .tours-header-top .list-toggle{z-index:10;max-width:none;margin-left:0;position:absolute;top:0;right:0}@container app (width<=1200px){.tours-header-top{flex-direction:column;align-items:stretch;gap:8px}.tours-header-top .list-toggle{align-self:center;max-width:none;margin-left:0}}@container app (width<=1000px){.tours-header,.tours-header-top{gap:6px}}@container app (width<=800px){.tours-header,.tours-header-top{gap:4px}}.suggestions-list{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;flex-direction:column;height:100%;margin:0;display:flex;overflow:visible}.suggestions-type-filter{border-bottom:1px solid rgba(var(--color-primary-rgb), .1);color:var(--color-text-muted);background:#fff;justify-content:space-between;align-items:center;padding:12px 16px;font-size:13px;display:flex}.filter-section{align-items:center;gap:8px;display:flex}.radius-section{align-items:center;gap:8px;width:50%;min-width:0;display:flex;position:relative}.filter-label{font-weight:500}.filter-type{text-transform:uppercase;letter-spacing:.5px;border-radius:12px;padding:2px 8px;font-size:12px;font-weight:600}.radius-label{color:var(--color-text-muted);white-space:nowrap;align-items:center;height:20px;font-weight:500;display:flex}.radius-value{color:var(--gray-900);white-space:nowrap;text-align:center;background:#fff;border:1px solid #e0eaff;border-radius:4px;justify-content:center;align-items:center;min-width:50px;height:24px;padding:6px 12px;font-size:13px;font-weight:700;display:flex}.radius-slider-container{align-items:center;width:200px;height:20px;padding:0;display:flex;position:relative}.radius-slider{appearance:none;cursor:pointer;background:repeating-linear-gradient(90deg,#e2e8f0 0 calc(8.33333% - 1px),#cbd5e0 calc(8.33333% - 1px) 8.33333%);border-radius:2px;outline:none;width:100%;height:4px;position:relative}.radius-slider::-webkit-slider-thumb{appearance:none;cursor:pointer;background:#f59e0b;border:2px solid #fff;border-radius:50%;width:14px;height:14px;box-shadow:0 1px 3px #0003}.radius-slider::-moz-range-thumb{cursor:pointer;background:#f59e0b;border:2px solid #fff;border-radius:50%;width:14px;height:14px;box-shadow:0 1px 3px #0003}.radius-slider:disabled{opacity:.5;cursor:not-allowed}.suggestions-loading,.suggestions-empty{color:var(--color-text-muted);justify-content:center;align-items:center;height:100%;padding:20px;font-size:14px;display:flex}.suggestions-scroll-wrapper{border-radius:0 0 8px 8px;flex:1;overflow:hidden}.suggestions-items{height:100%;padding:4px 8px 16px;overflow-y:auto}.suggestion-item{cursor:grab;opacity:1;background:#fff;border:2px solid #0000;border-radius:6px;align-items:center;gap:8px;min-height:50px;margin-bottom:4px;padding:8px 10px;font-size:.85em;transition:all .3s cubic-bezier(.4,0,.2,1),opacity .3s ease-in-out;display:flex;position:relative;box-shadow:0 1px 3px #0000000d}.suggestion-item:last-child{margin-bottom:0}.suggestion-item:hover{background:#fff;border-color:#90caf9;transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.suggestion-item:active{cursor:grabbing;transform:translateY(0)}.suggestion-number{color:#fff;background:#f59e0b;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;margin:0;font-size:11px;font-weight:700;transition:all .3s;display:flex}.suggestion-street{color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.suggestion-postal{color:var(--color-text-light);white-space:normal;margin-top:2px;font-size:.85em;line-height:1.3}.suggestion-details{flex:1;min-width:0}.suggestion-badges{flex-shrink:0;align-items:center;gap:8px;display:flex}.suggestion-type-badge{color:#ff9800;background:#ff98001a;border-radius:4px;flex-shrink:0;padding:2px 8px;font-size:.8em;font-weight:500}.tour-badge{border-radius:4px;padding:2px 8px;font-size:.8em;font-weight:500}.distance-badge{color:#616161;text-align:center;background:#9e9e9e1a;border-radius:12px;flex-shrink:0;min-width:20px;padding:2px 6px;font-size:.75em;font-weight:500}.tours-search-container{flex-shrink:0}.search-input-wrapper{border:1px solid var(--gray-300);background:#fff;border-radius:8px;align-items:center;width:100%;padding:8px 12px;transition:all .2s;display:flex;position:relative}.search-input-wrapper:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb), .1)}.search-icon{color:#64748b;flex-shrink:0;width:16px;height:16px;margin-right:8px}.search-input{color:var(--gray-700);background:0 0;border:none;outline:none;flex:1;min-width:0;padding:0;font-size:14px}.search-input::placeholder{color:var(--gray-400);font-size:14px}.clear-search-btn{cursor:pointer;color:#64748b;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-left:8px;padding:4px;transition:all .2s;display:flex}.clear-search-btn:hover{color:#475569;background:#f1f5f9}.clear-search-btn svg{width:14px;height:14px}.tours-scroll-container{flex:1;min-height:0;overflow:hidden}.tours-view{flex-direction:column;height:100%;display:flex}.waypoints-warning{color:#856404;text-align:center;background:#fff3cd;border:1px solid #ffeaa7;border-radius:6px;margin-top:12px;padding:8px 12px;font-size:12px;line-height:1.4}.optimize-hint{color:var(--color-text-muted);text-align:center;margin-top:8px;font-size:.8em;font-style:italic}@container app (width<=1200px){:scope{--layout-edge-gap:6px;--layout-panel-gap:8px}.main-container{width:100%}.tours-header{gap:8px;padding:0}}@container app (width<=1500px) and (width>=1201px){:scope{--layout-edge-gap:8px;--layout-panel-gap:10px}}@container app (width<=600px){.tours-header,.tours-header-top{gap:4px}}@container app (width<=500px){.tours-header,.tours-header-top{gap:2px}}@container app (width<=400px){.tours-header,.tours-header-top{gap:1px}}.suggestions-expand-arrow-container{background:var(--gray-100);cursor:pointer;border-top:1px solid #e0e0e0;justify-content:center;align-items:center;min-height:24px;padding:0 8px;transition:background-color .2s,padding .3s;display:flex}.suggestions-expand-arrow-container.expanded{padding:8px 8px 0}.suggestions-expand-arrow-container:hover .suggestions-expand-arrow{stroke:#ff6b35;filter:drop-shadow(0 0 8px #ff6b3599)}.suggestions-expand-arrow{width:50%;max-width:80px;transition:stroke .3s,filter .3s}.suggestions-expand-arrow.expanded{transform:rotate(180deg)}.not-found-warning{color:#92400e;background:#fef3cd;border:1px solid #fde68a;border-radius:6px;align-items:center;gap:6px;margin:6px 0;padding:8px 12px;font-size:.8em;display:flex}.warning-icon{flex-shrink:0;font-size:1em}.warning-text{flex:1;line-height:1.3}.warning-text strong{color:#b45309;font-weight:600}@container app (width<=1200px){.left-panel{width:45%}}@container app (width<=768px){:scope{--layout-edge-gap:4px;--layout-panel-gap:6px;padding:var(--layout-edge-gap)}.main-container{flex-direction:column;width:100%;height:100%;margin:0}.left-panel{width:100%;min-width:unset;height:auto;max-height:45vh}.lists-container{flex-direction:column}.panel-section{width:100%}}@container app (width<=480px){:scope{--layout-edge-gap:3px;--layout-panel-gap:5px}}}@scope(.settings-container){:scope{max-width:1200px;margin:20px auto;padding:0 20px}.settings-grid{grid-template-columns:400px 400px;justify-content:center;gap:24px;display:grid}.settings-card{box-sizing:border-box;background:#fff;border-radius:12px;width:100%;max-width:400px;height:650px;padding:24px;box-shadow:0 2px 8px #0000001a}.email-confirmation-container{box-sizing:border-box;text-align:center;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;padding:8px;display:flex}.confirmation-title{color:var(--color-text-strong);margin-bottom:16px;font-size:20px;font-weight:600}.confirmation-description{color:var(--color-text-light);max-width:300px;margin-bottom:24px;font-size:16px;line-height:1.5}.confirmation-password{width:100%;max-width:300px;margin-bottom:24px}.confirmation-password-input{border:1px solid var(--color-border);background:var(--color-background-light);width:100%;color:var(--color-text-strong);border-radius:6px;padding:12px 16px;font-size:16px;transition:border-color .2s}.confirmation-actions{justify-content:center;gap:12px;width:100%;max-width:300px;display:flex}.confirmation-actions .action-button{flex:1;height:40px;padding:8px}.settings-title{color:var(--color-text-strong);margin-bottom:32px;font-size:24px;font-weight:600}.settings-section{flex-direction:column;margin-bottom:40px;display:flex}@container app (width>=641px){.settings-section{height:100%;max-height:100%;overflow:hidden}}.section-title{color:var(--color-text-strong);border-bottom:1px solid var(--color-border);margin-bottom:24px;padding-bottom:8px;font-size:18px;font-weight:600}.settings-form{flex-direction:column;gap:24px;display:flex}.form-group{flex-direction:column;gap:8px;display:flex}.form-group label{color:var(--color-text-strong);font-size:14px;font-weight:500}.form-group input,.form-group select{border:1px solid var(--color-border);background:#fff;border-radius:6px;padding:12px;font-size:14px;transition:all .2s}.form-group input:focus,.form-group select:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px rgba(var(--color-primary-rgb), .1);outline:none}.form-group select:disabled{background:var(--color-background-light);cursor:not-allowed;opacity:.7}.error-message{color:var(--color-error);background:rgba(var(--color-error-rgb), .1);border-radius:6px;padding:12px;font-size:14px}.success-message{color:var(--color-success);background:rgba(var(--color-success-rgb), .1);border-radius:6px;padding:12px;font-size:14px}.submit-button{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:12px;font-size:14px;font-weight:500;transition:all .2s}.submit-button:hover:not(:disabled){background:var(--color-primary-dark)}.submit-button:disabled{opacity:.7;cursor:not-allowed}@container app (width<=640px){:scope{box-sizing:border-box;margin:0;padding:8px;overflow-y:auto}.settings-grid{flex-direction:column;gap:16px;width:100%;display:flex}.settings-card{box-sizing:border-box;border-radius:8px;width:100%;margin:0;padding:12px;display:block;box-shadow:0 2px 8px #0000001a}.settings-section{margin-bottom:16px;display:block}.settings-section:last-child{margin-bottom:0}.settings-title{text-align:center;margin-bottom:20px;font-size:18px;line-height:1.3}.section-title{color:var(--color-text-strong);margin-bottom:12px;font-size:16px;font-weight:600}.settings-form{gap:16px}.form-group{flex-direction:column;gap:8px;margin-bottom:8px;display:flex}.form-group:last-child{margin-bottom:0}.form-group label{font-size:14px;font-weight:600;line-height:1.3}.form-group input,.form-group select{box-sizing:border-box;border-radius:6px;min-height:44px;padding:12px;font-size:14px}.form-help{color:var(--gray-500);margin-top:4px;font-size:12px;line-height:1.4}.form-label{margin-bottom:8px;font-size:14px;font-weight:600;line-height:1.3;display:block}.radio-group{flex-direction:column;gap:12px;display:flex}.radio-spacer{display:none}.radio-option{cursor:pointer;background:#fff;border:none;border-radius:6px;align-items:center;padding:8px;font-size:14px;line-height:1.4;transition:all .2s;display:flex}.radio-option:hover{background:var(--color-surface)}.radio-option input[type=radio]{cursor:pointer;width:16px;height:16px;accent-color:var(--color-primary);outline:none;margin:0}.radio-option input[type=radio]:focus{box-shadow:none;outline:none}.radio-option:disabled{cursor:not-allowed;opacity:.6}.radio-label{cursor:pointer;-webkit-user-select:none;user-select:none}.submit-button{border-radius:6px;min-height:44px;margin-top:4px;padding:12px;font-size:14px;font-weight:600}.message-container{min-height:40px;margin-bottom:8px;position:relative}.error-message{color:#dc2626;background-color:#fee2e2;border:1px solid #fecaca;border-radius:4px;padding:8px 12px;font-size:12px;line-height:1.3;position:absolute;top:0;left:0;right:0}.success-message{color:var(--color-success);background:rgba(var(--color-success-rgb), .1);border-radius:6px;padding:12px;font-size:14px;position:absolute;top:0;left:0;right:0}.radio-group{flex-direction:column;align-items:flex-start;gap:8px}.settings-card .radio-group{justify-content:flex-start;align-items:flex-start}.settings-section:has(.totp-setup-section){display:none!important}.totp-setup-section{z-index:1000!important;background:#fff!important;height:calc(100vh - 64px)!important;min-height:calc(100vh - 64px)!important;padding:20px!important;display:block!important;position:fixed!important;inset:64px 0 0!important;overflow-y:auto!important}.totp-setup-steps{width:100%!important;max-width:100%!important;height:auto!important;min-height:auto!important;display:block!important;overflow:visible!important}.step{margin-bottom:20px!important;display:block!important}.manual-container{box-sizing:border-box!important;width:100%!important;max-width:100%!important;height:auto!important;min-height:auto!important;margin-bottom:20px!important;display:block!important;overflow:visible!important}.manual-text{color:#333!important;box-sizing:border-box!important;word-wrap:break-word!important;overflow-wrap:break-word!important;white-space:normal!important;text-align:left!important;z-index:1!important;background:0 0!important;border-radius:8px!important;width:100%!important;max-width:100%!important;height:auto!important;min-height:auto!important;margin-bottom:0!important;padding:8px!important;font-size:12px!important;line-height:1.3!important;display:block!important;position:relative!important;overflow:visible!important}.qr-container{text-align:center!important;box-sizing:border-box!important;background:0 0!important;border-radius:8px!important;width:100%!important;max-height:none!important;margin-bottom:20px!important;padding:20px!important;display:block!important;overflow:visible!important}.qr-code{width:200px!important;max-width:200px!important;height:200px!important;max-height:200px!important;margin:0 auto!important;display:block!important}.totp-setup-section .secret-container{box-sizing:border-box!important;background:0 0!important;border-radius:8px!important;width:100%!important;min-height:120px!important;margin-bottom:80px!important;padding:16px!important;display:block!important;position:relative!important}.secret-label{color:#333!important;margin-bottom:8px!important;font-size:14px!important;font-weight:600!important}.secret-input-group{box-sizing:border-box!important;align-items:center!important;gap:8px!important;width:100%!important;display:flex!important}.secret-input{border:1px solid var(--gray-300)!important;box-sizing:border-box!important;word-wrap:break-word!important;overflow-wrap:break-word!important;white-space:normal!important;resize:none!important;background:#fff!important;border-radius:4px!important;flex:1!important;width:100%!important;height:auto!important;min-height:40px!important;padding:12px!important;font-size:11px!important}.copy-button{background:var(--color-primary)!important;color:#fff!important;border:none!important;border-radius:4px!important;flex-shrink:0!important;width:40px!important;height:40px!important;font-size:12px!important}.verification-group{background:0 0!important;border-radius:8px!important;margin-top:20px!important;margin-bottom:20px!important;padding:16px!important;display:block!important}.verification-label{color:#333!important;margin-bottom:8px!important;font-size:14px!important;font-weight:600!important}.verification-input{border:1px solid var(--gray-300)!important;text-align:center!important;box-sizing:border-box!important;z-index:10!important;pointer-events:auto!important;background:#fff!important;border-radius:4px!important;width:100%!important;height:50px!important;margin-bottom:16px!important;padding:12px!important;font-size:16px!important;position:relative!important}.verification-actions{box-sizing:border-box!important;flex-direction:column!important;gap:12px!important;width:100%!important;display:flex!important}.verification-actions .action-button:first-child{order:2!important}.verification-actions .action-button:last-child{order:1!important}.verification-actions .action-button{box-sizing:border-box!important;border-radius:4px!important;width:100%!important;height:50px!important;font-size:14px!important}.secret-container .secret-copied-message{color:#fff!important;text-align:center!important;visibility:visible!important;z-index:1001!important;background:#4caf50!important;border-radius:8px!important;margin:0!important;padding:12px!important;font-size:14px!important;display:block!important;position:fixed!important;top:80px!important;left:20px!important;right:20px!important;box-shadow:0 4px 12px #00000026!important}.totp-setup-section .secret-container{margin:0 0 80px!important;padding:12px 12px 50px!important}.email-confirmation-section{z-index:1000!important;background:#fff!important;height:calc(100vh - 64px)!important;min-height:calc(100vh - 64px)!important;padding:20px!important;display:block!important;position:fixed!important;inset:64px 0 0!important;overflow-y:auto!important}.email-confirmation-container{box-sizing:border-box!important;width:100%!important;max-width:100%!important;height:auto!important;min-height:auto!important;margin:0!important;padding:0!important;display:block!important;position:static!important;overflow:visible!important}}.section-description{color:var(--color-text-light);margin-bottom:20px;font-size:14px}.two-fa-status{background:var(--color-background-light);border-radius:8px;margin-bottom:20px;padding:8px}.status-item{justify-content:space-between;align-items:center;display:flex}.status-label{color:var(--color-text-strong);font-weight:500}.status-value{color:var(--color-primary);font-weight:600}.two-fa-actions{flex-wrap:wrap;gap:12px;display:flex}.action-button{cursor:pointer;border:1px solid #0000;border-radius:6px;padding:10px 16px;font-size:14px;font-weight:500;transition:all .2s}.action-button.primary{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.action-button.primary:hover:not(:disabled){background:var(--color-primary-dark)}.action-button.danger{color:var(--color-error);border-color:var(--color-error);background:#fff}.action-button.danger:hover:not(:disabled){background:var(--color-error);color:#fff}.action-button:disabled{opacity:.6;cursor:not-allowed}.modal-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-content{background:#fff;border-radius:12px;width:100%;max-width:500px;max-height:90%;padding:24px;overflow-y:auto}.modal-title{color:var(--color-text-strong);margin-bottom:8px;font-size:20px;font-weight:600}.modal-description{color:var(--color-text-light);margin-bottom:24px;font-size:14px}.totp-setup-steps{flex-direction:column;gap:24px;display:flex}.step{background:var(--color-background-light);border-radius:8px;padding:8px}.modal-actions{justify-content:flex-end;gap:12px;margin-top:24px;display:flex}.modal-button{cursor:pointer;border:1px solid #0000;border-radius:6px;padding:10px 16px;font-size:14px;font-weight:500;transition:all .2s}.modal-button.secondary{color:var(--color-text-strong);border-color:var(--color-border);background:#fff}.modal-button.secondary:hover{background:var(--color-background-light)}.modal-button.danger{background:var(--color-error);color:#fff;border-color:var(--color-error)}.modal-button.danger:hover:not(:disabled){background:#dc2626}.modal-button:disabled{opacity:.6;cursor:not-allowed}@container app (width<=640px){.two-fa-actions{flex-direction:column}.action-button{justify-content:center;width:100%}.modal-content{margin:16px;padding:8px}.qr-code{width:auto;max-width:100%;height:auto;max-height:150px}.verification-group{flex-direction:column;align-items:stretch}.verify-button{width:100%}.modal-actions{flex-direction:column}.modal-button{width:100%}}.radio-group{align-items:center;margin-bottom:4px;display:flex}.radio-spacer{width:60px}.radio-option{cursor:pointer;align-items:center;gap:8px;font-size:14px;line-height:1.4;display:flex}.radio-option input[type=radio]{cursor:pointer;width:16px;height:16px;accent-color:var(--color-primary);margin:0}.radio-option:disabled{cursor:not-allowed;opacity:.6}.radio-label{cursor:pointer;-webkit-user-select:none;user-select:none}.totp-setup-section{box-sizing:border-box;flex-direction:column;width:100%;height:100%;display:flex;overflow:hidden}.totp-setup-steps{box-sizing:border-box;flex-direction:column;flex:1;gap:0;min-width:0;max-width:100%;min-height:0;max-height:100%;margin:0;padding:8px;display:flex;overflow:hidden}.totp-setup-section .step{background:var(--color-background-light);box-sizing:border-box;border-radius:8px;flex-direction:column;flex:1;justify-content:center;min-width:0;max-width:100%;min-height:0;max-height:100%;padding:8px;display:flex;overflow:hidden}.totp-setup-section .step:last-child{margin-bottom:0}.manual-container{box-sizing:border-box;flex:none;max-width:100%;margin:0 0 12px;padding:8px;overflow:visible}.manual-text{color:var(--color-text-strong);text-align:center;box-sizing:border-box;max-width:100%;margin:0;padding:8px;font-size:12px;font-weight:700;line-height:1.4}.totp-setup-section .qr-container{box-sizing:border-box;background:var(--color-background-light);border-radius:8px;flex:none;justify-content:center;align-items:center;min-width:0;max-width:100%;min-height:0;max-height:200px;margin:12px 0;padding:12px;display:flex;overflow:hidden}.totp-setup-section .qr-code{object-fit:contain;border:4px solid #3b82f6;border-radius:8px;width:auto;max-width:100%;height:auto;max-height:200px;display:inline-block}.totp-setup-section .secret-container{box-sizing:border-box;background:var(--color-background-light);border-radius:8px;flex:none;min-width:0;max-width:100%;margin:0 0 24px;padding:12px 12px 40px;position:relative;overflow:visible}.totp-setup-section .verification-group{box-sizing:border-box;flex:none;align-items:center;gap:8px;min-width:0;max-width:100%;margin:0;padding:8px;display:flex;overflow:hidden}.step h4{color:var(--color-text-strong);margin-bottom:12px;font-size:16px;font-weight:600}.app-list{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;display:grid}.app-item{text-align:center;border:1px solid var(--color-border);background:#fff;border-radius:4px;padding:8px 12px;font-size:14px}.qr-container{justify-content:center;margin-bottom:16px;display:flex}.qr-code{border-radius:8px;width:auto;max-width:100%;height:auto;max-height:200px}.secret-container{margin-top:16px}.secret-label{color:var(--color-text-strong);margin-bottom:8px;font-size:14px;font-weight:500;display:block}.secret-input-group{box-sizing:border-box;justify-content:space-between;gap:8px;width:100%;max-width:100%;display:flex}.secret-input{border:1px solid var(--color-border);background:var(--color-background-light);box-sizing:border-box;word-wrap:break-word;overflow-wrap:break-word;white-space:pre-wrap;border-radius:4px;flex:1;width:300px;max-width:300px;padding:8px 12px;font-family:monospace;font-size:14px}.copy-button{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:4px;justify-content:center;align-items:center;padding:8px;transition:background .2s;display:flex}.copy-button:hover{background:var(--color-primary-dark)}.secret-copied-message{background:var(--color-primary);color:#fff;text-align:center;z-index:10;border-radius:4px;max-width:calc(100% - 24px);margin-top:8px;margin-left:12px;margin-right:12px;padding:8px 12px;font-size:14px;position:absolute;top:calc(100% - 42px);left:0;right:0}.verification-group{box-sizing:border-box;align-items:center;gap:12px;width:100%;max-width:100%;display:flex}.verification-container .verification-input{border:1px solid var(--color-border);text-align:center;letter-spacing:2px;box-sizing:border-box;border-radius:6px;outline:none;width:100%;max-width:100%;margin-bottom:12px;padding:12px;font-family:monospace;font-size:16px}.verification-container .verification-input::placeholder{text-align:center;letter-spacing:2px}.verification-container .verification-input:focus{border-color:var(--color-border);box-shadow:0 0 0 2px rgba(var(--color-primary-rgb), .1);outline:none}.verification-input::placeholder{text-align:center;letter-spacing:2px}.verify-button{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:12px 20px;font-size:14px;font-weight:500;transition:background .2s}.verify-button:hover:not(:disabled){background:var(--color-primary-dark)}.verify-button:disabled{opacity:.6;cursor:not-allowed}.verification-container{background:var(--color-background-light);border-radius:8px;margin-top:0;padding:0 12px 12px}.totp-actions{justify-content:space-between;gap:12px;width:100%;margin-top:12px;display:flex}.totp-actions .action-button{flex:1}.totp-actions .cancel-button{color:var(--color-text-strong);border:1px solid var(--color-border);background:#fff}.totp-actions .cancel-button:hover{background:var(--color-error)!important;color:#fff!important;border-color:var(--color-error)!important}.action-button.secondary{color:var(--color-text-strong);border:1px solid var(--color-border);background:#fff}.action-button.secondary:hover{background:var(--color-background-light)}@container app (width<=640px){.settings-grid{grid-template-columns:1fr;gap:0}.settings-card{box-shadow:none;border-radius:0;width:100%;max-width:100%;height:auto;margin:0;padding:8px;display:block}.settings-section{margin-bottom:16px;display:block}.totp-setup-section{flex-direction:column;flex:1;height:100%;max-height:100%;padding:8px;display:flex;overflow:hidden}.totp-setup-steps{flex-direction:column;flex:1;gap:16px;min-height:0;max-height:100%;display:flex;overflow:hidden}.step{flex-direction:column;flex:1;min-height:0;max-height:100%;padding:12px;display:flex;overflow:hidden}.qr-code{width:auto;max-width:100%;height:auto;max-height:150px}.verification-group{flex-direction:column;align-items:stretch}.verify-button{width:100%}.totp-actions{flex-direction:column}.action-button{width:100%}}.password-error,.password-success{margin-top:0!important;padding:0!important}.submit-button{margin-bottom:0!important}form{gap:12px!important}form .form-group{margin-bottom:8px!important}.email-confirmation-section{box-sizing:border-box;flex-direction:column;width:100%;height:100%;display:flex;overflow:hidden}.email-confirmation-container{box-sizing:border-box;text-align:center;justify-content:center;padding:8px;flex-direction:column!important;align-items:stretch!important;width:100%!important;height:100%!important;display:flex!important}.confirmation-title{color:var(--color-text-strong);margin-bottom:16px;font-size:20px;font-weight:600;width:100%!important}.confirmation-description{color:var(--color-text-light);margin-bottom:24px;font-size:16px;line-height:1.5;width:100%!important}.confirmation-password{margin-bottom:24px;width:100%!important}.confirmation-password-input{border:1px solid var(--color-border);background:var(--color-background-light);color:var(--color-text-strong);border-radius:6px;padding:12px 16px;font-size:16px;transition:border-color .2s;width:100%!important}.confirmation-password-input:focus{border-color:var(--color-primary);outline:none}.confirmation-actions{justify-content:center;gap:12px;display:flex;width:100%!important}.confirmation-actions .action-button{height:40px;padding:8px;flex:1!important;width:auto!important}.email-confirmation-section *{max-width:none!important}.confirmation-actions .cancel-button:hover{background:var(--color-error)!important;color:#fff!important;border-color:var(--color-error)!important}.email-confirmation-container .confirmation-title,.email-confirmation-container .confirmation-description,.email-confirmation-container .confirmation-password,.email-confirmation-container .confirmation-password-input,.email-confirmation-container .confirmation-actions{width:100%!important;max-width:none!important}}@scope(.advanced-settings-page){:scope{background:#f5f7fa;flex-direction:column;width:100%;height:100%;min-height:0;display:flex;overflow:hidden}.page-header{border-bottom:1px solid var(--gray-200);background:#fff;flex-shrink:0;padding:16px 24px 0;box-shadow:0 2px 8px #00000008}.page-content{flex-direction:column;flex:1;gap:32px;width:100%;max-width:100%;min-height:0;margin:0 auto;padding:24px 24px 48px;display:flex;overflow:auto}.tab-navigation{border-bottom:2px solid var(--gray-200);gap:8px;margin-bottom:0;display:flex}.tab-button{cursor:pointer;color:#5f6368;background:0 0;border:none;border-radius:8px 8px 0 0;align-items:center;gap:8px;padding:16px 32px;font-size:1.1rem;font-weight:600;transition:all .2s;display:flex;position:relative}.tab-button.active{color:var(--color-primary);border-bottom:2px solid var(--color-primary);z-index:1;background:#fff}.tab-navigation{flex-wrap:wrap}.tab-admin-section{border-left:2px solid var(--gray-200);background:#f8fafc;border-radius:8px 8px 0 0;align-items:center;gap:4px;margin-left:auto;padding-left:12px;display:flex}.tab-admin-section .tab-button{padding:16px 20px}.tab-admin-label{border:1px solid var(--gray-300,#d1d5db);color:#475569;text-transform:uppercase;letter-spacing:.04em;background:#f3f4f6;border-radius:4px;align-self:center;padding:2px 10px;font-size:11px;font-weight:700}.tab-button:hover:not(.active){color:#202124;background:#f1f3f4}@container app (width<=900px){.page-header{padding:16px 12px 0}.page-content{padding:16px 12px 32px}}.favorites-tab{flex-direction:column;flex:1;min-height:0;display:flex}.favorites-layout{flex:1;grid-template-columns:minmax(300px,420px) minmax(0,1fr);align-items:stretch;gap:16px;min-height:0;display:grid}.favorites-list{flex-direction:column;gap:8px;min-height:0;padding-right:4px;display:flex;overflow-y:auto}.favorites-empty{color:var(--gray-500);padding:12px;font-size:.9em}.favorites-item{cursor:pointer;background:#fafdff;border:1px solid #e0eaff;border-radius:10px;align-items:center;gap:10px;padding:10px 12px;transition:border-color .2s,background .2s;display:flex}.favorites-item:hover{border-color:var(--color-primary)}.favorites-item--selected{border-color:var(--color-primary);background:#eef4ff}.favorites-item-star{color:#f59e0b;flex-shrink:0}.favorites-item-main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.favorites-item-name{text-align:left;color:var(--gray-900);cursor:text;white-space:nowrap;text-overflow:ellipsis;background:0 0;border:none;padding:0;font-size:.9em;font-weight:600;overflow:hidden}.favorites-item-name-input{border:1px solid var(--color-primary);color:var(--gray-900);border-radius:6px;width:100%;padding:2px 6px;font-size:.9em;font-weight:600}.favorites-item-meta{color:var(--gray-500);font-size:.75em}.favorites-item-delete{color:var(--gray-500);cursor:pointer;background:0 0;border:none;border-radius:6px;flex-shrink:0;padding:4px;display:inline-flex}.favorites-item-delete:hover{color:#dc2626;background:#fee2e2}.favorites-item-delete .trash-icon{width:16px;height:16px}.favorites-map{border:2px solid var(--color-primary);background:#fafdff;border-radius:16px;min-height:420px;overflow:hidden}.favorites-map-placeholder{height:100%;color:var(--gray-500);justify-content:center;align-items:center;font-size:.9em;display:flex}}@scope(.advanced-settings-page){.address-types-tab{width:100%;max-width:1000px;margin:0 auto;padding:0}.field-description{color:var(--gray-500);margin:0 0 8px;font-size:.9rem}.color-input-container{align-items:center;gap:8px;display:flex}.color-input{border:1px solid var(--gray-300);cursor:pointer;border-radius:6px;width:50px;height:40px;padding:0}.color-input:disabled{opacity:.5;cursor:not-allowed}.color-text-input{border:1px solid var(--gray-300);background:#fff;border-radius:6px;flex:1;padding:8px 12px;font-family:monospace;font-size:14px;transition:all .2s}.color-text-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb), .1);outline:none}.color-text-input:disabled{cursor:not-allowed;background:#f9fafb}.checkbox-option{color:#202124;cursor:pointer;align-items:center;gap:10px;font-weight:600;display:inline-flex}.checkbox-option input[type=checkbox]{width:16px;height:16px}.address-types-list{border:1px solid var(--gray-200);background:#fff;border-radius:12px;overflow:hidden}.type-content{align-items:center;gap:12px;display:flex}.type-badge{border-radius:8px;align-items:center;gap:6px;padding:6px 10px;font-size:.95rem;font-weight:700;display:inline-flex}.type-id{color:var(--gray-500);font-size:.9rem}.bwb-visibility-toggle{color:#4b5563;cursor:pointer;align-items:center;gap:8px;margin-top:8px;font-size:.85rem;display:inline-flex}.bwb-visibility-toggle input[type=checkbox]{width:14px;height:14px}@container app (width<=768px){.tab-header{flex-direction:column;align-items:stretch;gap:16px}.types-grid{grid-template-columns:1fr}.form-actions{flex-direction:column}}.availability-tab{flex-direction:column;gap:16px;width:100%;min-width:0;display:flex;overflow:visible}.error-message{color:#b91c1c;background:#fee2e2;border-radius:8px;padding:12px 16px;font-weight:500}.loading-container{flex-direction:column;align-items:center;gap:12px;padding:40px 0;display:flex}.loading-text{color:#5f6368}.empty-icon{color:#9aa0a6;background:#f3f4f6;border-radius:16px;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 16px;font-weight:700;display:flex}.table-card{border:1px solid var(--gray-200);background:#fff;border-radius:12px;width:100%;min-width:0;overflow:visible}.table-scroll{min-width:0;padding-bottom:6px;overflow:auto visible}.availability-table{border-collapse:collapse;width:max-content;min-width:100%}.availability-table th,.availability-table td{border-bottom:1px solid var(--gray-200);text-align:center;vertical-align:top;padding:10px 12px}.availability-table tbody tr:last-child td{border-bottom:none}.availability-table thead th{color:#5f6368;background:#f8fafc;font-size:.9rem;font-weight:600}.availability-table tbody tr td{transition:background-color .14s}.availability-table tbody tr:hover td{background:#f5f8ff}.day-header-button{width:100%;color:inherit;font:inherit;cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;gap:6px;padding:4px 0;transition:color .2s,background .2s;display:inline-flex}.day-header-button:hover{color:#202124;background:rgba(var(--color-primary-rgb), .08)}.day-header-button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.day-header-button[data-state=true]{color:#1a73e8}.day-header-button[data-state=mixed]{color:#5f6368}.sampler-header,.sampler-cell{text-align:left;min-width:220px}.sampler-cell{color:#202124;font-weight:600}.day-header,.availability-cell{min-width:122px}.availability-toggle{width:18px;height:18px;accent-color:var(--color-primary);cursor:pointer}.availability-toggle:disabled{cursor:not-allowed;opacity:.6}.availability-cell-content{flex-direction:column;align-items:center;gap:4px;width:100%;min-height:48px;display:flex}.day-shift-row{grid-template-columns:66px auto 66px;justify-content:center;align-items:center;column-gap:2px;width:100%;display:grid}.day-shift-input{width:66px;height:22px;box-shadow:none;box-sizing:border-box;color:#202124;text-align:center;background:0 0;border:none;border-radius:4px;outline:none;padding:0 2px;font-size:.72rem;line-height:1}.day-shift-input:disabled{opacity:.6;cursor:not-allowed}.day-shift-input:focus{box-shadow:none;outline:none}.day-shift-separator{color:#5f6368;text-align:center;font-size:.7rem;line-height:1}.default-shift-header,.default-shift-cell{white-space:nowrap;min-width:192px}.default-shift-content{grid-template-columns:72px auto 72px;justify-content:center;align-items:center;column-gap:2px;width:100%;display:grid}.default-shift-input{width:72px;height:22px;box-shadow:none;box-sizing:border-box;color:#202124;text-align:center;background:0 0;border:none;border-radius:4px;outline:none;padding:0 2px;font-size:.74rem;line-height:1}.default-shift-input:disabled{opacity:.6;cursor:not-allowed}.default-shift-input:focus{box-shadow:none;outline:none}.default-shift-separator{color:#5f6368;text-align:center;margin:0;font-size:.72rem;line-height:1}.day-shift-input::-webkit-datetime-edit{text-align:center;padding:0}.default-shift-input::-webkit-datetime-edit{text-align:center;padding:0}.day-shift-input::-webkit-datetime-edit-fields-wrapper{padding:0}.default-shift-input::-webkit-datetime-edit-fields-wrapper{padding:0}.day-shift-input::-webkit-inner-spin-button{display:none}.default-shift-input::-webkit-inner-spin-button{display:none}.day-shift-input::-webkit-calendar-picker-indicator{display:none}.default-shift-input::-webkit-calendar-picker-indicator{display:none}.two-column-layout{flex-wrap:wrap;gap:32px;min-height:0;display:flex}.left-column{flex-direction:column;flex:50%;gap:24px;min-height:0;display:flex}.right-column{flex-direction:column;flex:45%;gap:24px;min-height:0;display:flex}.content-section{background:#fff;border-radius:12px;flex-shrink:0;margin-bottom:24px;padding:32px 32px 24px;box-shadow:0 1px 4px #0000000a}.section-header{margin-bottom:16px}.section-header h2{color:#202124;margin:0 0 4px;font-size:1.3rem;font-weight:600}.section-description{color:#5f6368;margin:0;font-size:1rem}.schedule-form{flex-direction:column;gap:16px;display:flex}.primary-button{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:12px 24px;font-size:1rem;font-weight:600;transition:background .2s}.primary-button:hover:not(:disabled){background:var(--color-primary-dark)}.cron-description{color:#5f6368;margin-top:4px;font-size:.95rem;font-style:italic}.actions-grid{flex-wrap:wrap;gap:16px;display:flex}.action-button{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:6px;align-items:center;gap:8px;padding:12px 24px;font-size:1rem;font-weight:600;transition:background .2s;display:flex}.action-button.primary:hover:not(:disabled){background:var(--color-primary-dark)}.backup-list{flex-direction:column;flex:1;min-height:0;margin-top:16px;display:flex}.loading-state,.empty-state{color:#5f6368;flex-direction:column;align-items:center;gap:12px;padding:32px 0;display:flex}.loading-spinner{border:4px solid var(--gray-200);border-top:4px solid var(--color-primary);border-radius:50%;width:32px;height:32px;animation:1s linear infinite spin-adv-tabs}.backup-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px;margin-bottom:24px;display:grid}.backup-card{background:var(--gray-100);border:1px solid var(--gray-200);border-radius:10px;flex-direction:column;gap:16px;padding:20px 24px;display:flex;box-shadow:0 1px 4px #00000008}.backup-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.backup-info{flex-direction:column;gap:2px;display:flex}.backup-filename{color:#202124;font-size:1.1rem;font-weight:600}.backup-meta{color:#5f6368;gap:16px;font-size:.95rem;display:flex}.restore-icon-button{width:40px;height:40px;color:var(--color-primary);cursor:pointer;background:#e8f0fe;border:1px solid #d2e3fc;border-radius:10px;justify-content:center;align-items:center;transition:transform .2s,box-shadow .2s,background .2s;display:inline-flex}.restore-icon-button svg{width:20px;height:20px}.restore-icon-button:hover:not(:disabled){box-shadow:0 4px 10px rgba(var(--color-primary-rgb), .2);background:#d2e3fc;transform:translateY(-1px)}.restore-icon-button:disabled{opacity:.6;cursor:not-allowed;box-shadow:none;transform:none}.cron-fields-inline{margin-bottom:10px}.cron-label{margin-bottom:4px;font-weight:600;display:block}.cron-inline-row{align-items:flex-end;gap:8px;display:flex}.cron-inline-field{flex-direction:column;align-items:center;min-width:60px;max-width:80px;display:flex}.cron-inline-input{border:1px solid var(--gray-200);text-align:center;border-radius:4px;width:60px;padding:4px 6px;font-size:.95rem}.cron-inline-helper{color:#888;text-align:center;margin-top:2px;font-size:.8rem}.cron-inline-label{font-weight:500}.cron-inline-desc{color:#aaa;margin-left:2px;font-size:.8em}.cron-inline-explanations{color:#5f6368;margin-top:8px;font-size:.93rem}.cron-inline-explain{margin-bottom:2px}.cron-inline-examples{margin-left:8px}.example-tag{color:var(--color-primary);background:#e8f0fe;border-radius:4px;margin-right:4px;padding:1px 6px;font-size:.93rem;display:inline-block}@container app (width<=900px){.content-section{padding:20px 16px 16px}.two-column-layout{flex-direction:column}.left-column,.right-column{flex:100%}}.email-templates-tab{width:100%;max-width:1820px;margin:0 auto}.loading-container,.empty-state{border:1px dashed var(--gray-300);background:#fff;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:160px;display:flex}.empty-title{color:#374151;margin:0;font-size:1.06rem}.templates-layout{grid-template-columns:minmax(260px,320px) minmax(1040px,1fr);align-items:start;gap:20px;width:min(100%,1720px);margin:0 auto;display:grid}.templates-list{min-width:0}.types-grid{gap:14px;display:grid}.type-card{text-align:left;border:1px solid var(--gray-200);cursor:pointer;background:#fff;border-radius:14px;width:100%;padding:14px;transition:border-color .18s,box-shadow .18s}.type-card.active{border-color:var(--color-primary);box-shadow:0 10px 26px rgba(var(--color-primary-rgb), .15)}.type-content{align-items:center;display:flex}.type-info{min-width:0}.type-title{color:#1f2937;margin-bottom:8px;font-size:.98rem;font-weight:700}.type-details{color:#4b5563}.type-preview-box{background:0 0;border:none;border-radius:0;padding:0}.type-value{color:var(--gray-500);max-height:3.7em;font-size:.9rem;line-height:1.35;display:block;overflow:hidden}.type-value--placeholder{background:#eef2f7;border-radius:999px;width:100%;height:1.1em}.template-editor{background:#fff;border:1px solid #dbeafe;border-radius:14px;flex-direction:column;gap:12px;width:100%;min-width:0;padding:20px 22px;display:flex}.template-editor-content{grid-template-columns:minmax(0,1fr) 204px;align-items:start;gap:14px;display:grid}.subject-row{display:contents}.subject-label{color:#4b5563;grid-area:1/1;font-size:.92rem;font-weight:600}.subject-row .editor-shell--subject{grid-area:2/1}.form-group--body{grid-area:3/1}.form-group{flex-direction:column;gap:6px;display:flex}.form-group label{color:#4b5563;font-size:.92rem;font-weight:600}.form-input{border:1px solid var(--gray-300);color:#111827;resize:vertical;background:#fff;border-radius:10px;width:100%;padding:10px 12px;font-size:.95rem}.editor-shell{border:1px solid var(--gray-300);background:#fff;border-radius:10px;overflow:hidden}.editor-shell.disabled{opacity:.68;pointer-events:none}.toolbar{border-bottom:1px solid var(--gray-200);background:#f8fafc;align-items:center;gap:8px;padding:8px;display:flex}.toolbar-button{color:#334155;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:8px;min-width:32px;height:32px;font-weight:700}.toolbar-button--italic{font-style:italic}.toolbar-button--underline{text-decoration:underline}.toolbar-button--small{width:auto;padding:0 10px;font-weight:600}.toolbar-button:disabled{opacity:.6;cursor:not-allowed}.subject-editor{color:#111827;white-space:pre-wrap;word-break:break-word;min-height:40px;padding:10px 12px;font-size:.95rem;line-height:1.45;overflow:auto}.subject-editor:focus{outline:none}.rich-editor{color:#111827;min-height:320px;padding:10px 12px;font-size:.95rem;line-height:1.45;overflow:auto}.rich-editor:focus{outline:none}.rich-editor :is(p){margin:0 0 .7em}.rich-editor :is(ul){margin:0 0 .7em;padding-left:1.2rem}.rich-editor .placeholder-inline-chip,.subject-editor .placeholder-inline-chip,.type-value .placeholder-inline-chip{border:1px solid var(--gray-200);color:#374151;white-space:nowrap;-webkit-user-select:none;user-select:none;vertical-align:baseline;cursor:grab;background:#f1f3f6;border-radius:4px;align-items:center;margin:0 2px;padding:2px 8px;font-size:.8rem;font-weight:500;line-height:1.2;display:inline-flex}.rich-editor .placeholder-inline-chip.is-dragging,.subject-editor .placeholder-inline-chip.is-dragging{opacity:.7;cursor:grabbing}.placeholder-panel{border:1px solid var(--gray-300);background:0 0;border-radius:10px;grid-area:2/2/span 2;align-self:start;height:fit-content;margin-top:0;padding:10px;position:relative}.placeholder-list{flex-direction:column;gap:8px;display:flex}.placeholder-delete-overlay{z-index:4;pointer-events:none;background:#fff;border:1px dashed #fca5a5;border-radius:10px;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.placeholder-panel.is-delete-hover .placeholder-delete-overlay{background:#fff5f5;border-color:#b91c1c}.placeholder-delete-icon-wrap{color:#b91c1c;background:#fee2e2;border:none;border-radius:10px;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex;box-shadow:0 6px 12px #b91c1c33}.placeholder-delete-icon-wrap .trash-icon{width:16px;height:16px}.placeholder-badge{border:1px solid var(--gray-200);color:#374151;cursor:grab;text-align:left;background:#f1f3f6;border-radius:4px;padding:6px 9px;font-size:.8rem;font-weight:500}.placeholder-badge--confirm{background:var(--color-primary);border-color:var(--color-primary);color:#fff;font-weight:700}.placeholder-badge:active{cursor:grabbing}.placeholder-badge:disabled{opacity:.6;cursor:not-allowed}.form-actions{justify-content:flex-end;gap:10px;margin-top:4px;display:flex}.cancel-button,.save-button{border:1px solid var(--gray-300);color:#374151;cursor:pointer;background:#fff;border-radius:10px;padding:9px 16px;font-weight:600}.cancel-button--icon{justify-content:center;align-items:center;width:42px;min-width:42px;max-width:42px;height:42px;padding:0;display:inline-flex}.cancel-button-icon{width:18px;height:18px;display:block}.save-button{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.cancel-button:disabled,.save-button:disabled{opacity:.55;cursor:not-allowed}@container app (width<=980px){.templates-layout{grid-template-columns:1fr;width:100%}.template-editor-content{grid-template-columns:1fr;row-gap:10px}.subject-label,.subject-row .editor-shell--subject,.form-group--body,.placeholder-panel{grid-area:auto/1}.placeholder-panel{margin-top:0}}.sampling-types-tab{width:100%;max-width:1000px;margin:0 auto;padding:0}.header-content{flex:1}.tab-title{color:#202124;margin:0 0 8px;font-size:1.8rem;font-weight:700}.tab-description{color:#5f6368;margin:0;font-size:1rem;line-height:1.5}.add-button{background:var(--color-primary);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:8px;align-items:center;gap:8px;padding:12px 24px;font-weight:600;transition:all .2s;display:flex}.add-button:disabled{cursor:not-allowed;background:#dadce0}.error-message{color:#d93025;background:#fce8e6;border:1px solid #f28b82;border-radius:8px;align-items:center;gap:8px;margin-bottom:24px;padding:16px;display:flex}.form-container{border:1px solid var(--gray-200);background:#fff;border-radius:12px;margin-bottom:32px;box-shadow:0 2px 8px #0000000d}.form-header{border-bottom:1px solid var(--gray-200);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.form-header h3{color:#202124;margin:0;font-size:1.2rem;font-weight:600}.close-button{cursor:pointer;color:#5f6368;background:0 0;border:none;border-radius:4px;padding:4px;font-size:1.5rem;transition:all .2s}.close-button:hover{color:#202124;background:#f1f3f4}.form-content{padding:24px}.form-group{margin-bottom:24px}.follow-up-interval-row{grid-template-columns:minmax(0,160px) minmax(0,1fr);gap:12px;display:grid}.form-label{color:#202124;margin-bottom:8px;font-weight:600;display:block}.form-input{border:1px solid #dadce0;border-radius:8px;width:100%;padding:12px 16px;font-size:1rem;transition:border-color .2s}.form-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb), .1);outline:none}.form-input:disabled{background:var(--gray-100);color:#5f6368}.cancel-button,.save-button{cursor:pointer;border:none;border-radius:8px;padding:12px 24px;font-weight:600;transition:all .2s}.cancel-button{background:var(--gray-100);color:#5f6368;border:1px solid #dadce0}.cancel-button:hover:not(:disabled){color:#202124;background:#f1f3f4}.save-button{background:var(--color-primary);color:#fff}.save-button:hover:not(:disabled){background:var(--color-primary-dark)}.save-button:disabled,.cancel-button:disabled{opacity:.6;cursor:not-allowed}.loading-container{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:64px 24px;display:flex}.loading-spinner{border:3px solid var(--gray-200);border-top:3px solid var(--color-primary);border-radius:50%;width:40px;height:40px;margin-bottom:16px;animation:1s linear infinite spin-adv-tabs}.loading-text{color:#5f6368;margin:0}.empty-state{text-align:center;border:1px solid var(--gray-200);background:#fff;border-radius:12px;padding:64px 24px}.empty-icon{color:#1a73e8;letter-spacing:1px;background:linear-gradient(135deg,#e8f0fe,#d2e3fc);border-radius:12px;justify-content:center;align-items:center;width:56px;height:56px;margin:0 auto 16px;font-weight:700;display:flex}.empty-title{color:#202124;margin:0 0 8px;font-size:1.5rem;font-weight:600}.empty-description{color:#5f6368;margin:0 0 24px;line-height:1.5}.empty-action-button{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:12px 24px;font-weight:600;transition:all .2s}.empty-action-button:hover{background:var(--color-primary-dark);transform:translateY(-1px)}.sampling-types-list{border:1px solid var(--gray-200);background:#fff;border-radius:12px;overflow:hidden}.list-header{border-bottom:1px solid var(--gray-200);background:var(--gray-100);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.list-title{color:#202124;margin:0;font-size:1.2rem;font-weight:600}.list-count{color:#5f6368;font-size:.9rem}.types-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;padding:16px;display:grid}.type-card{border:1px solid var(--gray-200);cursor:pointer;background:#fff;border-radius:8px;padding:16px;transition:all .2s}.type-card:hover{border-color:var(--color-primary);box-shadow:0 2px 8px rgba(var(--color-primary-rgb), .1)}.type-content{justify-content:space-between;align-items:center;display:flex}.type-info{flex:1}.type-header{align-items:baseline;gap:12px;margin-bottom:8px;display:flex}.type-value{color:var(--gray-500);font-size:.95rem;font-weight:500}.type-badge{color:#1967d2;background:#e8f0fe;border-radius:4px;padding:4px 8px;font-size:.85rem;font-weight:500}.type-details{color:#5f6368;flex-direction:column;gap:6px;font-size:.85rem;display:flex}.follow-up-display{color:#5f6368;font-size:.9rem}@container app (width<=640px){.follow-up-interval-row{grid-template-columns:1fr}}.type-duration{font-weight:500}.duration-display{color:#5f6368;border:1px solid var(--gray-200);border-radius:8px;align-items:center;gap:6px;padding:6px 10px;display:inline-flex}.duration-icon{width:16px;height:16px;display:block}.duration-value{color:#202124;font-weight:600}.type-actions{gap:8px;display:flex}.delete-button{cursor:pointer;color:#ea4335;background:0 0;border:none;border-radius:6px;padding:8px;transition:all .2s}.delete-button:hover:not(:disabled){background:#fce8e6}.delete-button:disabled{opacity:.5;cursor:not-allowed}.trash-icon{width:16px;height:16px;display:block}@container app (width<=768px){.tab-header{flex-direction:column;align-items:stretch;gap:16px}.types-grid{grid-template-columns:1fr}.form-actions{flex-direction:column}}.user-management{--user-content-width:min(100%, 800px);flex-direction:column;gap:16px;width:100%;max-width:1200px;min-height:0;margin:0 auto;display:flex}.user-header{width:var(--user-content-width);justify-content:flex-start;align-items:center;margin:0 auto;display:flex}.header-actions{align-items:center;gap:8px;display:flex}.add-button{color:#fff;cursor:pointer;background:#3b82f6;border:1px solid #3b82f6;border-radius:8px;justify-content:center;align-items:center;gap:4px;height:40px;padding:8px 12px;font-size:.85rem;font-weight:600;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex}.add-button .icon{font-size:1.6rem;font-weight:700;line-height:1;transform:translateY(-1px)}.add-button:hover:not(:disabled){background:#2563eb;border-color:#2563eb;transform:translateY(-1px);box-shadow:0 2px 8px #3b82f640}.user-list{max-height:60vh;width:var(--user-content-width);gap:12px;margin:0 auto;padding-right:4px;display:grid;overflow-y:auto}.user-row{background:#fff;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:12px;display:flex;box-shadow:0 4px 12px #0f172a0f}@container app (width<=1024px){.user-management{--user-content-width:100%}.user-row{width:100%}}.user-info{flex-direction:column;gap:4px;min-width:0;display:flex}.user-name{color:#0f172a;font-size:18px;font-weight:700}.user-meta{color:#64748b;white-space:nowrap;text-overflow:ellipsis;font-size:14px;overflow:hidden}.user-actions{flex-shrink:0;gap:8px;display:flex}.state-text{color:#64748b;font-size:14px}.state-text.error{color:#b91c1c}.primary-button{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:8px;padding:8px 16px;font-size:15px;font-weight:600}.primary-button:disabled{opacity:.6;cursor:not-allowed}.ghost-button{color:#0f172a;cursor:pointer;background:#f1f5f9;border:none;border-radius:8px;padding:6px 12px;font-size:15px;font-weight:600}.danger-button{color:#b91c1c;cursor:pointer;background:#fee2e2;border:none;border-radius:8px;padding:6px 12px;font-size:15px;font-weight:600}.user-modal-overlay{z-index:2000;box-sizing:border-box;background:#0f172a8c;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.user-modal{background:#fff;border-radius:12px;flex-direction:column;gap:16px;width:min(520px,92vw);padding:20px;display:flex;box-shadow:0 20px 50px #0f172a40}.modal-header{justify-content:space-between;gap:12px;display:flex}.modal-header h3{color:#0f172a;margin:0;font-size:22px}.modal-header p{color:#64748b;margin:4px 0 0;font-size:15px}.form-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;display:grid}.field{color:#475569;flex-direction:column;gap:6px;font-size:14px;font-weight:600;display:flex}.field input,.field select{color:#0f172a;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:10px 12px;font-size:16px}.two-fa-controls{justify-content:space-between;align-items:center;gap:12px;display:flex}.two-fa-checkbox{color:#475569;align-items:center;gap:8px;font-size:14px;font-weight:600;display:inline-flex}.two-fa-checkbox input[type=checkbox]{width:16px;height:16px;margin:0}.reset-two-fa-button{white-space:nowrap}.field input:disabled{color:#64748b;background:#e2e8f0}.modal-actions{justify-content:flex-end;gap:10px;display:flex}.helper-text{color:#64748b;margin:0;font-size:13px}.error-text{color:#b91c1c}.visit-types-tab{width:100%;max-width:1000px;margin:0 auto;padding:0}.tab-header{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:32px;display:flex}.add-button{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:8px;align-items:center;gap:8px;padding:12px 24px;font-weight:600;transition:all .2s;display:flex}.add-button:hover:not(:disabled){background:var(--color-primary-dark);transform:translateY(-1px)}.button-icon{font-size:18px;font-weight:700}.error-message{color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin-bottom:24px;padding:12px 16px}.form-container{border:1px solid var(--gray-200);background:#fff;border-radius:12px;margin-bottom:24px}.form-header{justify-content:space-between;align-items:center;padding:20px 24px 0;display:flex}.form-content{gap:16px;padding:20px 24px 24px;display:grid}.form-group{gap:8px;display:grid}.form-label{color:#1f2937;font-weight:600}.form-input{border:1px solid var(--gray-300);border-radius:8px;width:100%;padding:10px 12px;font-size:.95rem}.fancy-select{appearance:none;cursor:pointer;background-color:#fff;background-image:linear-gradient(45deg, transparent 50%, var(--color-primary) 50%), linear-gradient(135deg, var(--color-primary) 50%, transparent 50%);color:var(--gray-900);background-position:calc(100% - 22px),calc(100% - 16px);background-repeat:no-repeat;background-size:6px 6px,6px 6px;border:1px solid #d6e4ff;border-radius:12px;min-height:42px;padding:10px 40px 10px 14px;font-weight:600;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 8px #0f172a14}.fancy-select:hover:not(:disabled){background-color:#f2f7ff;border-color:#b8d2ff;box-shadow:0 4px 12px #0f172a1f}.fancy-select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb), .2);outline:none}.fancy-select:disabled{color:#94a3b8;box-shadow:none;cursor:not-allowed;opacity:.8;background-color:#f1f5f9;border-color:#cbd5e1}.checkbox-option{color:#1f2937;align-items:center;gap:8px;font-weight:500;display:inline-flex}.form-actions{justify-content:flex-end;gap:12px;display:flex}.cancel-button,.save-button,.empty-action-button{cursor:pointer;border:1px solid #0000;border-radius:8px;padding:10px 16px;font-weight:600}.cancel-button{color:#374151;background:#f3f4f6}.save-button,.empty-action-button{background:var(--color-primary);color:#fff}.empty-state{border:1px solid var(--gray-200);text-align:center;background:#fff;border-radius:12px;padding:40px 24px}.empty-icon{color:#1d4ed8;background:#e8f0fe;border-radius:14px;place-items:center;width:56px;height:56px;margin:0 auto 12px;font-weight:700;display:grid}.empty-title{color:#111827;margin:0 0 8px}.empty-description{color:var(--gray-500);margin:0 0 16px}.loading-container{color:var(--gray-500);place-items:center;gap:10px;padding:32px;display:grid}.loading-spinner{border:3px solid var(--gray-200);border-top-color:#3b82f6;border-radius:9999px;width:28px;height:28px;animation:.8s linear infinite spin-adv-tabs}.visit-types-list{border:1px solid var(--gray-200);background:#fff;border-radius:12px;padding:20px}.types-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;display:grid}.type-card{border:1px solid var(--gray-200);background:#fff;border-radius:10px;transition:box-shadow .12s;overflow:hidden}.type-card:hover{box-shadow:0 8px 20px -16px #00000059}.type-content{justify-content:space-between;align-items:flex-start;gap:12px;padding:14px;display:flex}.type-info{gap:8px;display:grid}.type-header{align-items:center;gap:8px;display:flex}.type-badge{color:#1d4ed8;background:#eff6ff;border-radius:999px;align-items:center;padding:4px 10px;font-size:.85rem;font-weight:700;display:inline-flex}.type-id{color:var(--gray-500);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.82rem}.default-toggle{color:#374151;align-items:center;gap:8px;font-size:.9rem;display:inline-flex}.type-actions{align-items:flex-start;display:flex}.delete-button{color:var(--gray-400);cursor:pointer;background:0 0;border:none;padding:4px}.delete-button:hover:not(:disabled){color:#ef4444}.type-follow-up{border-top:1px solid #f3f4f6;gap:12px;padding:0 14px 14px;display:grid}.type-follow-up-label{color:#4b5563;margin-top:2px;font-size:.82rem;font-weight:600}.type-follow-up-controls{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.type-follow-up-secondary-row{width:100%}.type-follow-up-select{min-height:42px}.type-inline-setting{width:100%;min-width:0}.type-inline-label{color:#4b5563;font-size:.82rem;font-weight:600}.type-inline-setting-dropdown-row{width:100%;margin-top:8px}.type-inline-setting-dropdown-row .type-follow-up-select{width:calc(50% - 5px);min-width:0}.trash-icon{width:18px;height:18px}.close-button{color:var(--gray-400);cursor:pointer;background:0 0;border:none;font-size:1.5rem;line-height:1}@container app (width<=700px){.type-inline-setting{width:100%}}:scope .add-button{background:var(--color-primary);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:8px;flex-shrink:0;align-items:center;gap:8px;width:auto;height:auto;padding:12px 24px;font-size:1rem;font-weight:600;transition:all .2s;display:flex}:scope .add-button:hover:not(:disabled){background:var(--color-primary-dark);border-color:#0000;transform:translateY(-1px)}:scope .add-button:disabled{cursor:not-allowed;opacity:1;background:#dadce0}.user-management .add-button{color:#fff;cursor:pointer;background:#3b82f6;border:1px solid #3b82f6;border-radius:8px;justify-content:center;align-items:center;gap:4px;height:40px;padding:8px 12px;font-size:.85rem;font-weight:600;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex}.user-management .add-button:hover:not(:disabled){background:#2563eb;border-color:#2563eb;transform:translateY(-1px);box-shadow:0 2px 8px #3b82f640}.address-types-tab .types-grid,.sampling-types-tab .types-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;padding:16px}.address-types-tab .type-card,.sampling-types-tab .type-card{border-radius:8px;padding:16px;overflow:visible}.address-types-tab .type-card:hover,.sampling-types-tab .type-card:hover{border-color:var(--color-primary);box-shadow:0 2px 8px rgba(var(--color-primary-rgb), .1)}.address-types-tab .type-content,.sampling-types-tab .type-content{align-items:center;padding:0}.address-types-tab .type-info,.sampling-types-tab .type-info{flex:1;display:block}.address-types-tab .type-header{align-items:baseline;gap:10px;margin-bottom:4px}.sampling-types-tab .type-header{align-items:baseline;gap:12px;margin-bottom:8px}.address-types-tab .type-badge{border-radius:8px;gap:6px;padding:6px 10px;font-size:.95rem;font-weight:700}.sampling-types-tab .type-badge{color:#1967d2;background:#e8f0fe;border-radius:4px;padding:4px 8px;font-size:.85rem;font-weight:500}.address-types-tab .type-id{color:var(--gray-500);font-family:inherit;font-size:.9rem}.address-types-tab .delete-button,.sampling-types-tab .delete-button{color:#ea4335;border-radius:6px;padding:8px}.address-types-tab .delete-button:hover:not(:disabled),.sampling-types-tab .delete-button:hover:not(:disabled){color:#ea4335;background:#fce8e6}.address-types-tab .trash-icon,.sampling-types-tab .trash-icon{width:16px;height:16px}.address-types-tab .form-header,.sampling-types-tab .form-header{border-bottom:1px solid var(--gray-200);padding:20px 24px}.address-types-tab .form-content,.sampling-types-tab .form-content{padding:24px;display:block}.address-types-tab .form-group,.sampling-types-tab .form-group{display:block}.address-types-tab .form-input,.sampling-types-tab .form-input{border:1px solid #dadce0;padding:12px 16px;font-size:1rem}.address-types-tab .form-input:disabled,.sampling-types-tab .form-input:disabled{background:var(--gray-100);color:#5f6368}.address-types-tab .close-button,.sampling-types-tab .close-button{color:#5f6368;border-radius:4px;padding:4px}.address-types-tab .close-button:hover,.sampling-types-tab .close-button:hover{color:#202124;background:#f1f3f4}.address-types-tab .cancel-button,.address-types-tab .save-button,.sampling-types-tab .cancel-button,.sampling-types-tab .save-button{padding:12px 24px}.address-types-tab .cancel-button,.sampling-types-tab .cancel-button{background:var(--gray-100);color:#5f6368;border:1px solid #dadce0}.address-types-tab .cancel-button:hover:not(:disabled),.sampling-types-tab .cancel-button:hover:not(:disabled){color:#202124;background:#f1f3f4}.visit-types-tab .form-group{margin-bottom:0}.email-templates-tab .form-group{flex-direction:column;gap:6px;margin-bottom:0;display:flex}.visit-types-tab .types-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;padding:0}.email-templates-tab .types-grid{grid-template-columns:none;gap:14px;padding:0}.email-templates-tab .type-value{font-size:.9rem;font-weight:400}.two-column-layout .loading-state,.two-column-layout .empty-state{color:#5f6368;background:0 0;border:none;border-radius:0;flex-direction:column;align-items:center;gap:12px;min-height:0;padding:32px 0;display:flex}.availability-tab .day-shift-input,.availability-tab .default-shift-input{font-family:monospace}.contracts-tab .ve-prices-grid{flex-direction:column;gap:8px;display:flex}.contracts-tab .ve-price-row{align-items:center;gap:10px;display:flex}.contracts-tab .ve-price-label{min-width:140px;color:var(--gray-700);font-size:.85rem;font-weight:500}.contracts-tab .ve-price-unit{color:var(--gray-500);white-space:nowrap;font-size:.78rem}.contracts-tab .contracts-input--narrow{max-width:140px}.contracts-tab .contracts-card-details{white-space:pre-line;flex-direction:column;gap:2px;display:flex}.visit-type-color-row{align-items:center;gap:10px;display:flex}.visit-type-color-row input[type=color]{border:1px solid var(--gray-200);cursor:pointer;background:#fff;border-radius:6px;width:44px;height:32px;padding:2px}}@keyframes spin-adv-tabs{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@scope(.route-details-page){.sampler{flex-direction:column;width:100%;display:flex}.sampler-grid{grid-template-columns:repeat(2,1fr);gap:12px;width:100%;display:grid}.sample-item{border:1px solid var(--color-surface-muted);width:100%;height:50px;color:var(--color-text-strong);background-color:var(--color-surface);cursor:pointer;border-radius:8px;align-items:center;padding:0 16px;font-family:Roboto,sans-serif;font-size:16px;font-weight:500;transition:background .2s,border .2s,color .2s;display:flex}.sample-item.selected{background:var(--color-primary);color:var(--color-text-inverse);border:2px solid var(--color-primary)}.loading,.error{text-align:center;width:100%;color:var(--color-text-strong);padding:20px}.error{color:var(--color-error)}@container app (width<=480px){.sample-item{height:40px;font-size:14px}}}@scope(.route-details-page){:scope{box-sizing:border-box;background:#fff;border-radius:20px;flex:auto;width:100%;min-width:0;max-width:100%;min-height:0;max-height:100%;margin:0 auto;padding:8px;overflow:clip auto;box-shadow:0 2px 10px #00000014;container:route-page/size}.page-layout{box-sizing:border-box;grid-template-columns:auto minmax(0,1fr) auto;justify-content:center;align-items:flex-start;column-gap:20px;width:100%;min-width:0;max-width:100%;display:grid}.page-layout:after{content:"";width:160px}.page-layout--bwb-compact{column-gap:12px}.page-layout--bwb-compact:after{width:120px}.admin-sampler-container{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-sizing:border-box;background:#fff;border:3px dashed #f59e0b;border-radius:16px;justify-self:start;width:160px;height:fit-content;padding:20px;position:sticky;top:20px;box-shadow:0 4px 20px #00000014,0 1px 3px #0000001a}.admin-sampler-container--bwb{border-width:2px;border-radius:12px;width:120px;padding:12px}.admin-sampler-badges.disabled{opacity:.5;pointer-events:none}.admin-separator{background:#e2e8f0;height:1px;margin:16px 0}.admin-publish-row{width:100%;margin-bottom:10px}.admin-email-buttons{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%;margin-bottom:10px;display:grid}.admin-email-button{color:#94a3b8;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:8px;justify-content:center;align-items:center;width:100%;height:40px;font-size:.85rem;font-weight:700;text-decoration:none;transition:all .2s;display:inline-flex}.admin-email-button:hover{color:#64748b;background:#f8fafc;border-color:#cbd5e1}.admin-email-button--reduced{flex-direction:column;gap:2px}.admin-email-icon{color:currentColor;width:32px;height:32px}.admin-email-icon--small{width:18px;height:18px}.admin-email-label{letter-spacing:.02em;color:currentColor;font-size:.7rem;font-weight:700;line-height:1}.admin-export-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%;margin-bottom:10px;display:grid}.admin-export-button{color:#94a3b8;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:8px;justify-content:center;align-items:center;width:100%;height:40px;transition:all .2s;display:inline-flex}.admin-export-button:hover{color:#64748b;background:#f8fafc;border-color:#cbd5e1}.admin-export-icon{color:currentColor;width:22px;height:22px}.admin-action-buttons{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%;display:grid}.admin-controls-row--bwb{grid-template-columns:minmax(0,1fr);justify-items:center}.admin-controls-row--bwb .admin-export-button,.admin-controls-row--bwb .admin-back-button{width:48px}.admin-back-button{color:#fff;cursor:pointer;background:#3b82f6;border:1px solid #2563eb;border-radius:8px;justify-content:center;align-items:center;width:100%;height:40px;transition:all .2s;display:flex}.admin-back-button:hover{background:#2563eb;border-color:#1d4ed8}.back-icon{flex-shrink:0}.admin-publish-button{color:#fff;cursor:pointer;background:#10b981d9;border:1px solid #059669;border-radius:8px;justify-content:center;align-items:center;width:100%;height:40px;font-weight:700;transition:all .2s;display:flex}.admin-publish-button--draft{background:var(--color-primary);border-color:#2563eb}.admin-publish-button--draft:hover:not(:disabled){background:#2563eb;border-color:#1d4ed8}.admin-publish-button--unpublish{background:#f59e0b;border-color:#d97706}.admin-publish-button--unpublish:hover:not(:disabled){background:#d97706;border-color:#b45309}.admin-publish-button:hover:not(:disabled):not(.admin-publish-button--draft):not(.admin-publish-button--unpublish){background:#059669;border-color:#047857}.admin-publish-button:disabled{opacity:.5;cursor:not-allowed;background:var(--gray-100);color:#94a3b8;border-color:#e2e8f0}.publish-prompt-text{color:#111827;text-align:center;margin:0;font-size:1.1rem;font-weight:600}.publish-prompt-modal{width:min(1100px,100% - 64px)}@container app (width<=768px){.publish-prompt-modal{width:min(560px,100% - 32px)}}.admin-delete-button{color:#dc2626;cursor:pointer;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;justify-content:center;align-items:center;width:100%;height:40px;transition:all .2s;display:flex}.admin-delete-button:hover:not(.disabled){color:#b91c1c;background:#fee2e2;border-color:#fca5a5}.admin-delete-button.disabled{opacity:.5;cursor:not-allowed;background:var(--gray-100);color:#94a3b8;border-color:#e2e8f0}.delete-icon{flex-shrink:0}.admin-sampler-badges{flex-direction:column;align-items:center;gap:6px;display:flex}.admin-sampler-badge{cursor:pointer;color:#334155;text-align:center;background:#fff;border:1px solid #e2e8f0;border-radius:6px;justify-content:center;align-items:center;width:fit-content;min-width:100px;padding:8px 12px;font-weight:500;transition:all .2s;display:inline-flex}.admin-sampler-badge:hover:not(.disabled),.admin-sampler-badge.current{color:#fff;background:#f59e0b;border-color:#f59e0b}.admin-sampler-badge.disabled{opacity:.4;cursor:not-allowed;color:#94a3b8;background:#f8fafc;border-color:#e2e8f0}.admin-sampler-badge.saving{opacity:.8;cursor:not-allowed;color:#fff;background:#f59e0b;border-color:#f59e0b}.saving-indicator{justify-content:center;align-items:center;display:flex}.route-details-view{background:var(--color-surface);box-sizing:border-box;border-radius:12px;flex:0 auto;justify-self:center;width:min(800px,100%);min-width:0;max-width:min(800px,100%);overflow:hidden;box-shadow:0 2px 12px #0000001a}.route-details-view--dashboard{width:min(980px,100%);max-width:min(980px,100%)}.route-details-view--from-routes{width:min(860px,100%);max-width:min(860px,100%)}.route-details-view--published-layout,.route-details-view--sampler{width:min(980px,100%);max-width:min(980px,100%)}.route-details-view--sampler,.route-details-view--sampler.route-details-view--dashboard,.route-details-view--sampler.route-details-view--from-routes,.route-details-view--sampler.route-details-view--published-layout,.route-details-view--sampler.route-details-view--completed-layout,.route-details-view--sampler.route-details-view--from-routes.route-details-view--completed-layout,.route-details-view--sampler.route-details-view--dashboard.route-details-view--completed-layout{width:min(980px,100%)!important;max-width:min(980px,100%)!important}.route-details-view--completed-layout{width:min(1172px,100%);max-width:min(1172px,100%)}.route-details-view--dashboard.route-details-view--completed-layout,.route-details-view--from-routes.route-details-view--completed-layout{width:min(1352px,100%);max-width:min(1352px,100%)}.route-details-view--sampler.route-details-view--completed-layout{width:min(980px,100%);max-width:min(980px,100%)}.page-layout--with-side-controls{grid-template-columns:auto minmax(0,1fr)}.page-layout--with-side-controls:has(.route-details-map-panel){grid-template-columns:auto minmax(0,1fr) minmax(320px,1fr)}@container app (width>=1101px){:scope:has(.page-layout--with-side-controls .route-details-map-panel){overflow-y:hidden}.page-layout--with-side-controls:has(.route-details-map-panel){align-items:stretch;height:100%;min-height:0;overflow:hidden}.page-layout--with-side-controls:has(.route-details-map-panel)>.route-details-view{box-sizing:border-box;min-height:0;max-height:100%;overflow:clip auto;width:100%!important;max-width:100%!important}.page-layout--with-side-controls:has(.route-details-map-panel) .route-details-map-panel{align-self:stretch;height:auto;position:static}}.page-layout--with-side-controls:has(.route-map-rail){grid-template-columns:auto minmax(0,1fr) 36px}@container app (width>=1801px){.page-layout--with-side-controls:has(.route-editor-map-inline){grid-template-columns:auto minmax(0,1fr) minmax(320px,1fr)}}@container app (width>=769px) and (width<=1800px){.page-layout--with-side-controls:has(.route-editor-map-inline){grid-template-columns:auto minmax(0,1fr)}:scope:has(.route-editor-map-inline){width:calc(100% - 48px)}}.route-map-rail{align-self:start;height:calc(100cqh - 40px);position:sticky;top:12px}.route-details-map-panel{box-sizing:border-box;border:2px solid var(--color-primary);background:#fafdff;border-radius:16px;align-self:start;min-width:320px;height:calc(100cqh - 40px);min-height:280px;position:sticky;top:12px;overflow:hidden}@container app (width<=1100px){.page-layout--with-side-controls:has(.route-details-map-panel){grid-template-columns:auto minmax(0,1fr)}.route-details-map-panel{display:none}}.route-editor-map-rail{display:none!important}@container app (width<=1800px){.route-editor-map-inline{display:none!important}.route-editor-map-rail{align-self:stretch;width:36px;position:fixed;top:62px;bottom:12px;right:12px;height:auto!important;display:flex!important}}.route-editor-drawer-map{border:2px solid var(--color-primary);background:#fafdff;border-radius:16px;margin:8px;overflow:hidden}@container app (width>=1101px) and (width<=1800px){.page-layout--with-side-controls:has(.route-details-map-panel)>.route-details-view{width:100%!important;max-width:1240px!important}}.route-details-view .waypoint-comment{min-width:0;max-width:100%}.route-details-view .waypoint-comment-input,.route-details-view .waypoint-comment textarea{box-sizing:border-box;overflow-wrap:anywhere;resize:none;width:100%;min-width:0;max-width:100%}.page-layout--with-side-controls:after{content:none;width:0}.page-layout--with-side-controls .route-details-view{justify-self:start}@container app (width>=769px){.page-layout--from-routes{justify-content:center;align-items:flex-start;width:100%;display:flex}.page-layout--from-routes:after{display:none}.page-layout--from-routes>.route-details-view{flex:0 auto;justify-self:center;min-width:0;width:min(980px,100%)!important;max-width:min(980px,100%)!important}}.route-content-container{box-sizing:border-box;flex-direction:column;align-items:stretch;width:100%;min-width:0;max-width:100%;display:flex}h1{color:var(--color-text-strong);margin-bottom:24px}.loading,.error,.empty-state{text-align:center;background:var(--color-surface-alt);border-radius:8px;margin:20px 0;padding:20px}.error{color:var(--color-error)}.empty-state{color:var(--color-text-light);padding:40px 20px}.route-details-view{background:var(--color-surface);border-radius:20px;overflow:hidden;box-shadow:0 2px 10px #00000014}.route-details-header{background:var(--color-primary);color:var(--color-text-inverse);flex-direction:column;justify-content:center;align-items:center;gap:24px;min-height:120px;padding:30px 20px;transition:min-height .3s;display:flex;position:relative}.route-details-header--with-badges{min-height:110px}.sampler-badges-container{z-index:100;flex-wrap:wrap;justify-content:center;gap:6px;max-width:calc(100% - 40px);display:flex;position:absolute;top:8px;left:50%;transform:translate(-50%)}.sampler-badge-option{color:#000;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #ffffff4d;border-radius:16px;justify-content:center;align-items:center;gap:4px;height:32px;padding:7px 12px 9px;font-size:13px;font-weight:600;line-height:1;transition:all .2s;display:flex;box-shadow:0 2px 4px #0000001a}.sampler-badge-option:hover{background:var(--gray-100);border-color:#ffffffb3;transform:translateY(-2px);box-shadow:0 4px 8px #00000026}.sampler-badge-option.current{color:#000;text-shadow:0 0 1px #0000004d;letter-spacing:.5px;background:#fff;border:3px solid #000;justify-content:center;align-items:center;height:34px;padding:8px 13px 10px;font-size:14px;line-height:1;display:flex;box-shadow:0 2px 4px #0000001a;font-weight:900!important}.sampler-badge-option.current:hover{background:var(--gray-100);border-color:#000}.sampler-badge-option.saving{opacity:.7;cursor:not-allowed}.sampler-badge-option.disabled{opacity:.5;cursor:not-allowed;background:var(--gray-100);color:var(--gray-400);border-color:var(--gray-300)}.sampler-badge-option.disabled:hover{background:var(--gray-100);color:var(--gray-400);border-color:var(--gray-300);transform:none;box-shadow:0 2px 4px #0000001a}.sampler-badge-option.disabled.current{background:var(--gray-100);color:var(--gray-400);border-color:var(--gray-400);font-weight:900!important}.saving-indicator{color:var(--gray-500);align-items:center;display:flex}.spinner{animation:1s linear infinite spin-route-details}.route-details-header--started{background:#16a34ad9}.route-details-header--completed{background:#64748b}.route-details-header--generated{background:#f59e0b}.route-info{text-align:center;z-index:10;flex-direction:column;flex:1;gap:16px;max-width:400px;margin:24px auto 0;display:flex;position:relative}.route-details-view--completed-layout .route-info{max-width:520px}.route-details-header--with-badges .route-info{margin-top:30px}.btn-back{color:var(--color-text-inverse);cursor:pointer;background:#ffffff1a;border:2px solid #ffffff4d;border-radius:8px;padding:10px 20px;font-size:14px;font-weight:600;transition:all .2s;position:absolute;top:50%;left:20px;transform:translateY(-50%)}.btn-back:hover{background:#fff3;border-color:#ffffff80;box-shadow:0 4px 8px #fff3}.btn-edit{color:#f59e0b;cursor:pointer;background:#fff;border:2px solid #f59e0b;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;padding:12px;transition:all .2s;display:flex;position:absolute;top:50%;left:20px;transform:translateY(-50%)}.btn-edit:hover{color:#fff;background:#f59e0b;border-color:#d97706;transform:translateY(-50%);box-shadow:0 4px 8px #f59e0b4d}.btn-edit svg{width:20px;height:20px}.desktop-only{display:block}.btn-start-route{color:var(--color-text-inverse);cursor:pointer;background:#ffffff1a;border:2px solid #ffffff4d;border-radius:8px;padding:10px 20px;font-size:14px;font-weight:600;transition:all .2s;position:absolute;top:50%;right:20px;transform:translateY(-50%)}.btn-start-route:hover{background:#fff3;border-color:#ffffff80;transform:translateY(-50%);box-shadow:0 4px 8px #fff3}.mobile-only{display:none}.route-info{flex:1}.route-info h2{word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;margin:0;font-size:1.5em;line-height:1.3}.route-name-container{min-height:1.5em;position:relative}.route-name.clickable{cursor:pointer;border:2px solid #0000;border-radius:4px;padding:4px 8px;transition:all .2s}.route-name.clickable:hover{background:#ffffff1a;border-color:#ffffff4d;transform:none}@container app (width<=768px){.route-name.clickable{pointer-events:none;cursor:default!important}.route-name.clickable:hover{background:0 0!important;border-color:#0000!important;transform:none!important}}.route-name-edit{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:2px solid #ffffff4d;border-radius:8px;justify-content:center;align-items:center;min-height:2em;padding:8px 12px;display:flex;position:relative}.route-name-input{color:var(--color-text-inverse);text-align:center;box-sizing:border-box;background:0 0;border:none;outline:none;width:100%;height:auto;margin:0;padding:0;font-family:inherit;font-size:1.5em;font-weight:600;line-height:1.3}.route-name-input::placeholder{color:#fff9}.route-name-input:disabled{opacity:.6;cursor:not-allowed}.saving-indicator{justify-content:center;align-items:center;display:flex;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.spinner{width:16px;height:16px;animation:1s linear infinite spin-route-details}.route-date{opacity:.8;font-size:.9em}.route-date.clickable{cursor:pointer;color:#1f2937;letter-spacing:.5px;background:#fff;border:2px solid #ffffff4d;border-radius:12px;padding:12px 20px;font-weight:500;transition:all .2s;box-shadow:0 4px 12px #0000001a}.route-date.clickable:hover{background:var(--gray-100);border-color:#ffffff80;transform:none;box-shadow:0 6px 20px #00000026}.route-date.clickable:active{transform:translateY(0);box-shadow:0 4px 12px #0003}.route-date-container{flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:1.5em;display:flex;position:relative}.route-date-picker{justify-content:center;display:flex;position:relative}.date-calendar{margin:0}.route-date-popover{z-index:40;position:absolute;top:calc(100% + 10px);left:50%;transform:translate(-50%)}.route-date-popover .calendar{background:#fffffff2;border-radius:8px;max-width:320px;margin:0 auto;padding:16px;box-shadow:0 4px 12px #00000026}.route-date-popover .calendar-header{background:0 0;border:none;justify-content:center;align-items:center;padding:0 0 12px;display:flex}.route-date-popover .current-month{color:#1f2937;font-size:16px;font-weight:600}.route-date-popover .nav-button{display:none}.route-date-popover .weekdays{background:0 0;border:none;padding:0 0 8px}.route-date-popover .weekday{color:var(--gray-500);font-size:12px;font-weight:500}.route-date-popover .days{gap:4px}.route-date-popover .day{color:#374151;font-weight:500;transition:all .2s}.route-date-popover .day:hover{background-color:var(--gray-200);color:#1f2937}.route-date-popover .day.selected{color:#fff;background-color:#3b82f6}.route-date-popover .day.today{color:#1f2937;background-color:#f3f4f6;font-weight:600}.route-status{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);letter-spacing:.3px;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;margin-top:0;padding:8px 16px;font-size:.9em;font-weight:500}.route-source{opacity:.9;margin:0;font-size:.85em;font-weight:500}.route-content-container--paged{padding-bottom:72px}:scope.route-details-page--paged{width:auto;max-width:none;margin:-8px;padding:0}:scope.route-details-page--paged .page-layout{column-gap:0}.route-details-view--bare{width:100%;max-width:100%;box-shadow:none;background:0 0;border-radius:0;overflow:visible}:scope.route-details-page--paged .route-details-header .route-info{margin-top:0}:scope.route-details-page--paged .waypoints-list{gap:0;padding:6px 12px}:scope.route-details-page--paged .waypoints-list .waypoint-item{margin-bottom:0}:scope.route-details-page--paged .waypoints-list .waypoint-ticket{box-shadow:none;border-radius:0}:scope.route-details-page--paged .waypoints-list .waypoint-item+.waypoint-item{border-top:1px solid #e8edf4}:scope.route-details-page--paged .waypoint-actions{margin-bottom:0}:scope.route-details-page--paged .waypoints-list .waypoint-ticket{gap:4px}:scope.route-state--started .waypoint-number,:scope.route-state--started .stop-subheader-cell--number{background:#16a34a}:scope.route-state--completed .waypoint-number,:scope.route-state--completed .stop-subheader-cell--number{background:#64748b}:scope.route-state--generated .waypoint-number,:scope.route-state--generated .stop-subheader-cell--number{background:#f59e0b}.ticket-pager-footer{z-index:40;padding:0 0 env(safe-area-inset-bottom,0px);background:#fff;border-top:1px solid #e5e7eb;justify-content:space-between;align-items:stretch;gap:0;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 16px #0f172a14}.ticket-pager-btn{height:56px;color:var(--gray-900);cursor:pointer;background:#fafdff;border:none;border-radius:0;flex:1;font-size:14px;font-weight:600;transition:all .2s cubic-bezier(.4,0,.2,1)}.ticket-pager-btn:hover:not(:disabled){border-color:var(--color-primary);background:#e0eaff}.ticket-pager-btn--primary{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.ticket-pager-btn--primary:hover:not(:disabled){background:var(--color-primary-dark);border-color:var(--color-primary-dark);color:#fff}.ticket-pager-btn:disabled{opacity:.5}.ticket-pager-arrow{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:0;flex:1;justify-content:center;align-items:center;height:56px;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.ticket-pager-check{color:#fff;cursor:pointer;background:#22c55e;border:none;border-radius:0;flex:1;justify-content:center;align-items:center;height:56px;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.ticket-pager-check svg{width:24px;height:24px}.ticket-pager-check--unmark{color:#fff;background:#ef4444}.ticket-pager-check.ticket-pager-check--unmark:hover:not(:disabled){color:#fff;background:#dc2626}.ticket-pager-check:hover:not(:disabled){color:#fff;background:#16a34a;border-color:#16a34a}.ticket-pager-check:disabled{opacity:.5;cursor:default}.ticket-pager-arrow:hover{background:var(--color-primary-dark)}.ticket-pager-arrow svg{width:24px;height:24px}.ticket-pager-footer .ticket-pager-btn+.ticket-pager-arrow{margin-left:auto}.stop-subheader{border-top:1px solid var(--gray-200);border-bottom:1px solid var(--gray-200);background:#fff;align-items:stretch;height:56px;padding:0;display:flex}.stop-subheader-cell{cursor:default;border:none;border-radius:0;justify-content:center;align-items:center;margin:0;padding:0;display:flex}.stop-subheader-cell--number{background:var(--color-primary);color:#fff;flex-shrink:0;width:56px;font-size:1.3rem;font-weight:700}.stop-subheader-cell--time{color:var(--gray-900);font-variant-numeric:tabular-nums;background:#fff;flex:1;gap:8px;font-size:1.25rem;font-weight:600}.stop-subheader-clock{width:22px;height:22px}.stop-subheader-cell--info{width:64px;color:var(--gray-500);cursor:pointer;background:#fafdff;flex-shrink:0;transition:background .15s}.stop-subheader-cell--info svg{width:22px;height:22px}.stop-subheader-cell--info:hover:not(:disabled){background:#e0eaff}.stop-subheader-cell--info-active,.stop-subheader-cell--info-active:hover:not(:disabled){color:#fff;background:#f59e0b}.stop-subheader-cell--info:disabled{opacity:.4;cursor:default}.stop-subheader-cell svg{flex-shrink:0;display:block}.waypoint-inline-comment-pen{width:14px;height:14px;color:var(--gray-400);vertical-align:-2px;flex-shrink:0;margin-right:6px;display:inline-block}.stop-subheader-cell--nav{background:var(--color-primary);color:#fff;cursor:pointer;flex-shrink:0;width:64px;transition:background .15s}.stop-subheader-cell--nav svg{width:24px;height:24px}.stop-subheader-cell--nav:hover{background:var(--color-primary-dark)}.waypoint-item--paged-stop .waypoint-actions-row .waypoint-number,.waypoint-item--paged-stop .waypoint-actions-row .waypoint-buttons,.waypoint-item--paged-stop .waypoint-time{display:none}.waypoints-list.waypoints-list--paged-stop.waypoints-list--paged-stop{padding:0}.waypoint-item--paged-stop{width:100%;box-shadow:none;border:none;border-radius:0;margin:0}.waypoint-item--paged-stop .waypoint-ticket{border:none;border-radius:0;padding:0 0 12px;display:block}.waypoint-item--paged-stop .stop-subheader{box-sizing:border-box;width:100%}.waypoint-item--paged-stop .waypoint-actions{padding:12px 16px 0}.waypoint-item--paged-stop .waypoint-text-stack{flex-direction:column;display:flex}.waypoint-item--paged-stop .waypoint-text-stack>*{padding-left:16px;padding-right:16px}.waypoint-item--paged-stop .badge-row{order:1;margin:0 0 4px}.waypoint-item--paged-stop .waypoint-plan-sampling{order:2}.waypoint-item--paged-stop .waypoint-inline-comment{order:3}@container app (width<=768px){.route-source{display:none}.route-date{opacity:1}.route-date:not(.clickable){color:#fff}}.route-times{flex-direction:column;gap:8px;margin-top:12px;display:flex}.route-time-item{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:6px;justify-content:space-between;align-items:center;padding:6px 12px;font-size:.85em;display:flex}.route-time-label{color:#ffffffe6;letter-spacing:.3px;font-weight:500}.route-time-value{color:#fff;letter-spacing:.5px;font-weight:600}.route-time-total{background:rgba(var(--color-primary-rgb), .12);border-color:rgba(var(--color-primary-rgb), .3)}.route-controls{gap:12px;display:flex;position:absolute;top:50%;right:20px;transform:translateY(-50%)}.route-details-view--sampler .route-controls{flex-wrap:wrap;justify-content:center;width:100%;margin-top:12px;position:static;top:auto;right:auto;transform:none}.btn-start,.btn-complete{color:var(--color-text-inverse);cursor:pointer;background:#ffffff26;border:2px solid #fff6;border-radius:8px;padding:10px 20px;font-size:14px;font-weight:600;transition:all .2s;box-shadow:0 2px 4px #0000001a}.btn-start:hover,.btn-complete:hover{background:#10b981e6;border-color:#10b981;box-shadow:0 4px 8px #10b9814d}.waypoints-list{box-sizing:border-box;flex-direction:column;gap:12px;min-width:0;max-width:100%;padding:20px;display:flex}.waypoints-list--dashboard{padding-left:12px;padding-right:12px}.waypoint-item{cursor:pointer;box-sizing:border-box;align-items:flex-start;gap:12px;min-width:0;max-width:100%;margin-bottom:4px;display:flex}.waypoint-item--dashboard,.route-details-view--completed-layout .waypoint-item{align-items:stretch}.route-details-view--completed-layout .waypoint-item:not(.clickable){cursor:default}.waypoint-ticket{color:var(--gray-700);box-sizing:border-box;background:#fff;border:2px solid #0000;border-radius:6px;flex-direction:row;flex:1 1 0;align-items:flex-start;gap:12px;min-width:0;max-width:100%;min-height:48px;padding:12px 16px;font-size:.85em;transition:background-color .2s,border-color .2s,box-shadow .2s,color .2s;display:flex;position:relative;box-shadow:0 1px 3px #0000000d}.route-details-view--completed-layout .waypoint-item>.waypoint-ticket{align-self:stretch;height:auto;min-height:0}.waypoint-comment{box-sizing:border-box;background:0 0;border:none;border-radius:0;flex-direction:column;flex:0 320px;width:320px;min-width:0;max-width:min(320px,100%);padding:0;display:flex}.route-details-view--completed-layout .waypoint-footer .waypoint-comment{flex:0 0 320px;align-self:stretch;width:320px;max-width:320px;height:100%;min-height:0}.route-details-view--completed-layout .waypoint-item>.waypoint-comment{flex:0 0 320px;align-self:stretch;width:320px;max-width:320px;min-height:0}.route-details-view--completed-layout .waypoint-item>.waypoint-comment .waypoint-comment-input{flex:auto;height:100%;min-height:0}.route-details-view--completed-layout .waypoint-comment.waypoint-comment--layout-spacer{visibility:hidden;pointer-events:none}.waypoint-comment-label{display:none}.waypoint-comment-input{resize:none;border:1px solid var(--gray-200);color:#111827;box-sizing:border-box;background:#fff;border-radius:6px;width:100%;height:100%;min-height:100%;padding:10px 12px;font-size:.85em}.waypoint-comment-input:focus{box-shadow:none;border-color:#cbd5e1;outline:none}.waypoint-footer{box-sizing:border-box;flex:none;align-items:stretch;gap:12px;width:auto;min-width:0;max-width:100%;min-height:0;display:flex}.waypoint-footer .waypoint-comment-input{resize:none;flex:auto;height:100%;min-height:0}.waypoint-follow-up-layout{box-sizing:border-box;flex-direction:column;flex:0 0 360px;align-self:stretch;width:360px;min-width:0;max-width:min(360px,100%);height:100%;min-height:0;display:flex}.waypoint-follow-up-layout--placeholder{visibility:hidden;pointer-events:none;box-shadow:none;background:0 0;border:none}.waypoint-follow-up-card{border:1px solid var(--gray-200);box-sizing:border-box;background:#fff;border-radius:6px;flex-direction:column;flex:auto;gap:10px;width:100%;min-width:0;max-width:100%;min-height:0;padding:10px 12px;display:flex;position:relative;overflow-x:hidden}.waypoint-follow-up-fields-slot{flex-direction:column;flex:auto;min-width:0;min-height:3.5rem;display:flex}.waypoint-follow-up-fields{flex-direction:column;flex:auto;gap:8px;min-height:0;display:flex}.waypoint-follow-up-plan-sampling{width:100%;margin-top:2px}.waypoint-follow-up-input-row{flex-wrap:nowrap;align-items:stretch;gap:8px;min-width:0;display:flex}.waypoint-follow-up-input-row .waypoint-follow-up-date-actions{flex-direction:row;flex:0 auto;align-items:stretch;gap:8px;min-width:0;display:flex}.waypoint-follow-up-date-actions .waypoint-follow-up-date-picker{flex:auto;min-width:0;max-width:15rem}.waypoint-follow-up-visit-type-popover--floating{pointer-events:auto;box-sizing:border-box}.waypoint-follow-up-visit-type-popover--floating .custom-select__list--follow-up-floating{border:1px solid var(--color-primary);box-sizing:border-box;background:#fff;border-radius:12px;width:100%;max-height:280px;padding:6px;position:relative;top:auto;left:auto;right:auto;overflow:hidden auto;box-shadow:0 12px 32px #0f172a33}.waypoint-follow-up-visit-type-popover--floating .custom-select__option{text-align:left;width:100%;color:var(--gray-900);cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:#fff;border:none;border-radius:8px;padding:8px 12px;font-size:.92em;font-weight:600;transition:background-color .2s;overflow:hidden}.waypoint-follow-up-visit-type-popover--floating .custom-select__option:hover,.waypoint-follow-up-visit-type-popover--floating .custom-select__option.is-selected{background:#f2f7ff}.waypoint-follow-up-visit-type-popover--floating .custom-select__empty{color:#94a3b8;padding:8px 12px;font-size:.9em}.waypoint-follow-up-card .waypoint-follow-up-visit-type-select.custom-select{flex-direction:column;flex:1 1 0;align-self:stretch;min-width:0;max-width:100%;min-height:44px;display:flex}.waypoint-follow-up-card .custom-select{flex:1 1 0;width:auto;min-width:0;position:relative}.waypoint-follow-up-card .custom-select__trigger{text-align:left;width:100%;font:inherit;cursor:pointer;align-items:center;display:flex;position:relative}.waypoint-follow-up-card .custom-select__trigger.point-selector{background-image:none;background-position:initial;background-size:initial;appearance:none;width:100%;height:44px;min-height:44px;color:var(--gray-900);box-sizing:border-box;background-color:#fff;border:1px solid #d6e4ff;border-radius:12px;flex:auto;padding:0 40px 0 14px;font-size:.92em;font-weight:600;line-height:1.25;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 8px #0f172a14}.waypoint-follow-up-card .custom-select__trigger:after{content:"";border-right:2px solid var(--color-primary);border-bottom:2px solid var(--color-primary);pointer-events:none;opacity:.95;width:8px;height:8px;position:absolute;top:50%;right:14px;transform:translateY(-60%)rotate(45deg)}.waypoint-follow-up-card .custom-select.is-open .custom-select__trigger:after{transform:translateY(-40%)rotate(-135deg)}.waypoint-follow-up-card .custom-select__label{text-overflow:ellipsis;white-space:nowrap;width:100%;display:block;overflow:hidden}.waypoint-follow-up-card .custom-select__trigger.is-placeholder{color:var(--gray-900)}.waypoint-follow-up-card .custom-select.is-open .custom-select__trigger{border-color:var(--color-primary);background-color:#fff;box-shadow:0 4px 12px #0f172a24}.waypoint-follow-up-card .custom-select__trigger:focus{border-color:#d6e4ff;outline:none;box-shadow:0 2px 8px #0f172a14}.waypoint-follow-up-card .custom-select__trigger:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb), .2)}.waypoint-follow-up-card .custom-select__trigger.point-selector:hover:not(:disabled){background-color:#f2f7ff;border-color:#b8d2ff;box-shadow:0 4px 12px #0f172a1f}.waypoint-follow-up-card .custom-select__trigger.point-selector:focus{border-color:var(--color-primary);background-color:#fff;outline:none;box-shadow:0 4px 12px #0f172a24}.waypoint-follow-up-card .custom-select__trigger:disabled{color:#94a3b8;box-shadow:none;cursor:not-allowed;opacity:.8;background-color:#f1f5f9;border-color:#cbd5e1}.waypoint-follow-up-card .custom-select__trigger:disabled:after{opacity:.6}.waypoint-follow-up-card .custom-select.is-disabled .custom-select__trigger{pointer-events:none}.waypoint-follow-up-date-picker{box-sizing:border-box;align-items:stretch;min-height:44px;display:flex;position:relative}.waypoint-follow-up-date-picker--selected{background-color:#fff;border:1px solid #d6e4ff;border-radius:12px;align-items:center;gap:2px;height:44px;min-height:44px;padding:0;box-shadow:0 2px 8px #0f172a14}.waypoint-follow-up-date-picker--selected.is-open{border-color:var(--color-primary);background-color:#fff;box-shadow:0 4px 12px #0f172a24}.waypoint-follow-up-date-selected-hit{min-width:0;color:inherit;font:inherit;cursor:pointer;text-align:left;box-sizing:border-box;background:0 0;border:none;border-radius:10px;flex:auto;align-self:stretch;align-items:center;margin:0;padding:0 8px 0 12px;transition:background-color .2s;display:flex}.waypoint-follow-up-date-selected-hit:hover:not(:disabled){background:#f2f7ffe6}.waypoint-follow-up-date-selected-hit:focus{outline:none}.waypoint-follow-up-date-selected-hit:focus-visible{box-shadow:inset 0 0 0 2px rgba(var(--color-primary-rgb), .35);border-radius:10px}.waypoint-follow-up-date-selected-hit:disabled{cursor:not-allowed;opacity:.7}.waypoint-follow-up-date-selected__label{min-width:0;color:var(--gray-900);text-overflow:ellipsis;white-space:nowrap;flex:auto;font-size:.92em;font-weight:600;line-height:1.25;overflow:hidden}.waypoint-follow-up-date-picker .date-calendar-button.waypoint-follow-up-date-picker-bulk-button{color:#111827;cursor:pointer;box-sizing:border-box;background:0 0;border:none;border-radius:10px;flex:none;justify-content:center;align-self:stretch;align-items:center;width:40px;min-width:40px;height:auto;margin:0;padding:0;transition:background-color .2s,box-shadow .2s;display:inline-flex;position:relative}.waypoint-follow-up-date-picker .date-calendar-button.waypoint-follow-up-date-picker-bulk-button:hover{background:#f2f7ffe6}.waypoint-follow-up-date-picker .date-calendar-button.waypoint-follow-up-date-picker-bulk-button:focus{outline:none}.waypoint-follow-up-date-picker .date-calendar-button.waypoint-follow-up-date-picker-bulk-button:focus-visible{box-shadow:inset 0 0 0 2px rgba(var(--color-primary-rgb), .35)}.waypoint-follow-up-date-picker .date-calendar-button.waypoint-follow-up-date-picker-bulk-button:active{background:#f2f7ffe6}.waypoint-follow-up-date-picker .date-calendar-button.waypoint-follow-up-date-picker-bulk-button .date-calendar-icon{fill:currentColor;width:18px;height:18px;display:block}.waypoint-follow-up-date-actions .reset-button.waypoint-follow-up-reset-button{cursor:pointer;box-sizing:border-box;width:44px;min-width:44px;height:44px;min-height:44px;color:var(--gray-900);text-align:center;background:#fafdff;border:1px solid #e0eaff;border-radius:6px;flex:none;justify-content:center;align-self:stretch;align-items:center;padding:0;font-size:.85em;font-weight:400;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.waypoint-follow-up-date-actions .reset-button-icon{width:1.1em;height:1.1em;display:block}.waypoint-follow-up-date-actions .reset-button:hover:not(:disabled){color:var(--gray-900);box-shadow:0 2px 8px rgba(var(--color-primary-rgb), .15);background:#fff1f2;border-color:#fca5a5}.waypoint-follow-up-date-actions .reset-button:hover:not(:disabled) .reset-button-icon{color:#dc2626}.waypoint-follow-up-date-actions .reset-button:active:not(:disabled){background:#991b1b}.waypoint-follow-up-date-actions .reset-button:disabled{cursor:not-allowed;opacity:.7;background:#f8fafc}.waypoint-follow-up-date-button{box-sizing:border-box;width:100%;min-width:0;height:44px;min-height:44px;color:var(--gray-900);text-align:center;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;appearance:none;background-color:#fff;border:1px solid #d6e4ff;border-radius:12px;flex:auto;justify-content:center;align-items:center;padding:0 14px;font-size:.92em;font-weight:600;line-height:1.25;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;overflow:hidden;box-shadow:0 2px 8px #0f172a14}.waypoint-follow-up-date-button:hover:not(:disabled){background-color:#f2f7ff;border-color:#b8d2ff;box-shadow:0 4px 12px #0f172a1f}.waypoint-follow-up-date-button:focus{border-color:#d6e4ff;outline:none;box-shadow:0 2px 8px #0f172a14}.waypoint-follow-up-date-button:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb), .2)}.waypoint-follow-up-date-button.is-open:not(:disabled){border-color:var(--color-primary);background-color:#fff;box-shadow:0 4px 12px #0f172a24}.waypoint-follow-up-date-button:disabled{color:#94a3b8;box-shadow:none;cursor:not-allowed;opacity:.8;background-color:#f1f5f9;border-color:#cbd5e1}.waypoint-follow-up-date-popover--floating{z-index:4200;border:1px solid var(--gray-200);box-sizing:border-box;background:#fff;border-radius:8px;padding:8px;position:fixed;box-shadow:0 12px 40px #0f172a2e,0 0 0 1px #0f172a0a}.waypoint-follow-up-error{color:#dc2626;font-size:.8em}.waypoint-follow-up-calendar-widget{width:100%}.waypoint-ticket.address-state--draft{border-width:3px;border-color:#f59e0b}.waypoint-ticket.address-state--confirmed,.waypoint-ticket.address-state--published{border-width:3px;border-color:#2563eb}.route-details-view--completed-layout .waypoint-ticket.address-state--draft,.route-details-view--completed-layout .waypoint-ticket.address-state--confirmed,.route-details-view--completed-layout .waypoint-ticket.address-state--published{border-width:2px;border-color:#0000}.waypoint-ticket--publish-confirmation-open{align-items:stretch;box-shadow:0 0 0 2px #f59e0b40,0 4px 12px #00000014}.waypoint-ticket--publish-confirmation-open .waypoint-actions{flex-direction:column;align-self:stretch;height:100%;justify-content:center!important;align-items:center!important}.waypoint-item:hover .waypoint-ticket{background:#fff;box-shadow:0 4px 12px #0000001a}.waypoint-item.visited .waypoint-ticket{border-left:4px solid var(--gray-400);background:#9ca3af1a;box-shadow:0 2px 4px #9ca3af1a}.waypoint-item.start-point .waypoint-ticket,.waypoint-item.destination-point .waypoint-ticket{opacity:.7;background:#fff}.waypoint-item.start-point .waypoint-address,.waypoint-item.destination-point .waypoint-address,.waypoint-item.start-point .waypoint-address--street-line,.waypoint-item.destination-point .waypoint-address--street-line{color:#374151;font-weight:600}.waypoint-item.start-point .waypoint-address.waypoint-address--remark,.waypoint-item.destination-point .waypoint-address.waypoint-address--remark{font-weight:400}.waypoint-item.clickable{cursor:pointer;transition:all .2s}.waypoint-item.clickable:hover .waypoint-ticket{background:#ffffff1a;box-shadow:0 2px 8px #0000001a}.waypoint-item.clickable:hover .separator-text{background:#f9fafb}.waypoint-item.visited .separator-text{background:#eff0f2}@media (hover:none) and (pointer:coarse){.waypoint-item:hover .waypoint-ticket,.waypoint-item.clickable:hover .waypoint-ticket{background:#fff;border-color:#4f8cff;box-shadow:0 2px 8px #4f8cff26}}.btn-checkmark{cursor:default;box-sizing:border-box;background:#10b9811a;border:1px solid #10b9814d;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:inline-flex}.checkmark-icon{color:#10b981;width:44px;height:44px;display:block}.waypoint-spacer{flex-shrink:0;width:24px;height:24px}.waypoint-number{color:#fff;font-variant-numeric:tabular-nums;background:#4f8cff;border-radius:50%;flex-shrink:0;place-items:center;width:24px;height:24px;margin:0;font-size:1rem;font-weight:600;line-height:24px;display:grid}.waypoint-number span{margin:0;padding:0;line-height:24px;display:block}.waypoint-content{flex:1;justify-content:space-between;align-items:flex-start;gap:8px;min-width:0;display:flex}.waypoint-content .waypoint-icon{flex-shrink:0;margin-right:8px}@container app (width>=769px){.waypoint-content .waypoint-icon,.waypoint-main .waypoint-icon,.waypoint-actions+.waypoint-main{display:none}.contact-details-desktop{width:100%;margin-top:12px;padding:0;display:block}.waypoint-main .contact-details{display:none}}.waypoint-info{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.waypoint-address{color:var(--gray-700);text-align:left;width:100%;font-size:1.1em;font-weight:500}.waypoint-address-block{flex-direction:column;gap:0;width:100%;display:flex}.waypoint-street-row{flex-flow:wrap;justify-content:flex-start;align-items:center;gap:6px;width:100%;min-width:0;display:flex}.waypoint-street-row .waypoint-address--street-line{flex:0 auto;width:auto;min-width:0;max-width:100%}.waypoint-card-edit-btn{color:#111827;cursor:pointer;background:#fff;border:1px solid #111827;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;padding:0;transition:background .15s,color .15s;display:inline-flex;position:absolute;bottom:12px;right:16px}.waypoint-card-edit-btn:hover{color:#fff;background:#111827}.waypoint-card-edit-btn svg{width:60%;height:60%}.waypoint-street-row .waypoint-object-address-edit-btn{vertical-align:-.15em;color:#111827;cursor:pointer;box-sizing:border-box;background:#fff;border:1px solid #111827;border-radius:50%;justify-content:center;align-items:center;width:1.05em;min-width:18px;max-width:22px;height:1.05em;min-height:18px;max-height:22px;margin:0 0 0 6px;padding:0;font-size:1.1em;line-height:1;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.waypoint-address--street-line{font-weight:700;line-height:1.25}.waypoint-street-row .waypoint-object-address-edit-btn:hover{color:#fff;background:#111827;border-color:#111827}.waypoint-street-row .waypoint-object-address-edit-btn svg{width:72%;height:72%;display:block}.waypoint-address--restricted{filter:blur(4px);-webkit-user-select:none;user-select:none}.waypoint-text-stack{flex-direction:column;align-items:flex-start;gap:10px;width:100%;display:flex}.waypoint-text-stack--restricted{-webkit-user-select:none;user-select:none}.waypoint-time{color:var(--gray-700);justify-content:flex-start;align-items:center;gap:10px;width:100%;margin-left:0;padding-left:0;display:inline-flex;position:relative}.waypoint-plan-sampling{border-top:1px solid var(--gray-200);flex-direction:column;gap:6px;width:100%;margin-top:4px;padding-top:6px;display:flex}.waypoint-plan-sampling-row{color:#374151;justify-content:space-between;align-items:center;gap:8px;font-size:.8rem;display:flex}.waypoint-plan-sampling-label{flex:1;min-width:0}.waypoint-plan-sampling-stepper{align-items:center;gap:6px;display:inline-flex}.waypoint-plan-sampling-btn{border:1px solid var(--color-primary);background:var(--color-primary);color:#fff;cursor:pointer;width:28px;height:28px;box-shadow:0 2px 8px rgba(var(--color-primary-rgb), .15);border-radius:6px;padding:0;font-size:1rem;font-weight:700;line-height:1;transition:all .2s cubic-bezier(.4,0,.2,1)}.waypoint-plan-sampling-btn:hover:not(:disabled){background:var(--color-primary-dark);border-color:var(--color-primary-dark);box-shadow:0 4px 12px rgba(var(--color-primary-rgb), .2)}.waypoint-plan-sampling-btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.waypoint-plan-sampling-count{text-align:center;font-variant-numeric:tabular-nums;min-width:1.5rem;font-weight:600}.waypoint-time-input{text-align:center;width:5ch;min-width:5ch;height:auto;color:var(--gray-700);appearance:none;background:0 0;border:none;border-radius:0;padding:0;font-size:1.1em;font-weight:500;line-height:1.2}.waypoint-time-input--email-hover-missing{outline-offset:2px;border-radius:4px;outline:2px solid #f59e0b}.waypoint-time-badge{color:#0e7490;text-transform:uppercase;letter-spacing:.6px;background:#0e74901f;border-radius:999px;margin-left:4px;padding:2px 6px;font-size:.65em;font-weight:700}.waypoint-time-badge--auto-confirmed{background:var(--color-primary);color:#fff}.waypoint-address--postal{color:var(--gray-700);margin-top:2px;font-weight:700;line-height:1.25}.waypoint-address--id-bwb{color:var(--gray-700);margin-top:2px;font-weight:400;line-height:1.25}.waypoint-address.waypoint-address--remark{margin-top:0;font-weight:400}.waypoint-inline-comment{width:100%;color:var(--gray-500);text-align:left;white-space:pre-wrap;font-size:.95em;font-style:italic;line-height:1.35}.waypoint-badge{margin:0}.badge-row{flex-wrap:wrap;align-items:center;gap:6px;margin:0;display:flex}.badge-row--main{display:none}.badge-row--full{box-sizing:border-box;width:100%;margin-top:8px;padding-left:36px}.route-editor-inline-stack .waypoint-address{color:#1f2937;font-size:.875rem;font-weight:700;line-height:1.3}@container app (width>=769px){.waypoint-actions{flex-wrap:wrap}}@container app (width<=768px){.badge-row--full{display:none}}.sampling-badges{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.sampling-badge{color:#111827;white-space:nowrap;background:#f1f5f9;border-radius:4px;align-items:center;gap:4px;padding:2px 8px;font-size:.8em;font-weight:500;display:inline-flex}.sampling-badge--non-default{color:#92400e;background:#fde68a}.sampling-badge--duration{color:#111827;background:#f1f5f9;font-weight:500}.sampling-badge-icon{flex:none;width:12px;height:12px;display:block}.tour-badge{white-space:nowrap;text-overflow:ellipsis;box-sizing:border-box;border:none;border-radius:4px;justify-content:center;align-items:center;width:140px;min-width:140px;max-width:140px;padding:2px 8px;font-size:.8em;font-weight:500;display:inline-flex;overflow:hidden}.tour-badge.rn-tour{color:#4caf50;background:#4caf501a}.tour-badge.tb-tour{background:rgba(var(--color-primary-rgb), .1);color:var(--color-primary)}.tour-badge.project{color:#9c27b0;background:#9c27b01a}.tour-badge.bim-tour{color:#b8860b;background:#f0d72240}.tour-badge:not(.rn-tour):not(.tb-tour):not(.project):not(.bim-tour){color:#1f2937;background:#f3f4f6;border:none}.waypoint-icon{flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;margin:0 auto;display:flex}.waypoint-icon.start-icon{color:var(--color-primary)}.start-icon-svg{width:22px;height:22px;display:block}.waypoint-icon.destination-icon{color:var(--color-primary)}.waypoint-actions,.destination-actions{flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;width:100%;margin:0;padding:0;display:flex}.object-publish-inline-menu{background:0 0;border:none;border-radius:0;flex-direction:column;justify-content:center;align-items:center;gap:8px;width:100%;padding:0;display:flex}.object-publish-inline-menu__buttons{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;width:100%;display:flex}.object-publish-inline-menu__button{border:1px solid var(--gray-300);cursor:pointer;background:#fff;border-radius:6px;padding:7px 10px;font-size:.8rem;font-weight:600;transition:all .2s}.object-publish-inline-menu__button--send{color:#fff;background:#3b82f6;border-color:#2563eb}.object-publish-inline-menu__button--send:hover:not(:disabled){background:#2563eb;border-color:#1d4ed8;box-shadow:0 1px 4px #2563eb40}.object-publish-inline-menu__button--skip{color:var(--gray-500);border-color:var(--gray-300);background:#fff}.object-publish-inline-menu__button--skip:hover:not(:disabled){border-color:var(--gray-400);background:#f9fafb;box-shadow:0 1px 4px #9ca3af40}.object-publish-inline-menu__button--cancel{color:#374151;border-color:var(--gray-300)}.object-publish-inline-menu__button--cancel:hover:not(:disabled){background:#fff;box-shadow:0 1px 4px #94a3b833}.object-publish-inline-menu__button:disabled{opacity:.6;cursor:default}@container app (width<=768px){.waypoint-actions,.destination-actions{flex-direction:column;order:0;gap:8px;width:100%;margin:0 0 8px;padding:0}.waypoint-actions-row{flex-direction:row;justify-content:flex-end;align-items:center;gap:8px;width:100%;display:flex}.waypoint-address-inline{display:none}.badge-row--main{display:flex}.waypoint-main .sampling-badges{margin-left:0}.waypoint-main,.waypoint-actions+.waypoint-main{display:flex}.destination-actions .waypoint-address-inline,.destination-actions .waypoint-address-with-icon{align-items:center;gap:8px;display:flex}.destination-actions .waypoint-address-inline .waypoint-icon{display:block}.waypoint-item:has(.destination-actions) .waypoint-main{display:none}.waypoint-time{gap:4px;margin-left:0}.object-publish-inline-menu__buttons{flex-direction:column;align-items:center}.object-publish-inline-menu__button{width:auto}}@container app (width>=769px){.waypoint-actions,.destination-actions{flex-direction:column;align-items:flex-start}.waypoint-actions-row{justify-content:space-between;align-items:flex-start;width:100%;display:flex}.destination-actions .waypoint-actions-row{align-items:center}.waypoint-address-inline{justify-content:flex-start;align-items:center;gap:8px;padding:0;display:flex}.waypoint-address-with-icon{align-items:center;gap:8px;display:flex}.waypoint-address-inline .waypoint-icon{display:block}.waypoint-address-inline .waypoint-address,.waypoint-address-inline .waypoint-badge{margin:0;padding:0}.waypoint-address-inline .waypoint-location-details{margin:8px 0 0;padding:0}}.waypoint-buttons{align-items:center;gap:8px;display:flex}.waypoint-address-inline{flex-direction:column;flex:1;justify-content:flex-start;align-items:flex-start;gap:4px;margin:0 12px;padding:0;display:flex}.btn-maps,.btn-visit,.btn-contact,.btn-object-email{cursor:pointer;border:none;border-radius:4px;padding:6px 12px;font-size:.9em;text-decoration:none;transition:all .2s}.object-email-hover-target{justify-content:center;align-items:center;display:inline-flex}.btn-maps{width:48px;height:48px;color:var(--gray-900);cursor:pointer;background:#fafdff;border:1px solid #e0eaff;border-radius:8px;justify-content:center;align-items:center;text-decoration:none;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex}.btn-maps:hover{border-color:var(--color-primary);box-shadow:0 2px 8px rgba(var(--color-primary-rgb), .15);background:#e0eaff}.nav-icon{width:44px;height:44px;color:var(--color-primary);transition:color .2s}.btn-contact{color:#fff;cursor:pointer;background:#3b82f6;border:1px solid #2563eb;border-radius:8px;justify-content:center;align-items:center;width:48px;height:48px;text-decoration:none;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex}.btn-contact:hover{background:#2563eb;border-color:#1d4ed8;box-shadow:0 2px 8px #3b82f64d}.btn-contact:disabled,.btn-maps:disabled,.btn-object-email:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}.btn-object-email{color:#fff;cursor:pointer;background:#f59e0b;border:1px solid #d97706;border-radius:8px;justify-content:center;align-items:center;width:48px;height:48px;padding:0;text-decoration:none;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex}.btn-object-email:hover:not(:disabled){background:#d97706;border-color:#b45309;box-shadow:0 2px 8px #f59e0b59}.btn-object-email--confirmation{background:#3b82f6;border-color:#2563eb}.btn-object-email--confirmation:hover:not(:disabled){background:#2563eb;border-color:#1d4ed8;box-shadow:0 2px 8px #3b82f64d}.btn-object-email--sent{color:#047857;background:#ecfdf3;border-color:#34d399;box-shadow:inset 0 0 0 1px #34d3992e,0 1px 2px #0596691f}.btn-object-email--sent:hover:not(:disabled){color:#065f46;background:#d1fae5;border-color:#10b981;box-shadow:inset 0 0 0 1px #10b98133,0 2px 6px #0596692e}.btn-object-email--confirmation-sent{color:#1d4ed8;background:#eff6ff;border-color:#60a5fa;box-shadow:inset 0 0 0 1px #60a5fa2e,0 1px 2px #2563eb1f}.btn-object-email--confirmation-sent:hover:not(:disabled){color:#1e40af;background:#dbeafe;border-color:#3b82f6;box-shadow:inset 0 0 0 1px #3b82f633,0 2px 6px #2563eb2e}.btn-object-email:disabled{opacity:.6;cursor:not-allowed}.btn-object-email.btn-object-email--bwb-disabled,.btn-object-email.btn-object-email--bwb-disabled.btn-object-email--confirmation,.btn-object-email.btn-object-email--bwb-disabled.btn-object-email--sent,.btn-object-email.btn-object-email--bwb-disabled.btn-object-email--confirmation-sent,.btn-object-email.btn-object-email--recipient-disabled,.btn-object-email.btn-object-email--recipient-disabled.btn-object-email--confirmation,.btn-object-email.btn-object-email--recipient-disabled.btn-object-email--sent,.btn-object-email.btn-object-email--recipient-disabled.btn-object-email--confirmation-sent,.btn-object-email.btn-object-email--time-missing,.btn-object-email.btn-object-email--time-missing.btn-object-email--confirmation,.btn-object-email.btn-object-email--time-missing.btn-object-email--sent,.btn-object-email.btn-object-email--time-missing.btn-object-email--confirmation-sent{background:var(--gray-200);color:#94a3b8;box-shadow:none;border-color:#cbd5e1}.object-email-icon{width:32px;height:32px}.object-email-icon--sent{width:28px;height:28px}.object-email-spinner{width:20px;height:20px}.contact-icon{color:#fff;width:44px;height:44px;transition:color .2s}.waypoint-main{flex-direction:column;flex:1;display:flex}.route-details-view--completed-layout .waypoint-main{min-width:0}.contact-details{margin-top:12px}@container app (width<=768px){.waypoint-item{box-sizing:border-box;flex-direction:column;gap:8px;width:100%;overflow:hidden}.waypoint-main{box-sizing:border-box;width:100%;overflow:hidden}.contact-details-desktop{display:none}.contact-details{box-sizing:border-box;width:100%;margin-top:8px;overflow:hidden}.contact-details-rows{box-sizing:border-box;width:100%;padding:0}.contact-details-row{box-sizing:border-box;flex-direction:column;gap:8px;width:100%;display:flex}.contact-detail-item{box-sizing:border-box;width:100%;padding:0}.contact-detail-item.double-width{grid-column:unset}.waypoint-ticket{box-sizing:border-box;flex-direction:column;flex:0 auto;align-self:stretch;width:100%;min-width:0}.route-details-view--completed-layout .waypoint-item>.waypoint-ticket,.waypoint-ticket>.waypoint-main{flex:0 auto;min-height:auto}.waypoint-comment{width:100%}.route-details-view--completed-layout .waypoint-footer .waypoint-comment,.route-details-view--completed-layout .waypoint-item>.waypoint-comment{flex:auto;width:100%;max-width:none}.waypoint-footer,.waypoint-follow-up-layout{flex-direction:column}.waypoint-footer{box-sizing:border-box;width:100%;min-width:0;max-width:100%}.waypoint-follow-up-layout--placeholder{display:none}.waypoint-follow-up-layout{flex:auto;align-self:stretch;width:100%;min-width:0;max-width:100%;height:auto}.waypoint-follow-up-card{width:100%;min-width:0;max-width:none}.waypoint-follow-up-input-row{flex-direction:column}.waypoint-follow-up-card .waypoint-follow-up-visit-type-select.custom-select,.waypoint-follow-up-date-actions{width:100%;max-width:none}.waypoint-follow-up-date-actions .waypoint-follow-up-date-picker{max-width:none}}.contact-details-rows{flex-direction:column;gap:0;display:flex}.contact-details-row{flex-direction:column;gap:8px;margin-bottom:0;display:flex}.contact-details-row:last-child{margin-bottom:0}.contact-detail-item{background:#fff;border:1px solid #e2e8f0;border-radius:6px;flex-direction:column;gap:4px;width:100%;padding:8px;display:flex;position:relative}.contact-detail-item label{color:#374151;margin:0;font-size:.875rem;font-weight:600}.contact-detail-value{color:var(--gray-500);word-wrap:break-word;overflow-wrap:break-word;max-width:calc(100% - 56px);padding-right:56px;font-size:.875rem}.phone-button{color:#fff;background:#10b981;border-radius:8px;justify-content:center;align-items:center;width:48px;height:48px;text-decoration:none;transition:all .2s;display:flex;position:absolute;top:8px;right:8px}.phone-button:hover{background:#059669}.phone-icon{width:24px;height:24px}.email-button{width:48px;height:48px;color:var(--gray-500);background:#f8fafc;border:1px solid #e0eaff;border-radius:8px;justify-content:center;align-items:center;text-decoration:none;transition:all .2s;display:flex;position:absolute;top:8px;right:8px}.email-button:hover{border-color:var(--gray-500);background:#e0eaff;box-shadow:0 2px 8px #6b728026}.email-icon{width:24px;height:24px}.row-separator{background:#3b82f6;justify-content:center;align-items:center;height:2px;margin:12px 0;transition:none;display:flex;position:relative}.separator-text{color:#3b82f6;text-transform:uppercase;letter-spacing:.05em;background:#fff;padding:0 12px;font-size:.75rem;font-weight:600}.btn-contact-active{color:#fff!important;background:#f59e0b!important;border-color:#d97706!important;box-shadow:0 2px 4px #f59e0b4d!important}.btn-contact-active:hover{background:#d97706!important;border-color:#b45309!important;box-shadow:0 4px 8px #f59e0b66!important}.loader{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:1s ease-in-out infinite spin-route-details}.waypoint-item.visited .waypoint-number{background:var(--gray-400);box-shadow:0 2px 4px #9ca3af4d}.waypoint-item.visited .waypoint-address{color:var(--gray-500);font-weight:500}.waypoint-item.visited .waypoint-address.waypoint-address--remark{font-weight:400}.btn-maps:hover,.btn-visit:hover{box-shadow:0 2px 8px #0000001a}@container app (width<=800px){:scope{width:100%;padding:16px}.page-layout{flex-direction:column;display:flex}.page-layout:after{content:none}.admin-sampler-container{width:100%;margin-bottom:20px;position:static}.route-details-view{width:100%;min-width:auto;max-width:none}.route-details-view--completed-layout{width:100%;min-width:0;max-width:none}}@container app (width<=768px){:scope{width:100%;height:100vh;padding:0;overflow:hidden auto}.route-details-view{width:100%;min-width:auto;max-width:none}.route-details-view--completed-layout{width:100%;min-width:0;max-width:none}.route-details-view--from-routes .waypoint-info,.route-details-view--from-routes .waypoint-address-block{overflow-wrap:anywhere;word-break:break-word;min-width:0;max-width:100%}:scope{border-radius:0;padding:0}.route-details-view{border-radius:0}.waypoint-item.visited .waypoint-ticket{border-left:none;margin-left:0}:scope.route-details-page--paged .waypoints-list{padding-left:0;padding-right:0}:scope.route-details-page--paged .waypoints-list .waypoint-item{border-radius:0;width:100%;margin-left:0;margin-right:0}.waypoint-plan-sampling-row{font-size:1rem}.waypoint-plan-sampling-stepper{gap:10px}.waypoint-plan-sampling-btn{border-radius:10px;width:40px;height:40px;font-size:1.3rem}.waypoint-plan-sampling-count{min-width:2.2rem;font-size:1.15rem}.route-details-view--from-routes .waypoint-address{overflow-wrap:anywhere;word-break:break-word}.route-details-view--from-routes .waypoint-content{flex-direction:column;align-items:stretch;gap:10px}.route-details-view--from-routes .waypoint-time{flex-wrap:wrap;max-width:100%}.route-details-view--from-routes .waypoint-actions-row{flex-direction:row;justify-content:space-between;align-items:flex-start;gap:8px}.route-details-view--from-routes .waypoint-buttons{align-self:flex-start;margin-left:auto}h1{margin-bottom:16px;font-size:1.5em}.route-details-header{flex-direction:column;align-items:center;gap:16px;padding:16px;position:relative}.sampler-badge{display:none}.btn-back{background:#ffffff1a;border:2px solid #ffffff4d;border-radius:8px;justify-content:center;align-items:center;min-height:48px;padding:12px 16px;font-size:14px;font-weight:600;display:flex;position:static;transform:none}.btn-back:hover{transform:none}.route-controls{gap:12px;width:100%;margin-top:12px;display:flex;position:static;transform:none}.route-controls>*{flex:1 1 0;min-width:0}.route-info{text-align:center;width:100%}.route-info h2{word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;font-size:1.3em;line-height:1.3}.route-name-input{font-size:1.3em}.route-name-edit{min-height:2em;padding:8px 12px}.saving-indicator{right:12px}.spinner{width:20px;height:20px}.route-date{margin:4px 0;font-size:.85em}.route-date.clickable{cursor:pointer;pointer-events:auto;padding:10px 16px;font-size:.85em}.route-date-popover{width:min(100vw - 32px,320px)}.route-date-popover .calendar{max-width:280px;padding:12px}.route-date-popover .day{width:28px;height:28px;font-size:14px}.route-status{padding:6px 12px;font-size:.85em}.route-controls{flex-direction:row;justify-content:flex-start;gap:12px;width:100%;display:flex;position:static;top:auto;right:auto;transform:none}.desktop-only{display:none}.mobile-only{display:block}.btn-start,.btn-complete{background:#ffffff1a;border:2px solid #ffffff4d;border-radius:8px;justify-content:center;align-items:center;min-height:48px;padding:12px 16px;font-size:14px;font-weight:600;display:flex}.waypoints-list{padding:12px}.waypoint-item{flex-direction:column;gap:8px;margin-bottom:4px}.waypoint-ticket{flex:0 auto;min-width:0;min-height:52px;padding:10px 12px}.waypoint-number{width:24px;height:24px;font-size:1rem}.waypoint-content{flex-direction:row;align-items:flex-start;gap:8px;width:100%;margin:0;padding:0}.waypoint-content .waypoint-icon{flex-shrink:0;margin-right:8px}.waypoint-icon:not(.waypoint-content .waypoint-icon):not(.destination-actions .waypoint-icon){display:none}.waypoint-info{width:100%}.waypoint-address{font-size:14px;line-height:1.4}.waypoint-address.waypoint-address--remark{margin-top:0;font-weight:400}.waypoint-actions{flex-direction:column;order:0;gap:8px;width:100%;margin:0 0 8px;padding:0}.waypoint-actions-row{flex-direction:row;justify-content:space-between;align-items:center;gap:8px;width:100%;display:flex}.waypoint-buttons{align-items:center;gap:8px;display:flex}.waypoint-address-inline{display:none}.waypoint-main{margin:0;padding:0;display:flex}.btn-maps,.btn-object-email{width:48px;min-width:48px;height:48px}.nav-icon{width:44px;height:44px}.btn-checkmark{width:48px;min-width:48px;height:48px}.checkmark-icon{width:44px;height:44px}.waypoint-badge{margin-top:1px;margin-bottom:2px}.tour-badge{border-radius:4px;padding:2px 8px;font-size:.8em;font-weight:500}.tour-badge.rn-tour{color:#4caf50;background:#4caf501a}.tour-badge.tb-tour{background:rgba(var(--color-primary-rgb), .1);color:var(--color-primary)}.tour-badge.project{color:#9c27b0;background:#9c27b01a}.tour-badge.bim-tour{color:#b8860b;background:#f0d72240}.tour-badge:not(.rn-tour):not(.tb-tour):not(.project):not(.bim-tour){color:#000;background:0 0;border:2px solid #000}}.modal-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-content{background:#fff;border-radius:12px;width:100%;max-width:500px;max-height:90%;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.modal-body{padding:32px 24px 20px}.modal-body p{color:var(--gray-500);margin:0 0 20px;line-height:1.5}.confirmation-details{background:#f9fafb;border-radius:8px;margin-top:16px;padding:16px}.detail-item{justify-content:space-between;align-items:center;margin-bottom:8px;font-size:.9rem;display:flex}.detail-item:last-child{margin-bottom:0}.detail-item strong{color:#374151;font-weight:500}.detail-item span{color:var(--gray-500);text-align:right}.delete-title{color:#1f2937;text-align:center;margin:0;padding:20px 0;font-size:24px;font-weight:700}.delete-route-name{text-align:center;color:#374151;word-break:break-word;margin:0;font-size:16px;font-weight:600}.modal-footer{border-top:1px solid var(--gray-200);justify-content:center;gap:12px;padding:20px 24px 24px;display:flex}.btn-cancel,.btn-confirm{cursor:pointer;border:none;border-radius:8px;min-width:80px;padding:10px 20px;font-size:14px;font-weight:500;transition:all .2s}.btn-cancel{color:#374151;border:1px solid var(--gray-300);background:#f3f4f6}.btn-cancel:hover{background:var(--gray-200);border-color:var(--gray-400)}.btn-confirm{color:#fff;background:#10b981;border:1px solid #10b981}.btn-confirm:hover{background:#059669;border-color:#059669}.btn-confirm.btn-danger{background:#dc2626;border-color:#dc2626}.btn-confirm.btn-danger:hover:not(:disabled){background:#b91c1c;border-color:#b91c1c}.btn-confirm.btn-danger:disabled{cursor:not-allowed;background:#fca5a5;border-color:#fca5a5}@container app (width<=768px){.modal-overlay{padding:16px}.modal-content{max-width:100%}.modal-body{padding:28px 20px 16px}.modal-footer{flex-direction:column;justify-content:center;padding:16px 20px 20px}.btn-cancel,.btn-confirm{width:100%;padding:12px 20px}.detail-item{flex-direction:column;align-items:flex-start;gap:4px}.detail-item span{text-align:left}}a.btn-edit,a.btn-back{box-sizing:border-box;text-decoration:none}button.waypoint-number{cursor:pointer;border:none;padding:0;font-family:inherit;font-size:1rem}input.waypoint-time-input[type=time]{cursor:pointer;width:auto;min-width:5ch}input.waypoint-time-input[readonly]{pointer-events:none}input.waypoint-time-input[type=time]::-webkit-calendar-picker-indicator{display:none}input.route-date-native{color:inherit;text-align:center;background:0 0;border:2px solid #0000;font-family:inherit;font-size:.9em}input.route-date-native:disabled{cursor:default;opacity:.8}input.route-date-native.clickable{opacity:1}.publish-prompt-inline{background:#fffbeb;border:1px solid #f59e0b;border-radius:8px;margin:16px 20px 0;padding:12px 16px}.publish-prompt-inline .publish-prompt-text{color:#92400e;font-size:.95rem}.action-error-toast{z-index:1000;color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:8px 16px;font-size:.9rem;position:fixed;top:56px;right:24px;box-shadow:0 4px 12px #0000001f}select.custom-select__trigger.point-selector{appearance:auto;-webkit-appearance:menulist;font-family:inherit}input.waypoint-follow-up-date-native{font-family:inherit;display:inline-flex}input.waypoint-follow-up-date-native:disabled{opacity:.6;cursor:not-allowed}}@keyframes spin-route-details{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@scope(.address-editor){}@scope(.address-editor){.address-editor{background:var(--color-surface);flex-direction:column;flex:auto;width:100%;min-height:0;padding-top:0;display:flex;overflow:visible}.inline-bulk-import-container{flex-direction:column;flex:1;height:100%;min-height:0;padding:0;display:flex;overflow:hidden}.editor-layout{flex:1;justify-content:center;align-items:stretch;gap:20px;width:100%;min-width:0;max-width:none;height:100%;margin:0;padding:0;display:flex;overflow:visible}.left-side{flex-direction:column;flex-shrink:0;gap:20px;width:500px;min-width:500px;max-width:500px;min-height:0;display:flex;overflow:visible}@container app (width<=1024px){.editor-layout{gap:16px;padding:20px}.left-side{width:40%;min-width:400px;max-width:none}}@container app (width<=768px){.editor-layout{flex-direction:column;height:auto}.left-side{width:100%;min-width:100%;max-height:none}.right-column{max-height:none}.map-container{height:300px}}.controls-column{background:#fff;border-radius:20px;flex-direction:column;flex:4;width:100%;height:100%;min-height:0;padding:20px;display:flex;overflow:hidden;box-shadow:0 2px 10px #00000014;border:none!important;box-shadow:0 2px 10px #00000014!important}.map-column{background:#fff;border-radius:20px;flex-direction:column;flex:3;width:100%;min-height:0;padding:8px;display:flex;overflow:hidden;box-shadow:0 2px 10px #00000014;border:none!important;box-shadow:0 2px 10px #00000014!important}.map-container{transition:opacity .3s}.map-container.loading-address-editor{opacity:.7}@container app (width<=768px){.left-content{padding-bottom:16px}}.controls-container{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;margin-bottom:16px;padding:16px;box-shadow:0 1px 3px #0000000d}.tour-type-selectors{border-bottom:1px solid #e2e8f0;flex-shrink:0;margin-bottom:16px;padding-bottom:16px}.tour-id-selection-area{flex:1;min-height:0;margin-bottom:16px;padding-right:4px;overflow:hidden auto}.tour-selection-area::-webkit-scrollbar{width:6px}.tour-selection-area::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.tour-selection-area::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.tour-selection-area::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.control-item{width:100%}.button-group{border-top:1px solid #e2e8f0;flex-direction:row;flex-shrink:0;align-items:center;gap:12px;margin-top:auto;margin-bottom:8px;padding-top:16px;display:flex}.action-button{color:var(--gray-900);cursor:pointer;box-sizing:border-box;background:#fff;border:1px solid #e0eaff;border-radius:8px;flex:.8;justify-content:center;align-items:center;gap:6px;height:40px;padding:8px 12px;font-size:.95rem;font-weight:500;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.action-button:hover:not(:disabled){border-color:var(--color-primary);box-shadow:0 2px 8px rgba(var(--color-primary-rgb), .15);background:#edf2f7;border-color:#cbd5e0;transform:translateY(-1px)}.action-button .icon{justify-content:center;align-items:center;font-size:1.1rem;line-height:1;display:flex}.create-button{box-sizing:border-box;border-radius:8px;flex:.4;justify-content:center;align-items:center;gap:4px;height:40px;padding:8px 10px;font-size:.85rem;font-weight:600;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;color:#fff!important;background:#3b82f6!important;border-color:#3b82f6!important}.create-button .icon{font-size:1.6rem;font-weight:700;line-height:1;transform:translateY(-1px)}.create-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 2px 8px #3b82f640;background:#2563eb!important;border-color:#2563eb!important}.import-button{box-sizing:border-box;border-radius:8px;flex:.4;justify-content:center;align-items:center;gap:4px;height:40px;padding:8px 10px;font-size:.85rem;font-weight:600;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;color:#fff!important;background:#10b981!important;border-color:#10b981!important}.import-button .icon{width:16px;height:16px}.import-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 2px 8px #10b98140;background:#059669!important;border-color:#059669!important}.reset-selection-button{box-sizing:border-box;border-radius:8px;flex:.4;justify-content:center;align-items:center;gap:4px;height:40px;padding:8px 10px;font-size:.85rem;font-weight:500;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;color:#fff!important;background:#ef4444!important;border-color:#ef4444!important}.reset-selection-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 2px 8px #ef444440;background:#dc2626!important;border-color:#dc2626!important}.batch-edit-button{text-align:center;box-sizing:border-box;flex:0 0 40px;justify-content:center;align-items:center;width:40px;min-width:40px;height:40px;padding:0}.batch-edit-button .icon{width:18px;height:18px;display:block}.select-all-reset{width:24px;height:24px;color:var(--gray-900);cursor:pointer;background:#fafdff;border:1px solid #e0eaff;border-radius:6px;justify-content:center;align-items:center;margin-left:6px;padding:0;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex}.select-all-reset svg{width:14px;height:14px;display:block}.select-all-reset:hover{color:#dc2626;background:#fff1f2;border-color:#fca5a5}.search-container{flex:2 0;min-width:0;max-width:100%;margin:0}.search-input-wrapper{width:100%;position:relative}.search-input{border:1px solid var(--gray-300);box-sizing:border-box;width:100%;height:40px;color:var(--gray-900);background:#fff;border-radius:6px;outline:none;padding:8px 36px 8px 12px;font-size:14px}.search-input::placeholder{color:#94a3b8}.search-input:focus{border-color:#0d6efd;outline:none;box-shadow:0 0 0 2px #0d6efd1a}.clear-search-btn{color:var(--gray-400);cursor:pointer;z-index:1;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;padding:2px;font-size:16px;font-weight:700;transition:all .2s;display:flex;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.clear-search-btn:hover{color:#475569;background:#f1f5f9}.clear-search-btn svg{width:14px;height:14px}.search-results-info{color:#64748b;text-align:left;margin-top:4px;font-size:.8rem}.not-found-warning{color:#dc2626;text-align:left;background-color:#fef2f2;border:1px solid #fecaca;border-radius:4px;flex-shrink:0;margin:8px 0;padding:4px 8px;font-size:.75rem}.map-container{border:2px solid var(--color-primary);background:#fafdff;border-radius:16px;flex:1;width:100%;min-width:400px;height:100%;min-height:0;transition:opacity .3s;position:relative;overflow:hidden}@container app (height<=900px){.left-content{gap:12px}.controls-stack{gap:10px}}@container app (height<=700px){.left-content{gap:10px}.controls-stack{gap:8px}.button-group{flex-direction:column;gap:8px;margin-bottom:12px}.search-container,.action-button{flex:none;width:100%}}@container app (height<=600px){:scope{height:calc(100vh - var(--header-height,64px) - 60px)}.left-content{gap:8px;padding-bottom:12px}.controls-stack{gap:6px}.button-group{flex-direction:column;gap:6px;margin-bottom:8px}.search-container,.action-button{flex:none;width:100%}}.map-container .map-panel{width:100%;height:100%;min-height:100%;position:absolute;top:0;left:0}.map-container.loading-address-editor{opacity:.6;pointer-events:none}.map-container:empty{background:#f7fafc}.right-column{box-sizing:border-box;background:#fff;border:none;border-radius:20px;flex-direction:column;flex:1;align-items:stretch;gap:16px;min-width:0;height:100%;min-height:0;padding:20px;display:flex;position:relative;overflow:auto;box-shadow:0 2px 10px #00000014}.address-list-wrapper{flex-direction:column;flex:1;width:100%;height:100%;min-height:0;display:flex}.tour-properties-panel{border:1px solid var(--gray-200);background:#fff;border-radius:10px;margin-bottom:10px;padding:12px 14px}.tour-properties-title{color:#111827;margin:0 0 8px;font-size:.95rem;font-weight:700}.tour-property-item{color:#374151;align-items:center;gap:8px;font-size:.9rem;display:inline-flex}.address-list-container{box-sizing:border-box;background:#fff;border:none;border-radius:8px;flex-direction:column;flex:1;width:100%;height:100%;min-height:0;display:flex;position:relative;overflow:auto;box-shadow:0 2px 8px #0000000f}.address-list-container .address-list{flex-direction:column;flex:1;height:100%;display:flex}.error-message{color:#c53030;background:#fff5f5;border:1px solid #feb2b2;border-radius:6px;padding:12px}.loading-address-editor{color:#4a5568;align-items:center;gap:8px;padding:12px;display:flex}.address-list-footer{background:#fff;border-top:1px solid #e0e0e0;flex-shrink:0;justify-content:center;align-items:center;height:40px;padding:0 20px;display:flex}.footer-content{align-items:center;gap:8px;display:flex}.modal-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:flex-end;padding:16px;display:flex;position:fixed;inset:64px 0 0}.modal-content{background:#fff;border-radius:8px;flex-direction:column;width:calc(100vw - 32px);max-width:calc(100vw - 32px);height:calc(100vh - 96px);max-height:calc(100vh - 96px);display:flex;overflow:hidden}.address-list{flex-direction:column;flex:1;width:100%;min-width:0;height:100%;margin:0;padding:0;display:flex;overflow:hidden}.table-controls{background:#fff;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;min-height:44px;padding:4px 8px;display:flex;position:relative}.table-controls-left{flex:1;align-items:center;gap:12px;margin-left:-8px;padding-left:0;display:flex}.table-controls-right{align-items:center;gap:8px;display:flex}.select-all-container{background:0 0;border:none;border-radius:4px;outline:none;align-items:center;gap:6px;padding:4px 8px;display:flex}.select-all-label{color:#374151;cursor:pointer;font-size:14px;font-weight:500}.settings-button{color:var(--gray-500);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:36px;height:36px;padding:8px;transition:all .2s;display:flex}.settings-button:hover{color:#475569;background:#f1f5f9}.hamburger-icon{flex-direction:column;gap:3px;width:16px;height:12px;display:flex}.hamburger-icon span{background:currentColor;border-radius:1px;width:100%;height:2px;transition:all .2s}.settings-button:hover .hamburger-icon span{background:var(--gray-700)}.calendar-export-button{color:var(--gray-500);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:36px;height:36px;padding:8px;transition:all .2s;display:flex}.calendar-export-button:hover:not(:disabled){color:#475569;background:#f1f5f9}.calendar-export-button:disabled{opacity:.5;cursor:not-allowed}.calendar-export-button svg{width:18px;height:18px;display:block;transform:translateY(2px)}.column-settings-modal{z-index:1000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.column-settings-content{background:#fff;border-radius:8px;width:90%;max-width:90vw;max-height:85%;padding:0;overflow:hidden auto}.modal-header{border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding:20px 20px 16px;display:flex}.modal-header h3{color:var(--gray-500);text-transform:uppercase;letter-spacing:.5px;margin:0;font-size:14px;font-weight:600}.close-button{color:var(--gray-500);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:32px;height:32px;padding:4px;font-size:24px;transition:all .2s;display:flex}.column-checkboxes{grid-template-columns:1fr 1fr 1fr 1fr;gap:8px;margin:20px;padding-bottom:20px;display:grid}.column-checkbox{cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;align-items:center;gap:8px;padding:8px 12px;transition:background .2s;display:flex}.column-checkbox:hover{border-color:var(--gray-300);background:#f1f5f9}.column-checkbox input[type=checkbox]{margin:0}.object-management-section{margin:24px 20px 0;padding-bottom:20px}.object-management-section-title{color:var(--gray-500);text-transform:uppercase;letter-spacing:.5px;margin:0 0 12px;font-size:14px;font-weight:600}.object-management-checkboxes{grid-template-columns:1fr 1fr 1fr 1fr;gap:8px;margin:0;display:grid}.samples-section{border-top:2px solid #e2e8f0;margin:24px 20px 0;padding-top:20px;padding-bottom:20px}.samples-section-title{color:var(--gray-500);text-transform:uppercase;letter-spacing:.5px;margin:0 0 12px;font-size:14px;font-weight:600}.samples-checkboxes{grid-template-columns:1fr 1fr 1fr 1fr;gap:8px;margin:0;display:grid}.metadata-section{border-top:2px solid #e2e8f0;margin:24px 20px 0;padding-top:20px;padding-bottom:20px}.metadata-section-title{color:var(--gray-500);text-transform:uppercase;letter-spacing:.5px;margin:0 0 12px;font-size:14px;font-weight:600}.metadata-checkboxes{grid-template-columns:1fr 1fr 1fr 1fr;gap:8px;margin:0;display:grid}.filter-row{border-bottom:1px solid #e2e8f0;margin:0 20px 16px;padding-bottom:16px}.filter-row:last-child{border-bottom:none;margin-bottom:0}.filter-row-title{color:var(--gray-500);text-transform:uppercase;letter-spacing:.5px;margin:0 0 12px;font-size:14px;font-weight:600}.filter-row .column-checkboxes{grid-template-columns:1fr 1fr 1fr 1fr;gap:8px;margin:0;display:grid}.close-settings{background:var(--gray-500);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:8px 16px;font-size:14px;font-weight:500;transition:background .2s}.close-settings:hover{background:#4b5563}.empty-state{text-align:center;color:#718096;padding:60px 20px}.empty-icon{margin-bottom:16px;font-size:3rem}.empty-state h3{color:#4a5568;margin:0 0 8px;font-size:1.5rem;font-weight:600}.empty-state p{color:#718096;margin:0;font-size:1rem}.table-container{box-sizing:border-box;background:#fff;border-radius:8px;flex-direction:column;flex:1;width:100%;min-width:0;min-height:0;margin:0;padding:0;display:flex;overflow:auto}.address-grid{border:1px solid var(--gray-300);box-sizing:border-box;border-radius:8px;gap:0;width:100%;min-width:100%;font-size:14px;display:grid;overflow:auto}.grid-row>div:last-child,.grid-header>div:last-child{border-right:none}.address-grid{min-width:100%;gap:0!important;width:100%!important}.address-grid:not([style*=grid-template-columns]){grid-template-columns:200px 1fr 1fr 1fr 1fr}.grid-header>div,.grid-row>div{box-sizing:border-box!important;flex:1!important;width:100%!important;margin:0!important;padding:4px 8px!important}.grid-header>div:last-child,.grid-row>div:last-child{border-right:none!important;flex:1!important;width:100%!important}.address-grid{min-width:100%;max-width:100%}.address-grid>div:last-child{flex:1!important;min-width:0!important}.col-street{min-width:150px}.col-data{width:80px;min-width:60px}.col-data[data-field=label]{width:120px;min-width:100px}.col-data[data-field=legionellen],.col-data[data-field=mibi],.col-data[data-field=chemie]{text-align:center;width:50px;min-width:40px}td.col-data[data-field=legionellen],td.col-data[data-field=mibi],td.col-data[data-field=chemie]{text-align:center}.street-cell-content{justify-content:flex-start;align-items:center;gap:8px;width:100%;height:100%;min-height:24px;display:flex}.street-text{flex:1;align-items:center;min-width:0;height:100%;line-height:22px;display:flex}.street-cell-content input[type=checkbox]{width:14px;height:14px;accent-color:var(--color-primary);flex-shrink:0;margin:0}.header-content{justify-content:flex-start;align-items:center;gap:8px;width:100%;height:100%;min-height:40px;display:flex}.resizable{position:relative}.resize-handle{cursor:col-resize;z-index:10;background:#0000000d;border-right:1px solid #e0e0e0;width:6px;transition:none;position:absolute;top:0;bottom:0;right:0}.resize-handle:hover{background:rgba(var(--color-primary-rgb), .1);border-right:1px solid var(--color-primary)}.resize-handle:active{background:rgba(var(--color-primary-rgb), .2);border-right:2px solid var(--color-primary-dark)}.draggable-header{cursor:move;-webkit-user-select:none;user-select:none}.draggable-header.dragging{opacity:.5;background:#e3f2fd!important}.draggable-header.drag-over{border-left:3px solid #9c27b0;background:#f3e5f5!important}.drag-handle{color:var(--gray-400);cursor:move;margin-right:6px;font-size:12px;line-height:1;display:inline-block;transform:rotate(90deg)}.draggable-header:hover .drag-handle{color:var(--gray-500)}.draggable-header.dragging .drag-handle{color:#3b82f6}.field-label{flex:1}.sort-icon{cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--gray-500);border-radius:3px;justify-content:center;align-items:center;min-width:20px;height:20px;margin-left:8px;padding:2px 4px;font-size:14px;font-weight:700;transition:all .2s;display:inline-flex}.sort-icon:hover{color:#374151;background-color:#f3f4f6}.sorted-asc,.sorted-desc{color:#1d4ed8!important;background-color:#dbeafe!important}.sorted-asc:hover,.sorted-desc:hover{color:#1e40af!important;background-color:#bfdbfe!important}.row-number{background:var(--color-accent);cursor:pointer;border-radius:50%;flex-shrink:0;width:10px;height:10px;display:inline-flex}.row-number.inactive{background:var(--gray-400)}.row-number:hover{background:var(--color-accent-dark)}.row-number.inactive:hover{background:var(--gray-500)}.address-count{color:var(--color-text-light);font-size:.875rem;font-weight:500}.address-table{border-collapse:collapse;border-spacing:0;-webkit-user-select:none;user-select:none;table-layout:fixed;background:#fff;width:100%;margin:0;padding:0;font-size:.875rem;border:none!important}.address-table thead{background:#fff;border:none}.address-table th{text-align:left;color:#5f6368;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;text-overflow:ellipsis;background:#fff;outline:none;padding:5px 20px;font-size:.875rem;font-weight:500;position:relative;overflow:hidden;border:none!important}.checkbox-header,.checkbox-cell{text-align:left;vertical-align:middle;justify-content:flex-start;align-items:center;width:auto;min-width:200px;display:flex;padding:2px 4px!important}@container app (width<=768px){.checkbox-header,.checkbox-cell{min-width:150px;padding:4px 6px!important}.street-header{margin-left:4px}}.checkbox-number-container{justify-content:flex-start;align-items:center;gap:0;width:100%;height:100%;display:flex}@container app (width<=768px){.checkbox-number-container{gap:4px}}@container app (width<=480px){.checkbox-header,.checkbox-cell{width:40px;min-width:40px;max-width:40px;padding:3px 1px!important}.checkbox-number-container{gap:2px}.header-spacer{width:20px;height:20px}.circle{width:20px;height:20px;font-size:.7rem}}.checkbox-header .checkbox-number-container{justify-content:flex-start}.header-spacer{flex-shrink:0;width:28px;height:28px}.street-header{color:var(--gray-700);flex:1;margin-left:6px;font-size:.9rem;font-weight:600}@container app (height<=768px){.header-spacer{width:24px;height:24px}}.select-all-checkbox,.address-checkbox{cursor:pointer;accent-color:#ff6b35;vertical-align:middle;flex-shrink:0;width:16px;height:16px;margin:0}.circle{background:var(--color-accent);cursor:pointer;border-radius:50%;flex-shrink:0;width:12px;height:12px;margin:0 auto;transition:all .2s;display:flex}.circle:hover{background:var(--color-primary-dark);transform:scale(1.05)}.circle.inactive{background:var(--gray-400);color:#fff}.circle.inactive:hover{background:var(--gray-500)}.address-row.inactive{opacity:.6}.address-table td{vertical-align:middle;outline:none;padding:5px 20px}.address-row{cursor:pointer;border-bottom:1px solid #f0f0f0;height:46px;transition:background-color .2s,transform .1s}.address-row.editing{background:#ebf8ff;border-left:4px solid #667eea;transition:background-color .3s,border-left .3s}.inline-editor{transition:max-height .3s;overflow:hidden}.inline-editor[style*="max-height: 0"]{max-height:0}.inline-editor[style*="max-height: 400px"]{max-height:400px}.street-info{flex-direction:column;gap:4px;display:flex}.street-text{color:#2d3748;font-weight:500}.coordinates{color:#718096;font-family:monospace;font-size:.8rem}.postal-cell{color:#4a5568;font-weight:500}.tour-id-cell,.tour-name-cell{color:#4a5568}.last-visited-cell{color:#718096;font-size:.85rem}.data-cell{cursor:pointer;padding:5px 20px;transition:background-color .2s}.address-row:hover{background-color:#f7fafc}.data-cell:hover{background-color:#0000}.field-display{color:#2d3748;white-space:nowrap;text-overflow:ellipsis;width:100%;padding:4px 0;font-size:.875rem;display:block;overflow:hidden}.address-row.selected{background-color:#fff3e0;border-left:4px solid #ff6b35}.address-row.selected:hover{background-color:#ffe0b3}.address-row.selected.editing{background-color:#fff3e0}@container app (width<=768px){.address-table th,.address-table td{padding:8px 12px;font-size:.85rem}.coordinates{font-size:.75rem}.action-buttons{gap:4px}.action-button{width:28px;height:28px;font-size:.9rem}}@container app (height<=900px){.address-table-container{max-height:calc(100vh - 200px)}.address-table th,.address-table td{padding:4px 16px}.address-row{height:40px}}@container app (height<=768px){.address-table th,.address-table td{padding:3px 12px}.address-row{height:36px}.circle{width:24px;height:24px;font-size:.8rem}}@container app (height>=1000px) and (height<=1100px){.address-table-container{max-height:calc(100% - 60px)}.address-table th,.address-table td{padding:6px 18px}.address-row{height:44px}}@container app (height<=600px){.address-table th,.address-table td{padding:2px 8px}.address-row{height:32px}.circle{width:20px;height:20px;font-size:.7rem}.address-table{font-size:.8rem}}.address-table-container{scrollbar-width:thin;scrollbar-color:#cbd5e0 #f7fafc}.address-table-container::-webkit-scrollbar{width:8px}.address-table-container::-webkit-scrollbar-track{background:#f7fafc;border-radius:4px}.address-table-container::-webkit-scrollbar-thumb{background:#cbd5e0;border-radius:4px}.address-table-container::-webkit-scrollbar-thumb:hover{background:#a0aec0}.address-grid{border:1px solid var(--gray-300);box-sizing:border-box;contain:layout;border-radius:8px;gap:0;width:100%;min-width:100%;font-size:14px;display:grid;position:relative;overflow:auto}.grid-header{display:contents}.grid-header>div{border-right:1px solid var(--gray-300);border-bottom:1px solid var(--gray-300);text-align:left;z-index:10;box-sizing:border-box;background:#f8fafc;flex:1;align-items:center;width:100%;min-height:50px;margin:0;padding:12px 8px;font-weight:600;display:flex;position:sticky;top:0}.grid-header>div.col-street{font-weight:700}.grid-row{cursor:pointer;display:contents}.grid-row>div{border-bottom:1px solid var(--gray-200);border-right:1px solid var(--gray-300);vertical-align:middle;text-overflow:ellipsis;white-space:nowrap;box-sizing:border-box;flex:1;align-items:center;width:100%;min-height:32px;margin:0;padding:4px 8px;font-weight:400;display:flex;position:relative;overflow:hidden}.grid-row>div.col-street{font-weight:600}.grid-row:hover>div{background:#f9fafb}.grid-row.selected>div{background:#eff6ff}.grid-row.editing>div{background:#fef3c7}.grid-row.inactive>div{opacity:.6}.grid-row>div:last-child,.grid-header>div:last-child{border-right:none}.header-content{flex:1;align-items:center;gap:0;width:100%;min-width:0;display:flex;position:relative;overflow:hidden}.field-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;margin-right:4px;overflow:hidden}.sort-icon{cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--gray-500);flex-shrink:0;min-width:16px;margin-left:auto;margin-right:4px;font-weight:700;transition:color .2s}.sort-icon:hover{color:#374151}.sort-icon.sorted-asc,.sort-icon.sorted-desc{color:#3b82f6}.resize-handle{cursor:col-resize;z-index:10;background:0 0;width:4px;position:absolute;top:0;bottom:0;right:0}.resize-handle:hover{background:#3b82f6}.grid-header>div{position:relative}.grid-row>div,.grid-header>div{word-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;min-width:0;overflow:hidden}.grid-row>div{border:1px solid var(--gray-200);border-right:1px solid var(--gray-300);border-bottom:1px solid var(--gray-200)}.grid-header>div{border:1px solid var(--gray-300);border-right:1px solid var(--gray-300);border-bottom:1px solid var(--gray-300)}.address-form{max-height:90%;padding:24px;overflow-y:auto}.form-header{border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;display:flex}.form-header h2{color:#2d3748;margin:0;font-size:1.5rem;font-weight:600}.close-button{color:#718096;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px;font-size:1.5rem;transition:all .2s}.close-button:hover{color:#4a5568;background:#f7fafc}.form-content{margin-bottom:24px}.form-sections{flex-direction:column;gap:24px;display:flex}.form-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:20px}.form-section h3{color:#4a5568;margin:0 0 16px;font-size:1.1rem;font-weight:600}.form-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.form-group{flex-direction:column;gap:6px;display:flex}.form-input,.form-select{background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:10px 12px;font-size:.9rem;transition:border-color .2s}.form-input:focus,.form-select:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 3px #667eea1a}.form-actions{border-top:1px solid #e2e8f0;justify-content:flex-end;gap:12px;padding-top:16px;display:flex}.cancel-button{color:#4a5568;cursor:pointer;background:#f7fafc;border:1px solid #e2e8f0;border-radius:6px;padding:10px 20px;font-size:.9rem;font-weight:500;transition:all .2s}.cancel-button:hover:not(:disabled){background:#edf2f7;border-color:#cbd5e0}.save-button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;border-radius:6px;align-items:center;gap:8px;padding:10px 24px;font-size:.9rem;font-weight:600;transition:all .2s;display:flex}.save-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d}.save-button:disabled{opacity:.6;cursor:not-allowed;transform:none}@container app (width<=768px){.address-form{padding:16px}.form-row{grid-template-columns:1fr;gap:12px}.form-actions{flex-direction:column-reverse}}.tour-filter{flex-shrink:0;align-items:flex-start;gap:4px;display:flex;position:relative}.tour-id-boxes{flex-wrap:wrap;gap:6px;width:100%;max-width:100%;animation:.3s ease-in-out fadeIn-address-editor;display:flex}.tour-id-box{color:var(--gray-900);cursor:pointer;white-space:nowrap;background:#fafdff;border:1px solid #e0eaff;border-radius:8px;padding:4px 8px;font-size:.8rem;font-weight:500;transition:all .2s cubic-bezier(.4,0,.2,1)}.tour-id-box:hover{border-color:var(--color-primary);box-shadow:0 2px 8px rgba(var(--color-primary-rgb), .15);background:#e0eaff;transform:translateY(-1px)}.tour-id-box.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.tour-select{color:#4a5568;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:4px;min-width:150px;padding:4px 8px;font-size:.75rem;transition:border-color .2s}.tour-select:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 3px #667eea1a}.tour-select:disabled{color:#a0aec0;cursor:not-allowed;background:#f7fafc}@container app (width<=640px){.tour-filter{flex-direction:column;align-items:stretch;gap:4px}.tour-select{min-width:auto}}.tour-type-switcher{flex-direction:column;flex-shrink:0;gap:4px;width:100%;display:flex}.type-buttons{flex-wrap:wrap;justify-content:flex-start;align-items:stretch;gap:4px;width:100%;display:flex}.type-button{min-width:56px;max-width:100%;height:26px;min-height:26px;color:var(--gray-900);cursor:pointer;text-align:center;white-space:normal;overflow-wrap:anywhere;word-break:break-word;background:#fafdff;border:1px solid #e0eaff;border-radius:6px;flex:72px;justify-content:center;align-items:center;padding:0 8px;font-weight:500;line-height:1.2;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.type-buttons.first-row{flex-wrap:nowrap}.first-row .type-button{white-space:nowrap;flex:1 1 0;min-width:0}.type-buttons.second-row{grid-template-columns:repeat(4,1fr);gap:4px;display:grid}.second-row .type-button{flex:none;width:100%;min-width:0}.type-button{font-size:clamp(.72rem,.95vw,.9rem)}@container app (width<=1400px){.type-button{font-size:clamp(.7rem,1.25vw,.86rem)}}@container app (width<=1200px){.type-button{font-size:clamp(.68rem,1.2vw,.82rem)}}@container app (width<=1000px){.type-button{font-size:clamp(.66rem,1.2vw,.8rem)}}@container app (width<=800px){.type-button{font-size:clamp(.64rem,1.15vw,.78rem)}}@container app (width<=600px){.type-button{flex-basis:calc(50% - 4px);min-height:36px;padding:6px 8px;font-size:clamp(.62rem,1.1vw,.76rem)}}.second-row{margin-top:8px}.start-end-button{border-color:var(--gray-300)!important;background:#fff!important}.start-end-button:hover{box-shadow:0 2px 8px #0000001a;border-color:var(--gray-400)!important;background:#f9fafb!important}.start-end-button.active{background:var(--color-primary)!important;color:#fff!important;border-color:var(--color-primary)!important}.type-button:hover{border-color:var(--color-primary);box-shadow:0 2px 8px rgba(var(--color-primary-rgb), .15);background:#e0eaff}.type-button.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.loading-skeleton{cursor:not-allowed;position:relative;overflow:hidden;border-color:var(--gray-200)!important;background:#f3f4f6!important}.skeleton-text{background:linear-gradient(90deg, var(--gray-200) 25%, #f3f4f6 50%, var(--gray-200) 75%);background-size:200% 100%;border-radius:4px;width:60px;height:12px;animation:1.5s infinite loading-address-editor}.error-message{color:#dc2626;text-align:center;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;justify-content:center;align-items:center;width:200px;height:40px;padding:0 12px;font-size:.875rem;font-weight:500;display:flex}.inline-editor-row{display:contents}.inline-editor-cell{border-bottom:1px solid var(--gray-200);background:#fafbfc;grid-column:1/-1;padding:0!important}.inline-editor{min-height:400px;max-height:none;padding:0;overflow-y:visible}.editor-fields-grid{box-sizing:border-box;width:100%;padding:8px 12px}.editor-form-grid{flex-direction:column;gap:0;width:100%;display:flex}.editor-layout-container{align-items:stretch;gap:16px;width:100%;min-height:0;display:flex}.fields-container{flex-direction:column;flex:2;gap:8px;min-height:0;display:flex}.fields-rows-container{flex-direction:column;flex:1;gap:12px;min-height:0;display:flex}.first-section-group{flex-direction:column;gap:6px;display:flex}.metadata-container{flex-direction:column;flex:1;justify-content:space-between;align-items:flex-end;min-height:0;display:flex}.metadata-row{width:100%}.samples-block{background:#fff;border:1px solid #3b82f6;border-radius:12px;grid-column:1/-1;width:100%;max-width:100%;margin:0 0 12px;overflow:hidden;box-shadow:0 2px 8px #3b82f61a}.samples-header{color:#fff;background:#3b82f6;border-bottom:1px solid #2563eb;padding:14px 18px;font-size:.9rem;font-weight:600}.samples-fields{background:#f8fafc;flex:1;gap:0;display:flex}.samples-field{background:#fff;border-bottom:1px solid #e0e7ff;border-right:1px solid #e0e7ff;flex:1;min-width:0;margin:0;padding:10px 14px;transition:background-color .2s}.samples-field{border-bottom:none}.samples-field .field-label{color:#1e40af;font-weight:600}.samples-field .editor-input{background:#fff;border-color:#dbeafe}.samples-field .editor-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.editor-grid-row{grid-template-columns:repeat(auto-fit,120px);gap:6px;margin-bottom:8px;display:grid}.editor-grid-row.first-row{background:#fff;border:1px solid #3b82f6;border-radius:8px;flex-direction:column;flex:1;gap:12px;min-height:0;margin-bottom:0;padding:12px;display:flex;box-shadow:0 1px 3px #0000000d}.field-row{grid-template-columns:repeat(auto-fit,120px);justify-content:start;align-items:start;gap:6px;margin-bottom:8px;padding-bottom:8px;display:grid;position:relative}.field-row:last-child,.field-row--section-inline{margin-bottom:0;padding-bottom:0}.row-separator{background:#3b82f6;height:1px;margin:8px 0}.section-separator{align-items:center;gap:12px;margin:16px 0 12px;display:flex}.separator-line{background:#3b82f6;flex:1;height:1px}.separator-label{color:#64748b;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;font-size:.75rem;font-weight:600}.row-header{align-items:center;gap:8px;margin:12px 0 8px;display:flex}.row-header-line{background:#cbd5e1;border-radius:1px;flex:1;height:1px}.row-header-label{color:#64748b;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:4px 12px;font-size:.7rem;font-weight:600}.object-management-section{flex-direction:column;gap:12px;display:flex}.metadata-container-style{background:#fff;border:1px solid #3b82f6;border-radius:8px;flex-direction:column;flex:1;justify-content:flex-start;min-height:128px;margin-bottom:0;padding:12px;display:flex;box-shadow:0 1px 3px #0000000d}.field-grid-group{flex-direction:column;align-items:flex-start;min-width:0;display:flex}.field-grid-group.double-width{grid-column:span 2}.field-label{color:var(--gray-500);letter-spacing:.01em;margin-bottom:2px;margin-left:2px;font-size:.75rem;font-weight:500}.required{color:#dc2626;margin-left:2px}.editor-input{border:1px solid var(--gray-300);color:#222;box-sizing:border-box;background:#fff;border-radius:4px;outline:none;width:100%;min-width:0;height:28px;margin:0;padding:0 8px 0 6px;font-size:.85rem;transition:border-color .2s}.editor-input:focus{border-color:#3b82f6}.metadata-container-style .editor-input{border:none;flex-direction:column;flex:1;height:auto;display:flex}.metadata-container-style .editor-input:focus,.metadata-container-style .editor-input:focus-within{box-shadow:none!important;background:0 0!important;border:none!important;outline:none!important}.metadata-container-style .field-grid-group.compact{flex-direction:column;flex:1;padding-top:8px;display:flex}.metadata-container-style .editor-input.list-editor{flex-direction:column;flex:1;margin-top:8px;display:flex}.metadata-container-style .editor-input.items-list{flex-flow:column;flex:1;padding-top:8px;display:flex;overflow-y:auto}.editor-actions{flex-shrink:0;justify-content:center;align-items:center;width:100%;margin-top:12px;margin-left:0;margin-right:0;display:flex}.editor-actions .action-button:not(:last-child){margin-right:12px}.action-button{border:1px solid var(--gray-300);cursor:pointer;color:var(--gray-500);background:#fff;border-radius:4px;justify-content:center;align-items:center;width:40px;height:40px;padding:8px;transition:all .2s;display:flex}.save-button:hover:not(:disabled){color:#fff;background:#10b981;border-color:#10b981}.cancel-button:hover:not(:disabled),.delete-button:hover:not(:disabled){color:#fff;background:#ef4444;border-color:#ef4444}.action-button:disabled{opacity:.5;cursor:not-allowed}@container app (width<=900px){.editor-fields-grid{padding:10px 4px}.editor-grid-row{grid-template-columns:repeat(2,1fr);gap:10px}}@container app (width<=600px){.editor-fields-grid{padding:6px 2px}.editor-grid-row{grid-template-columns:1fr;gap:8px}.editor-actions{justify-content:center;margin-left:0}}.field-label.compact{color:var(--gray-500);margin-bottom:0;font-size:.75rem}.editor-input.compact{height:28px;padding:0 8px;font-size:.85rem}.field-grid-group.compact{margin-bottom:0}.field-grid-group input.immutable-field{opacity:.6;pointer-events:none!important;background-color:#f0f0f0!important}.field-grid-group .list-editor{background:0 0;height:auto;min-height:30px}.field-grid-group .list-editor:focus-within{z-index:10;background:#f8fafc;height:auto;min-height:30px;max-height:none;position:relative;overflow:visible;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.field-grid-group.immutable .list-editor{pointer-events:none;opacity:.6;background-color:#0000}.editor-input.list-editor{background:0 0;height:auto;min-height:30px;padding:0}.field-grid-group:has(.list-editor:focus-within){z-index:20}.field-grid-group[data-field-type=list]{grid-column:1/-1}.id-field-container{align-items:center;gap:6px;width:100%;display:flex;position:relative}.id-field-container .editor-input,.object-management-id-field-container .editor-input{text-overflow:ellipsis;white-space:nowrap;box-sizing:border-box;flex:1;width:100%;min-width:0;padding-right:32px;overflow:hidden}.id-input{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;padding-right:32px;overflow:hidden}.copy-id-icon{width:16px;height:16px;color:var(--gray-500);cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;transition:color .2s;display:flex;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.copy-id-icon:hover{color:var(--color-primary,#3b82f6)}.copy-id-icon:active{transform:translateY(-50%)scale(.95)}.object-management-id-field-container{width:100%;position:relative}.object-management-id-input{text-overflow:ellipsis;white-space:nowrap;width:100%;padding-right:32px;overflow:hidden}.copy-object-management-id-icon{width:16px;height:16px;color:var(--gray-500);cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;transition:color .2s;display:flex;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.copy-object-management-id-icon:hover{color:var(--color-primary,#3b82f6)}.copy-object-management-id-icon:active{transform:translateY(-50%)scale(.95)}.email-button-group{flex-direction:column;flex:0 0 25%;justify-content:flex-start;max-width:25%;height:28px;display:flex}.email-button-container{justify-content:flex-start;align-items:flex-start;width:100%;height:28px;padding:0;display:flex}.email-button{color:#374151;cursor:pointer;border:1px solid var(--gray-200);background:#f9fafb;border-radius:4px;justify-content:center;align-items:center;width:28px;height:28px;transition:all .2s;display:flex}.email-button:hover{color:var(--gray-500);border-color:var(--gray-300);background:#f3f4f6}.email-button:active{background:var(--gray-200);transform:scale(.95)}.email-field-container{width:100%;position:relative}.email-input{text-overflow:ellipsis;white-space:nowrap;width:100%;min-width:100%;padding-right:72px;overflow:hidden}.inline-email-button{cursor:pointer;z-index:10;width:18px;height:18px;color:var(--gray-500);opacity:.7;background:0 0;border:none;border-radius:3px;justify-content:center;align-items:center;transition:all .2s;display:flex;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.inline-email-button--with-tb{right:44px}.inline-email-button:hover{color:#374151;opacity:1;background:#0000000d}.inline-email-button:active{background:#0000001a;transform:translateY(-50%)scale(.95)}.tb-email-toggle{color:#374151;white-space:nowrap;-webkit-user-select:none;user-select:none;background:#ffffffeb;border-radius:3px;align-items:center;gap:3px;padding:1px 2px;font-size:.7rem;font-weight:600;display:flex;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.tb-email-checkbox{width:12px;height:12px;margin:0}.tb-email-text{letter-spacing:.02em;font-size:.68rem}.samples-fields{flex-direction:column;gap:0;display:flex}.samples-row{border-bottom:1px solid var(--gray-200);flex-wrap:wrap;gap:0;display:flex}.samples-row:last-child{border-bottom:none}.samples-field{border-right:1px solid var(--gray-200);padding:8px}.samples-field:last-child{border-right:none}.samples-field.half-width{flex:.5}.samples-field.equal-width{flex:1;min-width:0}.samples-field-combined{background:#fff;border-bottom:1px solid #e0e7ff;border-right:1px solid #e0e7ff;flex-direction:column;flex:1;gap:8px;min-width:0;margin:0;padding:10px 14px;display:flex}.samples-field-combined:last-child{border-right:none}.combined-field-group{flex-direction:column;gap:2px;min-width:0;display:flex}.combined-field-group .field-label{color:#1e40af;margin-bottom:0;font-size:.75rem;font-weight:600}.combined-field-group .editor-input{background:#fff;border-color:#dbeafe;height:28px;font-size:.85rem}.combined-field-group .editor-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.combined-field-group .editor-checkbox{accent-color:#2563eb;width:16px;height:16px;margin-top:4px}.combined-field-group--checkbox{flex-direction:row;align-items:center}.combined-field-group--checkbox .checkbox-label{align-items:center;gap:8px;margin:0;display:inline-flex}.combined-field-group--checkbox .editor-checkbox{margin:0}.samples-add-row{background:#f8fafc;border-bottom:1px solid #e0e7ff;padding:8px 14px}.samples-add-container{width:100%}.samples-add-select{color:#1e40af;cursor:pointer;background:#fff;border:1px solid #dbeafe;border-radius:4px;width:100%;height:32px;padding:0 8px;font-size:.85rem;transition:border-color .2s}.samples-add-select:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px #3b82f61a}.samples-add-select:hover{border-color:#93c5fd}.sampling-type-header{justify-content:space-between;align-items:center;width:100%;margin-bottom:2px;display:flex}.sampling-type-header .field-label{flex:1;margin-bottom:0}.remove-sampling-type-btn{cursor:pointer;color:#ef4444;opacity:.6;background:0 0;border:none;border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;padding:2px 4px;transition:all .2s;display:flex}.remove-sampling-type-btn:hover{opacity:1;background:#ef44441a}.remove-sampling-type-btn:active{transform:scale(.95)}.batch-edit-modal{--data-index-width:0px;--data-col-width:240px;--data-col-narrow:130px;--matrix-address-col-width:320px;--matrix-month-col-width:110px;--samples-index-width:0px;--samples-object-width:320px;--samples-value-width:180px;background:#fff;border-radius:12px;flex-direction:column;width:100%;height:90%;max-height:90%;display:flex;overflow:hidden}.modal-header{border-bottom:1px solid var(--gray-200);background:#fff;flex:none;padding:20px 20px 0;position:relative}.batch-edit-modal .data-header-nav{top:50%;left:calc(50% + (var(--data-index-width) + var(--data-col-width) + var(--data-col-narrow) + var(--data-col-narrow)) / 2);position:absolute;transform:translate(-50%,-50%)}.modal-header .header-actions{margin-bottom:0}.modal-header .blue-line{margin:20px -20px 10px}.page-navigation{gap:4px;margin-right:20px;display:flex}.data-header-nav{pointer-events:none;z-index:2;grid-template-columns:40px minmax(150px,1fr) 40px;align-items:center;column-gap:8px;width:clamp(260px,34vw,340px);display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.data-header-nav>*{pointer-events:auto}.dashboard-nav-button{cursor:pointer;width:40px;height:40px;color:var(--gray-700);background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:0;transition:background-color .2s;display:flex}.dashboard-nav-button:hover{background-color:#b5bec61a}.dashboard-nav-button:disabled{opacity:.4;cursor:not-allowed}.dashboard-nav-button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.dashboard-nav-button svg{width:20px;height:20px}.data-header-nav-label{text-align:center;color:#64748b;white-space:nowrap;font-size:.85rem;font-weight:600}.page-button{color:#64748b;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;padding:8px 16px;font-size:.9rem;font-weight:500;transition:all .2s}.page-button:hover{background:#e2e8f0;border-color:#cbd5e1}.page-button.active{color:#fff;background:#3b82f6;border-color:#3b82f6}.modal-content{flex:1;min-height:0;padding:0 20px;overflow:hidden auto}.modal-content--samples{overflow-x:auto}.modal-content--data{min-height:0;display:flex;overflow:hidden}.modal-footer{border-top:1px solid var(--gray-200);background:#fff;flex:none;padding:0 20px 20px}.batch-edit-modal.data-page-active .modal-header{border-bottom:none}.batch-edit-modal.data-page-active .modal-footer{border-top:none}.modal-footer .blue-line{margin:10px -20px 20px}.error-message{color:#c53030;background:#fed7d7;border:1px solid #feb2b2;border-radius:6px;margin-bottom:16px;padding:12px}.form-section{background:0 0;border:none;border-radius:8px;margin-bottom:2px;padding:20px}.form-group{flex-direction:column;gap:6px;display:flex;position:relative}.form-select{background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:10px 12px;font-size:.9rem;transition:border-color .2s}.form-select:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 3px #667eea1a}.form-select:disabled{color:#a0aec0;cursor:not-allowed;background:#f7fafc}.loading-indicator{border:2px solid #e2e8f0;border-top-color:#667eea;border-radius:50%;width:16px;height:16px;animation:1s linear infinite spin-address-editor-centered;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.blue-line{background:linear-gradient(90deg,#fff,#4f8cff 50%,#fff);height:2px;margin:0}.upper-line{margin:20px 0 10px}.lower-line{margin:10px 0 20px}.matrix-section{background:0 0;border:none;border-radius:8px;width:100%;min-height:400px;margin:0;padding:0;position:relative;overflow:visible}.matrix-container{width:100%;margin:0;padding:0;position:relative;overflow-x:auto}.matrix-table{border-collapse:collapse;table-layout:fixed;box-sizing:border-box;width:max-content;min-width:100%;min-height:300px;margin:0;padding:0;font-size:1rem}.table-scroll-container{width:100%;max-width:100%;overflow:auto}.col-index{width:50px!important}.col-address{width:var(--matrix-address-col-width)!important}.col-month{width:var(--matrix-month-col-width)!important}.matrix-table th{text-align:center;color:#4a5568;height:50px;padding:12px 16px;font-weight:600;box-shadow:0 2px 4px #0000001a;z-index:1000!important;opacity:1!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;background:#fff!important;border-bottom:1px solid #f1f5f9!important;border-right:1px solid #f1f5f9!important;position:sticky!important;top:0!important}.matrix-table th:last-child{border-right:none!important}.matrix-table td{text-align:center;vertical-align:top;border-bottom:1px solid #f1f5f9;border-right:1px solid #f1f5f9;padding:8px 12px;box-sizing:border-box!important}.matrix-table td:last-child{border-right:none!important}.matrix-table tbody tr:last-child td{border-bottom:none!important}.matrix-table tbody tr:hover td,.matrix-table tbody tr:hover .address-index,.matrix-table tbody tr:hover .address-label{background-color:#667eea0d!important}.data-section{flex-direction:column;flex:auto;gap:12px;min-height:0;padding:0 0 20px;display:flex}.data-table-layout{flex-direction:column;flex:auto;gap:8px;min-height:0;display:flex}.data-table-shell{flex:auto;min-height:0;display:flex}.data-table-wrapper{border:1px solid var(--gray-300);background:#fff;border-top:none;border-radius:8px;flex-direction:column;flex:1;width:100%;min-height:0;max-height:100%;display:flex;overflow:hidden}.data-table-split{flex:auto;width:100%;height:100%;min-height:0;display:flex}.data-table-fixed{flex:0 0 calc(var(--data-index-width) + var(--data-col-width) + var(--data-col-narrow) + var(--data-col-narrow));width:calc(var(--data-index-width) + var(--data-col-width) + var(--data-col-narrow) + var(--data-col-narrow));background:#f8fbff;border-right:3px solid #94a3b8;min-width:0;max-width:100%;height:100%;max-height:100%;overflow:hidden auto}.data-table-fixed::-webkit-scrollbar{width:0;height:0}.data-table-fixed{scrollbar-width:none}.data-table-scroll{--data-header-height:86px;scrollbar-gutter:stable;scrollbar-width:auto;flex:auto;min-width:0;height:100%;max-height:100%;position:relative;overflow:hidden auto}.data-table{border-collapse:collapse;table-layout:fixed;--data-header-height:86px;width:100%;min-width:0;font-size:1rem}.data-table-scroll-grid{table-layout:fixed;width:100%;min-width:0}.data-col-index-fixed{width:var(--data-index-width)!important}.data-col-scroll,.data-table-scroll-grid th,.data-table-scroll-grid td{width:33.3333%!important;min-width:33.3333%!important;max-width:33.3333%!important}.data-placeholder-cell{background:#fff}.data-header-placeholder{width:100%;min-height:36px}.data-cell-placeholder{width:100%;min-height:20px;display:block}.data-table th,.data-table td{text-align:left;vertical-align:middle;box-sizing:border-box;border-bottom:1px solid #f1f5f9;border-right:1px solid #f1f5f9;width:auto;min-width:0;min-height:60px;padding:8px 12px;overflow:hidden}.data-table-fixed-grid{table-layout:fixed;width:100%;min-width:0}.data-col-street{width:var(--data-col-width)!important;min-width:var(--data-col-width)!important;max-width:var(--data-col-width)!important}.data-col-postal,.data-col-building{width:var(--data-col-narrow)!important;min-width:var(--data-col-narrow)!important;max-width:var(--data-col-narrow)!important}.data-table thead th{z-index:1000;height:var(--data-header-height);min-height:var(--data-header-height);vertical-align:top;position:sticky;top:0;box-shadow:0 2px 4px #0000001a;background:#fff!important;border-bottom:1px solid #f1f5f9!important;border-right:1px solid #f1f5f9!important}.data-table thead tr:first-child th{padding:12px 16px}.data-table tbody td{vertical-align:middle;height:60px;padding:8px 4px}.data-table-fixed .data-table thead th,.data-table-fixed .data-table tbody td{background:#f8fbff!important}.data-table-fixed .data-table tbody tr:hover td{background-color:#edf4ff!important}.data-cell-editor{align-items:center;width:100%;height:100%;display:flex}.data-cell-input{width:100%;height:36px}.editable-cell{cursor:pointer}.data-header-content{flex-direction:column;gap:6px;min-width:0;display:flex}.data-header-label{color:#4a5568;white-space:nowrap;text-overflow:ellipsis;font-size:1rem;font-weight:600;line-height:1.2;overflow:hidden}.data-header-apply{justify-content:center}.data-header-input{border:1px solid var(--gray-300);background:#fff;border-radius:6px;width:100%;min-width:0;height:36px;padding:6px 8px;font-size:.85rem}.data-header-input:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px #3b82f626}.data-header-input[type=checkbox]{width:18px;height:18px;padding:0}.data-header-input.immutable-field{color:#94a3b8;cursor:not-allowed;background:#f1f5f9}.apply-field{align-items:center;gap:6px;display:flex}.apply-field--disabled{min-height:36px}.apply-check{color:#fff;cursor:pointer;background:#22c55e;border:1px solid #86efac;border-radius:6px;flex:none;width:28px;height:28px;font-weight:700}.apply-check:disabled{color:#94a3b8;cursor:not-allowed;background:#f1f5f9;border-color:#e2e8f0}.data-header-apply .apply-check{border-radius:6px;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.cell-value{text-overflow:ellipsis;white-space:nowrap;color:#1f2937;align-items:center;max-width:100%;height:100%;font-size:1rem;display:flex;overflow:hidden}.applied-cell{background:#3b82f614}.sticky-col{z-index:4;border-right:1px solid var(--gray-300);background:#f8fafc;position:sticky;left:0}.data-index-header,.data-index-cell{width:var(--data-index-width);min-width:var(--data-index-width);text-align:center}.data-table th.data-index-header,.data-table td.data-index-cell{width:var(--data-index-width)!important;min-width:var(--data-index-width)!important;max-width:var(--data-index-width)!important}.data-index-header{padding:12px 4px}.data-index-cell{justify-content:center;align-items:center;height:60px;padding:0 4px;display:flex}.apply-label{color:#3b82f6;font-weight:700}.data-table tbody tr:hover td{background-color:#667eea0d!important}.data-table-scroll .data-table th:last-child,.data-table-scroll .data-table td:last-child{border-right:none}.samples-table-wrapper{border:1px solid var(--gray-300);background:#fff;border-top:none;border-radius:8px;flex:1;width:100%;max-width:100%;min-height:0;overflow:auto}.samples-add-inline{flex-wrap:wrap;flex:auto;align-items:center;gap:12px;min-width:0;display:flex}.samples-add-label{color:#1f2937;white-space:nowrap;font-weight:600}.samples-type-buttons{flex-wrap:wrap;gap:8px;display:flex}.samples-type-button{height:36px;color:var(--gray-900);cursor:pointer;text-align:center;white-space:nowrap;background:#fafdff;border:1px solid #e0eaff;border-radius:8px;justify-content:center;align-items:center;padding:0 12px;font-size:.85rem;font-weight:500;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.samples-type-button.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.samples-type-button:hover{border-color:var(--color-primary);box-shadow:0 2px 8px rgba(var(--color-primary-rgb), .15);background:#e0eaff}.samples-type-button.active:hover{background:var(--color-primary-dark);border-color:var(--color-primary-dark)}.samples-add-controls,.samples-add-group{align-items:center;gap:6px;display:flex}.samples-time-label{color:#1f2937;white-space:nowrap;font-size:.85rem;font-weight:600}.samples-count-input,.samples-time-input{border:1px solid var(--gray-300);background:#fff;border-radius:6px;width:80px;height:36px;padding:6px 8px;font-size:.85rem}.samples-count-input:focus,.samples-time-input:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px #3b82f626}.samples-count-input:disabled,.samples-time-input:disabled{color:#94a3b8;background:#f1f5f9}.samples-add-button{color:#fff;cursor:pointer;background:#2563eb;border:1px solid #4f8cff;border-radius:6px;justify-content:center;align-items:center;width:36px;height:36px;font-size:20px;font-weight:800;line-height:1;display:flex}.samples-add-button:disabled{color:#94a3b8;cursor:not-allowed;background:#e2e8f0;border-color:#e2e8f0}.samples-table-grid{border-collapse:collapse;table-layout:fixed;--samples-header-height:86px;width:max-content;min-width:100%;font-size:1rem}.samples-table-grid th,.samples-table-grid td{text-align:center;vertical-align:middle;box-sizing:border-box;border-bottom:1px solid #f1f5f9;border-right:1px solid #f1f5f9;min-height:60px;padding:8px 12px;overflow:hidden}.samples-table-grid thead th{z-index:1000;height:var(--samples-header-height);min-height:var(--samples-header-height);vertical-align:top;font-weight:700;position:sticky;top:0;box-shadow:0 2px 4px #0000001a;background:#fff!important;border-bottom:1px solid #f1f5f9!important;border-right:1px solid #f1f5f9!important}.samples-table-grid thead tr:first-child th{padding:12px 16px}.samples-table-grid tbody td{height:60px;padding:8px 4px}.samples-col-index{width:var(--samples-index-width)}.samples-col-object{width:var(--samples-object-width)}.samples-col-sample{width:var(--samples-value-width)}.samples-sticky-index{left:0}.samples-sticky-object{left:var(--samples-index-width)}.samples-table-grid tbody .samples-sticky-object{text-align:left;vertical-align:middle;height:60px;padding:0 15px}.samples-table-grid tbody .sticky-col{z-index:1;background:#fff}.samples-header{color:#4a5568;font-size:1rem;font-weight:700}.samples-header-content{flex-direction:column;gap:6px;display:flex}.samples-header-label{white-space:nowrap;text-overflow:ellipsis;font-weight:700;line-height:1.2;overflow:hidden}.samples-header-apply{justify-content:center}.samples-header-input{border:1px solid var(--gray-300);background:#fff;border-radius:6px;width:64px;min-width:0;height:36px;padding:6px 8px;font-size:.85rem}.samples-header-input:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px #3b82f626}.samples-header-apply .apply-check{border-radius:6px;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.samples-table-grid tbody tr:hover td,.samples-table-grid tbody tr:hover .samples-sticky-index,.samples-table-grid tbody tr:hover .samples-sticky-object{background-color:#667eea0d!important}.samples-table-grid th:last-child,.samples-table-grid td:last-child{border-right:none}.samples-index-cell{text-align:center;height:60px;padding:0 4px}.samples-table-grid tbody td{vertical-align:middle;height:60px;padding:0 12px}.samples-table-grid tbody .address-label{padding:0 15px!important}.data-section .list-editor{width:100%}:is(.matrix-table:has(:is(th,td):nth-child(3):hover) th:nth-child(3),.matrix-table:has(:is(th,td):nth-child(4):hover) th:nth-child(4),.matrix-table:has(:is(th,td):nth-child(5):hover) th:nth-child(5),.matrix-table:has(:is(th,td):nth-child(6):hover) th:nth-child(6),.matrix-table:has(:is(th,td):nth-child(7):hover) th:nth-child(7),.matrix-table:has(:is(th,td):nth-child(8):hover) th:nth-child(8),.matrix-table:has(:is(th,td):nth-child(9):hover) th:nth-child(9),.matrix-table:has(:is(th,td):nth-child(10):hover) th:nth-child(10),.matrix-table:has(:is(th,td):nth-child(11):hover) th:nth-child(11),.matrix-table:has(:is(th,td):nth-child(12):hover) th:nth-child(12),.matrix-table:has(:is(th,td):nth-child(13):hover) th:nth-child(13),.matrix-table:has(:is(th,td):nth-child(14):hover) th:nth-child(14)){background-color:#667eea1a!important}:is(.matrix-table:has(:is(th,td):nth-child(3):hover) tbody td:nth-child(3),.matrix-table:has(:is(th,td):nth-child(4):hover) tbody td:nth-child(4),.matrix-table:has(:is(th,td):nth-child(5):hover) tbody td:nth-child(5),.matrix-table:has(:is(th,td):nth-child(6):hover) tbody td:nth-child(6),.matrix-table:has(:is(th,td):nth-child(7):hover) tbody td:nth-child(7),.matrix-table:has(:is(th,td):nth-child(8):hover) tbody td:nth-child(8),.matrix-table:has(:is(th,td):nth-child(9):hover) tbody td:nth-child(9),.matrix-table:has(:is(th,td):nth-child(10):hover) tbody td:nth-child(10),.matrix-table:has(:is(th,td):nth-child(11):hover) tbody td:nth-child(11),.matrix-table:has(:is(th,td):nth-child(12):hover) tbody td:nth-child(12),.matrix-table:has(:is(th,td):nth-child(13):hover) tbody td:nth-child(13),.matrix-table:has(:is(th,td):nth-child(14):hover) tbody td:nth-child(14)){background-color:#667eea0d!important}.matrix-cell.visited-inactive{background-color:#4caf501a!important;border:1px solid #4caf504d!important}.matrix-table th.checkbox-header{text-align:center!important;vertical-align:middle!important;box-sizing:border-box!important;z-index:1000!important;color:#4a5568!important;opacity:1!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;background:#fff!important;border-bottom:1px solid #f1f5f9!important;border-right:1px solid #f1f5f9!important;width:50px!important;height:50px!important;padding:12px 16px!important;font-weight:600!important;position:sticky!important;top:0!important;box-shadow:0 2px 4px #0000001a!important}.address-header{color:#4a5568;white-space:nowrap;min-width:200px;width:var(--matrix-address-col-width);box-sizing:border-box;font-size:1rem;font-weight:600;text-align:center!important;z-index:1000!important;opacity:1!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;background:#fff!important;border-bottom:1px solid #f1f5f9!important;border-right:1px solid #f1f5f9!important;padding:12px 16px!important;position:sticky!important;top:0!important;box-shadow:0 2px 4px #0000001a!important}.address-index{text-align:center;box-sizing:border-box!important;width:50px!important;min-width:50px!important;max-width:50px!important;padding:8px 4px!important}.circle{color:#fff;text-align:center;cursor:pointer;-webkit-user-select:none;user-select:none;background:#4f8cff;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;margin:0 auto;font-size:.9rem;font-weight:600;display:flex}.circle--inactive{background:var(--gray-400)}.circle--inactive:hover:not(.circle--busy){background:var(--gray-500)}.circle:not(.circle--inactive):hover:not(.circle--busy){background:var(--color-accent-dark)}.circle--busy{opacity:.65;pointer-events:none;cursor:wait}.matrix-table tbody tr.matrix-row--inactive-object:hover .circle.circle--inactive:not(.circle--busy){background:var(--gray-400);color:#fff;box-shadow:0 0 0 2px #f59e0b}.circle span{text-align:center;width:100%;margin:0;padding:0;display:block}.address-label{color:#222;white-space:nowrap;min-width:200px;width:var(--matrix-address-col-width);font-size:1.1rem;font-weight:500;text-align:left!important;box-sizing:border-box!important;padding:8px 15px!important}.address-info{flex-direction:column;gap:2px;min-width:0;display:flex}.address-street{color:#1a202c;white-space:nowrap;text-overflow:ellipsis;font-size:.95rem;font-weight:600;overflow:hidden}.address-building{color:#4a5568;white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;font-weight:500;overflow:hidden}.address-id-line{flex-flow:wrap;align-items:baseline;gap:.35rem;min-width:0;display:flex}.address-subfield-label{color:#718096;text-transform:uppercase;letter-spacing:.02em;flex-shrink:0;font-size:.7rem;font-weight:600}.address-building-value{color:#4a5568;overflow-wrap:anywhere;max-width:100%;font-size:.82rem;font-weight:500;line-height:1.25}.address-ids{border-top:1px solid #edf2f7;flex-direction:column;gap:6px;margin-top:4px;padding-top:6px;display:flex}.address-id-value{color:#2d3748;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;flex:auto;min-width:0;font-size:.78rem;line-height:1.25}.address-label-text{color:#718096;white-space:nowrap;text-overflow:ellipsis;font-size:.8rem;font-style:italic;font-weight:400;overflow:hidden}.matrix-table td.address-label{text-align:left!important;padding:8px 15px!important}.matrix-cell{min-height:0;position:relative;width:var(--matrix-month-col-width)!important;min-width:var(--matrix-month-col-width)!important;max-width:var(--matrix-month-col-width)!important;box-sizing:border-box!important;padding:8px 6px!important}.matrix-cell-inner{flex-direction:column;justify-content:flex-start;align-items:stretch;gap:6px;width:100%;min-width:0;min-height:0;display:flex;position:relative;overflow-x:hidden}.matrix-cell-inner.matrix-cell-inner--readonly{opacity:.92}.matrix-cell-inner .checkbox-calendar-row{justify-content:center;align-items:center;gap:8px;display:flex}.matrix-cell-inner .checkbox-calendar-row input[type=checkbox]{width:16px;height:16px;margin:0}.matrix-cell-inner .date-display{color:var(--gray-500);text-align:left;box-sizing:border-box;background:#fff;border:2px solid #111827;border-radius:4px;justify-content:space-between;align-items:flex-start;gap:6px;margin-top:0;padding:6px;font-size:.72rem;line-height:1.2;display:flex;position:relative;box-shadow:0 1px 2px #0f172a14}.matrix-cell-inner .date-display.date-display--state-none{border-width:2px;border-color:#111827}.matrix-cell-inner .date-display.date-display--state-draft{border-width:2px;border-color:#f59e0b}.matrix-cell-inner .date-display.date-display--state-started{border-width:2px;border-color:#10b981}.matrix-cell-inner .date-display.date-display--state-published{border-width:2px;border-color:#2563eb}.matrix-cell-inner .date-display.date-display--state-done{border-color:var(--gray-400);color:var(--gray-500);background:#9ca3af1f;border-width:2px}.date-display-list{flex-direction:column;gap:6px;display:flex}.date-cell-top-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;width:100%;min-height:18px;display:flex}.date-cell-top-actions__group{flex:none;align-items:center;gap:4px;display:inline-flex}.date-cell-secondary-row{text-align:left;width:100%}.date-cell-secondary-row .date-display-label{white-space:normal}.date-cell-secondary-row--range{text-align:center}.date-display-label--timeframe{color:#1e293b;white-space:normal;width:100%;font-size:.78rem;font-weight:600;line-height:1.25}.matrix-cell-inner .date-display.date-display--stacked-cell{box-sizing:border-box;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:6px;width:100%;min-width:0;max-width:100%}.date-cell-secondary-row .date-display-label:not(.date-display-label--timeframe){color:#334155;font-size:.72rem;font-weight:600}.date-remove-button{color:var(--gray-400);cursor:pointer;background:0 0;border:none;flex:none;justify-content:center;align-self:flex-start;align-items:center;width:14px;height:14px;margin-top:0;padding:0;font-size:.9rem;line-height:1;display:inline-flex;position:relative;top:0;right:auto}.date-remove-button:hover{color:#ef4444}.date-calendar-button{border:1px solid var(--gray-300);color:#111827;cursor:pointer;background:#fff;border-radius:5px;flex:none;justify-content:center;align-self:flex-start;align-items:center;width:18px;height:18px;margin-top:0;padding:0;transition:background-color .2s,border-color .2s;display:inline-flex;position:relative;top:0;right:auto}.date-calendar-button:hover{border-color:var(--gray-400);background:#f8fafc}.date-calendar-button .date-calendar-icon{fill:currentColor;width:11px;height:11px;display:block}.date-route-button{border:1px solid rgba(var(--color-primary-rgb), .35);width:18px;height:18px;color:var(--color-primary,var(--color-primary));cursor:pointer;background:#fff;border-radius:5px;flex:none;justify-content:center;align-self:flex-start;align-items:center;margin-top:0;padding:0;transition:background-color .2s,border-color .2s;display:inline-flex;position:relative;top:0;right:auto}.date-route-button:hover{background:rgba(var(--color-primary-rgb), .1);border-color:var(--color-primary,var(--color-primary))}.date-route-button .route-open-icon{width:9px;height:12px;display:block}.date-display-label{text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;font-weight:600;display:block;overflow:hidden}.entry-visit-controls{flex-direction:column;align-items:flex-start;gap:4px;width:100%;min-width:0;display:flex}.visit-type-select{color:#2d3748;box-sizing:border-box;background:#fff;border:1px solid #d7dce0;border-radius:4px;width:100%;max-width:100%;padding:2px 4px;font-size:.72rem}.visit-type-select.is-route-locked{color:#334155;background:#f8fafc;border-color:#cbd5e1}.visit-type-select.is-entry-immutable{color:#64748b;background:#f8fafcf2;border-color:#cbd5e1}.visit-time-field{box-sizing:border-box;color:#000;background:#fff;border:1px solid #d7dce0;border-radius:4px;grid-template-columns:14px minmax(0,1fr);align-items:center;column-gap:4px;width:100%;min-width:0;max-width:100%;padding:2px 4px;display:grid}.visit-time-field.is-route-locked{background:#f8fafc;border-color:#cbd5e1}.visit-time-field.is-entry-immutable{color:#64748b;background:#f8fafcf2;border-color:#cbd5e1}.visit-time-clock-btn{color:currentColor;cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:14px;min-width:14px;height:14px;margin:0;padding:0;line-height:1;display:inline-flex;overflow:hidden}.visit-time-clock-btn:hover:not(:disabled){opacity:.85}.visit-time-clock-btn:disabled{opacity:.55;cursor:not-allowed}.visit-time-clock-icon{opacity:1;width:14px;height:14px;display:block;overflow:visible}.visit-time-input{color:#000;-webkit-text-fill-color:#000;opacity:1;box-sizing:border-box;width:100%;min-width:0;max-width:none;box-shadow:none;text-align:right;background:0 0;border:none;border-radius:0;outline:none;margin:0;padding:0;font-size:.72rem}.visit-time-input::-webkit-calendar-picker-indicator{appearance:none;display:none}.visit-time-input::-webkit-datetime-edit{color:#000}.visit-time-input::-webkit-datetime-edit-fields-wrapper{color:#000}.visit-time-input:focus{box-shadow:none;outline:none}.visit-time-input:disabled{opacity:.55;cursor:not-allowed}.entry-sampling-counts{box-sizing:border-box;border-top:1px solid var(--gray-200);grid-template-columns:minmax(0,1fr);gap:4px;width:100%;min-width:0;margin-top:4px;padding-top:4px;display:grid}.entry-sampling-counts-row{box-sizing:border-box;background:#fafdff;border:1px solid #d6e4ff;border-radius:7px;gap:4px;width:100%;min-width:0;padding:5px 6px;font-size:.7rem;display:grid;box-shadow:0 1px 4px #0f172a0a}.entry-sampling-counts-name{text-align:center;color:#374151;white-space:normal;overflow-wrap:anywhere;min-width:0;font-size:.68rem;font-weight:700;line-height:1.15}.entry-sampling-counts-stepper{justify-content:center;align-items:center;gap:3px;width:100%;min-width:0;display:flex}.entry-sampling-step-btn{border:1px solid var(--color-primary);background:var(--color-primary);color:#fff;cursor:pointer;box-sizing:border-box;width:18px;min-width:18px;height:18px;box-shadow:0 1px 4px rgba(var(--color-primary-rgb), .15);border-radius:5px;padding:0;font-size:.78rem;font-weight:700;line-height:1;transition:all .2s cubic-bezier(.4,0,.2,1)}.entry-sampling-step-btn:hover:not(:disabled){background:var(--color-primary-dark);border-color:var(--color-primary-dark);box-shadow:0 4px 12px rgba(var(--color-primary-rgb), .2)}.entry-sampling-step-btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.entry-sampling-counts-value{text-align:center;font-variant-numeric:tabular-nums;color:#1f2937;min-width:.85rem;font-size:.72rem;font-weight:600}.date-display.date-display--state-done .visit-time-input,.date-display.date-display--state-done .visit-time-clock-icon{color:var(--gray-500);-webkit-text-fill-color:var(--gray-500);opacity:1}.date-display.date-display--state-done .visit-time-input::-webkit-datetime-edit{color:var(--gray-500);-webkit-text-fill-color:var(--gray-500);opacity:1}.date-display.date-display--state-done .visit-time-input::-webkit-datetime-edit-fields-wrapper{color:var(--gray-500);-webkit-text-fill-color:var(--gray-500);opacity:1}.calendar-icon{cursor:pointer;opacity:.6;flex-shrink:0;justify-content:center;align-items:center;width:23px;height:23px;line-height:1;transition:opacity .2s;display:inline-flex}.calendar-icon-glyph{justify-content:center;align-items:center;width:23px;height:23px;line-height:1;display:inline-flex}.calendar-icon-svg{fill:currentColor;width:23px;height:23px;display:block}.calendar-icon:hover{opacity:1}.calendar-icon.active{color:#667eea;opacity:1}.calendar-icon.calendar-icon--disabled{opacity:.35;cursor:not-allowed;pointer-events:none}.batch-matrix-checkbox-crossed{cursor:not-allowed;-webkit-user-select:none;user-select:none;flex-shrink:0;justify-content:center;align-items:center;width:20px;min-width:20px;height:20px;display:inline-flex}.batch-matrix-checkbox-crossed--scheduled .batch-matrix-checkbox-crossed__svg rect{fill:#e8eef5;stroke:#94a3b8}.due-date-calendar-popover{background:#fff;border:1px solid #e2e8f0;border-radius:8px;min-width:min-content;box-shadow:0 8px 20px -8px #0f172a4d,0 3px 8px -6px #0f172a40}.due-date-calendar-popover__header{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px 6px 12px;display:flex}.due-date-calendar-popover__zeitraum{color:#334155;cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;margin:0;font-size:.8rem;font-weight:500;display:inline-flex}.due-date-calendar-popover__zeitraum input{accent-color:#667eea;cursor:pointer;flex-shrink:0;width:16px;height:16px}.due-date-calendar-popover__close{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;margin:-4px -6px -4px 0;padding:0;font-size:1.35rem;line-height:1;display:inline-flex}.due-date-calendar-popover__close:hover{color:#1e293b;background:#f1f5f9}.matrix-cell input[type=checkbox]{accent-color:#667eea;cursor:pointer;box-sizing:border-box;width:20px;min-width:20px;max-width:20px;height:20px;min-height:20px;max-height:20px}.no-addresses{text-align:center;color:#718096;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:40px 20px}.modal-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;width:100%;display:flex}.cancel-button{color:#4a5568;cursor:pointer;white-space:nowrap;background:#f7fafc;border:1px solid #e2e8f0;border-radius:6px;width:200px;padding:12px 16px;font-size:.9rem;font-weight:500;transition:all .2s}.apply-button{color:#fff;cursor:pointer;white-space:nowrap;background:#4f8cff;border:none;border-radius:6px;width:200px;padding:12px 16px;font-size:.9rem;font-weight:500;transition:background-color .2s}.apply-button:hover{background:#3b7de8}.apply-button:disabled{cursor:not-allowed;background:#a0aec0}.loading-spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:1s linear infinite spin-address-editor}.month-header{cursor:pointer;-webkit-user-select:none;user-select:none;text-align:center;vertical-align:middle;padding:8px 4px;transition:background-color .2s;position:relative;width:var(--matrix-month-col-width)!important;min-width:var(--matrix-month-col-width)!important;max-width:var(--matrix-month-col-width)!important}.month-header:hover{background-color:#edf2f7}.month-header:after{content:"⇕";opacity:0;margin-left:4px;font-size:.8em;transition:opacity .2s}.month-header:hover:after{opacity:.5}.year-selector{justify-content:center;align-items:center;gap:12px;min-height:50px;display:flex;position:absolute;left:50%;transform:translate(-50%)}.year-button{color:#fff;cursor:pointer;background:#4f8cff;border:none;border-radius:20px;justify-content:center;align-items:center;width:90px;height:40px;padding:0 16px;font-size:1rem;font-weight:600;transition:all .2s;display:flex}.year-button:hover{transform:translateY(-1px);box-shadow:0 2px 4px #4f8cff4d}.year-button.selected{color:#fff;background:#4f8cff}.year-button:not(.selected){color:#64748b;background:#e2e8f0}.year-button.disabled{color:#a0aec0;cursor:not-allowed;opacity:.6;background:#f7fafc}.year-selector label{color:#4a5568;min-width:60px;font-weight:500}.year-selector .form-select{background:#fff;border:1px solid #e2e8f0;border-radius:6px;min-width:100px;padding:8px 12px;font-size:.9rem}.year-selector .form-select:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 3px #667eea1a}.checkbox-label{cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:6px;align-items:center;gap:8px;padding:8px 12px;transition:background-color .2s;display:flex}.checkbox-label:hover{background-color:#f1f5f9}.checkbox-text{color:#4a5568;font-size:.9rem;font-weight:500}.bulk-checkbox{accent-color:#667eea;cursor:pointer;box-sizing:border-box;width:20px;min-width:20px;max-width:20px;height:20px;min-height:20px;max-height:20px}.bulk-checkbox:disabled{cursor:not-allowed;opacity:.6}.bulk-checkbox{accent-color:#667eea!important;flex-shrink:0!important;width:22px!important;height:22px!important;margin:0!important}.matrix-table thead,.matrix-table thead tr{margin-bottom:15px!important}.matrix-table tbody{padding-top:15px!important}.matrix-table{border-spacing:0 15px!important}.header-spacer{height:0}.spacer-cell{background:0 0!important;border:none!important;height:15px!important;padding:0!important}.header-actions{justify-content:flex-start;align-items:center;gap:16px;min-height:60px;margin-bottom:24px;padding:16px 0;display:flex;position:relative}.year-selector{justify-content:center;align-items:center;gap:16px;min-height:50px;padding:8px 16px;display:flex;position:absolute;left:50%;transform:translate(-50%)}.close-button{cursor:pointer;color:#64748b;z-index:10;background:0 0;border:none;border-radius:4px;padding:8px;font-size:24px;transition:background-color .2s;position:absolute;right:20px}.close-button:hover{background-color:#f1f5f9}@container app (width<=1600px){.batch-edit-modal{min-width:auto;max-width:98vw}.matrix-table th,.matrix-table td{padding:6px 4px;font-size:.95rem}.address-label{min-width:120px;font-size:1rem}.address-street{font-size:.9rem}.address-building{font-size:.8rem}.address-label-text{font-size:.75rem}}@container app (width<=768px){.batch-edit-modal{height:95%}.modal-header{padding:16px 16px 0}.modal-content{padding:0 16px}.modal-footer{padding:0 16px 16px}.modal-actions{flex-direction:column-reverse}}.samples-section{flex-direction:column;flex:1;width:100%;min-height:0;padding:0 0 20px;display:flex}.samples-table{border-collapse:collapse;table-layout:fixed;background:#fff;border-radius:8px;width:100%;font-size:1rem;overflow:hidden;box-shadow:0 1px 3px #0000001a}.samples-table th{color:#4a5568;text-align:center;padding:12px 16px;font-size:.9rem;font-weight:600;background:#fff!important;border-bottom:1px solid #f1f5f9!important;border-right:1px solid #f1f5f9!important}.samples-table th:last-child{border-right:none!important}.samples-table th.header-address{text-align:left}.samples-table td{vertical-align:middle;border-bottom:1px solid #f1f5f9;border-right:1px solid #f1f5f9;padding:12px 16px}.samples-table td:last-child{border-right:none}.samples-table tbody tr:hover,.samples-table tbody tr:hover td{background:#f9fafb}.samples-table .col-index{width:60px}.samples-table .col-address{width:200px}.samples-table .col-legionellen,.samples-table .col-mibi,.samples-table .col-chemie{width:140px}.sample-control{justify-content:center;align-items:center;gap:6px;width:100%;display:flex}.sample-btn{color:#475569;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:6px;justify-content:center;align-items:center;width:32px;height:32px;font-size:18px;font-weight:500;transition:all .15s;display:flex;box-shadow:0 1px 2px #0000000d}.sample-btn:hover{color:#334155;background:#f8fafc;border-color:#cbd5e1;box-shadow:0 2px 4px #0000001a}.sample-btn:active{background:#f1f5f9;border-color:#94a3b8;transform:scale(.98);box-shadow:0 1px 2px #0000001a}.sample-input{text-align:center;color:#334155;background:#fff;border:1px solid #e2e8f0;border-radius:6px;width:60px;height:32px;padding:0 6px;font-size:14px;font-weight:500;transition:all .15s}.sample-input:focus{background:#fff;border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px #3b82f61a}.sample-input:hover{border-color:#cbd5e1}.address-info{flex-direction:column;gap:2px;display:flex}.address-info .street{color:#111827;font-weight:500}.address-info .postal-code{color:var(--gray-500);font-size:.85rem}.reoccurrence-table{width:100%}.table-container{background:#fff;border:1px solid #e2e8f0;border-radius:6px;overflow-x:auto}.month-table{border-collapse:collapse;width:100%;font-size:.9rem}.month-table th{text-align:left;color:#4a5568;white-space:nowrap;background:#f7fafc;border-bottom:1px solid #e2e8f0;padding:12px 16px;font-weight:600}.month-table td{vertical-align:middle;border-bottom:1px solid #f1f5f9;padding:12px 16px}.month-row:hover{background:#f8fafc}.month-header{width:30%}.visit-header{text-align:center;width:25%}.due-date-header{width:45%}.month-label{color:#2d3748;font-weight:500}.visit-cell{text-align:center}.checkbox-container{cursor:pointer;-webkit-user-select:none;user-select:none;display:inline-block;position:relative}.visit-checkbox{opacity:0;cursor:pointer;width:0;height:0;position:absolute}.checkmark{background-color:#fff;border:2px solid #cbd5e0;border-radius:4px;width:20px;height:20px;transition:all .2s;display:inline-block;position:relative}.checkbox-container:hover .checkmark{border-color:#667eea}.visit-checkbox:checked~.checkmark{background-color:#667eea;border-color:#667eea}.checkmark:after{content:"";display:none;position:absolute}.visit-checkbox:checked~.checkmark:after{display:block}.checkbox-container .checkmark:after{border:2px solid #fff;border-width:0 2px 2px 0;width:5px;height:10px;top:2px;left:6px;transform:rotate(45deg)}.due-date-input{background:#fff;border:1px solid #e2e8f0;border-radius:4px;width:100%;max-width:150px;padding:8px 12px;font-size:.9rem;transition:border-color .2s}.due-date-input:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 3px #667eea1a}.due-date-input:disabled{color:#a0aec0;cursor:not-allowed;background:#f7fafc}.table-info{margin-top:12px}.info-text{color:#718096;margin:0;font-size:.85rem;font-style:italic}@container app (width<=768px){.month-table th,.month-table td{padding:8px 12px;font-size:.85rem}.month-header{width:35%}.visit-header{width:20%}.due-date-header{width:45%}.due-date-input{max-width:120px;font-size:.85rem}.checkmark{width:18px;height:18px}.checkbox-container .checkmark:after{width:4px;height:8px;top:1px;left:5px}}.map{width:100%;min-width:300px;height:100%;min-height:300px;margin-top:auto}.loading-address-editor,.error{height:100%;color:var(--color-text-muted);background:#f9fafb;justify-content:center;align-items:center;font-size:14px;display:flex}.error{color:#ef4444;background:#fee2e2}.map-panel{background:var(--color-surface);border-radius:12px;flex-direction:column;flex:1;height:100%;display:flex;position:relative;overflow:hidden;box-shadow:0 4px 12px #0000001a}.map{width:100%;min-width:300px;height:100%;min-height:300px}.button-group .action-button{width:auto;height:40px;color:var(--gray-900);box-sizing:border-box;background:#fff;border:1px solid #e0eaff;border-radius:8px;flex:.8;gap:6px;padding:8px 12px;font-size:.95rem;font-weight:500}.button-group .batch-edit-button{color:#fff;background:#ff6b35;border-color:#ff6b35;flex:0 0 40px;width:40px;min-width:40px;padding:0}.button-group .batch-edit-button:hover:not(:disabled){color:#fff;box-shadow:none;background:#ff6b35;border-color:#ff6b35;transform:none}.button-group .batch-edit-button:disabled{opacity:.5}.button-group .action-button:hover:not(:disabled){background:#edf2f7;border-color:#cbd5e0}.button-group .create-button,.button-group .reset-selection-button{flex:.4;gap:4px;padding:8px 10px;font-size:.85rem}.button-group .create-button{font-weight:600}.button-group .create-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 2px 8px #3b82f640}.button-group .reset-selection-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 2px 8px #ef444440}.editor-actions .action-button{border:1px solid var(--gray-300);width:40px;height:40px;color:var(--gray-500);font-size:inherit;background:#fff;border-radius:4px;flex:none;padding:8px;font-weight:400}.editor-actions .save-button:hover:not(:disabled){color:#fff;background:#10b981;border-color:#10b981}.editor-actions .cancel-button:hover:not(:disabled),.editor-actions .delete-button:hover:not(:disabled){color:#fff;background:#ef4444;border-color:#ef4444}.table-controls .delete-button{color:#ef4444;border-color:#fecaca;gap:6px;width:auto;padding:8px 10px;font-size:.85rem}.modal-overlay>.modal-content{background:#fff;border-radius:8px;flex-direction:column;flex:none;width:calc(100vw - 32px);max-width:calc(100vw - 32px);height:calc(100vh - 96px);min-height:0;max-height:calc(100vh - 96px);padding:0;display:flex;overflow:hidden}.batch-edit-modal .modal-content{border-radius:0;flex:auto;width:auto;max-width:none;height:auto;min-height:0;max-height:none;padding:0 20px;display:block;overflow:hidden auto}.batch-edit-modal .modal-content--samples{overflow-x:auto}.batch-edit-modal .modal-content--data{min-height:0;display:flex;overflow:hidden}.samples-table-grid th.samples-header{color:inherit;border-bottom:1px solid #f1f5f9;padding:12px 16px}.batch-edit-modal .modal-header{display:block}.batch-edit-modal .header-actions .visit-type-select{flex:none;width:auto;max-width:220px}.address-table-scroll{container-type:inline-size}.address-table-scroll .inline-editor{box-sizing:border-box;width:calc(100cqw - 16px);position:sticky;left:0}.row-editing>td{background:#fef3c7}.loading-address-editor .loading-spinner{border:2px solid #e2e8f0;border-top-color:#4a5568;width:20px;height:20px}:scope{background:var(--color-surface);flex-direction:column;flex:auto;width:100%;height:100%;min-height:0;max-height:100%;padding-top:0;display:flex;overflow:auto}.top-row{gap:24px;margin-bottom:24px;display:flex}.tour-config-section,.address-import-section{flex-direction:column;flex:1;min-width:0;display:flex}.tour-config-section .section-box,.address-import-section .section-box{flex-direction:column;height:100%;min-height:300px;display:flex}.section-box{background:#fff;border:none;border-radius:20px;margin-bottom:16px;padding:20px;box-shadow:0 2px 10px #00000014}.section-box h3{color:var(--gray-900);margin:0 0 16px;font-size:1.1rem;font-weight:600}.form-group{flex-direction:column;gap:8px;margin-bottom:16px;display:flex}.form-group label{color:#4a5568;font-size:.9rem;font-weight:500}.form-input{box-sizing:border-box;background:#fff;border:1px solid #e2e8f0;border-radius:8px;width:100%;min-height:40px;padding:10px 12px;font-size:.9rem;transition:all .2s}.form-input:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 3px #667eea1a}select.form-input{cursor:pointer}.form-textarea{resize:vertical;box-sizing:border-box;border:1px solid #e2e8f0;border-radius:8px;flex:1;width:100%;min-height:120px;padding:10px 12px;font-family:inherit;font-size:.9rem}.textarea-container{flex-direction:column;flex:1;gap:16px;display:flex}button.parse-button{background:var(--color-primary);color:#fff;cursor:pointer;box-shadow:0 2px 8px rgba(var(--color-primary-rgb), .15);border:none;border-radius:8px;align-self:center;margin-top:auto;padding:10px 16px;font-size:.9rem;font-weight:700;transition:all .2s cubic-bezier(.4,0,.2,1)}button.parse-button span{font-weight:700}.parse-button:hover:not(:disabled){background:var(--color-primary-dark);transform:translateY(-1px)}.parse-button:disabled{opacity:.6;cursor:not-allowed}.config-and-preview-section{flex-direction:column;gap:20px;min-height:0;display:flex;overflow:hidden}.preview-section{flex:1;min-height:0;overflow:hidden}.preview-section.section-box{box-shadow:none}.validation-status{margin:0 4px;font-weight:600}.validation-status.valid{color:#38a169}.validation-status.invalid{color:#e53e3e}.preview-table-container{scrollbar-width:thin;scrollbar-color:#cbd5e0 #f7fafc;background:#fff;border-radius:8px;flex:1;width:100%;max-width:100%;min-height:400px;max-height:400px;margin:0;padding:0;overflow:hidden auto;border:none!important}.preview-table{border-collapse:separate;border-spacing:0;-webkit-user-select:none;user-select:none;table-layout:auto;background:#fff;border-radius:8px;width:100%;min-width:100%;margin:0;font-size:.875rem;overflow:hidden;box-shadow:0 2px 8px #0000000f;border:none!important}.preview-table td{vertical-align:middle;outline:none;padding:16px 20px;border:none!important}.preview-table thead{z-index:10;background:#fff;border:none;width:100%;position:sticky;top:0;box-shadow:0 1px 3px #00000014}.preview-table th{text-align:left;color:#5f6368;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;text-overflow:ellipsis;background:#fff;outline:none;padding:16px 20px;font-size:.875rem;font-weight:500;position:relative;overflow:hidden;border:none!important}.preview-table tr{cursor:pointer;border-bottom:1px solid #f0f0f0;height:60px;transition:background-color .2s,transform .1s;animation:.3s ease-in-out fadeIn-address-editor;border:none!important}.preview-table tr:hover{background-color:#f7fafc}.preview-table tr.selected{background:#ebf8ff;border-left:4px solid #667eea;transition:background-color .3s,border-left .3s}.validation-column{text-align:center;width:150px;min-width:150px}.plus-code-cell{width:140px;font-family:monospace;font-size:.85rem}.plus-code{color:#234e52;background:#e6fffa;border:1px solid #b2f5ea;border-radius:4px;padding:2px 6px;font-weight:500}.loading-text{color:#718096;font-size:.8rem;font-style:italic}.no-plus-code{color:#a0aec0}.action-column{text-align:center;width:80px;min-width:80px}.validation-spinner{border:2px solid #e2e8f0;border-top-color:#667eea;border-radius:50%;width:16px;height:16px;margin:0 auto;animation:1s linear infinite spin-address-editor}.remove-button{color:#c53030;cursor:pointer;background:#fed7d7;border:none;border-radius:4px;width:24px;height:24px;font-size:1rem;font-weight:700;transition:all .2s}.remove-button:hover{background:#feb2b2}.import-actions{justify-content:center;gap:12px;margin-top:auto;padding-top:20px;display:flex}.import-actions .clear-button,.import-actions .cancel-button{color:#4a5568;cursor:pointer;background:#e2e8f0;border:none;border-radius:6px;justify-content:center;align-items:center;min-height:36px;padding:8px 16px;font-size:.9rem;transition:all .2s;display:flex}.import-actions .clear-button:hover:not(:disabled),.import-actions .cancel-button:hover:not(:disabled){background:#cbd5e0}.import-actions .clear-button--icon{width:36px;min-width:36px;color:var(--gray-900);background:#fafdff;border:1px solid #e0eaff;border-radius:6px;padding:0}.import-actions .clear-button--icon .clear-button__icon{width:16px;height:16px;display:block}.import-actions .clear-button--icon:hover:not(:disabled){color:#dc2626;background:#fff1f2;border-color:#fca5a5}.import-actions .import-button{height:auto;min-height:36px;padding:8px 16px}.parse-button{position:relative}.parse-button--loading .parse-button__label{visibility:hidden}.parse-button__spinner{margin:auto;position:absolute;inset:0}.import-button-group{margin-bottom:8px}.import-button{color:#fff;cursor:pointer;background:#48bb78;border:none;border-radius:6px;justify-content:center;align-items:center;gap:6px;width:auto;height:32px;padding:6px 12px;font-size:.8rem;font-weight:500;transition:all .2s;display:inline-flex}.import-button:hover:not(:disabled){background:#38a169;transform:translateY(-1px)}.import-button:disabled{opacity:.6;cursor:not-allowed}.form-input-group{align-items:stretch;gap:8px;display:flex}.add-new-button{background:var(--color-primary);color:#fff;cursor:pointer;white-space:nowrap;height:40px;box-shadow:0 2px 8px rgba(var(--color-primary-rgb), .15);border:none;border-radius:8px;justify-content:center;align-items:center;padding:10px 16px;font-size:.9rem;font-weight:700;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.add-new-button:hover:not(:disabled){background:var(--color-primary-dark)}.add-new-button:disabled{color:#a0aec0;cursor:not-allowed;box-shadow:none;opacity:.6;background:#e2e8f0}.placeholder-selected{color:var(--gray-400);font-style:italic}.cancel-new-button{color:#4a5568;cursor:pointer;white-space:nowrap;background:#e2e8f0;border:none;border-radius:4px;padding:6px 12px;font-size:.8rem;transition:all .2s}.cancel-new-button:hover{background:#cbd5e0}.tour-id-section,.new-tour-form{margin-top:8px}.file-import-modal{background:#fff;border-radius:12px;flex-direction:column;width:600px;max-width:95vw;max-height:90%;margin:auto;padding:24px;display:flex;overflow-y:auto}.file-import-modal .modal-header{background:#fff;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;margin-bottom:24px;padding:0 0 16px;display:flex}.file-import-modal .modal-header h2{color:#2d3748;margin:0;font-size:1.5rem;font-weight:600}.file-import-modal .close-button{color:#718096;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px;font-size:1.5rem;transition:all .2s}.file-import-modal .close-button:hover{color:#4a5568;background:#f7fafc}.file-import-modal .modal-content{flex:1;width:auto;max-width:none;height:auto;max-height:none;margin-bottom:24px;overflow:visible}.import-instructions{color:#4a5568;background:#f8fafc;border-radius:8px;margin-bottom:20px;padding:16px;font-size:.9rem}.import-instructions ul{margin:8px 0 0;padding-left:20px}.file-drop-zone{text-align:center;background:#fafdff;border:2px dashed #cbd5e0;border-radius:12px;padding:40px 20px;transition:all .2s}.file-drop-zone.drag-over{border-color:var(--color-primary);background:#ebf8ff}.file-drop-zone.file-selected{background:#f0fff4;border-style:solid;border-color:#48bb78}.drop-zone-content{flex-direction:column;align-items:center;gap:8px;display:flex}.upload-icon{color:#a0aec0;margin-bottom:8px}.drop-text{color:#2d3748;margin:0;font-size:1rem;font-weight:600}.drop-subtext{color:#718096;margin:0;font-size:.85rem}.file-input{display:none}.browse-button{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:8px;margin-top:8px;padding:8px 20px;font-size:.9rem;font-weight:600;transition:all .2s}.browse-button:hover{background:var(--color-primary-dark)}.file-selected-content{text-align:left;align-items:center;gap:16px;display:flex}.file-icon{color:#48bb78}.file-info{flex:1;min-width:0}.file-name{color:#2d3748;text-overflow:ellipsis;white-space:nowrap;margin:0 0 2px;font-weight:600;overflow:hidden}.file-size{color:#718096;margin:0;font-size:.8rem}.file-error{color:#e53e3e;margin:4px 0 0;font-size:.8rem}.remove-file-button{color:#a0aec0;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:6px;transition:all .2s}.remove-file-button:hover{color:#c53030;background:#fed7d7}.file-import-modal .modal-actions,.import-mapping-modal .modal-actions{border-top:1px solid #e2e8f0;justify-content:center;gap:12px;padding-top:16px;display:flex}.import-mapping-modal .modal-actions .cancel-button,.import-mapping-modal .modal-actions .upload-button{text-align:center;justify-content:center;min-width:160px}.import-editor-toolbar{flex-wrap:wrap;align-items:center;gap:12px;padding:4px 0 12px;display:flex}.import-editor-separator{background:#e2e8f0;width:1px;height:24px}.import-editor-tab{cursor:pointer;background:#fafdff;border:1px solid #e0eaff;border-radius:6px;align-items:center;gap:8px;height:32px;padding:0 12px;font-size:13px;display:inline-flex}.import-editor-tab strong{font-variant-numeric:tabular-nums}.import-editor-tab--known.active{color:#166534;background:#dcfce7;border-color:#16a34a}.import-editor-tab--new.active{color:#1d4ed8;background:#dbeafe;border-color:#2563eb}.import-editor-codes-btn{height:32px;color:var(--gray-900);cursor:pointer;background:#fafdff;border:1px solid #e0eaff;border-radius:6px;padding:0 12px;font-size:13px}.import-editor-codes-btn:hover:not(:disabled){border-color:var(--color-primary);background:#e0eaff}.import-editor-codes-btn:disabled{opacity:.5;cursor:not-allowed}.import-editor-block-row th{white-space:nowrap;background:#fff;border:none;padding:0 4px;font-size:11px;font-weight:700;overflow:hidden}.import-editor-block-content{align-items:center;gap:4px;display:flex}.import-editor-block.header-basic{color:#64748b}.import-editor-block.header-object-management{color:#1d4ed8}.import-editor-block.header-samples{color:#15803d}.import-editor-block.header-other{color:#9333ea}.import-editor-block-line{color:inherit;opacity:.6}.file-import-modal .cancel-button,.import-mapping-modal .cancel-button{color:#4a5568;cursor:pointer;background:#e2e8f0;border:none;border-radius:6px;padding:8px 16px;font-size:.9rem;transition:all .2s}.file-import-modal .cancel-button:hover:not(:disabled),.import-mapping-modal .cancel-button:hover:not(:disabled){background:#cbd5e0}.upload-button{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:6px;justify-content:center;align-items:center;gap:6px;min-height:36px;padding:8px 20px;font-size:.9rem;font-weight:600;transition:all .2s;display:inline-flex}.upload-button:hover:not(:disabled){background:var(--color-primary-dark)}.upload-button:disabled{opacity:.6;cursor:not-allowed}.import-mapping-modal{box-sizing:border-box;background:#fff;border-radius:12px;flex-direction:column;width:100%;height:100%;min-height:0;padding:24px;display:flex}.import-mapping-modal .modal-header{background:#fff;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;margin-bottom:16px;padding:0 0 12px;display:flex}.import-mapping-modal .modal-header h2{color:#2d3748;margin:0;font-size:1.3rem;font-weight:600}.import-mapping-modal .close-button{color:#718096;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px;font-size:1.5rem}.import-mapping-content{flex-direction:column;flex:1;gap:12px;min-height:0;display:flex;overflow:hidden}.import-mapping-file-info{color:#4a5568;align-items:center;gap:12px;font-size:.85rem;display:flex}.import-mapping-filename{color:#2d3748;font-weight:600}.import-mapping-counts{background:#edf2f7;border-radius:4px;padding:2px 8px}.import-mapping-required-warning{color:#dc2626;background-color:#fef2f2;border:1px solid #fecaca;border-radius:6px;padding:8px 12px;font-size:.85rem}.import-mapping-table-container{border:1px solid #e2e8f0;border-radius:8px;flex:1;min-height:0;overflow:auto}.import-mapping-table{border-collapse:collapse;width:100%;font-size:.85rem}.import-mapping-table th{z-index:5;text-align:left;vertical-align:top;background:#f8fafc;border-bottom:1px solid #e2e8f0;min-width:160px;padding:8px;position:sticky;top:0}.import-mapping-table td{white-space:nowrap;text-overflow:ellipsis;border-bottom:1px solid #f1f5f9;max-width:240px;padding:6px 8px;overflow:hidden}.import-mapping-header{flex-direction:column;gap:6px;display:flex}.import-mapping-header-name{color:#2d3748;white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:6px;font-weight:600;display:flex;overflow:hidden}.import-mapping-delete-column{color:#a0aec0;cursor:pointer;background:0 0;border:none;border-radius:3px;padding:0 2px;font-size:.95rem}.import-mapping-delete-column:hover{color:#c53030;background:#fed7d7}.import-mapping-select{color:#64748b;background:#fff;border:1px solid #e2e8f0;border-radius:6px;width:100%;padding:4px 6px;font-size:.8rem}.import-mapping-select.mapped{border-color:var(--color-primary);color:var(--gray-900);background:#ebf8ff}.import-mapping-row-actions{text-align:center;width:40px;min-width:40px}.import-mapping-row-error{background:#fff5f5}.import-mapping-cell-error{color:#c53030;background:#fed7d7}.list-editor .items-list{flex-direction:column;gap:4px;margin-bottom:8px;display:flex}.list-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;justify-content:space-between;align-items:center;gap:8px;padding:4px 8px;font-size:.8rem;display:flex}.item-content{text-overflow:ellipsis;white-space:nowrap;gap:6px;min-width:0;display:flex;overflow:hidden}.item-key{color:#4a5568;font-weight:600}.item-value{color:var(--gray-900);text-overflow:ellipsis;overflow:hidden}.list-item .remove-button{flex-shrink:0;width:20px;height:20px;font-size:.85rem;line-height:1}.add-item-form .input-group{align-items:center;gap:6px;display:flex}.add-item-form .key-input,.add-item-form .value-input{background:#fff;border:1px solid #e2e8f0;border-radius:6px;flex:1;min-width:0;padding:4px 8px;font-size:.8rem}.add-item-form .add-button{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:6px;flex-shrink:0;width:24px;height:24px;font-size:1rem;font-weight:700;line-height:1}.add-item-form .add-button:disabled{color:#a0aec0;cursor:not-allowed;background:#e2e8f0}.loading-message{color:#4a5568;align-items:center;gap:8px;padding:16px;font-size:.9rem;display:flex}.batch-day-grid{min-width:240px;padding:8px}.batch-day-grid-weekdays{color:#64748b;text-align:center;grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:4px;font-size:.7rem;font-weight:600;display:grid}.batch-day-grid-days{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.batch-day{width:30px;height:28px;color:var(--gray-900);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;font-size:.8rem;transition:all .15s}.batch-day:hover{border-color:var(--color-primary);background:#e0eaff}.batch-day--selected{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.batch-day--range{background:#dbeafe;border-color:#93c5fd}.batch-day--selected.batch-day--range{background:var(--color-primary);color:#fff}.batch-day-empty{width:30px;height:28px}.address-list-container{overflow:hidden}.address-list-container .address-list{min-height:0}.address-list .table-container{overflow:hidden}.grid-header-pane{scrollbar-gutter:stable;border:1px solid var(--gray-300);background:#f8fafc;border-bottom:none;border-radius:8px 8px 0 0;flex:none;overflow:hidden}.grid-body-pane{scrollbar-gutter:stable;border:1px solid var(--gray-300);border-top:none;border-radius:0 0 8px 8px;flex:1;min-height:0;overflow:auto}.grid-header-pane .address-grid,.grid-body-pane .address-grid{contain:none;border:none;border-radius:0;overflow:visible}}@keyframes spin-address-editor{to{transform:rotate(360deg)}}@keyframes fadeIn-address-editor{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes loading-address-editor{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes spin-address-editor-centered{0%{transform:translateY(-50%)rotate(0)}to{transform:translateY(-50%)rotate(360deg)}}:scope,.address-editor,.editor-layout,.left-side{overflow:visible!important}:is(:scope,.address-editor,.editor-layout,.left-side) .import-mapping-detection{color:#166534;background:#eefbf3;border:1px solid #b7ebc8;border-radius:6px;margin-bottom:8px;padding:8px 12px;font-size:.85rem}:is(:scope,.address-editor,.editor-layout,.left-side) .import-mapping-suggestion-bar{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe;border-radius:6px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;padding:8px 12px;font-size:.85rem;display:flex}:is(:scope,.address-editor,.editor-layout,.left-side) .import-suggestion-accept-all{background:var(--color-primary);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:6px;padding:5px 12px;font-size:.8rem;font-weight:600}:is(:scope,.address-editor,.editor-layout,.left-side) .import-suggestion-accept-all:hover{background:var(--color-primary-dark)}:is(:scope,.address-editor,.editor-layout,.left-side) .import-mapping-suggestion{border:1px dashed var(--color-primary);background:rgba(var(--color-primary-rgb), .06);max-width:100%;color:var(--color-primary);cursor:pointer;white-space:nowrap;text-overflow:ellipsis;border-radius:999px;align-items:center;gap:4px;margin-top:4px;padding:2px 8px;font-size:.72rem;font-weight:600;display:inline-flex;overflow:hidden}:is(:scope,.address-editor,.editor-layout,.left-side) .import-mapping-suggestion:hover{background:rgba(var(--color-primary-rgb), .14)}:is(:scope,.address-editor,.editor-layout,.left-side) .import-mapping-suggestion-check{font-weight:700}:is(:scope,.address-editor,.editor-layout,.left-side) .import-mapping-suggestion-confidence{color:var(--gray-500);font-weight:500}:is(:scope,.address-editor,.editor-layout,.left-side) .import-id-existing{background:#10b9811f}:is(:scope,.address-editor,.editor-layout,.left-side) .import-id-new{background:#f59e0b1f}:is(:scope,.address-editor,.editor-layout,.left-side) .import-mapping-more{color:var(--gray-500);padding:8px 12px;font-size:.8rem}:is(:scope,.address-editor,.editor-layout,.left-side) .import-editor-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}:is(:scope,.address-editor,.editor-layout,.left-side) .import-editor-tabs{gap:6px;display:flex}:is(:scope,.address-editor,.editor-layout,.left-side) .import-editor-tab{height:28px;color:var(--gray-900);cursor:pointer;background:#fafdff;border:1px solid #e0eaff;border-radius:6px;padding:0 12px;font-size:.8rem;font-weight:500}:is(:scope,.address-editor,.editor-layout,.left-side) .import-editor-tab.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}:is(:scope,.address-editor,.editor-layout,.left-side) .import-editor-bulk{align-items:center;gap:6px;display:flex}:is(:scope,.address-editor,.editor-layout,.left-side) .import-editor-bulk select,:is(:scope,.address-editor,.editor-layout,.left-side) .import-editor-bulk input{border:1px solid var(--gray-300);background:#fff;border-radius:6px;height:28px;padding:0 8px;font-size:.8rem}:is(:scope,.address-editor,.editor-layout,.left-side) .import-editor-bulk-apply,:is(:scope,.address-editor,.editor-layout,.left-side) .import-editor-bulk-delete{border:1px solid var(--gray-300);cursor:pointer;background:#fff;border-radius:6px;height:28px;padding:0 10px;font-size:.8rem}:is(:scope,.address-editor,.editor-layout,.left-side) .import-editor-bulk-apply:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}:is(:scope,.address-editor,.editor-layout,.left-side) .import-editor-bulk-delete:hover:not(:disabled){color:#dc2626;border-color:#dc2626}:is(:scope,.address-editor,.editor-layout,.left-side) .import-editor-bulk-apply:disabled,:is(:scope,.address-editor,.editor-layout,.left-side) .import-editor-bulk-delete:disabled{opacity:.5;cursor:default}:is(:scope,.address-editor,.editor-layout,.left-side) .import-editor-check{text-align:center;width:32px}:is(:scope,.address-editor,.editor-layout,.left-side) .import-editor-table td{padding:2px 4px}:is(:scope,.address-editor,.editor-layout,.left-side) .import-editor-input{background:0 0;border:1px solid #0000;border-radius:4px;width:100%;min-width:90px;padding:3px 6px;font-size:.8rem}:is(:scope,.address-editor,.editor-layout,.left-side) .import-editor-input:hover{border-color:var(--gray-300)}:is(:scope,.address-editor,.editor-layout,.left-side) .import-editor-input:focus{border-color:var(--color-primary);background:#fff;outline:none}:is(:scope,.address-editor,.editor-layout,.left-side) .import-editor-old-value{text-overflow:ellipsis;white-space:nowrap;color:#92400e;cursor:pointer;background:#f59e0b24;border:none;border-radius:4px;max-width:180px;margin-top:2px;padding:1px 6px;font-size:.72rem;display:block;overflow:hidden}:is(:scope,.address-editor,.editor-layout,.left-side) .import-result-panel{padding:12px}:is(:scope,.address-editor,.editor-layout,.left-side) .import-result-summary{color:var(--gray-900);margin-bottom:10px;font-size:.95rem;font-weight:600}:is(:scope,.address-editor,.editor-layout,.left-side) .import-result-issues{color:#b91c1c;max-height:320px;margin:0;padding-left:18px;font-size:.85rem;overflow-y:auto}@scope(.calendar-view){.calendar-panel-overlay{z-index:1000;box-sizing:border-box;background:#00000080;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.calendar-panel{background:#fff;border-radius:12px;flex-direction:column;width:560px;max-width:calc(100vw - 24px);max-height:calc(100vh - 40px);display:flex;position:relative;overflow:hidden;box-shadow:0 20px 60px #0000004d}.panel-header{border-bottom:1px solid var(--gray-200);flex-shrink:0;justify-content:space-between;align-items:center;padding:20px;display:flex}.panel-title{color:#1f2937;overflow-wrap:anywhere;min-width:0;margin:0;font-size:18px;font-weight:600}.panel-close-btn{color:var(--gray-500);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-size:28px;transition:all .2s;display:flex}.panel-close-btn:hover{color:#1f2937;background:#f3f4f6}.panel-content{flex-direction:column;flex:1;gap:20px;padding:20px;display:flex;overflow:hidden auto}.panel-section{flex-shrink:0}.panel-results{flex:1;min-height:0;overflow:hidden auto}.time-selection{flex-direction:column;gap:12px;display:flex}.time-label{color:#1f2937;font-size:14px;font-weight:600}.time-inputs{flex-wrap:wrap;gap:16px;display:flex}.time-input-group{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.time-input-label{color:var(--gray-500);font-size:12px;font-weight:500}.time-select{box-sizing:border-box;width:100%;font-size:14px}.sampler-label{color:#1f2937;margin-bottom:6px;font-size:14px;font-weight:600;display:block}.sampler-select{box-sizing:border-box;width:100%;font-size:14px}.point-selector:focus{border-color:var(--color-primary,var(--color-primary));background-color:#fff;outline:none;box-shadow:0 4px 12px #0f172a24}.search-container{margin-bottom:0}.search-input-wrapper{width:100%;position:relative}.search-input{border:1px solid var(--gray-300);box-sizing:border-box;background:#fff;border-radius:6px;width:100%;padding:8px 36px 8px 12px;font-size:14px}.search-clear-btn{color:var(--gray-400);cursor:pointer;z-index:1;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;padding:2px;font-size:16px;font-weight:700;transition:all .2s;display:flex;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.search-clear-btn:hover{color:#333;background:#f0f0f0}.search-input:focus{border-color:#0d6efd;outline:none;box-shadow:0 0 0 2px #0d6efd1a}.description-label{color:var(--gray-500);margin-bottom:6px;font-size:12px;font-weight:500;display:inline-block}.description-input{border:1px solid var(--gray-300);resize:none;box-sizing:border-box;border-radius:6px;width:100%;min-height:68px;padding:10px;font-size:14px;overflow:hidden}.description-input:focus{border-color:#0d6efd;outline:none;box-shadow:0 0 0 2px #0d6efd1a}.address-list{flex-direction:column;gap:8px;display:flex}.address-groups{flex-direction:column;gap:16px;display:flex}.address-group{flex-direction:column;gap:8px;display:flex}.address-group-header{text-transform:uppercase;letter-spacing:.8px;color:#374151;align-items:center;gap:8px;font-size:11px;font-weight:700;display:flex}.address-group-dot{background:var(--group-color,var(--gray-500));border-radius:999px;flex-shrink:0;width:8px;height:8px}.address-group-title{flex:1}.address-group-count{color:var(--gray-400);font-weight:600}.address-item{background:var(--gray-100);border-left:3px solid var(--gray-200);cursor:pointer;border-radius:6px;padding:12px;transition:all .2s}.address-item:hover{background:var(--gray-200);border-left-color:#0d6efd;transform:translate(2px)}.address-item.selected{background:#eef2ff;border-left-color:#0d6efd}.address-header{justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:4px;display:flex}.address-info{flex:1}.address-title{color:#1f2937;margin-bottom:4px;font-weight:600}.address-subtitle{color:var(--gray-500);font-size:.875rem;line-height:1.4}.tour-badge{white-space:nowrap;border-radius:4px;flex-shrink:0;padding:2px 8px;font-size:.8em;font-weight:500}.tour-badge.rn-tour{color:#4caf50;background:#4caf501a}.tour-badge.tb-tour{background:rgba(var(--color-primary-rgb), .1);color:var(--color-primary)}.tour-badge.project{color:#9c27b0;background:#9c27b01a}.tour-badge.bim-tour{color:#b8860b;background:#f0d72240}.loading{text-align:center;color:var(--gray-500);padding:20px}.empty-state{text-align:center;color:var(--gray-500);padding:20px;font-style:italic}.panel-actions{justify-content:flex-end;gap:10px;padding:0 20px 20px;display:flex}.primary-action,.danger-action{cursor:pointer;border:none;border-radius:6px;padding:10px 16px;font-weight:600;transition:all .2s}.primary-action{color:#fff;background:#0d6efd}.primary-action:disabled{cursor:not-allowed;background:#a5b4fc}.primary-action:not(:disabled):hover{background:#0b5ed7;box-shadow:0 4px 12px #0d6efd40}.danger-action{color:#b91c1c;background:#fee2e2}.danger-action:hover{background:#fecdd3;box-shadow:0 4px 12px #f8717133}.calendar-quick-edit{z-index:1300;border:1px solid var(--gray-300);box-sizing:border-box;background:#fff;border-radius:10px;width:360px;max-width:calc(100vw - 24px);max-height:72%;padding:14px;position:fixed;overflow-y:auto;box-shadow:0 14px 34px #0f172a2e}.quick-edit-header{justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:12px;display:flex}.quick-edit-header-main{flex:1;min-width:0}.quick-edit-title{color:#111827;font-size:14px;font-weight:700}.quick-edit-subtitle{color:#4b5563;white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:12px;font-weight:600;line-height:1.25;overflow:hidden}.quick-edit-subtitle--restricted{filter:blur(4px);-webkit-user-select:none;user-select:none}.quick-edit-subtitle-zip{color:var(--gray-500);margin-top:1px;font-weight:500}.quick-edit-actions{align-items:center;gap:6px;display:flex}.quick-edit-section{margin-bottom:10px}.time-row{gap:10px;display:flex}.time-col{flex:1;min-width:0}.field-label{color:#4b5563;margin-bottom:4px;font-size:12px;font-weight:600;display:block}.field-select{box-sizing:border-box;width:100%;font-size:13px}.custom-select{width:100%;position:relative}.custom-select__trigger{text-align:left;align-items:center;width:100%;display:flex}.custom-select__label{text-overflow:ellipsis;white-space:nowrap;width:100%;display:block;overflow:hidden}.custom-select__trigger.is-placeholder{color:var(--gray-900)}.custom-select__list{z-index:12;background:#fff;border:1px solid #d6e4ff;border-radius:12px;max-height:240px;padding:6px;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto;box-shadow:0 12px 24px #0f172a24}.custom-select.is-open .custom-select__trigger{border-color:var(--color-primary,var(--color-primary));background-color:#fff;box-shadow:0 4px 12px #0f172a24}.custom-select.is-open .custom-select__list{border-color:var(--color-primary,var(--color-primary))}.custom-select__trigger:focus{border-color:#d6e4ff;outline:none;box-shadow:0 2px 8px #0f172a14}.custom-select__trigger:focus-visible{border-color:var(--color-primary,var(--color-primary));box-shadow:0 0 0 3px rgba(var(--color-primary-rgb), .2)}.custom-select__option{text-align:left;width:100%;color:var(--gray-900);cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:#fff;border:none;border-radius:8px;padding:8px 12px;font-size:.92em;font-weight:600;transition:background-color .2s;overflow:hidden}.custom-select__option:hover,.custom-select__option.is-selected{background:#f2f7ff}.custom-select__option.is-disabled,.custom-select__option:disabled{color:#94a3b8;cursor:not-allowed;background:#f8fafc}.custom-select__option.is-disabled:hover,.custom-select__option:disabled:hover{background:#f8fafc}.custom-select__empty{color:#94a3b8;padding:8px 12px;font-size:.9em}.field-textarea{border:1px solid var(--gray-300);resize:none;box-sizing:border-box;border-radius:6px;width:100%;min-height:72px;padding:8px 10px;font-size:13px;overflow:hidden}.field-textarea--restricted{color:var(--gray-500);filter:blur(4px);-webkit-user-select:none;user-select:none;justify-content:flex-start;align-items:center;display:flex}.point-selector{background-color:#fafdff;background-image:linear-gradient(45deg, transparent 50%, var(--color-primary) 50%), linear-gradient(135deg, var(--color-primary) 50%, transparent 50%), linear-gradient(to right, #d6e4ff, #d6e4ff);width:100%;color:var(--gray-900);cursor:pointer;appearance:none;background-position:calc(100% - 16px) calc(50% - 3px),calc(100% - 11px) calc(50% - 3px),calc(100% - 30px);background-repeat:no-repeat;background-size:6px 6px,6px 6px,1px 24px;border:1px solid #d6e4ff;border-radius:10px;height:42px;padding:0 36px 0 14px;font-weight:600;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 8px #0f172a14}.point-selector:hover{background-color:#f2f7ff;border-color:#b8d2ff;box-shadow:0 4px 12px #0f172a1f}.point-selector:focus,.field-textarea:focus{border-color:var(--color-primary,var(--color-primary));background-color:#fff;outline:none;box-shadow:0 4px 12px #0f172a24}.point-selector:disabled{color:#94a3b8;box-shadow:none;cursor:not-allowed;opacity:.8;background-color:#f1f5f9;border-color:#cbd5e1}.quick-edit-footer{justify-content:flex-start;align-items:center;gap:8px;min-height:18px;display:flex}.error-text{color:#dc2626;font-size:12px;font-weight:600}.header-icon-btn{border:1px solid var(--gray-300);color:#374151;cursor:pointer;background:#fff;border-radius:6px;justify-content:center;align-items:center;width:30px;height:30px;padding:0;transition:background-color .2s,border-color .2s,color .2s;display:inline-flex}.header-icon-btn svg{width:16px;height:16px}.header-icon-btn-close{font-size:17px;font-weight:700;line-height:1}.header-icon-btn:hover{border-color:var(--gray-400);background:#f8fafc}.header-icon-btn-danger{color:#dc2626;border-color:#fca5a5}.header-icon-btn-danger:hover{background:#fef2f2;border-color:#dc2626}.header-icon-btn-route{color:var(--color-primary,var(--color-primary));border-color:rgba(var(--color-primary-rgb), .35)}.header-icon-btn .route-open-icon{width:14px;height:18px;display:block}.header-icon-btn-route:hover{background:rgba(var(--color-primary-rgb), .1);border-color:var(--color-primary,var(--color-primary))}.calendar-filters{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;height:100%;display:flex}.filter-btn{height:32px;color:var(--gray-900);cursor:pointer;text-align:center;white-space:nowrap;background:#fafdff;border:1px solid #e0eaff;border-radius:6px;justify-content:center;align-items:center;min-width:fit-content;padding:0 12px;font-size:.8rem;font-weight:500;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.filter-btn.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.filter-btn:hover{border-color:var(--color-primary);box-shadow:0 2px 8px rgba(var(--color-primary-rgb), .15);background:#e0eaff}.filter-btn.active:hover{background:var(--color-primary-dark);border-color:var(--color-primary-dark)}.calendar-header-with-filters{flex-shrink:0;align-items:center;gap:16px;margin-bottom:0;padding:8px 0 4px;display:flex;position:relative}.calendar-filters{flex-wrap:wrap;flex:1;align-items:center;gap:6px;min-width:0;height:100%;display:flex}.navigation-section{justify-content:center;align-items:center;gap:8px;width:clamp(380px,64vw,840px);max-width:calc(100% - 32px);display:flex;position:absolute;left:50%;transform:translate(-50%)}.current-period{color:var(--gray-700);text-align:center;white-space:nowrap;text-overflow:ellipsis;flex:0 auto;min-width:0;max-width:calc(100% - 96px);font-family:Avenir Next LT Pro,sans-serif;font-size:24px;font-weight:600;overflow:hidden}.current-period--week{font-size:18px}.nav-button{cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:40px;height:40px;padding:0;transition:background-color .2s;display:flex}.nav-button:hover{background-color:#b5bec61a}.hour-slot{height:var(--calendar-hour-row-height,72px);min-height:var(--calendar-hour-row-height,72px);max-height:var(--calendar-hour-row-height,72px);border-bottom:1px solid var(--gray-200);box-sizing:border-box;cursor:pointer;pointer-events:auto;flex-shrink:0;padding:2px;transition:background-color .2s;position:relative;overflow:visible}.hour-slot:after{content:"";pointer-events:none;z-index:0;height:30px;position:absolute;top:0;left:0;right:0}.hour-slot:hover{background-color:#0000}.hour-slot--today{background:0 0}.days{box-sizing:border-box;flex:1;grid-template-columns:repeat(7,1fr);gap:8px;width:100%;min-width:0;height:100%;min-height:0;padding:0 16px 16px;display:grid;overflow:hidden}.month-view{grid-template-rows:repeat(var(--weeks-count), 1fr)}.day-container{background:#fafafa;border:1px solid #f3f4f6;border-radius:4px;flex-direction:column;height:100%;display:flex;overflow:hidden}.day-container--empty{background:0 0;border:none}.day-cell{box-sizing:border-box;flex-direction:column;flex:1;gap:4px;min-height:0;padding:8px;display:flex;position:relative;overflow:hidden}.day-cell--today{background:rgba(var(--color-primary-rgb), .05);border:1px solid rgba(var(--color-primary-rgb), .2)}.day-number{color:var(--gray-700);flex-shrink:0;margin-bottom:2px;font-size:18px;font-weight:600}.day-cell--today .day-number{color:var(--color-primary);font-weight:700}.entries-list{box-sizing:border-box;flex-direction:column;flex:1;gap:4px;width:100%;display:flex;overflow:hidden auto}.entry-mini-card{color:#111827;cursor:default;box-sizing:border-box;background:#94a3b829;border:none;border-radius:4px;align-items:stretch;width:100%;min-height:44px;padding:4px 6px;font-size:12px;font-weight:500;line-height:1.3;transition:all .2s;display:flex;overflow:hidden}.entry-mini-card--clickable{cursor:pointer}.entry-mini-card--clickable:hover{background:#94a3b838}.entry-mini-card--completed{color:var(--gray-500);opacity:.85;background:#9ca3af4d}.entry-mini-card--completed.entry-mini-card--clickable:hover{background:#9ca3af5c}.entry-mini-card--dimmed{opacity:.35}.entry-mini-card--highlighted{box-shadow:0 0 0 2px #11182733}.entry-mini-card--status-draft{background:#f59e0b2e}.entry-mini-card--status-started{background:#16a34a2e}.entry-mini-card--status-published{background:#3b82f629}.entry-mini-card--status-none{color:#111827;background:#fff;border:1px solid #111827}.entry-mini-card--status-none.entry-mini-card--clickable:hover{background:#fff;border-color:#111827}.entry-content{flex-direction:column;align-items:flex-start;gap:2px;width:100%;min-width:0;max-width:100%;display:flex;overflow:hidden}.sampler-badge{color:#111827;border:1px solid var(--gray-300);white-space:nowrap;text-overflow:ellipsis;background:#f3f4f6;border-radius:10px;flex-shrink:0;max-width:100%;padding:1px 6px;font-size:10px;font-weight:700;overflow:hidden}.entry-time{color:#4b5563;white-space:nowrap;text-overflow:ellipsis;flex-shrink:0;min-width:0;max-width:100%;font-size:11px;font-weight:500;display:block;overflow:hidden}.entry-address{word-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;max-width:100%;font-weight:600;line-height:1.25;overflow:hidden}.calendar-missing-overlay{z-index:3000;box-sizing:border-box;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);background:#0f172aa6;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.calendar-missing-panel{background:#fff;border-radius:14px;flex-direction:column;gap:16px;width:min(540px,92vw);max-height:min(70vh,560px);padding:18px;display:flex;box-shadow:0 24px 60px #0f172a40}.calendar-missing-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.calendar-missing-title{color:#0f172a;font-size:16px;font-weight:700}.calendar-missing-close{color:#475569;cursor:pointer;background:#f1f5f9;border:none;border-radius:999px;justify-content:center;align-items:center;width:32px;height:32px;font-size:18px;line-height:1;transition:background .2s,color .2s;display:inline-flex}.calendar-missing-close:hover{color:#1e293b;background:#e2e8f0}.calendar-missing-empty{color:#64748b;font-size:14px}.calendar-missing-list{gap:10px;padding-right:4px;display:grid;overflow:auto}.calendar-missing-card{color:#fff;cursor:pointer;text-align:left;background:#2563eb;border:none;border-radius:8px;flex-direction:column;gap:6px;padding:8px 10px;transition:transform .15s,box-shadow .15s;display:flex}.calendar-missing-card:hover{transform:translateY(-1px);box-shadow:0 8px 16px #2563eb4d}.calendar-missing-line{align-items:center;gap:8px;min-width:0;display:flex}.calendar-missing-sampler{color:#111827;white-space:nowrap;background:#fff;border:1px solid #ffffff4d;border-radius:10px;flex-shrink:0;padding:2px 6px;font-size:10px;font-weight:700}.calendar-missing-sampler--empty{color:var(--gray-500);text-align:center;background:#ffffffb3;border:1px dashed #6b728099;min-width:32px}.calendar-missing-title-wrap{flex-direction:column;min-width:0;display:flex}.calendar-missing-name{white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.calendar-missing-id{opacity:.85;white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.tour-type-switcher{flex-direction:column;flex-shrink:0;gap:4px;width:100%;display:flex}.type-buttons{flex-wrap:wrap;justify-content:flex-start;align-items:stretch;gap:clamp(4px,1vw,8px);width:100%;display:flex}.type-button{min-width:96px;max-width:100%;height:auto;min-height:40px;color:var(--gray-900);cursor:pointer;text-align:center;white-space:normal;overflow-wrap:anywhere;word-break:break-word;background:#fafdff;border:1px solid #e0eaff;border-radius:8px;flex:120px;justify-content:center;align-items:center;padding:8px 10px;font-size:clamp(.72rem,.95vw,.9rem);font-weight:500;line-height:1.2;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.first-row .type-button{flex-basis:clamp(90px,30%,170px)}.second-row .type-button{flex-basis:clamp(90px,24%,170px)}.second-row{margin-top:8px}.start-end-button{border-color:var(--gray-300)!important;background:#fff!important}.start-end-button:hover{box-shadow:0 2px 8px #0000001a;border-color:var(--gray-400)!important;background:#f9fafb!important}.start-end-button.active{background:var(--color-primary)!important;color:#fff!important;border-color:var(--color-primary)!important}.type-button:hover{border-color:var(--color-primary);box-shadow:0 2px 8px rgba(var(--color-primary-rgb), .15);background:#e0eaff}.type-button.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.loading-skeleton{cursor:not-allowed;position:relative;overflow:hidden;border-color:var(--gray-200)!important;background:#f3f4f6!important}.skeleton-text{background:linear-gradient(90deg, var(--gray-200) 25%, #f3f4f6 50%, var(--gray-200) 75%);background-size:200% 100%;border-radius:4px;width:60px;height:12px;animation:1.5s infinite calendar-skeleton-loading}@keyframes calendar-skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.error-message{color:#dc2626;text-align:center;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;justify-content:center;align-items:center;width:200px;height:40px;padding:0 12px;font-size:.875rem;font-weight:500;display:flex}}@scope(.route-planner,.route-details-page){.draggable-list{background:var(--color-background);border:2px dashed #0000;border-radius:8px;flex:1;transition:all .2s;overflow-y:auto}.draggable-list.empty.drag-target{border-color:var(--color-border)}.empty-state,.loading-state{min-height:100px;color:var(--color-text-light);text-align:center;justify-content:center;align-items:center;padding:12px;font-size:.85em;display:flex}.items{flex-direction:column;gap:4px;padding:4px;display:flex}.list-item{color:var(--gray-700);background:#fff;border:2px solid #0000;border-radius:6px;align-items:flex-start;gap:8px;min-height:50px;margin-bottom:4px;padding:8px 10px;font-size:.85em;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;box-shadow:0 1px 3px #0000000d}.drag-source .list-item{cursor:move}.address-item.system-added{outline-offset:-1px;border-radius:8px;outline:3px solid #f59e0b}.address-item.system-added .item-number{background:#f59e0b}.drag-source .list-item:hover{border-color:var(--color-primary);background:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.drag-source .list-item{flex-wrap:wrap}.drag-source .list-item .item-badges{flex-basis:100%;justify-content:flex-end;margin-left:0}.item-number{background:var(--color-primary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;margin:0;font-size:11px;font-weight:700;transition:all .3s;display:flex}.item-details{flex:1;min-width:0}.item-extra{align-items:center;gap:6px;margin-left:auto;display:flex}.item-extra.item-extra--with-meta{margin-left:0}.item-badges{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;min-width:0;margin-left:auto;display:flex}.item-title{white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.item-title--split{white-space:normal;flex-wrap:wrap;align-items:baseline;gap:0 6px;display:flex;overflow:visible}.item-title-main{display:inline}.item-title--split .item-title-main{white-space:nowrap;text-overflow:ellipsis;flex:none;max-width:100%;display:inline-block;overflow:hidden}.item-title-secondary{white-space:nowrap;flex:none;display:inline-block}.item-title-subline{color:inherit;white-space:normal;overflow-wrap:break-word;margin-top:2px;font-weight:500;line-height:1.3}.item-subtitle{color:var(--color-text-light);white-space:normal;margin-top:2px;font-size:.85em;line-height:1.3}.tour-badge{border-radius:4px;flex-shrink:0;padding:2px 8px;font-size:.8em;font-weight:500}.tour-badge.terminart-badge,.terminart-badge{border:1px solid var(--gray-300);border-radius:4px;font-weight:700}.sampling-badge{color:#111827;white-space:nowrap;background:#f1f5f9;border-radius:4px;align-items:center;gap:4px;padding:2px 8px;font-size:.8em;font-weight:500;display:inline-flex}.sampling-badge--non-default{color:#92400e;background:#fde68a}.sampling-badge--duration{color:#111827;background:#f1f5f9;gap:2px}.sampling-badge-icon{flex:none;width:12px;height:12px}.suggestion-badge{color:#ff9800;background:#ff98001a;border-radius:4px;flex-shrink:0;padding:2px 8px;font-size:.8em;font-weight:500}.tour-badge.start-point{background:rgba(var(--color-primary-rgb), .1);color:var(--color-primary)}.list-item.dragging{opacity:.5;cursor:grabbing;transform:scale(.98)}.tour-badge.end-point{color:#f44336;background:#f443361a}.list-toggle{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;margin-left:auto;display:inline-flex}.toggle-track{background:#fff;border-radius:6px;width:112px;height:40px;transition:all .3s;position:relative;overflow:hidden;box-shadow:0 2px 4px #0000001a}.toggle-handle{background:var(--color-primary);z-index:1;border-radius:6px;width:50%;height:100%;transition:all .3s;position:absolute;top:0;left:0}.is-right .toggle-handle{background:#ff9800;transform:translate(100%)}.toggle-labels{z-index:2;width:100%;height:100%;display:flex;position:absolute;top:0;left:0}.label-left,.label-right{width:50%;height:100%;color:var(--gray-500);justify-content:center;align-items:center;font-size:.9rem;font-weight:500;transition:color .3s;display:flex}.toggle-track:not(.is-right) .label-left,.is-right .label-right{color:#fff}.toggle-text{display:none}.date-change-confirmation{z-index:10;background:#fffffffa;border:2px solid #ff6b35;border-radius:12px;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.date-change-confirmation--overlay{z-index:1200;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);min-width:320px;max-width:440px;padding:20px;position:fixed;inset:50% auto auto 50%;transform:translate(-50%,-50%);box-shadow:0 8px 32px #0000001a}.confirmation-content{text-align:center;max-width:400px;padding:32px}.confirmation-content p{color:var(--gray-900);margin:0 0 24px;font-size:16px;font-weight:500;line-height:1.5}.confirmation-buttons{justify-content:center;gap:16px;display:flex}.confirm-btn{color:#fff;cursor:pointer;background:#ff6b35;border:none;border-radius:8px;min-width:120px;padding:12px 24px;font-size:16px;font-weight:600;transition:all .3s;box-shadow:0 2px 8px #0000001a}.confirm-btn:hover{background:#e55a2b;transform:translateY(-1px);box-shadow:0 4px 12px #ff6b354d}.cancel-btn{background:var(--gray-500);color:#fff;cursor:pointer;border:none;border-radius:8px;min-width:120px;padding:12px 24px;font-size:16px;font-weight:600;transition:all .3s;box-shadow:0 2px 8px #0000001a}.cancel-btn:hover{background:#5a6268;transform:translateY(-1px);box-shadow:0 4px 12px #6c757d4d}.route-summary-container{--action-row-gap:12px;--action-btn-basis:160px;--action-btn-min-width:140px;--action-btn-height:48px;--action-btn-font-size:1.1em;--action-btn-pad-y:14px;--action-btn-pad-x:20px;--action-reset-size:48px;--action-reset-icon-size:20px;background:#fff;border-radius:20px;flex-direction:column;gap:16px;padding:16px 12px;display:flex;position:relative;box-shadow:0 2px 10px #00000014}.main-controls-row{grid-template:"calendar objects"min-content"calendar summary"1fr/minmax(0,2fr) minmax(0,3fr);align-items:flex-start;gap:16px;display:grid}.controls-summary{align-self:start}.route-summary-container.compact-layout .main-controls-row{flex:1;grid-template:"calendar objects"min-content"summary summary"1fr/minmax(0,1fr) minmax(0,1fr);align-items:stretch;min-height:0}.calendar-section{flex-direction:column;grid-area:calendar;justify-content:flex-start;align-items:stretch;gap:6px;width:100%;min-width:0;max-width:100%;display:flex}.calendar-section .calendar{width:100%;max-width:100%;min-height:auto;box-shadow:none;border-radius:0;gap:10px;padding:10px}.calendar-section .calendar-header{gap:8px}.calendar-section .current-month{min-width:90px;font-size:12px}.calendar-section .nav-button{width:20px;height:20px}.calendar-section .weekdays{grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;margin-bottom:6px;display:grid}.calendar-section .weekday{width:100%;padding:3px 0;font-size:11px}.calendar-section .days{grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;display:grid}.calendar-section .day{justify-self:center;width:26px;height:26px;font-size:12px}.calendar-section .calendar.disabled{opacity:.5;pointer-events:none;cursor:not-allowed}.calendar-section :is(.calendar.disabled .day),.calendar-section :is(.calendar.disabled .nav-button){opacity:.5;cursor:not-allowed}.multi-day-row{box-sizing:border-box;border-top:none;flex-direction:column;gap:6px;width:100%;margin-top:-6px;padding:0 10px 6px 15px;display:flex}.multi-day-checkbox-label{color:var(--color-text-secondary,#555);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:6px;font-size:12px;display:flex}.multi-day-checkbox-label input[type=checkbox]{cursor:pointer}.controls-objects,.controls-summary{flex-direction:column;gap:12px;width:100%;min-width:0;display:flex}.controls-objects{grid-area:objects}.controls-summary{grid-area:summary}.route-summary-container.compact-layout .controls-objects{align-self:stretch}.route-summary-container.compact-layout .controls-summary{align-self:end}.route-summary-container.compact-layout .route-name-input{margin-top:auto}.input-row{gap:12px;display:flex}.input-row>*{flex:1}.point-selector,.date-picker{appearance:none;background-color:#fff;background-image:linear-gradient(45deg, transparent 50%, var(--color-primary) 50%), linear-gradient(135deg, var(--color-primary) 50%, transparent 50%), linear-gradient(to right, #e7f0ff, #e7f0ff);width:100%;color:var(--gray-900);background-position:calc(100% - 22px),calc(100% - 16px),calc(100% - 40px);background-repeat:no-repeat;background-size:6px 6px,6px 6px,1px 24px;border:1px solid #d6e4ff;border-radius:12px;height:42px;padding:10px 40px 10px 14px;font-size:.92em;font-weight:600;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 8px #0f172a14}.time-input{width:var(--summary-cell-width,88px);min-width:var(--summary-cell-width,88px);max-width:var(--summary-cell-width,88px);height:var(--summary-cell-height,42px);box-sizing:border-box;text-align:center;background-image:none;justify-self:end;padding-left:12px;padding-right:12px}.route-name-input{width:100%;color:var(--gray-900);background:#fafdff;border:1px solid #e0eaff;border-radius:6px;height:32px;padding:6px 8px;font-size:.85em;font-weight:500;transition:all .2s cubic-bezier(.4,0,.2,1)}.route-name-row{width:100%;position:relative}.route-name-row .route-name-input{padding-right:34px}.route-favorite-star{width:26px;height:26px;color:var(--gray-500);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.route-favorite-star:hover:not(:disabled),.route-favorite-star--active{color:#f59e0b}.route-favorite-star:disabled{opacity:.35;cursor:default}.favorite-prompt .confirmation-content{max-width:460px}.favorite-prompt-list{flex-direction:column;gap:6px;max-height:240px;margin:10px 0;display:flex;overflow-y:auto}.favorite-prompt-item{align-items:center;gap:6px;display:flex}.favorite-prompt-apply{cursor:pointer;text-align:left;min-width:0;color:var(--gray-900);background:#fafdff;border:1px solid #e0eaff;border-radius:8px;flex:1;align-items:center;gap:8px;padding:8px 10px;font-size:.85em;display:flex}.favorite-prompt-apply:hover{border-color:var(--color-primary);background:#eef4ff}.favorite-prompt-apply svg{color:#f59e0b;flex-shrink:0}.favorite-prompt-name{white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.favorite-prompt-meta{color:var(--gray-500);white-space:nowrap;margin-left:auto;font-size:.85em}.favorite-prompt-delete{width:24px;height:24px;color:var(--gray-500);cursor:pointer;background:0 0;border:none;border-radius:6px;flex-shrink:0;font-size:16px;line-height:1}.favorite-prompt-delete:hover{color:#dc2626;background:#fee2e2}.recalculate-times-row{width:100%;margin:2px 0 8px}.recalculate-times-row--summary-mobile{margin:0 0 6px;display:none}.route-summary-container.compact-layout .recalculate-times-row--default{display:none}.route-summary-container.compact-layout .recalculate-times-row--summary-mobile{display:block}.recalculate-times-label{color:#334155;align-items:center;gap:8px;font-size:.9rem;display:inline-flex}.recalculate-times-label input[type=checkbox]{width:16px;height:16px}.point-selector:focus,.date-picker:focus{border-color:var(--color-primary);background-color:#fff;outline:none;box-shadow:0 4px 12px #0f172a24}.point-selector:hover,.date-picker:hover{background-color:#f2f7ff;border-color:#b8d2ff;box-shadow:0 4px 12px #0f172a1f}.route-name-input:focus{border-color:var(--color-primary);box-shadow:0 2px 8px rgba(var(--color-primary-rgb), .15);background:#fff;outline:none}.route-name-input:hover:not(.disabled){border-color:var(--color-primary);box-shadow:0 2px 8px rgba(var(--color-primary-rgb), .15);background:#e0eaff}.point-selector:disabled,.date-picker:disabled,.route-name-input:disabled{color:#94a3b8;box-shadow:none;cursor:not-allowed;opacity:.8;background-color:#f1f5f9;border-color:#cbd5e1}.custom-select{width:100%;position:relative}.custom-select__trigger{text-align:left;align-items:center;width:100%;display:flex;position:relative}.custom-select__trigger.point-selector{background-image:none;background-position:initial;background-size:initial;padding-right:40px}.custom-select__trigger:after{content:"";border-right:2px solid var(--color-primary);border-bottom:2px solid var(--color-primary);pointer-events:none;opacity:.95;width:8px;height:8px;position:absolute;top:50%;right:14px;transform:translateY(-60%)rotate(45deg)}.custom-select.is-open .custom-select__trigger:after{transform:translateY(-40%)rotate(-135deg)}.custom-select__label{text-overflow:ellipsis;white-space:nowrap;width:100%;display:block;overflow:hidden}.custom-select__trigger.is-placeholder{color:var(--gray-900)}.custom-select__list{z-index:10;background:#fff;border:1px solid #d6e4ff;border-radius:12px;max-height:240px;padding:6px;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto;box-shadow:0 12px 24px #0f172a24}.custom-select.is-open .custom-select__trigger{border-color:var(--color-primary);background-color:#fff;box-shadow:0 4px 12px #0f172a24}.custom-select.is-open .custom-select__list{border-color:var(--color-primary)}.custom-select__trigger:focus{border-color:#d6e4ff;outline:none;box-shadow:0 2px 8px #0f172a14}.custom-select__trigger:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb), .2)}.custom-select.is-invalid .custom-select__trigger,.custom-select.is-invalid.is-open .custom-select__trigger{border-color:#f87171;box-shadow:0 0 0 2px #f8717126}.custom-select__trigger:disabled:after{opacity:.6}.custom-select__option{text-align:left;width:100%;color:var(--gray-900);cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:#fff;border:none;border-radius:8px;padding:8px 12px;font-size:.92em;font-weight:600;transition:background-color .2s;overflow:hidden}.custom-select__option:hover,.custom-select__option.is-selected{background:#f2f7ff}.custom-select__option.is-disabled,.custom-select__option:disabled{color:#94a3b8;cursor:not-allowed;background:#f8fafc}.custom-select__option.is-disabled:hover,.custom-select__option:disabled:hover{background:#f8fafc}.custom-select__empty{color:#94a3b8;padding:8px 12px;font-size:.9em}.route-name-input.disabled{background:var(--gray-100);border-color:var(--gray-200);color:var(--gray-500);cursor:not-allowed;opacity:.7}.date-picker{cursor:pointer}.date-picker::-webkit-calendar-picker-indicator{background-color:var(--color-primary);cursor:pointer;filter:invert();border-radius:4px;padding:4px;transition:background-color .2s}.date-picker::-webkit-calendar-picker-indicator:hover{background-color:var(--color-primary-dark)}.loading-indicator{color:#b5bec6;text-align:center;margin-top:4px;font-size:.8em;font-style:italic}.route-name-input{color:#64748b;background:#fafdff;font-style:italic}.route-name-input:focus,.route-name-input.editing{color:var(--gray-900);background:#fff;font-style:normal}.button-row{gap:var(--action-row-gap);flex-wrap:nowrap;align-items:center;display:flex}.button-row>button{flex:1 1 var(--action-btn-basis);white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.button-row>.reset-button{flex:0 0 var(--action-reset-size);min-width:var(--action-reset-size)}.optimize-button{padding:var(--action-btn-pad-y) var(--action-btn-pad-x);font-size:var(--action-btn-font-size);cursor:pointer;box-sizing:border-box;background:var(--color-primary);color:#fff;height:var(--action-btn-height);text-align:center;border:none;border-radius:6px;justify-content:center;align-items:center;transition:all .2s;display:flex;font-weight:700!important}.optimize-button span{font-weight:700!important}.optimize-button:hover:not(:disabled){background:var(--color-primary-dark)}.optimize-button.optimized{background:#10b981}.optimize-button:disabled{cursor:not-allowed;opacity:.7;background:#e0e0e0}.reset-button{font-size:var(--action-btn-font-size);cursor:pointer;width:var(--action-reset-size);min-width:var(--action-reset-size);max-width:var(--action-reset-size);height:var(--action-reset-size);box-sizing:border-box;color:var(--gray-900);text-align:center;background:#fafdff;border:1px solid #e0eaff;border-radius:10px;justify-content:center;align-items:center;padding:0;font-weight:400;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.reset-button-icon{width:var(--action-reset-icon-size);height:var(--action-reset-icon-size);display:block}.reset-button:hover:not(:disabled){color:var(--gray-900);box-shadow:0 2px 8px rgba(var(--color-primary-rgb), .15);background:#fff1f2;border-color:#fca5a5}.reset-button:hover:not(:disabled) .reset-button-icon{color:#dc2626}.reset-button:active:not(:disabled){background:#991b1b}.reset-button:disabled{cursor:not-allowed;opacity:.7;background:#f8fafc}.cancel-icon-button{color:#b91c1c;background:#fff1f2;border-color:#fecaca}.cancel-icon-button:hover:not(:disabled){color:#fff;background:#ef4444;border-color:#ef4444;box-shadow:0 2px 8px #ef444440}.cancel-icon-button:disabled{color:#94a3b8;background:#f8fafc;border-color:#e2e8f0}.cancel-icon-button__icon{width:var(--action-reset-icon-size);height:var(--action-reset-icon-size);display:block}.summary-box{--summary-cell-width:88px;--summary-cell-height:42px;--summary-icon-size:32px;--summary-column-gap:8px;--summary-icon-edge-pad:2px;grid-template-columns:minmax(0,11fr) minmax(0,9fr);align-items:start;gap:10px 16px;width:100%;margin-top:0;padding:0;display:grid}.summary-item{grid-template-columns:minmax(0, 1fr) var(--summary-cell-width);align-items:center;column-gap:var(--summary-column-gap);box-sizing:border-box;min-width:0;padding:0;display:grid}.summary-item--box-first{grid-template-columns:var(--summary-cell-width) minmax(0, 1fr)}.summary-item--time.is-invalid .time-input{border-color:#f87171;box-shadow:0 0 0 2px #f8717126}.summary-item label{color:#64748b;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:.85em;font-weight:600;line-height:1.2;overflow:hidden}.summary-icon-label{align-items:center;width:100%;display:flex}.summary-icon-label--before{padding-right:var(--summary-icon-edge-pad);justify-content:flex-end}.summary-icon-label--after{padding-left:var(--summary-icon-edge-pad);justify-content:flex-start}.summary-item--time .time-input::-webkit-calendar-picker-indicator{display:none}.summary-icon-label--picker{cursor:pointer}.summary-icon-label--picker:hover .summary-metric-icon{color:var(--color-primary)}.summary-metric-icon{width:var(--summary-icon-size);height:var(--summary-icon-size);color:#64748b;flex-shrink:0}.summary-value{color:var(--gray-900);width:var(--summary-cell-width);min-width:var(--summary-cell-width);max-width:var(--summary-cell-width);text-align:center;white-space:nowrap;box-sizing:border-box;height:var(--summary-cell-height);background:#fff;border:1px solid #d6e4ff;border-radius:12px;justify-content:center;align-items:center;padding:0 12px;font-size:.92em;font-weight:600;display:inline-flex;box-shadow:0 2px 8px #0f172a14}.summary-item--box-first .summary-value,.summary-item--box-first .time-input{justify-self:start}.publish-toggle{color:#111827;align-items:center;gap:8px;margin-top:8px;font-size:13px;font-weight:600;display:inline-flex}.publish-toggle input{width:16px;height:16px}.register-button{padding:var(--action-btn-pad-y) var(--action-btn-pad-x);font-size:var(--action-btn-font-size);cursor:pointer;color:#fff;box-sizing:border-box;height:var(--action-btn-height);text-align:center;background:#f59e0b;border:none;border-radius:6px;justify-content:center;align-items:center;transition:all .2s;display:flex;font-weight:700!important}.register-button span{font-weight:700!important}.register-button:hover:not(:disabled){background:#d97706}.register-button.loading-rp-components{cursor:wait;background:#d97706}.register-button:disabled{cursor:not-allowed;opacity:.7;background:#e0e0e0}.register-button.publish-button{background:var(--color-primary)}.register-button.publish-button:hover:not(:disabled){background:var(--color-primary-dark)}.register-button.publish-button.started-edit{background:#f59e0b}.register-button.publish-button.started-edit:hover:not(:disabled){background:#d97706}.register-button.publish-button:disabled{background:#e0e0e0}.cancel-button{padding:var(--action-btn-pad-y) var(--action-btn-pad-x);font-size:var(--action-btn-font-size);color:#ef4444;cursor:pointer;height:var(--action-btn-height);text-align:center;background:#fff;border:2px solid #ef4444;border-radius:6px;justify-content:center;align-items:center;font-weight:600;transition:all .2s;display:flex}.cancel-button span{font-weight:700!important}.cancel-button:hover:not(:disabled){color:#fff;background:#ef4444}.cancel-button:disabled{color:var(--gray-400);cursor:not-allowed;opacity:.7;background:#e0e0e0;border-color:#e0e0e0}@container app (width<=1800px) and (width>=601px){.route-summary-container{--action-row-gap:8px;--action-btn-basis:0;--action-btn-min-width:0;--action-btn-height:clamp(34px, 2.4vw, 44px);--action-btn-font-size:clamp(.72em, .85vw, .98em);--action-btn-pad-y:clamp(6px, .6vw, 10px);--action-btn-pad-x:clamp(8px, .7vw, 14px);--action-reset-size:clamp(34px, 2.2vw, 42px);--action-reset-icon-size:clamp(14px, 1.05vw, 18px)}.button-row{flex-wrap:nowrap;align-items:center}.button-row>.optimize-button,.button-row>.register-button,.button-row>.cancel-button{white-space:nowrap;text-overflow:ellipsis;flex:1 1 0;min-width:0;overflow:hidden}.button-row>.reset-button{flex:0 0 var(--action-reset-size);min-width:var(--action-reset-size)}}@container app (width<=1100px) and (width>=601px){.route-summary-container{--action-row-gap:10px;--action-btn-basis:140px;--action-btn-min-width:118px;--action-btn-height:42px;--action-btn-font-size:.95em;--action-btn-pad-y:10px;--action-btn-pad-x:14px;--action-reset-size:42px;--action-reset-icon-size:18px}.main-controls-row{gap:12px}.controls-stack{gap:10px}.point-selector,.date-picker{height:38px;padding:8px 36px 8px 12px;font-size:.86em}.route-name-input{height:30px;font-size:.82em}.summary-box{--summary-cell-width:80px;--summary-cell-height:38px;--summary-icon-size:28px;--summary-column-gap:7px;--summary-icon-edge-pad:1px;gap:8px 12px}.summary-item label{letter-spacing:.35px;font-size:.8em}}@container app (width<=900px) and (width>=601px){.route-summary-container{--action-row-gap:8px;--action-btn-basis:120px;--action-btn-min-width:100px;--action-btn-height:38px;--action-btn-font-size:.86em;--action-btn-pad-y:8px;--action-btn-pad-x:12px;--action-reset-size:38px;--action-reset-icon-size:16px}.controls-stack{gap:8px}.point-selector,.date-picker{height:36px;padding:7px 32px 7px 10px;font-size:.8em}.route-name-input{height:28px;font-size:.78em}.summary-box{--summary-cell-width:72px;--summary-cell-height:36px;--summary-icon-size:24px;--summary-column-gap:6px;--summary-icon-edge-pad:1px;gap:6px 10px}.summary-item label{letter-spacing:.2px;font-size:.74em}.summary-value,.time-input{padding-left:8px;padding-right:8px;font-size:.8em}}@container app (width<=600px){.route-summary-container{--action-row-gap:10px;--action-btn-basis:100%;--action-btn-min-width:0;--action-btn-height:40px;--action-btn-font-size:.84em;--action-btn-pad-y:8px;--action-btn-pad-x:12px;--action-reset-size:40px;--action-reset-icon-size:16px}.main-controls-row{grid-template-columns:minmax(0,1fr);grid-template-areas:"calendar""objects""summary";gap:12px}.calendar-section{flex:auto;width:100%;max-width:100%}.calendar-section .calendar{max-width:100%}.summary-box{--summary-cell-width:70px;--summary-cell-height:34px;--summary-icon-size:22px;--summary-column-gap:6px;--summary-icon-edge-pad:0px;gap:6px 8px}.recalculate-times-row--default{display:none}.recalculate-times-row--summary-mobile{display:block}.summary-item label{letter-spacing:.2px;font-size:.72em}.input-row,.button-row{gap:var(--action-row-gap);flex-direction:column}.optimize-button,.register-button,.cancel-button{font-size:var(--action-btn-font-size);padding:var(--action-btn-pad-y) var(--action-btn-pad-x);height:var(--action-btn-height);min-height:var(--action-btn-height);white-space:normal;text-align:center;line-height:1.2}.button-row>.reset-button{flex:0 0 var(--action-reset-size);min-width:var(--action-reset-size)}.reset-button{width:var(--action-reset-size);min-width:var(--action-reset-size);max-width:var(--action-reset-size);height:var(--action-reset-size)}}@container app (width<=480px){.route-summary-container{--action-row-gap:8px;--action-btn-height:36px;--action-btn-font-size:.78em;--action-btn-pad-y:6px;--action-btn-pad-x:10px;--action-reset-size:36px;--action-reset-icon-size:14px}.summary-box{--summary-cell-width:64px;--summary-cell-height:32px;--summary-icon-size:20px;--summary-column-gap:5px}.summary-item label{letter-spacing:.15px;font-size:.68em}.summary-value,.time-input{padding-left:6px;padding-right:6px;font-size:.74em}.optimize-button,.register-button,.cancel-button{font-size:var(--action-btn-font-size);padding:var(--action-btn-pad-y) var(--action-btn-pad-x);height:var(--action-btn-height);min-height:var(--action-btn-height);white-space:normal;text-align:center;line-height:1.2}.button-row>.reset-button{flex:0 0 var(--action-reset-size);min-width:var(--action-reset-size)}.reset-button{width:var(--action-reset-size);min-width:var(--action-reset-size);max-width:var(--action-reset-size);height:var(--action-reset-size)}}@container app (width<=400px){.route-summary-container{--action-row-gap:7px;--action-btn-height:34px;--action-btn-font-size:.72em;--action-btn-pad-y:6px;--action-btn-pad-x:9px;--action-reset-size:34px;--action-reset-icon-size:13px}.summary-box{--summary-cell-width:60px;--summary-cell-height:30px;--summary-icon-size:18px;--summary-column-gap:4px}.summary-item label{letter-spacing:.1px;font-size:.64em}.summary-value,.time-input{padding-left:5px;padding-right:5px;font-size:.68em}.optimize-button,.register-button,.cancel-button{font-size:var(--action-btn-font-size);padding:var(--action-btn-pad-y) var(--action-btn-pad-x);height:var(--action-btn-height);min-height:var(--action-btn-height);white-space:normal;text-align:center;line-height:1.2}.button-row>.reset-button{flex:0 0 var(--action-reset-size);min-width:var(--action-reset-size)}.reset-button{width:var(--action-reset-size);min-width:var(--action-reset-size);max-width:var(--action-reset-size);height:var(--action-reset-size)}}@container app (width<=350px){.route-summary-container{--action-row-gap:6px;--action-btn-height:32px;--action-btn-font-size:.66em;--action-btn-pad-y:5px;--action-btn-pad-x:8px;--action-reset-size:32px;--action-reset-icon-size:12px}.summary-box{--summary-cell-width:56px;--summary-cell-height:28px;--summary-icon-size:17px;--summary-column-gap:4px}.recalculate-times-row--default{display:none}.recalculate-times-row--summary-mobile{display:block}.summary-item label{letter-spacing:0;font-size:.6em}.summary-value,.time-input{padding-left:4px;padding-right:4px;font-size:.64em}.optimize-button,.register-button,.cancel-button{font-size:var(--action-btn-font-size);padding:var(--action-btn-pad-y) var(--action-btn-pad-x);height:var(--action-btn-height);min-height:var(--action-btn-height);white-space:normal;text-align:center;line-height:1.2}.button-row>.reset-button{flex:0 0 var(--action-reset-size);min-width:var(--action-reset-size)}.reset-button{width:var(--action-reset-size);min-width:var(--action-reset-size);max-width:var(--action-reset-size);height:var(--action-reset-size)}}.tour-group{background:#fff;border:2px solid #e0e0e0;border-radius:8px;margin-bottom:4px;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;box-shadow:0 1px 3px #0000000d}.tour-group.draggable{cursor:move}.tour-group.draggable:hover{border-color:var(--color-primary);background:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.tour-header{cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--gray-700);background:0 0;border-bottom:1px solid #0000;align-items:center;gap:8px;padding:12px 12px 12px 32px;font-size:.9em;font-weight:500;transition:all .2s;display:flex;position:relative}.tour-header:hover:before{color:var(--color-primary);background:rgba(var(--color-primary-rgb), .1)}.tour-header:hover{background:rgba(var(--color-primary-rgb), .05)}.tour-name{flex:1}.tour-badge.id-badge{background:rgba(var(--color-primary-rgb), .1);color:var(--color-primary-dark);font-family:Courier New,monospace;font-size:.85em;font-weight:600}.tour-group.dragging{opacity:.5;cursor:grabbing;transform:scale(.98);border-color:var(--color-primary)!important;background:#fff!important;box-shadow:0 4px 12px #00000026!important}.tour-selector{background:var(--color-surface);border-radius:8px;flex-direction:column;gap:16px;padding:16px;display:flex;box-shadow:0 1px 3px #0000001a}.tour-filter-container{cursor:move;border:1px dashed #0000;border-radius:6px;padding:8px;transition:all .2s}.tour-filter-container:hover{border-color:var(--color-primary);background:var(--color-background-hover)}.drag-hint{color:var(--color-text-light);text-align:center;margin-top:8px;font-size:.8em}.tour-type-selector{flex-direction:column;gap:4px;width:100%;display:flex}.type-buttons{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:8px;width:100%;display:flex}.type-button{width:fit-content;min-width:0;max-width:100%;height:auto;min-height:40px;color:var(--gray-900);cursor:pointer;text-align:center;white-space:nowrap;text-overflow:ellipsis;background:#fafdff;border:1px solid #e0eaff;border-radius:8px;flex:none;justify-content:center;align-items:center;padding:8px 10px;font-size:clamp(.72rem,.95vw,.9rem);font-weight:500;line-height:1.2;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;overflow:hidden}.type-button.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.type-button:hover{border-color:var(--color-primary);box-shadow:0 2px 8px rgba(var(--color-primary-rgb), .15);background:#e0eaff}.type-button.active:hover{background:var(--color-primary-dark);border-color:var(--color-primary-dark)}.loading-skeleton{cursor:not-allowed;width:112px;position:relative;overflow:hidden;border-color:var(--gray-200)!important;background:#f3f4f6!important}.skeleton-text{background:linear-gradient(90deg, var(--gray-200) 25%, #f3f4f6 50%, var(--gray-200) 75%);background-size:200% 100%;border-radius:4px;width:60px;height:12px;animation:1.5s infinite loading-rp-components}.error-message{color:#dc2626;text-align:center;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;justify-content:center;align-items:center;width:100%;min-height:40px;padding:0 12px;font-size:.875rem;font-weight:500;display:flex}.tours-list{border-radius:0;flex-direction:column;flex:1;min-height:0;padding:8px 0 0;display:flex}.tours-content{flex-direction:column;flex:1;min-height:0;padding:4px 0;display:flex;overflow-y:auto}.tours-list.is-dragging-from-middle-pane{border-radius:8px;position:relative;box-shadow:0 0 10px #dc354580;border:3px dashed #dc3545!important}.tours-list.is-dragging-from-middle-pane .tours-content{opacity:.1;pointer-events:none;background:#0000001a;border-radius:4px;margin:3px}.tours-list.is-dragging-from-middle-pane:after{content:"";z-index:10;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%23666' stroke-width='1.5'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='m14.74 9-.346 9m-4.788 0L9.26 9m9.968-3.21c.342.052.682.107 1.022.166m-1.022-.165L18.16 19.673a2.25 2.25 0 0 1-2.244 2.077H8.084a2.25 2.25 0 0 1-2.244-2.077L4.772 5.79m14.456 0a48.108 48.108 0 0 0-3.478-.397m-12 .562c.34-.059.68-.114 1.022-.165m0 0a48.11 48.11 0 0 1 3.478-.397m7.5 0v-.916c0-1.18-.91-2.164-2.09-2.201a51.964 51.964 0 0 0-3.32 0c-1.18.037-2.09 1.022-2.09 2.201v.916m7.5 0a48.667 48.667 0 0 0-7.5 0'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:contain;width:28px;height:28px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.tours{flex-direction:column;gap:8px;display:flex}.loading-state,.empty-state{min-height:0;color:var(--color-text-light);text-align:center;flex:1;justify-content:center;align-items:center;padding:12px;font-size:.85em;display:flex}.expand-arrow-container{background:var(--gray-100);cursor:pointer;border-top:1px solid #e0e0e0;justify-content:center;align-items:center;min-height:24px;padding:10px 8px 2px;transition:background-color .2s,padding .3s;display:flex}.expand-arrow-container.expanded{padding:12px 8px 2px}.expand-arrow-container:hover .expand-arrow{stroke:#ff6b35;filter:drop-shadow(0 0 8px #ff6b3599)}.expand-arrow{width:50%;max-width:80px;transition:stroke .3s,filter .3s}.expand-arrow.expanded{transform:rotate(180deg)}.waypoints-container{border:2px dashed var(--color-primary);background:#fff padding-box padding-box;border-radius:20px;flex:1;padding:12px;position:relative;overflow:hidden auto}.waypoints-container::-webkit-scrollbar-track{background:0 0}.waypoints-container.is-empty{overflow:hidden}.waypoints-empty-pin{pointer-events:none;color:var(--color-primary);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.waypoints-empty-pin svg{opacity:0;width:64px;height:75px;animation:4s ease-out .6s infinite waypoints-pin-blip}.loading-state,.empty-state{height:100%;color:var(--color-text-light);text-align:center;justify-content:center;align-items:center;padding:12px;font-size:.85em;display:flex}.waypoints-list{flex-direction:column;gap:4px;display:flex}.waypoints-container .address-item{min-height:50px;color:var(--gray-700);grid-template-columns:auto minmax(0,1fr);align-items:start;gap:4px 8px;padding:8px 10px 8px 32px;font-size:.85em;display:grid}.waypoints-container :is(.address-item .item-number){grid-area:1/1;margin-top:-1px}.waypoints-container :is(.address-item .item-details){grid-area:1/2;min-width:0;padding-right:92px}.waypoints-container :is(.address-item .item-title){line-height:1.25}.waypoints-container :is(.address-item .item-subtitle){margin-top:4px}.waypoints-container :is(.address-item .item-badges){grid-area:2/2;justify-content:flex-end;align-items:flex-start;min-width:0;margin-left:0}.waypoints-container :is(.address-item .item-extra){place-self:auto;margin-left:0;position:absolute;top:8px;right:6px}.tour-item.dragging,.address-item.dragging{opacity:.5;cursor:grabbing;transform:scale(.98)}.tour-item.drag-over,.address-item.drag-over{border:2px solid var(--color-primary);background:#3b82f61a;transform:translateY(2px);box-shadow:0 4px 12px #00000026}.tour-item,.address-item{cursor:grab;transition:all .2s;position:relative}.tour-header:before,.address-item:before{content:"⋮⋮";color:var(--color-text-muted);opacity:.6;pointer-events:none;cursor:grab;border-radius:4px;justify-content:center;align-items:center;width:18px;height:18px;margin:0 -4px 0 0;padding:2px;font-size:12px;transition:all .2s;display:flex;position:absolute;top:50%;left:8px;transform:translateY(-50%)}.tour-item:hover,.address-item:hover{background:#fff;border-color:#90caf9;transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.tour-header:hover:before,.address-item:hover:before{color:var(--color-primary);background:rgba(var(--color-primary-rgb), .1)}.tour-item{background:#fff;border:2px solid #0000;border-radius:6px;margin-bottom:4px;transition:all .3s cubic-bezier(.4,0,.2,1);overflow:hidden;box-shadow:0 1px 3px #0000000d}.address-item{background:#fff;border:2px solid #0000;border-radius:6px;margin-bottom:4px;padding-left:32px;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #0000000d}.address-item.fixed-position{border:2px solid var(--color-primary);cursor:not-allowed;background:#fff;align-items:center}.fixed-position-icon{color:var(--color-primary);flex-shrink:0;align-items:center;display:inline-flex}.fixed-position-icon svg{width:18px;height:18px;display:block}.address-item.fixed-position:before{display:none}.address-item.fixed-position:hover{box-shadow:none;transform:none}.fixed-position-badge{background:var(--color-primary);color:#fff;text-transform:uppercase;letter-spacing:.5px;z-index:10;border-radius:12px;padding:2px 8px;font-size:.7em;font-weight:600;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.fixed-position-info{color:var(--color-text-light);z-index:10;font-size:.7em;font-style:italic;position:absolute;bottom:8px;right:8px}.waypoint-time{color:var(--gray-700);justify-content:flex-start;align-items:center;gap:6px;margin-left:0;padding-left:0;display:inline-flex;position:relative}.waypoints-container .waypoints-list{position:relative}.waypoints-container .waypoints-list--connected:before{content:"";background:var(--color-primary);pointer-events:none;border-radius:2px;width:4px;position:absolute;top:20px;bottom:20px;left:41px}.waypoints-container .waypoints-list--connected:not(:has(.address-item+.address-item)):before{display:none}.waypoints-container .waypoints-list--reordering:before{display:none}.waypoints-container .waypoints-list--connected.waypoints-list--reordering>.address-item+.address-item:after{content:"";background:var(--color-primary);pointer-events:none;border-radius:2px;width:4px;height:8px;position:absolute;top:-8px;left:41px}.waypoints-container .waypoints-list--connected.waypoints-list--reordering>.address-item.dragging:after,.waypoints-container .waypoints-list--connected.waypoints-list--reordering>.address-item.dragging+.address-item:after{background:repeating-linear-gradient(to bottom, var(--color-primary) 0 2px, transparent 2px 5px)}.list-item-time{color:var(--gray-700);font-variant-numeric:tabular-nums;flex-shrink:0;align-items:center;gap:6px;margin-left:auto;font-weight:500;display:inline-flex}.list-item-time .waypoint-time-icon{width:15px;height:15px;display:block;overflow:visible}.waypoint-time-button{color:currentColor;cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;width:auto;height:auto;padding:0;line-height:1;display:inline-flex;overflow:visible}.waypoint-time-button:hover{background:0 0}.waypoint-time-icon{width:15px;height:15px;display:block;overflow:visible}.waypoint-time-input{text-align:center;vertical-align:middle;width:4.6ch;min-width:4.6ch;height:18px;color:var(--gray-700);appearance:none;background:0 0;border:none;border-radius:0;margin:0;padding:0;font-size:1.05em;font-weight:500;line-height:18px}.waypoint-time-badge{color:#0e7490;text-transform:uppercase;letter-spacing:.6px;background:#0e74901f;border-radius:999px;padding:2px 6px;font-size:.65em;font-weight:700}.tour-header{cursor:pointer;-webkit-user-select:none;user-select:none;background:#fff;align-items:center;gap:8px;padding:12px 12px 12px 32px;display:flex;position:relative}.expand-icon{color:var(--color-text-light);font-size:.9em}.tour-title{flex:1;font-size:.9em;font-weight:500}.tour-badge{border-radius:4px;padding:2px 8px;font-size:.8em;font-weight:500}.address-count-badge{color:#616161;text-align:center;background:#9e9e9e1a;border-radius:12px;flex-shrink:0;min-width:20px;padding:2px 6px;font-size:.75em;font-weight:500}.address-count{color:var(--color-text-light);font-size:.85em}.tour-addresses{background:#fff;padding:8px}.tour-group:has(.tour-addresses) .tour-header{border-bottom-color:var(--color-border)}.tour-addresses .list-item{flex-wrap:wrap;row-gap:4px}.tour-addresses .list-item .item-subtitle{margin-top:4px}.tour-addresses .item-badges{flex-basis:100%;justify-content:flex-end;align-items:flex-start;row-gap:4px;margin-left:0}.waypoints-container::-webkit-scrollbar{width:8px}.waypoints-container::-webkit-scrollbar-track{background:#fff;border-radius:4px}.waypoints-container::-webkit-scrollbar-thumb{background:var(--color-primary-light);border-radius:4px}.map-panel{background:var(--color-surface);border:2px solid #4a90e2;border-radius:20px;flex-direction:column;flex:1;height:100%;display:flex;position:relative;overflow:hidden;box-shadow:0 4px 12px #0000001a}.map{width:100%;min-width:300px;height:100%;min-height:300px}.loading-rp-components,.error{height:100%;color:var(--color-text-muted);background:#f9fafb;justify-content:center;align-items:center;font-size:14px;display:flex}.error{color:#ef4444;background:#fee2e2}.waypoint-time-input[type=time]{font-variant-numeric:tabular-nums;width:auto;min-width:0}.waypoint-time-input[type=time]::-webkit-calendar-picker-indicator{display:none}.tour-add-btn{background:rgba(var(--color-primary-rgb), .12);width:22px;height:22px;color:var(--color-primary);cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1em;font-weight:700;line-height:1;transition:all .2s;display:inline-flex}.tour-add-btn:hover{background:var(--color-primary);color:#fff}.waypoint-remove-btn{width:18px;height:18px;color:var(--color-text-muted,var(--gray-400));cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1.05em;font-weight:600;line-height:1;transition:all .2s;display:inline-flex}.waypoint-remove-btn:hover{color:#ef4444;background:#ef44441f}.calendar{background-color:#fff;border-radius:8px;flex-direction:column;gap:22px;width:100%;max-width:306px;min-height:310px;padding:24px;display:flex;box-shadow:2px 16px 19px #00000017}.calendar-header{justify-content:space-between;align-items:center;display:flex}.current-month{color:var(--gray-700);text-align:center;min-width:120px;font-family:Avenir Next LT Pro,sans-serif;font-size:14px;font-weight:600}.nav-button{cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:24px;height:24px;padding:0;transition:background-color .2s;display:flex}.nav-button:hover{background-color:#b5bec61a}.nav-button:disabled{opacity:.4;cursor:not-allowed}.nav-button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.weekdays{justify-content:space-between;display:flex}.weekday{text-align:center;color:#b5bec6;letter-spacing:1.5px;text-transform:uppercase;width:30px;font-family:Avenir Next LT Pro,sans-serif;font-size:10px;font-weight:600}.days{grid-template-columns:repeat(7,1fr);gap:8px;display:grid}.day{width:30px;height:30px;color:var(--gray-700);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:0;font-family:Avenir Next LT Pro,sans-serif;font-size:16px;font-weight:600;transition:all .2s;display:flex}.day--empty{pointer-events:none}.day:hover{background-color:rgba(var(--color-primary-rgb), .1)}.day:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.day--selected{background-color:var(--color-primary);color:#fff}.day--selected:hover{background-color:var(--color-primary-dark)}.day--disabled{color:#c4ccd3;cursor:not-allowed;background:#f5f7fa}.day--disabled:hover{background:#eef2f7}.day--holiday:not(.day--selected):not(.day--disabled){color:#8f3131;background-color:#fdeaea}.day--holiday:not(.day--selected):not(.day--disabled):hover{background-color:#f9dcdc}.day--crossed{color:#9ba4ad;background:#f8f9fb;position:relative}.day--crossed:after{content:"";transform-origin:50%;pointer-events:none;background:#d15b5b;height:1.5px;position:absolute;top:50%;left:3px;right:3px;transform:rotate(-25deg)}select.point-selector{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M5.5 7.75L10 12.25L14.5 7.75' stroke='%234285f4' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:16px 16px}.custom-select select.point-selector{display:block}.custom-select.is-invalid select.point-selector{border-color:#f87171;box-shadow:0 0 0 2px #f8717126}.drag-overlay-card{border:2px solid var(--color-primary);max-width:280px;color:var(--gray-900);cursor:grabbing;pointer-events:none;background:#fff;border-radius:6px;align-items:center;gap:8px;padding:10px 14px;font-size:.85em;font-weight:500;display:flex;box-shadow:0 8px 24px #0000002e}.drag-overlay-card-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}}@keyframes loading-rp-components{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes waypoints-pin-blip{0%{opacity:0;animation-timing-function:ease-in}10%{opacity:.6}82%,to{opacity:0}}@scope(.planner-view,.cell-menu){.availability-calendar{flex-direction:column;flex:1;gap:12px;height:auto;min-height:0;display:flex;position:relative}.availability-error{color:#b91c1c;background:#fee2e2;border-radius:8px;padding:10px 14px;font-size:.9rem}.availability-loading,.availability-empty{color:var(--gray-500);font-size:.95rem}.availability-grid{flex-direction:column;gap:8px;min-height:0;display:flex}.availability-header-row{color:var(--gray-500);grid-template-columns:minmax(48px,max-content) 1fr;align-items:center;gap:12px;font-size:.85rem;display:grid}.availability-header-label{text-transform:uppercase;letter-spacing:.08em;font-weight:600}.availability-header-days{gap:4px;padding:6px;display:grid}.availability-day-header{text-align:center;background:0 0;border-radius:6px;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:6px 0;font-size:.8rem;display:flex}.availability-day-header.is-monday{border-left:1px solid #eef2f7}.availability-day-header.is-weekend{background:#f3f4f6}.availability-day-header.is-holiday{background:#fee2e2}.availability-day-header.is-holiday .availability-day-weekday,.availability-day-header.is-holiday .availability-day-number{color:#b91c1c}.availability-day-weekday{letter-spacing:.04em;color:var(--gray-500);font-size:.65rem;font-weight:700}.availability-day-number{color:#374151;font-size:.8rem;font-weight:600}.availability-body{flex-direction:column;flex:1;gap:6px;min-height:0;display:flex}.availability-row{grid-template-columns:minmax(48px,max-content) 1fr;align-items:center;gap:12px;display:grid}.availability-row-label{color:#202124;text-transform:uppercase;white-space:nowrap;font-size:.85rem;font-weight:600}.availability-row-grid{cursor:pointer;background:#f8fafc;border-radius:8px;align-items:center;gap:4px;min-height:36px;padding:6px;display:grid;position:relative;overflow:visible}.availability-row-grid.is-readonly{cursor:default}.availability-bar{background:var(--color-primary);color:#fff;box-shadow:none;z-index:1;border:none;border-radius:6px;justify-content:center;align-items:center;min-width:0;padding:6px 10px;font-size:.75rem;font-weight:600;transition:transform .15s;display:flex;position:relative;overflow:visible}.availability-bar.is-edited{background:#f59e0b}.availability-bar-label{white-space:nowrap;text-overflow:clip;pointer-events:none;max-width:none;overflow:visible}.availability-bar-trash{color:#b91c1c;cursor:pointer;z-index:50;background:#fee2e2;border:none;border-radius:10px;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex;position:absolute;transform:translate(-50%);box-shadow:0 6px 12px #b91c1c33}.availability-bar-trash--floating{pointer-events:auto}.availability-bar-trash .trash-icon{width:16px;height:16px}.availability-bar-handle{opacity:0;cursor:ew-resize;width:10px;transition:opacity .2s,background .2s;position:absolute;top:-2px;bottom:-2px}.availability-bar-handle.start{border-radius:6px 0 0 6px;left:-1px}.availability-bar-handle.end{border-radius:0 6px 6px 0;right:-1px}.availability-bar:hover .availability-bar-handle,.availability-bar.is-selected .availability-bar-handle{opacity:1}.availability-bar-handle:hover{background:#ffffff4d}.availability-header-row.no-label,.availability-row.no-label{grid-template-columns:1fr}.availability-mobile-list{flex-direction:column;gap:6px;min-height:0;padding-bottom:12px;display:flex;overflow-y:auto}.availability-mobile-day{color:#374151;font:inherit;text-align:left;cursor:pointer;background:#f8fafc;border:none;border-radius:10px;align-items:center;gap:12px;padding:12px 14px;transition:background .15s,color .15s;display:flex}.availability-mobile-day.is-weekend{background:#f3f4f6}.availability-mobile-day.is-holiday{color:#b91c1c;background:#fee2e2}.availability-mobile-day.is-available{background:var(--color-primary);color:#fff}.availability-mobile-day.is-available.is-edited{background:#f59e0b}.availability-mobile-date{align-items:baseline;gap:8px;min-width:64px;display:flex}.availability-mobile-weekday{letter-spacing:.04em;opacity:.75;font-size:.7rem;font-weight:700}.availability-mobile-number{font-size:1rem;font-weight:600}.availability-mobile-holiday{opacity:.85;text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.75rem;overflow:hidden}.availability-mobile-toggle{background:#00000026;border-radius:999px;flex-shrink:0;width:36px;height:20px;margin-left:auto;transition:background .15s;position:relative}.availability-mobile-toggle:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .15s;position:absolute;top:2px;left:2px}.availability-mobile-day.is-available .availability-mobile-toggle{background:#ffffff59}.availability-mobile-day.is-available .availability-mobile-toggle:after{transform:translate(16px)}@container app (width<=900px){.availability-calendar{height:auto}.availability-header-row,.availability-row{grid-template-columns:minmax(48px,max-content) 1fr}}}@scope(.calendar){:scope{background-color:#fff;border-radius:8px;flex-direction:column;gap:22px;width:100%;max-width:306px;min-height:310px;padding:24px;display:flex;box-shadow:2px 16px 19px #00000017}.calendar-header{justify-content:space-between;align-items:center;display:flex}.current-month{color:var(--gray-700);text-align:center;min-width:120px;font-family:Avenir Next LT Pro,sans-serif;font-size:14px;font-weight:600}.nav-button{cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:24px;height:24px;padding:0;transition:background-color .2s;display:flex}.nav-button:hover{background-color:#b5bec61a}.nav-button:disabled{opacity:.4;cursor:not-allowed}.nav-button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.weekdays{justify-content:space-between;display:flex}.weekday{text-align:center;color:#b5bec6;letter-spacing:1.5px;text-transform:uppercase;width:30px;font-family:Avenir Next LT Pro,sans-serif;font-size:10px;font-weight:600}.days{grid-template-columns:repeat(7,1fr);gap:8px;display:grid}.day{width:30px;height:30px;color:var(--gray-700);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:0;font-family:Avenir Next LT Pro,sans-serif;font-size:16px;font-weight:600;transition:all .2s;display:flex}.day--empty{pointer-events:none}.day:hover{background-color:rgba(var(--color-primary-rgb), .1)}.day:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.day--selected{background-color:var(--color-primary);color:#fff}.day--selected:hover{background-color:var(--color-primary-dark)}@container app (width<=480px){:scope{padding:16px}.day{width:28px;height:28px;font-size:14px}}}@scope(.documents-view){.documents-view{max-width:1200px;margin:0 auto}h1{color:var(--color-text-strong);margin:0;font-size:24px;font-weight:700}h2{margin:0 0 8px;font-size:18px;font-weight:600}.error-banner{color:var(--color-error);background:#fce8e6;border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:16px;padding:12px 16px;display:flex}.dismiss{cursor:pointer;color:var(--color-error);background:0 0;border:none;font-size:20px}.list-header{justify-content:center;align-items:center;margin-bottom:24px;display:flex}.doc-list{flex-direction:column;gap:12px;max-width:33vw;margin:0 auto;display:flex}.doc-card{border:1px solid var(--color-surface-alt,#e8eaed);background:#fff;border-radius:8px;padding:14px 18px}.doc-card.doc-detecting,.doc-card.doc-processing{border-left:3px solid var(--color-primary,var(--color-primary))}.doc-card.doc-review{border-left:3px solid #fbbc04}.doc-card.doc-completed{border-left:3px solid #34a853}.doc-card.doc-failed{border-left:3px solid var(--color-error,#ea4335)}.doc-row{align-items:center;gap:12px;display:flex}.doc-file-name{color:var(--color-text-strong);white-space:nowrap;text-overflow:ellipsis;flex:auto;min-width:0;font-size:14px;font-weight:600;overflow:hidden}.doc-status{border-radius:10px;padding:2px 8px;font-size:12px;font-weight:500}.status-detecting,.status-processing{color:#174ea6;background:#d2e3fc}.status-review{color:#92600e;background:#fef7cd}.status-completed{color:#137333;background:#ceead6}.status-failed{color:#c5221f;background:#fce8e6}.doc-sampler{color:var(--color-text-light,#5f6368);flex:none;font-size:13px;font-weight:500}.doc-date{color:var(--color-text-light,#5f6368);margin-left:auto;font-size:12px}.doc-progress{margin-top:8px}.progress-bar{background:var(--color-surface-alt,#e8eaed);border-radius:3px;height:6px;overflow:hidden}.progress-fill{background:var(--color-primary,var(--color-primary));border-radius:3px;height:100%;transition:width .3s}.progress-text{color:var(--color-text-light,#5f6368);margin-top:4px;font-size:12px;display:block}.waiting-text{font-style:italic}.doc-error{color:var(--color-error,#ea4335);margin-top:6px;font-size:12px}.doc-actions{align-items:center;gap:12px;margin-top:10px;display:flex}.doc-delete-button{margin-left:auto}.planner-trash-delete-button.doc-delete-button{color:var(--gray-400)}.planner-trash-delete-button.doc-delete-button:hover{color:#b91c1c}.btn-link{color:var(--color-text-light,#5f6368);cursor:pointer;background:0 0;border:none;padding:0;font-size:12px;font-weight:500;text-decoration:underline}.btn-link:hover{color:var(--color-primary,var(--color-primary))}.btn-action{border:1px solid var(--color-surface-alt,#e8eaed);cursor:pointer;background:#fff;border-radius:4px;padding:5px 14px;font-size:12px;font-weight:500;transition:all .15s}.btn-action:hover{background:var(--color-surface-alt,#e8eaed)}.btn-action-primary{border-color:var(--color-primary,var(--color-primary));color:var(--color-primary,var(--color-primary))}.btn-action-primary:hover{background:var(--color-primary,var(--color-primary));color:#fff}.btn-back{color:var(--color-primary,var(--color-primary));cursor:pointer;background:0 0;border:none;padding:4px 0;font-size:14px;font-weight:500}.btn-back:hover{text-decoration:underline}.btn-back-icon{color:#fff;background:#3b82f6;border:1px solid #2563eb;border-radius:8px;justify-content:center;align-items:center;width:40px;height:40px;padding:0;transition:all .2s;display:flex}.btn-back-icon:hover{background:#2563eb;border-color:#1d4ed8;text-decoration:none}.btn-back-icon-svg{flex-shrink:0}.upload-section{justify-content:center;width:100%;display:flex}.upload-layout{width:fit-content;margin:0 auto;position:relative}.upload-back-button{position:absolute;top:50%;left:-56px;transform:translateY(-50%)}.upload-card{border:1px solid var(--color-surface-alt);background:#fff;border-radius:12px;justify-content:center;align-items:center;width:min(400px,100vw - 48px);max-width:400px;padding:32px;display:flex}.upload-button-group{background:0 0;border:none;border-radius:0;flex-direction:column;align-items:stretch;gap:12px;width:min(300px,100%);margin:0 auto;padding:0;display:flex}.upload-button-group .form-field{width:100%;margin-bottom:0}.scan-upload-button{color:#1d4ed8;cursor:pointer;box-sizing:border-box;text-align:center;background:#eff6ff;border:1px solid #2563eb;border-radius:10px;justify-content:center;align-items:center;gap:10px;width:100%;padding:12px 18px;font-size:14px;font-weight:600;transition:all .2s;display:inline-flex}.scan-upload-button:hover{background:#dbeafe;border-color:#1d4ed8}.scan-upload-button svg{flex-shrink:0}.ods-upload-button{color:#334155;cursor:pointer;box-sizing:border-box;text-align:center;background:#f8fafc;border:1px dashed #94a3b8;border-radius:10px;justify-content:center;align-items:center;gap:10px;width:100%;padding:12px 18px;font-size:14px;font-weight:600;transition:all .2s;display:inline-flex}.ods-upload-button:hover{background:#f1f5f9;border-color:#64748b}.ods-upload-button svg{flex-shrink:0}.upload-button-content{justify-content:flex-start;align-items:center;gap:10px;width:min(220px,100%);display:inline-flex}.file-input-hidden{display:none}.selected-file{color:var(--color-text-light,#5f6368);margin-top:8px;font-size:13px;display:block}.form-field{margin-bottom:16px}.form-field label:not(.scan-upload-button):not(.ods-upload-button){color:var(--color-text-light);margin-bottom:6px;font-size:13px;font-weight:500;display:block}.form-field input[type=file]:not(.file-input-hidden){margin-top:4px;display:block}.btn-primary{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:10px 24px;font-weight:500;transition:background .2s}.btn-primary:hover:not(:disabled){background:var(--color-primary-dark)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{color:var(--color-text-strong);border:1px solid var(--color-surface-alt);cursor:pointer;background:#fff;border-radius:6px;padding:10px 24px;font-weight:500;transition:all .2s}.btn-secondary:hover{background:var(--color-surface-alt)}.btn-back-inline{margin-top:24px}.status-section{text-align:center;padding:64px 0}.spinner{border:3px solid var(--color-surface-alt);border-top-color:var(--color-primary);border-radius:50%;width:40px;height:40px;margin:0 auto 16px;animation:.8s linear infinite spin-documents}.progress-bar-container{max-width:400px;margin:16px auto 0}.rotation-section{justify-content:center;display:flex}.preparing-layout{width:min(1320px,100vw - 24px);margin:0 auto}.rotation-card{border:1px solid var(--color-surface-alt,#e8eaed);background:#fff;border-radius:18px;width:100%;padding:24px;box-shadow:0 18px 42px #0f172a14}.rotation-copy{margin-bottom:18px}.preparing-title-row{align-items:center;gap:10px;display:flex}.preparing-title-row h2{margin-bottom:0}.preparing-title-spinner{justify-content:center;align-items:center;width:24px;height:24px;display:inline-flex}.preparing-title-spinner .spinner{border-width:2px;width:20px;height:20px;margin:0}.rotation-copy p{color:var(--color-text-light,#5f6368);margin:8px 0 0}.rotation-meta{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.rotation-chip{color:#1d4ed8;background:#dbeafe;border-radius:999px;align-items:center;padding:6px 10px;font-size:12px;font-weight:600;display:inline-flex}.rotation-chip-muted{color:#475569;background:#f3f4f6}.preparing-preview-loading{border:1px dashed var(--color-surface-alt,#e8eaed);background:#f8fafc;border-radius:14px;justify-content:center;align-items:center;min-height:min(620px,100vh - 330px);display:flex;position:relative;overflow:hidden}.preparing-preview-placeholder{color:var(--color-text-light,#5f6368);font-size:13px}.rotation-preview{--rotation-preview-height:min(620px, calc(100vh - 330px))}.rotation-toolbar{grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;margin-top:18px;display:grid}.rotation-model-toggle{justify-self:end;gap:8px;display:inline-flex}.rotation-model-toggle button{border:1px solid var(--gray-300,#d1d5db);color:#374151;cursor:pointer;background:#fff;border-radius:6px;height:44px;padding:0 18px;font-size:13px;font-weight:600;transition:all .15s}.rotation-model-toggle button:hover{background:#f3f4f6}.rotation-model-toggle button.active{color:#fff;background:#2563eb;border-color:#2563eb}.rotation-rotate-group{justify-self:center;align-items:center;gap:16px;display:inline-flex}.rotation-rotate-btn{box-sizing:border-box;justify-content:center;align-items:center;width:44px;height:44px;padding:0;display:inline-flex}.rotation-rotate-btn svg{width:20px;height:20px}.rotation-confirm-btn{box-sizing:border-box;justify-self:start;height:44px;padding-top:0;padding-bottom:0}.planner-delete-modal-overlay{z-index:1100;background:#00000080;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.planner-delete-modal{background:#fff;border-radius:12px;width:100%;max-width:500px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.planner-delete-modal-body{padding:32px 24px 20px}.planner-delete-title{color:#1f2937;text-align:center;margin:0;padding:20px 0;font-size:24px;font-weight:700}.planner-delete-route-name{text-align:center;color:#374151;word-break:break-word;margin:0;font-size:16px;font-weight:600}.planner-delete-modal-footer{border-top:1px solid var(--gray-200);justify-content:center;gap:12px;padding:20px 24px 24px;display:flex}.planner-delete-btn{cursor:pointer;border:none;border-radius:8px;min-width:80px;padding:10px 20px;font-size:14px;font-weight:500;transition:all .2s}.planner-delete-btn--cancel{color:#374151;border:1px solid var(--gray-300);background:#f3f4f6}.planner-delete-btn--cancel:hover:not(:disabled){background:var(--gray-200);border-color:var(--gray-400)}.planner-delete-btn--danger{color:#fff;background:#dc2626;border:1px solid #dc2626}.planner-delete-btn--danger:hover:not(:disabled){background:#b91c1c;border-color:#b91c1c}.planner-delete-btn--danger:disabled{cursor:not-allowed;background:#fca5a5;border-color:#fca5a5}.planner-trash-delete-button{color:#fff;cursor:pointer;background:0 0;border:none;border-radius:10px;justify-content:center;align-items:center;width:20px;height:20px;padding:0;display:inline-flex}.planner-trash-delete-button:hover{color:#b91c1c;background:0 0}.planner-trash-delete-button:disabled{color:#fca5a5;cursor:not-allowed;background:0 0}.planner-trash-icon{width:14px;height:14px}.review-actions{z-index:20;background:var(--color-surface,#fff);justify-content:center;gap:12px;padding:10px 0 14px;display:flex;position:sticky;top:0}.review-actions button{min-width:200px}.pages-grid{flex-direction:column;gap:16px;display:flex}.done-section{text-align:center;padding:64px 0}.done-actions{justify-content:center;gap:8px;margin-top:16px;display:flex}@container app (width<=700px){.upload-layout{width:min(500px,100vw - 32px)}.preparing-layout{width:min(500px,100vw - 20px)}.upload-back-button{margin-bottom:12px;position:static;transform:none}.rotation-card{padding:18px}.preparing-preview-loading{min-height:min(460px,100vh - 300px)}.rotation-preview{--rotation-preview-height:min(460px, calc(100vh - 300px))}}.grid-preview{border:1px solid var(--color-surface-alt,#e8eaed);background:#fff;border-radius:8px;overflow:hidden}.preview-header{background:var(--color-surface,var(--gray-100));border-bottom:1px solid var(--color-surface-alt,#e8eaed);align-items:center;padding:8px 12px;display:flex}.preview-page-badge{border:1px solid var(--gray-300,#d1d5db);color:#1f2937;background:#f3f4f6;border-radius:4px;align-items:center;padding:3px 10px;font-size:12px;font-weight:700;display:inline-flex}.preview-canvas-container{width:100%;position:relative}.preview-canvas-container canvas{width:100%;display:block}.no-grid{text-align:center;color:var(--color-text-light,#5f6368);padding:32px}.floating-action{cursor:pointer;white-space:nowrap;pointer-events:auto;z-index:10;border:none;border-radius:4px;padding:3px 8px;font-size:11px;font-weight:600;transition:transform .1s;position:absolute;transform:translate(-50%,-50%);box-shadow:0 2px 6px #00000026}.floating-action:hover{transform:translate(-50%,-50%)scale(1.1)}.floating-add{background:var(--color-primary,var(--color-primary));color:#fff}.floating-remove{color:#fff;background:#ea4335;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;padding:0;font-size:14px;display:flex}.rotation-preview{width:100%;height:var(--rotation-preview-height,420px);background:radial-gradient(circle at 100% 0,#3b82f614,#0000 38%),linear-gradient(#f8fbff 0%,#edf4ff 100%);border:1px solid #3b82f629;border-radius:14px;justify-content:center;padding:20px;display:flex;position:relative;overflow:hidden}.rotation-preview-stage{cursor:crosshair;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative;overflow:hidden}.rotation-main-canvas{background:#fff;border-radius:6px;width:auto;max-width:100%;height:auto;max-height:100%;display:block;box-shadow:0 16px 36px #0f172a1f}.crosshair-line{pointer-events:none;z-index:3;background:#2563eba6;position:absolute}.crosshair-line-x{height:1px;left:0;right:0}.crosshair-line-y{width:1px;top:0;bottom:0}.rotation-preview-zoom{z-index:5;background:#fff;border:1px solid #2563eb59;border-radius:10px;width:300px;height:300px;position:absolute;top:16px;right:16px;overflow:hidden;box-shadow:0 10px 22px #0f172a2e}.rotation-zoom-canvas{width:100%;height:100%;display:block}}@keyframes spin-documents{to{transform:rotate(360deg)}}@scope(.statistics-page){:scope{box-sizing:border-box;flex-direction:column;flex:1;width:100%;min-height:0;padding:0;display:flex}.stats-shell{--stats-rail-width:64px;border:1px solid var(--gray-200);background:#fff;border-radius:20px;flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden;box-shadow:0 2px 10px #00000014}.stats-body{flex:1;min-height:0;display:flex}.stats-side-nav{width:var(--stats-rail-width);box-sizing:border-box;border-right:1px solid #eef2f7;flex-direction:column;flex-shrink:0;align-items:center;gap:6px;margin:12px 0;padding:4px 0 16px;display:flex}.stats-nav-btn{width:38px;height:38px;color:var(--gray-700);cursor:pointer;background:#fafdff;border:1px solid #e0eaff;border-radius:6px;justify-content:center;align-items:center;padding:0;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.stats-nav-btn svg{width:19px;height:19px}.stats-nav-btn:hover{border-color:var(--color-primary)}.stats-nav-btn.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.stats-content{flex-direction:column;flex:1;min-width:0;padding:16px 20px;display:flex;overflow-y:auto}.stats-graph-section{margin-bottom:24px}.stats-graph-section:last-child{margin-bottom:0}.stats-graph-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.stats-graph-header .stats-chart-tabs{margin-bottom:0}.stats-day-strip{border-bottom:1px solid #eef2f7;flex-shrink:0;align-items:stretch;gap:12px;padding:12px 14px 12px 0;display:flex}.stats-strip-year{width:var(--stats-rail-width);box-sizing:border-box;border-right:1px solid #eef2f7;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:0;display:flex}.stats-strip-year span{color:var(--gray-900);font-variant-numeric:tabular-nums;font-size:.82rem;font-weight:700}.stats-strip-year button{color:var(--color-primary);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:3px 10px;line-height:1;display:flex}.stats-strip-year button svg{width:24px;height:24px}.stats-strip-year button:hover{color:var(--color-primary);background:#eef4ff}.stats-strip-months{flex:1;gap:10px;min-width:0;display:flex}.stats-strip-month{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.stats-strip-month-label{text-align:left;text-transform:uppercase;letter-spacing:.5px;color:var(--gray-500);cursor:pointer;background:0 0;border:none;border-radius:4px;width:fit-content;padding:0 2px 2px;font-size:.72rem;font-weight:700}.stats-strip-month-label:hover{color:var(--color-primary)}.stats-strip-days{grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;display:grid}.stats-strip-pad{min-width:0}.stats-strip-day{min-width:0;height:22px;color:var(--gray-700);font-variant-numeric:tabular-nums;cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:0;font-size:.68rem;font-weight:500;display:flex}.stats-strip-day.weekend{color:#b6bec8}.stats-strip-day:hover{color:var(--gray-900);background:#e7efff}.stats-strip-day.preview{color:var(--gray-900);background:#4289fd24}.stats-strip-day.in-range{color:#2a5cc0;background:#4289fd2e;border-radius:0}.stats-strip-day.in-range:hover{background:#4289fd4d}.stats-strip-day.edge,.stats-strip-day.pending{background:var(--color-primary);color:#fff;border-radius:4px;font-weight:700}.stats-strip-day.today:not(.in-range):not(.edge){box-shadow:inset 0 0 0 1.5px var(--color-primary)}.stats-export-button{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;width:64px;height:32px;margin-left:auto;padding:0;transition:background .2s cubic-bezier(.4,0,.2,1);display:inline-flex}.stats-export-button:hover:not(:disabled){background:var(--color-primary-dark)}.stats-export-button:disabled{opacity:.45;cursor:default}.stats-export-button svg{width:21px;height:21px}.stats-export-button svg path{stroke-width:2.8px}.stats-table-card{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.stats-section-title{color:var(--gray-900);margin:0 0 12px;font-size:.95rem;font-weight:600}.stats-chart{width:100%}.stats-chart-tabs{gap:6px;margin-bottom:12px;display:flex}.stats-chart-tab{height:32px;color:var(--gray-900);cursor:pointer;white-space:nowrap;background:#fafdff;border:1px solid #e0eaff;border-radius:6px;justify-content:center;align-items:center;padding:0 12px;font-size:.8rem;font-weight:500;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.stats-chart-tab:hover{border-color:var(--color-primary)}.stats-chart-tab.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.stats-tooltip{border:1px solid var(--gray-200);background:#fff;border-radius:8px;padding:8px 12px;font-size:.8rem;box-shadow:0 4px 14px #1a2a3a1f}.stats-tooltip-date{color:var(--gray-900);margin-bottom:2px;font-weight:600}.stats-tooltip-value{color:var(--gray-700);font-variant-numeric:tabular-nums}.stats-table-scroll{flex:1;min-height:0;overflow:auto}.stats-table thead th{z-index:1;background:#fff;position:sticky;top:0}.stats-table{border-collapse:collapse;width:100%;color:var(--gray-900);font-size:.82rem}.stats-table th{text-align:left;color:var(--gray-500);border-bottom:1px solid var(--gray-200);white-space:nowrap;padding:8px 10px;font-size:.75rem;font-weight:600}.stats-table td{white-space:nowrap;font-variant-numeric:tabular-nums;border-bottom:1px solid #eef2f7;padding:8px 10px}.stats-table tbody tr:hover td{background:#fafdff}.stats-table th.stats-num,.stats-table td.stats-num{text-align:right}.stats-table td.stats-total{font-weight:600}.stats-route-name{text-overflow:ellipsis;max-width:260px;overflow:hidden}.stats-table tfoot td{border-bottom:none;border-top:2px solid var(--gray-200);font-weight:600}.stats-chart-empty{justify-content:center;align-items:center;height:260px;display:flex}.stats-empty{text-align:center;color:var(--gray-500);padding:24px 0 16px;font-size:.85rem}.stats-table-header{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:12px;display:flex}.stats-table-header .stats-export-button{margin-left:12px}.stats-type-filter{flex-wrap:wrap;gap:6px;margin-left:auto;display:flex}.stats-contract-filter{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.stats-filter-icon{color:var(--gray-500);justify-content:center;align-items:center;margin-right:2px;display:inline-flex}.stats-filter-icon svg{width:21px;height:21px}.stats-type-chip{height:32px;color:var(--gray-900);cursor:pointer;white-space:nowrap;background:#fafdff;border:1px solid #e0eaff;border-radius:6px;justify-content:center;align-items:center;padding:0 12px;font-size:.8rem;font-weight:500;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.stats-type-chip:hover{border-color:var(--color-primary)}.stats-type-chip.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.stats-selection-bar{box-sizing:border-box;border:1px solid var(--gray-200);white-space:nowrap;background:#fff;border-radius:16px;align-items:center;gap:8px;height:32px;margin-left:auto;padding:0 4px 0 6px;animation:.18s ease-out stats-selection-in;display:inline-flex;box-shadow:0 4px 14px #11182714}@keyframes stats-selection-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.stats-selection-badge{box-sizing:border-box;background:var(--color-primary);color:#fff;font-variant-numeric:tabular-nums;border-radius:11px;justify-content:center;align-items:center;min-width:22px;height:22px;padding:0 6px;font-size:.74rem;font-weight:700;display:inline-flex}.stats-selection-count{color:var(--gray-700);font-size:.78rem;font-weight:600}.stats-selection-divider{background:var(--gray-200);width:1px;height:18px}.stats-mark-button{background:var(--color-primary);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:12px;align-items:center;gap:5px;height:24px;padding:0 11px;font-size:.74rem;font-weight:600;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.stats-mark-button svg{width:12px;height:12px}.stats-mark-button:hover:not(:disabled){background:var(--color-primary-dark)}.stats-mark-button--secondary{color:var(--gray-500);background:0 0;border:1px solid #0000}.stats-mark-button--secondary:hover:not(:disabled){color:var(--gray-900);background:var(--gray-100)}.stats-mark-button:disabled{opacity:.5;cursor:default}.stats-check-cell{width:28px}.stats-check-cell input[type=checkbox]{cursor:pointer;accent-color:var(--color-primary);margin:0 auto;display:block}.stats-expand-cell{text-align:center;width:24px;position:relative;padding-left:0!important;padding-right:0!important}.stats-route-row.expanded .stats-route-name{font-weight:700;position:relative}.stats-route-row.expanded .stats-route-name:before{content:"";background:var(--color-primary);border-radius:50%;width:10px;height:10px;position:absolute;top:50%;left:-18px;transform:translateY(-50%)}.stats-route-row.expanded .stats-route-name:after{content:"";background:var(--color-primary);width:2px;position:absolute;top:calc(50% + 3px);bottom:-1px;left:-14px}.stats-object-name{position:relative}.stats-object-name:before{content:"";box-sizing:border-box;border-left:2px solid var(--color-primary);border-bottom:2px solid var(--color-primary);border-bottom-left-radius:10px;width:22px;height:calc(50% + 1px);position:absolute;top:-1px;left:-14px}.stats-object-row:not(.last) .stats-object-name:after{content:"";background:var(--color-primary);width:2px;position:absolute;top:-1px;bottom:-1px;left:-14px}.stats-object-row.invoiced .stats-object-name:before{border-color:#b0b9c6}.stats-object-row.invoiced .stats-object-name:after,.stats-route-row.invoiced .stats-route-name:after{background:#b0b9c6}.stats-route-row{cursor:pointer}.stats-object-row td{color:var(--gray-700);background:#fafcff;font-size:.78rem}.stats-object-name{padding-left:18px!important}.stats-object-street{color:var(--gray-900);font-weight:500}.stats-object-postal{color:var(--gray-500);margin-left:8px}.stats-object-type{color:var(--gray-500);white-space:nowrap;font-size:.78rem}.stats-invoiced-badge{font-variant-numeric:tabular-nums;color:var(--gray-500);white-space:nowrap;align-items:center;gap:4px;font-size:.78rem;display:inline-flex}.stats-invoiced-badge.complete{color:#15803d;font-weight:600}.stats-invoiced-badge.partial{color:#b45309;font-weight:600}.stats-ve-cell{align-items:center;gap:4px;display:inline-flex;position:relative}.stats-ve-help{width:14px;height:14px;color:var(--color-primary);cursor:help;background:#e7efff;border-radius:50%;justify-content:center;align-items:center;font-size:.62rem;font-weight:700;display:inline-flex}.stats-ve-help:after{content:attr(data-tip);background:var(--gray-900);color:#fff;white-space:nowrap;opacity:0;pointer-events:none;z-index:5;border-radius:6px;padding:5px 9px;font-size:.72rem;font-weight:500;transition:opacity .12s;position:absolute;bottom:calc(100% + 6px);right:0}.stats-ve-help:hover:after{opacity:1}.stats-table th:last-child{min-width:88px}.stats-table tbody tr.stats-route-row.invoiced td,.stats-table tbody tr.stats-object-row.invoiced td{background:#22c55e14}.stats-table tbody tr.stats-route-row.invoiced:hover td,.stats-table tbody tr.stats-object-row.invoiced:hover td{background:#22c55e24}@media (width<=700px){.stats-export-button{margin-left:0}}}.list-editor{border:1px solid var(--gray-300);background:0 0;border-radius:6px;width:100%;min-height:30px;padding:0;font-size:.85rem}.list-editor:focus,.list-editor:focus-within{border-color:var(--gray-300);box-shadow:none;background:0 0;outline:none}.items-list{box-sizing:border-box;flex-wrap:wrap;gap:4px;width:100%;min-height:22px;display:flex;overflow:hidden}.list-item{background:var(--gray-200);word-wrap:break-word;overflow-wrap:break-word;box-sizing:border-box;border-radius:4px;flex-shrink:1;align-items:center;gap:4px;max-width:100%;padding:2px 6px;display:inline-flex}.item-content{box-sizing:border-box;flex:1;align-items:center;gap:4px;min-width:0;max-width:100%;display:flex;overflow:hidden}.item-key{color:#4b5563;white-space:nowrap;font-weight:500}.item-value{color:var(--gray-500);text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:200px;overflow:hidden}.remove-button{width:16px;height:16px;color:var(--gray-400);cursor:pointer;background:0 0;border:none;border-radius:2px;justify-content:center;align-items:center;margin-left:2px;padding:0;font-size:14px;line-height:1;display:flex}.remove-button:hover{color:#dc2626;background:#fee2e2}.add-item-form{border-top:1px solid var(--gray-200);width:100%;margin-top:12px;padding-top:12px;padding-bottom:8px}.input-group{align-items:center;gap:4px;width:100%;display:flex}.key-input,.value-input{border:1px solid var(--gray-300);color:#222;box-sizing:border-box;border-radius:4px;outline:none;height:28px;margin:0;padding:0 8px 0 6px;font-size:.85rem;transition:border-color .2s;background:#fff!important}.key-input{width:80px;min-width:80px}.value-input{flex:1;min-width:0}.key-input:focus,.value-input:focus{border-color:#3b82f6;outline:none;background:#fff!important}.add-button{color:#fff;cursor:pointer;background:#3b82f6;border:1px solid #3b82f6;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;padding:0;font-size:16px;display:flex}.add-button:hover:not(:disabled){background:#2563eb;border-color:#2563eb}.add-button:disabled{opacity:.5;cursor:not-allowed}.list-editor:has([immutable=true]){border-color:var(--gray-200);background:0 0}.list-editor:has([disabled=true]){border-color:var(--gray-200);background:0 0}.toast-container{z-index:1000;pointer-events:none;flex-direction:column;gap:8px;display:flex;position:fixed;top:12px;right:24px}.toast{pointer-events:auto;border-radius:8px;max-width:400px;overflow:hidden;box-shadow:0 4px 12px #00000026}.toast.success{color:#fff;background:#10b981}.toast.error{color:#fff;background:#ef4444}.toast.warning{color:#fff;background:#f59e0b}.toast.info{color:#fff;background:#3b82f6}.toast-content{align-items:center;gap:12px;padding:16px 20px;display:flex}.toast-icon{flex-shrink:0;font-size:18px;font-weight:700}.toast-message{flex:1;font-size:14px;font-weight:500;line-height:1.4}.toast-close{color:inherit;cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;padding:0;font-size:20px;font-weight:700;transition:background-color .2s;display:flex}.toast-close:hover{background-color:#fff3}.toast-move{transition:transform .3s}@container app (width<=768px){.toast-container{top:8px;left:16px;right:16px}.toast{max-width:none}}.autocomplete-container,.input-wrapper{width:100%;position:relative}.selected-addresses{flex-wrap:wrap;gap:8px;margin-bottom:8px;display:flex}.selected-address{background:var(--color-surface-alt);color:var(--color-text-strong);border-radius:16px;align-items:center;gap:8px;padding:6px 12px;font-size:14px;display:flex}.remove-btn{color:var(--color-text-light);cursor:pointer;background:0 0;border:none;padding:0;font-size:18px;line-height:1}.remove-btn:hover{color:var(--color-error)}.autocomplete-input{border:1px solid var(--color-border);background:var(--color-surface);width:100%;color:var(--color-text-strong);border-radius:8px;padding:12px;font-size:16px}.autocomplete-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-light);outline:none}.predictions-dropdown{background:var(--color-surface);border:1px solid var(--color-border);z-index:1000;border-radius:8px;max-height:200px;margin-top:4px;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 4px 12px #0000001a}.prediction-item{cursor:pointer;color:var(--color-text-strong);padding:12px}.prediction-item:hover{background:var(--color-surface-alt)}.is-focused .autocomplete-input{border-color:var(--color-primary)}@keyframes lf-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.lf-fade-in{animation:.22s ease-out lf-fade-in}@keyframes lf-skeleton-shimmer{0%{background-position:-200px 0}to{background-position:calc(200px + 100%) 0}}.lf-skeleton{color:#0000;pointer-events:none;-webkit-user-select:none;user-select:none;background-color:#eceef1;background-image:linear-gradient(90deg,#eceef1 0,#f6f7f9 40px,#eceef1 80px);background-repeat:no-repeat;background-size:200px 100%;border-radius:6px;animation:1.2s ease-in-out infinite lf-skeleton-shimmer;display:inline-block}.lf-skeleton-block{width:100%;display:block}.lf-skeleton-row{border-radius:8px;height:34px;margin:8px 0;display:block}.lf-skeleton-stack{padding:8px 0}.lf-refreshing{opacity:.6;pointer-events:none;transition:opacity .15s ease-in}.sync-ring{color:var(--color-primary);align-items:center;gap:4px;margin-right:10px;display:inline-flex}.sync-ring--offline{color:#d97706}.sync-ring__icon{display:block}@keyframes lf-sync-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.sync-ring__icon--spin{animation:1s linear infinite lf-sync-spin}.sync-ring__count{text-align:center;min-width:14px;font-size:12px;font-weight:600}.header-zoom,.header-zoom.desktop-only{align-items:center;gap:2px;margin-left:10px;display:flex}.header-zoom-btn,.header-zoom-value{color:var(--gray-500);cursor:pointer;background:0 0;border:none;border-radius:6px;transition:color .15s,background .15s}.header-zoom-btn{justify-content:center;align-items:center;width:24px;height:24px;padding:0;display:inline-flex}.header-zoom-btn svg{width:12px;height:12px;display:block}.header-zoom-value{font-variant-numeric:tabular-nums;text-align:center;justify-content:center;align-items:center;min-width:40px;height:24px;padding:0 4px;font-size:12px;line-height:1;display:inline-flex}.user-menu--header-end{margin-left:8px}@container app (width>=769px){.user-button.desktop-only{display:flex}}.header-zoom-btn:hover:not(:disabled),.header-zoom-value:hover{color:var(--color-primary);background:rgba(var(--color-primary-rgb), .08)}.header-zoom-btn:disabled{opacity:.35;cursor:default}.colors-tab-actions{align-items:center;gap:10px;display:flex}.colors-tab-hint{color:var(--gray-500);margin:4px 0 16px;font-size:13px}.colors-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:10px 24px;max-width:900px;display:grid}.colors-row{border:1px solid var(--gray-200);background:#fff;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:8px 12px;display:flex}.colors-row-label{color:var(--gray-700);flex-direction:column;gap:2px;font-size:14px;display:flex}.colors-row-label code{color:var(--gray-400);font-size:11px}.colors-row-controls{align-items:center;gap:8px;display:flex}.colors-row-controls input[type=color]{border:1px solid var(--gray-300);cursor:pointer;background:#fff;border-radius:6px;width:36px;height:28px;padding:1px}.colors-hex-input{border:1px solid var(--gray-300);border-radius:6px;width:84px;padding:4px 8px;font-family:monospace;font-size:13px}.color-picker-field{display:inline-flex;position:relative}.color-picker-swatch{border:1px solid var(--gray-300);cursor:pointer;border-radius:6px;width:36px;height:28px;padding:0}.color-picker-swatch:disabled{cursor:default;opacity:.5}.color-picker-popover{z-index:1000;border:1px solid var(--gray-200);background:#fff;border-radius:10px;width:240px;padding:10px;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 10px 30px #00000029}.color-picker-saturation{border-radius:8px;height:140px;margin-bottom:10px}.color-picker-hue{border-radius:7px;height:14px}.summary-item--time input[type=time]::-webkit-calendar-picker-indicator{-webkit-appearance:none!important;opacity:0!important;width:0!important;margin:0!important;display:none!important}@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-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-leading{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}
