*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246/0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246/0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }
/*
! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com
*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Inter,Arial,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:JetBrains Mono,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root{--background:oklch(0.98 0.002 220);--foreground:oklch(0.12 0.005 220);--card:oklch(1 0 0);--card-foreground:oklch(0.12 0.005 220);--popover:oklch(1 0 0);--popover-foreground:oklch(0.12 0.005 220);--primary:oklch(0.42 0.13 52);--primary-foreground:oklch(1 0 0);--secondary:oklch(0.96 0.003 220);--secondary-foreground:oklch(0.28 0.005 220);--muted:oklch(0.96 0.003 220);--muted-foreground:oklch(0.45 0.01 220);--accent:oklch(0.96 0.003 220);--accent-foreground:oklch(0.28 0.005 220);--destructive:oklch(0.50 0.19 25);--border:oklch(0.90 0.005 220);--input:oklch(0.90 0.005 220);--ring:oklch(0.42 0.13 52);--radius:0.5rem;--sidebar:oklch(1 0 0);--sidebar-foreground:oklch(0.12 0.005 220);--sidebar-primary:oklch(0.42 0.13 52);--sidebar-primary-foreground:oklch(1 0 0);--sidebar-accent:oklch(0.96 0.003 220);--sidebar-accent-foreground:oklch(0.28 0.005 220);--sidebar-border:oklch(0.90 0.005 220);--sidebar-ring:oklch(0.42 0.13 52)}*{border-color:var(--border);outline-color:color-mix(in oklab,var(--ring) 50%,transparent)}body{background:var(--background);color:var(--foreground)}html{font-family:var(--font-sans)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.\!visible{visibility:visible!important}.visible{visibility:visible}.collapse{visibility:collapse}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.left-1\/2{left:50%}.right-2{right:.5rem}.top-1\/2{top:50%}.top-2{top:.5rem}.isolate{isolation:isolate}.z-10{z-index:10}.z-50{z-index:50}.col-start-2{grid-column-start:2}.row-span-2{grid-row:span 2/span 2}.row-start-1{grid-row-start:1}.-mx-1{margin-left:-.25rem;margin-right:-.25rem}.my-1{margin-top:.25rem;margin-bottom:.25rem}.ml-auto{margin-left:auto}.mr-1{margin-right:.25rem}.mt-4{margin-top:1rem}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.\!table{display:table!important}.table{display:table}.table-caption{display:table-caption}.table-cell{display:table-cell}.table-row{display:table-row}.grid{display:grid}.hidden{display:none}.size-2\.5{width:.625rem;height:.625rem}.size-3{width:.75rem;height:.75rem}.size-3\.5{width:.875rem;height:.875rem}.size-4{width:1rem;height:1rem}.size-5{width:1.25rem;height:1.25rem}.size-6{width:1.5rem;height:1.5rem}.size-7{width:1.75rem;height:1.75rem}.size-8{width:2rem;height:2rem}.h-10{height:2.5rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-\[calc\(100\%-1px\)\]{height:calc(100% - 1px)}.h-px{height:1px}.min-h-7{min-height:1.75rem}.w-16{width:4rem}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.min-w-0{min-width:0}.min-w-32{min-width:8rem}.max-w-\[calc\(100\%-2rem\)\]{max-width:calc(100% - 2rem)}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.caption-bottom{caption-side:bottom}.-translate-x-1\/2{--tw-translate-x:-50%}.-translate-x-1\/2,.-translate-y-1\/2{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y:-50%}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.animate-spin{animation:spin 1s linear infinite}.cursor-default{cursor:default}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.scroll-my-1{scroll-margin-top:.25rem;scroll-margin-bottom:.25rem}.auto-rows-min{grid-auto-rows:min-content}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-4{gap:1rem}.self-start{align-self:flex-start}.justify-self-end{justify-self:end}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.whitespace-nowrap{white-space:nowrap}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:1rem}.rounded-md{border-radius:.75rem}.rounded-sm{border-radius:.25rem}.rounded-xl{border-radius:1.5rem}.rounded-b-lg{border-bottom-right-radius:1rem;border-bottom-left-radius:1rem}.rounded-t-lg{border-top-left-radius:1rem;border-top-right-radius:1rem}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-t{border-top-width:1px}.border-border{border-color:var(--color-border)}.border-transparent{border-color:transparent}.bg-black\/80{background-color:rgb(0 0 0/.8)}.bg-border{background-color:var(--color-border)}.bg-primary{--tw-bg-opacity:1;background-color:rgb(148 74 0/var(--tw-bg-opacity,1))}.bg-secondary{--tw-bg-opacity:1;background-color:rgb(78 96 115/var(--tw-bg-opacity,1))}.bg-transparent{background-color:transparent}.bg-clip-padding{background-clip:padding-box}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-4{padding:1rem}.p-\[3px\]{padding:3px}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-4{padding-left:1rem;padding-right:1rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-4{padding-top:1rem;padding-bottom:1rem}.pl-2{padding-left:.5rem}.pr-8{padding-right:2rem}.text-left{text-align:left}.align-middle{vertical-align:middle}.font-mono{font-family:JetBrains Mono,monospace}.text-\[0\.625rem\]{font-size:.625rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.text-xs\/relaxed{font-size:.75rem;line-height:1.625}.font-medium{font-weight:500}.uppercase{text-transform:uppercase}.italic{font-style:italic}.leading-none{line-height:1}.tracking-widest{letter-spacing:.1em}.text-green-600{--tw-text-opacity:1;color:rgb(22 163 74/var(--tw-text-opacity,1))}.text-primary{--tw-text-opacity:1;color:rgb(148 74 0/var(--tw-text-opacity,1))}.text-red-600{--tw-text-opacity:1;color:rgb(220 38 38/var(--tw-text-opacity,1))}.underline-offset-4{text-underline-offset:4px}.shadow-md{--tw-shadow:0 4px 6px -1px rgb(0 0 0/0.1),0 2px 4px -2px rgb(0 0 0/0.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.ring-1{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-100{transition-duration:.1s}.table-search-input{width:100%;max-width:320px;padding:var(--space-xs) var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:.8125rem;background:var(--color-bg-surface);color:var(--color-text-primary);outline:none;transition:border-color var(--tr),box-shadow var(--tr)}.table-search-input:focus{border-color:var(--color-brand);box-shadow:var(--focus-ring)}.table-pagination__info{font-size:.8125rem;color:var(--color-text-muted)}.table-pagination__actions{display:flex;gap:var(--space-xs)}.data-table-skeleton{display:flex;flex-direction:column;gap:var(--space-sm);padding:var(--space-md)}.data-table-sort{display:inline-flex;align-items:center;gap:4px;border:0;background:transparent;color:inherit;font:inherit;padding:0}.data-table-sort:disabled{cursor:default}.form-field__error{display:flex;align-items:center;gap:var(--space-xs);font-size:.75rem;color:var(--color-danger);margin-top:var(--space-xs);font-weight:500}.session-warning{position:fixed;right:var(--space-lg);bottom:var(--space-lg);z-index:90;display:flex;align-items:center;gap:var(--space-md);max-width:min(420px,calc(100vw - 32px));padding:var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-surface);box-shadow:var(--shadow-modal)}.session-warning div{display:flex;flex-direction:column;gap:2px}.session-warning span{color:var(--color-text-secondary);font-size:.8125rem}.error-page{min-height:100vh;display:grid;place-items:center;padding:var(--space-lg);background:var(--color-bg-page)}.error-page__panel{max-width:480px}.drawer-overlay{position:fixed;inset:0;z-index:50;background:rgba(23,32,39,.5)}.drawer-content{position:fixed;right:0;bottom:0;left:0;z-index:51;max-height:90vh;overflow-y:auto;border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:var(--color-bg-surface);box-shadow:var(--shadow-modal)}.drawer-handle{width:40px;height:4px;margin:var(--space-sm) auto;border-radius:var(--radius-pill);background:var(--color-border-strong)}.drawer-body{padding:var(--space-md) var(--space-lg) var(--space-xl)}.drawer-title{margin-bottom:var(--space-lg);color:var(--color-text-primary);font-size:1rem;font-weight:700}.drawer-detail-grid{display:grid;gap:var(--space-md)}@media print{body:before{content:"CONFIDENTIAL - DSEU UNIVERSITY";position:fixed;top:50%;left:50%;z-index:9999;color:rgba(148,74,0,.07);font-size:3.5rem;font-weight:900;pointer-events:none;transform:translate(-50%,-50%) rotate(-45deg);white-space:nowrap}.btn,.session-warning,.sidebar,.table-toolbar{display:none!important}}:root{--color-primary:#944a00;--color-primary-hover:#7a3d00;--color-primary-container:#e67e22;--color-on-primary:#ffffff;--color-surface:#f7f9fb;--color-surface-dim:#d8dadc;--color-surface-bright:#f7f9fb;--color-surface-container-lowest:#ffffff;--color-surface-container-low:#f2f4f6;--color-surface-container:#eceef0;--color-surface-container-high:#e6e8ea;--color-surface-container-highest:#e0e3e5;--color-on-surface:#191c1e;--color-on-surface-variant:#564337;--color-inverse-surface:#2d3133;--color-inverse-on-surface:#eff1f3;--color-outline:#897365;--color-outline-variant:#dcc1b1;--color-secondary:#4e6073;--color-secondary-container:#cfe2f9;--color-tertiary:#00658f;--color-tertiary-container:#00a3e4;--color-success:#065f46;--color-success-bg:#ecfdf5;--color-warning:#92400e;--color-warning-bg:#fffbeb;--color-danger:#b42318;--color-danger-bg:#fef2f2;--color-brand:#944a00;--color-brand-hover:#7a3d00;--color-brand-light:#ffdcc5;--color-bg-page:#f8fafc;--color-bg-surface:#ffffff;--color-bg-subtle:#f8fafc;--color-bg-hover:#f1f5f9;--color-text-primary:#191c1e;--color-text-secondary:#475467;--color-text-muted:#667085;--color-border:#e2e8f0;--color-border-strong:#cbd5e1;--color-sidebar-bg:#ffffff;--color-sidebar-text:#191c1e;--color-sidebar-muted:#94a3b8;--color-sidebar-hover:#f1f5f9;--radius-sm:0.25rem;--radius-md:0.5rem;--radius-lg:0.75rem;--radius-xl:1rem;--radius-pill:9999px;--shadow-card:0 1px 3px rgba(16,24,32,0.08),0 1px 2px rgba(16,24,32,0.04);--shadow-dropdown:0 4px 16px rgba(16,24,32,0.12);--shadow-modal:0 20px 60px rgba(0,0,0,0.18);--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--focus-ring:0 0 0 3px rgba(148,74,0,0.18);--disabled-opacity:0.5;--disabled-cursor:not-allowed;--font-sans:Inter,Arial,Helvetica,sans-serif;--font-mono:JetBrains Mono,monospace;--tr:.25s cubic-bezier(.4,0,.2,1);--pr:var(--color-primary);--pr-d:#0f2460;--pr-l:var(--color-primary);--gold:var(--color-primary-container);--gold-l:#fbbf24;--gold-p:#fef3c7;--teal:#0d9488;--teal-l:#14b8a6;--teal-p:#ccfbf1;--red:var(--color-danger);--red-p:var(--color-danger-bg);--green:var(--color-success);--green-p:var(--color-success-bg);--purple:#5b5cb1;--pink:#cf6b88;--dark:var(--color-sidebar-bg);--dark-m:var(--color-sidebar-hover);--dark-l:#334155;--text:var(--color-text-secondary);--text-l:var(--color-text-muted);--border:var(--color-border);--white:var(--color-bg-surface);--bg:var(--color-bg-page);--rsm:var(--radius-sm);--rmd:var(--radius-md);--rlg:var(--radius-lg);--rxl:var(--radius-lg);--sh1:var(--shadow-card);--sh2:var(--shadow-dropdown);--sh3:var(--shadow-modal);--color-success-text:var(--color-success);--color-warning-text:var(--color-warning);--color-danger-text:var(--color-danger);--color-success-border:#6ee7b7;--color-warning-border:#fcd34d;--color-danger-border:#fca5a5;--color-info-bg:#eff6ff;--color-info-text:#1e40af;--color-info-border:#93c5fd;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px}*{box-sizing:border-box;margin:0;padding:0}body,html{height:100%;color:var(--color-on-surface);overflow-x:hidden}[role=button]:focus-visible,[tabindex]:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:var(--radius-sm)}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInL{0%{transform:translateX(-100%);opacity:0}to{transform:translateX(0);opacity:1}}@keyframes popUp{0%{opacity:0;transform:scale(.92) translateY(16px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes particleF{0%{transform:translateY(0) rotate(0);opacity:.3}to{transform:translateY(100vh) rotate(1turn);opacity:0}}@keyframes spin{to{transform:rotate(1turn)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes toastIn{0%{transform:translateX(120%)}to{transform:translateX(0)}}@keyframes toastOut{0%{transform:translateX(0);opacity:1}to{transform:translateX(120%);opacity:0}}.particles{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}.par{position:absolute;border-radius:50%;background:radial-gradient(circle at 30% 30%,rgba(245,158,11,.7),rgba(245,158,11,.05));animation:particleF linear infinite}.par:first-child{width:70px;height:70px;left:8%;top:-70px;animation-duration:22s;opacity:.25}.par:nth-child(2){width:50px;height:50px;left:78%;top:-50px;animation-duration:26s;animation-delay:3s;opacity:.2}.par:nth-child(3){width:90px;height:90px;left:45%;top:-90px;animation-duration:30s;animation-delay:6s;opacity:.22}.par:nth-child(4){width:60px;height:60px;left:25%;top:-60px;animation-duration:24s;animation-delay:9s;opacity:.18}.par:nth-child(5){width:80px;height:80px;left:65%;top:-80px;animation-duration:28s;animation-delay:2s;opacity:.24}.login-page{display:none;position:fixed;inset:0;z-index:500;background:linear-gradient(135deg,#0f172a,#1e293b 50%,#0f172a);overflow-y:auto;padding:24px 12px}.login-page.active{display:flex;animation:fadeIn .7s ease-out}.login-wrap{width:90%;max-width:460px;animation:popUp .7s cubic-bezier(.34,1.56,.64,1)}.login-card{background:rgba(30,58,138,.25);backdrop-filter:blur(20px);border:2px solid rgba(245,158,11,.25);border-top:3px solid var(--gold);border-radius:var(--rxl);padding:44px;box-shadow:0 24px 64px rgba(0,0,0,.5)}.login-logo{border-bottom:1px solid rgba(245,158,11,.2)}.login-logo-icon{width:80px;height:80px;background:linear-gradient(135deg,var(--gold),#f97316);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:40px;margin:0 auto 14px;box-shadow:0 0 30px rgba(245,158,11,.5)}.login-univ{font-size:16px;color:white;margin-bottom:4px}.login-sys{color:var(--gold-l);font-weight:600;margin-bottom:3px}.login-sub{font-size:11px;color:rgba(255,255,255,.55)}.ltabs{border-bottom:1px solid rgba(255,255,255,.1)}.ltab{flex:1;padding:11px;background:none;border:none;color:rgba(255,255,255,.5);cursor:pointer;font-size:13px;transition:var(--tr);position:relative}.ltab.active{color:var(--gold)}.ltab.active:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--gold)}.lform{display:none;animation:fadeIn .4s ease}.lform.active{display:block}.lfield{margin-bottom:18px}.lfield label{display:block;color:rgba(255,255,255,.75);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-bottom:7px}.lfield input,.lfield select{width:100%;padding:11px 13px;background:rgba(255,255,255,.18);border:1.5px solid rgba(245,158,11,.5);border-radius:var(--rmd);color:white;font-size:14px;transition:var(--tr)}.lfield input::-moz-placeholder{color:rgba(255,255,255,.7)}.lfield input::placeholder{color:rgba(255,255,255,.7)}.lfield input:focus,.lfield select:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(245,158,11,.2);background:rgba(255,255,255,.22)}.lfield select option{background:#1e3a8a;color:white}.lbtn{width:100%;padding:13px;background:linear-gradient(135deg,var(--gold),#f97316);color:white;border:none;border-radius:var(--rmd);font-weight:700;font-size:14px;cursor:pointer;transition:var(--tr);text-transform:uppercase;letter-spacing:1px;margin-top:8px;box-shadow:0 6px 18px rgba(245,158,11,.35)}.lbtn:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(245,158,11,.5)}.lerr{color:#f87171;font-size:12px;margin-top:8px;display:none;animation:fadeIn .3s ease}.lerr.show{display:block}.linfo{background:rgba(245,158,11,.1);border:1px solid rgba(245,158,11,.25);border-radius:var(--rmd);padding:10px 13px;font-size:12px;color:rgba(255,255,255,.7);margin-bottom:18px;line-height:1.5}.pan-ok{background:rgba(16,185,129,.12);border:1px solid rgba(16,185,129,.25);border-radius:var(--rmd);padding:9px 13px;font-size:12px;color:#6ee7b7;margin-top:8px;display:none}.pan-ok.show{display:block}.password-strength-hint{margin-top:8px;padding:9px 11px;border-radius:var(--rmd);font-size:12px;line-height:1.55;border:1px solid rgba(148,163,184,.25);background:rgba(148,163,184,.08);color:#dbe7f3}.password-strength-hint strong{display:block;margin-bottom:3px;font-size:12px}.password-strength-hint.weak{background:rgba(239,68,68,.12);border-color:rgba(239,68,68,.22);color:#fecaca}.password-strength-hint.medium{background:rgba(245,158,11,.12);border-color:rgba(245,158,11,.24);color:#fde68a}.password-strength-hint.strong{background:rgba(16,185,129,.12);border-color:rgba(16,185,129,.24);color:#bbf7d0}.app{display:none;height:100vh;overflow:hidden}.app.on{display:flex}.sidebar-toggle{display:none;position:fixed;left:14px;top:14px;z-index:260;width:42px;height:42px;border:1px solid rgba(15,95,154,.16);border-radius:12px;background:white;box-shadow:var(--sh2);align-items:center;justify-content:center;flex-direction:column;gap:5px;cursor:pointer}.sidebar-toggle span{display:block;width:19px;height:2px;background:var(--pr);border-radius:999px}.sidebar-backdrop{display:none;position:fixed;inset:0;background:rgba(15,35,56,.42);z-index:190}.sidebar-backdrop.on{display:block}.sb-nav{flex:1;padding:12px 8px}.nav-sec{margin-bottom:16px}.nav-icon{width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.nav-icon svg{width:100%;height:100%;display:block;stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.sb-user .pan-badge{display:inline-block}.logout-btn{width:100%;padding:9px;background:linear-gradient(135deg,var(--color-danger),#991b1b);color:white;border:none;border-radius:var(--radius-md);cursor:pointer;font-weight:600;font-size:.8125rem;transition:var(--tr)}.logout-btn:hover{transform:translateY(-1px);box-shadow:0 6px 16px rgba(239,68,68,.3)}.main-col{flex:1;display:flex;flex-direction:column;overflow:hidden}header{background:linear-gradient(135deg,rgba(30,58,138,.97),rgba(15,52,96,.97));backdrop-filter:blur(10px);padding:14px 26px;justify-content:space-between;border-bottom:1px solid rgba(245,158,11,.15);flex-shrink:0;z-index:9}.hdr-title,header{display:flex;align-items:center}.hdr-title{gap:14px;color:white}.hdr-title h3{font-size:18px;font-weight:700}.hdr-right{display:flex;align-items:center;gap:14px}.search-box{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);padding:8px 14px;border-radius:var(--rmd);color:white;width:210px;font-size:13px;transition:var(--tr)}.search-box::-moz-placeholder{color:rgba(255,255,255,.5)}.search-box::placeholder{color:rgba(255,255,255,.5)}.search-box:focus{outline:none;background:rgba(255,255,255,.2);box-shadow:0 0 0 2px rgba(245,158,11,.3)}.hdr-prof{gap:9px;color:white}.avatar,.hdr-prof{display:flex;align-items:center;font-size:13px}.avatar{width:34px;height:34px;background:linear-gradient(135deg,var(--purple),var(--pink));border-radius:50%;justify-content:center;font-weight:700;flex-shrink:0}.content-area{flex:1;overflow-y:auto;padding:26px}.page{display:none;animation:fadeIn .5s ease-out}.page.active{display:block}.pg-title{font-size:26px;color:white;font-weight:700;margin-bottom:6px}.pg-sub{font-size:13px;color:var(--text-l)}.card,.pg-sub{margin-bottom:22px}.card{background:white;border-radius:var(--rlg);padding:22px;box-shadow:var(--sh2);animation:popUp .5s ease-out}.card h3{font-size:16px;font-weight:700;color:var(--pr);margin-bottom:16px;display:flex;align-items:center;gap:8px}.user-management-shell{display:grid;grid-template-columns:230px 1fr;gap:18px;align-items:start}.user-management-module-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}.user-module-tile{min-height:170px;text-align:left;border:1px solid rgba(15,95,154,.1);border-radius:var(--rlg);background:white;box-shadow:var(--sh2);padding:22px;cursor:pointer;transition:var(--tr);display:flex;flex-direction:column;justify-content:space-between;gap:18px}.user-module-tile:hover{transform:translateY(-2px);box-shadow:0 18px 38px rgba(15,23,42,.14);border-color:rgba(15,95,154,.22)}.user-module-tile strong{font-size:19px;color:var(--pr)}.user-module-tile span{font-size:13px;color:var(--text-l);line-height:1.55}.compact-hero{align-items:center}.um-full-card{min-height:520px}.user-management-menu{background:white;border:1px solid rgba(15,95,154,.08);border-radius:var(--rlg);box-shadow:var(--sh1);padding:10px}.um-menu-item{width:100%;border:0;background:transparent;text-align:left;padding:12px 13px;border-radius:var(--rmd);font-weight:700;color:#475569;cursor:pointer}.um-menu-item.active,.um-menu-item:hover{background:rgba(15,95,154,.08);color:var(--pr)}.user-management-body{min-width:0}.um-tab{display:none}.um-tab.active{display:block}.um-card-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:16px}.um-card-head h3{margin-bottom:5px}.um-card-head p{margin:0;color:var(--text-l);font-size:13px}.um-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.um-filters{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:12px;margin-bottom:16px}.um-table-wrap{overflow-x:auto}.um-table{min-width:1100px}.um-table td{vertical-align:top}.um-muted{font-size:12px;color:var(--text-l);margin-top:4px;line-height:1.45}.um-pagination{display:flex;justify-content:flex-end;gap:7px;flex-wrap:wrap;margin-top:14px}.um-edit-form{display:grid;grid-template-columns:1fr 1fr;gap:14px;min-width:min(760px,80vw)}.um-edit-form .lerr,.um-edit-form .um-check,.um-edit-form .um-muted,.um-edit-form .um-note{grid-column:1/-1}.um-check{gap:8px;font-size:13px;color:#334155;font-weight:700}.um-note{border:1px dashed rgba(15,95,154,.22);background:rgba(15,95,154,.04);border-radius:var(--rmd);padding:12px;color:#64748b;font-size:13px}.um-password-reset{grid-column:1/-1;border:1px solid rgba(15,95,154,.12);background:#f8fbff;border-radius:var(--rmd);padding:13px}.um-reset-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.um-section-title{font-size:13px;font-weight:800;color:var(--pr);margin-bottom:4px}@media(max-width:900px){.um-edit-form,.um-filters,.user-management-shell{grid-template-columns:1fr}}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:22px}.stat-card{border-radius:var(--rlg);box-shadow:var(--sh1);transition:var(--tr);cursor:pointer;animation:popUp .5s ease-out;position:relative}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--color-primary-container)}.stat-card.blue:before{background:var(--color-tertiary)}.stat-card.gold:before{background:var(--color-primary-container)}.stat-card.green:before{background:var(--color-success)}.stat-card.red:before{background:var(--color-danger)}.stat-card.purple:before{background:var(--color-secondary)}.stat-card:hover{transform:translateY(-2px);box-shadow:var(--sh2)}.stat-icon{font-size:26px;margin-bottom:8px}.stat-lbl{font-size:11px;color:var(--text-l);font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}.stat-val{font-size:24px;font-weight:700;color:var(--pr);margin-bottom:4px}.stat-sub{font-size:12px;color:var(--text-l)}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}.fg{margin-bottom:16px}.fg label{display:block;font-weight:600;margin-bottom:6px;color:#1e3a8a;font-size:12px;text-transform:uppercase;letter-spacing:.3px}.fg input,.fg select,.fg textarea{width:100%;padding:9px 11px;border:1.5px solid var(--border);background:var(--bg);color:#1e293b;border-radius:var(--rsm);font-size:13px;transition:var(--tr);font-family:inherit}.fg input:focus,.fg select:focus,.fg textarea:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(245,158,11,.15);background:white}.programme-picker-results{display:none;margin-top:8px;border:1px solid var(--border);border-radius:var(--rmd);background:white;box-shadow:var(--sh1);max-height:220px;overflow:auto}.programme-picker-results.on{display:block}.programme-picker-option{width:100%;display:block;text-align:left;border:0;border-bottom:1px solid #f1f5f9;background:white;color:#1e293b;padding:9px 11px;cursor:pointer;font-size:13px}.programme-picker-option:focus,.programme-picker-option:hover{background:#f8fafc;outline:none}.programme-picker-option:last-child{border-bottom:0}.programme-picker-option small{display:block;color:var(--text-l);font-size:11px;margin-top:2px}.programme-picker-empty{padding:10px 11px;color:var(--text-l);font-size:12px}.programme-picker-selected{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;min-height:34px}.programme-chip{display:inline-flex;align-items:center;gap:7px;border:1px solid rgba(30,58,138,.16);background:#eef4ff;color:var(--pr);border-radius:999px;padding:6px 9px;font-size:12px;font-weight:700}.programme-chip button{border:0;background:transparent;color:#64748b;cursor:pointer;font-size:16px;line-height:1;padding:0}.programme-chip button:hover{color:var(--red)}input.no-spinner::-webkit-inner-spin-button,input.no-spinner::-webkit-outer-spin-button{appearance:none;-webkit-appearance:none;margin:0}input.no-spinner[type=number]{-webkit-appearance:textfield;appearance:textfield;-moz-appearance:textfield}.btn{padding:9px 20px;border:none;border-radius:var(--rmd);font-weight:600;cursor:pointer;transition:var(--tr);font-size:13px;display:inline-flex;align-items:center;gap:7px;white-space:nowrap}.btn:active{transform:scale(.97)}.btn-gold{background:var(--color-primary-container);color:white;box-shadow:var(--sh1)}.btn-gold:hover{transform:translateY(-1px);background:#cf6f1c;box-shadow:var(--sh2)}.btn-primary{background:var(--color-primary);color:var(--color-on-primary);box-shadow:var(--sh1)}.btn-primary:hover{transform:translateY(-1px);background:var(--color-primary-hover);box-shadow:var(--sh2)}.btn-outline{background:white;border:1.5px solid var(--border)}.btn-outline:hover{border-color:var(--color-primary);background:var(--gold-p)}.btn-danger{background:var(--color-danger);color:white;box-shadow:var(--sh1)}.btn-danger:hover{transform:translateY(-1px);background:#991b1b;box-shadow:var(--sh2)}.btn-success{background:var(--color-success);color:white;box-shadow:var(--sh1)}.btn-sm{padding:6px 14px;font-size:12px;border-radius:var(--rsm)}.btn-lg{padding:12px 26px;font-size:14px;border-radius:var(--rlg)}.btn[disabled]{opacity:.45;cursor:not-allowed;transform:none!important;box-shadow:none!important}.status-note-input{width:220px;max-width:100%;padding:6px 8px;border:1px solid var(--border);border-radius:6px;font-size:12px;background:#fff}.status-note-input:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 2px rgba(245,158,11,.15)}.tbl-wrap{overflow-x:auto;border-radius:var(--rmd);border:1px solid var(--border)}table{border-collapse:collapse;font-size:13px}thead{background:#f8fafc}th{text-align:left;font-size:11px;color:var(--text-l);letter-spacing:.5px;border-bottom:2px solid var(--border)}td,th{padding:12px 14px}td{border-bottom:1px solid #f1f5f9;color:var(--color-text-secondary);vertical-align:middle}tbody tr{transition:var(--tr)}tbody tr:nth-child(2n) td{background:#fbfcfd}tbody tr:hover td{background:var(--color-bg-hover)}tbody tr:last-child td{border-bottom:none}.badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:20px}.badge.pending{background:rgba(245,158,11,.12);color:#92400e}.badge.hold{background:rgba(139,92,246,.14);color:#5b21b6}.badge.approved,.badge.verified{background:rgba(16,185,129,.12);color:#065f46}.badge.paid{background:rgba(37,99,235,.12);color:#1e40af}.badge.rejected{background:rgba(239,68,68,.12);color:#991b1b}.approval-trail{display:flex;flex-direction:column;gap:2px;min-width:320px;background:linear-gradient(135deg,rgba(255,255,255,.95),rgba(248,250,252,.5));border:1px solid rgba(245,158,11,.15);border-radius:var(--rlg);padding:12px;overflow:hidden}.approval-stage{display:flex;gap:12px;align-items:flex-start;padding:8px 0;position:relative}.approval-stage:not(:last-child){border-bottom:1px solid rgba(245,158,11,.1)}.approval-stage-icon{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0;background:rgba(245,158,11,.15);color:var(--pr)}.approval-stage.approved .approval-stage-icon{background:rgba(16,185,129,.15);color:#065f46}.approval-stage.pending .approval-stage-icon{background:rgba(245,158,11,.15);color:#92400e}.approval-stage.rejected .approval-stage-icon{background:rgba(239,68,68,.15);color:#991b1b}.approval-stage.hold .approval-stage-icon{background:rgba(139,92,246,.15);color:#5b21b6}.approval-stage-content{flex:1;min-width:0}.approval-stage-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--text-l);margin-bottom:3px}.approval-stage-status{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:700}.approval-stage-by{font-size:11px;color:var(--text);margin-top:2px;word-break:break-word}.approval-stage-by strong{color:var(--pr);font-weight:600}.approval-stage-time{font-size:10px;color:var(--text-l);margin-top:2px}.bill-tabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:22px}.b-tab,.bill-tabs{align-items:center}.b-tab{display:inline-flex;gap:8px;padding:10px 18px;background:rgba(255,255,255,.85);border:2px solid var(--border);border-radius:var(--rmd);cursor:pointer;transition:var(--tr);font-weight:600;color:var(--text);font-size:13px}.b-tab:hover{border-color:var(--gold);background:white}.b-tab.active{background:linear-gradient(135deg,var(--gold),#f97316);color:white;border-color:var(--gold);box-shadow:0 5px 16px rgba(245,158,11,.3)}.b-tab-num{width:26px;height:26px;border-radius:50%;background:var(--pr);color:white;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700}.b-tab.active .b-tab-num{background:rgba(255,255,255,.3)}.b-add{display:inline-flex;align-items:center;gap:6px;padding:10px 18px;background:transparent;border:2px dashed var(--gold);border-radius:var(--rmd);color:var(--gold);cursor:pointer;font-weight:600;transition:var(--tr);font-size:13px}.b-add:hover{background:rgba(245,158,11,.07)}.bill-form-wrap{background:white;border-radius:var(--rlg);padding:22px;box-shadow:var(--sh2);animation:fadeIn .4s ease}.sdiv{margin:22px 0 16px;padding:14px 0;border-top:2px solid #f3f4f6;border-bottom:1px solid #e5e7eb}.sdiv-title{gap:9px;font-size:13px;color:#374151;text-transform:uppercase;letter-spacing:.5px}.sdiv-num,.sdiv-title{display:flex;align-items:center;font-weight:700}.sdiv-num{background:var(--pr);color:white;width:22px;height:22px;border-radius:50%;justify-content:center;font-size:11px}.rate-pills{display:flex;gap:12px;flex-wrap:wrap;margin-top:10px}.rate-pill{flex:1;min-width:140px;padding:14px;border:2px solid var(--border);border-radius:var(--rmd);text-align:center;cursor:pointer;transition:var(--tr);background:white}.rate-pill.sel,.rate-pill:hover{border-color:var(--gold)}.rate-pill.sel{background:var(--gold-p)}.rate-pill-title{font-weight:700;color:var(--pr);font-size:13px;margin-bottom:4px}.rate-pill-sub{font-size:11px;color:var(--gold);font-weight:600}.att-table{width:100%;border-collapse:collapse;margin-top:13px;border-radius:var(--rmd);overflow:hidden;box-shadow:var(--sh1)}.att-table thead{background:var(--pr)}.att-table th{padding:11px 10px;color:white;font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.4px;text-align:left}.att-table td{padding:10px 9px;border-bottom:1px solid #e5e7eb;font-size:12px;vertical-align:middle}.att-table tbody tr:hover td{background:#f9fafb}.att-table tbody tr.att-row-conflict td{background:#fff5f5}.att-table tbody tr.att-row-conflict td:first-child{border-left:4px solid #dc2626}.att-date-cell{display:flex;align-items:center;gap:7px}.att-date-cell input{min-width:0}.att-conflict-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;flex:0 0 18px;border-radius:999px;background:#dc2626;color:#fff;font-size:12px;font-weight:800;line-height:1}.att-table input,.att-table select{width:100%;padding:7px 8px;border:1px solid var(--border);border-radius:4px;font-size:12px;background:white}.att-table input:focus,.att-table select:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 2px rgba(245,158,11,.15)}.att-total-row{background:var(--dark);color:white!important}.att-total-row td{color:white;font-weight:600;padding:11px 10px}.claimed-val{color:var(--gold);font-weight:700}.warn-val{color:var(--red);font-weight:700}.add-row-btn{width:100%;padding:10px;border:2px dashed var(--gold);background:transparent;color:var(--gold);border-radius:var(--rmd);cursor:pointer;font-weight:600;font-size:13px;margin-top:12px;transition:var(--tr)}.add-row-btn:hover{background:rgba(245,158,11,.06)}.del-row{background:#fee2e2;color:#dc2626;border:none;padding:6px 10px;border-radius:4px;cursor:pointer;font-size:12px;transition:var(--tr)}.del-row:hover{background:#fecaca}.verify-card{background:var(--gold-p);border:2px solid rgba(245,158,11,.3);border-radius:var(--rlg);padding:18px;margin-top:16px}.diff-pos{color:var(--green);font-weight:700}.diff-neg{color:var(--red);font-weight:700}.doc-drop{border:2px dashed rgba(245,158,11,.4);border-radius:var(--rlg);padding:28px;text-align:center;transition:var(--tr);cursor:pointer;background:rgba(245,158,11,.04)}.doc-drop.drag,.doc-drop:hover{border-color:var(--gold);background:rgba(245,158,11,.08)}.doc-drop-icon{font-size:38px;margin-bottom:10px;display:block}.doc-list{margin-top:14px;display:flex;flex-direction:column;gap:8px}.doc-item{display:flex;align-items:center;gap:10px;background:white;border:1px solid var(--border);border-radius:var(--rmd);padding:10px 14px}.doc-item-info{flex:1}.doc-item-name{font-size:13px;font-weight:600;color:#1e293b}.doc-item-meta{font-size:11px;color:var(--text-l)}.print-bill{background:white;border-radius:var(--rxl);padding:30px;box-shadow:var(--sh3);margin-top:20px}.pb-hdr{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:3px solid var(--pr);padding-bottom:18px;margin-bottom:18px;flex-wrap:wrap;gap:14px}.pb-univ{font-size:18px;font-weight:800;color:var(--pr);display:flex;align-items:center;gap:9px}.pb-sub{font-size:12px;color:var(--text-l);margin-top:3px}.pb-ref{text-align:right}.pb-ref-num{font-size:16px;font-weight:700;color:var(--teal)}.pb-ref-date{font-size:12px;color:var(--text-l);margin-top:3px}.pb-fac-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;background:var(--bg);border-radius:var(--rmd);padding:16px;margin-bottom:18px}.pb-fi{font-size:12px}.pb-fi-lbl{font-size:10px;color:var(--text-l);text-transform:uppercase;letter-spacing:.5px;margin-bottom:3px}.pb-fi-val{font-weight:700;color:#1e293b;font-size:13px}.pb-pan{background:var(--pr);color:var(--gold-l);padding:2px 9px;border-radius:4px;font-family:var(--font-mono);letter-spacing:.1em;font-size:13px}.bill-section{margin-bottom:22px;padding-bottom:22px;border-bottom:1px dashed var(--border)}.bill-section:last-of-type{border-bottom:none;margin-bottom:0;padding-bottom:0}.bs-hdr{background:var(--pr);color:white;padding:10px 16px;border-radius:var(--rmd) var(--rmd) 0 0;display:flex;justify-content:space-between;align-items:center}.bs-title{font-size:13px;font-weight:600}.bs-total{font-size:15px;font-weight:700;color:var(--gold-l)}.bs-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;padding:12px 16px;background:#f8fafc;margin-bottom:8px}.bs-mi{font-size:11px}.bs-mi-lbl{color:var(--text-l)}.bs-mi-val{font-weight:600;color:#1e293b}.att-print{width:100%;border-collapse:collapse;font-size:12px}.att-print th{background:var(--dark-l);color:white;padding:8px 10px;text-align:left;font-size:11px;text-transform:uppercase}.att-print td{padding:7px 10px;border-bottom:1px solid var(--border)}.att-print tfoot td{background:var(--dark);color:white;font-weight:700;padding:8px 10px}.grand-total{display:flex;justify-content:space-between;align-items:center;background:var(--pr);color:white;border-radius:var(--rmd);padding:14px 18px;margin-top:16px}.gt-lbl{font-size:14px;font-weight:600}.gt-val{font-size:22px;font-weight:800;color:var(--gold-l)}.sig-grid,.sig-row{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1.5rem;margin-top:28px;padding-top:18px;border-top:2px solid var(--border)}.sig-box{text-align:center}.sig-grid .sig-box{grid-column:span 2}.sig-box-wide{grid-column:span 3}.sig-line{border-top:1.5px solid #1e293b;padding-top:28px;margin-bottom:6px}.sig-lbl{font-size:12px;font-weight:700;color:#374151}.sig-sub{font-size:11px;color:var(--text-l);word-break:break-word}.toast-wrap{position:fixed;bottom:22px;right:22px;z-index:9999;flex-direction:column;pointer-events:none}.toast,.toast-wrap{display:flex;gap:9px}.toast{background:var(--dark);color:white;padding:12px 18px;border-radius:var(--rlg);font-size:13px;align-items:center;box-shadow:0 8px 24px rgba(0,0,0,.4);animation:toastIn .35s ease;pointer-events:all;min-width:230px;max-width:320px;border-left:4px solid var(--teal)}.toast.success{border-left-color:var(--green)}.toast.error{border-left-color:var(--red)}.toast.warning{border-left-color:var(--gold)}.toast-ic{font-size:17px;flex-shrink:0}.toast-txt{flex:1;line-height:1.4}.loading-overlay{display:none;position:fixed;inset:0;background:rgba(15,23,42,.87);backdrop-filter:blur(9px);z-index:9998;align-items:center;justify-content:center;flex-direction:column;gap:18px}.loading-overlay.on{display:flex;animation:fadeIn .3s ease}.spinner{width:48px;height:48px;border:3px solid rgba(245,158,11,.2);border-top:3px solid var(--gold);border-radius:50%;animation:spin .8s linear infinite}.load-txt{color:rgba(255,255,255,.65);font-size:14px;text-align:center;max-width:260px;line-height:1.6}.modal-bg{display:none;position:fixed;inset:0;background:rgba(0,0,0,.72);z-index:800;align-items:flex-start;justify-content:center;animation:fadeIn .3s ease;overflow-y:auto;padding:24px 12px}.modal-bg.on{display:flex}.modal{background:white;border-radius:var(--rxl);padding:0;max-width:860px;width:100%;box-shadow:0 24px 64px rgba(0,0,0,.4);animation:popUp .4s cubic-bezier(.34,1.56,.64,1);position:relative}.modal-hdr{display:flex;justify-content:space-between;align-items:center;padding:18px 24px;border-bottom:2px solid var(--border);background:white;border-radius:var(--rxl) var(--rxl) 0 0;position:sticky;top:0;z-index:5}.modal-hdr h3{font-size:17px;font-weight:700;color:var(--pr)}.modal-close{background:rgba(239,68,68,.1);border:1.5px solid rgba(239,68,68,.25);border-radius:var(--rmd);width:36px;height:36px;display:flex;align-items:center;justify-content:center;font-size:20px;cursor:pointer;color:var(--red);transition:var(--tr);flex-shrink:0;font-weight:700}.modal-close:hover{background:var(--red);color:white;transform:rotate(90deg)}#modalBody{padding:20px 24px;max-height:70vh;overflow-y:auto}.modal-footer{display:flex;gap:10px;justify-content:flex-end;padding:14px 24px;border-top:1px solid var(--border);flex-wrap:wrap;background:var(--bg);border-radius:0 0 var(--rxl) var(--rxl)}.modal-bg.modal-fullscreen-bg{align-items:stretch;padding:0;background:rgba(15,23,42,.72)}.modal.modal-fullscreen{width:100%;max-width:none;min-height:100vh;border-radius:0;display:flex;flex-direction:column;animation:fadeIn .25s ease}.modal.modal-fullscreen .modal-hdr{border-radius:0;padding:18px 30px}.modal.modal-fullscreen #modalBody{flex:1;max-height:none;overflow:auto;padding:24px 30px}.modal.modal-fullscreen .modal-footer{border-radius:0;padding:16px 30px}.bill-detail-modal #modalBody{background:linear-gradient(180deg,#f7fbff,#eef5fa)}.bill-detail-content{max-width:1480px;width:100%;margin:0 auto}.bill-detail-modal .bill-detail-summary{grid-template-columns:repeat(4,minmax(170px,1fr))!important;background:white;border:1px solid rgba(15,95,154,.08);border-radius:var(--rlg);padding:18px;box-shadow:var(--sh1)}.bill-detail-modal .approval-trail{min-width:0}.bill-detail-modal .bill-detail-attendance{max-height:calc(100vh - 420px)!important;min-height:360px}.pdf-banner{background:linear-gradient(135deg,var(--green),#047857);color:white;border-radius:var(--rlg);padding:14px 18px;display:flex;align-items:center;gap:12px;margin-bottom:14px;animation:fadeIn .5s ease}.pdf-banner-icon{font-size:26px;flex-shrink:0}.pdf-banner-text strong{font-size:14px;display:block;margin-bottom:2px}.pdf-banner-text{flex:1;font-size:12px;line-height:1.5}.admin-tabs{display:flex;gap:0;border-bottom:2px solid var(--border);margin-bottom:22px;overflow-x:auto}.a-tab{padding:11px 20px;font-size:13px;font-weight:600;color:var(--text-l);cursor:pointer;border-bottom:3px solid transparent;margin-bottom:-2px;transition:var(--tr);white-space:nowrap;display:flex;align-items:center;gap:7px}.a-tab.active,.a-tab:hover{color:var(--pr)}.a-tab.active{border-bottom-color:var(--gold)}.bar-row{gap:10px;margin-bottom:9px;font-size:13px}.bar-lbl{width:160px;flex-shrink:0;color:#374151;font-weight:500;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bar-track{background:#f1f5f9;border-radius:4px;height:18px}.bar-fill{border-radius:4px;transition:width .8s ease;background:linear-gradient(90deg,var(--gold),#f97316)}.bar-val{width:90px;text-align:right;font-weight:700;color:var(--pr);font-size:12px;flex-shrink:0}.export-page-wrap{background:white;border-radius:var(--rlg);overflow:hidden;box-shadow:var(--sh2)}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}@media(max-width:900px){.sidebar-toggle{display:flex}.sidebar{position:fixed;left:-260px;top:0;height:100%;z-index:200;transition:var(--tr)}.sidebar.open{left:0}header{padding-left:66px}.form-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:1fr 1fr}.sig-grid,.sig-row{grid-template-columns:1fr}.sig-box-wide,.sig-grid .sig-box{grid-column:span 1}}@media(max-width:600px){.stats-grid{grid-template-columns:1fr}.content-area{padding:16px}}@media print{.add-row-btn,.app>header,.bill-tabs,.btn,.header,.loading-overlay,.sidebar,.toast-wrap{display:none!important}.print-bill{box-shadow:none!important;page-break-inside:avoid}body,html{background:white!important}}body,html{font-family:var(--font-sans);background:radial-gradient(circle at top left,rgba(244,154,26,.14),transparent 26%),radial-gradient(circle at top right,rgba(15,95,154,.16),transparent 24%),linear-gradient(180deg,#f7fbff,#edf4fa 52%,#e7eef5);color:#1f2d3d}body:before{content:"";position:fixed;inset:0;pointer-events:none;background-image:linear-gradient(rgba(15,95,154,.04) 1px,transparent 0),linear-gradient(90deg,rgba(15,95,154,.04) 1px,transparent 0);background-size:32px 32px;-webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,.5),transparent 82%);mask-image:linear-gradient(180deg,rgba(0,0,0,.5),transparent 82%)}.particles{opacity:.4}.par{background:radial-gradient(circle at 30% 30%,rgba(244,154,26,.45),rgba(244,154,26,0))}.login-page{background:linear-gradient(135deg,rgba(11,29,49,.96),rgba(18,59,96,.94) 40%,rgba(247,250,252,.96) 0,rgba(238,245,250,.96));padding:28px}.login-wrap{width:min(1180px,100%);max-width:1180px}.login-shell{display:grid;grid-template-columns:minmax(320px,420px) minmax(360px,1fr);gap:24px;align-items:start}.login-aside{position:relative;overflow:hidden;background:linear-gradient(180deg,rgba(10,28,45,.94),rgba(16,48,74,.92));border:1px solid rgba(255,255,255,.08);border-radius:24px;color:white;padding:32px;box-shadow:var(--sh3)}.login-side-badge{display:inline-flex;gap:8px;padding:7px 12px;border-radius:999px;background:rgba(255,255,255,.09);color:var(--gold-l);border:1px solid rgba(255,255,255,.1);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.login-side-badge,.login-side-brand{align-items:center;margin-bottom:18px}.login-side-brand{display:flex;gap:16px}.login-side-brand img{width:76px;height:76px;-o-object-fit:contain;object-fit:contain;border-radius:18px;background:white;padding:8px;box-shadow:0 14px 26px rgba(0,0,0,.18)}.login-side-brand h1{font-family:var(--font-sans);font-size:27px;line-height:1.25;margin-bottom:6px}.login-side-brand p{color:rgba(255,255,255,.72);font-size:13px;line-height:1.6}.login-side-copy{font-size:14px;line-height:1.8;color:rgba(255,255,255,.82);max-width:34ch;margin-bottom:24px}.login-highlights{display:grid;gap:12px}.login-highlight{padding:14px 15px;border-radius:8px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08)}.login-highlight strong{display:block;font-size:13px;color:white;margin-bottom:5px}.login-highlight span{display:block;font-size:12px;line-height:1.65;color:rgba(255,255,255,.72)}.login-card{background:rgba(255,255,255,.92);backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.68);border-top:6px solid var(--gold);border-radius:24px;padding:36px 38px;box-shadow:var(--sh3);min-height:0}.login-logo{display:flex;gap:16px;margin-bottom:30px;padding-bottom:20px;border-bottom:1px solid rgba(15,95,154,.12)}.login-logo-copy{flex:1}.login-logo-icon{width:84px;height:84px;background:linear-gradient(135deg,#ffffff,#eef5fb);border:1px solid rgba(15,95,154,.12);box-shadow:0 18px 38px rgba(15,95,154,.16);padding:10px}.login-logo-icon img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.login-univ{font-family:var(--font-sans);font-size:20px;line-height:1.35;color:#163047}.login-sys{color:var(--pr);font-size:13px;letter-spacing:.08em;text-transform:uppercase}.login-sub{color:var(--text);font-size:12px}.ltabs{border-bottom:1px solid var(--border);gap:8px}.ltab{border-radius:12px 12px 0 0;color:var(--text-l);font-weight:700}.ltab.active{color:var(--pr);background:rgba(15,95,154,.05)}.ltab.active:after{height:3px;background:linear-gradient(90deg,var(--pr),var(--gold))}.fg label,.lfield label{color:#355067}.lfield input,.lfield select{background:#f7fbff;color:#183047;border:1.5px solid #d7e3ee}.lfield input::-moz-placeholder{color:#8a98a8}.lfield input::placeholder{color:#8a98a8}.att-table input:focus,.att-table select:focus,.fg input:focus,.fg select:focus,.fg textarea:focus,.lfield input:focus,.lfield select:focus,.status-note-input:focus{border-color:var(--pr-l);box-shadow:0 0 0 4px rgba(42,125,192,.12)}.linfo{background:linear-gradient(135deg,rgba(15,95,154,.08),rgba(244,154,26,.08));border:1px solid rgba(15,95,154,.15);color:#466175}.app{background:transparent}.sidebar{position:relative;z-index:10}.sb-brand{gap:12px;padding:18px 16px;border-bottom:1px solid var(--color-border)}.sb-brand,.sb-logo{display:flex;align-items:center}.sb-logo{width:42px;height:42px;background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:var(--radius-md);justify-content:center;flex-shrink:0;padding:6px}.sb-logo img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.sb-name{color:var(--color-text-primary);font-size:.9375rem;font-weight:700;line-height:1.2}.sb-tagline{color:var(--color-brand);font-size:.6875rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;line-height:1.3}.sb-meta{color:var(--text-l);font-size:11px;margin-top:6px;line-height:1.5}.nav-sec-lbl{font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;padding:0 8px;margin-bottom:6px}.nav-item,.nav-sec-lbl{color:var(--color-sidebar-muted)}.nav-item{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:var(--radius-md);transition:background var(--tr),color var(--tr);margin-bottom:2px;font-size:.8125rem;font-weight:500;border-left:3px solid transparent;position:relative}.nav-item:hover{background:var(--color-sidebar-hover);color:var(--color-sidebar-text)}.nav-item.active{color:var(--color-brand);border-left-color:var(--color-brand);font-weight:600}.nav-item.active,.sb-footer{background:var(--color-bg-subtle)}.sb-footer{padding:14px 16px;border-top:1px solid var(--color-border)}.sb-user{color:var(--color-text-secondary);font-size:.75rem;margin-bottom:10px}.sb-user .name{color:var(--color-text-primary);font-weight:600;font-size:.8125rem;display:block;margin-bottom:3px}.sb-user .pan-badge{background:rgba(148,74,0,.08);color:var(--color-brand);border-radius:var(--radius-pill);padding:2px 8px;font-size:.6875rem;font-weight:600;letter-spacing:.03em}header{background:rgba(255,255,255,.78);border-bottom:1px solid rgba(15,95,154,.1);padding:18px 28px;backdrop-filter:blur(20px)}.hdr-title{color:#102338}.brand-lockup{gap:14px}.brand-lockup,.brand-mark{display:flex;align-items:center}.brand-mark{width:48px;height:48px;border-radius:16px;background:linear-gradient(135deg,#ffffff,#eef5fb);border:1px solid rgba(15,95,154,.12);box-shadow:0 12px 24px rgba(15,95,154,.12);justify-content:center;padding:8px}.brand-mark img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.brand-copy{display:flex;flex-direction:column;gap:4px}.brand-eyebrow{color:var(--pr);font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.hdr-title h3{font-size:20px;color:#13283d}.hdr-right{gap:12px;flex-wrap:wrap;justify-content:flex-end}.header-status{padding:8px 12px;border-radius:999px;background:rgba(15,95,154,.06);border:1px solid rgba(15,95,154,.1);color:var(--pr);font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.search-box{background:white;border:1px solid rgba(15,95,154,.12);color:#163047;box-shadow:var(--sh1);width:min(320px,100%)}.search-box::-moz-placeholder{color:#93a2b2}.search-box::placeholder{color:#93a2b2}.search-box:focus{background:white;box-shadow:0 0 0 4px rgba(42,125,192,.12)}.hdr-prof{background:white;border:1px solid rgba(15,95,154,.1);padding:5px 6px 5px 12px;border-radius:999px;color:#163047;box-shadow:var(--sh1)}.avatar{background:linear-gradient(135deg,var(--pr),var(--gold));box-shadow:0 10px 18px rgba(15,95,154,.22)}.content-area{padding:30px}.page{background:transparent}.page,.page-hero{border-radius:28px}.page-hero{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:18px;padding:28px 30px;border:1px solid rgba(15,95,154,.1);background:linear-gradient(135deg,rgba(255,255,255,.95),rgba(247,251,255,.92)),linear-gradient(135deg,rgba(15,95,154,.1),rgba(244,154,26,.08));box-shadow:var(--sh2);margin-bottom:22px}.page-hero:after{content:"";position:absolute;right:-60px;top:-50px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(244,154,26,.18),rgba(244,154,26,0))}.hero-chip{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border-radius:999px;background:rgba(15,95,154,.07);border:1px solid rgba(15,95,154,.12);color:var(--pr);font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;margin-bottom:12px}.page-hero-logo{position:relative;z-index:1;width:90px;height:90px;border-radius:24px;background:white;border:1px solid rgba(15,95,154,.12);box-shadow:0 18px 34px rgba(15,95,154,.14);padding:14px;flex-shrink:0}.page-hero-logo img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.pg-title{color:#142b40;font-family:var(--font-sans);font-size:30px;line-height:1.25}.pg-sub{color:#5e7084;font-size:14px;margin-bottom:0}.page-spotlight{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(260px,.7fr);gap:16px;margin-bottom:22px}.spotlight-card{padding:24px;border-radius:24px;border:1px solid rgba(15,95,154,.1);background:linear-gradient(135deg,#133d63,#0f2e4a);color:white;box-shadow:var(--sh2)}.spotlight-card.light{background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(247,251,255,.94));color:#173047}.spotlight-card h3{color:inherit;margin-bottom:10px}.spotlight-card p{font-size:13px;line-height:1.7;color:inherit;opacity:.86}.spotlight-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:18px}.spotlight-metric{padding:12px;border-radius:16px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1)}.spotlight-card.light .spotlight-metric{background:rgba(15,95,154,.05);border-color:rgba(15,95,154,.08)}.spotlight-metric strong{display:block;font-size:20px;margin-bottom:6px}.spotlight-metric span{display:block;font-size:11px;letter-spacing:.08em;text-transform:uppercase;opacity:.76}.focus-list{display:grid;gap:10px;margin-top:16px}.focus-row{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;padding:12px 14px;border-radius:16px;background:rgba(15,95,154,.05);border:1px solid rgba(15,95,154,.08)}.focus-row strong{display:block;color:#163047;font-size:13px;margin-bottom:3px}.focus-row span{color:#6a7b8d;font-size:12px;line-height:1.6}.focus-row b{color:#0f5f9a;font-size:13px;white-space:nowrap}.dashboard-detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px;margin:18px 0 20px}.dashboard-detail-card{padding:20px;border-radius:22px;background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,251,255,.95));border:1px solid rgba(15,95,154,.08);box-shadow:var(--sh2)}.dashboard-detail-kicker{color:#6d8094;font-size:11px;letter-spacing:.16em;text-transform:uppercase;margin-bottom:10px;font-weight:700}.dashboard-detail-card h3{margin-bottom:12px}.dashboard-detail-body{color:#587087;font-size:13px;line-height:1.72}.dashboard-detail-body strong{color:#173047}.detail-stack{display:grid;gap:10px}.detail-pair{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.detail-pair span{color:#6f8195}.detail-pair strong{color:#15324b;text-align:right}.dashboard-action-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(260px,.85fr);gap:18px;align-items:center}.dashboard-action-summary{padding:18px;border-radius:20px;background:linear-gradient(180deg,#f5faff,#eef5fb);border:1px solid rgba(15,95,154,.08)}.dashboard-action-summary strong{display:block;color:#163047;font-size:15px;margin-bottom:6px}.dashboard-action-summary p{color:#61768a;font-size:13px;line-height:1.68;margin:0}.summary-pill-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.summary-pill{padding:7px 11px;border-radius:999px;font-size:11px;font-weight:700;color:#24537a;background:rgba(15,95,154,.08);border:1px solid rgba(15,95,154,.08)}.dashboard-chart-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.dashboard-section-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px}.dashboard-section-top h3{margin-bottom:0}.dashboard-section-note{color:#73879b;font-size:12px;line-height:1.5;text-align:right}.dashboard-empty-state{padding:14px 16px;border-radius:16px;background:#f7fbff;border:1px dashed rgba(15,95,154,.16);color:#5c7387}.bill-form-wrap,.card,.export-page-wrap,.modal,.print-bill,.stat-card{background:rgba(255,255,255,.94);border:1px solid rgba(15,95,154,.08);box-shadow:var(--sh2)}.card h3{color:#15324b;letter-spacing:-.01em}.stats-grid{gap:18px}.stat-card{padding:22px 20px;border-radius:22px;background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,251,255,.94))}.stat-card:before{height:4px}.stat-card:after{content:"";position:absolute;right:-22px;bottom:-28px;width:108px;height:108px;border-radius:50%;background:radial-gradient(circle,rgba(15,95,154,.08),rgba(15,95,154,0))}.stat-card:hover{transform:translateY(-6px);box-shadow:0 28px 48px rgba(13,39,68,.14)}.stat-icon{animation:none}.stat-lbl{color:#738397}.stat-val{font-size:28px;color:#163047}.btn{border-radius:14px;font-weight:700}.btn-gold{background:linear-gradient(135deg,var(--gold),#f7ae38);color:#17202a}.btn-primary{background:linear-gradient(135deg,var(--pr),#2578ba)}.btn-outline{background:#fff;border:1.5px solid rgba(15,95,154,.14);color:var(--pr)}.btn-danger{background:linear-gradient(135deg,#cb5757,#a33333)}.btn-success{background:linear-gradient(135deg,#13816d,#0d5d50)}.tbl-wrap{border-radius:18px;border:1px solid rgba(15,95,154,.08);box-shadow:inset 0 1px 0 rgba(255,255,255,.8)}thead{background:linear-gradient(180deg,#f3f8fd,#e9f1f8)}th{color:#5c6f84;border-bottom:1px solid rgba(15,95,154,.09)}td{border-bottom:1px solid #edf3f8}tbody tr:hover td{background:#f8fbff}.badge{padding:5px 11px;letter-spacing:.02em}.admin-tabs,.bill-tabs{gap:10px;border-bottom:none}.a-tab,.b-tab{border:1px solid rgba(15,95,154,.1);border-radius:14px;background:white;margin-bottom:0;box-shadow:var(--sh1)}.a-tab{padding:11px 18px;color:#4d6277}.a-tab.active{background:linear-gradient(135deg,var(--pr),#2578ba);color:white;border-color:transparent}.a-tab:hover{color:#163047}.a-tab.active:hover{color:white}.doc-drop,.verify-card{background:linear-gradient(180deg,#fffaf1,#fff5e6);border-color:rgba(244,154,26,.24)}.modal-hdr{background:linear-gradient(180deg,#ffffff,#f7fbff)}.modal-footer{background:#f6fbff}.toast{background:#0f2740;border-left-width:5px;box-shadow:0 18px 32px rgba(0,0,0,.22)}.loading-overlay{background:rgba(10,28,45,.72)}.pdf-banner{background:linear-gradient(135deg,#0f7a67,#135749)}@media(max-width:1080px){.login-shell{grid-template-columns:1fr}.login-aside{padding:26px}.dashboard-action-grid,.page-spotlight{grid-template-columns:1fr}}@media(max-width:900px){.sidebar-toggle{display:flex}.sidebar{left:-260px}.header-status{display:none}.page-hero{padding:24px}header{padding-left:66px}.modal.modal-fullscreen #modalBody,.modal.modal-fullscreen .modal-footer,.modal.modal-fullscreen .modal-hdr{padding-left:18px;padding-right:18px}.bill-detail-modal .bill-detail-summary{grid-template-columns:1fr!important}.bill-detail-modal .bill-detail-attendance{max-height:none!important}}@media(max-width:600px){.login-page{padding:14px}.login-card{padding:24px 20px}.login-logo{flex-direction:column;align-items:flex-start}.brand-mark,.page-hero-logo{display:none}.hdr-right{width:100%;justify-content:space-between}header{padding:16px}.page-hero{padding:22px 18px}.spotlight-metrics{grid-template-columns:1fr}}.stat-card__label{font-size:11px;color:var(--color-text-muted);font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}.stat-card__value{font-family:var(--font-mono);font-size:24px;font-weight:700;color:var(--color-text-primary);margin-bottom:4px}.stat-card__value--sm{font-family:var(--font-sans,inherit);font-size:16px;line-height:1.3}.secmon-detail{display:inline-block;white-space:normal;max-width:420px;min-width:220px;line-height:1.35;vertical-align:middle}.stat-card__trend{font-size:12px;color:var(--color-text-muted)}.stat-card__trend--up{color:var(--color-success-text)}.stat-card__trend--down{color:var(--color-danger-text)}.stat-card__trend--neutral{color:var(--color-text-muted)}.badge--pending,.badge.pending{background:var(--color-warning-bg);color:var(--color-warning-text);border:1px solid var(--color-warning-border)}.badge--approved,.badge--verified,.badge.approved,.badge.verified{background:var(--color-success-bg);color:var(--color-success-text);border:1px solid var(--color-success-border)}.badge--rejected,.badge.rejected{background:var(--color-danger-bg);color:var(--color-danger-text);border:1px solid var(--color-danger-border)}.badge--paid,.badge.paid{background:var(--color-info-bg);color:var(--color-info-text);border:1px solid var(--color-info-border)}.badge--on-hold,.badge.hold{background:var(--color-warning-bg);color:var(--color-warning-text);border:1px solid var(--color-warning-border)}.badge--neutral{border:1px solid var(--color-border)}.table-wrapper{overflow-x:auto;border-radius:var(--radius-md);background:var(--color-bg-surface);box-shadow:var(--shadow-card)}.table-toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-4);border-bottom:1px solid var(--color-border)}.table-toolbar__title{font-size:15px;font-weight:600;color:var(--color-text-primary)}.table-pagination{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-4)}.empty-state{padding:var(--space-8);color:var(--color-text-muted)}.empty-state__icon{font-size:24px;margin-bottom:var(--space-2)}.empty-state__title{font-size:15px;color:var(--color-text-primary);margin-bottom:var(--space-1)}.empty-state__desc{font-size:13px;color:var(--color-text-muted)}.alert{border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);font-size:13px;border:1px solid var(--color-border)}.alert--error{background:var(--color-danger-bg);color:var(--color-danger-text);border-color:var(--color-danger-border)}.alert--success{background:var(--color-success-bg);color:var(--color-success-text);border-color:var(--color-success-border)}.alert--warning{background:var(--color-warning-bg);color:var(--color-warning-text);border-color:var(--color-warning-border)}.alert--info{background:var(--color-info-bg);color:var(--color-info-text);border-color:var(--color-info-border)}.btn--primary{background:var(--color-brand);color:#fff}.btn--primary:hover{background:var(--color-brand-hover)}.btn--secondary{background:var(--color-bg-surface);color:var(--color-text-primary);border:1px solid var(--color-border)}.btn--secondary:hover{background:var(--color-bg-hover)}.btn--danger{background:var(--color-danger-text);color:#fff}.form-field{display:grid;gap:var(--space-2);margin-bottom:var(--space-4)}.form-field label{font-size:13px;font-weight:500;color:var(--color-text-secondary)}.form-field input,.form-field select,.form-field textarea{width:100%;min-width:0;max-width:100%}.stepper{gap:var(--space-2);margin-bottom:var(--space-6)}.stepper__step{padding:var(--space-2) var(--space-3);font-size:13px;font-weight:600}.stepper__step--done{color:var(--color-success-text)}.skeleton{position:relative;overflow:hidden;background:var(--color-bg-subtle);border-radius:var(--radius-md)}.skeleton:after{content:"";position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.65),transparent);animation:skeletonShimmer 1.4s infinite}.skeleton--text{height:14px;max-width:240px}.skeleton--card{height:120px}.nav-link{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);color:var(--color-sidebar-muted);transition:var(--tr)}.nav-link--active{background:var(--color-sidebar-hover);color:var(--color-sidebar-text)}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-6)}.layout{display:flex;min-height:100vh;background:var(--color-bg-page);color:var(--color-text-primary);font-family:var(--font-sans)}.content{flex:1;min-width:0;padding:var(--space-6)}@keyframes skeletonShimmer{to{transform:translateX(100%)}}button:disabled,input:disabled,select:disabled,textarea:disabled{opacity:var(--disabled-opacity);cursor:var(--disabled-cursor)}input:focus,select:focus,textarea:focus{border-color:var(--color-brand);box-shadow:var(--focus-ring);outline:none}.dashboard-layout .sidebar{width:260px;box-shadow:none}.dashboard-layout .sb-brand{align-items:center;gap:12px;padding:18px 16px;border-bottom:1px solid var(--color-border)}.dashboard-layout .sb-logo{width:42px;height:42px;background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:var(--radius-md);color:inherit;box-shadow:none;animation:none;padding:6px}.dashboard-layout .sb-name{color:var(--color-text-primary);font-size:.9375rem}.dashboard-layout .sb-tagline{color:var(--color-brand);font-size:.6875rem;letter-spacing:.06em;text-transform:uppercase}.dashboard-layout .sb-nav{flex:1;padding:12px 8px}.dashboard-layout .nav-item,.dashboard-layout .nav-sec-lbl{color:var(--color-sidebar-muted)}.dashboard-layout .nav-item{border-left:3px solid transparent;margin-bottom:2px;padding:9px 12px;text-decoration:none}.dashboard-layout .nav-item:hover{background:var(--color-sidebar-hover);color:var(--color-sidebar-text)}.dashboard-layout .nav-item.active{background:var(--color-bg-subtle);border-left-color:var(--color-brand);box-shadow:none}.dashboard-layout .sb-footer{padding:14px 16px;border-top:1px solid var(--color-border);background:var(--color-bg-subtle)}.dashboard-layout .sb-user{color:var(--color-text-secondary)}.dashboard-layout .sb-user .name{color:var(--color-text-primary)}.dashboard-layout .sb-user .pan-badge{background:rgba(148,74,0,.08);color:var(--color-brand);border-color:transparent}.dashboard-content{overflow-y:auto;overflow-x:hidden;min-height:100vh;min-width:0}.dashboard-auth-loading{min-height:100vh;display:grid;place-items:center;background:var(--color-bg-page);padding:var(--space-6)}.dashboard-auth-loading__card{width:min(420px,100%)}.dashboard-home-header h1{font-size:22px;font-weight:600}.dashboard-muted{color:var(--color-text-muted);font-size:13px;margin-top:var(--space-1)}.dashboard-alert,.submission-conflicts{margin-bottom:var(--space-4)}.submission-conflicts{border:1px solid var(--color-danger-border);border-radius:8px;background:var(--color-danger-bg);color:var(--color-danger-text);padding:14px 16px}.submission-conflicts__title{color:var(--color-text-primary);font-size:14px;font-weight:700}.submission-conflicts__hint{margin-top:4px;color:var(--color-text-secondary);font-size:13px}.submission-conflicts__list{display:grid;gap:10px;margin-top:12px}.submission-conflict{display:grid;grid-template-columns:minmax(160px,220px) 1fr;gap:12px;border:1px solid color-mix(in srgb,var(--color-danger-border) 70%,var(--color-surface));border-radius:8px;background:var(--color-surface);padding:10px 12px}.submission-conflict__ref{align-self:start;color:var(--color-danger-text);font-family:var(--font-mono);font-size:12px;font-weight:700;overflow-wrap:anywhere}.submission-conflict__body{display:grid;gap:5px;color:var(--color-text-primary);font-size:13px;line-height:1.45}.submission-conflict__body strong{font-weight:700}.submission-conflict__subject{color:var(--color-text-muted);font-size:12px}@media(max-width:700px){.submission-conflict{grid-template-columns:1fr}}.dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-4);margin-bottom:var(--space-6)}.dashboard-card{margin-bottom:0}.dashboard-table-toolbar{padding-left:0;padding-right:0;padding-top:0}@media(max-width:900px){.dashboard-layout .sidebar{position:fixed;left:-260px;top:0;height:100%;z-index:200;transition:var(--tr)}.dashboard-layout .sidebar.open{left:0}.dashboard-content{padding:var(--space-4);padding-top:72px}}.admin-bills-page{display:grid;gap:var(--space-4);min-width:0}.admin-bills-page>.card,.admin-bills-page>.verify-card{min-width:0;max-width:100%}.admin-bills-muted{color:var(--color-text-muted);font-size:13px;margin-top:var(--space-1)}.admin-bills-alert{margin-bottom:var(--space-2)}.admin-bills-filter-card{margin-bottom:0}.admin-bills-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-4);align-items:end}.admin-bills-bulk-card .form-field,.admin-bills-filter-grid .form-field{margin-bottom:0}.admin-bills-filter-field{min-width:0}.admin-bills-filter-actions{display:grid;grid-template-columns:minmax(106px,auto) minmax(132px,auto);gap:var(--space-3);align-items:end;justify-content:end;min-width:0}.admin-bills-clear-btn,.admin-bills-search-btn{justify-content:center;white-space:nowrap}.admin-bills-bulk-card{display:grid;grid-template-columns:minmax(170px,.72fr) minmax(210px,.9fr) minmax(280px,1.25fr) auto;gap:var(--space-3);align-items:end;margin-bottom:0;padding:16px 18px;border-color:var(--color-border);box-shadow:var(--shadow-card)}.admin-bills-bulk-head{grid-column:1/-1;display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--color-border)}.admin-bills-bulk-help{max-width:68ch;margin:3px 0 0;color:var(--color-text-muted);font-size:13px;line-height:1.45}.admin-bills-selection-count{display:inline-flex;align-items:center;min-height:28px;padding:4px 10px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-subtle);color:var(--color-text-secondary);font-size:12px;font-weight:700;white-space:nowrap}.admin-bills-bulk-card--idle{background:var(--color-bg-surface)}.admin-bills-bulk-card--idle .admin-bills-selection-count{color:var(--color-text-muted);font-weight:600}.admin-bills-bulk-card .form-field label{font-size:12px;font-weight:650}.admin-bills-bulk-card input:disabled,.admin-bills-bulk-card select:disabled,.admin-bills-bulk-card textarea:disabled{background:var(--color-bg-subtle);color:var(--color-text-muted)}.admin-bills-bulk-card .optional-label{color:var(--color-text-muted);font-weight:500}.admin-bills-bulk-card .admin-bills-bulk-remark textarea{min-height:42px;max-height:72px;resize:vertical}.admin-bills-bulk-card>.btn,.admin-bills-bulk-save{min-width:124px;justify-content:center}.admin-bills-row--selected{background:rgba(148,74,0,.045)}.admin-bills-row--selected td{box-shadow:inset 0 1px 0 rgba(148,74,0,.08),inset 0 -1px 0 rgba(148,74,0,.08)}.admin-bills-count{color:var(--color-text-muted);font-size:13px}.admin-bills-table{min-width:1120px}.admin-bills-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.admin-bills-claim-cell{display:grid;justify-items:start;gap:6px;min-width:132px}.monthly-cap-badge{display:inline-flex;align-items:center;gap:5px;width:-moz-max-content;width:max-content;max-width:100%;padding:4px 7px;border:1px solid color-mix(in srgb,var(--color-warning) 36%,var(--color-border));border-radius:var(--radius-sm);background:color-mix(in srgb,var(--color-warning) 10%,var(--color-bg-surface));color:color-mix(in srgb,var(--color-warning) 72%,var(--color-text-primary));font-size:11px;font-weight:700;line-height:1.2;white-space:nowrap}.monthly-cap-panel{display:grid;gap:var(--space-4);margin-top:var(--space-4);padding:var(--space-5);border:1px solid color-mix(in srgb,var(--color-warning) 42%,var(--color-border));border-radius:var(--radius-lg);background:color-mix(in srgb,var(--color-warning) 7%,var(--color-bg-surface));box-shadow:var(--shadow-card)}.monthly-cap-panel__heading{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:var(--space-3)}.monthly-cap-panel__icon{display:grid;place-items:center;width:40px;height:40px;border:1px solid color-mix(in srgb,var(--color-warning) 40%,var(--color-border));border-radius:var(--radius-md);background:color-mix(in srgb,var(--color-warning) 14%,var(--color-bg-surface));color:color-mix(in srgb,var(--color-warning) 78%,var(--color-text-primary))}.monthly-cap-panel__eyebrow{margin-bottom:3px;color:color-mix(in srgb,var(--color-warning) 74%,var(--color-text-primary));font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.monthly-cap-panel h3{margin:0;color:var(--color-text-primary);font-size:17px;line-height:1.35}.monthly-cap-panel p{max-width:82ch;margin:5px 0 0;color:var(--color-text-secondary);font-size:13px;line-height:1.55}.monthly-cap-panel__status{display:inline-flex;align-items:center;min-height:28px;padding:5px 9px;border:1px solid color-mix(in srgb,var(--color-warning) 36%,var(--color-border));border-radius:999px;background:var(--color-bg-surface);color:color-mix(in srgb,var(--color-warning) 72%,var(--color-text-primary));font-size:11px;font-weight:800;white-space:nowrap}.monthly-cap-panel__amounts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3)}.monthly-cap-panel__amounts>div{display:grid;gap:5px;padding:var(--space-3);border:1px solid color-mix(in srgb,var(--color-warning) 22%,var(--color-border));border-radius:var(--radius-md);background:var(--color-bg-surface)}.monthly-cap-panel__amounts span,.monthly-cap-panel__context span{color:var(--color-text-secondary);font-size:12px}.monthly-cap-panel__amounts strong{color:var(--color-text-primary);font-size:18px}.monthly-cap-panel__amounts .monthly-cap-panel__reduction{color:var(--color-danger)}.monthly-cap-panel__amounts .monthly-cap-panel__allowed{color:var(--color-success)}.monthly-cap-panel__context{display:flex;align-items:center;gap:var(--space-3) var(--space-5);flex-wrap:wrap;padding-top:var(--space-3);border-top:1px solid color-mix(in srgb,var(--color-warning) 22%,var(--color-border))}.monthly-cap-panel__context strong{color:var(--color-text-primary)}.role-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.role-check{display:flex;align-items:center;gap:8px;min-height:36px;padding:8px 10px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-surface);color:var(--color-text-secondary);font-size:13px;font-weight:600}.role-check input{width:16px;height:16px;margin:0;accent-color:var(--color-primary)}.log-detail-simple{display:grid;gap:10px;max-width:920px}.log-detail-simple__row{display:grid;grid-template-columns:minmax(140px,220px) minmax(0,1fr);gap:14px;align-items:start;padding:12px 14px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-surface)}.log-detail-simple__row span{color:var(--color-text-muted);font-size:12px;font-weight:750;letter-spacing:.04em;text-transform:uppercase}.log-detail-simple__row strong{min-width:0;color:var(--color-text);font-size:14px;line-height:1.45;overflow-wrap:anywhere}.owner-dashboard-page{display:grid;gap:24px}.owner-header{align-items:flex-start}.owner-posture{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--color-border);border-radius:var(--radius-lg);background:linear-gradient(180deg,var(--color-bg-surface),var(--color-bg-subtle));overflow:hidden}.owner-posture>div{min-height:86px;padding:18px;border-right:1px solid var(--color-border)}.owner-posture>div:last-child{border-right:0}.owner-posture span{display:block;color:var(--color-text-muted);font-size:12px;font-weight:750;letter-spacing:.04em;text-transform:uppercase}.owner-posture strong{display:block;margin-top:8px;color:var(--color-text);font-size:22px;line-height:1.15}.owner-stats-grid{align-items:stretch}.owner-command-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.7fr);gap:18px}.owner-command-card{min-height:200px}.owner-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.owner-actions .btn{justify-content:center;min-height:42px}.owner-event-list,.owner-health-list{display:grid;gap:8px}.owner-health-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:40px;padding:8px 12px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg-subtle)}.owner-event-row{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:flex-start;padding:10px 12px;border-bottom:1px solid var(--color-border);background:transparent}.owner-event-row:last-child{border-bottom:0}.owner-event-row strong{display:block;color:var(--color-text);font-size:13px;font-weight:650}.owner-event-row p{margin:2px 0 0;color:var(--color-text-muted);font-size:12px;line-height:1.4}.erp-owner-workspace{display:grid}.erp-owner-header{align-items:flex-start}.owner-tabs{display:flex;align-items:center;gap:8px;padding:6px;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-surface);overflow-x:auto}.owner-tabs button{min-height:38px;padding:0 13px;border:1px solid transparent;border-radius:var(--radius-md);background:transparent;color:var(--color-text-secondary);font-size:13px;font-weight:650;white-space:nowrap}.owner-tabs button.is-active{border-color:var(--color-border);background:var(--color-bg-subtle);color:var(--color-text);box-shadow:var(--shadow-sm)}.owner-panel{display:grid;gap:16px;padding:20px 22px;border:1px solid var(--color-border);border-radius:12px;background:var(--color-bg-surface);box-shadow:none}.owner-panel__head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:12px;border-bottom:1px solid var(--color-border)}.owner-panel__head h3{margin:0;font-size:14.5px;font-weight:700}.owner-panel__head p{margin:3px 0 0;color:var(--color-text-muted);font-size:13px}.owner-metric{display:grid;gap:8px;padding:16px 18px;border:1px solid var(--color-border);border-radius:10px;background:var(--color-bg-surface)}.owner-metric__icon{display:grid;place-items:center;width:34px;height:34px;border-radius:8px;background:var(--color-bg-subtle);color:var(--color-text-secondary)}.owner-metric__icon.is-danger{background:var(--owner-danger-bg);color:var(--owner-danger)}.owner-metric span{color:var(--color-text-muted);font-size:11.5px;font-weight:700;letter-spacing:.03em}.owner-metric strong{color:var(--color-text);font-size:26px;font-weight:750;line-height:1}.owner-metric--danger .owner-metric strong{color:var(--owner-danger)}.owner-metric--success .owner-metric strong{color:var(--owner-success)}.owner-metric small{color:var(--color-text-muted);font-size:12px}.owner-filter-row{display:grid;grid-template-columns:minmax(260px,1fr) minmax(220px,.4fr);gap:16px;align-items:end}.owner-table-wrapper table{min-width:980px}.owner-scope-list{display:grid;gap:10px}.owner-scope-list div{display:grid;gap:4px;padding:12px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-subtle)}.owner-scope-list b{color:var(--color-text)}.owner-scope-list span{color:var(--color-text-muted);font-size:13px}.owner-security-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.emergency-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.emergency-card{display:grid;gap:14px;min-height:140px;padding:16px;border:1px solid var(--color-border);border-radius:10px;background:var(--color-bg-surface);transition:border-color .15s}.emergency-card--active{background:rgba(255,240,241,.3)}.emergency-card h4{margin:0;color:var(--color-text);font-size:13.5px;font-weight:700}.emergency-card p{margin:5px 0 0;color:var(--color-text-muted);font-size:12.5px;line-height:1.45}.emergency-card__foot{display:flex;align-items:center;justify-content:space-between;gap:12px}.owner-edit-drawer{position:fixed;inset:0;z-index:80;display:flex;justify-content:flex-end;background:rgba(15,23,42,.28)}.owner-edit-card{width:min(560px,100%);height:100%;overflow:auto;padding:24px;background:var(--color-bg-surface);box-shadow:-24px 0 60px rgba(15,23,42,.18)}@media(max-width:1050px){.emergency-grid,.owner-command-grid,.owner-filter-row,.owner-posture,.owner-security-grid{grid-template-columns:1fr}.owner-posture>div{border-right:0;border-bottom:1px solid var(--color-border)}.owner-posture>div:last-child{border-bottom:0}}.erp-owner-workspace{--owner-success:#39731f;--owner-success-bg:#edf6e7;--owner-warning:#9a5b00;--owner-warning-bg:#fff3dc;--owner-danger:#b4232c;--owner-danger-bg:#fff0f1;--owner-info:#355f8a;--owner-info-bg:#edf4fa;gap:20px}.dashboard-layout--control{min-height:100dvh}.dashboard-layout--control .dashboard-main--control{min-height:100dvh;height:100dvh}.dashboard-layout--control .dashboard-content--control{min-height:0;padding:0;overflow-y:auto}.dashboard-layout--control .erp-owner-workspace{min-height:100%;padding:24px 28px 32px}.erp-owner-sticky-header{position:sticky;top:0;z-index:30;margin:-24px -28px 0;padding-bottom:16px;background:var(--color-bg-surface,#ffffff)}.erp-owner-header{flex-wrap:wrap;min-height:72px;margin:0;padding:12px 24px;border-bottom:none;background:transparent}.erp-owner-header__identity{min-width:260px;max-width:620px}.erp-owner-header__identity .page-header__chip{margin-bottom:4px;font-size:10px}.erp-owner-header__identity .page-header__title{margin:0;font-size:1.25rem;font-weight:750;letter-spacing:-.025em;line-height:1.2}.erp-owner-header__identity .page-header__desc{font-size:.78rem;color:var(--color-text-muted)}.erp-owner-header__actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px;flex:0 0 auto}.erp-owner-operator,.erp-owner-updated{display:flex;align-items:center;min-height:38px}.erp-owner-operator{padding-right:12px;border-right:1px solid var(--color-border)}.erp-owner-operator__mark{display:grid;width:30px;height:30px;place-items:center;flex:0 0 auto;border-radius:8px;background:var(--color-brand-light);color:var(--color-brand);font-size:12px;font-weight:800}.erp-owner-operator>span:last-child,.erp-owner-updated{min-width:0}.erp-owner-operator em,.erp-owner-operator small,.erp-owner-operator strong,.erp-owner-updated small,.erp-owner-updated strong{display:block}.erp-owner-operator small,.erp-owner-updated small{color:var(--color-text-muted);font-size:9.5px;font-weight:700;letter-spacing:.05em;line-height:1.2;text-transform:uppercase}.erp-owner-operator strong,.erp-owner-updated strong{margin-top:2px;color:var(--color-text-primary);font-size:12px;font-weight:650;line-height:1.25;white-space:nowrap}.erp-owner-operator em{color:var(--color-text-muted);font-size:10px;font-style:normal;line-height:1.2}.erp-owner-updated{display:block;min-width:90px;padding:5px 4px}.erp-owner-header .page-header__title{letter-spacing:-.025em}.erp-owner-header .page-header__desc{max-width:72ch}.owner-error-reference{display:block;margin-bottom:3px;color:var(--color-brand);font-family:var(--font-mono);font-size:12px;letter-spacing:.03em}.owner-status-strip{margin:0 14px;border:1px solid var(--color-border);border-radius:12px;overflow:hidden}.owner-status-strip>div{position:relative;display:grid;min-height:80px;padding:14px 18px;border-right:1px solid var(--color-border);border-left:3px solid transparent;transition:background .2s,border-color .2s}.owner-status-strip>div:last-child{border-right:0}.owner-status-strip span{display:flex;align-items:center;gap:6px;color:var(--color-text-muted);font-size:10.5px;font-weight:750;letter-spacing:.06em;text-transform:uppercase}.owner-status-strip strong{display:block;margin-top:5px;font-size:22px;font-weight:750;letter-spacing:-.02em;color:var(--color-text-primary);line-height:1.1}.owner-status-strip small{display:block;margin-top:4px;color:var(--color-text-muted);font-size:11.5px;line-height:1.35}.status-strip--success{background:transparent;border-left-color:transparent}.status-strip--success>strong{color:var(--color-text-primary)}.status-strip--info{background:transparent;border-left-color:var(--color-border)}.status-strip--info>span{color:var(--color-text-secondary)}.status-strip--info>strong{color:var(--color-text-primary)}.status-strip--warning{background:rgba(255,243,220,.35);border-left-color:var(--owner-warning)}.status-strip--warning>span,.status-strip--warning>strong{color:var(--owner-warning)}.status-strip--warning>small{color:var(--owner-warning);opacity:.8}.status-strip--danger{background:rgba(255,240,241,.5);border-left-color:var(--owner-danger)}.status-strip--danger>span,.status-strip--danger>strong{color:var(--owner-danger)}.status-strip--danger>small{color:var(--owner-danger);opacity:.8}.status-strip-dot{display:inline-block;width:6px;height:6px;border-radius:50%;flex-shrink:0}.status-strip--warning .status-strip-dot{background:var(--owner-warning);animation:strip-pulse-warn 2s infinite}.status-strip--danger .status-strip-dot{background:var(--owner-danger);animation:strip-pulse-danger 1.4s infinite}@keyframes strip-pulse-warn{0%,to{box-shadow:0 0 0 0 rgba(154,91,0,.4)}50%{box-shadow:0 0 0 4px rgba(154,91,0,0)}}@keyframes strip-pulse-danger{0%,to{box-shadow:0 0 0 0 rgba(180,35,44,.45)}50%{box-shadow:0 0 0 5px rgba(180,35,44,0)}}.owner-workspace-shell{display:grid;grid-template-columns:210px minmax(0,1fr);align-items:start;min-height:600px;overflow:hidden;border:1px solid var(--color-border);border-radius:12px;background:var(--color-bg-surface)}.owner-section-nav{position:sticky;top:24px;display:flex;flex-direction:column;min-height:600px;padding:16px 10px 0;border:0;border-right:1px solid var(--color-border);border-radius:0;background:var(--color-bg-subtle);overflow:visible}.owner-section-nav__group{display:grid;gap:2px}.owner-section-nav__group+.owner-section-nav__group{margin-top:20px}.owner-section-nav__group>span{padding:0 8px 5px;color:var(--color-text-muted);font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.owner-section-nav button{display:flex;width:100%;min-height:36px;align-items:center;gap:8px;justify-content:flex-start;padding:6px 9px;border:none;border-radius:7px;color:var(--color-text-secondary);font-size:13px;font-weight:550;text-align:left;transition:background .15s,color .15s}.owner-section-nav button:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.owner-section-nav button.is-active{background:var(--color-brand-light);color:var(--color-brand);font-weight:700}.owner-workspace-content{display:grid;min-width:0;gap:18px;padding:20px 22px}.owner-workspace-content .owner-panel{box-shadow:none}.module-status-panel{gap:6px}.owner-live-indicator{display:inline-flex;align-items:center;gap:6px;color:var(--color-text-muted);font-size:11.5px;font-weight:650}.owner-live-indicator i{display:block;width:6px;height:6px;border-radius:50%;background:var(--owner-success);animation:live-pulse 2s infinite}.module-status-list{display:grid}.module-status-row{display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:60px;padding:10px 0;border-bottom:1px solid var(--color-border)}.module-status-row:last-child{border-bottom:0}.module-status-row__icon{display:grid;width:34px;height:34px;place-items:center;border-radius:8px;background:var(--color-bg-subtle);color:var(--color-text-secondary)}.module-status-row__icon--attention,.module-status-row__icon--maintenance{background:var(--owner-warning-bg);color:var(--owner-warning)}.module-status-row__icon--offline{background:var(--owner-danger-bg);color:var(--owner-danger)}.module-status-row__copy{min-width:0}.module-status-row__copy span,.module-status-row__copy strong{display:block}.module-status-row__copy strong{color:var(--color-text-primary);font-size:13.5px;font-weight:650;line-height:1.3}.module-status-row__copy span{margin-top:2px;color:var(--color-text-muted);font-size:12px;line-height:1.3}.module-state{display:inline-flex;min-height:24px;align-items:center;justify-content:center;padding:3px 10px;border:0;border-radius:999px;font-size:11px;font-weight:700;line-height:1.2;white-space:nowrap}button.module-state:not(:disabled){cursor:pointer}button.module-state:not(:disabled):hover{filter:brightness(.96)}.module-state--operational{background:var(--owner-success-bg);color:var(--owner-success)}.module-state--attention,.module-state--maintenance{background:var(--owner-warning-bg);color:var(--owner-warning)}.module-state--offline{background:var(--owner-danger-bg);color:var(--owner-danger)}.owner-overview-band{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:hidden;border:1px solid var(--color-border);border-radius:10px;background:transparent}.owner-overview-band>div{min-width:0;padding:14px 16px;border-right:1px solid var(--color-border);border-radius:0;background:var(--color-bg-surface);transition:background .2s}.owner-overview-band>div:last-child{border-right:0}.owner-overview-band small,.owner-overview-band span,.owner-overview-band strong{display:block}.owner-overview-band span{color:var(--color-text-muted);font-size:10.5px;font-weight:750;letter-spacing:.06em;text-transform:uppercase}.owner-overview-band strong{margin-top:5px;color:var(--color-text-primary);font-size:16px;font-weight:700;line-height:1.25}.owner-overview-band small{margin-top:3px;color:var(--color-text-muted);font-size:11.5px;line-height:1.35}.owner-overview-band strong.is-danger{color:var(--owner-danger)}.owner-overview-band strong.is-warning{color:var(--owner-warning)}.owner-overview-band strong.is-success{color:var(--owner-success)}.overview-band--is-danger{background:rgba(255,240,241,.4)}.overview-band--is-warning{background:rgba(255,243,220,.4)}.overview-band--is-success{background:rgba(237,246,231,.35)}.delta--down,.delta--up{display:inline;margin-left:4px;font-style:normal;font-size:11px;font-weight:700}.delta--up{color:var(--owner-success)}.delta--down{color:var(--owner-danger)}.maintenance-module-list,.owner-maintenance-stack{display:grid;gap:16px}.maintenance-intro{grid-template-columns:auto minmax(0,1fr) auto;align-items:center}.maintenance-intro__icon{display:grid;width:46px;height:46px;place-items:center;border-radius:12px;background:var(--color-brand-light);color:var(--color-brand)}.maintenance-intro h3,.maintenance-safety h3{margin:0;color:var(--color-text-primary);font-size:15px}.maintenance-intro p,.maintenance-safety p{margin:4px 0 0;color:var(--color-text-muted);font-size:13px;line-height:1.45}.maintenance-module-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:14px;padding:16px;border:1px solid var(--color-border);border-radius:12px;background:var(--color-bg-surface)}.maintenance-module-row__copy{min-width:0}.maintenance-module-row__copy>div{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.maintenance-module-row__copy strong{color:var(--color-text-primary);font-size:14px}.maintenance-module-row__copy p{margin:4px 0 0;color:var(--color-text-secondary);font-size:13px}.maintenance-module-row__copy small{display:block;margin-top:5px;color:var(--color-text-muted);font-size:11.5px;line-height:1.4}.maintenance-safety{display:flex;align-items:center;justify-content:space-between}.maintenance-safety>div{display:flex;align-items:flex-start;gap:12px}.maintenance-safety>div>svg{flex:0 0 auto;color:var(--owner-success)}.server-health-panel{margin-top:auto;padding:14px 10px 10px;border-top:1px solid var(--color-border)}.server-health-panel__head{gap:6px;color:var(--color-text-muted);font-size:10.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.server-health-overall,.server-health-panel__head{display:flex;align-items:center;margin-bottom:10px}.server-health-overall{gap:7px;padding:7px 10px;border-radius:8px;font-size:12px;font-weight:700;line-height:1.2}.health-status--online{background:var(--owner-success-bg);color:var(--owner-success)}.health-status--degraded{background:var(--owner-warning-bg);color:var(--owner-warning)}.health-status--offline{background:var(--owner-danger-bg);color:var(--owner-danger)}.health-status--checking{background:var(--color-bg-hover);color:var(--color-text-muted)}.server-health-rows{display:grid;gap:5px}.health-row{display:flex;align-items:center;gap:8px;padding:4px 2px;font-size:12px}.health-dot{flex:0 0 auto;width:8px;height:8px;border-radius:50%}.health-dot--online{background:var(--owner-success)}.health-dot--degraded{background:var(--owner-warning)}.health-dot--offline{background:var(--owner-danger)}.health-dot--checking{background:var(--color-text-muted);opacity:.5}.health-row__label{flex:1;color:var(--color-text-secondary);font-size:12px}.health-row__hint{color:var(--color-text-muted);font-size:11px;white-space:nowrap}.server-health-updated{display:flex;align-items:center;gap:5px;margin-top:8px;color:var(--color-text-muted);font-size:10.5px}.confirm-modal-overlay{position:fixed;inset:0;z-index:1200;display:grid;place-items:center;padding:20px;background:rgba(0,0,0,.45);backdrop-filter:blur(4px)}.confirm-modal{width:100%;max-width:440px;padding:28px;border:1px solid var(--color-border);border-radius:16px;background:var(--color-bg-surface);box-shadow:0 24px 60px rgba(0,0,0,.18)}.confirm-modal--danger{border-color:rgba(var(--owner-danger-rgb,200,30,30),.25)}.confirm-modal__head{display:flex;align-items:flex-start;gap:12px;margin-bottom:14px}.confirm-modal__head h3{margin:0;color:var(--color-text-primary);font-size:16px;font-weight:750;line-height:1.3}.confirm-modal__head svg.is-danger{color:var(--owner-danger)}.confirm-modal__head svg.is-warning{color:var(--owner-warning)}.confirm-modal__message{margin:0 0 22px;color:var(--color-text-secondary);font-size:14px;line-height:1.55}.confirm-modal__actions{display:flex;justify-content:flex-end;gap:10px}.nav-danger-dot{display:inline-block;width:7px;height:7px;margin-left:auto;border-radius:50%;background:var(--owner-danger);flex-shrink:0}.owner-section-nav button.is-emergency{color:var(--owner-danger)}.owner-section-nav button.is-emergency.is-active,.owner-section-nav button.is-emergency:hover{background:var(--owner-danger-bg);color:var(--owner-danger)}.owner-section-nav button.is-emergency.is-active{border-color:rgba(200,30,30,.18)}.owner-section-nav__groups{flex:1;display:grid;align-content:start}@media(max-width:1180px){.erp-owner-sticky-header{position:relative}.erp-owner-header__actions{flex-wrap:wrap}.owner-workspace-shell{grid-template-columns:190px minmax(0,1fr)}.owner-command-grid{grid-template-columns:1fr}}@media(max-width:900px){.owner-status-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.owner-status-strip>div:nth-child(2){border-right:0}.owner-status-strip>div:nth-child(-n+2){border-bottom:1px solid var(--color-border)}.owner-workspace-shell{display:block;min-height:0}.owner-section-nav{position:static;flex-direction:row;align-items:center;min-height:0;gap:8px;padding:10px;border-right:0;border-bottom:1px solid var(--color-border);overflow-x:auto}.owner-section-nav__groups{display:flex;flex:0 0 auto}.server-health-panel{display:none}.owner-section-nav__group{display:flex;gap:6px}.owner-section-nav__group+.owner-section-nav__group{margin-top:0}.owner-section-nav__group>span{display:none}.owner-section-nav button{width:auto;white-space:nowrap}}@media(max-width:640px){.dashboard-layout--control .erp-owner-workspace{padding:16px}.erp-owner-header{display:grid;margin:-16px -16px 0;padding:16px}.erp-owner-header__actions{display:grid;grid-template-columns:1fr;width:100%}.erp-owner-operator{padding:0 0 12px;border-right:0;border-bottom:1px solid var(--color-border)}.erp-owner-updated{min-height:auto;padding:0}.erp-owner-header__actions .btn{width:100%;justify-content:center}.owner-status-strip{grid-template-columns:1fr 1fr}.owner-status-strip>div{min-height:92px;padding:14px}.owner-status-strip strong{font-size:23px}.owner-workspace-content{padding:14px}.owner-workspace-content .owner-panel{padding:18px}.module-status-row{grid-template-columns:38px minmax(0,1fr)}.module-status-row .module-state{grid-column:2;width:-moz-max-content;width:max-content}.owner-overview-band{grid-template-columns:1fr}.owner-overview-band>div{border-right:0;border-bottom:1px solid var(--color-border)}.owner-overview-band>div:last-child{border-bottom:0}.maintenance-intro{grid-template-columns:auto minmax(0,1fr)}.maintenance-intro>.module-state{grid-column:2;width:-moz-max-content;width:max-content}.maintenance-module-row{grid-template-columns:38px minmax(0,1fr);padding:14px}.maintenance-module-row>.btn{grid-column:1/-1;width:100%;justify-content:center}.maintenance-safety{align-items:stretch;flex-direction:column}}.maintenance-form{display:grid;gap:18px}.maintenance-form__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.maintenance-form .form-field small{color:var(--color-text-muted);font-size:12px;line-height:1.4}.maintenance-form__impact{display:grid;gap:4px;padding:14px 16px;border:1px solid var(--color-border);border-radius:10px;background:var(--color-bg-subtle)}.maintenance-form__impact strong{color:var(--color-text-primary);font-size:12px;text-transform:uppercase;letter-spacing:.05em}.maintenance-form__impact span{color:var(--color-text-secondary);font-size:13px;line-height:1.45}.maintenance-form>.btn{width:-moz-max-content;width:max-content}.maintenance-profile-list{display:grid;gap:12px}.maintenance-profile-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px;border:1px solid var(--color-border);border-radius:12px;background:var(--color-bg-surface)}.maintenance-profile-row>div{min-width:0}.maintenance-profile-row strong{margin-left:9px;color:var(--color-text-primary);font-size:14px}.maintenance-profile-row p{margin:7px 0 0;color:var(--color-text-secondary);font-size:13px;line-height:1.45}.maintenance-profile-row small{display:block;margin-top:5px;color:var(--color-text-muted);font-size:12px}.maintenance-profile-empty{display:flex;min-height:92px;align-items:center;justify-content:center;gap:10px;border:1px dashed var(--color-border-strong);border-radius:12px;color:var(--color-text-muted);font-size:13px}.maintenance-profile-empty svg{color:var(--owner-success)}.cleanup-form,.owner-cleanup-stack{display:grid;gap:20px}.cleanup-intro{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;background:linear-gradient(90deg,var(--color-bg-surface),var(--color-bg-subtle))}.cleanup-intro__icon{display:grid;width:46px;height:46px;place-items:center;border:1px solid var(--color-danger-border);border-radius:12px;background:var(--color-danger-bg);color:var(--color-danger)}.cleanup-intro h3,.cleanup-intro p{margin:0}.cleanup-intro p{max-width:72ch;margin-top:5px;color:var(--color-text-secondary);font-size:13px;line-height:1.5}.cleanup-eyebrow{display:block;margin-bottom:3px;color:var(--color-danger);font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.cleanup-step-title{display:flex;align-items:center;gap:9px}.cleanup-step-title>span{display:grid;width:25px;height:25px;flex:0 0 auto;place-items:center;border-radius:50%;background:var(--color-brand-soft);color:var(--color-brand);font-size:12px;font-weight:800}.cleanup-step-title h3{margin:0}.cleanup-selection-count{padding:5px 9px;border:1px solid var(--color-border);border-radius:999px;background:var(--color-bg-subtle);color:var(--color-text-secondary);font-size:11px;font-weight:700}.cleanup-category-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.cleanup-category{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:11px;min-height:154px;padding:16px;border:1px solid var(--color-border);border-radius:12px;background:var(--color-bg-surface);cursor:pointer;transition:border-color .18s ease-out,background-color .18s ease-out,transform .18s ease-out}.cleanup-category:hover{border-color:var(--color-border-strong);background:var(--color-bg-subtle);transform:translateY(-1px)}.cleanup-category.is-selected{border-color:var(--color-brand);background:var(--color-brand-soft);box-shadow:0 0 0 1px color-mix(in srgb,var(--color-brand) 12%,transparent)}.cleanup-category>input{position:absolute;opacity:0;pointer-events:none}.cleanup-category:focus-within{box-shadow:var(--focus-ring)}.cleanup-category__check{display:grid;width:24px;height:24px;place-items:center;border:1px solid var(--color-border-strong);border-radius:7px;background:var(--color-bg-surface);color:var(--color-brand)}.cleanup-category em,.cleanup-category small,.cleanup-category strong{display:block}.cleanup-category__heading{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.cleanup-category strong{color:var(--color-text-primary);font-size:14px}.cleanup-category__heading b{flex:0 0 auto;color:var(--color-text-muted);font-size:10px;font-weight:700}.cleanup-category.is-selected .cleanup-category__heading b{color:var(--color-brand)}.cleanup-category small{margin-top:4px;color:var(--color-text-secondary);font-size:13px;line-height:1.45}.cleanup-category em{margin-top:6px;color:var(--color-warning-text);font-size:12px;font-style:normal}.cleanup-scope{display:grid;gap:14px;padding:16px;border:1px solid var(--color-border);border-radius:12px;background:var(--color-bg-subtle)}.cleanup-scope__head{display:flex;align-items:center;justify-content:space-between;gap:16px}.cleanup-scope__head strong{display:block;color:var(--color-text-primary);font-size:13px}.cleanup-scope__head p,.cleanup-scope__hint{margin:3px 0 0;color:var(--color-text-muted);font-size:12px}.cleanup-scope__head svg{color:var(--color-text-muted)}.cleanup-range{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}.cleanup-final-warning,.cleanup-protected{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border:1px solid var(--color-border);border-radius:10px;background:var(--color-bg-subtle)}.cleanup-protected svg{flex:0 0 auto;color:var(--color-success-text)}.cleanup-final-warning p,.cleanup-protected p,.cleanup-protected strong{margin:0}.cleanup-protected p{margin-top:3px;color:var(--color-text-secondary);font-size:13px;line-height:1.45}.cleanup-form>.btn{width:-moz-max-content;width:max-content}.cleanup-preview__total{display:grid;justify-items:end}.cleanup-preview__total strong{color:var(--color-danger);font-size:24px;line-height:1}.cleanup-preview__total span{margin-top:4px;color:var(--color-text-muted);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.cleanup-preview__scope{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;margin-bottom:14px;padding:11px 14px;border:1px solid var(--color-border);border-radius:10px;background:var(--color-bg-subtle)}.cleanup-preview__scope span{color:var(--color-text-muted);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.cleanup-preview__scope strong{font-size:13px}.cleanup-preview__scope small{color:var(--color-text-secondary);font-size:12px}.cleanup-counts{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.cleanup-counts>div{overflow:hidden;border:1px solid var(--color-border);border-radius:10px;background:var(--color-bg-surface)}.cleanup-counts>div>strong{display:block;padding:11px 14px;border-bottom:1px solid var(--color-border);background:var(--color-bg-subtle);font-size:12px;text-transform:uppercase;letter-spacing:.04em}.cleanup-counts dl{display:grid;gap:7px;margin:0;padding:12px 14px}.cleanup-counts dl>div{display:flex;justify-content:space-between;gap:12px;padding:4px 0;font-size:12px}.cleanup-counts dt{color:var(--color-text-secondary)}.cleanup-counts dd{margin:0;color:var(--color-text-primary);font-weight:700}.cleanup-authorize-panel{margin-top:20px;padding:18px;border:1px solid var(--color-danger-border);border-radius:12px;background:color-mix(in srgb,var(--color-danger-bg) 42%,var(--color-bg-surface))}.cleanup-authorize-panel__head p{margin:5px 0 0 34px;color:var(--color-text-secondary);font-size:12px}.cleanup-authorization{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(220px,1fr);gap:16px;margin-top:18px}.cleanup-authorization code{display:block;margin:6px 0 8px;color:var(--color-danger);font-size:12px;font-weight:800;letter-spacing:.025em}.cleanup-password-hint{display:block;min-height:27px;margin:6px 0 8px;color:var(--color-text-muted);font-size:11px}.cleanup-final-warning{margin:16px 0;border-color:var(--color-danger-border);background:var(--color-danger-bg);color:var(--color-danger)}.cleanup-final-warning svg{flex:0 0 auto}.cleanup-final-warning strong{display:block;color:var(--color-danger);font-size:13px}.cleanup-final-warning p{color:var(--color-danger-text);font-size:13px;line-height:1.45}.cleanup-authorize-panel__actions{display:flex;align-items:center;justify-content:space-between;gap:16px}.cleanup-authorize-panel__actions>span{color:var(--color-text-muted);font-size:12px}.cleanup-authorize-panel__actions .btn{flex:0 0 auto}@media(max-width:1100px){.cleanup-category-list{grid-template-columns:1fr}.cleanup-category{min-height:0}}@media(max-width:640px){.cleanup-intro{grid-template-columns:auto minmax(0,1fr)}.cleanup-intro>.badge{grid-column:2;width:-moz-max-content;width:max-content}.cleanup-authorization,.cleanup-preview__scope,.cleanup-range{grid-template-columns:1fr}.cleanup-preview__scope{gap:4px}.cleanup-preview__total{justify-items:start}.cleanup-authorize-panel{padding:15px}.cleanup-authorize-panel__head p{margin-left:0}.cleanup-authorize-panel__actions{align-items:stretch;flex-direction:column}.cleanup-authorize-panel__actions .btn{width:100%;justify-content:center}}.owner-status-strip .status-strip--success{border-left:3px solid var(--owner-success);background:var(--owner-success-bg)}.owner-status-strip .status-strip--success span{color:var(--owner-success)}.owner-status-strip .status-strip--warning{border-left:3px solid var(--owner-warning);background:var(--owner-warning-bg)}.owner-status-strip .status-strip--warning span{color:var(--owner-warning)}.owner-status-strip .status-strip--danger{border-left:3px solid var(--owner-danger);background:var(--owner-danger-bg)}.owner-status-strip .status-strip--danger span,.owner-status-strip .status-strip--danger strong{color:var(--owner-danger)}@keyframes live-pulse{0%,to{opacity:1;box-shadow:0 0 0 0 rgba(57,115,31,.45)}50%{opacity:.7;box-shadow:0 0 0 6px rgba(57,115,31,0)}}.owner-live-indicator__dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--owner-success);animation:live-pulse 2s ease-in-out infinite}.emergency-card--active{border-color:var(--owner-danger);background:var(--owner-danger-bg);box-shadow:0 0 0 1px var(--owner-danger),inset 0 0 0 1px rgba(180,35,44,.06)}.emergency-card--active h4{color:var(--owner-danger)}.btn--danger-outline{border:1px solid var(--owner-danger,#b4232c);background:transparent;color:var(--owner-danger,#b4232c);font-weight:700}.badge--critical,.btn--danger-outline:hover:not(:disabled){background:var(--owner-danger-bg,#fff0f1)}.badge--critical{color:var(--owner-danger,#b4232c);font-weight:800;letter-spacing:.02em}.flag-row--critical{background:rgba(180,35,44,.03)}.flag-row--critical:hover{background:rgba(180,35,44,.06)}.empty-state-compact{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:120px;padding:28px 20px;border:1px dashed var(--color-border-strong,#d4d4d8);border-radius:12px;text-align:center}.empty-state-compact svg{color:var(--owner-success);opacity:.7}.empty-state-compact strong{display:block;color:var(--color-text-primary);font-size:14px}.empty-state-compact p{margin:0;max-width:40ch;color:var(--color-text-muted);font-size:13px;line-height:1.45}.security-health-banner{display:flex;align-items:center;gap:14px;padding:16px 20px;border-radius:12px}.security-health-banner--secure{border:1px solid rgba(57,115,31,.2);background:var(--owner-success-bg)}.security-health-banner--secure svg{flex:0 0 auto;color:var(--owner-success)}.security-health-banner--secure strong{display:block;color:var(--owner-success);font-size:14px}.security-health-banner--secure p{margin:3px 0 0;color:var(--color-text-secondary);font-size:13px;line-height:1.4}.owner-metric__icon.is-success{background:var(--owner-success-bg);color:var(--owner-success)}.owner-metric--success strong{color:var(--owner-success)}.erp-owner-sticky-header{padding-bottom:10px;background:color-mix(in srgb,var(--color-bg-surface) 96%,var(--color-bg-subtle));box-shadow:0 1px 0 var(--color-border)}.erp-owner-header{min-height:0;padding:14px 20px 11px;gap:20px}.erp-owner-header__identity{max-width:560px}.erp-owner-header__eyebrow{display:flex;align-items:center;gap:6px;margin-bottom:4px;color:var(--color-brand);font-size:10px;font-weight:800;letter-spacing:.075em;text-transform:uppercase}.erp-owner-header__identity .page-header__title{font-size:1.15rem;font-weight:700;letter-spacing:-.018em}.erp-owner-header__identity .page-header__desc{max-width:64ch;margin-top:3px;color:var(--color-text-secondary);font-size:.75rem;line-height:1.35}.erp-owner-header__actions{gap:7px}.erp-owner-header__actions .btn{min-height:36px;padding:7px 12px;font-size:12px}.erp-owner-operator{gap:8px;min-height:36px;max-width:245px;padding:4px 11px 4px 5px;border:1px solid var(--color-border);border-radius:10px;background:var(--color-bg-surface)}.erp-owner-operator__mark{width:28px;height:28px;border-radius:7px}.erp-owner-operator strong{overflow:hidden;max-width:190px;margin:0;font-size:11.5px;text-overflow:ellipsis}.erp-owner-operator em{margin-top:1px;font-size:9.5px}.erp-owner-updated{display:flex;align-items:center;gap:7px;min-width:112px;min-height:36px;padding:4px 9px;border:0;color:var(--color-text-muted)}.erp-owner-updated>svg{flex:0 0 auto}.erp-owner-updated small{font-size:8.5px}.erp-owner-updated strong{margin-top:1px;font-size:10.5px;font-weight:600}.owner-status-strip{grid-template-columns:repeat(4,minmax(0,1fr));margin:0 20px;border-radius:10px;background:var(--color-bg-surface)}.owner-status-strip .status-strip--danger,.owner-status-strip .status-strip--info,.owner-status-strip .status-strip--success,.owner-status-strip .status-strip--warning,.owner-status-strip>div{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;min-height:58px;padding:10px 14px;border-left:0;background:transparent;box-shadow:none}.owner-status-strip span{gap:7px;color:var(--color-text-secondary);font-size:9.5px;letter-spacing:.045em}.owner-status-strip span svg{color:var(--color-text-muted)}.owner-status-strip .status-strip--danger strong,.owner-status-strip .status-strip--info strong,.owner-status-strip .status-strip--success strong,.owner-status-strip .status-strip--warning strong,.owner-status-strip strong{grid-column:2;grid-row:1/3;align-self:center;margin:0 0 0 12px;color:var(--color-text-primary);font-size:18px;font-weight:700}.owner-status-strip .status-strip--danger small,.owner-status-strip .status-strip--warning small,.owner-status-strip small{grid-column:1;margin:3px 0 0 22px;color:var(--color-text-muted);font-size:10.5px;opacity:1}.owner-status-strip .status-strip--warning span,.owner-status-strip .status-strip--warning span svg{color:var(--owner-warning)}.owner-status-strip .status-strip--danger span,.owner-status-strip .status-strip--danger span svg{color:var(--owner-danger)}@media(max-width:1180px){.erp-owner-header{align-items:flex-start}.erp-owner-header__actions{justify-content:flex-start}}@media(max-width:900px){.owner-status-strip{margin:0 14px}.owner-status-strip>div{min-height:58px}}@media(max-width:640px){.erp-owner-header{gap:12px;margin:-16px -16px 0;padding:14px 16px 10px}.erp-owner-header__actions{display:flex;width:100%}.erp-owner-operator{order:1;width:100%;max-width:none;padding:4px 8px;border:1px solid var(--color-border)}.erp-owner-updated{order:2;min-width:0;margin-right:auto;padding:4px 2px;border:0}.erp-owner-header__actions .btn{order:3;width:auto}.owner-status-strip{grid-template-columns:1fr 1fr;margin:0 10px}.owner-status-strip>div{min-height:64px;padding:10px 12px}.owner-status-strip strong{font-size:17px}}.owner-metric--danger strong{color:var(--owner-danger)}.maintenance-page{min-height:100vh;display:grid;place-items:center;padding:32px 20px;background:radial-gradient(circle at top left,rgba(143,71,0,.08),transparent 34%),var(--color-bg-page)}.maintenance-page__shell{width:min(680px,100%);padding:36px;border:1px solid var(--color-border);border-radius:18px;background:var(--color-bg-surface);box-shadow:0 18px 48px rgba(24,31,38,.12)}.maintenance-page__brand{display:flex;align-items:center;gap:12px;padding-bottom:22px;border-bottom:1px solid var(--color-border)}.maintenance-page__brand img{border-radius:10px}.maintenance-page__brand span,.maintenance-page__brand strong{display:block}.maintenance-page__brand strong{color:var(--color-text-primary);font-size:15px}.maintenance-page__brand span{margin-top:2px;color:var(--color-text-muted);font-size:12px}.maintenance-page__symbol{display:grid;width:58px;height:58px;margin-top:32px;place-items:center;border-radius:15px;background:var(--owner-warning-bg,#fff3dc);color:var(--owner-warning,#9a5b00)}.maintenance-page__symbol.is-ready{background:var(--owner-success-bg,#edf6e7);color:var(--owner-success,#39731f)}.maintenance-page__eyebrow{margin-top:22px;color:#9a5b00;font-size:12px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.maintenance-page__eyebrow.is-ready{color:#39731f}.maintenance-page h1{max-width:560px;margin:8px 0 0;color:var(--color-text-primary);font-size:clamp(1.75rem,4vw,2.35rem);line-height:1.15;letter-spacing:-.035em}.maintenance-page__lead{max-width:65ch;margin:14px 0 0;color:var(--color-text-secondary);font-size:15px;line-height:1.65}.maintenance-page__details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:28px 0 0;overflow:hidden;border:1px solid var(--color-border);border-radius:12px;background:var(--color-bg-subtle)}.maintenance-page__details>div{padding:15px 16px;border-right:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.maintenance-page__details>div:nth-child(2n){border-right:0}.maintenance-page__details dt{display:flex;align-items:center;gap:6px;color:var(--color-text-muted);font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.maintenance-page__details dd{margin:6px 0 0;color:var(--color-text-primary);font-size:13px;font-weight:650}.maintenance-page__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}.maintenance-page__support{display:inline-flex;align-items:center;gap:7px;margin-top:20px;color:var(--color-brand);font-size:13px;font-weight:650;text-decoration:none}.maintenance-page footer{margin-top:28px;padding-top:18px;border-top:1px solid var(--color-border);color:var(--color-text-muted);font-size:11.5px;line-height:1.45}.maintenance-page__loading{width:min(680px,100%);min-height:420px}@media(max-width:640px){.maintenance-form__grid{grid-template-columns:1fr}.maintenance-form>.btn{width:100%;justify-content:center}.maintenance-profile-row{align-items:stretch;flex-direction:column}.maintenance-profile-row>.btn{width:100%;justify-content:center}.maintenance-page{padding:16px}.maintenance-page__shell{padding:24px 20px}.maintenance-page__details{grid-template-columns:1fr}.maintenance-page__details>div{border-right:0}.maintenance-page__actions .btn{width:100%;justify-content:center}}.admin-bills-detail-grid{display:grid;gap:var(--space-3);margin-bottom:var(--space-4)}.admin-bills-info{display:grid;gap:var(--space-1)}.admin-bills-info span{color:var(--color-text-secondary);font-size:13px;font-weight:500}.admin-bills-info strong{color:var(--color-text-primary);font-size:13px;font-weight:600;word-break:break-word}.admin-bills-modal-section{margin-top:var(--space-4);margin-bottom:0}.admin-bills-modal-section h3,.verify-card h3{color:var(--color-text-primary);font-size:15px;font-weight:600;margin-bottom:var(--space-4)}.bill-detail-edit-actions,.bill-detail-edit-attendance-heading,.bill-detail-edit-heading,.bill-verify-title-actions{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.bill-verify-title-actions{flex-wrap:wrap;justify-content:flex-end}.bill-detail-edit-section{border-color:var(--color-brand);background:var(--color-bg-surface)}.bill-detail-edit-attendance-heading,.bill-detail-edit-heading{align-items:flex-start;margin-bottom:var(--space-4)}.bill-detail-edit-attendance-heading h3,.bill-detail-edit-heading h3{margin-bottom:var(--space-1)}.bill-detail-edit-attendance-heading p,.bill-detail-edit-heading p{max-width:72ch;color:var(--color-text-secondary);font-size:13px;line-height:1.5}.bill-detail-edit-grid{display:grid;grid-template-columns:repeat(4,minmax(170px,1fr));gap:var(--space-3)}.bill-detail-edit-grid .form-field{margin-bottom:0}.bill-detail-edit-attendance input,.bill-detail-edit-attendance select{width:100%;min-width:88px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-surface);color:var(--color-text-primary);font:inherit;font-size:13px;padding:var(--space-2)}.bill-edit-time{display:grid;grid-template-columns:minmax(110px,1fr) 68px;gap:var(--space-2);min-width:190px}.bill-edit-remove{width:36px;min-width:36px;padding:0}.bill-detail-edit-reason{margin-top:var(--space-4)}.bill-detail-edit-actions{justify-content:flex-end}.admin-bills-row-verify{display:grid;grid-template-columns:minmax(110px,.4fr) minmax(160px,1fr) auto;gap:var(--space-2);align-items:center;min-width:420px}.admin-bills-row-locked{color:var(--color-danger);font-size:12px;font-weight:700;white-space:nowrap}.admin-bills-bulk-card input,.admin-bills-bulk-card select,.admin-bills-bulk-card textarea,.admin-bills-filter-grid input,.admin-bills-filter-grid select,.admin-bills-row-verify input,.admin-bills-row-verify select,.admin-bills-verification-grid input,.admin-bills-verification-grid select,.admin-bills-verification-grid textarea,.attendance-action-panel input,.attendance-action-panel select,.attendance-action-panel textarea,.attendance-bulk-toolbar input,.attendance-bulk-toolbar select,.attendance-filter-toolbar select,.table-pagination select{width:100%;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-surface);color:var(--color-text-primary);font:inherit;font-size:13px;padding:var(--space-2) var(--space-3)}.admin-bills-verification-grid{display:grid;grid-template-columns:repeat(4,minmax(170px,1fr));gap:var(--space-4);align-items:start}.review-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-4)}.review-section-heading h3{margin:0}.review-section-heading p{margin:4px 0 0;color:var(--color-text-muted);font-size:13px}.review-remark-field{grid-column:1/-1}.review-remark-field textarea{min-height:76px}.review-actions{grid-column:1/-1;display:flex;justify-content:flex-end}.verification-undertaking{grid-column:1/-1;display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-subtle);color:var(--color-text-secondary);font-size:.875rem;line-height:1.55;cursor:pointer}.verification-undertaking input{width:18px;height:18px;margin-top:2px;flex:0 0 auto;accent-color:var(--color-brand)}.verification-undertaking span{display:grid;gap:var(--space-1)}.verification-undertaking strong{color:var(--color-text-primary);font-size:.9rem}.verification-undertaking--bulk{margin-top:var(--space-2)}.role-undertaking-banner{display:grid;gap:var(--space-1);margin-bottom:var(--space-5);padding:var(--space-4) var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-subtle);color:var(--color-text-secondary)}.role-undertaking-banner strong{color:var(--color-text-primary);font-size:.875rem}.role-undertaking-banner p{max-width:75ch;margin:0;font-size:.875rem;line-height:1.55}.undertaking-settings-card{margin-top:var(--space-5)}.undertaking-settings-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-5)}.undertaking-settings-header h3,.undertaking-settings-header p{margin:0}.undertaking-settings-header p{max-width:70ch;margin-top:var(--space-1);color:var(--color-text-muted);font-size:.875rem}.undertaking-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}.undertaking-settings-field textarea{min-height:132px;resize:vertical}.communications-page{padding-bottom:96px}.communication-section{margin-top:var(--space-5)}.communication-section h2{margin:0;font-size:1.125rem}.communication-email-list{display:grid;gap:var(--space-4)}.communication-email-editor{padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-subtle)}.communication-email-editor__heading{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-4)}.communication-email-editor__heading h3,.communication-email-editor__heading p{margin:0}.communication-email-editor__heading p{margin-top:var(--space-1);color:var(--color-text-muted);font-size:.875rem}.communication-email-editor textarea{min-height:180px;resize:vertical}.communication-save-bar{position:sticky;bottom:var(--space-4);z-index:10;display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);margin-top:var(--space-5);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-lg);color:var(--color-text-muted);font-size:.875rem}.billing-purge-card{margin-top:20px;border:1px solid var(--color-danger-border)}.billing-purge-warning{margin:16px 0}.billing-purge-range{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.billing-purge-preview{margin-top:20px;padding:18px;border:1px solid var(--color-danger-border);border-radius:var(--radius-lg);background:var(--color-danger-bg)}.billing-purge-preview h4{margin:0 0 14px;color:var(--color-danger-text)}.billing-purge-counts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:14px}.billing-purge-counts span{padding:12px;border:1px solid var(--color-danger-border);border-radius:var(--radius-md);background:var(--color-surface)}.billing-purge-counts strong{display:block;font-size:1.15rem}.billing-purge-preview code{display:block;width:-moz-max-content;width:max-content;max-width:100%;margin:6px 0 8px;padding:7px 10px;border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-danger-text);overflow-wrap:anywhere}@media (max-width:900px){.billing-purge-counts{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.billing-purge-counts,.billing-purge-range{grid-template-columns:1fr}}@media (max-width:800px){.undertaking-settings-grid{grid-template-columns:1fr}.undertaking-settings-header{flex-direction:column}.communication-email-editor__heading,.communication-save-bar{align-items:stretch;flex-direction:column}}.admin-bills-remarks textarea{resize:vertical}.admin-bills-save-btn{justify-content:center}.admin-bills-warning-modal{max-width:780px}.admin-bills-warning-table{margin-top:var(--space-4)}.bill-verify-sticky{display:grid;gap:var(--space-4);margin:-24px -30px var(--space-4);padding:18px 30px;border-bottom:1px solid var(--color-border);background:var(--color-bg-surface)}.bill-verify-title{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-4)}.bill-verify-title span:first-child{color:var(--color-text-muted);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.bill-verify-title h2{margin:2px 0 0;color:var(--color-text-primary);font-size:22px;line-height:1.2}.bill-verify-header-grid,.bill-verify-system-strip,.payment-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));gap:var(--space-3)}.bill-verify-header-grid .admin-bills-info,.bill-verify-system-strip>div,.payment-summary-grid .admin-bills-info{min-width:0;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-subtle)}.bill-verify-system-strip{margin-top:var(--space-4)}.bill-verify-system-strip span{display:block;margin-bottom:var(--space-1);color:var(--color-text-muted);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.bill-verify-system-strip strong{color:var(--color-text-primary);font-size:13px}.remarks-history__heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:6px}.dashboard-layout .remarks-history__heading h3{min-height:auto}.remarks-history__heading p{margin:4px 0 0;color:var(--color-text-muted);font-size:13px;line-height:1.45}.remarks-history__heading>span{flex:0 0 auto;padding:4px 9px;border:1px solid var(--color-border);border-radius:999px;background:var(--color-bg-subtle);color:var(--color-text-secondary);font-size:11px;font-weight:700}.remarks-history__list{list-style:none;margin:18px 0 0;padding:0;border-top:1px solid var(--color-border)}.remarks-history__item{position:relative;display:grid;grid-template-columns:34px minmax(0,1fr);gap:12px;padding:16px 0}.remarks-history__item+.remarks-history__item{border-top:1px solid var(--color-border)}.remarks-history__marker{display:grid;width:34px;height:34px;place-items:center;border:1px solid var(--color-border);border-radius:50%;background:var(--color-bg-subtle);color:var(--color-text-secondary)}.remarks-history__item:first-child .remarks-history__marker{border-color:rgba(143,71,0,.22);background:var(--color-brand-light);color:var(--color-brand)}.remarks-history__content{min-width:0}.remarks-history__meta{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.remarks-history__actor{display:flex;min-width:0;align-items:baseline;flex-wrap:wrap;gap:4px 8px}.remarks-history__actor strong{color:var(--color-text-primary);font-size:13px;font-weight:700}.remarks-history__actor span,.remarks-history__meta time{color:var(--color-text-muted);font-size:12px}.remarks-history__meta time{flex:0 0 auto;white-space:nowrap}.remarks-history__fields{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.remarks-history__fields span{padding:3px 7px;border:1px solid var(--color-border);border-radius:999px;background:var(--color-bg-subtle);color:var(--color-text-secondary);font-size:11px;font-weight:600;line-height:1.3}.remarks-history__content>p{max-width:75ch;margin:9px 0 0;color:var(--color-text-primary);font-size:14px;font-weight:600;line-height:1.5;overflow-wrap:anywhere}.remarks-history__empty{display:flex;align-items:flex-start;gap:12px;margin-top:16px;padding:16px;border:1px dashed var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-subtle);color:var(--color-text-muted)}.remarks-history__empty div{display:grid;gap:3px}.remarks-history__empty strong{color:var(--color-text-secondary);font-size:13px}.remarks-history__empty span{font-size:12px;line-height:1.45}@media (max-width:640px){.remarks-history__meta{flex-direction:column;gap:4px}.remarks-history__meta time{white-space:normal}}.attendance-bulk-toolbar{display:grid;grid-template-columns:minmax(170px,.25fr) minmax(150px,.2fr) minmax(260px,1fr) auto;gap:var(--space-3);align-items:end;margin-bottom:var(--space-4);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-subtle)}.attendance-bulk-toolbar .form-field{margin-bottom:0}.attendance-action-grid{display:grid;grid-template-columns:1fr;gap:var(--space-3);align-items:start}.attendance-actions{display:grid;gap:var(--space-3);margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--color-border)}.attendance-actions__header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3)}.attendance-actions__header h4{margin:0;color:var(--color-text-primary);font-size:14px}.attendance-actions__header p{margin:3px 0 0;color:var(--color-text-muted);font-size:13px}.attendance-action-panel{display:grid;grid-template-columns:minmax(180px,.6fr) minmax(260px,1fr) minmax(132px,auto);gap:var(--space-3);align-items:end;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-surface)}.attendance-action-panel--danger{border-color:var(--color-danger-border)}.attendance-action-panel--verify{grid-template-columns:minmax(280px,1fr) auto}.attendance-action-panel__heading{display:flex;align-items:center;gap:var(--space-2);grid-column:1/-1;color:var(--color-text-primary);font-size:13px;font-weight:700}.attendance-action-panel__heading svg{color:var(--color-brand);flex:0 0 auto}.attendance-action-panel--danger .attendance-action-panel__heading svg{color:var(--color-danger-text)}.attendance-action-panel .form-field{margin-bottom:0}.attendance-action-panel textarea{min-height:42px;max-height:88px;resize:vertical}.attendance-action-panel .btn{gap:var(--space-2)}.attendance-filter-toolbar{display:grid;grid-template-columns:minmax(160px,.7fr) minmax(180px,.8fr) minmax(160px,.7fr) auto;gap:var(--space-3);align-items:end;margin:0 0 var(--space-4);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-subtle)}.attendance-filter-toolbar .form-field{margin-bottom:0}.attendance-filter-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);justify-content:flex-end}.payment-processing-section{background:var(--color-bg-subtle)}.badge--paid,.badge.paid{background:var(--teal-p);color:var(--teal);border:1px solid var(--teal-l)}@media(max-width:1180px){.admin-bills-filter-grid,.admin-bills-verification-grid,.attendance-bulk-toolbar,.attendance-filter-toolbar,.bill-detail-edit-grid,.bill-verify-header-grid,.bill-verify-system-strip,.payment-summary-grid{grid-template-columns:1fr 1fr}.monthly-cap-panel__amounts{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-bills-bulk-card{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-bills-filter-actions,.admin-bills-save-btn{grid-column:1/-1}.admin-bills-filter-actions{grid-template-columns:minmax(130px,max-content) minmax(150px,max-content)}}@media(max-width:680px){.monthly-cap-panel{padding:var(--space-4)}.monthly-cap-panel__heading{grid-template-columns:auto minmax(0,1fr)}.monthly-cap-panel__status{grid-column:1/-1;justify-self:start}.bill-detail-edit-grid,.monthly-cap-panel__amounts{grid-template-columns:1fr}.bill-detail-edit-actions,.bill-detail-edit-attendance-heading,.bill-detail-edit-heading{align-items:stretch;flex-direction:column}.bill-detail-edit-actions .btn{width:100%;justify-content:center}}@media(min-width:1181px) and (max-width:1700px){.admin-bills-filter-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.admin-bills-filter-actions{grid-column:auto;justify-content:stretch}.admin-bills-filter-actions .btn{justify-content:center}.admin-bills-bulk-card{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-bills-bulk-card .admin-bills-bulk-remark,.admin-bills-bulk-card>.btn{grid-column:1/-1}.admin-bills-bulk-card>.btn{justify-self:end}}@media(max-width:980px){.attendance-action-panel,.attendance-action-panel--verify{grid-template-columns:1fr}}@media(max-width:700px){.admin-bills-bulk-card,.admin-bills-filter-grid,.admin-bills-row-verify,.admin-bills-verification-grid,.attendance-bulk-toolbar,.attendance-filter-toolbar,.bill-verify-header-grid,.bill-verify-system-strip,.payment-summary-grid{grid-template-columns:1fr}.admin-bills-bulk-head{align-items:flex-start;flex-direction:column}.admin-bills-bulk-card>.btn{width:100%}.bill-verify-sticky{margin:-24px -18px var(--space-4);padding:16px 18px}.bill-verify-title{flex-direction:column}.admin-bills-row-verify{min-width:260px}.admin-bills-filter-actions{grid-template-columns:1fr;justify-content:stretch}.attendance-filter-actions{justify-content:stretch}.attendance-filter-actions .btn{width:100%;justify-content:center}}.users-page{display:grid;gap:var(--space-4)}.setup-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:var(--color-bg-page)}.setup-panel{width:min(460px,100%);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-surface);padding:28px}.setup-brand{margin-bottom:10px;color:var(--color-brand);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.setup-panel h1{margin:0 0 10px;color:var(--color-text-primary);font-size:1.6rem}.setup-copy{margin:0 0 18px;color:var(--color-text-secondary);line-height:1.55}.setup-account{display:grid;gap:3px;margin:18px 0;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-subtle);padding:12px 14px}.setup-account strong{color:var(--color-text-primary)}.setup-account span{color:var(--color-text-muted);font-size:12px;overflow-wrap:anywhere}.setup-submit{width:100%;justify-content:center;margin-top:8px}.users-alert{margin-bottom:var(--space-2)}.users-header-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.users-bulk-body{padding:4px 2px 0}.users-bulk{display:grid;gap:14px}.users-bulk__intro{color:var(--color-text-secondary);font-size:12.5px;line-height:1.55}.users-bulk__intro code{padding:1px 5px;border-radius:4px;background:var(--color-bg-subtle);font-size:11px}.users-bulk__roles{display:flex;flex-wrap:wrap;gap:8px}.users-bulk__role{padding:8px 14px;border:1px solid var(--color-border);border-radius:999px;background:var(--color-bg-surface);color:var(--color-text-secondary);font-size:12.5px;font-weight:600;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease}.users-bulk__role.is-active,.users-bulk__role:hover{border-color:var(--color-brand)}.users-bulk__role.is-active{background:var(--color-brand);color:#fff}.users-bulk__format{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:10px 12px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-subtle);color:var(--color-text-secondary);font-size:12px}.users-bulk__template{border:0;background:none;color:var(--color-brand);font:inherit;font-size:12px;font-weight:600;cursor:pointer}.users-bulk__textarea{width:100%;min-height:140px;padding:12px 14px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-surface);color:var(--color-text-primary);font-family:var(--font-mono,monospace);font-size:12.5px;line-height:1.6;resize:vertical}.users-bulk__textarea:focus{outline:0;border-color:var(--color-brand);box-shadow:0 0 0 3px var(--color-brand-soft)}.users-bulk__preview{border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.users-bulk__preview-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;background:var(--color-bg-subtle);font-size:12px;font-weight:600;color:var(--color-text-secondary)}.users-bulk__counts{display:flex;gap:10px}.users-bulk__table-wrap{max-height:240px;overflow:auto}.users-bulk__table{width:100%;border-collapse:collapse;font-size:12px}.users-bulk__table td,.users-bulk__table th{padding:8px 12px;text-align:left;border-bottom:1px solid var(--color-border);white-space:nowrap;color:var(--color-text-secondary)}.users-bulk__table th{position:sticky;top:0;background:var(--color-bg-surface);color:var(--color-text-muted);font-size:11px;text-transform:uppercase;letter-spacing:.04em}.users-bulk__table tr.is-invalid td{background:color-mix(in srgb,var(--color-danger-text,#b42318) 7%,transparent);color:var(--color-danger-text,#b42318)}.users-bulk__summary{margin:0}.users-bulk__results{display:grid;gap:6px;max-height:200px;overflow:auto}.users-bulk__result{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"email status" "msg msg";gap:2px 10px;padding:8px 12px;border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:12px}.users-bulk__result-email{grid-area:email;font-weight:600;color:var(--color-text-primary);overflow:hidden;text-overflow:ellipsis}.users-bulk__result-status{grid-area:status;text-transform:capitalize;font-weight:600}.users-bulk__result-msg{grid-area:msg;color:var(--color-text-muted);font-size:11px}.users-bulk__result--created{border-color:color-mix(in srgb,var(--color-success-text) 35%,var(--color-border))}.users-bulk__result--updated{border-color:color-mix(in srgb,var(--color-brand) 35%,var(--color-border))}.users-bulk__result--skipped{border-color:color-mix(in srgb,var(--color-danger-text,#b42318) 35%,var(--color-border))}.users-bulk__banner{display:flex;align-items:flex-start;gap:13px;padding:14px 16px;border:1px solid color-mix(in srgb,var(--color-brand) 28%,var(--color-border));border-radius:var(--radius-md);background:color-mix(in srgb,var(--color-brand) 6%,var(--color-bg-surface))}.users-bulk__banner-icon{flex:0 0 40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:10px;background:var(--color-brand);color:#fff;box-shadow:0 2px 8px color-mix(in srgb,var(--color-brand) 35%,transparent)}.users-bulk__banner-text{display:flex;flex-direction:column;gap:3px}.users-bulk__banner-text strong{font-size:13.5px;font-weight:700;color:var(--color-text-primary)}.users-bulk__banner-text span{font-size:12.5px;line-height:1.5;color:var(--color-text-secondary)}.users-bulk__status-pill{display:inline-block;max-width:100%;padding:2px 9px;border-radius:999px;font-size:11px;font-weight:600;line-height:1.5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}.users-bulk__status-pill--created,.users-bulk__status-pill--ready{color:var(--color-success-text);background:color-mix(in srgb,var(--color-success-text) 12%,transparent)}.users-bulk__status-pill--updated{color:var(--color-brand);background:color-mix(in srgb,var(--color-brand) 12%,transparent)}.users-bulk__status-pill--error,.users-bulk__status-pill--skipped{color:var(--color-danger-text,#b42318);background:color-mix(in srgb,var(--color-danger-text,#b42318) 12%,transparent);white-space:normal;text-transform:capitalize}.users-bulk__ok,.users-bulk__warn{display:inline-flex;align-items:center;gap:5px;padding:2px 9px;border-radius:999px;font-size:11px;font-weight:600}.users-bulk__ok{color:var(--color-success-text);background:color-mix(in srgb,var(--color-success-text) 12%,transparent)}.users-bulk__ok:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--color-success-text)}.users-bulk__warn{color:var(--color-danger-text,#b42318);background:color-mix(in srgb,var(--color-danger-text,#b42318) 12%,transparent)}.users-bulk__warn:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--color-danger-text,#b42318)}.users-bulk__summary-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.users-bulk__tile{display:flex;flex-direction:column;align-items:center;gap:2px;padding:14px 10px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-surface)}.users-bulk__tile-value{font-size:24px;font-weight:700;line-height:1.1}.users-bulk__tile-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted)}.users-bulk__tile--created{border-color:color-mix(in srgb,var(--color-success-text) 35%,var(--color-border));background:color-mix(in srgb,var(--color-success-text) 5%,var(--color-bg-surface))}.users-bulk__tile--created .users-bulk__tile-value{color:var(--color-success-text)}.users-bulk__tile--updated{border-color:color-mix(in srgb,var(--color-brand) 35%,var(--color-border));background:color-mix(in srgb,var(--color-brand) 5%,var(--color-bg-surface))}.users-bulk__tile--updated .users-bulk__tile-value{color:var(--color-brand)}.users-bulk__tile--skipped .users-bulk__tile-value{color:var(--color-text-muted)}.users-bulk__mode-tabs{display:flex;gap:0;border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.users-bulk__mode-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;border:0;background:var(--color-bg-surface);color:var(--color-text-secondary);font-size:13px;font-weight:600;cursor:pointer;transition:background .15s ease,color .15s ease}.users-bulk__mode-tab+.users-bulk__mode-tab{border-left:1px solid var(--color-border)}.users-bulk__mode-tab:hover{background:var(--color-bg-subtle)}.users-bulk__mode-tab.is-active{background:var(--color-brand);color:#fff}.users-bulk__mode-tab.is-active svg{stroke:#fff}.users-bulk__excel-section{display:grid;gap:16px}.users-bulk__excel-step{display:flex;gap:14px;padding:16px 18px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-subtle)}.users-bulk__excel-step-num{flex:0 0 28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--color-brand);color:#fff;font-size:13px;font-weight:700}.users-bulk__excel-step-content{flex:1;min-width:0}.users-bulk__excel-step-title{font-size:14px;font-weight:700;color:var(--color-text-primary);margin-bottom:4px}.users-bulk__excel-step-desc{font-size:12px;line-height:1.5;color:var(--color-text-secondary);margin:0 0 10px}.users-bulk__excel-step-desc strong{color:var(--color-text-primary)}.users-bulk__download-btn{display:inline-flex;align-items:center;gap:8px;font-size:12.5px}.users-bulk__download-btn svg{flex:0 0 auto}.users-bulk__file-input-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.users-bulk__drop-zone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:24px 16px;border:2px dashed var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-surface);cursor:pointer;transition:border-color .2s ease,background .2s ease;text-align:center}.users-bulk__drop-zone:hover{border-color:var(--color-brand);background:color-mix(in srgb,var(--color-brand) 4%,var(--color-bg-surface))}.users-bulk__drop-zone svg{color:var(--color-text-muted);transition:color .2s ease}.users-bulk__drop-zone:hover svg{color:var(--color-brand)}.users-bulk__drop-zone-text{font-size:13px;font-weight:600;color:var(--color-text-primary)}.users-bulk__drop-zone-hint{font-size:11px;color:var(--color-text-muted)}.users-bulk__drop-zone-parsing{font-size:13px;color:var(--color-brand);font-weight:600;animation:pulse-text 1.2s ease-in-out infinite}@keyframes pulse-text{0%,to{opacity:1}50%{opacity:.5}}.users-bulk__file-info{display:flex;align-items:center;gap:10px;padding:12px 14px;border:1px solid var(--color-success-text);border-radius:var(--radius-md);background:color-mix(in srgb,var(--color-success-text) 6%,var(--color-bg-surface))}.users-bulk__file-info svg{flex:0 0 auto;color:var(--color-success-text)}.users-bulk__file-name{flex:1;min-width:0;font-size:13px;font-weight:600;color:var(--color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.users-bulk__file-remove{flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:0;border-radius:50%;background:var(--color-bg-subtle);color:var(--color-text-muted);font-size:16px;font-weight:700;cursor:pointer;transition:background .15s ease,color .15s ease}.users-bulk__file-remove:hover{background:var(--color-danger-text,#b42318);color:#fff}.users-bulk__actions{display:flex;justify-content:flex-end;gap:10px;padding-top:4px}.users-layout-grid{display:grid;grid-template-columns:minmax(360px,420px) minmax(0,1fr);align-items:start}.users-create-card,.users-list-card{margin-bottom:0;min-width:0}.users-card-toolbar{padding-left:0;padding-right:0;padding-top:0;margin-bottom:var(--space-4)}.users-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}.users-create-card .users-form-grid{grid-template-columns:1fr}.users-create-card .stepper{flex-wrap:wrap}.users-filters .form-field,.users-form-grid .form-field{margin-bottom:0}.users-form-grid select[multiple]{min-height:128px}.users-programme-picker{position:relative;display:grid;gap:8px}.users-all-scope{display:flex;width:100%;min-height:52px;align-items:flex-start;justify-content:center;flex-direction:column;gap:2px;padding:9px 12px;border:1px solid var(--color-border);border-radius:9px;background:var(--color-bg-subtle);color:var(--color-text-primary);cursor:pointer;font:inherit;text-align:left}.users-all-scope strong{font-size:13px}.users-all-scope span{color:var(--color-text-muted);font-size:11px}.users-all-scope.is-selected,.users-all-scope:hover:not(:disabled){border-color:var(--color-brand);background:var(--color-brand-light)}.users-all-scope.is-selected{color:var(--color-brand)}.users-all-scope:disabled{cursor:not-allowed}.users-programme-options{position:absolute;z-index:20;top:50px;left:0;right:0;max-height:220px;overflow:auto;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg-surface);box-shadow:var(--shadow-modal)}.users-programme-option{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;min-height:34px;padding:7px 10px;border:0;color:var(--color-text-primary);background:transparent;cursor:pointer;text-align:left;font-size:13px}.users-programme-option span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.users-programme-option strong{color:var(--color-brand);font-size:11px;font-weight:700}.users-programme-hint{padding:8px 10px;color:var(--color-text-muted);background:var(--color-bg-subtle);border-bottom:1px solid var(--color-border);font-size:12px;line-height:1.35}.users-programme-option+.users-programme-option{border-top:1px solid var(--color-border)}.users-programme-option.is-selected,.users-programme-option:hover{background:var(--color-bg-hover)}.users-muted{color:var(--color-text-muted);font-size:12px}.users-scope-note{grid-column:1/-1}.users-review{display:grid;gap:var(--space-2);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-subtle)}.users-review-row{display:flex;justify-content:space-between;gap:var(--space-4);font-size:13px}.users-review-row span{color:var(--color-text-secondary);font-weight:500}.users-review-row strong{color:var(--color-text-primary);text-align:right;overflow-wrap:anywhere}.users-step-actions{display:flex;justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-4)}.users-filters{display:grid;grid-template-columns:repeat(4,minmax(140px,.2fr)) minmax(200px,1fr) auto auto;gap:var(--space-3);align-items:end;margin-bottom:var(--space-4)}.users-filter-button{justify-content:center}.users-bulk-toolbar{align-items:center;justify-content:space-between;gap:var(--space-3);padding-left:0;padding-right:0;padding-top:0}.users-selection-note{margin-top:3px;color:var(--color-text-muted);font-size:12px;line-height:1.4}.users-bulk-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);justify-content:flex-end}.users-row-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.users-table{min-width:980px}.users-table td{vertical-align:top}.users-modal{width:min(760px,96vw)}.users-toggle{min-height:37px;display:flex;align-items:center;gap:var(--space-2);color:var(--color-text-primary);font-size:13px;font-weight:600}@media(max-width:1280px){.users-filters{grid-template-columns:repeat(3,minmax(140px,.25fr)) minmax(200px,1fr) auto auto}}@media(max-width:1180px){.users-layout-grid{grid-template-columns:1fr}.users-filters{grid-template-columns:repeat(2,minmax(140px,.4fr)) 1fr auto auto}}@media(max-width:760px){.users-filters,.users-form-grid{grid-template-columns:1fr}.users-filter-button{width:100%}.users-bulk-toolbar{align-items:stretch;flex-direction:column}.users-bulk-actions{justify-content:stretch}.users-bulk-actions .btn{flex:1;justify-content:center}.users-review-row{display:grid;gap:var(--space-1)}.users-review-row strong{text-align:left}}.users-name-cell{display:flex;flex-direction:column;gap:3px}.users-name-primary{font-weight:600;color:var(--color-text-primary)}.users-pan-badge{font-size:10px;background:var(--pr);color:var(--gold-l);padding:1px 5px;border-radius:var(--radius-sm);display:inline-block;width:-moz-fit-content;width:fit-content}.users-contact-cell{font-size:12px}.users-contact-sub{font-size:11px;color:var(--color-text-muted)}.users-scope-cell{font-size:12px}.users-scope-campus{font-weight:600;color:var(--color-text-primary)}.users-scope-programmes{color:var(--color-text-secondary);font-size:11px;margin-top:2px}.users-scope-none{font-style:italic}.users-scope-none,.users-updated-cell{color:var(--color-text-muted);font-size:11px}.users-updated-cell{white-space:nowrap}.users-table{min-width:1080px}.users-pw-reset-card{margin-bottom:0;min-width:0}.users-pw-reset-desc{font-size:13px;color:var(--color-text-secondary);margin-bottom:var(--space-3)}.users-pw-search-wrap{position:relative}.users-pw-search-spinner{position:absolute;right:12px;top:32px;font-size:12px;color:var(--color-text-muted)}.users-pw-results{display:flex;flex-direction:column;gap:6px;margin-top:var(--space-3);max-height:240px;overflow-y:auto}.users-pw-result-item{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:10px 14px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-surface);cursor:pointer;text-align:left;transition:border-color var(--tr),background var(--tr)}.users-pw-result-item:hover{border-color:var(--pr);background:var(--color-bg-subtle)}.users-pw-result-item.selected{border-color:var(--pr);background:rgba(15,95,154,.06)}.users-pw-result-name{font-weight:600;color:var(--color-text-primary);font-size:13px}.users-pw-result-meta{display:flex;align-items:center;gap:var(--space-2);font-size:12px;color:var(--color-text-secondary)}.users-pw-pan{font-size:10px;background:var(--pr);color:var(--gold-l);padding:1px 5px;border-radius:var(--radius-sm)}.users-pw-form{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--color-border)}.users-pw-selected{display:flex;align-items:center;gap:var(--space-3);padding:10px 14px;background:var(--color-bg-subtle);border-radius:var(--radius-md);margin-bottom:var(--space-4);font-size:13px}.users-pw-selected strong{color:var(--color-text-primary)}.users-pw-selected span{color:var(--color-text-secondary)}.users-pw-actions{display:flex;justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-4)}.users-faculty-section{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--color-border)}.users-faculty-heading{font-size:14px;font-weight:700;color:var(--color-text-primary);margin-bottom:var(--space-3)}@media(max-width:1180px){.users-pw-result-meta{flex-direction:column;align-items:flex-start;gap:2px}}.profile-page{display:grid;gap:var(--space-4)}.profile-header h1{color:var(--color-text-primary);font-size:22px;font-weight:600}.profile-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:var(--space-4);align-items:start}.profile-card,.profile-password-card{margin-bottom:0}.profile-identity{display:flex;align-items:center;gap:var(--space-4);margin-bottom:var(--space-5)}.profile-avatar{width:56px;height:56px;border-radius:var(--radius-pill);background:linear-gradient(135deg,var(--purple),var(--pink));display:flex;align-items:center;justify-content:center;color:var(--color-bg-surface);font-size:22px;font-weight:700;flex:0 0 auto}.profile-name{color:var(--pr);font-size:18px;font-weight:700;line-height:1.25;margin-bottom:var(--space-1)}.profile-pan-row{color:var(--text-l);font-size:12px}.profile-pan-badge{display:inline-flex;align-items:center;min-height:22px;border-radius:var(--radius-sm);background:var(--pr);color:var(--gold-l);font-family:var(--font-mono);font-size:12px;font-weight:700;padding:var(--space-1) var(--space-2)}.profile-info-grid{display:grid;grid-template-columns:repeat(2,minmax(180px,1fr));gap:14px}.profile-info-card{background:var(--bg);border:1px solid var(--color-border);border-radius:var(--rmd);padding:var(--space-3)}.profile-info-label{color:var(--text-l);font-size:10px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;margin-bottom:var(--space-1)}.profile-info-value{color:#1e293b;font-size:13px;font-weight:600;overflow-wrap:anywhere}.profile-card-toolbar{padding:0;border-bottom:0;margin-bottom:var(--space-4)}.profile-card-toolbar>div{display:grid;gap:4px}.profile-password-note{margin:0;color:var(--color-text-muted);font-size:.8125rem;line-height:1.45}.profile-password-card,.profile-password-card .form-field{min-width:0}.profile-alert{margin-bottom:var(--space-4)}.profile-strength{color:var(--color-text-secondary);background:var(--color-bg-subtle);border-color:var(--color-border)}.profile-strength.weak{background:var(--color-danger-bg);color:var(--color-danger-text);border-color:var(--color-danger-border)}.profile-strength.medium{background:var(--color-warning-bg);color:var(--color-warning-text);border-color:var(--color-warning-border)}.profile-strength.strong{background:var(--color-success-bg);color:var(--color-success-text);border-color:var(--color-success-border)}.profile-submit{width:100%;justify-content:center}@media(max-width:900px){.profile-grid,.profile-info-grid{grid-template-columns:1fr}}.faculty-page{display:grid;gap:var(--space-4)}.faculty-alert{margin-bottom:var(--space-2)}.faculty-search-wrap{display:flex;align-items:center}.faculty-search-input{min-width:240px;max-width:320px;padding:8px 12px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-surface);color:var(--color-text-primary);font-size:13px;transition:border-color var(--tr)}.faculty-search-input:focus{outline:none;border-color:var(--pr);box-shadow:0 0 0 3px rgba(15,95,154,.1)}.faculty-table{min-width:1100px}.faculty-table td{vertical-align:middle}.pan-code{font-size:11px;background:var(--pr);color:var(--gold-l);padding:2px 7px;border-radius:var(--radius-sm);font-family:var(--font-mono)}.faculty-name{font-weight:600;color:var(--color-text-primary)}.faculty-ifsc{font-size:11px;color:var(--color-text-muted)}.faculty-doc-summary{display:flex;flex-direction:column;gap:4px;align-items:flex-start;min-width:120px}.faculty-doc-missing{font-size:11px;color:#64748b}.faculty-doc-header{display:flex;justify-content:space-between;gap:var(--space-3);align-items:flex-start;flex-wrap:wrap;margin-bottom:var(--space-4)}.faculty-doc-name{font-size:18px;font-weight:800;color:#0f2740}.faculty-doc-meta{font-size:12px;color:#64748b;margin-top:3px}.faculty-doc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-3)}.faculty-doc-card{background:#f8fbff;border:1px solid #dbe8f4;border-radius:var(--rmd);padding:var(--space-3);min-height:150px}.faculty-doc-card-header{display:flex;justify-content:space-between;gap:var(--space-2);align-items:center;margin-bottom:var(--space-3)}.faculty-doc-card-header strong{color:#0f2740}.faculty-doc-info{font-size:12px;color:#64748b;line-height:1.55;margin-bottom:var(--space-3)}.faculty-doc-actions{display:flex;gap:var(--space-2);flex-wrap:wrap}.faculty-doc-empty{font-size:12px;color:#64748b;line-height:1.55}.faculty-bill-summary{font-size:13px;margin-bottom:var(--space-3)}.faculty-approval-toolbar{display:flex;align-items:end;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-4)}.faculty-approval-counts{display:flex;flex-wrap:wrap;gap:8px}.faculty-approval-counts button{display:inline-flex;align-items:center;gap:8px;min-height:34px;border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-bg-surface);color:var(--color-text-secondary);padding:6px 12px;font-size:.8125rem;font-weight:700;cursor:pointer}.faculty-approval-counts button.active{border-color:rgba(143,71,0,.28);background:#fff4e8;color:var(--color-brand)}.faculty-approval-counts button span{min-width:22px;border-radius:var(--radius-pill);background:var(--color-bg-subtle);color:var(--color-text-primary);padding:2px 7px;text-align:center;font-size:.75rem}.faculty-approval-search{width:min(360px,100%)}.faculty-approval-search label{display:block;margin-bottom:6px;color:var(--color-text-muted);font-size:.75rem;font-weight:700}.faculty-approval-search input{width:100%}.faculty-approval-workspace{display:block}.faculty-approval-workspace>.empty-state{width:100%}.faculty-approval-table-card{margin-bottom:0;padding:0;overflow:hidden}.faculty-approval-table-summary{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:14px 16px;border-bottom:1px solid var(--color-border)}.faculty-approval-table-summary strong{color:var(--color-text-primary);font-size:.875rem}.faculty-approval-table-summary span{color:var(--color-text-muted);font-size:.8125rem}.faculty-approval-table{min-width:1080px}.faculty-approval-table td{vertical-align:middle}.faculty-approval-table td:first-child strong,.faculty-approval-table td:nth-child(2) strong{color:var(--color-text-primary)}.faculty-approval-table-row--open td{background:#fff8f0;border-bottom-color:transparent}.faculty-approval-expanded-row>td{padding:0!important;background:var(--color-bg-subtle)}.faculty-approval-expanded{margin:0 12px 14px;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-surface);padding:var(--space-5);box-shadow:var(--shadow-sm)}.faculty-approval-expanded__header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-5);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border)}.faculty-approval-expanded__header h2{margin:0 0 4px;color:var(--color-text-primary);font-size:1.125rem}.faculty-approval-expanded__header p{display:flex;flex-wrap:wrap;gap:8px 12px;margin:0;color:var(--color-text-muted);font-size:.8125rem}.faculty-approval-list{display:grid;gap:var(--space-4)}.faculty-approval-queue{margin-bottom:0;padding:0;overflow:hidden;position:sticky;top:24px;max-height:calc(100vh - 150px);display:flex;flex-direction:column}.faculty-approval-queue__head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:14px 16px;border-bottom:1px solid var(--color-border)}.faculty-approval-queue__head strong{color:var(--color-text-primary);font-size:.875rem}.faculty-approval-queue__head span{color:var(--color-text-muted);font-size:.75rem;text-transform:capitalize}.faculty-approval-rows{overflow:auto}.faculty-approval-row{width:100%;display:grid;gap:8px;border:0;border-bottom:1px solid var(--color-border);background:var(--color-bg-surface);padding:12px 16px;text-align:left;cursor:pointer}.faculty-approval-row:hover{background:var(--color-bg-subtle)}.faculty-approval-row--active{background:#fff8f0;box-shadow:inset 3px 0 0 var(--color-brand)}.faculty-approval-row__main{display:grid;gap:2px}.faculty-approval-row__main strong{color:var(--color-text-primary);font-size:.875rem;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.faculty-approval-row__main span{color:var(--color-text-muted);font-size:.75rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.faculty-approval-row__meta{display:flex;align-items:center;gap:8px;min-width:0;color:var(--color-text-muted);font-size:.75rem}.faculty-approval-row__meta .badge{margin-left:auto}.faculty-approval-card{display:grid;gap:var(--space-5);margin-bottom:0}.faculty-approval-detail-panel{min-width:0}.faculty-approval-card__header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border)}.faculty-approval-name{color:var(--color-text-primary);font-size:1.125rem;line-height:1.3;font-weight:700}.faculty-approval-meta,.faculty-approval-status{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;color:var(--color-text-muted);font-size:.8125rem}.faculty-approval-status{justify-content:flex-end}.faculty-approval-sections{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(260px,.9fr);gap:var(--space-5)}.faculty-approval-sections section{min-width:0}.faculty-approval-sections h2{margin:0 0 var(--space-3);color:var(--color-text-primary);font-size:.875rem;line-height:1.35;font-weight:700}.faculty-approval-section-title{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-3)}.faculty-approval-section-title h2{margin:0}.faculty-approval-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.faculty-approval-detail{min-width:0;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-subtle);padding:10px 12px}.faculty-approval-detail span{display:block;margin-bottom:3px;color:var(--color-text-muted);font-size:.6875rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.faculty-approval-detail strong{display:block;color:var(--color-text-primary);font-size:.8125rem;line-height:1.45;overflow-wrap:anywhere}.faculty-approval-docs{display:grid;gap:10px}.faculty-approval-doc{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);min-width:0;border:1px solid var(--color-border);border-radius:var(--radius-md);padding:10px 12px}.faculty-approval-doc div{min-width:0}.faculty-approval-doc span,.faculty-approval-doc strong{display:block}.faculty-approval-doc strong{color:var(--color-text-primary);font-size:.8125rem}.faculty-approval-doc span{color:var(--color-text-muted);font-size:.75rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.faculty-approval-review textarea{width:100%;min-height:104px;resize:vertical}.faculty-approval-actions{display:grid;grid-template-columns:repeat(2,minmax(120px,1fr));gap:10px;width:min(320px,100%);margin-top:var(--space-3)}.faculty-approval-action{width:100%;min-height:42px;justify-content:center;border-radius:var(--radius-md);padding:9px 18px;font-size:.8125rem;font-weight:700}.faculty-approval-undertaking{margin-bottom:var(--space-3)}.faculty-document-preview-modal,.faculty-document-viewer{flex:1;min-height:0;display:flex}.faculty-document-viewer{flex-direction:column;background:#1b1d1f}.faculty-document-viewer:fullscreen{width:100vw;height:100vh}.faculty-document-viewer__toolbar{min-height:52px;display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:8px 18px;color:#edf1f3;background:#24282b;border-bottom:1px solid rgba(255,255,255,.12)}.faculty-document-viewer__toolbar button{min-width:40px;min-height:34px;padding:6px 12px;border:1px solid rgba(255,255,255,.18);border-radius:7px;color:#edf1f3;background:#30363a;font:inherit;font-size:.8125rem;font-weight:650;cursor:pointer}.faculty-document-viewer__toolbar button:hover{background:#3c4449}.faculty-document-viewer__toolbar button:focus-visible{outline:2px solid #f0a64a;outline-offset:2px}.faculty-document-viewer__toolbar span{min-width:48px;text-align:center;font-size:.8125rem;font-variant-numeric:tabular-nums}.faculty-document-preview{flex:1;overflow:auto;background:#1b1d1f;padding:20px}.faculty-document-preview,.faculty-document-preview__canvas{min-height:0;display:flex;align-items:center;justify-content:center}.faculty-document-preview__canvas{width:100%;height:100%}.faculty-document-preview img{display:block;width:100%;height:100%;max-width:100%;max-height:100%;-o-object-fit:contain;object-fit:contain;image-rendering:auto;transform-origin:center;transition:transform .18s cubic-bezier(.22,1,.36,1)}.faculty-document-preview iframe{width:100%;height:100%;min-height:0;border:0;background:var(--color-bg-surface)}.faculty-document-preview__state{min-height:220px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#e8ecef;text-align:center}.faculty-document-preview__state strong{font-size:1rem}.faculty-document-preview__state span{max-width:48ch;color:#b9c2c9;font-size:.8125rem;line-height:1.5}.faculty-document-preview__state--error strong{color:#fecaca}@media(max-width:1100px){.faculty-approval-queue{position:relative;top:auto;max-height:420px}.faculty-approval-sections{grid-template-columns:1fr}}@media(max-width:680px){.faculty-approval-toolbar{align-items:stretch;flex-direction:column}.faculty-approval-search{width:100%}.faculty-approval-expanded__header,.faculty-approval-table-summary{align-items:flex-start;flex-direction:column}.faculty-approval-expanded{margin:0 8px 10px;padding:var(--space-4)}.faculty-approval-card__header,.faculty-approval-status{align-items:flex-start;justify-content:flex-start;flex-direction:column}.faculty-approval-detail-grid{grid-template-columns:1fr}.faculty-approval-actions{grid-template-columns:1fr;width:100%}.faculty-document-preview{padding:8px}.faculty-document-viewer__toolbar{justify-content:center;flex-wrap:wrap;padding:8px}}@media(max-width:1200px){.faculty-table{min-width:900px}}@media(max-width:760px){.faculty-search-input{min-width:100%;max-width:100%}}.admin-dashboard-page{display:grid;gap:var(--space-4)}.admin-dashboard-alert{margin-bottom:var(--space-2)}.ops-context-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-border)}.ops-context-strip>div{display:flex;min-width:0;flex-direction:column;gap:4px;padding:12px 14px;background:var(--color-bg-surface)}.ops-context-strip span{color:var(--color-text-muted);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.ops-context-strip strong{color:var(--color-text-primary);font-size:.95rem;font-weight:750;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.ops-pipeline-card .card-header,.ops-table-card .card-header{min-height:0;padding-bottom:12px}.ops-pipeline{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.ops-stage{display:flex;min-width:0;flex-direction:column;gap:8px;padding:12px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-subtle)}.ops-stage__meta,.ops-stage__top{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0}.ops-stage__top strong{color:var(--color-text-primary);font-size:.875rem}.ops-stage__top span{color:var(--color-text-primary);font-family:var(--font-mono);font-size:1.1rem;font-weight:800}.ops-stage__bar{height:8px;overflow:hidden;border-radius:var(--radius-pill);background:var(--color-bg-surface)}.ops-stage__bar span{display:block;height:100%;border-radius:inherit;background:var(--color-brand)}.ops-stage__meta span{min-width:0;color:var(--color-text-muted);font-size:.75rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ops-stage__meta b{flex:0 0 auto;color:var(--color-text-secondary);font-size:.75rem}.ops-stage--approved .ops-stage__bar span,.ops-stage--paid .ops-stage__bar span,.ops-stage--verified .ops-stage__bar span{background:var(--color-success)}.ops-stage--on-hold .ops-stage__bar span,.ops-stage--pending .ops-stage__bar span{background:var(--color-brand)}.ops-stage--rejected .ops-stage__bar span{background:var(--color-danger)}.ops-name-cell{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:650}.status-pills{flex-wrap:wrap}.status-pill,.status-pills{display:flex;gap:var(--space-2)}.status-pill{align-items:center;padding:6px 12px;background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:var(--radius-md)}.status-pill-count{font-size:13px;font-weight:700;color:var(--color-text-primary)}.bar-chart{display:flex;flex-direction:column;gap:8px}.bar-row{display:flex;align-items:center;gap:var(--space-2)}.bar-label{min-width:120px;max-width:180px;font-size:12px;font-weight:600;color:var(--color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bar-track{flex:1;height:10px;background:var(--color-bg-subtle);overflow:hidden}.bar-fill,.bar-track{border-radius:var(--radius-pill)}.bar-fill{height:100%;transition:width .4s ease}.bar-fill--blue{background:linear-gradient(90deg,var(--pr),var(--pr-l))}.bar-fill--purple{background:linear-gradient(90deg,var(--pr-l),var(--purple))}.bar-value{min-width:70px;font-size:12px;font-weight:700;color:var(--color-text-secondary);text-align:right}.month-table{min-width:500px}.month-cell{padding:10px 12px;font-size:13px}.text-center{text-align:center}.text-red{color:var(--color-danger-text)}.text-green{color:var(--color-success-text)}.stat-card--blue{border-left:3px solid var(--pr)}.stat-card--gold{border-left:3px solid var(--gold)}.stat-card--green{border-left:3px solid var(--green)}.stat-card--red{border-left:3px solid var(--color-danger)}.stat-card--purple{border-left:3px solid var(--purple)}.stat-card__icon{width:32px;height:32px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:800;margin-bottom:var(--space-2)}.stat-card--blue .stat-card__icon{background:rgba(15,95,154,.1);color:var(--pr)}.stat-card--gold .stat-card__icon{background:rgba(245,158,11,.1);color:var(--gold)}.stat-card--green .stat-card__icon{background:rgba(16,185,129,.1);color:var(--green)}.stat-card--red .stat-card__icon{background:rgba(239,68,68,.1);color:var(--color-danger)}.stat-card--purple .stat-card__icon{background:rgba(139,92,246,.1);color:var(--purple)}@media(max-width:1024px){.admin-dashboard-grid{grid-template-columns:1fr}.ops-context-strip,.ops-pipeline{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.log-detail-simple__row{gap:6px}.log-detail-simple__row,.ops-context-strip,.ops-pipeline{grid-template-columns:1fr}.bar-label{min-width:80px;max-width:120px;font-size:11px}.bar-value{min-width:50px;font-size:11px}}.dashboard-page{padding:var(--space-lg);display:flex;flex-direction:column;gap:var(--space-lg)}.dashboard-home-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-lg) var(--space-xl);border-radius:var(--radius-xl);border:1px solid var(--color-border);background:var(--color-bg-surface);box-shadow:var(--shadow-card)}.dashboard-home-header h1{color:var(--color-text-primary);font-size:1.75rem;line-height:1.25;margin-bottom:var(--space-xs)}.dashboard-home-header .dashboard-muted{color:var(--color-text-secondary);font-size:.875rem;margin:0}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-md)}.dashboard-grid--wide{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.quick-actions{display:flex;flex-direction:column;gap:var(--space-sm)}.btn--full{width:100%;justify-content:center}.month-summary-list{display:flex;flex-direction:column;gap:var(--space-xs)}.month-summary-row{display:flex;justify-content:space-between;align-items:center;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);background:var(--color-bg-subtle)}.month-summary-row__period{font-size:.8125rem;font-weight:600;color:var(--color-text-primary)}.month-summary-row__amounts{font-size:.75rem;color:var(--color-text-muted)}.status-breakdown-list{display:flex;flex-direction:column;gap:var(--space-xs)}.status-breakdown-row{display:flex;width:100%;justify-content:space-between;align-items:center;padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-subtle);color:var(--color-text-primary);font:inherit;text-align:left;transition:background-color var(--tr),border-color var(--tr),box-shadow var(--tr)}.status-breakdown-row:not(:disabled){cursor:pointer}.status-breakdown-row:not(:disabled):hover{border-color:var(--color-border-strong);background:var(--color-bg-hover)}.status-breakdown-row:focus-visible{outline:none;box-shadow:var(--focus-ring)}.status-breakdown-row:disabled{opacity:.68;cursor:default}.status-breakdown-row__action{display:flex;align-items:baseline;justify-content:flex-end;gap:10px}.status-breakdown-row__action small{color:var(--color-brand);font-size:11px;font-weight:700}.status-breakdown-row__count{font-size:.875rem;font-weight:700;color:var(--color-text-primary)}.text-truncate{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-muted{color:var(--color-text-muted)}.settings-page{padding:var(--space-lg);display:flex;flex-direction:column;gap:var(--space-lg)}.settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:var(--space-lg)}.settings-actions{display:flex;gap:var(--space-sm);flex-wrap:wrap;margin-top:var(--space-md)}.settings-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-md);margin-bottom:var(--space-md)}.settings-card-heading h3{margin:0 0 4px}.settings-card-heading p{margin:0;color:var(--color-text-muted);font-size:.8125rem;line-height:1.45}.system-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-md);font-size:.8125rem}.db-status-checking,.system-info__label{color:var(--color-text-muted)}.db-status-checking{font-style:italic}.db-status-connected{color:var(--color-success-text)}.db-status-disconnected{color:var(--color-danger-text)}.control-page{padding:var(--space-lg);display:flex;flex-direction:column;gap:var(--space-lg)}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-md)}.table-actions{display:flex;gap:var(--space-xs)}.skeleton-table{display:flex;flex-direction:column;gap:var(--space-sm)}.legacy-import-page{padding:var(--space-lg);display:flex;flex-direction:column;gap:var(--space-lg)}.legacy-import-instructions{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-md)}.instruction-card{background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-md)}.instruction-card__step{font-size:.75rem;font-weight:700;color:var(--color-brand);margin-bottom:var(--space-xs)}.instruction-card__desc{font-size:.8125rem;color:var(--color-text-secondary)}.legacy-import-actions{display:flex;gap:var(--space-sm);flex-wrap:wrap;align-items:center;margin-top:var(--space-md)}.file-name{font-size:.75rem;color:var(--color-text-muted)}.import-result{margin-top:var(--space-md)}.summary-total{font-size:.8125rem;color:var(--color-text-muted);margin-bottom:var(--space-md)}.empty-state{padding:var(--space-lg) var(--space-xl);border-radius:var(--radius-lg);background:var(--color-bg-subtle);border:1px dashed var(--color-border);text-align:center;color:var(--color-text-secondary)}.empty-state__icon{font-size:2rem;margin-bottom:var(--space-sm);color:var(--color-text-muted);display:flex}.empty-state__icon svg{opacity:.4}.empty-state__title{font-size:1rem;margin-bottom:var(--space-xs);font-weight:600}.empty-state__desc{font-size:.8125rem;line-height:1.6}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{border-color:var(--color-brand);box-shadow:var(--focus-ring);outline:none}button:focus:not(:focus-visible),input:focus:not(:focus-visible),select:focus:not(:focus-visible),textarea:focus:not(:focus-visible){box-shadow:none}.sidebar{width:260px;flex-shrink:0;display:flex;flex-direction:column;background:var(--color-sidebar-bg);border-right:1px solid var(--color-border);padding:var(--space-lg) 0;overflow-y:auto}.sidebar__brand{padding:0 var(--space-lg);margin-bottom:var(--space-lg)}.sidebar__logo{width:40px;height:40px;border-radius:var(--radius-md);background:var(--color-brand);display:flex;align-items:center;justify-content:center;color:var(--color-on-primary);font-weight:800;font-size:1rem}.sidebar__name{color:var(--color-sidebar-text);font-size:.875rem;font-weight:600;margin-top:var(--space-sm)}.sidebar__role{color:var(--color-sidebar-muted);font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.sidebar__section{margin-bottom:var(--space-lg)}.sidebar__section-label{padding:0 var(--space-lg);color:var(--color-sidebar-muted);font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;margin-bottom:var(--space-xs)}.sidebar__link{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-lg);color:var(--color-sidebar-text);font-size:.8125rem;font-weight:500;text-decoration:none;transition:background var(--tr),color var(--tr);border-left:3px solid transparent}.sidebar__link:hover{background:var(--color-sidebar-hover);color:var(--color-brand)}.sidebar__link.active{background:var(--color-bg-subtle);color:var(--color-brand);border-left-color:var(--color-brand);font-weight:600}.sidebar__link svg{width:18px;height:18px;flex-shrink:0}.sidebar__footer{margin-top:auto;padding:var(--space-md) var(--space-lg);border-top:1px solid var(--color-border);display:flex;justify-content:space-between;align-items:center}.sidebar__user{color:var(--color-sidebar-text);font-size:.8125rem;font-weight:600}.sidebar__logout{padding:var(--space-xs) var(--space-sm);background:var(--color-bg-subtle);color:var(--color-text-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;font-weight:600;font-size:.75rem;transition:background var(--tr),color var(--tr)}.sidebar__logout:hover{background:var(--color-danger-bg);color:var(--color-danger);border-color:var(--color-danger-border)}@media (max-width:1024px){.control-page,.dashboard-page,.legacy-import-page,.settings-page{padding:var(--space-md)}.settings-grid{grid-template-columns:1fr}}@media (max-width:768px){.dashboard-home-header{flex-direction:column;align-items:flex-start;gap:var(--space-sm)}.dashboard-home-header h1{font-size:1.375rem}.dashboard-grid,.dashboard-grid--wide{grid-template-columns:1fr}}.bills-page,.my-bills-page{padding:var(--space-lg);display:flex;flex-direction:column;gap:var(--space-lg)}.bill-latest{display:flex;flex-direction:column;gap:14px;margin-bottom:0}.bill-latest__head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}.bill-latest__eyebrow{font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted)}.bill-latest__head h3{font-size:1rem;font-weight:700;color:var(--color-text-primary);margin:2px 0}.bill-latest__head p{font-size:.8125rem;color:var(--color-text-secondary)}.bill-latest .btn{align-self:flex-start}.bill-progress{display:flex;flex-direction:column;gap:5px;min-width:160px}.bill-progress__bar{height:6px;border-radius:var(--radius-pill);background:var(--color-bg-hover);overflow:hidden}.bill-progress__bar>span{display:block;height:100%;border-radius:var(--radius-pill);background:var(--color-success);transition:width .3s ease}.bill-progress__bar.is-attention>span{background:var(--color-danger)}.bill-progress__meta{font-size:.6875rem;color:var(--color-text-secondary)}.bill-progress--lg .bill-progress__bar{height:8px}.bill-progress--lg .bill-progress__meta{font-size:.75rem}.page-header__chip{display:inline-block;font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;background:var(--color-brand-light);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-pill);margin-bottom:var(--space-sm)}.page-header__title{font-size:1.75rem;font-weight:700;color:var(--color-text-primary);line-height:1.25;margin-bottom:var(--space-xs)}.page-header__desc{font-size:.875rem;color:var(--color-text-secondary);line-height:1.5;margin:0}.font-mono{font-family:var(--font-mono)}.password-strength{margin-top:var(--space-xs)}.password-strength__bar{height:4px;background:var(--color-border);border-radius:var(--radius-pill);overflow:hidden;margin-bottom:var(--space-xs)}.password-strength__fill{height:100%;border-radius:var(--radius-pill);transition:width .3s ease}.password-strength__fill--weak{width:33%;background:var(--color-danger)}.password-strength__fill--medium{width:66%;background:var(--color-warning)}.password-strength__fill--strong{width:100%;background:var(--color-success)}.password-strength__label{font-size:.6875rem;font-weight:600}.password-strength__label--weak{color:var(--color-danger)}.password-strength__label--medium{color:var(--color-warning)}.password-strength__label--strong{color:var(--color-success)}.btn--primary:focus-visible{box-shadow:var(--focus-ring);outline:none}.btn--primary:active{transform:scale(.98)}.btn--primary:disabled{opacity:var(--disabled-opacity);cursor:var(--disabled-cursor);pointer-events:none}.btn--secondary:focus-visible{box-shadow:var(--focus-ring);outline:none}.btn--secondary:active{background:var(--color-bg-hover)}.btn--secondary:disabled{opacity:var(--disabled-opacity);cursor:var(--disabled-cursor);pointer-events:none}.btn--danger:focus-visible{box-shadow:var(--focus-ring);outline:none}.btn--danger:active{transform:scale(.98)}.btn--danger:disabled{opacity:var(--disabled-opacity);cursor:var(--disabled-cursor);pointer-events:none}.btn-sm:focus-visible{box-shadow:var(--focus-ring);outline:none}.btn-sm:disabled{opacity:var(--disabled-opacity);cursor:var(--disabled-cursor);pointer-events:none}.logout-btn:focus-visible{box-shadow:var(--focus-ring);outline:none}.logout-btn:active{transform:scale(.98)}.nav-item:focus-visible{box-shadow:var(--focus-ring);outline:none}.nav-item:active{background:var(--color-bg-hover)}.nav-link{transition:background var(--tr),color var(--tr)}.nav-link:focus-visible{box-shadow:var(--focus-ring);outline:none}.nav-link:active{background:var(--color-bg-hover)}.form-field input:user-invalid,.form-field select:user-invalid,.form-field textarea:user-invalid{border-color:var(--color-danger-border)}.form-field input:disabled,.form-field select:disabled,.form-field textarea:disabled{opacity:var(--disabled-opacity);cursor:var(--disabled-cursor);background:var(--color-bg-subtle)}.table-wrapper tbody tr:focus-within{background:var(--color-bg-subtle)}.approval-mini-list{display:flex;flex-wrap:wrap;gap:var(--space-xs)}.approval-mini-list .badge{font-size:.6875rem;padding:2px 6px}.my-bills-filters{display:flex;gap:var(--space-sm);flex-wrap:wrap;align-items:center;margin-bottom:var(--space-md)}.admin-bills-bulk-remark{margin-top:var(--space-sm);font-size:.75rem;color:var(--color-text-muted)}.skeleton--text-sm{width:60%;height:12px}@media (max-width:1024px){.settings-grid{grid-template-columns:1fr}.legacy-import-instructions{grid-template-columns:1fr 1fr}}@media (max-width:480px){.bills-page,.control-page,.dashboard-page,.legacy-import-page,.my-bills-page,.settings-page{padding:var(--space-sm)}.page-header{padding:var(--space-md)}.page-header__title{font-size:1.375rem}.card{padding:var(--space-md)}.table-wrapper{font-size:.75rem}.stat-card{padding:var(--space-md)}.stat-card__value{font-size:1.25rem}}@media (max-width:360px){.dashboard-grid,.dashboard-grid--wide{grid-template-columns:1fr}.btn--full{font-size:.75rem;padding:var(--space-xs) var(--space-sm)}}:root{--color-primary:#8f4700;--color-primary-hover:#6f3700;--color-on-primary:#fff9f3;--color-surface:#f6f8fb;--color-bg-page:#f6f8fb;--color-bg-surface:#fffdfa;--color-bg-subtle:#f1f5f8;--color-bg-hover:#edf3f7;--color-text-primary:#172027;--color-text-secondary:#445461;--color-text-muted:#6b7b88;--color-border:#dfe6ec;--color-border-strong:#c4d0da;--color-sidebar-bg:#fbfcfd;--color-sidebar-hover:#eef4f7;--color-sidebar-muted:#667684;--color-brand:var(--color-primary);--color-brand-hover:var(--color-primary-hover);--color-brand-light:#f7e6d6;--radius-sm:6px;--radius-md:8px;--radius-lg:10px;--radius-xl:12px;--shadow-card:0 1px 2px rgba(23,32,39,.06);--shadow-dropdown:0 10px 24px rgba(23,32,39,.12);--shadow-modal:0 24px 72px rgba(23,32,39,.24);--focus-ring:0 0 0 3px rgba(143,71,0,.18);--tr:.18s cubic-bezier(.22,1,.36,1)}body,html{background:var(--color-bg-page);color:var(--color-text-primary)}.login-page{position:relative;background:linear-gradient(180deg,rgba(24,34,43,.92),rgba(24,34,43,.98)),radial-gradient(circle at 20% 0,rgba(143,71,0,.2),transparent 32%),#18222b}.login-page:before{content:"";position:fixed;inset:0;pointer-events:none;background-image:linear-gradient(rgba(255,249,243,.045) 1px,transparent 0),linear-gradient(90deg,rgba(255,249,243,.035) 1px,transparent 0);background-size:28px 28px;opacity:.45}.login-wrap{max-width:1040px}.login-shell{background:rgba(255,253,250,.98);border:1px solid rgba(255,253,250,.22);border-radius:18px;box-shadow:0 30px 80px rgba(0,0,0,.28)}.users-programme-option--all>span{display:grid;gap:2px}.users-programme-option--all small{color:var(--color-text-muted);font-size:11px;font-weight:500}.users-programme-option--all.is-selected small,.users-programme-option--all:hover small{color:inherit}.billing-window-card{grid-column:span 2}.billing-window-dates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-md)}.billing-window-timezone{margin:-6px 0 var(--space-md);color:var(--color-text-muted);font-size:.75rem}.billing-period-panel{margin:14px 0 4px;padding:16px;border:1px solid var(--color-border);border-radius:12px;background:var(--color-bg-subtle)}.billing-period-panel__intro{display:flex;flex-direction:column;gap:3px;margin-bottom:14px}.billing-period-panel__intro strong{color:var(--color-text-primary);font-size:.875rem}.billing-period-panel__intro span,.billing-period-summary{color:var(--color-text-muted);font-size:.75rem;line-height:1.45}.billing-period-panel .billing-purge-range{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:end}.billing-period-arrow{display:flex;align-items:center;justify-content:center;min-height:44px;color:var(--color-text-muted);font-size:.75rem;font-weight:700;text-transform:uppercase}.billing-period-summary{margin-top:10px;padding:8px 10px;border-radius:8px;background:var(--color-bg-surface);border:1px solid var(--color-border)}.login-shell:has(.department-picker.is-open){overflow:visible}.login-aside{background:#172027;color:#f4eee7}.login-side-badge{color:#f7e6d6;background:rgba(143,71,0,.28);border:1px solid rgba(247,230,214,.2)}.login-side-brand h1,.login-sys,.login-univ{color:#fff9f3}.login-highlight span,.login-side-brand p,.login-side-copy{color:#c8d1d8}.login-highlight{border-color:rgba(255,249,243,.12);background:rgba(255,249,243,.045)}.login-card{background:var(--color-bg-surface)}.login-logo{text-align:left;border-bottom:1px solid var(--color-border)}.login-logo-icon{background:#fff7ef;border:1px solid #ecd4be;box-shadow:none;animation:none}.lfield label,.linfo,.login-card .password-strength-hint,.login-logo-copy,.login-sub,.ltab{color:var(--color-text-secondary)}.login-card .login-univ{color:var(--color-text-primary)}.login-card .login-sys{color:var(--color-brand)}.login-card .login-sub{color:var(--color-text-secondary)}.ltabs{border-bottom:1px solid var(--color-border)}.ltab.active{color:var(--color-brand)}.ltab.active:after{background:var(--color-brand)}.form-field input,.form-field select,.form-field textarea,.lfield input,.lfield select{min-height:40px;background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);font-size:.875rem;line-height:1.25rem;box-shadow:inset 0 1px 0 rgba(255,255,255,.72)}.form-field textarea{line-height:1.45}.lfield input::-moz-placeholder{color:var(--color-text-muted)}.lfield input::placeholder{color:var(--color-text-muted)}.lfield select option{background:var(--color-bg-surface);color:var(--color-text-primary)}.btn--primary,.btn-primary,.lbtn{background:var(--color-brand);color:var(--color-on-primary);box-shadow:none;text-transform:none;letter-spacing:0}.btn--primary:hover,.btn-primary:hover,.lbtn:hover{background:var(--color-brand-hover);transform:translateY(-1px);box-shadow:0 8px 18px rgba(143,71,0,.16)}.login-secondary-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:10px}.login-secondary-action{min-width:108px;justify-content:center}.registration-submit-note{margin-top:10px;padding:10px 12px;border:1px solid var(--color-info-border);border-radius:var(--radius-md);background:var(--color-info-bg);color:var(--color-info-text);font-size:.8125rem;line-height:1.45}.otp-status{display:flex;flex-direction:column;gap:3px;margin-bottom:16px;padding:10px 12px;border:1px solid var(--color-success-border);border-radius:var(--radius-md);background:var(--color-success-bg);color:var(--color-success-text);font-size:.8125rem;line-height:1.4}.otp-status span{color:var(--color-text-secondary)}.form-hint--error{color:var(--color-danger-text)}.department-picker{position:relative}.department-picker input{padding-left:40px;padding-right:40px;cursor:text}.department-picker input::-moz-placeholder{color:var(--color-text-primary);opacity:1}.department-picker input::placeholder{color:var(--color-text-primary);opacity:1}.department-picker__chevron,.department-picker__search-icon{position:absolute;z-index:1;top:20px;transform:translateY(-50%);pointer-events:none;color:var(--color-text-muted)}.department-picker__search-icon{left:13px}.department-picker__chevron{right:13px;transition:transform .18s cubic-bezier(.16,1,.3,1)}.department-picker.is-open .department-picker__chevron{transform:translateY(-50%) rotate(180deg)}.department-picker__menu{position:absolute;z-index:40;top:calc(100% + 7px);left:0;right:0;max-height:min(260px,calc(100dvh - 120px));overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-surface);box-shadow:0 18px 48px rgba(24,31,38,.16)}.department-picker__summary{position:sticky;z-index:1;top:0;padding:9px 12px;border-bottom:1px solid var(--color-border);background:var(--color-bg-subtle);color:var(--color-text-muted);font-size:.75rem;font-weight:600}.department-picker__option{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:42px;padding:9px 12px;border:0;border-bottom:1px solid var(--color-border);background:var(--color-bg-surface);color:var(--color-text-primary);font:inherit;font-size:.8125rem;line-height:1.35;text-align:left;cursor:pointer}.department-picker__option:last-child{border-bottom:0}.department-picker__option.is-active,.department-picker__option:hover{background:var(--color-bg-hover)}.department-picker__option.is-selected{background:var(--color-brand-light);color:var(--color-brand);font-weight:600}.department-picker__option svg{flex:0 0 auto}.department-picker__empty{padding:18px 12px;color:var(--color-text-muted);font-size:.8125rem;text-align:center}.dashboard-layout{background:var(--color-bg-page)}.dashboard-layout .sidebar{background:var(--color-sidebar-bg);border-right:1px solid var(--color-border)}.dashboard-layout .sb-brand{min-height:74px;background:linear-gradient(180deg,#fffdfa,#f8fafb)}.dashboard-layout .nav-item{border-left:0;border-radius:8px;min-height:38px}.dashboard-layout .nav-item.active{background:#fff4e8;color:var(--color-brand);border-left:0;box-shadow:inset 0 0 0 1px rgba(143,71,0,.12)}.dashboard-layout .nav-icon{color:currentColor}.nav-notice-count{min-width:22px;height:20px;margin-left:auto;padding:0 6px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:var(--color-danger-text);color:var(--color-bg-surface);font-size:11px;font-weight:700;line-height:1}.dashboard-main{flex:1;min-width:0;min-height:100vh;display:flex;flex-direction:column;overflow:hidden}.dashboard-topbar{min-height:64px;padding:0 28px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex:0 0 auto;background:var(--color-bg-surface);border-bottom:1px solid var(--color-border)}.dashboard-topbar__title{color:var(--color-brand);font-size:1.05rem;font-weight:700;letter-spacing:-.01em}.notice-bell{position:relative;width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;color:var(--color-text-secondary);background:transparent;border:1px solid transparent;border-radius:50%;text-decoration:none;transition:background-color var(--tr),border-color var(--tr),color var(--tr)}.notice-bell:hover{color:var(--color-brand);background:var(--color-bg-subtle);border-color:var(--color-border)}.notice-bell:focus-visible{outline:none;box-shadow:var(--focus-ring)}.notice-bell__count{position:absolute;top:2px;right:0;min-width:18px;height:18px;padding:0 5px;display:inline-flex;align-items:center;justify-content:center;border:2px solid var(--color-bg-surface);border-radius:999px;background:var(--color-danger-text);color:var(--color-bg-surface);font-size:10px;font-weight:700;line-height:1}.dashboard-main .dashboard-content{flex:1;min-height:0}@media(max-width:900px){.dashboard-topbar{min-height:64px;padding:0 14px 0 68px}.dashboard-main .dashboard-content{padding-top:var(--space-4)}}.notices-page{width:100%}.notice-security-note{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border:1px solid color-mix(in srgb,var(--color-success-text) 28%,var(--color-border));border-radius:999px;background:color-mix(in srgb,var(--color-success-text) 10%,var(--color-bg-surface));color:var(--color-success-text);font-size:13px;font-weight:600}.notice-workspace{display:grid;gap:24px}.notice-workspace--admin{grid-template-columns:minmax(330px,420px) minmax(0,1fr);align-items:start}.notice-feed,.notice-publisher{position:relative;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-surface);padding:26px 26px 28px;box-shadow:0 1px 2px rgba(15,23,42,.04),0 8px 24px -16px rgba(15,23,42,.18);overflow:hidden}.notice-feed:before,.notice-publisher:before{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:linear-gradient(90deg,var(--color-brand),color-mix(in srgb,var(--color-brand) 35%,transparent))}.notice-publisher{position:sticky;top:20px}.notice-audience-heading,.notice-row-heading,.notice-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.notice-section-heading{margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--color-border)}.notice-section-heading>svg{flex:0 0 auto;width:40px;height:40px;padding:9px;border-radius:var(--radius-md);background:var(--color-brand-soft);color:var(--color-brand)}.notice-audience-heading>div>span,.notice-section-heading>div>span{color:var(--color-brand);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.notice-audience-heading h3,.notice-section-heading h2{margin-top:3px;color:var(--color-text-primary);font-size:18px;font-weight:700}.notice-publisher .form-field small{color:var(--color-text-muted);font-size:12px}.notice-publisher input[type=file]{padding:9px 12px;font-size:12.5px;color:var(--color-text-secondary);cursor:pointer}.notice-publisher input[type=file]::file-selector-button{margin-right:12px;padding:7px 14px;border:0;border-radius:var(--radius-sm);background:var(--color-brand-soft);color:var(--color-brand);font:inherit;font-size:12.5px;font-weight:600;cursor:pointer;transition:background .15s ease}.notice-publisher input[type=file]::file-selector-button:hover{background:color-mix(in srgb,var(--color-brand) 22%,transparent)}.notice-publisher-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.notice-audience{margin-top:4px;padding-top:20px;border-top:1px solid var(--color-border)}.notice-audience-heading{margin-bottom:14px}.notice-audience-modes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:14px}.notice-mode-btn{display:grid;gap:3px;padding:12px 12px 11px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-surface);color:var(--color-text-secondary);text-align:left;cursor:pointer;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.notice-mode-btn svg{color:var(--color-text-muted)}.notice-mode-btn__label{font-size:13px;font-weight:600;color:var(--color-text-primary)}.notice-mode-btn__hint{font-size:11px;line-height:1.35;color:var(--color-text-muted)}.notice-mode-btn.is-active,.notice-mode-btn:hover{border-color:var(--color-brand)}.notice-mode-btn.is-active{background:var(--color-brand-soft);box-shadow:0 0 0 1px var(--color-brand) inset}.notice-mode-btn.is-active .notice-mode-btn__label,.notice-mode-btn.is-active svg{color:var(--color-brand)}.notice-audience-callout{display:flex;align-items:center;gap:10px;padding:13px 14px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-subtle);color:var(--color-text-secondary);font-size:12.5px}.notice-audience-callout svg{flex:0 0 auto;color:var(--color-brand)}.notice-audience-callout strong{color:var(--color-text-primary)}.notice-role-grid{display:flex;flex-wrap:wrap;gap:8px}.notice-role-chip{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--color-border);border-radius:999px;background:var(--color-bg-surface);color:var(--color-text-secondary);font-size:12.5px;font-weight:600;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease}.notice-role-chip.is-active,.notice-role-chip:hover{border-color:var(--color-brand)}.notice-role-chip.is-active{background:var(--color-brand);color:#fff}.notice-role-chip__count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--color-bg-subtle);color:var(--color-text-muted);font-size:11px;font-weight:700}.notice-role-chip.is-active .notice-role-chip__count{background:rgba(255,255,255,.25);color:#fff}.notice-audience-tags{display:flex;flex-wrap:wrap;gap:6px;margin:2px 0 4px}.notice-audience-tag{display:inline-flex;align-items:center;padding:3px 9px;border-radius:999px;background:var(--color-brand-soft);color:var(--color-brand);font-size:11px;font-weight:600}.notice-all-users{display:flex;align-items:flex-start;gap:12px;padding:14px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-subtle);cursor:pointer}.notice-all-users input,.notice-recipient input{width:18px;height:18px;flex:0 0 auto;accent-color:var(--color-brand)}.notice-all-users span{display:grid;gap:3px;color:var(--color-text-secondary);font-size:12px;line-height:1.45}.notice-all-users strong{color:var(--color-text-primary);font-size:13px}.notice-recipient-filters{display:grid;grid-template-columns:minmax(0,1fr) 130px;gap:8px;margin-top:12px}.notice-search{display:flex;align-items:center;gap:7px;min-width:0;padding:0 10px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-surface);color:var(--color-text-muted)}.notice-recipient-filters select,.notice-search input{width:100%;min-height:40px;border:0;background:transparent;color:var(--color-text-primary);font:inherit;font-size:12px;outline:0}.notice-recipient-filters select{padding:0 8px}.notice-recipient-filters select,.notice-select-visible{border:1px solid var(--color-border);border-radius:var(--radius-sm)}.notice-select-visible{width:100%;margin:8px 0;padding:8px 10px;background:var(--color-bg-subtle);color:var(--color-text-secondary);font-size:12px;font-weight:600;cursor:pointer}.notice-select-visible:disabled{cursor:not-allowed;opacity:.5}.notice-recipient-list{max-height:260px;overflow-y:auto;border:1px solid var(--color-border);border-radius:var(--radius-md)}.notice-recipient{display:grid;grid-template-columns:18px 32px minmax(0,1fr);align-items:center;gap:10px;padding:10px 12px;border-bottom:1px solid var(--color-border);cursor:pointer}.notice-recipient:last-child{border-bottom:0}.notice-recipient.is-selected,.notice-recipient:hover{background:var(--color-bg-subtle)}.notice-recipient-avatar{width:32px;height:32px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--color-brand-soft);color:var(--color-brand);font-size:12px;font-weight:700}.notice-recipient-copy{min-width:0;display:grid;gap:2px}.notice-recipient-copy small,.notice-recipient-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notice-recipient-copy strong{color:var(--color-text-primary);font-size:12px}.notice-recipient-copy small{color:var(--color-text-muted);font-size:11px}.notice-recipient-empty{padding:22px 14px;color:var(--color-text-muted);font-size:12px;text-align:center}.notice-publish-button{width:100%;margin-top:22px;min-height:46px;justify-content:center;font-weight:600;letter-spacing:.01em;box-shadow:0 8px 20px -10px color-mix(in srgb,var(--color-brand) 70%,transparent)}.notice-list{display:grid;gap:10px}.notice-row{display:grid;grid-template-columns:42px minmax(0,1fr);gap:14px;padding:16px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-surface);transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.notice-row:hover{border-color:color-mix(in srgb,var(--color-brand) 50%,var(--color-border));box-shadow:0 10px 24px -18px rgba(15,23,42,.4);transform:translateY(-1px)}.notice-row.is-unread{border-color:var(--color-brand);background:var(--color-brand-soft)}.notice-row.is-unread .notice-file-icon{background:var(--color-brand);color:#fff}.notice-file-icon{width:42px;height:42px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;background:var(--color-bg-subtle);color:var(--color-brand)}.notice-row-main{min-width:0}.notice-row-heading h3{color:var(--color-text-primary);font-size:15px;font-weight:700}.notice-document-meta,.notice-row-actions,.notice-row-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.notice-row-meta{margin-top:6px;color:var(--color-text-muted);font-size:11px}.notice-unread-label{color:var(--color-brand);font-weight:700}.notice-row-main>p{max-width:72ch;margin-top:10px;color:var(--color-text-secondary);font-size:13px;line-height:1.55}.notice-document-meta{margin-top:12px;color:var(--color-text-muted);font-size:11px}.notice-document-meta span{display:inline-flex;align-items:center;gap:5px}.notice-empty{border:1px dashed var(--color-border);border-radius:var(--radius-md);padding:48px 24px}.notice-empty .empty-state__icon{display:inline-flex;align-items:center;justify-content:center;width:64px;height:64px;margin:0 auto;border-radius:50%;background:var(--color-brand-soft);color:var(--color-brand)}@media(max-width:1080px){.notice-workspace--admin{grid-template-columns:1fr}.notice-publisher{position:static}}@media(max-width:640px){.notice-feed,.notice-publisher{padding:16px}.notice-audience-modes,.notice-publisher-grid,.notice-recipient-filters,.notice-row{grid-template-columns:1fr}.notice-row-heading{flex-direction:column}.notice-row-actions{width:100%}.notice-row-actions .btn:first-child{flex:1}.notice-security-note{width:100%;justify-content:center}}.dashboard-content{padding:28px}.dashboard-home-header,.page-header{align-items:center;padding:0 0 16px;border-bottom:1px solid var(--color-border);margin-bottom:22px;border-radius:0;background:transparent;box-shadow:none}.dashboard-home-header h1,.page-header h1,.page-header__title{margin:0;font-size:24px;line-height:1.2;font-weight:700;color:var(--color-text-primary);letter-spacing:0;text-rendering:geometricPrecision}.admin-bills-muted,.dashboard-muted,.page-header p,.page-header__desc{margin:4px 0 0;max-width:72ch;color:var(--color-text-muted)}.page-header__chip{background:#fff4e8;color:var(--color-brand);border:1px solid rgba(143,71,0,.12)}.bill-form-wrap,.card,.export-page-wrap,.print-bill,.stat-card,.verify-card{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.card{padding:20px;margin-bottom:18px}.admin-bills-modal-section h3,.card h3,.verify-card h3{color:var(--color-text-primary);font-size:15px;letter-spacing:0}.stat-card{padding:18px;cursor:default;background:var(--color-bg-surface);overflow:hidden}.stat-card:after,.stat-card:before{display:none}.stat-card:hover{transform:none;box-shadow:var(--shadow-card)}.stat-card--blue,.stat-card--gold,.stat-card--green,.stat-card--purple,.stat-card--red{border-left:1px solid var(--color-border)}.stat-card__icon{width:30px;height:30px;border-radius:8px}.stat-card__label{letter-spacing:.04em}.stat-card__value{font-size:26px;letter-spacing:0}.btn{min-height:38px;border-radius:8px;font-weight:650;box-shadow:none}.btn:hover{transform:translateY(-1px)}.btn--secondary,.btn-outline{background:var(--color-bg-surface);color:var(--color-text-primary);border:1px solid var(--color-border)}.btn--secondary:hover,.btn-outline:hover{background:var(--color-bg-hover);border-color:var(--color-border-strong)}.btn--danger,.btn-danger{background:var(--color-danger-text);color:#fff9f3}.btn-sm{min-height:32px;padding:6px 10px;border-radius:7px}.table-wrapper{border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:none}table{width:100%;border-collapse:separate;border-spacing:0}th,thead{background:var(--color-bg-subtle)}th{position:sticky;top:0;z-index:1;color:var(--color-text-secondary);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}td{color:var(--color-text-primary)}td,th{padding:11px 12px;border-bottom:1px solid var(--color-border)}tbody tr:hover td{background:#fbfdfe}.table-toolbar{min-height:54px}.table-pagination,.table-toolbar{background:var(--color-bg-surface)}.table-pagination{align-items:center;border-top:1px solid var(--color-border)}.badge{min-height:24px;border-radius:999px;padding:3px 9px;font-size:11px;font-weight:700;letter-spacing:0}.badge--on-hold,.badge--pending,.badge.hold,.badge.pending{background:#fff7e8;color:#80500c;border-color:#f0d19b}.badge--approved,.badge--verified,.badge.approved,.badge.verified{background:#eaf8f1;color:#11623f;border-color:#b9e7ce}.badge--rejected,.badge.rejected{background:#fff0ef;color:#a43c33;border-color:#f2b8b3}.badge--paid,.badge.paid{background:#edf5ff;color:#245a91;border-color:#bed7f2}.badge--neutral{background:var(--color-bg-subtle);color:var(--color-text-secondary);border-color:var(--color-border)}.modal-bg{background:rgba(23,32,39,.62)}.modal{border-radius:14px;border:1px solid rgba(255,255,255,.7);box-shadow:var(--shadow-modal);animation:fadeIn .18s ease-out}.modal-hdr{background:var(--color-bg-surface);border-bottom:1px solid var(--color-border)}.modal-close{background:var(--color-bg-subtle);border:1px solid var(--color-border);color:var(--color-text-secondary);border-radius:8px}.modal-close:hover{background:var(--color-danger-bg);color:var(--color-danger-text);transform:none}.bill-detail-modal #modalBody{background:var(--color-bg-page)}.bill-detail-modal .bill-detail-summary{border-radius:var(--radius-lg);box-shadow:none}.bill-detail-content .bs-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:14px;border:1px solid var(--color-border);border-radius:10px;background:var(--color-bg-subtle)}.bill-detail-content .bs-mi{min-width:0;padding:12px 14px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg-surface)}.bill-detail-content .bs-mi-lbl{margin-bottom:5px;color:var(--color-text-muted);font-size:11px;line-height:1.2;font-weight:650}.bill-detail-content .bs-mi-val{min-width:0;color:var(--color-text-primary);font-size:13px;line-height:1.35;font-weight:750;overflow-wrap:anywhere;word-break:normal}.bill-detail-content .bs-mi-val .badge{width:-moz-max-content;width:max-content;max-width:100%}.bill-tracker{display:grid;gap:16px}.bill-tracker__summary{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:18px 20px;border:1px solid var(--color-border);border-radius:14px;background:var(--color-bg-surface)}.bill-tracker__summary-main{display:flex;align-items:flex-start;gap:12px;min-width:0}.bill-tracker__summary-icon{width:40px;height:40px;border-radius:10px;display:grid;place-items:center;flex:0 0 auto;color:var(--color-warning-text);background:var(--color-warning-bg);border:1px solid var(--color-warning-border)}.bill-tracker__summary-icon.complete{color:var(--color-success-text);background:var(--color-success-bg);border-color:var(--color-success-border)}.bill-tracker__summary-icon.hold,.bill-tracker__summary-icon.rejected{color:var(--color-danger-text);background:var(--color-danger-bg);border-color:var(--color-danger-border)}.bill-tracker__eyebrow{margin-bottom:3px;color:var(--color-text-secondary);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.bill-tracker__facts h3,.bill-tracker__section-heading h3,.bill-tracker__summary h3{margin:0;color:var(--color-text-primary);font-size:15px;line-height:1.35}.bill-tracker__section-heading p,.bill-tracker__summary p{margin:4px 0 0;color:var(--color-text-secondary);font-size:12px}.bill-tracker__layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,320px);gap:16px;align-items:start}.bill-tracker__facts section,.bill-tracker__remarks,.bill-tracker__workflow{border:1px solid var(--color-border);border-radius:14px;background:var(--color-bg-surface)}.bill-tracker__remarks,.bill-tracker__workflow{padding:18px 20px}.bill-tracker__section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}.bill-tracker__section-heading>span{color:var(--color-text-secondary);font-size:12px;font-weight:700;white-space:nowrap}.bill-tracker__timeline{list-style:none;margin:0;padding:0}.bill-tracker__stage{display:grid;grid-template-columns:34px minmax(0,1fr);gap:12px;position:relative;padding-bottom:18px}.bill-tracker__stage:last-child{padding-bottom:0}.bill-tracker__stage:not(:last-child):after{content:"";position:absolute;top:30px;bottom:2px;left:16px;width:1px;background:var(--color-border)}.bill-tracker__marker{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;z-index:1;color:var(--color-text-secondary);background:var(--color-bg-subtle);border:1px solid var(--color-border)}.bill-tracker__stage.is-complete .bill-tracker__marker{color:var(--color-success-text);background:var(--color-success-bg);border-color:var(--color-success-border)}.bill-tracker__stage.is-current .bill-tracker__marker{color:var(--color-warning-text);background:var(--color-warning-bg);border-color:var(--color-warning-border);box-shadow:0 0 0 3px rgba(154,91,0,.12)}.bill-tracker__stage.is-hold .bill-tracker__marker,.bill-tracker__stage.is-rejected .bill-tracker__marker{color:var(--color-danger-text);background:var(--color-danger-bg);border-color:var(--color-danger-border)}.bill-tracker__stage-body{min-width:0;padding-top:1px}.bill-tracker__stage-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.bill-tracker__stage-head strong{color:var(--color-text-primary);font-size:13px}.bill-tracker__stage-head p{margin:3px 0 0;color:var(--color-text-secondary);font-size:11px}.bill-tracker__stage-meta{display:flex;justify-content:space-between;gap:12px;margin-top:7px;color:var(--color-text-secondary);font-size:11px}.bill-tracker__stage-meta time{white-space:nowrap}.bill-tracker__facts{display:grid;gap:12px}.bill-tracker__facts section{padding:16px}.bill-tracker__facts dl{display:grid;gap:0;margin:10px 0 0}.bill-tracker__facts dl>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid var(--color-border)}.bill-tracker__facts dt{color:var(--color-text-secondary);font-size:12px}.bill-tracker__facts dd{margin:0;color:var(--color-text-primary);font-size:12px;font-weight:700;text-align:right}.bill-tracker__facts dd.is-negative{color:var(--color-danger-text)}.bill-tracker__remark-list{display:flex;flex-direction:column}.bill-tracker__remark-list article{display:flex;flex-direction:column;gap:5px;padding:14px 0;border-top:1px solid var(--color-border)}.bill-tracker__remark-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.bill-tracker__remark-head strong{color:var(--color-text-primary);font-size:12px;font-weight:700;overflow-wrap:anywhere}.bill-tracker__remark-head time{white-space:nowrap;flex-shrink:0}.bill-tracker__remark-actor,.bill-tracker__remark-head time{color:var(--color-text-muted);font-size:11px}.bill-tracker__remark-list p{margin:0;color:var(--color-text-secondary);font-size:13px;line-height:1.5;overflow-wrap:anywhere}.bill-tracker__empty{padding:14px 0 2px;border-top:1px solid var(--color-border);color:var(--color-text-secondary);font-size:12px}.empty-state{padding:32px 20px}.empty-state__icon{width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;background:var(--color-bg-subtle);color:var(--color-brand)}.alert{border-radius:8px}.toast{border:1px solid rgba(255,255,255,.1);background:#172027;box-shadow:0 18px 38px rgba(23,32,39,.24)}.toast-ic{border-radius:8px}@media(max-width:900px){.dashboard-content{padding:72px 18px 18px}.dashboard-home-header,.page-header{align-items:flex-start}.bill-detail-content .bs-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.bill-tracker__layout{grid-template-columns:1fr}.bill-tracker__facts{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.bill-detail-content .bs-meta{grid-template-columns:1fr}.bill-tracker__section-heading,.bill-tracker__stage-head,.bill-tracker__stage-meta,.bill-tracker__summary{align-items:flex-start;flex-direction:column}.bill-tracker__facts{grid-template-columns:1fr}.bill-tracker__remark-list article{grid-template-columns:1fr;gap:6px}.bill-tracker__remark-list time{white-space:normal}}.par,.particles{display:none}.users-layout-grid{display:flex;flex-direction:column;gap:var(--space-4);align-items:stretch}.users-create-card,.users-list-card,.users-pw-reset-card{width:100%}.users-table{min-width:1040px}.users-pan-badge,.users-pw-pan{background:var(--color-bg-subtle);color:var(--color-text-secondary);border:1px solid var(--color-border);border-radius:var(--radius-pill);padding:3px 9px;font-size:11px;font-weight:700;letter-spacing:0;display:inline-flex;align-items:center;width:-moz-fit-content;width:fit-content}.stepper{gap:var(--space-sm);margin-bottom:var(--space-lg);flex-wrap:wrap}.stepper,.stepper__step{display:flex;align-items:center}.stepper__step{gap:var(--space-xs);font-size:.8125rem;font-weight:500;color:var(--color-text-muted);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-pill);border:1px solid var(--color-border);background:var(--color-bg-subtle)}.stepper__step--active{color:var(--color-brand);background:var(--color-brand-light);border-color:var(--color-brand);font-weight:600}.stepper__step--done{color:var(--color-success);background:var(--color-success-bg);border-color:var(--color-success-border)}.stepper__num{width:18px;height:18px;border-radius:50%;background:var(--color-text-muted);color:var(--color-bg-surface);display:flex;align-items:center;justify-content:center;font-size:.6875rem;font-weight:700;flex-shrink:0}.stepper__step--active .stepper__num{background:var(--color-brand);color:var(--color-on-primary)}.stepper__step--done .stepper__num{background:var(--color-success);color:var(--color-bg-surface)}.stat-card__value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.bar-fill--purple{background:var(--color-brand)}.stat-card--blue .stat-card__icon,.stat-card--gold .stat-card__icon,.stat-card--green .stat-card__icon,.stat-card--purple .stat-card__icon,.stat-card--red .stat-card__icon,.stat-card__icon{width:32px;height:32px;border-radius:var(--radius-md);background:var(--color-brand-light);color:var(--color-brand);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-sm)}.login-aside,.login-highlight,.login-side-brand,.login-side-copy,.login-sys,.login-univ{-moz-user-select:none;user-select:none;-webkit-user-select:none}.toggle-switch{display:flex;align-items:center;gap:var(--space-sm);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.toggle-switch__input{position:absolute;opacity:0;width:0;height:0}.toggle-switch__track{position:relative;width:40px;height:22px;background:var(--color-border-strong);border-radius:var(--radius-pill);transition:background var(--tr);flex-shrink:0}.toggle-switch__thumb{position:absolute;top:3px;left:3px;width:16px;height:16px;background:#fff;border-radius:50%;transition:transform var(--tr);box-shadow:0 1px 3px rgba(0,0,0,.18)}.toggle-switch__input:checked+.toggle-switch__track{background:var(--color-brand)}.toggle-switch__input:checked+.toggle-switch__track .toggle-switch__thumb{transform:translateX(18px)}.toggle-switch__input:focus-visible+.toggle-switch__track{box-shadow:var(--focus-ring)}.toggle-switch__label{font-size:.8125rem;color:var(--color-text-secondary);font-weight:500;white-space:nowrap}.modal-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);padding:var(--space-sm) 0;border-bottom:1px solid var(--color-border);grid-column:1/-1}.modal-toggle-row:last-of-type{border-bottom:none}.modal-toggle-row__info{display:flex;flex-direction:column;gap:2px;min-width:0}.modal-toggle-row__title{font-size:.8125rem;font-weight:600;color:var(--color-text-primary)}.modal-toggle-row__desc{font-size:.75rem;color:var(--color-text-muted);line-height:1.4}.period-picker{display:flex;flex-direction:column;gap:var(--space-xs);max-height:180px;overflow-y:auto;border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-xs);background:var(--color-bg-surface)}.period-picker::-webkit-scrollbar{width:4px}.period-picker::-webkit-scrollbar-track{background:transparent}.period-picker::-webkit-scrollbar-thumb{background:var(--color-border-strong);border-radius:var(--radius-pill)}.period-option{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--tr);font-size:.8125rem;color:var(--color-text-primary);font-family:var(--font-mono)}.period-option:hover{background:var(--color-bg-hover)}.period-option--selected{background:var(--color-brand-light);color:var(--color-brand);font-weight:600}.period-option__checkbox{accent-color:var(--color-brand);width:14px;height:14px;flex-shrink:0}.period-option__label{flex:1}.bulk-import-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);margin-bottom:var(--space-md);flex-wrap:wrap}.bulk-import-desc{font-size:.8125rem;color:var(--color-text-secondary);margin:0}.bulk-import-upload-row{display:grid;grid-template-columns:auto minmax(160px,1fr) auto;align-items:center;gap:10px;width:100%;min-height:42px;padding:6px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg-surface)}.bulk-import-native-input{position:absolute;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0!important}.bulk-import-file-button{margin:0;min-height:32px;cursor:pointer}.bulk-import-file-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-text-secondary);font-size:.875rem;line-height:1.25rem}.bulk-import-submit{min-width:112px;justify-content:center}.badge--neutral{background:var(--color-bg-subtle)!important;color:var(--color-text-secondary)!important;border:1px solid var(--color-border)!important;font-family:var(--font-mono);font-size:.6875rem;font-weight:600;letter-spacing:.02em}.admin-bills-page,.admin-dashboard-page,.bills-page,.control-page,.dashboard-page,.faculty-page,.legacy-import-page,.my-bills-page,.profile-page,.settings-page,.users-page{padding:0;display:flex;flex-direction:column;gap:var(--space-lg)}.admin-bills-page>.page-header,.admin-dashboard-page>.page-header,.bills-page>.page-header,.control-page>.page-header,.dashboard-page>.page-header,.faculty-page>.page-header,.legacy-import-page>.page-header,.my-bills-page>.page-header,.profile-page>.page-header,.settings-page>.page-header,.users-page>.page-header{margin-bottom:0}.dashboard-page>.dashboard-home-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-md);padding:2px 0 4px;margin-bottom:0;border:0;border-radius:0;background:transparent;box-shadow:none}.dashboard-page>.dashboard-home-header h1{max-width:780px;margin:0;font-size:clamp(1.35rem,2vw,1.75rem);line-height:1.15}.dashboard-page>.dashboard-home-header .dashboard-muted{margin-top:6px;color:var(--color-text-secondary);font-size:.95rem}.dashboard-page>.dashboard-home-header .badge{flex:0 0 auto;max-width:260px;margin-top:4px;padding:6px 11px;white-space:normal;text-align:center;line-height:1.25}@media (max-width:768px){.dashboard-page>.dashboard-home-header{flex-direction:column;align-items:flex-start;gap:10px}.dashboard-page>.dashboard-home-header .badge{max-width:100%;margin-top:0;text-align:left}}.dashboard-layout .table-pagination{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:12px 16px;background:var(--color-bg-surface);border-top:1px solid var(--color-border)}.dashboard-layout .table-pagination__info{min-width:-moz-max-content;min-width:max-content;color:var(--color-text-secondary);font-size:.875rem;font-weight:600}.dashboard-layout .table-pagination select{flex:0 0 auto;width:auto;min-width:116px;max-width:150px;height:36px;padding:0 34px 0 12px;font-size:.875rem}.dashboard-layout .table-pagination__actions{display:flex;align-items:center;gap:8px}.dashboard-layout .table-pagination__limit{display:inline-flex;align-items:center;gap:8px;margin-left:auto;color:var(--color-text-secondary);font-size:.8125rem;font-weight:600;white-space:nowrap}.dashboard-layout .table-pagination .btn{min-width:82px;height:36px;padding:0 14px}.dashboard-layout .masters-table-filters{justify-content:flex-start;flex-wrap:wrap}.dashboard-layout .masters-table-filters .table-search-input{flex:1 1 220px;width:auto;max-width:360px}.dashboard-layout .optional-label{color:var(--color-text-muted);font-size:.78rem;font-weight:500}@media (max-width:640px){.dashboard-layout .table-pagination{justify-content:flex-start;flex-wrap:wrap}.dashboard-layout .table-pagination__limit{margin-left:0}.dashboard-layout .table-pagination__actions{width:100%}.dashboard-layout .table-pagination .btn{flex:1 1 0}}.page-header__chip{display:inline-flex;align-items:center;min-height:24px;margin:0 0 var(--space-xs)}.profile-avatar{background:var(--color-brand-light);border:1px solid rgba(143,71,0,.14);color:var(--color-brand);box-shadow:none}.faculty-doc-card-header strong,.faculty-doc-name,.profile-name{color:var(--color-text-primary)}.faculty-doc-empty,.faculty-doc-info,.faculty-doc-meta,.faculty-doc-missing,.profile-pan-row{color:var(--color-text-muted)}.pan-code,.pb-pan,.profile-pan-badge{display:inline-flex;align-items:center;min-height:22px;border-radius:var(--radius-pill);background:var(--color-bg-subtle);color:var(--color-text-secondary);border:1px solid var(--color-border);font-family:var(--font-mono);font-size:.6875rem;font-weight:600;letter-spacing:.02em;padding:2px 8px}.faculty-doc-card,.instruction-card,.profile-info-card{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:none}.profile-info-value{color:var(--color-text-primary)}.admin-tabs,.bill-tabs{gap:var(--space-sm);border-bottom:1px solid var(--color-border);margin-bottom:var(--space-lg)}.a-tab,.b-tab{min-height:38px;border-radius:var(--radius-md) var(--radius-md) 0 0;color:var(--color-text-secondary)}.a-tab.active,.b-tab.active{color:var(--color-brand);background:var(--color-brand-light);border-bottom-color:var(--color-brand)}.add-row-btn,.b-add{border:1px dashed var(--color-border-strong);background:var(--color-bg-surface);color:var(--color-text-primary);border-radius:var(--radius-md)}.add-row-btn:hover,.b-add:hover{border-color:var(--color-brand);background:var(--color-brand-light);color:var(--color-brand)}.sdiv{margin:var(--space-lg) 0 var(--space-md);padding:0 0 var(--space-sm);border-top:0;border-bottom:1px solid var(--color-border)}.sdiv-title{color:var(--color-text-primary);letter-spacing:.04em}.approval-stage-icon,.sdiv-num{background:var(--color-brand-light);color:var(--color-brand);border:1px solid rgba(143,71,0,.14)}.rate-pill{border:1px solid var(--color-border);background:var(--color-bg-surface);border-radius:var(--radius-md)}.rate-pill:hover{border-color:var(--color-border-strong);background:var(--color-bg-hover)}.rate-pill.sel{border-color:var(--color-brand);background:var(--color-brand-light)}.rate-pill-title{color:var(--color-text-primary)}.rate-pill-sub{color:var(--color-text-muted)}.doc-drop{border:1px dashed var(--color-border-strong);background:var(--color-bg-subtle);border-radius:var(--radius-lg)}.doc-drop.drag,.doc-drop:hover{border-color:var(--color-brand);background:var(--color-brand-light)}.bs-meta{background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-md);margin-bottom:var(--space-md)}.bs-mi{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-md)}.card-header,.dashboard-table-toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);min-height:54px;padding:0 0 var(--space-md);margin-bottom:var(--space-md);border-bottom:1px solid var(--color-border)}.card-header h3{color:var(--color-text-primary);font-size:.9375rem;font-weight:700;margin:0}.admin-dashboard-grid,.dashboard-chart-grid,.settings-grid{gap:var(--space-lg)}.focus-row,.month-summary-row,.status-breakdown-row,.status-pill,.system-info-grid>div{background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:var(--radius-md)}.system-info-grid>div{padding:var(--space-md)}.focus-row{padding:var(--space-sm) var(--space-md)}.focus-row b,.focus-row strong{color:var(--color-text-primary)}.focus-row span{color:var(--color-text-muted)}.um-check{display:flex;align-items:center;gap:var(--space-sm);color:var(--color-text-primary);font-size:.8125rem;font-weight:600;line-height:1.35}.um-check input[type=checkbox],table input[type=checkbox]{width:14px;height:14px;accent-color:var(--color-brand);flex-shrink:0}.legacy-clear-toggle{justify-content:flex-start;margin-top:var(--space-sm)}.legacy-clear-toggle .toggle-switch__label{white-space:normal;color:var(--color-text-primary)}.admin-bills-actions,.faculty-doc-actions,.legacy-import-actions,.settings-actions,.table-actions{align-items:center}.dashboard-layout .admin-bills-modal-section h3,.dashboard-layout .card-header h3,.dashboard-layout .card>h3,.dashboard-layout .verify-card h3{margin:0;min-height:24px;display:flex;align-items:center;color:var(--color-text-primary);font-size:.9375rem;line-height:1.35;font-weight:700;letter-spacing:0}.dashboard-layout .card>h3{margin-bottom:18px}.dashboard-layout .form-field{display:flex;min-width:0;flex-direction:column;gap:8px;margin:0}.dashboard-layout .form-field+.alert,.dashboard-layout .form-field+.btn,.dashboard-layout .form-field+.form-actions,.dashboard-layout .form-field+.form-field,.dashboard-layout .form-field+.table-toolbar,.dashboard-layout .form-field+button{margin-top:18px}.dashboard-layout .doc-drop .form-field>span,.dashboard-layout .form-field label,.dashboard-layout label.form-field>span{min-height:18px;display:flex;align-items:center;color:var(--color-text-secondary);font-size:.8125rem;line-height:1.35;font-weight:600}.dashboard-layout .admin-bills-row-verify input,.dashboard-layout .admin-bills-row-verify select,.dashboard-layout .fg input,.dashboard-layout .fg select,.dashboard-layout .fg textarea,.dashboard-layout .form-field input,.dashboard-layout .form-field select,.dashboard-layout .form-field textarea,.dashboard-layout .status-note-input,.dashboard-layout .table-pagination select,.dashboard-layout .table-search-input{width:100%;min-width:0;max-width:100%;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg-surface);color:var(--color-text-primary);font:inherit;font-size:.875rem;line-height:1.25rem;box-shadow:none;transition:border-color var(--tr),box-shadow var(--tr),background-color var(--tr)}.dashboard-layout .admin-bills-row-verify input,.dashboard-layout .admin-bills-row-verify select,.dashboard-layout .fg input,.dashboard-layout .fg select,.dashboard-layout .form-field input,.dashboard-layout .form-field select,.dashboard-layout .status-note-input,.dashboard-layout .table-pagination select,.dashboard-layout .table-search-input{height:42px;padding:0 12px}.dashboard-layout .table-pagination__limit select{flex:0 0 78px;width:78px;min-width:78px;max-width:78px;height:36px;padding:0 28px 0 10px}.dashboard-layout .form-field input[type=date],.dashboard-layout .form-field input[type=datetime-local],.dashboard-layout .form-field input[type=month],.dashboard-layout .form-field input[type=time]{padding-right:10px}.dashboard-layout .fg textarea,.dashboard-layout .form-field textarea{min-height:96px;padding:10px 12px;resize:vertical}.dashboard-layout .attendance-action-panel textarea{min-height:42px;max-height:88px}.dashboard-layout .fg input::-moz-placeholder,.dashboard-layout .fg textarea::-moz-placeholder,.dashboard-layout .form-field input::-moz-placeholder,.dashboard-layout .form-field textarea::-moz-placeholder{color:var(--color-text-muted);opacity:1}.dashboard-layout .fg input::placeholder,.dashboard-layout .fg textarea::placeholder,.dashboard-layout .form-field input::placeholder,.dashboard-layout .form-field textarea::placeholder{color:var(--color-text-muted);opacity:1}.dashboard-layout .form-field .role-check{min-height:48px;flex-direction:row;align-items:center;justify-content:flex-start;gap:12px;padding:10px 12px;margin:0;cursor:pointer;transition:border-color var(--tr),background-color var(--tr)}.dashboard-layout .form-field .role-check:hover{border-color:var(--color-border-strong);background:var(--color-bg-hover)}.dashboard-layout .form-field .role-check input[type=checkbox]{width:16px;min-width:16px;max-width:16px;height:16px;min-height:16px;padding:0;margin:0;flex:0 0 16px;border-radius:4px;box-shadow:none;accent-color:var(--color-brand)}.dashboard-layout .form-field .role-check input[type=checkbox]:focus-visible{outline:2px solid var(--color-brand);outline-offset:2px;box-shadow:none}.dashboard-layout .form-field .role-check span{min-width:0;color:var(--color-text-primary);font-size:.875rem;line-height:1.3;font-weight:600}.dashboard-layout .admin-bills-filter-grid,.dashboard-layout .admin-bills-verification-grid,.dashboard-layout .form-grid,.dashboard-layout .legacy-import-instructions,.dashboard-layout .settings-grid,.dashboard-layout .users-form-grid{align-items:start}.dashboard-layout .admin-bills-filter-grid{align-items:end}.dashboard-layout .admin-bills-filter-grid,.dashboard-layout .admin-bills-verification-grid,.dashboard-layout .form-grid,.dashboard-layout .users-form-grid{gap:18px 20px}.dashboard-layout .settings-grid{grid-template-columns:repeat(auto-fit,minmax(min(420px,100%),1fr))}@media(max-width:560px){.dashboard-layout .role-check-grid{grid-template-columns:1fr}}.dashboard-layout .settings-grid>.card{height:100%;display:flex;flex-direction:column}.dashboard-layout .settings-grid>.card form{flex:1 1 auto;display:flex;flex-direction:column}.dashboard-layout .settings-grid>.card .settings-actions,.dashboard-layout .settings-grid>.card form>.btn:last-child{margin-top:auto}.dashboard-layout .admin-bills-actions,.dashboard-layout .faculty-doc-actions,.dashboard-layout .legacy-import-actions,.dashboard-layout .settings-actions,.dashboard-layout .table-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.dashboard-layout .admin-bills-bulk-card .form-field+.form-field{margin-top:0}.dashboard-layout .admin-bills-bulk-card textarea{min-height:42px;max-height:72px}.dashboard-layout .admin-bills-bulk-card input:disabled,.dashboard-layout .admin-bills-bulk-card select:disabled,.dashboard-layout .admin-bills-bulk-card textarea:disabled{background:var(--color-bg-subtle);color:var(--color-text-muted)}.dashboard-layout .admin-bills-bulk-save{height:42px;align-self:end}@media(max-width:900px){.admin-bills-page,.admin-dashboard-page,.bills-page,.control-page,.dashboard-page,.faculty-page,.legacy-import-page,.my-bills-page,.profile-page,.settings-page,.users-page{gap:var(--space-md)}.admin-tabs,.bill-tabs,.card-header,.dashboard-table-toolbar{align-items:flex-start}.bulk-import-upload-row{grid-template-columns:1fr;align-items:stretch}.bulk-import-file-button,.bulk-import-submit{width:100%;justify-content:center}.bulk-import-file-name{padding:2px 4px;text-align:center}.dashboard-layout .admin-bills-filter-grid,.dashboard-layout .admin-bills-verification-grid,.dashboard-layout .form-grid,.dashboard-layout .settings-grid,.dashboard-layout .users-form-grid{grid-template-columns:1fr}}.bills-page{gap:24px}.bills-page>.page-header.dashboard-home-header{display:block;padding:0;margin:0;border:0;background:transparent;box-shadow:none}.bills-page>.page-header h1{font-size:26px;line-height:1.15}.bills-page>.page-header .dashboard-muted{margin-top:6px;font-size:14px;line-height:1.45}.bills-page .stats-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:0}.bills-page .stat-card{min-height:132px;padding:22px 24px;border-radius:12px}.bills-page .stat-card__label{margin-bottom:14px}.bills-page .stat-card__value{margin-bottom:12px;line-height:1}.bills-page .bill-tabs{margin:10px 0 36px;padding-bottom:0;border-bottom:1px solid var(--color-border);align-items:flex-end}.bills-page .b-add,.bills-page .b-tab,.bills-page .bill-tabs>.btn{min-height:48px;padding:0 24px;border-radius:9px 9px 0 0}.bills-page .b-tab{border:1px solid var(--color-border);border-bottom:1px solid transparent}.bills-page .b-tab.active{background:var(--color-brand-light);color:var(--color-brand);border-color:var(--color-brand);box-shadow:none}.bills-page .b-tab-num{width:30px;height:30px;background:rgba(143,71,0,.1);color:var(--color-brand)}.bills-page .b-tab.active .b-tab-num{background:rgba(143,71,0,.14)}.bills-page .b-add{border:1px dashed var(--color-border-strong);background:var(--color-bg-surface)}.bills-page .bill-form-wrap{padding:26px 28px 28px;border-radius:12px}.bills-page .stepper{flex-wrap:wrap;gap:10px;margin:0 0 28px}.bills-page .stepper__step{min-height:38px;padding:0 14px}.bills-page .sdiv{margin:0 0 22px;padding:0 0 14px}.bills-page .sdiv-title{gap:12px;font-size:14px}.bills-page .sdiv-num{width:28px;height:28px}.bills-page .form-grid{grid-template-columns:repeat(4,minmax(0,1fr));-moz-column-gap:20px;column-gap:20px;row-gap:18px;align-items:start}.bills-page .form-field{margin:0;gap:8px}.bills-page .form-grid .form-field+.form-field{margin-top:0}.bills-page .doc-drop .form-field>span,.bills-page .form-field label{min-height:18px;color:var(--color-text-primary);font-size:13px;line-height:18px;font-weight:650}.bills-page .form-field input,.bills-page .form-field select,.bills-page .form-field textarea{width:100%;min-height:50px;padding:0 14px;border:1px solid var(--color-border);border-radius:9px;background:var(--color-bg-surface);color:var(--color-text-primary);font-size:15px;line-height:50px}.bills-page .form-field input[type=date],.bills-page .form-field input[type=month],.bills-page .form-field input[type=time]{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto;line-height:normal}.bills-page .bill-searchable-picker{position:relative;width:100%}.bills-page .bill-searchable-picker__trigger{display:flex;width:100%;min-height:50px;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px 8px 14px;border:1px solid var(--color-border);border-radius:9px;background:var(--color-bg-surface);color:var(--color-text-primary);cursor:pointer;font:inherit;text-align:left}.bills-page .bill-searchable-picker__trigger span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bills-page .bill-searchable-picker__trigger span.is-placeholder{color:var(--color-text-muted)}.bills-page .bill-searchable-picker__trigger svg{flex:0 0 auto;color:var(--color-text-muted);transition:transform .18s cubic-bezier(.16,1,.3,1)}.bills-page .bill-searchable-picker__trigger:disabled{cursor:not-allowed;background:var(--color-bg-subtle);color:var(--color-text-muted)}.bills-page .bill-searchable-picker.is-open .bill-searchable-picker__trigger{border-color:var(--color-brand);box-shadow:var(--focus-ring)}.bills-page .bill-searchable-picker.is-open .bill-searchable-picker__trigger svg{transform:rotate(180deg)}.bills-page .bill-searchable-picker__menu{position:absolute;z-index:70;top:calc(100% + 7px);left:0;width:min(520px,calc(100vw - 40px));overflow:hidden;border:1px solid var(--color-border);border-radius:12px;background:var(--color-bg-surface);box-shadow:0 18px 48px rgba(24,31,38,.16)}.bills-page .bill-searchable-picker__search{position:relative;padding:10px;border-bottom:1px solid var(--color-border);background:var(--color-bg-subtle)}.bills-page .bill-searchable-picker__search svg{position:absolute;top:50%;left:23px;transform:translateY(-50%);color:var(--color-text-muted);pointer-events:none}.bills-page .bill-searchable-picker__search input{min-height:42px;padding:0 12px 0 38px;line-height:normal}.bills-page .bill-searchable-picker__count{padding:7px 12px;border-bottom:1px solid var(--color-border);color:var(--color-text-muted);font-size:11px;font-weight:700}.bills-page .bill-searchable-picker__options{max-height:280px;overflow-y:auto;overscroll-behavior:contain}.bills-page .bill-searchable-picker__options button{display:flex;width:100%;min-height:44px;align-items:center;justify-content:space-between;gap:12px;padding:9px 12px;border:0;border-bottom:1px solid var(--color-border);background:var(--color-bg-surface);color:var(--color-text-primary);cursor:pointer;font:inherit;font-size:12px;line-height:1.35;text-align:left}.bills-page .bill-searchable-picker__options button.is-selected,.bills-page .bill-searchable-picker__options button:focus-visible,.bills-page .bill-searchable-picker__options button:hover{background:var(--color-brand-light);color:var(--color-brand)}.bills-page .bill-searchable-picker__options button span{overflow-wrap:anywhere}.bills-page .bill-searchable-picker__empty{padding:20px 12px;color:var(--color-text-muted);font-size:12px;text-align:center}.bills-page .interactive-date{position:relative;width:100%}.bills-page .interactive-date__field{display:flex;width:100%;min-height:50px;align-items:center;border:1px solid var(--color-border);border-radius:9px;background:var(--color-bg-surface);color:var(--color-text-primary);overflow:hidden}.bills-page .interactive-date__field:hover{border-color:#b98a48;background:#fffdf9}.bills-page .interactive-date__field:focus-within{border-color:#8f4700;outline:3px solid rgba(143,71,0,.14)}.bills-page .interactive-date__field.is-invalid{border-color:var(--color-danger,#b4232c)}.bills-page .interactive-date__field input{min-width:0;min-height:48px;flex:1 1 auto;padding:0 12px;border:0;outline:0;background:transparent;color:inherit;font:inherit;font-size:14px}.bills-page .interactive-date__field input::-moz-placeholder{color:var(--color-text-muted)}.bills-page .interactive-date__field input::placeholder{color:var(--color-text-muted)}.bills-page .interactive-date__trigger{display:flex;width:46px;min-height:48px;flex:0 0 46px;align-items:center;justify-content:center;border:0;border-left:1px solid var(--color-border);background:transparent;color:#8f4700;cursor:pointer}.bills-page .interactive-date__trigger:hover{background:#fff6e8}.bills-page .interactive-date__trigger:focus-visible{outline:2px solid #8f4700;outline-offset:-3px}.bills-page .interactive-date__trigger svg{flex:0 0 auto;color:#8f4700}.bills-page .interactive-date__error{display:block;margin-top:5px;color:var(--color-danger,#b4232c);font-size:11px;line-height:1.3}.bills-page .interactive-date__popover{position:absolute;top:calc(100% + 7px);left:0;z-index:80;width:min(330px,calc(100vw - 36px));padding:14px;border:1px solid #d8c7ae;border-radius:14px;background:#fffdf9;box-shadow:0 18px 48px rgba(24,31,38,.16);animation:calendarReveal .18s cubic-bezier(.16,1,.3,1)}.bills-page .interactive-date__header{display:grid;grid-template-columns:38px minmax(0,1fr) 38px;gap:8px;align-items:center;margin-bottom:12px}.bills-page .interactive-date__header strong{color:#263442;font-size:14px;text-align:center}.bills-page .interactive-date__grid button,.bills-page .interactive-date__header button{display:flex;align-items:center;justify-content:center;border:0;background:transparent;color:#34495e;cursor:pointer;font:inherit}.bills-page .interactive-date__header button{width:38px;height:38px;border:1px solid #e0d4c0;border-radius:9px;background:#fff}.bills-page .interactive-date__header button:hover:not(:disabled){border-color:#b98a48;color:#8f4700}.bills-page .interactive-date__grid button:disabled,.bills-page .interactive-date__header button:disabled{cursor:not-allowed;opacity:.3}.bills-page .interactive-date__grid,.bills-page .interactive-date__weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.bills-page .interactive-date__weekdays{margin-bottom:5px}.bills-page .interactive-date__weekdays span{padding:4px 0;color:#65717f;font-size:11px;font-weight:750;text-align:center}.bills-page .interactive-date__grid button,.bills-page .interactive-date__grid>span{aspect-ratio:1;min-width:0;border-radius:9px;font-size:12px;font-weight:650}.bills-page .interactive-date__grid button:hover:not(:disabled){background:#f5e6cc;color:#7a4a0a}.bills-page .interactive-date__grid button.is-today{box-shadow:inset 0 0 0 1px #c4862a}.bills-page .interactive-date__grid button.is-selected{background:#8f4700;color:#fffdf9;box-shadow:none}.bills-page .interactive-date__footer{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px;padding-top:10px;border-top:1px solid #e7ddce}.bills-page .interactive-date__footer button{display:inline-flex;min-height:34px;align-items:center;gap:5px;padding:0 9px;border:1px solid #d8c7ae;border-radius:8px;background:#fff;color:#7a4a0a;cursor:pointer;font:inherit;font-size:11px;font-weight:750}.bills-page .interactive-date__footer button:disabled{cursor:not-allowed;opacity:.45}.bills-page .interactive-date__footer span{color:#65717f;font-size:10px;text-align:right}.bills-page .att-table .interactive-date{min-width:145px}.bills-page .att-table .interactive-date__field{min-height:40px}.bills-page .att-table .interactive-date__field input{min-height:38px;padding:0 8px;font-size:12px}.bills-page .att-table .interactive-date__trigger{width:38px;min-height:38px;flex-basis:38px}@keyframes calendarReveal{0%{opacity:0;transform:translateY(-5px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){.bills-page .interactive-date__popover{animation:none}}.bills-page .bs-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:14px;margin:0 0 20px;border:1px solid var(--color-border);border-radius:10px;background:var(--color-bg-subtle)}.bills-page .bs-mi{min-width:0;padding:12px 14px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg-surface)}.bills-page .bs-mi-lbl{margin-bottom:4px;color:var(--color-text-muted);font-size:11px;line-height:1.2;font-weight:650}.bills-page .bs-mi-val{min-width:0;color:var(--color-text-primary);font-size:13px;line-height:1.35;font-weight:750;overflow-wrap:anywhere}.bills-page .modal-footer{margin-top:20px;padding:18px 30px;border-radius:0 0 10px 10px;background:var(--color-bg-subtle);border-top:1px solid var(--color-border)}.bills-page .row-add-actions{display:flex;align-items:center;gap:12px;margin-top:12px}.bills-page .row-add-actions .add-row-btn{flex:1 1 auto;margin-top:0}.bills-page .bulk-open-btn{min-height:42px;padding:0 18px;border:1.5px solid #d4c4a8;border-radius:9px;background:#fff;color:#7a4a0a;cursor:pointer;font-size:13px;font-weight:700}.bills-page .bulk-open-btn:hover{background:#f7f3ee}.bills-page .bulk-panel{margin-top:18px;padding:18px;border:1px solid #e0d4c0;border-radius:14px;background:#f7f3ee}.bills-page .bulk-panel__header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.bills-page .bulk-panel__header h3{margin:0;color:#1f2933;font-size:15px;line-height:1.3;font-weight:800}.bills-page .bulk-panel__header p{margin:4px 0 0;color:#65717f;font-size:13px;line-height:1.4}.bills-page .bulk-panel__header-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}.bills-page .bulk-panel__mode{display:inline-flex;min-height:38px;padding:3px;border:1px solid #d4a96a;border-radius:10px;background:#fff}.bills-page .bulk-panel__close,.bills-page .bulk-panel__mode button,.bills-page .bulk-panel__primary,.bills-page .bulk-panel__secondary,.bills-page .bulk-panel__weekdays button{font:inherit;cursor:pointer}.bills-page .bulk-panel__mode button{min-width:98px;padding:0 12px;border:0;border-radius:8px;background:transparent;color:#34495e;font-size:13px;font-weight:750}.bills-page .bulk-panel__mode button.is-active{background:#f5e6cc;color:#7a4a0a}.bills-page .bulk-panel__close{width:38px;height:38px;border:1.5px solid #d4c4a8;border-radius:10px;background:#fff;color:#7a4a0a;font-size:22px;line-height:1}.bills-page .bulk-panel__mode-body{margin-top:18px}.bills-page .bill-review-summary{margin:0 0 20px;overflow:hidden;border:1px solid var(--color-border);border-radius:12px;background:var(--color-bg-surface)}.bills-page .bill-review-summary__head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 18px;border-bottom:1px solid var(--color-border);background:var(--color-bg-subtle)}.bills-page .bill-review-summary__head>div{display:flex;flex-direction:column;gap:3px}.bills-page .bill-review-summary__head span{color:var(--color-text-muted);font-size:11px;font-weight:700}.bills-page .bill-review-summary__head strong{color:var(--color-text-primary);font-size:16px}.bills-page .bill-review-summary__amount{text-align:right}.bills-page .bill-review-summary__amount strong{color:var(--color-brand);font-size:20px}.bills-page .bill-review-summary__details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0}.bills-page .bill-review-summary__details>div{min-width:0;padding:13px 18px;border-bottom:1px solid var(--color-border)}.bills-page .bill-review-summary__details>div:nth-child(odd){border-right:1px solid var(--color-border)}.bills-page .bill-review-summary__details>div:nth-last-child(-n+2){border-bottom:0}.bills-page .bill-review-summary__details dt{margin-bottom:4px;color:var(--color-text-muted);font-size:10px;font-weight:750;letter-spacing:.03em;text-transform:uppercase}.bills-page .bill-review-summary__details dd{margin:0;color:var(--color-text-primary);font-size:13px;font-weight:650;line-height:1.4;overflow-wrap:anywhere}.bills-page .bulk-panel__month-control{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px;padding:13px 14px;border:1px solid #d4c4a8;border-radius:10px;background:#fff}.bills-page .bulk-panel__month-control>div{display:flex;min-width:0;flex-direction:column;gap:3px}.bills-page .bulk-panel__month-control strong{color:#263442;font-size:13px}.bills-page .bulk-panel__month-control span{color:#65717f;font-size:12px;line-height:1.35}.bills-page .bulk-panel__month-control input{flex:0 0 190px;min-height:42px;padding:0 12px;border:1px solid #c99c5b;border-radius:9px;background:#fffdf9;color:#263442;font:inherit;font-weight:700}.bills-page .bulk-panel__date-grid,.bills-page .bulk-panel__schedule-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px;align-items:start}.bills-page .bulk-panel__field{display:flex;min-width:0;flex-direction:column;gap:7px;margin:0}.bills-page .bulk-panel__field>span{color:#34495e;font-size:12px;line-height:1.2;font-weight:750}.bills-page .bulk-panel__field input,.bills-page .bulk-panel__field select,.bills-page .bulk-panel__field textarea{width:100%;min-width:0;border:1px solid #d4c4a8;border-radius:10px;background:#fff;color:#111827;font:inherit;font-size:13px;line-height:1.25rem;outline:none;box-shadow:none;transition:border-color var(--tr),box-shadow var(--tr)}.bills-page .bulk-panel__field input,.bills-page .bulk-panel__field select{height:42px;padding:0 12px}.bills-page .bulk-panel__field textarea{min-height:88px;padding:11px 12px;resize:vertical}.bills-page .bulk-panel__field input:focus,.bills-page .bulk-panel__field select:focus,.bills-page .bulk-panel__field textarea:focus{border-color:#c4862a;box-shadow:0 0 0 3px rgba(196,134,42,.14)}.bills-page .bulk-panel__field small{color:#65717f;font-size:11px;line-height:1.2}.bills-page .bulk-panel__weekdays{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.bills-page .bulk-panel__weekdays button{min-height:34px;min-width:58px;padding:0 13px;border:1px solid #d4a96a;border-radius:999px;background:#fff;color:#34495e;font-size:13px;font-weight:750}.bills-page .bulk-panel__weekdays button.is-active{background:#f5e6cc;color:#7a4a0a}.bills-page .bulk-panel__paste-hint{display:flex;flex-wrap:wrap;gap:8px 12px;margin-top:8px;color:#65717f;font-size:12px;line-height:1.35}.bills-page .bulk-panel__invalid{color:#b42318}.bills-page .bulk-panel__divider{height:1px;margin:18px 0 14px;background:#e0d4c0}.bills-page .bulk-result{margin:0 0 16px;padding:14px;border:1px solid var(--color-border);border-radius:10px;background:var(--color-bg-surface)}.bills-page .bulk-result--success{border-color:#b5d48a;background:#f2f8ec}.bills-page .bulk-result--warning{border-color:#e6bd63;background:#fff8e8}.bills-page .bulk-result--error{border-color:#e5a4a8;background:#fff1f2}.bills-page .bulk-result__heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.bills-page .bulk-result__heading>div{display:flex;flex-direction:column;gap:3px}.bills-page .bulk-result__heading strong{color:#263442;font-size:13px}.bills-page .bulk-result__heading span{color:#586674;font-size:12px;line-height:1.4}.bills-page .bulk-result__heading button{width:30px;height:30px;border:1px solid;border-radius:8px;background:transparent;color:#65717f;cursor:pointer;font:inherit;font-size:17px}.bills-page .bulk-result__list{display:grid;gap:7px;margin:12px 0 0;padding:0;list-style:none}.bills-page .bulk-result__list li{display:grid;grid-template-columns:110px minmax(0,1fr) minmax(120px,auto);gap:10px;align-items:center;padding:9px 10px;border:1px solid rgba(180,35,44,.2);border-radius:8px;background:rgba(255,255,255,.72);color:#3f4d5a;font-size:12px}.bills-page .bulk-result__ref{color:#7a4a0a;font-weight:700;text-align:right}.bills-page .bulk-panel__section-label{margin-bottom:12px;color:#7a4a0a;font-size:11px;line-height:1.2;font-weight:850;letter-spacing:.06em}.bills-page .bulk-panel__time-pair{display:grid;grid-template-columns:minmax(0,1fr) 96px;gap:8px}.bills-page .bulk-panel__footer{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:18px;padding-top:16px;border-top:1px solid #e0d4c0}.bills-page .bulk-panel__capacity{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;color:#65717f;font-size:13px;line-height:1.35}.bills-page .bulk-panel__preview-pill{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:999px;font-size:12px;font-weight:750}.bills-page .bulk-panel__preview-pill.is-success{border:1px solid #b5d48a;background:#eaf3e0;color:#3d6b14}.bills-page .bulk-panel__preview-pill.is-warning{border:1px solid #f0c060;background:#fef3e0;color:#8a5a00}.bills-page .bulk-panel__footer-actions{display:flex;align-items:center;gap:10px}.bills-page .bulk-panel__primary,.bills-page .bulk-panel__secondary{min-height:42px;padding:0 18px;border-radius:10px;font-size:13px;font-weight:800}.bills-page .bulk-panel__secondary{border:1.5px solid #d4c4a8;background:#fff;color:#111827}.bills-page .bulk-panel__primary{border:1px solid #7a4a0a;background:#7a4a0a;color:#fff}@media(max-width:1100px){.bills-page .bs-meta,.bills-page .form-grid,.bills-page .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.bills-page .bs-meta,.bills-page .bulk-panel__date-grid,.bills-page .bulk-panel__schedule-grid,.bills-page .form-grid,.bills-page .stats-grid{grid-template-columns:1fr}.bills-page .bill-form-wrap{padding:20px}.bills-page .bulk-panel__footer,.bills-page .bulk-panel__header,.bills-page .row-add-actions{align-items:stretch;flex-direction:column}.bills-page .bulk-open-btn,.bills-page .bulk-panel__footer-actions,.bills-page .bulk-panel__header-actions,.bills-page .bulk-panel__mode,.bills-page .bulk-panel__primary,.bills-page .bulk-panel__secondary{width:100%}.bills-page .bulk-panel__mode button{flex:1 1 0}.bills-page .bulk-panel__footer-actions{flex-direction:column-reverse}.bills-page .bulk-panel__month-control{align-items:stretch;flex-direction:column}.bills-page .bulk-panel__month-control input{flex-basis:auto;width:100%}.bills-page .bulk-result__list li{grid-template-columns:1fr}.bills-page .bulk-result__ref{text-align:left}.bills-page .bill-searchable-picker__menu{width:100%}.bills-page .bill-review-summary__head{align-items:flex-start;flex-direction:column}.bills-page .bill-review-summary__amount{text-align:left}.bills-page .bill-review-summary__details{grid-template-columns:1fr}.bills-page .bill-review-summary__details>div,.bills-page .bill-review-summary__details>div:nth-child(odd),.bills-page .bill-review-summary__details>div:nth-last-child(-n+2){border-right:0;border-bottom:1px solid var(--color-border)}.bills-page .bill-review-summary__details>div:last-child{border-bottom:0}}@media(max-width:900px){.billing-window-card{grid-column:auto}.billing-period-panel .billing-purge-range,.billing-window-dates{grid-template-columns:1fr}.billing-period-arrow{min-height:auto;justify-content:flex-start}}.users-profile-link{color:#111827;font-weight:800;text-decoration:none}.users-profile-link:hover{color:#8a4b00;text-decoration:underline;text-underline-offset:3px}.user-profile-page{display:flex;flex-direction:column;gap:18px}.user-profile-actions,.user-profile-form-actions,.user-profile-subtitle,.user-profile-topline{display:flex;align-items:center;gap:10px}.user-profile-topline{justify-content:space-between}.user-profile-back{display:inline-flex;align-items:center;gap:8px;color:#516173;font-weight:750;text-decoration:none}.user-profile-back:hover{color:#8a4b00}.user-profile-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:26px;border:1px solid #d9e3ec;border-radius:8px;background:#fffefa;box-shadow:0 10px 28px rgba(15,23,42,.06)}.user-profile-kicker{margin:0 0 6px;color:#6a7a8c;font-size:12px;line-height:1.2;font-weight:850;text-transform:uppercase}.user-profile-header h1{margin:0;color:#111827;font-size:30px;line-height:1.15}.user-profile-subtitle{flex-wrap:wrap;margin-top:12px;color:#607184}.user-profile-subtitle span:not(.badge){padding-right:10px;border-right:1px solid #d7e0ea}.user-profile-stamp{min-width:190px;padding:14px;border:1px solid #d9e3ec;border-radius:8px;background:#f7fafc}.user-profile-detail span,.user-profile-stamp span{display:block;color:#6a7a8c;font-size:12px;line-height:1.25;font-weight:800;text-transform:uppercase}.user-profile-detail strong,.user-profile-stamp strong{display:block;margin-top:6px;color:#111827}.user-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.user-profile-section{padding:20px}.user-profile-form-head h2,.user-profile-section h2{margin:0;color:#111827;font-size:18px;line-height:1.25}.user-profile-section>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px;margin-top:18px}.user-profile-detail strong{overflow-wrap:anywhere}.user-profile-form{padding:22px}.user-profile-form-head{margin-bottom:18px;padding-bottom:16px;border-bottom:1px solid #d9e3ec}.user-profile-form-head p{margin:6px 0 0;color:#607184}.user-profile-form-actions{justify-content:flex-end;margin-top:20px;padding-top:16px;border-top:1px solid #d9e3ec}.user-profile-programmes,.user-profile-search-select--wide{grid-column:1/-1}.user-profile-search-select__box{position:relative}.user-profile-search-select__box input{width:100%}.user-profile-search-select__menu{position:absolute;z-index:30;top:calc(100% + 6px);right:0;left:0;max-height:260px;overflow:auto;border:1px solid #d9e3ec;border-radius:8px;background:#fffefa;box-shadow:0 16px 34px rgba(15,23,42,.14)}.user-profile-search-select__option{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:42px;padding:10px 12px;border:0;border-bottom:1px solid #edf2f7;background:transparent;color:#1f2937;text-align:left;font-size:14px;line-height:1.25;cursor:pointer}.user-profile-search-select__option.is-selected,.user-profile-search-select__option:hover{background:#f4f8fb}.user-profile-search-select__option strong{color:#0f766e;font-size:12px;font-weight:850}.user-profile-search-select__empty{padding:12px;color:#718296;font-size:13px}.user-profile-search-select__chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.user-profile-checklist{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));max-height:260px;overflow:auto;gap:8px;padding:10px;border:1px solid #d9e3ec;border-radius:8px;background:#fbfcfe}.user-profile-checklist label{display:flex;align-items:flex-start;gap:8px;min-height:36px;padding:8px;border:1px solid #e4ebf2;border-radius:8px;background:#fff;color:#1f2937;font-size:13px;line-height:1.3}.user-profile-logs{padding:0;overflow:hidden}.user-profile-log-actions{display:flex;align-items:center;gap:10px}.user-profile-log-filter{display:grid;grid-template-columns:minmax(260px,1fr) auto auto;gap:10px;padding:16px 18px;border-top:1px solid #d9e3ec}.user-profile-log-filter .form-field{margin:0}.user-profile-log-filter .btn{align-self:end;min-height:42px}.user-profile-log-list{display:flex;flex-direction:column}.user-profile-log-row{display:grid;grid-template-columns:minmax(0,1fr) 170px;gap:16px;padding:16px 18px;border-top:1px solid #d9e3ec}.user-profile-log-row strong{color:#111827}.user-profile-log-row p{margin:4px 0;color:#516173}.user-profile-log-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px;margin-top:10px}.user-profile-log-changes,.user-profile-log-facts span{min-height:38px;padding:8px 10px;border:1px solid #e0e8f0;border-radius:8px;background:#f8fafc;color:#334155;font-size:12px;line-height:1.35}.user-profile-log-changes b,.user-profile-log-facts b{display:block;margin-bottom:3px;color:#64748b;font-size:10px;line-height:1.2;text-transform:uppercase}.user-profile-log-changes{display:flex;flex-direction:column;gap:6px;margin-top:10px}.user-profile-log-changes span{color:#1f2937}.user-profile-log-technical{display:block;margin-top:10px}.user-profile-log-row span,.user-profile-log-row time{color:#718296;font-size:12px}.user-profile-log-row>div:last-child{display:flex;flex-direction:column;align-items:flex-end;gap:8px}@media(max-width:900px){.user-profile-header,.user-profile-topline{align-items:stretch;flex-direction:column}.user-profile-actions{flex-wrap:wrap}.user-profile-grid,.user-profile-log-row,.user-profile-section>div{grid-template-columns:1fr}.user-profile-log-actions,.user-profile-log-filter{align-items:stretch;grid-template-columns:1fr}.user-profile-log-row>div:last-child{align-items:flex-start}}.proof-trail-page{display:grid;gap:20px;max-width:1100px;margin:0 auto;padding:24px 24px 40px}.proof-trail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.proof-trail-header__title{margin:4px 0 0;font-size:1.35rem;font-weight:750;letter-spacing:-.025em;color:var(--color-text-primary)}.proof-trail-header__desc{margin:4px 0 0;font-size:13px;color:var(--color-text-muted);max-width:60ch;line-height:1.5}.proof-trail-header__actions{display:flex;gap:8px;align-items:center;flex-shrink:0}.proof-trail-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.proof-trail-summary-card{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border:1px solid var(--color-border);border-radius:10px;background:var(--color-bg-surface);min-height:76px}.proof-trail-summary-card__icon{display:grid;place-items:center;width:32px;height:32px;border-radius:8px;flex-shrink:0;background:var(--color-bg-subtle);color:var(--color-text-secondary)}.proof-trail-summary-card--info .proof-trail-summary-card__icon{background:var(--owner-info-bg,#edf4fa);color:var(--owner-info,#355f8a)}.proof-trail-summary-card--danger .proof-trail-summary-card__icon{background:var(--owner-danger-bg);color:var(--owner-danger)}.proof-trail-summary-card--success .proof-trail-summary-card__icon{background:var(--owner-success-bg);color:var(--owner-success)}.proof-trail-summary-card__label{font-size:10.5px;font-weight:750;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted)}.proof-trail-summary-card__value{font-size:20px;font-weight:750;color:var(--color-text-primary);line-height:1.2;margin-top:3px;letter-spacing:-.02em}.proof-trail-summary-card--danger .proof-trail-summary-card__value{color:var(--owner-danger)}.proof-trail-summary-card--success .proof-trail-summary-card__value{color:var(--owner-success)}.proof-trail-summary-card__hint{font-size:11.5px;color:var(--color-text-muted);margin-top:2px;line-height:1.3}.proof-trail-searchbar{display:flex;align-items:center;gap:8px}.proof-trail-search{position:relative;flex:1;min-width:0}.proof-trail-search__icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--color-text-muted);pointer-events:none}.proof-trail-search__input{width:100%;height:38px;padding:0 36px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg-surface);color:var(--color-text-primary);font-size:13.5px;outline:none;transition:border-color .15s}.proof-trail-search__input:focus{border-color:var(--color-brand)}.proof-trail-search__clear{position:absolute;right:10px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:22px;height:22px;border:none;border-radius:4px;background:transparent;color:var(--color-text-muted);cursor:pointer}.proof-trail-search__clear:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.proof-trail-filter-btn{position:relative}.proof-trail-filter-btn--active{border-color:var(--color-brand);color:var(--color-brand)}.proof-trail-filter-dot{position:absolute;top:6px;right:6px;width:6px;height:6px;border-radius:50%;background:var(--color-brand)}.proof-trail-filter-panel{padding:16px 18px;border:1px solid var(--color-border);border-radius:10px;background:var(--color-bg-subtle)}.proof-trail-filter-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}.proof-trail-filter-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px;padding-top:14px;border-top:1px solid var(--color-border)}.proof-trail-timeline{display:grid;gap:16px}.proof-trail-skeleton{height:52px;border-radius:8px}.proof-trail-empty{display:grid;place-items:center;gap:10px;padding:48px 24px;border:1px dashed var(--color-border);border-radius:12px;color:var(--color-text-muted);text-align:center}.proof-trail-empty strong{font-size:15px;color:var(--color-text-secondary)}.proof-trail-empty p{margin:0;font-size:13px}.proof-trail-group{display:grid;gap:2px}.proof-trail-group__date{padding:6px 0 8px;font-size:11px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--color-text-muted);border-bottom:1px solid var(--color-border);margin-bottom:4px}.proof-trail-group__entries{display:grid;border:1px solid var(--color-border);border-radius:10px;overflow:hidden;background:var(--color-bg-surface)}.proof-entry{display:grid;grid-template-columns:72px 160px minmax(0,1fr) 90px 60px;align-items:center;gap:12px;padding:11px 14px;border-bottom:1px solid var(--color-border);transition:background .12s;cursor:default}.proof-entry:last-child{border-bottom:0}.proof-entry:hover{background:var(--color-bg-subtle)}.proof-entry--failed{background:rgba(255,240,241,.25)}.proof-entry--failed:hover{background:rgba(255,240,241,.45)}.proof-entry--evidence{border-left:3px solid var(--owner-info,#355f8a)}.proof-entry__time{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.proof-entry__time>span{font-size:12px;font-weight:650;color:var(--color-text-secondary);font-variant-numeric:tabular-nums;white-space:nowrap}.proof-entry__evidence-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--owner-info,#355f8a)}.proof-entry__actor{display:flex;align-items:flex-start;gap:6px;min-width:0;flex-direction:column}.proof-entry__actor>svg{color:var(--color-text-muted);flex-shrink:0;margin-top:2px}.proof-entry__actor>span{font-size:12.5px;font-weight:650;color:var(--color-text-primary)}.proof-entry__actor>em,.proof-entry__actor>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.proof-entry__actor>em{font-size:11px;font-style:normal;color:var(--color-text-muted)}.proof-entry__action{font-size:13px;color:var(--color-text-primary);line-height:1.4}.proof-entry__record{color:var(--color-text-muted);font-size:12px}.proof-entry__status{display:flex;align-items:center;gap:5px;font-size:12px;font-weight:650;white-space:nowrap}.proof-entry__status--ok{color:var(--owner-success)}.proof-entry__status--fail{color:var(--owner-danger)}.proof-entry__view{justify-self:end;font-size:12px}.proof-trail-pagination{display:flex;align-items:center;justify-content:space-between;padding:12px 0}.proof-trail-pagination__info{font-size:13px;color:var(--color-text-muted)}.proof-trail-pagination__btns{display:flex;gap:8px}.evidence-modal-overlay{position:fixed;inset:0;z-index:1200;display:grid;place-items:center;padding:20px;background:rgba(0,0,0,.4);backdrop-filter:blur(4px)}.evidence-modal{width:100%;max-width:520px;max-height:90dvh;overflow-y:auto;border:1px solid var(--color-border);border-radius:16px;background:var(--color-bg-surface);box-shadow:0 24px 60px rgba(0,0,0,.18)}.evidence-modal__header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:20px 20px 0}.evidence-modal__badge{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:999px;background:var(--owner-info-bg,#edf4fa);color:var(--owner-info,#355f8a);font-size:11px;font-weight:750;letter-spacing:.04em;margin-bottom:8px}.evidence-modal__title{margin:0;font-size:14.5px;font-weight:700;color:var(--color-text-primary);line-height:1.4}.evidence-modal__result{display:flex;align-items:center;gap:8px;margin:14px 20px 0;padding:10px 14px;border-radius:8px;font-size:13px;font-weight:650}.evidence-modal__result--success{background:var(--owner-success-bg);color:var(--owner-success)}.evidence-modal__result--fail{background:var(--owner-danger-bg);color:var(--owner-danger)}.evidence-modal__body{padding:16px 20px;display:grid;gap:0;border-top:1px solid var(--color-border);margin-top:14px}.evidence-field{display:grid;grid-template-columns:120px minmax(0,1fr);gap:8px;align-items:baseline;padding:9px 0;border-bottom:1px solid var(--color-border);font-size:13px}.evidence-field:last-child{border-bottom:0}.evidence-field--highlight{display:flex;align-items:center;gap:7px;grid-template-columns:none;padding:10px 12px;margin:4px 0;border-radius:8px;background:var(--owner-info-bg,#edf4fa);color:var(--owner-info,#355f8a);font-size:12.5px;font-weight:650;border-bottom:0}.evidence-field__label{color:var(--color-text-muted);font-size:11.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding-top:1px}.evidence-field__value{color:var(--color-text-primary);font-weight:550;line-height:1.45}.evidence-field__value--muted{color:var(--color-text-muted);font-family:var(--font-mono);font-size:12px}.evidence-modal__footer{padding:14px 20px 20px;border-top:1px solid var(--color-border);display:flex;align-items:center;justify-content:space-between;gap:12px}.evidence-modal__seal{margin:0;font-size:11.5px;color:var(--color-text-muted);line-height:1.45;max-width:32ch}@media(max-width:900px){.proof-trail-summary{grid-template-columns:repeat(2,1fr)}.proof-entry{grid-template-columns:60px minmax(0,1fr) 70px 50px}.proof-entry__actor{display:none}}@media(max-width:640px){.proof-trail-page{padding:16px 14px 32px}.proof-trail-summary{grid-template-columns:1fr 1fr}.proof-trail-header{flex-direction:column;gap:12px}.proof-entry{grid-template-columns:60px minmax(0,1fr) 50px}.proof-entry__status{display:none}}.owner-header__actions{display:flex;align-items:center;gap:14px}.owner-updated{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:600;color:var(--color-text-muted);white-space:nowrap}.owner-updated__dot{width:7px;height:7px;border-radius:var(--radius-pill);background:var(--color-success);box-shadow:0 0 0 0 rgba(6,95,70,.45);animation:ownerPulse 2.4s ease-out infinite}@keyframes ownerPulse{0%{box-shadow:0 0 0 0 rgba(6,95,70,.4)}70%{box-shadow:0 0 0 6px rgba(6,95,70,0)}to{box-shadow:0 0 0 0 rgba(6,95,70,0)}}.owner-metrics-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.owner-metrics-bar__label{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted)}.owner-window-toggle{display:inline-flex;padding:3px;gap:2px;border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-bg-subtle)}.owner-window-toggle__btn{min-width:52px;padding:6px 14px;border:0;border-radius:var(--radius-pill);background:transparent;color:var(--color-text-secondary);font-size:13px;font-weight:650;cursor:pointer;transition:background .16s ease,color .16s ease,box-shadow .16s ease}.owner-window-toggle__btn:hover{color:var(--color-text-primary)}.owner-window-toggle__btn.is-active{background:var(--color-bg-surface);color:var(--color-brand);box-shadow:var(--shadow-card)}.owner-posture__cell{position:relative}.owner-posture__cell:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--color-border-strong)}.owner-posture__cell--healthy:before{background:var(--color-success)}.owner-posture__cell--warning:before{background:#d97706}.owner-posture__cell--danger:before{background:var(--color-danger)}.owner-posture__cell--healthy{background:linear-gradient(180deg,var(--color-success-bg),var(--color-bg-surface) 70%)}.owner-posture__cell--warning{background:linear-gradient(180deg,var(--color-warning-bg),var(--color-bg-surface) 70%)}.owner-posture__cell--danger{background:linear-gradient(180deg,var(--color-danger-bg),var(--color-bg-surface) 70%)}.owner-posture__cell span{display:flex;align-items:center;gap:7px}.owner-posture__dot{width:8px;height:8px;border-radius:var(--radius-pill);background:var(--color-border-strong);flex:0 0 auto}.owner-posture__cell--healthy .owner-posture__dot{background:var(--color-success)}.owner-posture__cell--warning .owner-posture__dot{background:#d97706}.owner-posture__cell--danger .owner-posture__dot{background:var(--color-danger)}.owner-posture__cell--danger strong{color:var(--color-danger)}.stat-card--link{display:block;position:relative;text-decoration:none;color:inherit;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.stat-card--link:hover{transform:translateY(-2px);box-shadow:var(--shadow-dropdown);border-color:var(--color-border-strong)}.stat-card__go{position:absolute;top:14px;right:14px;color:var(--color-text-muted);opacity:0;transition:opacity .16s ease,transform .16s ease}.stat-card--link:hover .stat-card__go{opacity:1;transform:translate(1px,-1px)}.stat-card--tone-healthy .stat-card__icon{background:var(--color-success-bg);color:var(--color-success)}.stat-card--tone-warning .stat-card__icon{background:var(--color-warning-bg);color:#b45309}.stat-card--tone-danger .stat-card__icon{background:var(--color-danger-bg);color:var(--color-danger)}.stat-card--tone-danger{border-left:3px solid var(--color-danger)}.stat-card--tone-warning{border-left:3px solid #d97706}.stat-card--tone-healthy{border-left:3px solid var(--color-success)}.stat-card--tone-danger .stat-card__value{color:var(--color-danger)}.empty-state--ok .empty-state__icon{display:block;color:var(--color-success);margin:0 auto 6px}.empty-state--ok .empty-state__title{color:var(--color-success)}@media (max-width:768px){.owner-header__actions{width:100%;justify-content:space-between}}.login-page{display:flex;align-items:center;justify-content:center;min-height:100dvh;padding:32px 16px;background:radial-gradient(1100px 520px at 50% -10%,rgba(143,71,0,.22),transparent 60%),linear-gradient(180deg,#101a22,#16222c 55%,#101a22)}.login-wrap{width:100%;max-width:440px;margin:auto}.login-shell{display:block;grid-template-columns:none;background:var(--color-bg-surface);border:1px solid rgba(255,255,255,.1);border-radius:20px;box-shadow:0 30px 70px rgba(0,0,0,.4);overflow:hidden}.login-aside{display:none!important}.login-card{background:transparent;border:0;border-top:4px solid var(--color-brand);border-radius:0;box-shadow:none;padding:36px 34px 34px}.login-logo{flex-direction:column;align-items:center;text-align:center;gap:12px;padding-bottom:22px;margin-bottom:24px}.login-logo-icon{width:72px;height:72px;border-radius:18px}.login-logo-copy{flex:none}.login-univ{font-size:19px;font-weight:700}.login-sys{margin-top:2px}.login-sub{margin-top:4px}.ltabs{display:flex;gap:6px;padding:5px;margin-bottom:22px;border:0;border-radius:12px;background:var(--color-bg-subtle,rgba(0,0,0,.04))}.ltab{border-radius:9px;padding:10px 12px;font-weight:600}.ltab.active{background:var(--color-brand);color:var(--color-on-primary)}.ltab.active:after{display:none}.login-card .lfield input,.login-card .lfield select{min-height:44px;border-radius:10px}.login-card .lbtn{min-height:46px;border-radius:10px;font-weight:700}@media (max-width:600px){.login-card{padding:26px 20px}.login-logo{margin-bottom:20px}}.login-wrap.login-wrap--wide{max-width:680px}.lform--register{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));-moz-column-gap:18px;column-gap:18px;row-gap:2px;align-items:start}.lform--register>.lbtn,.lform--register>.lerr,.lform--register>.linfo,.lform--register>.login-secondary-actions,.lform--register>.otp-status,.lform--register>.pan-ok,.lform--register>.registration-submit-note,.lform--register>.stepper{grid-column:1/-1}.lform--register>.lfield:has(.department-picker),.lform--register>.lfield:has(input[type=file]){grid-column:1/-1}.lform--register .stepper{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px}.lform--register .stepper__step{padding:6px 12px;border-radius:999px;font-size:12px;font-weight:600;background:var(--color-bg-subtle,rgba(0,0,0,.04));color:var(--color-text-muted);border:1px solid var(--color-border)}.lform--register .stepper__step--active{background:var(--color-brand);color:var(--color-on-primary);border-color:var(--color-brand)}.lform--register .stepper__step--done{color:var(--color-brand);border-color:var(--color-brand);background:transparent}@media (max-width:560px){.login-wrap.login-wrap--wide{max-width:440px}.lform--register{grid-template-columns:1fr}}.login-wrap{position:relative;z-index:1}.login-bg{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none}.login-bg-blob{position:absolute;border-radius:50%;filter:blur(80px);opacity:.55}.login-bg-blob--1{top:-12%;right:-6%;width:38rem;height:38rem;background:rgba(148,74,0,.22)}.login-bg-blob--1,.login-bg-blob--2{animation:loginDrift 22s ease-in-out infinite alternate}.login-bg-blob--2{bottom:-12%;left:-6%;width:32rem;height:32rem;background:rgba(247,140,60,.16);animation-delay:-6s}@keyframes loginDrift{0%{transform:translate(0) scale(1)}to{transform:translate(22px,12px) scale(1.06)}}@media (prefers-reduced-motion:reduce){.login-bg-blob{animation:none}}.lfield-input-wrap{position:relative}.lfield-input-icon{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:var(--color-text-muted);pointer-events:none}.login-card .lfield--icon .lfield-input-wrap input{padding-left:42px}.lbtn--icon{display:inline-flex;align-items:center;justify-content:center;gap:8px}.login-or{display:flex;align-items:center;gap:12px;margin:14px 0;color:var(--color-text-muted);font-size:12px;font-weight:600;letter-spacing:.06em}.login-or:after,.login-or:before{content:"";flex:1;height:1px;background:var(--color-border)}.login-card .login-register-btn{width:100%;min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:10px;border:1px solid var(--color-brand);background:transparent;color:var(--color-brand);font-weight:700;transition:background .15s ease}.login-card .login-register-btn:hover{background:rgba(148,74,0,.06)}.login-agreement{margin-top:16px;text-align:center;font-size:12px;line-height:1.5;color:var(--color-text-muted)}.file\:inline-flex::file-selector-button{display:inline-flex}.file\:h-6::file-selector-button{height:1.5rem}.file\:border-0::file-selector-button{border-width:0}.file\:bg-transparent::file-selector-button{background-color:transparent}.file\:text-xs\/relaxed::file-selector-button{font-size:.75rem;line-height:1.625}.file\:font-medium::file-selector-button{font-weight:500}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:opacity-0:after{content:var(--tw-content);opacity:0}.after\:transition-opacity:after{content:var(--tw-content);transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.hover\:bg-primary\/80:hover{background-color:rgb(148 74 0/.8)}.hover\:bg-secondary\/80:hover{background-color:rgb(78 96 115/.8)}.hover\:underline:hover{text-decoration-line:underline}.focus-visible\:outline-1:focus-visible{outline-width:1px}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus-visible\:ring-\[3px\]:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.peer:disabled~.peer-disabled\:cursor-not-allowed{cursor:not-allowed}.peer:disabled~.peer-disabled\:opacity-50{opacity:.5}.has-\[\>img\:first-child\]\:pt-0:has(>img:first-child){padding-top:0}.aria-expanded\:bg-secondary[aria-expanded=true]{--tw-bg-opacity:1;background-color:rgb(78 96 115/var(--tw-bg-opacity,1))}.data-\[size\=default\]\:h-7[data-size=default]{height:1.75rem}.data-\[size\=sm\]\:h-6[data-size=sm]{height:1.5rem}.data-\[position\=popper\]\:w-full[data-position=popper]{width:100%}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y:0.25rem}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom],.data-\[side\=left\]\:-translate-x-1[data-side=left]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[side\=left\]\:-translate-x-1[data-side=left]{--tw-translate-x:-0.25rem}.data-\[side\=right\]\:translate-x-1[data-side=right]{--tw-translate-x:0.25rem}.data-\[side\=right\]\:translate-x-1[data-side=right],.data-\[side\=top\]\:-translate-y-1[data-side=top]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[side\=top\]\:-translate-y-1[data-side=top]{--tw-translate-y:-0.25rem}.data-\[align-trigger\=true\]\:animate-none[data-align-trigger=true]{animation:none}.data-\[size\=sm\]\:gap-3[data-size=sm]{gap:.75rem}.data-\[state\=closed\]\:overflow-hidden[data-state=closed]{overflow:hidden}.data-\[variant\=line\]\:rounded-none[data-variant=line]{border-radius:0}.data-\[size\=sm\]\:py-3[data-size=sm]{padding-top:.75rem;padding-bottom:.75rem}.\*\:data-\[slot\=select-value\]\:line-clamp-1[data-slot=select-value]>*{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.\*\:data-\[slot\=select-value\]\:flex[data-slot=select-value]>*{display:flex}.\*\:data-\[slot\=select-value\]\:items-center[data-slot=select-value]>*{align-items:center}.\*\:data-\[slot\=select-value\]\:gap-1\.5[data-slot=select-value]>*{gap:.375rem}.group[data-disabled=true] .group-data-\[disabled\=true\]\:pointer-events-none{pointer-events:none}.group\/tabs-list[data-variant=line] .group-data-\[variant\=line\]\/tabs-list\:bg-transparent{background-color:transparent}.group\/card[data-size=sm] .group-data-\[size\=sm\]\/card\:px-3{padding-left:.75rem;padding-right:.75rem}.group[data-disabled=true] .group-data-\[disabled\=true\]\:opacity-50{opacity:.5}@media (min-width:640px){.sm\:max-w-sm{max-width:24rem}.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}}@media (min-width:768px){.md\:text-xs\/relaxed{font-size:.75rem;line-height:1.625}}.\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]){padding-right:0}.\[\&\>svg\]\:pointer-events-none>svg{pointer-events:none}.\[\&\>svg\]\:size-2>svg{width:.5rem;height:.5rem}.\[\&\>tr\]\:last\:border-b-0:last-child>tr{border-bottom-width:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-2\.5 svg:not([class*=size-]){width:.625rem;height:.625rem}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3 svg:not([class*=size-]){width:.75rem;height:.75rem}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3\.5 svg:not([class*=size-]){width:.875rem;height:.875rem}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:1rem;height:1rem}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_tr\:last-child\]\:border-0 tr:last-child{border-width:0}.\[\&_tr\]\:border-b tr{border-bottom-width:1px}