@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-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;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-serif:ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-red-50:oklch(97.1% .013 17.38);--color-red-200:oklch(88.5% .062 18.334);--color-red-700:oklch(50.5% .213 27.518);--color-red-800:oklch(44.4% .177 26.899);--color-red-900:oklch(39.6% .141 25.723);--color-red-950:oklch(25.8% .092 26.042);--color-yellow-300:oklch(90.5% .182 98.111);--color-yellow-400:oklch(85.2% .199 91.936);--color-slate-100:oklch(96.8% .007 247.896);--color-slate-800:oklch(27.9% .041 260.031);--color-white:#fff;--spacing:.25rem;--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-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height: 1.2 ;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--tracking-wide:.025em;--tracking-wider:.05em;--leading-tight:1.25;--leading-snug:1.375;--radius-xs:.125rem;--radius-sm:.25rem;--radius-md:.375rem;--ease-in-out:cubic-bezier(.4, 0, .2, 1);--blur-xs:4px;--blur-sm:8px;--aspect-video:16 / 9;--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,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{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:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{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}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.top-2{top:calc(var(--spacing) * 2)}.top-3{top:calc(var(--spacing) * 3)}.left-2{left:calc(var(--spacing) * 2)}.left-3{left:calc(var(--spacing) * 3)}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.mt-1{margin-top:var(--spacing)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mb-1{margin-bottom:var(--spacing)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-3{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.aspect-\[16\/9\]{aspect-ratio:16/9}.aspect-video{aspect-ratio:var(--aspect-video)}.h-6{height:calc(var(--spacing) * 6)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-11{height:calc(var(--spacing) * 11)}.h-12{height:calc(var(--spacing) * 12)}.h-16{height:calc(var(--spacing) * 16)}.h-full{height:100%}.w-6{width:calc(var(--spacing) * 6)}.w-10{width:calc(var(--spacing) * 10)}.w-16{width:calc(var(--spacing) * 16)}.w-24{width:calc(var(--spacing) * 24)}.w-full{width:100%}.max-w-\[160px\]{max-width:160px}.max-w-\[180px\]{max-width:180px}.min-w-0{min-width:0}.shrink-0{flex-shrink:0}.caption-bottom{caption-side:bottom}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-not-allowed{cursor:not-allowed}.resize{resize:both}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-center{justify-content:center}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}: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)))}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.rounded{border-radius:.25rem}.rounded-\[var\(--radius-md\,4px\)\]{border-radius:var(--radius-md,4px)}.rounded-md{border-radius:var(--radius-md)}.rounded-none{border-radius:0}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-\[3px\]{border-bottom-style:var(--tw-border-style);border-bottom-width:3px}.border-red-200{border-color:var(--color-red-200)}.bg-red-50{background-color:var(--color-red-50)}.bg-red-700\/95{background-color:#bf000ff2}@supports (color:color-mix(in lab,red,red)){.bg-red-700\/95{background-color:color-mix(in oklab,var(--color-red-700) 95%,transparent)}}.bg-red-800\/90{background-color:#9f0712e6}@supports (color:color-mix(in lab,red,red)){.bg-red-800\/90{background-color:color-mix(in oklab,var(--color-red-800) 90%,transparent)}}.bg-slate-100{background-color:var(--color-slate-100)}.bg-gradient-to-br{--tw-gradient-position:to bottom right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-red-800{--tw-gradient-from:var(--color-red-800);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-red-900{--tw-gradient-to:var(--color-red-900);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-red-950{--tw-gradient-to:var(--color-red-950);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.object-cover{object-fit:cover}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-8{padding-inline:calc(var(--spacing) * 8)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.text-center{text-align:center}.text-left{text-align:left}.align-middle{vertical-align:middle}.font-serif{font-family:var(--font-serif)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.leading-none{--tw-leading:1;line-height:1}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.whitespace-nowrap{white-space:nowrap}.text-red-700{color:var(--color-red-700)}.text-red-800{color:var(--color-red-800)}.text-white{color:var(--color-white)}.text-white\/80{color:#fffc}@supports (color:color-mix(in lab,red,red)){.text-white\/80{color:color-mix(in oklab,var(--color-white) 80%,transparent)}}.text-yellow-300{color:var(--color-yellow-300)}.text-yellow-400\/80{color:#fac800cc}@supports (color:color-mix(in lab,red,red)){.text-yellow-400\/80{color:color-mix(in oklab,var(--color-yellow-400) 80%,transparent)}}.uppercase{text-transform:uppercase}.italic{font-style:italic}.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.shadow{--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)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.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-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.backdrop-blur-xs{--tw-backdrop-blur:blur(var(--blur-xs));-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-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.outline-none{--tw-outline-style:none;outline-style:none}@media(hover:hover){.group-hover\:scale-105:is(:where(.group):hover *){--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}}.peer-disabled\:cursor-not-allowed:is(:where(.peer):disabled~*){cursor:not-allowed}.peer-disabled\:opacity-70:is(:where(.peer):disabled~*){opacity:.7}.file\:border-0::file-selector-button{border-style:var(--tw-border-style);border-width:0}.file\:bg-transparent::file-selector-button{background-color:#0000}.file\:text-sm::file-selector-button{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.file\:font-medium::file-selector-button{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.last\:border-0:last-child{border-style:var(--tw-border-style);border-width:0}@media(hover:hover){.hover\:text-red-700:hover{color:var(--color-red-700)}.hover\:underline:hover{text-decoration-line:underline}}.focus-visible\:underline:focus-visible{text-decoration-line:underline}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus-visible\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}@media(min-width:40rem){.sm\:block{display:block}.sm\:text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.sm\:text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}}@media(min-width:48rem){.md\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}@media(prefers-color-scheme:dark){.dark\:bg-slate-800{background-color:var(--color-slate-800)}}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-4 svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_tr\]\:border-b tr{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.\[\&_tr\:last-child\]\:border-0 tr:last-child{border-style:var(--tw-border-style);border-width:0}.\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]){padding-right:0}.\[\&\>tr\]\:last\:border-b-0>tr:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}}:root{--background:#f8fafc;--foreground:#0f172a}body{background-color:var(--background);color:var(--foreground);-webkit-font-smoothing:antialiased;margin:0;padding:0;font-family:Segoe UI,Noto Sans,DejaVu Sans,system-ui,sans-serif}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-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}@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}:root{--bg: #fdf9f9;--surface: #fff;--surface-low: #f8eeee;--surface-mid: #f6e2e2;--text: #1c1917;--muted: #6b7280;--primary: #991b1b;--primary-2: #c8102e;--primary-dark: #7f1d1d;--accent: #d97706;--accent-2: #f59e0b;--gold: #ffd700;--border: #fecaca;--success: #087443;--warning: #8a5600;--danger: #ba1a1a;--sidebar: 260px;--header: 64px;--font-primary: var(--font-inter), "Inter", "Inter-Medium", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--text-xs: 11.2px;--text-sm: 12px;--text-md: 13px;--text-lg: 14px;--text-xl: 16px;--text-2xl: 20px;--space-1: 1px;--space-2: 2px;--space-3: 3px;--space-4: 5px;--space-5: 6px;--space-6: 8px;--space-7: 10px;--space-8: 15px;--radius-xs: 4px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-2xl: 24px;--radius-3xl: 32px;--radius-full: 9999px;--shadow-1: rgb(240, 213, 213) 0px 0px 0px 1px inset;--shadow-2: rgba(153, 27, 27, .25) 0px 4px 12px 0px, rgba(0, 0, 0, .08) 0px 2px 4px 0px;--shadow-3: rgba(127, 29, 29, .12) -2px 0px 5px 0px;--motion-instant: .15s;--motion-fast: .2s;--motion-normal: .3s}*{box-sizing:border-box}.login-otp{position:relative;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-top:10px}.login-otp-input{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;width:100%;height:100%;opacity:0;cursor:text;font-size:16px}.login-otp-cell{display:grid;place-items:center;aspect-ratio:1;border:1px solid #cbd5e1;border-radius:var(--radius-sm);background:var(--surface);font-size:24px;font-weight:700;font-variant-numeric:tabular-nums}.login-otp:focus-within .login-otp-cell[data-active=true]{border-color:var(--primary);outline:3px solid var(--surface-mid);outline-offset:1px}.login-otp[data-invalid=true] .login-otp-cell{border-color:var(--danger)}.login-otp-actions{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;margin-top:12px}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-primary);font-size:var(--text-lg)}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}.admin-shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar);z-index:40;display:flex;flex-direction:column;color:#fee2e2;background:linear-gradient(180deg,#7f1d1d,#991b1b 55%,#6e1113);border-right:1px solid #b91c1c;box-shadow:2px 0 10px #7f1d1d26}.sidebar-brand{height:var(--header);display:flex;align-items:center;gap:11px;padding:0 18px;border-bottom:1px solid rgba(255,255,255,.15);background:#0000001a}.sidebar-brand .mark{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:gold;color:#7f1d1d;font-weight:800;box-shadow:0 2px 6px #0003}.sidebar-brand strong{display:block;color:#fff}.sidebar-brand small{font-size:var(--text-xs);color:#fed7aa}.nav-section{padding:18px 12px 8px}.nav-caption{padding:0 10px 8px;color:#fca5a5;font-size:10px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.side-nav{display:grid;gap:4px}.side-nav a{min-height:42px;display:flex;align-items:center;gap:11px;padding:0 12px;color:#fff;border-radius:var(--radius-xs);font-weight:500;transition:all var(--motion-fast)}.side-nav a:hover,.side-nav a.active{color:#fff;background:#ffffff2e;font-weight:700}.side-nav a.active{border-left:3px solid #ffd700}.nav-icon{width:22px;text-align:center;font-size:var(--text-xl)}.sidebar-footer{margin-top:auto;padding:14px;border-top:1px solid rgba(255,255,255,.15);background:#0000001f}.user-mini{display:flex;align-items:center;gap:10px}.avatar{width:36px;height:36px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;background:#fef08a;color:#991b1b;font-weight:700}.user-mini strong{display:block;color:#fff;font-size:var(--text-sm)}.user-mini small{color:#fed7aa;font-size:var(--text-xs)}.topbar{position:fixed;top:0;right:0;left:var(--sidebar);height:var(--header);z-index:30;display:flex;align-items:center;gap:16px;padding:0 24px;background:#fffffff5;border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.menu-btn{display:none;border:0;background:transparent;font-size:22px}.topbar-title{font-size:var(--text-xl);font-weight:700}.topbar-actions{margin-left:auto;display:flex;align-items:center;gap:10px}.icon-btn{width:40px;height:40px;display:grid;place-items:center;border:1px solid var(--border);border-radius:var(--radius-xs);background:#fff;color:#52616a;cursor:pointer;transition:all var(--motion-fast)}.icon-btn:hover{background:var(--surface-low);color:var(--primary)}.icon-btn svg{width:18px;height:18px;stroke-width:1.8px}.role-select{height:40px;padding:0 10px;border:1px solid var(--border);border-radius:var(--radius-xs);background:#fff;color:var(--text)}.main{margin-left:var(--sidebar);padding:calc(var(--header) + 24px) 24px 40px}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:22px}.page-head h1{margin:0 0 6px;font-size:28px;line-height:36px}.page-head p{margin:0;color:var(--muted)}.page-actions{display:flex;gap:9px;flex-wrap:wrap}.btn{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 14px;border:1px solid transparent;border-radius:var(--radius-xs);font-weight:700;cursor:pointer;transition:all var(--motion-fast)}.btn-primary{color:#fff;background:var(--primary)}.btn-primary:hover{background:var(--primary-2)}.btn-secondary{color:#fff;background:var(--primary)}.btn-outline{color:var(--primary);background:#fff;border-color:#9eb5c0}.btn-ghost{color:var(--primary);background:var(--surface-low)}.btn-danger{color:#fff;background:var(--danger)}.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px}.kpi{padding:20px;background:#fff;border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-3)}.kpi-top{display:flex;align-items:center;justify-content:space-between}.kpi-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:10px;background:var(--surface-low);font-size:19px}.kpi strong{display:block;margin-top:15px;font-size:28px}.kpi small{color:var(--muted)}.trend{font-size:var(--text-sm);font-weight:700}.trend.up{color:var(--success)}.trend.down{color:var(--danger)}.content-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,.8fr);gap:16px}.card{background:#fff;border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-3)}.card-header{min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 18px;border-bottom:1px solid var(--border)}.card-header h2{margin:0;font-size:var(--text-xl)}.card-body{padding:18px}.chart{height:270px;display:flex;align-items:flex-end;gap:16px;padding:28px 16px 20px;border-left:1px solid #dce7ec;border-bottom:1px solid #dce7ec;background:linear-gradient(#fff,#fbfdfe)}.chart-col{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:8px;height:100%}.chart-bar{width:min(34px,75%);background:linear-gradient(180deg,var(--primary-2),#5d85db);border-radius:6px 6px 2px 2px}.chart-col small{color:var(--muted);font-size:var(--text-xs)}.activity-list{display:grid;gap:0}.activity{display:flex;gap:12px;padding:14px 0;border-bottom:1px solid #e7eef1}.activity:last-child{border-bottom:0}.activity-icon{width:34px;height:34px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;background:var(--surface-low)}.activity p{margin:0 0 4px}.activity small{color:var(--muted)}.table-card{overflow:hidden}.toolbar{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--border);flex-wrap:wrap}.toolbar .search{min-width:270px;flex:1}.input,.select,.textarea{min-height:40px;padding:0 11px;color:var(--text);background:#fff;border:1px solid #bfcfd6;border-radius:var(--radius-xs);outline:none;transition:all var(--motion-fast)}.textarea{width:100%;padding:10px 11px;resize:vertical}.input:focus,.select:focus,.textarea:focus{border-color:var(--primary-2);box-shadow:0 0 0 3px #0033991f}.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse;min-width:830px}.table th{padding:12px 14px;color:#52616a;background:#f7fbfd;border-bottom:1px solid var(--border);font-size:var(--text-xs);letter-spacing:.05em;text-align:left;text-transform:uppercase}.table td{padding:14px;border-bottom:1px solid #e7eef1;vertical-align:middle}.table tr:hover td{background:#fbfdfe}.person{display:flex;align-items:center;gap:10px}.person .avatar{width:34px;height:34px}.status{display:inline-flex;align-items:center;gap:6px;min-height:25px;padding:0 9px;border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:700;white-space:nowrap}.status:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.status.green{color:#087443;background:#dcf5e8}.status.blue{color:#17499e;background:#e3ebff}.status.orange{color:#8a4c00;background:#fff0d3}.status.red{color:#a31515;background:#ffe1df}.status.gray{color:#59636a;background:#edf1f3}.actions{display:flex;gap:6px}.action-btn{width:32px;height:32px;display:grid;place-items:center;border:1px solid var(--border);border-radius:7px;background:#fff;cursor:pointer;transition:all var(--motion-fast)}.pagination{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;color:var(--muted);font-size:var(--text-md)}.pages{display:flex;gap:5px}.page-btn{min-width:32px;height:32px;border:1px solid var(--border);border-radius:7px;background:#fff}.page-btn.active{color:#fff;background:var(--primary);border-color:var(--primary)}.form-card{padding:22px}.form-section{padding:0 0 24px;margin-bottom:24px;border-bottom:1px solid var(--border)}.form-section:last-child{margin:0;padding:0;border:0}.form-section h2{margin:0 0 5px;font-size:var(--text-xl)}.form-section>p{margin:0 0 18px;color:var(--muted)}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.form-group label{display:block;margin-bottom:7px;font-weight:600}.form-group small{display:block;margin-top:6px;color:var(--muted)}.form-group.full{grid-column:1/-1}.input,.select{width:100%}.check-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.check-card{display:flex;gap:9px;padding:13px;border:1px solid var(--border);border-radius:9px;background:#fff;transition:all var(--motion-fast) ease;cursor:pointer}.check-card:has(input:checked){border-color:var(--primary-2);background:#f4faff;box-shadow:0 0 0 1px var(--primary-2)}.conditional-box{margin-top:16px;padding:16px;background:#f8fcfe;border:1px dashed #a8c2ce;border-radius:10px}.repeat-list{display:grid;gap:9px}.repeat-row{display:grid;grid-template-columns:1.2fr 1fr 1fr auto;gap:9px}.tabs{display:flex;gap:5px;margin-bottom:16px;border-bottom:1px solid var(--border)}.tab{padding:10px 14px;border:0;border-bottom:3px solid transparent;background:transparent;color:var(--muted);font-weight:700;cursor:pointer}.tab.active{color:var(--primary);border-bottom-color:var(--accent)}.kanban{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;align-items:start}.kanban-col{padding:12px;background:#eaf6fb;border-radius:var(--radius-sm)}.kanban-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;font-weight:700}.kanban-card{padding:13px;margin-bottom:9px;background:#fff;border:1px solid var(--border);border-radius:9px}.kanban-card h4{margin:0 0 8px}.kanban-card p{margin:0;color:var(--muted);font-size:var(--text-sm)}.mini-tags{display:flex;gap:5px;flex-wrap:wrap;margin-top:10px}.tag{display:inline-flex;padding:4px 7px;border-radius:5px;background:var(--surface-low);color:var(--primary);font-size:10px;font-weight:700}.calendar{display:grid;grid-template-columns:repeat(7,1fr);border:1px solid var(--border);border-radius:10px;overflow:hidden}.calendar>div{min-height:110px;padding:8px;border-right:1px solid var(--border);border-bottom:1px solid var(--border);background:#fff}.calendar>div:nth-child(7n){border-right:0}.calendar .cal-head{min-height:auto;background:#edf7fb;color:#4f626b;font-weight:700;text-align:center}.day-num{font-size:var(--text-sm);color:var(--muted)}.cal-event{margin-top:7px;padding:5px 6px;border-left:3px solid var(--accent);border-radius:4px;background:#fff0eb;font-size:10px}.metric-row{display:grid;grid-template-columns:180px 1fr 70px;gap:12px;align-items:center;margin-bottom:14px}.metric-track{height:9px;background:#e4edf1;border-radius:99px;overflow:hidden}.metric-track i{display:block;height:100%;background:var(--primary-2);border-radius:inherit}.notice{display:flex;gap:10px;padding:13px 15px;margin-bottom:16px;border-radius:9px;background:#fff4de;border:1px solid #f1d69f;color:#744600}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:none;place-items:center;padding:20px;background:#0006}.modal-backdrop.show{display:grid}.modal{width:min(560px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:14px;box-shadow:0 24px 70px #0000003d}.modal-header,.modal-footer{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border)}.modal-footer{justify-content:flex-end;border-top:1px solid var(--border);border-bottom:0}.modal-body{padding:20px}.toast{position:fixed;right:24px;bottom:24px;z-index:150;padding:13px 17px;color:#fff;background:var(--primary);border-radius:var(--radius-xs);opacity:0;transform:translateY(20px);transition:all var(--motion-fast)}.toast.show{opacity:1;transform:none}.mobile-overlay{display:none}.empty{padding:44px;text-align:center;color:var(--muted)}@media(max-width:1150px){.kpi-grid{grid-template-columns:repeat(2,1fr)}.content-grid{grid-template-columns:1fr}.kanban{grid-template-columns:repeat(2,1fr)}}@media(max-width:850px){.sidebar{transform:translate(-100%);transition:.2s}.sidebar.open{transform:none}.topbar{left:0}.main{margin-left:0}.menu-btn{display:block}.mobile-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:35;background:#00000059}.mobile-overlay.show{display:block}.role-select{display:none}.form-grid,.check-grid{grid-template-columns:1fr}.repeat-row{grid-template-columns:1fr 1fr}.calendar{min-width:800px}.calendar-wrap{overflow:auto}}@media(max-width:600px){.main{padding:calc(var(--header) + 16px) 14px 30px}.topbar{padding:0 14px}.page-head{display:block}.page-actions{margin-top:14px}.kpi-grid,.kanban{grid-template-columns:1fr}.kpi{padding:16px}.repeat-row{grid-template-columns:1fr}.toolbar .search{min-width:100%}.topbar-title{font-size:15px}}.semester-badge{display:inline-flex;align-items:center;height:32px;padding:0 12px;border-radius:999px;background:#e6f6ff;color:var(--primary);font-size:12px;font-weight:700;letter-spacing:.02em}.header-clock{min-width:190px;display:flex;flex-direction:column;align-items:flex-end;justify-content:center;padding-right:14px;border-right:1px solid var(--border);font-variant-numeric:tabular-nums;line-height:1.15;white-space:nowrap}.header-clock strong{color:var(--text);font-size:16px;font-weight:800;letter-spacing:.01em}.header-clock span{margin-top:3px;color:var(--muted);font-size:10px;font-weight:500;letter-spacing:.02em}@media(max-width:760px){.semester-badge{display:none}.header-clock{min-width:auto}.header-clock span{display:none}}@media(max-width:480px){.topbar-title{display:none}.header-clock{margin-left:auto}}.btn-sm{min-height:30px;padding:0 10px;font-size:12px;border-radius:6px}.blog-content{line-height:1.8;font-size:16px}.blog-content h2{margin:28px 0 12px;font-size:22px;color:var(--primary)}.blog-content ul{padding-left:20px}.blog-content li{margin-bottom:8px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}@media(max-width:1150px){.grid-3{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.grid-3{grid-template-columns:1fr}}.table th{padding:10px 12px;font-size:11px;font-weight:700;white-space:nowrap}.table td{padding:10px 12px;font-size:13px;line-height:1.4}.col-toggle-wrap{position:relative;display:inline-block}.col-dropdown-menu{position:absolute;top:100%;right:0;z-index:50;display:none;min-width:200px;padding:8px 0;background:#fff;border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 24px #0000001f}.col-dropdown-menu.show{display:block}.col-dropdown-item{display:flex;align-items:center;gap:8px;padding:6px 14px;font-size:12px;cursor:pointer}.col-dropdown-item:hover{background:var(--surface-low)}.approval-card{padding:18px;margin-bottom:16px;background:#fff;border:1px solid var(--border);border-left:4px solid var(--warning);border-radius:10px}.approval-card.approved{border-left-color:var(--success)}.approval-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:12px 0;padding:12px;background:#f8fcfe;border-radius:8px;font-size:12px}.approval-grid div label{display:block;color:var(--muted);font-weight:600;margin-bottom:2px}.approval-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:12px}.att-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 7px;border-radius:4px;background:#eef7fc;color:var(--primary);font-size:11px;font-weight:600;margin-right:4px;margin-bottom:4px}.btc-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 7px;border-radius:4px;background:#fdf2e9;color:var(--accent);font-size:11px;font-weight:600;margin-right:4px;margin-bottom:4px}.breadcrumb-nav{font-size:13px;color:var(--muted);margin-bottom:16px;display:flex;align-items:center;gap:8px}.breadcrumb-nav a{color:var(--muted);text-decoration:none}.breadcrumb-nav span{color:var(--primary);font-weight:600}.modern-table-card{background:#fff;border:1px solid var(--border);border-radius:8px;box-shadow:0 2px 8px #00000005;overflow:hidden;padding:24px;margin-top:16px}.modern-table-card h2{margin:0 0 20px;font-size:20px;color:var(--text);font-weight:700}.filter-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:16px}.filter-group{display:flex;flex-direction:column;gap:6px}.filter-group label{font-size:13px;color:var(--muted);font-weight:500}.filter-group select,.filter-group input{height:38px;border:1px solid #e0e6ed;border-radius:6px;padding:0 12px;font-size:13px;color:var(--text);background:#fff;outline:none;transition:border-color .2s}.filter-group select:focus,.filter-group input:focus{border-color:var(--primary-2);box-shadow:0 0 0 3px #00339914}.search-row{display:flex;gap:16px;align-items:flex-end;margin-bottom:24px}.search-group{flex:1;display:flex;flex-direction:column;gap:6px;position:relative}.search-group label{font-size:13px;color:var(--muted);font-weight:500}.search-input-wrap{position:relative;display:flex;align-items:center}.search-input-wrap input{width:100%;height:38px;border:1px solid #e0e6ed;border-radius:6px;padding:0 36px 0 12px;font-size:13px;outline:none}.search-input-wrap .bx-search{position:absolute;right:12px;color:var(--primary-2);font-size:18px;cursor:pointer}.search-actions{display:flex;gap:12px}.btn-blue{background:var(--primary);color:#fff;border-color:var(--primary)}.btn-blue:hover{background:var(--primary-2);color:#fff;border-color:var(--primary-2)}.btn-outline-blue{background:#fff;color:var(--primary);border:1px solid var(--primary)}.btn-outline-blue:hover{background:var(--surface-low);color:var(--primary)}.modern-table-wrap{overflow-x:auto}.modern-table{width:100%;border-collapse:collapse;min-width:900px;margin-bottom:16px}.modern-table th{background:#f3f4f6;color:#374151;font-weight:600;font-size:12px;padding:12px 16px;text-align:left;border-bottom:1px solid #e5e7eb}.modern-table td{padding:14px 16px;font-size:13px;border-bottom:1px solid #f3f4f6;color:#111827;vertical-align:middle}.modern-table tr:nth-child(2n) td{background-color:#fafafa}.modern-table tr:hover td{background-color:#f1f5f9}.modern-pagination{display:flex;justify-content:space-between;align-items:center;padding-top:16px;font-size:13px;color:var(--muted)}.pagination-controls{display:flex;align-items:center;gap:12px}.pagination-controls select{height:30px;padding:0 8px;border:1px solid #e0e6ed;border-radius:4px;background:#fff;outline:none;margin:0 4px}.page-nav{display:flex;align-items:center;gap:4px}.page-nav button{width:28px;height:28px;display:grid;place-items:center;border:1px solid transparent;background:transparent;border-radius:4px;cursor:pointer;color:var(--text);font-weight:500}.page-nav button:hover{background:#f3f4f6}.page-nav button.active{background:var(--primary);color:#fff;border-radius:50%}.btn-grid-view{width:36px;height:36px;background:var(--primary);color:#fff;border-radius:50%;border:none;display:grid;place-items:center;cursor:pointer;box-shadow:0 2px 6px #0020684d;font-size:18px;margin-left:8px}.action-btn{display:flex;align-items:center;justify-content:center;color:#52616a}.action-btn:hover{background:var(--surface-low);color:var(--primary);border-color:var(--primary-2)}.action-btn svg{width:16px;height:16px;stroke-width:1.6px}.nav-group{position:relative;margin-bottom:2px}.nav-group-header{width:100%;min-height:42px;display:flex;align-items:center;gap:11px;padding:0 12px;margin-bottom:2px;color:#cce3ec;font-weight:500;text-align:left;background:transparent;border:0;border-radius:var(--radius-xs);cursor:pointer;transition:all var(--motion-fast);-webkit-user-select:none;user-select:none}.nav-group-header:hover{background:#d9f2ff14;color:#fff}.nav-group-header.active{background:#d9f2ff21;color:#fff}.nav-group-header .nav-icon{display:flex;width:20px}.nav-group-header .chevron{margin-left:auto;transition:transform .2s}.nav-group-header[aria-expanded=true] .chevron{transform:rotate(180deg)}.nav-sub-menu{display:flex;flex-direction:column;padding-left:12px;margin-bottom:4px;border-left:1px solid rgba(255,255,255,.1);margin-left:20px}.nav-sub-menu a{min-height:38px;padding:0 12px;font-size:13px;font-weight:400;color:#a4c1cf;background:transparent!important;box-shadow:none!important}.nav-sub-menu a:hover{color:#fff}.nav-sub-menu a.active{color:#fff;font-weight:500;background:#d9f2ff21!important}.nav-sub-menu a .nav-icon{display:flex;width:16px}.admin-shell{--sidebar-current: var(--sidebar)}.sidebar,.topbar,.main{transition-property:width,left,margin-left,transform;transition-duration:var(--motion-normal);transition-timing-function:cubic-bezier(.4,0,.2,1)}.topbar{left:var(--sidebar-current)}.main{margin-left:var(--sidebar-current)}.sidebar{width:var(--sidebar-current);overflow:visible}.sidebar-brand{overflow:hidden;white-space:nowrap}.brand-copy,.user-copy,.nav-label,.nav-caption,.sidebar-search input,.chevron{transition:opacity var(--motion-fast),visibility var(--motion-fast)}.sidebar-toggle{position:absolute;top:74px;right:-14px;z-index:3;width:28px;height:28px;display:grid;place-items:center;padding:0;color:var(--primary);background:#fff;border:1px solid #b8cbd4;border-radius:50%;box-shadow:0 4px 12px #00206829;cursor:pointer;transition:transform var(--motion-fast),background var(--motion-fast)}.sidebar-toggle:hover{background:var(--surface-low);transform:scale(1.06)}.sidebar-toggle:active{transform:scale(.96)}.sidebar-toggle:focus-visible,.side-nav a:focus-visible,.nav-group-header:focus-visible{outline:2px solid #fff;outline-offset:2px}.sidebar-toggle svg{width:16px;height:16px;stroke-width:2}.sidebar-search{position:relative;height:40px;display:flex;align-items:center;margin:16px 12px 4px;color:#b9d6e2}.sidebar-search svg{position:absolute;left:12px;width:18px;height:18px;pointer-events:none}.sidebar-search input{width:100%;height:40px;padding:0 12px 0 39px;color:#fff;background:#ffffff14;border:1px solid rgba(255,255,255,.14);border-radius:var(--radius-xs);outline:none}.sidebar-search input::placeholder{color:#9fc2cf}.sidebar-search input:focus{border-color:#ffffff80;box-shadow:0 0 0 3px #ffffff14}.sidebar-scroll{min-height:0;flex:1;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:rgba(217,242,255,.32) transparent}.sidebar-scroll::-webkit-scrollbar{width:6px}.sidebar-scroll::-webkit-scrollbar-track{background:transparent}.sidebar-scroll::-webkit-scrollbar-thumb{background:#d9f2ff47;border-radius:999px}.sidebar-scroll::-webkit-scrollbar-thumb:hover{background:#d9f2ff75}.sidebar.collapsed .sidebar-scroll{overflow:visible;scrollbar-gutter:auto}.side-nav a,.nav-group-header{position:relative;white-space:nowrap}.side-nav .nav-icon,.nav-group-header .nav-icon{display:grid;place-items:center;flex:0 0 22px}.side-nav .nav-icon svg,.nav-group-header .nav-icon svg{width:19px;height:19px;stroke-width:1.8}.side-nav a.active,.nav-group-header.active{box-shadow:inset 3px 0 #fff}.nav-flyout{position:absolute;left:calc(100% + 10px);top:50%;z-index:60;padding:9px 12px;color:#fff;background:var(--primary);border:1px solid rgba(255,255,255,.18);border-radius:8px;box-shadow:0 10px 28px #0020683d;font-size:13px;font-weight:700;line-height:1.25;opacity:0;visibility:hidden;pointer-events:none;transform:translate(5px,-50%);transition:opacity var(--motion-fast),transform var(--motion-fast),visibility var(--motion-fast)}.nav-flyout:before{content:"";position:absolute;left:-5px;top:50%;width:9px;height:9px;background:var(--primary);border-left:1px solid rgba(255,255,255,.18);border-bottom:1px solid rgba(255,255,255,.18);transform:translateY(-50%) rotate(45deg)}.nav-flyout:after{content:"";position:absolute;inset:0 auto 0 -10px;width:10px}.nav-flyout-group{top:0;transform:translate(5px);min-width:230px;display:flex;flex-direction:column;gap:4px;padding:10px;font-weight:500}.nav-flyout-group:before{top:18px;transform:rotate(45deg)}.nav-flyout-group strong{padding:4px 8px 8px;color:#fff;font-size:13px;font-weight:700;border-bottom:1px solid rgba(255,255,255,.16);margin-bottom:2px}.sidebar.collapsed .nav-flyout-group a,.nav-flyout-group a{min-height:38px;display:flex;align-items:center;gap:10px;justify-content:flex-start;padding:0 10px;color:#cce3ec;border-radius:6px;box-shadow:none;font-size:13px;font-weight:500}.sidebar.collapsed .nav-flyout-group a:hover,.nav-flyout-group a:hover{color:#fff;background:#ffffff24;box-shadow:none}.sidebar.collapsed .nav-flyout-group a.active,.nav-flyout-group a.active{color:#fff;background:#ffffff38;font-weight:700;box-shadow:none}.nav-flyout-group a .nav-icon{display:flex;align-items:center;justify-content:center;width:18px}.nav-empty{margin:8px 10px;color:#9fc2cf;font-size:12px;text-align:center}.admin-shell.sidebar-collapsed{--sidebar-current: 76px}.sidebar.collapsed .sidebar-brand{justify-content:center;padding:0}.sidebar.collapsed .mark{width:42px;height:42px;font-size:11px}.sidebar.collapsed .brand-copy,.sidebar.collapsed .user-copy,.sidebar.collapsed .nav-label,.sidebar.collapsed .nav-caption,.sidebar.collapsed .sidebar-search input,.sidebar.collapsed .chevron{position:absolute;opacity:0;visibility:hidden;pointer-events:none}.sidebar.collapsed .sidebar-search{justify-content:center;margin-inline:10px}.sidebar.collapsed .sidebar-search svg{position:static}.sidebar.collapsed .nav-section{padding:14px 10px 4px}.sidebar.collapsed .side-nav>a,.sidebar.collapsed .nav-group-header{justify-content:center;padding:0}.sidebar.collapsed .side-nav>a.active,.sidebar.collapsed .nav-group-header.active{box-shadow:inset 3px 0 #fff}.sidebar.collapsed .nav-group:hover .nav-flyout-group,.sidebar.collapsed .nav-group:focus-within .nav-flyout-group{opacity:1;visibility:visible;pointer-events:auto;transform:translate(0)}.sidebar.collapsed .side-nav>a:hover .nav-flyout,.sidebar.collapsed .side-nav>a:focus-visible .nav-flyout{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(-50%)}.sidebar.collapsed .sidebar-search:hover .nav-flyout{opacity:1;visibility:visible;transform:translateY(-50%)}.sidebar.collapsed .sidebar-footer{padding:14px 10px}.sidebar.collapsed .user-mini{justify-content:center}.sidebar.collapsed .avatar{width:38px;height:38px}@media(max-width:850px){.admin-shell,.admin-shell.sidebar-collapsed{--sidebar-current: 0px}.sidebar,.sidebar.collapsed{width:var(--sidebar);transform:translate(-100%)}.sidebar.open,.sidebar.collapsed.open{transform:none}.sidebar.collapsed .brand-copy,.sidebar.collapsed .user-copy,.sidebar.collapsed .nav-label,.sidebar.collapsed .nav-caption,.sidebar.collapsed .sidebar-search input,.sidebar.collapsed .chevron{position:static;opacity:1;visibility:visible;pointer-events:auto}.sidebar.collapsed .sidebar-brand{justify-content:flex-start;padding:0 18px}.sidebar.collapsed .sidebar-search{justify-content:flex-start;margin:16px 12px 4px}.sidebar.collapsed .sidebar-search svg{position:absolute}.sidebar.collapsed .nav-section{padding:18px 12px 8px}.sidebar.collapsed .side-nav a,.sidebar.collapsed .nav-group-header{justify-content:flex-start;padding:0 12px}.sidebar.collapsed .sidebar-footer{padding:14px}.sidebar.collapsed .user-mini{justify-content:flex-start}.sidebar-toggle,.nav-flyout{display:none}.mobile-overlay{padding:0;border:0}}@media(max-width:850px){.sidebar.collapsed .sidebar-scroll{overflow-x:hidden;overflow-y:auto;scrollbar-gutter:stable}}@media(prefers-reduced-motion:reduce){.sidebar,.topbar,.main,.sidebar-toggle,.nav-flyout,.brand-copy,.user-copy,.nav-label,.nav-caption,.sidebar-search input,.chevron{transition:none}}.event-wizard-page{max-width:1180px;margin:0 auto;padding-bottom:86px}.event-wizard-header{position:sticky;top:var(--header);z-index:25;display:grid;grid-template-columns:minmax(240px,.7fr) minmax(540px,1.3fr);align-items:center;gap:30px;margin:-8px -24px 28px;padding:15px 24px;background:#fffffff7;border-bottom:1px solid var(--border);box-shadow:0 10px 30px #0020680f;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.event-wizard-title{display:flex;align-items:center;gap:12px}.event-wizard-title .icon-back{width:40px;height:40px;display:grid;place-items:center;flex:0 0 auto;color:var(--primary);background:#fff;border:1px solid var(--border);border-radius:10px;cursor:pointer}.event-wizard-title .icon-back:hover{background:var(--surface-low)}.event-wizard-title svg{width:18px}.event-wizard-title span{display:block;margin-bottom:3px;color:var(--muted);font-size:11px;font-weight:700}.event-wizard-title h1{margin:0;color:var(--primary);font-size:20px;line-height:1.2}.wizard-steps{display:grid;grid-template-columns:repeat(3,1fr);margin:0;padding:0;list-style:none}.wizard-steps li{position:relative}.wizard-steps li:not(:last-child):after{content:"";position:absolute;top:15px;left:calc(50% + 18px);right:calc(-50% + 18px);height:2px;background:#dce6eb}.wizard-steps li.done:not(:last-child):after{background:var(--success)}.wizard-steps button{position:relative;z-index:1;width:100%;display:grid;justify-items:center;gap:6px;padding:0 4px;color:var(--muted);background:transparent;border:0;cursor:default}.wizard-steps button>span{width:32px;height:32px;display:grid;place-items:center;color:#687780;background:#fff;border:2px solid #c7d6dc;border-radius:50%;font-size:12px;font-weight:800}.wizard-steps button>span svg{width:15px}.wizard-steps strong{font-size:11px;line-height:1.3;text-align:center}.wizard-steps li.active button{color:var(--primary)}.wizard-steps li.active button>span{color:#fff;background:var(--primary);border-color:var(--primary);box-shadow:0 0 0 4px #0033991f}.wizard-steps li.done button{color:var(--success);cursor:pointer}.wizard-steps li.done button>span{color:#fff;background:var(--success);border-color:var(--success)}.wizard-canvas{max-width:960px;margin:0 auto}.wizard-context{display:grid;grid-template-columns:105px 1fr;gap:20px;align-items:start;margin-bottom:18px}.wizard-context>span{display:inline-flex;justify-content:center;padding:7px 10px;color:var(--primary);background:#e8f1ff;border-radius:999px;font-size:11px;font-weight:800}.wizard-context h2{margin:0 0 5px;font-size:24px;color:#17213a}.wizard-context p{margin:0;color:var(--muted);line-height:1.6}.wizard-section-stack{display:grid;gap:16px}.wizard-panel{padding:24px;background:#fff;border:1px solid var(--border);border-radius:14px;box-shadow:0 8px 26px #0020680d}.wizard-panel-head{display:flex;align-items:flex-start;gap:12px;margin-bottom:22px}.wizard-panel-head>span{width:34px;height:34px;display:grid;place-items:center;flex:0 0 auto;color:var(--primary);background:#e8f1ff;border-radius:9px;font-size:12px;font-weight:800}.wizard-panel-head>span svg{width:17px}.wizard-panel-head h3{margin:0 0 4px;font-size:16px}.wizard-panel-head p{margin:0;color:var(--muted);font-size:12px;line-height:1.5}.event-form-grid{gap:18px 20px}.event-form-grid .form-group label{font-size:12px}.form-group label span{color:var(--danger)}.form-group.has-error .input,.form-group.has-error .select,.form-group.has-error .textarea{border-color:var(--danger);box-shadow:0 0 0 3px #ba1a1a14}.form-group .field-error,.field-error{color:var(--danger);font-size:11px;font-weight:600}.field-error.standalone{margin:12px 0 0}.dynamic-fields-empty{padding:30px;color:var(--muted);background:#ffffff8c;border:1px dashed #aebfc7;border-radius:14px;text-align:center}.dynamic-fields-empty span{color:var(--text);font-weight:700}.dynamic-fields-empty p{margin:6px 0 0;font-size:12px}.dynamic-fields-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px dashed var(--border)}.dynamic-fields-title{font-size:13px;color:var(--text);letter-spacing:.2px}.dynamic-fields-add{margin-left:auto;display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;border:1px dashed var(--primary);background:var(--surface-low);color:var(--primary);cursor:pointer;transition:all var(--motion-fast)}.dynamic-fields-add:hover{background:var(--primary);color:#fff;border-style:solid;transform:rotate(90deg)}.dynamic-fields-add svg{width:14px;height:14px}.custom-field-group{position:relative}.custom-field-label{display:flex;align-items:center;justify-content:space-between;gap:8px}.custom-field-label label{flex:1 1 auto}.custom-field-actions{display:flex;gap:4px}.location-choice-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.location-choice-grid button{position:relative;min-height:130px;display:flex;flex-direction:column;align-items:flex-start;gap:7px;padding:18px 14px;color:var(--text);background:#fff;border:1px solid var(--border);border-radius:12px;text-align:left;cursor:pointer;transition:border-color var(--motion-fast),background var(--motion-fast),transform var(--motion-fast)}.location-choice-grid button:hover{border-color:#8ca8b5;transform:translateY(-1px)}.location-choice-grid button.selected{background:#edf5ff;border-color:var(--primary-2);box-shadow:inset 0 0 0 1px var(--primary-2)}.location-choice-grid button>span{width:22px;height:22px;display:grid;place-items:center;color:#fff;background:var(--primary);border-radius:6px}.location-choice-grid button>span:empty{background:#f1f5f7;border:1px solid #d5e0e5}.location-choice-grid svg{width:14px}.location-choice-grid strong{font-size:13px}.location-choice-grid small{color:var(--muted);font-size:11px;line-height:1.5}.committee-heading{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.committee-heading .wizard-panel-head{margin-bottom:18px}.committee-table-wrap,.detail-table-wrap{overflow:auto}.committee-table,.detail-table{width:100%;min-width:720px;border-collapse:collapse}.committee-table th,.detail-table th{padding:11px 13px;color:#56676f;background:#f4f8fa;border-bottom:1px solid var(--border);font-size:10px;letter-spacing:.06em;text-align:left;text-transform:uppercase}.committee-table td,.detail-table td{padding:14px 13px;border-bottom:1px solid #e7eef1;font-size:12px;line-height:1.55;vertical-align:middle}.committee-table tbody tr:last-child td,.detail-table tbody tr:last-child td{border-bottom:0}.committee-table td:first-child strong,.detail-table td:first-child strong{display:block}.committee-table td small,.detail-table td small{display:block;margin-top:2px;color:var(--muted);font-size:10px}.role-badge{display:inline-flex;padding:5px 8px;color:#31536a;background:#eaf3f7;border-radius:6px;font-size:10px;font-weight:700}.role-badge.leader{color:#754400;background:#fff0d3}.table-actions{display:flex;justify-content:flex-end;gap:6px}.committee-empty,.section-empty{padding:45px 20px;color:var(--muted);text-align:center}.committee-empty>span,.section-empty>svg{width:46px;height:46px;display:grid;place-items:center;margin:0 auto 12px;color:var(--primary);background:#e8f1ff;border-radius:14px}.committee-empty span svg{width:22px}.committee-empty h4,.section-empty h3{margin:0 0 5px;color:var(--text)}.committee-empty p,.section-empty p{margin:0 0 16px}.form-error-banner{margin-bottom:14px;padding:10px 13px;color:#8b1717;background:#fff0ef;border:1px solid #f5b9b5;border-radius:8px;font-size:12px;font-weight:600}.wizard-actions{position:fixed;right:24px;bottom:0;left:calc(var(--sidebar-current) + 24px);z-index:28;display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0;padding:13px 24px calc(13px + env(safe-area-inset-bottom));background:#fffffff7;border-top:1px solid var(--border);box-shadow:0 -12px 28px #00206812;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.wizard-actions>div{display:flex;gap:8px}.wizard-actions svg,.page-actions svg,.btn svg{width:16px;height:16px;stroke-width:1.8}.event-access-denied{max-width:560px;margin:60px auto;padding:44px 24px;text-align:center;background:#fff;border:1px solid var(--border);border-radius:14px}.event-access-denied>span{width:56px;height:56px;display:grid;place-items:center;margin:0 auto 14px;color:var(--primary);background:#e8f1ff;border-radius:15px}.event-access-denied h1{margin:0 0 8px}.event-access-denied p{margin:0 0 20px;color:var(--muted)}.event-detail-page,.attendance-manage-page{max-width:1220px;margin:0 auto}.event-detail-hero{padding:25px 28px;margin-bottom:20px;color:#fff;background:linear-gradient(130deg,#001f55,#00358c 75%,#174b91);border-radius:14px;box-shadow:0 16px 36px #00206829}.detail-breadcrumb{display:flex;align-items:center;gap:10px;margin-bottom:16px;color:var(--muted);font-size:11px;font-weight:700}.event-detail-hero .detail-breadcrumb{color:#c4d8ed}.detail-breadcrumb a{display:inline-flex;align-items:center;gap:6px}.detail-breadcrumb a:hover{color:var(--primary-2)}.event-detail-hero .detail-breadcrumb a:hover{color:#fff}.detail-breadcrumb svg{width:14px}.detail-breadcrumb span{padding-left:10px;border-left:1px solid currentColor}.detail-hero-row{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.detail-hero-row>div:first-child{max-width:780px}.detail-status-line{display:flex;align-items:center;gap:9px;margin-bottom:10px;color:#d9e6f4;font-size:11px;font-weight:700}.detail-status-line .status{background:#fff;color:var(--primary)}.detail-hero-row h1{margin:0 0 9px;font-size:30px;line-height:1.25;color:#fff;font-weight:700}.detail-hero-row p{max-width:720px;margin:0;color:#d6e3f1;line-height:1.7}.event-detail-hero .btn-outline{color:#fff;background:#ffffff14;border-color:#ffffff73}.event-detail-hero .btn-outline:hover{background:#ffffff29}.event-detail-hero .btn-primary{color:var(--primary);background:#fff}.detail-key-facts{display:grid;grid-template-columns:1.15fr 1.5fr .65fr;gap:1px;margin-top:24px;overflow:hidden;background:#ffffff2e;border:1px solid rgba(255,255,255,.18);border-radius:10px}.detail-key-facts>div{display:flex;align-items:center;gap:11px;padding:13px 15px;background:#00143c38}.detail-key-facts svg{width:19px;color:#9ec5f0}.detail-key-facts small,.detail-key-facts strong{display:block}.detail-key-facts small{margin-bottom:3px;color:#abc8e5;font-size:10px}.detail-key-facts strong{font-size:11px;line-height:1.45}.event-detail-layout{display:grid;grid-template-columns:190px minmax(0,1fr);gap:18px;align-items:start}.event-detail-nav{position:sticky;top:calc(var(--header) + 18px);display:grid;padding:15px;background:#fff;border:1px solid var(--border);border-radius:12px}.event-detail-nav strong{padding:3px 7px 10px;color:var(--text);font-size:11px}.event-detail-nav a{padding:8px 9px;color:var(--muted);border-left:2px solid transparent;font-size:11px;font-weight:600}.event-detail-nav a:hover{color:var(--primary);background:#f0f6ff;border-left-color:var(--primary)}.event-detail-content{display:grid;gap:14px}.event-detail-section{scroll-margin-top:calc(var(--header) + 20px);overflow:hidden;background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:0 5px 20px #00206809}.event-detail-section>header{min-height:62px;display:flex;align-items:center;gap:11px;padding:12px 18px;border-bottom:1px solid var(--border)}.event-detail-section>header>span{width:34px;height:34px;display:grid;place-items:center;color:var(--primary);background:#e8f1ff;border-radius:9px}.event-detail-section>header svg{width:17px}.event-detail-section>header h2{margin:0;font-size:15px}.event-detail-section>header p{margin:3px 0 0;color:var(--muted);font-size:10px}.section-action{margin-left:auto}.event-detail-section-body{padding:18px}.detail-label-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0 24px}.detail-label-value{min-height:68px;padding:10px 0;border-bottom:1px solid #e8eef1}.detail-label-value>span{display:block;margin-bottom:7px;color:var(--muted);font-size:10px;font-weight:600}.detail-label-value>strong{display:block;font-size:12px;line-height:1.55}.detail-label-value .mono{font-variant-numeric:tabular-nums;letter-spacing:.04em}.detail-label-value a{display:inline-flex;align-items:center;gap:5px;color:var(--primary-2)}.detail-label-value a svg{width:13px}.detail-badge,.required-badge{display:inline-flex;padding:5px 8px;color:var(--primary);background:#e8f1ff;border-radius:6px;font-size:10px;font-weight:700}.required-badge{margin-left:6px;color:#7b4a00;background:#fff0d3}.detail-prose{padding-top:18px}.detail-prose h3{margin:0 0 8px;font-size:12px}.detail-prose p{max-width:80ch;margin:0;color:#44545c;font-size:12px;line-height:1.8}.detail-timeline{display:grid;grid-template-columns:1fr 80px 1fr;align-items:center;margin-bottom:10px;padding:15px;background:#f5f9fb;border-radius:10px}.detail-timeline div span,.detail-timeline div strong{display:block}.detail-timeline div span{margin-bottom:5px;color:var(--muted);font-size:10px}.detail-timeline div strong{font-size:12px}.detail-timeline i{position:relative;height:2px;background:#a7bdc8}.detail-timeline i:before,.detail-timeline i:after{content:"";position:absolute;top:50%;width:8px;height:8px;background:var(--primary);border-radius:50%;transform:translateY(-50%)}.detail-timeline i:before{left:0}.detail-timeline i:after{right:0}.venue-summary{display:flex;gap:14px;padding:16px;margin-bottom:8px;background:#f5f9fb;border-radius:10px}.venue-summary>span{width:42px;height:42px;display:grid;place-items:center;flex:0 0 auto;color:var(--primary);background:#fff;border:1px solid var(--border);border-radius:10px}.venue-summary svg{width:20px}.venue-summary small{color:var(--muted);font-size:10px;font-weight:700}.venue-summary h3{margin:4px 0 5px;font-size:14px}.venue-summary p{margin:0;color:var(--muted);font-size:11px}.attendance-session-list{display:grid;gap:9px}.attendance-session-list article{display:grid;grid-template-columns:auto minmax(220px,1fr) auto auto;align-items:center;gap:13px;padding:13px;border:1px solid var(--border);border-radius:10px}.attendance-method-icon{width:40px;height:40px;display:grid;place-items:center;color:var(--primary);background:#edf4ff;border-radius:9px}.attendance-method-icon svg{width:19px}.attendance-session-main h3{margin:6px 0 3px;font-size:12px}.attendance-session-main p{margin:0;color:var(--muted);font-size:10px}.attendance-session-meta{display:grid;justify-items:end;gap:5px}.attendance-session-meta strong{font-size:10px}.document-list{display:grid}.document-list>div{display:flex;align-items:center;gap:11px;padding:11px 0;border-bottom:1px solid #e8eef1}.document-list>div:last-child{border-bottom:0}.document-list>div>span{width:36px;height:36px;display:grid;place-items:center;color:var(--primary);background:#edf4ff;border-radius:8px}.document-list svg{width:16px}.document-list>div>div{flex:1}.document-list strong,.document-list small{display:block}.document-list strong{font-size:11px}.document-list small{margin-top:4px;color:var(--muted);font-size:10px}.history-list{display:grid}.history-list>div{display:grid;grid-template-columns:auto 1fr auto;gap:11px;padding:10px 0}.history-list>div>span{width:26px;height:26px;display:grid;place-items:center;color:#fff;background:var(--success);border-radius:50%}.history-list svg{width:13px}.history-list strong{font-size:11px}.history-list p,.history-list time{margin:3px 0 0;color:var(--muted);font-size:10px}.checkbox-field{display:flex;align-items:flex-end;padding-bottom:8px}.checkbox-field label{display:flex;align-items:center;gap:8px;margin:0}.attendance-manage-header{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:18px}.attendance-manage-header .crud-eyebrow{color:var(--primary-2)}.attendance-manage-header h1{margin:5px 0 6px;font-size:26px}.attendance-manage-header p{margin:0;color:var(--muted)}.attendance-config-strip{display:grid;grid-template-columns:repeat(3,1fr) auto;align-items:center;gap:1px;margin-bottom:16px;overflow:hidden;background:var(--border);border:1px solid var(--border);border-radius:12px}.attendance-config-strip>div{display:flex;align-items:center;gap:10px;min-height:70px;padding:13px 16px;background:#fff}.attendance-config-strip>div>svg{width:19px;color:var(--primary)}.attendance-config-strip small,.attendance-config-strip strong{display:block}.attendance-config-strip small{margin-bottom:3px;color:var(--muted);font-size:10px}.attendance-config-strip strong{font-size:12px}.attendance-config-strip>.status{margin:0 15px}.attendance-roster>header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;border-bottom:1px solid var(--border)}.attendance-roster h2{margin:0 0 4px;font-size:15px}.attendance-roster p{margin:0;color:var(--muted);font-size:11px}.table-search{min-width:280px;display:flex;align-items:center;gap:8px;padding:0 11px;background:#fff;border:1px solid #bfcfd6;border-radius:8px}.table-search svg{width:16px;color:var(--muted)}.table-search input{width:100%;height:38px;border:0;outline:0;font-size:11px}.attendance-roster .detail-table td:last-child{text-align:right}@media(max-width:1050px){.event-wizard-header{grid-template-columns:1fr;gap:14px}.event-detail-layout{grid-template-columns:1fr}.event-detail-nav{position:static;display:flex;overflow:auto;gap:2px}.event-detail-nav strong{display:none}.event-detail-nav a{white-space:nowrap;border-left:0;border-bottom:2px solid transparent}.detail-label-grid,.location-choice-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.event-wizard-page{padding-bottom:80px}.event-wizard-header{top:var(--header);margin:-8px -14px 22px;padding:12px 14px}.event-wizard-title h1{font-size:17px}.wizard-steps strong{font-size:9px}.wizard-canvas{max-width:none}.wizard-context{grid-template-columns:1fr;gap:8px}.wizard-context>span{justify-self:start}.wizard-panel{padding:17px}.event-form-grid{grid-template-columns:1fr}.event-form-grid .form-group.full{grid-column:auto}.location-choice-grid{grid-template-columns:1fr 1fr}.committee-heading,.detail-hero-row,.attendance-manage-header{display:block}.committee-heading .btn,.detail-hero-row .page-actions,.attendance-manage-header .page-actions{margin-top:14px}.wizard-actions{right:14px;left:14px;margin:0;padding:11px 14px calc(11px + env(safe-area-inset-bottom))}.wizard-actions .btn-ghost{font-size:0}.wizard-actions .btn-ghost svg{width:17px}.event-detail-hero{padding:20px;border-radius:12px}.detail-hero-row h1{font-size:23px}.detail-key-facts{grid-template-columns:1fr;margin-top:18px}.event-detail-layout{gap:12px}.detail-label-grid,.detail-timeline{grid-template-columns:1fr}.detail-timeline i{width:2px;height:28px;margin:5px 0 5px 7px}.detail-timeline i:before,.detail-timeline i:after{left:50%;right:auto;transform:translate(-50%,-50%)}.detail-timeline i:before{top:0}.detail-timeline i:after{top:100%}.attendance-session-list article{grid-template-columns:auto 1fr}.attendance-session-meta{justify-items:start}.attendance-session-list article>.btn{grid-column:1/-1}.attendance-config-strip{grid-template-columns:1fr}.attendance-config-strip>.status{justify-self:start;margin:12px 15px}.attendance-roster>header{display:block}.table-search{min-width:0;margin-top:12px}.modal .form-grid{grid-template-columns:1fr}.checkbox-field{padding:0}}@media(max-width:480px){.location-choice-grid{grid-template-columns:1fr}.wizard-steps button>span{width:28px;height:28px}.wizard-steps li:not(:last-child):after{top:13px}.wizard-actions{align-items:stretch}.wizard-actions>div{display:contents}.wizard-actions .btn{padding-inline:10px}.event-detail-section-body{padding:14px}}@media(prefers-reduced-motion:reduce){.location-choice-grid button,.event-wizard-title .icon-back{transition:none}.location-choice-grid button:hover{transform:none}}.notification-menu,.notification-trigger{position:relative}.notification-trigger.active{color:var(--primary);background:var(--surface-low);border-color:#a9c4d0}.notification-badge{position:absolute;top:-5px;right:-5px;min-width:18px;height:18px;display:grid;place-items:center;padding:0 4px;color:#fff;background:var(--danger);border:2px solid #fff;border-radius:10px;font-size:10px;font-weight:800;line-height:1}.notification-popover{position:absolute;top:calc(100% + 12px);right:0;z-index:80;width:min(390px,calc(100vw - 28px));overflow:hidden;background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:0 18px 48px #00206833;animation:notification-in var(--motion-fast) ease-out}.notification-popover:before{content:"";position:absolute;top:-6px;right:14px;width:11px;height:11px;background:#fff;border-left:1px solid var(--border);border-top:1px solid var(--border);transform:rotate(45deg)}.notification-popover-head{min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-bottom:1px solid var(--border)}.notification-popover-head>div:first-child{display:grid;gap:2px}.notification-popover-head strong{font-size:15px}.notification-popover-head span{color:var(--muted);font-size:11px}.notification-popover-actions{display:flex;gap:5px}.notification-popover-actions button{width:32px;height:32px;display:grid;place-items:center;padding:0;color:#52616a;background:#fff;border:1px solid var(--border);border-radius:7px;cursor:pointer}.notification-popover-actions button:hover:not(:disabled){color:var(--primary);background:var(--surface-low)}.notification-popover-actions button:disabled{opacity:.38;cursor:not-allowed}.notification-popover-actions svg{width:15px;height:15px}.notification-popover-list{max-height:330px;overflow-y:auto}.notification-popover-item{width:100%;display:grid;grid-template-columns:8px 1fr;gap:10px;padding:13px 14px;text-align:left;background:#f8fcff;border:0;border-bottom:1px solid #e7eef1;cursor:pointer}.notification-popover-item:hover{background:#edf7fb}.notification-popover-item>span:last-child{display:grid;gap:5px}.notification-popover-item strong{color:var(--text);font-size:13px;font-weight:650;line-height:1.4}.notification-popover-item small{color:var(--muted);font-size:11px}.notification-dot{width:7px;height:7px;margin-top:5px;background:var(--primary-2);border-radius:50%}.notification-popover-empty{min-height:190px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;color:var(--muted);text-align:center}.notification-popover-empty>span{width:42px;height:42px;display:grid;place-items:center;margin-bottom:10px;color:var(--primary);background:var(--surface-low);border-radius:50%}.notification-popover-empty svg{width:19px}.notification-popover-empty strong{color:var(--text);font-size:14px}.notification-popover-empty small{margin-top:4px;font-size:11px}.notification-view-all{min-height:44px;display:flex;align-items:center;justify-content:center;color:var(--primary);background:#fff;font-size:13px;font-weight:750;border-top:1px solid var(--border)}.notification-view-all:hover{background:var(--surface-low)}.notification-table-card{overflow:hidden}.notification-table{min-width:760px}.notification-table .unread-row td{background:#f5faff}.notification-table .unread-row:hover td{background:#edf7fb}.notification-content-cell{display:flex;align-items:center;gap:11px;max-width:620px;font-weight:600}.notification-type-icon{width:34px;height:34px;display:grid;place-items:center;flex:0 0 auto;color:var(--primary);background:var(--surface-low);border-radius:8px}.notification-type-icon svg{width:16px;height:16px}.notification-time-cell{color:var(--muted);white-space:nowrap}.notification-row-actions{display:flex;gap:6px}.notification-delete:hover{color:var(--danger);background:#fff1f0;border-color:#efb7b2}.notification-empty{min-height:360px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;text-align:center}.notification-empty>span{width:58px;height:58px;display:grid;place-items:center;color:var(--primary);background:var(--surface-low);border-radius:50%}.notification-empty svg{width:24px}.notification-empty h2{margin:14px 0 5px;font-size:18px}.notification-empty p{margin:0;color:var(--muted)}@keyframes notification-in{0%{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:none}}@media(max-width:600px){.notification-popover{position:fixed;top:70px;right:14px;left:14px;width:auto}.notification-popover:before{display:none}.notification-page-head .page-actions{display:grid}.notification-page-head .btn{width:100%}}@media(prefers-reduced-motion:reduce){.notification-popover{animation:none}}.system-crud-page,.system-reports-page{width:100%;color:#162032}.crud-breadcrumb{display:flex;align-items:center;gap:7px;margin-bottom:14px;color:#708090;font-size:12px;font-weight:500}.crud-breadcrumb a:hover{color:var(--primary)}.crud-breadcrumb svg{width:13px;height:13px}.crud-breadcrumb span,.crud-breadcrumb strong{color:#23334a;font-weight:650}.crud-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:22px}.crud-page-head>div:first-child{max-width:760px}.crud-eyebrow{display:block;margin-bottom:7px;color:#6a7a8e;font-size:10px;font-weight:800;letter-spacing:.14em}.crud-page-head h1{margin:0;color:#12213a;font-size:29px;font-weight:750;letter-spacing:-.035em;line-height:1.2}.crud-page-head p{margin:7px 0 0;color:#6b7888;font-size:13px;line-height:1.55}.crud-btn{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 15px;border:1px solid transparent;border-radius:8px;font-size:12px;font-weight:700;white-space:nowrap;cursor:pointer;transition:background .18s,border-color .18s,color .18s,box-shadow .18s,transform .18s}.crud-btn svg{width:16px;height:16px;stroke-width:2}.crud-btn:hover:not(:disabled){transform:translateY(-1px)}.crud-btn:active:not(:disabled){transform:none}.crud-btn:disabled{opacity:.58;cursor:not-allowed}.crud-btn.primary{color:#fff;background:#082665;border-color:#082665;box-shadow:0 5px 14px #08266521}.crud-btn.primary:hover:not(:disabled){background:#0b377f;border-color:#0b377f;box-shadow:0 7px 18px #08266533}.crud-btn.secondary{color:#20375b;background:#fff;border-color:#cdd8e3}.crud-btn.secondary:hover:not(:disabled){background:#f3f7fb;border-color:#9fb0c2}.crud-btn.danger{color:#fff;background:#b42318;border-color:#b42318}.crud-btn.danger:hover:not(:disabled){background:#912018}.crud-btn.add{min-height:43px;padding-inline:18px}.crud-filter-card{margin-bottom:16px;padding:17px;background:#fff;border:1px solid #dce5ee;border-radius:12px;box-shadow:0 2px 7px #0f1f3506}.crud-filter-card form{display:grid;gap:12px}.crud-filter-fields{display:flex;align-items:flex-end;gap:12px}.crud-search-field{min-width:260px;flex:1.6}.crud-filter-field{min-width:150px;flex:1}.crud-search-field label,.crud-filter-field label{display:block;margin-bottom:6px;color:#43536a;font-size:11px;font-weight:700}.crud-search-field>div,.crud-filter-field>div{position:relative}.crud-search-field svg,.crud-filter-field svg{position:absolute;top:50%;z-index:1;width:16px;height:16px;color:#8090a3;pointer-events:none;transform:translateY(-50%)}.crud-search-field svg{left:12px}.crud-filter-field svg{right:11px;width:14px}.crud-search-field input,.crud-filter-field select{width:100%;height:40px;color:#17263c;background:#fff;border:1px solid #cfd9e3;border-radius:8px;outline:0;font-size:12px;transition:border-color .18s,box-shadow .18s}.crud-search-field input{padding:0 12px 0 38px}.crud-search-field input::placeholder{color:#99a5b3}.crud-filter-field select{padding:0 34px 0 11px;-webkit-appearance:none;-moz-appearance:none;appearance:none}.crud-search-field input:focus,.crud-filter-field select:focus{border-color:#2b5aa7;box-shadow:0 0 0 3px #2b5aa71a}.crud-filter-actions{display:flex;align-items:flex-end;justify-content:flex-end;gap:5px}.crud-filter-actions .crud-btn.primary{width:42px;height:36px;min-height:36px;padding:0;font-size:0;color:#fff;background:#1a6fb5;border:1px solid rgba(0,0,0,.06);border-radius:6px;box-shadow:0 1px 3px #132a4a1f}.crud-filter-actions .crud-btn.primary:hover{filter:brightness(.9);transform:translateY(-1px);box-shadow:0 3px 8px #132a4a2e}.crud-filter-actions .crud-btn.primary svg{width:16px;height:16px;margin:0}.crud-clear-filters{padding:4px 0;color:var(--danger);background:transparent;border:0;border-bottom:1px solid transparent;font-size:11px;font-weight:700;cursor:pointer}.crud-clear-filters:hover{border-bottom-color:currentColor}.crud-clear-filters:focus-visible{outline:2px solid var(--primary-2);outline-offset:3px;border-radius:2px}.crud-table-card{overflow:hidden;background:#fff;border:1px solid #dce5ee;border-radius:12px;box-shadow:0 4px 14px #0f1f3509}.crud-table-card>header{min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 18px;border-bottom:1px solid #e4ebf2}.crud-table-card>header>div:last-child{display:flex;gap:7px}.crud-table-card h2{margin:0;color:#17263c;font-size:14px;font-weight:750}.crud-table-card>header p{margin:4px 0 0;color:#7a8899;font-size:10px}.crud-table-card>header p strong{color:#253b5c}.crud-icon-btn{position:relative;width:42px;height:36px;display:grid;place-items:center;padding:0;color:#50627a;background:#fff;border:1px solid #d4dee7;border-radius:6px;cursor:pointer;transition:filter .15s,transform .15s,color .15s,border-color .15s}.crud-icon-btn:hover{color:#0b377f;background:#f2f7fc;border-color:#aabccc;transform:translateY(-1px)}.crud-icon-btn svg{width:16px;height:16px}[data-tooltip]:after{content:attr(data-tooltip);position:absolute;right:0;bottom:calc(100% + 8px);z-index:160;width:max-content;max-width:160px;padding:6px 8px;color:#fff;background:#15243a;border-radius:6px;font-size:10px;font-weight:650;line-height:1.3;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(3px);transition:.15s}[data-tooltip]:hover:after,[data-tooltip]:focus-visible:after{opacity:1;visibility:visible;transform:none}.crud-table-scroll{position:relative;overflow-x:auto}.crud-table{width:100%;min-width:880px;border-collapse:collapse}.crud-table th{height:42px;padding:0 14px;color:#627187;background:#f6f8fb;border-bottom:1px solid #e0e7ee;font-size:10px;font-weight:750;letter-spacing:.055em;text-align:left;text-transform:uppercase;white-space:nowrap}.crud-table th:first-child,.crud-table td:first-child{padding-left:18px}.crud-table td{height:59px;padding:9px 14px;color:#2a394e;border-bottom:1px solid #edf1f5;font-size:11.5px;line-height:1.45;vertical-align:middle}.crud-table tbody tr:last-child td{border-bottom:0}.crud-table tbody tr:hover td{background:#f9fbfd}.crud-table .number{width:54px;color:#8a96a5;text-align:center}.crud-table .action-heading{width:130px;text-align:center}.crud-person{display:flex;align-items:center;gap:10px;min-width:190px}.crud-person>span{width:34px;height:34px;display:grid;place-items:center;flex:0 0 auto;color:#17417e;background:#e5eef9;border:1px solid #d3e0ef;border-radius:9px;font-size:10px;font-weight:800}.crud-person>div{display:grid;gap:2px}.crud-person strong{color:#182a45;font-size:11.5px;font-weight:700}.crud-person small{max-width:210px;overflow:hidden;color:#8490a0;font-size:9.5px;text-overflow:ellipsis;white-space:nowrap}.crud-status{display:inline-flex;align-items:center;gap:6px;padding:5px 8px;border-radius:6px;font-size:10px;font-weight:700;white-space:nowrap}.crud-status i{width:5px;height:5px;background:currentColor;border-radius:50%}.crud-status.success{color:#087443;background:#e4f5ec}.crud-status.warning{color:#9a5b04;background:#fff3dc}.crud-status.danger{color:#b42318;background:#fee9e7}.crud-status.neutral{color:#536172;background:#edf1f5}.crud-badge{display:inline-flex;padding:5px 8px;color:#294d83;background:#edf3fa;border:1px solid #dce6f2;border-radius:6px;font-size:10px;font-weight:650;white-space:nowrap}.crud-color{display:flex;align-items:center;gap:7px;color:#69778a;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:10px}.crud-color i{width:16px;height:16px;border:2px solid #fff;border-radius:5px;box-shadow:0 0 0 1px #ccd6e0}.crud-muted{color:#a1a9b3}.crud-row-actions{display:flex;justify-content:center;gap:5px}.crud-row-actions button{position:relative;width:30px;height:30px;display:grid;place-items:center;padding:0;color:#53677f;background:#fff;border:1px solid #d7e0e8;border-radius:7px;cursor:pointer;transition:all .16s}.crud-row-actions button:hover{color:#10458c;background:#edf4fb;border-color:#aac0d8}.crud-row-actions button.delete:hover{color:#b42318;background:#fff0ee;border-color:#f0b8b2}.crud-row-actions svg{width:14px;height:14px;stroke-width:1.9}.crud-pagination{min-height:61px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:10px 18px;color:#758294;background:#fbfcfd;border-top:1px solid #e4ebf2;font-size:10.5px}.crud-pagination strong{color:#263952}.crud-page-size{display:flex;align-items:center;gap:7px;margin-left:auto}.crud-page-size select{height:31px;padding:0 25px 0 9px;color:#2b3e59;background:#fff;border:1px solid #d4dee7;border-radius:7px;outline:0}.crud-page-nav{display:flex;align-items:center;gap:10px}.crud-page-nav button{width:31px;height:31px;display:grid;place-items:center;padding:0;color:#314963;background:#fff;border:1px solid #d4dee7;border-radius:7px;cursor:pointer}.crud-page-nav button:disabled{opacity:.4;cursor:not-allowed}.crud-page-nav button:not(:disabled):hover{color:#0b377f;background:#edf4fb}.crud-page-nav svg{width:14px}.skeleton-row td{height:59px!important;padding:17px 18px!important}.skeleton-row span{display:block;width:100%;height:22px;background:linear-gradient(90deg,#f0f3f6 25%,#f7f9fb,#f0f3f6 65%);background-size:300% 100%;border-radius:6px;animation:crud-shimmer 1.4s infinite}.skeleton-row:hover td{background:#fff!important}@keyframes crud-shimmer{to{background-position:-100% 0}}.crud-empty-state,.crud-error-state{min-height:310px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:42px;text-align:center}.crud-empty-icon,.crud-error-state>span{width:50px;height:50px;display:grid;place-items:center;color:#355d93;background:#edf4fb;border-radius:14px}.crud-empty-icon svg,.crud-error-state>span svg{width:22px}.crud-empty-state h3,.crud-error-state h3{margin:14px 0 4px;color:#253752;font-size:14px}.crud-empty-state p,.crud-error-state p{max-width:380px;margin:0 0 16px;color:#7b8797;font-size:11px;line-height:1.6}.crud-error-state>span{color:#b42318;background:#fff0ee}.crud-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;display:flex;justify-content:flex-end}.crud-scrim{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;padding:0;background:#0b182d6b;border:0;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);cursor:default;animation:crud-fade .2s ease-out}.crud-drawer{position:relative;width:min(650px,96vw);height:100%;display:flex;flex-direction:column;background:#fff;box-shadow:-18px 0 50px #0c1e3a33;animation:crud-slide .25s ease-out}.crud-drawer>header{min-height:79px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 22px;background:#fbfcfe;border-bottom:1px solid #dfe7ef}.crud-drawer>header span{display:block;margin-bottom:3px;color:#6f7e91;font-size:9px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.crud-drawer>header h2{margin:0;color:#172a46;font-size:18px;letter-spacing:-.02em}.crud-drawer>form{min-height:0;display:flex;flex:1;flex-direction:column}.crud-drawer-body{min-height:0;flex:1;overflow-y:auto;padding:7px 22px 26px}.crud-drawer footer{min-height:70px;display:flex;align-items:center;justify-content:flex-end;gap:9px;padding:12px 22px;background:#fbfcfe;border-top:1px solid #dfe7ef}.crud-form-section{padding:22px 0 23px;border-bottom:1px solid #e6ecf2}.crud-form-section:last-child{border-bottom:0}.crud-section-title{display:flex;gap:10px;margin-bottom:17px}.crud-section-title>span{width:25px;height:25px;display:grid;place-items:center;flex:0 0 auto;color:#fff;background:#153d78;border-radius:7px;font-size:10px;font-weight:800}.crud-section-title h3{margin:1px 0 2px;color:#203652;font-size:12px}.crud-section-title p{margin:0;color:#8692a1;font-size:9.5px;line-height:1.5}.crud-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.crud-field.full{grid-column:1/-1}.crud-field>label{display:block;margin-bottom:6px;color:#40516a;font-size:10.5px;font-weight:700}.crud-field>label em{margin-left:3px;color:#b42318;font-style:normal}.crud-field input,.crud-field textarea,.crud-field select{width:100%;color:#20324c;background:#fff;border:1px solid #cfd9e3;border-radius:8px;outline:0;font-size:11.5px;transition:border-color .18s,box-shadow .18s}.crud-field input,.crud-field select{height:40px;padding:0 11px}.crud-field input[type=color]{padding:5px}.crud-field textarea{padding:10px 11px;resize:vertical}.crud-field input:focus,.crud-field textarea:focus,.crud-field select:focus{border-color:#2b5aa7;box-shadow:0 0 0 3px #2b5aa71a}.crud-field input:disabled,.crud-field textarea:disabled,.crud-field select:disabled{color:#4d5d72;background:#f4f6f8;border-color:#e0e6ec;opacity:1}.crud-field>small{display:block;margin-top:5px;color:#8a96a5;font-size:9px}.crud-field .crud-field-error{display:flex;align-items:center;gap:4px;color:#b42318}.crud-field-error svg{width:12px}.crud-select-wrap{position:relative}.crud-select-wrap select{padding-right:32px;-webkit-appearance:none;-moz-appearance:none;appearance:none}.crud-select-wrap>svg{position:absolute;top:50%;right:11px;width:14px;color:#7f8da0;pointer-events:none;transform:translateY(-50%)}.crud-check-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.crud-check-grid label{cursor:pointer}.crud-check-grid input{position:absolute;width:1px;height:1px;opacity:0}.crud-check-grid span{min-height:38px;display:flex;align-items:center;gap:8px;padding:8px 10px;color:#53647b;background:#fff;border:1px solid #d7e0e8;border-radius:8px;font-size:10.5px;font-weight:600}.crud-check-grid span svg{width:15px;height:15px;padding:2px;color:transparent;border:1px solid #b8c4d0;border-radius:4px}.crud-check-grid label.selected span{color:#173f79;background:#eff5fb;border-color:#9cb5d3}.crud-check-grid label.selected span svg{color:#fff;background:#174b91;border-color:#174b91}.crud-custom-field-add{display:inline-flex;align-items:center;gap:5px;padding:4px 12px;border-radius:999px;border:1px solid var(--primary);background:var(--surface-low);color:var(--primary);font-size:11px;font-weight:700;cursor:pointer;transition:all var(--motion-fast)}.crud-custom-field-add:hover{background:var(--primary);color:#fff}.crud-custom-field-add-icon{margin-left:auto;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;border:1px dashed var(--primary);background:var(--surface-low);color:var(--primary);cursor:pointer;transition:all var(--motion-fast)}.crud-custom-field-add-icon:hover{background:var(--primary);color:#fff;border-style:solid;transform:rotate(90deg)}.crud-custom-field-add-icon svg{width:14px;height:14px}.crud-section-text{flex:1 1 auto;min-width:0}.system-record-section.has-add-section .crud-section-title{align-items:center}.crud-custom-fields{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.crud-custom-field{cursor:pointer;position:relative;display:block}.crud-custom-field input{position:absolute;width:1px;height:1px;opacity:0}.crud-custom-field-body{min-height:56px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:6px;padding:10px 12px 10px 36px;background:#fff;border:1px solid var(--border);border-radius:8px;position:relative;transition:all var(--motion-fast)}.crud-custom-field-body:before{content:"";position:absolute;left:12px;top:50%;transform:translateY(-50%);width:16px;height:16px;border:1.5px solid #b8c2cc;border-radius:4px;background:#fff;transition:all var(--motion-fast)}.crud-custom-field-body:after{content:"";position:absolute;left:16px;top:50%;width:6px;height:10px;border-right:2px solid #fff;border-bottom:2px solid #fff;transform:translateY(-65%) rotate(45deg);opacity:0;transition:opacity var(--motion-fast)}.crud-custom-field.selected .crud-custom-field-body{border-color:var(--primary);background:#eff5fb}.crud-custom-field.selected .crud-custom-field-body:before{background:var(--primary);border-color:var(--primary)}.crud-custom-field.selected .crud-custom-field-body:after{opacity:1}.crud-custom-field-body strong{font-size:12px;font-weight:700;color:var(--text);line-height:1.3}.crud-custom-field-body .cf-type{display:inline-flex;align-items:center;padding:1px 7px;background:#f0f3f7;color:#4a5b6e;border-radius:999px;font-style:normal;font-size:9.5px;font-weight:600;text-transform:uppercase;letter-spacing:.4px}.crud-custom-field-body .cf-type-text{background:#e8f0fe;color:#1a5cad}.crud-custom-field-body .cf-type-textarea{background:#f0e7fa;color:#5b21b6}.crud-custom-field-body .cf-type-number{background:#e6f4ea;color:#1d6f42}.crud-custom-field-body .cf-type-date{background:#fef3e2;color:#92580a}.crud-custom-field-body .cf-type-url{background:#e0f2fe;color:#075985}.crud-custom-field-body .cf-type-boolean{background:#fce7e7;color:#a31717}.crud-badge .cf-type{margin-left:6px;padding:0 6px;background:#fff9;border-radius:999px;font-style:normal;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;color:#475569}.crud-badge .cf-type.cf-type-text{background:#dbeafe;color:#1e3a8a}.crud-badge .cf-type.cf-type-textarea{background:#ede9fe;color:#5b21b6}.crud-badge .cf-type.cf-type-number{background:#dcfce7;color:#166534}.crud-badge .cf-type.cf-type-date{background:#fef3c7;color:#92400e}.crud-badge .cf-type.cf-type-url{background:#e0f2fe;color:#075985}.crud-badge .cf-type.cf-type-boolean{background:#fee2e2;color:#991b1b}.crud-confirm-wide{max-width:460px;width:100%}.crud-confirm-form{text-align:left;padding:22px 22px 18px}.crud-confirm-form h2{margin:0 0 4px;font-size:16px;color:#1c2d46}.crud-confirm-subtitle{margin:0 0 14px;color:#6b7a90;font-size:11px;line-height:1.55}.crud-confirm-form .form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px 16px;margin-bottom:14px}.crud-confirm-form .form-group{display:flex;flex-direction:column;gap:6px}.crud-confirm-form .form-group.full{grid-column:1 / -1}.crud-confirm-form .form-group label{font-size:11px;font-weight:600;color:#34425a;display:inline-flex;align-items:center;gap:2px}.crud-confirm-form .form-group.has-error label{color:#b42318}.crud-confirm-form .form-group.has-error .input,.crud-confirm-form .form-group.has-error .select,.crud-confirm-form .form-group.has-error .textarea{border-color:#f3a7a7;background:#fff7f7}.crud-confirm-form .input,.crud-confirm-form .select,.crud-confirm-form .textarea{width:100%;padding:8px 12px;border:1px solid var(--border);border-radius:8px;font-size:13px;background:#fff;color:#1c2d46;transition:border-color var(--motion-fast),box-shadow var(--motion-fast);font-family:inherit}.crud-confirm-form .input:focus,.crud-confirm-form .select:focus,.crud-confirm-form .textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #144ec41f}.crud-confirm-form .select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7a90' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px}.crud-confirm-form .field-error{color:#b42318;font-size:11px;display:inline-flex;align-items:center;gap:4px}.crud-confirm-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:8px}.crud-confirm-actions .btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:8px;font-size:12px;font-weight:700;cursor:pointer;transition:all var(--motion-fast);border:1px solid transparent}.crud-confirm-actions .btn.btn-outline{background:#fff;border-color:var(--border);color:#34425a}.crud-confirm-actions .btn.btn-outline:hover{background:#f4f6fa;border-color:#b8c2cc}.crud-confirm-actions .btn.btn-primary{background:var(--primary);color:#fff}.crud-confirm-actions .btn.btn-primary:hover{background:#0d3f8a}.crud-confirm-actions .btn svg{width:12px;height:12px}.crud-layer.confirm{align-items:center;justify-content:center}.crud-confirm{position:relative;width:min(420px,calc(100vw - 28px));padding:26px;background:#fff;border-radius:14px;box-shadow:0 24px 70px #0c1e3a40;text-align:center;animation:crud-pop .2s ease-out}.danger-icon{width:48px;height:48px;display:grid;place-items:center;margin:0 auto;color:#b42318;background:#fee9e7;border-radius:13px}.danger-icon svg{width:21px}.crud-confirm h2{margin:14px 0 6px;color:#1c2d46;font-size:17px}.crud-confirm p{margin:0;color:#718094;font-size:11px;line-height:1.65}.crud-confirm p strong{color:#334862}.crud-confirm>div:last-child{display:flex;justify-content:center;gap:9px;margin-top:20px}.crud-toast{position:fixed;right:22px;bottom:22px;z-index:170;width:min(370px,calc(100vw - 28px));display:grid;grid-template-columns:36px 1fr auto;align-items:center;gap:11px;padding:11px 12px;background:#fff;border:1px solid #cfe0d8;border-left:4px solid #087443;border-radius:10px;box-shadow:0 16px 45px #0f1f352e;animation:crud-toast-in .25s ease-out}.crud-toast>span{width:34px;height:34px;display:grid;place-items:center;color:#087443;background:#e6f5ed;border-radius:9px}.crud-toast>span svg{width:16px}.crud-toast strong{display:block;color:#243750;font-size:11px}.crud-toast p{margin:3px 0 0;color:#748195;font-size:9.5px}.crud-toast>button{width:28px;height:28px;display:grid;place-items:center;padding:0;color:#8290a0;background:transparent;border:0;border-radius:6px;cursor:pointer}.crud-toast>button:hover{background:#f0f3f6}.crud-toast>button svg{width:14px}.spin{animation:crud-spin .8s linear infinite}.crud-toast.error{border-color:#f0c5c1;border-left-color:#b42318}.crud-toast.error>span{color:#b42318;background:#fee9e7}@keyframes crud-spin{to{transform:rotate(360deg)}}@keyframes crud-fade{0%{opacity:0}}@keyframes crud-slide{0%{transform:translate(100%)}}@keyframes crud-pop{0%{opacity:0;transform:scale(.96)}}@keyframes crud-toast-in{0%{opacity:0;transform:translateY(12px)}}.report-actions{display:flex;align-items:center;gap:9px}.report-actions select{height:40px;padding:0 34px 0 12px;color:#344964;background:#fff;border:1px solid #ccd7e2;border-radius:8px;font-size:11px;outline:0}.report-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:14px}.report-kpis article{display:flex;align-items:center;gap:14px;padding:18px;background:#fff;border:1px solid #dce5ee;border-radius:12px}.report-kpis article>span{width:43px;height:43px;display:grid;place-items:center;color:#194c91;background:#eaf2fb;border-radius:11px}.report-kpis svg{width:19px}.report-kpis p{margin:0;color:#6c7b8f;font-size:10px}.report-kpis strong{display:block;margin:3px 0;color:#163562;font-size:22px;letter-spacing:-.03em}.report-kpis small{display:flex;align-items:center;gap:4px;color:#8a96a5;font-size:9px}.report-kpis small svg{width:11px}.positive{color:#087443!important}.report-grid{display:grid;grid-template-columns:1.55fr 1fr;gap:14px;margin-bottom:14px}.report-card{overflow:hidden;background:#fff;border:1px solid #dce5ee;border-radius:12px}.report-card>header{min-height:66px;display:flex;align-items:center;justify-content:space-between;padding:12px 17px;border-bottom:1px solid #e6ecf2}.report-card h2{margin:0;color:#20344f;font-size:13px}.report-card header p{margin:4px 0 0;color:#8290a0;font-size:9.5px}.report-card header>span{color:#8995a3;font-size:9px}.report-chart{height:260px;display:flex;align-items:end;gap:17px;padding:26px 24px 18px;background:linear-gradient(to bottom,#fff,#fbfcfe)}.report-bar{height:100%;display:flex;flex:1;flex-direction:column;align-items:center;gap:7px}.report-bar>div{width:100%;height:100%;display:flex;align-items:flex-end;justify-content:center;border-bottom:1px solid #dce4ec;background:repeating-linear-gradient(to bottom,transparent 0,transparent calc(25% - 1px),#eef2f6 25%)}.report-bar i{position:relative;width:min(34px,70%);min-height:10px;background:linear-gradient(180deg,#1d5aaa,#0a3779);border-radius:6px 6px 2px 2px}.report-bar b{position:absolute;top:-18px;left:50%;color:#496079;font-size:9px;font-style:normal;transform:translate(-50%)}.report-bar>span{color:#7c8998;font-size:9px}.role-breakdown{display:grid;grid-template-columns:1fr 1.15fr;align-items:center;gap:17px;padding:30px 22px}.donut{width:145px;max-width:100%;aspect-ratio:1;display:grid;place-items:center;margin:auto;background:conic-gradient(#174d91 0,#174d91 78%,#4f83c3 78%,#4f83c3 87%,#87a9d1 87%,#87a9d1 93%,#ccd9e8 93%);border-radius:50%}.donut:before{content:"";grid-area:1/1;width:64%;height:64%;background:#fff;border-radius:50%}.donut span{z-index:1;grid-area:1/1;text-align:center}.donut strong{display:block;color:#17365f;font-size:20px}.donut small{color:#8996a5;font-size:8px}.role-breakdown ul{display:grid;gap:12px;margin:0;padding:0;list-style:none}.role-breakdown li{display:grid;grid-template-columns:8px 1fr auto;align-items:center;gap:8px;color:#66768a;font-size:10px}.role-breakdown li i{width:7px;height:7px;background:#174d91;border-radius:2px}.role-breakdown li i.c2{background:#4f83c3}.role-breakdown li i.c3{background:#87a9d1}.role-breakdown li i.c4{background:#ccd9e8}.role-breakdown li strong{color:#2f425d}.report-table table{width:100%;border-collapse:collapse}.report-table th,.report-table td{padding:12px 17px;border-bottom:1px solid #edf1f5;font-size:10.5px;text-align:left}.report-table th{color:#708095;background:#f7f9fb;font-size:9px;text-transform:uppercase}.report-table td{color:#354962}.report-table tbody tr:last-child td{border-bottom:0}@media(max-width:1100px){.crud-filter-fields{display:grid;grid-template-columns:2fr repeat(2,1fr)}.report-grid{grid-template-columns:1fr}.report-card.chart-card{min-width:0}}@media(max-width:760px){.crud-page-head{align-items:flex-start}.crud-filter-fields{grid-template-columns:1fr 1fr}.crud-search-field{grid-column:1/-1;min-width:0}.crud-filter-field{min-width:0}.crud-pagination{flex-wrap:wrap}.crud-page-size{margin-left:0}.crud-drawer{width:100vw}.report-kpis{grid-template-columns:1fr}.report-actions{align-items:stretch;flex-direction:column}.report-actions select{width:100%}}@media(max-width:560px){.crud-page-head{display:grid}.crud-clear-filters{justify-self:start}.crud-filter-fields{grid-template-columns:1fr}.crud-search-field{grid-column:auto}.crud-filter-actions{display:grid;grid-template-columns:1fr}.crud-filter-actions .crud-btn{width:100%}.crud-pagination>div:first-child{width:100%}.crud-page-nav{margin-left:auto}.crud-form-grid,.crud-check-grid{grid-template-columns:1fr}.crud-field.full{grid-column:auto}.crud-drawer>header,.crud-drawer-body,.crud-drawer footer{padding-left:16px;padding-right:16px}.report-grid{display:block}.report-card{margin-bottom:14px}.role-breakdown{grid-template-columns:1fr}.report-chart{gap:8px;padding-inline:12px}}@media(max-width:600px){.admin-shell{max-width:100vw;overflow-x:hidden}.main{min-width:0}.topbar{min-width:0;gap:9px}.topbar-title{min-width:0;max-width:128px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-actions{gap:7px}.topbar-actions>.icon-btn{display:none}.header-clock{padding-right:8px}.crud-filter-actions{width:100%;grid-template-columns:1fr!important;justify-content:stretch!important}.crud-filter-actions .crud-btn{width:100%}}@media(prefers-reduced-motion:reduce){.crud-scrim,.crud-drawer,.crud-confirm,.crud-toast,.skeleton-row span{animation:none}.crud-btn{transition:none}}.admin-auto-breadcrumb{display:flex;align-items:center;gap:7px;margin-bottom:14px;color:#758397;font-size:11px;font-weight:600}.admin-auto-breadcrumb a:hover{color:var(--primary)}.admin-auto-breadcrumb span{color:#a5afbb}.admin-auto-breadcrumb strong{color:#2d405c}.role-list-page{width:min(1500px,100%);margin:0 auto}.role-list-page .page-head{margin-bottom:18px}.role-list-page .page-head h1{color:#12213a;font-size:29px;letter-spacing:-.035em}.role-list-page .page-head p{font-size:13px}.legacy-filter-card{display:flex;align-items:flex-end;gap:12px;margin-bottom:16px;padding:17px;background:#fff;border:1px solid #dce5ee;border-radius:12px;box-shadow:0 2px 7px #0f1f3506}.legacy-filter-field{min-width:190px}.legacy-filter-field.grow{flex:1}.legacy-filter-field label{display:block;margin-bottom:6px;color:#43536a;font-size:11px;font-weight:700}.legacy-filter-field>div{position:relative}.legacy-filter-field svg{position:absolute;top:50%;left:12px;width:16px;color:#8090a3;transform:translateY(-50%)}.legacy-filter-field input,.legacy-filter-field select{width:100%;height:40px;padding:0 11px;color:#17263c;background:#fff;border:1px solid #cfd9e3;border-radius:8px;outline:0;font-size:12px}.legacy-filter-field input{padding-left:38px}.legacy-filter-field input:focus,.legacy-filter-field select:focus{border-color:#2b5aa7;box-shadow:0 0 0 3px #2b5aa71a}.table-card{border-color:#dce5ee;border-radius:12px;box-shadow:0 4px 14px #0f1f3509}.table-card .toolbar{padding:16px 17px;background:#fff}.table-card .toolbar .input,.table-card .toolbar .select{height:40px;border-color:#cfd9e3;border-radius:8px;font-size:12px}.unified-legacy-table{overflow:hidden}.legacy-table-heading{min-height:66px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 17px;border-bottom:1px solid #e4ebf2}.legacy-table-heading h2{margin:0;color:#17263c;font-size:14px}.legacy-table-heading p{margin:4px 0 0;color:#7a8899;font-size:10px}.legacy-table-heading>span{display:flex;align-items:center;gap:6px;color:#7c8999;font-size:10px}.legacy-table-heading>span svg{width:14px}.table-wrap{position:relative;overflow:auto}.table{min-width:900px}.table th{height:42px;padding:0 14px;color:#627187;background:#f6f8fb;border-bottom:1px solid #e0e7ee;font-size:10px;letter-spacing:.055em}.table td{height:58px;padding:9px 14px;color:#2a394e;border-bottom:1px solid #edf1f5;font-size:11.5px}.table tbody tr:last-child td{border-bottom:0}.table tbody tr:hover td{background:#f9fbfd}.legacy-index-column{width:56px;color:#8290a1!important;text-align:center!important}.legacy-actions-column{width:130px;text-align:center!important}.table-actions{display:flex;align-items:center;justify-content:center;gap:6px}.table-actions .action-btn{position:relative;flex:0 0 auto}.table-actions .action-btn svg{width:14px;height:14px}.legacy-primary-cell{display:grid;gap:3px;min-width:210px}.legacy-primary-cell strong{color:#172a46;font-size:11.5px}.legacy-primary-cell small{color:#8490a0;font-size:9.5px}.legacy-table-pagination{min-height:61px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 17px;color:#758294;background:#fbfcfd;border-top:1px solid #e4ebf2;font-size:10.5px}.legacy-table-pagination strong{color:#263952}.legacy-table-pagination label{display:flex;align-items:center;gap:7px;margin-left:auto}.legacy-table-pagination select{height:31px;padding:0 25px 0 9px;color:#2b3e59;background:#fff;border:1px solid #d4dee7;border-radius:7px}.legacy-page-controls{display:flex;align-items:center;gap:9px}.legacy-page-controls button{width:31px;height:31px;display:grid;place-items:center;padding:0;color:#314963;background:#fff;border:1px solid #d4dee7;border-radius:7px;cursor:pointer}.legacy-page-controls button:disabled{opacity:.4;cursor:not-allowed}.legacy-page-controls svg{width:14px}.table-card>.legacy-table-pagination+.pagination{display:none}.table-subtext{display:block;margin-top:3px;color:var(--muted);font-size:var(--text-xs);font-weight:400;line-height:1.45}.management-table-section{margin-bottom:18px}.table-section-head{min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border-bottom:1px solid var(--border)}.table-section-head h2{margin:0 0 3px;font-size:var(--text-xl)}.table-section-head p{margin:0;color:var(--muted);font-size:var(--text-sm)}.action-btn.danger{color:var(--danger)}.action-btn.danger:hover{color:#fff;background:var(--danger);border-color:var(--danger)}.required,.text-danger{color:var(--danger)}.text-success{color:var(--success)}.status.purple{color:#6d28d9;background:#ede9fe}.points-tabs{display:flex;gap:4px;margin-bottom:16px;padding:4px;background:#eaf2f6;border-radius:10px}.points-tabs button{min-height:42px;display:flex;align-items:center;gap:9px;padding:0 16px;color:var(--muted);background:transparent;border:0;border-radius:7px;font-weight:700;cursor:pointer;transition:all var(--motion-fast)}.points-tabs button:hover{color:var(--primary)}.points-tabs button.active{color:var(--primary);background:#fff;box-shadow:0 2px 7px #10324414}.points-tabs button span{min-width:23px;height:21px;display:grid;place-items:center;padding:0 6px;color:#627687;background:#dce8ee;border-radius:999px;font-size:10px}.points-tabs button.active span{color:#fff;background:var(--primary)}.account-menu,.notification-menu{position:relative}.account-trigger{min-width:218px;height:48px;display:grid;grid-template-columns:36px minmax(0,1fr) 16px;align-items:center;gap:9px;padding:5px 9px 5px 6px;color:var(--text);background:#fff;border:1px solid var(--border);border-radius:10px;cursor:pointer;text-align:left;transition:all var(--motion-fast)}.account-trigger:hover,.account-trigger.active{border-color:#9bb8c7;background:#f7fbfd;box-shadow:0 0 0 3px #0033990f}.account-avatar{width:36px;height:36px;display:grid;place-items:center;overflow:hidden;color:#fff;background:linear-gradient(145deg,var(--primary-2),var(--primary));border-radius:10px;font-size:12px;font-weight:800;letter-spacing:.04em}.account-avatar.large{width:46px;height:46px;border-radius:12px;font-size:14px}.account-trigger-copy{min-width:0;display:grid;gap:2px}.account-trigger-copy strong{overflow:hidden;text-overflow:ellipsis;color:var(--text);font-size:12px;white-space:nowrap}.account-trigger-copy small{overflow:hidden;text-overflow:ellipsis;color:var(--muted);font-size:9px;white-space:nowrap}.account-chevron{width:15px;height:15px;color:var(--muted);transition:transform var(--motion-fast)}.account-trigger.active .account-chevron{transform:rotate(180deg)}.account-popover{position:absolute;top:calc(100% + 10px);right:0;z-index:85;width:330px;overflow:hidden;background:#fff;border:1px solid var(--border);border-radius:13px;box-shadow:0 18px 48px #00206833;animation:notification-in var(--motion-fast) ease-out}.account-popover:before{content:"";position:absolute;top:-6px;right:20px;width:11px;height:11px;background:#fff;border-left:1px solid var(--border);border-top:1px solid var(--border);transform:rotate(45deg)}.account-popover-profile{display:flex;align-items:center;gap:11px;padding:15px;background:linear-gradient(145deg,#f4faff,#fff);border-bottom:1px solid var(--border)}.account-popover-profile>div{min-width:0;display:grid;gap:2px}.account-popover-profile strong,.account-popover-profile span,.account-popover-profile small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-popover-profile strong{font-size:14px}.account-popover-profile span{color:var(--muted);font-size:11px}.account-popover-profile small{color:var(--primary-2);font-size:10px;font-weight:700}.account-popover-nav{padding:7px}.account-popover-nav a,.account-logout{width:100%;display:grid;grid-template-columns:34px 1fr;align-items:center;gap:10px;padding:9px;color:var(--text);background:transparent;border:0;border-radius:8px;text-align:left;cursor:pointer}.account-popover-nav a:hover{background:var(--surface-low)}.account-popover-nav a>span,.account-logout>span{width:34px;height:34px;display:grid;place-items:center;color:var(--primary);background:#edf7fb;border-radius:8px}.account-popover-nav svg,.account-logout svg{width:17px;height:17px}.account-popover-nav div,.account-logout div{display:grid;gap:2px}.account-popover-nav strong,.account-logout strong{font-size:12px}.account-popover-nav small,.account-logout small{color:var(--muted);font-size:9px}.account-logout{padding:11px 16px;color:var(--danger);border-top:1px solid var(--border);border-radius:0}.account-logout:hover{background:#fff5f4}.account-logout>span{color:var(--danger);background:#fff0ef}.account-profile-page{max-width:1120px;margin:0 auto}.profile-identity-card{display:flex;align-items:center;gap:18px;margin-bottom:18px;padding:20px 22px;background:linear-gradient(120deg,#fff 40%,#f0f8fc);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-3)}.profile-avatar-wrap{position:relative;flex:0 0 auto}.profile-avatar{width:76px;height:76px;display:grid;place-items:center;overflow:hidden;color:#fff;background:linear-gradient(145deg,var(--primary-2),var(--primary));border:4px solid #fff;border-radius:20px;box-shadow:0 7px 18px #0033992e;font-size:23px;font-weight:800}.profile-avatar img{width:100%;height:100%;object-fit:cover}.profile-avatar-edit{position:absolute;right:-6px;bottom:-5px;width:30px;height:30px;display:grid;place-items:center;color:#fff;background:var(--primary);border:3px solid #fff;border-radius:50%;cursor:pointer}.profile-avatar-edit svg{width:13px}.profile-avatar-edit input{position:absolute;width:1px;height:1px;opacity:0}.profile-identity-copy h2{margin:0 0 3px;font-size:22px}.profile-identity-copy>p{margin:0 0 10px;color:var(--muted)}.profile-identity-copy>div{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.profile-identity-copy>div>span:last-child{color:var(--muted);font-size:12px}.profile-tabs{display:flex;gap:4px;margin-bottom:16px;padding:4px;background:#eaf2f6;border-radius:10px}.profile-tabs button{min-height:42px;display:flex;align-items:center;gap:8px;padding:0 17px;color:var(--muted);background:transparent;border:0;border-radius:7px;font-weight:700;cursor:pointer}.profile-tabs button svg{width:17px}.profile-tabs button.active{color:var(--primary);background:#fff;box-shadow:0 2px 7px #10324414}.profile-form-card,.password-card{overflow:hidden}.profile-section-head{padding:18px 20px;border-bottom:1px solid var(--border)}.profile-section-head h2{margin:0 0 4px;font-size:18px}.profile-section-head p{margin:0;color:var(--muted);font-size:12px}.profile-form-body{padding:20px}.readonly-field{color:#64717d!important;background:#f0f3f5!important;border-color:#d9e0e4!important;cursor:not-allowed}.input.invalid,.select.invalid,.textarea.invalid,.password-input.invalid,.otp-input.invalid{border-color:var(--danger)!important;box-shadow:0 0 0 3px #b31c1c14!important}.field-error{display:block!important;margin-top:5px!important;color:var(--danger)!important;font-size:11px!important}.field-counter{text-align:right}.profile-form-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 20px;background:#fafcfd;border-top:1px solid var(--border)}.profile-form-footer>span{color:var(--muted);font-size:11px}.profile-form-footer .btn svg{width:16px}.btn:disabled{opacity:.5;cursor:not-allowed}.button-spinner{width:14px;height:14px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:account-spin .7s linear infinite}@keyframes account-spin{to{transform:rotate(360deg)}}.password-stepper{display:grid;grid-template-columns:repeat(3,1fr);padding:22px 20px 8px}.password-stepper>div{position:relative;display:flex;flex-direction:column;align-items:center;gap:7px;color:#8a98a7;font-size:11px}.password-stepper>div:not(:last-child):after{content:"";position:absolute;top:15px;left:calc(50% + 20px);width:calc(100% - 40px);height:2px;background:#dbe4e9}.password-stepper>div.complete:not(:last-child):after{background:var(--success)}.password-stepper>div>span{position:relative;z-index:1;width:31px;height:31px;display:grid;place-items:center;background:#edf1f3;border:2px solid #dbe4e9;border-radius:50%;font-weight:800}.password-stepper>div>span svg{width:14px}.password-stepper>div.active{color:var(--primary)}.password-stepper>div.active>span{color:#fff;background:var(--primary);border-color:var(--primary)}.password-stepper>div.complete{color:var(--success)}.password-stepper>div.complete>span{color:#fff;background:var(--success);border-color:var(--success)}.password-stage{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:22px;padding:20px}.password-fields{display:grid;gap:15px}.password-input{height:42px;display:grid;grid-template-columns:38px 1fr 38px;align-items:center;border:1px solid #bfcfd6;border-radius:var(--radius-xs);transition:all var(--motion-fast)}.password-input:focus-within{border-color:var(--primary-2);box-shadow:0 0 0 3px #0033991f}.password-input>svg{width:16px;justify-self:center;color:#778794}.password-input input{width:100%;height:100%;padding:0;background:transparent;border:0;outline:0}.password-input button{height:100%;display:grid;place-items:center;padding:0;color:var(--muted);background:transparent;border:0;cursor:pointer}.password-input button svg{width:17px}.password-match{display:flex;align-items:center;gap:7px;color:var(--danger);font-size:11px}.password-match.met{color:var(--success)}.password-match svg{width:15px}.password-policy{align-self:start;padding:17px;background:#f7fbfd;border:1px solid #dbe8ee;border-radius:10px}.password-policy>div{display:flex;align-items:center;gap:8px}.password-policy>div>svg{width:19px;color:var(--primary)}.password-policy h3{margin:0;font-size:14px}.password-policy p{margin:8px 0 12px;color:var(--muted);font-size:11px}.password-policy ul{display:grid;gap:8px;margin:0;padding:0;list-style:none}.password-policy li{display:flex;align-items:center;gap:8px;color:#7a8793;font-size:11px}.password-policy li>span{width:18px;height:18px;display:grid;place-items:center;color:#8a98a7;background:#e7ecef;border-radius:50%}.password-policy li svg{width:11px}.password-policy li.met{color:var(--success)}.password-policy li.met>span{color:#fff;background:var(--success)}.password-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:9px;padding-top:16px;border-top:1px solid var(--border)}.verification-stage,.password-result{max-width:520px;display:flex;flex-direction:column;align-items:center;margin:0 auto;padding:32px 20px;text-align:center}.verification-icon,.password-result>span{width:58px;height:58px;display:grid;place-items:center;margin-bottom:13px;color:var(--primary);background:var(--surface-low);border-radius:50%}.verification-icon svg,.password-result>span svg{width:25px}.verification-stage h3,.password-result h3{margin:0 0 7px;font-size:18px}.verification-stage p,.password-result p{margin:0 0 18px;color:var(--muted);line-height:1.55}.verification-stage>label{align-self:flex-start;margin-bottom:6px;font-weight:700}.otp-input{width:100%;height:52px;color:var(--primary);background:#fff;border:1px solid #bfcfd6;border-radius:8px;outline:0;text-align:center;font-size:22px;font-weight:800;letter-spacing:.45em}.verification-stage>small{margin-top:7px;color:var(--muted)}.verification-stage .password-actions{width:100%;margin-top:20px}.password-result>span{color:var(--success);background:#e6f6ed}.password-result .btn{margin-top:4px}.help-search{height:52px;display:grid;grid-template-columns:44px 1fr;align-items:center;margin-bottom:18px;background:#fff;border:1px solid var(--border);border-radius:10px}.help-search svg{width:18px;justify-self:center;color:var(--muted)}.help-search input{height:100%;padding:0 14px 0 0;background:transparent;border:0;outline:0}.help-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.help-list article{display:grid;grid-template-columns:44px 1fr;gap:14px;padding:18px;background:#fff;border:1px solid var(--border);border-radius:12px;transition:all var(--motion-fast)}.help-list article:hover{border-color:#a9c3d0;box-shadow:var(--shadow-3);transform:translateY(-1px)}.help-list article>span{width:44px;height:44px;display:grid;place-items:center;color:var(--primary);background:var(--surface-low);border-radius:10px}.help-list article>span svg{width:20px}.help-list small{color:var(--primary-2);font-size:10px;font-weight:800;text-transform:uppercase}.help-list h2{margin:4px 0 5px;font-size:15px}.help-list p{margin:0;color:var(--muted);line-height:1.55}.help-list button{margin-top:11px;padding:0;color:var(--primary);background:transparent;border:0;font-weight:700;cursor:pointer}.help-contact{display:flex;align-items:center;gap:14px;margin-top:18px;padding:18px;background:#edf7fb;border:1px solid #d4e6ee;border-radius:12px}.help-contact>span{width:42px;height:42px;display:grid;place-items:center;color:#fff;background:var(--primary);border-radius:50%}.help-contact h2{margin:0 0 3px;font-size:15px}.help-contact p{margin:0;color:var(--muted)}.help-contact .btn{margin-left:auto}.current-version{min-height:38px;display:flex;align-items:center;gap:7px;padding:0 12px;color:var(--success);background:#e6f6ed;border:1px solid #bfe5cf;border-radius:8px;font-size:11px;font-weight:700}.current-version svg{width:15px}.help-list article.expanded{grid-column:1/-1}.help-steps{display:grid;gap:7px;margin:12px 0 0;padding:12px 12px 12px 30px;color:#586979;background:#f7fbfd;border-radius:8px;font-size:11px;line-height:1.5}@media(max-width:1050px){.account-trigger{min-width:48px;width:48px;grid-template-columns:36px;padding:5px}.account-trigger-copy,.account-chevron{display:none}.password-stage{grid-template-columns:1fr}.password-policy{width:100%}}@media(max-width:760px){.account-popover{position:fixed;top:70px;right:14px;left:14px;width:auto}.account-popover:before{display:none}.profile-identity-card{padding:16px}.profile-form-footer{align-items:stretch;flex-direction:column}.profile-form-footer .btn{width:100%}.password-stepper strong{font-size:9px}.password-stage{padding:16px}.help-list{grid-template-columns:1fr}.help-contact{align-items:flex-start;flex-wrap:wrap}.help-contact .btn{width:100%;margin-left:0}}.admin-shell,.admin-shell button,.admin-shell input,.admin-shell select,.admin-shell textarea,.admin-shell table{font-family:var(--font-primary)!important}.admin-shell h1,.admin-shell h2,.admin-shell h3,.admin-shell h4,.admin-shell p{font-family:inherit}.admin-shell h1{font-size:26px;line-height:1.28;font-weight:700;letter-spacing:-.025em}.admin-shell h2{font-size:17px;line-height:1.35;font-weight:700;letter-spacing:-.012em}.admin-shell h3{font-size:14px;line-height:1.4;font-weight:700}.admin-shell p,.admin-shell td,.admin-shell input,.admin-shell select,.admin-shell textarea,.admin-shell button{font-size:13px;line-height:1.5}.admin-shell label,.admin-shell th{font-size:11px;font-weight:700}.table-actions{display:flex;align-items:center;gap:6px;white-space:nowrap}.table-action-slot{display:inline-flex;align-items:center}.table-action-slot:empty{display:none}.delete-confirm-content{display:flex;align-items:flex-start;gap:12px}.delete-confirm-content>span{width:38px;height:38px;display:grid;place-items:center;flex:0 0 auto;color:var(--danger);background:#fee9e7;border-radius:9px}.delete-confirm-content svg{width:18px}.delete-confirm-content strong{display:block;margin-bottom:4px}.delete-confirm-content p{margin:0;color:var(--muted)}.crud-record-page{max-width:1100px;margin:0 auto}.record-breadcrumb{display:flex;align-items:center;gap:8px;margin-bottom:14px;color:var(--muted);font-size:11px}.record-breadcrumb a{color:var(--primary-2);font-weight:700}.record-breadcrumb strong{color:#42546b}.record-page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}.record-page-head h1{margin:3px 0 5px}.record-page-head p{margin:0;color:var(--muted)}.record-page-head .btn svg{width:16px}.record-alert{display:flex;align-items:center;gap:11px;margin-bottom:16px;padding:13px 15px;border:1px solid;border-radius:10px}.record-alert>svg{width:19px;flex:0 0 auto}.record-alert strong{display:block}.record-alert p{margin:2px 0 0}.record-alert .btn{margin-left:auto}.record-alert.success{color:#087443;background:#e8f7ef;border-color:#bfe6d1}.record-alert.error{color:#a31515;background:#fff0ef;border-color:#f2c7c3}.record-form-section{margin-bottom:16px;overflow:hidden}.record-form-section>header{min-height:66px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 18px;background:#fbfcfd;border-bottom:1px solid var(--border)}.record-form-section>header h2{margin:0 0 3px}.record-form-section>header p{margin:0;color:var(--muted);font-size:11px}.record-form-section>header>span{display:flex;align-items:center;gap:6px;padding:5px 8px;color:#64717d;background:#edf1f3;border-radius:6px;font-size:10px;font-weight:700}.record-form-section>header>span svg{width:13px}.record-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px;padding:19px}.record-form-grid .full{grid-column:1/-1}.record-form-actions{position:sticky;bottom:12px;z-index:5;display:flex;justify-content:flex-end;gap:9px;margin-top:18px;padding:13px 15px;background:#fffffff5;border:1px solid var(--border);border-radius:11px;box-shadow:0 8px 28px #0f1f351f;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.record-form-actions svg{width:16px}@media(max-width:700px){.record-page-head{display:grid}.record-page-head .btn{width:100%}.record-form-grid{grid-template-columns:1fr}.record-form-grid .full{grid-column:auto}.record-alert{align-items:flex-start;flex-wrap:wrap}.record-alert .btn{width:100%;margin-left:0}.record-form-actions{bottom:6px}.record-form-actions .btn{flex:1}}.system-record-page{max-width:1100px;margin:0 auto}.crud-breadcrumb button{padding:0;color:var(--primary-2);background:transparent;border:0;font-weight:700;cursor:pointer}.system-record-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}.system-record-head h1{margin:3px 0 5px}.system-record-head p{margin:0;color:var(--muted)}.system-record-head .crud-btn svg{width:15px}.system-record-body{display:grid;gap:16px}.system-record-section{overflow:hidden}.system-record-section .crud-section-title{padding:16px 18px;background:#fbfcfd;border-bottom:1px solid var(--border)}.system-record-section .crud-form-grid{padding:19px}.system-record-actions{position:sticky;bottom:12px;z-index:5;display:flex;justify-content:flex-end;gap:9px;margin-top:18px;padding:13px 15px;background:#fffffff5;border:1px solid var(--border);border-radius:11px;box-shadow:0 8px 28px #0f1f351f;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}@media(max-width:700px){.system-record-head{display:grid}.system-record-head .crud-btn{width:100%}.system-record-actions{bottom:6px}.system-record-actions .crud-btn{flex:1}}.legacy-table-state{min-height:260px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:35px;text-align:center}.legacy-table-state>span{width:48px;height:48px;display:grid;place-items:center;color:#355d93;background:#edf4fb;border-radius:13px}.legacy-table-state>span svg{width:21px}.legacy-table-state h3{margin:13px 0 4px;color:#253752;font-size:14px}.legacy-table-state p{margin:0 0 15px;color:#7b8797;font-size:10.5px}.legacy-table-state.error>span{color:#b42318;background:#fee9e7}.legacy-skeleton-row td{padding:17px!important}.legacy-skeleton-row span{display:block;height:22px;background:linear-gradient(90deg,#f0f3f6 25%,#f7f9fb,#f0f3f6 65%);background-size:300% 100%;border-radius:6px;animation:crud-shimmer 1.4s infinite}.event-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.event-detail-grid>div{display:grid;gap:5px;padding:12px;background:#f7f9fb;border:1px solid #e4ebf2;border-radius:8px}.event-detail-grid label{color:#7c8999;font-size:9px;font-weight:700;text-transform:uppercase}.event-detail-grid strong{color:#2c405d;font-size:11px}.modal-header h3{margin:0;color:#1d304c;font-size:16px}.modal-footer{gap:8px}.modal-footer svg{width:15px}@media(max-width:760px){.legacy-filter-card{display:grid;grid-template-columns:1fr}.legacy-filter-field{min-width:0}.legacy-table-pagination{flex-wrap:wrap}.legacy-table-pagination>div:first-child{width:100%}.legacy-table-pagination label{margin-left:0}.legacy-page-controls{margin-left:auto}.event-detail-grid{grid-template-columns:1fr}}.list-filter-card{margin-bottom:16px;overflow:hidden;background:#fff;border:1px solid #dce5ee;border-radius:12px;box-shadow:0 2px 7px #0f1f3506}.list-filter-card form{padding:16px 17px 0}.list-filter-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(185px,1fr));gap:13px}.list-filter-field{min-width:0}.list-filter-field.grow{grid-column:span 2}.list-filter-field>span{display:block;margin-bottom:6px;color:#43536a;font-size:11px;font-weight:700}.list-filter-field .input,.list-filter-field .select{width:100%}.list-filter-card footer{min-height:64px;display:flex;align-items:center;justify-content:flex-end;gap:14px;margin-top:16px;padding:11px 0;border-top:1px solid #e6ecf2}.list-filter-page-actions{display:flex;gap:8px;margin-right:auto}.table-card.has-independent-filter{overflow:visible;background:transparent;border:0;box-shadow:none}.table-card.has-independent-filter>.table-wrap{overflow:auto;background:#fff;border:1px solid var(--border);border-radius:var(--radius-sm) var(--radius-sm) 0 0}.table-card.has-independent-filter>.legacy-table-pagination{background:#fff;border:1px solid var(--border);border-top:0;border-radius:0 0 var(--radius-sm) var(--radius-sm)}.admin-shell .card:hover,.admin-shell [class*=-card]:hover,.admin-shell .btn:hover,.admin-shell .crud-btn:hover,.admin-shell .action-btn:hover,.admin-shell .icon-btn:hover,.admin-shell .sidebar-toggle:hover,.admin-shell .help-list article:hover{transform:none!important}.admin-shell .table tbody tr:hover td,.admin-shell .crud-table tbody tr:hover td{background:#f2f7fa}.admin-shell .table tbody tr,.admin-shell .table tbody td,.admin-shell .crud-table tbody tr,.admin-shell .crud-table tbody td{transform:none!important;transition:background-color .15s ease,color .15s ease}@media(max-width:700px){.list-filter-field.grow{grid-column:auto}.list-filter-card footer{align-items:stretch;flex-direction:column}.list-filter-page-actions{margin-right:0}.list-filter-card footer .btn{width:100%}}.main.has-detail-breadcrumb .page-head{justify-content:flex-end;margin-bottom:16px}.main.has-detail-breadcrumb .page-head>div:first-child:not(:has(.btn)){display:none}.main.has-detail-breadcrumb .page-head>div:first-child:has(.btn)>h1,.main.has-detail-breadcrumb .page-head>div:first-child:has(.btn)>p{display:none}.main.has-detail-breadcrumb .page-head:not(:has(.page-actions)){display:none}.system-crud-page .crud-page-head,.system-reports-page .crud-page-head,.system-record-head,.crud-record-page .record-page-head{margin-bottom:16px}.system-reports-page .crud-page-head,.system-record-head,.crud-record-page .record-page-head{justify-content:flex-end}.system-reports-page .crud-page-head>div:first-child,.system-record-head>div:first-child,.crud-record-page .record-page-head>div:first-child{display:none}.admin-shell .table thead th,.admin-shell .crud-table thead th,.admin-shell .report-table thead th,.admin-shell .notification-table thead th{color:#173b67;background:#e8f1f8;border-top:1px solid #cfdee9;border-bottom:1px solid #bfd1df;font-weight:750;letter-spacing:.045em}.admin-shell .table thead th:first-child,.admin-shell .crud-table thead th:first-child{border-top-left-radius:8px}.admin-shell .table thead th:last-child,.admin-shell .crud-table thead th:last-child{border-top-right-radius:8px}.admin-shell .table thead tr:hover th,.admin-shell .crud-table thead tr:hover th{background:#e8f1f8}.system-crud-page{display:flex;flex-direction:column}.system-crud-page>.crud-breadcrumb{order:0}.system-crud-page>.crud-page-head{order:10;width:100%}.system-crud-page>.crud-filter-card{order:20}.system-crud-page>.crud-table-card{order:30}.crud-record-page.detail-mode .record-page-head,.system-record-page.detail-mode .system-record-head{align-items:flex-start;justify-content:space-between}.crud-record-page.detail-mode .record-page-head>div:first-child,.system-record-page.detail-mode .system-record-head>div:first-child{display:block}.crud-record-page.detail-mode .record-page-head h1,.system-record-page.detail-mode .system-record-head h1{margin:3px 0 5px;font-size:24px}.crud-record-page.detail-mode .record-page-head p,.system-record-page.detail-mode .system-record-head p{margin:0;color:var(--muted)}.crud-record-page.detail-mode .record-page-head .page-actions,.system-record-page.detail-mode .system-record-head .page-actions{display:flex;gap:8px;flex-wrap:wrap}.detail-page-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;align-items:start}.detail-page-layout.with-timeline{grid-template-columns:minmax(0,1fr) 310px}.detail-main-column{display:grid;gap:16px}.detail-section{overflow:hidden}.detail-section>header{min-height:56px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 17px;background:#f8fbfd;border-bottom:1px solid var(--border)}.detail-section>header h2{margin:0;font-size:15px}.detail-section>header span{color:var(--muted);font-size:10px}.detail-property-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;padding:4px 17px 12px}.detail-property-grid>div{min-width:0;padding:14px 8px;border-bottom:1px solid #edf1f4}.detail-property-grid>div:nth-last-child(-n+2){border-bottom:0}.detail-property-grid>div.wide{grid-column:1/-1}.detail-property-grid label{display:block;margin-bottom:6px;color:#748297;font-size:10px;font-weight:750;letter-spacing:.045em;text-transform:uppercase}.detail-property-grid strong{display:block;color:#213650;font-size:12.5px;line-height:1.55;overflow-wrap:anywhere}.detail-long-copy{margin:0;color:#344a64;font-size:12.5px;line-height:1.75;white-space:pre-wrap}.detail-empty-value{color:#98a3af;font-size:12px;font-style:italic}.detail-link{color:var(--primary-2);font-weight:700}.detail-tags{display:flex;gap:6px;flex-wrap:wrap}.detail-timeline-card{position:sticky;top:82px;overflow:hidden}.detail-timeline-card>header{display:flex;align-items:center;gap:10px;padding:15px 16px;background:#f8fbfd;border-bottom:1px solid var(--border)}.detail-timeline-card>header>svg{width:19px;color:var(--primary)}.detail-timeline-card h2{margin:0 0 2px;font-size:14px}.detail-timeline-card header p{margin:0;color:var(--muted);font-size:9.5px}.detail-timeline{padding:17px}.detail-timeline>div{position:relative;display:grid;grid-template-columns:14px 1fr;gap:10px;padding-bottom:22px}.detail-timeline>div:not(:last-child):after{content:"";position:absolute;top:13px;bottom:0;left:5px;width:2px;background:#dce5eb}.detail-timeline i{position:relative;z-index:1;width:12px;height:12px;margin-top:2px;background:#fff;border:2px solid #9aacbb;border-radius:50%}.detail-timeline .done i{background:var(--primary);border-color:var(--primary)}.detail-timeline strong{font-size:11.5px}.detail-timeline p{margin:4px 0;color:var(--muted);font-size:10.5px;line-height:1.5}.detail-timeline small{color:#96a1ad;font-size:9px}.detail-timeline .status{font-size:9px}.detail-file-list{display:grid;padding:4px 17px 12px}.detail-file-list>div{display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:10px;padding:11px 7px;border-bottom:1px solid #edf1f4}.detail-file-list>div:last-child{border-bottom:0}.detail-file-list>div>span{width:36px;height:36px;display:grid;place-items:center;color:var(--primary);background:var(--surface-low);border-radius:8px}.detail-file-list svg{width:17px}.detail-file-list strong,.detail-file-list small{display:block}.detail-file-list strong{font-size:11.5px}.detail-file-list small{margin-top:2px;color:var(--muted);font-size:9.5px}.detail-file-list button{color:var(--primary);background:transparent;border:0;font-size:10px;font-weight:700;cursor:pointer}@media(max-width:900px){.detail-page-layout{grid-template-columns:1fr}.detail-timeline-card{position:static}}@media(max-width:620px){.crud-record-page.detail-mode .record-page-head,.system-record-page.detail-mode .system-record-head{display:grid}.detail-property-grid{grid-template-columns:1fr}.detail-property-grid>div,.detail-property-grid>div:nth-last-child(-n+2){border-bottom:1px solid #edf1f4}.detail-property-grid>div:last-child{border-bottom:0}.crud-record-page.detail-mode .record-page-head .page-actions,.system-record-page.detail-mode .system-record-head .page-actions{display:grid;grid-template-columns:1fr}.detail-file-list>div{grid-template-columns:36px 1fr}.detail-file-list button{grid-column:2;text-align:left;padding:0}}.event-wizard-header{grid-template-columns:1fr;gap:0;padding:12px 24px 0}.event-wizard-title{padding-bottom:12px}.event-wizard-title .icon-back{width:34px;height:34px;border-radius:7px}.event-wizard-title span{margin-bottom:2px;font-size:9.5px}.event-wizard-title h1{color:var(--text);font-size:18px}.wizard-steps{display:flex;justify-content:flex-start;gap:28px;overflow-x:auto;border-bottom:1px solid #e2e7eb;scrollbar-width:none}.wizard-steps::-webkit-scrollbar{display:none}.wizard-steps li{flex:0 0 auto}.wizard-steps li:not(:last-child):after{display:none}.wizard-steps button{width:auto;min-height:38px;display:flex;align-items:center;gap:5px;padding:0 0 9px;color:#6d7780;border-bottom:2px solid transparent;cursor:default}.wizard-steps button>span{width:auto;height:auto;display:inline-flex;color:var(--success);background:transparent;border:0;border-radius:0}.wizard-steps button>span svg{width:13px;height:13px;stroke-width:2.4px}.wizard-steps strong{font-size:11px;line-height:1.2;white-space:nowrap;text-align:left}.wizard-steps li.active button{color:#b51616;border-bottom-color:#c31313}.wizard-steps li.active button>span{color:#b51616;background:transparent;border:0;box-shadow:none}.wizard-steps li.done button{color:var(--success);border-bottom-color:transparent;cursor:pointer}.wizard-steps li.done button:hover{color:#075d37}@media(max-width:760px){.event-wizard-header{padding:10px 14px 0}.event-wizard-title{padding-bottom:9px}.wizard-steps{gap:22px}.wizard-steps button{min-height:36px;padding-bottom:8px}.wizard-steps strong{font-size:10px}}.event-wizard-page .wizard-canvas{padding-top:0}.event-wizard-page .wizard-section-stack{gap:12px}.event-wizard-page .wizard-panel.compact-panel,.event-wizard-page .committee-panel{padding:18px 20px}.committee-title h3{margin:0 0 4px;font-size:15px}.committee-title p{margin:0;color:var(--muted);font-size:11px}@media(max-width:760px){.event-wizard-page .wizard-panel.compact-panel,.event-wizard-page .committee-panel{padding:15px}.committee-title{margin-bottom:12px}}.list-filter-card{overflow:visible;background:transparent;border:0;border-radius:0;box-shadow:none}.list-filter-card form{padding:0}.list-filter-header{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px}.list-filter-header strong{color:#1d304c;font-size:16px;line-height:1.3}.list-filter-reset{width:42px;height:36px;display:grid;place-items:center;padding:0;color:#fff;background:#ca5840;border:1px solid rgba(0,0,0,.06);border-radius:6px;box-shadow:0 1px 3px #132a4a1f;cursor:pointer;transition:filter .15s,transform .15s}.list-filter-reset:hover{filter:brightness(.9);transform:translateY(-1px)}.list-filter-reset svg{width:16px;height:16px}.list-filter-reset:focus-visible{outline:2px solid var(--primary-2);outline-offset:3px;border-radius:2px}.list-filter-body{padding:17px;background:#fff;border:1px solid var(--border);border-radius:12px}.list-filter-grid{align-items:end}.list-filter-card footer{min-height:58px;display:flex;align-items:center;justify-content:flex-end;gap:9px;margin:0;padding:10px 0 8px;border-top:0}.list-filter-card footer .list-filter-search{order:1;width:42px;min-width:42px;height:36px;min-height:36px;padding:0;font-size:0;color:#fff;background:#1a6fb5;border:1px solid rgba(0,0,0,.06);border-radius:6px;box-shadow:0 1px 3px #132a4a1f;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:filter .15s,transform .15s}.list-filter-card footer .list-filter-search:hover{filter:brightness(.9);transform:translateY(-1px);box-shadow:0 3px 8px #132a4a2e}.list-filter-page-actions{order:2;margin:0;display:flex;align-items:center;gap:5px}.list-filter-card footer .btn,.list-filter-page-actions>*{min-height:36px;height:36px;flex:0 0 auto}.list-filter-card footer .btn svg,.list-filter-card footer .list-filter-search svg,.list-filter-page-actions svg{width:16px;height:16px;flex:0 0 auto}@media(max-width:700px){.list-filter-header{align-items:flex-start}.list-filter-header strong{font-size:14px}.list-filter-body{padding:14px}.list-filter-card footer{min-height:0;display:grid;grid-template-columns:1fr;padding-top:10px}.list-filter-page-actions{flex-direction:column}.list-filter-card footer .list-filter-search,.list-filter-page-actions,.list-filter-page-actions .btn{width:100%}}.attendance-hub-page{width:100%}.attendance-page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:22px}.attendance-page-head h1{margin:0 0 7px;color:#172a46;font-size:28px;line-height:1.3;letter-spacing:-.025em}.attendance-page-head p{margin:0;color:var(--muted);font-size:12px}.attendance-session-table .table{min-width:1100px}.personal-attendance-table .table{min-width:1080px}.attendance-participant-table .table{min-width:1000px}.attendance-session-table .legacy-actions-column{width:118px}.attendance-session-table .table-actions{justify-content:flex-start}.attendance-manage-link{white-space:nowrap}.attendance-time-cell{display:grid;gap:4px;min-width:185px}.attendance-time-cell strong{color:#2a394e;font-size:11px}.attendance-time-cell small{color:var(--muted);font-size:9.5px}.attendance-method-chips{min-width:130px}.attendance-method-chips .att-chip{margin-bottom:3px}.attendance-session-form{gap:15px}.modal:has(.attendance-session-form){width:min(720px,100%)}.attendance-required-field{display:flex;align-items:flex-end;padding-bottom:10px}.attendance-required-field label{display:flex;align-items:center;gap:8px;margin:0}.attendance-required-field input,.attendance-method-grid input{width:16px;height:16px;min-height:0;flex:0 0 auto;margin:0;padding:0}.attendance-method-fieldset{min-width:0;margin:0;padding:0;border:0}.attendance-method-fieldset legend{margin-bottom:8px;font-weight:600}.attendance-method-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.attendance-method-grid label{min-height:52px;display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:9px;padding:10px 11px;color:#44546a;background:#fff;border:1px solid #cbd7e1;border-radius:8px;cursor:pointer;transition:border-color var(--motion-instant),background-color var(--motion-instant)}.attendance-method-grid label:hover{border-color:#8fa9bd}.attendance-method-grid label.selected{color:var(--primary);background:#edf4ff;border-color:#789bc7}.attendance-method-grid svg{width:17px;height:17px;stroke-width:1.8px}.attendance-method-grid span{font-size:11px;font-weight:700}.attendance-session-main>div{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.attendance-session-main .detail-badge+.detail-badge,.attendance-session-main .detail-badge+.required-badge{margin-left:0}.attendance-config-strip.session-overview{grid-template-columns:repeat(3,minmax(0,1fr)) auto}.attendance-config-strip.session-overview>div{min-width:0}.attendance-config-strip.session-overview strong{overflow-wrap:anywhere}.attendance-qr-preview{display:flex;align-items:center;gap:16px;margin-bottom:16px;padding:18px;color:#173b67;background:#edf4fb;border:1px solid #cfdee9;border-radius:10px}.attendance-qr-preview>span{width:74px;height:74px;display:grid;place-items:center;flex:0 0 auto;color:#fff;background:var(--primary);border-radius:10px}.attendance-qr-preview>span svg{width:46px;height:46px;stroke-width:1.5px}.attendance-qr-preview strong,.attendance-qr-preview p{display:block;margin:0}.attendance-qr-preview strong{font-size:14px}.attendance-qr-preview p{margin-top:5px;color:#65758a;font-size:11px}.attendance-share-note{display:flex;align-items:flex-start;gap:11px;margin-bottom:16px;padding:13px;color:#24415f;background:#f4f8fb;border:1px solid var(--border);border-radius:8px}.attendance-share-note>svg{width:19px;flex:0 0 auto;color:var(--primary)}.attendance-share-note strong{font-size:12px}.attendance-share-note p{margin:3px 0 0;color:var(--muted);font-size:10px}.attendance-url-field{display:grid;gap:7px}.attendance-url-field>span{font-size:11px;font-weight:700}.attendance-url-field .input{font-variant-numeric:tabular-nums}.attendance-hub-page .list-filter-card{margin-bottom:14px}.attendance-hub-page .legacy-table-state,.attendance-manage-page .legacy-table-state{background:#fff;border:1px solid var(--border);border-top:0;border-radius:0 0 12px 12px}.attendance-hub-page .legacy-table-state+.legacy-table-pagination,.attendance-manage-page .legacy-table-state+.legacy-table-pagination{display:none}.attendance-hub-page .btn:focus-visible,.attendance-manage-page .btn:focus-visible,.attendance-method-grid label:has(input:focus-visible){outline:2px solid var(--primary-2);outline-offset:2px}@media(max-width:760px){.attendance-page-head{display:block}.attendance-page-head h1{font-size:23px}.attendance-method-grid{grid-template-columns:1fr}.attendance-required-field{padding:0}.attendance-config-strip.session-overview{grid-template-columns:1fr}.attendance-config-strip.session-overview>.status{justify-self:start;margin:12px 15px}.attendance-qr-preview{align-items:flex-start}.attendance-qr-preview>span{width:58px;height:58px}.attendance-qr-preview>span svg{width:35px;height:35px}}.attendance-grouped-card{overflow:hidden;background:#fff;border-color:#cfdce6;box-shadow:0 5px 18px #102b480b}.attendance-grouped-summary{min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 16px;background:#fff;border-bottom:1px solid var(--border)}.attendance-grouped-summary>div{display:flex;align-items:baseline;gap:9px}.attendance-grouped-summary strong{color:#1d3452;font-size:13px}.attendance-grouped-summary span{color:var(--muted);font-size:10.5px}.attendance-grouped-summary .btn svg{width:14px}.attendance-grouped-table{min-width:1080px}.attendance-grouped-table th{height:40px}.attendance-grouped-action-head{width:112px;text-align:center!important}.attendance-event-group-row td{height:auto!important;padding:0!important;background:#edf5fa!important;border-top:1px solid #c8d9e5!important;border-bottom:1px solid #c8d9e5!important}.attendance-grouped-table tbody:first-of-type .attendance-event-group-row td{border-top:0!important}.attendance-event-group{min-height:66px;display:grid;grid-template-columns:30px 36px minmax(270px,1fr) auto auto auto;align-items:center;gap:10px;padding:9px 14px}.attendance-event-toggle{width:30px;height:30px;display:grid;place-items:center;padding:0;color:#315779;background:#fff;border:1px solid #c5d5e1;border-radius:7px;cursor:pointer}.attendance-event-toggle:hover{color:#fff;background:var(--primary);border-color:var(--primary)}.attendance-event-toggle:focus-visible{outline:2px solid var(--primary-2);outline-offset:2px}.attendance-event-toggle svg{width:15px;height:15px}.attendance-event-icon{width:36px;height:36px;display:grid;place-items:center;color:#164d84;background:#fff;border:1px solid #cbdce8;border-radius:8px}.attendance-event-icon svg{width:17px;height:17px}.attendance-event-copy{min-width:0}.attendance-event-copy strong,.attendance-event-copy small{display:block}.attendance-event-copy strong{overflow:hidden;color:#173453;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.attendance-event-copy small{margin-top:4px;color:#6d7f91;font-size:9.5px;white-space:nowrap}.attendance-session-count{display:flex;align-items:baseline;gap:4px;min-width:58px;color:#53687d;font-size:10px;white-space:nowrap}.attendance-session-count strong{color:#183b61;font-size:14px}.attendance-event-link{display:inline-flex;align-items:center;gap:5px;color:#174f87;font-size:10px;font-weight:700;white-space:nowrap}.attendance-event-link:hover{text-decoration:underline}.attendance-event-link svg{width:12px;height:12px}.attendance-grouped-session-row td{height:64px!important;background:#fff}.attendance-grouped-session-row:hover td{background:#f8fbfd!important}.attendance-grouped-session-row td:last-child{text-align:center}.attendance-session-branch{min-width:225px;display:grid;grid-template-columns:31px minmax(0,1fr);align-items:center}.attendance-session-branch>span{position:relative;align-self:stretch;min-height:45px}.attendance-session-branch>span:before{content:"";position:absolute;top:-20px;bottom:-20px;left:11px;border-left:2px solid #bfd1df}.attendance-session-branch.last>span:before{bottom:50%}.attendance-session-branch>span:after{content:"";position:absolute;top:50%;left:11px;width:13px;border-top:2px solid #bfd1df}.attendance-session-branch strong,.attendance-session-branch small{display:block}.attendance-session-branch strong{color:#213b59;font-size:11.5px}.attendance-session-branch small{margin-top:3px;color:#8795a4;font-size:9px;font-variant-numeric:tabular-nums}.attendance-grouped-footer{min-height:54px;display:flex;align-items:center;padding:10px 16px;color:#748395;background:#fbfcfd;border-top:1px solid var(--border);font-size:10.5px}.attendance-grouped-footer strong{margin:0 3px;color:#29415e}.attendance-grouped-card>.legacy-table-state{border:0!important;border-radius:0!important}@media(max-width:760px){.attendance-grouped-summary{align-items:flex-start}.attendance-grouped-summary>div{display:grid;gap:2px}.attendance-event-group{grid-template-columns:30px 36px minmax(245px,1fr) auto auto auto}.attendance-event-copy small{max-width:420px;overflow:hidden;text-overflow:ellipsis}.attendance-grouped-table{min-width:1040px}}.certificates-page{max-width:1180px;margin:0 auto}.certificates-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:24px}.certificates-head h1{margin:4px 0 7px;color:#172a46;font-size:28px;letter-spacing:-.025em}.certificates-head p{margin:0;color:var(--muted);font-size:12px}.certificate-summary{min-width:185px;display:flex;align-items:center;gap:12px;padding:14px 16px;color:#fff;background:linear-gradient(135deg,#039,#155eef);border-radius:12px;box-shadow:0 10px 25px #00339929}.certificate-summary>svg{width:30px;height:30px;stroke-width:1.7}.certificate-summary strong,.certificate-summary span{display:block}.certificate-summary strong{font-size:22px;line-height:1}.certificate-summary span{margin-top:5px;font-size:10px;opacity:.86}.certificate-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.certificate-card{position:relative;display:grid;grid-template-columns:78px minmax(0,1fr);overflow:hidden;background:#fff;border:1px solid #cfdce6;border-radius:14px;box-shadow:0 8px 24px #102b480f}.certificate-card:after{content:"";position:absolute;top:10px;right:10px;bottom:10px;left:10px;border:1px solid rgba(0,51,153,.08);border-radius:9px;pointer-events:none}.certificate-card-mark{position:relative;z-index:1;display:grid;place-items:center;color:#fff;background:#039}.certificate-card-mark:before,.certificate-card-mark:after{content:"";position:absolute;width:38px;height:38px;border:1px solid rgba(255,255,255,.2);transform:rotate(45deg)}.certificate-card-mark:after{width:58px;height:58px}.certificate-card-mark svg{position:relative;z-index:1;width:30px;height:30px}.certificate-card-body{position:relative;z-index:1;min-width:0;padding:20px}.certificate-status{display:inline-flex;align-items:center;gap:5px;padding:4px 8px;color:#087443;background:#e8f7ef;border-radius:999px;font-size:9px;font-weight:800}.certificate-status svg{width:12px;height:12px}.certificate-card h2{margin:12px 0 8px;color:#183451;font-size:16px;line-height:1.4}.certificate-event{display:flex;align-items:flex-start;gap:7px;margin:0;color:#60738a;font-size:10.5px;line-height:1.5}.certificate-event svg{width:14px;flex:0 0 auto}.certificate-card dl{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0;padding:13px 0;border-top:1px solid #e5ebef;border-bottom:1px solid #e5ebef}.certificate-card dt{color:#8491a0;font-size:8.5px;font-weight:700;text-transform:uppercase}.certificate-card dd{margin:4px 0 0;color:#263d57;font-size:10.5px;font-weight:700}.certificate-card footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.certificate-card footer>span{display:flex;align-items:center;gap:5px;color:#748499;font-size:9px}.certificate-card footer>span svg{width:14px;color:#155eef}.certificate-card footer>span strong{color:#38516d}.certificate-card footer .crud-btn{position:relative;z-index:2;min-height:34px;padding:0 10px;font-size:9.5px}.certificate-card footer .crud-btn svg{width:13px}@media(max-width:980px){.certificate-grid{grid-template-columns:1fr}}@media(max-width:620px){.certificates-head{display:grid}.certificate-summary{width:100%}.certificate-card{grid-template-columns:1fr}.certificate-card-mark{min-height:72px}.certificate-card dl{grid-template-columns:1fr}.certificate-card footer{align-items:flex-start;flex-direction:column}.certificate-card footer .crud-btn{width:100%}}.bulk-file-strip{display:flex;justify-content:flex-end;margin:-2px 0 12px}.bulk-file-actions{position:relative;display:flex;align-items:center;justify-content:flex-end;gap:5px;flex-wrap:wrap}.bulk-file-btn,.admin-icon-action{width:42px;height:36px;display:inline-grid;place-items:center;flex:0 0 auto;padding:0;color:#fff;background:transparent;border:1px solid rgba(0,0,0,.06);border-radius:6px;box-shadow:0 1px 3px #132a4a1f;font-size:0;cursor:pointer;transition:filter .15s,transform .15s,box-shadow .15s}.bulk-file-btn.template{background:#22a354}.bulk-file-btn.import,.bulk-file-btn.export{background:#1a6fb5}.admin-icon-action.add{background:#22a354}.admin-icon-action.export{background:#1a6fb5}.bulk-file-btn:hover,.admin-icon-action:hover{filter:brightness(.9);transform:translateY(-1px);box-shadow:0 3px 8px #132a4a2e}.bulk-file-btn:focus-visible,.admin-icon-action:focus-visible{outline:2px solid var(--primary-2);outline-offset:2px}.bulk-file-btn svg,.admin-icon-action svg{width:16px;height:16px;margin:0;stroke-width:2}.bulk-file-input{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important}.bulk-file-notice{position:absolute;right:0;top:calc(100% + 5px);z-index:8;padding:5px 8px;color:#087443;background:#e8f7ef;border:1px solid #b8e4cc;border-radius:6px;box-shadow:0 5px 14px #0874431a;font-size:9px;font-weight:700;white-space:nowrap}.list-filter-page-actions>.btn:has(svg){width:42px;min-width:42px;height:36px;min-height:36px;padding:0;font-size:0;color:#fff;background:#22a354;border:1px solid rgba(0,0,0,.06);border-radius:6px;box-shadow:0 1px 3px #132a4a1f}.list-filter-page-actions>.btn:has(svg):hover{filter:brightness(.9);transform:translateY(-1px);box-shadow:0 3px 8px #132a4a2e}.list-filter-page-actions>.btn:has(svg) svg{width:16px;height:16px;margin:0}.crud-bulk-toolbar{min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:8px 16px;color:#173a62;background:#edf5ff;border-bottom:1px solid #c9daeb}.crud-bulk-toolbar>strong{font-size:11px}.crud-bulk-toolbar>div{display:flex;align-items:center;gap:5px}.crud-bulk-toolbar button{width:42px;height:36px;display:grid;place-items:center;padding:0;color:#fff;border:1px solid rgba(0,0,0,.06);border-radius:6px;cursor:pointer;transition:filter .15s,transform .15s}.crud-bulk-toolbar button.activate,.crud-bulk-toolbar button.export{background:#1a6fb5}.crud-bulk-toolbar button.clear{background:#ca5840}.crud-bulk-toolbar button:hover{filter:brightness(.9);transform:translateY(-1px)}.crud-bulk-toolbar button svg{width:16px;height:16px}.crud-select-column{width:42px!important;padding-inline:12px!important;text-align:center!important}.crud-select-column input{width:15px;height:15px;min-height:0;margin:0;accent-color:var(--primary);cursor:pointer}.crud-table tr.selected-row td{background:#f2f7ff}.crud-table tr.selected-row:hover td{background:#eaf2ff}@media(max-width:900px){.list-filter-page-actions{flex-wrap:wrap}.list-filter-page-actions>.bulk-file-actions{justify-content:flex-end}}@media(max-width:620px){.bulk-file-strip{justify-content:flex-end}.bulk-file-notice{position:static;flex-basis:100%;white-space:normal}.crud-bulk-toolbar{align-items:flex-start;flex-direction:column}.crud-bulk-toolbar>div{width:100%;flex-wrap:wrap}}.time-cell{display:flex;align-items:center;gap:7px;color:#52606a;font-size:12px;font-variant-numeric:tabular-nums;white-space:nowrap}.time-cell svg{color:#8ca4b0}.details-cell{max-width:280px}.details-cell span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#44545c;font-size:12px}.action-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 8px;border-radius:5px;font-size:10px;font-weight:700}.action-badge.create{color:#087443;background:#dcf5e8}.action-badge.update{color:#17499e;background:#e3ebff}.action-badge.delete{color:#a31515;background:#ffe1df}.action-badge.login,.action-badge.logout{color:#744600;background:#fff0d3}.action-badge.export{color:#1a6fb5;background:#e3f0ff}.action-badge.import{color:#754400;background:#fff0d3}.action-badge.approve{color:#087443;background:#dcf5e8}.settings-page{max-width:1200px}.settings-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:20px;align-items:start}.settings-nav{position:sticky;top:calc(var(--header) + 16px);display:grid;gap:4px;padding:16px;background:#fff;border:1px solid var(--border);border-radius:12px}.settings-nav-item{display:flex;align-items:center;gap:10px;padding:11px 13px;border-radius:8px;font-size:13px;font-weight:500;color:var(--muted);background:transparent;border:0;cursor:pointer;transition:all var(--motion-fast);text-align:left;width:100%}.settings-nav-item:hover{color:var(--primary);background:#f0f6ff}.settings-nav-item.active{color:var(--primary);background:#e8f1ff;font-weight:600}.settings-nav-item svg{width:18px;height:18px;flex:0 0 auto}.settings-content{min-width:0}.settings-loading{display:grid;gap:14px}.skeleton-block{height:52px;background:linear-gradient(90deg,#f0f4f6 25%,#e8edf0,#f0f4f6 75%);background-size:200% 100%;animation:skeleton-shimmer 1.4s ease infinite;border-radius:8px}.skeleton-block.tall{height:160px}.settings-section{padding:24px}.settings-section-header{display:flex;align-items:center;gap:12px;margin-bottom:24px;padding-bottom:18px;border-bottom:1px solid var(--border)}.settings-section-header svg{width:24px;height:24px;color:var(--primary)}.settings-section-header h2{margin:0;font-size:18px}.settings-fields{display:grid;gap:20px}.settings-field{display:grid;grid-template-columns:1fr 1.5fr;gap:20px;align-items:start;padding-bottom:20px;border-bottom:1px solid #e7eef1}.settings-field:last-child{border-bottom:0;padding-bottom:0}.settings-field-info label{display:block;margin-bottom:6px;font-size:13px;font-weight:600;color:var(--text)}.settings-field-info small{color:var(--muted);font-size:11px;line-height:1.5}.settings-field-control input[type=text],.settings-field-control input[type=email],.settings-field-control input[type=number]{width:100%;height:40px;padding:0 12px;border:1px solid #bfcfd6;border-radius:8px;background:#fff;font-size:13px;outline:none;transition:border-color var(--motion-fast),box-shadow var(--motion-fast)}.settings-field-control input:focus{border-color:var(--primary-2);box-shadow:0 0 0 3px #0033991a}.settings-field-control textarea{width:100%;padding:10px 12px;border:1px solid #bfcfd6;border-radius:8px;background:#fff;font-size:13px;outline:none;resize:vertical;min-height:80px;transition:border-color var(--motion-fast),box-shadow var(--motion-fast)}.settings-field-control textarea:focus{border-color:var(--primary-2);box-shadow:0 0 0 3px #0033991a}.color-input-wrap{display:flex;gap:8px;align-items:center}.color-input-wrap input[type=color]{width:44px;height:40px;padding:4px;border:1px solid #bfcfd6;border-radius:8px;background:#fff;cursor:pointer}.color-input-wrap input[type=text]{flex:1}.toggle-switch{position:relative;display:inline-flex;align-items:center;gap:8px;padding:0;background:transparent;border:0;cursor:pointer}.toggle-switch svg{width:40px;height:22px;color:#8ca4b0}.toggle-switch.active svg{color:var(--primary)}.toggle-track{position:absolute;left:9px;right:9px;top:50%;height:14px;transform:translateY(-50%);background:#d1d9e0;border-radius:99px;pointer-events:none;transition:background var(--motion-fast)}.toggle-thumb{position:absolute;top:50%;left:10px;width:10px;height:10px;background:#fff;border-radius:50%;transform:translateY(-50%);box-shadow:0 1px 3px #0003;transition:left var(--motion-fast),transform var(--motion-fast)}.toggle-switch.active .toggle-thumb{left:calc(100% - 20px)}.toggle-switch.active .toggle-track{background:var(--primary-2)}@keyframes skeleton-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@media(max-width:900px){.settings-layout{grid-template-columns:1fr}.settings-nav{position:static;display:flex;flex-wrap:wrap;gap:6px;padding:12px}.settings-nav-item{width:auto;flex:0 0 auto}}@media(max-width:620px){.settings-field{grid-template-columns:1fr;gap:10px}.settings-section{padding:16px}}.club-profile-page{max-width:1280px}.profile-page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px}.profile-page-head h1{margin:5px 0 6px;font-size:26px}.profile-page-head p{margin:0;color:var(--muted)}.profile-loading{display:grid;gap:14px}.club-banner-card{position:relative;height:200px;margin-bottom:24px;overflow:hidden;border-radius:14px;background:var(--primary)}.club-banner-bg{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,#001f55,#00358c 60%,#1a4d8c)}.club-banner-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.04'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}.club-banner-content{position:relative;z-index:1;display:flex;align-items:center;gap:20px;height:100%;padding:20px 28px}.club-logo-wrapper{position:relative;flex:0 0 auto}.club-logo{width:90px;height:90px;display:grid;place-items:center;border-radius:50%;background:#fff;box-shadow:0 8px 24px #0003}.club-logo span{font-size:28px;font-weight:800;color:var(--primary)}.club-logo-edit{position:absolute;bottom:0;right:0;width:32px;height:32px;display:grid;place-items:center;color:#fff;background:var(--primary-2);border:2px solid #fff;border-radius:50%;cursor:pointer;transition:transform var(--motion-fast)}.club-logo-edit:hover{transform:scale(1.1)}.club-banner-info{flex:1}.club-banner-info h2{margin:0 0 6px;color:#fff;font-size:24px}.club-banner-info p{margin:0 0 12px;color:#fffc;font-size:13px}.club-banner-meta{display:flex;flex-wrap:wrap;gap:16px}.club-banner-meta span{display:flex;align-items:center;gap:6px;color:#ffffffd9;font-size:12px}.club-banner-meta svg{width:14px}.edit-banner-btn{position:relative;z-index:2;margin-left:auto}.club-banner-actions{display:flex;gap:8px;margin-left:auto;flex-wrap:wrap}.profile-content-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:20px;align-items:start}.profile-main-column,.profile-side-column{display:grid;gap:20px}.profile-section{padding:22px}.profile-section-header{display:flex;align-items:flex-start;gap:14px;margin-bottom:20px}.profile-section-icon{width:42px;height:42px;display:grid;place-items:center;color:var(--primary);background:#e8f1ff;border-radius:10px;flex:0 0 auto}.profile-section-header>div:nth-child(2){flex:1}.profile-section-header h2{margin:0 0 3px;font-size:16px}.profile-section-header p{margin:0;color:var(--muted);font-size:12px}.section-edit-btn{width:36px;height:36px;display:grid;place-items:center;color:var(--muted);background:#f5f7fa;border:1px solid var(--border);border-radius:8px;cursor:pointer;transition:all var(--motion-fast)}.section-edit-btn:hover{color:var(--primary);background:#e8f1ff;border-color:var(--primary-2)}.profile-section-body{display:grid;gap:18px}.profile-field label{display:block;margin-bottom:8px;font-size:12px;font-weight:600;color:var(--muted)}.profile-field textarea{width:100%;padding:10px 12px;border:1px solid #bfcfd6;border-radius:8px;font-size:13px;resize:vertical;min-height:80px;outline:none;transition:border-color var(--motion-fast)}.profile-field textarea:focus{border-color:var(--primary-2);box-shadow:0 0 0 3px #0033991a}.profile-field-text{color:#44545c;font-size:13px;line-height:1.7;margin:0}.core-values-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}.core-value-item{display:flex;align-items:center;gap:10px;padding:14px 16px;background:#f5f9fb;border:1px solid var(--border);border-radius:10px;transition:all var(--motion-fast)}.core-value-item:hover{border-color:var(--primary-2);background:#e8f1ff}.core-value-icon{width:32px;height:32px;display:grid;place-items:center;color:#fff;background:var(--primary);border-radius:8px}.core-value-item strong{font-size:13px}.core-value-edit{display:flex;align-items:center;gap:8px;flex:1}.core-value-edit input{flex:1;height:32px;padding:0 10px;border:1px solid var(--border);border-radius:6px;font-size:12px;outline:none}.core-value-edit input:focus{border-color:var(--primary-2)}.remove-value-btn{width:24px;height:24px;display:grid;place-items:center;color:#ca5840;background:transparent;border:0;cursor:pointer}.remove-value-btn:hover{background:#ffe1df;border-radius:4px}.add-value-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px;border:2px dashed #a8c2ce;border-radius:10px;color:var(--muted);background:transparent;font-size:12px;font-weight:600;cursor:pointer;transition:all var(--motion-fast)}.add-value-btn:hover{border-color:var(--primary-2);color:var(--primary);background:#f0f6ff}.achievements-timeline{display:grid;gap:0}.achievement-item{display:grid;grid-template-columns:auto 1fr auto;gap:16px;padding:16px;border-left:2px solid #d1dbe3;margin-left:8px;position:relative}.achievement-item:before{content:"";position:absolute;left:-6px;top:20px;width:10px;height:10px;background:var(--primary);border-radius:50%}.achievement-year{min-width:52px;padding:4px 10px;background:var(--primary);color:#fff;border-radius:6px;font-size:12px;font-weight:700;text-align:center}.achievement-content h4{margin:0 0 4px;font-size:13px}.achievement-content p{margin:0;color:var(--muted);font-size:12px}.achievement-icon{color:var(--warning);margin:auto 0}.charter-content{background:#f8fafb;border-radius:10px;padding:20px;font-size:12px;line-height:1.8;white-space:pre-line}.charter-content p{margin:0 0 12px}.charter-content p:last-child{margin:0}.contact-list{display:grid;gap:14px}.contact-item{display:flex;align-items:flex-start;gap:12px;padding:12px;background:#f8fafb;border-radius:10px}.contact-item>svg{width:18px;height:18px;color:var(--primary);margin-top:2px;flex:0 0 auto}.contact-item>div{flex:1}.contact-item label{display:block;margin-bottom:4px;font-size:11px;color:var(--muted);font-weight:600}.contact-item span,.contact-item a{display:block;font-size:12px;color:var(--text)}.contact-item a{color:var(--primary-2)}.contact-item input{width:100%;height:34px;padding:0 10px;border:1px solid var(--border);border-radius:6px;font-size:12px;outline:none}.contact-item input:focus{border-color:var(--primary-2)}.social-links{display:grid;gap:10px}.social-item{display:flex;align-items:center;gap:12px;padding:12px;background:#f8fafb;border-radius:10px}.social-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:8px;flex:0 0 auto}.social-facebook{background:#1877f2;color:#fff;font-weight:700;font-size:14px}.social-github{background:#24292e;color:#fff;font-weight:700;font-size:10px}.social-zalo{background:#0068ff;color:#fff;font-weight:700;font-size:14px}.social-youtube{background:red;color:#fff;font-weight:700;font-size:10px}.social-icon svg{color:#fff}.social-info{flex:1}.social-info label{display:block;margin-bottom:4px;font-size:11px;color:var(--muted);font-weight:600}.social-info a,.social-info span{display:block;font-size:11px;color:var(--primary-2)}.social-info input{width:100%;height:32px;padding:0 8px;border:1px solid var(--border);border-radius:6px;font-size:11px;outline:none}.social-info input:focus{border-color:var(--primary-2)}.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.stat-item{display:flex;align-items:flex-start;gap:12px;padding:14px;background:#f5f9fb;border-radius:10px}.stat-icon{width:36px;height:36px;display:grid;place-items:center;color:#fff;background:var(--primary);border-radius:9px;flex:0 0 auto}.stat-info{flex:1}.stat-value{display:flex;flex-direction:column}.stat-value:not(:last-child){margin-bottom:8px}.stat-value strong{font-size:20px;line-height:1}.stat-value span{font-size:11px;color:var(--muted)}.goals-list{display:grid;gap:16px}.goal-item{padding:14px;background:#f8fafb;border-radius:10px}.goal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.goal-label{font-size:12px;font-weight:600}.goal-target{font-size:12px;color:var(--muted)}.goal-input{display:flex;align-items:center;gap:6px}.goal-input input{width:60px;height:30px;padding:0 8px;border:1px solid var(--border);border-radius:6px;font-size:12px;text-align:right}.goal-input input:focus{border-color:var(--primary-2)}.goal-input span{font-size:11px;color:var(--muted)}.goal-progress{display:flex;align-items:center;gap:12px}.goal-track{flex:1;height:8px;background:#dce6ec;border-radius:99px;overflow:hidden}.goal-fill{height:100%;background:linear-gradient(90deg,var(--primary),var(--primary-2));border-radius:99px;transition:width .5s ease}.goal-percent{min-width:40px;text-align:right;font-size:11px;font-weight:700;color:var(--primary)}.profile-section textarea{width:100%;padding:12px;border:1px solid var(--border);border-radius:8px;font-size:13px;resize:vertical;outline:none;line-height:1.7}.profile-section textarea:focus{border-color:var(--primary-2);box-shadow:0 0 0 3px #0033991a}@media(max-width:1100px){.profile-content-grid{grid-template-columns:1fr}.profile-side-column{order:-1;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}}@media(max-width:768px){.club-banner-content{flex-wrap:wrap;padding:16px}.club-banner-info{width:100%}.edit-banner-btn{width:100%;margin-top:12px}.profile-page-head{flex-direction:column}.profile-section{padding:16px}.stats-grid{grid-template-columns:1fr}}@media(max-width:480px){.club-banner-meta{flex-direction:column;gap:8px}.core-values-grid{grid-template-columns:1fr}}.event-detail-page.modern{max-width:1240px;margin:0 auto}.event-detail-hero .detail-key-facts{grid-template-columns:repeat(4,1fr)}.event-type-pill,.owner-unit-pill{display:inline-flex;align-items:center;gap:4px;padding:3px 9px;background:#ffffff26;border:1px solid rgba(255,255,255,.25);border-radius:20px;font-size:11px;font-weight:600;color:#e2eeff}.owner-unit-pill svg{width:13px;height:13px}.event-detail-hero .btn-danger-outline{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;color:#ffb3b3;background:#dc262633;border:1px solid rgba(239,68,68,.45);border-radius:8px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s ease}.event-detail-hero .btn-danger-outline:hover{background:#dc262659;color:#fff}.event-detail-hero .btn-success{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;color:#044e2b;background:#22c55e;border:none;border-radius:8px;font-size:12px;font-weight:700;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px #22c55e40}.event-detail-hero .btn-success:hover{background:#16a34a;color:#fff;transform:translateY(-1px)}.event-detail-tabs-container{margin-top:18px}.event-detail-tabs{display:flex;align-items:center;gap:4px;padding:6px;background:#fff;border:1px solid var(--border);border-radius:12px;margin-bottom:18px;box-shadow:0 2px 8px #00206808}.event-tab-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;color:var(--muted);background:transparent;border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease;outline:none}.event-tab-btn svg{width:16px;height:16px;opacity:.75}.event-tab-btn:hover{color:var(--primary);background:#f0f6ff}.event-tab-btn.active{color:var(--primary);background:#e8f1ff;font-weight:700;box-shadow:inset 0 0 0 1px #001f551f}.event-tab-btn.active svg{opacity:1;color:var(--primary)}.tab-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;margin-left:2px;background:#001f5514;color:var(--primary);border-radius:10px;font-size:11px;font-weight:700}.event-tab-btn.active .tab-count{background:var(--primary);color:#fff}.event-tab-pane{display:grid;gap:18px}.detail-two-col{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.detail-label-grid.col-2{grid-template-columns:repeat(2,1fr)}.member-name-cell{display:flex;align-items:center;gap:8px}.member-name-cell svg{width:16px;height:16px;color:var(--primary)}.code-badge{display:inline-block;padding:2px 8px;background:#f1f5f9;color:#475569;border-radius:6px;font-family:monospace;font-size:11px}.attendance-session-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}.attendance-card{display:flex;flex-direction:column;justify-content:space-between;padding:16px;background:#fafcff;border:1px solid #e2eaf4;border-radius:10px;transition:all .2s ease}.attendance-card:hover{border-color:#bad3f5;box-shadow:0 4px 16px #001f550f}.attendance-card-header{display:flex;align-items:flex-start;gap:12px}.attendance-method-icon{width:38px;height:38px;display:grid;place-items:center;background:#e8f1ff;color:var(--primary);border-radius:8px;flex-shrink:0}.attendance-method-icon svg{width:18px;height:18px}.attendance-badges{display:flex;align-items:center;gap:6px;margin-bottom:4px}.attendance-card h3{margin:0;font-size:14px;font-weight:700}.attendance-time{margin:10px 0;font-size:12px;color:var(--muted)}.attendance-stats{display:flex;align-items:center;justify-content:space-between;padding-top:10px;border-top:1px dashed #e2eaf4}.attendance-card-footer{margin-top:12px;display:flex;justify-content:flex-end}.document-list-modern{display:grid;gap:10px}.document-item{display:flex;align-items:center;gap:14px;padding:12px 16px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;transition:background .15s ease}.document-item:hover{background:#f1f5f9}.doc-icon{width:36px;height:36px;display:grid;place-items:center;background:#e0f2fe;color:#0284c7;border-radius:8px}.doc-info{flex:1}.doc-info strong{display:block;font-size:13px;margin-bottom:2px}.doc-meta{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:11px}.doc-type-badge{padding:1px 6px;background:#e2e8f0;color:#334155;border-radius:4px;font-size:10px;font-weight:600}.history-timeline{display:grid;gap:16px;padding-left:6px}.timeline-item{display:flex;gap:14px;position:relative}.timeline-item:not(:last-child):after{content:"";position:absolute;top:24px;left:9px;bottom:-16px;width:2px;background:#e2e8f0}.timeline-marker{width:20px;height:20px;display:grid;place-items:center;color:#22c55e;background:#fff;z-index:1}.timeline-marker svg{width:18px;height:18px}.timeline-content{flex:1;padding:10px 14px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px}.timeline-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:4px}.timeline-header strong{font-size:13px}.timeline-header time{font-size:11px;color:var(--muted)}.timeline-actor{display:inline-flex;align-items:center;gap:5px;margin:0;font-size:11px;color:var(--muted)}.timeline-actor svg{width:12px;height:12px}@media(max-width:992px){.event-detail-hero .detail-key-facts{grid-template-columns:repeat(2,1fr)}.detail-two-col{grid-template-columns:1fr}.event-detail-tabs{overflow-x:auto;white-space:nowrap}}.bulk-attendance-helper{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;background:#f0f6ff;border:1px solid #cce0ff;border-radius:8px;margin-bottom:16px}.bulk-attendance-helper .helper-icon{width:32px;height:32px;display:grid;place-items:center;background:var(--primary);color:#fff;border-radius:6px;flex-shrink:0}.bulk-attendance-helper strong{display:block;font-size:13px;color:var(--primary);margin-bottom:2px}.bulk-attendance-helper p{margin:0;font-size:12px;color:var(--muted)}.bulk-attendance-helper code{padding:1px 5px;background:#e1ecfe;color:#00358c;border-radius:4px;font-family:monospace}.mono-text{font-family:monospace;font-size:13px;line-height:1.5}.form-grid.margin-top{margin-top:12px}.bulk-tab-switcher{display:flex;gap:8px;margin-bottom:14px;background:#f1f5f9;padding:4px;border-radius:8px}.bulk-tab-btn{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:8px 14px;background:transparent;color:var(--muted);border:none;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:all .15s ease}.bulk-tab-btn svg{width:16px;height:16px}.bulk-tab-btn.active{background:#fff;color:var(--primary);box-shadow:0 2px 6px #001f5514}.file-upload-section{margin-top:14px}.dropzone-box{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:24px 16px;border:2px dashed #cbd5e1;border-radius:10px;background:#f8fafc;cursor:pointer;transition:all .2s ease;text-align:center}.dropzone-box:hover{border-color:var(--primary);background:#f0f6ff}.dropzone-icon{width:42px;height:42px;display:grid;place-items:center;background:#e0f2fe;color:#0284c7;border-radius:10px}.dropzone-icon svg{width:22px;height:22px}.dropzone-box strong{font-size:13px;color:var(--text)}.dropzone-box p{margin:0;font-size:11px;color:var(--muted)}.dropzone-box code{padding:1px 4px;background:#e2e8f0;border-radius:4px;font-family:monospace}.file-loaded-banner{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:10px}.file-loaded-banner svg{width:24px;height:24px;color:#059669}.file-loaded-banner div{flex:1}.file-loaded-banner strong{display:block;font-size:13px;color:#065f46}.file-loaded-banner small{font-size:11px;color:#047857}.action-btn-danger{padding:6px;color:#ef4444;background:transparent;border:none;border-radius:6px;cursor:pointer}.action-btn-danger:hover{background:#fee2e2}.sample-template-bar{display:flex;align-items:center;justify-content:space-between;margin-top:10px;padding:8px 12px;background:#f8fafc;border-radius:6px;font-size:12px;color:var(--muted)}.btn-link{display:inline-flex;align-items:center;gap:5px;color:var(--primary);background:none;border:none;font-size:12px;font-weight:600;cursor:pointer;padding:0}.btn-link:hover{text-decoration:underline}@media(max-width:700px){.main-content{padding:14px 10px}.page-head{align-items:flex-start;flex-direction:column;gap:10px}.page-head h1{font-size:20px;line-height:1.2}.page-actions,.card-header,.table-toolbar,.form-actions{flex-wrap:wrap}.page-actions .btn,.page-actions a.btn{flex:1 1 auto}.content-grid,.content-grid[style],.main-content>[style*=grid-template-columns]{grid-template-columns:minmax(0,1fr)!important}.card{min-width:0}.card-body{padding:14px}.table-wrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table{min-width:680px}.form-grid,.form-grid[style],.card-body [style*=grid-template-columns]{grid-template-columns:minmax(0,1fr)!important}input,select,textarea{max-width:100%}.modal{width:calc(100vw - 20px);max-height:calc(100vh - 20px);overflow-y:auto}.bulk-tab-switcher{overflow-x:auto;justify-content:flex-start}.bulk-tab-btn{min-width:150px;white-space:nowrap}}.directive-form{padding:20px;margin-bottom:20px;display:grid;gap:16px}.directive-form-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;display:grid;place-items:start center;overflow-y:auto;padding:24px 16px;background:#0f172a9e}.directive-form-modal{width:min(980px,100%);max-height:calc(100dvh - 48px);overflow-y:auto;margin:0}.directive-form-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.directive-form-heading h2{margin:0}.directive-fields{border:0;padding:0;margin:0;min-width:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.directive-fields>label,.directive-search{display:grid;gap:6px}.directive-wide{grid-column:1 / -1}.directive-recipients{min-width:0;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-low);max-height:300px;overflow-y:auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:8px;padding:12px}.directive-recipients>label{display:flex;align-items:flex-start;gap:10px;min-height:44px;padding:12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:#fff;line-height:1.5;overflow-wrap:anywhere;cursor:pointer}.directive-recipients>label:has(input:checked){background:var(--surface-mid);border-color:var(--primary);color:var(--primary);box-shadow:inset 3px 0 var(--primary)}.directive-recipients>label:has(input:focus-visible){outline:2px solid var(--primary);outline-offset:2px}.directive-recipients>label:has(input:disabled){cursor:default}.directive-recipients input{flex-shrink:0;width:16px;height:16px;margin:2px 0 0;accent-color:var(--primary)}.directive-recipient-all{grid-column:1 / -1;font-weight:700}.directive-recipient-tags{display:flex;flex-wrap:wrap;gap:6px}.directive-recipient-tags>span{padding:4px 8px;border:1px solid var(--border);border-radius:var(--radius-xs);background:var(--surface-low);line-height:1.5}.directive-description-cell{min-width:240px;max-width:360px;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.5}.directive-description-toggle{margin-left:6px;padding:0;border:0;background:transparent;color:var(--primary);font:inherit;font-weight:700;cursor:pointer;white-space:nowrap}.directive-description-toggle:hover{text-decoration:underline}.directive-description-toggle:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:2px}.directive-filter-grid{display:grid;grid-template-columns:minmax(220px,2fr) repeat(3,minmax(150px,1fr));gap:12px;align-items:end;margin-bottom:16px}.directive-filter-grid>label{display:grid;gap:6px;font-weight:700}.directive-filter-reset{min-height:40px}.directive-filter-error{margin:-8px 0 16px;color:var(--danger);font-weight:700}.directive-file-field{display:grid;gap:8px}.directive-file-label{font-weight:700}.directive-file-card{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:14px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-low)}.directive-file-icon{display:grid;place-items:center;width:42px;height:42px;color:var(--primary);background:#fff;border-radius:10px}.directive-file-info{display:grid;gap:3px;min-width:0;flex:1 1 240px}.directive-file-info strong{overflow-wrap:anywhere}.directive-file-info span,.directive-file-status{color:var(--muted);font-size:12px}.directive-file-picker{position:relative;overflow:hidden}.directive-file-picker:focus-within{outline:3px solid var(--primary);outline-offset:3px}.directive-file-picker input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.directive-file-download{min-height:36px}.directive-file-status{display:inline-flex;align-items:center;gap:5px;color:var(--success, #16794c)}.directive-download-button{white-space:nowrap}.directive-action-buttons{flex-wrap:nowrap;min-width:max-content;align-items:center}.directive-action-buttons .btn{flex:0 0 auto;white-space:nowrap}.directive-preview{width:min(1100px,calc(100vw - 28px));height:min(900px,85dvh);max-height:90dvh;padding:16px;border:1px solid var(--border);border-radius:var(--radius-sm)}.directive-preview[open]{display:flex;flex-direction:column;gap:12px}.directive-preview::backdrop{background:#0009}.directive-preview-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.directive-preview-head h2{flex:1 1 200px;min-width:0;margin:0;font-size:18px;overflow-wrap:anywhere}.directive-preview-content{width:100%;min-height:0;flex:1;border:0;object-fit:contain}@media(max-width:900px){.directive-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.directive-fields,.directive-filter-grid{grid-template-columns:1fr}}.article-block-editor{display:grid;gap:10px;border:1px solid var(--border);border-radius:8px;padding:12px;background:#f8fafc}.article-editor-toolbar,.article-block-row,.article-gallery-controls,.article-media-footer{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.article-editor-toolbar{position:sticky;top:0;z-index:2;padding-bottom:8px;border-bottom:1px solid var(--border);background:#f8fafc}.article-editor-empty{display:grid;gap:10px;place-items:center;padding:32px 16px;border:1px dashed #94a3b8;border-radius:8px;background:#fff;color:var(--muted);text-align:center}.article-editor-empty>div{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.article-block-list{display:grid;gap:8px}.article-editor-block{display:grid;gap:8px;padding:10px;border:1px solid #cbd5e1;border-radius:8px;background:#fff}.article-editor-block:focus-within,.article-editor-block[draggable=true]:hover{border-color:var(--primary-2);box-shadow:0 2px 8px #0f172a14}.article-block-handle{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:11px}.article-block-handle span{flex:1;font-weight:700}.article-block-handle button{display:inline-grid;place-items:center;width:26px;height:26px;border:1px solid var(--border);border-radius:5px;background:#fff;color:var(--muted);cursor:pointer}.article-block-handle button:disabled{opacity:.4;cursor:not-allowed}.article-block-text,.article-block-quote{width:100%;resize:vertical}.article-block-quote{border-left:4px solid #ca8a04;background:#fffbeb}.article-list-block{display:grid;gap:8px}.article-image-block{display:grid;grid-template-columns:minmax(160px,1fr) minmax(200px,1fr);gap:12px;align-items:start}.article-image-block>img{width:100%;max-height:260px;object-fit:contain;border-radius:6px;background:#f1f5f9}.article-image-fields{display:grid;gap:8px}.article-gallery-block{display:grid;gap:10px}.article-gallery-grid,.article-renderer-images{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.article-gallery-grid figure,.article-renderer-images figure,.article-content-renderer figure{margin:0;display:grid;gap:5px}.article-gallery-grid figure[draggable=true]{cursor:grab}.article-gallery-grid img,.article-renderer-images img,.article-content-renderer img{width:100%;max-height:260px;object-fit:cover;border-radius:6px}.article-gallery-grid .input{font-size:11px}.article-renderer-images.two-column{grid-template-columns:repeat(2,minmax(0,1fr))}.article-renderer-images.three-column{grid-template-columns:repeat(3,minmax(0,1fr))}.article-content-renderer{display:grid;gap:12px;line-height:1.75}.article-content-renderer figcaption{color:var(--muted);font-size:12px;text-align:center}.article-content-renderer blockquote{margin:0;padding:12px 16px;border-left:4px solid var(--primary-2);background:#f8fafc}.article-slash-menu{display:flex;flex-wrap:wrap;gap:6px;padding:7px;border:1px solid #c4b5fd;border-radius:6px;background:#faf5ff}.article-slash-menu button{border:0;background:transparent;color:#6d28d9;cursor:pointer;font-size:12px;font-weight:700}.article-upload-progress,.article-editor-error{margin:0;font-size:12px}.article-editor-error{color:var(--danger)}.article-preview-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:center;overflow-y:auto;padding:20px;background:#0f172a9e}.article-preview-modal,.article-media-modal{width:min(920px,100%);max-height:calc(100dvh - 40px);overflow-y:auto;padding:20px}.article-media-modal{width:min(900px,100%)}.article-preview-head{display:flex;align-items:center;gap:10px;margin-bottom:14px}.article-preview-head h2{flex:1;margin:0}.article-media-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0}.article-media-item{display:grid;gap:5px;padding:5px;border:2px solid var(--border);border-radius:7px;background:#fff;cursor:pointer;text-align:left}.article-media-item.selected{border-color:var(--primary-2);box-shadow:0 0 0 2px #bae6fd}.article-media-item img{width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:4px;background:#f1f5f9}.article-media-item span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}@media(max-width:720px){.article-image-block{grid-template-columns:1fr}.article-gallery-grid,.article-renderer-images,.article-media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.article-preview-backdrop{padding:8px}.article-preview-modal,.article-media-modal{max-height:calc(100dvh - 16px);padding:14px}}.header-guide{white-space:nowrap;flex-shrink:0}.header-guide.active{background:var(--surface-mid);color:var(--primary)}.header-sla-count{display:none}.guide-page h1{display:flex;align-items:center;gap:10px}.guide-page p{line-height:1.65}.guide-page .page-head p{color:var(--muted);max-width:850px;margin-bottom:0}.guide-filters{padding:20px;display:grid;grid-template-columns:220px minmax(0,1fr);gap:16px;margin-bottom:20px}.guide-filters>div{display:grid;gap:8px}.guide-filters label{font-weight:700}.guide-filters p{grid-column:1 / -1;margin:0}.guide-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:24px;align-items:start}.guide-modules{display:grid;padding:8px;position:sticky;top:calc(var(--header) + 16px)}.guide-modules button{background:transparent;border:0;border-radius:4px;padding:12px;text-align:left;cursor:pointer;color:var(--text)}.guide-modules button:hover,.guide-modules button[aria-current]{background:var(--surface-low);color:var(--primary)}.guide-modules button[aria-current]{font-weight:800;border-left:3px solid var(--primary)}.guide-page :is(button,a,input,select):focus-visible{outline:3px solid var(--accent);outline-offset:3px}.guide-content{min-width:0}.guide-module-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}.guide-module-head h2{margin:0}.guide-scope{color:var(--muted)}.guide-flow{padding:24px;margin:20px 0}.guide-flow h3{color:var(--primary);margin-top:0;font-size:18px}.guide-steps{padding-left:24px}.guide-steps>li{padding-left:8px;margin:24px 0}.guide-steps>li::marker{font-weight:800;color:var(--primary)}.guide-steps h4{font-size:15px;margin-bottom:8px}.guide-steps figure{margin:16px 0 0}.guide-steps img{width:100%;height:auto;display:block;border:1px solid var(--border);border-radius:6px}.guide-steps figcaption{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:10px;color:var(--muted);font-size:12px}.guide-steps figcaption b{display:inline-grid;place-items:center;background:#b91c1c;color:#fff;border-radius:50%;width:20px;height:20px;margin-right:4px}.guide-result{border-top:1px solid var(--border);padding-top:16px;margin-bottom:0}.guide-empty{padding:24px}@media(max-width:1250px){.topbar-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}@media(max-width:850px){.guide-layout{grid-template-columns:1fr;gap:16px}.guide-modules{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.header-clock,.header-sla-label{display:none}.header-sla-count{display:inline}}@media(max-width:600px){.guide-filters{grid-template-columns:1fr;padding:16px}.guide-flow{padding:16px}.guide-steps{padding-left:18px}.guide-steps>li{padding-left:2px}.header-guide{min-height:40px;padding:0 8px;font-size:12px}.topbar-actions{gap:6px}.account-trigger{min-width:40px;width:40px;padding:1px}}.security-page{max-width:920px;min-width:0}.security-page .page-head h1{display:flex;align-items:center;gap:12px}.security-card{overflow:hidden}.security-card-head{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:16px;padding:24px}.security-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:var(--surface-low);color:var(--primary)}.security-icon.is-enabled,.security-status.is-enabled{color:var(--success);background:#eaf6ef}.security-card-title h2{margin:0;font-size:20px;line-height:1.4}.security-card-title p{margin:5px 0 0;color:var(--muted);font-size:13px;overflow-wrap:anywhere}.security-status{display:inline-flex;align-items:center;gap:6px;padding:7px 11px;border-radius:var(--radius-full);background:#fff5e5;color:var(--warning);font-size:12px;font-weight:700;white-space:nowrap}.security-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;padding:18px 24px;border-block:1px solid var(--border);background:linear-gradient(110deg,var(--surface-low),#fff)}.security-summary>div{display:flex;align-items:center;gap:12px;min-width:0}.security-summary svg{flex-shrink:0;color:var(--primary)}.security-summary span{color:var(--muted);font-size:12px;line-height:1.6}.security-summary strong{display:block;color:var(--text);font-size:13px;font-weight:600}.security-card-body{display:grid;gap:20px;padding:24px}.security-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;list-style:none;margin:0;padding:0}.security-steps li{display:flex;align-items:center;gap:8px;padding:0 0 12px;border-bottom:2px solid var(--surface-mid);color:var(--muted);font-size:13px;font-weight:600}.security-steps li>span{display:grid;place-items:center;flex-shrink:0;width:28px;height:28px;border-radius:50%;background:var(--surface-low)}.security-steps li[aria-current]{border-color:var(--primary);color:var(--primary)}.security-steps li[aria-current]>span{background:var(--primary);color:#fff}.security-steps li[data-complete=true]{border-color:var(--success);color:var(--success)}.security-steps li[data-complete=true]>span{background:#eaf6ef}.security-notice{margin:0;padding:12px 16px;border-left:3px solid var(--warning);border-radius:var(--radius-xs);background:#fff8eb;color:var(--warning);line-height:1.65}.security-notice.is-error{background:var(--surface-low);border-color:var(--danger);color:var(--danger)}.security-notice.is-success{background:#eaf6ef;border-color:var(--success);color:var(--success)}.security-form{display:grid;gap:20px;min-width:0}.security-form>label{display:grid;gap:8px;max-width:480px;min-width:0;font-weight:600}.security-page .input{width:100%;min-width:0}.security-form h3,.security-recovery h3{display:flex;align-items:center;gap:8px;margin:0;font-size:17px}.security-recovery>p{margin:8px 0 0;color:var(--muted);line-height:1.65}.security-recovery-codes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;list-style:none;margin:20px 0;padding:0}.security-recovery-codes li{display:flex;align-items:center;gap:16px;padding:13px 16px;border:1px solid var(--border);border-radius:var(--radius-sm);background:#fdfafa}.security-recovery-codes li>span{color:var(--muted);font-size:11px}.security-recovery-codes code{font-family:Consolas,Courier New,monospace;font-size:14px;font-weight:600;letter-spacing:.5px}.security-actions{display:flex;flex-wrap:wrap;gap:10px}.security-actions .btn{min-height:44px}.security-disable{color:var(--danger);border-color:var(--border)}.security-disable:hover{background:var(--surface-low)}.security-page :is(button,a,input):focus-visible{outline:3px solid var(--accent);outline-offset:3px}.two-factor-setup-grid{display:grid;grid-template-columns:252px minmax(0,1fr);gap:24px;align-items:start}.two-factor-setup-grid>div:last-child{min-width:0}.two-factor-setup-grid>div:last-child>p{margin-top:0;color:var(--muted);line-height:1.65}.two-factor-setup-grid label{display:block;margin:20px 0 8px;font-weight:600}.two-factor-setup-grid .btn{margin-top:12px}#two-factor-secret{font-family:Consolas,Courier New,monospace}#security-otp{font-family:Consolas,Courier New,monospace;font-size:18px;letter-spacing:3px}#security-otp[inputmode=text]{font-size:14px;letter-spacing:1px}.two-factor-qr{display:grid;justify-items:center;gap:12px;padding:16px;border:1px solid var(--border);border-radius:var(--radius-sm);background:#fff}.two-factor-qr canvas{display:block;max-width:100%;height:auto;image-rendering:pixelated}.two-factor-qr p{margin:0;color:var(--muted);font-size:12px;line-height:1.5;text-align:center}@media(max-width:760px){.two-factor-setup-grid{grid-template-columns:1fr}.two-factor-qr canvas{width:min(220px,100%)}}@media(max-width:600px){.security-card-head{padding:20px 16px;gap:12px;grid-template-columns:40px minmax(0,1fr)}.security-icon{width:40px;height:40px;border-radius:10px}.security-card-title h2{font-size:17px}.security-status{grid-column:2;justify-self:start}.security-summary{grid-template-columns:1fr;gap:14px;padding:16px}.security-card-body{padding:20px 16px}.security-steps{gap:8px}.security-steps li{flex-direction:column;align-items:flex-start;gap:6px;font-size:12px}.security-recovery-codes{grid-template-columns:1fr}.security-actions{flex-direction:column}.security-actions .btn{width:100%}}
