*{box-sizing:border-box;font-family:var(--font-font)}html,body{margin:0;padding:0;height:100vh;overflow:hidden}body{font-family:var(--font-font);background-color:var(--background-mainbg);transition:background-color .2s ease;display:flex;flex-direction:column;height:100vh}.blockquote-form{font-size:var(--text-content-xs);line-height:16px!important;color:var(--va-color-black-60);padding-left:var(--space-l)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--va-background-basebg);border-radius:4px}::-webkit-scrollbar-thumb{background:var(--va-color-black-30);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--va-color-black-50)}[data-bs-theme=dark] ::-webkit-scrollbar-thumb{background:var(--va-color-black-30)}[data-bs-theme=dark] ::-webkit-scrollbar-thumb:hover{background:var(--va-color-black-50)}.app-header{background-color:var(--background-headerpanel);border-bottom:1px solid var(--border-mainborder);padding:0 var(--space-s);flex-shrink:0;display:flex;flex-direction:column}.app-header-top{display:flex;align-items:center;justify-content:space-between;height:56px;gap:var(--space-m)}.header-left{min-width:0;flex:1 1 auto;display:flex;align-items:center}.header-right{flex:0 0 auto;display:flex;align-items:center;gap:var(--space-s)}.logo{padding-right:32px;border-right:1px solid var(--border-logo);flex-shrink:0}.logo img{width:120px;display:block}.app-header .tabs-bar{margin:0;padding:0 0 0 var(--space-l);height:40px;flex:1 1 auto;min-width:0}.app-header .tab-home{flex-shrink:0;min-width:0;padding:6px 12px;text-decoration:none;margin-right:var(--space-s)}.app-header .tab-home .tab-label i{font-size:16px}.tab-close-all[hidden],.tabs-nav-controls[hidden]{display:none}.header-admin-btn{width:40px;height:40px;border:1px solid var(--border-mainborder);border-radius:var(--radius-m);background:var(--va-background-cardbasebg);color:var(--va-color-black-80);font-size:var(--text-content-m);display:inline-flex;align-items:center;justify-content:center;text-decoration:none;flex-shrink:0;transition:background-color .15s ease,color .15s ease}.header-admin-btn:is(:hover,.active){background-color:var(--va-color-blue-10);color:var(--va-base-primary)}.header-nav{display:flex;gap:var(--space-xs);padding:var(--space-xs) 0;border-top:1px solid var(--border-mainborder);min-width:0}.header-nav[hidden]{display:none}.header-nav a{text-decoration:none}.header-nav-item{padding:var(--space-m) var(--space-l);font-size:var(--text-content-s);color:var(--navheader-content);display:flex;gap:var(--space-m);border-radius:var(--radius-m);cursor:pointer;position:relative;white-space:nowrap}.header-nav-item-active{background:var(--navheader-active);border-radius:var(--radius-m);border:1px solid var(--border-mainborder);padding:var(--space-m) var(--space-l);font-size:var(--text-content-s);color:var(--navheader-active-content);display:flex;gap:var(--space-m);position:relative;white-space:nowrap}.header-nav-item:hover{border-radius:var(--radius-m);background:var(--navheader-hover);color:var(--navheader-hover-content);cursor:pointer}.header-nav-item-active-marker{position:absolute;bottom:-1px;left:50%;transform:translate(-50%);background:var(--navheader-active-marker);height:2px;width:64px;border-radius:var(--radius-pill)}.tabs-bar{padding:0 8px 0 16px;margin:8px 0 0;flex-shrink:0;height:34px;display:flex;align-items:stretch;overflow:hidden}.tabs-container{display:flex;align-items:stretch;width:100%;height:100%;position:relative;gap:0}.tabs-scroll-wrapper{flex:1;overflow:hidden;height:100%;position:relative}.tabs-list{display:flex;align-items:stretch;gap:0;height:100%;padding:0;white-space:nowrap;transition:transform .25s ease;will-change:transform}.tab-item{display:inline-flex;align-items:center;gap:8px;padding:6px 16px;height:100%;background:transparent;color:var(--navheader-content);font-size:var(--text-content-s);font-weight:400;cursor:pointer;-webkit-user-select:none;user-select:none;flex-shrink:0;transition:all .2s ease;border:none;border-bottom:2px solid transparent;position:relative;min-width:50px;max-width:220px;border-radius:var(--radius-m)}.tab-item .tab-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;display:flex;align-items:center;gap:8px}.tab-item .tab-label i{font-size:14px;color:var(--navheader-content)}.tab-item:hover{background-color:var(--navheader-hover);color:var(--navheader-hover-content);border-radius:var(--radius-m)}.tab-item:hover .tab-label i{color:var(--navheader-hover-content)}.tab-item.active{background:var(--navheader-active);color:var(--navheader-active-content);border-radius:var(--radius-m);border:1px solid var(--border-mainborder);position:relative}.tab-item.active .tab-label i{color:var(--navheader-active-content)}.tab-item.active:after{content:"";position:absolute;bottom:-1px;left:50%;transform:translate(-50%);background:var(--va-base-primary);height:2px;width:32px;border-radius:var(--radius-pill)}.tab-item .tab-close{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border:none;background:transparent;color:var(--va-color-black-40);border-radius:var(--radius-s);cursor:pointer;font-size:14px;padding:0;flex-shrink:0;transition:all .15s ease;line-height:1}.tab-item .tab-close:hover{background-color:var(--va-color-red-10);color:var(--va-base-danger)}.tab-item.active .tab-close{color:var(--va-color-black-50)}.tab-item.active .tab-close:hover{background-color:var(--va-color-red-10);color:var(--va-base-danger)}.tab-close-all{display:inline-flex;align-items:center;gap:4px;padding:4px 12px 4px 8px;height:100%;background:transparent;color:var(--va-color-black-50);font-size:var(--text-content-xs);font-weight:500;cursor:pointer;-webkit-user-select:none;user-select:none;flex-shrink:0;transition:all .2s ease;border:none;border-left:1px solid var(--border-mainborder);margin-left:4px;border-radius:8px}.tab-close-all i{font-size:12px}.tab-close-all:hover{color:var(--va-base-danger);background-color:var(--va-color-red-10)}.tab-close-all:active{background-color:var(--va-color-red-20)}.tabs-nav-controls{display:flex;align-items:center;gap:2px;padding:0 8px;flex-shrink:0;height:100%}.tab-nav-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:none;border-radius:var(--radius-s);background:transparent;color:var(--va-color-black-80);cursor:pointer;transition:all .15s ease;font-size:14px;padding:0;flex-shrink:0}.tab-nav-btn:hover:not(:disabled){background-color:var(--va-color-blue-10);color:var(--va-base-primary)}.tab-nav-btn:disabled{color:var(--va-color-black-30);cursor:not-allowed;pointer-events:none}[data-bs-theme=dark] .tabs-bar{border-bottom-color:var(--border-mainborder)}[data-bs-theme=dark] .tab-item{color:var(--navheader-content)}[data-bs-theme=dark] .tab-item:hover{background-color:var(--navheader-hover);color:var(--navheader-hover-content)}[data-bs-theme=dark] .tab-item.active{background:var(--navheader-active);color:var(--navheader-active-content);border-color:var(--border-mainborder);border-bottom-color:var(--background-workarea)}[data-bs-theme=dark] .tab-item .tab-close{color:var(--va-color-black-40)}[data-bs-theme=dark] .tab-item .tab-close:hover{background-color:var(--va-color-red-20);color:var(--va-base-danger)}[data-bs-theme=dark] .tab-close-all{color:var(--va-color-black-50);border-left-color:var(--border-mainborder)}[data-bs-theme=dark] .tab-close-all:hover{color:var(--va-base-danger);background-color:var(--va-color-red-20)}[data-bs-theme=dark] .tab-close-all:active{background-color:var(--va-color-red-30)}.profile-panel-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;z-index:1000;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}.profile-panel-overlay.open{opacity:1;visibility:visible}.profile-panel{position:fixed;top:0;right:-420px;width:400px;height:100%;background-color:var(--background-headerpanel);border-left:1px solid var(--border-mainborder);z-index:1001;transition:right .3s ease;display:flex;flex-direction:column;box-shadow:-4px 0 20px #0000001a}.profile-panel.open{right:0}.profile-panel-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-l);border-bottom:1px solid var(--border-mainborder);flex-shrink:0}.profile-panel-header h5{color:var(--va-color-black-100);margin:0;font-weight:600}.profile-panel-close{width:36px;height:36px;border:none;background:transparent;color:var(--va-color-black-100);font-size:18px;cursor:pointer;border-radius:var(--radius-pill);display:flex;align-items:center;justify-content:center}.profile-panel-close:hover{background-color:var(--va-color-blue-10);color:var(--va-base-primary)}.profile-panel-body{padding:var(--space-l);overflow-y:auto;flex:1}.profile-panel-footer{flex-shrink:0;padding:var(--space-m) var(--space-l);border-top:1px solid var(--border-mainborder);font-size:var(--text-content-xs);color:var(--va-color-black-40);text-align:center;font-variant-numeric:tabular-nums}.profile-user-info{display:flex;align-items:center;gap:var(--space-m);padding:var(--space-m) 0}.profile-avatar{width:56px;height:56px;border-radius:var(--radius-pill);background-color:var(--va-color-blue-10);display:flex;align-items:center;justify-content:center;font-size:32px;color:var(--va-base-primary)}.profile-user-name{font-size:var(--text-content-l);font-weight:600;color:var(--va-color-black-100)}.profile-user-role{font-size:var(--text-content-s);color:var(--va-color-black-60)}.profile-divider{margin:var(--space-l) 0;border-color:var(--border-mainborder)}.profile-setting{display:flex;align-items:center;justify-content:space-between;padding:var(--space-m) 0;gap:var(--space-m)}.profile-setting-label{display:flex;align-items:center;gap:var(--space-s);color:var(--va-color-black-100);font-size:var(--text-content-m)}.profile-setting-label i{font-size:var(--text-content-l);color:var(--va-base-primary);width:24px}.profile-setting-control{display:flex;align-items:center;gap:var(--space-s)}.profile-toggle{width:40px;height:40px;border:1px solid var(--border-mainborder);border-radius:var(--radius-m);background:var(--va-background-cardbasebg);color:var(--va-color-black-80);cursor:pointer;font-size:var(--text-content-m);padding:0;flex-shrink:0}.profile-toggle:hover{background-color:var(--va-color-blue-10);color:var(--va-base-primary)}.username-base{color:var(--va-color-black-60);font-size:14px;font-weight:500;margin-right:4px}.fullscreen-toggle{width:40px;height:40px;border:1px solid var(--border-mainborder);border-radius:var(--radius-m);background:var(--va-background-cardbasebg);color:var(--va-color-black-80);cursor:pointer;padding:0;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;transition:background-color .15s ease,color .15s ease}.fullscreen-toggle:hover{background-color:var(--va-color-blue-10);color:var(--va-base-primary)}.fullscreen-toggle .fullscreen-icon{width:16px;height:16px;filter:brightness(0) saturate(100%) invert(18%) sepia(9%) saturate(1228%) hue-rotate(190deg) brightness(92%) contrast(87%)}[data-bs-theme=dark] .fullscreen-toggle .fullscreen-icon{filter:brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(0%) hue-rotate(0deg) brightness(100%) contrast(100%)}.fullscreen-toggle:hover .fullscreen-icon{filter:brightness(0) saturate(100%) invert(26%) sepia(39%) saturate(1952%) hue-rotate(214deg) brightness(96%) contrast(94%)}[data-bs-theme=dark] .fullscreen-toggle:hover .fullscreen-icon{filter:brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(0%) hue-rotate(0deg) brightness(100%) contrast(100%)}[data-bs-theme=dark] .fullscreen-toggle,[data-bs-theme=dark] .profile-toggle,[data-bs-theme=dark] .header-admin-btn{background-color:var(--va-background-cardbasebg);border-color:var(--va-border-card);color:var(--va-color-black-80)}[data-bs-theme=dark] .fullscreen-toggle:hover,[data-bs-theme=dark] .profile-toggle:hover,[data-bs-theme=dark] .header-admin-btn:is(:hover,.active){background-color:var(--va-color-blue-10);color:var(--va-base-primary)}#app,.app-shell-view{display:flex;flex-direction:column;flex:1 1 auto;min-height:0}.app-content{display:flex;flex-direction:column;padding:var(--space-l);flex:1 1 auto;min-height:0;overflow-y:hidden}.app-content .content-wrapper{flex:1 1 auto;min-height:0;overflow-y:auto;height:100%}.content-wrapper{background-color:var(--background-workarea);padding:var(--space-m);border-radius:var(--radius-l);border:1px solid var(--border-mainborder);font-size:var(--text-content-m);line-height:var(--text-content-m-line-height)!important;display:flex;flex-direction:column;gap:var(--space-l);height:100%}.profile-setting.about-link .profile-setting-label:hover{color:var(--va-base-primary)}.profile-setting.about-link .profile-setting-label i{transition:color .2s ease}.profile-setting.about-link .profile-setting-label:hover i{color:var(--va-base-primary)}@media (max-width: 1439.98px){.logo{padding-right:var(--space-l)}.app-header .tabs-bar{padding-left:var(--space-m)}.app-header .tab-item{max-width:180px}.header-nav{gap:0}.header-nav-item,.header-nav-item-active{padding:var(--space-m);gap:var(--space-s)}.username-base{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}@media (max-width: 1199.98px){.header-nav-item .nav-label,.header-nav-item-active .nav-label{display:none}.header-nav-item,.header-nav-item-active{padding:var(--space-m) var(--space-l)}.header-nav-item i,.header-nav-item-active i{font-size:var(--text-content-l)}.app-header .tab-item{max-width:150px}}@media (max-width: 991.98px){.username-base{display:none}}@media (max-width: 767.98px){.logo{padding-right:var(--space-m)}.logo img{width:92px}.app-header .tabs-bar{padding-left:var(--space-s)}.tab-close-all .tab-close-all-label{display:none}.app-header .tab-item{max-width:120px;padding:4px 10px 4px 14px;font-size:var(--text-content-xs);min-width:40px;gap:4px}.tab-item .tab-close{width:18px;height:18px;font-size:12px}.tab-nav-btn{width:26px;height:26px;font-size:12px}.tab-close-all{padding:2px 8px 2px 6px}.tab-close-all i{font-size:14px}}@media (max-width: 575.98px){.logo{padding-right:var(--space-s);border-right:none}.logo img{width:40px;height:40px;object-fit:cover;object-position:left center}.app-header .tabs-bar{padding-left:0}.app-header .tab-home{padding:6px 8px;margin-right:0}.app-header .tab-item{max-width:100px}.header-nav{overflow-x:auto;scrollbar-width:none}.header-nav::-webkit-scrollbar{display:none}.header-nav-item,.header-nav-item-active{padding:var(--space-m) var(--space-s);flex-shrink:0}.header-admin-btn{width:36px;height:36px}}@media (max-width: 991.98px){body{padding:var(--space-m);gap:var(--space-m)}.app-header{padding:0 var(--space-m);border-radius:var(--radius-m)}.app-content{padding:var(--space-m);border-radius:var(--radius-m)}.profile-panel{width:340px;right:-360px}}@media (max-width: 575.98px){body{padding:var(--space-s);gap:var(--space-s)}.app-header{padding:0 var(--space-s);border-radius:var(--radius-s)}.app-content{padding:var(--space-s);border-radius:var(--radius-s)}.profile-panel{width:100%;right:-100%}.profile-toggle{width:36px;height:36px;font-size:var(--text-content-m)}}.btn{border-radius:var(--radius-m);height:34px;padding:0 16px;font-size:var(--text-content-s);line-height:24px;font-family:inherit;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:none;transition:background-color .15s ease,border-color .15s ease,color .15s ease,opacity .15s ease;outline:none;-webkit-user-select:none;user-select:none;white-space:nowrap}.btn:focus-visible{box-shadow:0 0 0 3px var(--va-color-blue-20)}.btn.btn-primary{background-color:var(--va-button-primary-default);border-color:transparent;color:var(--va-base-permanent-white)}.btn.btn-primary:hover{background-color:var(--va-button-primary-hover);color:var(--va-base-permanent-white)}.btn.btn-primary:active{background-color:var(--va-button-primary-active);border-color:transparent;color:var(--va-base-permanent-white)}.btn.btn-secondary{background-color:transparent;border:1px solid var(--va-button-secondary-default);color:var(--va-button-secondary-default)}.btn.btn-secondary:hover{background-color:var(--va-color-blue-10);border-color:var(--va-button-secondary-hover);color:var(--va-button-secondary-hover)}.btn.btn-secondary:active{background-color:var(--va-color-blue-10);border-color:var(--va-button-secondary-active);color:var(--va-button-secondary-active)}.btn.btn-flat{background-color:var(--va-button-flat-default);border-color:transparent;color:var(--va-color-black-100)}.btn.btn-flat:hover{background-color:var(--va-button-flat-hover);color:var(--va-color-black-100)}.btn.btn-flat:active{background-color:var(--va-button-flat-active);border-color:transparent;color:var(--va-base-permanent-white)}.btn.btn-text{background-color:transparent;border-color:transparent;padding:0 8px;color:var(--va-base-primary)}.btn.btn-text:hover{background-color:var(--va-color-blue-10);color:var(--va-base-primary)}.btn.btn-text:active{background-color:var(--va-color-blue-10);border-color:transparent;color:var(--va-button-primary-active)}.btn.btn-icon{background-color:transparent;border-color:transparent;width:34px;padding:0;color:var(--va-base-primary)}.btn.btn-icon:hover{background-color:var(--va-color-blue-10);color:var(--va-base-primary)}.btn.btn-icon:active{background-color:var(--va-button-primary-hover);border-color:transparent;color:var(--va-base-permanent-white)}.btn.btn-danger{background-color:var(--va-base-danger);border-color:transparent;color:var(--va-base-permanent-white)}.btn.btn-danger:hover,.btn.btn-danger:active{background-color:var(--va-color-red-80);border-color:transparent;color:var(--va-base-permanent-white)}.btn.btn-outline-danger{background-color:transparent;border:1px solid var(--va-base-danger);color:var(--va-base-danger)}.btn.btn-outline-danger:hover,.btn.btn-outline-danger:active{background-color:var(--va-color-red-10);border-color:var(--va-color-red-80);color:var(--va-base-danger)}.btn:disabled{opacity:.4;pointer-events:none}.modal-content{background-color:var(--va-background-modal);border:none;border-radius:var(--radius-l);box-shadow:var(--shadow-modal)}.modal-header{border:none;padding:var(--space-l);padding-bottom:0}.modal-footer{border-top:none;padding:var(--space-l);gap:var(--space-s)}.modal-title{font-size:var(--text-h3-size);line-height:var(--text-h3-line-height);font-weight:var(--text-h3-font-weight);color:var(--va-color-black-100)}.btn-close-custom{color:var(--va-color-black-60);border:none;background:none;border-radius:var(--radius-m);width:36px;height:36px;display:flex;align-items:center;justify-content:center;font-size:20px;transition:background-color .15s ease}.btn-close-custom:hover{color:var(--va-color-black-100);background:var(--va-color-black-10)}.table-container{width:100%;height:100%;border-radius:var(--radius-m);overflow-x:auto;border:1px solid var(--border-mainborder);position:relative;flex-shrink:0}.table-container-inner{border:none;border-radius:0}.table-pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-m);padding:0;margin-top:var(--space-m);flex-shrink:0}.table-pagination .record-info,.table-pagination .page-info{font-size:var(--text-content-s);color:var(--va-color-black-60)}.table-pagination .pagination-controls{display:flex;align-items:center;gap:var(--space-m)}.table-pagination .pagination-controls .btn{height:32px;width:32px;padding:0;flex-shrink:0;font-size:var(--text-content-s)}.table-pagination .per-page-select{display:flex;align-items:center;gap:8px;font-size:var(--text-content-s);color:var(--va-color-black-60)}.table-pagination .per-page-select select{padding:4px 8px;border-radius:var(--radius-m);border:1px solid var(--border-mainborder);background:var(--va-background-cardbasebg);color:var(--va-color-black-100);font-size:var(--text-content-s);height:32px;cursor:pointer}.form-control,.form-select{height:36px;padding:0 12px;font-size:var(--text-content-s);line-height:34px;border-radius:var(--radius-m);border:1px solid var(--border-mainborder);background-color:var(--va-background-cardbasebg);color:var(--va-color-black-100);box-shadow:none;transition:border-color .15s ease,box-shadow .15s ease}.form-select{padding-right:36px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 6l4 4 4-4' fill='none' stroke='%23656e7a' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:16px 16px}[data-bs-theme=dark] .form-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 6l4 4 4-4' fill='none' stroke='%23ffffff' stroke-opacity='0.6' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}.form-control::placeholder{color:var(--va-color-black-40)}.form-control:hover:not(:disabled):not(:focus),.form-select:hover:not(:disabled):not(:focus){border-color:var(--va-color-black-30)}.form-control:focus,.form-select:focus{border-color:var(--va-base-primary);box-shadow:0 0 0 3px var(--va-color-blue-20);outline:none;background-color:var(--va-background-cardbasebg);color:var(--va-color-black-100)}.form-control.is-invalid,.form-select.is-invalid{border-color:var(--va-base-danger)}.form-control.is-invalid{background-image:none;padding-right:12px}.form-control.is-invalid:focus,.form-select.is-invalid:focus{border-color:var(--va-base-danger);box-shadow:0 0 0 3px var(--va-color-red-20)}.form-control:disabled,.form-select:disabled{background-color:var(--va-background-cardbasebg);color:var(--va-color-black-100);opacity:.5;cursor:not-allowed}.invalid-feedback{font-size:var(--text-content-xs);color:var(--va-base-danger);margin-top:4px;display:none}.form-control.is-invalid~.invalid-feedback{display:block}.input-group-icon{position:relative}.input-group-icon .form-control{padding-left:36px}.input-group-icon .input-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--va-color-black-40);font-size:16px;line-height:1;pointer-events:none;z-index:2;transition:color .15s ease}.input-group-icon .form-control:focus~.input-icon{color:var(--va-base-primary)}.input-group-icon .form-control.has-action{padding-right:36px}.input-group-icon .form-control.has-actions{padding-right:60px}.input-group-icon .input-actions{position:absolute;right:8px;top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:2px;z-index:3}.input-action{width:22px;height:22px;padding:0;border:none;border-radius:var(--radius-s);background:none;color:var(--va-color-black-40);font-size:16px;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:color .15s ease,background-color .15s ease}.input-action:hover{color:var(--va-color-black-70);background:var(--va-color-black-5)}.input-group-icon .form-control.is-invalid~.input-actions .input-action{color:var(--va-base-danger)}.form-check-input[type=checkbox]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:20px;height:20px;margin:0;flex-shrink:0;border:1.5px solid var(--va-color-black-30);border-radius:6px;background-color:var(--va-background-cardbasebg);background-repeat:no-repeat;background-position:center;background-size:12px 12px;cursor:pointer;transition:background-color .15s ease,border-color .15s ease}.form-check-input[type=checkbox]:hover:not(:disabled):not(:checked):not(:indeterminate){border-color:var(--va-color-black-50)}.form-check-input[type=checkbox]:checked,.form-check-input[type=checkbox]:indeterminate{background-color:var(--va-base-primary);border-color:var(--va-base-primary)}.form-check-input[type=checkbox]:checked:hover:not(:disabled),.form-check-input[type=checkbox]:indeterminate:hover:not(:disabled){background-color:var(--va-color-blue-90);border-color:var(--va-color-blue-90)}.form-check-input[type=checkbox]:checked{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.3 6.3L4.7 8.7L9.7 3.3' fill='none' stroke='white' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}.form-check-input[type=checkbox]:indeterminate{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cline x1='2.5' y1='6' x2='9.5' y2='6' stroke='white' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E")}.form-check-input[type=checkbox]:focus-visible{outline:none;box-shadow:0 0 0 3px var(--va-color-blue-20)}.form-check-input[type=checkbox]:disabled{cursor:not-allowed;opacity:.5}.form-check-label{cursor:pointer}.form-check-input[type=checkbox]:disabled+.form-check-label{cursor:not-allowed;color:var(--va-color-black-40)}.form-check-input[type=radio]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:20px;height:20px;margin:0;flex-shrink:0;border:1.5px solid var(--va-color-black-30);border-radius:50%;background-color:var(--va-background-cardbasebg);background-image:none;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}.form-check-input[type=radio]:hover:not(:disabled){border-color:var(--va-base-primary);box-shadow:0 0 0 3px var(--va-color-blue-20)}.form-check-input[type=radio]:checked{border:6px solid var(--va-base-primary);background-color:var(--va-background-cardbasebg);background-image:none}.form-check-input[type=radio]:checked:hover:not(:disabled){border-color:var(--va-color-blue-90)}.form-check-input[type=radio]:focus-visible{outline:none;box-shadow:0 0 0 3px var(--va-color-blue-20)}.form-check-input[type=radio]:focus:not(:focus-visible){box-shadow:none}.form-check-input[type=radio]:disabled{cursor:not-allowed;opacity:.5}.form-check-input[type=radio]:disabled+.form-check-label{cursor:not-allowed;color:var(--va-color-black-40)}.switch-toggle-wrapper{display:flex;align-items:center;gap:8px}.switch-label{font-size:12px;color:var(--va-color-black-60);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.switch{position:relative;display:inline-block;width:38px;height:22px;flex-shrink:0}.switch-input{opacity:0;width:0;height:0}.switch-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--va-color-black-30);border-radius:var(--radius-pill);transition:.3s ease}.switch-slider:before{content:"";position:absolute;height:16px;width:16px;left:3px;bottom:3px;background-color:var(--va-base-permanent-white);border-radius:50%;transition:.3s ease;box-shadow:0 1px 4px #0003}.switch-input:checked+.switch-slider{background-color:var(--va-base-primary)}.switch-input:checked+.switch-slider:before{transform:translate(16px)}.switch:hover .switch-slider{box-shadow:0 0 0 3px var(--va-color-blue-20)}.switch-input:disabled+.switch-slider{opacity:.5;cursor:not-allowed}.switch-input:disabled+.switch-slider:before{box-shadow:none}.dropdown-menu{background-color:var(--background-dropdown);border-color:var(--border-mainborder);border-radius:var(--radius-m)}.custom-select-wrapper{position:relative;display:inline-block;width:100%}.custom-select-wrapper select{display:none!important}.custom-select-trigger{display:flex;align-items:center;justify-content:space-between;width:100%;height:36px;padding:4px 12px;font-size:var(--text-content-s);font-weight:400;line-height:1.6;color:var(--va-base-black);background-color:var(--va-background-cardbasebg);border:1px solid var(--border-mainborder);border-radius:var(--radius-m);cursor:pointer;-webkit-user-select:none;user-select:none;transition:border-color .15s ease,box-shadow .15s ease;gap:8px}.custom-select-trigger:hover{border-color:var(--va-color-blue-60)}.custom-select-trigger:focus,.custom-select-trigger.open{border-color:var(--va-base-primary);box-shadow:0 0 0 3px var(--va-color-blue-20);outline:none}.custom-select-trigger .selected-value{color:var(--va-base-black);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.custom-select-trigger .selected-value.custom-placeholder{color:var(--va-color-black-40);font-style:italic}.custom-select-trigger .arrow{flex-shrink:0;color:var(--va-color-black-40);font-size:14px;transition:transform .2s ease}.custom-select-trigger.open .arrow{transform:rotate(180deg)}.custom-select-trigger .clear-btn{display:none;align-items:center;justify-content:center;color:var(--va-color-black-40);cursor:pointer;font-size:16px;padding:0 4px;flex-shrink:0;line-height:1}.custom-select-trigger .clear-btn:hover{color:var(--va-base-danger)}.custom-select-dropdown{position:fixed;z-index:99999;min-width:200px;max-width:400px;max-height:400px;background-color:var(--background-dropdown);border:1px solid var(--border-mainborder);border-radius:var(--radius-m);box-shadow:0 8px 30px #0000001f,0 2px 8px #0000000f;overflow:hidden;display:none;opacity:0;transform:translateY(-8px) scale(.98);transition:opacity .2s ease,transform .2s ease}.custom-select-dropdown.open{display:block;opacity:1;transform:translateY(0) scale(1)}.custom-select-dropdown .search-input{position:sticky;top:0;z-index:2;padding:10px 12px 8px;background-color:var(--va-background-cardbasebg);border-bottom:1px solid var(--border-mainborder)}.custom-select-dropdown .search-input input{width:100%;height:34px;padding:4px 12px 4px 36px;font-size:var(--text-content-s);background-color:var(--va-background-basebg);border:1px solid var(--border-mainborder);border-radius:var(--radius-s);color:var(--va-base-black);outline:none;transition:border-color .15s ease,box-shadow .15s ease;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:10px center;background-size:16px}.custom-select-dropdown .search-input input:focus{border-color:var(--va-base-primary);box-shadow:0 0 0 3px var(--va-color-blue-20);background-color:var(--va-background-cardbasebg)}.custom-select-dropdown .search-input input::placeholder{color:var(--va-color-black-40)}.custom-select-dropdown .options-list{padding:4px 6px;max-height:350px;overflow-y:auto}.custom-select-dropdown .options-list::-webkit-scrollbar{width:5px}.custom-select-dropdown .options-list::-webkit-scrollbar-thumb{background-color:var(--border-mainborder);border-radius:var(--radius-pill)}.custom-select-dropdown .options-list::-webkit-scrollbar-thumb:hover{background-color:var(--va-color-black-30)}.custom-select-option{display:flex;align-items:center;padding:8px 12px;font-size:var(--text-content-s);color:var(--va-base-black);cursor:pointer;transition:background-color .15s ease;border-radius:var(--radius-s);margin:2px 0;gap:8px}.custom-select-option:hover,.custom-select-option.highlighted{background-color:var(--va-color-blue-10)}.custom-select-option.selected{background-color:var(--va-color-blue-20);color:var(--va-base-primary);font-weight:500}.custom-select-option .check-icon{visibility:hidden;color:var(--va-base-primary);font-size:14px;flex-shrink:0;width:18px}.custom-select-option.selected .check-icon{visibility:visible}.custom-select-option .option-label{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.custom-select-dropdown .no-results{padding:16px 12px;text-align:center;color:var(--va-color-black-40);font-size:var(--text-content-s)}[data-bs-theme=dark] .custom-select-trigger{background-color:var(--va-background-cardbasebg);border-color:var(--border-mainborder);color:var(--va-color-black-100)}[data-bs-theme=dark] .custom-select-trigger .selected-value{color:var(--va-color-black-100)}[data-bs-theme=dark] .custom-select-trigger .selected-value.custom-placeholder{color:var(--va-color-black-40)}[data-bs-theme=dark] .custom-select-dropdown{background-color:var(--background-dropdown);border-color:var(--border-mainborder);box-shadow:0 8px 30px #0006}[data-bs-theme=dark] .custom-select-dropdown .search-input{background-color:var(--va-background-cardbasebg);border-bottom-color:var(--border-mainborder)}[data-bs-theme=dark] .custom-select-dropdown .search-input input{background-color:var(--va-background-basebg);border-color:var(--border-mainborder);color:var(--va-color-black-100);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23666666' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'/%3E%3C/svg%3E")}[data-bs-theme=dark] .custom-select-option{color:var(--va-color-black-100)}[data-bs-theme=dark] .custom-select-option:hover,[data-bs-theme=dark] .custom-select-option.highlighted{background-color:var(--va-color-blue-20)}[data-bs-theme=dark] .custom-select-option.selected{background-color:var(--va-color-blue-30)}[data-bs-theme=dark] .custom-select-dropdown .no-results{color:var(--va-color-black-40)}.table-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-l);flex-shrink:0}.table-actions-right{display:flex;flex-wrap:nowrap;gap:var(--space-m);margin-left:auto;align-items:center}.table-counter-rows{background:var(--va-background-basebg);border:1px solid var(--border-mainborder);border-radius:var(--radius-m);padding:var(--space-s) var(--space-m);font-size:var(--text-content-s);color:var(--va-color-black-60);white-space:nowrap}.btn-filter{position:relative;width:34px;height:34px;padding:0;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;border:1px solid transparent;background-color:transparent;color:var(--va-button-primary-default);border-radius:var(--radius-s);transition:background-color .15s ease,border-color .15s ease;font-size:16px;cursor:pointer}.btn-filter:hover{background-color:var(--va-color-blue-10);color:var(--va-button-primary-hover)}.btn-filter.active{background-color:var(--va-color-blue-10);border-color:var(--va-base-primary);color:var(--va-base-primary)}.btn-filter .filter-badge{position:absolute;top:-3px;right:-3px;width:8px;height:8px;background-color:#22c55e;border-radius:50%;border:2px solid var(--background-workarea);display:none;z-index:1}.btn-filter.active .filter-badge{display:block}.filter-chips-wrapper{min-height:32px;display:flex;align-items:center;padding:4px 0;flex-shrink:0}.filter-chips{display:flex;flex-wrap:wrap;align-items:center;gap:6px;width:100%}.filter-chips-empty{color:var(--va-color-black-40);font-size:var(--text-content-xs);font-style:italic}.filter-chip{display:inline-flex;align-items:center;gap:4px;background:var(--va-color-blue-10);border:1px solid var(--va-color-blue-20);border-radius:var(--radius-pill);padding:2px 8px 2px 10px;font-size:var(--text-content-xs);color:var(--va-color-black-80);white-space:nowrap}.filter-chip .chip-close{background:none;border:none;color:var(--va-color-black-40);cursor:pointer;padding:0 2px;font-size:12px;line-height:1;border-radius:50%}.filter-chip .chip-close:hover{color:var(--va-base-danger);background:var(--va-color-red-10)}.filter-clear-all{background:none;border:none;color:var(--va-color-blue-100);font-size:var(--text-content-xs);cursor:pointer;padding:2px 8px;border-radius:var(--radius-s);text-decoration:underline}.filter-clear-all:hover{color:var(--va-button-primary-hover)}.profile-panel .font-size-toggle-panel{display:flex;gap:2px;background-color:var(--va-background-basebg);border-radius:var(--radius-pill);padding:3px;border:1px solid var(--border-mainborder)}.profile-panel .font-size-btn-panel{padding:var(--space-xs) var(--space-s);border:none;background:transparent;border-radius:var(--radius-pill);color:var(--va-color-black-100);font-size:var(--text-content-s);font-weight:500;cursor:pointer;min-width:32px;text-align:center;line-height:1.2}.profile-panel .font-size-btn-panel sup{font-size:.6em}.profile-panel .font-size-btn-panel:hover{background-color:var(--va-color-blue-10);color:var(--va-base-primary)}.profile-panel .font-size-btn-panel.active{background-color:var(--va-base-primary);color:var(--va-base-permanent-white);box-shadow:0 2px 4px #4361ee4d}.profile-panel .theme-toggle-btn{display:flex;align-items:center;gap:var(--space-s);padding:var(--space-s) var(--space-m);border:1px solid var(--border-mainborder);border-radius:var(--radius-pill);background:var(--va-background-cardbasebg);color:var(--va-color-black-100);cursor:pointer;font-size:var(--text-content-s)}.profile-panel .theme-toggle-btn:hover{background-color:var(--va-color-blue-10);border-color:var(--va-base-primary)}.profile-setting.about-link{cursor:pointer}.profile-setting.about-link:hover .profile-setting-label,.profile-setting.about-link:hover .profile-setting-label i{color:var(--va-base-primary)}.profile-user-email{font-size:var(--text-content-xs);color:var(--va-color-black-50);margin-top:2px}.profile-user-organization{font-size:var(--text-content-xs);color:var(--va-color-black-40)}.about-content{text-align:center;padding:8px 0}.about-content .about-logo{margin-bottom:16px}.about-content .about-version{font-size:var(--text-content-s);color:var(--va-color-black-40);margin-bottom:4px;font-weight:500;letter-spacing:1px}.about-content .about-version-backend{font-size:var(--text-content-xs);color:var(--va-color-black-40);margin-bottom:16px}.about-content .about-description{font-size:var(--text-content-s);color:var(--va-color-black-60);line-height:1.6;margin-bottom:20px;text-align:left}.about-content .about-contact{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 20px;padding:12px 0;border-top:1px solid var(--border-mainborder);border-bottom:1px solid var(--border-mainborder);margin-bottom:16px}.about-content .about-contact-item{display:flex;align-items:center;gap:6px;font-size:var(--text-content-s);color:var(--va-color-black-60)}.about-content .about-contact-item i{color:var(--va-base-primary);font-size:16px}.about-content .about-contact-item a{color:var(--va-color-black-70);text-decoration:none;transition:color .2s ease}.about-content .about-contact-item a:hover{color:var(--va-base-primary)}.about-content .about-footer{font-size:var(--text-content-xs);color:var(--va-color-black-40);line-height:1.6}.about-content .about-copyright{font-weight:500}.custom-tooltip{font-family:Roboto,sans-serif;font-size:13px;line-height:1.5;max-width:350px;word-wrap:break-word;pointer-events:none;z-index:999999!important;animation:customTooltipFadeIn .15s ease}.custom-tooltip .custom-tooltip-body{font-size:13px;color:var(--va-color-black-60)}[data-bs-theme=dark] .custom-tooltip .custom-tooltip-body{color:var(--va-color-black-60)}@keyframes customTooltipFadeIn{0%{opacity:0;transform:scale(.95) translateY(-5px)}to{opacity:1;transform:scale(1) translateY(0)}}.dialog-icon{font-size:48px;text-align:center;margin-bottom:16px}.dialog-icon i{font-size:56px}.dialog-content{text-align:center;padding:16px 8px}.dialog-content .dialog-message{font-size:var(--text-content-m);line-height:1.6;color:var(--va-color-black-80);white-space:pre-line}.dialog-content.confirm .dialog-icon i{color:var(--va-base-primary)}.dialog-content.success .dialog-icon i{color:var(--va-base-success)}.dialog-content.error .dialog-icon i{color:var(--va-base-danger)}.dialog-content.warning .dialog-icon i{color:var(--va-base-warning)}.dialog-content.info .dialog-icon i{color:var(--va-color-blue-100)}#dialogModal .modal-content{border-radius:var(--radius-l);box-shadow:0 10px 40px #00000026;border:none}#dialogModal .modal-header{border-bottom:1px solid var(--border-mainborder);padding:var(--space-l) var(--space-l) var(--space-m)}#dialogModal .modal-header .modal-title{font-size:var(--text-content-l);font-weight:600;color:var(--va-color-black-80)}#dialogModal .modal-body{padding:var(--space-l)}#dialogModal .modal-footer{border-top:1px solid var(--border-mainborder);padding:var(--space-m) var(--space-l) var(--space-l);gap:var(--space-s)}#dialogModal .modal-footer .btn{min-width:100px}[data-bs-theme=dark] #dialogModal .modal-content{background-color:var(--va-background-modal);box-shadow:0 10px 40px #0006}[data-bs-theme=dark] #dialogModal .modal-header{border-bottom-color:var(--border-mainborder)}[data-bs-theme=dark] #dialogModal .modal-footer{border-top-color:var(--border-mainborder)}[data-bs-theme=dark] .dialog-content .dialog-message{color:var(--va-color-black-80)}@keyframes dialogFadeIn{0%{opacity:0;transform:scale(.95) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}#dialogModal .modal-content{animation:dialogFadeIn .25s ease-out}@media (max-width: 576px){.dialog-icon{font-size:36px}.dialog-icon i{font-size:40px}#dialogModal .modal-footer .btn{min-width:80px;font-size:var(--text-content-s)}.dialog-content .dialog-message{font-size:var(--text-content-s)}}.schedule-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;min-height:300px;background:var(--va-background-basebg);border-radius:var(--radius-m);border:2px dashed var(--border-mainborder);color:var(--va-color-black-40);text-align:center;gap:var(--space-m);padding:40px 20px}.schedule-placeholder>i{font-size:64px;color:var(--va-color-blue-20)}.schedule-placeholder h5{font-size:var(--text-content-l);font-weight:500;color:var(--va-color-black-60);margin:0}.schedule-placeholder p{font-size:var(--text-content-m);margin:0;color:var(--va-color-black-50);max-width:400px}.schedule-placeholder .badge-info{background:var(--va-color-blue-10);color:var(--va-base-primary);padding:4px 16px;border-radius:var(--radius-pill);font-size:var(--text-content-xs)}.alert{display:flex;align-items:flex-start;gap:12px;padding:12px 16px;margin-bottom:16px;border-radius:var(--radius-m);border:1px solid transparent;font-size:13px;line-height:1.5}.alert i{font-size:16px;margin-top:2px}.alert-success{background:var(--va-color-green-10);color:var(--va-accent-green-100);border-color:var(--va-color-green-20)}.alert-info{background:var(--va-color-blue-10);color:var(--va-accent-blue-100);border-color:var(--va-color-blue-20)}.alert-warning{background:var(--va-color-yellow-10);color:var(--va-accent-yellow-100);border-color:var(--va-color-yellow-20)}.alert-danger{background:var(--va-color-red-10);color:var(--va-accent-red-100);border-color:var(--va-color-red-20)}.app-toast-stack{position:fixed;top:68px;right:16px;z-index:1090;display:flex;flex-direction:column;gap:8px;width:min(420px,calc(100vw - 32px));pointer-events:none}.app-toast{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border-radius:var(--radius-m);background:var(--va-background-cardbasebg);color:var(--va-base-black);border:1px solid var(--va-color-black-10);border-left:4px solid var(--va-accent-blue-100);box-shadow:0 4px 16px #0000002e;font-size:13px;line-height:1.45;pointer-events:auto;max-height:400px;overflow:hidden;opacity:0;transform:translate(16px);transition:opacity .25s ease,transform .25s ease,max-height .25s ease,margin .25s ease,padding .25s ease}.app-toast.is-shown{opacity:1;transform:translate(0)}.app-toast.is-leaving{opacity:0;transform:translate(16px);max-height:0!important;margin-top:-8px;padding-top:0;padding-bottom:0;border-top-width:0;border-bottom-width:0}.app-toast-icon{font-size:16px;margin-top:1px;flex-shrink:0}.app-toast-body{flex:1;min-width:0;word-wrap:break-word}.app-toast-title{font-weight:600;margin-bottom:2px}.app-toast-close{flex-shrink:0;background:none;border:0;padding:0 2px;line-height:1;color:var(--va-color-black-60);cursor:pointer;font-size:12px}.app-toast-close:hover{color:var(--va-base-black)}.app-toast-success{border-left-color:var(--va-accent-green-100)}.app-toast-success .app-toast-icon{color:var(--va-accent-green-100)}.app-toast-error{border-left-color:var(--va-accent-red-100)}.app-toast-error .app-toast-icon{color:var(--va-accent-red-100)}.app-toast-warning{border-left-color:var(--va-accent-yellow-100)}.app-toast-warning .app-toast-icon{color:var(--va-accent-yellow-100)}.app-toast-info{border-left-color:var(--va-accent-blue-100)}.app-toast-info .app-toast-icon{color:var(--va-accent-blue-100)}
