:root{--app-bg:#f6f8fb;--app-ink:#18212f;--app-muted:#667085;--app-primary:#6f58b8;--app-primary-dark:#563f97;--app-accent:#f45d7d;--app-border:#e5e9f1;--app-soft:#f0ecfa}.profile-avatar-lg{width:64px;height:64px;font-size:24px}.profile-summary-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;border-top:1px solid var(--app-border)}.profile-summary-row span{color:var(--app-muted)}.profile-summary-row strong{min-width:0;text-align:right;overflow-wrap:anywhere}.profile-page-grid{display:grid;grid-template-columns:minmax(280px,360px) minmax(0,1fr);gap:22px;align-items:start}.profile-identity-card,.profile-detail-panel{overflow:hidden;border:1px solid var(--app-border);border-radius:8px;background:#fff;box-shadow:0 12px 32px rgba(24,33,47,0.08)}.profile-cover{min-height:170px;display:flex;justify-content:center;align-items:flex-start;text-align:center;padding:24px;color:#fff;background:#222832}.profile-cover h2{max-width:100%;margin:0 0 8px;font-size:1.45rem;font-weight:800;overflow-wrap:anywhere}.profile-cover p{margin:0;font-weight:700;color:rgba(255,255,255,.86)}.profile-identity-body{padding:0 28px 28px;text-align:center}.profile-portrait{width:112px;height:112px;display:inline-grid;place-items:center;margin-top:-56px;border:5px solid #fff;border-radius:999px;color:#fff;font-size:2rem;font-weight:800;background:linear-gradient(135deg,#6f58b8,#2f8de4);box-shadow:0 18px 32px rgba(24,33,47,.16)}.profile-contact-list{display:grid;gap:12px;margin-top:28px;text-align:left}.profile-contact-list>div{display:grid;grid-template-columns:32px minmax(0,1fr);align-items:center;gap:10px;padding:12px 14px;border:1px solid #edf1f7;border-radius:8px;background:#f8fafc}.profile-contact-list i{color:var(--app-primary)}.profile-contact-list span{min-width:0;font-weight:700;color:#334155;overflow-wrap:anywhere}.profile-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-bottom:1px solid var(--app-border)}.profile-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:64px;border:0;border-bottom:3px solid transparent;color:var(--app-ink);font-weight:800;background:#fff}.profile-tabs button.active{color:#0d6efd;border-bottom-color:#0d6efd}.profile-tab-content{padding:26px 28px 30px}.profile-tab-content h5,.profile-settings-section h5{margin:0 0 18px;font-weight:800}.profile-info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 32px;margin-bottom:32px}.profile-info-grid span{display:block;margin-bottom:6px;color:#4b5563;font-weight:800}.profile-info-grid strong{display:block;color:#8190ad;font-weight:700;overflow-wrap:anywhere}.profile-note{padding-top:10px;color:#334155;line-height:1.7}.profile-note h6{margin:0 0 14px;font-weight:800}.profile-note p{max-width:900px;margin:0}.profile-settings-section{padding-bottom:26px;margin-bottom:26px;border-bottom:1px solid var(--app-border)}.profile-settings-section:last-child{padding-bottom:0;margin-bottom:0;border-bottom:0}.profile-section-head{display:flex;justify-content:space-between;gap:16px;margin-bottom:18px}.profile-section-head h5{margin-bottom:4px}.profile-section-head p{margin:0;color:var(--app-muted)}.profile-action-row{display:flex;justify-content:flex-end;margin-top:18px}body{min-height:100vh;color:var(--app-ink);background:var(--app-bg)}.app-shell{min-height:calc(100vh - 136px)}.auth-panel{max-width:460px;margin:72px auto 0}.app-card{border:1px solid var(--app-border);border-radius:8px;box-shadow:0 12px 32px rgba(24,33,47,0.08)}.icon-box{display:inline-flex;width:42px;height:42px;align-items:center;justify-content:center;border-radius:8px;color:var(--app-primary);background:#eaf1ff}.registration-success-icon{width:74px;height:74px;display:inline-grid;place-items:center;border-radius:22px;color:#0f9f6e;font-size:2.4rem;background:#dcfce7}.registration-success-icon{width:74px;height:74px;display:inline-grid;place-items:center;border-radius:22px;color:#0f9f6e;font-size:2.4rem;background:#dcfce7}.btn-primary{background-color:var(--app-primary);border-color:var(--app-primary)}.btn-primary:hover,.btn-primary:focus{background-color:var(--app-primary-dark);border-color:var(--app-primary-dark)}.table thead th{color:var(--app-muted);font-size:.78rem;font-weight:700;text-transform:uppercase}.code-cell{max-width:280px;white-space:pre-wrap}.text-muted{color:var(--app-muted)!important}[x-cloak]{display:none!important}.app-page-skeleton{position:fixed;inset:0;z-index:9999;background:var(--app-bg);opacity:0;pointer-events:none;transition:opacity .2s ease,visibility .2s ease;visibility:hidden}.app-loading .app-page-skeleton{opacity:1;visibility:visible}.app-loaded .app-page-skeleton{opacity:0;visibility:hidden}.app-loading .app-page-skeleton~.app-shell{opacity:0}.app-loaded .app-page-skeleton~.app-shell{opacity:1}.app-page-skeleton~.app-shell{transition:opacity .18s ease}.skeleton-topbar{height:54px;display:grid;grid-template-columns:188px minmax(220px,1fr) auto;align-items:center;gap:18px;padding:0 18px;border-bottom:1px solid var(--app-border);background:#fff}.skeleton-brand,.skeleton-actions,.skeleton-layout,.skeleton-heading{display:flex;align-items:center}.skeleton-brand{gap:8px}.skeleton-brand span,.skeleton-actions span,.skeleton-avatar,.skeleton-search,.skeleton-line,.skeleton-menu,.skeleton-kpis>div,.skeleton-content-grid>section,.skeleton-table{position:relative;overflow:hidden;background:#e9edf5}.skeleton-brand span::after,.skeleton-brand strong::after,.skeleton-actions span::after,.skeleton-avatar::after,.skeleton-search::after,.skeleton-line::after,.skeleton-menu::after,.skeleton-kpis>div::after,.skeleton-content-grid>section::after,.skeleton-table::after{position:absolute;inset:0;content:"";background:linear-gradient(90deg,transparent,rgba(255,255,255,.7),transparent);transform:translateX(-100%);animation:skeleton-shimmer 1.25s infinite}.skeleton-brand span,.skeleton-actions span{width:28px;height:28px;border-radius:999px}.skeleton-brand strong{position:relative;width:92px;height:18px;overflow:hidden;border-radius:6px;background:#e9edf5}.skeleton-search{width:min(420px,100%);height:34px;border-radius:8px}.skeleton-actions{gap:10px}.skeleton-layout{align-items:stretch;gap:18px;padding:18px}.skeleton-sidebar{width:188px;min-height:calc(100vh - 90px);padding:24px 14px;border:1px solid var(--app-border);background:#fff;box-shadow:0 8px 22px rgba(24,33,47,0.06)}.skeleton-avatar{width:72px;height:72px;margin:0 auto 16px;border-radius:18px}.skeleton-line{height:12px;border-radius:999px}.skeleton-line.short{width:92px;margin:0 auto 8px}.skeleton-line.tiny{width:54px;margin:0 auto 34px}.skeleton-line.title{width:180px;height:22px;margin-bottom:10px}.skeleton-menu{height:42px;margin-bottom:12px;border-radius:8px}.skeleton-menu.active{background:#dfe6f5}.skeleton-main{flex:1;min-width:0;padding:24px 0 0}.skeleton-heading{height:58px;align-items:flex-start;justify-content:space-between;flex-direction:column;margin-bottom:18px}.skeleton-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:14px}.skeleton-kpis>div{height:92px;border-radius:8px;background:#fff;box-shadow:0 6px 16px rgba(24,33,47,0.06)}.skeleton-content-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,.8fr);gap:14px;margin-bottom:14px}.skeleton-content-grid>section{height:260px;border-radius:8px;background:#fff;box-shadow:0 6px 16px rgba(24,33,47,0.06)}.skeleton-table{height:300px;border-radius:8px;background:#fff;box-shadow:0 6px 16px rgba(24,33,47,0.06)}@keyframes skeleton-shimmer{100%{transform:translateX(100%)}}.workspace{min-height:100vh;display:grid;grid-template-columns:188px minmax(0,1fr);gap:18px;padding:0 18px 18px;font-size:.82rem}.workspace-sidebar{min-height:calc(100vh - 54px);margin-top:54px;border:1px solid var(--app-border);background:#fff;box-shadow:0 8px 22px rgba(24,33,47,0.06)}.workspace-main{min-width:0;padding-top:78px}.workspace .p-4{padding:.9rem!important}.workspace .mb-5{margin-bottom:1.4rem!important}.workspace .mb-4{margin-bottom:.85rem!important}.workspace .gap-3{gap:.65rem!important}.workspace-card{border:1px solid var(--app-border);border-radius:8px;background:#fff;box-shadow:0 6px 16px rgba(24,33,47,0.06)}.workspace h4{font-size:1rem}.workspace h5{font-size:.86rem}.workspace .display-4{font-size:2rem}.workspace .fs-2{font-size:1.2rem!important}.workspace .fs-3{font-size:1.05rem!important}.workspace .fs-4{font-size:1rem!important}.workspace .table{font-size:.78rem}.workspace-topbar{position:fixed;top:0;left:0;z-index:20;width:100%;height:54px;display:grid;grid-template-columns:188px minmax(220px,1fr) auto;align-items:center;gap:18px;padding:0 18px;border-bottom:1px solid var(--app-border);background:#fff;box-shadow:0 2px 10px rgba(24,33,47,0.04)}.swdigital-logo{display:flex;align-items:center;gap:8px;font-size:1rem;font-weight:700}.swdigital-dot{width:22px;height:22px;border-radius:50%;background:conic-gradient(#8067e6,#ff6b9d,#ffbd4a,#36c5f0,#8067e6)}.company-logo-image{width:24px;height:24px;object-fit:contain;border-radius:4px}.search-box{height:35px;display:flex;align-items:center;gap:10px;max-width:420px;padding:0 12px;border:1px solid var(--app-border);border-radius:4px;background:#f7f9fc;color:var(--app-muted)}.search-box input{height:35px;width:100%;border:0;outline:0;color:var(--app-ink);background:transparent;font-size:.85rem}.top-actions,.profile-chip{display:flex;align-items:center;gap:10px}.top-actions{justify-content:flex-end}.profile-chip{border:0;background:transparent;color:var(--app-ink);font-weight:700;cursor:pointer;padding:0}.profile-avatar{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:2px solid #fff;border-radius:50%;color:var(--app-primary-dark);background:var(--app-soft);font-size:.9rem;font-weight:700}.icon-button{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--app-border);border-radius:50%;color:var(--app-ink);background:#fff}.top-action-wrap{position:relative}.bell-button{position:relative}.notification-badge{position:absolute;top:-8px;right:-6px;min-width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;color:#fff;background:#f44336;font-size:.68rem;font-weight:700}.top-dropdown{position:absolute;top:calc(100%+12px);right:0;z-index:40;overflow:hidden;border:1px solid #d9dce8;border-radius:4px;background:#fff;box-shadow:0 8px 24px rgba(24,33,47,.18)}.notification-menu{width:min(410px,calc(100vw - 28px))}.notification-head{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;color:#fff;background:#6574f6}.notification-item{display:grid;grid-template-columns:46px 1fr;gap:14px;padding:14px 20px;color:var(--app-ink);text-decoration:none;background:#f3f7ff;border-bottom:1px solid #fff}.notification-item:nth-child(odd){background:#fff}.notification-link:hover{color:var(--app-ink);background:#eef4ff}.notification-icon{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;align-self:center;border-radius:50%;border:2px solid currentColor;background:#fff}.notification-action{padding:5px 18px;border:1px solid #6b7280;border-radius:999px;color:#0057b8;background:transparent;font-weight:700;line-height:1}.account-menu{width:250px;padding:8px 0;background:#f2f0f4}.account-menu a,.account-menu button{width:100%;display:flex;align-items:center;gap:14px;padding:15px 20px;border:0;color:#20242c;background:transparent;text-align:left;text-decoration:none;font-size:1rem}.account-menu a:hover,.account-menu button:hover{background:#e8e6ec}.language-button{height:30px;display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;color:var(--app-ink);font-size:.78rem}.language-menu{width:170px;padding:6px}.language-menu button{width:100%;display:flex;align-items:center;gap:10px;padding:9px 10px;border:0;border-radius:4px;background:transparent;color:var(--app-ink);text-align:left}.language-menu button:hover{background:#eef4ff}.sidebar-profile{text-align:center;padding:18px 10px 16px}.sidebar-photo{width:62px;height:62px;display:inline-flex;align-items:center;justify-content:center;border-radius:14px;color:var(--app-primary-dark);background:#f7e6e7;font-size:1.55rem}.side-section{margin:12px 0 8px;color:var(--app-muted);font-size:.62rem;font-weight:700;text-transform:uppercase}.side-link{display:flex;align-items:center;gap:9px;padding:9px 10px;margin-bottom:4px;border-radius:4px;color:#344054;text-decoration:none;font-size:.78rem;font-weight:600}.side-link span:not(.side-message-badge){min-width:0}.side-message-badge{min-width:20px;height:20px;display:inline-grid;place-items:center;margin-left:auto;padding:0 6px;border-radius:999px;color:#fff;font-size:.68rem;font-weight:800;line-height:1;background:#e63946}.side-message-badge[hidden]{display:none}.side-link:hover,.side-link.active{color:var(--app-primary-dark);background:#f1f4fa}.side-link i{width:18px;text-align:center;color:var(--app-primary)}.dashboard-title{margin-bottom:14px;font-size:.95rem;font-weight:700}.kpi-card{min-height:100px}.kpi-icon{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;font-size:.92rem}.kpi-number{font-size:1.45rem;font-weight:800;line-height:1}.metric-circle{width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;background:var(--app-soft)}.metric-soft{display:flex;align-items:center;gap:12px}.metric-soft .metric-icon{width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;color:#173c2c;background:#abe5c0}.chart-donut{width:min(150px,58vw);height:min(150px,58vw);position:relative}.sparkline-box{position:relative;width:100%;height:34px;min-height:34px;max-height:34px}.chart-donut canvas,.sparkline-box canvas,.chart-box-sm canvas{display:block;width:100%!important;height:100%!important}.chart-box-sm{position:relative;width:100%;height:120px;min-height:120px;max-height:120px}.member-dashboard{display:grid;gap:14px}.member-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.member-kpi{min-height:106px;display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-radius:6px;color:#fff;box-shadow:0 6px 14px rgba(24,33,47,.08)}.member-kpi.purple{background:linear-gradient(135deg,#6e4dd8,#9276f0)}.member-kpi.green{background:linear-gradient(135deg,#069b63,#14b88a)}.member-kpi.orange{background:linear-gradient(135deg,#ff5d18,#ffad00)}.member-kpi.blue{background:linear-gradient(135deg,#0978ed,#45a4ff)}.member-kpi span,.member-kpi small{display:block;font-weight:700}.member-kpi strong{display:block;margin:12px 0 4px;font-size:1.45rem;line-height:1}.member-kpi i{font-size:1.55rem;opacity:.9}.member-grid-top{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:14px}.member-grid-mid{display:grid;grid-template-columns:minmax(260px,4fr) minmax(0,8fr);gap:14px}.member-grid-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.member-panel{padding:14px}.member-panel-head{min-height:32px;display:flex;align-items:center;justify-content:space-between;gap:12px;margin:-2px 0 12px}.member-panel-head h5{margin:0;font-size:.9rem;font-weight:800}.member-panel-head a,.member-panel-head button{border:0;background:transparent;color:#0b6fd3;font-size:.78rem;font-weight:800;text-decoration:none}.member-chart-lg{height:300px}.member-chart-sm{height:205px}.member-chart-wide{height:330px}.member-chart-lg canvas,.member-chart-sm canvas,.member-chart-wide canvas,.member-donut-wrap canvas,.member-gauge canvas{display:block;width:100%!important;height:100%!important}.member-donut-wrap,.member-gauge{position:relative;width:min(220px,100%);height:220px;margin:0 auto}.member-gauge{height:190px}.member-donut-wrap strong,.member-gauge strong{position:absolute;inset:0;display:grid;place-content:center;text-align:center;color:#4b5563}.member-gauge strong span{display:block;color:#7584ff;font-size:1rem}.member-legend,.member-mini-stats{display:flex;justify-content:center;gap:18px;color:#4b5563}.member-legend .dot{width:8px;height:8px;display:inline-block;margin-right:6px;border-radius:50%}.dot.orange{background:#ffad1f}.dot.purple{background:#4c56b8}.dot.green{background:#4caf50}.member-table th,.member-table td{padding:10px 12px;white-space:nowrap}.member-person{display:flex;align-items:center;gap:8px}.member-person>span,.metric-row>span{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;color:#5d6cff;background:#eef2ff}.member-person small,.member-person strong{display:block}.member-status,.task-status-chip{display:inline-flex;padding:4px 10px;border-radius:6px;font-size:.72rem;font-weight:800}.member-status.available,.task-status-chip.completed{color:#11945d;background:#dff4ea}.member-status.absent,.task-status-chip.not-started{color:#ff7d2b;background:#fff0df}.member-status.pending,.task-status-chip.in-progress{color:#8d62db;background:#f0e8ff}.task-status-chip.pending{color:#2781ff;background:#e6f0ff}.member-progress{height:4px;min-width:82px;overflow:hidden;border-radius:999px;background:#dde2ee}.member-progress span{display:block;height:100%;background:#0b71d9}.member-progress.green span{background:#55b957}.member-scroll-panel{max-height:330px;overflow:hidden}.member-add-button{width:30px;height:30px;display:inline-grid;place-items:center;padding:0}.member-todo{min-height:42px;display:grid;grid-template-columns:18px 18px minmax(0,1fr) auto 28px;align-items:center;gap:10px;margin:0;border-bottom:1px solid #e6eaf2;color:#344054}.member-todo i{color:#c3c8d2}.member-todo .done{color:#8a93a3;text-decoration:line-through}.member-todo span{min-width:0}.member-todo strong,.member-todo small{display:block}.member-todo strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.member-todo small{color:#8a93a3;font-size:11px}.member-todo em{font-style:normal}.member-todo em.high{color:#ff5630}.member-todo em.low{color:#22c55e}.member-todo em.normal{color:#6b7280}.member-todo-delete{width:28px;height:28px;border:0;border-radius:50%;background:transparent;color:#ff5630}.member-todo-delete:hover{background:#fff0ed}.member-mini-stats{justify-content:space-around;margin-top:12px;text-align:center}.member-mini-stats strong,.member-mini-stats small{display:block}.skill-row,.metric-row,.training-card{display:grid;gap:8px;padding:8px 0}.skill-row>div:first-child,.metric-row>div>div:first-child,.training-card>div:first-child{display:flex;justify-content:space-between;gap:12px}.metric-row{grid-template-columns:38px minmax(0,1fr);align-items:center;padding:8px 10px;border-radius:8px;background:#f8fafc}.training-card{padding:12px;border-radius:8px;background:#f8fafc}.summary-pill{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:6px;background:#f8fafc}.team-member-pill{position:relative;padding-right:84px}.team-member-actions{position:absolute;top:50%;right:12px;display:flex;gap:6px;transform:translateY(-50%)}.team-member-actions button{width:30px;height:30px;display:inline-grid;place-items:center;border:0;border-radius:999px;color:#2f63ff;background:#eef3ff}.team-member-actions button.danger{color:#ff4d1f;background:#fff0eb}.summary-icon{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;color:#fff}.bar-row{display:grid;grid-template-columns:92px 1fr 34px;gap:10px;align-items:center;margin-bottom:10px}.bar-track{height:5px;border-radius:999px;background:#e9eef5}.bar-fill{height:100%;border-radius:inherit;background:var(--app-primary)}.activity-item{display:grid;grid-template-columns:34px 1fr auto;gap:12px;padding:10px 0}.activity-badge{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;color:#fff}.attendance-box{border-radius:6px;padding:12px 10px;color:#fff;text-align:center}.leave-tab{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border-radius:999px;background:#f6f8fb}.mini-progress{height:5px}.listing-heading{margin-bottom:28px}.listing-heading h1{font-size:1.28rem;font-weight:700}.listing-breadcrumb{display:flex;align-items:center;gap:8px;color:#2f3a4a;font-size:1rem}.listing-card{overflow:hidden;border:1px solid #cfd8f4;border-radius:10px;background:#fff;box-shadow:0 8px 18px rgba(24,33,47,.07)}.listing-toolbar{min-height:74px;display:flex;flex-wrap:wrap;align-items:center;gap:18px;padding:12px 28px;background:#dfe7fb}.listing-toolbar-title{color:#3f4a61;font-size:1rem;font-weight:700}.listing-search{flex:0 1 280px;width:min(100%,280px);height:35px;display:flex;align-items:center;gap:10px;padding:0 12px;border-radius:6px;background:#fff}.listing-search input{width:100%;height:35px;border:0;outline:0;background:transparent;font-size:.85rem}.listing-search.responsible-search{width:min(100%,320px);height:35px;gap:10px;border:1px solid #dfe5ef;background:#f8fafc}.listing-actions{margin-left:auto;display:flex;align-items:center;gap:14px;flex-wrap:wrap}.view-toggle{display:inline-flex;gap:4px;padding:4px;border-radius:8px;background:rgba(255,255,255,.72)}.view-toggle button{width:34px;height:34px;display:inline-grid;place-items:center;border:0;border-radius:6px;color:#536175;background:transparent}.view-toggle button.active{color:#fff;background:#315bdc}.listing-page-size{width:78px}.listing-icon-button{border:0;background:transparent;color:#315bdc;font-size:1.25rem;line-height:1}.listing-icon-button.success{color:#2fad4f}.listing-icon-button.warning{color:#7b4b2a}.listing-icon-button.download{color:#1e88ff}.listing-table{margin-bottom:0;font-size:.94rem}.listing-table thead th{padding:15px 22px;color:#000;font-size:.94rem;text-transform:none;vertical-align:middle;background:#fff}.listing-table tbody td{padding:16px 22px;border-color:#d8d8d8;color:#000;vertical-align:middle}.listing-pagination{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 22px;border-top:1px solid #e4e8f0;background:#fff}.listing-pagination .page-link{min-width:34px;color:#315bdc;border-color:#dbe2ee;text-align:center}.listing-pagination .page-item.active .page-link{color:#fff;background:#315bdc;border-color:#315bdc}.listing-check{width:22px;height:22px;border:2px solid #4b5563;border-radius:2px}.employee-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:24px;padding:24px;background:#fff}.team-card-grid{padding:0;grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.employee-profile-card{position:relative;overflow:hidden;border:1px solid #edf0f5;border-radius:8px;background:#fff;box-shadow:0 8px 20px rgba(19,28,45,.06)}.employee-card-cover{height:92px;background:linear-gradient(135deg,#8da3f0,#9a77c7)}.employee-avatar{width:94px;height:94px;display:grid;place-items:center;margin:-47px auto 0;border:5px solid #fff;border-radius:50%;color:#fff;font-size:1.8rem;font-weight:800;background:linear-gradient(135deg,#2f63ff,#18b7a4);box-shadow:0 8px 18px rgba(24,33,47,.14)}.employee-card-body{display:grid;gap:14px;padding:18px 24px 24px;text-align:center}.employee-card-body h3{margin:0;color:#4a4f5a;font-size:1.25rem;font-weight:800}.employee-card-body p{margin:-8px 0 0;color:#657083;font-size:.85rem;letter-spacing:.04em;text-transform:uppercase}.employee-email{display:inline-flex;justify-content:center;align-items:center;gap:10px;min-width:0;color:#3f4754;text-decoration:none}.employee-email span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.employee-card-stats{display:grid;grid-template-columns:1fr 1fr;gap:0;padding:14px 0;border-radius:8px;background:#f7f9fc}.employee-card-stats div{display:grid;gap:3px}.employee-card-stats div+div{border-left:1px solid #dfe5ef}.employee-card-stats strong{color:#4a4f5a;font-size:1.3rem;line-height:1}.employee-card-stats span{color:#586a88;font-size:.75rem;text-transform:uppercase}.employee-card-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}.employee-card-actions .btn{min-height:42px;display:inline-flex;justify-content:center;align-items:center;font-weight:700}.team-profile-card{min-height:0}.team-profile-card .employee-card-actions{grid-template-columns:1fr}.team-card-actions{position:absolute;top:12px;right:12px;display:flex;gap:6px}.team-card-actions button{width:32px;height:32px;display:inline-grid;place-items:center;border:0;border-radius:50%;color:#2f63ff;background:rgba(255,255,255,.9)}.team-card-actions button.danger{color:#ff4d1f}.chat-shell{min-height:calc(100vh - 160px);display:grid;grid-template-columns:minmax(260px,340px) minmax(0,1fr);overflow:hidden;border:1px solid #dfe5ef;border-radius:10px;background:#fff;box-shadow:0 8px 18px rgba(24,33,47,.07)}.chat-contacts{min-width:0;border-right:1px solid #e4e8f0;background:#f8fafc}.chat-panel-head,.chat-thread-head{min-height:76px;display:flex;justify-content:space-between;align-items:center;gap:14px;padding:16px 18px;border-bottom:1px solid #e4e8f0;background:#fff}.chat-panel-head h2,.chat-thread-head h2{margin:0;color:#263041;font-size:1.05rem;font-weight:800}.chat-panel-head button{width:36px;height:36px;display:inline-grid;place-items:center;border:0;border-radius:50%;color:#315bdc;background:#eef3ff}.chat-search{display:flex;align-items:center;gap:10px;min-height:42px;margin:0 16px 12px;padding:0 12px;border:1px solid #e1e6ef;border-radius:8px;color:#647086;background:#fff}.chat-search input{min-width:0;width:100%;border:0;outline:0;color:#1d2738;background:transparent}.chat-search button{width:26px;height:26px;display:inline-grid;place-items:center;border:0;border-radius:50%;color:#647086;background:#f2f5fa}.chat-thread-tools{display:flex;align-items:center;gap:10px}.chat-search.thread-search{width:min(32vw,340px);margin:0;background:#f8fafc}.chat-contact-list{max-height:calc(100vh - 236px);overflow:auto;padding:10px}.chat-contact{width:100%;display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px;border:0;border-radius:8px;color:#273244;text-align:left;background:transparent}.chat-contact.active,.chat-contact:hover{background:#eef3ff}.chat-avatar{width:44px;height:44px;display:inline-grid;place-items:center;flex:0 0 auto;border-radius:50%;color:#fff;font-weight:800;background:linear-gradient(135deg,#2f63ff,#18b7a4)}.chat-avatar.large{width:52px;height:52px}.chat-contact-main,.chat-contact-side{min-width:0;display:grid;gap:3px}.chat-contact-main strong,.chat-contact-main small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-contact-main small,.chat-contact-side small,.chat-thread-head small{color:#667085}.chat-contact-side{justify-items:end}.chat-unread{min-width:20px;height:20px;display:inline-grid;place-items:center;padding:0 6px;border-radius:999px;color:#fff;font-size:.75rem;font-weight:800;background:#e63946}.chat-thread{min-width:0;background:#f3f6fb}.chat-thread-inner{min-height:calc(100vh - 160px);display:grid;grid-template-rows:auto minmax(0,1fr) auto}.chat-title{min-width:0;display:flex;align-items:center;gap:12px}.chat-title>div{min-width:0}.chat-message-list{max-height:calc(100vh - 340px);min-height:420px;overflow:auto;display:flex;flex-direction:column;gap:12px;padding:20px}.project-chat-box{overflow:hidden;border:1px solid #dfe5ef;border-radius:10px;background:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.8)}.project-chat-list{max-height:58vh;min-height:420px;overflow:auto;display:flex;flex-direction:column;gap:12px;padding:20px;background:linear-gradient(180deg,rgba(247,250,252,.92),rgba(241,246,251,.96)),#f8fafc}.project-chat-sender{display:block;margin-bottom:3px;color:#315bdc;font-size:.76rem;font-weight:800}.chat-message.mine .project-chat-sender{color:#1d4ed8}.project-chat-box .chat-bubble{border:1px solid #e4eaf3;color:#243041;background:#fff;box-shadow:0 8px 18px rgba(31,41,55,.06)}.project-chat-box .chat-message.mine .chat-bubble{border-color:#c7dcff;color:#183153;background:#eaf3ff;box-shadow:0 8px 18px rgba(49,91,220,.08)}.project-chat-box .chat-bubble small{color:#667085;opacity:1}.project-chat-box .chat-message.mine .chat-bubble small{color:#55708f}.project-chat-box .chat-attachment{border-color:#dfe7f2;background:#f8fafc}.project-chat-box .chat-message.mine .chat-attachment{border-color:#c5d9fb;background:#f7fbff}.chat-message{display:flex;justify-content:flex-start}.chat-message.mine{justify-content:flex-end}.chat-bubble{max-width:min(620px,78%);display:grid;gap:8px;padding:12px 14px;border-radius:12px 12px 12px 4px;color:#253044;background:#fff;box-shadow:0 6px 14px rgba(24,33,47,.06)}.chat-message.mine .chat-bubble{border-radius:12px 12px 4px 12px;color:#fff;background:#315bdc}.chat-bubble p{margin:0;white-space:pre-wrap}.chat-bubble small{opacity:.72;font-size:.75rem}.chat-attachments{display:grid;gap:8px}.chat-attachment{min-width:180px;max-width:300px;display:grid;grid-template-columns:46px minmax(0,1fr);gap:8px;align-items:center;padding:8px;border:1px solid rgba(103,112,133,.18);border-radius:8px;color:inherit;text-align:left;background:rgba(255,255,255,.72)}.chat-message.mine .chat-attachment{background:rgba(255,255,255,.14)}.chat-attachment img,.chat-attachment>span{width:46px;height:46px;display:grid;place-items:center;border-radius:6px;object-fit:cover;background:#eef3ff}.chat-attachment strong,.chat-attachment small{grid-column:2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-compose{padding:14px 16px;border-top:1px solid #e4e8f0;background:#fff}.chat-compose-files{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.chat-compose-files>span{display:inline-flex;align-items:center;gap:8px;max-width:260px;padding:7px 10px;border-radius:999px;background:#eef3ff}.chat-compose-files>span>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-compose-files button,.chat-compose-button{border:0;color:#315bdc;background:transparent}.chat-compose-row{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:10px;align-items:end}.chat-compose-button{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:#eef3ff}.chat-compose textarea{min-height:44px;max-height:120px;resize:vertical}.chat-empty-state{min-height:calc(100vh - 160px);display:grid;place-items:center;align-content:center;gap:10px;color:#667085;text-align:center}.chat-empty-state i{color:#315bdc;font-size:3rem}.media-viewer-backdrop{position:fixed;inset:0;z-index:1300;display:grid;place-items:center;padding:24px;background:rgba(15,23,42,.78)}.media-viewer{width:min(1120px,96vw);height:min(760px,92vh);display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden;border-radius:10px;background:#0f172a;box-shadow:0 22px 70px rgba(0,0,0,.35)}.media-viewer-head{min-height:62px;display:flex;justify-content:space-between;align-items:center;gap:14px;padding:12px 16px;color:#fff;background:rgba(15,23,42,.96)}.media-viewer-head>div:first-child{min-width:0;display:grid;gap:2px}.media-viewer-head strong,.media-viewer-head small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.media-viewer-head small{color:#cbd5e1}.media-viewer-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}.media-viewer-actions button{min-width:38px;height:38px;display:inline-grid;place-items:center;border:0;border-radius:8px;color:#fff;background:rgba(255,255,255,.12)}.media-viewer-actions button:hover{background:rgba(255,255,255,.2)}.media-viewer-body{overflow:auto;display:grid;place-items:center;padding:24px}.media-viewer-body img{max-width:100%;max-height:100%;transform-origin:center center;transition:transform .16s ease;object-fit:contain}.storage-option{min-height:180px;display:grid;grid-template-columns:auto 1fr;gap:10px 14px;align-content:start;padding:18px;border:1px solid #dfe5ef;border-radius:8px;cursor:pointer;background:#fff}.storage-option.active{border-color:#315bdc;background:#f4f7ff;box-shadow:0 8px 18px rgba(49,91,220,.12)}.storage-option>span{width:44px;height:44px;grid-row:span 2;display:inline-grid;place-items:center;border-radius:8px;color:#315bdc;background:#eef3ff}.storage-option strong,.storage-option small{min-width:0}.storage-option small{color:#667085;line-height:1.5}.client-responsible-list{display:flex;flex-wrap:wrap;gap:6px}.client-responsible-list span{display:inline-flex;align-items:center;padding:5px 8px;border-radius:999px;color:#315bdc;font-size:.78rem;font-weight:700;background:#eef3ff}.responsible-picker{max-height:260px;overflow:auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px;padding:10px;border:1px solid #dfe5ef;border-radius:8px;background:#f8fafc}.responsible-picker label{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:start;padding:10px;border:1px solid #edf0f5;border-radius:8px;cursor:pointer;background:#fff}.responsible-picker label.active{border-color:#315bdc;background:#f4f7ff}.responsible-picker span{min-width:0;display:grid;gap:2px}.responsible-picker small{overflow:hidden;color:#667085;text-overflow:ellipsis;white-space:nowrap}.client-contact-editor{display:grid;gap:10px}.client-contact-row{display:grid;grid-template-columns:minmax(150px,1.1fr) minmax(130px,.9fr) minmax(130px,.8fr) minmax(180px,1.1fr) auto;gap:10px;align-items:center}@media (max-width:992px){.client-contact-row{grid-template-columns:1fr}}@media (max-width:992px){.chat-shell{grid-template-columns:1fr}.chat-contacts{border-right:0;border-bottom:1px solid #e4e8f0}.chat-contact-list{max-height:320px}.chat-thread-head{flex-wrap:wrap}.chat-thread-tools{width:100%}.chat-search.thread-search{flex:1;width:auto}.chat-message-list{min-height:360px;max-height:none}}.status-pill{display:inline-flex;min-width:98px;max-width:126px;justify-content:center;align-items:center;padding:7px 14px;border-radius:7px;font-weight:700;line-height:1.1;text-align:center;white-space:normal;overflow-wrap:anywhere}.status-pill.active,.status-pill.done{color:#008651;background:#dff1ea}.status-pill.todo{color:#667085;background:#eef2f7}.status-pill.progress{color:#6a45c8;background:#efe8ff}.status-pill.bug{color:#0b69d1;background:#e6f0ff}.status-pill.review{color:#b45309;background:#fff3d8}.status-pill.blocked{color:#ff1744;background:#ffd9e3}.status-pill.neutral{color:#344054;background:#f2f4f7}.project-board-toolbar{display:grid;grid-template-columns:minmax(220px,340px) 1fr;align-items:center;gap:18px;margin-bottom:16px}.project-board-toolbar .listing-actions{justify-content:flex-end}.project-board{display:grid;grid-template-columns:repeat(4,minmax(260px,1fr));gap:18px;overflow-x:auto;padding-bottom:4px}.project-column{min-width:260px;padding:12px;background:#f4f5f7}.project-column-head{min-height:58px;display:flex;align-items:center;gap:14px;padding:12px 16px;margin-bottom:14px;background:#fff}.project-column-head h2{margin:0;color:#525a68;font-size:1rem;font-weight:800}.project-column-head span{display:inline-flex;align-items:center;min-height:24px;padding:3px 12px;border-radius:999px;color:#fff;background:#6290f5;font-size:.75rem;font-weight:800;white-space:nowrap}.project-column-list{max-height:560px;overflow-y:auto;padding-right:4px}.project-card{min-height:170px;display:flex;flex-direction:column;gap:12px;padding:18px;margin-bottom:14px;border:1px solid #d3d7df;border-radius:8px;background:#fff;color:#1f385d;cursor:pointer}.project-card.selected{border-color:#5d7cff;box-shadow:inset 0 0 0 1px #5d7cff}.project-card-title{display:flex;align-items:center;gap:14px;color:#4d5a70;font-size:.98rem}.project-card-title i{color:#55759c;font-size:1.05rem}.project-card-meta{color:#74839a;font-size:.82rem}.project-progress-summary{display:grid;gap:10px;padding:14px;border:1px solid #e1e7f0;border-radius:8px;background:#f8fbff}.project-progress-summary>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:12px}.project-progress-summary span,.project-progress-summary small{color:#667085;font-weight:700}.project-progress-summary strong{color:#1f2937;font-size:1.25rem}.project-progress-summary .progress-bar{background:#315bdc}.project-card-desc{min-height:104px;display:grid;grid-template-columns:1fr auto;gap:12px;color:#1f385d;line-height:1.45}.project-tag{align-self:start;min-width:82px;padding:8px 12px;border-radius:6px;text-align:center;font-weight:700;font-size:.78rem}.project-tag.tag-blue{color:#235ad1;background:#e9efff}.project-tag.tag-green{color:#008651;background:#ddf4e8}.project-tag.tag-purple{color:#4935b7;background:#f0ecff}.project-tag.tag-orange{color:#f06b18;background:#ffe8d8}.project-card-detail{display:grid;gap:12px;margin:0;color:#51617c}.project-card-detail div{display:grid;grid-template-columns:112px 1fr;gap:12px}.project-card-detail dt{font-weight:800}.project-card-detail dd{display:inline-flex;align-items:center;gap:8px;margin:0;min-width:0;font-weight:700}.project-card-detail .priority-low{color:#008651}.project-card-detail .priority-high{color:#f04b20}.project-card-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:auto}.project-team{display:flex;align-items:center;min-height:34px;padding-left:4px}.project-avatar{width:30px;height:30px;display:inline-grid;place-items:center;margin-left:-6px;border:2px solid #fff;border-radius:999px;color:#fff;background:#6f8df5;font-weight:800;font-size:.74rem}.project-avatar:nth-child(1){background:#f08a3c}.project-avatar:nth-child(2){background:#7bb7a2}.project-avatar:nth-child(3){background:#536d9f}.project-actions{display:flex;gap:8px}.project-actions button{width:30px;height:30px;border:0;border-radius:999px;color:#315bdc;background:#eef2ff}.project-empty{padding:32px 12px;color:#74839a;text-align:center}.project-add-fab{position:fixed;right:48px;bottom:32px;z-index:18;display:inline-flex;align-items:center;gap:12px;min-width:116px;height:52px;padding:0 22px;border:0;border-radius:999px;color:#fff;background:#0668c8;box-shadow:0 14px 28px rgba(6,104,200,.25);font-weight:800}.project-detail-hero{position:relative;overflow:hidden;min-height:168px;display:grid;grid-template-columns:minmax(0,1fr) 220px auto;align-items:center;gap:28px;padding:30px 36px;border-radius:10px;color:#fff;background:#4e63f1}.project-detail-hero::after{content:"";position:absolute;top:-80px;right:-60px;width:280px;height:280px;border-radius:999px;background:rgba(255,255,255,.06)}.project-detail-hero h2{margin:14px 0 12px;font-size:1.65rem;font-weight:800}.project-detail-status{display:inline-flex;padding:7px 18px;border-radius:999px;color:#dceaff;background:rgba(15,143,255,.45);font-size:.72rem;font-weight:800;text-transform:uppercase}.project-detail-meta{display:flex;flex-wrap:wrap;gap:18px;color:rgba(255,255,255,.78);font-weight:700}.project-detail-meta span{display:inline-flex;align-items:center;gap:8px}.project-detail-progress{display:grid;place-items:center}.progress-ring{--value:0;width:132px;height:72px;display:grid;place-items:end center;color:#fff;font-size:1.35rem;font-weight:800;background:conic-gradient(from 270deg at 50% 100%,#00cdb6 calc(var(--value) * 1.8deg),rgba(255,255,255,.25) 0 180deg,transparent 0);border-radius:132px 132px 0 0}.project-detail-actions{position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:12px}.project-detail-actions .btn{border-radius:999px;padding:12px 22px}.project-detail-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;margin:22px 0}.detail-kpi-card{min-height:96px;display:flex;align-items:center;gap:16px;padding:20px;border-radius:10px;background:#fff;box-shadow:0 8px 18px rgba(24,33,47,.07)}.detail-kpi-card small{display:block;color:#7a8190;font-weight:800}.detail-kpi-card strong{display:block;color:#3a4658;font-size:1.35rem;font-weight:800}.detail-kpi-icon{width:54px;height:54px;display:grid;place-items:center;border-radius:10px;font-size:1.15rem}.detail-kpi-icon.blue{color:#1e88ff;background:#e5f3ff}.detail-kpi-icon.green{color:#32a852;background:#e9f8ec}.detail-kpi-icon.amber{color:#f59f00;background:#fff3df}.detail-kpi-icon.red{color:#f04444;background:#ffeded}.project-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:22px;align-items:start}.project-detail-grid.bugs-full-width{grid-template-columns:minmax(0,1fr)}.project-detail-panel,.side-detail-card{border-radius:10px;background:#fff;box-shadow:0 8px 18px rgba(24,33,47,.07)}.project-detail-tabs{display:flex;overflow-x:auto;overflow-y:hidden;border-bottom:1px solid #d8dde8;scrollbar-width:thin}.project-detail-tabs button{flex:0 0 auto;min-width:180px;min-height:56px;padding:0 22px;border:0;border-bottom:3px solid transparent;background:transparent;color:#0f172a;font-weight:800;white-space:nowrap}.project-detail-tabs button.active{border-color:#0b69d1}.project-detail-tabs i{margin-right:10px}.project-chat-tab-badge{position:absolute;top:8px;right:10px;min-width:19px;height:19px;display:inline-grid;place-items:center;padding:0 5px;border-radius:999px;color:#fff;font-size:.68rem;font-weight:800;background:#ef4444;box-shadow:0 4px 10px rgba(239,68,68,.24)}.project-detail-body{padding:24px 28px 34px}.project-detail-body h3,.side-detail-card h3{display:inline-block;margin:0 0 18px;padding-bottom:8px;border-bottom:2px solid #5968df;color:#4b5565;font-size:1rem;font-weight:800}.project-section-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}.section-tab-strip{display:inline-flex;gap:4px;padding:4px;border:1px solid #dfe5ef;border-radius:8px;background:#f8fafc}.section-tab-strip button{min-height:38px;display:inline-flex;align-items:center;gap:8px;padding:0 14px;border:0;border-radius:6px;color:#526075;font-weight:800;background:transparent}.section-tab-strip button.active{color:#0b63ce;background:#fff;box-shadow:0 4px 12px rgba(24,33,47,.08)}.project-section-head h3{margin-bottom:0}.project-detail-body p{color:#445166;line-height:1.55}.milestone-list{display:grid;gap:12px}.milestone-item{min-height:68px;display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:14px;padding:12px 16px;border:1px solid #e4e8f0;border-radius:8px}.milestone-actions{display:inline-flex;align-items:center;gap:10px}.milestone-actions button{width:30px;height:30px;border:0;border-radius:999px;color:#315bdc;background:#eef2ff}.task-tree{display:grid;gap:10px}.task-tree-row{--depth:0;display:grid;grid-template-columns:30px 86px minmax(0,1fr) minmax(112px,132px) auto;align-items:center;gap:12px;min-height:62px;margin-left:calc(var(--depth) * 30px);padding:10px 14px;border:1px solid #e4e8f0;border-radius:8px;background:#fff}.task-tree-row:hover{border-color:#bdc8ea;background:#fbfcff}.task-tree.compact .task-tree-row{min-height:54px}.tree-toggle,.tree-add-child,.task-tree-actions button{width:30px;height:30px;display:inline-grid;place-items:center;border:0;border-radius:999px}.tree-toggle{color:#546179;background:#f2f5fa}.tree-toggle.invisible{visibility:hidden}.tree-add-child{color:#315bdc;background:#eef2ff}.task-tree-actions{display:inline-flex;align-items:center;gap:8px;justify-self:end}.task-tree-actions button{color:#315bdc;background:#eef2ff}.task-tree-actions button.danger{color:#ff4d1f;background:#fff0eb}.task-context-menu{position:fixed;z-index:2100;min-width:190px;padding:6px;border:1px solid #dbe4f0;border-radius:8px;background:#fff;box-shadow:0 16px 42px rgba(15,23,42,.18)}.task-context-menu button{width:100%;display:flex;align-items:center;gap:10px;border:0;border-radius:6px;padding:9px 10px;color:#344054;background:transparent;font-weight:700;text-align:left}.task-context-menu button:hover{color:#315bdc;background:#eef4ff}.task-context-menu button.danger{color:#e03131}.task-context-menu button.danger:hover{background:#fff1f1}.task-member-actions{display:inline-flex;align-items:center;justify-self:end;gap:8px}.task-member-actions .task-progress-stepper{width:70px;height:30px;padding:0 6px;border:1px solid #d8e0ed;border-radius:999px;color:#344054;background:#fff;text-align:center}.task-member-actions button{height:30px;border:0;border-radius:999px;padding:0 12px;color:#315bdc;background:#eef2ff;font-weight:800}.task-member-actions button.done{color:#008651;background:#dff1ea}.modal-task-actions{margin-left:auto}.modal-task-status{min-width:92px;color:#667085;font-size:.85rem;font-weight:800;text-align:right}.assigned-task-control{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid #dbe4f0;border-radius:10px;background:#f8fbff}.assigned-task-control strong,.assigned-task-control span{display:block}.assigned-task-control span{color:#667085;font-size:.85rem}.tree-add-child:disabled{color:#a5adba;background:#f2f4f7}.task-type-badge{justify-self:start;min-width:72px;padding:6px 10px;border-radius:999px;text-align:center;color:#334155;background:#eef2f7;font-size:.72rem;font-weight:800}.task-type-badge.type-epic{color:#5b35b1;background:#eee8ff}.task-type-badge.type-story{color:#0f766e;background:#dcf7f1}.task-type-badge.type-bug{color:#be123c;background:#ffe4ec}.task-type-badge.type-task{color:#1d4ed8;background:#e3edff}.task-type-badge.type-sub_task{color:#b45309;background:#fff1d6}.task-tree-main{min-width:0}.task-tree-main>strong,.task-tree-main>span{display:block}.task-tree-main>strong{overflow:hidden;color:#334155;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.task-tree-main>span{color:#7b8494;font-size:.78rem}.task-tree-progress{width:min(260px,100%);height:5px;margin-top:6px;overflow:hidden;border-radius:999px;background:#e7ebf3}.task-tree-progress span{display:block;height:100%;border-radius:inherit;background:#0b69d1}.bug-board{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(240px,1fr);gap:14px;overflow-x:auto;padding-bottom:6px}.bug-column{min-width:220px;border:1px solid #e1e6ef;border-radius:8px;background:#f7f9fc}.bug-column-head{min-height:48px;display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid #e1e6ef}.bug-column-head strong{color:#344154;font-size:.92rem}.bug-column-head span{min-width:28px;padding:3px 8px;border-radius:999px;color:#315bdc;background:#e9efff;text-align:center;font-size:.78rem;font-weight:800}.bug-card-list{display:grid;gap:10px;padding:12px}.bug-card{display:grid;gap:10px;padding:12px;border:1px solid #e3e8f0;border-radius:8px;background:#fff;box-shadow:0 6px 14px rgba(24,33,47,.06);cursor:pointer}.bug-card[draggable="true"]{cursor:grab}.bug-card[draggable="true"]:active{cursor:grabbing}.bug-card:hover{border-color:#c7d2fe}.bug-card-top,.bug-card-footer{display:flex;align-items:center;justify-content:space-between;gap:8px}.bug-card>strong{color:#1f2937;line-height:1.25}.bug-card.compact{gap:8px;padding:10px 12px}.bug-card.compact .bug-card-top{align-items:flex-start}.bug-card.compact>strong{font-size:.92rem}.bug-card.compact .bug-card-meta{gap:4px}.bug-card.compact .bug-card-footer{display:none}.bug-member-actions{flex-wrap:wrap;justify-content:flex-end;margin-left:auto}.bug-card-desc{max-height:150px;overflow:hidden;color:#586476;font-size:.82rem}.bug-card-desc img{max-width:100%;height:auto;display:block;margin-top:8px;border-radius:6px;border:1px solid #e2e8f0}.bug-card-meta{display:grid;gap:5px;color:#667085;font-size:.78rem}.bug-card-meta span{min-width:0;display:inline-flex;align-items:center;gap:6px}.bug-comments-panel{display:grid;gap:12px;padding:14px;border:1px solid #dbe3ef;border-radius:10px;background:#f8fafc}.bug-comments-head,.bug-comment-form{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.bug-comments-head span{color:#667085;font-size:.86rem}.bug-comments-list{display:grid;gap:10px;max-height:240px;overflow:auto;padding-right:4px}.bug-comment{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;padding:10px;border:1px solid #e5e9f2;border-radius:8px;background:#fff}.bug-comment-avatar{width:34px;height:34px;display:inline-grid;place-items:center;border-radius:50%;color:#315bdc;background:#e8efff}.bug-comment-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:4px}.bug-comment-delete{width:28px;height:28px;display:inline-grid;place-items:center;margin-left:auto;border:0;border-radius:6px;color:#ef4444;background:transparent}.bug-comment-delete:hover{background:#fee2e2}.bug-comment-meta small,.bug-comment p{color:#667085}.bug-comment p{margin:0;white-space:pre-wrap}.bug-comment-form textarea{resize:vertical}.bug-comment-form .icon-only-button{width:42px;height:42px;flex:0 0 42px;display:inline-grid;place-items:center;padding:0}.priority-chip{padding:5px 9px;border-radius:999px;background:#eef2f7;color:#475569;font-size:.72rem;font-weight:800}.priority-chip.priority-high,.priority-chip.priority-critical{color:#be123c;background:#ffe4ec}.priority-chip.priority-medium{color:#b45309;background:#fff1d6}.priority-chip.priority-low{color:#0f766e;background:#dcf7f1}.settings-card{border-radius:10px;transition:transform .18s ease,box-shadow .18s ease}.settings-card:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(24,33,47,.09)}.settings-icon{width:48px;height:48px;display:inline-grid;place-items:center;border-radius:10px;font-size:1.1rem}.settings-icon.blue{color:#1e40af;background:#dbeafe}.settings-icon.green{color:#047857;background:#d1fae5}.settings-icon.purple{color:#6d28d9;background:#ede9fe}.settings-icon.red{color:#be123c;background:#ffe4ec}.settings-icon.amber{color:#b45309;background:#fff1d6}.settings-icon.slate{color:#334155;background:#e2e8f0}.permission-matrix{border:1px solid #e3e8f1;border-radius:10px;max-height:640px}.settings-detail-modal{width:min(1120px,calc(100vw - 48px))}.settings-language-filter{width:120px;height:35px;border-radius:6px;font-size:.9rem}.translation-text-cell{max-width:520px;white-space:normal;overflow-wrap:anywhere}.translation-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:8px;white-space:nowrap}.translation-actions .btn{width:40px;height:38px;display:inline-grid;place-items:center;padding:0}.logo-cropper{width:180px;height:180px;padding:10px;border:1px solid #d8e1ef;border-radius:10px;background:linear-gradient(45deg,#eef2f7 25%,transparent 25%),linear-gradient(-45deg,#eef2f7 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#eef2f7 75%),linear-gradient(-45deg,transparent 75%,#eef2f7 75%);background-color:#fff;background-position:0 0,0 8px,8px -8px,-8px 0;background-size:16px 16px}.logo-crop-stage{width:160px;height:160px;border-radius:12px;border:2px solid #315bdc;background-color:#fff;background-repeat:no-repeat;cursor:grab;box-shadow:0 0 0 999px rgba(255,255,255,.28) inset}.logo-crop-stage:active{cursor:grabbing}.permission-matrix table{min-width:980px}.permission-matrix thead th{position:sticky;top:0;z-index:2;background:#f7f9fc}.permission-matrix .permission-name{min-width:320px}.permission-group-row td{color:#315bdc;background:#eef3ff;font-weight:800}.permission-checkbox{width:1.1rem;height:1.1rem;cursor:pointer}.permission-checkbox:disabled{cursor:not-allowed}.rte-shell{position:relative;overflow:hidden;border:1px solid #d7deea;border-radius:8px;background:#fff}.rte-toolbar{display:flex;gap:6px;padding:8px;border-bottom:1px solid #e5e9f1;background:#f7f9fc}.rte-toolbar button{width:32px;height:32px;display:inline-grid;place-items:center;border:1px solid #dbe2ee;border-radius:6px;color:#334155;background:#fff}.rte-toolbar button:hover{color:#315bdc;border-color:#bdc8ea}.rte-toolbar button:disabled{opacity:.45;cursor:not-allowed}.rte-toolbar-separator{width:1px;height:28px;align-self:center;background:#dbe2ee}.rte-editor{min-height:180px;max-height:360px;overflow:auto;padding:12px;outline:none;color:#1f2937;line-height:1.5}.rte-editor:empty::before{content:attr(data-placeholder);color:#98a2b3}.rte-editor img{max-width:100%;height:auto;display:block;margin:10px 0;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer}.rte-editor img.selected{outline:3px solid rgba(49,91,220,.35);outline-offset:3px}.rte-image-resizer{position:absolute;z-index:3;width:15px;height:15px;border:2px solid #fff;border-radius:4px;background:#315bdc;box-shadow:0 3px 8px rgba(24,33,47,.24);cursor:nwse-resize}.milestone-item strong,.milestone-item span{display:block}.milestone-dot{width:22px;height:22px;display:grid;place-items:center;border:2px solid #9aa3b2;border-radius:999px;color:#9aa3b2;font-size:.72rem}.milestone-dot.done{border-color:#48b861;color:#fff;background:#48b861}.milestone-dot.progressing{border-color:#2695ff;color:#2695ff}.project-side-panels{display:grid;gap:18px}.side-detail-card{padding:22px}.client-box,.date-box,.file-row{display:flex;align-items:center;gap:14px;padding:14px;border-radius:8px;background:#f7f9fc}.client-create-panel{padding:14px;border:1px solid #dbe4f0;border-radius:8px;background:#f8fbff}.client-box span{width:46px;height:46px;display:grid;place-items:center;border-radius:6px;color:#fff;background:#5662d9}.client-box strong,.file-row strong{display:block;color:#4b5565}.client-box small,.file-row small,.date-box small{display:block;color:#8a94a6}.date-box{justify-content:space-between}.tag-list{display:flex;flex-wrap:wrap;gap:10px}.tag-list span{padding:7px 13px;border:1px solid #7890b4;border-radius:5px;color:#526889;font-weight:700;font-size:.78rem}.file-row{justify-content:space-between;background:#fff;border-bottom:1px solid #e5eaf1;border-radius:0}.file-row-button{width:100%;border:0;text-align:left}.file-row-button:hover{background:#f5f8ff}.task-attachment-panel{display:grid;gap:10px;padding:12px;border:1px solid #dbe4f0;border-radius:8px;background:#fbfdff}.task-attachment-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.task-attachment-head small{display:block;color:#667085}.task-attachment-list{display:grid;gap:6px}.attachment-action{width:34px;height:34px;display:inline-grid;place-items:center;border:0;border-radius:8px;color:#315bdc;background:#eef4ff}.attachment-action.danger{color:#ff4d1f;background:#fff0eb}.status-pill.inactive{color:#667085;background:#eef2f7}.row-action{border:0;background:transparent;font-size:1.2rem;line-height:1}.row-action.edit{color:#6574ff}.row-action.delete{color:#ff4b16}.app-modal-backdrop{position:fixed;inset:0;z-index:60;display:flex;align-items:flex-start;justify-content:center;padding:86px 18px 24px;overflow-y:auto;background:rgba(15,23,42,.42)}.app-modal-backdrop.modal-fullscreen-backdrop{padding:8px}.app-modal{width:min(720px,100%);max-height:calc(100vh - 110px);display:flex;flex-direction:column;overflow:hidden;border-radius:var(--bs-modal-border-radius)}.app-modal.task-bug-modal{width:min(1180px,calc(100vw - 36px))}.app-modal.payment-apply-modal{width:min(640px,calc(100vw - 36px))}.app-modal.subscription-modal{width:min(760px,calc(100vw - 36px))}.app-modal.app-modal-fullscreen{width:100%;max-width:none;height:100%;max-height:100%;border-radius:8px}.app-modal.app-modal-fullscreen.confirm-modal{width:min(720px,calc(100vw - 32px));height:auto;max-height:calc(100vh - 16px)}.app-modal.task-bug-modal .rte-editor{min-height:320px;max-height:52vh}.app-modal.app-modal-fullscreen .rte-editor{max-height:none}.app-modal-header,.app-modal-footer{flex:0 0 auto;gap:16px;background:#fff}.app-modal-header{display:flex;align-items:flex-start;justify-content:space-between}.app-modal-header>div:first-child{min-width:0}.app-modal-header h5{font-size:1.08rem;font-weight:700}.app-modal-tools{display:inline-flex;align-items:center;gap:8px;margin-left:auto}.modal-icon-button{width:36px;height:36px;display:inline-grid;place-items:center;border:0;border-radius:8px;color:#344054;background:#f2f4f7}.modal-icon-button:hover{color:#315bdc;background:#e8efff}.app-modal-body{flex:1 1 auto;min-height:0;overflow-y:auto}.app-modal-footer{border-top:1px solid var(--app-border)}.payment-package-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:14px}.payment-package-summary>div{min-width:0;padding:12px;border:1px solid #e2e8f0;border-radius:8px;background:#f8fafc}.payment-package-summary span,.payment-package-summary strong{display:block}.payment-package-summary strong{overflow:hidden;color:#0f172a;font-size:.96rem;text-overflow:ellipsis;white-space:nowrap}.tenant-search{border:1px solid #dfe5ef;background:#fff}.tenant-card{display:flex;flex-direction:column;gap:16px;padding:18px;border:1px solid #e1e7f0;border-top:5px solid #4f6df5;border-radius:8px;background:#fff;box-shadow:0 12px 30px rgba(15,23,42,.06)}.tenant-card.warning{border-top-color:#f59e0b}.tenant-card.expired{border-top-color:#dc3545}.tenant-card-top,.tenant-modal-summary,.tenant-modal-summary>div{display:flex;align-items:center;gap:12px}.tenant-card-top{justify-content:space-between}.tenant-avatar{width:48px;height:48px;display:inline-grid;flex:0 0 auto;place-items:center;border-radius:14px;color:#fff;font-weight:800;background:linear-gradient(135deg,#5867dd,#21b8a6)}.tenant-avatar.small{width:40px;height:40px;border-radius:12px;font-size:.88rem}.tenant-card-body{display:grid;gap:12px}.tenant-card-body h3{margin:0;overflow:hidden;color:#25324b;font-size:1.05rem;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.tenant-card-body p{min-height:20px;margin:-6px 0 0;overflow:hidden;color:#64748b;font-size:.88rem;text-overflow:ellipsis;white-space:nowrap}.tenant-plan,.tenant-expiry{display:flex;justify-content:space-between;gap:12px;padding:11px 12px;border-radius:8px;background:#f8fafc}.tenant-plan span,.tenant-expiry small{color:#64748b}.tenant-plan strong,.tenant-expiry span{color:#0f172a;font-weight:800;text-align:right}.tenant-expiry span.warning{color:#b45309}.tenant-expiry span.expired,.tenant-modal-summary strong.expired{color:#dc3545}.tenant-modal-summary strong.warning{color:#b45309}.tenant-expiry span.healthy,.tenant-modal-summary strong.healthy{color:#087f5b}.tenant-modal-summary{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(2,minmax(0,.8fr));padding:14px;border:1px solid #e2e8f0;border-radius:8px;background:#f8fafc}.tenant-modal-summary>div{min-width:0;align-items:flex-start;flex-direction:column;gap:2px}.tenant-modal-summary>div:first-child{flex-direction:row;align-items:center;gap:10px}.tenant-modal-summary strong,.tenant-modal-summary small{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.payment-modal-footer{align-items:center;justify-content:space-between}.modal-submit-message{flex:1 1 220px;min-width:0}.billing-result-shell{min-height:calc(100vh - 180px);display:grid;place-items:center;padding:24px 0}.billing-result-card{width:min(720px,100%);padding:32px;text-align:center}.billing-result-icon{width:76px;height:76px;display:inline-grid;place-items:center;margin-bottom:18px;border-radius:50%;font-size:2rem}.billing-result-icon.success{color:#047857;background:#d1fae5}.billing-result-icon.warning{color:#b45309;background:#fef3c7}.billing-result-icon.danger{color:#be123c;background:#ffe4e6}.expired-lock-icon{width:48px;height:48px;display:inline-grid;flex:0 0 auto;place-items:center;border-radius:14px;color:#be123c;background:#ffe4e6}.subscription-expired-modal{width:min(620px,calc(100vw - 36px))}.billing-result-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;text-align:left}.billing-result-summary>div{min-width:0;padding:12px;border:1px solid #e2e8f0;border-radius:8px;background:#f8fafc}.billing-result-summary span,.billing-result-summary strong{display:block}.billing-result-summary span{color:var(--app-muted);font-size:.78rem}.billing-result-summary strong{overflow:hidden;color:#0f172a;text-overflow:ellipsis;white-space:nowrap}.app-modal-close i{display:none}.app-modal.confirm-modal{max-width:460px}.app-modal-header.danger{background:#fff1f1}.confirm-content{display:flex;align-items:flex-start;gap:16px}.confirm-icon{width:46px;height:46px;display:inline-grid;flex:0 0 auto;place-items:center;border-radius:10px;color:#dc3545;background:#ffe1e5;font-size:1.1rem}@media (max-width:991.98px){.listing-toolbar{align-items:stretch;flex-direction:column}.listing-search{width:100%;flex-basis:auto}.listing-actions{margin-left:0;justify-content:flex-start}.listing-pagination{align-items:flex-start;flex-direction:column}.project-board-toolbar{grid-template-columns:1fr}.project-board{grid-template-columns:repeat(4,minmax(240px,1fr))}.project-card{min-height:420px}.project-detail-hero,.project-detail-grid,.project-detail-kpis{grid-template-columns:1fr}.project-detail-actions{justify-content:flex-start}}.chat-float{position:fixed;right:22px;bottom:22px;width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;color:#fff;background:#7367f0;box-shadow:0 10px 24px rgba(115,103,240,.25);text-decoration:none}.notif-dot{position:absolute;top:-6px;right:-6px;min-width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;color:#fff;background:#dc2626;font-size:.7rem}@media (max-width:1199.98px){.skeleton-layout{flex-direction:column;padding-top:76px}.skeleton-sidebar{width:100%;min-height:140px;display:grid;grid-template-columns:90px repeat(3,minmax(0,1fr));gap:12px;align-items:center}.skeleton-avatar,.skeleton-line.short,.skeleton-line.tiny,.skeleton-menu{margin:0}.skeleton-line.short,.skeleton-line.tiny{display:none}.skeleton-menu{height:38px}.skeleton-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.skeleton-content-grid{grid-template-columns:1fr}.workspace{grid-template-columns:1fr;padding-top:64px}.profile-page-grid{grid-template-columns:1fr}.profile-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.member-kpi-grid,.member-grid-three{grid-template-columns:repeat(2,minmax(0,1fr))}.member-grid-top,.member-grid-mid{grid-template-columns:1fr}.workspace-sidebar{min-height:auto;margin-top:0}.workspace-main{padding-top:0}.workspace-topbar{grid-template-columns:140px 1fr auto}}@media (max-width:767.98px){.skeleton-topbar{height:auto;grid-template-columns:1fr;padding:12px}.skeleton-layout{padding:12px}.skeleton-sidebar{grid-template-columns:56px 1fr;min-height:auto;padding:14px}.skeleton-avatar{width:48px;height:48px;border-radius:14px}.skeleton-sidebar .skeleton-menu:nth-of-type(n+3){display:none}.skeleton-kpis{grid-template-columns:1fr}.skeleton-content-grid>section{height:220px}.app-modal-backdrop{padding:14px 10px}.member-kpi-grid,.member-grid-three{grid-template-columns:1fr}.member-chart-lg,.member-chart-wide{height:260px}.app-modal{max-height:calc(100vh - 28px)}.app-modal.app-modal-fullscreen{width:100%;height:100%;max-height:100%}.app-modal.task-bug-modal{width:min(100%,calc(100vw - 20px))}.app-modal.payment-apply-modal{width:min(100%,calc(100vw - 20px))}.payment-package-summary{grid-template-columns:1fr}.tenant-modal-summary{grid-template-columns:1fr}.tenant-plan,.tenant-expiry{align-items:flex-start;flex-direction:column}.tenant-plan strong,.tenant-expiry span{text-align:left}.payment-modal-footer{align-items:stretch;flex-direction:column}.payment-modal-footer .d-flex{width:100%}.payment-modal-footer .btn{flex:1 1 0}.billing-result-card{padding:22px}.billing-result-summary{grid-template-columns:1fr}.workspace-topbar{position:static;height:auto;grid-template-columns:1fr;padding:12px}.workspace{padding:12px}.profile-cover{min-height:150px}.profile-identity-body,.profile-tab-content{padding-left:18px;padding-right:18px}.profile-info-grid,.profile-tabs{grid-template-columns:1fr}.profile-tabs button{min-height:54px}.profile-action-row{justify-content:stretch}.profile-action-row .btn{width:100%}.search-box{max-width:none}.project-column{min-width:230px}.project-card-desc{grid-template-columns:1fr}.project-add-fab{right:18px;bottom:18px}.project-detail-hero{padding:24px}.milestone-item{grid-template-columns:32px minmax(0,1fr)}.milestone-item .status-pill{grid-column:2;justify-self:start}.task-tree-row{grid-template-columns:28px minmax(0,1fr) 34px;margin-left:calc(var(--depth) * 16px)}.task-type-badge,.task-tree-row .status-pill{grid-column:2;justify-self:start}.task-tree-row .status-pill{max-width:100%}.task-tree-actions{grid-column:3;grid-row:1 / span 3}.task-member-actions{grid-column:2;justify-self:start;flex-wrap:wrap}}