:root{--tb-bg:#f4f5f7;--tb-card:#ffffff;--tb-card-hover:#f8fafc;--tb-border:rgba(0,0,0,0.06);--tb-border-row:rgba(0,0,0,0.04);--tb-text:#0f172a;--tb-text-sub:#475569;--tb-text-muted:#94a3b8;--tb-accent:#6366f1;--tb-accent-bg:rgba(99,102,241,0.08);--tb-shadow:0 1px 3px rgba(0,0,0,0.04),0 4px 12px rgba(0,0,0,0.04);--tb-radius:16px;--tb-radius-sm:10px}[data-theme=dark]{--tb-bg:#141414;--tb-card:#1c1c1e;--tb-card-hover:#242424;--tb-border:rgba(255,255,255,0.06);--tb-border-row:rgba(255,255,255,0.04);--tb-text:#f4f4f5;--tb-text-sub:#a1a1aa;--tb-text-muted:#52525b;--tb-accent:#818cf8;--tb-accent-bg:rgba(129,140,248,0.1);--tb-shadow:0 2px 10px rgba(0,0,0,0.35),0 6px 24px rgba(0,0,0,0.25)}.tb-wrapper{padding:0;background:var(--tb-bg);min-height:100%;display:flex;flex-direction:column;gap:20px;font-family:Inter,system-ui,sans-serif}.tb-loading{justify-content:center;height:100vh;color:var(--tb-text-muted);font-size:.9rem;font-weight:500}.tb-loading,.tb-page-header{display:flex;align-items:center}.tb-page-header{justify-content:space-between;flex-wrap:wrap;gap:12px}.tb-page-header-left{display:flex;flex-direction:column;gap:4px}.tb-breadcrumbs{display:flex;align-items:center;gap:6px;font-size:.75rem;font-weight:500;color:var(--tb-text-muted)}.tb-breadcrumbs svg{opacity:.5}.tb-breadcrumb-active{color:var(--tb-text-sub);font-weight:600}.tb-page-title{font-size:1.8rem;font-weight:800;color:var(--tb-text);letter-spacing:-.03em;margin:0;line-height:1.1}.tb-page-header-right{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.tb-header-meta{gap:6px;font-size:.75rem;color:var(--tb-text-muted);background:var(--tb-card);border:1px solid var(--tb-border);border-radius:8px;padding:6px 12px}.tb-header-av,.tb-header-avatars,.tb-header-meta{display:flex;align-items:center}.tb-header-av{width:30px;height:30px;border-radius:50%;background:var(--tb-accent);color:#fff;font-size:.75rem;font-weight:700;justify-content:center;border:2px solid var(--tb-card);margin-left:-8px}.tb-header-av:first-child{margin-left:0}.tb-export-btn{display:flex;align-items:center;gap:6px;padding:8px 18px;background:var(--tb-text);color:var(--tb-card);border:none;border-radius:var(--tb-radius-sm);font-size:.85rem;font-weight:700;cursor:pointer;transition:all .2s ease}.tb-export-btn:hover{opacity:.88;transform:translateY(-1px)}.tb-view-toggle{width:38px;height:38px;border:1px solid var(--tb-border);background:var(--tb-card);color:var(--tb-text-sub);border-radius:var(--tb-radius-sm);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.tb-view-toggle:hover{background:var(--tb-card-hover);color:var(--tb-text)}.tb-welcome-banner{background:var(--tb-card);border:1px solid var(--tb-border);border-radius:var(--tb-radius);padding:24px 28px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;box-shadow:var(--tb-shadow)}.tb-welcome-banner h2{font-size:1.5rem;font-weight:800;color:var(--tb-text);letter-spacing:-.025em;margin:0 0 12px}.tb-welcome-banner p{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:0}.tb-badge-pill{padding:5px 13px;border-radius:999px;font-size:.78rem;font-weight:600;background:var(--tb-accent-bg);color:var(--tb-accent);border:1px solid rgba(99,102,241,.15)}.tb-badge-pill.warning{background:rgba(239,68,68,.08);color:#ef4444;border-color:rgba(239,68,68,.15)}.tb-badge-pill.info{background:rgba(34,197,94,.08);color:#16a34a;border-color:rgba(34,197,94,.15)}[data-theme=dark] .tb-badge-pill.info{color:#4ade80;border-color:rgba(74,222,128,.2)}.tb-export-subtle-btn{display:flex;align-items:center;gap:6px;padding:8px 18px;background:var(--tb-bg);color:var(--tb-text-sub);border:1px solid var(--tb-border);border-radius:var(--tb-radius-sm);font-size:.82rem;font-weight:600;cursor:pointer;transition:all .2s ease;flex-shrink:0}.tb-export-subtle-btn:hover{background:var(--tb-card-hover);color:var(--tb-text)}.tb-metrics-row{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}@media (max-width:1024px){.tb-metrics-row{grid-template-columns:repeat(2,1fr)}}@media (max-width:560px){.tb-metrics-row{grid-template-columns:1fr 1fr;gap:10px}}.tb-metric-card{background:var(--tb-card);border:1px solid var(--tb-border);border-radius:var(--tb-radius);padding:22px 20px;box-shadow:var(--tb-shadow);display:flex;flex-direction:column;gap:10px;transition:transform .2s ease,box-shadow .2s ease}.tb-metric-card:hover{transform:translateY(-2px);box-shadow:0 4px 20px rgba(0,0,0,.08)}.tb-metric-top{justify-content:space-between}.tb-metric-icon,.tb-metric-top{display:flex;align-items:center}.tb-metric-icon{width:40px;height:40px;border-radius:12px;justify-content:center}.tb-metric-trend{display:flex;align-items:center;gap:3px;font-size:.72rem;font-weight:700}.tb-metric-value{font-size:2rem;font-weight:900;color:var(--tb-text);letter-spacing:-.04em;line-height:1}.tb-metric-label{font-size:.78rem;font-weight:600;color:var(--tb-text-muted);text-transform:uppercase;letter-spacing:.06em}.tb-section-card{background:var(--tb-card);border:1px solid var(--tb-border);border-radius:var(--tb-radius);box-shadow:var(--tb-shadow);overflow:hidden}.tb-section-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;flex-wrap:wrap;gap:12px;border-bottom:1px solid var(--tb-border)}.tb-section-title{font-size:1rem;font-weight:800;color:var(--tb-text);margin:0;letter-spacing:-.02em}.tb-section-actions{display:flex;align-items:center;gap:10px}.tb-search-box{display:flex;align-items:center;gap:8px;background:var(--tb-bg);border:1px solid var(--tb-border);border-radius:9px;padding:8px 12px;min-width:180px;transition:border-color .2s}.tb-search-box:focus-within{border-color:var(--tb-accent)}.tb-search-box svg{color:var(--tb-text-muted);flex-shrink:0}.tb-search-box input{background:transparent;border:none;outline:none;color:var(--tb-text);font-size:.82rem;font-weight:500;width:100%;font-family:inherit}.tb-search-box input::-moz-placeholder{color:var(--tb-text-muted)}.tb-search-box input::placeholder{color:var(--tb-text-muted)}.tb-filter-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;background:var(--tb-bg);border:1px solid var(--tb-border);border-radius:9px;color:var(--tb-text-sub);font-size:.82rem;font-weight:600;cursor:pointer;transition:all .18s ease;font-family:inherit}.tb-filter-btn:hover{background:var(--tb-card-hover);color:var(--tb-text)}.tb-table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch}.tb-table{width:100%;border-collapse:collapse;table-layout:auto}.tb-th{padding:11px 20px;text-align:left;font-size:.7rem;font-weight:700;color:var(--tb-text-muted);text-transform:uppercase;letter-spacing:.07em;white-space:nowrap;border-bottom:1px solid var(--tb-border);background:var(--tb-card)}.tb-task-row{cursor:pointer;transition:background .15s}.tb-task-row:hover .tb-td{background:var(--tb-card-hover)}.tb-td{padding:13px 20px;vertical-align:middle;font-size:.86rem;color:var(--tb-text);border-bottom:1px solid var(--tb-border-row);background:var(--tb-card);white-space:nowrap;transition:background .15s}.tb-table tbody tr:last-child .tb-td{border-bottom:none}.tb-task-name-cell{display:flex;align-items:center;gap:10px}.tb-task-color-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.tb-task-title{font-weight:600;color:var(--tb-text);font-size:.875rem}.tb-project-chip{display:inline-flex;align-items:center;gap:5px;font-size:.78rem;font-weight:600;color:var(--tb-text-sub);background:var(--tb-bg);border:1px solid var(--tb-border);padding:4px 10px;border-radius:6px}.tb-date-text{font-size:.82rem;color:var(--tb-text-sub);font-weight:500}.tb-status-badge{padding:4px 12px;border-radius:999px;font-size:.75rem;font-weight:700}.tb-progress-wrap{display:flex;align-items:center;gap:10px;min-width:120px}.tb-progress-bar{flex:1;height:6px;background:var(--tb-bg);border-radius:99px;overflow:hidden}.tb-progress-fill{height:100%;border-radius:99px;transition:width .6s ease}.tb-progress-pct{font-size:.75rem;font-weight:700;color:var(--tb-text-sub);width:34px;text-align:right}.tb-proj-icon{width:26px;height:26px;border-radius:7px;background:var(--tb-accent-bg);color:var(--tb-accent);justify-content:center;flex-shrink:0}.tb-owner-chip,.tb-proj-icon{display:flex;align-items:center}.tb-owner-chip{gap:8px}.tb-owner-av{width:26px;height:26px;border-radius:50%;background:var(--tb-accent);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.72rem;font-weight:700}.tb-empty-row{text-align:center;padding:44px 24px;color:var(--tb-text-muted);font-size:.875rem;font-weight:500}.tb-kanban-board{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;align-items:start}@media (max-width:900px){.tb-kanban-board{grid-template-columns:1fr}}.tb-kanban-col{background:var(--tb-card);border:1px solid var(--tb-border);border-radius:var(--tb-radius);box-shadow:var(--tb-shadow);overflow:hidden}.tb-kanban-col-header{display:flex;align-items:center;gap:10px;padding:16px 18px;border-bottom:1px solid var(--tb-border)}.tb-kanban-col-dot{width:9px;height:9px;border-radius:50%}.tb-kanban-col-title{flex:1;font-size:.9rem;font-weight:700;color:var(--tb-text)}.tb-kanban-col-count{font-size:.75rem;font-weight:700;color:var(--tb-text-muted);background:var(--tb-bg);border:1px solid var(--tb-border);width:24px;height:24px;border-radius:6px;display:flex;align-items:center;justify-content:center}.tb-kanban-col-body{padding:12px;display:flex;flex-direction:column;gap:8px;min-height:80px}.tb-kanban-card{background:var(--tb-bg);border:1px solid var(--tb-border);border-radius:12px;padding:14px;cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;gap:10px}.tb-kanban-card:hover{border-color:var(--tb-accent);transform:translateY(-2px);box-shadow:0 4px 16px rgba(0,0,0,.08)}.tb-kanban-card-priority{font-size:.7rem;font-weight:700;padding:3px 9px;border-radius:999px;align-self:flex-start;text-transform:uppercase;letter-spacing:.05em}.tb-kanban-card-title{font-size:.875rem;font-weight:650;color:var(--tb-text);line-height:1.4}.tb-kanban-card-meta{display:flex;align-items:center;justify-content:space-between;gap:8px}.tb-kanban-av{width:24px;height:24px;border-radius:50%;background:var(--tb-accent-bg);color:var(--tb-accent);font-size:.7rem;font-weight:700;display:flex;align-items:center;justify-content:center}.tb-kanban-status-select{background:var(--tb-card);border:1px solid var(--tb-border);color:var(--tb-text-sub);font-size:.72rem;font-weight:600;border-radius:6px;padding:3px 6px;cursor:pointer;font-family:inherit;outline:none}.tb-filter-tabs{display:flex;gap:8px;margin-top:12px;border-bottom:1px solid var(--tb-border);padding-bottom:8px;width:100%}.tb-filter-tab{background:transparent;border:none;color:var(--tb-text-muted);font-size:.85rem;font-weight:600;padding:6px 16px;cursor:pointer;border-radius:var(--tb-radius-sm);transition:all .2s ease;display:flex;align-items:center;gap:6px}.tb-filter-tab:hover{color:var(--tb-text-sub);background:var(--tb-bg)}.tb-filter-tab.active{color:var(--tb-accent);background:var(--tb-accent-bg)}.tb-team-view-container{display:grid;grid-template-columns:350px minmax(0,1fr);gap:20px;align-items:start}.tb-team-member-item{transition:all .2s ease-in-out}.tb-team-member-item:hover{background:var(--tb-card-hover)!important;transform:translateY(-1px)}.tb-metric-badge{display:flex;align-items:center;gap:6px;box-shadow:0 1px 2px rgba(0,0,0,.02)}@media (max-width:992px){.tb-team-view-container{grid-template-columns:1fr}}@media (max-width:768px){.tb-page-header{gap:8px}.tb-page-title{font-size:1.4rem}.tb-welcome-banner{padding:18px 20px}.tb-welcome-banner h2{font-size:1.2rem}.tb-section-header{padding:16px 16px 12px;flex-direction:column;align-items:flex-start}.tb-td,.tb-th{padding:10px 14px}.tb-header-meta{display:none}.tb-filter-tabs{flex-wrap:wrap}}.tb-overview-layout{display:flex;flex-direction:column;gap:20px}@media (min-width:1200px){.tb-overview-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:24px}}.tb-overview-main,.tb-overview-sidebar{display:flex;flex-direction:column;gap:20px}.tb-sidebar-widget{background:var(--tb-card);border:1px solid var(--tb-border);border-radius:var(--tb-radius);padding:20px;box-shadow:var(--tb-shadow);display:flex;flex-direction:column;gap:16px}.tb-widget-title{margin:0;font-size:.95rem;font-weight:850;color:var(--tb-text);display:flex;align-items:center;gap:8px;letter-spacing:-.01em}.kpi-dial-widget{align-items:center;text-align:center}.kpi-ring-wrapper{position:relative;width:140px;height:140px;margin:10px 0}.kpi-circle-svg{transform:rotate(-90deg);width:100%;height:100%}.ring-bg{fill:none;stroke:var(--tb-bg);stroke-width:8}.ring-progress{fill:none;stroke:var(--tb-accent);stroke-width:8;stroke-linecap:round;transition:stroke-dashoffset .6s ease}.kpi-ring-label{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center}.kpi-ring-label .rate{font-size:1.8rem;font-weight:900;color:var(--tb-text);letter-spacing:-.02em;line-height:1}.kpi-ring-label .caption{font-size:.68rem;font-weight:700;text-transform:uppercase;color:var(--tb-text-muted);margin-top:4px;letter-spacing:.05em}.kpi-metrics-list{width:100%;display:flex;flex-direction:column;gap:8px}.kpi-metric-row-item{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;background:var(--tb-bg);border-radius:10px;font-size:.82rem}.kpi-metric-row-item .label-wrap{display:flex;align-items:center;gap:8px;font-weight:600;color:var(--tb-text-sub)}.kpi-metric-row-item.text-danger .label-wrap svg{color:#ef4444}.kpi-metric-row-item.text-warning .label-wrap svg{color:#f97316}.kpi-metric-row-item.text-info .label-wrap svg{color:var(--tb-accent)}.kpi-metric-row-item strong{font-size:.95rem;font-weight:800;color:var(--tb-text)}.widget-header-row{display:flex;justify-content:space-between;align-items:center;width:100%}.create-daily-btn{display:flex;align-items:center;gap:4px;padding:4px 10px;background:var(--tb-accent-bg);color:var(--tb-accent);border:none;border-radius:6px;font-size:.75rem;font-weight:700;cursor:pointer;transition:all .2s}.create-daily-btn:hover{opacity:.85}.daily-checklist-scroll{display:flex;flex-direction:column;gap:8px;max-height:250px;overflow-y:auto;width:100%;padding-right:4px}.daily-checklist-scroll::-webkit-scrollbar{width:4px}.daily-checklist-scroll::-webkit-scrollbar-thumb{background:var(--tb-border);border-radius:10px}.daily-task-item{display:flex;align-items:flex-start;gap:10px;padding:12px;background:var(--tb-bg);border:1px solid var(--tb-border);border-radius:10px;cursor:pointer;transition:all .2s}.daily-task-item:hover{border-color:var(--tb-accent)}.daily-task-item.completed{opacity:.65}.checkbox-wrap{color:var(--tb-text-muted);flex-shrink:0;margin-top:1px;display:flex}.checkbox-icon.checked{color:#22c55e}.daily-task-info{display:flex;flex-direction:column;gap:2px;text-align:left}.daily-title{font-size:.82rem;font-weight:650;color:var(--tb-text);line-height:1.3}.daily-task-item.completed .daily-title{text-decoration:line-through}.daily-role{font-size:.7rem;text-transform:uppercase;font-weight:600}.daily-empty,.daily-role{color:var(--tb-text-muted)}.daily-empty{text-align:center;padding:24px;display:flex;flex-direction:column;align-items:center;gap:8px;width:100%}.daily-empty p{margin:0;font-size:.78rem;font-weight:600}.queue-list{display:flex;flex-direction:column;gap:8px;max-height:280px;overflow-y:auto;width:100%;padding-right:4px}.queue-list::-webkit-scrollbar{width:4px}.queue-list::-webkit-scrollbar-thumb{background:var(--tb-border);border-radius:10px}.queue-item{padding:12px;border-radius:10px;background:var(--tb-bg);border-left:4px solid;cursor:pointer;transition:all .2s;display:flex;flex-direction:column;gap:6px;text-align:left}.queue-item.urgent{border-left-color:#ef4444}.queue-item.high{border-left-color:#f97316}.queue-item:hover{transform:translateX(2px)}.queue-header{display:flex;justify-content:space-between;align-items:center}.queue-badge{font-size:.65rem;font-weight:700;padding:2px 6px;border-radius:4px}.queue-item.urgent .queue-badge{background:rgba(239,68,68,.1);color:#ef4444}.queue-item.high .queue-badge{background:rgba(249,115,22,.1);color:#f97316}.overdue-badge{background:#fee2e2;color:#ef4444;font-size:.6rem;font-weight:700;padding:2px 6px;border-radius:4px}.queue-body{font-size:.82rem;font-weight:650;color:var(--tb-text);line-height:1.3}.queue-footer{gap:4px;font-size:.7rem}.queue-empty,.queue-footer{display:flex;align-items:center;color:var(--tb-text-muted)}.queue-empty{text-align:center;padding:24px;flex-direction:column;gap:8px;width:100%}.queue-empty p{margin:0;font-size:.78rem;font-weight:600}.tb-team-layout{display:flex;flex-direction:column;gap:24px}.tb-leaderboard-podium-container{background:var(--tb-card);border:1px solid var(--tb-border);border-radius:var(--tb-radius);padding:24px;box-shadow:var(--tb-shadow)}.podium-section-title{margin:0 0 24px;font-size:1.05rem;font-weight:850;color:var(--tb-text);display:flex;align-items:center;gap:8px}.leaderboard-podium-row{display:flex;align-items:flex-end;justify-content:center;gap:20px;min-height:220px;margin-top:10px}.podium-column{display:flex;flex-direction:column;align-items:center;flex:1;max-width:180px;position:relative}.podium-badge{font-size:1.8rem;margin-bottom:-10px;z-index:2}.podium-avatar{width:64px;height:64px;border-radius:50%;background:var(--tb-accent);color:#ffffff;font-size:1.5rem;font-weight:700;display:flex;align-items:center;justify-content:center;border:4px solid var(--tb-card);box-shadow:var(--tb-shadow);z-index:1;overflow:hidden}.podium-avatar img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.podium-name{font-size:.85rem;font-weight:700;color:var(--tb-text);margin-top:8px;text-align:center}.podium-completion{font-size:.8rem;font-weight:800;color:var(--tb-accent);margin-top:2px}.podium-count{font-size:.7rem;color:var(--tb-text-muted);margin-top:1px}.podium-bar-visual{width:100%;background:var(--tb-bg);border:1px solid var(--tb-border);border-bottom:none;border-radius:8px 8px 0 0;display:flex;align-items:center;justify-content:center;margin-top:12px}.podium-column.first .podium-bar-visual{height:90px;background:rgba(234,179,8,.08);border-color:rgba(234,179,8,.2)}.podium-column.first .podium-name{color:#eab308}.podium-column.second .podium-bar-visual{height:60px;background:rgba(148,163,184,.08);border-color:rgba(148,163,184,.2)}.podium-column.third .podium-bar-visual{height:40px;background:rgba(180,83,9,.08);border-color:rgba(180,83,9,.2)}.podium-bar-visual .label{font-size:.72rem;font-weight:800;color:var(--tb-text-muted);text-transform:uppercase;letter-spacing:.05em}.leaderboard-empty{color:var(--tb-text-muted);font-size:.9rem;font-weight:600;padding:40px 0}.team-scroll-container{max-height:500px;overflow-y:auto;padding-right:4px}.team-scroll-container::-webkit-scrollbar{width:4px}.team-scroll-container::-webkit-scrollbar-thumb{background:var(--tb-border);border-radius:10px}@media (max-width:1200px){.tb-overview-sidebar{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))!important;gap:20px!important;width:100%!important}}@media (max-width:992px){.team-scroll-container{display:flex!important;overflow-x:auto!important;overflow-y:hidden!important;gap:12px!important;padding:4px 4px 12px!important;max-height:none!important;width:100%!important;-webkit-overflow-scrolling:touch}.tb-team-member-item{flex:0 0 260px!important;margin-bottom:0!important}}@media (max-width:768px){.tb-kanban-board{display:flex!important;overflow-x:auto!important;scroll-snap-type:x mandatory!important;gap:12px!important;padding-bottom:12px!important;margin-bottom:20px!important;width:100%!important;-webkit-overflow-scrolling:touch}.tb-kanban-col{flex:0 0 85%!important;scroll-snap-align:center!important;min-width:280px!important}.tb-overview-main .tb-section-card:nth-of-type(2) .tb-table td:nth-child(4),.tb-overview-main .tb-section-card:nth-of-type(2) .tb-table td:nth-child(6),.tb-overview-main .tb-section-card:nth-of-type(2) .tb-table th:nth-child(4),.tb-overview-main .tb-section-card:nth-of-type(2) .tb-table th:nth-child(6),.tb-table th:nth-child(3),.tb-td:nth-child(3){display:none!important}}@media (max-width:600px){.tb-table th:nth-child(6),.tb-td:nth-child(6){display:none!important}}@media (max-width:480px){.leaderboard-podium-row{gap:8px!important;min-height:180px!important}.podium-avatar{width:48px!important;height:48px!important;font-size:1.1rem!important}.podium-badge{font-size:1.4rem!important;margin-bottom:-6px!important}.podium-name{font-size:.75rem!important}.podium-completion{font-size:.7rem!important}.podium-count{font-size:.65rem!important}.podium-column.first .podium-bar-visual{height:70px!important}.podium-column.second .podium-bar-visual{height:50px!important}.podium-column.third .podium-bar-visual{height:35px!important}}@media (max-width:380px){.tb-metrics-row{grid-template-columns:1fr!important}}.mobile-only{display:none!important}@media (max-width:768px){.desktop-only{display:none!important}.mobile-only{display:block!important}.tb-mobile-projects-list.mobile-only,.tb-mobile-tasks-list.mobile-only{display:flex!important;flex-direction:column;gap:12px;padding:8px 0}.tb-mobile-project-card,.tb-mobile-task-card{background:var(--tb-card);border:1px solid var(--tb-border);border-radius:12px;padding:14px 16px;box-shadow:var(--tb-shadow);transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;gap:12px;cursor:pointer;position:relative;overflow:hidden}.tb-mobile-project-card:active,.tb-mobile-task-card:active{transform:scale(.98);background:var(--tb-bg-hover);border-color:var(--tb-border-hover)}.tb-mobile-project-header,.tb-mobile-task-header{display:flex;justify-content:space-between;align-items:center;gap:10px}.tb-mobile-task-title-group{display:flex;align-items:center;gap:10px;min-width:0}.tb-priority-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.tb-priority-dot.urgent{background:#ef4444;box-shadow:0 0 6px #ef4444}.tb-priority-dot.high{background:#f97316;box-shadow:0 0 6px #f97316}.tb-priority-dot.medium{background:#eab308;box-shadow:0 0 6px #eab308}.tb-priority-dot.low{background:#3b82f6;box-shadow:0 0 6px #3b82f6}.tb-mobile-task-title{font-size:.92rem;font-weight:600;color:var(--tb-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tb-mobile-project-name{font-size:.95rem;font-weight:700;color:var(--tb-text)}.tb-status-badge{font-size:.68rem;font-weight:700;padding:4px 8px;border-radius:6px;text-transform:uppercase;letter-spacing:.03em;flex-shrink:0}.tb-status-badge.status-pending{background:rgba(245,158,11,.08);color:#f59e0b;border:1px solid rgba(245,158,11,.15)}.tb-status-badge.status-in_progress{background:var(--tb-accent-bg);color:var(--tb-accent);border:1px solid rgba(99,102,241,.15)}.tb-status-badge.status-completed{background:rgba(34,197,94,.08);color:#22c55e;border:1px solid rgba(34,197,94,.15)}.tb-mobile-project-body,.tb-mobile-task-body{display:flex;flex-direction:column;gap:8px}.tb-mobile-project-meta,.tb-mobile-task-meta{display:flex;gap:16px;font-size:.78rem;color:var(--tb-text-sub)}.meta-item{display:flex;align-items:center;gap:4px}.meta-label{color:var(--tb-text-muted)}.meta-value{color:var(--tb-text);font-weight:500}.meta-value.overdue{color:#ef4444;font-weight:600}.tb-mobile-task-progress-bar{height:4px;background:var(--tb-border);border-radius:4px;position:relative;margin-top:4px}.tb-mobile-task-progress-bar .progress-fill{height:100%;background:linear-gradient(90deg,var(--tb-accent),#10b981);border-radius:4px}.tb-mobile-task-progress-bar .progress-text{position:absolute;right:0;top:-14px;font-size:.68rem;font-weight:700;color:var(--tb-text-muted)}.tb-mobile-fab{position:fixed;bottom:84px;right:20px;width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,var(--tb-accent),#4f46e5);color:#ffffff;border:none;box-shadow:0 4px 16px rgba(99,102,241,.45),inset 0 1px 0 rgba(255,255,255,.2);display:flex!important;align-items:center;justify-content:center;z-index:999;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1)}.tb-mobile-fab:active{transform:scale(.92) rotate(45deg);box-shadow:0 2px 8px rgba(99,102,241,.25)}.tb-filter-tabs{overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch;padding-bottom:4px;scrollbar-width:none}.tb-filter-tabs::-webkit-scrollbar{display:none}}.tb-daily-submission-widget{background:var(--tb-card);border:1px solid var(--tb-border);border-left:4px solid var(--tb-accent);border-radius:16px;padding:20px 24px;margin-bottom:24px;display:grid;grid-template-columns:1.1fr 1.3fr;gap:28px;box-shadow:var(--tb-shadow-sm);position:relative;overflow:hidden}.tb-daily-widget-left{display:flex;flex-direction:column;justify-content:space-between;gap:16px}.tb-daily-widget-title{font-size:1.15rem;font-weight:800;color:var(--tb-text);display:flex;align-items:center;gap:8px;margin:0 0 6px}.tb-daily-widget-desc{font-size:.8rem;color:var(--tb-text-sub);line-height:1.55;margin:0}.tb-daily-status-container{display:flex;align-items:center;gap:12px}.tb-daily-status-banner{padding:6px 12px;border-radius:8px;font-size:.76rem;font-weight:700;display:inline-flex;align-items:center;gap:6px;text-transform:uppercase;letter-spacing:.02em}.tb-daily-status-banner.submitted{background:rgba(34,197,94,.08);color:#22c55e;border:1px solid rgba(34,197,94,.15);box-shadow:0 0 10px rgba(34,197,94,.05)}.tb-daily-status-banner.pending{background:rgba(245,158,11,.08);color:#f59e0b;border:1px solid rgba(245,158,11,.15)}.tb-daily-status-banner.overdue{background:rgba(239,68,68,.08);color:#ef4444;border:1px solid rgba(239,68,68,.15);animation:pulse-border 2s infinite}.tb-daily-widget-right form{display:flex;flex-direction:column;gap:12px}.tb-daily-textarea{width:100%;min-height:84px;background:var(--tb-bg);border:1px solid var(--tb-border);border-radius:10px;padding:10px 12px;color:var(--tb-text);font-size:.85rem;line-height:1.45;resize:vertical;font-family:inherit;transition:border-color .2s ease,box-shadow .2s ease}.tb-daily-textarea:focus{border-color:var(--tb-accent);box-shadow:0 0 0 3px rgba(99,102,241,.12);outline:none}.tb-daily-form-row{display:flex;gap:12px;align-items:center}.tb-daily-select-wrapper{flex:1}.tb-daily-select{width:100%;background:var(--tb-bg);border:1px solid var(--tb-border);border-radius:8px;padding:9px 12px;color:var(--tb-text);font-size:.82rem;cursor:pointer;outline:none;font-family:inherit;transition:border-color .2s ease}.tb-daily-select:focus{border-color:var(--tb-accent)}.tb-daily-submit-btn{background:linear-gradient(135deg,var(--tb-accent),#4f46e5);color:#ffffff;border:none;border-radius:8px;padding:9px 16px;font-weight:700;font-size:.82rem;display:flex;align-items:center;justify-content:center;gap:6px;cursor:pointer;transition:all .2s ease;white-space:nowrap}.tb-daily-submit-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px rgba(99,102,241,.25)}.tb-daily-submit-btn:active:not(:disabled){transform:translateY(0)}.tb-daily-submit-btn:disabled{opacity:.6;cursor:not-allowed}.tb-daily-alert-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.55);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px}.tb-daily-alert-card{background:var(--tb-card);border:1px solid var(--tb-border);border-radius:16px;max-width:440px;width:100%;padding:24px;box-shadow:0 12px 36px rgba(0,0,0,.35);display:flex;flex-direction:column;gap:16px;position:relative;animation:pop-in .32s cubic-bezier(.34,1.56,.64,1)}@keyframes pulse-border{0%{border-color:rgba(239,68,68,.15)}50%{border-color:rgba(239,68,68,.5)}to{border-color:rgba(239,68,68,.15)}}@keyframes pop-in{0%{transform:scale(.92);opacity:0}to{transform:scale(1);opacity:1}}@media (max-width:768px){.tb-daily-submission-widget{grid-template-columns:1fr;gap:18px;padding:16px 18px}.tb-daily-form-row{flex-direction:column;align-items:stretch}}.uc-section{background:var(--tb-card);border:1px solid var(--tb-border);border-radius:var(--tb-radius);padding:24px;box-shadow:var(--tb-shadow);width:100%}.uc-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;flex-wrap:wrap;gap:10px}.uc-section-title{display:flex;align-items:center;gap:8px;font-size:1.05rem;font-weight:800;color:var(--tb-text);margin:0 0 4px;letter-spacing:-.02em}.uc-section-sub{font-size:.78rem;color:var(--tb-text-muted);margin:0}.uc-count-badge{background:var(--tb-accent-bg);color:var(--tb-accent);border:1px solid rgba(99,102,241,.2);font-size:.78rem;font-weight:700;padding:5px 14px;border-radius:999px}.uc-loading{display:flex;flex-direction:column;align-items:center;gap:10px;padding:48px 24px;color:var(--tb-text-muted);font-size:.88rem}.uc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px}@media (max-width:600px){.uc-grid{grid-template-columns:repeat(2,1fr);gap:12px}}.uc-card{position:relative;background:var(--tb-card);border:1px solid var(--tb-border);border-radius:20px;padding:22px 16px 18px;display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer;overflow:hidden;box-shadow:0 2px 12px rgba(0,0,0,.05);transition:border-color .2s,box-shadow .2s;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.uc-card:hover{border-color:rgba(99,102,241,.3);box-shadow:0 8px 32px rgba(0,0,0,.1)}.uc-card-glow{position:absolute;top:-30px;right:-20px;width:100px;height:100px;border-radius:50%;opacity:.12;filter:blur(32px);pointer-events:none;transition:opacity .3s}.uc-card:hover .uc-card-glow{opacity:.22}.uc-avatar-wrap{position:relative;margin-bottom:4px}.uc-avatar{display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:800;color:#fff}.uc-avatar,.uc-avatar-img{width:64px;height:64px;border-radius:50%;border:3px solid rgba(255,255,255,.3);box-shadow:0 4px 16px rgba(0,0,0,.15)}.uc-avatar-img{-o-object-fit:cover;object-fit:cover}.uc-online-dot{position:absolute;bottom:2px;right:2px;width:13px;height:13px;border-radius:50%;background:#22c55e;border:2px solid var(--tb-card)}.uc-name{font-size:.9rem;font-weight:800;color:var(--tb-text);text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;letter-spacing:-.015em}.uc-role{font-size:.72rem;color:var(--tb-text-muted);font-weight:600;text-align:center;background:var(--tb-bg);border:1px solid var(--tb-border);padding:3px 10px;border-radius:999px}.uc-stats{gap:4px;margin-top:4px;width:100%;justify-content:center}.uc-stat,.uc-stats{display:flex;align-items:center}.uc-stat{flex-direction:column;gap:1px;flex:1}.uc-stat-val{font-size:1.05rem;font-weight:900;letter-spacing:-.03em}.uc-stat-lbl{font-size:.6rem;font-weight:600;color:var(--tb-text-muted);text-transform:uppercase;letter-spacing:.04em}.uc-stat-divider{width:1px;height:24px;background:var(--tb-border);flex-shrink:0}.uc-progress-track{width:100%;height:4px;background:var(--tb-bg);border-radius:99px;overflow:hidden;margin-top:4px}.uc-progress-fill{height:100%;border-radius:99px;transition:width .6s ease}.uc-progress-label{font-size:.65rem;color:var(--tb-text-muted);font-weight:600;letter-spacing:.02em}.upm-overlay{position:fixed;inset:0;background:rgba(0,0,0,.55);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:9999;display:flex;align-items:center;justify-content:center;padding:16px}.upm-panel{position:relative;border:1px solid var(--tb-border);border-radius:24px;width:100%;max-width:560px;max-height:90vh;overflow-y:auto;box-shadow:0 24px 80px rgba(0,0,0,.25),0 4px 24px rgba(0,0,0,.15);scrollbar-width:thin;scrollbar-color:var(--tb-border) transparent}.upm-close,.upm-panel{background:var(--tb-card)}.upm-close{position:absolute;top:14px;right:14px;width:32px;height:32px;border-radius:50%;border:1px solid var(--tb-border);color:var(--tb-text-sub);display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:10;transition:all .2s}.upm-close:hover{background:var(--tb-bg);color:var(--tb-text)}.upm-hero{position:relative;padding:28px 24px 0;overflow:hidden}.upm-hero-blur{position:absolute;top:-40px;left:-40px;width:200px;height:200px;border-radius:50%;opacity:.14;filter:blur(60px);pointer-events:none}.upm-hero-content{position:relative;display:flex;align-items:center;gap:16px;flex-wrap:wrap}.upm-hero-avatar{width:72px;height:72px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.8rem;font-weight:900;color:#fff;flex-shrink:0;border:3px solid rgba(255,255,255,.25);box-shadow:0 4px 20px rgba(0,0,0,.2);-o-object-fit:cover;object-fit:cover}.upm-hero-info{flex:1;min-width:0}.upm-hero-name{font-size:1.4rem;font-weight:900;color:var(--tb-text);margin:0 0 4px;letter-spacing:-.03em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.upm-hero-role{font-size:.82rem;color:var(--tb-text-muted);font-weight:600;margin-bottom:6px}.upm-hero-email{display:flex;align-items:center;gap:5px;font-size:.75rem;color:var(--tb-text-muted)}.upm-ring-wrap{position:relative;width:60px;height:60px;flex-shrink:0}.upm-ring-svg{width:60px;height:60px;transform:rotate(-90deg)}.upm-ring-bg{fill:none;stroke:var(--tb-bg);stroke-width:6}.upm-ring-fill{fill:none;stroke-width:6;stroke-linecap:round;transition:stroke-dashoffset .7s ease}.upm-ring-label{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.upm-ring-label .rate{font-size:.7rem;font-weight:900;color:var(--tb-text);line-height:1}.upm-ring-label .cap{font-size:.52rem;color:var(--tb-text-muted);font-weight:600;text-transform:uppercase}.upm-quick-stats{display:flex;gap:0;margin-top:20px;border-top:1px solid var(--tb-border);border-bottom:1px solid var(--tb-border)}.upm-qs-item{flex:1;padding:14px 8px;display:flex;flex-direction:column;align-items:center;gap:2px;border-right:1px solid var(--tb-border)}.upm-qs-item:last-child{border-right:none}.upm-qs-val{font-size:1.35rem;font-weight:900;color:var(--tb-text);letter-spacing:-.04em}.upm-qs-lbl{font-size:.62rem;font-weight:600;color:var(--tb-text-muted);text-transform:uppercase;letter-spacing:.05em}.upm-tabs{display:flex;gap:8px;padding:16px 24px 0;border-bottom:1px solid var(--tb-border)}.upm-tab{display:flex;align-items:center;gap:6px;padding:8px 16px;border:1px solid transparent;border-bottom:none;background:transparent;color:var(--tb-text-muted);font-size:.84rem;font-weight:700;border-radius:10px 10px 0 0;cursor:pointer;transition:all .2s;font-family:inherit;margin-bottom:-1px}.upm-tab:hover{color:var(--tb-text);background:var(--tb-bg)}.upm-tab.active{color:var(--tb-accent);background:var(--tb-accent-bg);border-color:var(--tb-border);border-bottom-color:var(--tb-card)}.upm-body{padding:20px 24px 24px}.upm-task-filters{display:flex;gap:8px;margin-bottom:14px;flex-wrap:wrap}.upm-chip{padding:5px 14px;border-radius:999px;border:1px solid var(--tb-border);background:var(--tb-bg);color:var(--tb-text-sub);font-size:.78rem;font-weight:700;cursor:pointer;transition:all .2s;font-family:inherit}.upm-chip:hover{color:var(--tb-text)}.upm-success-banner{display:flex;align-items:center;gap:8px;background:rgba(34,197,94,.1);color:#16a34a;border:1px solid rgba(34,197,94,.2);border-radius:10px;padding:10px 14px;font-size:.84rem;font-weight:600;margin-bottom:14px}[data-theme=dark] .upm-success-banner{color:#4ade80}.upm-task-list{gap:8px;max-height:340px;overflow-y:auto;scrollbar-width:thin}.upm-empty,.upm-task-list{display:flex;flex-direction:column}.upm-empty{align-items:center;gap:10px;padding:40px 20px;color:var(--tb-text-muted);font-size:.88rem}.upm-task-item{display:flex;align-items:center;gap:12px;padding:12px 14px;background:var(--tb-bg);border:1px solid var(--tb-border);border-radius:12px;transition:background .15s}.upm-task-item:hover{background:var(--tb-card-hover)}.upm-task-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.upm-task-content{flex:1;min-width:0}.upm-task-title{font-size:.84rem;font-weight:600;color:var(--tb-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:4px}.upm-task-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.upm-task-pri{font-size:.65rem;font-weight:700;padding:2px 7px;border-radius:999px;text-transform:uppercase;letter-spacing:.04em}.upm-task-due{display:flex;align-items:center;gap:3px;font-size:.7rem;color:var(--tb-text-muted);font-weight:500}.upm-task-status{font-size:.7rem;font-weight:700;padding:3px 10px;border-radius:999px;flex-shrink:0}.upm-assign-form{display:flex;flex-direction:column;gap:16px}.upm-assign-header{display:flex;align-items:center;gap:8px;font-size:.88rem;color:var(--tb-text-sub);background:var(--tb-bg);border:1px solid var(--tb-border);border-radius:10px;padding:12px 14px}.upm-field{display:flex;flex-direction:column;gap:6px}.upm-field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media (max-width:480px){.upm-field-row{grid-template-columns:1fr}}.upm-label{font-size:.78rem;font-weight:700;color:var(--tb-text-sub);text-transform:uppercase;letter-spacing:.05em}.upm-input,.upm-select{width:100%;padding:10px 14px;background:var(--tb-bg);border:1px solid var(--tb-border);border-radius:10px;color:var(--tb-text);font-size:.85rem;font-family:inherit;outline:none;transition:border-color .2s;box-sizing:border-box}.upm-input:focus,.upm-select:focus{border-color:var(--tb-accent)}.upm-textarea{width:100%;padding:10px 14px;background:var(--tb-bg);border:1px solid var(--tb-border);border-radius:10px;color:var(--tb-text);font-size:.85rem;font-family:inherit;outline:none;resize:vertical;transition:border-color .2s;box-sizing:border-box}.upm-textarea:focus{border-color:var(--tb-accent)}.upm-assign-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border:none;border-radius:12px;color:#fff;font-size:.88rem;font-weight:700;cursor:pointer;font-family:inherit;transition:opacity .2s,transform .2s;margin-top:4px}.upm-assign-btn:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.upm-assign-btn:disabled{opacity:.5;cursor:not-allowed}[data-theme=dark] .upm-panel{box-shadow:0 24px 80px rgba(0,0,0,.5),0 4px 24px rgba(0,0,0,.4)}[data-theme=dark] .uc-card{background:rgba(28,28,30,.85)}.uc-grid-horizontal{display:flex;gap:14px;overflow-x:auto;padding:4px 4px 12px;scrollbar-width:thin;scrollbar-color:var(--tb-accent) transparent;width:100%}.uc-grid-horizontal::-webkit-scrollbar{height:6px}.uc-grid-horizontal::-webkit-scrollbar-track{background:transparent}.uc-grid-horizontal::-webkit-scrollbar-thumb{background:var(--tb-border);border-radius:10px}.uc-grid-horizontal::-webkit-scrollbar-thumb:hover{background:var(--tb-accent)}.uc-card-wrapper{flex-shrink:0;width:175px}.task-details-grid{display:flex;flex-direction:column;gap:24px;max-height:75vh;max-height:75dvh}@media (min-width:992px){.task-details-grid{display:grid;grid-template-columns:1fr 340px;gap:32px;max-height:70vh}}.details-main{overflow-y:auto;-webkit-overflow-scrolling:touch;padding-right:16px}.details-section{margin-bottom:32px}.details-section h4{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:#6b7280;margin-bottom:16px;font-weight:700;border-bottom:none}[data-theme=dark] .details-section h4{color:#8fa0ba}.info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.info-item.full-width{grid-column:1/-1}.info-item{display:flex;align-items:flex-start;justify-content:space-between;padding:18px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;transition:all .2s cubic-bezier(.4,0,.2,1)}.info-item:hover{transform:translateY(-2px);border-color:#cbd5e1}[data-theme=dark] .info-item{background:#1c1f2e;border:1px solid #2d3348;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06)}[data-theme=dark] .info-item:hover{border-color:#4b5578}.info-item>svg{color:#6366f1;margin-top:2px;flex-shrink:0}[data-theme=dark] .info-item>svg{color:#818cf8}.info-content{display:flex;flex-direction:column;align-items:flex-end;text-align:right;min-width:0}.info-content.align-left{align-items:flex-start;text-align:left;width:100%}.info-content label{font-size:.72rem;color:#64748b;font-weight:700;text-transform:uppercase;letter-spacing:.08em;margin-bottom:6px}[data-theme=dark] .info-content label{color:#94a3b8}.info-content span{font-size:.95rem;font-weight:600;color:#0f172a;word-break:break-word}[data-theme=dark] .info-content span{color:#f8fafc}.status-tracking-wrap{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding-bottom:8px;border-bottom:1px solid #e2e8f0}[data-theme=dark] .status-tracking-wrap{border-bottom:1px solid #2d3348}.details-sidebar{display:flex;flex-direction:column;background:#f8fafc;border-radius:16px;padding:24px;border:1px solid #e2e8f0}[data-theme=dark] .details-sidebar{background:transparent;background:#111420;border-color:#2d3348}.sidebar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.sidebar-header h4{margin:0;font-size:1.15rem;font-weight:700;color:#0f172a;letter-spacing:-.01em}[data-theme=dark] .sidebar-header h4{color:#f8fafc}.refresh-btn{font-size:.75rem;background:#ffffff;border:1px solid #e2e8f0;color:#475569;padding:8px 16px;border-radius:9999px;cursor:pointer;font-weight:600;transition:all .2s cubic-bezier(.4,0,.2,1)}[data-theme=dark] .refresh-btn{background:transparent;border-color:#4b5563;color:#cbd5e1}.refresh-btn:hover{background:#f1f5f9;color:#0f172a}[data-theme=dark] .refresh-btn:hover{background:#1e293b;border-color:#64748b;color:#f8fafc}.activity-scroll{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;max-height:480px;padding-right:8px}.description-box{padding:16px;background:#ffffff;border:1px solid #e2e8f0;border-radius:8px;font-size:.95rem;color:#475569;line-height:1.6;width:100%}[data-theme=dark] .description-box{background:#151824;border-color:#2d3348;color:#cbd5e1}.activity-scroll::-webkit-scrollbar,.comments-scroll::-webkit-scrollbar,.details-main::-webkit-scrollbar{width:6px}.activity-scroll::-webkit-scrollbar-thumb,.comments-scroll::-webkit-scrollbar-thumb,.details-main::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:10px}[data-theme=dark] .activity-scroll::-webkit-scrollbar-thumb,[data-theme=dark] .comments-scroll::-webkit-scrollbar-thumb,[data-theme=dark] .details-main::-webkit-scrollbar-thumb{background:#334155}.extension-section{background:rgba(99,102,241,.04);border:1px solid rgba(99,102,241,.08);border-radius:16px;padding:20px}[data-theme=dark] .extension-section{background:rgba(99,102,241,.02);border-color:rgba(99,102,241,.12)}.extension-banner{display:flex;flex-direction:column;gap:16px;padding:16px;border-radius:12px;font-size:.9rem;line-height:1.4;margin-bottom:12px}@media (min-width:576px){.extension-banner{flex-direction:row;align-items:center;justify-content:space-between}}.extension-banner.pending{background:#fef3c7;border:1px solid #fde68a;color:#78350f}[data-theme=dark] .extension-banner.pending{background:rgba(245,158,11,.1);border-color:rgba(245,158,11,.2);color:#fef3c7}.extension-banner-info{display:flex;gap:12px;align-items:flex-start}.extension-banner-info h5{margin:0 0 4px;font-weight:700;font-size:.95rem}.extension-banner-info p{margin:0;font-size:.85rem}.extension-banner-info p.reason{margin-top:4px;font-style:italic;opacity:.9}.extension-banner-actions{display:flex;gap:8px;flex-shrink:0}.extension-banner.approved{background:#dcfce7;border:1px solid #bbf7d0;color:#14532d;display:flex;align-items:center;gap:8px}[data-theme=dark] .extension-banner.approved{background:rgba(34,197,94,.1);border-color:rgba(34,197,94,.2);color:#dcfce7}.extension-banner.rejected{background:#fee2e2;border:1px solid #fecaca;color:#7f1d1d;display:flex;align-items:center;gap:8px}[data-theme=dark] .extension-banner.rejected{background:rgba(239,68,68,.1);border-color:rgba(239,68,68,.2);color:#fee2e2}.extension-form{display:flex;flex-direction:column;gap:12px;margin-top:12px}.sidebar-tabs{display:flex;gap:4px;background:#f1f5f9;padding:4px;border-radius:10px;margin-bottom:16px}[data-theme=dark] .sidebar-tabs{background:#151824}.sidebar-tab-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 12px;border-radius:8px;font-size:.82rem;font-weight:700;color:#64748b;background:transparent;border:none;cursor:pointer;transition:all .2s ease}.sidebar-tab-btn.active{background:#ffffff;color:#6366f1;box-shadow:0 2px 4px rgba(0,0,0,.05)}[data-theme=dark] .sidebar-tab-btn.active{background:#1d2132;color:#818cf8;box-shadow:0 2px 4px rgba(0,0,0,.15)}.sidebar-tab-content{flex:1}.comments-tab-wrapper,.sidebar-tab-content{display:flex;flex-direction:column;min-height:0}.comments-tab-wrapper{height:480px}.comments-scroll{flex:1;overflow-y:auto;padding-right:8px;margin-bottom:12px;display:flex;flex-direction:column;gap:10px}.comment-bubble{background:#ffffff;border:1px solid #e2e8f0;border-radius:12px;padding:12px;font-size:.88rem;line-height:1.4}[data-theme=dark] .comment-bubble{background:#1c1f2e;border-color:#2d3348}.comment-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.comment-author{font-weight:700;color:#334155;font-size:.82rem}[data-theme=dark] .comment-author{color:#cbd5e1}.comment-time{font-size:.72rem;color:#94a3b8}.comment-text{color:#475569;white-space:pre-wrap;word-break:break-word}[data-theme=dark] .comment-text{color:#94a3b8}.comments-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;height:100%;color:#94a3b8;padding:20px}.comments-empty p{font-weight:700;margin:12px 0 4px;color:#475569}[data-theme=dark] .comments-empty p{color:#94a3b8}.comments-empty span{font-size:.78rem;max-width:200px;line-height:1.4}.comment-input-form{position:relative;display:flex;align-items:center;background:#ffffff;border:1px solid #e2e8f0;border-radius:12px;padding:4px;transition:all .2s ease}[data-theme=dark] .comment-input-form{background:#151824;border-color:#2d3348}.comment-input-form:focus-within{border-color:#6366f1;box-shadow:0 0 0 3px rgba(99,102,241,.1)}.comment-textarea{flex:1;background:transparent;border:none;outline:none;font-size:.88rem;color:inherit;padding:8px 12px;resize:none}.comment-send-btn{background:#6366f1;color:#ffffff;border:none;width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.comment-send-btn:hover:not(:disabled){background:#4f46e5;transform:scale(1.03)}.comment-send-btn:disabled{background:#e2e8f0;color:#94a3b8;cursor:not-allowed}[data-theme=dark] .comment-send-btn:disabled{background:#242938;color:#4b5563}@media (max-width:991px){.task-details-grid{max-height:80vh;max-height:80dvh;overflow-y:auto;padding-right:4px}.details-main{padding-right:0;overflow-y:visible}.comments-tab-wrapper{height:auto;max-height:320px}.activity-scroll{max-height:320px}}@media (max-width:560px){.info-grid{grid-template-columns:1fr;gap:12px}.info-item{padding:14px}.status-tracking-wrap{gap:8px;padding-bottom:12px}.comment-input-form{padding:2px}.comment-textarea{font-size:.8rem;padding:6px 10px}.comment-send-btn{width:28px;height:28px;border-radius:6px}}.ct-sheet{display:flex;flex-direction:column;gap:24px}.ct-mode-switch{display:inline-flex;align-self:flex-start;gap:8px;padding:6px;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:16px}.ct-mode-btn{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 14px;border:none;border-radius:12px;background:transparent;color:#64748b;font-size:.92rem;font-weight:600;cursor:pointer;transition:background-color .18s ease,color .18s ease,box-shadow .18s ease}.ct-mode-btn.active{background:#ffffff;color:#111827;box-shadow:0 8px 20px rgba(15,23,42,.08)}.ct-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.85fr);gap:20px}.ct-panel{display:flex;flex-direction:column;gap:18px;padding:24px;border:1px solid #e5e7eb;border-radius:24px;background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,250,252,.98));box-shadow:0 20px 50px rgba(15,23,42,.06)}.ct-panel-main{min-width:0}.ct-panel-side{position:sticky;top:0;align-self:start}.ct-panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.ct-panel-header h3{margin:4px 0 0;font-size:1.1rem;font-weight:700;line-height:1.3;color:#111827}.ct-eyebrow{margin:0;color:#6366f1;font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.ct-field{display:flex;flex-direction:column;gap:10px}.ct-card-label,.ct-label{display:inline-flex;align-items:center;gap:8px;font-size:.87rem;font-weight:600;color:#475569}.ct-input,.ct-textarea{width:100%;border:1px solid #dbe3ef;border-radius:16px;background:#ffffff;color:#0f172a;font:inherit;transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease}.ct-input{min-height:52px;padding:0 16px}.ct-textarea{min-height:140px;padding:14px 16px;resize:vertical}.ct-input:focus,.ct-textarea:focus{outline:none;border-color:#818cf8;box-shadow:0 0 0 4px rgba(99,102,241,.12)}.ct-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.ct-info-card{padding:16px;border:1px solid #e5e7eb;border-radius:18px;background:#f8fafc}.ct-input-plain{min-height:44px;padding:0;border:none;border-radius:0;background:transparent;box-shadow:none;font-weight:600}.ct-input-plain:focus{box-shadow:none}.ct-priority-group{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.ct-priority-btn{min-height:42px;border:1px solid #dbe3ef;border-radius:12px;background:#ffffff;color:#475569;font-size:.87rem;font-weight:700;cursor:pointer;transition:transform .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease,background-color .16s ease}.ct-priority-btn:hover{border-color:#c7d2fe;color:#1e293b}.ct-priority-btn.active{color:#ffffff;box-shadow:0 14px 30px rgba(79,70,229,.22)}.ct-priority-btn[data-priority=high].active{background:linear-gradient(135deg,#ef4444,#f97316);border-color:transparent}.ct-priority-btn[data-priority=medium].active{background:linear-gradient(135deg,#4f46e5,#6366f1);border-color:transparent}.ct-priority-btn[data-priority=low].active{background:linear-gradient(135deg,#0f766e,#14b8a6);border-color:transparent}.ct-assignee-summary{display:flex;align-items:center;gap:14px;padding:16px;border-radius:18px;background:linear-gradient(135deg,#eef2ff,#f8fafc);border:1px solid #e0e7ff}.ct-assignee-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:14px;background:#ffffff;color:#4f46e5;box-shadow:0 8px 20px rgba(79,70,229,.12)}.ct-assignee-copy{display:flex;flex-direction:column;gap:4px;min-width:0}.ct-assignee-copy strong{color:#111827;font-size:.96rem}.ct-assignee-copy span{color:#64748b;font-size:.84rem;line-height:1.45}.ct-chip-grid{display:grid;gap:10px}.ct-chip{display:flex;flex-direction:column;align-items:flex-start;gap:4px;width:100%;padding:14px 16px;border:1px solid #e5e7eb;border-radius:16px;background:#ffffff;color:#0f172a;text-align:left;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease,background-color .18s ease}.ct-chip:hover{border-color:#c7d2fe;box-shadow:0 14px 28px rgba(99,102,241,.08);transform:translateY(-1px)}.ct-chip.active{border-color:#818cf8;background:linear-gradient(135deg,#eef2ff,#f8fafc);box-shadow:0 18px 36px rgba(99,102,241,.12)}.ct-chip span{font-size:.92rem;font-weight:700}.ct-chip small{color:#64748b;font-size:.79rem}.ct-empty-state{padding:18px 16px;border:1px dashed #cbd5e1;border-radius:16px;color:#64748b;font-size:.9rem;text-align:center;background:#f8fafc}.ct-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding-top:4px}.ct-primary-btn,.ct-secondary-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:132px;min-height:46px;padding:0 18px;border-radius:14px;font-size:.92rem;font-weight:700;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease,color .16s ease,border-color .16s ease}.ct-primary-btn{border:none;background:linear-gradient(135deg,#4f46e5,#7c3aed);color:#ffffff;box-shadow:0 16px 32px rgba(79,70,229,.2)}.ct-primary-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 20px 38px rgba(79,70,229,.24)}.ct-primary-btn:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}.ct-secondary-btn{border:1px solid #dbe3ef;background:#ffffff;color:#475569}.ct-secondary-btn:hover{border-color:#cbd5e1;color:#0f172a;background:#f8fafc}[data-theme=dark] .ct-mode-switch{background:rgba(15,23,42,.85);border-color:rgba(148,163,184,.18)}[data-theme=dark] .ct-mode-btn{color:#94a3b8}[data-theme=dark] .ct-chip,[data-theme=dark] .ct-info-card,[data-theme=dark] .ct-mode-btn.active,[data-theme=dark] .ct-panel,[data-theme=dark] .ct-secondary-btn{background:#111827}[data-theme=dark] .ct-chip,[data-theme=dark] .ct-info-card,[data-theme=dark] .ct-input,[data-theme=dark] .ct-panel,[data-theme=dark] .ct-secondary-btn,[data-theme=dark] .ct-textarea{border-color:rgba(148,163,184,.18)}[data-theme=dark] .ct-assignee-copy strong,[data-theme=dark] .ct-chip span,[data-theme=dark] .ct-input,[data-theme=dark] .ct-mode-btn.active,[data-theme=dark] .ct-panel-header h3,[data-theme=dark] .ct-secondary-btn,[data-theme=dark] .ct-textarea{color:#f8fafc}[data-theme=dark] .ct-assignee-copy span,[data-theme=dark] .ct-card-label,[data-theme=dark] .ct-chip small,[data-theme=dark] .ct-empty-state,[data-theme=dark] .ct-label{color:#94a3b8}[data-theme=dark] .ct-input,[data-theme=dark] .ct-priority-btn,[data-theme=dark] .ct-textarea{background:#0f172a}[data-theme=dark] .ct-assignee-summary{background:linear-gradient(135deg,rgba(79,70,229,.18),rgba(15,23,42,.96));border-color:rgba(129,140,248,.2)}[data-theme=dark] .ct-assignee-icon{background:#0f172a;color:#a5b4fc}@media (max-width:1023px){.ct-layout{grid-template-columns:1fr}.ct-panel-side{position:static}}@media (max-width:767px){.ct-sheet{gap:20px}.ct-mode-switch{width:100%}.ct-mode-btn{flex:1;justify-content:center}.ct-panel{padding:18px;border-radius:20px}.ct-grid{grid-template-columns:1fr}.ct-actions{flex-direction:column-reverse;align-items:stretch}.ct-primary-btn,.ct-secondary-btn{width:100%}}.timeline-wrapper{position:relative;padding:var(--sp-3) 0;display:flex;flex-direction:column;gap:var(--sp-4)}.timeline-line{position:absolute;left:18px;top:0;bottom:0;width:2px;background:linear-gradient(180deg,transparent,rgba(0,0,0,.08),transparent)}.timeline-item{position:relative;display:flex;gap:var(--sp-3);padding-left:calc(36px + var(--sp-3))}.timeline-icon-outer{position:absolute;left:0;top:2px;width:36px;height:36px;z-index:2}.timeline-icon-inner,.timeline-icon-outer{display:flex;align-items:center;justify-content:center}.timeline-icon-inner{width:28px;height:28px;border-radius:50%;background:var(--bg-surface);border:1px solid rgba(0,0,0,.06);box-shadow:0 2px 8px rgba(0,0,0,.05);color:var(--accent)}.timeline-content{flex:1;padding:var(--sp-3);border-radius:var(--radius-sm,8px);background:rgba(0,0,0,.015);border:1px solid rgba(0,0,0,.03);display:flex;flex-direction:column;gap:var(--sp-1);min-width:0}.timeline-header{display:flex;flex-direction:column;gap:2px;margin-bottom:var(--sp-1)}@media (min-width:480px){.timeline-header{flex-direction:row;justify-content:space-between;align-items:center}}.timeline-title{font-weight:600;color:var(--text-primary);font-size:.875rem}.timeline-time{font-size:.75rem;color:var(--text-tertiary)}.timeline-description{font-size:.875rem;color:var(--text-secondary);line-height:1.5;word-break:break-word}.status-old{background:rgba(0,0,0,.03);font-weight:500;text-decoration:line-through;opacity:.6}.status-new,.status-old{padding:1px var(--sp-2);border-radius:4px}.status-new{background:rgba(var(--accent-rgb),.1);color:var(--accent);font-weight:600}.mx-1{margin:0 var(--sp-1);vertical-align:middle}.empty-timeline{text-align:center;padding:var(--sp-6) var(--sp-4);color:var(--text-tertiary);font-style:italic;font-size:.875rem}.auth-loading-screen{min-height:100vh;min-height:100dvh;width:100%;padding:1.5rem;background:transparent;position:relative;overflow:hidden;box-sizing:border-box;-webkit-user-select:none;-moz-user-select:none;user-select:none}.auth-loading-screen,.auth-pinwheel-container{display:flex;align-items:center;justify-content:center}.auth-pinwheel-container{transition:all .2s ease}.auth-loading-title{margin:0;font-weight:600;letter-spacing:-.015em;text-align:center}.auth-text-lead{color:var(--text-primary,#0f172a)}.dark .auth-text-lead,[data-theme=dark] .auth-text-lead{color:var(--text-primary,#f4f4f5)}.auth-text-accent{color:var(--accent,#6366f1)}.dark .auth-text-accent,[data-theme=dark] .auth-text-accent{color:var(--accent,#818cf8)}@media (prefers-reduced-motion:reduce){l-pinwheel{--uib-speed:0s!important}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}@theme inline{--animation-delay-0:0s;--animation-delay-75:75ms;--animation-delay-100:.1s;--animation-delay-150:.15s;--animation-delay-200:.2s;--animation-delay-300:.3s;--animation-delay-500:.5s;--animation-delay-700:.7s;--animation-delay-1000:1s;--animation-repeat-0:0;--animation-repeat-1:1;--animation-repeat-infinite:infinite;--animation-direction-normal:normal;--animation-direction-reverse:reverse;--animation-direction-alternate:alternate;--animation-direction-alternate-reverse:alternate-reverse;--animation-fill-mode-none:none;--animation-fill-mode-forwards:forwards;--animation-fill-mode-backwards:backwards;--animation-fill-mode-both:both;--percentage-0:0;--percentage-5:.05;--percentage-10:.1;--percentage-15:.15;--percentage-20:.2;--percentage-25:.25;--percentage-30:.3;--percentage-35:.35;--percentage-40:.4;--percentage-45:.45;--percentage-50:.5;--percentage-55:.55;--percentage-60:.6;--percentage-65:.65;--percentage-70:.7;--percentage-75:.75;--percentage-80:.8;--percentage-85:.85;--percentage-90:.9;--percentage-95:.95;--percentage-100:1;--percentage-translate-full:1;--animate-in:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none);--animate-out:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none);@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0));filter:blur(var(--tw-enter-blur,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0));filter:blur(var(--tw-exit-blur,0))}}--animate-accordion-down:accordion-down var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none);--animate-accordion-up:accordion-up var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none);--animate-collapsible-down:collapsible-down var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none);--animate-collapsible-up:collapsible-up var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none);@keyframes accordion-down{0%{height:0}to{height:var(--radix-accordion-content-height,var(--bits-accordion-content-height,var(--reka-accordion-content-height,var(--kb-accordion-content-height,var(--ngp-accordion-content-height,auto)))))}}@keyframes accordion-up{0%{height:var(--radix-accordion-content-height,var(--bits-accordion-content-height,var(--reka-accordion-content-height,var(--kb-accordion-content-height,var(--ngp-accordion-content-height,auto)))))}to{height:0}}@keyframes collapsible-down{0%{height:0}to{height:var(--radix-collapsible-content-height,var(--bits-collapsible-content-height,var(--reka-collapsible-content-height,var(--kb-collapsible-content-height,auto))))}}@keyframes collapsible-up{0%{height:var(--radix-collapsible-content-height,var(--bits-collapsible-content-height,var(--reka-collapsible-content-height,var(--kb-collapsible-content-height,auto))))}to{height:0}}--animate-caret-blink:caret-blink 1.25s ease-out infinite;@keyframes caret-blink{0%,70%,to{opacity:1}20%,50%{opacity:0}}}@utility animation-duration-*{--tw-animation-duration:calc(--value(number)*1ms);--tw-animation-duration:--value(--animation-duration-*,[duration],"initial",[*]);animation-duration:calc(--value(number)*1ms);animation-duration:--value(--animation-duration-*,[duration],"initial",[*])}@utility delay-*{animation-delay:calc(--value(number)*1ms);animation-delay:--value(--animation-delay-*,[duration],"initial",[*]);--tw-animation-delay:calc(--value(number)*1ms);--tw-animation-delay:--value(--animation-delay-*,[duration],"initial",[*])}@utility repeat-*{animation-iteration-count:--value(--animation-repeat-*,number,"initial",[*]);--tw-animation-iteration-count:--value(--animation-repeat-*,number,"initial",[*])}@utility direction-*{animation-direction:--value(--animation-direction-*,"initial",[*]);--tw-animation-direction:--value(--animation-direction-*,"initial",[*])}@utility fill-mode-*{animation-fill-mode:--value(--animation-fill-mode-*,"initial",[*]);--tw-animation-fill-mode:--value(--animation-fill-mode-*,"initial",[*])}@utility running{animation-play-state:running}@utility paused{animation-play-state:paused}@utility play-state-*{animation-play-state:--value("initial",[*])}@utility blur-in{--tw-enter-blur:20px}@utility blur-in-*{--tw-enter-blur:calc(--value(number)*1px);--tw-enter-blur:--value(--blur-*,[*])}@utility blur-out{--tw-exit-blur:20px}@utility blur-out-*{--tw-exit-blur:calc(--value(number)*1px);--tw-exit-blur:--value(--blur-*,[*])}@utility fade-in{--tw-enter-opacity:0}@utility fade-in-*{--tw-enter-opacity:calc(--value(number)/100);--tw-enter-opacity:--value(--percentage-*,[*])}@utility fade-out{--tw-exit-opacity:0}@utility fade-out-*{--tw-exit-opacity:calc(--value(number)/100);--tw-exit-opacity:--value(--percentage-*,[*])}@utility zoom-in{--tw-enter-scale:0}@utility zoom-in-*{--tw-enter-scale:calc(--value(number)*1%);--tw-enter-scale:calc(--value(ratio));--tw-enter-scale:--value(--percentage-*,[*])}@utility -zoom-in-*{--tw-enter-scale:calc(--value(number)*-1%);--tw-enter-scale:calc(--value(ratio)*-1);--tw-enter-scale:--value(--percentage-*,[*])}@utility zoom-out{--tw-exit-scale:0}@utility zoom-out-*{--tw-exit-scale:calc(--value(number)*1%);--tw-exit-scale:calc(--value(ratio));--tw-exit-scale:--value(--percentage-*,[*])}@utility -zoom-out-*{--tw-exit-scale:calc(--value(number)*-1%);--tw-exit-scale:calc(--value(ratio)*-1);--tw-exit-scale:--value(--percentage-*,[*])}@utility spin-in{--tw-enter-rotate:30deg}@utility spin-in-*{--tw-enter-rotate:calc(--value(number)*1deg);--tw-enter-rotate:calc(--value(ratio)*360deg);--tw-enter-rotate:--value(--rotate-*,[*])}@utility -spin-in{--tw-enter-rotate:-30deg}@utility -spin-in-*{--tw-enter-rotate:calc(--value(number)*-1deg);--tw-enter-rotate:calc(--value(ratio)*-360deg);--tw-enter-rotate:--value(--rotate-*,[*])}@utility spin-out{--tw-exit-rotate:30deg}@utility spin-out-*{--tw-exit-rotate:calc(--value(number)*1deg);--tw-exit-rotate:calc(--value(ratio)*360deg);--tw-exit-rotate:--value(--rotate-*,[*])}@utility -spin-out{--tw-exit-rotate:-30deg}@utility -spin-out-*{--tw-exit-rotate:calc(--value(number)*-1deg);--tw-exit-rotate:calc(--value(ratio)*-360deg);--tw-exit-rotate:--value(--rotate-*,[*])}@utility slide-in-from-top{--tw-enter-translate-y:-100%}@utility slide-in-from-top-*{--tw-enter-translate-y:calc(--value(integer)*var(--spacing)*-1);--tw-enter-translate-y:calc(--value(--percentage-*,--percentage-translate-*)*-100%);--tw-enter-translate-y:calc(--value(ratio)*-100%);--tw-enter-translate-y:calc(--value(--translate-*,[percentage],[length])*-1)}@utility slide-in-from-bottom{--tw-enter-translate-y:100%}@utility slide-in-from-bottom-*{--tw-enter-translate-y:calc(--value(integer)*var(--spacing));--tw-enter-translate-y:calc(--value(--percentage-*,--percentage-translate-*)*100%);--tw-enter-translate-y:calc(--value(ratio)*100%);--tw-enter-translate-y:--value(--translate-*,[percentage],[length])}@utility slide-in-from-left{--tw-enter-translate-x:-100%}@utility slide-in-from-left-*{--tw-enter-translate-x:calc(--value(integer)*var(--spacing)*-1);--tw-enter-translate-x:calc(--value(--percentage-*,--percentage-translate-*)*-100%);--tw-enter-translate-x:calc(--value(ratio)*-100%);--tw-enter-translate-x:calc(--value(--translate-*,[percentage],[length])*-1)}@utility slide-in-from-right{--tw-enter-translate-x:100%}@utility slide-in-from-right-*{--tw-enter-translate-x:calc(--value(integer)*var(--spacing));--tw-enter-translate-x:calc(--value(--percentage-*,--percentage-translate-*)*100%);--tw-enter-translate-x:calc(--value(ratio)*100%);--tw-enter-translate-x:--value(--translate-*,[percentage],[length])}@utility slide-in-from-start{&:dir(ltr){--tw-enter-translate-x:-100%}&:dir(rtl){--tw-enter-translate-x:100%}}@utility slide-in-from-start-*{&:where(:dir(ltr),[dir=ltr],[dir=ltr]*){--tw-enter-translate-x:calc(--value(integer)*var(--spacing)*-1);--tw-enter-translate-x:calc(--value(--percentage-*,--percentage-translate-*)*-100%);--tw-enter-translate-x:calc(--value(ratio)*-100%);--tw-enter-translate-x:calc(--value(--translate-*,[percentage],[length])*-1)}&:where(:dir(rtl),[dir=rtl],[dir=rtl]*){--tw-enter-translate-x:calc(--value(integer)*var(--spacing));--tw-enter-translate-x:calc(--value(--percentage-*,--percentage-translate-*)*100%);--tw-enter-translate-x:calc(--value(ratio)*100%);--tw-enter-translate-x:--value(--translate-*,[percentage],[length])}}@utility slide-in-from-end{&:dir(ltr){--tw-enter-translate-x:100%}&:dir(rtl){--tw-enter-translate-x:-100%}}@utility slide-in-from-end-*{&:where(:dir(ltr),[dir=ltr],[dir=ltr]*){--tw-enter-translate-x:calc(--value(integer)*var(--spacing));--tw-enter-translate-x:calc(--value(--percentage-*,--percentage-translate-*)*100%);--tw-enter-translate-x:calc(--value(ratio)*100%);--tw-enter-translate-x:--value(--translate-*,[percentage],[length])}&:where(:dir(rtl),[dir=rtl],[dir=rtl]*){--tw-enter-translate-x:calc(--value(integer)*var(--spacing)*-1);--tw-enter-translate-x:calc(--value(--percentage-*,--percentage-translate-*)*-100%);--tw-enter-translate-x:calc(--value(ratio)*-100%);--tw-enter-translate-x:calc(--value(--translate-*,[percentage],[length])*-1)}}@utility slide-out-to-top{--tw-exit-translate-y:-100%}@utility slide-out-to-top-*{--tw-exit-translate-y:calc(--value(integer)*var(--spacing)*-1);--tw-exit-translate-y:calc(--value(--percentage-*,--percentage-translate-*)*-100%);--tw-exit-translate-y:calc(--value(ratio)*-100%);--tw-exit-translate-y:calc(--value(--translate-*,[percentage],[length])*-1)}@utility slide-out-to-bottom{--tw-exit-translate-y:100%}@utility slide-out-to-bottom-*{--tw-exit-translate-y:calc(--value(integer)*var(--spacing));--tw-exit-translate-y:calc(--value(--percentage-*,--percentage-translate-*)*100%);--tw-exit-translate-y:calc(--value(ratio)*100%);--tw-exit-translate-y:--value(--translate-*,[percentage],[length])}@utility slide-out-to-left{--tw-exit-translate-x:-100%}@utility slide-out-to-left-*{--tw-exit-translate-x:calc(--value(integer)*var(--spacing)*-1);--tw-exit-translate-x:calc(--value(--percentage-*,--percentage-translate-*)*-100%);--tw-exit-translate-x:calc(--value(ratio)*-100%);--tw-exit-translate-x:calc(--value(--translate-*,[percentage],[length])*-1)}@utility slide-out-to-right{--tw-exit-translate-x:100%}@utility slide-out-to-right-*{--tw-exit-translate-x:calc(--value(integer)*var(--spacing));--tw-exit-translate-x:calc(--value(--percentage-*,--percentage-translate-*)*100%);--tw-exit-translate-x:calc(--value(ratio)*100%);--tw-exit-translate-x:--value(--translate-*,[percentage],[length])}@utility slide-out-to-start{&:dir(ltr){--tw-exit-translate-x:-100%}&:dir(rtl){--tw-exit-translate-x:100%}}@utility slide-out-to-start-*{&:where(:dir(ltr),[dir=ltr],[dir=ltr]*){--tw-exit-translate-x:calc(--value(integer)*var(--spacing)*-1);--tw-exit-translate-x:calc(--value(--percentage-*,--percentage-translate-*)*-100%);--tw-exit-translate-x:calc(--value(ratio)*-100%);--tw-exit-translate-x:calc(--value(--translate-*,[percentage],[length])*-1)}&:where(:dir(rtl),[dir=rtl],[dir=rtl]*){--tw-exit-translate-x:calc(--value(integer)*var(--spacing));--tw-exit-translate-x:calc(--value(--percentage-*,--percentage-translate-*)*100%);--tw-exit-translate-x:calc(--value(ratio)*100%);--tw-exit-translate-x:--value(--translate-*,[percentage],[length])}}@utility slide-out-to-end{&:dir(ltr){--tw-exit-translate-x:100%}&:dir(rtl){--tw-exit-translate-x:-100%}}@utility slide-out-to-end-*{&:where(:dir(ltr),[dir=ltr],[dir=ltr]*){--tw-exit-translate-x:calc(--value(integer)*var(--spacing));--tw-exit-translate-x:calc(--value(--percentage-*,--percentage-translate-*)*100%);--tw-exit-translate-x:calc(--value(ratio)*100%);--tw-exit-translate-x:--value(--translate-*,[percentage],[length])}&:where(:dir(rtl),[dir=rtl],[dir=rtl]*){--tw-exit-translate-x:calc(--value(integer)*var(--spacing)*-1);--tw-exit-translate-x:calc(--value(--percentage-*,--percentage-translate-*)*-100%);--tw-exit-translate-x:calc(--value(ratio)*-100%);--tw-exit-translate-x:calc(--value(--translate-*,[percentage],[length])*-1)}}