@font-face{font-family:Inter;font-style:normal;font-weight:300;font-display:swap;src:url(../../../fonts/inter-300.woff2) format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../../../fonts/inter-400.woff2) format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../../../fonts/inter-500.woff2) format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../../../fonts/inter-600.woff2) format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../../../fonts/inter-700.woff2) format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:800;font-display:swap;src:url(../../../fonts/inter-800.woff2) format("woff2")}:root{--bg-primary: #EAEFEF;--bg-secondary: #FAFBFB;--bg-tertiary: #D4CFC4;--bg-card: rgba(250, 251, 251, .9);--bg-dark: #0f3d3d;--accent-primary: #1D6F6F;--accent-secondary: #99C33B;--accent-gradient: linear-gradient(135deg, #1D6F6F 0%, #144e4e 100%);--accent-glow: rgba(29, 111, 111, .3);--text-primary: #1D6F6F;--text-secondary: #258585;--text-muted: #5a9e9e;--text-on-dark: #EAEFEF;--text-on-accent: #FFFFFF;--success: #99C33B;--success-glow: rgba(153, 195, 59, .3);--warning: #F9A825;--danger: #EF4444;--neutral: #D4CFC4;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 40px;--spacing-2xl: 64px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 9999px;--shadow-sm: 0 1px 3px rgba(29, 111, 111, .06), 0 1px 2px rgba(29, 111, 111, .04);--shadow-md: 0 4px 12px rgba(29, 111, 111, .08), 0 2px 4px rgba(29, 111, 111, .04);--shadow-lg: 0 12px 40px rgba(29, 111, 111, .12), 0 4px 12px rgba(29, 111, 111, .06);--shadow-xl: 0 24px 60px rgba(29, 111, 111, .16), 0 8px 24px rgba(29, 111, 111, .08);--shadow-glow: 0 8px 32px rgba(29, 111, 111, .25);--shadow-accent: 0 8px 32px rgba(153, 195, 59, .25);--font-heading: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.25rem;--font-size-xl: 1.5rem;--font-size-2xl: 2.25rem;--font-size-3xl: 3rem;--transition-fast: .15s cubic-bezier(.23, 1, .32, 1);--transition-normal: .3s cubic-bezier(.23, 1, .32, 1);--transition-slow: .4s cubic-bezier(.23, 1, .32, 1);--tint-primary-subtle: rgba(29, 111, 111, .02);--tint-primary-light: rgba(29, 111, 111, .06);--tint-primary-medium: rgba(29, 111, 111, .1);--tint-primary-strong: rgba(29, 111, 111, .14);--tint-accent-subtle: rgba(153, 195, 59, .06);--tint-accent-light: rgba(153, 195, 59, .15);--tint-accent-medium: rgba(153, 195, 59, .18);--tint-accent-strong: rgba(153, 195, 59, .25);--tint-danger-subtle: rgba(239, 68, 68, .04);--tint-danger-light: rgba(239, 68, 68, .12);--tint-danger-medium: rgba(239, 68, 68, .2);--tint-danger-border: rgba(239, 68, 68, .3);--border-color: rgba(212, 207, 196, .5);--sidebar-bg: #0f3d3d;--sidebar-text: rgba(234, 239, 239, .6);--sidebar-text-active: #EAEFEF;--sidebar-hover: rgba(255, 255, 255, .08);--sidebar-active: rgba(29, 111, 111, .5);--sidebar-border: rgba(255, 255, 255, .08);--sidebar-brand: #4dcfcf}h1,h2,h3,h4{color:var(--text-primary);font-family:var(--font-heading);line-height:1.3;margin:0 0 var(--spacing-md) 0}h1{font-size:var(--font-size-3xl);font-weight:800;letter-spacing:-2px}h2{font-size:var(--font-size-2xl);font-weight:700;letter-spacing:-1px}h3{font-size:var(--font-size-xl);font-weight:600;letter-spacing:-.3px}h4{font-size:var(--font-size-lg);font-weight:600}p{color:var(--text-secondary);margin:0 0 var(--spacing-md) 0}a{color:var(--accent-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--accent-secondary)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:14px 28px;border:none;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:600;font-family:var(--font-family);cursor:pointer;transition:all var(--transition-fast);outline:none}.btn-primary{background:var(--accent-primary);color:var(--text-on-accent);box-shadow:var(--shadow-md),inset 0 1px #ffffff1a}.btn-primary:hover{box-shadow:var(--shadow-glow),inset 0 1px #ffffff1a;transform:translateY(-2px)}.btn-secondary{background:var(--accent-secondary);color:var(--text-on-accent)}.btn-secondary:hover{opacity:.9;transform:translateY(-1px)}.btn-outline{background:transparent;border:2px solid var(--neutral);color:var(--text-primary)}.btn-outline:hover{border-color:var(--accent-primary);color:var(--accent-primary)}.btn-ghost{background:transparent;color:var(--accent-primary)}.btn-ghost:hover{background:#1d6f6f14}.btn-danger{background:var(--danger);color:var(--text-on-accent)}.btn-sm{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-xs)}.btn-lg{padding:var(--spacing-md) var(--spacing-xl);font-size:var(--font-size-base)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.input{width:100%;padding:14px 18px;background:var(--bg-secondary);border:2px solid rgba(212,207,196,.6);border-radius:var(--radius-md);color:var(--text-primary);font-size:15px;font-family:var(--font-family);transition:all var(--transition-normal);outline:none}.input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 4px #1d6f6f14}.input::placeholder{color:var(--text-muted)}select.input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236B7280' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px}textarea.input{resize:vertical;min-height:80px}.form-group{margin-bottom:var(--spacing-md)}.form-group label{display:block;margin-bottom:var(--spacing-xs);font-size:var(--font-size-sm);font-weight:500;color:var(--text-secondary)}.card{background:var(--bg-secondary);border:1px solid rgba(212,207,196,.5);border-radius:var(--radius-xl);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);transition:all .4s cubic-bezier(.23,1,.32,1)}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.card-glass{background:var(--bg-card);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(209,213,219,.3);border-radius:var(--radius-xl);padding:var(--spacing-lg);transition:all .4s cubic-bezier(.23,1,.32,1)}.table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.table th{text-align:left;padding:var(--spacing-sm) var(--spacing-md);font-weight:700;color:var(--text-on-dark);background:var(--bg-dark);font-size:11px;text-transform:uppercase;letter-spacing:2px}.table th:first-child{border-radius:var(--radius-md) 0 0 0}.table th:last-child{border-radius:0 var(--radius-md) 0 0}.table td{padding:18px var(--spacing-md);border-bottom:1px solid rgba(212,207,196,.3);color:var(--text-primary)}.table tr:hover td{background:#1d6f6f05}.chip{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:6px 14px;background:var(--accent-primary);border:none;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:500;color:var(--text-on-accent);cursor:pointer;transition:all var(--transition-fast)}.chip:hover{box-shadow:var(--shadow-glow)}.chip.soft{background:#1d6f6f1a;color:var(--accent-primary)}.chip.outline{background:transparent;border:1px solid var(--neutral);color:var(--text-secondary)}.chip.active{background:var(--accent-primary);color:var(--text-on-accent);border-color:transparent}.label{display:block;font-size:11px;font-weight:700;color:var(--accent-primary);text-transform:uppercase;letter-spacing:4px;margin-bottom:var(--spacing-xs)}.text-muted{color:var(--text-muted)}.text-secondary{color:var(--text-secondary)}.text-accent{color:var(--accent-primary)}.text-success{color:var(--success)}.text-danger{color:var(--danger)}.text-center{text-align:center}.text-right{text-align:right}.flex{display:flex}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-xs{gap:var(--spacing-xs)}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}.gap-lg{gap:var(--spacing-lg)}.mt-sm{margin-top:var(--spacing-sm)}.mt-md{margin-top:var(--spacing-md)}.mt-lg{margin-top:var(--spacing-lg)}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:var(--spacing-lg)}.p-sm{padding:var(--spacing-sm)}.p-md{padding:var(--spacing-md)}.p-lg{padding:var(--spacing-lg)}.w-full{width:100%}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-up{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fade-in var(--transition-normal)}.animate-slide-up{animation:slide-up var(--transition-normal)}body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:9999;opacity:.02;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");background-repeat:repeat;background-size:256px}*{margin:0;padding:0;box-sizing:border-box}input,select,textarea,button{font-family:inherit}html,body{overflow-x:hidden}body{font-family:var(--font-family);background:var(--bg-primary);color:var(--text-primary);min-height:100vh;-webkit-font-smoothing:antialiased}.loading-container.svelte-12qhfyh{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;gap:1rem;color:var(--text-secondary)}.spinner.svelte-12qhfyh{width:40px;height:40px;border:3px solid var(--neutral);border-top-color:var(--accent-primary);border-radius:50%;animation:svelte-12qhfyh-spin 1s linear infinite}@keyframes svelte-12qhfyh-spin{to{transform:rotate(360deg)}}.login-container.svelte-12qhfyh{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:1rem}.login-box.svelte-12qhfyh{background:var(--bg-secondary);padding:var(--spacing-xl);border-radius:var(--radius-xl);width:100%;max-width:400px;box-shadow:var(--shadow-lg)}.login-box.svelte-12qhfyh h1:where(.svelte-12qhfyh){text-align:center;margin-bottom:var(--spacing-lg);color:var(--accent-primary);font-size:var(--font-size-2xl)}.form-group.svelte-12qhfyh{margin-bottom:var(--spacing-md)}.form-group.svelte-12qhfyh label:where(.svelte-12qhfyh){display:block;margin-bottom:var(--spacing-xs);font-size:var(--font-size-sm);font-weight:500;color:var(--text-secondary)}.form-group.svelte-12qhfyh input:where(.svelte-12qhfyh){width:100%;padding:.75rem;border:1px solid var(--neutral);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--text-primary);font-size:var(--font-size-base);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.form-group.svelte-12qhfyh input:where(.svelte-12qhfyh):focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-glow)}.error.svelte-12qhfyh{color:var(--danger);font-size:var(--font-size-sm);margin-bottom:var(--spacing-md)}.no-access.svelte-12qhfyh{color:var(--text-secondary);text-align:center;margin-bottom:var(--spacing-lg)}button[type=submit].svelte-12qhfyh{width:100%;padding:14px;background:var(--accent-primary);color:var(--text-on-accent);border:none;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;transition:box-shadow var(--transition-fast),transform var(--transition-fast)}button[type=submit].svelte-12qhfyh:hover:not(:disabled){box-shadow:var(--shadow-glow);transform:translateY(-1px)}button[type=submit].svelte-12qhfyh:disabled{opacity:.5;cursor:not-allowed}.app-layout.svelte-12qhfyh{display:flex;min-height:100vh}.sidebar.svelte-12qhfyh{width:240px;min-width:240px;background:var(--sidebar-bg);color:var(--sidebar-text-active);display:flex;flex-direction:column;transition:width var(--transition-normal),min-width var(--transition-normal);z-index:100}.sidebar.collapsed.svelte-12qhfyh{width:64px;min-width:64px}.sidebar-header.svelte-12qhfyh{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md);min-height:56px}.brand.svelte-12qhfyh{font-family:var(--font-heading);font-size:var(--font-size-lg);font-weight:700;color:var(--sidebar-brand);white-space:nowrap;overflow:hidden}.collapse-btn.svelte-12qhfyh{width:32px;height:32px;border:none;background:var(--sidebar-hover);color:var(--sidebar-text-active);border-radius:var(--radius-sm);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);flex-shrink:0}.collapse-btn.svelte-12qhfyh:hover{background:#ffffff26}.sidebar.collapsed.svelte-12qhfyh .collapse-btn:where(.svelte-12qhfyh){transform:rotate(180deg)}.sidebar-nav.svelte-12qhfyh{flex:1;padding:var(--spacing-sm);display:flex;flex-direction:column;gap:2px}.nav-item.svelte-12qhfyh{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);color:var(--sidebar-text);text-decoration:none;font-size:var(--font-size-sm);font-weight:500;transition:all var(--transition-fast);white-space:nowrap;overflow:hidden}.nav-item.svelte-12qhfyh:hover{background:var(--sidebar-hover);color:var(--sidebar-text-active)}.nav-item.active.svelte-12qhfyh{background:var(--sidebar-active);color:var(--sidebar-brand)}.sidebar.collapsed.svelte-12qhfyh .nav-item:where(.svelte-12qhfyh){justify-content:center;padding:var(--spacing-sm)}.sidebar-footer.svelte-12qhfyh{padding:var(--spacing-md);border-top:1px solid var(--sidebar-border);display:flex;align-items:center;gap:var(--spacing-sm)}.user-info.svelte-12qhfyh{flex:1;min-width:0;overflow:hidden}.user-name.svelte-12qhfyh{display:block;font-size:var(--font-size-sm);font-weight:500;color:var(--text-on-dark);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-role.svelte-12qhfyh{display:block;font-size:var(--font-size-xs);color:var(--sidebar-text);text-transform:capitalize}.logout-btn.svelte-12qhfyh{width:32px;height:32px;border:none;background:var(--sidebar-hover);color:var(--sidebar-text-active);border-radius:var(--radius-sm);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);flex-shrink:0}.logout-btn.svelte-12qhfyh:hover{background:var(--tint-danger-medium);color:var(--danger)}.main-area.svelte-12qhfyh{flex:1;min-width:0;display:flex;flex-direction:column}main.svelte-12qhfyh{flex:1;padding:var(--spacing-xl)}.topbar.svelte-12qhfyh{display:flex;align-items:center;padding:var(--spacing-sm) var(--spacing-md);background:var(--sidebar-bg);color:var(--sidebar-text-active);min-height:48px}.hamburger.svelte-12qhfyh{width:36px;height:36px;border:none;background:transparent;color:var(--text-on-dark);cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm)}.hamburger.svelte-12qhfyh:hover{background:#ffffff1a}.topbar-brand.svelte-12qhfyh{font-family:var(--font-heading);font-size:var(--font-size-base);font-weight:700;color:var(--sidebar-brand);margin-left:var(--spacing-sm)}.topbar-spacer.svelte-12qhfyh{flex:1}.mobile-overlay.svelte-12qhfyh{display:none}.close-btn.svelte-12qhfyh{width:32px;height:32px;border:none;background:var(--sidebar-hover);color:var(--sidebar-text-active);border-radius:var(--radius-sm);cursor:pointer;display:flex;align-items:center;justify-content:center}.desktop-only.svelte-12qhfyh{display:flex}.mobile-only.svelte-12qhfyh{display:none!important}@media(max-width:767px){.desktop-only.svelte-12qhfyh{display:none!important}.mobile-only.svelte-12qhfyh{display:flex!important}.sidebar.svelte-12qhfyh{position:fixed;top:0;left:0;bottom:0;width:260px;min-width:260px;transform:translate(-100%);transition:transform var(--transition-normal);z-index:200}.sidebar.mobile-open.svelte-12qhfyh{transform:translate(0)}.sidebar.collapsed.svelte-12qhfyh{width:260px;min-width:260px}.sidebar.collapsed.svelte-12qhfyh .nav-item:where(.svelte-12qhfyh){justify-content:flex-start;padding:var(--spacing-sm) var(--spacing-md)}.mobile-overlay.svelte-12qhfyh{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:150;animation:svelte-12qhfyh-fade-in .15s ease}main.svelte-12qhfyh{padding:var(--spacing-md)}}@keyframes svelte-12qhfyh-fade-in{0%{opacity:0}to{opacity:1}}
