:root{--rd-text: #000;--rd-font-small: 12px;--rd-font-body: 14px;--rd-font-heading: 16px;--rd-font-title: 20px;--rd-font-number: 24px;--rd-font-display: 32px}*{box-sizing:border-box}body{margin:0;background:#f5f7fb;color:var(--rd-text);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;font-size:var(--rd-font-body)}button,a{transition:background .18s,color .18s}a{cursor:pointer}h1,h2,h3,h4,p{margin-top:0}button{font-family:inherit}.app-shell{display:flex;min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:156px;background:#fff;border-right:1px solid #e9edf4;display:flex;flex-direction:column;z-index:20}.brand{height:92px;display:flex;align-items:center;gap:9px;padding-left:14px;color:var(--rd-text);font-size:var(--rd-font-heading);font-weight:800;letter-spacing:.5px}.brand small{display:block;font-size:var(--rd-font-small);letter-spacing:2px;color:var(--rd-text);font-weight:400;margin-top:3px}.brand-logo{background:linear-gradient(145deg,#3783ff,#1654d7);width:38px;flex:0 0 38px;height:40px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:var(--rd-font-number);font-style:italic;border-radius:10px;box-shadow:0 5px 10px #2169ee23;position:relative}.brand-logo span{position:absolute;width:8px;height:8px;background:#8dc4ff;right:4px;bottom:5px;border-radius:2px}.workspace-label{padding:20px 14px 16px;font-size:var(--rd-font-small);letter-spacing:1.3px;color:var(--rd-text)}.workspace-label span{float:right;letter-spacing:0;color:var(--rd-text)}nav{padding:0 8px}nav button{border:0;background:transparent;display:flex;align-items:center;gap:10px;width:100%;height:44px;border-radius:6px;padding:0 12px;margin-bottom:5px;text-align:left;color:var(--rd-text);cursor:pointer;font-size:var(--rd-font-body)}nav button .anticon{font-size:var(--rd-font-heading);width:20px;flex:0 0 20px;text-align:center}nav button.active{color:#2169ee;background:#eaf1ff;font-weight:600}nav button:hover{background:#f3f6fb}nav button.active:hover{background:#eaf1ff}.nav-count{margin-left:auto;font-size:var(--rd-font-small);min-width:21px;text-align:center;line-height:18px;border-radius:4px;background:#eaf0f8;color:var(--rd-text)}.active .nav-count{background:#d9e7ff;color:#2169ee}.nav-group-label{font-size:var(--rd-font-small);color:var(--rd-text);padding:22px 16px 12px;letter-spacing:1px}.nav-divider{height:1px;background:#eff2f6;margin:22px 14px}.sidebar-bottom{margin-top:auto;padding:25px 10px 18px}.team-badge{background:linear-gradient(135deg,#f4f7fe,#fafbfe);padding:15px 12px;border-radius:8px;display:flex;gap:9px;font-size:var(--rd-font-small);line-height:1.7;color:var(--rd-text)}.team-badge>span{font-size:var(--rd-font-title);color:#7096dc}.team-badge small{display:block;font-size:var(--rd-font-small);color:var(--rd-text)}.sidebar-footer{display:flex;align-items:center;font-size:var(--rd-font-small);color:var(--rd-text);margin-top:21px;gap:5px;white-space:nowrap}.sidebar-footer .ant-tag{font-size:var(--rd-font-small);padding:0 4px;margin:0 0 0 auto;color:var(--rd-text);background:#f4f6fa}.online-dot{width:5px;height:5px;background:#49bb98;border-radius:50%;display:inline-block;margin-right:5px;vertical-align:middle}.main-shell{margin-left:156px;min-width:0;flex:1}.topbar{height:68px;background:#fff;border-bottom:1px solid #e9edf4;display:flex;align-items:center;justify-content:space-between;padding:0 32px;position:sticky;top:0;z-index:10}.breadcrumb{display:flex;align-items:center;gap:14px;font-size:var(--rd-font-body)}.breadcrumb>a{color:var(--rd-text)}.breadcrumb>a:hover{color:#2169ee}.breadcrumb .anticon{font-size:var(--rd-font-small);color:#b5bdcb}.breadcrumb b{font-weight:500;color:var(--rd-text)}.topbar-actions{display:flex;align-items:center;gap:20px}.project-switch{width:184px;font-size:var(--rd-font-small)}.project-switch .ant-select-selector{border:0!important;background:#f7f9fc!important}.topbar-separator{height:21px;width:1px;background:#edf0f5}.user-menu{display:flex;align-items:center;gap:9px;cursor:pointer}.user-menu b{font-size:var(--rd-font-body);font-weight:500;display:block}.user-menu small{font-size:var(--rd-font-small);color:var(--rd-text);display:block;margin-top:3px}.main-content{padding:28px 30px 16px;max-width:1800px;margin:auto}.welcome{background:linear-gradient(105deg,#eef4ff,#f0f5ff 52%,#e5efff);border:1px solid #e1eafa;border-radius:9px;padding:27px 30px 25px;display:flex;justify-content:space-between;position:relative;overflow:hidden;min-height:207px}.welcome>div:first-child{position:relative;z-index:2}.eyebrow{font-size:var(--rd-font-small);letter-spacing:1.7px;color:var(--rd-text);font-weight:600;margin-bottom:12px}.welcome h1{font-size:var(--rd-font-title);letter-spacing:.1px;color:var(--rd-text);margin-bottom:12px;font-weight:600}.welcome-dot{color:#2f77f4;margin-left:3px}.welcome p{font-size:var(--rd-font-body);color:var(--rd-text);margin-bottom:22px}.welcome .ant-btn{font-size:var(--rd-font-body);height:33px;padding-inline:16px}.welcome .ant-btn-default{border-color:#d3e0f4;color:var(--rd-text);background:#f7faff}.welcome-calendar{z-index:1;border:1px solid #f1e1d2;background:linear-gradient(135deg,#fffcf8,#fbf3ec);border-radius:8px;padding:17px 24px;width:210px;align-self:center;margin-right:8px;box-shadow:0 12px 30px #b6a39418}.calendar-top{display:flex;gap:8px;font-size:var(--rd-font-small);color:var(--rd-text)}.calendar-day{font-size:var(--rd-font-display);font-weight:600;color:#fa8c16;line-height:1.5;letter-spacing:1px;display:flex;align-items:center;gap:14px}.calendar-day span{font-size:var(--rd-font-small);font-weight:400;letter-spacing:0;color:var(--rd-text)}.calendar-foot{font-size:var(--rd-font-small);color:var(--rd-text);border-top:1px solid #f0e4da;padding-top:10px;white-space:nowrap}.hero-grid{position:absolute!important;right:-90px;top:-75px;width:440px;height:400px;background-image:linear-gradient(#9cb8e519 1px,transparent 1px),linear-gradient(90deg,#9cb8e519 1px,transparent 1px);background-size:30px 30px;transform:rotate(-28deg);border-radius:50%}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:22px 0}.stat-card{background:#fff;border:1px solid #e7ecf4;border-radius:8px;padding:18px 21px 17px;cursor:pointer;transition:box-shadow .2s}.stat-card:hover{box-shadow:0 5px 20px #5476ab12}.stat-title{display:flex;align-items:center;justify-content:space-between;color:var(--rd-text);font-size:var(--rd-font-body)}.stat-icon{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:8px;font-size:var(--rd-font-heading)}.blue{background:#ecf3ff;color:#4f87e9}.purple{background:#f1edff;color:#9172d9}.cyan{background:#e8f8f8;color:#49a9b7}.orange{background:#fff2e7;color:#e79a59}.stat-number{font-size:var(--rd-font-display);font-weight:600;line-height:1.3;letter-spacing:1px;display:flex;align-items:center;justify-content:space-between;color:var(--rd-text)}.stat-number>.anticon{font-size:var(--rd-font-body);color:#c1ccdc}.stat-desc{color:var(--rd-text);font-size:var(--rd-font-small);margin-top:8px}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px;margin-bottom:22px}.panel{background:#fff;border:1px solid #e7ecf3;border-radius:8px;overflow:hidden}.panel-heading{display:flex;align-items:center;justify-content:space-between;padding:19px 21px 13px;min-height:57px}.panel-heading h3{font-size:var(--rd-font-heading);margin:0;font-weight:600;display:flex;align-items:center;gap:8px;color:var(--rd-text)}.heading-line{display:inline-block;width:3px;height:13px;border-radius:2px;background:#3b7cf0}.panel-heading .ant-btn{font-size:var(--rd-font-body);padding:0;height:auto}.panel-heading>a{font-size:var(--rd-font-body);color:var(--rd-text)}.panel-heading .ant-tag{font-size:var(--rd-font-small);line-height:16px}.work-panel .ant-tabs-nav{margin:0;padding:0 20px}.work-panel .ant-tabs-tab{font-size:var(--rd-font-body);padding:13px 0}.work-panel .ant-tabs-tab+.ant-tabs-tab{margin-left:23px}.work-panel .ant-table{font-size:var(--rd-font-body)}.work-panel .ant-table-thead>tr>th{font-size:var(--rd-font-body);padding:13px 14px}.work-panel .ant-table-tbody>tr>td{padding:17px 14px}.work-panel .record-title a{font-size:var(--rd-font-body)}.work-panel .record-title small{font-size:var(--rd-font-small)}.panel-foot{display:flex;align-items:center;font-size:var(--rd-font-small);color:var(--rd-text);border-top:1px solid #f0f3f8;padding:16px 20px;gap:3px}.panel-foot>span:last-child{margin-left:auto}.record-title{display:flex;align-items:center;gap:11px;cursor:pointer}.record-title a{color:var(--rd-text);font-size:var(--rd-font-body);line-height:1.6;display:block}.record-title:hover a{color:#2169ee}.record-title small{display:block;color:var(--rd-text);font-size:var(--rd-font-small);margin-top:5px}.record-title small>span{margin:0 6px}.tiny-icon{width:22px;height:22px;display:flex;align-items:center;justify-content:center;border-radius:5px;flex-shrink:0;font-size:var(--rd-font-small)}.bug{background:#fff0eb;color:#ef8965}.feature{background:#edf3ff;color:#6797e8}.status-dot{display:inline-block;width:4px;height:4px;background:currentColor;border-radius:50%;vertical-align:middle;margin-right:5px}.ant-tag{font-size:var(--rd-font-small)}.priority{font-size:var(--rd-font-body);white-space:nowrap;color:var(--rd-text)}.priority>span{font-weight:600;font-size:var(--rd-font-body);margin-right:2px}.p0{color:#df6965}.p1{color:#e6a44c}.p2{color:#6690c6}.p3{color:var(--rd-text)}.overdue{color:#dc7067!important}.muted{color:var(--rd-text);font-size:var(--rd-font-small)}.mini-goal{padding:9px 22px 18px;cursor:pointer}.mini-goal+.mini-goal{border-top:1px solid #eff2f6;padding-top:17px}.mini-goal-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.goal-icon{width:30px;height:30px;border-radius:7px;background:#eef4ff;color:#5b8ce2;display:flex;align-items:center;justify-content:center;font-size:var(--rd-font-heading)}.g1{background:#eaf7f2;color:#4da98f}.mini-goal h4{font-size:var(--rd-font-body);color:var(--rd-text);font-weight:500;margin-bottom:8px;line-height:1.7}.mini-goal p{font-size:var(--rd-font-body);line-height:1.6;color:var(--rd-text);margin-bottom:11px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.goal-progress-label{display:flex;justify-content:space-between;font-size:var(--rd-font-small);color:var(--rd-text);margin-bottom:4px}.goal-progress-label b{color:#5283ce;font-size:var(--rd-font-small);font-weight:500}.mini-goal-bottom{display:flex;justify-content:space-between;align-items:center;font-size:var(--rd-font-small);color:var(--rd-text);margin-top:7px}.mini-goal-bottom .ant-space{color:var(--rd-text);font-size:var(--rd-font-small)}.goal-notice{border-top:1px solid #eff2f6;background:#fafbfd;padding:12px 20px;font-size:var(--rd-font-small);color:var(--rd-text);display:flex;gap:6px;align-items:center}.week-summary{padding:5px 21px 15px}.week-range{color:var(--rd-text);font-size:var(--rd-font-small)}.week-range .anticon{margin-right:6px}.week-summary p{font-size:var(--rd-font-body);color:var(--rd-text);margin:10px 0 0}.day-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;padding:0 20px 21px}.day-cell{background:#fafbfd;border:1px solid #f0f3f7;border-radius:5px;padding:11px;min-height:112px}.day-cell>div{font-size:var(--rd-font-small);color:var(--rd-text);white-space:nowrap}.day-cell b{font-weight:500;color:var(--rd-text);margin-left:4px;font-size:var(--rd-font-small)}.day-cell small{color:#5e91e4;background:#e4eeff;margin-left:4px;font-size:var(--rd-font-small);padding:2px;border-radius:3px}.day-cell strong{display:block;font-size:var(--rd-font-body);color:#5585cb;font-weight:500;margin-top:14px}.day-cell>span{font-size:var(--rd-font-body);color:var(--rd-text);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.8;margin-top:5px}.day-cell .day-empty{margin-top:20px;color:var(--rd-text)}.day-cell.today{background:#f2f7ff;border-color:#dbe8fd}.activity-panel .ant-timeline{padding:8px 23px 0}.activity-panel .ant-timeline-item-head{width:7px;height:7px}.activity-panel .ant-timeline-item-tail{left:3px}.activity-panel .ant-timeline-item-content{margin-left:20px;top:-3px}.activity-item{cursor:pointer}.activity-item p{font-size:var(--rd-font-body);line-height:1.7;margin:0 0 5px;color:var(--rd-text)}.activity-item small{font-size:var(--rd-font-small);color:var(--rd-text)}.page-heading{display:flex;justify-content:space-between;align-items:center;margin:4px 0 25px}.page-heading h1{font-size:var(--rd-font-title);font-weight:600;color:var(--rd-text);margin-bottom:10px;letter-spacing:.5px}.page-heading p{font-size:var(--rd-font-small);color:var(--rd-text);margin:0}.page-heading .ant-btn{font-size:var(--rd-font-body)}.list-summary{background:#fff;border:1px solid #e7ecf3;border-radius:8px;display:grid;grid-template-columns:repeat(4,1fr);padding:24px 10px;margin-bottom:22px}.list-summary>div{display:flex;align-items:center;justify-content:center;gap:10px;border-right:1px solid #edf1f6;color:var(--rd-text);font-size:var(--rd-font-body)}.list-summary>div:last-child{border:0}.list-summary b{font-size:var(--rd-font-title);font-weight:600;color:var(--rd-text);margin-left:13px}.summary-mark{height:7px;width:7px;border-radius:2px;background:#6f9ef4}.mark1{background:#edb05d}.mark2{background:#77c8bc}.mark3{background:#a18de5}.record-tabs{display:flex;justify-content:space-between;align-items:center;padding:0 22px;border-bottom:1px solid #edf1f7}.record-tabs .ant-tabs-nav{margin-bottom:0}.record-tabs .ant-tabs-nav:before{border:0}.record-tabs .ant-tabs-tab{padding:18px 0}.filter-area{padding:20px 22px}.filter-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.secondary-filter{margin-top:12px}.secondary-filter .ant-checkbox-wrapper{font-size:var(--rd-font-body);color:var(--rd-text)}.secondary-filter .muted{margin-left:auto}.record-panel>.ant-table-wrapper .ant-table-pagination{padding:0 20px}.record-panel .ant-table-thead>tr>th:first-child,.record-panel .ant-table-tbody>tr>td:first-child{padding-left:23px}.goal-toolbar{display:flex;align-items:center;gap:12px;margin-bottom:22px}.goal-toolbar .muted{margin-left:auto}.goal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:23px}.goal-card{padding:25px}.goal-card-top{display:flex;gap:10px;align-items:center;font-size:var(--rd-font-small);color:var(--rd-text);margin-bottom:18px}.goal-card-top .ant-tag{margin-left:auto}.goal-card h2{font-size:var(--rd-font-heading);line-height:1.6;color:var(--rd-text);cursor:pointer}.goal-card>p{font-size:var(--rd-font-body);line-height:1.9;color:var(--rd-text);min-height:44px}.goal-card .goal-progress-label{margin-top:25px}.goal-stat-row{display:flex;justify-content:space-around;padding:15px 0 20px;margin-bottom:20px;border-bottom:1px solid #edf1f6}.goal-stat-row>div{display:flex;flex-direction:column;gap:7px;text-align:center}.goal-stat-row b{font-size:var(--rd-font-title);color:var(--rd-text);font-weight:500}.goal-stat-row span{font-size:var(--rd-font-small);color:var(--rd-text)}.criteria-preview{background:#f8fafd;padding:16px 19px;border-radius:6px;min-height:145px}.criteria-preview h4{font-size:var(--rd-font-heading);color:var(--rd-text);font-weight:500}.criteria-preview p{font-size:var(--rd-font-body);line-height:1.6;color:var(--rd-text);margin:8px 0}.criteria-preview p span{font-size:var(--rd-font-small);display:inline-block;color:var(--rd-text);width:25px}.goal-card footer{display:flex;justify-content:space-between;align-items:center;margin-top:17px;color:var(--rd-text);font-size:var(--rd-font-body)}.kanban{display:grid;grid-template-columns:repeat(5,minmax(190px,1fr));gap:14px;overflow:auto;padding:0 20px 25px;background:#fbfcfe}.kanban-col{padding-top:15px}.kanban-col>h4{font-size:var(--rd-font-heading);font-weight:500;display:flex;align-items:center;gap:7px;margin:0 3px 15px;color:var(--rd-text)}.kanban-col>h4>span:last-child{margin-left:auto;color:var(--rd-text);font-size:var(--rd-font-small)}.board-dot{width:7px;height:7px;border-radius:50%;background:#a2aec0}.s1{background:#4d8cf5}.s2{background:#aa8adc}.s3{background:#6ebc9f}.task-card{padding:16px 13px;margin-bottom:12px;background:#fff;border:1px solid #e7edf5;border-radius:6px;cursor:pointer}.task-card:hover{border-color:#a9c8fa;box-shadow:0 4px 12px #527ab115}.task-card>div{display:flex;align-items:center;justify-content:space-between}.task-card small{font-size:var(--rd-font-small);color:var(--rd-text)}.task-card h4{font-size:var(--rd-font-body);font-weight:500;color:var(--rd-text);line-height:1.8;margin:11px 0}.task-card>p{font-size:var(--rd-font-body);color:var(--rd-text)}.task-card .ant-tag{white-space:normal}.task-card footer{display:flex;justify-content:space-between;align-items:center;font-size:var(--rd-font-small);color:var(--rd-text);border-top:1px solid #f1f4f8;padding-top:10px}.task-card footer .ant-space{font-size:var(--rd-font-small)}.week-list{display:flex;flex-direction:column;gap:20px}.week-card-main{padding:25px;display:flex;align-items:center;gap:22px}.week-date{width:72px;background:#f0f5ff;border:1px solid #e1ebfd;border-radius:8px;text-align:center;padding:10px;flex-shrink:0;color:var(--rd-text)}.week-date span{display:block;font-size:var(--rd-font-small)}.week-date b{display:block;font-size:var(--rd-font-number);line-height:1.4;color:#5983bd}.week-date small{font-size:var(--rd-font-small)}.week-card-text{flex:1;min-width:0}.week-card-text>div{display:flex;gap:10px;align-items:center}.week-card-text h2{font-size:var(--rd-font-heading);font-weight:500;margin:0;cursor:pointer}.week-card-text p{font-size:var(--rd-font-body);color:var(--rd-text);margin:12px 0 15px}.week-card-text .ant-space{font-size:var(--rd-font-small);color:var(--rd-text)}.week-metrics{display:flex;justify-content:space-around;border-top:1px solid #edf2f7;background:#fcfdff;padding:18px}.week-metrics>div{font-size:var(--rd-font-small);color:var(--rd-text);display:flex;align-items:center;gap:9px}.week-metrics strong{font-size:var(--rd-font-title);color:var(--rd-text);font-weight:500}.settings-panel{padding:0 23px 24px}.settings-group+.settings-group{border-top:1px solid #e7ecf3;margin-top:24px;padding-top:20px}.settings-group-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.settings-group-heading h2{margin:0;color:var(--rd-text);font-size:var(--rd-font-heading);font-weight:600}.notifications{padding:4px 20px 20px}.notification-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.notification-heading b{font-weight:500}.notification{padding:17px 12px;display:flex;align-items:flex-start;gap:12px;cursor:pointer;border-bottom:1px solid #eef2f7}.notification:hover,.notification.unread{background:#f7faff}.notice-icon{display:flex;align-items:center;justify-content:center;width:29px;height:29px;border-radius:7px;background:#eaf1ff;color:#77a1e6;flex-shrink:0}.notification b{font-size:var(--rd-font-body);line-height:1.7;font-weight:500}.notification p{font-size:var(--rd-font-small);color:var(--rd-text);margin:8px 0 0}.notification .ant-badge{margin-left:auto}.drawer-mark{width:4px;height:15px;background:#367bf1;border-radius:2px;display:inline-block}.detail-hero{padding-bottom:22px;border-bottom:1px solid #eff2f7;margin-bottom:22px}.detail-meta{display:flex;align-items:center;gap:13px;font-size:var(--rd-font-small);color:var(--rd-text)}.detail-hero h2{font-size:var(--rd-font-title);line-height:1.6;color:var(--rd-text);margin:14px 0 20px}.detail-actions .ant-btn{font-size:var(--rd-font-body);margin-bottom:3px}.detail-section{margin-top:25px;margin-bottom:22px}.detail-section h3{font-size:var(--rd-font-heading);font-weight:600;color:var(--rd-text);margin-bottom:14px}.detail-section p{font-size:var(--rd-font-body);line-height:1.9;color:var(--rd-text)}.pre-wrap{white-space:pre-wrap;overflow-wrap:anywhere}.criteria-detail{background:#f6f9ff;border-left:3px solid #9cbbf1;padding:15px 18px;color:var(--rd-text);font-size:var(--rd-font-body);line-height:2}.bug-details{background:#f9fbfe;padding:18px 20px;margin:18px 0;border-radius:6px}.bug-details h4{font-size:var(--rd-font-heading);color:var(--rd-text);font-weight:500;margin-bottom:10px}.bug-details p{font-size:var(--rd-font-body);color:var(--rd-text);line-height:1.8}.linked-row{display:flex;align-items:center;gap:10px;border:1px solid #ecf1f7;padding:11px 14px;margin-bottom:8px;border-radius:5px;font-size:var(--rd-font-body)}.linked-row>.anticon{color:#92add4}.linked-row a{flex:1}.linked-row .ant-tag{margin-left:auto}.attachment-help{display:block;font-size:var(--rd-font-small);color:var(--rd-text);margin:10px 0}.attachment-row{display:flex;align-items:center;gap:10px;background:#fafbfd;border:1px solid #edf1f6;border-radius:5px;margin-top:8px;padding:8px 12px;font-size:var(--rd-font-body)}.attachment-row .ant-btn{margin-left:auto}.detail-timeline{padding:18px 0}.detail-timeline .ant-timeline-item-content{font-size:var(--rd-font-body);color:var(--rd-text)}.detail-timeline b{color:var(--rd-text);font-weight:500}.detail-timeline p{margin:8px 0;line-height:1.7}.detail-timeline details{font-size:var(--rd-font-body);color:var(--rd-text);margin-top:7px}.detail-timeline summary{cursor:pointer}.detail-timeline pre{white-space:pre-wrap;max-height:220px;overflow:auto;font-size:var(--rd-font-body);background:#f8fafd;padding:10px}.comment{display:flex;gap:12px;padding:14px 0;border-bottom:1px solid #eef2f7;margin-bottom:12px}.comment b{font-size:var(--rd-font-body);font-weight:500}.comment small{font-size:var(--rd-font-small);color:var(--rd-text);margin-left:15px}.comment p{font-size:var(--rd-font-body);line-height:1.8;color:var(--rd-text);margin:10px 0}.comment-submit{margin-top:13px}.record-form{padding-top:12px;max-height:68vh;overflow:auto;padding-right:10px}.record-form .ant-form-item-label>label{font-size:var(--rd-font-body);color:var(--rd-text)}.record-form .ant-form-item{margin-bottom:18px}.record-form .ant-input,.record-form .ant-select,.record-form .ant-picker{font-size:var(--rd-font-body)}.form-inset{padding:17px 18px 1px;background:#f8faff;border:1px solid #e9eff9;border-radius:6px;margin-bottom:20px}.form-inset h4{font-size:var(--rd-font-heading);color:var(--rd-text)}.plan-delivery{font-size:var(--rd-font-body);color:var(--rd-text);margin:8px 0}.history-version{background:#f7f9fc;border-radius:5px;padding:15px;margin-top:10px;font-size:var(--rd-font-body);color:var(--rd-text)}.loading{display:flex;height:100vh;align-items:center;justify-content:center;flex-direction:column;color:var(--rd-text);gap:25px}.ant-table-cell{overflow-wrap:anywhere}.ant-drawer-body{scrollbar-width:thin}.ant-progress-inner{background:#eef2f8!important}@media(min-width:1500px){.dashboard-grid{grid-template-columns:minmax(0,1fr) 340px}.welcome h1{font-size:var(--rd-font-title)}.main-content{padding:30px 36px}.work-panel .ant-table-tbody>tr>td{padding-block:20px}.mini-goal{padding-block:14px 22px}.welcome{min-height:220px}}@media(max-width:1200px){.sidebar{width:156px}.main-shell{margin-left:156px}.brand{padding-left:14px}.main-content{padding:22px}.dashboard-grid{grid-template-columns:minmax(0,1fr) 270px}.welcome h1{font-size:var(--rd-font-title)}.welcome-calendar{width:152px;margin:0;padding:15px}.day-cell{padding:7px}.work-panel .ant-table-tbody>tr>td{padding:15px 9px}.stat-card{padding:15px}.stat-desc{font-size:var(--rd-font-small)}.topbar{padding:0 22px}.goal-grid{gap:16px}.goal-card{padding:20px}}@media(max-width:1000px){.sidebar{width:168px}.main-shell{margin-left:152px}.dashboard-grid{grid-template-columns:1fr}.dashboard-grid>section:nth-child(2){display:none}.welcome-calendar{display:none}.topbar-actions{gap:10px}.project-switch{width:145px}.main-content{padding:18px}.goal-grid{grid-template-columns:1fr}.stat-grid{gap:10px}.stat-desc{display:none}.stat-number{font-size:var(--rd-font-number)}.week-card-text>div{flex-wrap:wrap}.week-metrics{flex-wrap:wrap;gap:20px}}@media(max-width:700px){.sidebar{width:64px}.brand{padding:0;justify-content:center}.brand>div,.workspace-label,nav button:not(.active) .nav-count,.nav-group-label,.sidebar-bottom{display:none}nav{padding:0 8px}nav button{font-size:var(--rd-font-body);padding:0;justify-content:center;gap:0}nav button .anticon{font-size:var(--rd-font-title)}.nav-count{display:none}.nav-divider{margin:15px 0}.main-shell{margin-left:64px}.topbar{padding:0 12px;height:60px}.breadcrumb{gap:7px;font-size:var(--rd-font-small)}.project-switch,.topbar-separator{display:none}.user-menu>div{display:none}.main-content{padding:12px}.welcome{padding:20px;min-height:195px}.welcome h1{font-size:var(--rd-font-title);line-height:1.7}.welcome p{font-size:var(--rd-font-body)}.eyebrow{font-size:var(--rd-font-small)}.stat-grid{grid-template-columns:repeat(2,1fr);margin:14px 0}.stat-card{padding:12px}.stat-icon{width:25px;height:25px;font-size:var(--rd-font-body)}.stat-title{font-size:var(--rd-font-small)}.stat-number{font-size:var(--rd-font-number)}.panel-heading{padding:15px}.panel-heading h3{font-size:var(--rd-font-heading)}.work-panel{overflow:auto}.work-panel .ant-table-wrapper{min-width:600px}.work-panel .ant-tabs-tab+.ant-tabs-tab{margin-left:15px}.day-grid{padding:0 10px 12px;gap:4px}.day-cell>div{font-size:var(--rd-font-small)}.day-cell small{display:none}.day-cell{min-height:95px}.day-cell>span{font-size:var(--rd-font-body)}.week-summary{padding:0 15px 15px}.page-heading{align-items:flex-start;gap:12px;flex-wrap:wrap}.page-heading h1{font-size:var(--rd-font-title)}.page-heading p{font-size:var(--rd-font-small);line-height:1.8}.list-summary{padding:16px 5px}.list-summary>div{flex-direction:column;gap:6px;font-size:var(--rd-font-small)}.list-summary b{margin:0;font-size:var(--rd-font-title)}.summary-mark{display:none}.record-tabs{padding:0 12px}.record-tabs .ant-tabs-tab{font-size:var(--rd-font-body)}.filter-area{padding:15px}.filter-row{gap:8px}.filter-row .ant-input-affix-wrapper{width:100%!important}.filter-row .ant-select{width:calc(50% - 5px)!important}.secondary-filter .ant-picker{width:100%!important}.goal-toolbar{flex-wrap:wrap}.goal-toolbar .muted{margin-left:0}.week-card-main{padding:18px;gap:12px;flex-wrap:wrap}.week-card-text h2{font-size:var(--rd-font-heading)}.week-date{width:56px}.week-metrics>div{font-size:var(--rd-font-small);gap:5px}.week-metrics strong{font-size:var(--rd-font-heading)}.ant-drawer-content-wrapper{max-width:100vw!important}}.rich-editor{border:1px solid #dce3ed;border-radius:6px;overflow:hidden}.rich-toolbar{background:#f8fafd;padding:5px 8px;border-bottom:1px solid #eaf0f7;display:flex;justify-content:space-between;align-items:center}.rich-editor .ant-input-textarea{margin-bottom:20px}.rich-editor textarea{border:none!important;box-shadow:none!important}.rich-preview{padding:12px 16px;min-height:130px}.rich-text{color:var(--rd-text);font-size:var(--rd-font-body);line-height:1.9;overflow-wrap:anywhere}.rich-text p{white-space:pre-wrap;margin:0 0 7px}.rich-text h4{font-size:var(--rd-font-heading);color:var(--rd-text);margin:10px 0}.rich-list{padding-left:12px;margin:5px 0}.rich-text strong{font-weight:600;color:var(--rd-text)}@media(max-width:1000px){.dashboard-grid>section:nth-child(2){display:block}.dashboard-grid>section:nth-child(2) .mini-goal{display:inline-block;width:50%;vertical-align:top}.dashboard-grid>section:nth-child(2) .mini-goal+.mini-goal{border-top:0;border-left:1px solid #eef2f7}.stat-title{min-height:30px}.stat-title>span{flex-shrink:0}}@media(max-width:700px){.dashboard-grid>section:nth-child(2) .mini-goal{display:block;width:100%}.dashboard-grid>section:nth-child(2) .mini-goal+.mini-goal{border-left:0;border-top:1px solid #eef2f7}.stat-title{min-height:25px}}.attention-strip{display:flex;align-items:center;gap:24px;margin:-4px 0 20px;padding:12px 18px;background:#f2f6fd;border:1px solid #e6edf8;border-radius:6px;font-size:var(--rd-font-body);color:var(--rd-text)}.attention-strip>span:first-child{color:var(--rd-text)}.attention-strip a{color:var(--rd-text)}.attention-strip b{font-weight:500;margin-left:4px;color:#3d77c9}.attention-strip>span:last-child{margin-left:auto;font-size:var(--rd-font-small)}@media(max-width:700px){.attention-strip{gap:15px;padding:10px}.attention-strip>span:last-child{display:none}}.week-detail-page{padding:24px;overflow:visible}.week-detail-page .detail-hero{margin-bottom:22px}@media(max-width:700px){.week-detail-page{padding:14px}}.week-create-items{margin:16px 0 22px}.week-create-items-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.week-create-items-heading h4{margin:0}.notification-popover{width:min(400px,calc(100vw - 48px));max-height:min(70vh,600px);overflow:auto}.notification-popover .notifications{padding:4px}@media(min-width:701px){.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.mobile-nav-toggle,.mobile-nav-backdrop{display:none}@media(max-width:700px){.sidebar{width:224px;transform:translate(-100%);transition:transform .2s ease;z-index:101;box-shadow:0 8px 28px #1a355322}.sidebar.mobile-open{transform:translate(0)}.sidebar .brand{padding-left:18px;justify-content:flex-start}.sidebar .brand>div,.sidebar .workspace-label,.sidebar .nav-group-label,.sidebar .sidebar-bottom{display:block}.sidebar nav{padding:0 10px}.sidebar nav button{font-size:var(--rd-font-body);padding:0 14px;justify-content:flex-start;gap:10px}.sidebar nav button .anticon{font-size:var(--rd-font-heading)}.sidebar .nav-count{display:inline-block}.mobile-nav-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;border:0;background:#14233b66;z-index:100}.mobile-nav-toggle{display:inline-flex;flex-shrink:0}.main-shell{margin-left:0;width:100%}.topbar{justify-content:flex-start;gap:8px}.topbar-actions{margin-left:auto}.main-content{padding:14px 12px 24px}.welcome{min-height:0}.welcome .ant-space{row-gap:8px!important}.welcome h1{margin-bottom:16px}.record-panel,.work-panel,.week-detail-page{min-width:0}.record-tabs{gap:8px;flex-wrap:wrap;padding-bottom:8px}.record-tabs .ant-tabs{min-width:0;max-width:100%}.filter-row .ant-picker{max-width:100%}.week-detail-page{overflow:hidden}.week-detail-page .ant-table-wrapper,.record-panel .ant-table-wrapper{max-width:100%}.ant-modal{max-width:calc(100vw - 24px);margin:12px auto;padding-bottom:0;top:0}.record-form{max-height:calc(100dvh - 175px)}.record-form .ant-row>.ant-col-12,.record-form .ant-row>.ant-col-8{flex:0 0 100%;max-width:100%}.ant-drawer-content-wrapper{max-width:100vw!important}.ant-descriptions .ant-descriptions-row{display:flex;flex-direction:column}.ant-descriptions .ant-descriptions-item{padding-bottom:12px!important}.goal-card{padding:18px}.week-card-main>.ant-btn{margin-left:auto}.week-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));justify-items:start}.day-grid{grid-template-columns:repeat(5,minmax(95px,1fr));overflow-x:auto}}.mobile-scroll-hint{display:none}@media(max-width:700px){.mobile-scroll-hint{display:block;padding:0 15px 10px;color:var(--rd-text);font-size:var(--rd-font-small)}}.filter-area{overflow-x:auto}.filter-row.unified-filters{flex-wrap:nowrap;width:max-content;min-width:100%}.unified-filters>*{flex-shrink:0}.record-title.feedback-title a{font-size:var(--rd-font-body);line-height:1.5;font-weight:600}.record-title.feedback-title small{font-size:var(--rd-font-small)}body{line-height:1.5715}small{font-size:var(--rd-font-small)}button,input,textarea,select{font-size:var(--rd-font-body)}.team-badge,.calendar-foot,.sidebar-footer{white-space:normal;overflow-wrap:anywhere}.day-cell>div{white-space:normal}.panel-heading,.attention-strip{flex-wrap:wrap}h1,h2{font-size:var(--rd-font-title)}h3,h4{font-size:var(--rd-font-heading)}.loading h1{font-size:var(--rd-font-title)}@media(min-width:701px){.sidebar{width:192px}.main-shell{margin-left:192px}}nav button{white-space:nowrap}
