*{margin:0;-webkit-tap-highlight-color:transparent}html,body{-webkit-user-select:none;-moz-user-select:none;user-select:none;width:100%;height:100%}body{overflow-x:hidden;font-size:16px}uni-app,uni-page,uni-page-wrapper,uni-page-body{display:block;box-sizing:border-box;width:100%}uni-page-wrapper{position:relative}#app,uni-app,uni-page,uni-page-wrapper{height:100%}.uni-mask{position:fixed;z-index:999;top:0;right:0;left:0;bottom:0;background:rgba(0,0,0,.5)}.uni-fade-enter-active,.uni-fade-leave-active{transition-duration:.25s;transition-property:opacity;transition-timing-function:ease}.uni-fade-enter-from,.uni-fade-leave-active{opacity:0}.uni-loading,uni-button[loading]:before{background-color:transparent;background-image:url(data:image/svg+xml;base64,\ PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMjAiIGhlaWdodD0iMTIwIiB2aWV3Qm94PSIwIDAgMTAwIDEwMCI+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgxMDB2MTAwSDB6Ii8+PHJlY3Qgd2lkdGg9IjciIGhlaWdodD0iMjAiIHg9IjQ2LjUiIHk9IjQwIiBmaWxsPSIjRTlFOUU5IiByeD0iNSIgcnk9IjUiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDAgLTMwKSIvPjxyZWN0IHdpZHRoPSI3IiBoZWlnaHQ9IjIwIiB4PSI0Ni41IiB5PSI0MCIgZmlsbD0iIzk4OTY5NyIgcng9IjUiIHJ5PSI1IiB0cmFuc2Zvcm09InJvdGF0ZSgzMCAxMDUuOTggNjUpIi8+PHJlY3Qgd2lkdGg9IjciIGhlaWdodD0iMjAiIHg9IjQ2LjUiIHk9IjQwIiBmaWxsPSIjOUI5OTlBIiByeD0iNSIgcnk9IjUiIHRyYW5zZm9ybT0icm90YXRlKDYwIDc1Ljk4IDY1KSIvPjxyZWN0IHdpZHRoPSI3IiBoZWlnaHQ9IjIwIiB4PSI0Ni41IiB5PSI0MCIgZmlsbD0iI0EzQTFBMiIgcng9IjUiIHJ5PSI1IiB0cmFuc2Zvcm09InJvdGF0ZSg5MCA2NSA2NSkiLz48cmVjdCB3aWR0aD0iNyIgaGVpZ2h0PSIyMCIgeD0iNDYuNSIgeT0iNDAiIGZpbGw9IiNBQkE5QUEiIHJ4PSI1IiByeT0iNSIgdHJhbnNmb3JtPSJyb3RhdGUoMTIwIDU4LjY2IDY1KSIvPjxyZWN0IHdpZHRoPSI3IiBoZWlnaHQ9IjIwIiB4PSI0Ni41IiB5PSI0MCIgZmlsbD0iI0IyQjJCMiIgcng9IjUiIHJ5PSI1IiB0cmFuc2Zvcm09InJvdGF0ZSgxNTAgNTQuMDIgNjUpIi8+PHJlY3Qgd2lkdGg9IjciIGhlaWdodD0iMjAiIHg9IjQ2LjUiIHk9IjQwIiBmaWxsPSIjQkFCOEI5IiByeD0iNSIgcnk9IjUiIHRyYW5zZm9ybT0icm90YXRlKDE4MCA1MCA2NSkiLz48cmVjdCB3aWR0aD0iNyIgaGVpZ2h0PSIyMCIgeD0iNDYuNSIgeT0iNDAiIGZpbGw9IiNDMkMwQzEiIHJ4PSI1IiByeT0iNSIgdHJhbnNmb3JtPSJyb3RhdGUoLTE1MCA0NS45OCA2NSkiLz48cmVjdCB3aWR0aD0iNyIgaGVpZ2h0PSIyMCIgeD0iNDYuNSIgeT0iNDAiIGZpbGw9IiNDQkNCQ0IiIHJ4PSI1IiByeT0iNSIgdHJhbnNmb3JtPSJyb3RhdGUoLTEyMCA0MS4zNCA2NSkiLz48cmVjdCB3aWR0aD0iNyIgaGVpZ2h0PSIyMCIgeD0iNDYuNSIgeT0iNDAiIGZpbGw9IiNEMkQyRDIiIHJ4PSI1IiByeT0iNSIgdHJhbnNmb3JtPSJyb3RhdGUoLTkwIDM1IDY1KSIvPjxyZWN0IHdpZHRoPSI3IiBoZWlnaHQ9IjIwIiB4PSI0Ni41IiB5PSI0MCIgZmlsbD0iI0RBREFEQSIgcng9IjUiIHJ5PSI1IiB0cmFuc2Zvcm09InJvdGF0ZSgtNjAgMjQuMDIgNjUpIi8+PHJlY3Qgd2lkdGg9IjciIGhlaWdodD0iMjAiIHg9IjQ2LjUiIHk9IjQwIiBmaWxsPSIjRTJFMkUyIiByeD0iNSIgcnk9IjUiIHRyYW5zZm9ybT0icm90YXRlKC0zMCAtNS45OCA2NSkiLz48L3N2Zz4=);background-repeat:no-repeat}.uni-loading{width:20px;height:20px;display:inline-block;vertical-align:middle;animation:uni-loading 1s steps(12,end) infinite;background-size:100%}@keyframes uni-loading{0%{transform:rotate3d(0,0,1,0)}to{transform:rotate3d(0,0,1,360deg)}}html{--primary-color: #007aff;--UI-BG: #fff;--UI-BG-1: #f7f7f7;--UI-BG-2: #fff;--UI-BG-3: #f7f7f7;--UI-BG-4: #4c4c4c;--UI-BG-5: #fff;--UI-FG: #000;--UI-FG-0: rgba(0, 0, 0, .9);--UI-FG-HALF: rgba(0, 0, 0, .9);--UI-FG-1: rgba(0, 0, 0, .5);--UI-FG-2: rgba(0, 0, 0, .3);--UI-FG-3: rgba(0, 0, 0, .1)}uni-page[data-type] uni-page-body{background-color:transparent}body:after{position:fixed;content:"";left:-1000px;top:-1000px;animation:shadow-preload .1s;animation-delay:3s}@keyframes shadow-preload{0%{background-image:url(https://cdn.dcloud.net.cn/img/shadow-grey.png)}to{background-image:url(https://cdn.dcloud.net.cn/img/shadow-grey.png)}}.uni-async-error{position:absolute;left:0;right:0;top:0;bottom:0;color:#999;padding:100px 10px;text-align:center}.uni-async-loading{box-sizing:border-box;width:100%;padding:50px;text-align:center}.uni-async-loading .uni-loading{width:30px;height:30px}uni-page-head{display:block;box-sizing:border-box}.uni-page-head{position:fixed;left:var(--window-left);right:var(--window-right);height:44px;height:calc(44px + constant(safe-area-inset-top));height:calc(44px + env(safe-area-inset-top));padding:7px 3px;padding-top:calc(7px + constant(safe-area-inset-top));padding-top:calc(7px + env(safe-area-inset-top));display:flex;overflow:hidden;justify-content:space-between;box-sizing:border-box;z-index:998;color:#fff;background-color:#000;transition-property:all}.uni-page-head *{box-sizing:border-box}.uni-page-head .uni-btn-icon{overflow:hidden;min-width:1em;font-style:normal}.uni-page-head-titlePenetrate,.uni-page-head-titlePenetrate .uni-page-head-bd,.uni-page-head-titlePenetrate .uni-page-head-bd *{pointer-events:none}.uni-page-head-titlePenetrate *{pointer-events:auto}.uni-page-head.uni-page-head-transparent .uni-page-head-ft>div{justify-content:center}.uni-page-head~.uni-placeholder{width:100%;height:44px;height:calc(44px + constant(safe-area-inset-top));height:calc(44px + env(safe-area-inset-top))}.uni-placeholder-titlePenetrate{pointer-events:none}.uni-page-head-hd{display:flex;align-items:center;font-size:16px}.uni-page-head-bd{position:absolute;left:70px;right:70px;min-width:0;-webkit-user-select:auto;-moz-user-select:auto;user-select:auto}.uni-page-head-btn{position:relative;width:auto;margin:0 2px;word-break:keep-all;white-space:pre;cursor:pointer;font-size:0px}.uni-page-head-transparent .uni-page-head-btn{display:flex;align-items:center;width:32px;height:32px;border-radius:50%;background-color:rgba(0,0,0,.5)}.uni-page-head-btn-red-dot:after{content:attr(badge-text);position:absolute;right:0;top:0;background-color:red;color:#fff;width:18px;height:18px;line-height:18px;border-radius:18px;overflow:hidden;transform:scale(.5) translate(40%,-40%);transform-origin:100% 0}.uni-page-head-btn-red-dot[badge-text]:after{font-size:12px;width:auto;min-width:18px;max-width:42px;text-align:center;padding:0 3px;transform:scale(.7) translate(40%,-40%)}.uni-page-head-btn-select svg{vertical-align:middle;margin-left:2px;transform:rotate(270deg) scale(.8)}.uni-page-head-search{position:relative;display:flex;flex:1;margin:0 2px;line-height:30px;font-size:15px}.uni-page-head-search-input{width:100%;height:100%;padding-left:34px;text-align:left}.uni-page-head-search-input .uni-input-input:disabled{pointer-events:none}.uni-page-head-search-placeholder{position:absolute;max-width:100%;height:100%;padding-left:34px;overflow:hidden;word-break:keep-all;white-space:pre}.uni-page-head-search-placeholder-right{right:0}.uni-page-head-search-placeholder-center{left:50%;transform:translate(-50%)}.uni-page-head-search-icon{position:absolute;top:0;left:2px;width:30px;height:30px;display:flex;justify-content:center;align-items:center}.uni-page-head-ft{display:flex;align-items:center;flex-direction:row-reverse;font-size:13px}.uni-page-head__title{font-weight:700;font-size:16px;line-height:30px;text-align:center;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.uni-page-head__title .uni-loading{width:16px;height:16px;margin-top:-3px}.uni-page-head__title .uni-page-head__title_image{width:auto;height:26px;vertical-align:middle}.uni-page-head-shadow{overflow:visible}.uni-page-head-shadow:after{content:"";position:absolute;left:0;right:0;top:100%;height:5px;background-size:100% 100%}uni-page-head[uni-page-head-type=default]~uni-page-wrapper{height:calc(100% - 44px);height:calc(100% - 44px - constant(safe-area-inset-top));height:calc(100% - 44px - env(safe-area-inset-top))}.uni-page-head-shadow-grey:after{background-image:url(https://cdn.dcloud.net.cn/img/shadow-grey.png)}.uni-page-head-shadow-blue:after{background-image:url(https://cdn.dcloud.net.cn/img/shadow-blue.png)}.uni-page-head-shadow-green:after{background-image:url(https://cdn.dcloud.net.cn/img/shadow-green.png)}.uni-page-head-shadow-orange:after{background-image:url(https://cdn.dcloud.net.cn/img/shadow-orange.png)}.uni-page-head-shadow-red:after{background-image:url(https://cdn.dcloud.net.cn/img/shadow-red.png)}.uni-page-head-shadow-yellow:after{background-image:url(https://cdn.dcloud.net.cn/img/shadow-yellow.png)}.project-detail{height:100vh;background:#f6f7fb;overflow:hidden}.custom-nav-bar{position:fixed;top:0;left:0;right:0;z-index:999;background:#6366f1}.custom-nav-bar .nav-status-bar{width:100%}.custom-nav-bar .nav-content{display:flex;align-items:center;justify-content:space-between;height:44px;padding:0 12px}.custom-nav-bar .nav-left-group{display:flex;align-items:center;gap:4px}.custom-nav-bar .nav-left{width:44px;height:44px;display:flex;align-items:center;justify-content:center}.custom-nav-bar .nav-menu-btn{width:44px;height:44px;display:flex;align-items:center;justify-content:center;display:none}.custom-nav-bar .nav-menu-btn .icon{margin-right:0}.custom-nav-bar .nav-title{font-size:17px;font-weight:600;color:#fff}.custom-nav-bar .nav-right{display:flex;align-items:center;gap:10px}.custom-nav-bar .nav-refresh-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:rgba(255,255,255,.18);transition:all .2s ease}.custom-nav-bar .nav-refresh-btn:active{transform:scale(.9);background:rgba(255,255,255,.32)}.custom-nav-bar .nav-refresh-btn.is-loading{pointer-events:none;opacity:.7}.custom-nav-bar .nav-refresh-btn .icon{margin-right:0}.custom-nav-bar .nav-auto-btn{width:32px;height:32px;padding:0;display:flex;align-items:center;justify-content:center;border-radius:50%;background:rgba(255,255,255,.18);transition:all .2s ease;flex-shrink:0}.custom-nav-bar .nav-auto-btn:active{transform:scale(.9);background:rgba(255,255,255,.32)}.custom-nav-bar .nav-auto-btn.is-loading{pointer-events:none;opacity:.7}.custom-nav-bar .nav-auto-btn.is-running{animation:auto-pulse 1.5s ease-in-out infinite;background:rgba(255,255,255,.35)}.custom-nav-bar .nav-auto-btn .icon{margin-right:0}.custom-nav-bar .nav-auto-btn .nav-auto-text{font-size:10px;color:#fff;font-weight:600;line-height:1;white-space:nowrap}.custom-nav-bar .nav-auto-btn .nav-auto-icon{display:flex;align-items:center;justify-content:center}.custom-nav-bar .nav-doc-chat-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:rgba(255,255,255,.18);transition:all .2s ease}.custom-nav-bar .nav-doc-chat-btn:active{transform:scale(.9);background:rgba(255,255,255,.32)}.custom-nav-bar .nav-doc-chat-btn.active{background:rgba(255,255,255,.35);box-shadow:0 0 0 2px rgba(255,255,255,.15)}.custom-nav-bar .nav-doc-chat-btn .icon{margin-right:0}@keyframes auto-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.08)}}.fixed-bottom-area{position:fixed;bottom:0;left:0;right:0;z-index:210;background:#fff;box-shadow:0 -2px 10px rgba(0,0,0,.08)}.project-info-section{background:#fff;padding:10px 16px}.project-info-section.compact{padding:10px 16px 8px}.project-info-section.compact .compact-info-row{display:flex;align-items:center;justify-content:space-between}.project-info-section.compact .compact-info-row.compact-info-row-2{margin-top:8px}.project-info-section.compact .compact-project-name{font-size:16px;font-weight:700;color:#1e293b;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-right:8px}.project-info-section.compact .project-agent{display:flex;align-items:center;gap:4px}.project-info-section.compact .project-agent .agent-text{font-size:12px;color:#94a3b8}.project-info-section.compact .compact-progress{display:flex;align-items:center;gap:8px}.project-info-section.compact .compact-progress .progress-label{font-size:12px;color:#64748b}.project-info-section.compact .compact-progress .progress-value{font-size:12px;font-weight:600;color:#6366f1}.project-info-section.compact .compact-progress .progress-bar-container.compact-bar{width:80px}.project-info-section.compact .compact-progress .progress-bar-container.compact-bar .progress-track{height:4px;background:#e2e8f0;border-radius:2px;overflow:hidden}.project-info-section.compact .compact-progress .progress-bar-container.compact-bar .progress-fill{height:100%;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:2px;transition:width .4s cubic-bezier(.4,0,.2,1)}.status-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:8px;font-size:12px;font-weight:500;flex-shrink:0}.doc-chat-header-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:8px;background:#dbeafe;color:#2563eb;font-size:12px;font-weight:500;flex-shrink:0;cursor:pointer;transition:all .15s ease}.doc-chat-header-badge:active{transform:scale(.96)}.doc-chat-header-badge .doc-chat-header-badge-text{line-height:1}.doc-chat-header-badge .doc-chat-header-badge-close{font-size:14px;line-height:1;margin-left:2px;opacity:.7}.detail-content{padding-left:16px;padding-right:16px;overflow:hidden;box-sizing:border-box;display:flex;flex-direction:column;background:#fff}.tab-content{flex:1;overflow-y:auto;display:flex;flex-direction:column}.tabs-section{background:#fff;position:relative}.tabs-section .safe-area-bottom{height:constant(safe-area-inset-bottom);height:env(safe-area-inset-bottom)}.detail-tabs{white-space:nowrap}.tabs-container{display:flex;padding:12px 16px;gap:8px}.detail-tab{display:inline-flex;align-items:center;gap:6px;padding:10px 18px;border-radius:18px;font-size:14px;font-weight:500;color:#64748b;background:#f6f7fb;transition:all .2s;white-space:nowrap;border:1px solid transparent;position:relative}.detail-tab .tab-icon-wrap{display:inline-flex;align-items:center;justify-content:center}.detail-tab .tab-label{line-height:1}.detail-tab .tab-indicator{display:none}.detail-tab:active{background:#f1f3f9}.detail-tab.active{background:rgba(99,102,241,.1);color:#6366f1;border-color:rgba(99,102,241,.2)}.doc-unified-tab,.plan-unified-tab,.bug-unified-tab{display:flex;flex-direction:row;gap:12px;height:100%;overflow:hidden;background:#fff}.doc-tree{width:308px;flex-shrink:0;height:100%;overflow-y:auto;padding-right:4px;scrollbar-width:none;-ms-overflow-style:none}.doc-tree::-webkit-scrollbar{display:none}.doc-detail{flex:1;background:#fff;border-radius:0;padding:16px;box-shadow:0 1px 3px rgba(0,0,0,.04),0 1px 2px rgba(0,0,0,.02);height:100%;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none}.doc-detail::-webkit-scrollbar{display:none}.tree-section{margin-bottom:12px}.tree-section-header{display:flex;align-items:center;gap:8px;padding:10px 12px;background:#fff;border-radius:14px;box-shadow:0 1px 3px rgba(0,0,0,.04),0 1px 2px rgba(0,0,0,.02)}.tree-section-header .tree-section-title{flex:1;font-size:14px;font-weight:600;color:#1e293b}.tree-section-header .tree-section-count{font-size:11px;color:#94a3b8;background:#f1f3f9;padding:1px 6px;border-radius:8px}.tree-section-body{padding-left:8px;margin-top:4px}.tree-module{margin-bottom:2px;border-radius:8px;overflow:hidden}.tree-module-header{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:8px;transition:background .15s ease}.tree-module-header.expanded{background:rgba(99,102,241,.04)}.tree-module-header:active{background:#f6f7fb}.tree-module-header .module-status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.tree-module-header .module-status-dot.todo{background:#9ca3af}.tree-module-header .module-status-dot.in_progress{background:#3b82f6;box-shadow:0 0 6px rgba(59,130,246,.4)}.tree-module-header .module-status-dot.done{background:#10b981}.tree-module-header .module-status-dot.verified{background:#059669;box-shadow:0 0 6px rgba(5,150,105,.4)}.tree-module-header .tree-module-name{flex:1;font-size:13px;font-weight:500;color:#1e293b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tree-module-header .tree-module-badge{font-size:10px;padding:1px 6px;border-radius:8px;flex-shrink:0;font-weight:500}.tree-module-header .tree-module-badge.todo{background:rgba(156,163,175,.12);color:#9ca3af}.tree-module-header .tree-module-badge.in_progress{background:rgba(59,130,246,.1);color:#3b82f6}.tree-module-header .tree-module-badge.done{background:rgba(16,185,129,.1);color:#10b981}.tree-module-header .tree-module-badge.verified{background:rgba(5,150,105,.1);color:#059669}.tree-module-header .tree-module-doc-count{font-size:10px;color:#94a3b8;flex-shrink:0}.tree-module-docs{padding-left:8px;position:relative}.tree-module-docs:before{content:"";position:absolute;top:0;bottom:8px;left:16px;width:1.5px;background:linear-gradient(to bottom,rgba(99,102,241,.12) 0%,transparent 100%);border-radius:1px}.tree-item{display:flex;align-items:center;gap:8px;padding:7px 12px;border-radius:8px;font-size:13px;color:#64748b;transition:all .15s ease;position:relative}.tree-item:active{background:#f6f7fb}.tree-item.active{background:rgba(99,102,241,.08);color:#6366f1}.tree-item.tree-item-error{color:#dc2626;opacity:.7}.tree-item.tree-item-sub{font-size:12px}.tree-item .tree-item-text{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tree-item-delete{padding:2px;margin-left:auto;flex-shrink:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:rgba(0,0,0,.55);color:#fff;opacity:0;transition:opacity .15s ease}.tree-item-delete:active{background:rgba(0,0,0,.8)}.tree-item:hover .tree-item-delete,.tree-item:active .tree-item-delete{opacity:1}.tree-empty{padding:12px;text-align:center;font-size:12px;color:#94a3b8}.tree-empty.tree-empty-sub{padding:8px 12px}.tree-section-action{display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 12px;margin-top:4px;background:rgba(99,102,241,.06);color:#6366f1;border-radius:8px;font-size:12px;font-weight:500;border:1px dashed rgba(99,102,241,.25);transition:all .2s}.tree-section-action:active{background:rgba(99,102,241,.12);transform:scale(.98)}.doc-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;text-align:center;height:100%}.doc-placeholder .doc-placeholder-text{font-size:14px;color:#94a3b8;margin-top:12px}.doc-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;gap:12px;color:#94a3b8;font-size:14px;height:100%}.doc-loading .doc-loading-spinner{width:24px;height:24px;border:3px solid #E2E8F0;border-top-color:#6366f1;border-radius:50%;animation:doc-spin .8s linear infinite}@keyframes doc-spin{to{transform:rotate(360deg)}}.doc-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;gap:12px;height:100%}.doc-error .doc-error-text{font-size:14px;color:#dc2626;text-align:center}.doc-error .doc-error-actions{display:flex;gap:12px;margin-top:8px}.doc-action-bar{display:flex;justify-content:flex-end;padding:0 0 12px;border-bottom:1px solid #F1F5F9;margin-bottom:16px}.doc-action-buttons{display:flex;gap:8px}.doc-action-btn{display:flex;align-items:center;gap:4px;padding:6px 12px;border-radius:8px;font-size:12px;font-weight:500;transition:all .2s}.doc-action-btn:active{transform:scale(.96)}.doc-action-btn.chat{background:#dbeafe;color:#2563eb}.doc-action-btn.edit{background:rgba(99,102,241,.1);color:#6366f1}.doc-action-btn.refresh{background:#d1fae5;color:#059669}.doc-action-btn.version{background:#dbeafe;color:#2563eb}.doc-action-btn.rollback{background:#fef3c7;color:#d97706}.doc-action-btn.delete{background:#fee2e2;color:#dc2626}.doc-action-btn.cancel{background:#f1f3f9;color:#64748b}.doc-action-btn.save{background:#6366f1;color:#fff}.doc-action-btn.save.disabled{opacity:.6;pointer-events:none}.doc-viewer-wrapper{display:flex;flex-direction:column;height:100%}.doc-editor{flex:1;display:flex;flex-direction:column}.doc-edit-field{margin-bottom:16px}.doc-edit-field.doc-edit-field-content{flex:1;display:flex;flex-direction:column}.doc-edit-label{font-size:12px;color:#94a3b8;display:block;margin-bottom:6px;font-weight:500}.doc-edit-input{width:100%;height:40px;background:#f6f7fb;border:1px solid #E2E8F0;border-radius:8px;padding:0 12px;font-size:14px;color:#1e293b;box-sizing:border-box}.doc-edit-input:focus{border-color:#6366f1}.doc-edit-picker{height:40px;line-height:40px;background:#f6f7fb;border:1px solid #E2E8F0;border-radius:8px;padding:0 12px;font-size:14px;color:#1e293b}.doc-edit-textarea{width:100%;min-height:300px;background:#f6f7fb;border:1px solid #E2E8F0;border-radius:8px;padding:12px;font-size:14px;color:#1e293b;line-height:1.6;box-sizing:border-box;font-family:SF Mono,Monaco,Consolas,monospace}.doc-edit-textarea:focus{border-color:#6366f1}.doc-new-popup{width:360px;max-width:90vw;background:#fff;border-radius:18px;padding:20px;box-shadow:0 20px 40px -8px rgba(0,0,0,.12),0 8px 24px -4px rgba(0,0,0,.06)}.doc-new-popup-header{margin-bottom:16px}.doc-new-popup-header .doc-new-popup-title{font-size:18px;font-weight:700;color:#1e293b}.doc-new-popup-body{margin-bottom:20px}.doc-new-popup-actions{display:flex;gap:12px}.doc-new-popup-actions .btn-cancel,.doc-new-popup-actions .btn-confirm-create{flex:1;padding:12px;border-radius:14px;font-size:14px;font-weight:600;text-align:center;transition:all .2s}.doc-new-popup-actions .btn-cancel:active,.doc-new-popup-actions .btn-confirm-create:active{transform:scale(.98)}.doc-new-popup-actions .btn-cancel{background:#f1f3f9;color:#64748b}.doc-new-popup-actions .btn-confirm-create{background:#6366f1;color:#fff}.doc-new-popup-actions .btn-confirm-create.disabled{opacity:.6;pointer-events:none}.doc-version-popup-mask{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.4);z-index:999;display:flex;align-items:center;justify-content:center}.doc-version-popup{width:420px;max-width:90vw;max-height:70vh;background:#fff;border-radius:18px;box-shadow:0 20px 40px -8px rgba(0,0,0,.12),0 8px 24px -4px rgba(0,0,0,.06);display:flex;flex-direction:column;overflow:hidden}.doc-version-popup-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #F1F5F9}.doc-version-popup-header .doc-version-popup-title{font-size:16px;font-weight:700;color:#1e293b}.doc-version-popup-header .doc-version-popup-close{padding:4px}.doc-version-popup-body{padding:12px 0;overflow-y:auto;flex:1}.doc-version-empty{padding:30px;text-align:center;font-size:13px;color:#94a3b8}.doc-version-item{display:flex;align-items:center;padding:12px 20px}.doc-version-item:active{background:#f6f7fb}.doc-version-item.current{background:rgba(99,102,241,.04)}.doc-version-item-main{flex:1;min-width:0}.doc-version-item-info{display:flex;align-items:center;gap:8px;margin-bottom:4px}.doc-version-sha{font-size:12px;font-family:SF Mono,Monaco,Consolas,monospace;color:#94a3b8;background:#f1f3f9;padding:1px 6px;border-radius:4px}.doc-version-badge{font-size:10px;padding:1px 6px;border-radius:4px;font-weight:500}.doc-version-badge.current{background:rgba(16,185,129,.1);color:#10b981}.doc-version-message{font-size:13px;color:#1e293b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}.doc-version-meta{font-size:11px;color:#94a3b8;margin-top:2px;display:block}.doc-version-item-action{padding:4px 10px;background:rgba(99,102,241,.1);color:#6366f1;border-radius:8px;font-size:12px;font-weight:500;flex-shrink:0;margin-left:12px}.doc-version-item-action:active{background:rgba(99,102,241,.2)}.submit-bug-btn{display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 12px;margin-bottom:8px;background:rgba(99,102,241,.1);color:#6366f1;border-radius:8px;font-size:13px;font-weight:500;transition:all .2s}.submit-bug-btn:active{background:rgba(99,102,241,.2);transform:scale(.98)}.req-toolbar{display:flex;flex-direction:column;gap:8px;margin-bottom:8px}.req-tabs{display:flex;flex-direction:column;gap:4px;background:#f6f7fb;border-radius:8px;padding:2px}.req-tab-item{text-align:center;padding:8px 0;border-radius:8px;font-size:12px;color:#94a3b8;transition:all .2s}.req-tab-item.active{background:rgba(30,41,59,.08);color:#1e293b;font-weight:500}.req-toolbar .submit-bug-btn{margin-bottom:0}.issue-type-tabs{display:flex;background:#f6f7fb;border-radius:8px;padding:3px;gap:0}.issue-type-item{flex:1;text-align:center;padding:7px 0;font-size:13px;color:#94a3b8;transition:all .25s ease;border-radius:6px}.issue-type-item:first-child{border-radius:6px 0 0 6px}.issue-type-item:last-child{border-radius:0 6px 6px 0}.issue-type-item.active{background:#6366f1;color:#fff;font-weight:600}.doc-content{font-size:14px;line-height:1.7;color:#64748b;flex:1;overflow-y:auto}.doc-content .doc-p{margin:10px 0;line-height:1.7}.doc-content .doc-h1{font-size:20px;font-weight:700;color:#1e293b;margin:20px 0 16px;padding-bottom:10px;border-bottom:2px solid #F1F5F9}.doc-content .doc-h2{font-size:17px;font-weight:600;color:#1e293b;margin:24px 0 12px;padding-bottom:6px;border-bottom:1px solid #F1F5F9}.doc-content .doc-h3{font-size:15px;font-weight:600;color:#1e293b;margin:18px 0 10px}.doc-content strong{color:#1e293b;font-weight:600}.doc-content em{font-style:italic;color:#64748b}.doc-content del{color:#94a3b8;text-decoration:line-through}.doc-content .doc-pre{background:#1e293b;border-radius:8px;padding:14px;overflow-x:auto;margin:14px 0}.doc-content .doc-pre code{background:none;padding:0;color:#e2e8f0;font-family:SF Mono,Monaco,Consolas,monospace;font-size:13px;line-height:1.6}.doc-content .doc-code{background:#f1f5f9;padding:2px 6px;border-radius:4px;font-family:SF Mono,Monaco,Consolas,monospace;font-size:13px;color:#d97706}.doc-content .doc-table{width:100%;border-collapse:collapse;margin:14px 0;font-size:13px;border-radius:8px;overflow:hidden;border:1px solid #F1F5F9}.doc-content .doc-table th,.doc-content .doc-table td{border:1px solid #F1F5F9;padding:10px 12px;text-align:left}.doc-content .doc-table th{background:#f8fafc;font-weight:600;color:#1e293b}.doc-content .doc-table tr:nth-child(2n) td{background:#fafbfc}.doc-content .doc-task{list-style:none;margin:8px 0;padding-left:8px}.doc-content .doc-task .check{display:inline-block;width:18px;height:18px;border:2px solid #E2E8F0;border-radius:4px;margin-right:10px;vertical-align:middle;text-align:center;line-height:14px;font-size:12px;color:transparent}.doc-content .doc-task.doc-task-done{text-decoration:line-through;color:#94a3b8}.doc-content .doc-task.doc-task-done .check{background:#6366f1;border-color:#6366f1;color:#fff}.doc-content .doc-blockquote{border-left:4px solid #6366F1;padding:10px 16px;margin:14px 0;background:#f8fafc;border-radius:0 8px 8px 0;color:#64748b}.doc-content .doc-blockquote p{margin:0}.doc-content .doc-link{color:#6366f1;text-decoration:none;border-bottom:1px dashed currentColor}.doc-content .doc-link:active{opacity:.8}.doc-content .doc-img{max-width:100%;border-radius:8px;margin:14px 0;box-shadow:0 1px 3px rgba(0,0,0,.04),0 1px 2px rgba(0,0,0,.02)}.doc-content .doc-li{margin:8px 0;padding-left:24px;position:relative}.doc-content .doc-li:before{content:"•";position:absolute;left:8px;color:#6366f1;font-weight:700}.doc-content .doc-hr{border:none;border-top:1px solid #F1F5F9;margin:24px 0}.doc-content .doc-svg-prototype{margin:20px 0;text-align:center;background:#f8fafc;border:1px solid #F1F5F9;border-radius:14px;padding:16px;overflow:auto}.doc-content .doc-svg-prototype svg{max-width:100%;height:auto;display:inline-block}.doc-svg-wrapper{display:flex;justify-content:center;align-items:flex-start;padding:16px;overflow:auto;background:#f8fafc;border:1px solid #F1F5F9;border-radius:14px;margin:12px 0}.doc-svg-wrapper svg{max-width:100%;height:auto;display:block}.doc-svg-img{max-width:100%;height:auto;display:block;border-radius:8px}.plan-scroll{height:100%}.info-card{background:#fff;border-radius:14px;padding:16px;margin-bottom:12px;box-shadow:0 1px 3px rgba(0,0,0,.04),0 1px 2px rgba(0,0,0,.02)}.info-card .card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.info-card .card-header .plan-date-full{font-size:15px;font-weight:600;color:#1e293b}.info-card .info-section{padding:10px 0;border-bottom:1px solid #F1F5F9}.info-card .info-section:last-child{border-bottom:none}.info-card .info-section .section-label{font-size:12px;color:#94a3b8;display:block;margin-bottom:4px}.info-card .info-section .section-content{font-size:14px;color:#64748b;line-height:1.5}.info-card .info-section .section-content.approval-note{color:#dc2626;font-weight:500}.plan-date-wrapper{display:flex;align-items:center;justify-content:space-between;width:100%}.plan-date-wrapper .plan-date-short{font-size:13px;font-weight:600;color:#1e293b}.plan-date-wrapper .plan-weekday{font-size:11px;color:#94a3b8}.plan-status-indicator{width:8px;height:8px;border-radius:50%;flex-shrink:0}.plan-status-indicator.draft{background:#9ca3af}.plan-status-indicator.pending_approval{background:#f59e0b}.plan-status-indicator.approved{background:#10b981}.plan-status-indicator.rejected{background:#ef4444}.plan-status-indicator.completed{background:#3b82f6}.tasks-card{background:#fff;border-radius:14px;padding:16px;margin-bottom:12px;box-shadow:0 1px 3px rgba(0,0,0,.04),0 1px 2px rgba(0,0,0,.02)}.tasks-card .card-title{font-size:15px;font-weight:600;color:#1e293b;display:block;margin-bottom:12px}.tasks-card .task-item{padding:12px;background:#f6f7fb;border-radius:8px;margin-bottom:8px}.tasks-card .task-item:active{background:#f1f3f9}.tasks-card .task-item .task-header{display:flex;gap:8px;margin-bottom:8px}.tasks-card .task-item .task-priority{padding:3px 8px;border-radius:6px;font-size:11px;font-weight:500}.tasks-card .task-item .task-priority.high{background:#fee2e2;color:#dc2626}.tasks-card .task-item .task-priority.medium{background:#fef3c7;color:#d97706}.tasks-card .task-item .task-priority.low{background:#dbeafe;color:#2563eb}.tasks-card .task-item .task-status{padding:3px 8px;border-radius:6px;font-size:11px;font-weight:500}.tasks-card .task-item .task-status.pending{background:#e5e7eb;color:#6b7280}.tasks-card .task-item .task-status.in_progress{background:#dbeafe;color:#2563eb}.tasks-card .task-item .task-status.done{background:#d1fae5;color:#059669}.tasks-card .task-item .task-status.blocked{background:#fee2e2;color:#dc2626}.tasks-card .task-item .task-content{font-size:14px;color:#1e293b;display:block;margin-bottom:6px}.tasks-card .task-item .task-meta{display:flex;gap:12px}.tasks-card .task-item .task-meta .task-result{font-size:12px;color:#94a3b8}.tasks-card .task-item .task-meta .task-evidence{font-size:12px;color:#6366f1}.tasks-card .empty-state-small{text-align:center;padding:20px;color:#94a3b8;font-size:13px}.report-card{background:#fff;border-radius:14px;padding:16px;margin-bottom:12px;box-shadow:0 1px 3px rgba(0,0,0,.04),0 1px 2px rgba(0,0,0,.02)}.report-card .card-title{font-size:15px;font-weight:600;color:#1e293b;display:block;margin-bottom:12px}.report-card .report-section{padding:10px 0;border-bottom:1px solid #F1F5F9}.report-card .report-section:last-child{border-bottom:none}.report-card .report-section .section-label{font-size:12px;color:#94a3b8;display:block;margin-bottom:4px}.report-card .report-section .section-content{font-size:14px;color:#64748b;line-height:1.5}.report-card .empty-text{text-align:center;padding:20px;color:#94a3b8}.approval-actions{background:#fff;border-radius:14px;padding:16px;box-shadow:0 1px 3px rgba(0,0,0,.04),0 1px 2px rgba(0,0,0,.02);margin-bottom:12px}.approval-actions .actions-title{font-size:15px;font-weight:600;color:#1e293b;display:block;margin-bottom:12px}.approval-actions .action-buttons{display:flex;gap:8px}.approval-actions .action-buttons>uni-view{flex:1;padding:12px 4px;border-radius:8px;font-size:14px;font-weight:500;text-align:center;white-space:nowrap;transition:all .2s}.approval-actions .action-buttons>uni-view:active{transform:scale(.98)}.approval-actions .action-buttons .btn-approve{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff}.approval-actions .action-buttons .btn-reject{background:#fee2e2;color:#dc2626}.approval-actions .action-buttons .btn-adjust{background:#dbeafe;color:#2563eb}.todo-action-bar{display:flex;flex-wrap:wrap;gap:12px;margin:12px 0}.todo-action-btn{flex:1;padding:10px 4px;border-radius:8px;font-size:13px;font-weight:500;text-align:center;white-space:nowrap;transition:opacity .15s}.todo-action-btn:active{opacity:.7}.todo-action-btn.retest{background:rgba(59,130,246,.12);color:#3b82f6}.todo-action-btn.rework{background:rgba(245,158,11,.12);color:#f59e0b}.todo-action-btn.complete,.todo-action-btn.git-sync{background:rgba(16,185,129,.12);color:#10b981}.todo-action-btn.deploy{background:rgba(139,92,246,.12);color:#8b5cf6}.git-log-item{padding:14px 16px;min-height:68px}.git-log-item .git-log-item-wrapper{display:flex;flex-direction:column;justify-content:space-between;width:100%;gap:8px}.git-log-item .git-log-commit-hash{font-family:SF Mono,Consolas,monospace;font-size:13px;font-weight:600;color:#1e293b;letter-spacing:.02em;word-break:break-all;line-height:1.5}.git-log-item .git-log-date{font-size:11px;color:#94a3b8;align-self:flex-end;flex-shrink:0}.version-module-group{margin-bottom:2px;position:relative}.version-module-group .version-module-header{display:flex;align-items:center;gap:6px;padding:8px 10px;border-radius:8px;cursor:pointer;transition:all .15s ease;position:relative}.version-module-group .version-module-header:hover{background:rgba(99,102,241,.04)}.version-module-group .version-module-header:active{background:rgba(99,102,241,.08)}.version-module-group .version-module-header .icon{flex-shrink:0;opacity:.6}.version-module-group .version-module-header .module-indicator{width:6px;height:6px;border-radius:50%;flex-shrink:0;box-shadow:0 0 0 2px rgba(255,255,255,.8)}.version-module-group .version-module-header .version-module-title{flex:1;font-size:13px;font-weight:600;color:#1e293b}.version-module-group .version-module-header .version-module-count{font-size:10px;color:#94a3b8;font-weight:500;min-width:18px;text-align:center}.version-module-group .version-module-list{padding-left:12px;position:relative}.version-module-group .version-module-list:before{content:"";position:absolute;top:0;bottom:6px;left:14px;width:1.5px;background:linear-gradient(to bottom,rgba(99,102,241,.1),rgba(99,102,241,.04));border-radius:1px}.version-platform-group{position:relative;margin-bottom:2px}.version-platform-group:before{content:"";position:absolute;top:14px;left:-10px;width:10px;height:1.5px;background:rgba(99,102,241,.1);border-radius:1px}.version-platform-group .version-platform-header{display:flex;align-items:center;gap:6px;padding:6px 10px;border-radius:8px;cursor:pointer;transition:all .15s ease;position:relative}.version-platform-group .version-platform-header:hover{background:rgba(99,102,241,.03)}.version-platform-group .version-platform-header:active{background:rgba(99,102,241,.06)}.version-platform-group .version-platform-header .icon{flex-shrink:0;opacity:.5}.version-platform-group .version-platform-header .platform-indicator{width:4px;height:4px;border-radius:50%;flex-shrink:0}.version-platform-group .version-platform-header .version-platform-title{flex:1;font-size:12px;font-weight:500;color:#64748b}.version-platform-group .version-platform-header .version-platform-count{font-size:10px;color:#94a3b8;font-weight:500;min-width:18px;text-align:center}.version-platform-group .version-platform-list{padding-left:12px;position:relative}.version-platform-group .version-platform-list:before{content:"";position:absolute;top:0;bottom:6px;left:14px;width:1.5px;background:linear-gradient(to bottom,rgba(99,102,241,.08) 0%,transparent 100%);border-radius:1px}.version-card-item{position:relative;padding:8px 10px;margin-bottom:1px;border-radius:8px;transition:all .15s ease}.version-card-item:before{content:"";position:absolute;top:50%;left:-10px;width:10px;height:1.5px;background:rgba(99,102,241,.08);border-radius:1px}.version-card-item:hover{background:rgba(99,102,241,.03)}.version-card-item.active{background:rgba(99,102,241,.06)}.version-card-item.active .version-item-name{color:#6366f1;font-weight:600}.version-card-item .version-item-wrapper{display:flex;align-items:center;justify-content:space-between;width:100%}.version-card-item .version-item-name{font-size:12px;color:#64748b;font-family:SF Mono,Consolas,monospace;letter-spacing:.02em}.version-card-item .version-item-date{font-size:10px;color:#94a3b8;flex-shrink:0}.version-action-btn{margin:10px 8px 4px;padding:10px 12px;border-radius:8px;font-size:13px;font-weight:500;text-align:center;transition:opacity .15s}.version-action-btn:active{opacity:.7}.version-action-btn.git-sync{background:rgba(16,185,129,.12);color:#10b981}.version-action-btn.deploy{background:rgba(139,92,246,.12);color:#8b5cf6}.version-detail-card{background:#fff;border-radius:14px;padding:16px;margin-bottom:12px;box-shadow:0 1px 3px rgba(0,0,0,.04),0 1px 2px rgba(0,0,0,.02)}.version-detail-card .version-detail-header{margin-bottom:12px}.version-detail-card .version-detail-header .version-title-row{display:flex;align-items:center;gap:8px;margin-bottom:6px}.version-detail-card .version-detail-header .version-title-row .version-detail-name{font-size:18px;font-weight:700;color:#1e293b}.version-detail-card .version-detail-header .version-title-row .current-badge{display:flex;align-items:center;gap:3px;padding:3px 8px;background:#10b981;color:#fff;border-radius:6px;font-size:11px;font-weight:500}.version-detail-card .version-detail-header .version-date{display:flex;align-items:center;gap:4px;font-size:12px;color:#94a3b8}.version-detail-card .version-tags{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}.version-detail-card .version-tags .version-tag{padding:3px 8px;background:#f1f3f9;color:#64748b;border-radius:6px;font-size:11px}.version-detail-card .version-badges{display:flex;gap:8px;margin-bottom:12px}.version-detail-card .version-badges .status-tag{display:flex;align-items:center;gap:3px;padding:4px 10px;border-radius:6px;font-size:12px;font-weight:500}.version-detail-card .version-badges .status-tag.stable{background:#d1fae5;color:#059669}.version-detail-card .version-badges .status-tag.official{background:#dbeafe;color:#2563eb}.version-detail-card .info-section{padding:10px 0;border-bottom:1px solid #F1F5F9}.version-detail-card .info-section:last-child{border-bottom:none}.version-detail-card .info-section .section-label{font-size:12px;color:#94a3b8;display:block;margin-bottom:4px}.version-detail-card .info-section .section-content{font-size:14px;color:#64748b;line-height:1.5}.version-detail-card .info-section .commit-hash-wrapper{display:flex;align-items:center;gap:6px;background:#f6f7fb;padding:8px 12px;border-radius:8px}.version-detail-card .info-section .commit-hash-wrapper .commit-hash{font-family:monospace;font-size:13px;color:#6366f1}.rollback-action{padding:16px;background:#fff;border-radius:14px;box-shadow:0 1px 3px rgba(0,0,0,.04),0 1px 2px rgba(0,0,0,.02)}.rollback-action .rollback-btn{display:flex;align-items:center;gap:4px;padding:10px 16px;background:#fee2e2;color:#dc2626;border-radius:14px;font-size:14px;font-weight:500;transition:all .2s}.rollback-action .rollback-btn:active,.rollback-action .rollback-btn.pressed{background:#fecaca;transform:scale(.98)}.acceptance-card{display:flex;justify-content:space-between;align-items:center;background:#fff;border-radius:14px;padding:16px;margin-bottom:12px;box-shadow:0 1px 3px rgba(0,0,0,.04),0 1px 2px rgba(0,0,0,.02)}.acceptance-card .acceptance-info{display:flex;align-items:center;gap:10px;flex:1}.acceptance-card .acceptance-info .acceptance-name{font-size:14px;font-weight:500;color:#1e293b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.acceptance-card .acceptance-status-badge{display:flex;align-items:center;gap:4px;padding:4px 10px;border-radius:6px;font-size:12px;font-weight:500}.acceptance-card .acceptance-status-badge.pending{background:#fef3c7;color:#d97706}.acceptance-card .acceptance-status-badge.passed{background:#d1fae5;color:#059669}.acceptance-card .acceptance-status-badge.failed{background:#fee2e2;color:#dc2626}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 20px;text-align:center}.empty-state .empty-title{font-size:16px;font-weight:600;color:#64748b;margin-top:16px;margin-bottom:6px}.empty-state .empty-desc{font-size:13px;color:#94a3b8}.popup-mask{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:999}.rollback-popup{width:320px;background:#fff;border-radius:18px;padding:20px;box-shadow:0 20px 40px -8px rgba(0,0,0,.12),0 8px 24px -4px rgba(0,0,0,.06)}.rollback-popup-header{display:flex;flex-direction:column;align-items:center;gap:10px;margin-bottom:16px}.rollback-popup-header .rollback-icon-wrapper{width:48px;height:48px;border-radius:50%;background:#fef3c7;color:#d97706;display:flex;align-items:center;justify-content:center}.rollback-popup-header .rollback-popup-title{font-size:18px;font-weight:700;color:#1e293b}.rollback-popup-body{margin-bottom:20px}.rollback-info{background:#f6f7fb;border-radius:14px;padding:12px;margin-bottom:16px}.rollback-info .rollback-info-text{font-size:14px;color:#1e293b;font-weight:500;display:block;margin-bottom:4px}.rollback-info .rollback-commit{font-size:12px;color:#94a3b8;font-family:monospace}.rollback-warning{margin-bottom:16px}.rollback-warning .warning-title{display:flex;align-items:center;gap:6px;font-size:14px;color:#dc2626;font-weight:600;margin-bottom:10px}.rollback-warning .warning-list{display:flex;flex-direction:column;gap:8px}.rollback-warning .warning-item{display:flex;align-items:center;gap:8px;font-size:13px;color:#64748b}.rollback-warning .warning-item .warning-dot{width:6px;height:6px;background:#dc2626;border-radius:50%;flex-shrink:0}.rollback-reason .reason-label{font-size:14px;color:#1e293b;font-weight:500;display:block;margin-bottom:8px}.rollback-reason .reason-input{width:100%;height:80px;background:#f6f7fb;border:1px solid #E2E8F0;border-radius:14px;padding:12px;font-size:14px;box-sizing:border-box;resize:none}.rollback-reason .reason-input:focus{border-color:#6366f1;outline:none}.rollback-popup-actions{display:flex;gap:12px}.rollback-popup-actions .btn-cancel,.rollback-popup-actions .btn-confirm-rollback{flex:1;padding:12px;border-radius:14px;font-size:14px;font-weight:600;display:flex;align-items:center;justify-content:center;gap:6px;transition:all .2s}.rollback-popup-actions .btn-cancel:active,.rollback-popup-actions .btn-cancel.pressed,.rollback-popup-actions .btn-confirm-rollback:active,.rollback-popup-actions .btn-confirm-rollback.pressed{transform:scale(.98)}.rollback-popup-actions .btn-cancel{background:#f1f3f9;color:#64748b}.rollback-popup-actions .btn-cancel:active,.rollback-popup-actions .btn-cancel.pressed{background:#e2e8f0}.rollback-popup-actions .btn-confirm-rollback{background:#dc2626;color:#fff}.rollback-popup-actions .btn-confirm-rollback:active,.rollback-popup-actions .btn-confirm-rollback.pressed{background:#b91c1c}.rollback-popup-actions .btn-confirm-rollback.disabled{background:#fee2e2;color:#fca5a5;pointer-events:none}.bug-stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:8px}.bug-stat-item{text-align:center;padding:8px 4px;background:#f6f7fb;border-radius:8px}.bug-stat-item .bug-stat-num{display:block;font-size:18px;font-weight:700;color:#1e293b;margin-bottom:2px}.bug-stat-item .bug-stat-label{font-size:11px;color:#94a3b8}.bug-stat-item.bug-stat-pending .bug-stat-num{color:#d97706}.bug-stat-item.bug-stat-critical .bug-stat-num{color:#dc2626}.bug-filter-list{padding:4px 0}.bug-filter-item{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-radius:8px;font-size:13px;color:#64748b;transition:all .2s}.bug-filter-item:active{background:#f6f7fb}.bug-filter-item.active{background:rgba(99,102,241,.1);color:#6366f1}.bug-filter-item .bug-filter-count{font-size:11px;color:#94a3b8;background:#f1f3f9;padding:1px 6px;border-radius:8px}.bug-list-item{flex-direction:column;align-items:stretch;gap:4px}.bug-list-header{display:flex;align-items:center;gap:8px}.bug-severity-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.bug-severity-dot.critical{background:#dc2626}.bug-severity-dot.major{background:#f97316}.bug-severity-dot.minor{background:#eab308}.bug-severity-dot.trivial{background:#9ca3af}.bug-list-title{flex:1;font-size:13px;color:#1e293b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bug-list-footer{display:flex;align-items:center;justify-content:space-between;padding-left:16px}.bug-list-footer-left{flex:1}.bug-list-footer-right{display:flex;align-items:center;gap:.1875rem}.bug-list-id{font-size:11px;color:#94a3b8;font-family:monospace}.bug-list-time{font-size:11px;color:#94a3b8;flex:1;text-align:center}.bug-list-status{font-size:11px;padding:2px 6px;border-radius:4px;font-weight:500}.bug-list-status.new{background:#f1f5f9;color:#64748b}.bug-list-status.confirmed{background:#fef3c7;color:#d97706}.bug-list-status.in_progress{background:#dbeafe;color:#2563eb}.bug-list-status.fixed{background:#d1fae5;color:#059669}.bug-list-status.verified{background:#dbeafe;color:#2563eb}.bug-list-status.closed{background:#f1f5f9;color:#64748b}.bug-list-status.wontfix{background:#f1f5f9;color:#64748b}.todo-complexity-tag{font-size:11px;padding:1px 6px;border-radius:4px;font-weight:500;line-height:1.4}.todo-complexity-tag.简单{background:#d1fae5;color:#059669}.todo-complexity-tag.中等{background:#fef3c7;color:#d97706}.todo-complexity-tag.复杂{background:#fee2e2;color:#dc2626}.bug-detail-header{margin-bottom:16px}.bug-detail-title-row{display:flex;align-items:center;gap:8px;margin-bottom:8px}.bug-severity-badge{padding:3px 8px;border-radius:6px;font-size:11px;font-weight:600}.bug-severity-badge.critical{background:#fee2e2;color:#dc2626}.bug-severity-badge.major{background:#fff7ed;color:#ea580c}.bug-severity-badge.minor{background:#fefce8;color:#ca8a04}.bug-severity-badge.trivial{background:#f1f5f9;color:#64748b}.bug-status-badge{padding:3px 8px;border-radius:6px;font-size:11px;font-weight:500}.bug-status-badge.new{background:#f1f5f9;color:#64748b}.bug-status-badge.confirmed{background:#fef3c7;color:#d97706}.bug-status-badge.in_progress{background:#dbeafe;color:#2563eb}.bug-status-badge.fixed{background:#d1fae5;color:#059669}.bug-status-badge.verified{background:#dbeafe;color:#2563eb}.bug-status-badge.closed{background:#f1f5f9;color:#64748b}.bug-status-badge.wontfix{background:#f1f5f9;color:#64748b}.bug-detail-title{font-size:16px;font-weight:600;color:#1e293b;display:block;margin-bottom:8px}.bug-detail-meta{display:flex;align-items:center;gap:12px}.bug-detail-meta .bug-detail-id{font-size:12px;color:#94a3b8;font-family:monospace}.bug-detail-meta .bug-detail-date{font-size:12px;color:#94a3b8}.bug-info-card{background:#fff;border-radius:14px;padding:16px;margin-bottom:12px;box-shadow:0 1px 3px rgba(0,0,0,.04),0 1px 2px rgba(0,0,0,.02)}.bug-info-card .bug-info-card-title{font-size:14px;font-weight:600;color:#1e293b;display:block;margin-bottom:12px}.bug-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.bug-info-item .bug-info-label{font-size:12px;color:#94a3b8;display:block;margin-bottom:4px}.bug-info-item .bug-info-value{font-size:14px;color:#1e293b;font-weight:500}.bug-info-item .bug-info-value.priority-high{color:#dc2626}.bug-info-item .bug-info-value.priority-medium{color:#d97706}.bug-info-item .bug-info-value.priority-low{color:#2563eb}.bug-info-item .bug-info-value.complexity-simple{color:#059669}.bug-info-item .bug-info-value.complexity-medium{color:#d97706}.bug-info-item .bug-info-value.complexity-complex{color:#dc2626}.bug-info-content{font-size:14px;color:#64748b;line-height:1.6;white-space:pre-wrap;-webkit-user-select:text;-moz-user-select:text;user-select:text}.bug-reproduce-section{margin-bottom:12px}.bug-reproduce-section:last-child{margin-bottom:0}.bug-reproduce-section .bug-reproduce-label{font-size:12px;color:#94a3b8;display:block;margin-bottom:4px}.bug-reproduce-section .bug-reproduce-content{font-size:14px;color:#64748b;line-height:1.5;white-space:pre-wrap}.verification-report-card{border-left:3px solid #10B981}.verification-conclusion{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.verification-status-badge{padding:2px 10px;border-radius:10px;font-size:12px;font-weight:500}.verification-status-badge.passed{background:#d1fae5;color:#065f46}.verification-status-badge.failed{background:#fee2e2;color:#991b1b}.verification-status-badge.pending{background:#fef3c7;color:#92400e}.verification-time{font-size:11px;color:#9ca3af}.verification-conclusion-text{background:#f9fafb;border-radius:6px;padding:8px 10px;margin-bottom:10px;font-size:13px;color:#374151;line-height:1.5}.verification-evidences{margin-top:8px}.evidences-title{font-size:12px;color:#6b7280;margin-bottom:6px;display:block}.evidence-item{border:1px solid #E5E7EB;border-radius:6px;padding:8px 10px;margin-bottom:6px}.evidence-header{display:flex;align-items:center;margin-bottom:4px}.evidence-type-icon{font-size:14px;margin-right:6px}.evidence-title{font-size:13px;font-weight:500;color:#374151}.evidence-image{width:100%;border-radius:4px;margin-top:4px}.evidence-code-block{background:#1f2937;border-radius:4px;padding:8px;margin-top:4px;overflow-x:auto}.evidence-code-block uni-text{font-family:Courier New,monospace;font-size:11px;color:#d1d5db;white-space:pre-wrap;word-break:break-all}.evidence-file-path{margin-top:4px}.evidence-file-path uni-text{font-size:11px;color:#2563eb;word-break:break-all}.evidence-text-content{margin-top:4px}.evidence-text-content uni-text{font-size:13px;color:#4b5563;line-height:1.4}.bug-images-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.bug-image-item{position:relative;border-radius:8px;overflow:hidden}.bug-image-item .bug-image{width:100%;height:80px;border-radius:8px}.bug-image-item .bug-image-key{position:absolute;top:4px;right:4px;padding:1px 4px;background:#dc2626;color:#fff;font-size:10px;border-radius:4px}.bug-comments-card .bug-comments-list{display:flex;flex-direction:column;gap:12px}.bug-comment-item{padding:12px;background:#f6f7fb;border-radius:8px}.bug-comment-item .bug-comment-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.bug-comment-item .bug-comment-header .bug-comment-author{font-size:13px;font-weight:600;color:#1e293b}.bug-comment-item .bug-comment-header .bug-comment-time{font-size:11px;color:#94a3b8}.bug-comment-item .bug-comment-content{font-size:14px;color:#64748b;line-height:1.5}.bug-comments-empty{text-align:center;padding:16px;color:#94a3b8;font-size:13px}.issue-create-inner{display:flex;flex-direction:column;height:100%}.create-form-topbar{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--border-light);margin-bottom:8px;flex-shrink:0}.create-form-topbar .create-form-close{padding:6px;color:var(--text-tertiary)}.create-form-topbar .create-form-close:active{opacity:.6}.issue-create-scroll{flex:1;overflow:hidden}.mode-switch-inner{display:flex;background:var(--bg-secondary);border-radius:12px;padding:4px}.mode-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 16px;border-radius:10px;transition:all .3s ease}.mode-btn.active{background:linear-gradient(135deg,#6366f1,#8b5cf6);box-shadow:0 2px 8px rgba(99,102,241,.3)}.mode-icon{font-size:16px}.mode-text{font-size:14px;font-weight:500;color:var(--text-secondary)}.mode-btn.active .mode-text{color:#fff}.form-section{background:var(--bg-primary);margin:8px 0;border-radius:12px;padding:16px}.section-title{font-size:15px;font-weight:700;color:var(--text-primary);margin-bottom:16px;padding-bottom:8px;border-bottom:1px solid var(--border-light)}.form-item{margin-bottom:16px}.form-item:last-child{margin-bottom:0}.form-item.half{flex:1;margin-bottom:0}.form-row{display:flex;gap:12px}.form-label{font-size:13px;color:var(--text-secondary);display:block;margin-bottom:8px}.form-label.required:after{content:" *";color:#ef4444}.form-input{width:100%;height:44px;padding:0 12px;border:1px solid var(--border-color);border-radius:8px;font-size:14px;box-sizing:border-box;background:var(--bg-secondary);color:var(--text-primary)}.form-textarea{width:100%;min-height:100px;padding:12px;border:1px solid var(--border-color);border-radius:8px;font-size:14px;box-sizing:border-box;background:var(--bg-secondary);color:var(--text-primary)}.picker-value{height:44px;padding:0 12px;border:1px solid var(--border-color);border-radius:8px;display:flex;align-items:center;justify-content:space-between;background:var(--bg-secondary);font-size:14px;color:var(--text-primary)}.picker-value .placeholder{color:var(--text-tertiary)}.picker-value .picker-arrow{font-size:10px;color:var(--text-tertiary)}.images-upload-area{display:flex;flex-wrap:wrap;gap:10px}.upload-image-item{position:relative;width:100px;height:100px;border-radius:8px;overflow:hidden}.upload-image-item .upload-image{width:100%;height:100%}.upload-image-item .upload-image-remove{position:absolute;top:2px;right:2px;width:22px;height:22px;background:rgba(0,0,0,.6);color:#fff;border-radius:11px;display:flex;align-items:center;justify-content:center;font-size:14px}.upload-image-item .upload-image-key{position:absolute;bottom:4px;left:4px;background:#ef4444;color:#fff;font-size:10px;padding:2px 6px;border-radius:4px}.upload-add-btn{width:100px;height:100px;border:2px dashed var(--border-color);border-radius:8px;display:flex;align-items:center;justify-content:center}.upload-add-btn .upload-add-icon{font-size:32px;color:var(--text-tertiary)}.key-image-tip{margin-top:8px;font-size:12px;color:var(--text-tertiary)}.issue-create-submit-bar{padding:16px 0}.submit-btn{text-align:center;padding:14px;border-radius:10px;font-size:16px;font-weight:700;color:#fff}.submit-btn:active{opacity:.8}.submit-btn.disabled{opacity:.6;pointer-events:none}.submit-btn.bug-submit{background:#6366f1}.submit-btn.req-submit{background:#10b981}.tree-action-terminal{color:#dc2626!important}.tree-action-terminal-update{color:#059669!important}.todo-filter-tabs{display:flex;gap:4px;padding:4px 0}.todo-filter-tab{flex:1;text-align:center;padding:6px 0;border-radius:6px;font-size:12px;color:var(--text-tertiary);background:var(--bg-secondary);cursor:pointer;transition:all .2s}.todo-filter-tab.active{color:#6366f1;background:#eef2ff;font-weight:600}.todo-list-item{flex-direction:column;align-items:stretch;gap:4px;position:relative;overflow:hidden}.bug-status-badge.pending{background:#fef3c7;color:#d97706}.bug-status-badge.approved{background:#dbeafe;color:#2563eb}.bug-status-badge.rejected{background:#fee2e2;color:#dc2626}.bug-status-badge.executing{background:#e0e7ff;color:#6366f1}.bug-status-badge.completed{background:#d1fae5;color:#059669}.bug-status-badge.failed{background:#fee2e2;color:#dc2626}.bug-status-badge.verify_failed{background:#ffedd5;color:#ea580c}.bug-list-status.pending{background:#fef3c7;color:#d97706}.bug-list-status.approved{background:#dbeafe;color:#2563eb}.bug-list-status.rejected{background:#fee2e2;color:#dc2626}.bug-list-status.executing{background:#e0e7ff;color:#6366f1}.bug-list-status.completed{background:#d1fae5;color:#059669}.bug-list-status.failed{background:#fee2e2;color:#dc2626}.bug-list-status.verify_failed{background:#ffedd5;color:#ea580c}.bug-list-status.queue{background:#f3e8ff;color:#9333ea}.dev-env-loading-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:9999}.dev-env-loading-card{background:var(--bg-primary);border-radius:16px;padding:32px 40px;display:flex;flex-direction:column;align-items:center;gap:16px;box-shadow:0 8px 32px rgba(0,0,0,.15);min-width:240px}.dev-env-loading-spinner{width:40px;height:40px;border:3px solid var(--border-color);border-top-color:#6366f1;border-radius:50%;animation:dev-env-spin .8s linear infinite}@keyframes dev-env-spin{to{transform:rotate(360deg)}}.dev-env-loading-text{font-size:15px;font-weight:500;color:var(--text-primary)}.dev-env-loading-sub{font-size:12px;color:var(--text-tertiary)}@media screen and (max-width: 768px){.nav-menu-btn,.project-info-section.compact{display:none!important}.fixed-bottom-area .project-info-section.compact{padding:8px 12px}.fixed-bottom-area .project-info-section.compact .compact-project-name{font-size:15px}.fixed-bottom-area .tabs-container{padding:0;gap:0;justify-content:space-around}.fixed-bottom-area .detail-tab{flex:1;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:6px 0 8px;border-radius:0;font-size:11px;background:transparent;border:none;min-width:0;text-align:center}.fixed-bottom-area .detail-tab .tab-icon-wrap{display:flex;align-items:center;justify-content:center;width:40px;height:32px;border-radius:10px;background:transparent;transition:all .25s ease}.fixed-bottom-area .detail-tab .tab-icon-wrap .icon{margin-right:0!important;display:flex;align-items:center;justify-content:center}.fixed-bottom-area .detail-tab .tab-icon-wrap .icon-svg{display:flex;align-items:center;justify-content:center}.fixed-bottom-area .detail-tab .tab-label{display:block;width:100%;font-size:11px;line-height:14px;font-weight:500;color:#9ca3af;text-align:center;transition:color .25s ease,font-weight .25s ease}.fixed-bottom-area .detail-tab .tab-indicator{display:none!important}.fixed-bottom-area .detail-tab:active{background:transparent}.fixed-bottom-area .detail-tab:active .tab-icon-wrap{transform:scale(.92)}.fixed-bottom-area .detail-tab.active{background:transparent;border:none}.fixed-bottom-area .detail-tab.active .tab-icon-wrap{background:rgba(99,102,241,.1)}.fixed-bottom-area .detail-tab.active .tab-label{color:#6366f1;font-weight:600}.fixed-bottom-area .detail-tabs{white-space:normal}.detail-content{padding-left:12px;padding-right:12px}.doc-unified-tab{position:relative;display:block;height:100%}.doc-tree-wrapper{position:absolute;top:0;left:0;bottom:0;z-index:200;width:70vw;transform:translate(-100%);transition:transform .3s cubic-bezier(.4,0,.2,1);box-shadow:none;overflow:hidden}.doc-tree-wrapper.mobile-drawer-open{transform:translate(0)}.doc-tree-wrapper.mobile-drawer-open .doc-tree{box-shadow:4px 0 24px rgba(0,0,0,.12)}.doc-tree-wrapper .mobile-drawer-mask{position:fixed!important;top:0!important;left:70vw!important;right:0!important;bottom:0!important;z-index:199!important;background:transparent!important;pointer-events:auto!important;transform:none!important}.doc-tree-wrapper .doc-tree{width:100%;height:100%;position:relative;z-index:201!important;background:var(--bg-primary);padding:36px 8px 12px;overflow-y:auto;box-sizing:border-box;scrollbar-width:none;-ms-overflow-style:none;border-radius:0;box-shadow:none}.doc-tree-wrapper .doc-tree::-webkit-scrollbar{display:none}.doc-tree-wrapper .tree-section-header{background:var(--bg-secondary)!important;box-shadow:none!important}.doc-detail{width:100%;padding:12px 0 0;border-radius:0;box-shadow:none;background:#fff!important}.doc-unified-tab,.plan-unified-tab,.bug-unified-tab{background:#fff!important}.plan-unified-tab,.bug-unified-tab{position:relative;display:block;height:100%}.plan-unified-tab .doc-tree-wrapper,.bug-unified-tab .doc-tree-wrapper{position:absolute;top:0;left:0;bottom:0;z-index:200;width:70vw;transform:translate(-100%);transition:transform .3s cubic-bezier(.4,0,.2,1);box-shadow:none;overflow:hidden}.plan-unified-tab .doc-tree-wrapper.mobile-drawer-open,.bug-unified-tab .doc-tree-wrapper.mobile-drawer-open{transform:translate(0)}.plan-unified-tab .doc-tree-wrapper.mobile-drawer-open .doc-tree,.bug-unified-tab .doc-tree-wrapper.mobile-drawer-open .doc-tree{box-shadow:4px 0 24px rgba(0,0,0,.12)}.plan-unified-tab .doc-tree-wrapper .mobile-drawer-mask,.bug-unified-tab .doc-tree-wrapper .mobile-drawer-mask{position:fixed!important;top:0!important;left:70vw!important;right:0!important;bottom:0!important;z-index:199!important;background:transparent!important;pointer-events:auto!important;transform:none!important}.plan-unified-tab .doc-tree-wrapper .doc-tree,.bug-unified-tab .doc-tree-wrapper .doc-tree{width:100%;height:100%;position:relative;z-index:201!important;background:var(--bg-primary);padding:36px 8px 12px;overflow-y:auto;box-sizing:border-box;white-space:normal;scrollbar-width:none;-ms-overflow-style:none;border-radius:0;box-shadow:none}.plan-unified-tab .doc-tree-wrapper .doc-tree::-webkit-scrollbar,.bug-unified-tab .doc-tree-wrapper .doc-tree::-webkit-scrollbar{display:none}.plan-unified-tab .doc-tree-wrapper .tree-section-header,.bug-unified-tab .doc-tree-wrapper .tree-section-header{background:var(--bg-secondary)!important;box-shadow:none!important}.plan-unified-tab .doc-detail,.bug-unified-tab .doc-detail{width:100%;padding:12px 0 0;background:#fff!important}.doc-action-btn{padding:4px 8px;font-size:11px}.doc-new-popup,.rollback-popup,.doc-version-popup{width:90vw;max-width:360px}.mobile-fab-drawer-btn{display:flex!important;position:fixed;right:20px;bottom:80px;z-index:300;width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#6366f1,#8b5cf6);align-items:center;justify-content:center;box-shadow:0 4px 14px rgba(99,102,241,.4);transition:transform .2s ease,box-shadow .2s ease}.mobile-fab-drawer-btn .icon{margin-right:0!important}.mobile-fab-drawer-btn:active{transform:scale(.92);box-shadow:0 2px 8px rgba(99,102,241,.3)}.doc-svg-img{max-width:100vw}}@media screen and (max-width: 480px){.doc-detail{padding:12px 0 0;background:#fff!important}}:root[data-theme=dark] .fixed-bottom-area{background:var(--bg-primary);box-shadow:0 -2px 10px rgba(0,0,0,.25)}:root[data-theme=dark] .project-info-section{background:var(--bg-primary)}:root[data-theme=dark] .compact-progress .progress-track{background:rgba(51,65,85,.6)}:root[data-theme=dark] .status-badge.pending{background:rgba(217,119,6,.15);color:#fbbf24}:root[data-theme=dark] .status-badge.in_progress{background:rgba(37,99,235,.15);color:#60a5fa}:root[data-theme=dark] .status-badge.completed{background:rgba(5,150,105,.15);color:#34d399}:root[data-theme=dark] .status-badge.paused{background:rgba(217,119,6,.15);color:#fbbf24}:root[data-theme=dark] .tabs-section{background:var(--bg-primary)}:root[data-theme=dark] .detail-tab:not(.active){background:var(--bg-secondary);color:var(--text-secondary)}@media screen and (max-width: 768px){:root[data-theme=dark] .detail-tab{background:transparent}:root[data-theme=dark] .detail-tab:not(.active){background:transparent}:root[data-theme=dark] .detail-tab .tab-icon-wrap{background:transparent}:root[data-theme=dark] .detail-tab.active .tab-icon-wrap{background:rgba(129,140,248,.15)}:root[data-theme=dark] .detail-tab.active .tab-label{color:var(--primary-color, #818CF8)}}:root[data-theme=dark] .tree-section-header,:root[data-theme=dark] .version-module-header{background:var(--bg-primary)!important;box-shadow:none!important}:root[data-theme=dark] .tree-module-header:active,:root[data-theme=dark] .version-module-header:active{background:var(--bg-secondary)!important}:root[data-theme=dark] .tree-item{color:var(--text-secondary)!important}:root[data-theme=dark] .tree-item:active{background:var(--bg-secondary)!important}:root[data-theme=dark] .tree-item.active{background:rgba(99,102,241,.12)!important;color:#818cf8!important}:root[data-theme=dark] .tree-item.tree-item-error{color:#f87171!important}:root[data-theme=dark] .tree-section-body .tree-section-header{background:var(--bg-secondary)!important}:root[data-theme=dark] .module-status-dot.todo{background:#6b7280}:root[data-theme=dark] .doc-detail{background:var(--bg-primary);box-shadow:none}:root[data-theme=dark] .doc-action-bar{border-bottom-color:var(--border-color)}:root[data-theme=dark] .doc-action-btn.chat{background:rgba(37,99,235,.12);color:#60a5fa}:root[data-theme=dark] .doc-action-btn.edit{background:rgba(99,102,241,.12);color:#818cf8}:root[data-theme=dark] .doc-action-btn.refresh{background:rgba(5,150,105,.12);color:#34d399}:root[data-theme=dark] .doc-action-btn.version{background:rgba(37,99,235,.12);color:#60a5fa}:root[data-theme=dark] .doc-action-btn.rollback{background:rgba(217,119,6,.12);color:#fbbf24}:root[data-theme=dark] .doc-action-btn.delete{background:rgba(239,68,68,.12);color:#f87171}:root[data-theme=dark] .doc-action-btn.cancel{background:rgba(51,65,85,.6);color:var(--text-secondary)}:root[data-theme=dark] .doc-edit-input,:root[data-theme=dark] .doc-edit-picker,:root[data-theme=dark] .doc-edit-textarea{background:var(--bg-secondary);border-color:var(--border-color);color:var(--text-primary)}:root[data-theme=dark] .doc-new-popup{background:var(--bg-primary);box-shadow:0 20px 40px rgba(0,0,0,.4)}:root[data-theme=dark] .btn-cancel{background:rgba(51,65,85,.6);color:var(--text-secondary)}:root[data-theme=dark] .doc-version-popup{background:var(--bg-primary);box-shadow:0 20px 40px rgba(0,0,0,.4)}:root[data-theme=dark] .doc-version-popup-header{border-bottom-color:var(--border-color)}:root[data-theme=dark] .doc-version-item:active{background:var(--bg-secondary)}:root[data-theme=dark] .doc-content .doc-pre{background:#0f172a}:root[data-theme=dark] .doc-content .doc-pre code{color:#e2e8f0}:root[data-theme=dark] .doc-content .doc-code{background:rgba(51,65,85,.5);color:#fbbf24}:root[data-theme=dark] .doc-content .doc-table{border-color:var(--border-color)}:root[data-theme=dark] .doc-content .doc-table th,:root[data-theme=dark] .doc-content .doc-table td{border-color:var(--border-color)}:root[data-theme=dark] .doc-content .doc-table th{background:var(--bg-tertiary)}:root[data-theme=dark] .doc-content .doc-table tr:nth-child(2n) td{background:var(--bg-secondary)}:root[data-theme=dark] .doc-content .doc-task .check{border-color:var(--border-color)}:root[data-theme=dark] .doc-content .doc-blockquote{background:var(--bg-secondary);color:var(--text-secondary)}:root[data-theme=dark] .doc-content .doc-h1,:root[data-theme=dark] .doc-content .doc-h2{border-bottom-color:var(--border-color)}:root[data-theme=dark] .doc-content .doc-hr{border-top-color:var(--border-color)}:root[data-theme=dark] .info-card,:root[data-theme=dark] .tasks-card,:root[data-theme=dark] .report-card,:root[data-theme=dark] .approval-actions{background:var(--bg-primary);box-shadow:none}:root[data-theme=dark] .info-section{border-bottom-color:var(--border-color)}:root[data-theme=dark] .todo-action-popup{width:90vw;max-width:360px;background:var(--bg-primary);border-radius:12px;box-shadow:0 20px 40px rgba(0,0,0,.4)}:root[data-theme=dark] .popup-header{padding:18px 20px 12px;border-bottom:1px solid var(--border-color)}:root[data-theme=dark] .popup-title{font-size:16px;font-weight:600;color:var(--text-primary);display:block}:root[data-theme=dark] .popup-subtitle{font-size:13px;color:var(--text-secondary);margin-top:6px;display:block}:root[data-theme=dark] .popup-body{padding:16px 20px}:root[data-theme=dark] .popup-label{display:block;font-size:13px;color:var(--text-secondary);margin-bottom:8px}:root[data-theme=dark] .popup-question{display:block;font-size:14px;color:var(--text-primary);margin-bottom:12px;font-weight:500}:root[data-theme=dark] .todo-summary{background:var(--bg-secondary);padding:10px 12px;border-radius:8px;border-left:3px solid var(--primary-color)}:root[data-theme=dark] .todo-summary-label{display:block;font-size:12px;color:var(--text-tertiary);margin-bottom:4px}:root[data-theme=dark] .todo-summary-text{display:block;font-size:13px;color:var(--text-primary);word-break:break-all}:root[data-theme=dark] .todo-summary-list{margin-top:12px;max-height:200px;overflow-y:auto}:root[data-theme=dark] .todo-summary-item{display:flex;align-items:flex-start;gap:8px;padding:8px 10px;background:var(--bg-secondary);border-radius:6px;margin-bottom:6px}:root[data-theme=dark] .todo-summary-item:last-child{margin-bottom:0}:root[data-theme=dark] .todo-summary-taskid{font-family:SF Mono,Consolas,monospace;font-size:11px;font-weight:600;color:var(--primary-color);white-space:nowrap;flex-shrink:0;padding:1px 4px;background:rgba(var(--primary-rgb, 64, 128, 255),.1);border-radius:3px}:root[data-theme=dark] .submit-code-progress{display:flex;flex-direction:column;align-items:center;padding:20px 0;gap:12px}:root[data-theme=dark] .submit-code-spinner{width:32px;height:32px;border:3px solid var(--border-color);border-top-color:var(--primary-color);border-radius:50%;animation:submit-code-spin .8s linear infinite}@keyframes submit-code-spin{to{transform:rotate(360deg)}}:root[data-theme=dark] .submit-code-status-text{font-size:15px;font-weight:500;color:var(--text-primary)}:root[data-theme=dark] .submit-code-status-sub{font-size:12px;color:var(--text-tertiary)}:root[data-theme=dark] .submit-code-info{margin-bottom:16px}:root[data-theme=dark] .submit-code-info-item{display:flex;align-items:flex-start;gap:8px;padding:10px 12px;background:var(--bg-secondary);border-radius:8px;border-left:3px solid var(--primary-color)}:root[data-theme=dark] .submit-code-info-icon{font-size:14px;flex-shrink:0}:root[data-theme=dark] .submit-code-info-text{font-size:13px;color:var(--text-secondary);line-height:1.5}:root[data-theme=dark] .submit-code-result{display:flex;flex-direction:column;align-items:center;padding:20px 0;gap:8px}:root[data-theme=dark] .submit-code-result-icon{font-size:36px;font-weight:700}:root[data-theme=dark] .submit-code-success .submit-code-result-icon{color:#4caf50}:root[data-theme=dark] .submit-code-failed .submit-code-result-icon{color:#f44336}:root[data-theme=dark] .submit-code-result-text{font-size:15px;font-weight:500;color:var(--text-primary)}:root[data-theme=dark] .submit-code-result-sub{font-size:13px;color:var(--text-tertiary);margin-top:4px}:root[data-theme=dark] .submit-code-result-error{font-size:12px;color:var(--text-danger, #f44336);text-align:center;padding:0 12px;word-break:break-all}:root[data-theme=dark] .submit-code-modal{width:90%;max-width:520px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;overflow:hidden;box-shadow:0 20px 60px rgba(102,126,234,.4)}:root[data-theme=dark] .submit-modal-header{padding:28px 24px 24px;display:flex;align-items:center;gap:16px;background:rgba(255,255,255,.1);backdrop-filter:blur(10px)}:root[data-theme=dark] .submit-modal-icon-wrapper{width:56px;height:56px;background:rgba(255,255,255,.2);border-radius:16px;display:flex;align-items:center;justify-content:center;flex-shrink:0}:root[data-theme=dark] .submit-modal-icon{font-size:32px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}:root[data-theme=dark] .submit-modal-title-group{flex:1;display:flex;flex-direction:column;gap:4px}:root[data-theme=dark] .submit-modal-title{font-size:20px;font-weight:700;color:#fff;letter-spacing:-.5px}:root[data-theme=dark] .submit-modal-subtitle{font-size:13px;color:rgba(255,255,255,.85);font-weight:400}:root[data-theme=dark] .submit-modal-body{padding:24px;background:#fff;min-height:200px}:root[data-theme=dark] .submit-modal-state{display:flex;flex-direction:column;align-items:center;padding:40px 20px;gap:16px}:root[data-theme=dark] .submit-modal-state-icon{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:32px;font-weight:700;flex-shrink:0}:root[data-theme=dark] .submit-modal-state.success .submit-modal-state-icon{background:linear-gradient(135deg,#84fab0,#8fd3f4);color:#10b981}:root[data-theme=dark] .submit-modal-state.failed .submit-modal-state-icon{background:linear-gradient(135deg,#ff9a9e,#fecfef);color:#ef4444}:root[data-theme=dark] .submit-modal-state.cancelled .submit-modal-state-icon{background:#f3f4f6;color:#6b7280}:root[data-theme=dark] .submit-modal-state-title{font-size:18px;font-weight:600;color:var(--text-primary)}:root[data-theme=dark] .submit-modal-state-desc{font-size:14px;color:var(--text-secondary)}:root[data-theme=dark] .submit-modal-state-error{font-size:13px;color:#ef4444;background:#fef2f2;padding:10px 16px;border-radius:8px;text-align:center;max-width:100%}:root[data-theme=dark] .submit-modal-notice{display:flex;gap:12px;padding:16px;background:linear-gradient(135deg,#ffecd2,#fcb69f);border-radius:12px;margin-bottom:20px}:root[data-theme=dark] .submit-modal-notice-icon{font-size:20px;flex-shrink:0}:root[data-theme=dark] .submit-modal-notice-content{flex:1;display:flex;flex-direction:column;gap:4px}:root[data-theme=dark] .submit-modal-notice-title{font-size:14px;font-weight:600;color:#92400e}:root[data-theme=dark] .submit-modal-notice-desc{font-size:13px;color:#b45309;line-height:1.5}:root[data-theme=dark] .submit-modal-todos{border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}:root[data-theme=dark] .submit-modal-todos-header{display:flex;align-items:baseline;gap:4px;padding:12px 16px;background:#f9fafb;border-bottom:1px solid #e5e7eb}:root[data-theme=dark] .submit-modal-todos-count{font-size:24px;font-weight:700;color:#667eea}:root[data-theme=dark] .submit-modal-todos-title{font-size:14px;color:var(--text-secondary)}:root[data-theme=dark] .submit-modal-todos-list{max-height:280px;overflow-y:auto}:root[data-theme=dark] .submit-modal-todo-item{display:flex;align-items:center;gap:12px;padding:14px 16px;border-bottom:1px solid #f3f4f6;transition:background .2s}:root[data-theme=dark] .submit-modal-todo-item:last-child{border-bottom:none}:root[data-theme=dark] .submit-modal-todo-item:hover{background:#f9fafb}:root[data-theme=dark] .submit-modal-todo-id{font-size:12px;font-weight:600;color:#667eea;background:#eef2ff;padding:4px 8px;border-radius:6px;flex-shrink:0;font-family:SF Mono,Monaco,Consolas,monospace}:root[data-theme=dark] .submit-modal-todo-content{flex:1;min-width:0}:root[data-theme=dark] .submit-modal-todo-title{font-size:14px;color:var(--text-primary);line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:root[data-theme=dark] .submit-modal-todo-badge{font-size:11px;font-weight:600;color:#10b981;background:#d1fae5;padding:4px 10px;border-radius:20px;flex-shrink:0}:root[data-theme=dark] .submit-modal-footer{padding:16px 24px 24px;display:flex;gap:12px;background:#fff}:root[data-theme=dark] .submit-modal-btn{flex:1;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s;border:none}:root[data-theme=dark] .submit-modal-btn uni-text{-webkit-user-select:none;-moz-user-select:none;user-select:none}:root[data-theme=dark] .submit-modal-btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 12px rgba(102,126,234,.3)}:root[data-theme=dark] .submit-modal-btn-primary:hover:not(.disabled){transform:translateY(-2px);box-shadow:0 6px 16px rgba(102,126,234,.4)}:root[data-theme=dark] .submit-modal-btn-primary:active:not(.disabled){transform:translateY(0)}:root[data-theme=dark] .submit-modal-btn-primary.disabled{opacity:.5;cursor:not-allowed}:root[data-theme=dark] .submit-modal-btn-secondary{background:#f3f4f6;color:var(--text-primary);border:1px solid #e5e7eb}:root[data-theme=dark] .submit-modal-btn-secondary:hover{background:#e5e7eb}:root[data-theme=dark] .submit-modal-btn-danger{background:linear-gradient(135deg,#f87171,#ef4444);color:#fff;box-shadow:0 4px 12px rgba(239,68,68,.3)}:root[data-theme=dark] .submit-modal-btn-danger:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(239,68,68,.4)}:root[data-theme=dark] .submit-modal-spinner{width:48px;height:48px;border:4px solid #e5e7eb;border-top-color:#667eea;border-radius:50%;animation:submitModalSpin .8s linear infinite}@keyframes submitModalSpin{to{transform:rotate(360deg)}}:root[data-theme=dark] .popup-textarea{width:100%;min-height:80px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:10px 12px;font-size:13px;color:var(--text-primary);line-height:1.5;box-sizing:border-box;resize:vertical}:root[data-theme=dark] .popup-textarea:focus{border-color:var(--primary-color)}:root[data-theme=dark] .popup-actions{display:flex;gap:10px;padding:12px 20px 16px}:root[data-theme=dark] .popup-actions .btn-cancel,:root[data-theme=dark] .popup-actions .btn-confirm{flex:1;padding:10px;border-radius:8px;font-size:14px;font-weight:600;text-align:center;transition:all .2s}:root[data-theme=dark] .popup-actions .btn-cancel:active,:root[data-theme=dark] .popup-actions .btn-confirm:active{transform:scale(.98)}:root[data-theme=dark] .popup-actions .btn-cancel.disabled,:root[data-theme=dark] .popup-actions .btn-confirm.disabled{opacity:.6;pointer-events:none}:root[data-theme=dark] .popup-actions .btn-cancel{background:var(--bg-tertiary);color:var(--text-secondary)}:root[data-theme=dark] .popup-actions .btn-confirm{background:var(--primary-color);color:#fff}:root[data-theme=dark] .rework-mask{animation:rework-mask-in .25s cubic-bezier(.16,1,.3,1) forwards}@keyframes rework-mask-in{0%{opacity:0}to{opacity:1}}:root[data-theme=dark] .rework-popup{width:92vw;max-width:400px;background:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:0 24px 48px -12px rgba(0,0,0,.18),0 12px 32px -8px rgba(0,0,0,.1);overflow:hidden;animation:rework-popup-in .4s cubic-bezier(.16,1,.3,1) forwards;transform-origin:center center}@keyframes rework-popup-in{0%{opacity:0;transform:scale(.92) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}:root[data-theme=dark] .rework-popup-header{display:flex;flex-direction:column;align-items:center;padding:28px 24px 20px;background:linear-gradient(180deg,rgba(245,158,11,.08) 0%,transparent 100%)}:root[data-theme=dark] .rework-popup-icon{width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,#f59e0b,#d97706);display:flex;align-items:center;justify-content:center;margin-bottom:14px;box-shadow:0 8px 20px -4px rgba(245,158,11,.35)}:root[data-theme=dark] .rework-popup-title{font-size:18px;font-weight:700;color:var(--text-primary);line-height:1.3}:root[data-theme=dark] .rework-popup-subtitle{font-size:13px;color:var(--text-secondary);margin-top:6px;line-height:1.4}:root[data-theme=dark] .rework-popup-body{padding:0 24px 20px}:root[data-theme=dark] .rework-popup-field{display:flex;flex-direction:column;gap:8px}:root[data-theme=dark] .rework-popup-label{font-size:13px;font-weight:600;color:var(--text-primary)}:root[data-theme=dark] .rework-popup-textarea{width:100%;min-height:100px;background:var(--bg-secondary);border:1.5px solid var(--border-color);border-radius:var(--radius-sm);padding:12px 14px;font-size:14px;color:var(--text-primary);line-height:1.6;box-sizing:border-box;resize:vertical;transition:border-color .2s ease,box-shadow .2s ease}:root[data-theme=dark] .rework-popup-textarea:focus{outline:none;border-color:#f59e0b;box-shadow:0 0 0 3px rgba(245,158,11,.12)}:root[data-theme=dark] .rework-popup-textarea::-moz-placeholder{color:var(--text-tertiary)}:root[data-theme=dark] .rework-popup-textarea::placeholder{color:var(--text-tertiary)}:root[data-theme=dark] .rework-popup-counter{font-size:12px;color:var(--text-tertiary);text-align:right;line-height:1}:root[data-theme=dark] .rework-popup-counter .rework-counter-warn{color:#ef4444;font-weight:600}:root[data-theme=dark] .rework-popup-actions{display:flex;gap:12px;padding:0 24px 24px}:root[data-theme=dark] .rework-btn-cancel,:root[data-theme=dark] .rework-btn-submit{flex:1;padding:12px 16px;border-radius:var(--radius-sm);font-size:14px;font-weight:600;text-align:center;transition:all .15s cubic-bezier(.25,1,.5,1);cursor:pointer}:root[data-theme=dark] .rework-btn-cancel:active,:root[data-theme=dark] .rework-btn-submit:active{transform:scale(.97)}:root[data-theme=dark] .rework-btn-cancel.disabled,:root[data-theme=dark] .rework-btn-submit.disabled{opacity:.5;pointer-events:none}:root[data-theme=dark] .rework-btn-cancel{background:var(--bg-tertiary);color:var(--text-secondary)}:root[data-theme=dark] .rework-btn-cancel:hover{background:var(--bg-secondary);color:var(--text-primary)}:root[data-theme=dark] .rework-btn-submit{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;box-shadow:0 4px 12px -2px rgba(245,158,11,.3)}:root[data-theme=dark] .rework-btn-submit:hover{box-shadow:0 6px 16px -2px rgba(245,158,11,.4);filter:brightness(1.05)}:root[data-theme=dark] .rework-btn-submit:active{filter:brightness(.95)}:root[data-theme=dark] .rework-btn-spinner{width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:rework-spin .7s linear infinite;margin:0 auto}@keyframes rework-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}:root[data-theme=dark] .task-priority.high{background:rgba(239,68,68,.12);color:#f87171}:root[data-theme=dark] .task-priority.medium{background:rgba(217,119,6,.12);color:#fbbf24}:root[data-theme=dark] .task-priority.low{background:rgba(37,99,235,.12);color:#60a5fa}:root[data-theme=dark] .task-status.pending{background:rgba(107,114,128,.15);color:#d1d5db}:root[data-theme=dark] .task-status.in_progress{background:rgba(37,99,235,.12);color:#60a5fa}:root[data-theme=dark] .task-status.done{background:rgba(5,150,105,.12);color:#34d399}:root[data-theme=dark] .task-status.blocked{background:rgba(239,68,68,.12);color:#f87171}:root[data-theme=dark] .btn-reject{background:rgba(239,68,68,.12);color:#f87171}:root[data-theme=dark] .btn-adjust{background:rgba(37,99,235,.12);color:#60a5fa}:root[data-theme=dark] .version-detail-card{background:var(--bg-primary);box-shadow:none}:root[data-theme=dark] .version-status-dot{background:rgba(51,65,85,.6)}:root[data-theme=dark] .rollback-action{background:var(--bg-primary);box-shadow:none}:root[data-theme=dark] .rollback-btn{background:rgba(239,68,68,.12);color:#f87171}:root[data-theme=dark] .rollback-btn:active,:root[data-theme=dark] .rollback-btn.pressed{background:rgba(239,68,68,.2)}:root[data-theme=dark] .version-badges .status-tag.stable{background:rgba(5,150,105,.12);color:#34d399}:root[data-theme=dark] .version-badges .status-tag.official{background:rgba(37,99,235,.12);color:#60a5fa}:root[data-theme=dark] .acceptance-card{background:var(--bg-primary);box-shadow:none}:root[data-theme=dark] .acceptance-status-badge.pending{background:rgba(217,119,6,.12);color:#fbbf24}:root[data-theme=dark] .acceptance-status-badge.passed{background:rgba(5,150,105,.12);color:#34d399}:root[data-theme=dark] .acceptance-status-badge.failed{background:rgba(239,68,68,.12);color:#f87171}:root[data-theme=dark] .bug-stat-item{background:var(--bg-secondary)}:root[data-theme=dark] .bug-list-status.new,:root[data-theme=dark] .bug-list-status.closed,:root[data-theme=dark] .bug-list-status.wontfix,:root[data-theme=dark] .bug-status-badge.new,:root[data-theme=dark] .bug-status-badge.closed,:root[data-theme=dark] .bug-status-badge.wontfix{background:rgba(107,114,128,.15);color:#d1d5db}:root[data-theme=dark] .bug-list-status.confirmed,:root[data-theme=dark] .bug-status-badge.confirmed{background:rgba(217,119,6,.12);color:#fbbf24}:root[data-theme=dark] .bug-list-status.in_progress,:root[data-theme=dark] .bug-list-status.verified,:root[data-theme=dark] .bug-status-badge.in_progress,:root[data-theme=dark] .bug-status-badge.verified{background:rgba(37,99,235,.12);color:#60a5fa}:root[data-theme=dark] .bug-list-status.fixed,:root[data-theme=dark] .bug-status-badge.fixed{background:rgba(5,150,105,.12);color:#34d399}:root[data-theme=dark] .bug-list-status.rejected,:root[data-theme=dark] .bug-status-badge.rejected{background:rgba(239,68,68,.12);color:#f87171}:root[data-theme=dark] .bug-list-status.pending,:root[data-theme=dark] .bug-status-badge.pending{background:rgba(217,119,6,.12);color:#fbbf24}:root[data-theme=dark] .bug-list-status.approved,:root[data-theme=dark] .bug-status-badge.approved{background:rgba(37,99,235,.12);color:#60a5fa}:root[data-theme=dark] .bug-list-status.executing,:root[data-theme=dark] .bug-status-badge.executing{background:rgba(99,102,241,.12);color:#818cf8}:root[data-theme=dark] .bug-list-status.completed,:root[data-theme=dark] .bug-status-badge.completed{background:rgba(5,150,105,.12);color:#34d399}:root[data-theme=dark] .bug-list-status.failed,:root[data-theme=dark] .bug-status-badge.failed{background:rgba(239,68,68,.12);color:#f87171}:root[data-theme=dark] .bug-list-status.queue,:root[data-theme=dark] .bug-status-badge.queue{background:rgba(147,51,234,.12);color:#c084fc}:root[data-theme=dark] .bug-severity-badge.critical{background:rgba(239,68,68,.12);color:#f87171}:root[data-theme=dark] .bug-severity-badge.major{background:rgba(234,88,12,.12);color:#fb923c}:root[data-theme=dark] .bug-severity-badge.minor{background:rgba(234,179,8,.12);color:#fde047}:root[data-theme=dark] .bug-severity-badge.trivial{background:rgba(107,114,128,.15);color:#d1d5db}:root[data-theme=dark] .bug-info-card{background:var(--bg-primary);box-shadow:none}:root[data-theme=dark] .bug-comment-item{background:var(--bg-secondary)}:root[data-theme=dark] .create-form-close{color:var(--text-tertiary)}:root[data-theme=dark] .form-input,:root[data-theme=dark] .form-textarea,:root[data-theme=dark] .picker-value{background:var(--bg-secondary);border-color:var(--border-color);color:var(--text-primary)}:root[data-theme=dark] .picker-value .placeholder,:root[data-theme=dark] .picker-value .picker-arrow{color:var(--text-tertiary)}:root[data-theme=dark] .rollback-popup{background:var(--bg-primary);box-shadow:0 20px 40px rgba(0,0,0,.4)}:root[data-theme=dark] .rollback-info{background:var(--bg-secondary)}:root[data-theme=dark] .reason-input{background:var(--bg-secondary);border-color:var(--border-color);color:var(--text-primary)}:root[data-theme=dark] .req-tabs,:root[data-theme=dark] .issue-type-tabs{background:var(--bg-secondary)}:root[data-theme=dark] .req-tab-item:not(.active),:root[data-theme=dark] .issue-type-item:not(.active){color:var(--text-tertiary)}:root[data-theme=dark] .tree-section-action{background:rgba(99,102,241,.08);border-color:rgba(99,102,241,.2);color:#818cf8}:root[data-theme=dark] .tree-section-action:active{background:rgba(99,102,241,.16)}:root[data-theme=dark] .version-module-count,:root[data-theme=dark] .tree-section-count{background:rgba(51,65,85,.6)}:root[data-theme=dark] .tree-module-badge.todo{background:rgba(156,163,175,.15);color:#9ca3af}:root[data-theme=dark] .tree-module-badge.in_progress{background:rgba(96,165,250,.12);color:#60a5fa}:root[data-theme=dark] .tree-module-badge.done{background:rgba(52,211,153,.12);color:#34d399}:root[data-theme=dark] .tree-module-badge.verified{background:rgba(52,211,153,.15);color:#34d399}:root[data-theme=dark] .module-status-dot.in_progress{background:#60a5fa;box-shadow:0 0 8px rgba(96,165,250,.5)}:root[data-theme=dark] .module-status-dot.verified{background:#34d399;box-shadow:0 0 8px rgba(52,211,153,.5)}:root[data-theme=dark] .tree-module-header.expanded{background:rgba(99,102,241,.06)}:root[data-theme=dark] .tree-item.active:before{background:#818cf8}:root[data-theme=dark] .version-card-item .version-card{background:var(--bg-primary);border-color:rgba(129,140,248,.08)}:root[data-theme=dark] .version-card-item .version-card-accent{background:#4b5563}:root[data-theme=dark] .version-card-item .version-card-accent.current{background:#34d399}:root[data-theme=dark] .version-card-item .version-card-version{color:var(--text-primary)}:root[data-theme=dark] .version-card-item .version-card-badge-current{background:rgba(52,211,153,.15);color:#34d399}:root[data-theme=dark] .version-card-item .version-card-commit{background:rgba(129,140,248,.1);color:#818cf8}:root[data-theme=dark] .version-card-item .version-card-date{color:var(--text-tertiary)}:root[data-theme=dark] .version-card-item .version-card-desc{color:var(--text-secondary)}:root[data-theme=dark] .version-card-item .version-card-arrow{color:var(--text-tertiary)}:root[data-theme=dark] .version-card-item.active .version-card{background:rgba(129,140,248,.1);border-color:rgba(129,140,248,.25)}:root[data-theme=dark] .tree-action-terminal{color:#f87171!important}:root[data-theme=dark] .tree-action-terminal-update{color:#34d399!important}:root[data-theme=dark] .doc-chat-header-badge{background:rgba(37,99,235,.12);color:#60a5fa}:root[data-theme=dark] .create-form-topbar{border-bottom-color:var(--border-color)}:root[data-theme=dark] .create-form-topbar .create-form-close{color:var(--text-tertiary)}:root[data-theme=dark] .mode-switch-inner{background:var(--bg-secondary)}:root[data-theme=dark] .mode-text{color:var(--text-secondary)}:root[data-theme=dark] .mode-btn.active{background:linear-gradient(135deg,#818cf8,#a78bfa);box-shadow:0 2px 8px rgba(129,140,248,.3)}:root[data-theme=dark] .mode-btn.active .mode-text{color:#fff}:root[data-theme=dark] .form-section{background:var(--bg-primary)}:root[data-theme=dark] .section-title{color:var(--text-primary);border-bottom-color:var(--border-color)}:root[data-theme=dark] .form-label{color:var(--text-secondary)}:root[data-theme=dark] .form-label.required:after{color:#f87171}:root[data-theme=dark] .form-input,:root[data-theme=dark] .form-textarea{background:var(--bg-secondary);border-color:var(--border-color);color:var(--text-primary)}:root[data-theme=dark] .picker-value{background:var(--bg-secondary);border-color:var(--border-color);color:var(--text-primary)}:root[data-theme=dark] .picker-value .placeholder{color:var(--text-tertiary)}:root[data-theme=dark] .picker-value .picker-arrow{color:var(--text-tertiary)}:root[data-theme=dark] .upload-add-btn{border-color:var(--border-color)}:root[data-theme=dark] .upload-add-icon{color:var(--text-tertiary)}:root[data-theme=dark] .key-image-tip{color:var(--text-tertiary)}:root[data-theme=dark] .upload-image-remove{background:rgba(0,0,0,.7)}:root[data-theme=dark] .dev-env-loading-sub{color:var(--text-tertiary)}:root[data-theme=dark] .dev-env-loading-card{background:var(--bg-primary);box-shadow:0 8px 32px rgba(0,0,0,.4)}:root[data-theme=dark] .dev-env-loading-spinner{border-color:rgba(51,65,85,.6)}:root[data-theme=dark] .dev-env-loading-text{color:var(--text-primary)}:root[data-theme=dark] .doc-detail{background:var(--bg-primary)}:root[data-theme=dark] .project-detail{background:var(--bg-secondary)}:root[data-theme=dark] .doc-content{color:var(--text-secondary)}:root[data-theme=dark] .doc-viewer-wrapper{background:var(--bg-primary)}:root[data-theme=dark] .popup-mask{background:rgba(0,0,0,.6)}:root[data-theme=dark] .doc-version-popup-mask{background:rgba(0,0,0,.6)}:root[data-theme=dark] .doc-new-popup-body .doc-edit-textarea{background:var(--bg-secondary);border-color:var(--border-color);color:var(--text-primary)}:root[data-theme=dark] .git-log-item{padding:10px 12px;margin:4px 8px;border-radius:8px;transition:all .15s ease;cursor:pointer;min-height:68px}:root[data-theme=dark] .git-log-item:hover{background:var(--bg-tertiary)}:root[data-theme=dark] .git-log-item.active{background:rgba(99,102,241,.06);box-shadow:inset 0 0 0 1px rgba(99,102,241,.12)}:root[data-theme=dark] .git-log-item.active .git-log-commit-hash{color:#6366f1}:root[data-theme=dark] .git-log-item .git-log-item-wrapper{width:100%;display:flex;flex-direction:column;justify-content:space-between;gap:8px}:root[data-theme=dark] .git-log-item .git-log-commit-hash{font-family:SF Mono,Consolas,monospace;font-size:13px;font-weight:600;color:var(--text-primary);letter-spacing:.02em;word-break:break-all;line-height:1.5}:root[data-theme=dark] .git-log-item .git-log-date{font-size:11px;color:var(--text-tertiary);align-self:flex-end;flex-shrink:0}:root[data-theme=dark] .version-sub-tabs{display:flex;gap:6px;padding:10px 12px;background:var(--bg-primary);border-bottom:1px solid var(--border-color)}:root[data-theme=dark] .version-sub-tabs .todo-filter-tab{flex:1;text-align:center;padding:7px 12px;border-radius:8px;font-size:13px;font-weight:500;color:var(--text-secondary);background:var(--bg-secondary);transition:all .2s ease;border:1px solid transparent}:root[data-theme=dark] .version-sub-tabs .todo-filter-tab:active{background:var(--bg-tertiary)}:root[data-theme=dark] .version-sub-tabs .todo-filter-tab.active{background:var(--bg-primary);color:#6366f1;border-color:rgba(99,102,241,.25);box-shadow:0 1px 4px rgba(99,102,241,.08)}:root[data-theme=dark] .git-todo-badges{display:flex;flex-wrap:wrap;gap:8px}:root[data-theme=dark] .git-todo-badges .git-todo-badge{display:inline-flex;align-items:center;padding:4px 10px;background:rgba(99,102,241,.06);border:1px solid rgba(99,102,241,.15);border-radius:6px;font-size:12px;font-weight:500;color:#6366f1;font-family:SF Mono,Consolas,monospace}:root[data-theme=dark] .files-list{display:flex;flex-direction:column;gap:6px}:root[data-theme=dark] .files-list .file-item{display:flex;align-items:center;gap:6px;padding:6px 10px;background:var(--bg-secondary);border-radius:6px;font-size:12px;font-family:SF Mono,Consolas,monospace;color:var(--text-secondary)}:root[data-theme=dark] .detail-copy-icon,:root[data-theme=dark] .detail-eye-icon{display:flex;align-items:center;justify-content:center;padding:4px;cursor:pointer;margin-left:4px}:root[data-theme=dark] .detail-status-wrapper{padding:4px 0}uni-page-body{background-color:var(--bg-secondary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}body{background-color:var(--bg-secondary)}::-webkit-scrollbar{display:none;width:0;height:0}uni-page-body::-webkit-scrollbar{display:none;width:0;height:0}:root{--primary-color: #6366F1;--primary-gradient: linear-gradient(135deg, #6366F1 0%, #8B5CF6 100%);--secondary-color: #1E293B;--accent-color: #10B981;--bg-primary: #FFFFFF;--bg-secondary: #F6F7FB;--bg-tertiary: #F1F3F9;--text-primary: #1E293B;--text-secondary: #64748B;--text-tertiary: #94A3B8;--border-color: #E2E8F0;--border-light: #F1F5F9;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .04), 0 1px 2px rgba(0, 0, 0, .02);--shadow-md: 0 4px 12px -2px rgba(0, 0, 0, .08), 0 2px 8px -2px rgba(0, 0, 0, .04);--shadow-lg: 0 10px 24px -4px rgba(0, 0, 0, .08), 0 4px 12px -2px rgba(0, 0, 0, .04);--shadow-xl: 0 20px 40px -8px rgba(0, 0, 0, .12), 0 8px 24px -4px rgba(0, 0, 0, .06);--header-height: 68px;--sidebar-width: 270px;--sidebar-collapsed-width: 76px;--tabbar-height: 60px;--radius-sm: 8px;--radius-md: 14px;--radius-lg: 18px;--radius-xl: 28px}[data-theme=dark]{--primary-color: #818CF8;--primary-gradient: linear-gradient(135deg, #818CF8 0%, #A78BFA 100%);--secondary-color: #F1F5F9;--accent-color: #34D399;--bg-primary: #0F172A;--bg-secondary: #1E293B;--bg-tertiary: #334155;--text-primary: #F1F5F9;--text-secondary: #94A3B8;--text-tertiary: #64748B;--border-color: #334155;--border-light: #1E293B;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .3), 0 1px 2px rgba(0, 0, 0, .2);--shadow-md: 0 4px 12px -2px rgba(0, 0, 0, .4), 0 2px 8px -2px rgba(0, 0, 0, .3);--shadow-lg: 0 10px 24px -4px rgba(0, 0, 0, .4), 0 4px 12px -2px rgba(0, 0, 0, .3);--shadow-xl: 0 20px 40px -8px rgba(0, 0, 0, .5), 0 8px 24px -4px rgba(0, 0, 0, .4)}[data-theme=dark] uni-page-body,[data-theme=dark] uni-page{background-color:#0f172a!important}body{background-color:#0f172a!important}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}uni-view,uni-text,uni-button,uni-input{will-change:auto}uni-page{background-color:var(--bg-secondary)}uni-page-body{background-color:var(--bg-secondary);min-height:100vh}.card{background:var(--bg-primary);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);border:1px solid var(--border-light);transition:all .35s cubic-bezier(.4,0,.2,1)}.card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px);border-color:rgba(99,102,241,.1)}.btn-primary{background:var(--primary-gradient);color:#fff;border:none;border-radius:var(--radius-md);padding:12px 28px;font-weight:600;cursor:pointer;transition:all .35s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 16px rgba(99,102,241,.35)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(99,102,241,.45)}.btn-primary:active{transform:translateY(-1px)}
