:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;color:#252b34;background:#f7f8fa;font-size:14px}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}input,select,textarea{outline:none}input:focus,select:focus,textarea:focus{border-color:#1683ef!important;box-shadow:0 0 0 3px #1683ef1c}h1,h2,h3,p{margin:0}h1{font-size:22px}h2{font-size:18px}h3{font-size:14px}
.icp-footer{position:fixed;bottom:0;left:0;right:0;z-index:2;height:24px;display:flex;align-items:center;justify-content:center;background:#ffffffed;border-top:1px solid #e9edf1;font-size:11px}.icp-footer a{color:#7b8792;text-decoration:none}.icp-footer a:hover{color:#1683ef}
.app-header{height:64px;display:flex;align-items:center;gap:18px;padding:0 28px;background:#fff;border-bottom:1px solid #e9ebee}.brand{font-weight:760;font-size:18px;color:#1579e5;white-space:nowrap}.brand-mark{display:inline-grid;place-items:center;background:#1683ed;color:#fff;width:28px;height:28px;border-radius:6px;margin-right:8px}.top-spacer,.page-head .spacer,.toolbar .spacer{flex:1}.header-link{border:0;background:transparent;color:#65707c;padding:8px}.user-badge{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#e7f0ff;color:#1c72cf;font-weight:700}.muted{color:#9199a3}.small{font-size:12px}.button{border:1px solid #dfe4e9;border-radius:6px;background:#fff;color:#34404d;padding:8px 13px;min-height:34px;display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap}.button:hover{background:#f6f9fc}.button.primary{background:#1683ef;border-color:#1683ef;color:#fff}.button.primary:hover{background:#0876e4}.button.danger{color:#d74444}.icon-button{width:32px;height:32px;border:0;border-radius:5px;background:transparent;color:#7f8994;font-size:18px;display:grid;place-items:center}.icon-button:hover{background:#edf1f5;color:#273444}
.page{padding:30px;max-width:1450px;margin:0 auto}.page-head{display:flex;align-items:center;gap:16px;margin-bottom:24px}.tabs{display:flex;gap:20px;border-bottom:1px solid #e9edf1;margin-bottom:18px}.tab{border:0;background:none;padding:12px 2px;color:#858e99;border-bottom:2px solid transparent}.tab.active{color:#1683ef;border-color:#1683ef;font-weight:600}.project-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:15px}.project-card{height:150px;border:1px solid #e5e8ec;border-radius:7px;background:#fff;padding:19px;display:flex;flex-direction:column;text-align:left}.project-card:hover{border-color:#b5d9ff;box-shadow:0 6px 16px #1a385112}.project-icon{width:37px;height:37px;background:#eaf4ff;color:#1882e9;border-radius:6px;display:grid;place-items:center;font-size:20px;margin-bottom:15px}.project-name{font-weight:650;font-size:15px;margin-bottom:5px}.project-meta{margin-top:auto;color:#9ba4ae;font-size:12px}.empty{padding:70px 20px;text-align:center;color:#929aa4}.empty strong{display:block;color:#34404d;font-size:17px;margin-bottom:10px}
.workspace{height:calc(100vh - 64px);display:flex;min-height:500px}.sidebar{width:215px;flex:none;background:#fff;border-right:1px solid #e9edf1;padding:18px 12px;overflow:auto}.side-heading{font-size:12px;color:#a1a8b0;padding:10px 12px}.side-item{border:0;background:transparent;width:100%;text-align:left;display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:5px;color:#687380}.side-item.active{background:#eaf4ff;color:#137ce6;font-weight:600}.side-item:hover{background:#f3f7fb}.main{min-width:0;flex:1;display:flex;flex-direction:column}.project-header{height:64px;background:#fff;border-bottom:1px solid #e9edf1;display:flex;align-items:center;padding:0 25px;gap:14px}.project-header h1{font-size:17px}.project-avatar{background:#eaf4ff;border-radius:6px;width:30px;height:30px;display:grid;place-items:center}.presence{display:flex;align-items:center;min-height:30px;padding-left:5px}.presence-avatar,.presence-more{width:28px;height:28px;margin-left:-5px;border:2px solid #fff;border-radius:50%;display:grid;place-items:center;background:#dbeaf8;color:#3279b9;font-size:11px;font-weight:700;flex:none;cursor:default}.presence-avatar:nth-child(3n+2){background:#e9f1d9;color:#668c2e}.presence-avatar:nth-child(3n+3){background:#f8e8d9;color:#b66a3c}.presence-more{background:#edf0f3;color:#687583;width:auto;min-width:28px;padding:0 5px}
.side-project-heading{display:flex;align-items:center;justify-content:space-between;margin-top:8px}.side-project-heading .icon-button{width:25px;height:25px;font-size:19px;color:#577083}.side-empty{display:block;padding:10px 12px;color:#a1a8b0;font-size:12px}.workflow-picker{display:flex;align-items:center;gap:8px;min-width:205px;color:#687380;font-size:12px}.workflow-picker .element-select-mount{width:145px}.sidebar .side-item{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:760px){.workspace{flex-direction:column}.sidebar{display:flex;width:100%;height:52px;min-height:52px;overflow-x:auto;overflow-y:hidden;align-items:center;gap:5px;padding:5px 12px;border-right:0;border-bottom:1px solid #e9edf1}.sidebar>.side-heading:first-child,.sidebar>.side-item[data-action="home"]{display:none}.side-project-heading{min-width:96px;padding:0 5px;margin:0;white-space:nowrap}.sidebar .side-item{width:auto;min-width:92px;max-width:165px;flex:none;padding:8px}.sidebar .side-empty{white-space:nowrap}.main{min-height:0}.workflow-picker{min-width:200px}}
.toolbar{height:57px;display:flex;align-items:center;gap:10px;padding:0 25px;border-bottom:1px solid #eceef1;background:#fff}.toolbar #task-search{width:230px}.input,.select,.textarea{border:1px solid #e0e4e9;border-radius:5px;background:#fff;color:#2a333d;padding:8px 10px;min-height:35px;width:100%}.textarea{resize:vertical;min-height:90px}.toolbar .select{width:140px}.segmented{display:flex;border:1px solid #e1e5e9;border-radius:6px;overflow:hidden}.segmented button{border:0;border-right:1px solid #e1e5e9;background:#fff;color:#66717d;padding:7px 12px}.segmented button:last-child{border:0}.segmented .active{background:#eaf4ff;color:#147de9}
.board{display:flex;gap:12px;align-items:flex-start;overflow:auto;padding:23px 25px;flex:1}.column{width:268px;min-width:268px;background:#f0f2f4;border-radius:7px;padding:10px;max-height:100%;display:flex;flex-direction:column}.column.drag-over{outline:2px dashed #1683ef;background:#e8f2fc}.column-head{display:flex;align-items:center;gap:7px;padding:5px 6px 13px;font-weight:650}.count{font-size:12px;color:#97a0a9;font-weight:500}.column-body{overflow-y:auto;min-height:35px;flex:0 1 auto}.task-card{background:#fff;border:1px solid #e8eaee;border-radius:6px;padding:12px;margin-bottom:7px;box-shadow:0 1px 2px #1928360a;cursor:grab}.task-card:hover{border-color:#b7d9fb}.task-title{font-size:13px;font-weight:550;line-height:1.5;word-break:break-word}.task-foot{display:flex;align-items:center;gap:7px;margin-top:12px;color:#9ca5ae;font-size:11px}.task-foot .spacer{flex:1}.avatar{width:23px;height:23px;border-radius:50%;background:#d9e8f8;color:#427cb5;font-size:11px;font-weight:700}.add-task{width:100%;border:1px solid #e0e4e8;border-radius:5px;background:#fff;color:#7c8793;height:28px;flex:none}.add-task:hover{color:#1683ef}.add-column{min-width:155px;border:0;background:transparent;color:#8b949e;padding:14px;text-align:left}
.table-wrap{overflow:auto;flex:1;padding:20px 25px}.task-table{width:100%;border-collapse:collapse;background:#fff;border:1px solid #e7eaf0}.task-table th,.task-table td{text-align:left;padding:13px 15px;border-bottom:1px solid #ecedf0;white-space:nowrap}.task-table th{font-size:12px;color:#8b949f;font-weight:600;background:#fbfcfd}.task-table tr:hover td{background:#f8fbff}.task-table td:first-child{white-space:normal;min-width:250px;cursor:pointer}.pill{display:inline-block;padding:3px 8px;border-radius:4px;background:#edf4fc;color:#3480cf;font-size:11px}
.overlay{position:fixed;inset:0;background:#19243469;z-index:10;display:flex;align-items:center;justify-content:center;padding:20px}.modal{background:#fff;width:min(560px,100%);max-height:calc(100vh - 40px);overflow:auto;border-radius:8px;box-shadow:0 20px 60px #16233b2a}.modal-head{display:flex;align-items:center;padding:19px 22px;border-bottom:1px solid #edf0f2}.modal-head h2{flex:1}.modal-body{padding:22px}.modal-foot{padding:14px 22px;border-top:1px solid #edf0f2;display:flex;justify-content:flex-end;gap:8px}.field{margin-bottom:17px}.field label{display:block;font-size:12px;color:#697481;margin-bottom:7px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}
.drawer-backdrop{position:fixed;inset:0;background:#1c293b42;z-index:9}.drawer{position:fixed;right:0;top:0;bottom:0;width:min(850px,100vw);z-index:10;background:#fff;box-shadow:-12px 0 35px #1c293b1a;display:flex;flex-direction:column}.drawer-header{height:64px;display:flex;align-items:center;gap:10px;padding:0 24px;border-bottom:1px solid #edf0f2}.drawer-header .spacer{flex:1}.drawer-content{overflow:auto;flex:1;display:grid;grid-template-columns:minmax(0,1fr) 270px}.detail-main{padding:27px 30px}.detail-title{font-size:22px;font-weight:650;width:100%;border:0;padding:2px 0;margin-bottom:18px}.detail-title:focus{box-shadow:none!important;border-bottom:1px solid #1683ef}.detail-row{display:grid;grid-template-columns:100px minmax(0,1fr);align-items:center;gap:10px;margin-bottom:13px}.detail-row label{font-size:12px;color:#8b959f}.detail-row .input,.detail-row .select{border-color:transparent;background:#f8f9fa}.detail-section{border-top:1px solid #edf0f2;padding-top:22px;margin-top:25px}.detail-section h3{margin-bottom:13px}.activity-pane{border-left:1px solid #edf0f2;padding:22px 18px;display:flex;flex-direction:column;min-height:0}.activity-list{overflow-y:auto;flex:1}.activity-item{font-size:12px;line-height:1.5;margin:16px 0;color:#68727d}.activity-item strong{color:#33404d}.activity-item time{display:block;color:#adb5bd;font-size:11px}.comment-box{display:flex;gap:5px;margin-top:15px}.comment-box input{min-width:0}
.settings-list{display:flex;flex-direction:column;gap:8px}.settings-row{border:1px solid #e8ebef;border-radius:5px;padding:10px 12px;display:flex;align-items:center;gap:10px}.settings-row .spacer{flex:1}.settings-row .muted{font-size:12px}.inline-form{display:flex;gap:8px;margin-top:12px}.inline-form .input{min-width:0}.login-page{min-height:100vh;display:grid;place-items:center;background:#f3f6fa;padding:20px}.login-panel{width:min(390px,100%);background:#fff;border:1px solid #e7eaed;border-radius:8px;padding:32px;box-shadow:0 10px 28px #24384d0b}.login-panel .brand{margin-bottom:30px}.login-panel h1{font-size:20px}.login-panel p{color:#87919c;margin:6px 0 25px}.login-panel .button{width:100%}#toast{position:fixed;left:50%;bottom:26px;transform:translateX(-50%);z-index:30;background:#303b48;color:#fff;border-radius:5px;padding:10px 16px;opacity:0;pointer-events:none;transition:opacity .2s}#toast.show{opacity:1}
@media(max-width:760px){.app-header{padding:0 12px;gap:8px}.app-header>.muted{display:none}.app-header .brand{font-size:15px}.app-header .brand-mark{width:25px;height:25px;margin-right:5px}.app-header .user-badge{display:none}.page{padding:19px 15px}.sidebar{display:none}.project-header{padding:0 14px;gap:8px}.project-header h1{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.presence-avatar:nth-child(n+5),.presence-more{display:none}.toolbar{padding:9px 14px;height:auto;flex-wrap:wrap}.toolbar #task-search{width:100%;order:3}.board{padding:15px}.column{width:250px;min-width:250px}.drawer-content{display:block}.activity-pane{border-left:0;border-top:1px solid #edf0f2;min-height:240px}.detail-main{padding:20px}.field-grid{grid-template-columns:1fr}.header-link{padding:4px}.project-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.project-card{height:140px}}
.task-card{border-top:4px solid #aeb5bd}.task-card.critical{border-top-color:#df4747}.task-card.urgent{border-top-color:#e5ad2c}.task-card.normal{border-top-color:#aeb5bd}.task-card-meta{display:flex;align-items:center;gap:7px;margin-top:13px;color:#8d97a1;font-size:11px}.priority-tag{margin-left:auto;padding:2px 5px;border-radius:3px;background:#eef2f6;color:#52616f;font-weight:700}.task-card-person{display:flex;align-items:center;gap:6px;margin-top:10px;color:#65717e;font-size:12px}.task-card-person .avatar{width:21px;height:21px}
.project-header h1{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-period{max-width:240px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#68798a;font-size:12px;flex-shrink:1}.project-bug-count{display:inline-flex;align-items:center;gap:7px;flex:none;padding:5px 9px;border:1px solid #dceafa;border-radius:5px;background:#f1f7ff;color:#4777a8;font-size:12px;white-space:nowrap}.project-bug-count strong{color:#1676d7;font-size:14px}.filter-bar{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:9px 25px;background:#fff;border-bottom:1px solid #eceef1;flex-wrap:wrap}.filter-group{position:relative}.filter-button{background:#fff;border:1px solid #dde3e9;border-radius:5px;padding:6px 10px;color:#65727e;font-size:12px}.filter-button.selected{border-color:#9dcafa;background:#eff7ff;color:#147de9}.filter-popover{position:absolute;top:calc(100% + 5px);right:0;z-index:7;min-width:165px;padding:7px;background:#fff;border:1px solid #e3e7eb;box-shadow:0 8px 24px #24384d1c;border-radius:6px}.filter-popover label{display:flex;align-items:center;gap:8px;padding:7px 8px;white-space:nowrap;font-size:12px;cursor:pointer}.filter-popover label:hover{background:#f4f8fc}.filter-clear{width:100%;border:0;background:#fff;border-top:1px solid #eef0f3;color:#1683ef;text-align:left;padding:8px;font-size:12px}
@media(max-width:1050px){.project-header{height:auto;min-height:64px;flex-wrap:wrap;padding-top:9px;padding-bottom:9px}.project-period{max-width:200px}}
.rich-editor{border:1px solid #dfe4e9;border-radius:5px;overflow:hidden;background:#fff}.rich-toolbar{display:flex;align-items:center;gap:3px;padding:5px;border-bottom:1px solid #e6eaee;flex-wrap:wrap}.rich-toolbar button,.rich-toolbar label{border:0;background:#fff;color:#4b5662;min-width:31px;height:29px;border-radius:4px;display:inline-flex;align-items:center;justify-content:center;padding:0 7px;cursor:pointer;font-size:12px}.rich-toolbar button:hover,.rich-toolbar label:hover{background:#eef4fb}.rich-toolbar input[type=color]{width:21px;height:21px;border:0;padding:0;background:none;margin-left:4px;cursor:pointer}.rich-content{min-height:130px;max-height:320px;overflow:auto;padding:12px;line-height:1.55;outline:none;word-break:break-word}.rich-content:empty:before{content:'补充背景和验收内容';color:#abb4bd;pointer-events:none}.rich-content img{max-width:100%;height:auto;display:block;margin:8px 0}.rich-content p{margin:0 0 8px}
@media(max-width:760px){.filter-bar{padding:8px 14px}.task-card-meta{flex-wrap:wrap}}
.project-tile{position:relative}.project-tile .project-card{width:100%}.project-archive{position:absolute;right:12px;top:11px;width:28px;height:28px;border:0;border-radius:4px;background:#f4f7fa;color:#75818e;font-size:17px}.project-archive:hover{background:#e6f1fd;color:#1683ef}.notification-anchor{position:relative}.notification-trigger{font-size:17px;position:relative}.notification-trigger span:not(:empty){position:absolute;right:0;top:0;min-width:16px;height:16px;padding:0 3px;border-radius:9px;background:#e54b4b;color:#fff;display:grid;place-items:center;font-size:10px}.notification-panel{position:absolute;right:0;top:44px;width:min(350px,calc(100vw - 24px));max-height:450px;overflow:auto;z-index:15;background:#fff;border:1px solid #e3e8ed;border-radius:6px;box-shadow:0 12px 32px #24384d25}.notification-head{font-weight:700;padding:15px;border-bottom:1px solid #e9edf1}.notification-enable{border:0;background:#eef6ff;color:#1683ef;padding:9px 14px;width:100%;text-align:left;font-size:12px}.notification-item{display:block;width:100%;text-align:left;border:0;border-bottom:1px solid #edf0f3;background:#fff;padding:12px 15px}.notification-item.unread{background:#f3f9ff}.notification-item strong,.notification-item span,.notification-item small{display:block}.notification-item strong{font-size:12px}.notification-item span{font-size:12px;color:#667380;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:5px 0}.notification-item small{color:#a0a9b2}
.chat-backdrop{position:fixed;inset:0;background:#1c293b42;z-index:11}.chat-panel{position:fixed;top:0;right:0;bottom:0;width:min(520px,100vw);background:#fff;z-index:12;box-shadow:-12px 0 35px #1c293b1a;display:flex;flex-direction:column}.chat-head{height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 20px;border-bottom:1px solid #e9edf1}.chat-messages{flex:1;overflow:auto;padding:18px}.chat-message{display:flex;align-items:flex-start;gap:9px;margin-bottom:18px}.chat-message>div:last-child{min-width:0;flex:1}.chat-message-head{display:flex;align-items:center;gap:10px}.chat-message-head strong{font-size:12px}.chat-message-head time{font-size:11px;color:#a1abb5}.chat-message p{margin-top:5px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}.chat-compose{border-top:1px solid #e9edf1;padding:12px 17px 16px;position:relative;display:flex;flex-direction:column;align-items:flex-end;gap:9px}.chat-compose textarea{min-height:75px}.mention{color:#1683ef;font-weight:650}.mention-menu{position:absolute;bottom:calc(100% + 3px);left:0;right:0;background:#fff;border:1px solid #e1e7ec;box-shadow:0 6px 18px #24384d1c;border-radius:5px;max-height:170px;overflow:auto;z-index:4}.mention-menu[hidden],.mention-menu button[hidden]{display:none}.mention-menu button{width:100%;display:flex;align-items:center;gap:8px;border:0;background:#fff;text-align:left;padding:8px 10px}.mention-menu button:hover{background:#f2f8ff}.mention-menu small{color:#9aa5af}
.drawer{width:min(1080px,100vw)}.drawer-content{grid-template-columns:minmax(0,1fr) minmax(340px,42%)}.activity-pane{padding:24px}.activity-list{min-height:0}.comment-box{position:relative;align-items:flex-end}.comment-compose{position:relative;flex:1;min-width:0}.comment-compose textarea{min-height:72px}.comment-box .button{align-self:flex-end}.detail-row{grid-template-columns:115px minmax(0,1fr)}.detail-row:first-of-type .select{min-height:42px}
@media(max-width:760px){.drawer-content{display:block}.activity-pane{min-height:300px}.comment-box{align-items:stretch}.comment-box .button{align-self:flex-end}.chat-panel{width:100vw}.notification-panel{right:-70px}}
.status-flow{display:flex;gap:6px;overflow:auto;margin:0 0 22px;padding:2px 0 5px}.status-step{flex:1;min-width:max-content;display:flex;align-items:center;gap:6px;padding:7px 9px;border-radius:4px;background:#f1f3f5;color:#798590;font-size:11px}.status-step span{width:17px;height:17px;border-radius:50%;display:grid;place-items:center;background:#dce1e6;color:#687480;font-size:10px}.status-step.current{background:#e8f3ff;color:#147de9;font-weight:700}.status-step.current span{background:#1683ef;color:#fff}
@media(min-width:761px){.activity-pane{position:sticky;top:0;height:calc(100vh - 64px)}}
.mention-menu button span:last-child{display:flex;flex-direction:column;gap:2px}.mention-menu button strong{font-size:12px;color:#34404d}.mention-menu button small{font-size:11px}.mention-empty{padding:12px;color:#7c8793;font-size:12px}.comment-compose .mention-menu{bottom:calc(100% + 5px);min-width:220px}.chat-compose .mention-menu{bottom:calc(100% + 3px)}
.comment-compose[data-attachment-drop]{border:1px dashed transparent;border-radius:6px;padding:3px}.comment-compose[data-attachment-drop].drag-over{border-color:#1683ef;background:#f2f8ff}.comment-upload-row{display:flex;align-items:center;gap:8px;color:#9aa5af;font-size:11px;margin-top:5px}.comment-upload-button{border:0;background:transparent;padding:3px 0;color:#1683ef;cursor:pointer;font-size:12px}.pending-attachments{display:flex;flex-direction:column;gap:4px;margin-top:4px}.pending-attachment{display:flex;justify-content:space-between;align-items:center;gap:6px;background:#f2f6fa;border-radius:4px;padding:4px 7px;font-size:11px;overflow-wrap:anywhere}.pending-attachment button{border:0;background:transparent;color:#8793a0;cursor:pointer;font-size:17px}.comment-attachments{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.comment-image{display:flex;flex-direction:column;gap:3px;max-width:180px;color:#1683ef;text-decoration:none;overflow-wrap:anywhere}.comment-image img{display:block;max-width:180px;max-height:150px;border-radius:5px;object-fit:contain;border:1px solid #e4eaf0}.comment-file{display:inline-block;background:#f3f7fa;border:1px solid #e3eaf0;border-radius:4px;padding:6px 8px;color:#1683ef;text-decoration:none;overflow-wrap:anywhere}

.task-create-modal{width:min(920px,100%);display:flex;flex-direction:column;overflow:hidden;border-radius:8px}.task-create-modal .modal-head{padding:20px 28px;border-bottom:0}.task-create-modal .modal-head h2{font-size:17px}.task-create-modal .modal-body{padding:0 28px 24px;overflow:auto;min-height:0}.task-create-modal .modal-foot{padding:17px 28px;flex:none}.create-task-title{display:block;width:100%;border:0;border-bottom:1px solid #edf0f2;padding:18px 0 24px;font-size:25px;font-weight:600;color:#273340}.create-task-title::placeholder{color:#a6aeb6}.create-task-title:focus{box-shadow:none!important;border-color:#1683ef!important}.create-task-context{display:flex;align-items:center;gap:9px;padding:14px 0 18px;border-bottom:1px solid #edf0f2;color:#7b8793}.context-project{max-width:45%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:#f3f6f8;padding:7px 10px;border-radius:5px;color:#53616f}.context-status{width:175px}.context-status .el-select__wrapper{min-height:34px}.create-task-section{padding:23px 0;border-bottom:1px solid #edf0f2}.create-task-label,.create-task-section-head{display:block;font-size:13px;font-weight:650;color:#465260;margin-bottom:13px}.task-create-modal .rich-content{min-height:150px;max-height:260px}.task-create-modal .rich-toolbar{background:#f7f8fa}.create-task-properties{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px;padding:20px 0 2px}.create-task-properties .field{margin-bottom:19px;min-width:0}.create-task-properties .field label{font-size:12px;color:#667380}.create-task-properties .input,.create-task-properties .el-select__wrapper{min-height:38px}.participants-section{border-bottom:0}.participant-select .el-select__wrapper{min-height:42px}.create-task-visibility{margin-right:auto;font-size:12px;color:#8b959f}.element-select-mount{min-width:0}.element-select-mount .el-select__wrapper{border:1px solid #dfe4e9;box-shadow:none;border-radius:5px}.element-select-mount .el-select__wrapper:hover{border-color:#a8c9ed}.element-select-mount .el-select.is-focus .el-select__wrapper{border-color:#1683ef;box-shadow:0 0 0 3px #1683ef1c}.element-select-inner{width:100%}.field-settings-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.field-settings-heading span{color:#8c97a3;font-size:12px}.field-type-icon{width:29px;height:29px;border-radius:5px;background:#eef5fc;color:#3480cf;display:grid;place-items:center}.field-empty{padding:23px 10px;color:#929ba5;font-size:12px;text-align:center;border:1px dashed #dfe5eb;border-radius:5px}.field-add-block{border-top:1px solid #edf0f2;margin-top:25px;padding-top:23px}.field-add-block h3{margin-bottom:17px}.field-add-block .field{min-width:0}.settings-row .icon-button:disabled{opacity:.35;cursor:not-allowed}.settings-row .icon-button:disabled:hover{background:transparent;color:#7f8994}[data-field-options][hidden]{display:none}
.task-table .long-cell{max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table-person{display:inline-flex;align-items:center;gap:5px;margin-right:10px;vertical-align:middle}.table-person .avatar{width:20px;height:20px;flex:none}
.element-field-mount,.element-field-inner,.element-checkbox-mount{min-width:0;width:100%}.element-field-mount .el-input,.element-field-mount .el-textarea,.element-field-mount .el-input-number,.element-field-mount .el-date-editor{width:100%}.element-field-mount .el-input__wrapper{min-height:35px;box-shadow:0 0 0 1px #dfe4e9 inset}.element-field-mount .el-textarea__inner{min-height:84px!important;box-shadow:0 0 0 1px #dfe4e9 inset}.element-checkbox-mount{margin:3px 0}.element-checkbox-mount .el-checkbox__label{color:#5e6b78;font-size:12px}.element-filter-checkbox-mount .el-checkbox{display:flex;width:100%;padding:7px 8px;margin-right:0}.element-filter-checkbox-mount .el-checkbox:hover{background:#f4f8fc}.element-filter-checkbox-mount .el-checkbox__label{font-size:12px}.inline-form .element-field-mount,.inline-form .element-select-mount{flex:1}.detail-row .element-field-mount .el-input__wrapper,.detail-row .element-select-mount .el-select__wrapper{background:#f8f9fa;box-shadow:none}.project-dates .el-date-editor{width:100%}
.element-button-mount{display:inline-flex;vertical-align:middle}.element-button-mount .el-button{margin:0}.settings-modal .modal-head .element-button-mount .el-button{width:32px;height:32px;padding:0;border:0;font-size:18px;color:#7f8994}.settings-modal .settings-row .element-button-mount .el-button{width:29px;height:29px;padding:0;border:0;font-size:17px;color:#7f8994}.settings-modal .element-tabs-mount{margin-bottom:20px}.settings-modal .el-tabs__header{margin-bottom:0}.settings-modal .el-tabs__nav-wrap::after{height:1px;background:#e9edf1}.settings-modal .el-tabs__item{font-size:13px}.settings-modal .element-tabs-mount [hidden]{display:none}.inline-form .element-button-mount{flex:none}
.rich-color-control{display:inline-flex;align-items:center;gap:4px;height:29px;padding:0 6px;color:#4b5662;font-size:12px}.rich-color-control .element-color-inner{display:inline-flex;align-items:center}.rich-color-control .el-color-picker__trigger{width:25px;height:25px;padding:3px}
.base-field-list{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:16px}.base-field-list span{padding:5px 8px;border-radius:4px;background:#f3f5f7;color:#697583;font-size:11px}
.base-field-label{font-size:12px;color:#87929c;margin:2px 0 9px}.settings-modal{width:min(760px,100%);display:flex;flex-direction:column;overflow:hidden}.settings-modal .modal-body{padding:25px 28px;overflow:auto;min-height:0}.settings-modal .modal-head,.settings-modal .modal-foot{flex:none;padding-left:28px;padding-right:28px}
.base-field-settings{margin-bottom:18px}.base-field-item .settings-row{min-height:47px}.base-field-item .settings-row strong{min-width:85px;font-size:13px}.base-field-editor{border:1px solid #e8ebef;border-top:0;border-radius:0 0 5px 5px;padding:16px;background:#fbfcfd}.base-field-editor .field+.field{margin-top:13px}.base-field-actions{display:flex;gap:8px;margin-top:15px}
.project-card.locked{background:#fbfcfd}.project-card.locked .project-icon{background:#edf1f5;color:#69798a;font-size:17px}.project-card.locked .project-meta{color:#5680aa}.access-modal{width:min(480px,100%)}.access-project-name{font-size:16px;font-weight:650;margin-bottom:18px}.access-review{display:grid;gap:15px}.access-review>div{display:grid;gap:5px}.access-review .muted{font-size:12px}.access-review p{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;line-height:1.5}.access-modal .modal-foot{display:flex;gap:8px;justify-content:flex-end}
@media(max-width:760px){.settings-modal .modal-body{padding:18px}.settings-modal .modal-head,.settings-modal .modal-foot{padding-left:18px;padding-right:18px}.settings-modal .tabs{gap:17px;overflow-x:auto;white-space:nowrap}}
@media(max-width:760px){.task-create-modal .modal-head{padding:16px 18px}.task-create-modal .modal-body{padding:0 18px 16px}.task-create-modal .modal-foot{padding:12px 18px}.create-task-title{font-size:20px}.create-task-properties{grid-template-columns:1fr;padding-top:16px}.create-task-context{flex-wrap:wrap}.context-project{max-width:70%}.create-task-visibility{display:none}}
.draft-dock{position:fixed;right:24px;bottom:22px;z-index:8}.draft-trigger{position:relative;width:48px;height:48px;border:1px solid #dbe2e8;border-radius:50%;background:#fff;color:#3978b5;font-size:24px;box-shadow:0 5px 22px #1b334326}.draft-trigger span{position:absolute;right:-5px;top:-5px;min-width:19px;height:19px;border-radius:11px;background:#1683ef;color:#fff;font-size:11px;display:grid;place-items:center;padding:0 4px}.draft-popover{position:absolute;right:0;bottom:60px;width:min(350px,calc(100vw - 32px));max-height:340px;overflow:auto;background:#fff;border:1px solid #e3e8ed;border-radius:8px;box-shadow:0 14px 36px #1b334329}.draft-popover-head{display:flex;align-items:center;justify-content:space-between;padding:12px 15px;border-bottom:1px solid #edf0f2}.draft-item{display:flex;align-items:center;gap:7px;padding:6px 10px;border-bottom:1px solid #f0f2f4}.draft-item>button:first-child{flex:1;min-width:0;border:0;background:transparent;text-align:left;padding:8px 5px}.draft-item strong,.draft-item small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.draft-item small{color:#9aa4ad;margin-top:4px}.draft-empty{padding:25px;text-align:center;color:#8c97a3}.draft-confirm-modal{width:min(480px,100%)}.draft-confirm-copy{color:#687582;line-height:1.6}.draft-confirm-modal .modal-foot{flex-wrap:wrap}.import-modal{width:min(880px,100%)}.import-help{font-size:12px;color:#74808d;line-height:1.5;margin-bottom:16px}.import-file-picker{display:inline-flex;align-items:center;border:1px dashed #a9c7e3;border-radius:6px;padding:12px 18px;color:#1683ef;cursor:pointer}.import-file-picker input{position:absolute;width:1px;height:1px;opacity:0}.import-summary{display:flex;gap:14px;margin:18px 0 10px}.import-summary span{color:#7c8792}.import-mapping{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px}.import-mapping label{display:block;min-width:0}.import-mapping label>span{display:block;font-size:12px;color:#66727f;margin-bottom:5px}.import-preview{margin-top:20px}.import-preview>strong{display:block;margin-bottom:9px}.import-preview-table{overflow:auto;max-height:235px;border:1px solid #e3e8ed;border-radius:5px}.import-preview table{border-collapse:collapse;width:100%;font-size:12px}.import-preview th,.import-preview td{white-space:nowrap;border-bottom:1px solid #edf0f2;padding:8px 11px;text-align:left}.import-preview th{background:#f7f9fb;color:#6f7b86}@media(max-width:760px){.draft-dock{right:14px;bottom:14px}.import-mapping{grid-template-columns:1fr}.import-modal .modal-body{padding:16px}}
.workflow-picker{flex:none}
.avatar{display:inline-grid;place-items:center}
.sidebar-project{position:relative;display:flex;align-items:center;border-radius:5px}.sidebar-project:hover{background:#f3f7fb}.sidebar-project.active{background:#eaf4ff}.sidebar-project .side-item{min-width:0;flex:1;background:transparent}.sidebar-project.active .side-item{color:#137ce6;font-weight:600}.sidebar-project-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:1}.sidebar-project-icon{flex:none}.sidebar-project-grip{color:#8f9ba6;font-size:14px;letter-spacing:-4px;padding:8px 12px 8px 5px;cursor:grab;user-select:none;opacity:0}.sidebar-project:hover .sidebar-project-grip,.sidebar-project-grip:focus{opacity:1}.sidebar-project-grip:active{cursor:grabbing}.sidebar-project.dragging{opacity:.45}.sidebar-project.drop-before::before,.sidebar-project.drop-after::after{content:"";position:absolute;left:8px;right:8px;height:2px;background:#1683ef;border-radius:2px}.sidebar-project.drop-before::before{top:-3px}.sidebar-project.drop-after::after{bottom:-3px}
.sidebar.sorting-projects .sidebar-project .side-item{pointer-events:none}
@media(max-width:760px){.workspace{flex-direction:column}.workspace .sidebar{display:flex;width:100%;height:52px;min-height:52px;overflow-x:auto;overflow-y:hidden;align-items:center;gap:5px;padding:5px 12px;border-right:0;border-bottom:1px solid #e9edf1}.workspace .sidebar>.side-heading:first-child,.workspace .sidebar>.side-item[data-action="home"]{display:none}.workspace .sidebar .side-project-heading{min-width:96px;padding:0 5px;margin:0;white-space:nowrap}.workspace .sidebar .side-item{width:auto;min-width:92px;max-width:165px;flex:none;padding:8px}.workspace .sidebar .side-empty{white-space:nowrap}.workspace .main{min-height:0}}
