:root{--gkm-primary: #1E3A5F;--gkm-secondary: #2E86AB;--gkm-background: #F5F7FA;--gkm-surface: #FFFFFF;--gkm-text-primary: #1A1A2E;--gkm-text-secondary: #6B7280;--gkm-border: #E2E8F0;--gkm-success: #059669;--gkm-warning: #D97706;--gkm-error: #DC2626;--gkm-info: #2563EB;--gkm-disabled: #9CA3AF;--gkm-radius-sm: 4px;--gkm-radius-md: 8px;--gkm-radius-lg: 12px;--gkm-font-body: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--gkm-font-heading: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--gkm-font-size-base: 16px;--gkm-line-height: 1.5;--gkm-spacing-unit: 8px;--gkm-spacing-xs: 4px;--gkm-spacing-sm: 8px;--gkm-spacing-md: 12px;--gkm-spacing-lg: 16px;--gkm-spacing-xl: 24px;--gkm-shadow-card: 0 1px 3px rgba(0, 0, 0, .1), 0 1px 2px rgba(0, 0, 0, .06);--gkm-shadow-elevated: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05)}body{font-family:var(--gkm-font-body);font-size:var(--gkm-font-size-base);line-height:var(--gkm-line-height);color:var(--gkm-text-primary);background-color:var(--gkm-background);margin:0;transition:background-color .2s ease,color .2s ease}.reduced-motion *{animation-duration:0s!important;transition-duration:0s!important}h1,h2,h3,h4{font-family:var(--gkm-font-heading);color:var(--gkm-text-primary);margin:0}h1{font-size:calc(var(--gkm-font-size-base) * 2)}h2{font-size:calc(var(--gkm-font-size-base) * 1.5)}h3{font-size:calc(var(--gkm-font-size-base) * 1.25)}h4{font-size:calc(var(--gkm-font-size-base) * 1.125)}.text-secondary{color:var(--gkm-text-secondary)}.text-success{color:var(--gkm-success)}.text-warning{color:var(--gkm-warning)}.text-error{color:var(--gkm-error)}.text-disabled{color:var(--gkm-disabled)}.gkm-card{background-color:var(--gkm-surface);border-radius:var(--gkm-radius-lg);padding:var(--gkm-spacing-lg);border:1px solid var(--gkm-border);box-shadow:var(--gkm-shadow-card);transition:transform .15s ease,box-shadow .15s ease}.gkm-card--hoverable:hover{transform:translateY(-2px);box-shadow:var(--gkm-shadow-elevated)}.gkm-card--flat{box-shadow:none}.gkm-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--gkm-spacing-sm);padding:var(--gkm-spacing-sm) var(--gkm-spacing-lg);border-radius:var(--gkm-radius-md);font-family:var(--gkm-font-body);font-size:var(--gkm-font-size-base);font-weight:500;min-height:40px;cursor:pointer;border:none;transition:background-color .15s ease,opacity .15s ease}.gkm-btn--primary{background-color:var(--gkm-primary);color:#fff}.gkm-btn--primary:hover{opacity:.9}.gkm-btn--secondary{background-color:transparent;color:var(--gkm-primary);border:1px solid var(--gkm-primary)}.gkm-btn--danger{background-color:var(--gkm-error);color:#fff}.gkm-btn--ghost{background-color:transparent;color:var(--gkm-text-primary)}.gkm-btn--ghost:hover{background-color:var(--gkm-border)}.gkm-btn:disabled{background-color:var(--gkm-disabled);color:#fff;cursor:not-allowed;opacity:.6}.gkm-input{width:100%;padding:var(--gkm-spacing-sm) var(--gkm-spacing-md);border:1px solid var(--gkm-border);border-radius:var(--gkm-radius-md);font-family:var(--gkm-font-body);font-size:var(--gkm-font-size-base);color:var(--gkm-text-primary);background-color:var(--gkm-surface);transition:border-color .15s ease}.gkm-input:focus{outline:none;border-color:var(--gkm-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--gkm-primary) 20%,transparent)}.gkm-input::placeholder{color:var(--gkm-text-secondary)}.gkm-input--error{border-color:var(--gkm-error)}.gkm-badge{display:inline-flex;align-items:center;padding:2px var(--gkm-spacing-sm);border-radius:var(--gkm-radius-sm);font-size:calc(var(--gkm-font-size-base) * .75);font-weight:600}.gkm-badge--success{background-color:var(--gkm-success);color:#fff}.gkm-badge--warning{background-color:var(--gkm-warning);color:#fff}.gkm-badge--error{background-color:var(--gkm-error);color:#fff}.gkm-badge--info{background-color:var(--gkm-info);color:#fff}.gkm-badge--outlined{background-color:transparent;border:1px solid currentColor}.gkm-badge--outlined.gkm-badge--success{color:var(--gkm-success)}.gkm-badge--outlined.gkm-badge--warning{color:var(--gkm-warning)}.gkm-badge--outlined.gkm-badge--error{color:var(--gkm-error)}.gkm-badge--outlined.gkm-badge--info{color:var(--gkm-info)}.gkm-sidebar{background-color:var(--gkm-surface);border-right:1px solid var(--gkm-border);padding:var(--gkm-spacing-lg) 0}.gkm-nav-item{display:flex;align-items:center;gap:var(--gkm-spacing-md);padding:var(--gkm-spacing-sm) var(--gkm-spacing-lg);color:var(--gkm-text-secondary);text-decoration:none;transition:background-color .1s ease;border-left:3px solid transparent}.gkm-nav-item:hover{background-color:color-mix(in srgb,var(--gkm-primary) 8%,transparent);color:var(--gkm-text-primary)}.gkm-nav-item--active{color:var(--gkm-primary);background-color:color-mix(in srgb,var(--gkm-primary) 10%,transparent);border-left-color:var(--gkm-primary);font-weight:500}.gkm-tabs{display:flex;border-bottom:1px solid var(--gkm-border);gap:var(--gkm-spacing-xs)}.gkm-tab{padding:var(--gkm-spacing-sm) var(--gkm-spacing-lg);color:var(--gkm-text-secondary);border-bottom:2px solid transparent;cursor:pointer;transition:color .15s ease}.gkm-tab:hover{color:var(--gkm-text-primary)}.gkm-tab--active{color:var(--gkm-primary);border-bottom-color:var(--gkm-primary);font-weight:500}.gkm-progress{height:6px;background-color:var(--gkm-border);border-radius:var(--gkm-radius-sm);overflow:hidden}.gkm-progress__bar{height:100%;background-color:var(--gkm-primary);border-radius:var(--gkm-radius-sm);transition:width .3s ease}.gkm-progress__bar--success{background-color:var(--gkm-success)}.gkm-progress__bar--warning{background-color:var(--gkm-warning)}.gkm-logo{display:flex;align-items:center;padding:var(--gkm-spacing-lg)}.gkm-logo img{max-width:100%;height:auto}.gkm-login{min-height:100vh;display:flex;align-items:center;justify-content:center;background-size:cover;background-position:center}.gkm-login__form{background-color:var(--gkm-surface);border-radius:var(--gkm-radius-lg);padding:var(--gkm-spacing-xl);box-shadow:var(--gkm-shadow-elevated);width:100%;max-width:400px}.gap-xs{gap:var(--gkm-spacing-xs)}.gap-sm{gap:var(--gkm-spacing-sm)}.gap-md{gap:var(--gkm-spacing-md)}.gap-lg{gap:var(--gkm-spacing-lg)}.gap-xl{gap:var(--gkm-spacing-xl)}.p-xs{padding:var(--gkm-spacing-xs)}.p-sm{padding:var(--gkm-spacing-sm)}.p-md{padding:var(--gkm-spacing-md)}.p-lg{padding:var(--gkm-spacing-lg)}.p-xl{padding:var(--gkm-spacing-xl)}:root{--color-primary: var(--gkm-primary, #007AFF);--color-primary-hover: var(--gkm-primary, #0066D6);--color-primary-light: color-mix(in srgb, var(--gkm-primary, #007AFF) 15%, white);--color-border: var(--gkm-border, #E5E5EA);--color-text: var(--gkm-text-primary, #222);--color-text-lighter: var(--gkm-text-secondary, #888);--color-bg: var(--gkm-background, #F5F5F5);--color-surface: var(--gkm-surface, #fff);--color-error: var(--gkm-error, #FF3B30);--color-success: var(--gkm-success, #34C759);--color-success-bg: color-mix(in srgb, var(--gkm-success, #34C759) 15%, white);--color-success-text: var(--gkm-success, #155724);--color-warning: var(--gkm-warning, #FF9500);--color-warning-bg: color-mix(in srgb, var(--gkm-warning, #FF9500) 15%, white);--color-warning-text: var(--gkm-warning, #856404)}*,*:before,*:after{box-sizing:border-box}body{margin:0;background:var(--color-bg);color:var(--color-text)}.nc-input{padding:8px 10px;border:1px solid var(--color-border);border-radius:6px;font-size:.9em;font-family:inherit;background:#fafafa;color:var(--color-text);outline:none}.nc-input:focus{border-color:var(--color-primary);background:#fff}.nc-input--sm{padding:4px 8px;font-size:.85em}.btn{padding:7px 16px;border:1px solid var(--color-border);border-radius:6px;font-size:.9em;font-family:inherit;cursor:pointer;background:#fff;color:var(--color-text)}.btn--primary{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.btn--primary:hover{background:var(--color-primary-hover)}.btn--sm{padding:4px 10px;font-size:.85em}.btn--icon{padding:6px 10px}.app[data-v-0d330d5a]{display:flex;flex-direction:column;min-height:100vh}.app-nav[data-v-0d330d5a]{display:flex;align-items:center;gap:24px;padding:0 24px;height:56px;background:#fff;border-bottom:1px solid var(--color-border);position:sticky;top:0;z-index:100}.app-nav__brand[data-v-0d330d5a]{font-weight:700;font-size:1.05em;color:var(--color-primary);white-space:nowrap}.app-nav__links[data-v-0d330d5a]{display:flex;gap:4px;flex:1}.app-nav__link[data-v-0d330d5a]{padding:6px 14px;border-radius:6px;text-decoration:none;font-size:.9em;color:var(--color-text-lighter);transition:background .15s}.app-nav__link[data-v-0d330d5a]:hover{background:var(--color-bg);color:var(--color-text)}.app-nav__link.router-link-active[data-v-0d330d5a]{background:var(--color-primary);color:#fff}.app-nav__user[data-v-0d330d5a]{display:flex;align-items:center;gap:12px;margin-left:auto}.app-nav__username[data-v-0d330d5a]{font-size:.88em;color:var(--color-text-lighter)}.app-nav__logout[data-v-0d330d5a]{padding:5px 12px;font-size:.85em;border:1px solid var(--color-border);border-radius:6px;background:none;cursor:pointer;color:var(--color-text-lighter);font-family:inherit}.app-nav__logout[data-v-0d330d5a]:hover{background:var(--color-bg);color:var(--color-text)}.app-main[data-v-0d330d5a]{flex:1;overflow:hidden}
