.page[data-v-314b1324]{padding:10px 0}.page-header[data-v-314b1324]{align-items:baseline;gap:12px;margin-bottom:15px;display:flex}.page-header h2[data-v-314b1324]{margin:0;font-size:1.2rem}.page-subtitle[data-v-314b1324]{color:#6b7280;font-size:.8rem}.search-bar[data-v-314b1324]{align-items:center;gap:10px;margin-bottom:15px;display:flex}.uid-search[data-v-314b1324]{border:1px solid #d1d5db;border-radius:4px;flex:1;max-width:400px;padding:6px 10px;font-size:.9rem}.result-count[data-v-314b1324]{color:#6b7280;white-space:nowrap;font-size:.8rem}.pull-btn[data-v-314b1324]{color:#374151;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #d1d5db;border-radius:4px;padding:6px 12px;font-size:.82rem;font-weight:500}.pull-btn[data-v-314b1324]:hover:not(:disabled){color:#2563eb;background:#eff6ff;border-color:#2563eb}.pull-btn[data-v-314b1324]:disabled{opacity:.6;cursor:wait}.pull-msg[data-v-314b1324]{color:#16a34a;white-space:nowrap;font-size:.8rem}.uid-table-wrap[data-v-314b1324]{border:1px solid #e5e7eb;border-radius:6px;overflow:hidden}.uid-table[data-v-314b1324]{border-collapse:collapse;width:100%;font-size:.85rem}.uid-table th[data-v-314b1324]{text-align:left;color:#4b5563;background:#f9fafb;border-bottom:2px solid #e5e7eb;padding:8px 12px;font-weight:600}.uid-table td[data-v-314b1324]{vertical-align:middle;border-bottom:1px solid #e5e7eb;padding:6px 12px}.uid-table tr[data-v-314b1324]:hover{background:#f3f4f6}.uid-table code[data-v-314b1324]{color:#1f2937;font-family:monospace;font-size:.82rem}.name-input[data-v-314b1324]{border:1px solid #d1d5db;border-radius:4px;width:200px;padding:4px 8px;font-size:.82rem}.name-input[data-v-314b1324]:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 2px #3b82f626}.actions-cell[data-v-314b1324]{text-align:right}.copy-btn[data-v-314b1324]{cursor:pointer;opacity:.4;background:0 0;border:1px solid #0000;border-radius:3px;padding:2px 6px;font-size:.8rem}.uid-table tr:hover .copy-btn[data-v-314b1324]{opacity:1}.copy-btn[data-v-314b1324]:hover{background:#e5e7eb;border-color:#d1d5db}.stats-page[data-v-5cb78ade]{margin-top:10px}.stats-empty[data-v-5cb78ade]{text-align:center;color:#9ca3af;background:#fff;border:1px solid #e5e7eb;border-radius:6px;padding:30px;font-size:.9rem}.stats-cards[data-v-5cb78ade]{gap:12px;margin-bottom:16px;display:flex}.stat-card[data-v-5cb78ade]{text-align:center;background:#fff;border:1px solid #e5e7eb;border-radius:6px;flex:1;padding:16px}.stat-value[data-v-5cb78ade]{font-size:1.8rem;font-weight:700}.stat-label[data-v-5cb78ade]{color:#6b7280;margin-top:2px;font-size:.78rem}.stats-section[data-v-5cb78ade]{background:#fff;border:1px solid #e5e7eb;border-radius:6px;margin-bottom:16px;padding:16px}.stats-section h3[data-v-5cb78ade]{color:#374151;margin:0 0 12px;font-size:.95rem}.split-bar[data-v-5cb78ade]{background:#f3f4f6;border-radius:4px;height:22px;margin-bottom:8px;display:flex;overflow:hidden}.split-seg[data-v-5cb78ade]{transition:width .3s}.split-legend[data-v-5cb78ade]{color:#4b5563;gap:20px;font-size:.8rem;display:flex}.legend-dot[data-v-5cb78ade]{border-radius:50%;width:10px;height:10px;margin-right:5px;display:inline-block}.status-rows[data-v-5cb78ade]{flex-direction:column;gap:8px;display:flex}.status-row[data-v-5cb78ade]{align-items:center;gap:10px;display:flex}.status-label[data-v-5cb78ade]{flex-shrink:0;width:130px}.bar-track[data-v-5cb78ade]{background:#f3f4f6;border-radius:3px;flex:1;height:16px;overflow:hidden}.bar-fill[data-v-5cb78ade]{border-radius:3px;height:100%;transition:width .3s}.status-count[data-v-5cb78ade]{text-align:right;width:90px;font-size:.82rem;font-weight:600}.status-pct[data-v-5cb78ade]{color:#9ca3af;font-weight:400}.stats-table[data-v-5cb78ade]{border-collapse:collapse;width:100%;font-size:.85rem}.stats-table th[data-v-5cb78ade]{text-align:left;color:#4b5563;background:#f9fafb;border-bottom:2px solid #e5e7eb;padding:8px 12px;font-weight:600}.stats-table td[data-v-5cb78ade]{border-bottom:1px solid #e5e7eb;padding:8px 12px}.stats-table .center[data-v-5cb78ade]{text-align:center}.mini-track[data-v-5cb78ade]{background:#f3f4f6;border-radius:3px;height:10px;overflow:hidden}.mini-fill[data-v-5cb78ade]{border-radius:3px;height:100%}.badge[data-v-5cb78ade]{color:#fff;white-space:nowrap;border-radius:10px;padding:2px 8px;font-size:.7rem;font-weight:600}.team-cards[data-v-5cb78ade]{flex-wrap:wrap;gap:14px;display:flex}.team-card[data-v-5cb78ade]{border:1px solid #e5e7eb;border-radius:6px;flex:1;min-width:260px;padding:12px 14px}.team-head[data-v-5cb78ade]{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.team-name[data-v-5cb78ade]{align-items:center;gap:6px;font-size:.95rem;font-weight:700;display:flex}.team-count[data-v-5cb78ade]{font-size:.85rem;font-weight:600}.team-bar[data-v-5cb78ade]{background:#f3f4f6;border-radius:3px;height:18px;margin-bottom:10px;overflow:hidden}.team-members[data-v-5cb78ade]{flex-direction:column;gap:7px;display:flex}.member-row[data-v-5cb78ade]{align-items:center;gap:8px;font-size:.8rem;display:flex}.member-track[data-v-5cb78ade]{flex:1}.member-count[data-v-5cb78ade]{text-align:right;width:30px;font-weight:600}.member-sub[data-v-5cb78ade]{color:#9ca3af;white-space:nowrap}.team-summary[data-v-5cb78ade]{color:#6b7280;margin-top:10px;font-size:.8rem}.stats-date[data-v-5cb78ade]{text-align:right;color:#6b7280;margin-bottom:8px;font-size:.8rem}.stats-filters[data-v-5cb78ade]{color:#1d4ed8;word-break:break-word;background:#eff6ff;border:1px solid #bfdbfe;border-radius:6px;margin-bottom:12px;padding:8px 12px;font-size:.78rem}.page[data-v-6cc70151]{padding:10px 0}.head[data-v-6cc70151]{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px;display:flex}.head h2[data-v-6cc70151]{margin:0}.head span[data-v-6cc70151],.hint[data-v-6cc70151],small[data-v-6cc70151]{color:#6b7280;font-size:.82rem}.hint[data-v-6cc70151]{margin:6px 0 12px}.export[data-v-6cc70151]{background:#16a34a}.export[data-v-6cc70151]:hover:not(:disabled){background:#15803d}.error[data-v-6cc70151]{color:#b91c1c}table[data-v-6cc70151]{border-collapse:collapse;width:100%;font-size:.8rem}th[data-v-6cc70151],td[data-v-6cc70151]{text-align:left;vertical-align:top;border:1px solid #e5e7eb;padding:5px}th[data-v-6cc70151]{background:#f9fafb}input[data-v-6cc70151],select[data-v-6cc70151]{max-width:140px;padding:4px}.adhocrow[data-v-6cc70151]{background:#fff7ed}.remove[data-v-6cc70151]{background:#dc2626}small[data-v-6cc70151]{word-break:break-word}.update-banner{z-index:9999;color:#fff;text-align:center;cursor:pointer;background:#2563eb;padding:8px;font-size:.85rem;font-weight:500;position:fixed;top:0;left:0;right:0}.update-banner:hover{background:#1d4ed8}body{color:#1f2937;background:#f3f4f6;margin:0;padding:40px 20px 20px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}.container{background:#fff;border-radius:8px;margin:0 auto;padding:30px;box-shadow:0 4px 6px -1px #0000001a}header{border-bottom:1px solid #e5e7eb;flex-direction:column;align-items:flex-start;gap:15px;margin-bottom:20px;padding-bottom:20px;display:flex}h1{margin:0;font-size:1.5rem}.nav-tabs{gap:2px;margin-bottom:10px;display:flex}.nav-tab{color:#6b7280;cursor:pointer;background:#f3f4f6;border:1px solid #e5e7eb;border-bottom:none;border-radius:6px 6px 0 0;padding:6px 16px;font-size:.85rem;font-weight:500}.nav-tab.active{color:#1f2937;background:#fff;border-color:#d1d5db}.nav-tab:not(.active):hover{background:#e5e7eb}.actions{flex-direction:column;gap:15px;width:100%;display:flex}.filters{background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;flex-wrap:wrap;align-items:center;gap:10px;padding:10px;display:flex}.filter-search{border:1px solid #d1d5db;border-radius:4px;width:220px;padding:5px 10px;font-size:.85rem}.filter-label{margin-right:5px;font-size:.9rem;font-weight:500}.filter-chip-group{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.filter-chip-wrap{display:inline-block;position:relative}.filter-chip{color:#374151;cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;background:#fff;border:1px solid #d1d5db;border-radius:4px;align-items:center;gap:5px;padding:4px 10px;font-size:.82rem;font-weight:500;display:inline-flex}.filter-chip:hover,.filter-chip.active{color:#2563eb;background:#eff6ff;border-color:#2563eb}.chip-count{color:#fff;background:#2563eb;border-radius:8px;padding:0 5px;font-size:.68rem;font-weight:700;line-height:14px}.chip-caret{color:#9ca3af;font-size:.7rem}.filter-chip-select{color:#374151;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:4px;padding:4px 8px;font-size:.82rem;font-weight:500}.filter-popup{z-index:100;background:#fff;border:1px solid #d1d5db;border-radius:6px;min-width:200px;max-width:280px;max-height:320px;padding:6px 0;position:absolute;top:calc(100% + 4px);left:0;overflow-y:auto;box-shadow:0 4px 12px #00000026}.popup-head{color:#6b7280;background:#fff;border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;margin-bottom:4px;padding:4px 12px 6px;font-size:.78rem;font-weight:600;display:flex;position:sticky;top:0}.popup-clear{color:#2563eb;cursor:pointer;background:0 0;border:none;padding:0;font-size:.75rem;font-weight:600}.popup-clear:hover{text-decoration:underline}.popup-search{z-index:1;background:#fff;padding:4px 8px 8px;position:sticky;top:26px}.popup-search input{box-sizing:border-box;border:1px solid #d1d5db;border-radius:4px;outline:none;width:100%;padding:5px 8px;font-size:.8rem}.popup-search input:focus{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb26}.popup-option{color:#374151;cursor:pointer;white-space:nowrap;align-items:center;gap:8px;padding:5px 12px;font-size:.82rem;display:flex}.popup-option:hover{background:#f3f4f6}.popup-option input[type=checkbox]{accent-color:#2563eb;margin:0}.popup-color-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.popup-notassigned{color:#9ca3af;font-style:italic}.popup-empty{color:#9ca3af;padding:8px 12px;font-size:.78rem}.product-select{background:#fff;border:1px solid #d1d5db;border-radius:4px;padding:4px 8px;font-size:.85rem}.filter-toggle{color:#4b5563;cursor:pointer;align-items:center;gap:4px;font-size:.85rem;display:flex}.filter-badge{min-width:auto;padding:2px 6px;font-size:.7rem}button{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:4px;padding:8px 16px;font-weight:500}.logout-btn{background:#dc2626}.export-btn{background:#16a34a}.export-btn:hover{background:#15803d}button:hover:not(:disabled){background:#1d4ed8}.logout-btn:hover{background:#b91c1c}button:disabled{opacity:.5;cursor:not-allowed}.status-text{color:#6b7280;margin-left:10px;font-size:.875rem}.error{color:#ef4444;background:#fee2e2;border-radius:4px;margin-bottom:20px;padding:10px}.login-form{align-items:center;gap:10px;display:flex}input{border:1px solid #d1d5db;border-radius:4px;padding:8px}.table-container{background:#fff;border:1px solid #e5e7eb;border-radius:6px;margin-top:10px;overflow-x:auto}.task-table{border-collapse:collapse;width:100%;font-size:.85rem}.task-table th{text-align:left;white-space:nowrap;color:#4b5563;background:#f9fafb;border-bottom:2px solid #e5e7eb;padding:10px 12px;font-weight:600}.task-table td{vertical-align:middle;border-bottom:1px solid #e5e7eb;padding:8px 12px}.task-row:hover{background:#f3f4f6}.task-row.deleted td{color:#9ca3af;text-decoration:line-through}.task-row.deleted a{color:#9ca3af}.task-row.deleted .badge{opacity:.6}.badge{color:#fff;text-align:center;border-radius:4px;min-width:90px;padding:3px 6px;font-size:.7rem;font-weight:600;display:inline-block}.task-id{color:#2563eb;font-family:monospace;font-size:.85rem;text-decoration:none}.task-id:hover{text-decoration:underline}.task-id-btn{cursor:pointer;background:0 0;border:none;padding:0;font-weight:400}.modal-overlay{z-index:10000;background:#00000073;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-box{background:#fff;border-radius:8px;width:100%;max-width:560px;max-height:85vh;overflow-y:auto;box-shadow:0 8px 32px #00000040}.modal-head{background:#fff;border-bottom:1px solid #e5e7eb;padding:16px 18px 12px;position:sticky;top:0}.modal-title-row{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.modal-title{font-size:1rem;line-height:1.4}.modal-badges{flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px;display:flex}.modal-badges .badge{min-width:0}.modal-chips{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.modal-chip{color:#4b5563;white-space:nowrap;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:999px;padding:2px 8px;font-size:.72rem;font-weight:500}.modal-chip-blue{color:#1d4ed8;background:#dbeafe;border-color:#bfdbfe}.modal-actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.action-btn{color:#fff;cursor:pointer;white-space:nowrap;background:#2563eb;border:none;border-radius:4px;padding:5px 12px;font-size:.78rem;font-weight:600}.action-btn:hover:not(:disabled){background:#1d4ed8}.action-btn:disabled{opacity:.5;cursor:not-allowed}.action-select{color:#374151;background:#fff;border:1px solid #d1d5db;border-radius:4px;max-width:180px;padding:5px 8px;font-size:.78rem}.modal-note-row{gap:6px;display:flex}.modal-note-input{color:#1f2937;border:1px solid #d1d5db;border-radius:4px;flex:1;padding:5px 10px;font-size:.8rem}.modal-note-input:focus{border-color:#2563eb;outline:none;box-shadow:0 0 0 1px #2563eb}.modal-sec-title{text-transform:uppercase;letter-spacing:.04em;color:#9ca3af;margin-bottom:4px;font-size:.72rem;font-weight:700}.modal-text{white-space:pre-wrap;word-break:break-word;background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;padding:10px 12px;font-size:.82rem;line-height:1.55}.modal-text .task-id,.modal-msg .task-id{word-break:break-all}.modal-body{flex-direction:column;gap:12px;padding:14px 18px;display:flex}.modal-loading{text-align:center;color:#6b7280;padding:24px}.modal-grid{grid-template-columns:110px 1fr;gap:6px 12px;font-size:.82rem;display:grid}.modal-grid>span:nth-child(odd){color:#6b7280;font-weight:500}.modal-grid .mono{font-family:monospace}.modal-dim{color:#9ca3af;font-size:.75rem}.modal-list{margin:4px 0 0;padding-left:18px;font-size:.78rem}.modal-list li{word-break:break-all;margin:2px 0}.modal-msg{white-space:pre-wrap;background:#f9fafb;border:1px solid #e5e7eb;border-radius:4px;margin-top:6px;padding:6px 10px;font-size:.78rem}.modal-msg-head{align-items:baseline;gap:8px;margin-bottom:2px;display:flex}.modal-sec{font-size:.82rem}.modal-sec pre{white-space:pre-wrap;background:#f9fafb;border:1px solid #e5e7eb;border-radius:4px;max-height:200px;margin:4px 0 0;padding:8px 10px;font-size:.78rem;overflow-y:auto}.task-link{color:#111827;cursor:pointer;text-decoration:none}.task-link:hover{color:#2563eb;text-decoration:underline}.task-link-sub{color:#374151}.cell-title{min-width:250px;max-width:300px}.scrollable-title{white-space:nowrap;scrollbar-width:thin;color:#111827;padding-bottom:4px;font-weight:500;position:relative;overflow-x:auto}.scrollable-title::-webkit-scrollbar{height:4px}.scrollable-title::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:2px}.copy-btn{cursor:pointer;opacity:0;z-index:1;background:#fff;border:1px solid #d1d5db;border-radius:3px;padding:1px 4px;font-size:.7rem;line-height:1;position:absolute;top:50%;left:0;transform:translateY(-50%)}.scrollable-title:hover .copy-btn{opacity:1}.copy-btn:hover{background:#e5e7eb}.plan-add-btn,.planned-pill{white-space:nowrap;border-radius:3px;margin-left:6px;padding:2px 6px;font-size:.72rem}.plan-add-btn{color:#fff;background:#2563eb}.plan-adhoc-btn{background:#b45309}.planned-pill{color:#166534;background:#dcfce7}.tree-branch{color:#9ca3af;margin-right:4px}.task-assignee{color:#6b7280;white-space:nowrap;background:#e5e7eb;border-radius:4px;padding:2px 6px;font-size:.75rem}.task-assignee.unassigned{color:#9ca3af;background:0 0;border:1px dashed #d1d5db}.product-badge{color:#1d4ed8;white-space:nowrap;background:#dbeafe;border-radius:4px;padding:2px 6px;font-size:.75rem;font-weight:600}.center{text-align:center}.compact-date{color:#374151;border:1px solid #d1d5db;border-radius:4px;padding:4px;font-size:.8rem}.date-filter-row{align-items:center;gap:6px;padding:3px 0;display:flex}.date-filter-label{color:#374151;flex:none;width:72px;font-size:.8rem;font-weight:500}.date-filter-sep{color:#9ca3af}.cell-date{color:#374151;white-space:nowrap;font-size:.78rem}.cell-user{color:#374151;white-space:nowrap;text-overflow:ellipsis;max-width:110px;font-size:.78rem;overflow:hidden}.compact-input{color:#374151;border:1px solid #d1d5db;border-radius:4px;width:70px;padding:4px;font-size:.8rem}.compact-input[readonly]{color:#6b7280;cursor:not-allowed;background:#f3f4f6}.worklog-btn{cursor:pointer;color:#6b7280;background:0 0;border:1px solid #d1d5db;border-radius:4px;padding:2px 6px;font-size:.85rem;line-height:1;transition:all .15s}.worklog-btn:hover{color:#2563eb;background:#f3f4f6;border-color:#2563eb}.worklog-btn.active{color:#2563eb;background:#eff6ff;border-color:#2563eb}.worklog-row td{background:#f9fafb;padding:8px 12px}.worklog-inline{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.worklog-input{color:#1f2937;border:1px solid #d1d5db;border-radius:4px;padding:4px 8px;font-size:.82rem}.worklog-input:focus{border-color:#2563eb;outline:none;box-shadow:0 0 0 1px #2563eb}.worklog-date{width:135px}.worklog-hours{width:70px}.worklog-submit{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:4px;padding:4px 12px;font-size:.82rem;font-weight:600}.worklog-submit:hover:not(:disabled){background:#1d4ed8}.worklog-submit:disabled{opacity:.5;cursor:not-allowed}.worklog-cancel{color:#6b7280;cursor:pointer;background:0 0;border:1px solid #d1d5db;border-radius:4px;padding:3px 8px;font-size:.82rem}.worklog-cancel:hover{color:#dc2626;background:#fee2e2;border-color:#fca5a5}.worklog-msg{border-radius:4px;padding:2px 8px;font-size:.78rem;font-weight:500}.worklog-msg.ok{color:#16a34a;background:#dcfce7}.worklog-msg.err{color:#dc2626;background:#fee2e2}.user-auth-bar{background:#fffbeb;border:1px solid #fde68a;border-radius:6px;align-items:center;gap:8px;padding:6px 10px;font-size:.82rem;display:flex}.user-auth-label{color:#92400e;font-weight:500}.user-auth-input{border:1px solid #d1d5db;border-radius:4px;width:120px;padding:3px 8px;font-size:.82rem}.user-auth-btn{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:4px;padding:3px 12px;font-size:.82rem;font-weight:500}.user-auth-btn:hover:not(:disabled){background:#1d4ed8}.user-auth-btn:disabled{opacity:.5;cursor:not-allowed}
