*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--page-bg);color:var(--text-primary)}.dashboard-shell{grid-template-columns:minmax(620px,1fr) clamp(188px,14vw,196px);align-items:start;gap:20px;padding-bottom:2px;display:grid;overflow-x:auto}.dashboard-sidebar{border:1px solid var(--border);background:var(--surface,#fff);height:calc(100vh - 42px);max-height:calc(100vh - 42px);box-shadow:var(--shadow-sm,0 2px 10px #0000000a);border-radius:20px;grid-area:1/2;align-self:start;position:relative;overflow:hidden}.dashboard-sidebar .ant-badge{width:100%;display:block;position:relative}.dashboard-sidebar .ant-badge-dot{z-index:2;width:15px;min-width:15px;height:15px;box-shadow:0 0 0 3px var(--surface,#fff);top:13px!important;right:13px!important;margin-top:0!important;inset-inline-end:13px!important;transform:none!important}.dashboard-sidebar-inner{scrollbar-width:none;height:100%;max-height:100%;padding:6px;overflow:hidden auto}.dashboard-sidebar-inner::-webkit-scrollbar{display:none}.dashboard-sidebar-panel{flex-direction:column;align-items:center;gap:10px;min-height:100%;display:flex}.dashboard-sidebar-section{flex-direction:column;gap:10px;display:flex;position:relative}.dashboard-sidebar-section+.dashboard-sidebar-section{margin-top:0}.dashboard-sidebar-section .dashboard-sidebar-label{padding-left:0;position:absolute;top:-24px;left:4px}.dashboard-sidebar-label{display:none}.dashboard-rail-card{border-radius:14px;width:180px;height:180px;overflow:hidden}.dashboard-rail-card .ant-card-body{flex-direction:column;gap:10px;height:100%;display:flex;padding:12px 14px!important}.dashboard-rail-card .ant-card-body>*{min-width:0}.dashboard-rail-card-top{justify-content:flex-start;align-items:center;gap:10px;min-width:0;height:40px;margin-top:-15px;margin-left:-15px;display:flex}.dashboard-rail-icon,.dashboard-rail-inline-icon{background:#78716c1a;border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:17px;display:inline-flex}.dashboard-rail-title{min-width:0;color:var(--text-secondary);white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;flex:1;font-size:14px;font-weight:600;line-height:20px;display:-webkit-box;overflow:hidden}.dashboard-rail-value{min-height:0;color:var(--text-primary);white-space:normal;word-break:keep-all;overflow-wrap:break-word;justify-content:flex-start;align-items:flex-start;margin-top:0;font-size:25px;font-weight:700;line-height:1.28;display:flex}.dashboard-rail-value-sm{letter-spacing:0;font-size:21px}.dashboard-rail-meta{min-height:0;color:var(--text-muted);word-break:keep-all;overflow-wrap:break-word;align-items:flex-end;margin-top:0;font-size:12px;line-height:18px;display:flex}.dashboard-main{grid-area:1/1;min-width:0}.dashboard-workbench-card>.ant-card-head{min-height:44px;padding:20px 20px 0!important}.dashboard-workbench-card>.ant-card-head>.ant-card-head-wrapper{align-items:flex-start;min-height:32px}.dashboard-workbench-card.nordic-card,.dashboard-section-card.nordic-card{padding:0!important}#dashboard-daily-reports .ant-tabs-content,#dashboard-daily-reports .ant-tabs-tabpane,#dashboard-daily-reports .daily-report-layout{width:100%}.dashboard-section-card>.ant-card-head{min-height:44px;padding:20px 20px 0!important}.dashboard-section-card>.ant-card-head>.ant-card-head-wrapper{align-items:flex-start;min-height:32px}.dashboard-dev-progress-card.nordic-card{padding:0!important}.dashboard-dev-progress-card>.ant-card-head{min-height:44px;padding:20px 20px 0!important}.dashboard-dev-progress-card>.ant-card-head>.ant-card-head-wrapper{align-items:flex-start;min-height:32px}.dashboard-latest-log-card{border:1px solid var(--border);background:var(--surface,#fff);width:460px;max-width:min(46vw,460px);height:38px;box-shadow:var(--shadow-sm,0 2px 10px #0000000a);cursor:pointer;border-radius:9999px;align-items:center;gap:10px;padding:0 14px;display:flex}.dashboard-latest-log-label{color:var(--accent);flex-shrink:0;font-size:12px;font-weight:600}.dashboard-latest-log-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text-primary);flex:1;font-size:13px;font-weight:600;overflow:hidden}.dashboard-latest-log-text.muted{color:var(--text-muted);font-weight:400}.dashboard-latest-log-time{color:var(--text-muted);flex-shrink:0;font-size:11px}.dashboard-section-pill{height:28px;color:var(--accent);background:#0596691f;border:none;border-radius:9999px;align-items:center;padding:0 14px;font-size:13px;font-weight:600;display:inline-flex}.dashboard-product-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.dashboard-product-page{color:var(--text-muted);text-align:center;min-width:34px;font-size:12px}.dashboard-product-slide{padding:0 2px}.ai-chat-float-root{z-index:1050;position:fixed;bottom:28px;right:28px}.dashboard-page .ai-chat-float-root{right:calc(clamp(188px,14vw,196px) + 28px)}.ai-chat-float-panel{border-radius:16px;width:min(400px,100vw - 48px);max-height:min(72vh,640px);animation:.2s ease-out ai-chat-float-in;position:absolute;bottom:64px;right:0;overflow:hidden;box-shadow:0 12px 40px #00000024}.ai-chat-float-card{box-shadow:none;border:none;flex-direction:column;max-height:min(72vh,640px);display:flex}.ai-chat-float-card>.ant-card-body{flex-direction:column;display:flex;overflow:hidden}.ai-chat-float-trigger{cursor:pointer;color:#fff;background:var(--accent,#059669);border:none;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;font-size:22px;transition:transform .15s,box-shadow .15s;display:flex;box-shadow:0 4px 16px #05966973}.ai-chat-float-trigger:hover{transform:scale(1.05);box-shadow:0 6px 20px #05966980}.ai-chat-float-trigger.is-open{background:#78716c;box-shadow:0 4px 16px #0000002e}@keyframes ai-chat-float-in{0%{opacity:0;transform:translateY(12px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=768px){.dashboard-page .ai-chat-float-root{right:20px}.ai-chat-float-panel{width:calc(100vw - 40px);right:-8px}}.operations-cockpit .cockpit-panel-title{font-size:14px;font-weight:600}.cockpit-quick-scroll{gap:10px;padding-bottom:2px;display:flex;overflow-x:auto}.cockpit-quick-chip{border:1px solid var(--border);background:var(--card-bg);cursor:pointer;white-space:nowrap;border-radius:999px;flex-shrink:0;align-items:center;gap:8px;padding:8px 14px;display:inline-flex}.cockpit-quick-chip:hover{filter:brightness(.98)}.cockpit-reminder-list{flex-direction:column;gap:8px;display:flex}.cockpit-reminder-item{text-align:left;border:1px solid var(--border);background:var(--card-bg);cursor:pointer;border-radius:10px;grid-template-rows:auto auto;grid-template-columns:1fr auto;gap:2px 12px;width:100%;padding:10px 12px;display:grid}.cockpit-reminder-item:hover{background:var(--hover-bg)}.cockpit-reminder-title{color:var(--text-primary);font-size:13px;font-weight:500}.cockpit-reminder-count{grid-row:span 2;align-self:center;font-size:22px;font-weight:700}.cockpit-reminder-sub{color:var(--text-muted);grid-column:1;font-size:11px}.cockpit-product-card{text-align:left;border:1px solid var(--border);background:var(--card-bg);cursor:pointer;border-radius:12px;width:100%;padding:12px}.cockpit-product-card:hover{background:var(--hover-bg)}.cockpit-product-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;display:flex}.cockpit-product-tag{border:1px solid;border-radius:999px;padding:2px 8px;font-size:10px}.cockpit-product-metrics{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.cockpit-product-metric{text-align:center;background:var(--hover-bg);border-radius:8px;padding:8px 4px}.product-health-card{width:100%;min-height:280px}.product-health-card>.ant-card-body{min-height:216px}.product-health-metrics{margin-bottom:24px}.product-health-overview-card>.ant-card-body{padding:10px 14px!important}.product-health-overview{flex-wrap:wrap;align-items:center;gap:20px;display:flex}.product-health-overview-item{flex-direction:column;flex:120px;gap:2px;min-width:0;display:flex}.product-health-overview-project{flex:1.4 160px}.product-health-overview-leader{flex:1.2 140px}.product-health-overview-label{line-height:1.2;color:var(--text-muted)!important;font-size:11px!important}.product-health-overview-value{color:var(--text-primary);line-height:1.3;font-size:13px!important}.product-health-overview-select{width:100%;min-width:100px}.product-health-overview-select .ant-select-selector{min-height:28px!important;padding-top:0!important;padding-bottom:0!important}.product-health-metrics-labels{gap:12px;margin-bottom:8px;display:grid}.product-health-metrics-labels.has-corporate{grid-template-columns:repeat(6,minmax(0,1fr))}.product-health-metrics-labels.user-only{grid-template-columns:repeat(3,minmax(0,1fr))}.product-health-metrics-label{color:var(--text-primary);align-items:center;gap:6px;font-size:13px;font-weight:600;display:flex}.product-health-metrics-label.user{grid-column:1/4}.product-health-metrics-label.corporate{grid-column:4/7}.product-health-metrics-cards{align-items:stretch;gap:12px;display:grid}.product-health-metrics-cards.has-corporate{grid-template-columns:repeat(6,minmax(0,1fr))}.product-health-metrics-cards.user-only{grid-template-columns:repeat(3,minmax(0,1fr))}.product-health-stat-card{height:100%}.product-health-stat-card>.ant-card-body{flex-direction:column;justify-content:space-between;height:100%;min-height:112px;display:flex;padding:16px!important}.product-health-stat-card .ant-statistic-title{margin-bottom:4px;font-size:13px}.product-health-stat-card .ant-statistic-content{line-height:1.2}.product-data-management{margin-bottom:0;overflow:hidden}.huzhang-auth-card .ant-card-head-wrapper{flex-wrap:wrap;gap:12px}.huzhang-auth-card .ant-card-extra,.huzhang-auth-range{max-width:100%}.huzhang-auth-summary{min-height:96px}.huzhang-auth-summary-loading{align-items:center;min-height:96px;display:flex}.huzhang-auth-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.huzhang-auth-metric{border:1px solid var(--border);background:var(--hover-bg);border-radius:8px;align-items:center;min-width:0;min-height:96px;padding:14px 16px;display:flex}.huzhang-auth-metric .ant-statistic-content{font-size:24px;line-height:1.2}.huzhang-auth-toolbar{justify-content:space-between;align-items:center;gap:12px;margin:16px 0 12px;display:flex}.huzhang-auth-filters{flex-wrap:wrap;gap:8px;min-width:0;display:flex}.huzhang-auth-filter{width:176px;max-width:100%}.huzhang-auth-table-shell{min-height:320px}.huzhang-auth-table .ant-table-cell{overflow-wrap:anywhere}.huzhang-auth-event-tag.ant-tag,.huzhang-auth-result-tag.ant-tag{border-radius:9999px;margin:0}@media (width<=992px){.huzhang-auth-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=576px){.huzhang-auth-card>.ant-card-head,.huzhang-auth-card>.ant-card-body{padding-inline:12px!important}.huzhang-auth-card .ant-card-head-title,.huzhang-auth-card .ant-card-extra,.huzhang-auth-range{width:100%}.huzhang-auth-range .ant-segmented-group{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.huzhang-auth-range .ant-segmented-item-label{white-space:normal;min-width:0;padding-inline:5px;line-height:1.25}.huzhang-auth-toolbar{flex-direction:column;align-items:stretch}.huzhang-auth-filters{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.huzhang-auth-filter{width:100%}}.product-data-card-title,.product-data-overview-head,.product-data-section-label,.product-data-module-head,.product-data-module-action,.product-data-drawer-toolbar{align-items:center;display:flex}.product-data-card-title{gap:8px}.product-data-overview-head{flex-wrap:wrap;justify-content:flex-end;gap:8px;max-width:100%}.product-data-overview-head .ant-tag{margin:0}.product-data-refreshed-at{overflow-wrap:anywhere;color:var(--text-muted)!important;font-size:12px!important}.product-data-refresh-button{width:32px!important;min-width:32px!important;height:32px!important;padding:0!important}.product-data-overview-alert{margin-bottom:16px}.product-data-section+.product-data-section{border-top:1px solid var(--border);margin-top:20px;padding-top:20px}.product-data-section-label{letter-spacing:0;color:var(--text-secondary);gap:7px;margin:0 0 12px;font-size:13px;font-weight:600;line-height:20px}.product-data-section-label.personal{color:#2563eb}.product-data-section-label.enterprise{color:var(--accent)}.product-data-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:12px;display:grid}.product-data-module{border:1px solid var(--border);background:var(--hover-bg);width:100%;min-width:0;height:100%;min-height:168px;color:var(--text-primary);font:inherit;text-align:left;cursor:pointer;border-radius:8px;flex-direction:column;padding:14px;transition:border-color .16s,box-shadow .16s,background-color .16s;display:flex}.product-data-module:hover{border-color:var(--accent);background:var(--surface,#fff);box-shadow:var(--shadow-sm)}.product-data-module:focus-visible{outline-offset:2px;border-color:#2563eb;outline:3px solid #2563eb33}.product-data-module-skeleton{cursor:default;justify-content:center}.product-data-module-skeleton:hover{border-color:var(--border);background:var(--hover-bg);box-shadow:none}.product-data-module-head{align-items:flex-start;gap:10px;min-width:0}.product-data-module-icon{background:var(--surface,#fff);border-radius:8px;flex:0 0 36px;justify-content:center;align-items:center;width:36px;height:36px;font-size:17px;display:inline-flex}.product-data-module-personal .product-data-module-icon{color:#2563eb}.product-data-module-enterprise .product-data-module-icon{color:var(--accent)}.product-data-module-meta{flex:1;min-width:0}.product-data-module-title,.product-data-module-desc,.product-data-module-count-value,.product-data-module-count-label{overflow-wrap:anywhere;display:block}.product-data-module-title{line-height:20px;color:var(--text-primary)!important;font-size:14px!important;font-weight:600!important}.product-data-module-desc{margin-top:3px;line-height:18px;color:var(--text-muted)!important;font-size:12px!important}.product-data-module-count{min-width:0;margin-top:14px}.product-data-module-count-value{line-height:29px;color:var(--text-primary)!important;font-size:24px!important;font-weight:700!important}.product-data-module-count-label{margin-top:1px;line-height:16px;color:var(--text-muted)!important;font-size:11px!important}.product-data-module-action{width:52px;min-height:32px;color:var(--accent);justify-content:flex-end;gap:5px;margin-top:auto;margin-left:auto;font-size:12px;font-weight:600}.product-data-drawer .ant-drawer-body{min-width:0;overflow-x:hidden}.product-data-drawer-toolbar{align-items:stretch;gap:10px;margin-bottom:16px}.product-data-search{flex:1;min-width:0}.product-data-export-button{width:88px;min-width:88px}.product-data-drawer-loading,.product-data-empty{min-height:320px}.product-data-drawer-loading{padding-top:8px}.product-data-empty{flex-direction:column;justify-content:center;display:flex}.product-data-inline-alert{margin-bottom:12px}.product-data-table-shell{width:100%;min-width:0;overflow:hidden}.product-data-table .ant-table-cell,.product-data-cell-value{overflow-wrap:anywhere;word-break:break-word}.product-data-table-row-clickable{cursor:pointer}.product-data-table-row-clickable:focus-visible{outline-offset:-2px;outline:2px solid #2563eb}.product-data-detail{min-width:0}.product-data-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px;display:grid}.product-data-detail-field{border-bottom:1px solid var(--border);min-width:0;padding:14px 0}.product-data-detail-label,.product-data-detail-value{overflow-wrap:anywhere;display:block}.product-data-detail-label{margin-bottom:5px;line-height:18px;color:var(--text-muted)!important;font-size:12px!important}.product-data-detail-value{line-height:22px;color:var(--text-primary)!important;font-size:14px!important}@media (width<=1024px){.product-data-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.product-data-management .ant-card-head-wrapper{flex-wrap:wrap}.product-data-management>.ant-card-head,.product-data-management>.ant-card-body{padding-inline:12px!important}.product-data-management .ant-card-head-title,.product-data-management .ant-card-extra{flex:0 0 100%;width:100%;min-width:0}.product-data-overview-head{justify-content:flex-start}.product-data-grid{grid-template-columns:1fr}.product-data-drawer-toolbar{flex-wrap:wrap}.product-data-search{flex-basis:100%}.product-data-export-button{margin-left:auto}.product-data-detail-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.product-data-module{transition:none}}.member-analytics-summary-bar{flex-wrap:nowrap;align-items:center;gap:16px;margin-bottom:16px;padding-bottom:2px;display:flex;overflow-x:auto}.member-analytics-summary-bar::-webkit-scrollbar{height:4px}.member-analytics-period-controls{flex:none}.member-analytics-stat-row{flex:auto;align-items:stretch;gap:12px;min-width:0;display:flex}.member-analytics-stat-item{border:1px solid var(--border);background:var(--surface,#fff);border-radius:12px;flex:1 1 0;align-items:center;gap:10px;min-width:120px;padding:10px 14px;display:flex}.member-analytics-stat-icon{border-radius:10px;flex:none;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.member-analytics-stat-body{flex-direction:column;gap:2px;min-width:0;display:flex}.member-analytics-stat-label{line-height:1.2;display:block;color:var(--text-secondary)!important;font-size:12px!important}.member-analytics-stat-value{line-height:1.2;display:block;font-size:18px!important;font-weight:700!important}.member-analytics-header-controls{flex:0 auto;min-width:0}.member-analytics-header-controls .ant-picker,.member-analytics-header-controls .ant-segmented{border-radius:9999px}.member-analytics-name-btn{color:var(--text-primary);cursor:pointer;background:0 0;border:none;align-items:center;gap:8px;padding:0;font-size:13px;font-weight:500;transition:color .15s;display:inline-flex}.member-analytics-name-btn:hover,.member-analytics-name-btn.is-active{color:var(--accent)}.member-analytics-row-active td{background:#0ea5e90f!important}.member-analytics-score-block{border:1px solid var(--border);background:var(--hover-bg);border-radius:12px;padding:16px}.member-analytics-score-label{margin-bottom:6px;display:block;color:var(--text-muted)!important;font-size:12px!important}.member-analytics-score-main{margin-bottom:8px;line-height:1.2;display:block;font-size:28px!important;font-weight:700!important}.member-analytics-metric-tile{border:1px solid var(--border);background:var(--surface,#fff);text-align:center;border-radius:12px;flex-direction:column;align-items:center;gap:4px;padding:16px 8px;display:flex}.member-analytics-metric-value{line-height:1.2;display:block;color:var(--text-primary)!important;font-size:20px!important;font-weight:700!important}.member-analytics-metric-label{display:block;color:var(--text-muted)!important;font-size:11px!important}.member-analytics-attendance-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.member-analytics-attendance-item{border:1px solid var(--border);background:var(--surface,#fff);border-radius:10px;flex-direction:column;align-items:center;gap:4px;padding:12px 8px;display:flex}.member-analytics-detail-placeholder{border-style:dashed}.member-analytics-month-card{border:1px solid var(--border);background:var(--hover-bg);border-radius:10px;min-height:108px;padding:12px}.member-analytics-month-label{margin-bottom:4px;display:block;color:var(--text-muted)!important;font-size:12px!important}.member-analytics-month-score{margin-bottom:6px;line-height:1.2;display:block;font-size:22px!important}.member-analytics-month-meta{margin-top:6px;line-height:1.4;display:block;color:var(--text-muted)!important;font-size:10px!important}.member-analytics-row-muted td{opacity:.45}.member-bonus-step-notes{border-top:1px solid var(--border);flex-wrap:wrap;gap:10px 16px;margin-top:12px;padding-top:12px;display:flex}.member-bonus-step-note{color:var(--text-secondary);font-size:12px}.member-bonus-step-note strong{color:var(--text-primary);font-weight:600}.member-bonus-scatter-legend{border-top:1px solid var(--border);margin-top:8px;padding-top:8px}.client-detail-info-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px 20px;display:grid}.client-detail-info-extra{border-top:1px solid var(--border);grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 20px;margin-top:16px;padding-top:16px;display:grid}.client-detail-info-item{min-width:0}.client-detail-info-label{margin-bottom:4px;display:block;color:var(--text-muted)!important;font-size:12px!important}.client-detail-info-value{color:var(--text-primary);word-break:break-word;font-size:13px;line-height:1.5}.client-detail-info-notes{grid-column:1/-1}@media (width<=992px){.client-detail-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=576px){.client-detail-info-grid,.client-detail-info-extra{grid-template-columns:1fr}}.product-health-stat-sub{min-height:16px;color:var(--text-muted);margin-top:8px;font-size:11px;line-height:1.4;display:block}@media (width<=1200px){.product-health-metrics-labels.has-corporate,.product-health-metrics-cards.has-corporate{grid-template-columns:repeat(4,minmax(0,1fr))}.product-health-metrics-label.user{grid-column:1/4}.product-health-metrics-label.corporate{grid-column:1/-1;margin-top:4px}}@media (width<=768px){.product-health-metrics-labels.has-corporate,.product-health-metrics-cards.has-corporate,.product-health-metrics-labels.user-only,.product-health-metrics-cards.user-only{grid-template-columns:repeat(2,minmax(0,1fr))}.product-health-metrics-label.user,.product-health-metrics-label.corporate{grid-column:1/-1}}.project-toolbar-card.nordic-card{padding:0!important}.project-toolbar-standalone{margin-bottom:12px;padding:0}.client-list-toolbar{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:12px;padding:16px 20px;display:flex}.client-list-toolbar-count{color:var(--text-secondary);white-space:nowrap;flex-shrink:0;font-size:13px}.client-list-toolbar-filters{flex:1;min-width:0}.client-list-toolbar-create{flex-shrink:0;margin-left:auto;border-radius:9999px!important}.project-toolbar{--toolbar-control-height:32px;justify-content:space-between;align-items:center;gap:12px;width:100%;display:flex}.project-toolbar-left{flex:1;align-items:center;gap:12px;min-width:0;display:flex}.project-toolbar-right{flex-shrink:0;align-items:center;gap:12px;display:flex}.project-toolbar-filters,.project-toolbar-actions{align-items:center;gap:12px;min-width:0;display:flex}.project-toolbar-filters{flex:1;grid-template-columns:minmax(140px,180px) minmax(140px,180px);width:100%;display:grid}.project-toolbar-actions{flex-shrink:0}.project-toolbar-select{width:160px}.project-stats-strip{scrollbar-width:none;align-items:center;gap:8px;margin:0 0 12px;display:flex;overflow-x:auto}.project-stats-inline{flex:1;min-width:0;margin:0}.project-stats-strip::-webkit-scrollbar{display:none}.project-stat-chip{height:var(--toolbar-control-height,32px);border:1px solid var(--border);background:var(--surface,#fff);color:var(--text-secondary);border-radius:9999px;flex:none;align-items:center;gap:6px;padding:0 12px;font-size:12px;line-height:1;display:inline-flex}.project-stat-chip strong{color:var(--text-primary);font-size:12px;font-weight:700}.project-stat-chip-success strong{color:#16a34a}.project-stat-chip-info strong{color:#0ea5e9}.project-stat-chip-operating strong{color:#0891b2}.project-stat-chip-warning strong{color:#d97706}.project-stat-chip-danger strong{color:#dc2626}.project-toolbar-icon-btn{min-width:var(--toolbar-control-height,32px);border-radius:9999px;width:var(--toolbar-control-height,32px)!important;height:var(--toolbar-control-height,32px)!important;padding:0!important}.project-toolbar-btn{height:var(--toolbar-control-height,32px);border-radius:9999px;padding-inline:12px;font-size:12px}.project-toolbar .project-toolbar-select.ant-select{font-size:12px;line-height:1;height:var(--toolbar-control-height,32px)!important}.project-toolbar .project-toolbar-select.ant-select .ant-select-selector{box-sizing:border-box;height:100%!important;min-height:unset!important;max-height:var(--toolbar-control-height,32px)!important;border-radius:9999px!important;align-items:center!important;padding-block:0!important;padding-inline:12px!important;display:flex!important}.project-toolbar .project-toolbar-select.ant-select .ant-select-selection-wrap,.project-toolbar .project-toolbar-select.ant-select .ant-select-selection-search,.project-toolbar .project-toolbar-select.ant-select .ant-select-content{align-items:center;height:100%;display:flex}.project-toolbar .project-toolbar-select.ant-select .ant-select-selection-item,.project-toolbar .project-toolbar-select.ant-select .ant-select-selection-placeholder{align-items:center;font-size:12px;display:flex;height:auto!important;margin:0!important;padding:0!important;line-height:1!important}.project-toolbar .project-toolbar-select.ant-select .ant-select-arrow{margin-top:0;top:50%;transform:translateY(-50%)}.project-toolbar-segmented,.project-toolbar-view-toggle{height:var(--toolbar-control-height,32px);background:var(--neutral-bg);border-radius:9999px;padding:2px}.project-toolbar-segmented .ant-segmented-item,.project-toolbar-view-toggle .ant-segmented-item{border-radius:9999px}.project-toolbar-segmented .ant-segmented-item-label,.project-toolbar-view-toggle .ant-segmented-item-label{min-height:calc(var(--toolbar-control-height,32px) - 4px);line-height:calc(var(--toolbar-control-height,32px) - 4px);padding-inline:10px;font-size:12px}.project-toolbar-view-toggle .ant-segmented-item{min-width:calc(var(--toolbar-control-height,32px) - 4px)}.project-toolbar-view-toggle .ant-segmented-item-label{padding-inline:8px}.project-list-card.nordic-card{padding:0!important}.project-list-card>.ant-card-head{border-bottom:1px solid var(--border);min-height:58px;padding:12px 20px!important}.project-list-card>.ant-card-head>.ant-card-head-wrapper{align-items:center;min-height:34px}.project-list-card>.ant-card-head .ant-card-head-title{min-height:34px;padding:0}.project-list-head-left{align-items:center;gap:12px;min-height:34px;display:flex}.project-management-table .ant-table{background:0 0;border-radius:0}.project-management-table .ant-table-container,.project-management-table .ant-table-content{overflow:auto hidden;border-start-start-radius:0!important;border-start-end-radius:0!important}.project-management-table .ant-table-thead>tr>th:first-child,.project-management-table .ant-table-thead>tr>th:last-child{border-start-start-radius:0!important;border-start-end-radius:0!important}.project-management-table .ant-table-content::-webkit-scrollbar{height:8px}.project-management-table .ant-table-content::-webkit-scrollbar-track{background:#78716c14;border-radius:9999px}.project-management-table .ant-table-content::-webkit-scrollbar-thumb{background:#05966973;border-radius:9999px}.project-management-table .ant-table-content::-webkit-scrollbar-thumb:hover{background:#059669a6}.project-management-table .ant-table-thead>tr>th{height:44px;color:var(--text-secondary);white-space:nowrap;font-size:13px;font-weight:700;background:#f7f7f5!important;padding:10px 14px!important}.project-management-table .ant-table-tbody>tr>td{vertical-align:middle;height:64px;padding:12px 14px!important}.project-management-table .ant-table-tbody>tr:hover>td{background:#0596690f!important}.project-name-cell{min-width:0}.project-name-link{max-width:200px;color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:700;line-height:20px;display:block;overflow:hidden}.project-name-meta{min-width:0;color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:8px;margin-top:4px;font-size:11px;line-height:16px;display:flex;overflow:hidden}.project-name-meta span:not(:last-child):after{content:"";background:var(--text-muted);vertical-align:middle;opacity:.6;border-radius:9999px;width:3px;height:3px;margin-left:8px;display:inline-block}.project-status-tag.ant-tag,.project-count-tag.ant-tag,.project-repo-tag.ant-tag{border:none;border-radius:9999px;font-size:12px;line-height:22px}.project-count-tag.ant-tag{min-width:28px;color:var(--accent);text-align:center;background:#0596691a;margin:0}.project-repo-tag.ant-tag{cursor:pointer;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap;max-width:96px;margin:0;overflow:hidden}.project-table-main-text{max-width:100%;color:var(--text-primary);text-overflow:ellipsis;vertical-align:middle;white-space:nowrap;font-size:13px;font-weight:600;display:inline-block;overflow:hidden}.project-table-muted{max-width:100%;color:var(--text-muted);text-overflow:ellipsis;vertical-align:middle;white-space:nowrap;font-size:12px;display:inline-block;overflow:hidden}.project-progress-stat-row{align-items:stretch}.project-progress-stat-card{width:116px;height:116px}.project-progress-stat-card.nordic-card{padding:0!important}.project-progress-stat-card .ant-card-body{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;width:100%;height:100%;display:flex;padding:12px!important}.project-progress-stat-card .ant-typography{white-space:normal;word-break:keep-all;max-width:100%;line-height:18px}.project-progress-participants{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;display:grid}.project-progress-participant-item{border:1px solid var(--border);background:var(--surface,#fff);border-radius:12px;align-items:center;gap:12px;padding:12px 14px;display:flex}.project-progress-participant-meta{flex:1;min-width:0}.project-progress-participant-name{min-width:0;color:var(--text-primary);align-items:center;gap:8px;margin-bottom:4px;font-size:14px;font-weight:600;display:flex}.project-progress-participant-name>span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.project-banana-chart{width:100%;overflow-x:auto}.project-banana-toolbar{justify-content:flex-end;margin-bottom:12px;display:flex}.project-banana-chart svg{width:100%;min-width:720px;height:auto;display:block}.project-banana-legend{color:var(--text-secondary);flex-wrap:wrap;gap:16px;margin-top:12px;font-size:12px;display:flex}.project-banana-legend .legend-line,.project-banana-legend .legend-swatch{vertical-align:middle;border-top:3px solid #0000;width:24px;height:0;margin-right:8px;display:inline-block}.project-banana-legend .legend-swatch{background:linear-gradient(#fbbf248c,#f59e0b40);border:none;border-radius:3px;height:10px}.project-banana-legend .legend-early{border-top-color:#d97706}.project-banana-legend .legend-late{border-top-color:#b45309}.project-banana-legend .legend-actual{border-top-color:var(--accent)}.attendance-header-controls{flex:0 auto;min-width:0}.attendance-header-controls .ant-picker{border-radius:9999px}.attendance-overview-page{width:100%}.attendance-overview-toolbar{justify-content:flex-end;align-items:center;gap:16px;margin-bottom:20px;display:flex}.attendance-overview-month{color:var(--text-secondary);font-size:16px;font-weight:600}.attendance-overview-action.ant-btn{border-radius:9999px;height:36px;padding:0 18px;font-size:14px;font-weight:700}.attendance-overview-refresh.ant-btn{border-radius:9999px;width:36px;height:36px;padding:0}.attendance-stat-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.attendance-stat-card.nordic-card{height:130px;padding:0!important}.attendance-stat-card .ant-card-body{flex-direction:column;justify-content:space-between;height:100%;display:flex}.attendance-stat-label{color:var(--text-muted);font-size:14px;font-weight:600;line-height:20px}.attendance-stat-value{min-width:0;color:var(--text-primary);align-items:baseline;gap:8px;display:flex}.attendance-stat-icon{color:currentColor;align-items:center;font-size:20px;display:inline-flex}.attendance-stat-value strong{color:currentColor;font-size:30px;font-weight:700;line-height:36px}.attendance-stat-meta{color:currentColor;opacity:.9;font-size:14px;line-height:20px}.attendance-stat-success .attendance-stat-value{color:var(--accent)}.attendance-stat-danger .attendance-stat-value{color:#ef4444}.attendance-stat-info .attendance-stat-value{color:#1677ff}.attendance-stat-purple .attendance-stat-value{color:#6d28d9}.attendance-stat-accent .attendance-stat-value{color:var(--accent)}.attendance-table-card.nordic-card{padding:0!important}.attendance-overview-table .ant-table{background:0 0}.attendance-overview-table .ant-table-container,.attendance-overview-table .ant-table-content{overflow:auto hidden}.attendance-overview-table .ant-table-content::-webkit-scrollbar{height:8px}.attendance-overview-table .ant-table-content::-webkit-scrollbar-track{background:#78716c14;border-radius:9999px}.attendance-overview-table .ant-table-content::-webkit-scrollbar-thumb{background:#05966973;border-radius:9999px}.attendance-overview-table .ant-table-thead>tr>th{height:46px;color:var(--text-secondary);text-align:center;vertical-align:middle;white-space:nowrap;font-size:13px;font-weight:700;background:#f7f7f5!important;padding:10px 16px!important}.attendance-overview-table .ant-table-tbody>tr>td{vertical-align:middle;height:54px;padding:10px 16px!important}.attendance-overview-table .ant-table-tbody>tr:hover>td{background:#0596690f!important}.attendance-overview-table .ant-table-thead>tr>th:first-child{text-align:left}.attendance-overview-table .ant-table-column-title{justify-content:center;align-items:center;min-height:22px;display:inline-flex}.attendance-overview-table .ant-table-thead>tr>th:first-child .ant-table-column-title{justify-content:flex-start}.attendance-charts-card{overflow:hidden}.attendance-member-btn{color:var(--text-primary);cursor:pointer;background:0 0;border:none;padding:0;font-weight:500}.attendance-member-btn:hover,.attendance-member-btn.is-active{color:var(--accent)}.attendance-row-active td{background:#0596690f!important}.attendance-chart-legend{border-top:1px solid var(--border);flex-wrap:wrap;gap:10px 14px;margin-top:10px;padding-top:10px;display:flex}.attendance-legend-item{color:var(--text-secondary);font-size:12px}.attendance-legend-flex:before{content:"";vertical-align:-1px;background:#05966940;border-radius:2px;width:10px;height:10px;margin-right:6px;display:inline-block}.attendance-legend-late:before{content:"";vertical-align:middle;border-top:2px dashed #ef4444;width:16px;height:0;margin-right:6px;display:inline-block}.attendance-legend-warn:before{content:"";vertical-align:-1px;background:#f59e0b;border-radius:9999px;width:10px;height:10px;margin-right:6px;display:inline-block}.attendance-legend-target:before{content:"";vertical-align:middle;border-top:2px dashed #0f172a;width:16px;height:0;margin-right:6px;display:inline-block}.attendance-legend-deficit:before{content:"";vertical-align:-1px;background:#ef4444;border-radius:2px;width:10px;height:10px;margin-right:6px;display:inline-block}.daily-report-layout{grid-template-columns:minmax(0,1fr);gap:18px;width:100%;max-width:none;display:grid}.daily-report-overview-row{flex-wrap:nowrap;align-items:stretch;gap:18px;width:100%;min-width:0;display:flex}.daily-report-stats-card{flex:100%;min-width:0;max-width:none}.daily-report-main-col{width:100%;min-width:0;display:block}.daily-report-main-col>.ant-spin-nested-loading,.daily-report-main-col>.ant-spin-nested-loading>.ant-spin-container{width:100%;max-width:none;display:block}.daily-report-calendar-card,.daily-report-detail-card{min-height:0}.daily-report-stats-card,.daily-report-detail-card{width:100%;max-width:none}.daily-report-calendar-card>.ant-card-body,.daily-report-detail-card>.ant-card-body{min-height:0}.daily-report-calendar-card.nordic-card,.daily-report-stats-card.nordic-card,.daily-report-detail-card.nordic-card{padding:0!important}.daily-report-calendar-card>.ant-card-body,.daily-report-stats-card>.ant-card-body,.daily-report-detail-card>.ant-card-body{padding:clamp(18px,2vw,28px)!important}.daily-calendar-header,.daily-report-detail-header{justify-content:space-between;align-items:center;display:flex}.daily-calendar-header{margin-bottom:18px}.daily-calendar-nav-btn.ant-btn{border-radius:12px;width:clamp(32px,2.6vw,42px);height:clamp(32px,2.6vw,42px)}.daily-calendar-title{flex-direction:column;align-items:center;gap:2px;min-width:80px;display:flex}.daily-calendar-title .ant-typography:first-child{color:var(--text-primary);font-size:18px;line-height:24px}.daily-calendar-title .ant-typography:last-child{color:var(--text-primary);font-size:15px;line-height:20px}.daily-calendar-weekdays,.daily-calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.daily-calendar-weekdays{color:var(--text-muted);text-align:center;margin-bottom:8px;font-size:12px;line-height:22px}.daily-calendar-grid{gap:clamp(4px,.8vw,10px)}.daily-calendar-cell{aspect-ratio:1;width:100%;min-width:0;color:var(--text-muted);cursor:pointer;font:inherit;background:0 0;border:0;border-radius:12px;justify-content:center;align-items:center;font-size:clamp(13px,1.1vw,16px);line-height:1;transition:background .16s,color .16s,box-shadow .16s;display:inline-flex;position:relative}.daily-report-detail-card .ant-select,.daily-report-detail-card .ant-input,.daily-report-detail-card .ant-input-affix-wrapper,.daily-report-detail-card textarea.ant-input{width:100%}.daily-report-detail-card textarea.ant-input{min-height:112px}.daily-report-edit-form{grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);align-items:start;gap:18px 22px;display:grid}.daily-workhour-section,.daily-field-section,.daily-related-task-panel{min-width:0}.daily-related-task-panel{background:#0596690f;border:1px solid #05966929;border-radius:16px;grid-column:1/-1;padding:12px}.daily-related-task-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.daily-related-task-list{gap:8px;margin-top:10px;display:grid}.daily-related-task-item{background:var(--card-bg);border:1px solid var(--border);border-radius:14px;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;padding:10px 12px;display:grid}.daily-related-task-item.compact{align-items:center}.daily-related-task-item.compact .ant-typography{max-width:100%}.daily-related-task-meta{color:var(--text-muted);margin-top:4px;font-size:12px;line-height:18px}.daily-related-task-desc{color:var(--text-secondary);white-space:pre-wrap;margin-top:6px;font-size:12px;line-height:18px}.daily-related-task-popover{background:var(--card-bg);width:min(620px,100vw - 48px);max-height:min(620px,100vh - 160px);padding:16px}.daily-related-task-popover-list{gap:10px;max-height:min(540px,100vh - 240px);margin-top:12px;padding-right:4px;display:grid;overflow:auto}.daily-form-actions{justify-content:flex-end;gap:8px;display:flex}@media (width>=1320px){.daily-workhour-section,.daily-related-task-panel,.daily-form-actions{grid-column:1}.daily-field-content{grid-area:1/2/span 2}.daily-form-actions{grid-column:1/-1}}@media (width<=1100px){.daily-report-overview-row{flex-wrap:wrap}.daily-report-calendar-card,.daily-report-stats-card{flex-basis:100%;max-width:none}.daily-report-edit-form{grid-template-columns:minmax(0,1fr)}}.daily-calendar-cell.empty{cursor:default;pointer-events:none}.daily-calendar-cell.today{color:var(--accent);background:#0596691a;font-weight:700}.daily-calendar-cell.has-report{color:var(--text-primary);font-weight:600}.daily-calendar-cell.selected{background:var(--accent);color:#fff;font-weight:700;box-shadow:0 8px 18px #0596693d}.daily-calendar-cell i{background:var(--accent);border-radius:9999px;width:5px;height:5px;position:absolute;bottom:5px;left:50%;transform:translate(-50%)}.daily-calendar-cell.selected i{background:#ffffffbf}.daily-section-title{color:var(--text-primary);font-size:14px;font-weight:700;line-height:20px}.daily-stats-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.daily-required-note{color:var(--text-muted);margin-top:4px;font-size:12px;line-height:18px;display:block}.daily-stat-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px;display:grid}.daily-stat-list>div{background:var(--neutral-bg);border-radius:14px;flex-direction:column;justify-content:center;align-items:flex-start;gap:12px;min-height:86px;padding:14px;display:flex}.daily-stat-list .ant-typography{color:var(--text-muted);font-size:13px}.daily-stat-list strong{color:var(--text-primary);font-size:16px;line-height:22px}@media (width<=1100px){.daily-stat-list{grid-template-columns:repeat(3,minmax(0,1fr))}}.daily-stat-list>div:first-child strong{color:var(--accent)}.daily-report-history{margin-top:16px}.daily-report-history-title{color:var(--text-secondary);font-size:12px;font-weight:700;line-height:18px}.daily-report-history-list{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.daily-report-history-item{border:1px solid var(--border);background:var(--card-bg);min-width:82px;height:30px;color:var(--text-secondary);cursor:pointer;font:inherit;border-radius:9999px;justify-content:space-between;align-items:center;gap:8px;padding:0 10px;font-size:12px;display:inline-flex}.daily-report-history-item strong{color:var(--text-primary);font-size:12px}.daily-report-history-item.active{color:var(--accent);background:#0596691a;border-color:#05966959}.daily-report-history-item.active strong{color:var(--accent)}.daily-report-history-empty{color:var(--text-muted);margin-top:8px;font-size:12px;display:block}.daily-report-detail-card{flex-direction:column;width:100%;max-width:none;min-height:0;display:flex}.daily-report-detail-card>.ant-card-body{flex-direction:column;flex:1;display:flex}.daily-report-detail-header{gap:16px;min-height:32px;margin-bottom:16px}.daily-empty-state{text-align:center;min-height:270px;color:var(--text-muted);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:10px;display:flex}.daily-empty-state>.anticon{width:42px;height:42px;color:var(--accent);background:#0596691a;border-radius:14px;justify-content:center;align-items:center;font-size:20px;display:inline-flex}.daily-empty-state .ant-typography{color:var(--text-secondary);font-size:14px}.daily-empty-state .daily-empty-hint{max-width:260px;color:var(--text-muted);font-size:12px;line-height:18px}.daily-report-content-view{flex-direction:column;gap:0;margin-top:16px;display:flex}.daily-auto-logs-list{flex-direction:column;gap:8px;display:flex}.daily-auto-log-item{background:var(--bg-secondary,#f6f5f2);border-radius:12px;padding:10px 12px}.daily-auto-logs-panel{background:var(--bg-secondary,#f6f5f2);border-radius:12px;margin-bottom:16px;padding:12px}.daily-report-review-banner{color:#9a3412;background:#fff7ed;border-radius:12px;margin:12px 0 0;padding:12px 14px;font-size:13px;line-height:1.5}.weekly-report-main-row{align-items:stretch}.weekly-report-main-col{display:flex}.weekly-report-panel-card{flex-direction:column;width:100%;min-height:174px;display:flex}.weekly-report-panel-card>.ant-card-body{flex:1}.team-daily-header-row{align-items:center;gap:12px;min-width:0;margin-bottom:20px;display:flex}.team-daily-header-stats{flex-shrink:0;align-items:center;gap:10px;display:flex}.team-daily-stat-pill{border:1px solid var(--border);background:var(--surface,#fff);white-space:nowrap;border-radius:9999px;align-items:center;gap:8px;height:32px;padding:0 14px;display:inline-flex}.team-daily-stat-pill-label{color:var(--text-secondary);font-size:13px;line-height:1}.team-daily-stat-pill-icon{color:var(--accent);font-size:14px}.team-daily-stat-pill strong{color:var(--text-primary);font-size:14px;font-weight:700;line-height:1}.team-daily-stat-pill-meta{color:var(--text-muted);font-size:12px;line-height:1}.team-daily-header-filters{flex-shrink:0;align-items:center;margin-left:auto;display:flex}.team-daily-member-select{width:min(260px,34vw)}.team-daily-table-card.nordic-card{padding:0!important}.team-daily-table-card>.ant-card-body{padding:20px!important}.team-daily-table-card .ant-spin-nested-loading,.team-daily-table-card .ant-spin-container,.team-daily-table.ant-table-wrapper,.team-daily-table,.team-daily-table .ant-table-container,.team-daily-table .ant-table-content,.team-daily-table table{width:100%}.team-daily-table .ant-table{table-layout:fixed;background:0 0;width:100%}.team-daily-table .ant-table-container,.team-daily-table .ant-table-content{border-radius:14px;overflow:hidden}.team-daily-table .ant-table-thead>tr>th{height:48px;color:var(--text-secondary);text-align:left;vertical-align:middle;font-weight:700;background:#f6f6f4!important;padding:12px 16px!important}.team-daily-table .ant-table-thead>tr>th:last-child,.team-daily-table .ant-table-tbody>tr>td:last-child{text-align:right}.team-daily-table .ant-table-tbody>tr>td{vertical-align:middle;height:76px;background:#fff!important;padding:14px 16px!important}.team-daily-table .ant-table-tbody>tr{height:76px}.team-daily-table .ant-table-cell{overflow:hidden}.team-daily-table .ant-table-tbody>tr:hover>td{background:#0596690f!important}.team-daily-content-text,.team-daily-issue-text{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:13px;line-height:20px;display:block;overflow:hidden}.team-daily-content-text{color:var(--text-body)}.team-daily-issue-text{color:#dc2626}.team-daily-member-cell{appearance:none;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;width:100%;margin:0;padding:4px 8px;transition:background .18s,transform .18s;display:flex}.team-daily-member-cell:hover{background:#3b82f614}.team-daily-member-cell:active{transform:translateY(1px)}.team-daily-member-eye{color:var(--text-muted);opacity:0;font-size:14px;transition:opacity .18s,color .18s}.team-daily-member-cell:hover .team-daily-member-eye{color:var(--accent);opacity:1}.team-daily-history-modal .ant-modal-content{border-radius:18px;padding:20px}.team-daily-history-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;padding-right:54px;display:flex}.team-daily-history-range{flex:none;width:min(520px,42vw);min-width:260px}.team-daily-history-summary{margin-top:8px}.team-daily-history-stat{border:1px solid var(--border-subtle);background:var(--surface-soft);border-radius:12px;flex-direction:column;justify-content:center;gap:4px;min-height:72px;padding:12px 14px;display:flex}.team-daily-history-stat strong{color:var(--text-primary);font-size:18px;line-height:1.2}.team-daily-history-table .ant-table-thead>tr>th{text-align:center}.team-daily-history-text{-webkit-line-clamp:3;white-space:pre-wrap;color:var(--text-body);-webkit-box-orient:vertical;font-size:13px;line-height:1.55;display:-webkit-box;overflow:hidden}.team-daily-history-issue{color:#dc2626}.team-daily-project-hour{border-radius:999px;margin-inline-end:0}@media (width<=860px){.team-daily-history-header{flex-direction:column;align-items:flex-start}.team-daily-history-range{width:100%}}.ai-chat-tool-card.nordic-card{height:100%;padding:0!important}.ai-chat-tool-card>.ant-card-head{min-height:44px;padding:12px 12px 0!important}.ai-chat-tool-card>.ant-card-head>.ant-card-head-wrapper{min-height:30px}.member-card.nordic-card{padding:0!important}.member-toolbar{flex-wrap:wrap;align-items:center;gap:12px;min-width:0;margin-bottom:12px;display:flex}.member-toolbar-filters{flex:none;align-items:center;gap:8px;display:flex}.member-toolbar-search{border-radius:9999px;width:200px}.member-toolbar-search.ant-input-affix-wrapper{height:32px;padding-inline:12px}.member-toolbar-select{width:132px}.member-toolbar-select.ant-select .ant-select-selector{align-items:center;border-radius:9999px!important;height:32px!important}.member-toolbar-select.ant-select .ant-select-selection-item{line-height:30px!important}.member-toolbar-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.member-view-toggle{background:var(--neutral-bg);border-radius:9999px;height:32px;padding:2px}.member-view-toggle .ant-segmented-item{border-radius:9999px;min-width:28px}.member-view-toggle .ant-segmented-item-label{min-height:28px;padding-inline:8px;line-height:28px}.member-toolbar-icon-btn.ant-btn{min-width:32px;box-shadow:none;border-radius:9999px;border:1px solid var(--border)!important;width:32px!important;height:32px!important;color:var(--text-primary)!important;background:#fff!important;padding:0!important}.member-toolbar-icon-btn.ant-btn:hover{color:var(--accent)!important;border-color:var(--accent)!important;background:#fff!important}.member-stat-strip{scrollbar-width:none;flex:auto;align-items:center;gap:8px;min-width:0;height:32px;display:flex;overflow-x:auto}.member-stat-strip::-webkit-scrollbar{display:none}.member-stat-chip{border:1px solid var(--border);background:var(--surface,#fff);height:32px;min-height:32px;color:var(--text-secondary);white-space:nowrap;box-sizing:border-box;border-radius:9999px;flex:none;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-size:12px;line-height:1;display:inline-flex}.member-stat-chip span{align-items:center;line-height:1;display:inline-flex}.member-stat-chip strong{min-width:1.25em;color:var(--text-primary);justify-content:center;align-items:center;font-size:13px;font-weight:700;line-height:1;display:inline-flex}.member-stat-danger strong{color:#dc2626}.member-stat-info strong{color:#0ea5e9}.member-stat-success strong{color:#16a34a}.member-stat-purple strong{color:#7c3aed}.member-stat-warning strong{color:#d97706}.member-list-panel.nordic-card{padding:0!important}.member-list-table .ant-table-thead>tr>th{color:var(--text-secondary);background:0 0;font-size:13px;font-weight:600}.member-list-table .ant-table-tbody>tr>td{font-size:13px}.member-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));align-items:stretch;gap:14px;display:grid}.member-org-layout{grid-template-columns:280px minmax(0,1fr);align-items:start;gap:16px;display:grid}.member-org-sidebar{position:sticky;top:12px}.member-org-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;display:grid}.member-org-head-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px;display:grid}.member-org-head-card{background:#0596690d;border:1px solid #0596692e;border-radius:12px}.member-permissions-summary{background:#0596690f;border:1px solid #05966929;border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;padding:12px 14px;display:flex}.member-permissions-system-overview .ant-collapse-header{font-weight:600}.member-permissions-editor{min-width:0}.member-permissions-collapse-wrap{border:1px solid var(--border-subtle);background:var(--surface-elevated,#fff);border-radius:12px;max-height:480px;overflow:auto}.member-permissions-section-collapse{background:0 0}.member-permissions-section-collapse>.ant-collapse-item{border-bottom:1px solid var(--border-subtle)}.member-permissions-section-collapse>.ant-collapse-item:last-child{border-bottom:none}.member-permissions-section-body{flex-direction:column;gap:8px;padding-bottom:4px;display:flex}.member-permissions-menu-collapse{background:#0596690a;border-radius:10px}.member-permissions-menu-block{background:#0596690a;border-radius:10px;overflow:hidden}.member-permissions-menu-block-header{justify-content:space-between;align-items:center;gap:12px;padding:8px 12px;display:flex}.member-permissions-menu-block-title{flex:1;min-width:0}.member-permissions-expand-btn{width:24px;height:24px;color:var(--text-muted);padding:0}.member-permissions-menu-collapse>.ant-collapse-item{border-bottom:none!important}.member-permissions-submenu{flex-direction:column;gap:4px;padding-left:8px;display:flex}.member-permissions-collapse-label{justify-content:space-between;align-items:center;gap:12px;width:100%;padding-right:8px;display:flex}.member-permissions-switch-row{background:#0596690a;border-radius:10px;padding:8px 12px}.member-permissions-switch-row-main{justify-content:space-between;align-items:center;gap:12px;display:flex}.member-permissions-switch-wrap{flex-shrink:0}.member-org-card{border:1px solid var(--border-subtle);border-radius:14px;transition:transform .15s,box-shadow .15s}.member-org-card:hover{transform:translateY(-1px);box-shadow:0 8px 24px #0f172a14}@media (width<=960px){.member-org-layout{grid-template-columns:1fr}.member-org-sidebar{position:static}}.department-admin-layout{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:16px;display:grid}.department-preview-card{position:sticky;top:12px}.reporting-tree-panel{padding:8px 4px}.reporting-tree-node{cursor:pointer;border-radius:10px;align-items:flex-start;gap:10px;padding:6px 8px;display:flex}.reporting-tree-node:hover{background:var(--neutral-bg)}.reporting-tree-node-body{flex:1;min-width:0}@media (width<=1100px){.department-admin-layout{grid-template-columns:1fr}.department-preview-card{position:static}}.member-card{width:100%;min-height:184px}.member-card-main{align-items:flex-start;gap:12px;display:flex}.member-card-name{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:16px;font-weight:700;line-height:22px;overflow:hidden}.member-card-projects{color:var(--text-muted);margin-top:4px;font-size:12px;line-height:18px}.member-contact-box{background:#0596690f;border-radius:12px;flex-direction:column;gap:6px;width:100%;padding:10px 12px;display:flex}.project-member-card.nordic-card{padding:0!important}.project-member-task-summary{align-items:center;gap:8px;margin-top:auto;display:flex}.project-member-task-summary span{height:24px;color:var(--accent);background:#0596691a;border-radius:9999px;padding:0 9px;font-size:11px;font-weight:600;line-height:24px}.project-member-task-summary span.danger{color:#dc2626;background:#dc26261a}.project-detail-overview-card.nordic-card{padding:0!important}.project-detail-overview{grid-template-columns:minmax(240px,1.05fr) minmax(260px,1fr) minmax(360px,1.35fr);align-items:center;gap:20px;display:grid}.project-detail-progress-block{align-items:center;gap:18px;min-width:0;display:flex}.project-detail-progress-copy{flex-direction:column;gap:6px;min-width:0;display:flex}.project-detail-overview-title{color:var(--text-primary);font-size:15px;font-weight:700}.project-detail-overview-subtitle{color:var(--text-muted);font-size:12px;line-height:18px}.project-detail-meta-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px;min-width:0;display:grid}.project-detail-meta-grid div{min-width:0}.project-detail-meta-grid span{color:var(--text-muted);font-size:12px;line-height:18px;display:block}.project-detail-meta-grid strong{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:14px;line-height:22px;display:block;overflow:hidden}.project-detail-metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.project-detail-metric-card{border:1px solid var(--border);background:var(--surface,#fff);border-radius:14px;flex-direction:column;justify-content:space-between;min-width:0;height:86px;padding:12px;display:flex}.project-detail-metric-icon{color:var(--accent);font-size:17px;line-height:17px}.project-detail-metric-label{color:var(--text-muted);font-size:12px;line-height:16px}.project-detail-metric-card strong{color:var(--text-primary);font-size:20px;line-height:24px}.project-detail-metric-success strong,.project-detail-metric-success .project-detail-metric-icon{color:#16a34a}.project-detail-metric-danger strong,.project-detail-metric-danger .project-detail-metric-icon{color:#dc2626}.project-detail-tab-pane{padding:20px}.project-detail-tabs-card.nordic-card{padding:0!important}.project-detail-tabs>.ant-tabs-nav{border-bottom:1px solid var(--border);min-height:58px;padding:0 20px;margin:0!important}.project-detail-tabs>.ant-tabs-nav:before{border-bottom:none!important}.project-detail-tabs>.ant-tabs-nav .ant-tabs-nav-wrap{align-items:center}.project-detail-tabs>.ant-tabs-nav .ant-tabs-tab{height:36px;color:var(--text-secondary);border-radius:9999px;font-size:14px;font-weight:600;margin:0 8px 0 0!important;padding:0 14px!important}.project-detail-tabs>.ant-tabs-nav .ant-tabs-tab-active{background:#0596691f}.project-detail-tabs>.ant-tabs-nav .ant-tabs-tab-btn{line-height:36px}.project-detail-tabs>.ant-tabs-nav .ant-tabs-ink-bar{display:none}.project-detail-tabs>.ant-tabs-nav .ant-tabs-extra-content,.project-detail-tab-extra{align-items:center;display:flex}.project-detail-tab-action.ant-btn{border-radius:9999px;min-width:128px;height:36px;padding:0 18px;font-size:14px;font-weight:700}.project-log-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.project-log-header strong{color:var(--text-primary);font-size:15px}.project-log-header span{color:var(--text-muted);font-size:12px}.project-log-timeline{position:relative}.project-log-item{grid-template-columns:18px 1fr;gap:10px;padding:0 0 14px;display:grid;position:relative}.project-log-item:not(:last-child):before{content:"";background:var(--border);width:1px;position:absolute;top:16px;bottom:0;left:6px}.project-log-dot{z-index:1;background:var(--accent);border:3px solid #0596692e;border-radius:9999px;width:13px;height:13px;margin-top:3px;position:relative}.project-log-content{border-bottom:1px solid var(--border);min-width:0;padding-bottom:14px}.project-log-content div{color:var(--text-body);font-size:13px;line-height:20px}.project-log-content strong{color:var(--text-primary)}.project-log-content time{color:var(--text-muted);margin-top:4px;font-size:11px;line-height:16px;display:block}.project-milestone-stat-strip{scrollbar-width:none;align-items:center;gap:8px;margin-bottom:16px;display:flex;overflow-x:auto}.project-milestone-stat-strip::-webkit-scrollbar{display:none}.project-milestone-stat-chip{border:1px solid var(--border);background:var(--surface,#fff);height:30px;color:var(--text-secondary);border-radius:9999px;flex:none;align-items:center;gap:8px;padding:0 12px;font-size:12px;line-height:30px;display:inline-flex}.project-milestone-stat-chip strong{color:var(--text-primary);font-size:13px;font-weight:700}.project-milestone-stat-chip.success,.project-milestone-stat-chip.success strong{color:#16a34a}.project-milestone-stat-chip.info,.project-milestone-stat-chip.info strong{color:var(--accent)}.project-milestone-stat-chip.danger,.project-milestone-stat-chip.danger strong{color:#dc2626}.project-milestone-card.nordic-card,.project-stage-card.nordic-card{padding:0!important}.project-stage-card>.ant-card-body{padding:20px!important}.project-stage-card-header{justify-content:space-between;align-items:flex-start;gap:16px;margin:0 0 14px;display:flex}.project-stage-card-title{flex-wrap:wrap;align-items:center;row-gap:8px;min-width:0;display:flex}.project-stage-drag-btn.ant-btn{width:28px;min-width:28px;height:28px;color:var(--text-muted);cursor:grab;margin:0 8px 0 0;padding:0}.project-stage-status-tag.ant-tag{border-radius:9999px;margin:0}.project-stage-name{min-width:0;color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;margin-left:10px;font-size:15px;line-height:28px;overflow:hidden}.project-stage-task-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-left:12px;display:inline-flex}.project-stage-task-actions .ant-btn{border-radius:9999px;min-width:88px;height:28px;padding:0 12px;font-size:12px}.project-stage-task-actions .nordic-btn-primary{min-width:96px}.project-stage-meta{background:var(--hover-bg);color:var(--text-secondary);border-radius:10px;flex-wrap:wrap;gap:8px 16px;margin:-6px 0 14px;padding:10px 12px;font-size:12px;line-height:1.5;display:flex}.project-stage-meta-content{color:var(--text-muted);flex:100%}.project-stage-status-select{flex:none;align-items:center;gap:4px;padding-top:1px;display:inline-flex}.project-stage-delete-btn.ant-btn{color:#ef4444;width:28px;min-width:28px;height:28px;padding:0}.task-tree-delete-wrap{align-items:center;margin-right:4px;display:inline-flex}.task-tree-delete-btn.ant-btn{opacity:1;width:28px;min-width:28px;height:28px;padding:0;color:#ef4444!important}.task-tree-row:hover .task-tree-delete-btn.ant-btn{background:#ef444414}.project-stage-task-area{margin-top:0}.task-tree{margin:0}.task-tree-actions{flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 14px;display:flex}.task-tree-actions .ant-btn{border-radius:9999px;min-width:104px;height:30px;font-size:12px}.task-tree-actions .nordic-btn-primary{min-width:116px}.task-tree-checklist-btn.ant-btn{border-color:var(--border)}.task-tree-empty{min-height:96px;color:var(--text-muted);text-align:center;justify-content:center;align-items:center;padding:24px 20px;display:flex}.approval-compose-layout{grid-template-columns:minmax(560px,1fr) clamp(210px,18vw,250px);align-items:start;gap:20px;padding-bottom:2px;display:grid;overflow-x:auto}.approval-form-card.nordic-card,.approval-type-rail.nordic-card{padding:0!important}.approval-form-card{align-self:start;min-height:560px}.approval-form-card>.ant-card-body{min-height:560px}.approval-form-shell{flex-direction:column;min-height:520px;display:flex}.approval-form-actions{margin-top:auto;margin-bottom:0;padding-top:24px}.approval-fields-col{min-height:360px}.approval-fields-col .ant-form-item{margin-bottom:16px}.approval-upload-compact .ant-upload{padding:16px 12px}.approval-upload-compact .ant-upload-drag-icon{margin-bottom:8px!important}.approval-upload-compact .anticon{font-size:24px}.approval-flow-panel{background:#05966914;border:1px solid #05966929;border-radius:14px;padding:16px}.approval-flow-title{color:var(--text-primary);font-size:13px;display:block}.approval-flow-meta{color:var(--text-secondary);flex-direction:column;gap:4px;margin-top:10px;font-size:12px;line-height:18px;display:flex}.approval-flow-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:12px;display:grid}.approval-flow-steps>div{background:var(--surface,#fff);min-width:0;color:var(--accent);text-align:center;white-space:nowrap;border-radius:9999px;padding:5px 6px;font-size:11px;font-weight:600;line-height:16px}.approval-flow-details{color:var(--text-secondary);margin-top:12px;font-size:12px;line-height:1.8}.approval-center-table .ant-table{background:0 0;border-radius:18px}.approval-center-table .ant-table-container,.approval-center-table .ant-table-content{overflow-x:auto}.approval-center-table .ant-table-content::-webkit-scrollbar{height:8px}.approval-center-table .ant-table-content::-webkit-scrollbar-track{background:#78716c14;border-radius:9999px}.approval-center-table .ant-table-content::-webkit-scrollbar-thumb{background:#05966973;border-radius:9999px}.approval-center-table .ant-table-content::-webkit-scrollbar-thumb:hover{background:#059669a6}.approval-center-table .ant-table-thead>tr>th{height:44px;color:var(--text-secondary);white-space:nowrap;vertical-align:middle;font-size:13px;font-weight:700;text-align:center!important;background:#f7f7f5!important;padding:10px 14px!important}.approval-center-table .ant-table-tbody>tr>td{vertical-align:middle;height:64px;padding:12px 14px!important}.approval-center-table .ant-table-tbody>tr:hover>td{background:#0596690f!important}.approval-center-table .ant-table-tbody>tr>td:not(.approval-title-column){text-align:center}.approval-title-cell{text-align:left;min-width:0}.approval-title-cell .ant-typography{max-width:230px}.approval-applicant-cell{justify-content:center}.approval-type-rail{align-self:start}.approval-type-rail-inner{flex-direction:column;gap:12px;display:flex}.approval-type-button{border:1px solid var(--border);background:var(--surface,#fff);width:100%;min-height:92px;color:var(--text-primary);cursor:pointer;text-align:left;border-radius:14px;align-items:center;gap:10px;padding:14px;transition:border-color .2s,background .2s,box-shadow .2s;display:flex}.approval-type-button:hover,.approval-type-button.active{border-color:var(--accent);background:#05966914}.approval-type-button.active{box-shadow:inset 0 0 0 1px var(--accent)}.approval-type-icon{width:38px;height:38px;color:var(--accent);background:#0596691f;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;font-size:18px;display:inline-flex}.approval-type-copy{flex-direction:column;gap:4px;min-width:0;display:flex}.approval-type-label{font-size:14px;font-weight:700;line-height:20px}.approval-type-desc{color:var(--text-muted);font-size:12px;line-height:18px}@media (width<=992px){.daily-report-calendar-card,.daily-report-detail-card,.daily-report-calendar-card>.ant-card-body,.daily-report-detail-card>.ant-card-body{min-height:auto}.dashboard-latest-log-card{width:100%;max-width:none}.project-toolbar{flex-direction:column;align-items:stretch}.project-toolbar-left,.project-toolbar-right{flex-wrap:wrap;width:100%}.project-toolbar-filters,.project-toolbar-actions{flex-wrap:wrap}.project-toolbar-select{flex:1;min-width:140px}.member-toolbar{flex-wrap:wrap;align-items:stretch}.member-toolbar-filters{flex:100%;grid-template-columns:1fr;display:grid}.member-toolbar-search,.member-toolbar-select{width:100%}.member-stat-strip{flex:100%}.project-detail-overview{grid-template-columns:1fr}.project-detail-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-detail-tabs>.ant-tabs-nav{padding:0 12px}.attendance-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.approval-form-card,.approval-form-card>.ant-card-body,.approval-form-shell{min-height:auto}}.repo-tree-row .tree-action{visibility:hidden}.repo-tree-row:hover .tree-action{visibility:visible}.product-hub-header{margin-bottom:20px}.product-hub-layout{align-items:flex-start;gap:24px;display:flex}.product-hub-nav{background:var(--card-bg,#fff);border:1px solid var(--border);border-radius:12px;flex-shrink:0;width:200px;padding:12px 0 12px 8px;position:sticky;top:72px}.product-hub-nav .ant-anchor-link-title{color:var(--text-secondary)}.product-hub-nav .ant-anchor-link-active>.ant-anchor-link-title{color:var(--accent);font-weight:500}.product-hub-content{flex:1;min-width:0}.product-hub-section{margin-bottom:20px;scroll-margin-top:88px}.product-hub-kanban-col{background:var(--hover-bg,#f8f9fa);border:1px solid var(--border);border-radius:10px;min-height:200px}.product-hub-kanban-col-title{border-bottom:1px solid var(--border);align-items:center;padding:10px 12px;font-size:13px;font-weight:600;display:flex}.product-hub-kanban-col-body{flex-direction:column;gap:8px;max-height:360px;padding:10px;display:flex;overflow-y:auto}.product-hub-kanban-card{background:var(--card-bg,#fff);border:1px solid var(--border);border-radius:8px;padding:10px 12px}@media (width<=992px){.product-hub-layout{flex-direction:column}.product-hub-nav{width:100%;position:static;overflow-x:auto}.product-hub-nav .ant-anchor{flex-wrap:wrap;gap:4px;display:flex}.product-hub-nav .ant-anchor-ink{display:none}}.ant-menu-inline .ant-menu-item,.ant-menu-inline .ant-menu-submenu-title{align-items:center;min-height:40px;height:auto!important;padding-right:8px!important;line-height:1.4!important}.ant-menu-inline .ant-menu-item .ant-menu-title-content,.ant-menu-inline .ant-menu-submenu-title .ant-menu-title-content{white-space:normal;overflow:visible}.app-sider-menu-label{flex-direction:column;align-items:flex-start;gap:2px;width:100%;min-width:0;padding:2px 0;display:flex}.app-sider-menu-title{text-overflow:ellipsis;white-space:nowrap;width:100%;min-width:0;line-height:1.35;overflow:hidden}.app-sider-menu-hints{flex-wrap:wrap;flex-shrink:0;justify-content:flex-start;gap:3px;max-width:100%;display:flex}.app-sider-menu-hint{white-space:nowrap;border-radius:9999px;padding:0 5px;font-size:10px;font-weight:500;line-height:1.3}.app-sider-menu-hint--danger{color:#ef4444;background:#ef44441a}.app-sider-menu-hint--warning{color:#d97706;background:#d977061f}.app-sider-menu-hint--info{color:#0ea5e9;background:#0ea5e91a}.app-sider-menu-hint--muted{color:var(--text-muted);background:var(--hover-bg)}.finance-overview-stats{gap:16px;display:grid}.finance-overview-stats--monthly,.finance-overview-stats--yearly{grid-template-columns:repeat(2,minmax(0,1fr))}@media (width>=768px){.finance-overview-stats--monthly,.finance-overview-stats--yearly{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width>=992px){.finance-overview-stats--monthly{grid-template-columns:repeat(5,minmax(0,1fr))}}.finance-overview-stats--secondary{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-year-trend-panel{flex-direction:column;gap:16px;display:flex}.finance-year-trend-metrics{flex-direction:column;gap:10px;display:flex}.finance-year-trend-metric{border-radius:12px;padding:12px 14px}.finance-year-trend-metric-label{color:var(--text-muted);font-size:12px;line-height:1.3}.finance-year-trend-metric-hint{color:var(--text-muted);margin-top:2px;font-size:10px;line-height:1.3}.finance-year-trend-metric-value{word-break:break-all;margin-top:4px;font-size:clamp(18px,2vw,22px);font-weight:700;line-height:1.2}.finance-year-trend-chart{flex-direction:column;min-width:0;display:flex}.finance-chart-legend{color:var(--text-secondary);flex-wrap:wrap;align-self:flex-start;gap:14px;margin-top:8px;font-size:12px;display:flex}.finance-chart-legend-line{vertical-align:middle;border-top-style:solid;border-top-width:3px;width:24px;margin-right:8px;display:inline-block}.finance-chart-legend-income{border-top-color:#16a34a}.finance-chart-legend-expense{border-top-color:#ef4444}@media (width>=768px){.finance-year-trend-panel{flex-direction:row;align-items:stretch;gap:20px}.finance-year-trend-metrics{flex:0 0 148px;justify-content:center}.finance-year-trend-chart{flex:1}}.finance-overview-stat-card .ant-card-body{padding:16px!important}.finance-overview-stat-card .finance-stat-value{color:var(--text-primary);word-break:break-all;margin-top:4px;font-size:clamp(16px,1.4vw,22px);font-weight:700;line-height:1.2}.finance-overview-stat-card .finance-stat-icon{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:18px;display:flex}.feedback-analysis-page{flex-direction:column;gap:18px;display:flex}.feedback-analysis-hero{background:radial-gradient(circle at 100% 0,#0596691f,#0000 34%),linear-gradient(#fffffff2,#f8fafce6);border:1px solid #0f172a14;border-radius:22px;justify-content:space-between;align-items:flex-start;gap:16px;padding:20px 22px;display:flex;box-shadow:0 18px 40px #0f172a0f}.feedback-kpi-row{margin-top:-2px}.feedback-kpi-card{background:linear-gradient(#fffffffa,#f8fafcf0);min-height:152px;position:relative;overflow:hidden;border-radius:20px!important}.feedback-kpi-card__icon{background:var(--accent-light);width:42px;height:42px;color:var(--accent);border-radius:14px;justify-content:center;align-items:center;margin-bottom:18px;font-size:18px;display:inline-flex}.feedback-kpi-card__label{color:var(--text-secondary);font-size:13px;display:block}.feedback-kpi-card__value{color:var(--text-primary);margin-top:8px;font-size:clamp(28px,3vw,34px);font-weight:700;line-height:1}.feedback-kpi-card__hint{color:var(--text-muted);margin-top:12px;font-size:12px;line-height:1.5;display:block}.feedback-panel-card{border-radius:22px!important}.feedback-panel-card__title{align-items:center;gap:10px;display:flex}.feedback-panel-card__subtitle{color:var(--text-muted);margin-top:2px;font-size:12px;display:block}.feedback-feed-list{padding:8px 8px 12px}.feedback-feed-list .ant-list-item{border-block-end:none!important}.feedback-feed-list__item{margin-bottom:12px;padding:0!important}.feedback-entry-card{background:linear-gradient(#fffffffa,#f8fafcf5);border-radius:20px!important}.feedback-entry-card--highlighted{border-color:#05966957!important;box-shadow:0 0 0 1px #0596691f,0 16px 34px #0596691f!important}.feedback-entry-card__header{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:14px;display:flex}.feedback-entry-card__user{align-items:center;gap:10px;display:flex}.feedback-entry-card__avatar{font-weight:700;color:var(--accent)!important;background:linear-gradient(135deg,#05966929,#05966947)!important}.feedback-entry-card__user-name{color:var(--text-primary);font-size:13px;font-weight:600}.feedback-entry-card__time{color:var(--text-muted);font-size:12px}.feedback-entry-card__content{color:var(--text-body);white-space:pre-wrap;font-size:14px;line-height:1.85}.feedback-entry-card__meta{background:#f8fafceb;border:1px solid #0f172a0f;border-radius:16px;margin-top:14px;padding:14px}.feedback-meta-row{color:var(--text-secondary);align-items:center;gap:8px;font-size:13px;display:flex}.feedback-meta-row .anticon{color:var(--accent)}.feedback-meta-block+.feedback-meta-block,.feedback-meta-row+.feedback-meta-block{margin-top:12px}.feedback-meta-block__label{align-items:center;gap:6px;font-size:12px;display:inline-flex;color:var(--text-secondary)!important}.feedback-meta-block__label .anticon{color:var(--accent)}.feedback-meta-block__content{color:var(--text-body);white-space:pre-wrap;margin-top:6px;font-size:13px;line-height:1.7}.feedback-image-grid{flex-wrap:wrap;gap:10px;margin-top:10px;display:flex}.feedback-image-grid__image{object-fit:cover;border-radius:14px;overflow:hidden}.feedback-reply-card{background:#05966914;border:1px solid #05966929;border-radius:16px;margin-top:14px;padding:14px 16px}.feedback-reply-card__title{letter-spacing:.02em;color:var(--accent);font-size:12px;font-weight:700}.feedback-reply-card__content{color:var(--text-body);white-space:pre-wrap;margin-top:8px;font-size:13px;line-height:1.7}.feedback-reply-card__time{color:var(--text-muted);margin-top:8px;font-size:12px}.feedback-entry-card__actions{justify-content:flex-end;margin-top:12px;display:flex}.feedback-pill-tag{border:none!important;border-radius:999px!important;padding-inline:10px!important;font-size:12px!important}.feedback-soft-tag{border:1px solid var(--border)!important;color:var(--text-secondary)!important;background:#ffffffd9!important;border-radius:999px!important}.feedback-empty-block{justify-content:center;align-items:center;min-height:220px;display:flex}.feedback-side-stack{flex-direction:column;gap:18px;display:flex}.feedback-analysis-body{flex-direction:column;gap:16px;display:flex}.feedback-analysis-scope-bar{background:#f8fafce6;border:1px solid #0f172a14;border-radius:16px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.feedback-analysis-scope-bar__label{color:var(--text-secondary);font-size:12px;font-weight:600}.feedback-summary-card{background:linear-gradient(#05966914,#fffffff5);border:1px solid #05966924;border-radius:18px;padding:16px 18px}.feedback-summary-card__header{color:var(--accent);align-items:center;gap:8px;margin-bottom:10px;font-weight:700;display:flex}.feedback-section-block{flex-direction:column;gap:12px;display:flex}.feedback-section-block__title{color:var(--text-primary);align-items:center;gap:8px;font-size:14px;font-weight:700;display:flex}.feedback-section-block__title .anticon{color:var(--accent)}.feedback-issue-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.feedback-issue-card{background:#ffffffeb;border:1px solid #0f172a14;border-radius:18px;min-height:132px;padding:14px}.feedback-issue-card__count{color:var(--accent);font-size:26px;font-weight:700;line-height:1}.feedback-issue-card__title{color:var(--text-primary);margin-top:10px;font-size:14px;font-weight:700}.feedback-issue-card__reason{color:var(--text-secondary);margin-top:8px;font-size:12px;line-height:1.65}.feedback-priority-list{flex-direction:column;gap:10px;display:flex}.feedback-trend-chart{background:#ffffffeb;border:1px solid #0f172a14;border-radius:18px;grid-template-columns:repeat(7,minmax(0,1fr));align-items:end;gap:10px;padding:14px 12px 10px;display:grid}.feedback-trend-chart__item{flex-direction:column;align-items:center;gap:8px;min-width:0;display:flex}.feedback-trend-chart__value{color:var(--text-secondary);font-size:12px;font-weight:700}.feedback-trend-chart__bar-wrap{justify-content:center;align-items:flex-end;width:100%;height:92px;display:flex}.feedback-trend-chart__bar-stack{justify-content:center;align-items:flex-end;gap:4px;width:100%;max-width:34px;height:100%;display:flex}.feedback-trend-chart__bar{border-radius:999px;width:14px;min-height:4px}.feedback-trend-chart__bar--pending{background:linear-gradient(#f59e0b7a,#f59e0b);box-shadow:0 8px 18px #f59e0b2e}.feedback-trend-chart__bar--resolved{background:linear-gradient(#0596697a,#059669);box-shadow:0 8px 18px #05966929}.feedback-trend-chart__meta{color:var(--text-muted);flex-direction:column;align-items:center;gap:2px;font-size:10px;display:flex}.feedback-trend-chart__label{color:var(--text-muted);font-size:11px}.feedback-trend-legend{color:var(--text-secondary);flex-wrap:wrap;gap:14px;margin-top:10px;font-size:11px;display:flex}.feedback-trend-legend__item{align-items:center;gap:6px;display:inline-flex}.feedback-trend-legend__dot{border-radius:999px;width:8px;height:8px}.feedback-trend-legend__dot--pending{background:#f59e0b}.feedback-trend-legend__dot--resolved{background:var(--accent)}.feedback-priority-item{background:#ffffffeb;border:1px solid #0f172a14;border-radius:16px;padding:14px 16px}.feedback-priority-item__head{color:var(--text-primary);justify-content:space-between;align-items:center;gap:12px;font-size:13px;font-weight:700;display:flex}.feedback-priority-item__reason{color:var(--text-secondary);margin-top:8px;font-size:12px;line-height:1.65}.feedback-priority-tag{border:none!important;border-radius:999px!important;margin-inline-end:0!important}.feedback-priority-tag--high{color:#dc2626!important;background:#ef44441f!important}.feedback-priority-tag--mid{color:#d97706!important;background:#f59e0b29!important}.feedback-priority-tag--normal{color:#2563eb!important;background:#3b82f61f!important}.feedback-recommend-card{background:#ffffffeb;border:1px solid #0f172a14;border-radius:18px;height:100%;padding:14px 16px}.feedback-recommend-card__title{color:var(--text-primary);margin-bottom:8px;font-size:13px;font-weight:700}.feedback-bullet-row{color:var(--text-body);padding-left:14px;font-size:13px;line-height:1.75;position:relative}.feedback-bullet-row:before{content:"";background:var(--accent);border-radius:999px;width:6px;height:6px;position:absolute;top:.78em;left:0;transform:translateY(-50%)}.feedback-module-strip{flex-wrap:wrap;gap:8px;display:flex}.feedback-cluster-list{flex-direction:column;gap:10px;display:flex}.feedback-cluster-card{text-align:left;cursor:pointer;background:#ffffffeb;border:1px solid #0f172a14;border-radius:16px;width:100%;padding:14px 16px;transition:border-color .2s,box-shadow .2s,transform .2s}.feedback-cluster-card:hover{border-color:#05966938;box-shadow:0 14px 28px #0f172a0f}.feedback-cluster-card--active{border-color:#05966957;transform:translateY(-1px);box-shadow:0 0 0 1px #0596691f,0 16px 30px #0596691f}.feedback-cluster-card__head{justify-content:space-between;align-items:center;gap:12px;display:flex}.feedback-cluster-card__title{color:var(--text-primary);font-size:13px;font-weight:700}.feedback-cluster-card__module{color:var(--text-muted);margin-top:3px;font-size:11px}.feedback-cluster-card__hint{color:var(--text-muted);margin-top:10px;font-size:11px}.feedback-cluster-card__count{background:var(--accent-light);min-width:34px;height:34px;color:var(--accent);border-radius:12px;justify-content:center;align-items:center;font-size:15px;font-weight:700;display:inline-flex}.feedback-cluster-card__examples{flex-direction:column;gap:8px;margin-top:12px;display:flex}.feedback-cluster-card__example{background:var(--hover-bg);color:var(--text-secondary);border-radius:12px;padding:10px 12px;font-size:12px;line-height:1.65}.feedback-module-tag{color:var(--accent)!important;background:#05966914!important;border:1px solid #0596692e!important;border-radius:999px!important;padding:5px 10px!important}.feedback-chat-suggestions{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.feedback-chat-scope-chip{color:var(--accent);background:#05966914;border:1px solid #05966929;border-radius:999px;align-items:center;margin-bottom:12px;padding:7px 12px;font-size:12px;font-weight:600;display:inline-flex}.feedback-suggestion-chip{border-color:var(--border)!important;color:var(--text-secondary)!important;background:#ffffffd9!important;border-radius:999px!important}.feedback-chat-thread{flex-direction:column;gap:14px;max-height:420px;padding-right:4px;display:flex;overflow:auto}.feedback-chat-bubble{align-items:flex-start;gap:10px;display:flex}.feedback-chat-bubble__icon{width:34px;height:34px;color:var(--accent);background:#0596691f;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.feedback-chat-bubble--user .feedback-chat-bubble__icon{color:#2563eb;background:#3b82f61f}.feedback-chat-bubble__body{flex:1;min-width:0}.feedback-chat-bubble__content{background:var(--hover-bg);color:var(--text-body);white-space:pre-wrap;border-radius:14px;padding:10px 12px;line-height:1.75}.feedback-chat-bubble--user .feedback-chat-bubble__content{background:#3b82f614}.feedback-chat-citations{flex-direction:column;gap:8px;margin-top:10px;display:flex}.feedback-chat-citation{background:#ffffffeb;border:1px solid #0f172a14;border-radius:14px;padding:10px 12px}.feedback-chat-citation__meta{color:var(--text-muted);flex-wrap:wrap;gap:8px;font-size:11px;display:flex}.feedback-chat-citation__text{color:var(--text-secondary);margin-top:6px;font-size:12px;line-height:1.65}.feedback-chat-loading{color:var(--text-muted);align-items:center;gap:8px;font-size:12px;display:inline-flex}.feedback-chat-input{align-items:flex-end;gap:10px;margin-top:16px;display:flex}.feedback-chat-input .ant-input{border-radius:16px}.feedback-primary-button{min-width:96px;border-radius:999px!important}.feedback-ghost-button{border-radius:999px!important}.feedback-reply-modal-preview{background:var(--hover-bg);color:var(--text-body);border-radius:14px;margin-bottom:12px;padding:12px 14px;line-height:1.7}@media (width<=991px){.feedback-analysis-hero,.feedback-entry-card__header{flex-direction:column}.feedback-entry-card__user{width:100%}.feedback-issue-grid{grid-template-columns:1fr}.feedback-trend-chart{gap:8px;padding-inline:8px}.feedback-chat-input{flex-direction:column;align-items:stretch}}:root{--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-8:48px;--space-10:64px;--page-bg:#f8fafc;--bg:#f8fafc;--surface:#fff;--card-bg:#fff;--border:#e2e8f0;--hover-bg:#f1f5f9;--neutral-bg:#f8fafc;--chat-area-bg:#f8fafc;--section-head:#f8fafce0;--text-primary:#0f172a;--text-body:#334155;--text-secondary:#64748b;--text-muted:#94a3b8;--accent:#059669;--accent-hover:#047857;--accent-light:#0596691f;--accent-bg:#05966914;--accent-border:#05966947;--link:#059669;--link-hover:#047857;--primary-btn:#0f172a;--primary-hover:#020617;--primary-text:#fff;--success:#22c55e;--warning:#eab308;--danger:#ef4444;--info:#0ea5e9;--radius-sm:4px;--radius:8px;--radius-md:12px;--radius-lg:16px;--btn-radius:8px;--shadow-sm:0 1px 3px #0f172a08;--shadow-card:0 2px 6px #0f172a0d;--shadow-hover:0 4px 16px #0f172a12;--shadow-panel:0 8px 32px #0f172a1a;--font-sans:"DM Sans", "PingFang SC", "Noto Sans SC", "Microsoft YaHei", system-ui, -apple-system, sans-serif;--font-heading:"Plus Jakarta Sans", "PingFang SC", "Noto Sans SC", "Microsoft YaHei", system-ui, -apple-system, sans-serif;--font-mono:"Fira Code", "SF Mono", "Monaco", "Consolas", monospace;--chart-navy:#0f172a;--chart-sage:#059669;--chart-info:#0ea5e9;--status-progress:#0ea5e9;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700}[data-theme=dark]{--page-bg:#020617;--bg:#020617;--surface:#0f172a;--card-bg:#0f172a;--border:#94a3b83d;--hover-bg:#94a3b81f;--neutral-bg:#94a3b814;--text-primary:#f8fafc;--text-body:#cbd5e1;--text-secondary:#94a3b8;--text-muted:#64748b;--accent:#10b981;--accent-hover:#059669;--primary-btn:#f8fafc;--primary-hover:#e2e8f0;--primary-text:#0f172a;--link:#10b981;--link-hover:#34d399}*{box-sizing:border-box}html{font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background:var(--page-bg);color:var(--text-primary);margin:0;padding:0;line-height:1.5}.nordic-card{background:var(--card-bg);border-radius:var(--radius);border:1px solid var(--border);padding:var(--space-5);box-shadow:none;transition:box-shadow .2s,border-color .2s}.nordic-card:hover{box-shadow:var(--shadow-hover)}.nordic-btn-primary{justify-content:center;align-items:center;gap:var(--space-2);border-radius:var(--btn-radius);padding:var(--space-2) var(--space-5);font-weight:var(--weight-medium);transition:all .2s;display:inline-flex;background:var(--primary-btn)!important;border-color:var(--primary-btn)!important;color:var(--primary-text)!important}.nordic-btn-primary:hover{background:var(--primary-hover)!important;border-color:var(--primary-hover)!important}.nordic-btn-secondary{justify-content:center;align-items:center;gap:var(--space-2);border-radius:var(--btn-radius);background:var(--card-bg);border:1px solid var(--border);color:var(--text-body);padding:var(--space-2) var(--space-5);font-weight:var(--weight-medium);transition:all .2s;display:inline-flex}.nordic-btn-secondary:hover{background:var(--hover-bg);color:var(--text-primary)}.nordic-page{background:var(--page-bg);min-height:100vh;font-family:var(--font-sans);color:var(--text-primary)}.nordic-header{z-index:50;border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(8px);background:#f8fafce6;position:sticky;top:0}.nordic-tab-active{border-radius:var(--btn-radius);background:var(--primary-btn);color:#fff;font-weight:var(--weight-medium);padding:4px 14px;font-size:.875rem}.nordic-tab-idle{border-radius:var(--btn-radius);background:var(--neutral-bg);color:var(--text-secondary);font-weight:var(--weight-medium);padding:4px 14px;font-size:.875rem;transition:background .2s}.nordic-tab-idle:hover{background:var(--hover-bg);color:var(--text-primary)}.nordic-input{border-radius:var(--radius);border:1px solid var(--border);width:100%;color:var(--text-primary);background:#fff;padding:10px 14px;font-size:.875rem;transition:all .2s}.nordic-input:focus{border-color:var(--text-primary);outline:none;box-shadow:0 0 0 3px #0f172a17}.nordic-input::placeholder{color:var(--text-muted)}.nordic-badge{border-radius:var(--radius-sm);font-size:.75rem;font-weight:var(--weight-medium);letter-spacing:.5px;text-transform:uppercase;align-items:center;padding:4px 12px;display:inline-flex}.nordic-badge-green{color:#16a34a;background:#22c55e1a}.nordic-badge-yellow{color:#ca8a04;background:#eab3081a}.nordic-badge-blue{color:#0284c7;background:#0ea5e91f}.nordic-badge-gray{color:var(--text-secondary);background:#78716c1a}.nordic-badge-red{color:#dc2626;background:#ef44441a}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes countUp{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes pulse{0%,to{box-shadow:0 0 #05966959}50%{box-shadow:0 0 0 8px #05966900}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes bell-shake{0%,to{transform:rotate(0)}15%{transform:rotate(15deg)}30%{transform:rotate(-15deg)}45%{transform:rotate(10deg)}60%{transform:rotate(-10deg)}75%{transform:rotate(5deg)}}@keyframes scale-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.nordic-fade-in{animation:.3s ease-in-out fadeIn}.animate-fade-in{animation:.5s ease-out both fadeInUp}.animate-fade-in-fast{animation:.3s ease-out both fadeInUp}.animate-slide-in{animation:.4s ease-out both slideInRight}.animate-scale-in{animation:.3s ease-out both scale-in}.animate-float{animation:3s ease-in-out infinite float}.animate-pulse{animation:2s ease-in-out infinite pulse}.animate-shimmer{background:linear-gradient(90deg,#0000 0%,#0596690f 50%,#0000 100%) 0 0/200% 100%;animation:1.5s ease-in-out infinite shimmer}.animate-bell-shake{animation:.5s ease-in-out bell-shake}.animate-stagger-1{animation-delay:50ms}.animate-stagger-2{animation-delay:.1s}.animate-stagger-3{animation-delay:.15s}.animate-stagger-4{animation-delay:.2s}.animate-stagger-5{animation-delay:.25s}.animate-stagger-6{animation-delay:.3s}.animate-stagger-7{animation-delay:.35s}.animate-stagger-8{animation-delay:.4s}.stat-count-up{animation:.6s cubic-bezier(.34,1.56,.64,1) both countUp}.nordic-card-hover{transition:all .25s}.nordic-card-hover:hover{transform:translateY(-2px);box-shadow:0 6px 24px #1c191714}.search-glow{transition:box-shadow .25s,border-color .25s}.search-glow:focus-within{border-color:var(--text-primary);box-shadow:0 0 0 3px #0f172a17}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.nordic-progress-green .ant-progress-bg{background:var(--accent)!important}.ant-table-wrapper .ant-table-thead>tr>th{background:var(--neutral-bg)!important;color:var(--text-secondary)!important;font-weight:var(--weight-medium)!important;font-size:.8125rem!important}.ant-table-wrapper .ant-table-tbody>tr:hover>td{background:var(--hover-bg)!important}.ant-card{border-radius:var(--radius-lg)!important;border:1px solid var(--border)!important;box-shadow:var(--shadow-card)!important}.ant-btn-primary:not(.ant-btn-background-ghost){background:var(--primary-btn)!important;border-color:var(--primary-btn)!important;color:var(--primary-text,#fff)!important;border-radius:var(--btn-radius)!important}.ant-btn-primary:not(.ant-btn-background-ghost):hover{background:var(--primary-hover)!important;border-color:var(--primary-hover)!important;color:var(--primary-text,#fff)!important}.ant-btn-default{border-radius:var(--btn-radius)!important}.ant-modal-content{border-radius:var(--radius-lg)!important}.ant-tabs-nav:before{border-bottom-color:var(--border)!important}.ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn{color:var(--accent)!important}.ant-tabs-ink-bar{background:var(--accent)!important}.ant-select-focused .ant-select-selector{border-color:var(--accent)!important;box-shadow:none!important}.ant-menu-light{background:0 0!important}.ant-menu-item-selected{font-weight:500;background:var(--accent-light)!important;color:var(--accent)!important}.ant-menu-item-selected:after{border-right-color:var(--accent)!important}.ant-menu-item:hover{background:var(--hover-bg)!important}.ant-menu-submenu-title:hover,.ant-menu-submenu-selected>.ant-menu-submenu-title{color:var(--accent)!important}.ant-menu-inline.ant-menu-root{border-right:none!important}.ant-menu-submenu-popup{z-index:1100}.ant-layout-sider{box-shadow:1px 0 0 var(--border)}
