@font-face{font-family:jf-flat;src:url(/assets/jf-flat/JFFlat-Regular.eot);src:url(/assets/jf-flat/JFFlat-Regular.eot?#iefix) format("embedded-opentype"),url(/assets/jf-flat/JFFlat-Regular.woff2) format("woff2"),url(/assets/jf-flat/JFFlat-Regular.woff) format("woff"),url(/assets/jf-flat/JFFlat-Regular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}:root{--brand-forest-500: #428177;--brand-forest-700: #054239;--brand-forest-900: #002623;--brand-wheat-100: #edebe0;--brand-wheat-400: #b9a779;--brand-wheat-600: #988561;--brand-umber-500: #6b1f2a;--brand-umber-700: #4a151e;--brand-umber-900: #260f14;--brand-charcoal-50: #ffffff;--brand-charcoal-500: #3d3a3b;--brand-charcoal-900: #161616;--font-family-primary: "jf-flat", Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-size-xs: .75rem;--line-height-xs: 1rem;--font-weight-xs: 400;--font-size-sm: .875rem;--line-height-sm: 1.25rem;--font-weight-sm: 400;--font-size-base: 1rem;--line-height-base: 1.5rem;--font-weight-base: 400;--font-size-lg: 1.125rem;--line-height-lg: 1.75rem;--font-weight-lg: 400;--font-size-xl: 1.25rem;--line-height-xl: 1.75rem;--font-weight-xl: 500;--font-size-2xl: 1.5rem;--line-height-2xl: 2rem;--font-weight-2xl: 600;--font-size-3xl: 1.875rem;--line-height-3xl: 2.25rem;--font-weight-3xl: 600;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--font-weight-light: 300;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--background: var(--brand-charcoal-50);--background-login: var(--brand-wheat-100);--foreground: var(--brand-charcoal-900);--card: var(--brand-charcoal-50);--card-foreground: var(--brand-charcoal-900);--popover: var(--brand-charcoal-50);--popover-foreground: var(--brand-charcoal-900);--primary: var(--brand-forest-700);--primary-foreground: var(--brand-charcoal-50);--accent: var(--brand-forest-500);--accent-foreground: var(--brand-charcoal-50);--success: var(--brand-forest-500);--secondary: var(--brand-wheat-100);--secondary-foreground: var(--brand-charcoal-900);--muted: var(--brand-wheat-100);--muted-foreground: var(--brand-charcoal-500);--destructive: var(--brand-umber-500);--destructive-foreground: var(--brand-charcoal-50);--border: #d4cbb8;--border-color: var(--border);--input: #d4cbb8;--ring: var(--brand-forest-500);--chart-pending: var(--brand-wheat-400);--chart-approve: var(--brand-forest-500);--chart-rejected: var(--brand-umber-500);--chart-completed: var(--brand-forest-700);--chart-transfer: var(--brand-wheat-600);--chart-active: var(--brand-forest-500);--chart-inactive: var(--brand-charcoal-500);--chart-neutral: var(--brand-charcoal-500);--chart-vip: var(--brand-forest-500);--chart-citizen: var(--brand-wheat-600);--chart-vip-fill: rgba(66, 129, 119, .18);--chart-citizen-fill: rgba(152, 133, 97, .18);--sidebar: var(--brand-forest-900);--sidebar-foreground: var(--brand-wheat-100);--sidebar-primary: var(--brand-forest-500);--sidebar-primary-foreground: var(--brand-charcoal-50);--sidebar-accent: var(--brand-forest-700);--sidebar-accent-foreground: var(--brand-wheat-100);--sidebar-border: var(--brand-forest-700);--sidebar-ring: var(--brand-wheat-400);--sidebar-icon: var(--brand-wheat-400);--spacing-0: 0;--spacing-1: .25rem;--spacing-2: .5rem;--spacing-3: .75rem;--spacing-4: 1rem;--spacing-5: 1.25rem;--spacing-6: 1.5rem;--spacing-7: 1.75rem;--spacing-8: 2rem;--spacing-10: 2.5rem;--spacing-12: 3rem;--spacing-16: 4rem;--spacing-20: 5rem;--spacing-24: 6rem;--spacing-xs: var(--spacing-1);--spacing-sm: var(--spacing-2);--spacing-md: var(--spacing-4);--spacing-lg: var(--spacing-6);--spacing-xl: var(--spacing-8);--spacing-2xl: var(--spacing-12);--spacing-3xl: var(--spacing-16);--radius-none: 0;--radius-sm: .125rem;--radius-base: .25rem;--radius-md: .375rem;--radius-lg: .5rem;--radius-xl: .75rem;--radius-2xl: 1rem;--radius-3xl: 1.5rem;--radius-full: 9999px;--radius: var(--radius-lg);--border-radius-sm: var(--radius-sm);--border-radius-md: var(--radius-md);--border-radius-lg: var(--radius-lg);--border-radius-xl: var(--radius-xl);--border-radius-full: var(--radius-full);--shadow-sm: 0 1px 2px 0 rgba(0, 38, 35, .06);--shadow-base: 0 1px 3px 0 rgba(0, 38, 35, .08), 0 1px 2px 0 rgba(0, 38, 35, .04);--shadow-md: 0 4px 6px -1px rgba(0, 38, 35, .08), 0 2px 4px -1px rgba(0, 38, 35, .04);--shadow-lg: 0 10px 15px -3px rgba(0, 38, 35, .1), 0 4px 6px -2px rgba(0, 38, 35, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 38, 35, .1), 0 10px 10px -5px rgba(0, 38, 35, .04);--shadow-xs: var(--shadow-sm);--brand-wheat-alpha-24: #baa97c3d;--brand-wheat-alpha-28: #baa97c47;--brand-wheat-alpha-33: #baa97c54;--brand-wheat-alpha-4d: #baa97c4d;--brand-wheat-surface: color-mix(in srgb, var(--brand-wheat-400) 10%, transparent);--brand-wheat-surface-soft: color-mix(in srgb, var(--brand-wheat-400) 5%, transparent);--focus-ring-color: var(--brand-wheat-alpha-24);--focus-ring: 0 0 0 3px var(--focus-ring-color);--focus-ring-sm: 0 0 0 2px var(--focus-ring-color);--focus-ring-lg: 0 0 0 4px var(--focus-ring-color);--focus-ring-soft: 0 0 0 .2rem var(--focus-ring-color);--focus-outline: 2px solid var(--brand-wheat-alpha-4d);--focus-shadow-sm: 0 2px 4px var(--brand-wheat-alpha-33);--focus-shadow-md: 0 2px 8px var(--brand-wheat-alpha-4d);--focus-shadow-lg: 0 4px 12px var(--brand-wheat-alpha-4d);--accent-focus-ring: var(--focus-ring-color);--success-light: var(--chart-vip-fill);--destructive-light: rgba(107, 31, 42, .12);--breakpoint-sm: 640px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--breakpoint-xl: 1280px;--breakpoint-2xl: 1536px;--transition-default: all .2s cubic-bezier(.4, 0, .2, 1);--transition-slow: all .3s cubic-bezier(.4, 0, .2, 1);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .25s cubic-bezier(.4, 0, .2, 1);--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070;--sidebar-width: 260px;--sidebar-collapsed-width: 4rem;--header-height: auto;--header-padding: 1.5rem;--color-primary: var(--accent);--color-primary-hover: var(--brand-forest-700);--color-primary-light: var(--muted);--color-primary-dark: var(--brand-forest-900);--color-success: var(--success);--color-warning: var(--brand-wheat-600);--color-info: var(--accent);--color-danger: var(--destructive);--color-background: var(--background);--color-background-secondary: var(--secondary);--color-background-tertiary: var(--muted);--color-text-primary: var(--foreground);--color-text-secondary: var(--muted-foreground);--color-text-tertiary: var(--muted-foreground);--color-text-inverse: var(--primary-foreground);--color-border: var(--border);--color-border-light: var(--brand-wheat-100);--color-border-dark: var(--brand-wheat-400);--font-family-base: var(--font-family-primary);--font-family-heading: var(--font-family-primary);--font-family-mono: "Courier New", monospace;--font-size-4xl: 2.25rem;--border-width: 1px;--border-width-thick: 2px}.dark,[data-theme=dark]{--background: var(--brand-charcoal-900);--foreground: var(--brand-wheat-100);--card: #1e1e1e;--card-foreground: var(--brand-wheat-100);--popover: #1e1e1e;--popover-foreground: var(--brand-wheat-100);--primary: var(--brand-forest-500);--primary-foreground: var(--brand-charcoal-50);--secondary: #2a2a2a;--secondary-foreground: var(--brand-wheat-100);--muted: #2a2a2a;--muted-foreground: var(--brand-wheat-400);--accent: var(--brand-forest-500);--accent-foreground: var(--brand-charcoal-50);--success: var(--brand-forest-500);--destructive: var(--brand-umber-500);--destructive-foreground: var(--brand-wheat-100);--border: #3d3a3b;--border-color: var(--border);--input: #3d3a3b;--ring: var(--brand-forest-500);--sidebar: var(--brand-forest-900);--sidebar-foreground: var(--brand-wheat-100);--sidebar-primary: var(--brand-forest-500);--sidebar-primary-foreground: var(--brand-charcoal-50);--sidebar-accent: var(--brand-forest-700);--sidebar-accent-foreground: var(--brand-wheat-100);--sidebar-border: var(--brand-forest-700);--sidebar-ring: var(--brand-wheat-400);--sidebar-icon: var(--brand-wheat-400);--color-primary: var(--accent);--color-primary-hover: var(--brand-wheat-400);--color-primary-light: var(--muted);--color-primary-dark: var(--brand-forest-700);--color-success: var(--success);--color-warning: var(--brand-wheat-600);--color-info: var(--accent);--color-danger: var(--destructive);--color-background: var(--background);--color-background-secondary: var(--secondary);--color-background-tertiary: var(--muted);--color-text-primary: var(--foreground);--color-text-secondary: var(--muted-foreground);--color-text-tertiary: var(--muted-foreground);--color-text-inverse: var(--primary-foreground);--color-border: var(--border);--color-border-light: var(--muted);--color-border-dark: var(--border)}@media (prefers-reduced-motion: reduce){:root{--transition-default: none;--transition-slow: none;--transition-fast: none;--transition-base: none}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:rgba(0,0,0,0)}body{margin:0;font-family:var(--font-family-primary, var(--font-family-base));font-size:var(--font-size-base);font-weight:var(--font-weight-normal);line-height:var(--line-height-base);color:var(--foreground);background-color:var(--background);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6,p,ul,ol,dl,blockquote,pre,figure,hr{margin:0}ul,ol{padding-left:0;list-style:none}a{color:var(--primary);text-decoration:none;transition:var(--transition-default, var(--transition-base))}img{max-width:100%;height:auto;display:block}button{font-family:inherit;font-size:inherit;line-height:inherit;margin:0;padding:0;border:none;background:none;cursor:pointer}input,textarea,select{font-family:inherit;font-size:inherit;line-height:inherit;margin:0}table{border-collapse:collapse;border-spacing:0}:focus-visible{outline:2px solid var(--ring);outline-offset:2px}body{margin-top:0!important;position:static!important;width:auto!important;height:auto!important}.login-page-wrapper{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:40px 20px;position:relative}.guest-switchers{position:absolute;top:20px;inset-inline-end:20px;display:flex;align-items:center;gap:12px}.theme-switcher-guest{display:flex;gap:2px;background:var(--muted);border-radius:8px;padding:4px;box-shadow:var(--shadow-sm)}.theme-switcher-guest .theme-link{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:6px;text-decoration:none;color:var(--muted-foreground);transition:background .2s,color .2s}.theme-switcher-guest .theme-link:hover{background:var(--border);color:var(--foreground)}.theme-switcher-guest .theme-link.active{background:var(--background);color:var(--accent)}.theme-switcher-guest .theme-link svg,.theme-switcher-guest .theme-link i[data-lucide]{width:20px;height:20px}.locale-switcher-guest{display:flex;gap:2px;background:var(--muted);border-radius:8px;padding:4px;box-shadow:var(--shadow-sm)}.locale-switcher-guest .locale-link{padding:8px 14px;border-radius:6px;font-size:.875rem;font-weight:500;text-decoration:none;color:var(--muted-foreground);transition:background .2s,color .2s}.locale-switcher-guest .locale-link:hover{background:var(--border);color:var(--foreground)}.locale-switcher-guest .locale-link.active{background:var(--background);color:var(--accent)}.login-page-container{display:grid;grid-template-columns:1fr 1fr;gap:60px;max-width:1200px;width:100%;align-items:center}.login-logo-section{display:flex;align-items:center;justify-content:center;padding:40px}.login-logo-content{text-align:center}.login-form-section{padding:40px}.login-form-wrapper{width:100%;max-width:450px}.login-container{background:var(--card);border-radius:16px;border:1px solid var(--border);padding:36px;width:100%}.login-title{font-size:24px;font-weight:700;color:#111827;margin-bottom:8px;letter-spacing:-.5px}html[dir=rtl] .login-title{text-align:right}.login-subtitle{font-size:14px;color:#6b7280;padding-bottom:20px;margin-bottom:20px;border-bottom:1px solid var(--border)}html[dir=rtl] .login-subtitle{text-align:right}.login-form{display:flex;flex-direction:column;gap:1.25rem}.login-form .form-group{display:flex;flex-direction:column;gap:.5rem;margin-bottom:0}.login-form label{font-size:.875rem;font-weight:500;color:#374151}html[dir=rtl] .login-form label{text-align:right}.login-form .input-wrapper{position:relative}.login-form input{width:100%;padding:.75rem 2.75rem .75rem 1rem;border:1px solid #d1d5db;border-radius:.5rem;font-size:.875rem;background:#fff;color:#111827;transition:all .2s}html[dir=rtl] .login-form input{padding-right:1rem;padding-left:2.75rem;text-align:right}.login-form input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #a418721a;outline:none}.login-form input::placeholder{color:#9ca3af}.login-form .input-icon{position:absolute;right:1rem;top:50%;transform:translateY(-50%);color:#9ca3af;pointer-events:none}html[dir=rtl] .login-form .input-icon{right:auto;left:1rem}.login-btn{width:100%;padding:.75rem 1.5rem;background:var(--accent);color:#fff;border:none;border-radius:.5rem;font-size:.875rem;font-weight:500;transition:background .2s;cursor:pointer;margin-top:.5rem}.login-btn:hover{background:#b8a77a}.login-btn:active{transform:translateY(1px)}.forgot-password-link{color:var(--accent);font-size:.875rem;font-weight:500;text-decoration:none;transition:color .2s}.forgot-password-link:hover{color:#8e135d;text-decoration:underline}.login-error{background:#fee2e2;color:#991b1b;padding:12px 16px;border-radius:8px;margin-bottom:20px;font-size:14px;border-left:3px solid #ef4444}html[dir=rtl] .login-error{border-left:none;border-right:3px solid #ef4444;text-align:right}.login-success{background:#dcfce7;color:#166534;padding:12px 16px;border-radius:8px;margin-bottom:20px;font-size:14px;border-left:3px solid var(--success)}html[dir=rtl] .login-success{border-left:none;border-right:3px solid var(--success);text-align:right}.login-background{background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;display:flex;align-items:center;justify-content:center;padding:40px 20px}.login-card{background:#fff;border-radius:24px;box-shadow:0 20px 60px #00000026;overflow:hidden;max-width:1100px;width:100%;display:grid;grid-template-columns:1fr 1.2fr}@media (max-width: 968px){.login-card{grid-template-columns:1fr}}.login-left{padding:60px 50px;display:flex;flex-direction:column;justify-content:center;background:#fff}.login-right{background:linear-gradient(135deg,#a41872f2,#8e135df2);padding:60px 50px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.login-right:before{content:"";position:absolute;top:-50%;right:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%)}.login-logo-container{position:relative;z-index:1;text-align:center}.login-logo-container img{max-width:300px;filter:brightness(0) invert(1)}.divider{display:flex;align-items:center;text-align:center;margin:24px 0}.divider:before,.divider:after{content:"";flex:1;border-bottom:1px solid var(--border)}.divider span{padding:0 12px;color:#6b7280;font-size:14px}.login-aside-logo{position:relative;z-index:1}.login-aside-logo img{max-width:400px;height:auto}@media (max-width: 968px){.login-page-container{grid-template-columns:1fr;gap:40px;max-width:500px}.login-logo-section{padding:20px;order:2}.login-form-section{padding:1rem}.login-container{padding:36px 28px}}@media (max-width: 768px){.login-page-wrapper{padding:1rem}.login-container{padding:2rem}.login-subtitle{font-size:.875rem}.login-form{gap:1rem}}@media (max-width: 640px){.login-page-wrapper{padding:20px 16px}.login-container{padding:32px 24px}.login-title{font-size:1.5rem}.login-subtitle{font-size:.875rem}}
