@import"https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;1,9..40,400&family=Outfit:wght@400;500;600;700&display=swap";:root{--font-body: "DM Sans", system-ui, sans-serif;--font-display: "Outfit", system-ui, sans-serif;--color-primary: #1e3a5f;--color-primary-dark: #2d5a8e;--color-primary-light: #c5d9ee;--color-primary-contrast: #ffffff;--color-accent: #f5d800;--color-success: #4db848;--color-success-light: #d2f0bf;--color-sidebar-bg: #1e3a5f;--color-sidebar-text: #8ab4d4;--color-sidebar-text-active: #ffffff;--color-sidebar-active-bg: rgba(255, 255, 255, .085);--color-sidebar-active-border: #f5d800;--color-sidebar-hover: rgba(255, 255, 255, .06);--color-bg: #f0f4f8;--color-surface: #ffffff;--color-border: #e2e8f0;--color-text: #1a2740;--color-text-muted: #64748b;--color-text-subtle: #94a3b8;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 20px;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .06), 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 4px 12px rgba(0, 0, 0, .08), 0 2px 4px rgba(0, 0, 0, .04);--shadow-lg: 0 10px 30px rgba(0, 0, 0, .1), 0 4px 8px rgba(0, 0, 0, .06);--sidebar-width: 240px;--sidebar-collapsed-width: 64px;--topbar-height: 60px;--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .3s ease;--z-overlay: 50}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:15px;-webkit-text-size-adjust:100%}body{font-family:var(--font-body);color:var(--color-text);background-color:var(--color-bg);line-height:1.6;font-weight:400;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#app{min-height:100vh;display:flex;flex-direction:column}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:600;line-height:1.3;color:var(--color-text)}.sidebar{position:fixed;top:0;left:0;height:100vh;width:var(--sidebar-width);background:var(--color-sidebar-bg);display:flex;flex-direction:column;z-index:100;transition:width var(--transition-slow);overflow:hidden;box-shadow:2px 0 8px #0000001f}.sidebar.is-collapsed{width:var(--sidebar-collapsed-width)}.sidebar-brand{display:flex;align-items:center;gap:12px;padding:0 18px;height:var(--topbar-height);border-bottom:1px solid rgba(255,255,255,.06);flex-shrink:0;overflow:hidden}.sidebar-brand-icon{width:28px;height:28px;background:var(--color-accent);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#1e3a5f;font-size:14px}.sidebar-logo-img{max-height:34px;max-width:150px;object-fit:contain;flex-shrink:0;transition:max-width var(--transition-slow),max-height var(--transition-slow),width var(--transition-slow),height var(--transition-slow)}.sidebar.is-collapsed .sidebar-logo-img{max-width:32px;max-height:32px;width:32px;height:32px}.sidebar-brand-text{font-family:var(--font-display);font-size:15px;font-weight:700;color:#fff;white-space:nowrap;opacity:1;transition:opacity var(--transition-slow)}.sidebar.is-collapsed .sidebar-brand-text{opacity:0;pointer-events:none}.sidebar-nav{flex:1;overflow-y:auto;overflow-x:hidden;padding:12px 0;scrollbar-width:none}.sidebar-nav::-webkit-scrollbar{display:none}.sidebar-section-label{font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--color-sidebar-text);padding:16px 20px 6px;opacity:.5;white-space:nowrap;transition:opacity var(--transition-slow)}.sidebar.is-collapsed .sidebar-section-label{opacity:0}.sidebar-item{display:flex;align-items:center;gap:12px;padding:10px 20px;cursor:pointer;color:var(--color-sidebar-text);text-decoration:none;border-left:3px solid transparent;transition:all var(--transition-fast);white-space:nowrap;min-height:44px;font-size:14px;font-weight:500}.sidebar-item:hover{background:var(--color-sidebar-hover);color:#fff}.sidebar-item.router-link-exact-active,.sidebar-item.is-active{background:var(--color-sidebar-active-bg);border-left-color:var(--color-sidebar-active-border);color:var(--color-sidebar-text-active);font-weight:600}.sidebar-item-icon{font-size:16px;flex-shrink:0;width:20px;text-align:center}.sidebar-item-label{opacity:1;transition:opacity var(--transition-slow)}.sidebar.is-collapsed .sidebar-item-label{opacity:0;pointer-events:none}.sidebar-section-group-label{display:flex;align-items:center;gap:12px;font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--color-sidebar-text);padding:16px 20px 6px;opacity:.5;white-space:nowrap;transition:opacity var(--transition-slow);pointer-events:none;-webkit-user-select:none;user-select:none}.sidebar.is-collapsed .sidebar-section-group-label{opacity:0}.sidebar-item--child{padding-left:44px;font-size:13px}.sidebar.is-collapsed .sidebar-item--child{padding-left:20px}.sidebar-footer{padding:12px;border-top:1px solid rgba(255,255,255,.06);flex-shrink:0}.sidebar-toggle{display:flex;align-items:center;justify-content:center;width:100%;height:36px;background:#ffffff0d;border:none;border-radius:var(--radius-sm);color:var(--color-sidebar-text);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast);font-size:16px}.sidebar-toggle:hover{background:#ffffff1a;color:#fff}.topbar{position:fixed;top:0;right:0;left:var(--sidebar-width);height:var(--topbar-height);background:var(--color-surface);border-bottom:1px solid var(--color-border);display:flex;align-items:center;justify-content:space-between;padding:0 24px;z-index:90;transition:left var(--transition-slow);box-shadow:0 1px 4px #00000014}.topbar.sidebar-collapsed{left:var(--sidebar-collapsed-width)}.topbar-left{display:flex;align-items:center;gap:16px}.topbar-title{font-family:var(--font-display);font-size:16px;font-weight:600;color:var(--color-text)}.topbar-breadcrumb{flex:1;min-width:0;padding:0 16px;overflow:hidden}@media (max-width: 767px){.topbar-breadcrumb{display:none}}.topbar-right{display:flex;align-items:center;gap:12px}.topbar-user{display:flex;align-items:center;gap:10px;cursor:pointer;padding:6px 10px;border-radius:var(--radius-md);transition:background var(--transition-fast)}.topbar-user:hover{background:var(--color-bg)}.topbar-avatar{width:32px;height:32px;border-radius:50%;background:var(--color-primary);display:flex;align-items:center;justify-content:center;color:var(--color-primary-contrast);font-size:13px;font-weight:600}.topbar-username{font-size:14px;font-weight:500;color:var(--color-text)}.topbar-hamburger{display:none;align-items:center;justify-content:center;width:36px;height:36px;border:none;background:transparent;cursor:pointer;color:var(--color-text);font-size:18px;border-radius:var(--radius-sm);min-height:44px;min-width:44px}.topbar-hamburger:hover{background:var(--color-bg)}.main-content{margin-left:var(--sidebar-width);margin-top:var(--topbar-height);padding:28px;min-height:calc(100vh - var(--topbar-height));transition:margin-left var(--transition-slow)}.main-content.sidebar-collapsed{margin-left:var(--sidebar-collapsed-width)}.page-header{margin-bottom:28px}.page-title{font-size:22px;font-weight:700;color:var(--color-text);margin-bottom:4px}.page-subtitle{font-size:14px;color:var(--color-text-muted)}.stat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:20px;margin-bottom:32px}.stat-card{background:var(--color-surface);border-radius:var(--radius-lg);padding:22px;box-shadow:var(--shadow-sm);border:1px solid var(--color-border);display:flex;align-items:flex-start;gap:16px;transition:box-shadow var(--transition-fast),transform var(--transition-fast);text-decoration:none;color:inherit;cursor:pointer}.stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.stat-icon{width:46px;height:46px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}.stat-icon.sky{background:#e0f2fe;color:#0284c7}.stat-icon.emerald{background:#d1fae5;color:#059669}.stat-icon.amber{background:#fef3c7;color:#d97706}.stat-icon.violet{background:#ede9fe;color:#7c3aed}.stat-icon.rose{background:#fee2e2;color:#dc2626}.stat-body{min-width:0}.stat-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--color-text-muted);margin-bottom:4px}.stat-value{font-family:var(--font-display);font-size:30px;font-weight:700;color:var(--color-text);line-height:1}.stat-hint{font-size:12px;color:var(--color-text-subtle);margin-top:4px}.info-card{background:var(--color-surface);border-radius:var(--radius-lg);padding:24px;box-shadow:var(--shadow-sm);border:1px solid var(--color-border)}.info-card-title{font-size:13px;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:14px}.info-card-value{font-size:18px;font-weight:600;color:var(--color-text)}.info-card-sub{font-size:13px;color:var(--color-text-muted);margin-top:4px}.skeleton{background:linear-gradient(90deg,#e2e8f0 25%,#f1f5f9,#e2e8f0 75%);background-size:200% 100%;animation:skeleton-shimmer 1.4s ease-in-out infinite;border-radius:var(--radius-sm)}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}:root{--login-overlay: .25}.auth-bg{position:relative;min-height:100vh;width:100%;background:linear-gradient(135deg,#4a6fa5,#2d5a8e);background-size:cover;background-position:center}.auth-content{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:0 24px 24px;padding-top:clamp(10vh,15vh,18vh);min-height:100vh}@media (max-width: 768px){.auth-content{padding-top:6vh}}.auth-bg:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(to bottom,rgba(0,0,0,calc(var(--login-overlay) * 1)),rgba(0,0,0,calc(var(--login-overlay) * .27)),#0000 50%);z-index:0}.auth-card{position:relative;z-index:1;width:100%;max-width:420px;background:var(--color-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);padding:40px;border:1px solid var(--color-border)}.auth-page-wrapper{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:clamp(4rem,10vh,8rem);width:100%;max-width:460px}.auth-above-card{display:flex;flex-direction:column;align-items:center;gap:12px}.auth-above-logo{max-width:180px;max-height:80px;object-fit:contain;filter:drop-shadow(0 2px 8px rgba(0,0,0,.25))}.auth-above-icon{width:72px;height:72px;background:#ffffff2e;border:2px solid rgba(255,255,255,.35);border-radius:20px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:32px}.auth-above-name-block{display:flex;flex-direction:column;align-items:center;gap:0}.auth-above-title{position:relative;z-index:1;font-family:var(--font-display);font-size:22px;font-weight:700;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.5);margin:0;text-align:center}.auth-above-tagline{position:relative;z-index:1;font-size:12px;font-weight:400;color:#ffffffbf;letter-spacing:.04em;margin:3px 0 0;text-align:center;text-shadow:0 2px 12px rgba(0,0,0,.5)}.auth-brand{display:flex;align-items:center;gap:10px;margin-bottom:20px;justify-content:center}.auth-brand-icon{width:32px;height:32px;background:var(--color-primary);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;color:var(--color-primary-contrast);font-size:16px;flex-shrink:0}.auth-brand-name{font-family:var(--font-display);font-size:18px;font-weight:700;color:var(--color-text)}.auth-title{font-size:22px;font-weight:700;color:var(--color-text);margin-bottom:6px;text-align:center}.auth-subtitle{font-size:14px;color:var(--color-text-muted);text-align:center;margin-bottom:28px}.auth-form{display:flex;flex-direction:column;gap:16px}.form-group{display:flex;flex-direction:column;gap:6px}.form-label{font-size:13px;font-weight:600;color:var(--color-text)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-row--3col{grid-template-columns:1.2fr 1fr 1fr}.form-section{display:flex;flex-direction:column;gap:8px}.form-section-heading{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted);margin:0}.check-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px 16px}.dsgvo-group{padding-top:1rem;border-top:1px solid var(--color-border)}.auth-divider{position:relative;text-align:center;margin:4px 0}.auth-divider:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:var(--color-border)}.auth-footer{margin-top:20px;text-align:center;font-size:13px;color:var(--color-text-muted)}.auth-footer a{color:var(--color-primary);text-decoration:none;font-weight:600}.auth-footer a:hover{text-decoration:underline}.auth-error{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;border-radius:var(--radius-md);padding:10px 14px;font-size:13px;display:flex;align-items:center;gap:8px}.auth-success{background:#f0fdf4;border:1px solid #bbf7d0;color:#16a34a;border-radius:var(--radius-lg);padding:20px;font-size:14px;display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center}.auth-success-icon{font-size:32px;color:#16a34a}.sidebar-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:99;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}@media (max-width: 768px){.sidebar{transform:translate(-100%);width:var(--sidebar-width)!important;transition:transform var(--transition-slow)}.sidebar.mobile-open{transform:translate(0)}.sidebar-overlay{display:block}.topbar{left:0!important}.topbar-hamburger{display:flex}.main-content{margin-left:0!important;padding:16px}.stat-grid{grid-template-columns:1fr 1fr}.form-row{grid-template-columns:1fr}}@media (max-width: 600px){.form-row--3col,.check-grid{grid-template-columns:1fr}}@media (max-width: 480px){.stat-grid{grid-template-columns:1fr}.auth-card{padding:28px 20px}}.topbar-user-wrapper{position:relative}.topbar-dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:180px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);z-index:200;overflow:hidden}.topbar-dropdown-item{display:flex;align-items:center;gap:10px;padding:10px 16px;font-size:14px;color:var(--color-text);text-decoration:none;cursor:pointer;background:none;border:none;width:100%;text-align:left;font-family:var(--font-body);transition:background var(--transition-fast)}.topbar-dropdown-item:hover{background:var(--color-bg)}.topbar-dropdown-divider{height:1px;background:var(--color-border)}.topbar-dropdown-enter-active,.topbar-dropdown-leave-active{transition:opacity var(--transition-fast),transform var(--transition-fast)}.topbar-dropdown-enter-from,.topbar-dropdown-leave-to{opacity:0;transform:translateY(-6px)}.placeholder-hint{display:flex;align-items:center;gap:10px;color:var(--color-text-muted);font-size:14px;padding:8px 0}.placeholder-hint i{font-size:18px;color:var(--color-primary)}.dashboard-lists{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:8px}.dashboard-list-card{background:var(--color-surface);border-radius:var(--radius-lg);padding:20px;box-shadow:var(--shadow-sm);border:1px solid var(--color-border)}.dashboard-list-title{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--color-text-muted);margin-bottom:14px}.dashboard-list-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--color-border);text-decoration:none;color:var(--color-text);transition:opacity var(--transition-fast)}.dashboard-list-item:last-child{border-bottom:none;padding-bottom:0}.dashboard-list-item:hover{opacity:.75}.dashboard-list-item-name{font-size:14px;font-weight:500;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-list-item-meta{font-size:12px;color:var(--color-text-muted);white-space:nowrap;flex-shrink:0}.dashboard-list-empty{color:var(--color-text-subtle);font-size:13px;padding:16px 0;text-align:center}@media (max-width: 768px){.dashboard-lists{grid-template-columns:1fr}}.p-button{font-family:var(--font-body)!important;font-weight:600!important;min-height:44px}.p-button-primary{background:#1e3a5f!important;border-color:#1e3a5f!important;color:#fff!important}.p-button-primary:hover{background:#2d5a8e!important;border-color:#2d5a8e!important}.p-inputtext{font-family:var(--font-body)!important;min-height:44px}.p-password{width:100%}.p-password-input{width:100%!important}.auth-footer a,.placeholder-hint i{color:#1e3a5f}.datepicker-compact{max-width:340px!important}.datepicker-compact .p-datepicker-day-cell{padding:1px!important}.datepicker-compact .p-datepicker-day{width:1.9rem!important;height:1.9rem!important;font-size:.8rem!important}.datepicker-compact .p-datepicker-time-picker{padding:.25rem 0!important}.datepicker-compact .p-datepicker-hour-picker,.datepicker-compact .p-datepicker-minute-picker{gap:2px!important}
