@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";@keyframes tv-fade-in{0%{opacity:0}to{opacity:1}}@keyframes tv-modal-in{0%{opacity:0;transform:scale(.96)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes tv-drawer-in{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}@keyframes tv-slide-up{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes tv-error-shake{0%,to{transform:translate(0)}20%{transform:translate(-5px)}40%{transform:translate(5px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}@keyframes tv-spin{to{transform:rotate(360deg)}}.tv-link{color:#2563eb;padding-bottom:1px;font-weight:600;text-decoration:none;transition:color .2s cubic-bezier(.4,0,.2,1);display:inline-block;position:relative}.tv-link:after{content:"";transform-origin:100% 100%;background:linear-gradient(90deg,#2563eb,#7c3aed);width:100%;height:1.5px;transition:transform .25s cubic-bezier(.4,0,.2,1);position:absolute;bottom:0;left:0;transform:scaleX(0)}.tv-link:hover{color:#1d4ed8}.tv-link:hover:after{transform-origin:0 100%;transform:scaleX(1)}.tv-badge{letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;border-radius:9999px;justify-content:center;align-items:center;padding:3px 10px;font-size:11px;font-weight:700;line-height:1;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex}.tv-badge-green{color:#065f46;background:#ecfdf5;border:1px solid #a7f3d0}.tv-badge-amber{color:#92400e;background:#fffbeb;border:1px solid #fde68a}.tv-badge-red{color:#991b1b;background:#fef2f2;border:1px solid #fecaca}.tv-badge-blue{color:#1e40af;background:#eff6ff;border:1px solid #bfdbfe}.tv-badge-purple{color:#5b21b6;background:#f5f3ff;border:1px solid #ddd6fe}.tv-badge-green:hover{transform:translateY(-1px);box-shadow:0 3px 10px #05966933}.tv-badge-amber:hover{transform:translateY(-1px);box-shadow:0 3px 10px #d9770626}.tv-badge-red:hover{transform:translateY(-1px);box-shadow:0 3px 10px #dc262626}.tv-badge-blue:hover{transform:translateY(-1px);box-shadow:0 3px 10px #2563eb26}.tv-badge-purple:hover{transform:translateY(-1px);box-shadow:0 3px 10px #7c3aed26}.badge{text-transform:uppercase;border-radius:9999px;justify-content:center;align-items:center;padding:3px 10px;font-size:11px;font-weight:700;display:inline-flex}.badge-active{color:#065f46;background:#ecfdf5;border:1px solid #a7f3d0}.badge-inactive{color:#991b1b;background:#fef2f2;border:1px solid #fecaca}.badge-pending{color:#92400e;background:#fffbeb;border:1px solid #fde68a}.badge-primary{color:#1e40af;background:#eff6ff;border:1px solid #bfdbfe}.badge-success{color:#065f46;background:#ecfdf5;border:1px solid #a7f3d0}.badge-secondary{color:#5b21b6;background:#f5f3ff;border:1px solid #ddd6fe}.emp-name-text{cursor:pointer;color:#2563eb!important;font-weight:600!important;text-decoration:none!important}.tv-btn-edit,.tv-btn-delete{cursor:pointer;color:#64748b;background:#fff;border:1px solid #e2e8f0;border-radius:8px;justify-content:center;align-items:center;width:30px;height:30px;transition:all .18s cubic-bezier(.4,0,.2,1);display:inline-flex;box-shadow:0 1px 2px #0f172a0d}.tv-btn-edit:hover{color:#2563eb;background:#eff6ff;border-color:#93c5fd;transform:translateY(-1px);box-shadow:0 4px 12px #2563eb1f}.tv-btn-edit:active{box-shadow:none;background:#dbeafe;transform:translateY(0)}.tv-btn-delete:hover{color:#dc2626;background:#fef2f2;border-color:#fca5a5;transform:translateY(-1px);box-shadow:0 4px 12px #dc26261a}.tv-btn-delete:active{box-shadow:none;background:#fee2e2;transform:translateY(0)}.ag-header-cell-text{font-family:Inter,system-ui,sans-serif;text-transform:uppercase!important;letter-spacing:.08em!important;color:#94a3b8!important;font-size:10.5px!important;font-weight:700!important}.ag-header{background:#fafbfc!important;border-bottom:1px solid #f1f5f9!important}.ag-cell:focus,.ag-cell:focus-within,.ag-header-cell:focus,.ag-header-cell:focus-within{box-shadow:none!important;border-color:#0000!important;outline:none!important}.ag-cell:focus-visible{outline-offset:-2px;background-color:#f8fafc!important;outline:2px solid #2563eb!important}.ag-row{transition:background-color .12s;border-bottom:1px solid #f8fafc!important}.ag-row:hover{background-color:#f8fafc!important}.ag-body-horizontal-scroll-viewport::-webkit-scrollbar{height:5px}.ag-body-horizontal-scroll-viewport::-webkit-scrollbar-track{background:0 0}.ag-body-horizontal-scroll-viewport::-webkit-scrollbar-thumb{background:#e2e8f0;border-radius:3px}.ag-body-horizontal-scroll-viewport::-webkit-scrollbar-thumb:hover{background:#cbd5e1}.ag-body-vertical-scroll-viewport::-webkit-scrollbar{width:5px}.ag-body-vertical-scroll-viewport::-webkit-scrollbar-track{background:0 0}.ag-body-vertical-scroll-viewport::-webkit-scrollbar-thumb{background:#e2e8f0;border-radius:3px}.ag-body-vertical-scroll-viewport::-webkit-scrollbar-thumb:hover{background:#cbd5e1}.tv-grid-toolbar{justify-content:space-between;align-items:center;gap:12px;padding:0 2px 16px;display:flex}.tv-search-group{background:#fff;border:1px solid #e2e8f0;border-radius:10px;align-items:center;height:38px;transition:border-color .2s,box-shadow .2s;display:flex;overflow:hidden;box-shadow:0 1px 3px #0000000a,0 0 #0000}.tv-search-group:focus-within{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb14}.tv-search-select-wrapper{background:#f8fafc;border-right:1px solid #f1f5f9;align-items:center;height:100%;display:flex;position:relative}.tv-search-select{color:#475569;cursor:pointer;appearance:none;background:0 0;border:none;outline:none;height:100%;padding:0 36px;font-family:Inter,system-ui,sans-serif;font-size:12.5px;font-weight:600;transition:color .15s}.tv-search-select:hover{color:#0f172a}.tv-search-input-wrapper{align-items:center;height:100%;display:flex;position:relative}.tv-search-input{color:#0f172a;background:0 0;border:none;outline:none;width:220px;height:100%;padding:0 12px 0 34px;font-family:Inter,system-ui,sans-serif;font-size:13px}.tv-search-input::placeholder{color:#cbd5e1}.tv-filter-btn{color:#64748b;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #e2e8f0;border-radius:10px;align-items:center;gap:6px;height:38px;padding:0 14px;font-family:Inter,system-ui,sans-serif;font-size:12.5px;font-weight:600;transition:all .18s cubic-bezier(.4,0,.2,1);display:inline-flex}.tv-filter-btn:hover{color:#334155;background:#f8fafc;border-color:#cbd5e1;box-shadow:0 2px 6px #0000000d}.tv-filter-btn.active{color:#1d4ed8;background:#eff6ff;border-color:#93c5fd;box-shadow:0 0 0 3px #2563eb12}.tv-filter-btn.active:hover{background:#dbeafe;border-color:#60a5fa}.tv-filter-count{color:#fff;letter-spacing:0;background:#2563eb;border-radius:9999px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:10px;font-weight:700;display:inline-flex}.tv-pagination-wrap{align-items:center;gap:4px;display:flex}.tv-pagination-btn{cursor:pointer;color:#475569;-webkit-user-select:none;user-select:none;background:#fff;border:1px solid #e2e8f0;border-radius:8px;justify-content:center;align-items:center;height:34px;padding:0 14px;font-family:Inter,system-ui,sans-serif;font-size:12px;font-weight:600;transition:all .15s;display:flex}.tv-pagination-btn:hover:not(:disabled){color:#0f172a;background:#f1f5f9;border-color:#cbd5e1}.tv-pagination-btn:active:not(:disabled){background:#e2e8f0;transform:scale(.97)}.tv-pagination-btn:disabled{cursor:not-allowed;opacity:.4}.tv-pagination-info{color:#94a3b8;white-space:nowrap;text-align:center;min-width:90px;padding:0 8px;font-family:Inter,system-ui,sans-serif;font-size:12px;font-weight:600}.tv-modal-overlay{-webkit-backdrop-filter:blur(6px);z-index:9999;background:#0f172a40;justify-content:center;align-items:center;padding:20px;animation:.18s forwards tv-fade-in;display:flex;position:fixed;inset:0}.tv-modal-panel{background:#fff;border:1px solid #e2e8f0cc;border-radius:16px;flex-direction:column;width:660px;max-width:96%;max-height:90vh;animation:.25s cubic-bezier(.16,1,.3,1) forwards tv-modal-in;display:flex;overflow:hidden;box-shadow:0 4px 6px -1px #0000000d,0 20px 60px -12px #0f172a2e,inset 0 0 0 1px #fff9}.tv-modal-header{background:linear-gradient(135deg,#fafbff 0%,#f8fafc 100%);border-bottom:1px solid #f1f5f9;flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:12px;padding:22px 28px 18px;display:flex;position:relative}.tv-modal-header:before{content:"";background:linear-gradient(#2563eb 0%,#7c3aed 100%);border-radius:16px 0 0;width:3px;position:absolute;top:0;bottom:0;left:0}.tv-modal-title-block{flex-direction:column;gap:2px;display:flex}.tv-modal-mode-tag{text-transform:uppercase;letter-spacing:.1em;color:#2563eb;margin-bottom:2px;font-size:10px;font-weight:700}.tv-modal-title{color:#0f172a;letter-spacing:-.02em;margin:0;font-size:17px;font-weight:700;line-height:1.3}.tv-modal-close{color:#94a3b8;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:8px;outline:none;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;transition:all .15s;display:flex}.tv-modal-close:hover{color:#dc2626;background:#fef2f2;border-color:#fecaca;transform:rotate(90deg)}.tv-modal-body{flex:1;padding:24px 28px;overflow-y:auto}.tv-modal-body::-webkit-scrollbar{width:4px}.tv-modal-body::-webkit-scrollbar-thumb{background:#e2e8f0;border-radius:2px}.tv-error-banner{color:#991b1b;background:linear-gradient(135deg,#fef2f2 0%,#fff5f5 100%);border:1px solid #fecaca;border-left:3px solid #dc2626;border-radius:10px;align-items:flex-start;gap:10px;margin-bottom:20px;padding:12px 14px;font-size:13px;font-weight:500;line-height:1.45;animation:.4s cubic-bezier(.36,.07,.19,.97) forwards tv-error-shake;display:flex}.tv-error-banner-icon{flex-shrink:0;margin-top:1px;font-size:15px}.tv-field-grid{flex-direction:column;gap:20px;display:flex}.tv-field-row{gap:16px;display:grid}.tv-field-row.cols-2{grid-template-columns:1fr 1fr}.tv-field-row.cols-1{grid-template-columns:1fr}.tv-field-group{flex-direction:column;gap:6px;display:flex}.tv-field-label{color:#334155;letter-spacing:.01em;align-items:center;gap:4px;font-size:12px;font-weight:600;display:flex}.tv-field-required{color:#ef4444;font-size:13px;line-height:1}.tv-input,.tv-select,.tv-textarea{box-sizing:border-box;color:#0f172a;background:#fff;border:1px solid #e2e8f0;border-radius:9px;outline:none;width:100%;padding:10px 13px;font-family:Inter,system-ui,sans-serif;font-size:13.5px;font-weight:400;line-height:1.5;transition:border-color .18s,box-shadow .18s,background .18s}.tv-input::placeholder,.tv-textarea::placeholder{color:#cbd5e1}.tv-input:hover,.tv-select:hover,.tv-textarea:hover{border-color:#cbd5e1}.tv-input:focus,.tv-select:focus,.tv-textarea:focus{background:#fafcff;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.tv-select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2394A3B8' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:34px}.tv-textarea{resize:vertical;min-height:90px}.tv-input[type=date]{cursor:pointer}.tv-upload-zone{cursor:pointer;text-align:center;background:#fafbfc;border:2px dashed #e2e8f0;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:24px 16px;transition:all .2s;display:flex}.tv-upload-zone:hover{background:#eff6ff;border-color:#2563eb}.tv-upload-zone-icon{color:#94a3b8}.tv-upload-zone-label{color:#475569;font-size:13px;font-weight:500}.tv-upload-zone-hint{color:#94a3b8;font-size:11px}.tv-upload-preview{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;justify-content:center;align-items:center;height:120px;display:flex;position:relative;overflow:hidden}.tv-upload-preview img{object-fit:contain;width:100%;height:100%}.tv-upload-remove{color:#fff;opacity:0;cursor:pointer;background:#0f172a80;border:none;flex-direction:column;justify-content:center;align-items:center;gap:4px;font-size:12px;font-weight:600;transition:opacity .2s;display:flex;position:absolute;inset:0}.tv-upload-preview:hover .tv-upload-remove{opacity:1}.tv-modal-footer{background:#fafbfc;border-top:1px solid #f1f5f9;flex-shrink:0;justify-content:flex-end;align-items:center;gap:10px;padding:16px 28px;display:flex}.tv-btn-cancel{color:#475569;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:9px;height:38px;padding:0 18px;font-family:Inter,system-ui,sans-serif;font-size:13px;font-weight:600;transition:all .15s}.tv-btn-cancel:hover{color:#0f172a;background:#f8fafc;border-color:#cbd5e1}.tv-btn-cancel:disabled{opacity:.5;cursor:not-allowed}.tv-btn-submit{color:#fff;cursor:pointer;background:linear-gradient(135deg,#2563eb 0%,#1d4ed8 100%);border:none;border-radius:9px;align-items:center;gap:7px;height:38px;padding:0 22px;font-family:Inter,system-ui,sans-serif;font-size:13px;font-weight:600;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;box-shadow:0 2px 8px #2563eb4d,0 1px 2px #2563eb33}.tv-btn-submit:hover:not(:disabled){background:linear-gradient(135deg,#1d4ed8 0%,#1e40af 100%);transform:translateY(-1px);box-shadow:0 4px 16px #2563eb59,0 2px 4px #2563eb33}.tv-btn-submit:active:not(:disabled){transform:translateY(0);box-shadow:0 1px 4px #2563eb33}.tv-btn-submit:disabled{box-shadow:none;cursor:not-allowed;background:#94a3b8}.tv-btn-submit-spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:14px;height:14px;animation:.7s linear infinite tv-spin}.tv-drawer-overlay{-webkit-backdrop-filter:blur(4px);z-index:9999;background:#0f172a33;justify-content:flex-end;animation:.18s forwards tv-fade-in;display:flex;position:fixed;inset:0}.tv-drawer-panel{background:#fff;border-left:1px solid #e2e8f0;flex-direction:column;width:480px;max-width:92vw;height:100%;animation:.3s cubic-bezier(.16,1,.3,1) forwards tv-drawer-in;display:flex;overflow:hidden;box-shadow:-8px 0 32px #0f172a1f,-2px 0 8px #0f172a0f}.tv-drawer-header{background:linear-gradient(135deg,#fafbff 0%,#f8fafc 100%);border-bottom:1px solid #f1f5f9;flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:12px;padding:20px 24px 16px;display:flex;position:relative}.tv-drawer-header:before{content:"";background:linear-gradient(#7c3aed 0%,#2563eb 100%);width:3px;position:absolute;top:0;bottom:0;left:0}.tv-drawer-title-block{flex-direction:column;gap:2px;display:flex}.tv-drawer-label{text-transform:uppercase;letter-spacing:.1em;color:#7c3aed;font-size:10px;font-weight:700}.tv-drawer-title{color:#0f172a;letter-spacing:-.02em;margin:0;font-size:16px;font-weight:700}.tv-drawer-close{color:#94a3b8;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:8px;outline:none;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;transition:all .15s;display:flex}.tv-drawer-close:hover{color:#dc2626;background:#fef2f2;border-color:#fecaca;transform:rotate(90deg)}.tv-drawer-body{flex:1;padding:20px 24px;overflow-y:auto}.tv-drawer-body::-webkit-scrollbar{width:4px}.tv-drawer-body::-webkit-scrollbar-thumb{background:#e2e8f0;border-radius:2px}.tv-drawer-footer{background:#fafbfc;border-top:1px solid #f1f5f9;flex-shrink:0;justify-content:space-between;align-items:center;gap:10px;padding:14px 24px;display:flex}.tv-btn-reset{color:#64748b;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:8px;align-items:center;gap:6px;height:36px;padding:0 14px;font-family:Inter,system-ui,sans-serif;font-size:12.5px;font-weight:600;transition:all .15s;display:flex}.tv-btn-reset:hover{color:#92400e;background:#fffbeb;border-color:#fde68a}.tv-btn-apply{color:#fff;cursor:pointer;background:linear-gradient(135deg,#7c3aed 0%,#5b21b6 100%);border:none;border-radius:8px;align-items:center;gap:6px;height:36px;padding:0 18px;font-family:Inter,system-ui,sans-serif;font-size:13px;font-weight:600;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;box-shadow:0 2px 8px #7c3aed4d}.tv-btn-apply:hover{background:linear-gradient(135deg,#6d28d9 0%,#4c1d95 100%);transform:translateY(-1px);box-shadow:0 4px 16px #7c3aed59}.tv-btn-apply:active{transform:translateY(0);box-shadow:0 1px 4px #7c3aed33}.tv-multi-select-container{width:100%;position:relative}.tv-multi-select-trigger{box-sizing:border-box;color:#0f172a;cursor:pointer;-webkit-user-select:none;user-select:none;background:#fff;border:1px solid #e2e8f0;border-radius:9px;justify-content:space-between;align-items:center;width:100%;min-height:42px;padding:6px 12px;font-family:Inter,system-ui,sans-serif;font-size:13.5px;transition:border-color .18s,box-shadow .18s,background .18s;display:flex}.tv-multi-select-trigger:hover{border-color:#cbd5e1}.tv-multi-select-trigger.active{background:#fafcff;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.tv-multi-select-pills{flex-wrap:wrap;flex:1;align-items:center;gap:6px;display:flex}.tv-multi-select-placeholder{color:#cbd5e1;font-size:13.5px}.tv-multi-select-pill{color:#2563eb;background:#eff6ff;border:1px solid #bfdbfe;border-radius:6px;align-items:center;gap:4px;padding:3px 8px;font-size:12px;font-weight:600;transition:all .15s;display:inline-flex}.tv-multi-select-pill:hover{background:#dbeafe}.tv-multi-select-pill-remove{color:#3b82f6;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-size:14px;line-height:1;display:flex}.tv-multi-select-pill-remove:hover{color:#1d4ed8}.tv-multi-select-arrow{color:#94a3b8;align-items:center;margin-left:8px;display:flex}.tv-multi-select-dropdown{z-index:1050;background:#fff;border:1px solid #e2e8f0;border-radius:10px;flex-direction:column;max-height:240px;margin-top:6px;animation:.2s cubic-bezier(.16,1,.3,1) tv-slide-up;display:flex;position:absolute;top:100%;left:0;right:0;overflow:hidden;box-shadow:0 10px 25px -5px #0000001a,0 8px 10px -6px #0000000d}.tv-multi-select-search-container{background:#fcfcfd;border-bottom:1px solid #f1f5f9;padding:8px}.tv-multi-select-search-input{box-sizing:border-box;border:1px solid #e2e8f0;border-radius:6px;outline:none;width:100%;padding:6px 10px;font-family:Inter,system-ui,sans-serif;font-size:12.5px;transition:all .15s}.tv-multi-select-search-input:focus{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb1a}.tv-multi-select-options{flex:1;padding:6px 0;overflow-y:auto}.tv-multi-select-option{color:#334155;cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;padding:8px 14px;font-size:13px;transition:all .15s;display:flex}.tv-multi-select-option:hover{color:#0f172a;background:#f8fafc}.tv-multi-select-option input[type=checkbox]{accent-color:#2563eb;cursor:pointer;border:1px solid #cbd5e1;border-radius:4px;width:15px;height:15px}.tv-multi-select-no-options{text-align:center;color:#94a3b8;padding:16px;font-size:12.5px}.ag-theme-quartz .ag-body-viewport{background-color:#f8fafc!important}.ag-theme-quartz .ag-row{box-sizing:border-box!important;background-color:#fff!important;border:1px solid #e2e8f0e6!important;border-radius:12px!important;height:calc(100% - 8px)!important;margin-top:4px!important;margin-bottom:4px!important;transition:all .2s cubic-bezier(.16,1,.3,1)!important;overflow:visible!important;box-shadow:0 1px 3px #0f172a05,0 1px 2px #0f172a03!important}.ag-theme-quartz .ag-row-odd{background-color:#fafcfe!important}.ag-theme-quartz .ag-row:hover{z-index:10!important;background-color:#fff!important;border-color:#bfdbfe!important;transform:translateY(-2px)!important;box-shadow:0 4px 16px #2563eb0f,0 2px 4px #2563eb05!important}.ag-theme-quartz .ag-row:before{content:"";z-index:20;background:#e2e8f0;border-radius:0 6px 6px 0;width:4px;transition:all .2s;position:absolute;top:10px;bottom:10px;left:0}.ag-theme-quartz .ag-row:hover:before{background:linear-gradient(#2563eb 0%,#7c3aed 100%)!important;width:5px!important}.ag-theme-quartz .ag-cell{border:none!important;align-items:center!important;display:flex!important}.ag-theme-quartz .ag-header{background-color:#f8fafc!important;border:none!important;border-bottom:2px solid #e2e8f0!important}.ag-theme-quartz .ag-header-row{border:none!important;border-bottom:2px solid #e2e8f0!important}.ag-theme-quartz .ag-header-cell{border:none!important}.ag-theme-quartz .ag-header-cell-label{color:#475569!important;letter-spacing:.03em!important;text-transform:uppercase!important;font-size:12.5px!important;font-weight:700!important}.ag-theme-quartz .ag-row-selected{background-color:#eff6ff!important;border-color:#93c5fd!important}.ag-theme-quartz .ag-row-selected:hover{background-color:#dbeafe!important;border-color:#60a5fa!important}.ag-theme-quartz .ag-root-wrapper{background-color:#f8fafc!important;border:none!important;border-radius:12px!important}.ag-theme-quartz .ag-body-viewport{box-sizing:border-box!important;background-color:#f8fafc!important;padding:8px 16px!important}.ag-theme-quartz .ag-header-cell{padding:0 16px!important}.tv-btn-edit,.tv-btn-delete{transition:all .2s cubic-bezier(.4,0,.2,1)!important}.ag-theme-quartz .ag-cell{white-space:normal!important;word-break:break-word!important;overflow-wrap:break-word!important;text-overflow:unset!important;align-items:center!important;padding-top:8px!important;padding-bottom:8px!important;line-height:1.5!important;display:flex!important}.ag-theme-quartz .ag-cell-value{white-space:normal!important;word-break:break-word!important;overflow-wrap:break-word!important;width:100%!important}.ag-theme-quartz .ag-react-container{white-space:normal!important;word-break:break-word!important;width:100%!important}.sr-page{flex-direction:column;gap:16px;height:100%;padding:20px 24px;display:flex;overflow:hidden}.sr-filter-bar{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:10px;display:flex}.sr-search-wrap{flex:1;min-width:200px;max-width:320px;position:relative}.sr-search-icon{color:var(--text-muted);pointer-events:none;display:flex;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.sr-search-input{border:1px solid var(--border);width:100%;height:36px;font-size:13px;font-family:var(--font-body);color:var(--text-primary);background:var(--surface-lowest);box-sizing:border-box;border-radius:8px;outline:none;padding:0 12px 0 34px;transition:border-color .15s,box-shadow .15s}.sr-search-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1a}.sr-filter-select{border:1px solid var(--border);height:36px;font-size:13px;font-family:var(--font-body);color:var(--text-primary);background:var(--surface-lowest) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2394A3B8' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E") no-repeat right 10px center;appearance:none;cursor:pointer;border-radius:8px;outline:none;min-width:130px;padding:0 30px 0 12px;transition:border-color .15s,box-shadow .15s}.sr-filter-select:focus{border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1a}.sr-filter-bar-spacer{flex:1}.sr-new-btn{background:var(--primary);color:#fff;height:36px;font-size:13px;font-weight:600;font-family:var(--font-body);cursor:pointer;white-space:nowrap;border:none;border-radius:8px;flex-shrink:0;align-items:center;gap:6px;padding:0 16px;transition:background .15s,transform .1s,box-shadow .15s;display:inline-flex}.sr-new-btn:hover{background:var(--primary-dim);transform:translateY(-1px);box-shadow:0 4px 12px #2563eb4d}.sr-new-btn:active{transform:translateY(0)}.sr-grid-container{flex-direction:column;flex:1;min-height:0;display:flex}.sr-badge{letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;border-radius:9999px;justify-content:center;align-items:center;padding:3px 10px;font-size:11px;font-weight:700;line-height:1;display:inline-flex}.sr-badge-open{color:#1e40af;background:#dbeafe}.sr-badge-inprogress{color:#92400e;background:#fef3c7}.sr-badge-pending{color:#3730a3;background:#e0e7ff}.sr-badge-resolved{color:#065f46;background:#d1fae5}.sr-badge-closed{color:#475569;background:#f1f5f9}.sr-badge-low{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0}.sr-badge-medium{color:#92400e;background:#fef3c7;border:1px solid #fde68a}.sr-badge-high{color:#991b1b;background:#fee2e2;border:1px solid #fecaca}.sr-badge-urgent{color:#dc2626;background:linear-gradient(135deg,#7c3aed15,#dc262615);border:1px solid #fecaca;animation:2s infinite srUrgentPulse}@keyframes srUrgentPulse{0%,to{box-shadow:0 0 #dc262600}50%{box-shadow:0 0 0 3px #dc26261a}}.sr-detail-page{background:var(--bg);width:100%;animation:.3s forwards smoothFadeIn;overflow:hidden;flex-direction:row!important;height:100%!important;display:flex!important}.sr-meta-panel{background:var(--surface-lowest);border-right:1px solid var(--border);flex-direction:column;flex-shrink:0;width:300px;min-width:300px;display:flex;overflow-y:auto}.sr-meta-panel::-webkit-scrollbar{width:4px}.sr-meta-panel::-webkit-scrollbar-track{background:0 0}.sr-meta-panel::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.sr-meta-header{border-bottom:1px solid var(--border);background:linear-gradient(135deg, var(--primary-light) 0%, #fff 100%);padding:20px 20px 16px}.sr-meta-back-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;margin-bottom:12px;padding:4px 0;font-size:12px;font-weight:500;transition:color .15s;display:inline-flex}.sr-meta-back-btn:hover{color:var(--primary)}.sr-ticket-id-badge{background:var(--primary);color:#fff;letter-spacing:.03em;border-radius:6px;align-items:center;gap:6px;margin-bottom:8px;padding:4px 10px;font-size:12px;font-weight:700;display:inline-flex}.sr-meta-title{color:var(--text-primary);word-break:break-word;margin:0 0 6px;font-size:15px;font-weight:700;line-height:1.4}.sr-meta-category-chip{background:var(--secondary-light);color:var(--secondary);border-radius:4px;align-items:center;gap:4px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-flex}.sr-meta-section{border-bottom:1px solid var(--border);padding:16px 20px}.sr-meta-section-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:12px;font-size:10px;font-weight:700}.sr-meta-field{flex-direction:column;gap:4px;margin-bottom:14px;display:flex}.sr-meta-field:last-child{margin-bottom:0}.sr-meta-field-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:11px;font-weight:600}.sr-meta-field-value{color:var(--text-primary);font-size:13px;font-weight:500}.sr-meta-submitter{align-items:center;gap:8px;display:flex}.sr-avatar{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:10px;font-weight:700;display:flex}.sr-avatar-lg{width:36px;height:36px;font-size:13px}.sr-meta-select{border:1px solid var(--border);width:100%;height:34px;font-size:13px;font-family:var(--font-body);color:var(--text-primary);background:var(--surface-lowest) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2394A3B8' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E") no-repeat right 8px center;appearance:none;cursor:pointer;border-radius:8px;outline:none;padding:0 28px 0 10px;transition:border-color .15s,box-shadow .15s}.sr-meta-select:focus{border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1a}.sr-meta-select:disabled{background:var(--surface-low);cursor:not-allowed;opacity:.6}.sr-save-chip{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:6px;align-items:center;gap:4px;margin-top:6px;padding:4px 10px;font-size:11.5px;font-weight:600;transition:background .15s;display:inline-flex}.sr-save-chip:hover{background:var(--primary-dim)}.sr-chat-body{flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.sr-chat-header{border-bottom:1px solid var(--border);background:var(--surface-lowest);flex-shrink:0;align-items:center;gap:12px;padding:16px 24px;display:flex}.sr-chat-header-title{color:var(--text-primary);font-size:14px;font-weight:700}.sr-chat-header-count{color:var(--text-muted);background:var(--surface-low);border-radius:10px;padding:2px 8px;font-size:12px}.sr-chat-feed{flex-direction:column;flex:1;gap:16px;padding:20px 24px;display:flex;overflow-y:auto}.sr-chat-feed::-webkit-scrollbar{width:4px}.sr-chat-feed::-webkit-scrollbar-track{background:0 0}.sr-chat-feed::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.sr-message{gap:12px;animation:.3s forwards slideUpFade;display:flex}.sr-message-content{background:var(--surface-lowest);border:1px solid var(--border);border-radius:12px;flex:1;transition:box-shadow .15s;overflow:hidden}.sr-message-content:hover{box-shadow:var(--shadow-card)}.sr-message-internal .sr-message-content{background:linear-gradient(135deg,#fffbeb,#fef3c7);border-color:#fde68a}.sr-message-header{align-items:center;gap:10px;padding:12px 16px 10px;display:flex}.sr-message-sender{color:var(--text-primary);font-size:13px;font-weight:700}.sr-message-time{color:var(--text-muted);margin-left:auto;font-size:11px}.sr-internal-tag{color:#92400e;text-transform:uppercase;letter-spacing:.06em;background:#fde68a;border-radius:4px;align-items:center;gap:4px;padding:2px 7px;font-size:10px;font-weight:700;display:inline-flex}.sr-message-body{color:var(--text-primary);word-break:break-word;padding:0 16px 14px;font-size:13.5px;line-height:1.6}.sr-attachments-grid{flex-wrap:wrap;gap:8px;padding:8px 16px 14px;display:flex}.sr-attachment-card{background:var(--bg);border:1px solid var(--border);color:var(--text-primary);cursor:pointer;border-radius:8px;align-items:center;gap:8px;max-width:220px;padding:8px 12px;text-decoration:none;transition:all .15s;display:flex}.sr-attachment-card:hover{background:var(--primary-light);border-color:var(--primary);box-shadow:var(--shadow-xs);transform:translateY(-1px)}.sr-attachment-icon{border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.sr-attachment-icon-img{color:#1e40af;background:#dbeafe}.sr-attachment-icon-pdf{color:#991b1b;background:#fee2e2}.sr-attachment-icon-doc{color:#1e40af;background:#dbeafe}.sr-attachment-icon-xls{color:#065f46;background:#d1fae5}.sr-attachment-icon-file{background:var(--surface-low);color:var(--text-secondary)}.sr-attachment-meta{flex-direction:column;min-width:0;display:flex}.sr-attachment-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;max-width:140px;font-size:12px;font-weight:600;overflow:hidden}.sr-attachment-size{color:var(--text-muted);font-size:11px}.sr-chat-empty{color:var(--text-muted);text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;padding:40px;display:flex}.sr-chat-empty-icon{background:var(--surface-low);width:64px;height:64px;color:var(--text-muted);border-radius:50%;justify-content:center;align-items:center;display:flex}.sr-chat-empty-title{color:var(--text-secondary);font-size:15px;font-weight:600}.sr-chat-empty-sub{color:var(--text-muted);margin:0;font-size:13px}.sr-reply-box{border-top:1px solid var(--border);background:var(--surface-lowest);flex-shrink:0;padding:16px 24px}.sr-reply-textarea{border:1px solid var(--border);width:100%;min-height:80px;max-height:160px;font-size:13.5px;font-family:var(--font-body);color:var(--text-primary);background:var(--surface-lowest);resize:vertical;box-sizing:border-box;border-radius:10px;outline:none;margin-bottom:10px;padding:12px;line-height:1.5;transition:border-color .15s,box-shadow .15s}.sr-reply-textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1a}.sr-dropzone{border:1.5px dashed var(--border-strong);text-align:center;cursor:pointer;background:var(--surface-lowest);color:var(--text-secondary);border-radius:10px;justify-content:center;align-items:center;gap:8px;margin-bottom:10px;padding:14px 16px;font-size:12.5px;transition:all .2s;display:flex}.sr-dropzone:hover,.sr-dropzone.dragover{border-color:var(--primary);background:var(--primary-light);color:var(--primary)}.sr-dropzone input[type=file]{display:none}.sr-file-chips{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.sr-file-chip{background:var(--surface-low);border:1px solid var(--border);color:var(--text-secondary);border-radius:6px;align-items:center;gap:6px;max-width:200px;padding:4px 8px;font-size:12px;display:inline-flex}.sr-file-chip-name{white-space:nowrap;text-overflow:ellipsis;max-width:140px;overflow:hidden}.sr-file-chip-remove{cursor:pointer;color:var(--text-muted);background:0 0;border:none;flex-shrink:0;align-items:center;padding:0;transition:color .1s;display:flex}.sr-file-chip-remove:hover{color:var(--error)}.sr-reply-row{align-items:center;gap:12px;display:flex}.sr-internal-check-wrap{color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:6px;font-size:12.5px;display:flex}.sr-internal-check-wrap input[type=checkbox]{width:14px;height:14px;accent-color:var(--warning);cursor:pointer}.sr-reply-spacer{flex:1}.sr-submit-btn{background:var(--primary);color:#fff;height:36px;font-size:13px;font-weight:600;font-family:var(--font-body);cursor:pointer;border:none;border-radius:8px;align-items:center;gap:6px;padding:0 20px;transition:background .15s,transform .1s,box-shadow .15s;display:inline-flex}.sr-submit-btn:hover{background:var(--primary-dim);transform:translateY(-1px);box-shadow:0 4px 12px #2563eb4d}.sr-submit-btn:active{transform:translateY(0)}.sr-submit-btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;transform:none}.sr-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9000;background:#0f172a73;justify-content:center;align-items:center;padding:16px;animation:.2s forwards smoothFadeIn;display:flex;position:fixed;inset:0}.sr-modal-panel{background:#fff;border-radius:16px;width:100%;max-width:540px;max-height:92vh;animation:.3s cubic-bezier(.16,1,.3,1) forwards slideUpFade;overflow-y:auto;box-shadow:0 24px 60px -8px #0000002e,0 4px 16px -4px #0000001a}.sr-modal-panel::-webkit-scrollbar{width:4px}.sr-modal-panel::-webkit-scrollbar-track{background:0 0}.sr-modal-panel::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.sr-modal-header{border-bottom:1px solid var(--border);align-items:flex-start;gap:14px;padding:24px 28px 20px;display:flex}.sr-modal-icon{background:var(--primary-light);width:42px;height:42px;color:var(--primary);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.sr-modal-title{color:var(--text-primary);margin:0 0 3px;font-size:17px;font-weight:800}.sr-modal-subtitle{color:var(--text-muted);margin:0;font-size:12.5px}.sr-modal-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;margin-left:auto;padding:4px;transition:all .15s;display:flex}.sr-modal-close:hover{background:var(--surface-low);color:var(--text-primary)}.sr-modal-body{flex-direction:column;gap:18px;padding:24px 28px;display:flex}.sr-form-group{flex-direction:column;gap:6px;display:flex}.sr-form-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em;align-items:center;gap:4px;font-size:12px;font-weight:700;display:flex}.sr-form-required{color:var(--error)}.sr-form-input,.sr-form-select,.sr-form-textarea{border:1px solid var(--border);font-size:13.5px;font-family:var(--font-body);color:var(--text-primary);background:var(--surface-lowest);box-sizing:border-box;border-radius:8px;outline:none;width:100%;padding:9px 12px;transition:border-color .15s,box-shadow .15s}.sr-form-select{appearance:none;background:var(--surface-lowest) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2394A3B8' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E") no-repeat right 10px center;cursor:pointer;padding-right:32px}.sr-form-textarea{resize:vertical;min-height:90px;line-height:1.55}.sr-form-input:focus,.sr-form-select:focus,.sr-form-textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1a}.sr-modal-footer{border-top:1px solid var(--border);justify-content:flex-end;gap:10px;padding:16px 28px 24px;display:flex}.sr-modal-cancel{border:1px solid var(--border);background:var(--surface-lowest);height:38px;color:var(--text-secondary);font-size:13px;font-weight:600;font-family:var(--font-body);cursor:pointer;border-radius:8px;padding:0 20px;transition:all .15s}.sr-modal-cancel:hover{background:var(--surface-low);border-color:var(--border-strong)}.sr-modal-submit{background:var(--primary);color:#fff;height:38px;font-size:13px;font-weight:700;font-family:var(--font-body);cursor:pointer;border:none;border-radius:8px;padding:0 24px;transition:background .15s,box-shadow .15s,transform .1s}.sr-modal-submit:hover{background:var(--primary-dim);transform:translateY(-1px);box-shadow:0 4px 12px #2563eb4d}.sr-modal-submit:active{transform:translateY(0)}.sr-modal-submit:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;transform:none}.sr-spinner{border:2px solid #fff6;border-top-color:#fff;border-radius:50%;width:14px;height:14px;animation:.7s linear infinite spin}.sr-spinner-dark{border-color:#2563eb33;border-top-color:var(--primary)}.sr-detail-loading{height:100%;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex}.sr-detail-error{height:100%;color:var(--error);flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex}.sr-header-count{background:var(--primary-container);color:var(--on-primary-container);border-radius:12px;align-items:center;padding:2px 8px;font-size:11px;font-weight:700;display:inline-flex}.sr-priority-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px;display:inline-block}.sr-priority-dot-low{background:#16a34a}.sr-priority-dot-medium{background:#d97706}.sr-priority-dot-high{background:#dc2626}.sr-priority-dot-urgent{background:#7c3aed}:root{--primary:#2563eb;--primary-dim:#1d4ed8;--primary-hover:#1e40af;--primary-light:#eff6ff;--primary-container:#dbeafe;--on-primary:#fff;--on-primary-container:#1e40af;--bg:#f8fafc;--surface:#f8fafc;--surface-lowest:#fff;--surface-low:#f3f4f6;--surface-container:#e9ecf0;--surface-high:#e2e8f0;--surface-dim:#d1d9e0;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#94a3b8;--text-placeholder:#cbd5e1;--on-surface:#0f172a;--on-surface-variant:#475569;--on-surface-muted:#94a3b8;--border:#e2e8f0;--border-strong:#cbd5e1;--border-focus:#2563eb;--outline:#e2e8f0;--outline-strong:#cbd5e1;--sidebar-bg:#fff;--sidebar-border:#e2e8f0;--sidebar-text:#64748b;--sidebar-text-hover:#0f172a;--sidebar-text-active:#2563eb;--sidebar-hover-bg:#f8fafc;--sidebar-active-bg:#eff6ff;--sidebar-accent:#2563eb;--sidebar-width:260px;--success:#059669;--success-bg:#d1fae5;--success-text:#065f46;--warning:#d97706;--warning-bg:#fef3c7;--warning-text:#92400e;--error:#dc2626;--error-bg:#fee2e2;--error-text:#991b1b;--info:#2563eb;--info-bg:#dbeafe;--info-text:#1e40af;--secondary:#7c3aed;--secondary-light:#ede9fe;--teal:#0d9488;--teal-light:#ccfbf1;--r-xs:2px;--r-sm:4px;--r-md:6px;--r-lg:8px;--r-xl:8px;--r-2xl:8px;--shadow-xs:0 1px 2px 0 #0000000d;--shadow-sm:0 1px 2px 0 #0000000d, 0 0 0 1px #00000005;--shadow-card:0 2px 8px -2px #0000000f, 0 1px 3px -1px #0000000a;--shadow-ambient:0 4px 12px -2px #00000014;--shadow-elevated:0 8px 24px -4px #0000001a, 0 2px 8px -2px #0000000d;--font-headline:"Inter", system-ui, sans-serif;--font-body:"Inter", system-ui, sans-serif}@keyframes slideUpFade{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes smoothFadeIn{0%{opacity:0}to{opacity:1}}@keyframes blurIn{0%{opacity:0;filter:blur(6px);transform:scale(.98)}to{opacity:1;filter:blur();transform:scale(1)}}.animate-fade{animation:.3s cubic-bezier(.4,0,.2,1) forwards smoothFadeIn}.animate-slide-up{animation:.4s cubic-bezier(.16,1,.3,1) forwards slideUpFade}.animate-blur-in{animation:.5s cubic-bezier(.16,1,.3,1) forwards blurIn}.app-shell{background:var(--bg);width:100vw;height:100vh;font-family:var(--font-body);display:flex;overflow:hidden}.sidebar{width:var(--sidebar-width);min-width:var(--sidebar-width);background:var(--sidebar-bg);border-right:1px solid var(--sidebar-border);z-index:10;flex-direction:column;flex-shrink:0;height:100vh;transition:width .3s cubic-bezier(.4,0,.2,1),min-width .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative}.sidebar.collapsed{width:68px;min-width:68px}.sidebar-brand{border-bottom:1px solid var(--sidebar-border);flex-shrink:0;align-items:center;height:60px;padding:0 20px;display:flex;overflow:hidden}.logo-stack{align-items:center;width:100%;height:100%;display:flex;position:relative}.logo-full,.logo-min{transition:opacity .22s,transform .22s;position:absolute;top:50%}.logo-full{opacity:1;left:0;transform:translateY(-50%)}.logo-min{opacity:0;left:50%;transform:translate(-50%,-50%)}.sidebar.collapsed .logo-full{opacity:0;pointer-events:none;transform:translateY(-50%)scale(.8)}.sidebar.collapsed .logo-min{opacity:1;pointer-events:auto}.sidebar-nav{flex-direction:column;flex:1;gap:4px;padding:16px 0;display:flex;overflow:hidden auto}.sidebar-nav::-webkit-scrollbar{width:4px}.sidebar-nav::-webkit-scrollbar-track{background:0 0}.sidebar-nav::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.nav-group{flex-direction:column;width:100%;display:flex}.nav-item{border-radius:var(--r-lg);color:var(--sidebar-text);cursor:pointer;white-space:nowrap;text-align:left;background:0 0;border:none;outline:none;align-items:center;gap:12px;width:calc(100% - 24px);margin:1px 12px;padding:10px 14px;font-size:13.5px;font-weight:500;text-decoration:none;transition:all .2s;display:flex;position:relative}.sidebar.collapsed .nav-item{border-radius:var(--r-md);justify-content:center;width:44px;height:44px;margin:4px auto;padding:0}.nav-item:hover{background:var(--sidebar-hover-bg);color:var(--sidebar-text-hover)}.nav-item.active{background:var(--sidebar-active-bg);color:var(--sidebar-text-active);font-weight:600}.nav-item:before{content:"";background:var(--sidebar-accent);border-radius:0 4px 4px 0;width:3px;height:60%;transition:transform .15s;position:absolute;top:50%;left:-12px;transform:translateY(-50%)scaleY(0)}.sidebar.collapsed .nav-item:before{left:0}.nav-item.active:before{transform:translateY(-50%)scaleY(1)}.nav-item-icon{flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;display:flex}.nav-item-text{text-overflow:ellipsis;flex:1;transition:opacity .2s,width .2s;overflow:hidden}.sidebar.collapsed .nav-item-text{opacity:0;pointer-events:none;width:0;display:none}.nav-chevron{color:var(--text-muted);flex-shrink:0;font-size:10px;transition:transform .2s,opacity .2s}.nav-chevron.open{transform:rotate(180deg)}.sidebar.collapsed .nav-chevron{opacity:0;width:0;display:none}.nav-sub{grid-template-rows:0fr;transition:grid-template-rows .3s cubic-bezier(.4,0,.2,1);display:grid;overflow:hidden}.nav-sub.open{grid-template-rows:1fr}.nav-sub-inner{opacity:0;border-left:1.5px solid #e2e8f0cc;flex-direction:column;gap:2px;min-height:0;margin-left:28px;padding-left:10px;transition:opacity .25s,transform .3s cubic-bezier(.4,0,.2,1);display:flex;transform:translateY(-8px)}.nav-sub.open .nav-sub-inner{opacity:1;transform:translateY(0)}.nav-sub-item{border-radius:var(--r-md);color:var(--sidebar-text);cursor:pointer;white-space:nowrap;align-items:center;gap:10px;width:calc(100% - 16px);margin:1px 8px;padding:8px 12px;font-size:13.5px;font-weight:500;text-decoration:none;transition:all .2s;display:flex}.nav-sub-item:hover{background:var(--sidebar-hover-bg);color:var(--sidebar-text-hover);padding-left:14px}.nav-sub-item.active{background:var(--sidebar-active-bg);color:var(--sidebar-text-active);padding-left:14px;font-weight:600}.sidebar-bottom{border-top:1px solid var(--sidebar-border);flex-direction:column;flex-shrink:0;gap:6px;padding:12px;display:flex}.sidebar-profile{border-radius:var(--r-lg);cursor:pointer;text-align:left;background:0 0;border:none;outline:none;align-items:center;gap:10px;width:100%;padding:8px;text-decoration:none;transition:background .15s;display:flex}.sidebar-profile:hover{background:var(--sidebar-hover-bg)}.sidebar-avatar{background:linear-gradient(135deg, var(--primary) 0%, var(--primary-dim) 100%);color:#fff;letter-spacing:.03em;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:12px;font-weight:700;display:flex}.sidebar-profile-info{flex-direction:column;flex:1;min-width:0;transition:opacity .2s;display:flex}.sidebar-profile-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.sidebar-profile-role{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.sidebar.collapsed .sidebar-profile-info{opacity:0;width:0;display:none}.collapse-trigger-btn{background:var(--surface-lowest);border:1px solid var(--border);cursor:pointer;width:22px;height:22px;box-shadow:var(--shadow-xs);z-index:20;color:var(--text-muted);border-radius:50%;outline:none;justify-content:center;align-items:center;font-size:10px;transition:all .15s;display:flex;position:absolute;top:22px;right:-11px}.collapse-trigger-btn:hover{background:var(--surface-low);border-color:var(--border-strong);color:var(--text-secondary);box-shadow:var(--shadow-sm)}.collapse-trigger-btn svg{transition:transform .25s}.sidebar.collapsed .collapse-trigger-btn svg{transform:rotate(180deg)}.main-content{background:var(--bg);flex-direction:column;flex:1;min-width:0;display:flex;position:relative;overflow:hidden}.topbar{z-index:100;flex-shrink:0;gap:16px;position:relative;background:#fff!important;border-bottom:1px solid #e2e8f0!important;justify-content:space-between!important;align-items:center!important;height:64px!important;padding:0 24px!important;display:flex!important;box-shadow:0 1px 3px #00000005,0 4px 12px -8px #0000000d!important}.topbar-brand{flex-shrink:0;align-items:center;margin-right:16px;display:flex}.topbar-nav-container{flex:1;align-items:center;max-width:820px;height:100%;margin-right:auto;display:flex;position:relative;overflow:visible}.topbar-nav{scrollbar-width:none;-ms-overflow-style:none;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;align-items:center;gap:4px;width:100%;height:100%;display:flex;overflow:auto visible}.topbar-nav::-webkit-scrollbar{display:none}.topbar-scroll-btn{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);width:24px;height:24px;color:var(--text-secondary);cursor:pointer;z-index:10;background:#fffffff2;border:1px solid #e2e8f0;border-radius:50%;outline:none;justify-content:center;align-items:center;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 2px 8px #0000000f}.topbar-scroll-btn:hover{color:var(--text-primary);background:#f1f5f9;transform:translateY(-50%)scale(1.05);box-shadow:0 4px 12px #0000001a}.topbar-scroll-btn.left{left:-8px}.topbar-scroll-btn.right{right:-8px}.topbar-nav-item{color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;background:0 0;border:none;border-radius:6px;outline:none;align-items:center;gap:8px;padding:8px 14px;font-size:13.5px;font-weight:500;text-decoration:none;transition:all .15s cubic-bezier(.4,0,.2,1);display:inline-flex}.topbar-nav-item:hover,.topbar-nav-item.dropdown-toggle:hover{color:var(--text-primary);background:#f1f5f9}.topbar-nav-item.active{font-weight:600;background:var(--primary-light)!important;color:var(--primary)!important}.topbar-nav-item .nav-item-icon{justify-content:center;align-items:center;width:16px;height:16px;display:flex}.top-nav-dropdown-wrapper{align-items:center;height:100%;display:flex;position:relative}.top-nav-dropdown-menu{z-index:10000;background:#fff;border:1px solid #e2e8f0;border-radius:10px;flex-direction:column;gap:2px;width:210px;padding:6px;animation:.2s cubic-bezier(.16,1,.3,1) forwards dropdownFadeIn;display:flex;position:fixed;box-shadow:0 10px 25px -5px #00000014,0 8px 16px -6px #0000000a}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.top-nav-dropdown-item{color:var(--text-secondary);border-radius:6px;align-items:center;gap:10px;padding:10px 14px;font-size:13px;font-weight:500;text-decoration:none;transition:all .15s;display:flex}.top-nav-dropdown-item:hover{color:var(--text-primary);background:#f1f5f9;padding-left:16px}.top-nav-dropdown-item.active{padding-left:16px;font-weight:600;background:var(--primary-light)!important;color:var(--primary)!important}.topbar-logout-btn{color:#dc2626;cursor:pointer;background:#dc26260a;border:1px solid #dc262629;border-radius:8px;outline:none;justify-content:center;align-items:center;width:34px;height:34px;transition:all .2s;display:flex}.topbar-logout-btn:hover{background:#dc26261a;border-color:#dc26264d;transform:translateY(-.5px)}.topbar-left{display:none}.topbar-breadcrumbs{color:var(--text-secondary);align-items:center;gap:6px;font-size:13px;font-weight:500;display:flex}.breadcrumb-item-home{color:var(--primary);cursor:pointer;font-weight:600;transition:color .15s}.breadcrumb-item-home:hover{color:var(--primary-hover)}.breadcrumb-wrapper{align-items:center;gap:6px;display:flex}.breadcrumb-separator{color:var(--text-muted);-webkit-user-select:none;user-select:none;font-size:11px}.breadcrumb-item{color:var(--text-secondary);transition:color .15s}.breadcrumb-item.active{color:var(--text-primary);cursor:default;font-weight:600}.breadcrumb-item:not(.active):hover{color:var(--text-primary);cursor:pointer}.search-keycap-badge{background:var(--surface-low);border:1px solid var(--border);color:var(--text-muted);box-shadow:var(--shadow-xs);-webkit-user-select:none;user-select:none;pointer-events:none;border-radius:4px;align-items:center;gap:2px;padding:1px 4px;font-size:10px;font-weight:600;display:flex}.search-keycap-badge kbd{margin:0 1px;font-family:inherit}.topbar-kicker{color:var(--text-muted);text-transform:uppercase;letter-spacing:.12em;margin-bottom:4px;font-size:10px;font-weight:800;line-height:1}.topbar-title{font-family:var(--font-headline);color:var(--text-primary);letter-spacing:-.02em;white-space:nowrap;text-overflow:ellipsis;font-size:20px;font-weight:800;line-height:1.15;overflow:hidden}.topbar-search-wrapper{flex:1;min-width:200px;max-width:280px;position:relative}.topbar-search{height:32px;color:var(--text-muted);background:var(--surface-low);border:1px solid var(--border);border-radius:var(--r-md);align-items:center;gap:10px;padding:0 12px;font-size:13px;transition:all .2s ease-in-out;display:flex}.topbar-search:focus-within{border-color:var(--primary);background:var(--surface-lowest);box-shadow:0 0 0 1px var(--primary);color:var(--text-secondary)}.topbar-search-input{height:100%;font-family:var(--font-body);color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;font-size:13px;font-weight:500}.topbar-search-input::placeholder{color:var(--text-muted)}.topbar-search-clear{color:var(--text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0 4px;font-size:18px;transition:color .15s;display:flex}.topbar-search-clear:hover{color:var(--text-primary)}.topbar-search-dropdown{background:var(--surface-lowest);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--shadow-elevated);z-index:100;max-height:380px;animation:.2s cubic-bezier(.16,1,.3,1) forwards slideUpFade;position:absolute;top:calc(100% + 8px);left:0;right:0;overflow-y:auto}.topbar-search-dropdown::-webkit-scrollbar{width:4px}.topbar-search-dropdown::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.topbar-search-dropdown-empty{text-align:center;color:var(--text-secondary);padding:20px;font-size:13px}.topbar-search-dropdown-loading{color:var(--text-secondary);justify-content:center;align-items:center;gap:8px;padding:20px;font-size:13px;display:flex}.topbar-search-group{border-bottom:1px solid var(--border)}.topbar-search-group:last-child{border-bottom:none}.topbar-search-group-header{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;background:var(--surface-low);padding:8px 14px;font-size:10px;font-weight:700}.topbar-search-item{cursor:pointer;color:var(--text-primary);align-items:center;gap:12px;padding:10px 14px;text-decoration:none;transition:background .12s;display:flex}.topbar-search-item:hover{background:var(--sidebar-hover-bg)}.topbar-search-item-info{flex:1;min-width:0}.topbar-search-item-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.topbar-search-item-sub{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.topbar-right{flex-shrink:0;align-items:center;gap:12px;display:flex}.topbar-icon-btn{border-radius:var(--r-md);background:var(--surface-lowest);border:1px solid var(--border);cursor:pointer;width:40px;height:40px;color:var(--text-secondary);outline:none;justify-content:center;align-items:center;transition:all .15s;display:flex;position:relative}.topbar-icon-btn:hover{background:var(--surface-low);border-color:var(--border-strong);color:var(--text-primary)}.topbar-icon-btn.active{background:var(--primary-light);border-color:var(--primary-container);color:var(--primary)}.topbar-notification-wrapper{position:relative}.topbar-notification-badge{color:#fff;min-width:16px;height:16px;box-shadow:0 0 0 2px var(--surface-lowest), 0 4px 6px -1px #ef444466;background:linear-gradient(135deg,#ef4444,#dc2626);border-radius:999px;justify-content:center;align-items:center;padding:0 4px;font-size:9px;font-weight:700;animation:2s infinite pulse-badge;display:flex;position:absolute;top:-4px;right:-4px}@keyframes pulse-badge{0%{box-shadow:0 0 0 0 #ef444499, 0 0 0 2px var(--surface-lowest)}70%{box-shadow:0 0 0 5px #ef444400, 0 0 0 2px var(--surface-lowest)}to{box-shadow:0 0 0 0 #ef444400, 0 0 0 2px var(--surface-lowest)}}.topbar-notification-dropdown{-webkit-backdrop-filter:blur(20px);border-radius:var(--r-xl);width:360px;box-shadow:var(--shadow-elevated);z-index:100;transform-origin:100% 0;background:#ffffffe6;border:1px solid #fff6;flex-direction:column;animation:.2s cubic-bezier(.16,1,.3,1) forwards scale-up;display:flex;position:absolute;top:calc(100% + 12px);right:0;overflow:hidden}@keyframes scale-up{0%{opacity:0;transform:scale(.95)translateY(-8px)}to{opacity:1;transform:scale(1)translateY(0)}}.topbar-notification-header{background:#ffffffa6;border-bottom:1px solid #0000000d;flex-direction:column;gap:10px;padding:12px 16px;display:flex}.topbar-notification-title-bar{justify-content:space-between;align-items:center;width:100%;display:flex}.topbar-notification-header h3{color:var(--text-primary);margin:0;font-size:13px;font-weight:700}.topbar-notification-tabs{background:var(--surface-low);border-radius:var(--r-md);border:1px solid var(--border);gap:4px;width:100%;padding:2px;display:flex}.notif-tab{text-align:center;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:4px;outline:none;flex:1;justify-content:center;align-items:center;gap:4px;padding:5px 8px;font-size:11px;font-weight:600;transition:all .15s;display:flex}.notif-tab:hover{color:var(--text-primary)}.notif-tab.active{background:var(--surface-lowest);color:var(--primary);box-shadow:var(--shadow-xs)}.tab-badge{background:var(--primary);color:#fff;border-radius:99px;padding:0 4px;font-size:9px;font-weight:700}.btn-mark-all-read{color:var(--primary);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px 6px;font-size:11.5px;font-weight:600;transition:all .2s}.btn-mark-all-read:hover{background:var(--surface-low)}.topbar-notification-list{max-height:320px;overflow-y:auto}.topbar-notification-list::-webkit-scrollbar{width:4px}.topbar-notification-list::-webkit-scrollbar-thumb{background:#0000001a;border-radius:2px}.topbar-notification-empty{text-align:center;flex-direction:column;align-items:center;padding:36px 18px;display:flex}.topbar-notification-empty .empty-icon{color:var(--text-muted);opacity:.5;margin-bottom:12px}.topbar-notification-empty .empty-title{color:var(--text-primary);margin:0 0 2px;font-size:13px;font-weight:600}.topbar-notification-empty .empty-sub{color:var(--text-muted);margin:0;font-size:11px}.topbar-notification-item{border-bottom:1px solid #00000005;gap:12px;padding:12px 18px;transition:all .2s;display:flex;position:relative}.topbar-notification-item:hover{background:#00000005}.topbar-notification-item.unread{background:#2563eb0a}.notif-icon-wrapper{border-radius:var(--r-sm);flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.notif-icon-wrapper .icon-general{color:var(--primary)}.topbar-notification-item.unread .notif-icon-wrapper{background:#fffc}.topbar-notification-item.read .notif-icon-wrapper{background:var(--surface-low)}.notif-content{flex:1;min-width:0}.notif-title-row{justify-content:space-between;align-items:baseline;gap:6px;margin-bottom:2px;display:flex}.notif-title{color:var(--text-primary);font-size:12.5px;font-weight:600}.notif-time{color:var(--text-muted);font-size:10px}.notif-message{color:var(--text-secondary);margin:0;font-size:11.5px;line-height:1.4}.btn-mark-single-read{background:var(--surface-lowest);border:1px solid var(--border);width:16px;height:16px;color:var(--text-muted);cursor:pointer;opacity:0;border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex;position:absolute;bottom:10px;right:12px}.topbar-notification-item:hover .btn-mark-single-read{opacity:1}.btn-mark-single-read:hover{background:var(--primary);border-color:var(--primary);color:#fff}.topbar-user{border:1px solid var(--border);background:var(--surface-lowest);height:40px;color:var(--text-primary);cursor:pointer;border-radius:999px;outline:none;align-items:center;gap:10px;padding:4px 12px 4px 4px;transition:all .15s;display:inline-flex}.topbar-user:hover{border-color:var(--border-strong);background:var(--sidebar-hover-bg)}.topbar-user span{flex-direction:column;align-items:flex-start;line-height:1.2;display:flex}.topbar-user strong{text-overflow:ellipsis;white-space:nowrap;max-width:100px;font-size:12px;font-weight:600;overflow:hidden}.topbar-user small{color:var(--text-muted);text-transform:capitalize;font-size:10px}.page-area{flex-direction:column;flex:1;padding:24px;display:flex;overflow-y:auto}.page-area.fit-screen{overflow:hidden}.page-area::-webkit-scrollbar{width:6px;height:6px}.page-area::-webkit-scrollbar-track{background:0 0}.page-area::-webkit-scrollbar-thumb{background:#cbd5e199;border-radius:999px}.page-area::-webkit-scrollbar-thumb:hover{background:#94a3b8cc}.tv-card-scroll-list::-webkit-scrollbar{width:6px;height:6px}.tv-card-scroll-list::-webkit-scrollbar-track{background:0 0}.tv-card-scroll-list::-webkit-scrollbar-thumb{background:#cbd5e199;border-radius:999px}.tv-card-scroll-list::-webkit-scrollbar-thumb:hover{background:#94a3b8cc}.page-area>div{flex-direction:column;flex:1;width:100%;max-width:1440px;min-height:0;margin:0 auto;animation:.45s cubic-bezier(.16,1,.3,1) forwards slideUpFade;display:flex}.stat-grid{grid-template-columns:repeat(auto-fill,minmax(200px,280px));gap:16px;margin-bottom:28px;display:grid}.stat-card{cursor:default;background:#fff;border:1px solid #e2e8f0cc;border-radius:14px;flex-direction:column;gap:10px;padding:22px 24px;transition:all .3s cubic-bezier(.16,1,.3,1);display:flex;position:relative;overflow:hidden;box-shadow:0 1px 2px #0f172a03,0 4px 16px #0f172a03,0 10px 24px -5px #0f172a05}.stat-card:hover{border-color:#2563eb26;transform:translateY(-3px);box-shadow:0 20px 40px -4px #0f172a0f,0 4px 12px -2px #0f172a05}.stat-card-teal .stat-card-icon{color:#0d9488;background:#e6fffa}.stat-card-blue .stat-card-icon{color:#2563eb;background:#eff6ff}.stat-card-violet .stat-card-icon{color:#7c3aed;background:#f5f3ff}.stat-card-amber .stat-card-icon{color:#d97706;background:#fffbeb}.stat-card-rose .stat-card-icon{color:#e11d48;background:#fff1f2}.stat-card-header{justify-content:space-between;display:flex}.stat-card-label{color:var(--text-secondary);font-size:12px;font-weight:500}.stat-card.gradient .stat-card-label{color:#fffc}.stat-card-icon{border-radius:var(--r-md);background:var(--surface-low);width:28px;height:28px;color:var(--text-secondary);justify-content:center;align-items:center;display:flex}.stat-card.gradient .stat-card-icon{color:#fff;background:#ffffff26}.stat-card-value{font-family:var(--font-headline);color:var(--text-primary);letter-spacing:-.03em;font-size:22px;font-weight:800;line-height:1}.stat-card.gradient .stat-card-value{color:#fff}.stat-card-change{align-items:center;gap:4px;font-size:11.5px;display:flex}.stat-card-change.up{color:var(--success)}.stat-card-change.down{color:var(--error)}.stat-card.gradient .stat-card-change{color:#ffffffe6}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;background:#0f172a59;justify-content:center;align-items:center;animation:.2s forwards smoothFadeIn;display:flex;position:fixed;inset:0}.modal-panel{background:var(--surface-lowest);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--shadow-elevated);width:400px;max-width:90%;animation:.25s cubic-bezier(.16,1,.3,1) forwards slideUpFade;overflow:hidden}.modal-header{justify-content:space-between;align-items:center;padding:20px 24px 12px;display:flex}.modal-title{font-family:var(--font-headline);color:var(--text-primary);margin:0;font-size:16px;font-weight:700}.modal-body{color:var(--text-secondary);padding:0 24px 20px;font-size:13.5px;line-height:1.5}.modal-footer{background:var(--surface-low);border-top:1px solid var(--border);justify-content:flex-end;align-items:center;gap:8px;padding:12px 24px 20px;display:flex}.btn{border-radius:var(--r-md);cursor:pointer;border:none;outline:none;padding:8px 16px;font-size:13px;font-weight:600;transition:all .15s}.btn-ghost{color:var(--text-secondary);background:0 0}.btn-ghost:hover{color:var(--text-primary);background:#0000000d}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-hover)}@media (width<=920px){.topbar-search-wrapper{display:none}}@media (width<=680px){.sidebar{transition:left .3s;position:fixed;top:0;bottom:0;left:-260px}.sidebar.mobile-open{left:0}.collapse-trigger-btn{display:none}.topbar{padding:0 16px}.topbar-user span{display:none}}.dashboard-panel{background:var(--surface-lowest);border:1px solid var(--border);border-radius:var(--r-2xl);box-shadow:var(--shadow-sm);margin-top:12px;overflow:hidden}.dashboard-panel-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.dashboard-panel-title{font-family:var(--font-headline);color:var(--text-primary);margin:0;font-size:16px;font-weight:700}.dashboard-panel-subtitle{color:var(--text-muted);margin:4px 0 0;font-size:12px}.dashboard-badge-active{color:#065f46;text-transform:uppercase;letter-spacing:.04em;background:#d1fae5;border-radius:999px;padding:4px 10px;font-size:11px;font-weight:700}.dashboard-table-wrapper{width:100%;overflow-x:auto}.dashboard-table{border-collapse:collapse;text-align:left;width:100%}.dashboard-table th{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);border-bottom:1px solid var(--border);background:var(--surface-low);padding:14px 24px;font-size:11px;font-weight:700}.dashboard-table td{color:var(--text-secondary);border-bottom:1px solid var(--border);vertical-align:middle;padding:16px 24px;font-size:13.5px}.dashboard-table tr:last-child td{border-bottom:none}.dashboard-table tr:hover td{background:var(--sidebar-hover-bg)}.company-logo-avatar{border-radius:var(--r-md);background:var(--surface-low);width:32px;height:32px;color:var(--text-secondary);border:1px solid var(--border);flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:flex}.badge-cycle{background:var(--surface-low);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;border:1px solid var(--border);border-radius:999px;padding:3px 8px;font-size:10px;font-weight:700}.status-indicator-active{color:var(--success);align-items:center;gap:6px;font-size:12.5px;font-weight:600;display:inline-flex}.status-dot-pulse{background-color:var(--success);border-radius:50%;width:7px;height:7px;animation:2s infinite pulse-success;display:inline-block;box-shadow:0 0 #05966966}@keyframes pulse-success{0%{box-shadow:0 0 #059669b3}70%{box-shadow:0 0 0 6px #05966900}to{box-shadow:0 0 #05966900}}.page-panel{background:var(--surface-lowest);border:1px solid var(--border);border-radius:var(--r-2xl);box-shadow:var(--shadow-sm);padding:28px}.dashboard-hero{border:1px solid var(--border);border-left:4px solid var(--primary);border-radius:var(--r-2xl);box-shadow:var(--shadow-sm);background:linear-gradient(135deg,#fff 0%,#f8fafc 50%,#eff6ff 100%);justify-content:space-between;align-items:center;margin-bottom:24px;padding:22px 28px;transition:all .25s;display:flex;position:relative;overflow:hidden}.dashboard-hero:hover{box-shadow:var(--shadow-ambient);border-color:var(--border-strong);transform:translateY(-.5px)}.dashboard-hero-left{z-index:1;position:relative}.dashboard-hero-greeting{color:var(--text-primary);letter-spacing:-.02em;margin:0;font-size:23px;font-weight:800;line-height:1.2}.dashboard-hero-sub{color:var(--text-secondary);margin:4px 0 0;font-size:12.5px;font-weight:500;line-height:1.5}.dashboard-hero-right{z-index:1;align-items:center;display:flex;position:relative}.dashboard-hero-date{color:var(--text-muted);font-size:13px;font-weight:500}.dashboard-hero-day{color:var(--primary);letter-spacing:-.01em;font-size:18px;font-weight:700}.title-bar{border-bottom:1px solid #e2e8f099;flex-shrink:0;justify-content:space-between;align-items:center;margin-bottom:14px;padding:2px 0 10px;display:flex}.title-bar-left{flex-direction:column;gap:2px;display:flex}.title-bar-kicker{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;font-size:10px;font-weight:700}.title-bar-heading{font-family:var(--font-headline);color:var(--text-primary);letter-spacing:-.02em;align-items:center;gap:8px;margin:0;font-size:17px;font-weight:700;display:flex}.title-bar-right{align-items:center;gap:8px;display:flex}.btn-action{cursor:pointer;font-size:12.5px;font-weight:600;font-family:var(--font-body);-webkit-user-select:none;user-select:none;border:1px solid #0000;border-radius:6px;outline:none;align-items:center;gap:6px;padding:6px 12px;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex}.btn-action-ghost{color:var(--text-secondary);border:1px solid var(--border);background:#fff;box-shadow:0 1px 2px #0000000a}.btn-action-ghost:hover{border-color:var(--border-strong);color:var(--text-primary);background:#f8fafc;transform:translateY(-.5px)}.btn-action-ghost:active{background:#f1f5f9;transform:translateY(0)}.btn-action-primary{background:var(--primary);color:#fff;border-color:var(--primary);box-shadow:0 1px 2px #2563eb26,inset 0 1px #ffffff1a}.btn-action-primary:hover{background:var(--primary-hover);border-color:var(--primary-hover);transform:translateY(-.5px);box-shadow:0 4px 12px #2563eb33,inset 0 1px #ffffff1a}.btn-action-primary:active{background:var(--primary-dim);border-color:var(--primary-dim);transform:translateY(0)}.tv-content-card{background-color:#fff;border:1px solid #e2e8f0cc;border-radius:14px;flex-direction:column;flex:1;min-height:0;padding:20px 24px;transition:all .3s cubic-bezier(.16,1,.3,1);animation:.5s cubic-bezier(.16,1,.3,1) forwards blurIn;display:flex;box-shadow:0 1px 2px #0f172a03,0 4px 16px #0f172a05,0 10px 30px -5px #0f172a08}.tv-content-card:hover{border-color:#2563eb33;transform:translateY(-2px);box-shadow:0 20px 40px -4px #0f172a14,0 4px 16px -2px #0f172a05}.topbar-profile-dropdown{z-index:1000;background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;width:200px;padding:6px;animation:.2s cubic-bezier(.16,1,.3,1) forwards dropdownFadeIn;display:flex;position:absolute;top:calc(100% + 12px);right:0;box-shadow:0 10px 25px -5px #00000014,0 8px 16px -6px #0000000a}.topbar-profile-dropdown-header{flex-direction:column;gap:2px;padding:10px 12px 8px;display:flex}.topbar-profile-dropdown-header .profile-name{color:#0f172a;font-size:13px;font-weight:700}.topbar-profile-dropdown-header .profile-role{color:#64748b;font-size:11px;font-weight:500}.topbar-profile-dropdown-divider{background:#f1f5f9;height:1px;margin:4px 6px}.topbar-profile-dropdown-list{flex-direction:column;gap:2px;display:flex}.topbar-profile-dropdown-item{color:#475569;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;outline:none;align-items:center;gap:10px;width:100%;padding:8px 12px;font-size:12.5px;font-weight:600;text-decoration:none;transition:all .15s;display:flex}.topbar-profile-dropdown-item:hover{color:#0f172a;background:#f1f5f9;padding-left:14px}.topbar-profile-dropdown-item.logout{color:#ef4444}.topbar-profile-dropdown-item.logout:hover{color:#dc2626;background:#fef2f2;padding-left:14px}@layer components;@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-red-50:oklch(97.1% .013 17.38);--color-red-200:oklch(88.5% .062 18.334);--color-red-700:oklch(50.5% .213 27.518);--color-amber-50:oklch(98.7% .022 95.277);--color-amber-100:oklch(96.2% .059 95.617);--color-amber-200:oklch(92.4% .12 95.746);--color-amber-600:oklch(66.6% .179 58.318);--color-amber-700:oklch(55.5% .163 48.998);--color-blue-50:oklch(97% .014 254.604);--color-blue-600:oklch(54.6% .245 262.881);--color-indigo-100:oklch(93% .034 272.788);--color-indigo-600:oklch(51.1% .262 276.966);--color-violet-100:oklch(94.3% .029 294.588);--color-violet-600:oklch(54.1% .281 293.009);--color-gray-50:oklch(98.5% .002 247.839);--color-gray-300:oklch(87.2% .01 258.338);--color-gray-400:oklch(70.7% .022 261.325);--color-gray-500:oklch(55.1% .027 264.364);--color-gray-600:oklch(44.6% .03 256.802);--color-gray-700:oklch(37.3% .034 259.733);--color-gray-800:oklch(27.8% .033 256.848);--color-gray-900:oklch(21% .034 264.665);--color-white:#fff;--spacing:.25rem;--container-md:28rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--radius-md:.375rem;--radius-lg:.5rem;--radius-2xl:1rem;--shadow-xs:0 1px 2px 0 #0000000d;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--ease-in-out:cubic-bezier(.4, 0, .2, 1);--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.h-20{height:calc(var(--spacing) * 20)}.min-h-\[60vh\]{min-height:60vh}.min-h-screen{min-height:100vh}.w-20{width:calc(var(--spacing) * 20)}.w-full{width:100%}.w-max{width:max-content}.max-w-md{max-width:var(--container-md)}.flex-shrink-0{flex-shrink:0}.flex-grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-pulse{animation:var(--animate-pulse)}.resize{resize:both}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:calc(var(--spacing) * 1)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.border{border-style:var(--tw-border-style);border-width:1px}.border-amber-200{border-color:var(--color-amber-200)}.border-gray-300{border-color:var(--color-gray-300)}.border-red-200{border-color:var(--color-red-200)}.bg-amber-50{background-color:var(--color-amber-50)}.bg-amber-100{background-color:var(--color-amber-100)}.bg-blue-50{background-color:var(--color-blue-50)}.bg-gray-50{background-color:var(--color-gray-50)}.bg-gray-900{background-color:var(--color-gray-900)}.bg-indigo-100{background-color:var(--color-indigo-100)}.bg-red-50{background-color:var(--color-red-50)}.bg-violet-100{background-color:var(--color-violet-100)}.bg-white{background-color:var(--color-white)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.text-center{text-align:center}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.text-amber-600{color:var(--color-amber-600)}.text-amber-700{color:var(--color-amber-700)}.text-blue-600{color:var(--color-blue-600)}.text-gray-400{color:var(--color-gray-400)}.text-gray-500{color:var(--color-gray-500)}.text-gray-600{color:var(--color-gray-600)}.text-gray-700{color:var(--color-gray-700)}.text-gray-900{color:var(--color-gray-900)}.text-indigo-600{color:var(--color-indigo-600)}.text-red-700{color:var(--color-red-700)}.text-violet-600{color:var(--color-violet-600)}.text-white{color:var(--color-white)}.uppercase{text-transform:uppercase}.italic{font-style:italic}.underline{text-decoration-line:underline}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}@media (hover:hover){.hover\:bg-gray-50:hover{background-color:var(--color-gray-50)}.hover\:bg-gray-800:hover{background-color:var(--color-gray-800)}.hover\:underline:hover{text-decoration-line:underline}}}html,body,#root{-webkit-font-smoothing:antialiased;height:100%;font-family:Inter,system-ui,-apple-system,sans-serif}.login-input:focus{background-color:#fff;border-color:#4b5563;outline:none;box-shadow:0 0 0 3px #4b556326}.login-btn:hover:not(:disabled){transform:translateY(-1px);background:#111827!important;box-shadow:0 6px 16px #00000026!important}.login-btn:active:not(:disabled){transform:translateY(0)}@keyframes slideDown{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.error-alert{animation:.2s forwards slideDown}@keyframes spin{to{transform:rotate(360deg)}}.spinner{animation:.75s linear infinite spin}@keyframes tv-progress-slide{0%{transform:translate(-100%)}50%{transform:translate(150%)}to{transform:translate(400%)}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@keyframes pulse{50%{opacity:.5}}
