/*! tailwindcss v4.2.2 | 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-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking: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-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:"Instrument 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-emerald-50:oklch(97.9% .021 166.113);--color-emerald-200:oklch(90.5% .093 164.15);--color-emerald-700:oklch(50.8% .118 165.612);--color-blue-300:oklch(80.9% .105 251.813);--color-blue-700:oklch(48.8% .243 264.376);--color-blue-800:oklch(42.4% .199 265.638);--color-slate-50:oklch(98.4% .003 247.858);--color-slate-200:oklch(92.9% .013 255.508);--color-slate-500:oklch(55.4% .046 257.417);--color-slate-600:oklch(44.6% .043 257.281);--color-slate-700:oklch(37.2% .044 257.287);--color-slate-800:oklch(27.9% .041 260.031);--color-slate-900:oklch(20.8% .042 265.755);--color-gray-100:oklch(96.7% .003 264.542);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-300:oklch(87.2% .01 258.338);--color-gray-400:oklch(70.7% .022 261.325);--color-gray-500:oklch(55.1% .027 264.364);--color-gray-600:oklch(44.6% .03 256.802);--color-gray-700:oklch(37.3% .034 259.733);--color-gray-800:oklch(27.8% .033 256.848);--color-gray-900:oklch(21% .034 264.665);--color-white:#fff;--spacing:.25rem;--container-sm:24rem;--container-3xl:48rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height: 1.2 ;--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-black:900;--tracking-tight:-.025em;--radius-xs:.125rem;--radius-sm:.25rem;--radius-md:.375rem;--radius-xl:.75rem;--radius-2xl:1rem;--shadow-xs:0 1px 2px 0 #0000000d;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--ease-in-out:cubic-bezier(.4, 0, .2, 1);--animate-spin:spin 1s linear infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;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;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]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance: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{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-0{inset:calc(var(--spacing) * 0)}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.z-50{z-index:50}.mx-auto{margin-inline:auto}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.-ml-px{margin-left:-1px}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.h-5{height:calc(var(--spacing) * 5)}.h-14{height:calc(var(--spacing) * 14)}.w-5{width:calc(var(--spacing) * 5)}.w-14{width:calc(var(--spacing) * 14)}.w-full{width:100%}.max-w-3xl{max-width:var(--container-3xl)}.max-w-sm{max-width:var(--container-sm)}.flex-1{flex:1}.flex-shrink,.shrink{flex-shrink:1}.border-collapse{border-collapse:collapse}.translate-y-0{--tw-translate-y:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-4{--tw-translate-y:calc(var(--spacing) * 4);translate:var(--tw-translate-x) var(--tw-translate-y)}.scale-95{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}.scale-100{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-spin{animation:var(--animate-spin)}.cursor-default{cursor:default}.cursor-not-allowed{cursor:not-allowed}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-items-center{justify-items:center}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}: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-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)))}.overflow-hidden{overflow:hidden}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:3.40282e38px}.rounded-md{border-radius:var(--radius-md)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-l-md{border-top-left-radius:var(--radius-md);border-bottom-left-radius:var(--radius-md)}.rounded-r-md{border-top-right-radius:var(--radius-md);border-bottom-right-radius:var(--radius-md)}.border{border-style:var(--tw-border-style);border-width:1px}.border-emerald-200{border-color:var(--color-emerald-200)}.border-gray-300{border-color:var(--color-gray-300)}.border-slate-200{border-color:var(--color-slate-200)}.bg-emerald-50{background-color:var(--color-emerald-50)}.bg-gray-200{background-color:var(--color-gray-200)}.bg-slate-50\/70{background-color:#f8fafcb3}@supports (color:color-mix(in lab,red,red)){.bg-slate-50\/70{background-color:color-mix(in oklab,var(--color-slate-50) 70%,transparent)}}.bg-slate-900{background-color:var(--color-slate-900)}.bg-white{background-color:var(--color-white)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.text-center{text-align:center}.text-right{text-align:right}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-5{--tw-leading:calc(var(--spacing) * 5);line-height:calc(var(--spacing) * 5)}.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-\[0\.1em\]{--tw-tracking:.1em;letter-spacing:.1em}.tracking-\[0\.12em\]{--tw-tracking:.12em;letter-spacing:.12em}.tracking-\[0\.14em\]{--tw-tracking:.14em;letter-spacing:.14em}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.text-emerald-700{color:var(--color-emerald-700)}.text-gray-500{color:var(--color-gray-500)}.text-gray-600{color:var(--color-gray-600)}.text-gray-700{color:var(--color-gray-700)}.text-gray-800{color:var(--color-gray-800)}.text-slate-500{color:var(--color-slate-500)}.text-slate-600{color:var(--color-slate-600)}.text-slate-700{color:var(--color-slate-700)}.text-slate-900{color:var(--color-slate-900)}.text-white{color:var(--color-white)}.uppercase{text-transform:uppercase}.opacity-0{opacity:0}.opacity-25{opacity:.25}.opacity-75{opacity:.75}.opacity-100{opacity:1}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-gray-300{--tw-ring-color:var(--color-gray-300)}.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,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}@media(hover:hover){.hover\:bg-gray-100:hover{background-color:var(--color-gray-100)}.hover\:bg-slate-800:hover{background-color:var(--color-slate-800)}.hover\:text-gray-400:hover{color:var(--color-gray-400)}.hover\:text-gray-700:hover{color:var(--color-gray-700)}}.focus\:border-blue-300:focus{border-color:var(--color-blue-300)}.focus\:ring:focus{--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)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.active\:bg-gray-100:active{background-color:var(--color-gray-100)}.active\:text-gray-500:active{color:var(--color-gray-500)}.active\:text-gray-700:active{color:var(--color-gray-700)}.active\:text-gray-800:active{color:var(--color-gray-800)}@media(min-width:40rem){.sm\:flex{display:flex}.sm\:hidden{display:none}.sm\:flex-1{flex:1}.sm\:items-center{align-items:center}.sm\:justify-between{justify-content:space-between}.sm\:gap-2{gap:calc(var(--spacing) * 2)}}@media(min-width:48rem){.md\:text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.md\:text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}}@media(min-width:80rem){.xl\:col-span-2{grid-column:span 2/span 2}.xl\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}.rtl\:flex-row-reverse:where(:dir(rtl),[dir=rtl],[dir=rtl] *){flex-direction:row-reverse}@media(prefers-color-scheme:dark){.dark\:border-gray-600{border-color:var(--color-gray-600)}.dark\:bg-gray-700{background-color:var(--color-gray-700)}.dark\:bg-gray-800{background-color:var(--color-gray-800)}.dark\:text-gray-200{color:var(--color-gray-200)}.dark\:text-gray-300{color:var(--color-gray-300)}.dark\:text-gray-400{color:var(--color-gray-400)}.dark\:text-gray-600{color:var(--color-gray-600)}@media(hover:hover){.dark\:hover\:bg-gray-900:hover{background-color:var(--color-gray-900)}.dark\:hover\:text-gray-200:hover{color:var(--color-gray-200)}.dark\:hover\:text-gray-300:hover{color:var(--color-gray-300)}}.dark\:focus\:border-blue-700:focus{border-color:var(--color-blue-700)}.dark\:focus\:border-blue-800:focus{border-color:var(--color-blue-800)}.dark\:active\:bg-gray-700:active{background-color:var(--color-gray-700)}.dark\:active\:text-gray-300:active{color:var(--color-gray-300)}}.locations-page,.categories-page,.users-page{width:100%!important;max-width:100%!important;margin-left:0!important;margin-right:0!important}}:root{--sidebar-w:260px;--topbar-h:62px;--sidebar-bg:#fff;--sidebar-border:#e9ecef;--sidebar-text:#6c757d;--sidebar-text-hover:#313a46;--sidebar-heading-color:#adb5bd;--sidebar-active-bg:#f0f6ff;--sidebar-active-text:#3b82f6;--sidebar-active-border:#3b82f6;--topbar-bg:#fff;--topbar-border:#e9ecef;--topbar-text:#6c757d;--topbar-icon-color:#6c757d;--topbar-icon-hover:#313a46;--content-bg:#f1f4f8}[data-theme=dark]{--sidebar-bg:#1a2332;--sidebar-border:#ffffff14;--sidebar-text:#fff9;--sidebar-text-hover:#ffffffe6;--sidebar-heading-color:#ffffff4d;--sidebar-active-bg:#3b82f624;--sidebar-active-text:#60a5fa;--sidebar-active-border:#60a5fa;--topbar-bg:#1e293b;--topbar-border:#ffffff14;--topbar-text:#fff9;--topbar-icon-color:#ffffff80;--topbar-icon-hover:#ffffffe6;--content-bg:#0f172a;--bg-page:#0f172a;--bg-surface:#1e293b;--bg-soft:#263245;--text-primary:#e2e8f0;--text-secondary:#94a3b8;--text-muted:#64748b;--border-default:#ffffff1a;--border-light:#ffffff0d}[data-theme=dark] body{background:var(--content-bg);color:var(--text-primary)}.admin-layout{min-height:100vh}.admin-content-wrapper{min-width:0;min-height:100vh;margin-left:var(--sidebar-w);flex-direction:column;transition:margin-left .3s cubic-bezier(.4,0,.2,1);display:flex}.admin-layout.sidebar-collapsed .admin-content-wrapper{margin-left:0}.admin-main{flex:1;width:100%;max-width:1280px;margin:0 auto;padding:1.5rem}.admin-sidebar{width:var(--sidebar-w);background:var(--sidebar-bg);border-right:1px solid var(--sidebar-border);z-index:60;flex-direction:column;transition:transform .3s cubic-bezier(.4,0,.2,1),width .3s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;top:0;bottom:0;left:0;overflow:hidden}.sidebar-collapsed .admin-sidebar{transform:translate(-100%)}.sidebar-header{height:var(--topbar-h);border-bottom:1px solid var(--sidebar-border);flex-shrink:0;justify-content:space-between;align-items:center;padding:0 1.25rem;display:flex}.sidebar-brand{flex-shrink:0;align-items:center;gap:.6rem;text-decoration:none;display:flex}.sidebar-brand-icon{background:linear-gradient(135deg,#1d4ed8,#60a5fa);border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;display:flex;box-shadow:0 0 14px #3b82f673}.sidebar-brand-text{letter-spacing:-.02em;color:var(--sidebar-text-hover);white-space:nowrap;font-size:1.05rem;font-weight:900}.sidebar-brand-text span{color:#3b82f6}[data-theme=dark] .sidebar-brand-text{color:#fff}.sidebar-close{color:var(--sidebar-text);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.3rem;transition:all .15s;display:none}.sidebar-close:hover{color:var(--sidebar-text-hover);background:#0000000f}.sidebar-nav{scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent;flex:1;padding:.75rem 0;overflow-y:auto}.sidebar-nav::-webkit-scrollbar{width:4px}.sidebar-nav::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:99px}[data-theme=dark] .sidebar-nav::-webkit-scrollbar-thumb{background:#ffffff1f}.sidebar-section{margin-bottom:.5rem}.sidebar-heading{letter-spacing:.08em;text-transform:uppercase;color:var(--sidebar-heading-color);margin:0;padding:.6rem 1.25rem .35rem;font-size:.68rem;font-weight:700}.sidebar-menu{margin:0;padding:0;list-style:none}.sidebar-link{color:var(--sidebar-text);border-left:3px solid #0000;border-radius:8px;align-items:center;gap:.65rem;margin:1px .6rem;padding:.55rem 1.25rem;font-size:.875rem;font-weight:500;text-decoration:none;transition:all .15s;display:flex;position:relative}.sidebar-link:hover{color:var(--sidebar-text-hover);background:#0000000a}[data-theme=dark] .sidebar-link:hover{background:#ffffff0f}.sidebar-link.active{color:var(--sidebar-active-text);background:var(--sidebar-active-bg);border-left-color:var(--sidebar-active-border);font-weight:600}.sidebar-icon{opacity:.75;flex-shrink:0}.sidebar-link.active .sidebar-icon{opacity:1}.sidebar-label{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.admin-topbar{z-index:50;height:var(--topbar-h);background:var(--topbar-bg);border-bottom:1px solid var(--topbar-border);flex-shrink:0;position:sticky;top:0}.topbar-inner{justify-content:space-between;align-items:center;gap:1rem;height:100%;padding:0 1.25rem;display:flex}.topbar-left{align-items:center;gap:.75rem;display:flex}.topbar-right{align-items:center;gap:.35rem;display:flex}.topbar-toggle{width:36px;height:36px;color:var(--topbar-icon-color);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;transition:all .15s;display:flex}.topbar-toggle:hover{color:var(--topbar-icon-hover);background:#0000000f}[data-theme=dark] .topbar-toggle:hover{background:#ffffff14}.topbar-icon-btn{width:36px;height:36px;color:var(--topbar-icon-color);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;gap:.3rem;transition:all .15s;display:flex;position:relative}.topbar-icon-btn:hover{color:var(--topbar-icon-hover);background:#0000000f}[data-theme=dark] .topbar-icon-btn:hover{background:#ffffff14}.topbar-icon-label{letter-spacing:.02em;font-size:.7rem;font-weight:700}.topbar-icon-btn .topbar-icon-label{width:auto;height:auto}.topbar-icon-btn:has(.topbar-icon-label){gap:.3rem;width:auto;padding:0 .6rem}.topbar-badge{color:#fff;background:#ef4444;border-radius:99px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 4px;font-size:.6rem;font-weight:700;line-height:1;display:flex;position:absolute;top:4px;right:4px}.topbar-sep{background:var(--topbar-border);flex-shrink:0;width:1px;height:24px;margin:0 .4rem}.theme-icon-dark{display:none}.theme-icon-light,[data-theme=dark] .theme-icon-dark{display:block}[data-theme=dark] .theme-icon-light{display:none}.topbar-user-menu{position:relative}.topbar-user-trigger{border:1px solid var(--topbar-border);cursor:pointer;-webkit-user-select:none;user-select:none;background:0 0;border-radius:10px;align-items:center;gap:.5rem;padding:.35rem .55rem;list-style:none;transition:all .15s;display:flex}.topbar-user-trigger::-webkit-details-marker{display:none}.topbar-user-trigger:hover{background:#0000000a;border-color:#cbd5e1}[data-theme=dark] .topbar-user-trigger{border-color:#ffffff1f}[data-theme=dark] .topbar-user-trigger:hover{background:#ffffff0f;border-color:#fff3}.topbar-avatar{color:#fff;background:linear-gradient(135deg,#1d4ed8,#60a5fa);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:.72rem;font-weight:800;display:flex;box-shadow:0 2px 8px #1d4ed859}.topbar-user-info{text-align:left;flex-direction:column;min-width:0;display:flex}.topbar-user-name{color:var(--topbar-text);white-space:nowrap;text-overflow:ellipsis;max-width:120px;font-size:.82rem;font-weight:700;line-height:1.2;overflow:hidden}[data-theme=dark] .topbar-user-name{color:#ffffffe6}.topbar-user-role{color:var(--sidebar-heading-color);font-size:.68rem;line-height:1.2}.topbar-chevron{color:var(--topbar-icon-color);flex-shrink:0;transition:transform .2s}.topbar-user-menu[open] .topbar-chevron{transform:rotate(180deg)}.topbar-dropdown{background:var(--bg-surface,#fff);border:1px solid var(--border-default,#e2e8f0);z-index:100;border-radius:14px;min-width:260px;animation:.15s both dropdownSlide;position:absolute;top:calc(100% + .5rem);right:0;overflow:hidden;box-shadow:0 16px 40px #0f172a24,0 8px 16px #0f172a14}[data-theme=dark] .topbar-dropdown{box-shadow:0 16px 40px #0006}@keyframes dropdownSlide{0%{opacity:0;transform:translateY(-6px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.topbar-dropdown-head{border-bottom:1px solid var(--border-default,#e2e8f0);background:var(--bg-soft,#f8fafc);align-items:center;gap:.75rem;padding:1rem;display:flex}.topbar-dropdown-avatar{color:#fff;background:linear-gradient(135deg,#1d4ed8,#60a5fa);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;font-size:.9rem;font-weight:800;display:flex;box-shadow:0 4px 10px #1d4ed84d}.topbar-dropdown-name{color:var(--text-primary,#0d1829);margin:0;font-size:.88rem;font-weight:800}.topbar-dropdown-email{color:var(--text-muted,#64748b);text-overflow:ellipsis;white-space:nowrap;max-width:170px;margin:.1rem 0 0;font-size:.75rem;overflow:hidden}.topbar-dropdown-body{padding:.5rem}.topbar-dropdown-item{color:var(--text-secondary,#334155);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:9px;align-items:center;gap:.6rem;width:100%;padding:.6rem .75rem;font-family:inherit;font-size:.85rem;font-weight:600;text-decoration:none;transition:all .12s;display:flex}.topbar-dropdown-item:hover{background:var(--bg-soft,#f8fafc);color:var(--text-primary,#0d1829)}.topbar-dropdown-item--danger{color:#b91c1c}.topbar-dropdown-item--danger:hover{color:#991b1b;background:#fff1f2}[data-theme=dark] .topbar-dropdown-item--danger:hover{background:#ef44441a}.topbar-dropdown-divider{background:var(--border-light,#f1f5f9);height:1px;margin:.25rem .6rem}.sidebar-overlay{z-index:55;opacity:0;background:#00000073;transition:opacity .3s;display:none;position:fixed;top:0;right:0;bottom:0;left:0}.sidebar-overlay.active{opacity:1;display:block}[data-theme=dark] .panel{background:var(--bg-surface);border-color:var(--border-default)}[data-theme=dark] .field{background:var(--bg-soft);border-color:var(--border-default);color:var(--text-primary)}[data-theme=dark] .field:focus{border-color:#3b82f6;outline-color:#3b82f64d}[data-theme=dark] .btn-secondary{background:var(--bg-soft);border-color:var(--border-default);color:var(--text-secondary)}[data-theme=dark] .btn-secondary:hover{background:#ffffff14}[data-theme=dark] .btn-danger{color:#f43f5e;background:#e11d481a;border-color:#e11d4833}[data-theme=dark] .btn-danger:hover{color:#fda4af;background:#e11d4826;border-color:#e11d484d}[data-theme=dark] .alert-success{color:#4ade80;background:#16653426;border-color:#22c55e33}[data-theme=dark] .alert-error{color:#fca5a5;background:#b91c1c1f;border-color:#ef444433}@media(max-width:767px){.admin-content-wrapper{margin-left:0}.admin-sidebar{transform:translate(-100%)}.admin-sidebar.sidebar-open{transform:translate(0)}.sidebar-close{display:flex}.admin-main{padding:1rem}.topbar-user-info,.topbar-icon-label{display:none}}@media(min-width:768px)and (max-width:1023px){:root{--sidebar-w:220px}.admin-main{padding:1.25rem}.topbar-user-role{display:none}}@media(min-width:1024px){.admin-main{padding:1.5rem 2rem}}.auth-body{-webkit-font-smoothing:antialiased;color:#0f172a;background:#f1f5f9;min-height:100vh;margin:0;padding:0;font-family:Instrument Sans,ui-sans-serif,system-ui,sans-serif}.auth-shell{grid-template-columns:1fr;min-height:100vh;display:grid}@media(min-width:900px){.auth-shell{grid-template-columns:420px 1fr}}@media(min-width:1100px){.auth-shell{grid-template-columns:480px 1fr}}.auth-panel-left{background:linear-gradient(160deg,#0f172a,#1e293b,#0f1f3d);flex-direction:column;justify-content:space-between;padding:2.5rem;display:none;position:relative;overflow:hidden}@media(min-width:900px){.auth-panel-left{display:flex}}.auth-left-grid{pointer-events:none;background-image:linear-gradient(#94a3b80f 1px,#0000 1px),linear-gradient(90deg,#94a3b80f 1px,#0000 1px);background-size:40px 40px;position:absolute;top:0;right:0;bottom:0;left:0}.auth-left-glow{pointer-events:none;background:radial-gradient(circle,#3b82f62e,#0000 65%);border-radius:50%;width:380px;height:380px;position:absolute;top:-80px;right:-60px}.auth-left-content{z-index:1;flex-direction:column;flex:1;gap:2.5rem;display:flex;position:relative}.auth-left-brand{align-items:center;gap:.7rem;text-decoration:none;display:inline-flex}.auth-left-brand-icon{display:inline-flex}.auth-left-brand-name{letter-spacing:-.02em;color:#f1f5f9;font-size:1.05rem;font-weight:800}.auth-left-brand-ops{color:#60a5fa;font-weight:600}.auth-left-copy{margin-top:1.5rem}.auth-left-overline{letter-spacing:.15em;text-transform:uppercase;color:#60a5fa;margin:0 0 .5rem;font-family:DM Mono,monospace;font-size:.68rem;font-weight:700}.auth-left-headline{letter-spacing:-.03em;color:#f8fafc;margin:0 0 .85rem;font-size:clamp(1.6rem,2.5vw,2.1rem);font-weight:800;line-height:1.15}.auth-left-sub{color:#94a3b8;max-width:36ch;margin:0;font-size:.9rem;line-height:1.7}.auth-left-status-group{flex-direction:column;gap:.7rem;display:flex}.auth-left-status-item{align-items:center;gap:.6rem;display:flex}.auth-left-status-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.auth-left-status-dot--green{background:#22c55e;animation:2.2s ease-in-out infinite auth-pulse-green;box-shadow:0 0 0 3px #22c55e33}.auth-left-status-dot--blue{background:#3b82f6;animation:2.5s ease-in-out .4s infinite auth-pulse-blue;box-shadow:0 0 0 3px #3b82f633}.auth-left-status-dot--amber{background:#f59e0b;animation:2.8s ease-in-out .8s infinite auth-pulse-amber;box-shadow:0 0 0 3px #f59e0b33}@keyframes auth-pulse-green{0%,to{box-shadow:0 0 0 3px #22c55e33}50%{box-shadow:0 0 0 6px #22c55e0f}}@keyframes auth-pulse-blue{0%,to{box-shadow:0 0 0 3px #3b82f633}50%{box-shadow:0 0 0 6px #3b82f60f}}@keyframes auth-pulse-amber{0%,to{box-shadow:0 0 0 3px #f59e0b33}50%{box-shadow:0 0 0 6px #f59e0b0f}}.auth-left-status-label{color:#cbd5e1;font-size:.83rem;font-weight:500}.auth-left-stats{background:#ffffff0a;border:1px solid #ffffff14;border-radius:12px;align-items:stretch;margin:0;padding:0;display:flex;overflow:hidden}.auth-left-stat{text-align:center;flex:1;padding:.9rem 1rem}.auth-left-stat-sep{background:#ffffff14;align-self:stretch;width:1px;margin:.6rem 0}.auth-left-stat-label{letter-spacing:.1em;text-transform:uppercase;color:#64748b;margin-bottom:.3rem;font-family:DM Mono,monospace;font-size:.63rem;font-weight:700;display:block}.auth-left-stat-value{color:#60a5fa;letter-spacing:-.02em;font-size:1.1rem;font-weight:800;line-height:1;display:block}.auth-left-footer{z-index:1;border-top:1px solid #ffffff12;padding-top:2rem;position:relative}.auth-left-back-link{color:#64748b;align-items:center;gap:.45rem;font-size:.83rem;font-weight:600;text-decoration:none;transition:color .15s;display:inline-flex}.auth-left-back-link:hover{color:#94a3b8}.auth-left-back-link:focus-visible{outline-offset:4px;border-radius:4px;outline:2px solid #3b82f6}.auth-panel-right{background:#f8fafc;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:2rem 1.25rem;display:flex}@media(min-width:900px){.auth-panel-right{padding:3rem 2rem}}.auth-mobile-header{justify-content:center;margin-bottom:1.75rem;display:flex}.auth-mobile-brand{color:#0f172a;letter-spacing:-.01em;align-items:center;gap:.55rem;font-size:1rem;font-weight:700;text-decoration:none;display:inline-flex}.auth-mobile-brand strong{color:#1e40af}@media(min-width:900px){.auth-mobile-header{display:none}}.auth-form-wrap{width:100%;max-width:420px}.auth-mobile-footer{text-align:center;margin-top:1.75rem}.auth-mobile-back{color:#64748b;align-items:center;gap:.4rem;font-size:.82rem;font-weight:600;text-decoration:none;transition:color .15s;display:inline-flex}.auth-mobile-back:hover{color:#334155}.auth-mobile-back:focus-visible{outline-offset:3px;border-radius:4px;outline:2px solid #3b82f6}@media(min-width:900px){.auth-mobile-footer{display:none}}.auth-card{background:#fff;border:1px solid #e2e8f0;border-radius:20px;padding:2rem;animation:.3s ease-out both auth-card-in;box-shadow:0 1px 2px #0f172a0a,0 8px 32px -8px #0f172a1a}@keyframes auth-card-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.auth-card-header{border-bottom:1px solid #f1f5f9;align-items:flex-start;gap:.9rem;margin-bottom:1.6rem;padding-bottom:1.4rem;display:flex}.auth-card-icon{color:#1d4ed8;background:#eff6ff;border:1px solid #dbeafe;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;margin-top:.1rem;display:inline-flex}.auth-card-title{letter-spacing:-.025em;color:#0f172a;margin:0 0 .28rem;font-size:1.45rem;font-weight:800;line-height:1.2}.auth-card-subtitle{color:#64748b;margin:0;font-size:.855rem;line-height:1.5}.auth-alert{border-radius:12px;align-items:flex-start;gap:.6rem;margin-bottom:1.25rem;padding:.8rem .95rem;font-size:.875rem;line-height:1.5;display:flex}.auth-alert svg{flex-shrink:0;margin-top:.1rem}.auth-alert--error{color:#991b1b;background:#fef2f2;border:1px solid #fecaca}.auth-alert--success{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0}.auth-alert-list{flex-direction:column;gap:.2rem;margin:0;padding:0;list-style:none;display:flex}.auth-form{gap:1.1rem;display:grid}.auth-field{flex-direction:column;gap:0;display:flex}.auth-label-row{justify-content:space-between;align-items:baseline;margin-bottom:.42rem;display:flex}.auth-label{letter-spacing:.04em;text-transform:uppercase;color:#475569;margin-bottom:.42rem;font-size:.8rem;font-weight:700;display:block}.auth-label-row .auth-label{margin-bottom:0}.auth-label-link{color:#1d4ed8;font-size:.78rem;font-weight:600;text-decoration:none;transition:color .13s}.auth-label-link:hover{color:#1e3a8a;text-decoration:underline}.auth-label-link:focus-visible{outline-offset:2px;border-radius:3px;outline:2px solid #3b82f6}.auth-input-wrap{position:relative}.auth-input-icon{color:#94a3b8;pointer-events:none;display:inline-flex;position:absolute;top:50%;left:.75rem;transform:translateY(-50%)}.auth-input-action{color:#94a3b8;cursor:pointer;z-index:10;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:4px;transition:all .15s;display:inline-flex;position:absolute;top:50%;right:.75rem;transform:translateY(-50%)}.auth-input-action:hover{color:#3b82f6;background:#3b82f614}.auth-input{color:#0f172a;box-sizing:border-box;background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:10px;width:100%;padding:.65rem 2.5rem;font-family:inherit;font-size:.925rem;transition:border-color .15s,background-color .15s,box-shadow .15s}.auth-input::placeholder{color:#cbd5e1}.auth-input:hover{border-color:#cbd5e1}.auth-input:focus{background:#fff;border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px #3b82f61f}.auth-input--error{background:#fff5f5;border-color:#f87171}.auth-input--error:focus{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441f}.auth-field-error{color:#dc2626;margin:.35rem 0 0;font-size:.78rem;font-weight:600}.auth-remember{margin-top:-.1rem}.auth-checkbox-label{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.6rem;display:inline-flex}.auth-checkbox{accent-color:#1d4ed8;cursor:pointer;border:1.5px solid #cbd5e1;border-radius:4px;flex-shrink:0;width:16px;height:16px}.auth-checkbox:focus-visible{outline-offset:2px;outline:2px solid #3b82f6}.auth-checkbox-text{color:#475569;font-size:.865rem;font-weight:500}.auth-submit{color:#fff;cursor:pointer;background:#1e40af;border:none;border-radius:11px;justify-content:center;align-items:center;gap:.5rem;width:100%;margin-top:.25rem;padding:.75rem 1.25rem;font-family:inherit;font-size:.95rem;font-weight:700;transition:background-color .15s,transform .12s,box-shadow .15s;display:flex}.auth-submit-text,.auth-submit-loading{justify-content:center;align-items:center;gap:.5rem;width:100%;display:flex}.auth-submit:hover{background:#1e3a8a;transform:translateY(-1px);box-shadow:0 6px 20px -4px #1e40af66}.auth-submit:active{box-shadow:none;transform:translateY(0)}.auth-submit:focus-visible{outline-offset:3px;outline:2px solid #3b82f6}.auth-card-footer{text-align:center;border-top:1px solid #f1f5f9;margin-top:1.35rem;padding-top:1.2rem}.auth-card-footer-text{color:#64748b;margin:0;font-size:.855rem}.auth-card-footer-link{color:#1d4ed8;margin-left:.2rem;font-weight:700;text-decoration:none;transition:color .13s}.auth-card-footer-link:hover{color:#1e3a8a;text-decoration:underline}.auth-card-footer-link:focus-visible{outline-offset:2px;border-radius:3px;outline:2px solid #3b82f6}@media(prefers-reduced-motion:reduce){.auth-card,.auth-left-status-dot--green,.auth-left-status-dot--blue,.auth-left-status-dot--amber{animation:none}.auth-submit:hover{transform:none}}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.welcome-body{color:#0f172a;-webkit-font-smoothing:antialiased;background-color:#f8fafc;margin:0;padding:0;font-family:Instrument Sans,ui-sans-serif,system-ui,sans-serif;overflow-x:hidden}.welcome-nav{z-index:50;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f8fafce0;border-bottom:1px solid #e2e8f0;position:sticky;top:0}.welcome-nav-inner{justify-content:space-between;align-items:center;gap:1rem;width:min(1180px,100%);height:60px;margin:0 auto;padding:0 1.25rem;display:flex}.welcome-brand{align-items:center;gap:.6rem;text-decoration:none;display:inline-flex}.welcome-brand-icon{background:linear-gradient(135deg,#1d4ed8,#60a5fa);border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex;box-shadow:0 3px 10px #3b82f64d}.welcome-brand-name{letter-spacing:-.02em;font-size:1rem;font-weight:800;line-height:1}.welcome-brand-primary{color:#1e40af}.welcome-brand-suffix{color:#3b82f6;font-weight:700}.welcome-nav-links{align-items:center;gap:.5rem;display:flex}.welcome-nav-btn{outline-offset:3px;border-radius:8px;align-items:center;gap:.4rem;padding:.45rem 1rem;font-size:.875rem;font-weight:600;text-decoration:none;transition:all .15s;display:inline-flex}.welcome-nav-btn--ghost{color:#334155;background:0 0}.welcome-nav-btn--ghost:hover{color:#0f172a;background:#f1f5f9}.welcome-nav-btn--primary{color:#fff;background:#1e40af}.welcome-nav-btn--primary:hover{background:#1e3a8a}.welcome-nav-btn:focus-visible{outline:2px solid #3b82f6}.welcome-section-inner{width:min(1180px,100%);margin:0 auto;padding:0 1.25rem}.welcome-section-header{text-align:center;max-width:640px;margin:0 auto 3rem}.welcome-section-overline{letter-spacing:.14em;text-transform:uppercase;color:#1d4ed8;margin:0 0 .5rem;font-family:DM Mono,monospace;font-size:.72rem;font-weight:700}.welcome-section-title{letter-spacing:-.025em;color:#0f172a;margin:0 0 .75rem;font-size:clamp(1.75rem,3vw,2.4rem);font-weight:800;line-height:1.15}.welcome-section-desc{color:#475569;margin:0;font-size:.975rem;line-height:1.7}.welcome-hero{background:linear-gradient(160deg,#eff6ff,#f8fafc 55%,#f0fdf4);border-bottom:1px solid #e2e8f0;padding:5rem 0 4rem;position:relative;overflow:hidden}.welcome-hero-grid{pointer-events:none;background-image:linear-gradient(#94a3b81f 1px,#0000 1px),linear-gradient(90deg,#94a3b81f 1px,#0000 1px);background-size:44px 44px;position:absolute;top:0;right:0;bottom:0;left:0;-webkit-mask-image:radial-gradient(80% 60% at 50% 0,#000 30%,#0000 100%);mask-image:radial-gradient(80% 60% at 50% 0,#000 30%,#0000)}.welcome-blob{filter:blur(80px);pointer-events:none;opacity:.35;border-radius:999px;position:absolute}.welcome-blob--blue{background:radial-gradient(circle,#bfdbfe,#0000 70%);width:500px;height:500px;top:-200px;right:-100px}.welcome-blob--indigo{background:radial-gradient(circle,#c7d2fe,#0000 70%);width:400px;height:400px;bottom:-150px;left:-80px}.welcome-hero-inner{z-index:1;text-align:center;flex-direction:column;align-items:center;width:min(1180px,100%);margin:0 auto;padding:0 1.25rem;display:flex;position:relative}.welcome-status-badge{color:#166534;letter-spacing:.01em;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:999px;align-items:center;gap:.5rem;margin-bottom:1.75rem;padding:.35rem .9rem;font-family:DM Mono,monospace;font-size:.78rem;font-weight:600;display:inline-flex}.welcome-status-dot{background:#22c55e;border-radius:50%;flex-shrink:0;width:7px;height:7px;animation:2s ease-in-out infinite welcome-pulse;box-shadow:0 0 0 3px #22c55e40}@keyframes welcome-pulse{0%,to{box-shadow:0 0 0 3px #22c55e40}50%{box-shadow:0 0 0 6px #22c55e1a}}.welcome-hero-title{letter-spacing:-.04em;color:#0f172a;margin:0 0 1.25rem;font-size:clamp(2.4rem,6vw,4rem);font-weight:800;line-height:1.08}.welcome-hero-title--accent{color:#1d4ed8;position:relative}.welcome-hero-desc{color:#475569;max-width:54ch;margin:0 0 2rem;font-size:clamp(1rem,2vw,1.15rem);line-height:1.7}.welcome-hero-actions{flex-wrap:wrap;justify-content:center;gap:.75rem;margin-bottom:3rem;display:flex}.welcome-cta{outline-offset:3px;cursor:pointer;border:2px solid #0000;border-radius:10px;align-items:center;gap:.45rem;padding:.65rem 1.5rem;font-size:.925rem;font-weight:700;text-decoration:none;transition:all .15s;display:inline-flex}.welcome-cta:focus-visible{outline:2px solid #3b82f6}.welcome-cta--primary{color:#fff;background:#1e40af;border-color:#1e40af}.welcome-cta--primary:hover{background:#1e3a8a;border-color:#1e3a8a;transform:translateY(-1px);box-shadow:0 6px 20px -4px #1e40af73}.welcome-cta--ghost{color:#334155;background:#fff;border-color:#cbd5e1}.welcome-cta--ghost:hover{background:#f1f5f9;border-color:#94a3b8}.welcome-cta--outline{color:#1e40af;background:0 0;border-color:#93c5fd}.welcome-cta--outline:hover{background:#eff6ff}.welcome-cta--lg{border-radius:12px;padding:.8rem 2rem;font-size:1rem}.welcome-kpi-strip{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffc;border:1px solid #e2e8f0;border-radius:14px;flex-wrap:wrap;justify-content:center;gap:0;width:100%;max-width:700px;margin:0;padding:.1rem 0;display:flex}.welcome-kpi-item{text-align:center;flex:1;min-width:130px;padding:1rem 1.25rem}.welcome-kpi-sep{background:#e2e8f0;align-self:stretch;width:1px;margin:.75rem 0}.welcome-kpi-label{letter-spacing:.1em;text-transform:uppercase;color:#64748b;margin-bottom:.35rem;font-family:DM Mono,monospace;font-size:.68rem;font-weight:700;display:block}.welcome-kpi-value{color:#1e40af;letter-spacing:-.02em;font-size:1.35rem;font-weight:800;line-height:1;display:block}.welcome-flow{background:#fff;border-bottom:1px solid #e2e8f0;padding:5rem 0}.welcome-flow-steps{counter-reset:step;grid-template-columns:1fr;gap:1.5rem;margin:0;padding:0;list-style:none;display:grid;position:relative}.welcome-flow-step{background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;padding:1.75rem;transition:border-color .18s,box-shadow .18s;position:relative}.welcome-flow-step:hover{border-color:#bfdbfe;box-shadow:0 4px 24px -8px #1e40af1f}.welcome-flow-step-num{color:#94a3b8;letter-spacing:.08em;margin-bottom:.85rem;font-family:DM Mono,monospace;font-size:.7rem;font-weight:500}.welcome-flow-step-icon{color:#1d4ed8;background:#eff6ff;border:1px solid #dbeafe;border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;margin-bottom:.85rem;display:inline-flex}.welcome-flow-step-title{color:#0f172a;margin:0 0 .5rem;font-size:1.05rem;font-weight:700}.welcome-flow-step-desc{color:#475569;margin:0;font-size:.9rem;line-height:1.65}.welcome-benefits{background:#f8fafc;border-bottom:1px solid #e2e8f0;padding:5rem 0}.welcome-benefits-grid{grid-template-columns:1fr;gap:1.25rem;display:grid}.welcome-benefit-card{border:1px solid #0000;border-radius:18px;padding:2rem;transition:transform .18s,box-shadow .18s}.welcome-benefit-card:hover{transform:translateY(-3px);box-shadow:0 12px 40px -10px #0f172a1f}.welcome-benefit-card--blue{background:linear-gradient(145deg,#eff6ff,#dbeafe);border-color:#bfdbfe}.welcome-benefit-card--amber{background:linear-gradient(145deg,#fffbeb,#fef3c7);border-color:#fde68a}.welcome-benefit-card--emerald{background:linear-gradient(145deg,#f0fdf4,#dcfce7);border-color:#bbf7d0}.welcome-benefit-icon{background:#ffffffb3;border:1px solid #ffffffe6;border-radius:14px;justify-content:center;align-items:center;width:48px;height:48px;margin-bottom:1.1rem;display:inline-flex}.welcome-benefit-card--blue .welcome-benefit-icon{color:#1d4ed8}.welcome-benefit-card--amber .welcome-benefit-icon{color:#92400e}.welcome-benefit-card--emerald .welcome-benefit-icon{color:#065f46}.welcome-benefit-title{color:#0f172a;margin:0 0 .6rem;font-size:1.1rem;font-weight:800}.welcome-benefit-desc{color:#334155;margin:0 0 1rem;font-size:.9rem;line-height:1.65}.welcome-benefit-list{flex-direction:column;gap:.45rem;margin:0;padding:0;list-style:none;display:flex}.welcome-benefit-list li{color:#1e293b;align-items:center;gap:.5rem;font-size:.85rem;font-weight:600;display:flex}.welcome-benefit-list li:before{content:"";border-radius:50%;flex-shrink:0;width:6px;height:6px;display:inline-block}.welcome-benefit-card--blue .welcome-benefit-list li:before{background:#3b82f6}.welcome-benefit-card--amber .welcome-benefit-list li:before{background:#f59e0b}.welcome-benefit-card--emerald .welcome-benefit-list li:before{background:#10b981}.welcome-features{background:#fff;border-bottom:1px solid #e2e8f0;padding:2.5rem 0}.welcome-features-list{flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem 0;margin:0;padding:0;list-style:none;display:flex}.welcome-feature-item{color:#475569;align-items:center;gap:.45rem;padding:0 1rem;font-size:.83rem;font-weight:600;display:inline-flex}.welcome-feature-icon{color:#1d4ed8;flex-shrink:0;display:inline-flex}.welcome-feature-sep{color:#cbd5e1;-webkit-user-select:none;user-select:none;font-size:1.2rem;line-height:1}.welcome-cta-section{background:#f8fafc;padding:5rem 0}.welcome-cta-box{text-align:center;background:linear-gradient(135deg,#1e3a8a,#1e40af 60%,#1d4ed8);border-radius:24px;padding:3.5rem 2rem;position:relative;overflow:hidden}.welcome-cta-box-blob{pointer-events:none;background:radial-gradient(circle,#63b3ed40,#0000 70%);border-radius:50%;width:400px;height:400px;position:absolute;top:-120px;right:-80px}.welcome-cta-box-content{z-index:1;position:relative}.welcome-cta-box-title{letter-spacing:-.03em;color:#fff;margin:0 0 .85rem;font-size:clamp(1.8rem,3.5vw,2.8rem);font-weight:800;line-height:1.1}.welcome-cta-box-desc{color:#bfdbfe;max-width:52ch;margin:0 auto 2rem;font-size:1rem;line-height:1.65}.welcome-cta-box-actions{flex-wrap:wrap;justify-content:center;gap:.75rem;display:flex}.welcome-cta-box .welcome-cta--primary{color:#1e40af;background:#fff;border-color:#fff}.welcome-cta-box .welcome-cta--primary:hover{background:#eff6ff;box-shadow:0 6px 20px -4px #00000040}.welcome-cta-box .welcome-cta--outline{color:#bfdbfe;border-color:#bfdbfe80}.welcome-cta-box .welcome-cta--outline:hover{background:#ffffff14;border-color:#bfdbfecc}.welcome-footer{background:#0f172a;padding:1.75rem 0}.welcome-footer-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.welcome-footer-brand{color:#f1f5f9;align-items:center;gap:.5rem;margin:0;font-size:.9rem;font-weight:700;display:inline-flex}.welcome-footer-copy{color:#64748b;margin:0;font-size:.78rem}@media(min-width:640px){.welcome-flow-steps,.welcome-benefits-grid{grid-template-columns:repeat(2,1fr)}.welcome-kpi-strip{flex-wrap:nowrap}}@media(min-width:960px){.welcome-hero{padding:7rem 0 5.5rem}.welcome-flow-steps{grid-template-columns:repeat(4,1fr)}.welcome-benefits-grid{grid-template-columns:repeat(3,1fr)}.welcome-cta-box{padding:4.5rem 3rem}}@media(prefers-reduced-motion:reduce){.welcome-status-dot{animation:none}.welcome-cta--primary:hover,.welcome-benefit-card:hover{transform:none}}:root{--radius:14px;--radius-sm:10px;--radius-xs:8px;--shadow-xs:0 1px 3px #0f172a0f;--shadow-sm:0 2px 8px #0f172a12;--shadow-md:0 8px 24px #0f172a1a;--shadow-lg:0 16px 40px #0f172a21;--transition:all .2s cubic-bezier(.4, 0, .2, 1);--bg-page:#f1f4f8;--bg-surface:#fff;--bg-soft:#f8fafc;--text-primary:#0d1829;--text-secondary:#334155;--text-muted:#64748b;--border-default:#e2e8f0;--border-light:#f1f5f9}body.app-page{background:var(--bg-page)}.panel{background:var(--bg-surface);border-radius:var(--radius);border:1px solid var(--border-default);box-shadow:var(--shadow-xs);transition:var(--transition)}.panel-pad{padding:1.25rem 1.375rem}.role-dashboard{gap:1.25rem;animation:.35s both dashboardFadeIn;display:grid}.role-hero{border-radius:var(--radius);border:1px solid #0000;padding:1.75rem 1.5rem;position:relative;overflow:hidden}.role-hero:before{content:"";pointer-events:none;background-image:radial-gradient(circle,#ffffff2e 1px,#0000 1px);background-size:22px 22px;position:absolute;top:0;right:0;bottom:0;left:0}.role-hero:after{content:"";pointer-events:none;background:radial-gradient(circle,#ffffff38,#0000 70%);border-radius:50%;width:240px;height:240px;position:absolute;top:-60px;right:-60px}.role-hero-admin{background:linear-gradient(135deg,#0f1e3d,#1e3a8a 55%,#1d4ed8);border-color:#3b82f6}.role-hero-admin p,.role-hero-admin h1{color:#fff!important}.role-hero-admin .text-emerald-700{color:#93c5fd!important}.role-hero-admin .text-slate-700{color:#ffffffd1!important}.role-hero-admin .text-slate-500{color:#ffffff85!important}.role-hero-admin .text-slate-900{color:#fff!important}.role-hero-admin .rounded-xl.border.border-emerald-200{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff1f!important;border-color:#ffffff40!important}.role-hero-admin .rounded-xl.border.border-emerald-200 p{color:#ffffffb8!important}.role-hero-admin .rounded-xl.border.border-emerald-200 .text-slate-900{color:#fff!important}.role-hero-maintenance{background:linear-gradient(135deg,#78350f,#92400e 55%,#b45309);border-color:#d97706}.role-hero-maintenance p,.role-hero-maintenance h1{color:#fff!important}.role-hero-maintenance .text-amber-700{color:#fcd34d!important}.role-hero-maintenance .text-slate-700{color:#ffffffd1!important}.role-hero-maintenance .text-slate-500{color:#ffffff85!important}.role-hero-reporter{background:linear-gradient(135deg,#164e63,#0e7490 55%,#0891b2);border-color:#22d3ee}.role-hero-reporter p,.role-hero-reporter h1{color:#fff!important}.role-hero-reporter .text-cyan-700{color:#a5f3fc!important}.role-hero-reporter .text-slate-700{color:#ffffffd1!important}.role-hero-reporter .text-slate-500{color:#ffffff85!important}.role-hero .btn-primary{font-weight:700;background:#fff!important;border:none!important}.role-hero-admin .btn-primary{color:#1e3a8a!important}.role-hero-admin .btn-primary:hover{background:#eff6ff!important}.role-hero-maintenance .btn-primary{color:#78350f!important}.role-hero-maintenance .btn-primary:hover{background:#fffbeb!important}.role-hero-reporter .btn-primary{color:#164e63!important}.role-hero-reporter .btn-primary:hover{background:#ecfeff!important}.role-hero .btn-secondary{font-weight:600;color:#fff!important;background:#ffffff1f!important;border-color:#ffffff4d!important}.role-hero .btn-secondary:hover{background:#ffffff38!important}.role-kpi-card{border-radius:var(--radius);background:var(--bg-surface);border:1px solid var(--border-default);box-shadow:var(--shadow-xs);transition:var(--transition);padding:1.25rem 1.375rem;animation:.3s both dashboardRise;position:relative;overflow:hidden}.role-dashboard-admin .role-kpi-card:before{content:"";border-radius:var(--radius) var(--radius) 0 0;background:linear-gradient(90deg,#1d4ed8,#60a5fa);height:3px;position:absolute;top:0;left:0;right:0}.role-dashboard-maintenance .role-kpi-card:before{content:"";border-radius:var(--radius) var(--radius) 0 0;background:linear-gradient(90deg,#d97706,#fbbf24);height:3px;position:absolute;top:0;left:0;right:0}.role-dashboard-reporter .role-kpi-card:before{content:"";border-radius:var(--radius) var(--radius) 0 0;background:linear-gradient(90deg,#0891b2,#22d3ee);height:3px;position:absolute;top:0;left:0;right:0}.role-kpi-card:hover{box-shadow:var(--shadow-md);border-color:#cbd5e1;transform:translateY(-2px)}.role-kpi-card p:first-child{letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.5rem;font-size:.69rem;font-weight:700}.role-kpi-card p:nth-child(2){color:var(--text-primary);letter-spacing:-.02em;margin-bottom:.35rem;font-size:2.1rem;font-weight:900;line-height:1}.role-kpi-card p:last-child{color:var(--text-muted);font-size:.78rem}.role-kpi-card:first-child{animation-delay:50ms}.role-kpi-card:nth-child(2){animation-delay:.1s}.role-kpi-card:nth-child(3){animation-delay:.15s}.role-kpi-card:nth-child(4){animation-delay:.2s}.role-kpi-card:nth-child(5){animation-delay:.25s}.role-dashboard-admin .panel:not(.role-hero):not(.role-kpi-card){background:#fafbff;border-left:3px solid #3b82f6}.role-dashboard-maintenance .panel:not(.role-hero):not(.role-kpi-card){background:#fffdf7;border-left:3px solid #d97706}.role-dashboard-reporter .panel:not(.role-hero):not(.role-kpi-card){background:#f7feff;border-left:3px solid #0891b2}.role-section>header{border-bottom:1px solid var(--border-default);background:var(--bg-soft);padding:1rem 1.375rem}.role-section>header h2{color:var(--text-primary);letter-spacing:-.01em;font-size:.95rem;font-weight:800}.role-section>header p{color:var(--text-muted);margin-top:.2rem;font-size:.79rem}.role-dashboard table{border-collapse:collapse;width:100%}.role-dashboard thead th{background:var(--bg-soft);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);border-bottom:1px solid var(--border-default);white-space:nowrap;text-align:left;padding:.85rem 1.1rem;font-size:.7rem;font-weight:800}.role-dashboard tbody td{border-bottom:1px solid var(--border-light);color:var(--text-secondary);vertical-align:middle;padding:.85rem 1.1rem;font-size:.85rem}.role-dashboard tbody tr:last-child td{border-bottom:none}.role-dashboard tbody tr{transition:background-color .15s}.role-dashboard tbody tr:hover{background:#f8fafc}.badge-state,.badge-priority{letter-spacing:.04em;text-transform:uppercase;border-radius:999px;align-items:center;padding:.22rem .65rem;font-size:.69rem;font-weight:700;display:inline-flex}.badge-open{color:#1e40af;background:#dbeafe}.badge-progress{color:#92400e;background:#fef3c7}.badge-resolved{color:#166534;background:#dcfce7}.badge-closed{color:#475569;background:#f1f5f9}.badge-critical{color:#991b1b;background:#fee2e2}.badge-high{color:#9a3412;background:#ffedd5}.badge-medium{color:#854d0e;background:#fefce8}.badge-low{color:#166534;background:#f0fdf4}.role-dashboard td a{border-radius:var(--radius-xs);transition:var(--transition);white-space:nowrap;border:1px solid;align-items:center;padding:.3rem .7rem;font-size:.75rem;font-weight:700;text-decoration:none;display:inline-flex}.role-dashboard-admin td a{color:#1e3a8a;background:#eff6ff;border-color:#93c5fd}.role-dashboard-admin td a:hover{background:#dbeafe;border-color:#60a5fa}.role-dashboard-maintenance td a{color:#78350f;background:#fffbeb;border-color:#fcd34d}.role-dashboard-maintenance td a:hover{background:#fef3c7;border-color:#f59e0b}.role-dashboard-reporter td a{color:#164e63;background:#ecfeff;border-color:#67e8f9}.role-dashboard-reporter td a:hover{background:#cffafe;border-color:#22d3ee}.btn-primary{border-radius:var(--radius-sm);transition:var(--transition);cursor:pointer;letter-spacing:-.01em;color:#fff;background:#1d4ed8;border:1px solid #0000;justify-content:center;align-items:center;gap:.35rem;padding:.55rem 1.1rem;font-size:.875rem;font-weight:700;text-decoration:none;display:inline-flex}.btn-primary:hover{box-shadow:var(--shadow-md);background:#1e40af;transform:translateY(-1px)}.btn-primary:active{transform:translateY(0)}.btn-secondary{border-radius:var(--radius-sm);transition:var(--transition);cursor:pointer;color:#475569;background:#f1f5f9;border:1px solid #e2e8f0;justify-content:center;align-items:center;gap:.35rem;padding:.5rem 1rem;font-size:.875rem;font-weight:600;text-decoration:none;display:inline-flex}.btn-secondary:hover{color:#1e293b;background:#e2e8f0;transform:translateY(-1px)}.btn-secondary:active{transform:translateY(0)}.btn-danger{border-radius:var(--radius-sm);transition:var(--transition);cursor:pointer;color:#e11d48;background:#fff1f2;border:1px solid #fecdd3;justify-content:center;align-items:center;gap:.35rem;padding:.5rem 1rem;font-size:.875rem;font-weight:600;text-decoration:none;display:inline-flex}.btn-danger:hover{color:#be123c;background:#ffe4e6;border-color:#fda4af;transform:translateY(-1px)}.btn-danger:active{transform:translateY(0)}.table-wrap{overflow-x:auto}@media(max-width:639px){.role-dashboard{gap:.85rem}.role-hero{padding:1.1rem 1rem}.role-hero .flex.flex-wrap.items-start.justify-between{flex-direction:column!important;gap:.75rem!important}.role-hero .rounded-xl.border.border-emerald-200{text-align:left!important;width:100%!important}.role-hero h1{font-size:1.5rem!important}.role-kpi-grid{grid-template-columns:repeat(2,1fr)!important;gap:.65rem!important}.role-kpi-card p:nth-child(2){font-size:1.65rem}.grid.grid-cols-1.xl\:grid-cols-3,.grid.grid-cols-1.xl\:grid-cols-2,.grid.grid-cols-1.xl\:grid-cols-5{grid-template-columns:1fr!important}.role-dashboard table{min-width:520px}.role-dashboard thead th,.role-dashboard tbody td{padding:.6rem .75rem;font-size:.78rem}.role-hero .flex.flex-wrap.items-center.gap-2{width:100%}.role-hero .btn-primary,.role-hero .btn-secondary{text-align:center;flex:1;justify-content:center}.role-dashboard .flex.flex-wrap.items-center.gap-2.text-xs{gap:.3rem!important}.role-dashboard .rounded-full{padding:.18rem .45rem!important;font-size:.65rem!important}.panel-pad{padding:.9rem 1rem}}@media(min-width:640px)and (max-width:1023px){.role-dashboard{gap:1rem}.role-hero h1{font-size:1.75rem!important}.role-kpi-grid{grid-template-columns:repeat(2,1fr)!important}.grid.grid-cols-1.xl\:grid-cols-3,.grid.grid-cols-1.xl\:grid-cols-2,.grid.grid-cols-1.xl\:grid-cols-5{grid-template-columns:1fr!important}.role-dashboard thead th,.role-dashboard tbody td{padding:.72rem .9rem;font-size:.82rem}}.dash-mini-card{background:var(--bg-soft);border:1px solid var(--border-default);transition:var(--transition);border-radius:10px;padding:.75rem .9rem}.dash-mini-card:hover{box-shadow:var(--shadow-sm);border-color:#cbd5e1}.dash-mini-label{letter-spacing:.1em!important;text-transform:uppercase!important;color:var(--text-faint,#94a3b8)!important;margin-bottom:.3rem!important;font-size:.65rem!important;font-weight:700!important}.dash-mini-val{color:var(--text-primary)!important;font-size:1.75rem!important;font-weight:900!important;line-height:1!important}.dash-mini-val--amber{color:#d97706!important}.dash-mini-val--red{color:#dc2626!important}.dash-mini-val--green{color:#059669!important}.dash-location-card{background:var(--bg-soft);border:1px solid var(--border-default);transition:var(--transition);border-radius:10px;justify-content:space-between;align-items:center;gap:.75rem;padding:.7rem .9rem;display:flex}.dash-location-card:hover{box-shadow:var(--shadow-sm);border-color:#cbd5e1}.dash-location-name{color:var(--text-primary);font-size:.9rem;font-weight:700}.dash-location-meta{color:var(--text-muted);margin-top:.15rem;font-size:.75rem}.dash-location-stats{text-align:right;color:var(--text-secondary);white-space:nowrap;font-size:.75rem}.dash-location-stats strong{color:var(--text-primary);font-weight:800}.dash-state-badge{letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;border-radius:999px;align-items:center;padding:.2rem .6rem;font-size:.68rem;font-weight:700;display:inline-flex}.dash-state-badge--open{color:#1e40af;background:#dbeafe}.dash-state-badge--in_progress{color:#92400e;background:#fef3c7}.dash-state-badge--resolved{color:#166534;background:#dcfce7}.dash-state-badge--closed{color:#475569;background:#f1f5f9}.dash-priority-badge{letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;border-radius:999px;align-items:center;padding:.2rem .6rem;font-size:.68rem;font-weight:700;display:inline-flex}.dash-priority-badge--critical{color:#991b1b;background:#fee2e2}.dash-priority-badge--high{color:#9a3412;background:#ffedd5}.dash-priority-badge--medium{color:#854d0e;background:#fefce8}.dash-priority-badge--low{color:#166534;background:#f0fdf4}.dash-qr-badge{letter-spacing:.04em;text-transform:uppercase;border-radius:999px;align-items:center;padding:.2rem .6rem;font-size:.68rem;font-weight:700;display:inline-flex}.dash-qr-badge--pending{color:#475569;background:#f1f5f9}.dash-qr-badge--processing{color:#92400e;background:#fef3c7}.dash-qr-badge--failed{color:#991b1b;background:#fee2e2}.dash-qr-badge--ready{color:#166534;background:#dcfce7}.dash-empty{color:var(--text-muted);padding:1rem 0;font-size:.85rem}td.dash-empty{color:var(--text-muted);padding:1.5rem 1.1rem;font-size:.85rem}.role-dashboard-admin .role-section{border-left:3px solid #3b82f6}.role-dashboard-maintenance .role-section{border-left:3px solid #d97706}.role-dashboard-reporter .role-section{border-left:3px solid #0891b2}.role-dashboard tbody tr:nth-child(2n){background:#f9fafb}.role-dashboard tbody tr:nth-child(2n):hover{background:#f1f5f9}@media(min-width:1024px){.role-kpi-grid{grid-template-columns:repeat(4,1fr)}.role-dashboard-maintenance .role-kpi-grid{grid-template-columns:repeat(5,1fr)}}@keyframes dashboardFadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes dashboardRise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.tickets-page,.tickets-create-page,.tickets-show-page{gap:1.25rem;animation:.35s both dashboardFadeIn;display:grid}.tickets-create-page,.tickets-show-page{width:100%;max-width:860px;margin:0 auto}.tickets-hero{border-radius:var(--radius);background:linear-gradient(135deg,#1d4ed8,#2563eb 55%,#3b82f6);border:1px solid #60a5fa;padding:1.75rem 1.5rem;position:relative;overflow:hidden}.tickets-hero:before{content:"";pointer-events:none;background-image:radial-gradient(circle,#ffffff26 1px,#0000 1px);background-size:22px 22px;position:absolute;top:0;right:0;bottom:0;left:0}.tickets-hero:after{content:"";pointer-events:none;background:radial-gradient(circle,#fff3,#0000 70%);border-radius:50%;width:240px;height:240px;position:absolute;top:-60px;right:-60px}.tickets-hero-inner{z-index:1;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1.5rem;display:flex;position:relative}.tickets-overline{letter-spacing:.12em;text-transform:uppercase;color:#93c5fd;margin-bottom:.25rem;font-size:.7rem;font-weight:700}.tickets-title{color:#fff;letter-spacing:-.02em;margin:0;font-size:2rem;font-weight:900}.tickets-subtitle{color:#ffffffc7;max-width:50ch;margin-top:.4rem;font-size:.85rem}.tickets-btn-create{white-space:nowrap;font-weight:700;color:#1d4ed8!important;background:#fff!important}.tickets-btn-create:hover{background:#eff6ff!important}.tickets-kpi-grid{z-index:1;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-top:1.25rem;display:grid;position:relative}.tickets-kpi-card{transition:var(--transition);background:#ffffff1f;border:1px solid #fff3;border-radius:10px;padding:.9rem 1rem}.tickets-kpi-card:hover{background:#ffffff2e}.tickets-kpi-label{letter-spacing:.08em;text-transform:uppercase;color:#ffffffa6;margin-bottom:.3rem;font-size:.65rem;font-weight:700}.tickets-kpi-value{color:#fff;font-size:1.6rem;font-weight:900;line-height:1}.tickets-kpi-note{color:#ffffff8c;margin-top:.25rem;font-size:.72rem}.tickets-filters{border:1px solid var(--border-default);border-radius:var(--radius);box-shadow:var(--shadow-xs);background:#fff;padding:1.25rem 1.375rem}.tickets-filters-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.tickets-filters-title{color:var(--text-primary);margin:0;font-size:.95rem;font-weight:800}.tickets-filters-subtitle{color:var(--text-muted);margin-top:.2rem;font-size:.79rem}.tickets-filter-badge{color:#1e40af;white-space:nowrap;background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;align-items:center;padding:.25rem .7rem;font-size:.72rem;font-weight:700;display:inline-flex}.tickets-filter-grid{grid-template-columns:repeat(4,1fr) auto;align-items:end;gap:.85rem;display:grid}.tickets-field-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.38rem;font-size:.7rem;font-weight:700;display:block}.tickets-field{border:1px solid var(--border-default);width:100%;color:var(--text-primary);transition:var(--transition);-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#fff;border-radius:10px;padding:.65rem .8rem;font-size:.875rem}.tickets-field:hover{border-color:#cbd5e1}.tickets-field:focus{outline-offset:0;border-color:#3b82f6;outline:2px solid #3b82f6}.tickets-filter-actions{flex-direction:column;gap:.5rem;display:flex}.tickets-filter-actions .btn-primary,.tickets-filter-actions .btn-secondary{text-align:center;justify-content:center;width:100%}.tickets-table-shell{border:1px solid var(--border-default);border-radius:var(--radius);box-shadow:var(--shadow-xs);background:#fff;border-left:3px solid #3b82f6;overflow:hidden}.tickets-dataset-head{background:var(--bg-soft);border-bottom:1px solid var(--border-default);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1.1rem;display:flex}.tickets-dataset-count{color:var(--text-secondary);font-size:.85rem;font-weight:600}.tickets-dataset-chip{border:1px solid var(--border-default);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;background:#fff;border-radius:999px;padding:.2rem .65rem;font-size:.72rem;font-weight:700}.tickets-table{border-collapse:collapse;width:100%}.tickets-table thead th{background:var(--bg-soft);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);border-bottom:1px solid var(--border-default);text-align:left;white-space:nowrap;padding:.85rem 1.1rem;font-size:.7rem;font-weight:800}.tickets-table tbody td{border-bottom:1px solid var(--border-light);color:var(--text-secondary);vertical-align:middle;padding:.85rem 1.1rem;font-size:.85rem}.tickets-table tbody tr:last-child td{border-bottom:none}.tickets-table tbody tr{transition:background-color .15s}.tickets-table tbody tr:hover{background:#f8fafc}.tickets-table tbody tr:nth-child(2n){background:#f9fafb}.tickets-table tbody tr:nth-child(2n):hover{background:#f1f5f9}.tickets-td-title{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;max-width:28ch;font-weight:700;overflow:hidden}.tickets-td-meta{color:var(--text-muted);font-size:.8rem}.ticket-badge{letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;border-radius:999px;align-items:center;padding:.22rem .65rem;font-size:.68rem;font-weight:700;display:inline-flex}.ticket-badge--open{color:#1e40af;background:#dbeafe}.ticket-badge--in_progress{color:#92400e;background:#fef3c7}.ticket-badge--resolved{color:#166534;background:#dcfce7}.ticket-badge--rejected{color:#991b1b;background:#fee2e2}.ticket-badge--closed{color:#475569;background:#f1f5f9}.ticket-badge--critical{color:#991b1b;background:#fee2e2}.ticket-badge--high{color:#9a3412;background:#ffedd5}.ticket-badge--medium{color:#854d0e;background:#fefce8}.ticket-badge--low{color:#166534;background:#f0fdf4}.tickets-link-action{color:#1e40af;transition:var(--transition);white-space:nowrap;background:#eff6ff;border:1px solid #93c5fd;border-radius:7px;align-items:center;padding:.28rem .7rem;font-size:.75rem;font-weight:700;text-decoration:none;display:inline-flex}.tickets-link-action:hover{background:#dbeafe;border-color:#60a5fa}.tickets-empty-cell{padding:0!important}.tickets-empty-state{text-align:center;flex-direction:column;align-items:center;gap:.5rem;padding:3rem 1.5rem;display:flex}.tickets-empty-title{color:var(--text-primary);font-size:1rem;font-weight:800}.tickets-empty-note{color:var(--text-muted);max-width:45ch;margin-bottom:.5rem;font-size:.84rem}.tickets-pagination{justify-content:center;display:flex}.tickets-create-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.tickets-create-title{color:var(--text-primary);letter-spacing:-.02em;margin:0;font-size:1.75rem;font-weight:900}.tickets-create-subtitle{color:var(--text-muted);margin-top:.3rem;font-size:.85rem}.tickets-create-form{border:1px solid var(--border-default);border-radius:var(--radius);box-shadow:var(--shadow-xs);background:#fff;border-left:3px solid #3b82f6;gap:1.25rem;padding:1.5rem;display:grid}.tickets-form-group{gap:.4rem;display:grid}.tickets-form-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.tickets-field-error{color:#dc2626;font-size:.78rem;font-weight:600}.tickets-field-hint{color:var(--text-muted);font-size:.75rem}.tickets-form-actions{gap:.75rem;padding-top:.25rem;display:flex}.tickets-show-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.tickets-show-title{color:var(--text-primary);letter-spacing:-.02em;max-width:55ch;margin:0;font-size:1.6rem;font-weight:900}.tickets-show-subtitle{color:var(--text-muted);margin-top:.3rem;font-size:.84rem}.tickets-show-actions{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.tickets-btn-danger{border-radius:var(--radius-sm);color:#b91c1c;cursor:pointer;transition:var(--transition);background:#fff1f2;border:1px solid #fecaca;align-items:center;padding:.5rem 1rem;font-size:.875rem;font-weight:700;display:inline-flex}.tickets-btn-danger:hover{background:#fee2e2;border-color:#fca5a5}.tickets-show-section{border:1px solid var(--border-default);border-radius:var(--radius);box-shadow:var(--shadow-xs);background:#fff;border-left:3px solid #3b82f6;overflow:hidden}.tickets-show-section-header{border-bottom:1px solid var(--border-default);background:var(--bg-soft);padding:1rem 1.375rem}.tickets-show-section-header h2{color:var(--text-primary);margin:0;font-size:.95rem;font-weight:800}.tickets-show-content{gap:1.25rem;padding:1.375rem;display:grid}.tickets-show-description-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:.5rem;font-size:.75rem;font-weight:700}.tickets-show-description-text{color:var(--text-secondary);white-space:pre-wrap;font-size:.9rem;line-height:1.65}.tickets-show-grid{grid-template-columns:repeat(3,1fr);gap:.75rem;display:grid}.tickets-show-meta{background:var(--bg-soft);border:1px solid var(--border-default);border-radius:10px;padding:.75rem .9rem}.tickets-show-meta-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:.3rem;font-size:.65rem;font-weight:700}.tickets-show-meta-value{color:var(--text-primary);font-size:.9rem;font-weight:700}.tickets-media-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.85rem;padding:1.375rem;display:grid}.tickets-media-item{border:1px solid var(--border-default);background:var(--bg-soft);transition:var(--transition);border-radius:10px;overflow:hidden}.tickets-media-item:hover{box-shadow:var(--shadow-sm);border-color:#cbd5e1}.tickets-media-image{object-fit:cover;width:100%;height:130px;display:block}.tickets-media-file{background:#f1f5f9;justify-content:center;align-items:center;height:130px;display:flex}.tickets-media-type{color:var(--text-muted);letter-spacing:.1em;font-size:.75rem;font-weight:800}.tickets-media-info{padding:.6rem .75rem}.tickets-media-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:.72rem;font-weight:700}.tickets-media-date{color:var(--text-faint,#94a3b8);margin-top:.1rem;font-size:.72rem}.tickets-media-link{color:#1e40af;margin-top:.4rem;font-size:.75rem;font-weight:700;text-decoration:none;display:inline-flex}.tickets-media-link:hover{text-decoration:underline}.tickets-update-form{gap:1rem;padding:1.375rem;display:grid}.tickets-history-list{gap:.75rem;padding:1rem 1.375rem;display:grid}.tickets-history-item{background:var(--bg-soft);border:1px solid var(--border-default);transition:var(--transition);border-radius:10px;padding:.85rem 1rem}.tickets-history-item:hover{box-shadow:var(--shadow-xs);border-color:#cbd5e1}.tickets-history-transition{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.tickets-history-badge{color:#475569;text-transform:capitalize;background:#f1f5f9;border-radius:999px;align-items:center;padding:.22rem .65rem;font-size:.7rem;font-weight:700;display:inline-flex}.tickets-history-badge--target{color:#1e40af;background:#dbeafe}.tickets-history-arrow{width:14px;height:14px;color:var(--text-muted);flex-shrink:0}.tickets-history-comment{color:var(--text-secondary);margin-top:.5rem;font-size:.84rem;font-style:italic}.tickets-history-date{color:var(--text-muted);margin-top:.3rem;font-size:.72rem}.tickets-history-empty{color:var(--text-muted);padding:.5rem 0;font-size:.85rem}@media(max-width:639px){.tickets-hero{padding:1.1rem 1rem}.tickets-title{font-size:1.5rem}.tickets-hero-inner{flex-direction:column;gap:.75rem}.tickets-btn-create{justify-content:center;width:100%}.tickets-kpi-grid{grid-template-columns:repeat(3,1fr);gap:.5rem}.tickets-kpi-value{font-size:1.25rem}.tickets-kpi-note{display:none}.tickets-filters{padding:1rem}.tickets-filter-grid{grid-template-columns:1fr;gap:.75rem}.tickets-filter-actions{flex-direction:row;grid-column:auto}.tickets-filter-actions .btn-primary,.tickets-filter-actions .btn-secondary{flex:1}.tickets-table{min-width:560px}.tickets-td-title{max-width:16ch}.tickets-create-page{max-width:100%}.tickets-create-form{padding:1rem}.tickets-form-grid{grid-template-columns:1fr}.tickets-create-header{flex-direction:column;gap:.75rem}.tickets-create-header .btn-secondary{text-align:center;width:100%}.tickets-form-actions{flex-direction:column}.tickets-form-actions .btn-primary,.tickets-form-actions .btn-secondary{text-align:center;width:100%}.tickets-show-page{max-width:100%}.tickets-show-header{flex-direction:column;gap:.75rem}.tickets-show-title{font-size:1.25rem}.tickets-show-actions{width:100%}.tickets-show-actions .btn-secondary,.tickets-show-actions .tickets-btn-danger{text-align:center;flex:1;justify-content:center}.tickets-show-content{padding:1rem}.tickets-show-grid{grid-template-columns:1fr 1fr}.tickets-media-grid{grid-template-columns:repeat(2,1fr)}.tickets-update-form{padding:1rem}.tickets-history-list{padding:.75rem 1rem}}@media(min-width:640px)and (max-width:1023px){.tickets-filter-grid{grid-template-columns:repeat(2,1fr);gap:.85rem}.tickets-filter-actions{flex-direction:row;grid-column:1/-1;justify-content:flex-end}.tickets-filter-actions .btn-primary,.tickets-filter-actions .btn-secondary{min-width:120px}.tickets-kpi-grid{grid-template-columns:repeat(3,1fr)}.tickets-show-grid{grid-template-columns:repeat(2,1fr)}.tickets-create-page,.tickets-show-page{max-width:100%}}@media(min-width:1024px){.tickets-filter-grid{grid-template-columns:2fr repeat(3,1fr) auto}}.users-page{gap:1.25rem;animation:.35s both dashboardFadeIn;display:grid}.users-form-layout,.users-edit-layout{grid-template-columns:1fr 290px;align-items:start;gap:1.5rem;animation:.35s both dashboardFadeIn;display:grid}.users-form-left,.users-edit-left{gap:1.25rem;min-width:0;display:grid}.users-hero{border-radius:var(--radius);background:linear-gradient(135deg,#0f1e3d,#1e3a8a 55%,#1d4ed8);border:1px solid #3b82f6;padding:1.75rem 1.5rem;position:relative;overflow:hidden}.users-hero:before{content:"";pointer-events:none;background-image:radial-gradient(circle,#ffffff26 1px,#0000 1px);background-size:22px 22px;position:absolute;top:0;right:0;bottom:0;left:0}.users-hero:after{content:"";pointer-events:none;background:radial-gradient(circle,#ffffff2e,#0000 70%);border-radius:50%;width:240px;height:240px;position:absolute;top:-60px;right:-60px}.users-hero-inner{z-index:1;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1.5rem;display:flex;position:relative}.users-overline{letter-spacing:.12em;text-transform:uppercase;color:#93c5fd;margin-bottom:.25rem;font-size:.7rem;font-weight:700}.users-title{color:#fff;letter-spacing:-.02em;margin:0;font-size:2rem;font-weight:900}.users-subtitle{color:#ffffffbf;max-width:52ch;margin-top:.4rem;font-size:.85rem}.users-btn-new{white-space:nowrap;font-weight:700;color:#1e3a8a!important;background:#fff!important}.users-btn-new:hover{background:#eff6ff!important}.users-kpi-grid{z-index:1;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-top:1.25rem;display:grid;position:relative}.users-kpi-card{transition:var(--transition);background:#ffffff1c;border:1px solid #ffffff2e;border-radius:10px;padding:.9rem 1rem}.users-kpi-card:hover{background:#ffffff2b}.users-kpi-label{letter-spacing:.08em;text-transform:uppercase;color:#ffffff9e;margin-bottom:.3rem;font-size:.65rem;font-weight:700}.users-kpi-value{color:#fff;font-size:1.6rem;font-weight:900;line-height:1}.users-kpi-note{color:#ffffff80;margin-top:.25rem;font-size:.72rem}.users-filters{border:1px solid var(--border-default);border-radius:var(--radius);box-shadow:var(--shadow-xs);background:#fff;padding:1.25rem 1.375rem}.users-filters-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.users-filters-title{color:var(--text-primary);margin:0;font-size:.95rem;font-weight:800}.users-filters-subtitle{color:var(--text-muted);margin-top:.2rem;font-size:.79rem}.users-filter-badge{color:#1e40af;white-space:nowrap;background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;align-items:center;padding:.25rem .7rem;font-size:.72rem;font-weight:700;display:inline-flex}.users-filter-grid{grid-template-columns:2fr 1fr 1fr auto;align-items:end;gap:.85rem;display:grid}.users-field-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.38rem;font-size:.7rem;font-weight:700;display:block}.users-field{border:1px solid var(--border-default);width:100%;color:var(--text-primary);transition:var(--transition);-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#fff;border-radius:10px;padding:.65rem .8rem;font-family:inherit;font-size:.875rem}.users-field:hover{border-color:#cbd5e1}.users-field:focus{outline-offset:0;border-color:#3b82f6;outline:2px solid #3b82f6}.users-filter-actions{gap:.5rem;display:flex}.users-table-shell{border-radius:var(--radius);box-shadow:var(--shadow-xs);background:#fff;border:1px solid #e2e8f0;overflow:hidden}.users-table-shell:before{content:"";background:linear-gradient(90deg,#1d4ed8,#60a5fa);height:3px;display:block}.users-dataset-head{background:#f8fafc;border-bottom:1px solid #eef2f7;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1.25rem;display:flex}.users-dataset-count{color:var(--text-secondary);font-size:.84rem;font-weight:600}.users-dataset-chip{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;background:#fff;border:1px solid #e2e8f0;border-radius:999px;padding:.22rem .7rem;font-size:.7rem;font-weight:700}.users-table{border-collapse:collapse;width:100%}.users-table thead tr{background:#f8fafc;border-bottom:1px solid #e8edf4}.users-table thead th{letter-spacing:.09em;text-transform:uppercase;color:#64748b;text-align:left;white-space:nowrap;padding:.9rem 1.1rem;font-size:.68rem;font-weight:800}.users-table tbody td{color:var(--text-secondary);vertical-align:middle;border-bottom:1px solid #f1f5f9;padding:.88rem 1.1rem;font-size:.875rem}.users-table tbody tr:last-child td{border-bottom:none}.users-table tbody tr{transition:background .14s}.users-table tbody tr:hover{background:#f8fafc}.users-table tbody tr:nth-child(2n){background:#fafbfc}.users-table tbody tr:nth-child(2n):hover{background:#f1f5f9}.users-td-user{align-items:center;gap:.65rem;display:flex}.users-td-avatar{color:#fff;background:linear-gradient(135deg,#1d4ed8,#60a5fa);border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:.78rem;font-weight:900;display:flex;overflow:hidden}.users-td-avatar-img{object-fit:cover;width:100%;height:100%}.users-td-name{color:#0d1829;font-size:.9rem;font-weight:700}.users-td-email{color:var(--text-muted);font-size:.82rem}.users-td-date{color:var(--text-muted);white-space:nowrap;font-size:.8rem}.users-role-badge{letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;border-radius:999px;align-items:center;padding:.22rem .7rem;font-size:.7rem;font-weight:800;display:inline-flex}.users-role-badge--admin{color:#92400e;background:#fef3c7;border:1px solid #fde68a}.users-role-badge--maintenance,.users-role-badge--maintenance_staff{color:#9a3412;background:#ffedd5;border:1px solid #fed7aa}.users-role-badge--reporter{color:#1e40af;background:#eff6ff;border:1px solid #bfdbfe}.users-role-badge--superadmin{color:#7e22ce;background:#fdf4ff;border:1px solid #e9d5ff}.users-actions{align-items:center;gap:.45rem;display:flex}.users-btn-edit{color:#1e40af;transition:var(--transition);white-space:nowrap;background:#eff6ff;border:1px solid #93c5fd;border-radius:7px;align-items:center;padding:.32rem .8rem;font-size:.75rem;font-weight:700;text-decoration:none;display:inline-flex}.users-btn-edit:hover{background:#dbeafe;border-color:#60a5fa}.users-btn-delete{color:#b91c1c;cursor:pointer;transition:var(--transition);white-space:nowrap;background:#fff1f2;border:1px solid #fecaca;border-radius:7px;align-items:center;padding:.32rem .8rem;font-size:.75rem;font-weight:700;display:inline-flex}.users-btn-delete:hover{background:#fee2e2;border-color:#fca5a5}.users-self-badge{color:#3b82f6;background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;padding:.22rem .6rem;font-size:.72rem;font-weight:700}.users-empty-cell{padding:0!important}.users-empty-state{text-align:center;flex-direction:column;align-items:center;gap:.6rem;padding:3.5rem 1.5rem;display:flex}.users-empty-title{color:var(--text-primary);font-size:1rem;font-weight:800}.users-empty-note{color:var(--text-muted);margin-bottom:.5rem;font-size:.84rem}.users-pagination{justify-content:center;display:flex}.users-form-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.users-form-title{color:var(--text-primary);letter-spacing:-.02em;margin:0;font-size:1.75rem;font-weight:900}.users-form-subtitle{color:var(--text-muted);margin-top:.3rem;font-size:.85rem}.users-form-card{border:1px solid var(--border-default);border-radius:var(--radius);box-shadow:var(--shadow-xs);background:#fff;overflow:hidden}.users-form-card-header{background:linear-gradient(135deg,#0f1e3d,#1e3a8a);border-bottom:1px solid #1e3a8a;align-items:center;gap:.85rem;padding:1rem 1.375rem;display:flex}.users-form-card-header--teal{background:linear-gradient(135deg,#134e4a,#0f766e);border-bottom-color:#0f766e}.users-form-card-header--amber{background:linear-gradient(135deg,#78350f,#b45309);border-bottom-color:#b45309}.users-form-card-icon{color:#fff;background:#ffffff26;border:1px solid #ffffff38;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.users-form-card-icon svg{display:block}.users-form-card-title{color:#fff;margin:0;font-size:.92rem;font-weight:800}.users-form-card-subtitle{color:#ffffffa6;margin-top:.1rem;font-size:.76rem}.users-form-body{gap:1.1rem;padding:1.375rem;display:grid}.users-form-group{gap:.4rem;display:grid}.users-form-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.users-form-divider{background:var(--border-light);height:1px;margin:.15rem 0}.users-field-error{color:#dc2626;font-size:.78rem;font-weight:600}.users-field-hint{color:var(--text-muted);font-size:.75rem;line-height:1.45}.users-form-actions{border-top:1px solid var(--border-light);gap:.75rem;margin-top:.15rem;padding-top:.5rem;display:flex}.users-avatar-row{align-items:flex-start;gap:1.25rem;display:flex}.users-avatar-preview{flex-shrink:0}.users-avatar-img{object-fit:cover;border:2px solid var(--border-default);border-radius:14px;width:64px;height:64px;display:block}.users-avatar-placeholder{color:#fff;background:linear-gradient(135deg,#1d4ed8,#60a5fa);border-radius:14px;justify-content:center;align-items:center;width:64px;height:64px;font-size:1.4rem;font-weight:900;display:flex;box-shadow:0 4px 12px #1d4ed84d}.users-avatar-upload{flex:1;min-width:0}.users-danger-zone{border-radius:var(--radius);box-shadow:var(--shadow-xs);background:#fff;border:1px solid #fecaca;overflow:hidden}.users-danger-zone:before{content:"";background:linear-gradient(90deg,#dc2626,#f87171);height:3px;display:block}.users-danger-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem;padding:1.25rem 1.375rem;display:flex}.users-danger-title{color:#b91c1c;margin:0;font-size:.92rem;font-weight:800}.users-danger-text{color:#7f1d1d;max-width:48ch;margin-top:.3rem;font-size:.82rem}.users-danger-btn{color:#fff;cursor:pointer;transition:var(--transition);white-space:nowrap;background:#dc2626;border:none;border-radius:10px;align-items:center;padding:.6rem 1.1rem;font-family:inherit;font-size:.875rem;font-weight:700;display:inline-flex}.users-danger-btn:hover{background:#b91c1c;transform:translateY(-1px);box-shadow:0 4px 12px #b91c1c47}.users-form-sidebar,.users-edit-sidebar{gap:1rem;display:grid;position:sticky;top:1.5rem}.users-sidebar-card{border:1px solid var(--border-default);border-radius:var(--radius);box-shadow:var(--shadow-xs);background:#fff;padding:1.1rem 1.25rem}.users-sidebar-hero,.users-sidebar-profile{text-align:center;background:linear-gradient(160deg,#f8faff,#eff6ff);border-color:#dbeafe;flex-direction:column;align-items:center;gap:.55rem;padding:1.5rem 1.25rem;display:flex}.users-sidebar-icon{color:#fff;background:linear-gradient(135deg,#1d4ed8,#3b82f6);border-radius:16px;justify-content:center;align-items:center;width:68px;height:68px;display:flex;box-shadow:0 8px 20px #1d4ed847}.users-sidebar-icon svg{display:block}.users-sidebar-avatar-lg{color:#fff;background:linear-gradient(135deg,#1d4ed8,#60a5fa);border-radius:16px;flex-shrink:0;justify-content:center;align-items:center;width:72px;height:72px;font-size:1.5rem;font-weight:900;display:flex;overflow:hidden;box-shadow:0 8px 20px #1d4ed847}.users-sidebar-avatar-img{object-fit:cover;width:100%;height:100%}.users-sidebar-title{color:var(--text-primary);margin:0;font-size:.95rem;font-weight:800}.users-sidebar-subtitle{color:var(--text-muted);word-break:break-word;font-size:.78rem;line-height:1.45}.users-sidebar-section-title{text-transform:uppercase;letter-spacing:.09em;color:var(--text-muted);margin-bottom:.75rem;font-size:.7rem;font-weight:800}.users-sidebar-section-title--red{color:#b91c1c}.users-sidebar-section-title--blue{color:#1d4ed8}.users-sidebar-roles{flex-wrap:wrap;gap:.45rem;margin:0;padding:0;list-style:none;display:flex}.users-sidebar-role-item{list-style:none}.users-sidebar-guide{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.users-sidebar-guide li{align-items:flex-start;gap:.6rem;display:flex}.users-sidebar-dot{background:#3b82f6;border-radius:50%;flex-shrink:0;width:7px;height:7px;margin-top:5px}.users-sidebar-item-title{color:var(--text-primary);margin-bottom:.1rem;font-size:.8rem;font-weight:700}.users-sidebar-item-text{color:var(--text-muted);font-size:.77rem;line-height:1.45}.users-sidebar-info-list{margin:0;padding:0;list-style:none}.users-sidebar-info-list li{border-bottom:1px solid var(--border-light);justify-content:space-between;align-items:center;gap:.5rem;padding:.55rem 0;display:flex}.users-sidebar-info-list li:last-child{border-bottom:none}.users-sidebar-info-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.72rem;font-weight:700}.users-sidebar-info-val{color:var(--text-primary);text-align:right;font-size:.82rem;font-weight:700}.users-sidebar-danger-hint{background:#fff8f8;border-color:#fecaca}.users-sidebar-self{background:#f0f7ff;border-color:#bfdbfe}.users-sidebar-tips{background:linear-gradient(160deg,#f0fdf4,#dcfce7);border-color:#bbf7d0}@media(max-width:767px){.users-hero{padding:1.1rem 1rem}.users-title{font-size:1.5rem}.users-hero-inner{flex-direction:column;gap:.75rem}.users-btn-new{justify-content:center;width:100%}.users-kpi-grid{grid-template-columns:repeat(3,1fr);gap:.5rem}.users-kpi-value{font-size:1.25rem}.users-kpi-note{display:none}.users-filters{padding:1rem}.users-filter-grid{grid-template-columns:1fr 1fr;gap:.75rem}.users-filter-actions{flex-direction:row;grid-column:1/-1}.users-filter-actions .btn-primary,.users-filter-actions .btn-secondary{flex:1;justify-content:center}.users-table{min-width:520px}.users-table thead th,.users-table tbody td{padding:.65rem .8rem;font-size:.79rem}.users-form-layout,.users-edit-layout{grid-template-columns:1fr}.users-form-sidebar,.users-edit-sidebar{display:none}.users-form-header{flex-direction:column;gap:.75rem}.users-form-header .btn-secondary{text-align:center;width:100%}.users-form-body{padding:1rem}.users-form-grid{grid-template-columns:1fr}.users-form-actions{flex-direction:column}.users-form-actions .btn-primary,.users-form-actions .btn-secondary{justify-content:center;width:100%}.users-avatar-row{flex-direction:column}.users-danger-inner{flex-direction:column;gap:1rem}.users-danger-btn{justify-content:center;width:100%}}@media(min-width:768px)and (max-width:1199px){.users-filter-grid{grid-template-columns:2fr 1fr 1fr auto}.users-form-layout,.users-edit-layout{grid-template-columns:1fr 260px}}.profile-layout{grid-template-columns:1fr 290px;align-items:start;gap:1.5rem;animation:.35s both dashboardFadeIn;display:grid}.profile-left{gap:1.25rem;min-width:0;display:grid}.profile-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.profile-title{color:var(--text-primary);letter-spacing:-.02em;margin:0;font-size:1.75rem;font-weight:900}.profile-subtitle{color:var(--text-muted);margin-top:.3rem;font-size:.85rem}.profile-card{border:1px solid var(--border-default);border-radius:var(--radius);box-shadow:var(--shadow-xs);background:#fff;overflow:hidden}.profile-card-header{background:linear-gradient(135deg,#0f1e3d,#1e3a8a);border-bottom:1px solid #1e3a8a;align-items:center;gap:.85rem;padding:1rem 1.375rem;display:flex}.profile-card-header--teal{background:linear-gradient(135deg,#134e4a,#0f766e);border-bottom-color:#0f766e}.profile-card-icon{color:#fff;background:#ffffff26;border:1px solid #ffffff38;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.profile-card-icon svg{display:block}.profile-card-title{color:#fff;margin:0;font-size:.92rem;font-weight:800}.profile-card-subtitle{color:#ffffffa6;margin-top:.1rem;font-size:.76rem}.profile-card-body{gap:1.1rem;padding:1.375rem;display:grid}.profile-avatar-zone{align-items:center;gap:1.5rem;display:flex}.profile-avatar-current{flex-shrink:0;position:relative}.profile-avatar-img{object-fit:cover;border:3px solid #fff;border-radius:20px;width:88px;height:88px;display:block;box-shadow:0 8px 24px #1d4ed833}.profile-avatar-initials{color:#fff;letter-spacing:-.01em;background:linear-gradient(135deg,#1d4ed8,#60a5fa);border-radius:20px;justify-content:center;align-items:center;width:88px;height:88px;font-size:1.75rem;font-weight:900;display:flex;box-shadow:0 8px 24px #1d4ed840}.profile-avatar-badge{color:#fff;background:#1d4ed8;border:2px solid #fff;border-radius:8px;justify-content:center;align-items:center;width:26px;height:26px;display:flex;position:absolute;bottom:-4px;right:-4px;box-shadow:0 2px 8px #1d4ed859}.profile-avatar-badge svg{display:block}.profile-avatar-upload{flex:1;min-width:0}.profile-upload-label{cursor:pointer;text-align:center;background:#f8faff;border:2px dashed #bfdbfe;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;padding:1.25rem 1rem;transition:all .2s;display:flex;position:relative}.profile-upload-label:hover{background:#eff6ff;border-color:#3b82f6}.profile-upload-icon{color:#1d4ed8;background:#dbeafe;border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;margin-bottom:.1rem;display:flex}.profile-upload-icon svg{display:block}.profile-upload-text{color:var(--text-primary);font-size:.85rem;font-weight:700}.profile-upload-hint{color:var(--text-muted);font-size:.75rem}.profile-upload-input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;top:0;right:0;bottom:0;left:0}.profile-form-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.profile-form-group{gap:.4rem;display:grid}.profile-field-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.1rem;font-size:.7rem;font-weight:700;display:block}.profile-field{border:1px solid var(--border-default);width:100%;color:var(--text-primary);transition:var(--transition);-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#fff;border-radius:10px;padding:.65rem .8rem;font-family:inherit;font-size:.875rem}.profile-field:hover{border-color:#cbd5e1}.profile-field:focus{outline-offset:0;border-color:#3b82f6;outline:2px solid #3b82f6}.profile-field-error{color:#dc2626;font-size:.78rem;font-weight:600}.profile-form-actions{border-top:1px solid var(--border-light);gap:.75rem;margin-top:.15rem;padding-top:.5rem;display:flex}.profile-sidebar{gap:1rem;display:grid;position:sticky;top:1.5rem}.profile-sidebar-card{border:1px solid var(--border-default);border-radius:var(--radius);box-shadow:var(--shadow-xs);background:#fff;padding:1.1rem 1.25rem}.profile-sidebar-identity{text-align:center;background:linear-gradient(160deg,#f8faff,#eff6ff);border-color:#dbeafe;flex-direction:column;align-items:center;gap:.6rem;padding:1.75rem 1.25rem;display:flex;position:relative;overflow:hidden}.profile-sidebar-identity:before{content:"";background:linear-gradient(90deg,#1d4ed8,#60a5fa);height:3px;position:absolute;top:0;left:0;right:0}.profile-identity-avatar{border:3px solid #fff;border-radius:20px;flex-shrink:0;width:80px;height:80px;overflow:hidden;box-shadow:0 8px 24px #1d4ed833}.profile-identity-img{object-fit:cover;width:100%;height:100%;display:block}.profile-identity-initials{color:#fff;background:linear-gradient(135deg,#1d4ed8,#60a5fa);justify-content:center;align-items:center;width:100%;height:100%;font-size:1.5rem;font-weight:900;display:flex}.profile-identity-name{color:var(--text-primary);letter-spacing:-.01em;margin:0;font-size:1rem;font-weight:800}.profile-identity-email{color:var(--text-muted);word-break:break-word;font-size:.77rem}.profile-sidebar-section-title{text-transform:uppercase;letter-spacing:.09em;color:var(--text-muted);margin-bottom:.85rem;font-size:.7rem;font-weight:800}.profile-sidebar-info-list{margin:0;padding:0;list-style:none}.profile-sidebar-info-list li{border-bottom:1px solid var(--border-light);justify-content:space-between;align-items:center;gap:.5rem;padding:.55rem 0;display:flex}.profile-sidebar-info-list li:last-child{border-bottom:none}.profile-sidebar-info-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.72rem;font-weight:700}.profile-sidebar-info-val{color:var(--text-primary);text-align:right;font-size:.82rem;font-weight:700}.profile-sidebar-tips{background:linear-gradient(160deg,#f8faff,#eff6ff);border-color:#dbeafe}.profile-sidebar-guide{gap:.8rem;margin:0;padding:0;list-style:none;display:grid}.profile-sidebar-guide li{align-items:flex-start;gap:.6rem;display:flex}.profile-sidebar-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px;margin-top:5px}.profile-sidebar-dot--blue{background:#3b82f6}.profile-sidebar-dot--green{background:#22c55e}.profile-sidebar-dot--amber{background:#f59e0b}.profile-sidebar-item-title{color:var(--text-primary);margin-bottom:.1rem;font-size:.8rem;font-weight:700}.profile-sidebar-item-text{color:var(--text-muted);font-size:.77rem;line-height:1.45}@media(max-width:767px){.profile-layout{grid-template-columns:1fr;gap:1rem}.profile-sidebar{display:none}.profile-header{flex-direction:column;gap:.75rem}.profile-header .btn-secondary{text-align:center;justify-content:center;width:100%}.profile-card-body{padding:1rem}.profile-avatar-zone{flex-direction:column;align-items:flex-start;gap:1rem}.profile-avatar-upload{width:100%}.profile-form-grid{grid-template-columns:1fr}.profile-form-actions{flex-direction:column}.profile-form-actions .btn-primary,.profile-form-actions .btn-secondary{justify-content:center;width:100%}}@media(min-width:768px)and (max-width:1199px){.profile-layout{grid-template-columns:1fr 260px}}.cats-page,.cats-form-page{gap:1.25rem;animation:.35s both dashboardFadeIn;display:grid}.cats-form-page{width:100%;max-width:760px;margin:0 auto}.cats-hero{border-radius:var(--radius);background:linear-gradient(135deg,#0f1e3d,#1e3a8a 55%,#1d4ed8);border:1px solid #3b82f6;padding:1.75rem 1.5rem;position:relative;overflow:hidden}.cats-hero:before{content:"";pointer-events:none;background-image:radial-gradient(circle,#ffffff26 1px,#0000 1px);background-size:22px 22px;position:absolute;top:0;right:0;bottom:0;left:0}.cats-hero:after{content:"";pointer-events:none;background:radial-gradient(circle,#ffffff2e,#0000 70%);border-radius:50%;width:240px;height:240px;position:absolute;top:-60px;right:-60px}.cats-hero-inner{z-index:1;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1.5rem;display:flex;position:relative}.cats-overline{letter-spacing:.12em;text-transform:uppercase;color:#93c5fd;margin-bottom:.25rem;font-size:.7rem;font-weight:700}.cats-title{color:#fff;letter-spacing:-.02em;margin:0;font-size:2rem;font-weight:900}.cats-subtitle{color:#ffffffbf;max-width:50ch;margin-top:.4rem;font-size:.85rem}.cats-btn-new{white-space:nowrap;font-weight:700;color:#1e3a8a!important;background:#fff!important}.cats-btn-new:hover{background:#eff6ff!important}.cats-kpi-grid{z-index:1;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-top:1.25rem;display:grid;position:relative}.cats-kpi-card{transition:var(--transition);background:#ffffff1c;border:1px solid #ffffff2e;border-radius:10px;padding:.9rem 1rem}.cats-kpi-card:hover{background:#ffffff2b}.cats-kpi-label{letter-spacing:.08em;text-transform:uppercase;color:#ffffff9e;margin-bottom:.3rem;font-size:.65rem;font-weight:700}.cats-kpi-value{color:#fff;font-size:1.6rem;font-weight:900;line-height:1}.cats-kpi-note{color:#ffffff80;margin-top:.25rem;font-size:.72rem}.cats-filters{border:1px solid var(--border-default);border-radius:var(--radius);box-shadow:var(--shadow-xs);background:#fff;padding:1.25rem 1.375rem}.cats-filters-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.cats-filters-title{color:var(--text-primary);margin:0;font-size:.95rem;font-weight:800}.cats-filters-subtitle{color:var(--text-muted);margin-top:.2rem;font-size:.79rem}.cats-filter-badge{color:#1e40af;white-space:nowrap;background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;align-items:center;padding:.25rem .7rem;font-size:.72rem;font-weight:700;display:inline-flex}.cats-filter-grid{grid-template-columns:2fr 1fr auto;align-items:end;gap:.85rem;display:grid}.cats-field-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.38rem;font-size:.7rem;font-weight:700;display:block}.cats-field{border:1px solid var(--border-default);width:100%;color:var(--text-primary);transition:var(--transition);-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#fff;border-radius:10px;padding:.65rem .8rem;font-size:.875rem}.cats-field:hover{border-color:#cbd5e1}.cats-field:focus{outline-offset:0;border-color:#3b82f6;outline:2px solid #3b82f6}.cats-filter-actions{gap:.5rem;display:flex}.cats-table-shell{border-radius:var(--radius);box-shadow:var(--shadow-xs);background:#fff;border:1px solid #e2e8f0;overflow:hidden}.cats-table-shell:before{content:"";border-radius:var(--radius) var(--radius) 0 0;background:linear-gradient(90deg,#1d4ed8,#60a5fa);height:3px;display:block}.cats-dataset-head{background:#f8fafc;border-bottom:1px solid #eef2f7;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1.25rem;display:flex}.cats-dataset-count{color:var(--text-secondary);font-size:.84rem;font-weight:600}.cats-dataset-chip{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;background:#fff;border:1px solid #e2e8f0;border-radius:999px;padding:.22rem .7rem;font-size:.7rem;font-weight:700}.cats-table{border-collapse:collapse;width:100%}.cats-table thead tr{background:#f8fafc;border-bottom:1px solid #e8edf4}.cats-table thead th{letter-spacing:.09em;text-transform:uppercase;color:#64748b;text-align:left;white-space:nowrap;padding:.9rem 1.25rem;font-size:.68rem;font-weight:800}.cats-table tbody td{color:var(--text-secondary);vertical-align:middle;border-bottom:1px solid #f1f5f9;padding:.9rem 1.25rem;font-size:.875rem}.cats-table tbody tr:last-child td{border-bottom:none}.cats-table tbody tr{transition:background-color .14s}.cats-table tbody tr:hover{background:#f8fafc}.cats-table tbody tr:nth-child(2n){background:#fafbfc}.cats-table tbody tr:nth-child(2n):hover{background:#f1f5f9}.cats-name{color:#0d1829;font-size:.9rem;font-weight:700}.cats-icon-img{object-fit:contain;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;width:36px;height:36px;padding:3px;display:block}.cats-icon-chip{color:#1e40af;text-overflow:ellipsis;white-space:nowrap;background:#eff6ff;border:1px solid #bfdbfe;border-radius:6px;align-items:center;max-width:110px;padding:.22rem .55rem;font-size:.75rem;font-weight:600;display:inline-flex;overflow:hidden}.cats-icon-empty{color:#cbd5e1;font-size:1rem}.cats-count-badge{letter-spacing:.02em;border-radius:999px;justify-content:center;align-items:center;min-width:38px;padding:.24rem .7rem;font-size:.75rem;font-weight:800;display:inline-flex}.cats-count-badge--blue{color:#1e40af;background:#dbeafe}.cats-count-badge--navy{color:#1d4ed8;background:#eff6ff}.cats-actions{align-items:center;gap:.45rem;display:flex}.cats-btn-edit{color:#1e40af;transition:var(--transition);white-space:nowrap;letter-spacing:.01em;background:#eff6ff;border:1px solid #93c5fd;border-radius:7px;align-items:center;padding:.32rem .8rem;font-size:.75rem;font-weight:700;text-decoration:none;display:inline-flex}.cats-btn-edit:hover{color:#1e3a8a;background:#dbeafe;border-color:#60a5fa}.cats-btn-delete{color:#b91c1c;cursor:pointer;transition:var(--transition);white-space:nowrap;letter-spacing:.01em;background:#fff1f2;border:1px solid #fecaca;border-radius:7px;align-items:center;padding:.32rem .8rem;font-size:.75rem;font-weight:700;display:inline-flex}.cats-btn-delete:hover{color:#991b1b;background:#fee2e2;border-color:#fca5a5}.cats-empty-cell{padding:0!important}.cats-empty-state{text-align:center;flex-direction:column;align-items:center;gap:.6rem;padding:3.5rem 1.5rem;display:flex}.cats-empty-title{color:var(--text-primary);font-size:1rem;font-weight:800}.cats-empty-note{color:var(--text-muted);max-width:42ch;margin-bottom:.5rem;font-size:.84rem;line-height:1.55}.cats-pagination{justify-content:center;display:flex}.cats-form-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.cats-form-title{color:var(--text-primary);letter-spacing:-.02em;margin:0;font-size:1.75rem;font-weight:900}.cats-form-subtitle{color:var(--text-muted);margin-top:.3rem;font-size:.85rem}.cats-form-card{border:1px solid var(--border-default);border-radius:var(--radius);box-shadow:var(--shadow-xs);background:#fff;overflow:hidden}.cats-form-card:before{content:"";background:linear-gradient(90deg,#1d4ed8,#60a5fa);height:3px;display:block}.cats-form-card-body{gap:1.25rem;padding:1.5rem;display:grid}.cats-form-group{gap:.4rem;display:grid}.cats-field-error{color:#dc2626;font-size:.78rem;font-weight:600}.cats-field-hint{color:var(--text-muted);font-size:.75rem;line-height:1.45}.cats-form-actions{border-top:1px solid var(--border-light);gap:.75rem;margin-top:.25rem;padding-top:.5rem;display:flex}.cats-icon-preview-img{object-fit:contain;border:1px solid var(--border-default);background:#f8fafc;border-radius:10px;width:56px;height:56px;padding:4px}.cats-edit-stats{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.cats-edit-stat{border:1px solid var(--border-default);box-shadow:var(--shadow-xs);background:#fff;border-radius:12px;padding:1rem 1.1rem;position:relative;overflow:hidden}.cats-edit-stat:before{content:"";background:linear-gradient(90deg,#1d4ed8,#60a5fa);height:3px;position:absolute;top:0;left:0;right:0}.cats-edit-stat-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:.35rem;font-size:.68rem;font-weight:700}.cats-edit-stat-value{color:var(--text-primary);font-size:1.75rem;font-weight:900;line-height:1}.cats-danger-zone{border-radius:var(--radius);box-shadow:var(--shadow-xs);background:#fff;border:1px solid #fecaca;overflow:hidden}.cats-danger-zone:before{content:"";background:linear-gradient(90deg,#dc2626,#f87171);height:3px;display:block}.cats-danger-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem;padding:1.25rem 1.375rem;display:flex}.cats-danger-title{color:#b91c1c;margin:0;font-size:.92rem;font-weight:800}.cats-danger-text{color:#7f1d1d;margin-top:.3rem;font-size:.82rem}.cats-danger-btn{color:#fff;cursor:pointer;transition:var(--transition);white-space:nowrap;background:#dc2626;border:none;border-radius:10px;align-items:center;padding:.6rem 1.1rem;font-size:.875rem;font-weight:700;display:inline-flex}.cats-danger-btn:hover{background:#b91c1c;transform:translateY(-1px);box-shadow:0 4px 12px #b91c1c47}@media(max-width:639px){.cats-hero{padding:1.1rem 1rem}.cats-title{font-size:1.5rem}.cats-hero-inner{flex-direction:column;gap:.75rem}.cats-btn-new{justify-content:center;width:100%}.cats-kpi-grid{grid-template-columns:repeat(3,1fr);gap:.5rem}.cats-kpi-value{font-size:1.25rem}.cats-kpi-note{display:none}.cats-filters{padding:1rem}.cats-filter-grid{grid-template-columns:1fr}.cats-filter-actions{flex-direction:row}.cats-filter-actions .btn-primary,.cats-filter-actions .btn-secondary{text-align:center;flex:1;justify-content:center}.cats-table{min-width:480px}.cats-table thead th,.cats-table tbody td{padding:.7rem .85rem;font-size:.8rem}.cats-form-page{max-width:100%}.cats-form-header{flex-direction:column;gap:.75rem}.cats-form-header .btn-secondary{text-align:center;justify-content:center;width:100%}.cats-form-card-body{padding:1rem}.cats-form-actions{flex-direction:column}.cats-form-actions .btn-primary,.cats-form-actions .btn-secondary{text-align:center;justify-content:center;width:100%}.cats-edit-stats{grid-template-columns:1fr 1fr}.cats-edit-stat-value{font-size:1.4rem}.cats-danger-inner{flex-direction:column;gap:1rem}.cats-danger-btn{justify-content:center;width:100%}}@media(min-width:640px)and (max-width:1023px){.cats-filter-grid{grid-template-columns:1fr 1fr}.cats-filter-actions{flex-direction:row;grid-column:1/-1;justify-content:flex-end}.cats-form-page{max-width:100%}}.cats-edit-layout{grid-template-columns:1fr 320px;align-items:start;gap:1.5rem;animation:.35s both dashboardFadeIn;display:grid}.cats-edit-left{gap:1.25rem;min-width:0;display:grid}.cats-edit-sidebar{gap:1rem;display:grid;position:sticky;top:1.5rem}.cats-sidebar-card{border:1px solid var(--border-default);border-radius:var(--radius);box-shadow:var(--shadow-xs);background:#fff;padding:1.1rem 1.25rem}.cats-sidebar-info{text-align:center;background:linear-gradient(160deg,#f8faff,#eff6ff);border:1px solid #dbeafe;flex-direction:column;align-items:center;gap:.6rem;padding:1.5rem 1.25rem;display:flex}.cats-sidebar-icon-wrap{width:72px;height:72px;box-shadow:var(--shadow-sm);background:#fff;border:1px solid #e2e8f0;border-radius:16px;justify-content:center;align-items:center;display:flex;overflow:hidden}.cats-sidebar-icon-img{object-fit:contain;width:100%;height:100%;padding:8px}.cats-sidebar-icon-placeholder{color:#93c5fd;justify-content:center;align-items:center;width:100%;height:100%;display:flex}.cats-sidebar-name{color:var(--text-primary);letter-spacing:-.01em;margin:0;font-size:1rem;font-weight:800}.cats-sidebar-label{text-transform:uppercase;letter-spacing:.08em;color:#3b82f6;background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;padding:.18rem .6rem;font-size:.72rem;font-weight:700}.cats-sidebar-section-title{text-transform:uppercase;letter-spacing:.09em;color:var(--text-muted);margin-bottom:.85rem;font-size:.72rem;font-weight:800}.cats-sidebar-section-title--red{color:#b91c1c}.cats-sidebar-metrics{align-items:center;gap:0;display:flex}.cats-sidebar-metric{text-align:center;flex:1}.cats-sidebar-metric-val{color:var(--text-primary);letter-spacing:-.02em;font-size:1.75rem;font-weight:900;line-height:1}.cats-sidebar-metric-label{color:var(--text-muted);margin-top:.3rem;font-size:.72rem;font-weight:600}.cats-sidebar-metric-divider{background:var(--border-default);flex-shrink:0;width:1px;height:40px}.cats-sidebar-guide-list{gap:.85rem;margin:0;padding:0;list-style:none;display:grid}.cats-sidebar-guide-list li{align-items:flex-start;gap:.65rem;display:flex}.cats-sidebar-guide-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px;margin-top:5px}.cats-sidebar-guide-dot--blue{background:#3b82f6}.cats-sidebar-guide-item-title{color:var(--text-primary);margin-bottom:.15rem;font-size:.8rem;font-weight:700}.cats-sidebar-guide-item-text{color:var(--text-muted);font-size:.78rem;line-height:1.45}.cats-sidebar-danger-hint{background:#fff8f8;border-color:#fecaca}@media(min-width:768px)and (max-width:1199px){.cats-edit-layout{grid-template-columns:1fr 260px;gap:1.25rem}}@media(max-width:767px){.cats-edit-layout{grid-template-columns:1fr;gap:1rem}.cats-edit-sidebar{display:none}.cats-edit-left{gap:1rem}}.locs-page{gap:1.25rem;animation:.35s both dashboardFadeIn;display:grid}.locs-create-layout{grid-template-columns:1fr 300px;align-items:start;gap:1.5rem;animation:.35s both dashboardFadeIn;display:grid}.locs-create-left{gap:1.25rem;min-width:0;display:grid}.locs-hero{border-radius:var(--radius);background:linear-gradient(135deg,#0f1e3d,#1e3a8a 55%,#1d4ed8);border:1px solid #3b82f6;padding:1.75rem 1.5rem;position:relative;overflow:hidden}.locs-hero:before{content:"";pointer-events:none;background-image:radial-gradient(circle,#ffffff26 1px,#0000 1px);background-size:22px 22px;position:absolute;top:0;right:0;bottom:0;left:0}.locs-hero:after{content:"";pointer-events:none;background:radial-gradient(circle,#ffffff2e,#0000 70%);border-radius:50%;width:240px;height:240px;position:absolute;top:-60px;right:-60px}.locs-hero-inner{z-index:1;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1.5rem;display:flex;position:relative}.locs-overline{letter-spacing:.12em;text-transform:uppercase;color:#93c5fd;margin-bottom:.25rem;font-size:.7rem;font-weight:700}.locs-title{color:#fff;letter-spacing:-.02em;margin:0;font-size:2rem;font-weight:900}.locs-subtitle{color:#ffffffbf;max-width:52ch;margin-top:.4rem;font-size:.85rem}.locs-btn-new{white-space:nowrap;font-weight:700;color:#1e3a8a!important;background:#fff!important}.locs-btn-new:hover{background:#eff6ff!important}.locs-kpi-grid{z-index:1;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-top:1.25rem;display:grid;position:relative}.locs-kpi-card{transition:var(--transition);background:#ffffff1c;border:1px solid #ffffff2e;border-radius:10px;padding:.9rem 1rem}.locs-kpi-card:hover{background:#ffffff2b}.locs-kpi-label{letter-spacing:.08em;text-transform:uppercase;color:#ffffff9e;margin-bottom:.3rem;font-size:.65rem;font-weight:700}.locs-kpi-value{color:#fff;font-size:1.6rem;font-weight:900;line-height:1}.locs-kpi-note{color:#ffffff80;margin-top:.25rem;font-size:.72rem}.locs-filters{border:1px solid var(--border-default);border-radius:var(--radius);box-shadow:var(--shadow-xs);background:#fff;padding:1.25rem 1.375rem}.locs-filters-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.locs-filters-title{color:var(--text-primary);margin:0;font-size:.95rem;font-weight:800}.locs-filters-subtitle{color:var(--text-muted);margin-top:.2rem;font-size:.79rem}.locs-filter-badge{color:#1e40af;white-space:nowrap;background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;align-items:center;padding:.25rem .7rem;font-size:.72rem;font-weight:700;display:inline-flex}.locs-filter-grid{grid-template-columns:2fr 1fr 1fr 1fr 1fr auto;align-items:end;gap:.85rem;display:grid}.locs-field-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.38rem;font-size:.7rem;font-weight:700;display:block}.locs-field{border:1px solid var(--border-default);width:100%;color:var(--text-primary);transition:var(--transition);-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#fff;border-radius:10px;padding:.65rem .8rem;font-size:.875rem}.locs-field:hover{border-color:#cbd5e1}.locs-field:focus{outline-offset:0;border-color:#3b82f6;outline:2px solid #3b82f6}.locs-filter-actions{flex-direction:column;gap:.5rem;display:flex}.locs-filter-actions .btn-primary,.locs-filter-actions .btn-secondary{text-align:center;justify-content:center;width:100%}.locs-table-shell{border-radius:var(--radius);box-shadow:var(--shadow-xs);background:#fff;border:1px solid #e2e8f0;overflow:hidden}.locs-table-shell:before{content:"";border-radius:var(--radius) var(--radius) 0 0;background:linear-gradient(90deg,#1d4ed8,#60a5fa);height:3px;display:block}.locs-dataset-head{background:#f8fafc;border-bottom:1px solid #eef2f7;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1.25rem;display:flex}.locs-dataset-count{color:var(--text-secondary);font-size:.84rem;font-weight:600}.locs-dataset-chip{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;background:#fff;border:1px solid #e2e8f0;border-radius:999px;padding:.22rem .7rem;font-size:.7rem;font-weight:700}.locs-table{border-collapse:collapse;width:100%}.locs-table thead tr{background:#f8fafc;border-bottom:1px solid #e8edf4}.locs-table thead th{letter-spacing:.09em;text-transform:uppercase;color:#64748b;text-align:left;white-space:nowrap;padding:.9rem 1.1rem;font-size:.68rem;font-weight:800}.locs-table tbody td{color:var(--text-secondary);vertical-align:middle;border-bottom:1px solid #f1f5f9;padding:.88rem 1.1rem;font-size:.875rem}.locs-table tbody tr:last-child td{border-bottom:none}.locs-table tbody tr{transition:background-color .14s}.locs-table tbody tr:hover{background:#f8fafc}.locs-table tbody tr:nth-child(2n){background:#fafbfc}.locs-table tbody tr:nth-child(2n):hover{background:#f1f5f9}.locs-td-name{color:#0d1829;font-size:.9rem;font-weight:700}.locs-td-meta{color:var(--text-muted);font-size:.82rem}.locs-badge{letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;border-radius:999px;align-items:center;padding:.22rem .65rem;font-size:.69rem;font-weight:700;display:inline-flex}.locs-badge--qr-pending{color:#475569;background:#f1f5f9}.locs-badge--qr-processing{color:#92400e;background:#fef3c7}.locs-badge--qr-ready{color:#166534;background:#dcfce7}.locs-badge--qr-failed{color:#991b1b;background:#fee2e2}.locs-badge--active{color:#166534;background:#dcfce7}.locs-badge--inactive{color:#64748b;background:#f1f5f9}.locs-actions{align-items:center;gap:.45rem;display:flex}.locs-btn-edit{color:#1e40af;transition:var(--transition);white-space:nowrap;background:#eff6ff;border:1px solid #93c5fd;border-radius:7px;align-items:center;padding:.32rem .8rem;font-size:.75rem;font-weight:700;text-decoration:none;display:inline-flex}.locs-btn-edit:hover{background:#dbeafe;border-color:#60a5fa}.locs-btn-delete{color:#b91c1c;cursor:pointer;transition:var(--transition);white-space:nowrap;background:#fff1f2;border:1px solid #fecaca;border-radius:7px;align-items:center;padding:.32rem .8rem;font-size:.75rem;font-weight:700;display:inline-flex}.locs-btn-delete:hover{background:#fee2e2;border-color:#fca5a5}.locs-empty-cell{padding:0!important}.locs-empty-state{text-align:center;flex-direction:column;align-items:center;gap:.6rem;padding:3.5rem 1.5rem;display:flex}.locs-empty-title{color:var(--text-primary);font-size:1rem;font-weight:800}.locs-empty-note{color:var(--text-muted);max-width:44ch;margin-bottom:.5rem;font-size:.84rem;line-height:1.55}.locs-pagination{justify-content:center;display:flex}.locs-form-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.locs-form-title{color:var(--text-primary);letter-spacing:-.02em;margin:0;font-size:1.75rem;font-weight:900}.locs-form-subtitle{color:var(--text-muted);margin-top:.3rem;font-size:.85rem}.locs-form-card{border:1px solid var(--border-default);border-radius:var(--radius);box-shadow:var(--shadow-xs);background:#fff;overflow:hidden}.locs-form-card:before{content:"";background:linear-gradient(90deg,#1d4ed8,#60a5fa);height:3px;display:block}.locs-form-card-body{gap:1.25rem;padding:1.5rem;display:grid}.locs-form-group{gap:.4rem;display:grid}.locs-form-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.locs-field-error{color:#dc2626;font-size:.78rem;font-weight:600}.locs-field-hint{color:var(--text-muted);font-size:.75rem;line-height:1.45}.locs-form-actions{border-top:1px solid var(--border-light);gap:.75rem;margin-top:.25rem;padding-top:.5rem;display:flex}.locs-toggle-wrap{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.65rem;display:inline-flex}.locs-toggle-input{opacity:0;width:0;height:0;position:absolute}.locs-toggle-track{background:#cbd5e1;border-radius:999px;flex-shrink:0;width:42px;height:24px;transition:background .2s;position:relative}.locs-toggle-input:checked+.locs-toggle-track{background:#1d4ed8}.locs-toggle-thumb{background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0003}.locs-toggle-input:checked+.locs-toggle-track .locs-toggle-thumb{transform:translate(18px)}.locs-toggle-label{color:var(--text-secondary);font-size:.875rem;font-weight:600}.locs-create-sidebar{gap:1rem;display:grid;position:sticky;top:1.5rem}.locs-sidebar-card{border:1px solid var(--border-default);border-radius:var(--radius);box-shadow:var(--shadow-xs);background:#fff;padding:1.1rem 1.25rem}.locs-sidebar-hero-card{text-align:center;background:linear-gradient(160deg,#f8faff,#eff6ff);border-color:#dbeafe;flex-direction:column;align-items:center;gap:.65rem;padding:1.5rem 1.25rem;display:flex}.locs-sidebar-icon-wrap{color:#fff;background:linear-gradient(135deg,#1d4ed8,#3b82f6);border-radius:16px;justify-content:center;align-items:center;width:68px;height:68px;display:flex;box-shadow:0 8px 20px #1d4ed847}.locs-sidebar-title{color:var(--text-primary);margin:0;font-size:.95rem;font-weight:800}.locs-sidebar-subtitle{color:var(--text-muted);font-size:.78rem;line-height:1.5}.locs-sidebar-guide-list{gap:.8rem;margin:0;padding:0;list-style:none;display:grid}.locs-sidebar-guide-list li{align-items:flex-start;gap:.6rem;display:flex}.locs-sidebar-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px;margin-top:5px}.locs-sidebar-dot--blue{background:#3b82f6}.locs-sidebar-dot--pending{background:#94a3b8}.locs-sidebar-dot--processing{background:#f59e0b}.locs-sidebar-dot--ready{background:#22c55e}.locs-sidebar-dot--failed{background:#ef4444}.locs-sidebar-item-title{color:var(--text-primary);margin-bottom:.1rem;font-size:.8rem;font-weight:700}.locs-sidebar-tips{background:linear-gradient(160deg,#f0fdf4,#dcfce7);border-color:#bbf7d0}@media(max-width:639px){.locs-hero{padding:1.1rem 1rem}.locs-title{font-size:1.5rem}.locs-hero-inner{flex-direction:column;gap:.75rem}.locs-btn-new{justify-content:center;width:100%}.locs-kpi-grid{grid-template-columns:repeat(3,1fr);gap:.5rem}.locs-kpi-value{font-size:1.25rem}.locs-kpi-note{display:none}.locs-filters{padding:1rem}.locs-filter-grid{grid-template-columns:1fr 1fr;gap:.75rem}.locs-filter-actions{flex-direction:row;grid-column:1/-1}.locs-filter-actions .btn-primary,.locs-filter-actions .btn-secondary{text-align:center;flex:1;justify-content:center}.locs-table{min-width:600px}.locs-table thead th,.locs-table tbody td{padding:.65rem .8rem;font-size:.79rem}.locs-create-layout{grid-template-columns:1fr}.locs-create-sidebar{display:none}.locs-form-header{flex-direction:column;gap:.75rem}.locs-form-header .btn-secondary{text-align:center;width:100%}.locs-form-card-body{padding:1rem}.locs-form-grid{grid-template-columns:1fr}.locs-form-actions{flex-direction:column}.locs-form-actions .btn-primary,.locs-form-actions .btn-secondary{text-align:center;justify-content:center;width:100%}}@media(min-width:640px)and (max-width:1199px){.locs-filter-grid{grid-template-columns:repeat(3,1fr);gap:.85rem}.locs-filter-actions{flex-direction:row;grid-column:1/-1;justify-content:flex-end}.locs-filter-actions .btn-primary,.locs-filter-actions .btn-secondary{min-width:110px}.locs-create-layout{grid-template-columns:1fr 260px}}@media(min-width:1200px){.locs-filter-grid{grid-template-columns:2fr 1fr 1fr 1fr 1fr auto}}.locs-edit-layout{grid-template-columns:1fr 300px;align-items:start;gap:1.5rem;animation:.35s both dashboardFadeIn;display:grid}.locs-edit-left{gap:1.25rem;min-width:0;display:grid}.locs-edit-form-header{background:linear-gradient(135deg,#0f1e3d,#1e3a8a);border-bottom:1px solid #1e3a8a;align-items:center;gap:.85rem;padding:1.1rem 1.375rem;display:flex}.locs-edit-form-icon{color:#fff;background:#ffffff26;border:1px solid #ffffff40;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.locs-edit-form-title{color:#fff;margin:0;font-size:.95rem;font-weight:800}.locs-edit-form-subtitle{color:#ffffffa6;margin-top:.1rem;font-size:.78rem}.locs-qr-section{border-radius:var(--radius);box-shadow:var(--shadow-xs);background:#fff;border:1px solid #e2e8f0;overflow:hidden}.locs-qr-header{background:linear-gradient(135deg,#0f1e3d,#1e3a8a);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.375rem;display:flex}.locs-qr-header-left{align-items:center;gap:.75rem;display:flex}.locs-qr-icon{color:#fff;background:#ffffff26;border:1px solid #fff3;border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.locs-qr-title{color:#fff;margin:0;font-size:.95rem;font-weight:800}.locs-qr-subtitle{color:#ffffffa6;margin-top:.1rem;font-size:.75rem}.locs-badge--lg{padding:.32rem .9rem!important;font-size:.75rem!important;font-weight:800!important}.locs-qr-header .locs-badge--qr-ready{color:#166534;background:#dcfce7;border:none}.locs-qr-header .locs-badge--qr-processing{color:#92400e;background:#fef3c7;border:none}.locs-qr-header .locs-badge--qr-failed{color:#991b1b;background:#fee2e2;border:none}.locs-qr-header .locs-badge--qr-pending{color:#475569;background:#f1f5f9;border:none}.locs-qr-grid{border-bottom:1px solid #f1f5f9;grid-template-columns:repeat(4,1fr);display:grid}.locs-qr-stat{border-right:1px solid #f1f5f9;padding:1rem 1.1rem;transition:background .14s}.locs-qr-stat:last-child{border-right:none}.locs-qr-stat:hover{background:#f8fafc}.locs-qr-stat-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:.4rem;font-size:.65rem;font-weight:700}.locs-qr-stat-val{color:var(--text-primary);font-size:.9rem;font-weight:700;line-height:1.3}.locs-qr-token{word-break:break-all;font-family:monospace;line-height:1.4;color:var(--text-muted)!important;font-size:.72rem!important}.locs-qr-stat-val--blue{color:#1d4ed8;letter-spacing:-.02em;font-size:1.5rem!important;font-weight:900!important}.locs-qr-error{color:#b91c1c;background:#fff1f2;border:1px solid #fecaca;border-radius:8px;align-items:center;gap:.5rem;margin:.75rem 1.1rem 0;padding:.6rem .85rem;display:flex}.locs-qr-error-text{font-size:.8rem;font-weight:600}.locs-qr-actions{background:#f8fafc;border-top:1px solid #f1f5f9;flex-wrap:wrap;gap:.65rem;padding:1rem 1.1rem;display:flex}.locs-qr-btn-view{color:#1e40af;transition:var(--transition);background:#eff6ff;border:1px solid #93c5fd;border-radius:9px;align-items:center;gap:.4rem;padding:.5rem 1rem;font-size:.82rem;font-weight:700;text-decoration:none;display:inline-flex}.locs-qr-btn-view:hover{background:#dbeafe;border-color:#60a5fa;transform:translateY(-1px)}.locs-qr-btn-regen{color:#166534;cursor:pointer;transition:var(--transition);background:#f0fdf4;border:1px solid #86efac;border-radius:9px;align-items:center;gap:.4rem;padding:.5rem 1rem;font-size:.82rem;font-weight:700;display:inline-flex}.locs-qr-btn-regen:hover{background:#dcfce7;border-color:#4ade80;transform:translateY(-1px)}.locs-danger-zone{border-radius:var(--radius);box-shadow:var(--shadow-xs);background:#fff;border:1px solid #fecaca;overflow:hidden}.locs-danger-zone:before{content:"";background:linear-gradient(90deg,#dc2626,#f87171);height:3px;display:block}.locs-danger-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem;padding:1.25rem 1.375rem;display:flex}.locs-danger-title{color:#b91c1c;margin:0;font-size:.92rem;font-weight:800}.locs-danger-text{color:#7f1d1d;max-width:48ch;margin-top:.3rem;font-size:.82rem}.locs-danger-btn{color:#fff;cursor:pointer;transition:var(--transition);white-space:nowrap;background:#dc2626;border:none;border-radius:10px;align-items:center;padding:.6rem 1.1rem;font-size:.875rem;font-weight:700;display:inline-flex}.locs-danger-btn:hover{background:#b91c1c;transform:translateY(-1px);box-shadow:0 4px 12px #b91c1c47}.locs-edit-sidebar{gap:1rem;display:grid;position:sticky;top:1.5rem}.locs-sidebar-preview{text-align:center;background:linear-gradient(160deg,#f8faff,#eff6ff);border-color:#dbeafe;flex-direction:column;align-items:center;gap:.6rem;padding:1.5rem 1.25rem;display:flex}.locs-sidebar-preview-icon{color:#fff;background:linear-gradient(135deg,#1d4ed8,#3b82f6);border-radius:16px;justify-content:center;align-items:center;width:68px;height:68px;display:flex;box-shadow:0 8px 20px #1d4ed847}.locs-sidebar-name{color:var(--text-primary);margin:0;font-size:1rem;font-weight:800}.locs-sidebar-code{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe;border-radius:6px;padding:.2rem .6rem;font-family:monospace;font-size:.76rem;font-weight:700}.locs-sidebar-metrics{align-items:center;display:flex}.locs-sidebar-metric{text-align:center;flex:1}.locs-sidebar-metric-val{color:var(--text-primary);letter-spacing:-.02em;font-size:1.75rem;font-weight:900;line-height:1}.locs-sidebar-metric-label{color:var(--text-muted);margin-top:.3rem;font-size:.72rem;font-weight:600}.locs-sidebar-metric-divider{background:var(--border-default);flex-shrink:0;width:1px;height:40px}.locs-sidebar-qr{background:#f8fafc}.locs-sidebar-qr-status{align-items:center;gap:.65rem;margin-bottom:.85rem;display:flex}.locs-sidebar-qr-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.locs-sidebar-qr-dot--pending{background:#94a3b8}.locs-sidebar-qr-dot--processing{background:#f59e0b;box-shadow:0 0 6px #f59e0b80}.locs-sidebar-qr-dot--ready{background:#22c55e;box-shadow:0 0 6px #22c55e80}.locs-sidebar-qr-dot--failed{background:#ef4444;box-shadow:0 0 6px #ef444480}.locs-sidebar-qr-label{color:var(--text-primary);font-size:.85rem;font-weight:700}.locs-sidebar-qr-preview{border-top:1px solid var(--border-default);margin-top:.75rem;padding-top:.75rem}.locs-sidebar-qr-img{border:1px solid var(--border-default);border-radius:8px;width:100%;display:block}.locs-sidebar-qr-empty{border-top:1px solid var(--border-default);flex-direction:column;align-items:center;gap:.4rem;margin-top:.75rem;padding:1rem 0;display:flex}.locs-sidebar-info-list{gap:0;margin:0;padding:0;list-style:none;display:grid}.locs-sidebar-info-list li{border-bottom:1px solid var(--border-light);justify-content:space-between;align-items:center;gap:.5rem;padding:.6rem 0;display:flex}.locs-sidebar-info-list li:last-child{border-bottom:none}.locs-sidebar-info-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.72rem;font-weight:700}.locs-sidebar-info-val{color:var(--text-primary);text-align:right;font-size:.82rem;font-weight:700}.locs-sidebar-item-text{color:var(--text-muted);font-size:.77rem;line-height:1.45}.locs-sidebar-section-title{text-transform:uppercase;letter-spacing:.09em;color:var(--text-muted);margin-bottom:.85rem;font-size:.7rem;font-weight:800}@media(max-width:767px){.locs-edit-layout{grid-template-columns:1fr;gap:1rem}.locs-edit-sidebar{display:none}.locs-qr-grid{grid-template-columns:repeat(2,1fr)}.locs-qr-stat{border-bottom:1px solid #f1f5f9}.locs-qr-stat:nth-child(odd){border-right:1px solid #f1f5f9}.locs-danger-inner{flex-direction:column;gap:1rem}.locs-danger-btn{justify-content:center;width:100%}}@media(min-width:768px)and (max-width:1199px){.locs-edit-layout{grid-template-columns:1fr 260px}.locs-qr-grid{grid-template-columns:repeat(2,1fr)}}@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-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-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}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}
