.kanban-board{background:#ffffff08;border:1px solid rgba(255,69,0,.2);border-radius:12px;overflow:hidden}.kanban-title{margin:0;padding:0;font-size:.875rem;color:#ff4500}.kanban-title-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.75rem 1rem;border-bottom:1px solid rgba(255,69,0,.2);background:#ff45000d}.kanban-collapse-btn{border:1px solid rgba(255,69,0,.35);background:#00000040;color:#ffb08a;border-radius:999px;padding:.2rem .65rem;font-size:.72rem;font-weight:600;cursor:pointer;white-space:nowrap}.kanban-collapse-btn:hover{border-color:#ff45008c;background:#ff450029}.kanban-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;padding:.75rem 1rem;border-bottom:1px solid rgba(255,69,0,.1)}.kanban-toolbar-controls{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;flex:1;justify-content:flex-end}.kanban-search-wrapper{position:relative;min-width:200px;max-width:300px;flex:1}.kanban-search{width:100%;padding:.5rem 2rem .5rem .75rem;border:1px solid rgba(255,69,0,.25);border-radius:8px;background:#0000004d;color:#e5e7eb;font-size:.875rem;transition:border-color .2s;box-sizing:border-box}.kanban-search:focus{outline:none;border-color:#ff4500;box-shadow:0 0 0 2px #ff450026}.kanban-search::placeholder{color:#6b7280}.kanban-search-clear{position:absolute;right:6px;top:50%;transform:translateY(-50%);background:none;border:none;color:#6b7280;font-size:1.1rem;cursor:pointer;padding:0 4px;line-height:1}.kanban-search-clear:hover{color:#ff4500}.kanban-filters{display:flex;gap:.35rem}.kanban-filter-chip{padding:.35rem .65rem;border-radius:16px;border:1px solid rgba(255,255,255,.1);background:#ffffff0a;color:#9ca3af;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .2s}.kanban-filter-chip:hover{background:#ff45001a;border-color:#ff45004d;color:#e5e7eb}.kanban-filter-chip.active{background:#ff450033;border-color:#ff4500;color:#ff4500;font-weight:600}.kanban-filter-chip.priority-high.active{background:#ef444433;border-color:#ef4444;color:#ef4444}.kanban-filter-chip.priority-medium.active{background:#fbbf2433;border-color:#fbbf24;color:#fbbf24}.kanban-filter-chip.priority-low.active{background:#4ade8033;border-color:#4ade80;color:#4ade80}.kanban-task-count{font-size:.8rem;color:#6b7280;white-space:nowrap}.kanban-mobile-nav{display:none}.kanban-mobile-nav-btn,.kanban-mobile-pill{appearance:none;-webkit-appearance:none;font-family:inherit;line-height:1.1}.kanban-columns{display:grid;grid-template-columns:repeat(6,minmax(200px,1fr));gap:1rem;overflow-x:auto;padding:.75rem 1rem 1rem}@media(max-width:1200px){.kanban-columns{grid-template-columns:repeat(3,minmax(280px,1fr));max-height:calc(100vh - 260px);overflow-y:auto}}@media(max-width:768px){.kanban-mobile-nav{position:sticky;top:0;z-index:4;display:flex;flex-direction:column;gap:.5rem;padding:.65rem .75rem .75rem;border-bottom:1px solid rgba(255,69,0,.18);background:#0f0f19f5;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.kanban-mobile-nav-row{display:grid;grid-template-columns:auto 1fr auto;gap:.5rem;align-items:center}.kanban-mobile-nav-btn{border:1px solid rgba(255,69,0,.3);background:linear-gradient(180deg,#ff450033,#ff450014);color:#ffb08a;border-radius:999px;padding:.42rem .72rem;font-size:.8rem;font-weight:600;cursor:pointer;box-shadow:inset 0 1px #ffffff0f;transition:transform .15s ease,border-color .15s ease,background .15s ease}.kanban-mobile-nav-btn:hover{border-color:#ff45008c;background:linear-gradient(180deg,#ff450047,#ff45001f)}.kanban-mobile-nav-btn:active{transform:translateY(1px)}.kanban-mobile-current-column{display:inline-flex;justify-content:center;align-items:center;gap:.45rem;color:#e5e7eb;font-weight:600;font-size:.9rem;text-align:center}.kanban-mobile-current-count{display:inline-flex;align-items:center;justify-content:center;min-width:1.2rem;height:1.2rem;border-radius:999px;background:#ff450033;color:#ffb08a;font-size:.72rem}.kanban-mobile-pills{display:flex;gap:.45rem;overflow-x:auto;padding-bottom:.1rem;scrollbar-width:none}.kanban-mobile-pills::-webkit-scrollbar{display:none}.kanban-mobile-pill{border:1px solid rgba(255,69,0,.2);background:#16161ee6;color:#d1d5db;border-radius:999px;padding:.34rem .64rem;display:inline-flex;align-items:center;gap:.45rem;font-size:.78rem;white-space:nowrap;cursor:pointer;transition:border-color .15s ease,color .15s ease,background .15s ease}.kanban-mobile-pill:hover{border-color:#ff450066;color:#f3f4f6}.kanban-mobile-pill.active{border-color:#ff4500;color:#ff6b35;background:#ff45002b}.kanban-mobile-pill-count{display:inline-flex;align-items:center;justify-content:center;min-width:1.15rem;height:1.15rem;border-radius:999px;background:#0000004d;font-size:.68rem;color:#9ca3af}.kanban-mobile-pill.active .kanban-mobile-pill-count{color:#ffb08a}.kanban-columns{grid-template-columns:repeat(2,minmax(260px,1fr))}.kanban-columns.mobile-single-column{grid-template-columns:minmax(0,1fr);overflow-x:hidden;max-height:none;padding:.75rem}.kanban-columns.mobile-single-column .kanban-column{min-height:100%;max-height:100%;height:100%}.kanban-columns.mobile-single-column .kanban-card{padding:.85rem}.kanban-toolbar{flex-direction:column;align-items:stretch}.kanban-toolbar-controls{justify-content:flex-start}.kanban-search-wrapper{max-width:100%}}.kanban-column{background:#ffffff08;border-radius:12px;border:1px solid rgba(255,69,0,.1);display:flex;flex-direction:column;min-height:400px;max-height:calc(100vh - 240px);transition:border-color .2s}.kanban-column.drop-target{border-color:#ff4500;background:#ff450014;box-shadow:0 0 16px #ff450026}.kanban-column.special-column{background:#ef444414;border-color:#ef44444d;box-shadow:0 0 20px #ef44441a}.kanban-column.special-column.drop-target{border-color:#ff4500;background:#ff450014;box-shadow:0 0 16px #ff450026}.kanban-column.special-column .kanban-column-header{background:#ef444426;border-bottom-color:#ef44444d}.kanban-column.special-column .kanban-column-title{color:#ef4444}.kanban-column-header{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border-bottom:1px solid rgba(255,69,0,.2);background:#ff45000d;border-radius:12px 12px 0 0}.kanban-column-emoji{font-size:1.1rem}.kanban-column-title{flex:1;font-weight:600;color:#e5e7eb;font-size:.95rem}.kanban-column-count{background:#ffffff1a;color:#9ca3af;padding:.2rem .5rem;border-radius:12px;font-size:.8rem;font-weight:500}.kanban-add-btn{background:#ff450033;border:none;color:#ff4500;font-size:1.2rem;font-weight:600;width:28px;height:28px;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.kanban-add-btn:hover{background:#ff4500;color:#fff}.kanban-column-progress{height:2px;background:#ffffff0d}.kanban-column-progress-fill{height:100%;background:linear-gradient(90deg,#ff4500,#ff6b35);border-radius:0 0 2px 2px;transition:width .3s ease}.kanban-column-content{flex:1;padding:.75rem;overflow-y:auto;display:flex;flex-direction:column;gap:.75rem;min-height:100px}.kanban-empty-drop{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;padding:2rem 1rem;border:2px dashed rgba(255,69,0,.15);border-radius:8px;color:#6b7280;font-size:.85rem;font-style:italic;transition:all .2s;flex:1}.kanban-empty-icon{font-size:1.5rem;opacity:.4}.kanban-card{background:#0000004d;border-radius:8px;padding:.75rem;border:1px solid rgba(255,69,0,.15);cursor:grab;transition:all .2s;position:relative;animation:cardFadeIn .25s ease-out}@keyframes cardFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.kanban-card:hover{border-color:#ff4500;transform:translateY(-2px);box-shadow:0 4px 12px #ff450026}.kanban-card:active{cursor:grabbing}.kanban-card:focus-visible{outline:2px solid #ff4500;outline-offset:2px;border-color:#ff6b35}.kanban-card.dragging{opacity:.4;border-color:#ff4500;box-shadow:0 0 12px #ff450033}.kanban-card.drag-overlay{box-shadow:0 12px 32px #0009,0 0 20px #ff450040;border-color:#ff4500;transform:rotate(2deg) scale(1.03);cursor:grabbing;background:#0a0a14f2}.kanban-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.kanban-card-id{font-size:.7rem;color:#6b7280;font-family:monospace}.kanban-card-priority{padding:.15rem .4rem;border-radius:4px;font-size:.65rem;font-weight:600;text-transform:uppercase;color:#fff}.kanban-card-title{font-weight:500;color:#e5e7eb;font-size:.9rem;line-height:1.3;margin-bottom:.5rem}.kanban-card-desc{font-size:.8rem;color:#9ca3af;line-height:1.3;margin-bottom:.5rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.kanban-card-meta{margin-bottom:.5rem;padding:.45rem .5rem;border-radius:6px;background:#ffffff08;border:1px solid rgba(255,255,255,.05);display:flex;flex-direction:column;gap:.25rem}.kanban-card-meta-row{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.kanban-card-meta-label{color:#9ca3af;font-size:.7rem;text-transform:uppercase;letter-spacing:.02em}.kanban-card-meta-value{color:#d1d5db;font-size:.72rem}.kanban-card-footer{display:flex;flex-direction:column;gap:.4rem;padding-top:.5rem;border-top:1px solid rgba(255,255,255,.05)}.kanban-card-assignee{font-size:.75rem;color:#9ca3af}.kanban-card-tags{display:flex;flex-wrap:wrap;gap:.3rem}.kanban-card-tag{background:#ff450026;color:#ff6b35;padding:.15rem .4rem;border-radius:4px;font-size:.7rem}.kanban-loading{width:100%}.kanban-skeleton{display:grid;grid-template-columns:repeat(6,1fr);gap:1rem}.kanban-skeleton-col{background:#ffffff08;border-radius:12px;border:1px solid rgba(255,69,0,.1);padding:.75rem;min-height:300px;display:flex;flex-direction:column;gap:.75rem}.skeleton-header{height:32px;background:linear-gradient(90deg,#ff450014 25%,#ff450026,#ff450014 75%);background-size:200% 100%;border-radius:8px;animation:shimmer 1.5s ease-in-out infinite}.skeleton-card{height:80px;background:linear-gradient(90deg,#ffffff08 25%,#ffffff0f,#ffffff08 75%);background-size:200% 100%;border-radius:8px;animation:shimmer 1.5s ease-in-out infinite}.skeleton-card.short{height:50px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.kanban-error{text-align:center;padding:3rem;color:#ef4444}.modal-overlay{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:overlayFadeIn .15s ease-out}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:#1a1a2e;border-radius:12px;border:1px solid rgba(255,69,0,.3);max-width:500px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #00000080;animation:modalSlideIn .2s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid rgba(255,69,0,.2);background:#ff45000d;border-radius:12px 12px 0 0}.modal-header h3{margin:0;color:#ff4500;font-size:1.1rem}.modal-task-id{font-family:monospace;font-size:.85rem;color:#6b7280}.modal-close{background:none;border:none;color:#6b7280;font-size:1.5rem;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s}.modal-close:hover{background:#ff45001a;color:#ff4500}.modal-body{padding:1.25rem}.modal-title{margin:0 0 1rem;color:#e5e7eb;font-size:1.25rem;line-height:1.4}.modal-description{margin:0 0 1.25rem;color:#9ca3af;line-height:1.5;font-size:.95rem}.modal-meta{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem;padding:1rem;background:#0003;border-radius:8px}.modal-meta-item{display:flex;align-items:center;gap:.75rem;font-size:.9rem}.modal-meta-label{color:#6b7280;width:90px;flex-shrink:0}.modal-priority-badge{padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase;color:#fff}.modal-tags{display:flex;flex-wrap:wrap;gap:.4rem}.modal-tag{background:#ff450033;color:#ff6b35;padding:.2rem .5rem;border-radius:4px;font-size:.8rem}.modal-actions{border-top:1px solid rgba(255,255,255,.1);padding-top:1rem}.modal-actions-label{margin:0 0 .75rem;color:#9ca3af;font-size:.9rem}.modal-move-buttons{display:flex;flex-wrap:wrap;gap:.5rem}.modal-move-btn{background:#ffffff0d;border:1px solid rgba(255,69,0,.2);color:#e5e7eb;padding:.5rem .75rem;border-radius:6px;cursor:pointer;font-size:.85rem;transition:all .2s}.modal-move-btn:hover:not(:disabled){background:#ff450033;border-color:#ff4500}.modal-move-btn.active{background:#ff45004d;border-color:#ff4500;color:#fff}.modal-move-btn:disabled{opacity:.5;cursor:not-allowed}.modal-actions-row{margin-bottom:1rem}.modal-actions-row:last-child{margin-bottom:0}.modal-action-buttons{display:flex;gap:.75rem}.modal-edit-btn{background:#3b82f626;border:1px solid rgba(59,130,246,.3);color:#3b82f6;padding:.75rem 1.5rem;border-radius:8px;cursor:pointer;font-size:.95rem;font-weight:600;flex:1;transition:all .2s}.modal-edit-btn:hover{background:#3b82f640;border-color:#3b82f6}.modal-delete-btn{background:#ef444426;border:1px solid rgba(239,68,68,.3);color:#ef4444;padding:.75rem 1.5rem;border-radius:8px;cursor:pointer;font-size:.95rem;font-weight:600;flex:1;transition:all .2s}.modal-delete-btn:hover{background:#ef444440;border-color:#ef4444}.delete-confirm-modal{max-width:400px}.delete-confirm-text{color:#e5e7eb;font-size:.95rem;line-height:1.5;margin-bottom:1.5rem}.delete-confirm-actions{display:flex;justify-content:flex-end;gap:.75rem}.btn-delete{background:#ef4444;border:none;color:#fff;padding:.75rem 1.5rem;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:background .2s}.btn-delete:hover{background:#dc2626}.modal-form{padding:1.25rem}.form-group{margin-bottom:1rem}.form-group label{display:block;color:#9ca3af;font-size:.85rem;margin-bottom:.4rem}.form-group input,.form-group textarea,.form-group select{width:100%;padding:.75rem;border:1px solid rgba(255,69,0,.2);border-radius:8px;background:#0000004d;color:#e5e7eb;font-size:.95rem;box-sizing:border-box;transition:border-color .2s}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:#ff4500;box-shadow:0 0 0 2px #ff45001a}.form-group textarea{resize:vertical;min-height:80px}.task-readonly-meta{border:1px solid rgba(255,255,255,.1);background:#0003;border-radius:8px;padding:.65rem .75rem;display:flex;flex-direction:column;gap:.45rem}.task-readonly-meta-row{display:flex;justify-content:space-between;align-items:center;gap:.75rem}.task-readonly-meta-label{color:#9ca3af;font-size:.82rem}.task-readonly-meta-value{color:#e5e7eb;font-size:.82rem;text-align:right}.task-readonly-meta-id-actions{display:flex;align-items:center;gap:.5rem}.task-id-value{font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace}.task-copy-id-btn{border:1px solid rgba(255,255,255,.2);background:#ffffff14;color:#e5e7eb;border-radius:6px;padding:.2rem .5rem;font-size:.75rem;cursor:pointer}.task-copy-id-btn:hover{border-color:#fff6;background:#ffffff29}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media(max-width:500px){.form-row{grid-template-columns:1fr}}.modal-form-actions{display:flex;justify-content:space-between;gap:.75rem;margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.1)}.modal-form-actions-left,.modal-form-actions-right{display:flex;gap:.75rem}.btn-cancel,.btn-submit,.btn-delete{padding:.75rem 1.5rem;border-radius:8px;font-size:.95rem;cursor:pointer;transition:all .2s}.btn-cancel{background:#ffffff0d;border:1px solid rgba(255,69,0,.2);color:#e5e7eb}.btn-cancel:hover{background:#ff45001a}.btn-submit{background:#ff4500;border:none;color:#fff;font-weight:600}.btn-submit:hover{background:#ff6b35}.kanban-add-btn:focus-visible,.modal-close:focus-visible,.task-copy-id-btn:focus-visible,.btn-cancel:focus-visible,.btn-submit:focus-visible,.btn-delete:focus-visible,.kanban-mobile-nav-btn:focus-visible,.kanban-mobile-pill:focus-visible,.kanban-filter-chip:focus-visible,.kanban-search-clear:focus-visible{outline:2px solid #ff6b35;outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.kanban-column-content::-webkit-scrollbar{width:6px}.kanban-column-content::-webkit-scrollbar-track{background:#0003;border-radius:3px}.kanban-column-content::-webkit-scrollbar-thumb{background:#ff45004d;border-radius:3px}.kanban-column-content::-webkit-scrollbar-thumb:hover{background:#ff450080}.modal-content::-webkit-scrollbar{width:8px}.modal-content::-webkit-scrollbar-track{background:#0003;border-radius:4px}.modal-content::-webkit-scrollbar-thumb{background:#ff45004d;border-radius:4px}@media(max-width:1200px){.kanban-skeleton{grid-template-columns:repeat(3,minmax(280px,1fr))}}.modal-content.user-management-modal{max-width:1200px;width:calc(100vw - 2rem);max-height:85vh;display:flex;flex-direction:column}.user-management-modal .modal-body{overflow-y:auto;padding:1rem}.um-error{display:flex;align-items:center;justify-content:space-between;padding:.6rem .8rem;margin-bottom:.75rem;background:#ff45451f;border:1px solid rgba(255,69,69,.3);border-radius:8px;color:#ff8585;font-size:.85rem}.um-error-dismiss{background:none;border:none;color:#ff8585;cursor:pointer;font-size:1.1rem;padding:0 .25rem}.um-toolbar{display:flex;gap:.5rem;margin-bottom:.75rem}.um-add-btn,.um-refresh-btn{padding:.45rem .85rem;border:1px solid rgba(255,69,0,.3);border-radius:8px;background:#ff45001a;color:#ffba98;font-size:.82rem;cursor:pointer;transition:background .15s}.um-add-btn:hover,.um-refresh-btn:hover{background:#ff450033}.um-add-form{padding:.75rem;margin-bottom:.75rem;background:#ffffff08;border:1px solid rgba(255,69,0,.15);border-radius:10px}.um-form-row{display:flex;gap:.5rem;margin-bottom:.5rem}.um-form-row:last-of-type{margin-bottom:0}.um-form-row input,.um-form-row select{flex:1;padding:.5rem .6rem;border:1px solid rgba(255,69,0,.2);border-radius:8px;background:#04081499;color:#e5e7eb;font-size:.85rem}.um-form-row input:focus,.um-form-row select:focus{outline:none;border-color:#ff6b35}.um-submit-btn{padding:.5rem 1rem;border:none;border-radius:8px;background:linear-gradient(135deg,#ff4500,#ff6b35);color:#fff;font-size:.85rem;font-weight:600;cursor:pointer;white-space:nowrap}.um-submit-btn:disabled{opacity:.6;cursor:not-allowed}.um-form-error{margin-top:.5rem;font-size:.82rem;color:#ff8585}.um-loading{text-align:center;padding:2rem;color:#96a0b6}.um-table-wrapper{overflow-x:auto}.um-table{width:100%;border-collapse:collapse;font-size:.84rem}.um-table th{padding:.55rem .6rem;text-align:left;color:#96a0b6;font-weight:600;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid rgba(255,69,0,.15);white-space:nowrap}.um-table td{padding:.55rem .6rem;border-bottom:1px solid rgba(255,255,255,.04);color:#c3cada}.um-table tr:hover{background:#ffffff05}.um-locked-row{background:#ff45450d}.um-name{font-weight:500;color:#e5e7eb}.um-email{color:#96a0b6;font-size:.82rem}.um-role-select{padding:.25rem .4rem;border:1px solid rgba(255,255,255,.1);border-radius:6px;background:#04081480;color:#c3cada;font-size:.82rem;cursor:pointer}.um-role-select:disabled{opacity:.5;cursor:not-allowed}.um-role-admin{color:#ff4500;border-color:#ff45004d}.um-auth-method{font-size:.8rem;color:#96a0b6}.um-last-login{font-size:.8rem;color:#96a0b6;white-space:nowrap}.um-status-active{color:#34d399;font-size:.8rem}.um-status-locked{color:#ff8585;font-size:.8rem;font-weight:600}.um-status-warning{color:#fbbf24;font-size:.8rem}.um-actions{white-space:nowrap}.um-action-btn{padding:.25rem .5rem;border:none;border-radius:6px;font-size:.78rem;cursor:pointer;margin-right:.25rem}.um-unlock-btn{background:#fbbf2426;color:#fbbf24;border:1px solid rgba(251,191,36,.3)}.um-unlock-btn:hover{background:#fbbf2440}.um-delete-btn{background:#ff45451a;color:#ff8585;border:1px solid rgba(255,69,69,.2)}.um-delete-btn:hover{background:#ff454533}.um-delete-confirm-btn{background:#ff454533;color:#ff6b6b;border:1px solid rgba(255,69,69,.4)}.um-cancel-btn{background:#ffffff0d;color:#96a0b6;border:1px solid rgba(255,255,255,.1)}.um-confirm-delete{display:inline-flex;gap:.25rem}.um-editable{cursor:pointer;border-bottom:1px dashed rgba(255,255,255,.15);padding-bottom:1px}.um-editable:hover{border-bottom-color:#ff6b35;color:#fff}.um-inline-edit{display:inline-flex;align-items:center;gap:.25rem}.um-inline-input{padding:.2rem .4rem;border:1px solid rgba(255,69,0,.3);border-radius:6px;background:#04081499;color:#e5e7eb;font-size:.84rem;width:8rem}.um-inline-input:focus{outline:none;border-color:#ff6b35}.um-password-input{width:9rem}.um-save-btn{background:#34d39926;color:#34d399;border:1px solid rgba(52,211,153,.3)}.um-save-btn:hover{background:#34d39940}.um-change-pw-btn{background:#ffffff0d;color:#96a0b6;border:1px solid rgba(255,255,255,.1)}.um-change-pw-btn:hover{background:#ffffff1a;color:#c3cada}@media(max-width:768px){.user-management-modal{width:100vw;max-width:100vw;max-height:100vh;border-radius:12px 12px 0 0}.um-form-row{flex-direction:column}.um-table{font-size:.78rem}.um-table th,.um-table td{padding:.4rem .35rem}}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#0a0a0a;color:#e0e0e0}.app{height:100vh;min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#0a0a0a,#1a1a2e);overflow:hidden}.header{background:#00000080;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:.75rem 1.5rem;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(255,69,0,.3)}.install-banner{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 1.25rem;border-bottom:1px solid rgba(255,69,0,.22);background:linear-gradient(135deg,#ff450029,#ff6b350f),#090a14e6}.install-banner-copy{display:flex;flex-direction:column;gap:.2rem;min-width:0}.install-banner-copy strong{color:#ffe1d2;font-size:.92rem}.install-banner-copy span{color:#c6cedd;font-size:.8rem;line-height:1.35}.install-banner-actions{display:flex;align-items:center;gap:.55rem;flex-shrink:0}.install-banner-primary,.install-banner-secondary{border-radius:999px;padding:.45rem .85rem;font-size:.78rem;font-weight:700;cursor:pointer}.install-banner-primary{border:none;background:linear-gradient(135deg,#ff4500,#ff6b35);color:#fff}.install-banner-secondary{border:1px solid rgba(255,69,0,.28);background:#00000040;color:#ffd3be}.header h1{margin:0;font-size:1.1rem;background:linear-gradient(90deg,#ff4500,#ff6b35);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.header-status{display:flex;align-items:center;gap:.75rem}.header-admin-btn{padding:.28rem .6rem;border:1px solid rgba(255,69,0,.3);border-radius:6px;background:#ff45001a;color:#ffba98;font-size:.75rem;font-weight:600;cursor:pointer;transition:background .15s}.header-admin-btn:hover{background:#ff450033}.header-logout-btn{padding:.28rem .6rem;border:1px solid rgba(255,255,255,.12);border-radius:6px;background:#ffffff0f;color:#9ca3af;font-size:.75rem;font-weight:600;cursor:pointer;transition:background .15s,color .15s}.header-logout-btn:hover{background:#ef444426;color:#fca5a5}.version{font-size:.75rem;color:#6b7280;background:#ff45001a;padding:.25rem .5rem;border-radius:4px}.indicator{width:8px;height:8px;border-radius:50%;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.chat-connecting{font-size:.75rem;color:#f59e0b;font-weight:400;animation:pulse 1.5s ease-in-out infinite}.message-state{display:inline-block;margin-left:.5rem;font-size:.75rem;vertical-align:middle}.message-state-received{color:#4ade80}.message-state-processing{display:inline-block;animation:spin 1s linear infinite}.message-state-done{color:#4ade80}.message-state-failed{color:#ef4444}.message-state-not-sent,.message-state-timeout{color:#f59e0b}.message-state-cancelled{color:#9ca3af}.cancel-message-btn{display:inline-block;margin-left:.5rem;padding:0 .4rem;font-size:.65rem;line-height:1.4;color:#ef4444;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:3px;cursor:pointer;vertical-align:middle}.cancel-message-btn:hover{background:#ef444433;border-color:#ef444480}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.main{flex:1;display:flex;flex-direction:column;padding:1rem;gap:1rem;overflow:hidden}.main.unified{display:flex;flex-direction:column;gap:1rem;min-height:0}.top-panels{display:grid;grid-template-columns:280px 1fr;gap:1rem;min-height:0;align-items:stretch}.top-panels-header{grid-column:1 / -1;display:flex;justify-content:flex-end}.top-panels-collapsed{grid-template-columns:1fr}.top-panels-collapsed .top-panels-header{grid-column:1}.workspace-panels{flex:1;height:100%;max-height:100%;min-height:420px;display:grid;grid-template-rows:minmax(0,1fr) minmax(0,1fr);gap:.5rem}.workspace-panels>.kanban-panel-wrap{grid-row:1}.workspace-panels>.chat-panel{grid-row:2}.workspace-panels.kanban-collapsed{grid-template-rows:auto minmax(0,1fr)}.workspace-panels.chat-collapsed{grid-template-rows:minmax(0,1fr) auto}.kanban-panel-wrap{min-height:0;height:100%;display:flex;flex-direction:column;overflow:hidden}.kanban-panel-wrap>*{min-height:0}.kanban-panel-wrap .kanban-board{height:100%;min-height:0;display:flex;flex-direction:column}.kanban-panel-wrap .kanban-columns{flex:1 1 auto;min-height:0;align-items:stretch}.kanban-panel-wrap .kanban-column{min-height:0;max-height:none;height:100%}.workspace-panels .panel.chat-panel{min-height:0;height:100%}.workspace-panels .panel.chat-panel.collapsed{overflow:hidden}.workspace-panels .panel.chat-panel.collapsed .panel-content,.workspace-panels .panel.chat-panel.collapsed .chat-input{display:none}.workspace-panels .chat-panel .panel-content{min-height:0;overflow-y:auto}.workspace-panels .chat-panel .chat-messages{flex:1 1 auto;min-height:0}.mobile-mode-tabs{display:none}.mobile-mode-tab-btn{border:1px solid rgba(255,69,0,.25);background:#00000059;color:#d1d5db;border-radius:999px;padding:.3rem .7rem;font-size:.78rem;font-weight:600;cursor:pointer;white-space:nowrap}.mobile-mode-tab-btn.active{border-color:#ff4500;color:#ff6b35;background:#ff45002b}.panel{background:#1e1e2899;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,69,0,.2);border-radius:12px;display:flex;flex-direction:column;overflow:hidden}.panel.status-panel,.panel.chat-panel,.top-panels .panel.activity-panel{height:auto}.top-panels .panel.activity-panel .panel-content{overflow-y:auto;max-height:200px}.top-panels .panel.activity-panel .panel-content{overflow-y:scroll}.top-panels .panel.activity-panel .panel-content::-webkit-scrollbar{width:6px}.top-panels .panel.activity-panel .panel-content::-webkit-scrollbar-track{background:#0003;border-radius:3px}.top-panels .panel.activity-panel .panel-content::-webkit-scrollbar-thumb{background:#ff450080;border-radius:3px}.top-panels .panel.activity-panel .panel-content::-webkit-scrollbar-thumb:hover{background:#ff4500b3}.top-panels .panel{height:auto}@media(min-width:769px){.top-panels .panel.status-panel .panel-content{max-height:min(40vh,320px);overflow-y:auto}}.panel h2{margin:0;padding:.75rem 1rem;font-size:.875rem;color:#ff4500;border-bottom:1px solid rgba(255,69,0,.2);background:#ff45000d;border-radius:12px 12px 0 0}.panel-heading-with-action{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.panel-collapse-btn{border:1px solid rgba(255,69,0,.35);background:#00000040;color:#ffb08a;border-radius:999px;padding:.2rem .65rem;font-size:.72rem;font-weight:600;cursor:pointer;white-space:nowrap}.panel-collapse-btn:hover{border-color:#ff45008c;background:#ff450029}.panel-content{flex:1;overflow-y:auto;padding:.75rem}.activity-feed{display:flex;flex-direction:column;gap:.5rem;overflow-x:hidden;overflow-y:auto;max-height:100%}.activity-feed::-webkit-scrollbar{width:6px}.activity-feed::-webkit-scrollbar-track{background:#0003;border-radius:3px}.activity-feed::-webkit-scrollbar-thumb{background:#ff45004d;border-radius:3px}.activity-feed::-webkit-scrollbar-thumb:hover{background:#ff450080}.activity-item{display:flex;gap:.75rem;align-items:flex-start;padding:.5rem;background:#ffffff08;border-radius:6px;font-size:.8125rem}.activity-time{color:#6b7280;font-family:monospace;font-size:.75rem;white-space:nowrap}.activity-main{display:flex;align-items:center;gap:.5rem;flex:1;min-width:0}.activity-sender{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;padding:.15rem .45rem;border-radius:999px;border:1px solid transparent;font-size:.6875rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.activity-sender-assistant{color:#fbbf24;background:#fbbf2424;border-color:#fbbf2459}.activity-sender-user{color:#7dd3fc;background:#22d3ee24;border-color:#22d3ee59}.activity-sender-system{color:#cbd5e1;background:#94a3b81f;border-color:#94a3b84d}.activity-text{color:#e5e7eb;line-height:1.4;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}.chat-messages{display:flex;flex-direction:column;gap:.75rem;min-height:0;overflow-y:auto}.chat-message{padding:.75rem;border-radius:8px;font-size:.875rem;line-height:1.4}.chat-own{background:#3b82f61a;border-left:3px solid #3b82f6}.chat-peer{background:#ff45001a;border-left:3px solid #ff4500}.chat-message-header{display:flex;justify-content:space-between;margin-bottom:.25rem;font-size:.75rem}.chat-sender{font-weight:600;color:#ff4500}.chat-time{color:#6b7280}.chat-text{color:#e5e7eb;overflow-wrap:break-word}.chat-text p{margin:.25em 0}.chat-text p:first-child{margin-top:0}.chat-text p:last-child{margin-bottom:0}.chat-text ul,.chat-text ol{margin:.25em 0;padding-left:1.5em}.chat-text code{background:#ffffff1a;padding:.1em .3em;border-radius:3px;font-size:.9em}.chat-reactions{display:flex;flex-wrap:wrap;gap:.25rem;margin-top:.5rem}.chat-reaction{display:inline-flex;align-items:center;gap:.125rem;padding:.125rem .375rem;background:#ffffff1a;border-radius:12px;font-size:.75rem;cursor:default}.chat-reaction:hover{background:#ffffff26}.chat-reaction-own{background:#3b82f633;border:1px solid rgba(59,130,246,.4)}.chat-reaction-btn{opacity:0;padding:.125rem .375rem;background:#ffffff1a;border:none;border-radius:4px;color:#9ca3af;cursor:pointer;font-size:.75rem;transition:opacity .15s ease,background .15s ease}.chat-message:hover .chat-reaction-btn{opacity:1}.chat-reaction-btn:hover{background:#fff3;color:#e5e7eb}.chat-reaction-picker{display:flex;gap:.25rem;padding:.25rem;background:#1f2937;border-radius:8px;margin-top:.25rem;box-shadow:0 4px 12px #0000004d}.chat-reaction-emoji-btn{padding:.375rem .5rem;background:#ffffff1a;border:none;border-radius:4px;font-size:1rem;cursor:pointer;transition:background .15s ease,transform .15s ease}.chat-reaction-emoji-btn:hover{background:#fff3;transform:scale(1.1)}.chat-text pre{background:#0000004d;padding:.5em;border-radius:4px;overflow-x:auto;margin:.25em 0}.chat-text pre code{background:none;padding:0}.chat-text strong{color:#f9fafb}.chat-text h1,.chat-text h2,.chat-text h3,.chat-text h4{margin:.3em 0 .15em;font-size:1em;color:#f9fafb}.chat-input{display:flex;gap:.5rem;padding:.75rem;border-top:1px solid rgba(255,69,0,.2)}.chat-input.chat-input-top{border-top:none;border-bottom:1px solid rgba(255,69,0,.2)}.chat-input textarea{flex:1;background:#0000004d;border:1px solid rgba(255,69,0,.3);border-radius:6px;padding:.5rem .75rem;color:#e5e7eb;font-size:.875rem;resize:vertical;min-height:2rem;max-height:8rem;font-family:inherit;line-height:1.2}.chat-input textarea:focus{outline:none;border-color:#ff4500}.chat-input textarea::placeholder{color:#6b7280}.chat-input button{background:linear-gradient(135deg,#ff4500,#ff6b35);border:none;border-radius:6px;padding:.5rem 1rem;color:#fff;font-weight:600;cursor:pointer;transition:opacity .2s}.chat-input button:hover:not(:disabled){opacity:.9}.chat-input button:disabled{opacity:.5;cursor:not-allowed}@media(max-width:768px){.app{height:auto;min-height:100dvh;overflow-x:hidden;overflow-y:auto}.main{overflow:visible;padding:.85rem;gap:.85rem}.main.unified{gap:.85rem}.install-banner{align-items:flex-start;flex-direction:column;padding:.8rem .85rem}.install-banner-actions{width:100%}.install-banner-primary,.install-banner-secondary{flex:1 1 0;text-align:center}.top-panels{grid-template-columns:1fr;gap:.85rem}.top-panels.mobile-active-panel{grid-template-columns:1fr;flex:1 1 auto;min-height:0}.mobile-mode-tabs{position:sticky;top:0;z-index:6;display:flex;gap:.4rem;overflow-x:auto;padding:.1rem .05rem .2rem;background:linear-gradient(180deg,#0a0a12f0,#0a0a12c7);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.top-panels .panel.activity-panel .panel-content{max-height:260px}.top-panels.mobile-active-panel .panel.activity-panel{min-height:clamp(520px,76dvh,820px);display:flex;flex-direction:column}.top-panels.mobile-active-panel .panel.activity-panel .panel-content{max-height:none;height:100%;min-height:0;overflow-y:auto}.mobile-workspace-panel{min-height:clamp(560px,90dvh,820px);display:flex;flex-direction:column}.mobile-workspace-panel .kanban-panel-wrap{min-height:0;flex:1 1 auto}.mobile-chat-standalone{min-height:clamp(520px,78dvh,760px);max-height:calc(100dvh - 185px);display:flex;flex-direction:column}.mobile-chat-standalone .chat-input.chat-input-top{flex:0 0 auto}.mobile-chat-standalone .chat-messages{flex:1 1 auto;min-height:0;max-height:none;overflow-y:auto}}.status-content{display:flex;flex-direction:column;gap:.5rem}.status-header{display:flex;align-items:center;gap:.5rem}.status-dot{width:10px;height:10px;border-radius:50%}.status-state{font-weight:600;text-transform:uppercase;font-size:.75rem;letter-spacing:.05em}.status-updated-inline{margin-left:auto;color:#6b7280;font-size:.75rem;white-space:nowrap}.current-task{color:#e5e7eb;font-size:.875rem}.footer{background:#00000080;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:.75rem;text-align:center;border-top:1px solid rgba(255,69,0,.3)}.footer p{margin:0;color:#6b7280;font-size:.75rem}.footer a{color:#ff4500;text-decoration:none}.footer a:hover{text-decoration:underline}.empty-state{text-align:center;color:#6b7280;padding:2rem;font-style:italic}.modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:#1e293b;border-radius:8px;max-width:500px;width:100%;max-height:80vh;overflow-y:auto;box-shadow:0 20px 25px -5px #00000080}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid #334155}.modal-header h3{margin:0;color:#f8fafc}.modal-close{background:none;border:none;color:#94a3b8;font-size:1.5rem;cursor:pointer;padding:.25rem .5rem;line-height:1}.modal-close:hover{color:#f8fafc}.modal-body{padding:1rem}.detail-row{margin-bottom:1rem}.detail-label{display:block;color:#94a3b8;font-size:.875rem;margin-bottom:.25rem}.detail-value{color:#f8fafc}.detail-description{color:#f8fafc;margin:.5rem 0 0;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere;max-height:40vh;overflow-y:auto;padding-right:.25rem}.activity-item{cursor:pointer;transition:background-color .2s;flex-wrap:wrap;box-sizing:border-box;width:100%;min-width:0}.activity-item:hover{background-color:#ffffff0d}.activity-item:focus{outline:2px solid #3b82f6;outline-offset:-2px}.activity-item.expanded{background-color:#ffffff0f}.activity-item-assistant{border-left:2px solid rgba(251,191,36,.45)}.activity-item-user{border-left:2px solid rgba(34,211,238,.4)}.activity-item-system{border-left:2px solid rgba(148,163,184,.28)}.activity-inline-details{flex:1 0 100%;margin-top:.5rem;padding-top:.5rem;border-top:1px solid rgba(255,69,0,.2);min-width:0}.activity-inline-details .detail-row{display:grid;grid-template-columns:max-content 1fr;column-gap:.5rem;margin-bottom:.35rem;align-items:start}.activity-inline-details .detail-label{margin:0;font-size:.8125rem;white-space:nowrap}.activity-inline-details .detail-value{line-height:1.25}.activity-inline-details .detail-description{margin:0;max-height:20vh}.loading-indicator{text-align:center;padding:1rem;color:#94a3b8;font-size:.875rem}.activity-load-more{min-height:40px}.status-icon{font-size:1.5rem;margin-right:.5rem}.status-stats{margin-top:.75rem;padding-top:.75rem;border-top:1px solid rgba(255,69,0,.2)}.stat-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;font-size:.8125rem}.stat-label{color:#6b7280}.stat-value{color:#e5e7eb;font-weight:600}.model-breakdown{margin-top:.5rem;padding-left:.5rem;border-left:2px solid rgba(255,69,0,.3)}.status-model-details-btn{width:100%;margin-top:.5rem;border:1px solid rgba(255,69,0,.35);background:#ff45001f;color:#ffb08a;border-radius:8px;padding:.45rem .6rem;font-size:.76rem;font-weight:600;cursor:pointer;text-align:left}.status-model-details-btn:hover{border-color:#ff45008c;background:#ff45002e}.status-usage-modal{max-width:680px;width:min(96vw,680px)}.status-usage-modal .modal-body{max-height:62vh;overflow-y:auto}.status-usage-modal-summary{margin-bottom:.85rem;padding-bottom:.6rem;border-bottom:1px solid rgba(255,69,0,.2)}.status-usage-modal .model-entry{align-items:flex-start;gap:.5rem}.model-entry{display:flex;justify-content:space-between;align-items:center;margin-bottom:.25rem;font-size:.75rem}.model-name{color:#9ca3af;font-weight:500}.model-stats{color:#d1d5db;font-family:monospace;font-size:.7rem}.usage-history-section{margin-top:1rem;padding-top:.75rem;border-top:1px solid rgba(255,69,0,.2)}.usage-history-section h4{margin:0 0 .5rem;font-size:.85rem;color:#e5e7eb}.usage-history-loading{color:#9ca3af;font-size:.75rem;margin:0}.usage-history-table{width:100%;border-collapse:collapse;font-size:.75rem;font-family:monospace}.usage-history-table th{text-align:left;color:#9ca3af;font-weight:500;padding:.25rem .5rem;border-bottom:1px solid rgba(255,69,0,.15)}.usage-history-table td{padding:.2rem .5rem;color:#d1d5db}.usage-history-table tbody tr:hover{background:#ff450014}.usage-history-total{font-weight:600;color:#e5e7eb}.usage-history-total td{padding-top:.35rem;border-top:1px solid rgba(255,69,0,.2);color:#e5e7eb}
