@import url(https://fonts.googleapis.com/css2?family=Chiron+Hei+HK:ital,wght@0,200..900;1,200..900&family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&family=Montserrat:ital,wght@0,100..900;1,100..900&family=Roboto+Condensed:ital,wght@0,100..900;1,100..900&family=Smooch+Sans:wght@100..900&family=Ubuntu:ital,wght@0,300;0,400;0,500;0,700;1,300;1,400;1,500;1,700&display=swap);.sidebar__activity-item{align-items:center;border-radius:4px;cursor:pointer;display:flex;gap:8px;min-width:0;padding:8px 6px;transition:background-color .15s ease}.sidebar__activity-item:hover{background:var(--bg-hover)}.activity-action{color:var(--text-secondary);font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.activity-timestamp{flex-shrink:0;font-size:11px;opacity:.6;white-space:nowrap}@media (max-width:480px){.sidebar__activity-item{align-items:flex-start;flex-direction:column;gap:4px}.activity-action{white-space:normal}.activity-timestamp{font-size:10px}}.auth-page{animation:fadeIn .35s ease forwards;background:var(--bg-base);color:var(--text-secondary);display:flex;font-family:system-ui,-apple-system,BlinkMacSystemFont,sans-serif;min-height:100vh}.auth-left,.auth-right{align-items:center;display:flex;justify-content:center;padding:3rem;width:50%}.auth-info{background:var(--bg-surface);text-align:center}.auth-info h1{color:var(--text-primary);font-size:2.6rem;margin-bottom:.75rem}.auth-info p{color:var(--text-secondary);font-size:1.1rem}.auth-card{background:var(--bg-elevated);border-radius:16px;box-shadow:0 20px 40px #00000014;max-width:420px;padding:2.5rem;width:100%}.auth-card h2{color:var(--text-primary);font-size:2rem;margin-bottom:2rem;text-align:center}.auth-card form{display:flex;flex-direction:column;gap:1rem}.auth-card label{color:var(--text-secondary);font-size:.85rem;font-weight:600}.auth-card input,.auth-card select{background:var(--bg-surface);border:1px solid #00000026;border-radius:12px;color:var(--text-primary);font-size:1rem;outline:none;padding:.8rem 1rem;transition:border-color .25s ease,box-shadow .25s ease}.auth-card input:focus,.auth-card select:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f140}.auth-card button{background:#6366f1;border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin-top:1rem;padding:.8rem;transition:transform .2s ease,box-shadow .2s ease}.auth-card button:hover{box-shadow:0 8px 20px #6366f159;transform:translateY(-1px)}.auth-footer{color:var(--text-muted);font-size:.9rem;margin-top:1.5rem;text-align:center}.auth-footer a{color:#6366f1;font-weight:600;text-decoration:none}.auth-footer a:hover{text-decoration:underline}@media (max-width:900px){.auth-page{flex-direction:column}.auth-left,.auth-right{padding:2.5rem 2rem;width:100%}.auth-info{padding:2rem 1.5rem}.auth-info h1{font-size:2.2rem}}@media (max-width:600px){.auth-left{display:none}.auth-right{padding:1.5rem}.auth-card{border-radius:14px;padding:1.75rem}.auth-card h2{font-size:1.6rem;margin-bottom:1.5rem}.auth-card button,.auth-card input,.auth-card select{font-size:.95rem}}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}*,:after,:before{box-sizing:border-box}body,button,input,select,textarea{transition:background-color .25s ease,color .25s ease,border-color .25s ease}body,html{height:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--bg-base);color:var(--text-secondary);margin:0;transition:background-color .3s ease,color .25s ease}h1,h2,h3,h4,h5,h6{color:var(--text-primary);margin:0}button{cursor:pointer;font-family:inherit}button,input,select,textarea{background:#0000;font-family:inherit}input,select,textarea{font-size:16px}ul{list-style:none;margin:0;padding:0}:focus-visible{outline:2px solid #6366f199;outline-offset:2px}@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}.dashboard{background:var(--bg-base);display:flex;flex-direction:column;min-height:100vh}.dashboard__main{background:var(--bg-base);flex:1 1;padding:24px}.dashboard__main h2{color:var(--text-primary);font-size:80px;margin-top:0}.task-controls-row{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin:16px 0 24px}.task-controls-row .task-search{flex:1 1;min-width:240px}.task-controls-row select{background:var(--bg-elevated);border:1px solid #00000059;border-radius:6px;color:var(--text-secondary);font-size:14px;height:38px;padding:6px 10px}.assigned-user-select{max-width:220px}.task-table-card{background:var(--bg-surface);border-radius:14px;box-shadow:0 8px 24px #00000040;display:flex;flex-direction:column;height:630px;margin:0 auto;max-width:1400px;padding:20px;width:100%}.task-table-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.task-table-header__center{display:flex;flex:1 1;justify-content:center}.task-table-header__right{display:flex;gap:10px}.task-table{flex:1 1;overflow:hidden;position:relative}.task-table-row{align-items:center;border-bottom:1px solid #ffffff0f;display:grid;font-size:14px;grid-template-columns:2.6fr 1.1fr 1.1fr 1fr 1fr 1fr 1.3fr 1.3fr 1fr;text-align:center}.task-table-row--head{color:var(--text-muted);font-size:14px;font-weight:600;padding-bottom:8px}.task-table-row--body{min-height:72px;padding:8px 0}.thinLine{background-color:#0000001a;height:1px;margin-bottom:12px}.task-table-row>div{align-items:center;box-sizing:border-box;display:flex;justify-content:center;padding:0 12px}.task-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--text-primary);display:-webkit-box;font-size:15px;font-weight:500;line-height:1.35;overflow:hidden;text-align:center}.priority{align-items:center;border-radius:999px;display:inline-flex;font-size:13px;font-weight:500;justify-content:center;line-height:1;min-height:28px;padding:6px 14px;white-space:nowrap}.priority.low{background:#22c55e33;border:1px solid #22c55e73;color:#166534}.priority.medium{background:#3b82f633;border:1px solid #3b82f673;color:#1e3a8a}.priority.high{background:#f9731640;border:1px solid #f973168c;color:#9a3412}.priority.urgent{background:#dc26264d;border:1px solid #dc2626b3;color:#7f1d1d}.task-actions{align-items:center;display:flex;flex-direction:column;gap:6px}.task-delete,.task-table-empty{display:flex;justify-content:center}.task-table-empty{align-items:center;inset:0;pointer-events:none;position:absolute;top:40px}.task-table-empty__sticker{filter:grayscale(10%);margin-top:80px;max-width:450px;opacity:.32;transition:opacity .25s ease,transform .25s ease;width:85%}.task-table-card:hover .task-table-empty__sticker{opacity:.55;transform:translateY(-2px)}.task-table-pagination{align-items:center;display:flex;gap:12px;justify-content:center;margin-top:30px}.table-btn{border:1px solid #0000;border-radius:8px;cursor:pointer;font-size:13px;font-weight:500;line-height:1.2;padding:6px 12px;transition:background-color .15s ease,border-color .15s ease,color .15s ease,transform .05s ease;white-space:nowrap}.table-btn:active{transform:translateY(1px)}[data-theme=light] .table-btn--ghost{background:#3b82f638;border-color:#3b82f699;color:#000}[data-theme=light] .table-btn--ghost:hover:not(:disabled){background:#3b82f652}[data-theme=light] .table-btn--secondary{background:#3b82f647;border-color:#3b82f6a6;color:#000}[data-theme=light] .table-btn--secondary:hover:not(:disabled){background:#3b82f666}[data-theme=light] .task-table-header__right .table-btn--secondary{background:#0000008c;border-color:#000000bf;color:#fff}[data-theme=light] .task-table-header__right .table-btn--secondary:hover{background:#000000b3}[data-theme=light] .table-btn--danger{background:#dc262666;border-color:#dc2626cc;color:#000}[data-theme=light] .table-btn--danger:hover:not(:disabled){background:#dc26268c}[data-theme=dark] .table-btn--ghost,[data-theme=dark] .table-btn--secondary{background:#2563eb;border-color:#3b82f6;box-shadow:0 0 0 #3b82f600;color:#fff}[data-theme=dark] .table-btn--ghost:hover:not(:disabled),[data-theme=dark] .table-btn--secondary:hover:not(:disabled){background:#3b82f6;box-shadow:0 0 12px #3b82f699}[data-theme=dark] .table-btn--danger{background:#dc2626;border-color:#ef4444;color:#fff}[data-theme=dark] .table-btn--danger:hover:not(:disabled){background:#ef4444;box-shadow:0 0 12px #ef444499}[data-theme=dark] .task-table-header__right .table-btn--secondary{background:#fff;border-color:#e5e7eb;color:#000}[data-theme=dark] .task-table-header__right .table-btn--secondary:hover:not(:disabled){background:#f3f4f6;box-shadow:0 0 10px #fff6}.table-btn:disabled{cursor:not-allowed;opacity:.45}@media (max-width:1024px){.task-table-row{grid-template-columns:2.8fr 1.2fr 1.2fr 1.2fr 1.6fr}.task-table-row--head>span:nth-child(5),.task-table-row--head>span:nth-child(6),.task-table-row--head>span:nth-child(7),.task-table-row--head>span:nth-child(9),.task-table-row>div:nth-child(5),.task-table-row>div:nth-child(6),.task-table-row>div:nth-child(7),.task-table-row>div:nth-child(9){display:none}}@media (max-width:768px){.dashboard__main{padding:16px}.task-controls-row select{width:100%}}@media (max-width:600px){.task-table-row{grid-template-columns:3fr 1.5fr 1.5fr}.task-table-row--head>span:nth-child(2),.task-table-row--head>span:nth-child(3),.task-table-row--head>span:nth-child(5),.task-table-row--head>span:nth-child(6),.task-table-row--head>span:nth-child(7),.task-table-row--head>span:nth-child(9),.task-table-row>div:nth-child(2),.task-table-row>div:nth-child(3),.task-table-row>div:nth-child(5),.task-table-row>div:nth-child(6),.task-table-row>div:nth-child(7),.task-table-row>div:nth-child(9){display:none}.task-title{-webkit-line-clamp:3;font-size:14px}.task-table-row--body{min-height:64px}}.task-item{align-items:center;background:var(--bg-surface);border:1px solid #0000001a;border-radius:6px;cursor:pointer;display:flex;justify-content:space-between;margin-bottom:8px;padding:12px 16px;transition:background-color .15s ease}.task-item:hover{background:var(--bg-hover)}.task-item__left{display:flex;flex-direction:column;gap:4px;min-width:0}.task-item__title{color:var(--text-primary);font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-item__meta{color:var(--text-secondary);display:flex;flex-wrap:wrap;font-size:12px;gap:8px}.task-item__category{background:var(--bg-hover);border-radius:4px;color:var(--text-secondary);padding:2px 6px}.task-item__assigned,.task-item__due{white-space:nowrap}.task-item__right{align-items:center;display:flex;flex-shrink:0;gap:8px}.task-item__priority{border-radius:999px;color:#fff;font-size:11px;font-weight:600;padding:4px 10px;white-space:nowrap}.task-item__status{color:var(--text-muted);font-size:12px;white-space:nowrap}@media (max-width:768px){.task-item{padding:12px}.task-item__title{font-size:13px}}@media (max-width:480px){.task-item{align-items:flex-start;flex-direction:column;gap:8px}.task-item__right{justify-content:space-between;width:100%}.task-item__priority,.task-item__status{font-size:12px}}.app-header{background:var(--bg-surface);border-bottom:1px solid #0000001a;height:80px;justify-content:space-between;padding:0 24px;transition:background-color .25s ease}.app-header,.app-header__left{align-items:center;display:flex}.app-header__left{gap:12px;min-width:0}.app-header__title{color:var(--text-primary);font-size:35px;font-weight:600;margin:18px 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-header__right{align-items:center;display:flex;flex-shrink:0;gap:10px;position:relative}.header-menu-btn{border:1px solid #00000026;border-radius:8px;display:none;font-size:18px}.header-menu-btn,.theme-toggle{align-items:center;background:var(--bg-elevated);color:var(--text-secondary);cursor:pointer;height:36px;justify-content:center;width:36px}.theme-toggle{border:1px solid #00000026;border-radius:999px;display:inline-flex;transition:background-color .2s ease,transform .15s ease}.theme-toggle:hover{background:var(--bg-hover)}.theme-toggle:active{transform:scale(.95)}.header-user{align-items:center;background:var(--bg-elevated);border:1px solid #00000026;border-radius:6px;color:var(--text-secondary);cursor:pointer;display:flex;font-size:14px;gap:6px;padding:6px 10px;transition:background-color .15s ease,border-color .15s ease;white-space:nowrap}.header-user:hover{background:var(--bg-hover)}.header-user:after{content:"▾";font-size:10px;margin-left:4px;opacity:.6}.header-role{color:var(--text-muted);font-size:12px}.header-dropdown{background:var(--bg-elevated);border:1px solid #00000026;border-radius:8px;box-shadow:0 10px 30px #00000026;overflow:hidden;position:absolute;right:0;top:calc(100% + 6px);width:220px;z-index:2000}.header-dropdown__row{align-items:center;color:var(--text-secondary);display:flex;font-size:13px;justify-content:space-between;padding:10px 12px}.header-dropdown__row:hover{background:var(--bg-hover)}.header-dropdown__row .label{color:var(--text-muted)}.header-dropdown__divider{background:#0000001a;height:1px;margin:4px 0}.header-dropdown__logout{background:#0000;border:none;color:var(--text-secondary);cursor:pointer;font-size:14px;padding:10px 12px;text-align:left;width:100%}.header-dropdown__logout:hover{background:var(--bg-hover)}@media (max-width:1024px){.app-header{padding:0 16px}.app-header__title{font-size:18px}}@media (max-width:768px){.header-menu-btn{display:inline-flex}.app-header__title{font-size:16px}.header-role{display:none}.header-user{padding:6px 8px}}:root{--modal-radius:14px;--input-radius:12px;--focus-color:#6d5cff;--surface-0:#fff;--surface-1:#f8fafc;--surface-2:#f1f5f9;--border-soft:#e2e8f0;--text-strong:#0f172a;--text-muted:#475569}.modal-backdrop{align-items:center;animation:backdropFade .25s ease forwards;background:#0f172a8c;display:flex;inset:0;justify-content:center;padding:16px;position:fixed;z-index:1000}@keyframes backdropFade{0%{opacity:0}to{opacity:1}}.task-modal{animation:modalIn .3s cubic-bezier(.16,1,.3,1);background:#f8fafc;background:var(--surface-1);border-radius:14px;border-radius:var(--modal-radius);box-shadow:0 30px 60px #0f172a2e,0 1px 0 #fff9;display:flex;flex-direction:column;max-height:85vh;max-width:560px;overflow:hidden;width:100%}@keyframes modalIn{0%{opacity:0;transform:translateY(16px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.task-modal__header{background:#f1f5f9;background:var(--surface-2);border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border-soft);flex-shrink:0;padding:18px 22px}.task-modal__title{color:#0f172a;color:var(--text-strong);font-size:18px;font-weight:600;margin:0}.task-modal__body{flex:1 1;min-height:0;overflow-y:auto;padding:22px}.task-modal__field{display:flex;flex-direction:column;margin-bottom:18px}.task-modal__field--description textarea,.task-modal__field--title input{border-radius:12px;border-radius:var(--input-radius)}.task-modal__field--title input{font-size:16px;padding:14px 16px}.task-modal__field--description textarea{line-height:1.55;min-height:150px;padding:14px 16px;resize:none}.task-modal__row{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(3,1fr);margin-bottom:18px}.task-modal__row:last-of-type{grid-template-columns:1.3fr 1fr}.task-modal__label{color:#475569;color:var(--text-muted);font-size:13px;font-weight:500;margin-bottom:6px}.task-modal__input,.task-modal__select,.task-modal__textarea{background:#fff;background:var(--surface-0);border:1px solid #e2e8f0;border:1px solid var(--border-soft);border-radius:12px;border-radius:var(--input-radius);box-shadow:inset 0 1px 0 #fffc,0 1px 2px #0f172a0f;color:#0f172a;color:var(--text-strong);font-size:14px;padding:12px 14px;transition:border-color .2s ease,box-shadow .2s ease,transform .15s ease,background .2s ease}.task-modal__input:focus,.task-modal__select:focus,.task-modal__textarea:focus{border-color:#6d5cff;border-color:var(--focus-color);box-shadow:0 0 0 3px #6d5cff29,0 8px 20px #6d5cff2e;outline:none;transform:translateY(-1px)}.task-modal__select{-webkit-appearance:none;appearance:none;background-image:linear-gradient(45deg,#0000 50%,#64748b 0),linear-gradient(135deg,#64748b 50%,#0000 0);background-position:calc(100% - 20px) 55%,calc(100% - 14px) 55%;background-repeat:no-repeat;background-size:6px 6px;cursor:pointer;padding-right:42px}.task-modal__select:focus{background-image:linear-gradient(45deg,#64748b 50%,#0000 0),linear-gradient(135deg,#0000 50%,#64748b 0)}.task-modal__footer{background:#f1f5f9;background:var(--surface-2);border-top:1px solid #e2e8f0;border-top:1px solid var(--border-soft);display:flex;flex-shrink:0;gap:12px;justify-content:flex-end;padding:16px 18px}.task-modal__btn{background:#fff;background:var(--surface-0);border:1px solid #e2e8f0;border:1px solid var(--border-soft);border-radius:12px;border-radius:var(--input-radius);color:#475569;color:var(--text-muted);cursor:pointer;font-size:14px;padding:10px 18px;transition:background .2s ease,transform .15s ease,box-shadow .15s ease}.task-modal__btn:hover{box-shadow:0 4px 10px #0f172a14;transform:translateY(-1px)}.task-modal__btn--primary{background:linear-gradient(180deg,#7a6cff,#6656f6);border:none;color:#fff;font-weight:500}.task-modal__btn--primary:hover{background:linear-gradient(180deg,#6f60f5,#5848ea)}.task-modal__btn--danger{background:#fff;background:var(--surface-0);border-color:#dc262673;color:#dc2626}.task-modal__loading{color:#64748b;padding:32px;text-align:center}@media (max-width:768px){.task-modal{max-height:90vh}.task-modal__body{padding:18px}.task-modal__row{grid-template-columns:1fr}}@media (max-width:480px){.task-modal{border-radius:12px}.task-modal__title{font-size:16px}.task-modal__footer{flex-direction:column;gap:10px}.task-modal__btn{padding:12px;width:100%}}:root{--control-height:40px;--control-radius:8px}.task-search{display:flex;margin:16px 0}.task-search__input{background:var(--bg-surface);border:1px solid #00000026;border-radius:8px;border-radius:var(--control-radius);box-sizing:border-box;color:var(--text-primary);font-size:14px;height:40px;height:var(--control-height);line-height:40px;line-height:var(--control-height);padding:0 14px;width:100%}.task-filters{justify-content:space-between;margin:12px 0 24px}.task-filters,.task-filters__left{align-items:center;display:flex;gap:12px}.task-filters__left{flex-wrap:wrap;min-width:0}.task-filters select{align-items:center;background:var(--bg-surface);border:1px solid #00000026;border-radius:8px;border-radius:var(--control-radius);box-sizing:border-box;display:flex;font-size:14px;margin-top:10px;padding:0 12px}.task-filters select,.task-filters__mark-all{color:var(--text-secondary);height:40px;height:var(--control-height);line-height:40px;line-height:var(--control-height)}.task-filters__mark-all{background:#0000;border:1px solid #00000059;border-radius:8px;border-radius:var(--control-radius);cursor:pointer;font-size:13px;padding:0 14px;transition:background-color .15s ease;white-space:nowrap}.task-filters__mark-all:hover{background:var(--bg-hover)}@media (max-width:768px){.task-filters{align-items:center}}@media (max-width:480px){.task-filters{align-items:stretch;flex-direction:column;gap:10px}.task-filters select,.task-filters__left{width:100%}.task-filters__mark-all{text-align:center;width:100%}}:root{--bg-base:linear-gradient(180deg,#f6f1ea,#ece3d8);--bg-surface:#f3eadf;--bg-elevated:#e9d8c6;--bg-hover:#e2cdb8;--text-primary:#3a2e28;--text-secondary:#6a564a;--text-muted:#8b786c}[data-theme=dark]{--bg-base:linear-gradient(180deg,#1e1f29,#1b1c25);--bg-surface:#232530;--bg-elevated:#2a2c3a;--bg-hover:#32344a;--text-primary:#f8f8f2;--text-secondary:#c6c8d1;--text-muted:#9a9cab;--accent-primary:#bd93f9;--accent-hover:#a77bee;--border-subtle:#3a3c4e}*{font-family:Montserrat,sans-serif;font-optical-sizing:auto;font-style:normal;font-weight:400}
/*# sourceMappingURL=main.8b41109b.css.map*/