@charset "UTF-8";.k-shell{max-width:none;margin:0;padding:16px 20px 32px}.k-top{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:6px}.k-brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:19px;color:var(--fg)}.k-brand .k-dot{width:30px;height:30px;border-radius:9px;background:linear-gradient(135deg,#0891b2,#22d3ee);display:grid;place-items:center;color:#06121a;font-weight:800;flex:0 0 auto}.k-brand-sub{color:var(--mut);font-size:12.5px;font-weight:600}.k-panel{background:var(--panel);border:1px solid var(--bd);border-radius:14px;padding:18px}.k-panel+.k-panel{margin-top:16px}.k-panel-title{margin:0 0 4px;font-size:15px;color:var(--fg);font-weight:700}.k-panel-sub{margin:0 0 14px;color:var(--mut);font-size:12.5px}.k-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:0;border-radius:9px;font-family:inherit;font-weight:700;font-size:13.5px;line-height:1.2;padding:9px 15px;cursor:pointer;transition:filter .12s,border-color .12s,background .12s}.k-btn svg{width:15px;height:15px}.k-btn:disabled{opacity:.55;cursor:not-allowed}.k-btn--primary{background:var(--accent);color:var(--accent-fg)}.k-btn--primary:hover:not(:disabled){filter:brightness(1.06)}.k-btn--ghost{background:var(--panel2);color:var(--fg);border:1px solid var(--bd)}.k-btn--ghost:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.k-btn--danger{background:var(--danger);color:var(--accent-fg, #fff)}.k-btn--subtle{background:transparent;color:var(--accent);padding:6px 8px}.k-btn--sm{padding:6px 11px;font-size:12.5px}.k-iconbtn{display:inline-grid;place-items:center;border:0;background:transparent;color:var(--mut);cursor:pointer;padding:5px;border-radius:7px;line-height:0}.k-iconbtn:hover{background:var(--hover-tint);color:var(--accent)}.k-iconbtn--danger:hover{color:var(--danger);background:var(--status-failed-bg)}.k-field{display:flex;flex-direction:column}.k-field label{font-size:12px;color:var(--mut);font-weight:600;margin-bottom:6px;display:flex;align-items:center;gap:5px}.k-field label .k-req{color:var(--danger)}.k-field input,.k-field select,.k-field textarea{width:100%;padding:9px 12px;border:1px solid var(--bd);border-radius:9px;background:var(--panel2);color:var(--fg);font-size:14px;font-family:inherit}.k-field textarea{resize:vertical;line-height:1.5}.k-field input:focus,.k-field select:focus,.k-field textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--focus-ring)}.k-field.k-has-error input,.k-field.k-has-error select,.k-field.k-has-error textarea{border-color:var(--danger)}.k-field-hint{font-size:11.5px;color:var(--mut);margin-top:5px}.k-field-err{font-size:11.5px;color:var(--danger);margin-top:5px;font-weight:600}.k-search{position:relative;flex:1 1 220px;min-width:170px}.k-search svg{position:absolute;left:11px;top:50%;transform:translateY(-50%);color:var(--mut);pointer-events:none}.k-search input{width:100%;padding:9px 12px 9px 34px;border:1px solid var(--bd);border-radius:9px;background:var(--panel2);color:var(--fg);font-size:13.5px;font-family:inherit}.k-search input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--focus-ring)}.k-selectline{padding:9px 12px;border:1px solid var(--bd);border-radius:9px;background:var(--panel2);color:var(--fg);font-size:13px;font-family:inherit;cursor:pointer}.k-selectline:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--focus-ring)}.k-seg{display:inline-flex;background:var(--panel2);border:1px solid var(--bd);border-radius:9px;padding:2px;gap:2px;flex-wrap:wrap}.k-seg button{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;color:var(--mut);font-family:inherit;font-size:12.5px;font-weight:700;padding:6px 11px;border-radius:7px;cursor:pointer}.k-seg button.is-active{background:var(--panel);color:var(--accent);box-shadow:var(--shadow-sm)}.k-seg button svg{width:14px;height:14px}.k-badge{display:inline-flex;align-items:center;gap:4px;font-size:10.5px;font-weight:800;letter-spacing:.02em;text-transform:uppercase;padding:2px 8px;border-radius:999px;background:var(--panel2);color:var(--mut)}.k-badge--info{background:var(--status-info-bg);color:var(--status-info-fg)}.k-badge--success{background:var(--status-success-bg);color:var(--status-success-fg)}.k-badge--warning{background:var(--status-warning-bg);color:var(--status-warning-fg)}.k-badge--danger{background:var(--status-failed-bg);color:var(--status-failed-fg)}.k-badge--accent{background:var(--hover-tint);color:var(--accent)}.k-stat{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:13px;background:var(--panel);border:1px solid var(--bd);color:var(--fg);text-align:left;font-family:inherit;width:100%}.k-stat--clickable{cursor:pointer;transition:border-color .14s,background .14s}.k-stat--clickable:hover{border-color:var(--accent)}.k-stat.is-active{border-color:var(--accent);background:var(--hover-tint)}.k-stat-ic{width:38px;height:38px;flex:0 0 auto;display:grid;place-items:center;border-radius:10px;background:var(--panel2);color:var(--mut)}.k-stat--danger .k-stat-ic{background:var(--status-failed-bg);color:var(--status-failed-fg)}.k-stat--warn .k-stat-ic{background:var(--status-warning-bg);color:var(--status-warning-fg)}.k-stat--info .k-stat-ic{background:var(--status-info-bg);color:var(--status-info-fg)}.k-stat--ok .k-stat-ic{background:var(--status-success-bg);color:var(--status-success-fg)}.k-stat--accent .k-stat-ic{background:var(--hover-tint);color:var(--accent)}.k-stat-num{font-size:20px;font-weight:800;color:var(--fg);line-height:1}.k-stat-lbl{font-size:12px;color:var(--mut);font-weight:600;margin-top:3px}.k-empty{text-align:center;padding:48px 20px;color:var(--mut);border:1px dashed var(--bd);border-radius:16px;background:var(--panel)}.k-empty-ic{color:var(--mut);opacity:.5;margin-bottom:12px}.k-empty h3{margin:0 0 6px;color:var(--fg);font-size:16px}.k-empty p{margin:0 0 16px;font-size:13px}.k-empty-actions{display:inline-flex;gap:10px;flex-wrap:wrap;justify-content:center}.k-overlay{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:20px;background:#0000008c}:root[data-theme=light] .k-overlay{background:#0f172a52}.k-modal{width:100%;max-width:560px;max-height:90vh;overflow-y:auto;background:var(--panel);border:1px solid var(--bd);border-radius:16px;box-shadow:var(--shadow-lg)}.k-modal--sm{max-width:420px}.k-modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;border-bottom:1px solid var(--bd);position:sticky;top:0;background:var(--panel);border-radius:16px 16px 0 0}.k-modal-head h3{margin:0;font-size:16px;color:var(--fg)}.k-modal-body{padding:18px 20px;color:var(--fg);font-size:13.5px;line-height:1.6}.k-modal-body p{margin:0 0 8px}.k-modal-foot{display:flex;justify-content:flex-end;gap:10px;padding:14px 20px;border-top:1px solid var(--bd);position:sticky;bottom:0;background:var(--panel);border-radius:0 0 16px 16px}.k-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px}.k-col-span{grid-column:1/-1}.k-toast{position:fixed;right:20px;bottom:20px;z-index:1100;display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:11px;font-size:13.5px;font-weight:600;background:var(--panel);border:1px solid var(--bd);box-shadow:var(--shadow-lg);max-width:360px;animation:k-toast-in .2s ease}.k-toast--ok{border-color:var(--status-success-fg);color:var(--status-success-fg)}.k-toast--err{border-color:var(--status-failed-fg);color:var(--status-failed-fg)}.k-toast svg{width:16px;height:16px;flex:0 0 auto}.k-toast-action{margin-left:6px;flex:0 0 auto;border:0;background:transparent;cursor:pointer;color:var(--accent);font-family:inherit;font-weight:800;font-size:12px;padding:4px 9px;border-radius:7px;text-transform:uppercase;letter-spacing:.03em}.k-toast-action:hover{background:var(--hover-tint)}@keyframes k-toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.k-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:14px}.k-toolbar-spacer{flex:1 1 auto}.k-stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:14px 0 18px}@media (max-width: 720px){.k-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.k-form-grid{grid-template-columns:1fr}}@media (max-width: 460px){.k-toast{left:16px;right:16px;max-width:none}}.k-confirm-overlay{animation:k-confirm-overlay-in .14s ease}.k-confirm.k-modal{animation:k-confirm-in .16s cubic-bezier(.2,.8,.3,1)}.k-confirm-head{display:flex;align-items:center;gap:13px;padding:20px 22px 6px}.k-confirm-head h3{margin:0;font-size:16.5px;font-weight:700;color:var(--fg);line-height:1.35}.k-confirm-icon{width:40px;height:40px;flex:0 0 auto;display:grid;place-items:center;border-radius:11px}.k-confirm-icon svg{width:20px;height:20px}.k-confirm-icon--info{background:var(--status-info-bg);color:var(--status-info-fg)}.k-confirm-icon--warning{background:var(--status-warning-bg);color:var(--status-warning-fg)}.k-confirm-icon--danger{background:var(--status-failed-bg);color:var(--status-failed-fg)}.k-confirm-body{padding:6px 22px 4px;color:var(--fg);font-size:13.5px;line-height:1.6}.k-confirm-msg{color:var(--mut)}.k-confirm-msg b,.k-confirm-msg strong{color:var(--fg)}.k-confirm-type{display:flex;flex-direction:column;gap:7px;margin-top:15px;font-size:12.5px;color:var(--mut)}.k-confirm-type b{color:var(--danger);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.04em}.k-confirm-type input{width:100%;padding:9px 12px;border:1px solid var(--bd);border-radius:9px;background:var(--panel2);color:var(--fg);font-size:14px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.04em}.k-confirm-type input:focus{outline:none;border-color:var(--danger);box-shadow:0 0 0 3px var(--focus-ring)}.k-confirm-error{margin-top:13px;padding:9px 12px;border-radius:9px;font-size:12.5px;font-weight:600;background:var(--status-failed-bg);color:var(--status-failed-fg);border:1px solid var(--status-failed-fg)}.k-confirm-foot{display:flex;justify-content:flex-end;gap:10px;padding:16px 22px 20px}.k-confirm-foot .k-btn{min-width:92px}.k-confirm-spin{width:14px;height:14px;border-radius:50%;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;animation:k-confirm-spin .6s linear infinite;margin-right:2px}.k-btn--ghost .k-confirm-spin{border-color:var(--bd);border-top-color:var(--accent)}@keyframes k-confirm-spin{to{transform:rotate(360deg)}}@keyframes k-confirm-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes k-confirm-in{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:none}}@keyframes k-confirm-sheet-in{0%{transform:translateY(100%)}to{transform:none}}@media (prefers-reduced-motion: reduce){.k-confirm-overlay,.k-confirm.k-modal{animation:none}}@media (max-width: 480px){.k-confirm-overlay{place-items:end center;padding:0}.k-confirm.k-modal--sm{max-width:none;width:100%;border-radius:18px 18px 0 0;animation:k-confirm-sheet-in .22s ease;padding-bottom:env(safe-area-inset-bottom,0)}.k-confirm-foot{flex-direction:column-reverse}.k-confirm-foot .k-btn{width:100%;padding:12px}}:root{--vla-sidebar-w: 240px}body.vla-collapsed{--vla-sidebar-w: 60px}.vla-shift{margin-left:var(--vla-sidebar-w)!important;transition:margin-left .18s ease;max-width:calc(100vw - var(--vla-sidebar-w))!important}#vla-sidebar{position:fixed!important;left:0!important;top:0!important;width:240px;height:100vh;background:var(--panel, #111827);color:var(--fg, #e5e7eb);border-right:1px solid var(--bd, #1f2937);z-index:100000;display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;transition:width .18s ease,transform .22s ease;font-family:Inter,system-ui,sans-serif}body.vla-collapsed #vla-sidebar{width:60px}#vla-sidebar .vla-brand{display:flex;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid var(--bd, #1f2937);flex:0 0 auto}#vla-sidebar .vla-brand-dot{width:32px;height:32px;border-radius:9px;flex:0 0 auto;background:linear-gradient(135deg,#0891b2,#22d3ee);color:#06121a;font-weight:800;font-size:20px;display:flex;align-items:center;justify-content:center;font-family:"Source Serif Pro",Georgia,serif}#vla-sidebar .vla-brand-text{flex:1 1 auto;min-width:0;overflow:hidden}#vla-sidebar .vla-brand-title{font-size:14px;font-weight:800;line-height:1.15;white-space:nowrap;color:var(--fg, #e5e7eb)}#vla-sidebar .vla-brand-sub{font-size:10.5px;color:var(--mut, #9ca3af);white-space:nowrap}#vla-toggle{background:transparent;border:1px solid var(--bd, #1f2937);color:var(--mut, #9ca3af);width:26px;height:26px;padding:0;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex:0 0 auto;transition:transform .18s ease,color .12s,border-color .12s}#vla-toggle:hover{color:var(--accent, #22d3ee);border-color:var(--accent, #22d3ee)}body.vla-collapsed #vla-toggle{transform:rotate(180deg)}body.vla-collapsed #vla-sidebar .vla-brand-text{display:none}body.vla-collapsed #vla-sidebar .vla-brand{justify-content:center;padding:12px 10px}#vla-sidebar .vla-group{padding:10px 8px 4px}#vla-sidebar .vla-group-title{font-size:10.5px;font-weight:700;letter-spacing:.08em;color:var(--mut, #9ca3af);padding:6px 12px;text-transform:uppercase}body.vla-collapsed #vla-sidebar .vla-group-title{text-align:center;padding:6px 0;color:var(--bd, #1f2937);font-size:0;height:1px;overflow:hidden;background:var(--bd, #1f2937);margin:8px 10px}#vla-sidebar .vla-item{display:flex;align-items:center;gap:12px;padding:9px 12px;margin:1px 4px;color:var(--fg, #e5e7eb);text-decoration:none;border-radius:8px;font-size:13.5px;font-weight:500;position:relative;transition:background .1s,color .1s;white-space:nowrap}#vla-sidebar .vla-item:hover{background:var(--hover-tint, rgba(34, 211, 238, .08));color:var(--accent, #22d3ee);text-decoration:none}#vla-sidebar .vla-item.active{background:var(--hover-tint, rgba(34, 211, 238, .1));color:var(--accent, #22d3ee);font-weight:600}#vla-sidebar .vla-item.active:before{content:"";position:absolute;left:-4px;top:6px;bottom:6px;width:3px;background:var(--accent, #22d3ee);border-radius:3px}#vla-sidebar .vla-label{flex:1 1 auto;overflow:hidden;text-overflow:ellipsis}body.vla-collapsed #vla-sidebar .vla-item{justify-content:center;padding:9px 0}body.vla-collapsed #vla-sidebar .vla-label{display:none}#vla-sidebar .vla-footer{margin-top:auto;padding:12px 14px;border-top:1px solid var(--bd, #1f2937);font-size:11px;color:var(--mut, #9ca3af);flex:0 0 auto}#vla-sidebar .vla-footer b{color:var(--fg, #e5e7eb);font-weight:600;word-break:break-all}body.vla-collapsed #vla-sidebar .vla-footer{display:none}#vla-sidebar :focus-visible{outline:2px solid var(--accent, #22d3ee);outline-offset:2px}#vla-ham,#vla-backdrop{display:none}@media (max-width: 768px){html,body{overflow-x:hidden!important}:root{--vla-sidebar-w: 0px}body.vla-collapsed{--vla-sidebar-w: 0px}.vla-shift{margin-left:0!important;max-width:100vw!important}#vla-sidebar{width:240px!important;height:100dvh!important;transform:translate(-100%);box-shadow:2px 0 18px #0000008c}body.km-nav-open #vla-sidebar{transform:translate(0)}#vla-toggle{display:none}#vla-ham{display:flex!important;position:fixed;top:9px;left:9px;z-index:100000;width:38px;height:38px;align-items:center;justify-content:center;background:var(--panel, #0b1220);color:var(--fg, #e5e7eb);border:1px solid var(--bd, #1f2937);border-radius:9px;cursor:pointer;font-size:19px;padding:0;font-family:inherit}#vla-backdrop{position:fixed;inset:0;background:#00000080;z-index:99998}body.km-nav-open #vla-backdrop{display:block}}@keyframes gsSpin{to{transform:rotate(360deg)}}#gsWidget{position:relative;flex:0 1 440px;max-width:460px;min-width:180px;font-family:Inter,system-ui,sans-serif;z-index:100001}#gsInputWrap{position:relative;display:flex;align-items:center;background:var(--panel2, #0f1626);border:1px solid var(--bd, #1f2937);border-radius:9px;height:36px;transition:border-color .15s,box-shadow .15s}#gsInputWrap:focus-within{border-color:var(--accent, #22d3ee);box-shadow:0 0 0 3px #22d3ee26}:root[data-theme=light] #gsInputWrap:focus-within{box-shadow:0 0 0 3px #0284c726}#gsInputWrap .gsIcon{color:var(--mut, #9ca3af);padding:0 8px 0 10px;line-height:0;flex:0 0 auto}#gsInput{flex:1 1 auto;min-width:0;background:transparent;border:0;outline:0;color:var(--fg, #e5e7eb);font-size:13.5px;padding:0 6px 0 0;font-family:inherit;height:100%}#gsInput::placeholder{color:var(--mut, #9ca3af)}#gsClear{flex:0 0 auto;width:26px;height:26px;margin-right:5px;display:none;align-items:center;justify-content:center;background:transparent;color:var(--mut, #9ca3af);border:0;cursor:pointer;padding:0;border-radius:6px}#gsClear:hover{background:#94a3b826;color:var(--fg, #e5e7eb)}#gsWidget.gsBusy #gsClear,#gsWidget.gsFilled #gsClear{display:flex}#gsHint{position:absolute;right:8px;top:50%;transform:translateY(-50%);font-size:11px;color:var(--mut, #9ca3af);padding:2px 6px;border:1px solid var(--bd, #1f2937);border-radius:4px;pointer-events:none}#gsWidget.gsFocused #gsHint,#gsWidget.gsFilled #gsHint{display:none}#gsPanel{position:absolute;top:calc(100% + 6px);right:0;left:auto;width:min(94vw,480px);max-height:min(70vh,520px);overflow-y:auto;background:var(--panel, #111827);border:1px solid var(--bd, #1f2937);border-radius:12px;box-shadow:0 24px 60px #00000073;display:none;z-index:100002}:root[data-theme=light] #gsPanel{box-shadow:0 20px 40px #0f172a26}#gsWidget.gsOpen #gsPanel{display:block}#gsPanel .gsGroup{padding:8px 6px 4px}#gsPanel .gsGroup+.gsGroup{border-top:1px solid var(--bd, #1f2937)}#gsPanel .gsGroupLabel{font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--mut, #9ca3af);padding:6px 12px 4px}#gsPanel .gsItem{display:block;padding:8px 12px;cursor:pointer;border-radius:8px;color:var(--fg, #e5e7eb);text-decoration:none;line-height:1.35}#gsPanel .gsItem:hover,#gsPanel .gsItem.gsActive{background:#22d3ee1a}:root[data-theme=light] #gsPanel .gsItem:hover,:root[data-theme=light] #gsPanel .gsItem.gsActive{background:#0284c714}#gsPanel .gsLabel{font-size:13.5px;font-weight:500}#gsPanel .gsSub{font-size:11.5px;color:var(--mut, #9ca3af);margin-top:2px}#gsPanel mark{background:#facc154d;color:inherit;padding:0 1px;border-radius:2px}:root[data-theme=light] #gsPanel mark{background:#0284c72e}#gsEmpty,#gsError{padding:22px 14px;text-align:center;color:var(--mut, #9ca3af);font-size:13px}#gsError{color:#f87171}:root[data-theme=light] #gsError{color:#b91c1c}@media (max-width: 640px){#gsWidget{flex-basis:100%;max-width:100%;order:99;width:100%}#gsPanel{left:0;right:0;width:auto}}#nfWidget{position:relative;font-family:Inter,system-ui,sans-serif;flex:0 0 auto;z-index:100001}#nfBtn{background:transparent;border:1px solid var(--bd, #1f2937);color:var(--fg, #e5e7eb);width:38px;height:36px;border-radius:9px;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;position:relative;line-height:0;font-family:inherit}#nfBtn:hover{border-color:var(--accent, #22d3ee);color:var(--accent, #22d3ee)}#nfBtn:focus-visible{outline:2px solid var(--accent, #22d3ee);outline-offset:2px}#nfBadge{position:absolute;top:-4px;right:-4px;background:#ef4444;color:var(--accent-fg, #fff);font-size:10px;font-weight:700;min-width:16px;height:16px;padding:0 4px;border-radius:8px;display:none;align-items:center;justify-content:center;line-height:1;box-shadow:0 0 0 2px var(--panel, #111827)}:root[data-theme=light] #nfBadge{box-shadow:0 0 0 2px var(--panel, #ffffff)}#nfWidget.nfHasUnread #nfBadge{display:flex}#nfPanel{position:absolute;top:calc(100% + 8px);right:0;width:min(94vw,380px);max-height:min(70vh,520px);background:var(--panel, #111827);border:1px solid var(--bd, #1f2937);border-radius:12px;box-shadow:0 24px 60px #00000073;display:none;flex-direction:column;overflow:hidden;z-index:100002}:root[data-theme=light] #nfPanel{box-shadow:0 20px 40px #0f172a26}#nfWidget.nfOpen #nfPanel{display:flex}#nfHeader{display:flex;align-items:center;justify-content:space-between;padding:11px 14px;border-bottom:1px solid var(--bd, #1f2937);font-size:13.5px;font-weight:600;color:var(--fg, #e5e7eb)}#nfMarkAll{background:transparent;border:0;color:var(--accent, #22d3ee);font-size:11.5px;font-weight:600;cursor:pointer;padding:2px 6px;border-radius:6px;font-family:inherit}#nfMarkAll:hover{background:#22d3ee1a}:root[data-theme=light] #nfMarkAll:hover{background:#0284c714}#nfList{flex:1 1 auto;overflow-y:auto;padding:4px}.nfItem{display:flex;gap:10px;padding:10px 12px;border-radius:8px;position:relative}.nfItem+.nfItem{border-top:1px solid var(--bd, #1f2937)}.nfItem.unread{background:#22d3ee0f}:root[data-theme=light] .nfItem.unread{background:#0284c70a}.nfDot{flex:0 0 auto;width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center}.nfBody{flex:1 1 auto;min-width:0;padding-right:26px}.nfTitle{font-size:13.5px;font-weight:600;color:var(--fg, #e5e7eb);line-height:1.3}.nfMsg{font-size:12.5px;color:var(--mut, #9ca3af);line-height:1.4;margin-top:2px;word-wrap:break-word}.nfTime{font-size:11px;color:var(--mut, #9ca3af);margin-top:4px}.nfActions{position:absolute;top:8px;right:8px;display:flex;gap:2px}.nfAct{background:transparent;border:0;color:var(--mut, #9ca3af);width:22px;height:22px;padding:0;border-radius:5px;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .12s;font-family:inherit}.nfItem:hover .nfAct,.nfItem:focus-within .nfAct{opacity:1}.nfAct:hover{color:var(--fg, #e5e7eb);background:#94a3b826}.nfLink{position:absolute;inset:0;cursor:pointer}#nfEmpty,#nfLoad,#nfErr{padding:26px 14px;text-align:center;color:var(--mut, #9ca3af);font-size:13px}#nfErr{color:#f87171}:root[data-theme=light] #nfErr{color:#b91c1c}#nfFooter{padding:8px 12px;border-top:1px solid var(--bd, #1f2937);text-align:center;font-size:12px}#nfFooter a{color:var(--accent, #22d3ee);text-decoration:none;font-weight:600}#nfFooter a:hover{text-decoration:underline}@media (max-width: 640px){#nfPanel{width:calc(100vw - 20px);right:-8px}}.vla-topbar{position:sticky;top:0;z-index:100001;display:flex;align-items:center;gap:12px;padding:10px 16px;background:var(--panel);border-bottom:1px solid var(--bd);color:var(--fg);min-height:56px}.vla-topbar__right{margin-left:auto;display:flex;align-items:center;gap:12px;flex:0 0 auto}.vla-topbar__user{display:flex;flex-direction:column;align-items:flex-end;line-height:1.2;flex:0 0 auto;min-width:0;border-left:1px solid var(--bd);margin-left:4px;padding:4px 0 4px 12px}.vla-topbar__email{font-size:12.5px;color:var(--fg);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.vla-topbar__role{font-size:10.5px;color:var(--mut);text-transform:uppercase;letter-spacing:.06em;font-weight:600}.vla-usermenu{position:relative;flex:0 0 auto}.vla-usermenu__trigger{display:flex;align-items:center;gap:9px;background:transparent;border:1px solid transparent;border-radius:10px;padding:4px 8px 4px 6px;cursor:pointer;color:var(--fg);font:inherit;max-width:260px;transition:background .12s,border-color .12s}.vla-usermenu__trigger:hover{background:var(--hover-tint);border-color:var(--bd)}.vla-usermenu__avatar{width:32px;height:32px;flex:0 0 auto;border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:13px;background:var(--accent);color:var(--accent-fg)}.vla-usermenu__avatar--lg{width:40px;height:40px;font-size:16px}.vla-usermenu__id{display:flex;flex-direction:column;align-items:flex-start;line-height:1.2;min-width:0}.vla-usermenu__email{font-size:12.5px;font-weight:600;color:var(--fg);max-width:160px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vla-usermenu__role{font-size:10.5px;color:var(--mut);text-transform:uppercase;letter-spacing:.06em;font-weight:600}.vla-usermenu__caret{color:var(--mut);display:grid;place-items:center;transform:rotate(90deg);transition:transform .15s}.vla-usermenu__caret svg{width:15px;height:15px}.vla-usermenu__caret.is-open{transform:rotate(-90deg)}.vla-usermenu__panel{position:absolute;top:calc(100% + 8px);right:0;z-index:200;width:262px;background:var(--panel);border:1px solid var(--bd);border-radius:12px;box-shadow:var(--shadow-lg);padding:6px;animation:vla-menu-in .12s ease}@keyframes vla-menu-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.vla-usermenu__head{display:flex;gap:11px;align-items:center;padding:10px 10px 12px}.vla-usermenu__headtext{min-width:0}.vla-usermenu__name{font-size:14px;font-weight:700;color:var(--fg)}.vla-usermenu__sub{font-size:12px;color:var(--mut);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px}.vla-usermenu__badge{display:inline-block;margin-top:5px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;padding:2px 7px;border-radius:999px;background:var(--hover-tint);color:var(--accent)}.vla-usermenu__sep{height:1px;background:var(--bd);margin:4px 0}.vla-usermenu__item{display:flex;align-items:center;gap:10px;width:100%;background:transparent;border:0;border-radius:8px;cursor:pointer;padding:9px 10px;font:inherit;font-size:13px;color:var(--fg);text-align:left}.vla-usermenu__item svg{width:16px;height:16px;color:var(--mut);flex:0 0 auto}.vla-usermenu__item:hover{background:var(--hover-tint)}.vla-usermenu__item--danger{color:var(--danger)}.vla-usermenu__item--danger svg{color:var(--danger)}.vla-usermenu__item--danger:hover{background:var(--status-failed-bg)}@media (max-width: 640px){.vla-topbar{padding:8px 10px;gap:8px;flex-wrap:wrap}.vla-usermenu__id{display:none}.vla-usermenu__panel{width:244px}}.vla-topbar .pf-mode-toggle{background:transparent;border:1px solid var(--bd);color:var(--fg);padding:6px 10px;border-radius:8px;font-size:12px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;height:36px}.vla-topbar .pf-mode-toggle:hover{background:var(--hover-tint)}.vla-topbar .pf-theme-swatch{width:14px;height:14px;border-radius:50%;border:1px solid var(--bd);display:inline-block}.vla-topbar .pf-appearance{position:absolute;right:0;top:calc(100% + 8px);z-index:200;background:var(--panel);border:1px solid var(--bd);border-radius:12px;box-shadow:var(--shadow-lg, 0 8px 30px rgba(0, 0, 0, .35));padding:12px;min-width:260px}.vla-topbar .pf-appearance h4{margin:0 0 8px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--mut)}.vla-topbar .pf-theme-row{display:flex;align-items:center;gap:10px;padding:6px 8px;border-radius:6px;cursor:pointer;color:var(--fg);font-size:13px}.vla-topbar .pf-theme-row:hover{background:var(--hover-tint)}.vla-topbar .pf-theme-row.active{background:var(--hover-tint);color:var(--accent);font-weight:600}.vla-spinner{display:inline-flex;flex-direction:column;align-items:center;gap:10px;color:var(--mut);font-size:13px}.vla-spinner--full{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:var(--bg);z-index:100050}.vla-spinner__ring{width:28px;height:28px;border-radius:50%;border:2.5px solid var(--bd);border-top-color:var(--accent);animation:vla-spin .9s linear infinite}.vla-spinner--sm .vla-spinner__ring{width:18px;height:18px;border-width:2px}.vla-spinner--lg .vla-spinner__ring{width:40px;height:40px;border-width:3px}.vla-spinner__label{color:var(--mut)}@keyframes vla-spin{to{transform:rotate(360deg)}}main.vla-route-container{min-height:100vh;padding:0;background:var(--bg)}main.vla-route-container{animation:vla-fade-in .12s ease}@keyframes vla-fade-in{0%{opacity:.6}to{opacity:1}}.vla-auth-viewport{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:20px;background:radial-gradient(900px 520px at 50% -8%,#15233f,var(--bg));color:var(--fg);font-family:Inter,system-ui,sans-serif}:root[data-theme=light] .vla-auth-viewport{background:var(--gradient-hero)}:root,:root[data-theme=dark]{--bg: #0b1220;--panel: #111827;--panel2: #0f1626;--panel-2: #0f1626;--bd: #1f2937;--bd-strong: #374151;--bd-soft: rgba(255, 255, 255, .06);--accent: #22d3ee;--accent-2: #67e8f9;--accent-fg: #06121a;--fg: #e5e7eb;--mut: #9ca3af;--danger: #ef4444;--up: #10b981;--down: #ef4444;--warn: #f59e0b;--info: #3b82f6;--shadow-sm: 0 4px 12px rgba(0, 0, 0, .2);--shadow-md: 0 12px 30px rgba(0, 0, 0, .35);--shadow-lg: 0 24px 60px rgba(0, 0, 0, .45);--focus-ring: rgba(34, 211, 238, .15);--hover-tint: rgba(34, 211, 238, .08);--status-success-bg: rgba(16, 185, 129, .15);--status-success-fg: #10b981;--status-failed-bg: rgba(239, 68, 68, .15);--status-failed-fg: #ef4444;--status-warning-bg: rgba(245, 158, 11, .15);--status-warning-fg: #f59e0b;--status-info-bg: rgba(34, 211, 238, .15);--status-info-fg: #22d3ee;--gradient-hero: radial-gradient(900px 520px at 50% -8%, #15233f, var(--bg))}:root[data-theme=light]{--bg: #f5f5f5;--panel: #ffffff;--panel2: #fafafa;--panel-2: #fafafa;--bd: #d4d4d4;--bd-strong: #a3a3a3;--bd-soft: rgba(23, 23, 23, .06);--accent: #404040;--accent-2: #171717;--accent-fg: #ffffff;--fg: #171717;--mut: #525252;--danger: #b91c1c;--up: #166534;--down: #b91c1c;--warn: #b45309;--info: #1e40af;--shadow-sm: 0 4px 12px rgba(23, 23, 23, .06);--shadow-md: 0 12px 30px rgba(23, 23, 23, .08);--shadow-lg: 0 20px 40px rgba(23, 23, 23, .12);--focus-ring: rgba(64, 64, 64, .2);--hover-tint: rgba(64, 64, 64, .06);--status-success-bg: rgba(22, 101, 52, .12);--status-success-fg: #166534;--status-failed-bg: rgba(185, 28, 28, .12);--status-failed-fg: #b91c1c;--status-warning-bg: rgba(180, 83, 9, .12);--status-warning-fg: #b45309;--status-info-bg: rgba(30, 64, 175, .12);--status-info-fg: #1e40af;--gradient-hero: radial-gradient(900px 520px at 50% -8%, #e5e5e5, var(--bg))}:root[data-theme=blue]{--bg: #0b1226;--panel: #0f172a;--panel2: #111827;--panel-2: #111827;--bd: #1e3a8a;--bd-strong: #1d4ed8;--bd-soft: rgba(255, 255, 255, .06);--accent: #3b82f6;--accent-2: #60a5fa;--accent-fg: #001d4d;--fg: #e5e7eb;--mut: #93c5fd;--danger: #ef4444;--up: #10b981;--down: #ef4444;--warn: #f59e0b;--info: #60a5fa;--shadow-sm: 0 4px 12px rgba(0, 0, 0, .2);--shadow-md: 0 12px 30px rgba(0, 0, 0, .35);--shadow-lg: 0 24px 60px rgba(0, 0, 0, .45);--focus-ring: rgba(59, 130, 246, .2);--hover-tint: rgba(59, 130, 246, .1);--status-success-bg: rgba(16, 185, 129, .15);--status-success-fg: #10b981;--status-failed-bg: rgba(239, 68, 68, .15);--status-failed-fg: #ef4444;--status-warning-bg: rgba(245, 158, 11, .15);--status-warning-fg: #f59e0b;--status-info-bg: rgba(59, 130, 246, .15);--status-info-fg: #60a5fa;--gradient-hero: radial-gradient(900px 520px at 50% -8%, #1e3a8a, var(--bg))}:root[data-theme=green]{--bg: #0b1a13;--panel: #0f1f18;--panel2: #12271d;--panel-2: #12271d;--bd: #14532d;--bd-strong: #166534;--bd-soft: rgba(255, 255, 255, .06);--accent: #10b981;--accent-2: #34d399;--accent-fg: #002516;--fg: #e5e7eb;--mut: #86efac;--danger: #ef4444;--up: #10b981;--down: #ef4444;--warn: #f59e0b;--info: #34d399;--shadow-sm: 0 4px 12px rgba(0, 0, 0, .2);--shadow-md: 0 12px 30px rgba(0, 0, 0, .35);--shadow-lg: 0 24px 60px rgba(0, 0, 0, .45);--focus-ring: rgba(16, 185, 129, .2);--hover-tint: rgba(16, 185, 129, .1);--status-success-bg: rgba(16, 185, 129, .15);--status-success-fg: #10b981;--status-failed-bg: rgba(239, 68, 68, .15);--status-failed-fg: #ef4444;--status-warning-bg: rgba(245, 158, 11, .15);--status-warning-fg: #f59e0b;--status-info-bg: rgba(16, 185, 129, .15);--status-info-fg: #34d399;--gradient-hero: radial-gradient(900px 520px at 50% -8%, #14532d, var(--bg))}:root,*{scrollbar-width:thin;scrollbar-color:#374151 #0f1626}:root[data-mode=light],:root[data-mode=light] *{scrollbar-color:#cbd5e1 #f1f5f9}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-track{background:var(--panel2)}*::-webkit-scrollbar-thumb{background:#374151;border-radius:8px;border:2px solid var(--panel2)}*::-webkit-scrollbar-thumb:hover{background:#4b5563}*::-webkit-scrollbar-corner{background:var(--panel2)}:root[data-mode=light] *::-webkit-scrollbar-thumb{background:#cbd5e1;border-color:var(--panel2)}:root[data-mode=light] *::-webkit-scrollbar-thumb:hover{background:#94a3b8}[data-mode=light] body{background:var(--bg)!important;color:var(--fg)}[data-mode=light] body:has(.card){background:var(--gradient-hero)!important}[data-mode=light] .card,[data-mode=light] .panel,[data-mode=light] .chartCard{box-shadow:var(--shadow-md)!important}[data-mode=light] input,[data-mode=light] select,[data-mode=light] textarea,[data-mode=light] pre,[data-mode=light] code{background:var(--panel2)!important;color:var(--fg)!important;border-color:var(--bd)}[data-mode=light] input::placeholder,[data-mode=light] textarea::placeholder{color:var(--mut)}[data-mode=light] input:focus,[data-mode=light] select:focus,[data-mode=light] textarea:focus{border-color:var(--accent)!important;box-shadow:0 0 0 3px var(--focus-ring)!important}[data-mode=light] .btn:not(.g):not(.ghost):not(.pf-btn-ghost):not(.pf-btn-gold),[data-mode=light] .btn-primary,[data-mode=light] .btn-danger,[data-mode=light] .pf-btn-primary,[data-mode=light] .pf-btn-danger,[data-mode=light] .pf-btn-gold-filled{color:var(--accent-fg)!important}[data-mode=light] button:not(.rm):not(#themeToggle):not(.iconBtn):not(.chip):not(.qBtn):not(.nfAct):not(.gsAct):not(.g):not(.ghost):not(.pf-btn-ghost):not(.pf-btn-gold):not(.pf-btn):not(.pf-tab):not([type=reset]):not([data-theme-btn]){color:var(--fg)}[data-mode=light] .btn.g,[data-mode=light] .btn.ghost{background:var(--panel2)!important;color:var(--fg)!important;border:1px solid var(--bd)!important}[data-mode=light] .pf-btn-ghost,[data-mode=light] .pf-btn-gold,[data-mode=light] .btn.ghost{color:var(--fg)!important}[data-mode=light] input[type=number],[data-mode=light] input[type=search]{background:#fff!important;color:var(--fg)!important;border-color:var(--bd)!important}[data-mode=light] .rm{color:var(--danger)!important;background:transparent!important;border-color:#dc262659!important}[data-mode=light] .err{background:var(--status-failed-bg)!important;color:var(--status-failed-fg)!important}[data-mode=light] .msg.ok{background:var(--status-info-bg)!important;color:#0369a1!important}[data-mode=light] .msg.err{background:var(--status-failed-bg)!important;color:#b91c1c!important}[data-mode=light] .st.success{background:var(--status-success-bg)!important;color:var(--status-success-fg)!important}[data-mode=light] .st.failed{background:var(--status-failed-bg)!important;color:var(--status-failed-fg)!important}[data-mode=light] .st.warning{background:var(--status-warning-bg)!important;color:var(--status-warning-fg)!important}[data-mode=light] .st.info{background:var(--status-info-bg)!important;color:var(--status-info-fg)!important}[data-mode=light] .tbl th,[data-mode=light] table th{color:var(--mut)!important;background:transparent!important}[data-mode=light] .ds h4,[data-mode=light] .ds>div{background:var(--panel2)!important}[data-mode=light] .usp li{color:var(--fg)!important}[data-mode=light] .ft,[data-mode=light] .ft *{color:var(--mut)}[data-mode=light] .ft a{color:var(--accent)!important}[data-mode=light] .chip.active{color:var(--accent-fg)!important}[data-mode=light] .listItem{border-color:var(--bd)!important}[data-mode=light] .empty{border-color:var(--bd)!important;color:var(--mut)}.modal,.dialog,[role=dialog],.drawer,.side{background:var(--panel);color:var(--fg);border:1px solid var(--bd);box-shadow:var(--shadow-lg)}.overlay,.backdrop,.modal-backdrop{background:#0000008c}[data-mode=light] .overlay,[data-mode=light] .backdrop,[data-mode=light] .modal-backdrop{background:#0f172a52}.dropdown,.dropdown-menu,.menu,.popover{background:var(--panel);color:var(--fg);border:1px solid var(--bd);box-shadow:var(--shadow-md)}.dropdown-item:hover,.menu-item:hover,[role=menuitem]:hover{background:var(--hover-tint)}.tooltip,[role=tooltip]{background:var(--fg);color:var(--bg);font-size:12px;padding:5px 8px;border-radius:4px}.toast,.snackbar{background:var(--panel);color:var(--fg);border:1px solid var(--bd);box-shadow:var(--shadow-lg);border-radius:10px}.toast.success,.toast-success{border-color:var(--status-success-fg)}.toast.error,.toast-error{border-color:var(--status-failed-fg)}.toast.warning,.toast-warning{border-color:var(--status-warning-fg)}.toast.info,.toast-info{border-color:var(--status-info-fg)}.spinner,.loader{color:var(--accent)}.empty-state{color:var(--mut)}.empty-state svg{opacity:.6}.footer,footer.app-footer{background:var(--panel);color:var(--mut);border-top:1px solid var(--bd)}.calendar,.datepicker{background:var(--panel);color:var(--fg);border:1px solid var(--bd)}.calendar .day,.datepicker-day{color:var(--fg)}.calendar .day:hover,.datepicker-day:hover{background:var(--hover-tint)}.calendar .day.selected,.datepicker-day.selected{background:var(--accent);color:var(--accent-fg)}.file-upload,.dropzone{background:var(--panel2);border:2px dashed var(--bd);color:var(--mut);border-radius:10px;padding:20px}.file-upload:hover,.dropzone:hover{border-color:var(--accent);color:var(--fg)}.file-upload.active,.dropzone.active{background:var(--hover-tint);border-color:var(--accent)}.breadcrumb{color:var(--mut);font-size:13px}.breadcrumb a{color:var(--accent);text-decoration:none}.breadcrumb a:hover{text-decoration:underline}.pagination{display:flex;gap:4px}.pagination button,.pagination a{background:var(--panel);color:var(--fg);border:1px solid var(--bd);padding:6px 10px;border-radius:6px;cursor:pointer;font-family:inherit}.pagination button:hover,.pagination a:hover{border-color:var(--accent)}.pagination .active{background:var(--accent);color:var(--accent-fg);border-color:var(--accent)}.pagination [disabled]{opacity:.4;cursor:not-allowed}.sidebar,aside.sidebar{background:var(--panel);color:var(--fg);border-right:1px solid var(--bd)}.sidebar a,.sidebar-link{color:var(--fg);text-decoration:none}.sidebar a:hover,.sidebar-link:hover{background:var(--hover-tint);color:var(--accent)}.sidebar a.active,.sidebar-link.active{background:var(--hover-tint);color:var(--accent);font-weight:600}.navbar,.topbar{background:var(--panel);color:var(--fg);border-bottom:1px solid var(--bd)}#themeToggle{transition:background .15s,border-color .15s,color .15s}#themeToggle:hover{border-color:var(--accent)!important;color:var(--accent)!important}#themeToggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}*,*:before,*:after{box-sizing:border-box}html{background:var(--bg);color:var(--fg);min-height:100vh;overflow-x:hidden}body{margin:0;padding:0;min-height:100vh;background:var(--bg);color:var(--fg);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:opacity .12s ease;overflow-x:hidden;overflow-wrap:break-word;word-break:normal}main,section,aside,article,header,footer,.vla-shift,.vla-route-container,.k-shell,.k-top{min-width:0}body.vla-navigating{opacity:.45;pointer-events:none}#root{min-height:100vh}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button{font-family:inherit}
