:root{--bg-color:#0b0f1a;--card-bg:#161d2f;--text-main:#fff;--text-muted:#94a3b8;--border:#2d3748;--chart-grid:#2d3748;--primary:#007bff;--primary-hover:#0056b3;--primary-light:#3395ff;--secondary:#2563eb;--success:#10b981;--danger:#ef4444;--warning:#f59e0b;--radius:12px;--transition:all .3s ease;--input-bg:#0f172a;--input-option-bg:#161d2f;--table-header-bg:#ffffff0a;--ag-bg:#161d2f;--ag-header-bg:#0f172a;--scrollbar-size:10px;--scrollbar-track:#94a3b80f;--scrollbar-thumb:#334155;--scrollbar-thumb-hover:#52647b;--scrollbar-thumb-active:#1684ff}body.light{--bg-color:#f8fafc;--card-bg:#fff;--text-main:#0f172a;--text-muted:#64748b;--border:#e2e8f0;--chart-grid:#e2e8f0;--input-bg:#fff;--input-option-bg:#fff;--table-header-bg:#f1f5f9;--ag-bg:#fff;--ag-header-bg:#f8fafc;--scrollbar-track:#0f172a0e;--scrollbar-thumb:#a7b3c3;--scrollbar-thumb-hover:#718096;--scrollbar-thumb-active:#087cf0}*{box-sizing:border-box;scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track);margin:0;padding:0}::-webkit-scrollbar{width:var(--scrollbar-size);height:var(--scrollbar-size)}::-webkit-scrollbar-track{background:var(--scrollbar-track);border-radius:999px}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);background-clip:padding-box;border:2px solid #0000;border-radius:999px;min-width:34px;min-height:34px}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover);background-clip:padding-box}::-webkit-scrollbar-thumb:active{background:var(--scrollbar-thumb-active);background-clip:padding-box}::-webkit-scrollbar-button{width:0;height:0;display:none}::-webkit-scrollbar-corner{background:0 0}body{background-color:var(--bg-color);color:var(--text-main);-webkit-font-smoothing:antialiased;min-width:320px;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.5}button{cursor:pointer;border-radius:var(--radius);transition:var(--transition);border:none;font-family:inherit}input,select,textarea{background:var(--input-bg);border:1px solid var(--border);color:var(--text-main);border-radius:var(--radius);transition:var(--transition);outline:none;padding:10px 14px;font-family:inherit}select option{background:var(--input-option-bg);color:var(--text-main)}input:focus,select:focus,textarea:focus{border-color:var(--primary);box-shadow:0 0 0 2px #8b5cf633}.glass-card{background:var(--card-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border);border-radius:var(--radius);padding:24px;box-shadow:0 4px 6px -1px #0000001a}.table-row-hover:hover{cursor:pointer;background-color:#007bff0d}.gradient-text{background:linear-gradient(135deg, var(--primary), var(--secondary));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-weight:700}.sidebar-logo{filter:drop-shadow(0 1px 1px #00000059)}body.light .sidebar-logo{filter:drop-shadow(0 1px 1px #0003)contrast(1.15)}.sidebar-company-identity{background:#fff;border:1px solid #ffffff14;border-radius:8px;justify-content:center;align-items:center;width:100%;min-height:68px;padding:10px 12px;display:flex;overflow:hidden;box-shadow:0 1px 3px #0000001f}body.light .sidebar-company-identity{background:#fff;border-color:#0f172a1f;box-shadow:0 1px 2px #0000000d}.sidebar-company-logo{object-fit:contain;flex-shrink:0;width:min(100%,190px);height:auto;max-height:54px}.sidebar-company-brand-lockup{justify-content:center;align-items:center;width:100%;min-width:0;display:flex}.sidebar-company-identity--lockup .sidebar-company-brand-lockup{gap:8px}.sidebar-company-identity--lockup .sidebar-company-logo{width:min(45%,82px);max-height:42px}.sidebar-company-brand-divider{background:#0f172a29;flex:none;width:1px;height:34px}.sidebar-company-secondary-logo{object-fit:contain;flex:0 auto;width:56px;max-width:38%;height:auto;max-height:46px}.sidebar-company-fallback{background:color-mix(in srgb, var(--company-accent) 22%, transparent);border:1px solid color-mix(in srgb, var(--company-accent) 60%, var(--border));width:48px;height:26px;color:var(--text-main);letter-spacing:0;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;font-size:.625rem;font-weight:800;display:none}.ag-theme-versiona,.ag-theme-quartz{--ag-background-color:var(--ag-bg);--ag-foreground-color:var(--text-main);--ag-header-background-color:var(--ag-header-bg);--ag-header-foreground-color:var(--text-main);--ag-border-color:var(--border);--ag-row-hover-color:#007bff14;--ag-odd-row-background-color:transparent;--ag-control-panel-background-color:var(--card-bg);--ag-input-background-color:var(--input-bg);--ag-input-text-color:var(--text-main)}@keyframes spin{to{transform:rotate(360deg)}}.app-shell{display:flex}.app-main{background:var(--bg-color);flex:1;min-height:100vh;padding:40px;transition:margin-left .3s}.app-content{max-width:1200px;margin:0 auto}.app-content:has(.dashboard-page){max-width:min(1560px,100vw - 340px)}.dashboard-management-table-wrap{scrollbar-gutter:stable;width:100%;overflow-x:auto!important}.app-content:has(.licensing-page){max-width:min(1500px,100vw - 340px)}.licensing-page{width:100%}.licensing-page-header{grid-template-columns:minmax(0,1fr) auto;align-items:flex-start;gap:24px;margin-bottom:28px;display:grid}.licensing-header-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.licensing-secondary-button,.licensing-open-button,.licensing-icon-button,.licensing-pagination button{min-height:40px;color:var(--text-main);background:var(--input-bg);border:1px solid var(--border);justify-content:center;align-items:center;gap:8px;padding:9px 14px;font-weight:700;display:inline-flex}.licensing-icon-button,.licensing-open-button,.licensing-pagination button{width:40px;padding:0}.licensing-secondary-button:disabled,.licensing-pagination button:disabled{cursor:not-allowed;opacity:.45}.licensing-kpis{grid-template-columns:repeat(6,minmax(150px,1fr));gap:14px;margin-bottom:20px;display:grid}.licensing-metric-card{min-height:104px;color:var(--text-main);text-align:left;border-color:var(--border);align-items:center;gap:13px;padding:18px;display:flex}.licensing-metric-card.clickable{cursor:pointer;width:100%}.licensing-metric-card.clickable:hover,.licensing-metric-card.active{border-color:var(--metric-border);box-shadow:0 0 0 1px var(--metric-border);transform:translateY(-1px)}.licensing-metric-icon{width:42px;height:42px;color:var(--metric-color);background:var(--metric-bg);border-radius:8px;flex:0 0 42px;place-items:center;display:grid}.licensing-metric-card small,.licensing-metric-card strong{display:block}.licensing-metric-card small{color:var(--text-muted);margin-bottom:3px;font-size:.75rem;font-weight:700}.licensing-metric-card strong{color:var(--metric-color);font-size:1.65rem;line-height:1.1}.licensing-filter-panel,.licensing-type-panel,.licensing-table-panel{margin-bottom:20px}.licensing-section-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.licensing-section-heading h2{align-items:center;gap:8px;margin:0;font-size:1.05rem;display:flex}.licensing-section-heading p{color:var(--text-muted);margin-top:4px;font-size:.8rem}.licensing-filter-grid{grid-template-columns:minmax(260px,1.4fr) repeat(3,minmax(180px,1fr));gap:12px;display:grid}.licensing-field{gap:6px;min-width:0;display:grid}.licensing-field>span{color:var(--text-muted);font-size:.72rem;font-weight:700}.licensing-field select,.licensing-search-control{width:100%;min-height:44px}.licensing-search-control{color:var(--text-muted);background:var(--input-bg);border:1px solid var(--border);border-radius:var(--radius);align-items:center;gap:8px;padding:0 13px;display:flex}.licensing-search-control:focus-within{border-color:var(--primary);box-shadow:0 0 0 2px #007bff29}.licensing-search-control input{width:100%;min-width:0;box-shadow:none;background:0 0;border:0;padding:0}.licensing-type-list{gap:8px;display:grid}.licensing-type-row{min-height:48px;color:var(--text-main);background:var(--input-bg);border:1px solid var(--border);text-align:left;border-radius:8px;grid-template-columns:72px minmax(180px,1fr) minmax(250px,auto);align-items:center;gap:14px;padding:10px 12px;display:grid}.licensing-type-row:hover,.licensing-type-row.active{border-color:var(--primary);background:#007bff0f}.licensing-type-row>span:last-child{color:var(--text-muted);text-align:right;font-size:.76rem}.licensing-stacked-bar{background:#94a3b81a;border-radius:999px;height:9px;display:flex;overflow:hidden}.licensing-stacked-bar span{min-width:2px}.licensing-table-wrap{width:100%;overflow-x:auto}.licensing-table{border-collapse:collapse;width:100%;min-width:1120px}.licensing-table th,.licensing-table td{border-bottom:1px solid var(--border);vertical-align:middle;text-align:left;padding:12px 10px}.licensing-table th{color:var(--text-muted);background:var(--table-header-bg);text-transform:uppercase;font-size:.68rem}.licensing-table td{font-size:.8rem}.licensing-table tbody tr:hover{background:#007bff0a}.licensing-table td small,.licensing-project-link span,.licensing-date-line small{color:var(--text-muted);font-size:.69rem;display:block}.licensing-project-link{color:var(--primary-light);text-align:left;background:0 0;border-radius:0;gap:1px;margin-bottom:3px;padding:0;display:grid}.licensing-project-link:hover strong{text-decoration:underline}.licensing-state-badge{white-space:nowrap;border:1px solid;border-radius:999px;align-items:center;min-height:28px;padding:4px 9px;font-size:.68rem;font-weight:800;display:inline-flex}.licensing-overdue{margin-top:5px;font-weight:800;color:var(--danger)!important}.licensing-status-text{text-overflow:ellipsis;white-space:nowrap;max-width:220px;font-weight:700;display:block;overflow:hidden}.licensing-date-line{grid-template-columns:56px auto;gap:5px;display:grid}.licensing-date-line+.licensing-date-line{margin-top:3px}.licensing-pagination{color:var(--text-muted);justify-content:space-between;align-items:center;gap:14px;padding-top:16px;font-size:.78rem;font-weight:700;display:flex}.licensing-pagination>div{align-items:center;gap:8px;display:flex}.licensing-pagination select{min-height:40px}.licensing-loading,.licensing-empty{min-height:100px;color:var(--text-muted);border:1px dashed var(--border);border-radius:8px;justify-content:center;align-items:center;gap:10px;display:flex}@keyframes licensing-spin{to{transform:rotate(360deg)}}.licensing-spin{animation:.9s linear infinite licensing-spin}@media (width<=1280px){.licensing-kpis{grid-template-columns:repeat(3,minmax(160px,1fr))}.licensing-filter-grid{grid-template-columns:repeat(2,minmax(220px,1fr))}}@media (width<=760px){.licensing-page-header{grid-template-columns:1fr;align-items:stretch;gap:16px}.licensing-header-actions,.licensing-header-actions .licensing-secondary-button{width:100%}.licensing-kpis,.licensing-filter-grid{grid-template-columns:1fr}.licensing-type-row{grid-template-columns:64px 1fr}.licensing-type-row>span:last-child{text-align:left;grid-column:1/-1}.licensing-pagination{flex-direction:column;align-items:flex-start}}.app-topbar{justify-content:flex-end;align-items:center;gap:12px;margin-bottom:24px;display:flex}.mobile-menu-button{background:var(--card-bg);color:var(--text-main);border:1px solid var(--border);padding:10px;display:none}.company-selector{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);align-items:center;gap:10px;min-width:0;padding:8px 12px;display:flex}.company-select{background:var(--input-bg);color:var(--text-main);border:1px solid var(--border);border-radius:8px;outline:none;min-width:180px;padding:8px 10px;font-weight:600}.mobile-sidebar-backdrop,.mobile-only,.mobile-card-list{display:none}.spin{animation:.9s linear infinite versiona-spin}.language-switcher{background:var(--card-bg);border:1px solid var(--border);border-radius:999px;align-items:center;gap:4px;padding:4px;display:inline-flex;box-shadow:0 10px 30px #0000002e}.language-switcher-compact{box-shadow:none;margin-left:auto}.language-option{min-height:34px;color:var(--text-muted);background:0 0;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:6px 10px;font-size:.78rem;font-weight:800;display:inline-flex}.language-option.active{background:var(--primary);color:#fff;border-color:#ffffff2e}.language-flag{object-fit:cover;border:1px solid #ffffff57;border-radius:2px;flex:none;width:22px;height:16px;display:inline-block;overflow:hidden;box-shadow:0 0 0 1px #0000001f}.language-code{letter-spacing:0}.closure-page .closure-content,.closure-section{gap:46px;display:grid}.closure-kpi-grid,.closure-chart-grid{gap:38px}@keyframes versiona-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.sidebar-nav-label{flex:1;align-items:center;min-width:0;display:inline-flex;position:relative}.sidebar-nav-label>span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sidebar-menu-notification-dot{border:2px solid var(--card-bg);background:var(--danger);border-radius:50%;width:10px;height:10px;animation:2s ease-in-out infinite sidebar-notification-pulse;position:absolute;top:-4px;right:0;box-shadow:0 0 0 2px #ef44442e,0 0 10px #ef4444a6}.sidebar-menu-notification-dot--collapsed{top:6px;right:10px}@keyframes sidebar-notification-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.16)}}@media (width<=900px){.app-main{padding:16px 18px 18px;margin-left:0!important}.app-content{max-width:100%}.app-topbar{z-index:900;background:var(--bg-color);justify-content:space-between;padding-bottom:10px;position:sticky;top:0}.mobile-menu-button{flex:none;justify-content:center;align-items:center;display:inline-flex}.company-selector{flex:1;justify-content:flex-end;padding:8px}.company-select{width:100%;min-width:0;max-width:220px}.app-sidebar{transform:translate(-105%);width:min(280px,86vw)!important;transition:transform .25s,width .25s!important}.app-sidebar.mobile-open{transform:translate(0)}.mobile-sidebar-backdrop{z-index:999;background:#0f172a7a;border:0;border-radius:0;display:block;position:fixed;inset:0}.glass-card{border-radius:10px;padding:16px}h1.gradient-text{font-size:1.55rem!important}table{font-size:.82rem}.desktop-only{display:none!important}.mobile-only{display:block}.mobile-card-list{gap:10px;display:grid}}@media (width<=560px){.app-main{padding:12px}.app-topbar{gap:8px}.company-selector{max-width:calc(100vw - 70px)}.company-select{padding:8px;font-size:.82rem}button{min-height:38px}input,select,textarea{width:100%;font-size:16px}.recharts-wrapper,.recharts-surface{max-width:100%}.ag-theme-versiona{min-width:0}.glass-card table{font-size:.78rem}}@media (width<=900px){.dashboard-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));display:grid!important}.dashboard-kpi-grid>.glass-card{min-width:0;flex:unset!important}.dashboard-chart-grid{grid-template-columns:minmax(0,1fr)!important;gap:16px!important}.dashboard-chart-card{width:100%;overflow:hidden;min-width:0!important}.dashboard-chart-scroll{width:100%;min-width:0}.sla-header{align-items:stretch!important}.sla-export-button{justify-content:center;width:100%}.sla-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.sla-stat-card{min-width:0;gap:10px!important;padding:12px!important}.sla-filter-row,.sla-tabs{width:100%}.sla-tabs{grid-template-columns:repeat(2,minmax(0,1fr));display:grid!important}.sla-tabs button{justify-content:center;width:100%}.sla-search-box{width:100%;flex:100%!important;min-width:0!important}.sla-progress-row{grid-template-columns:minmax(0,1fr) 62px!important;gap:8px!important}.sla-progress-row>div:first-child{grid-column:1/-1}.sla-pivot-card,.sla-mobile-card{border:1px solid var(--border);background:var(--card-bg);border-radius:8px;padding:12px}.analysis-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px!important;display:grid!important}.analysis-tabs button{white-space:normal;justify-content:center;width:100%;padding:9px 10px!important}.analysis-chart-grid{grid-template-columns:minmax(0,1fr)!important;gap:16px!important}.closure-page .closure-content,.closure-section,.closure-kpi-grid,.closure-chart-grid{gap:22px!important}.analysis-chart-card,.analysis-pivot-card,.analysis-list-card{min-width:0;overflow:hidden}.analysis-chart-card h3,.analysis-pivot-card h3,.analysis-list-card h3{font-size:.98rem;line-height:1.3;align-items:flex-start!important}.analysis-chart-scroll{width:100%;padding-bottom:6px;overflow-x:auto}.analysis-wide-chart{min-width:720px;height:480px}.analysis-list-card>div,.analysis-mobile-card{min-width:0}.analysis-list-card span{overflow-wrap:anywhere}.analysis-rank-row{gap:10px}.analysis-rank-name{min-width:0}.analysis-rank-name span:last-child{overflow-wrap:anywhere}}@media (width<=560px){.dashboard-kpi-grid,.sla-stats-grid,.sla-tabs,.analysis-tabs{grid-template-columns:minmax(0,1fr)!important}.dashboard-chart-card h3{margin-bottom:14px!important}.sla-progress-card{padding:14px!important}.analysis-page{min-width:0}.analysis-chart-card,.analysis-pivot-card,.analysis-list-card{padding:14px!important}.analysis-wide-chart{min-width:640px}.analysis-rank-row{flex-direction:column;align-items:flex-start!important}.analysis-rank-name{width:100%}}
