:root{--bg:#f6f8fb;--surface:#fff;--surface-2:#f1f5f9;--text:#172033;--muted:#667085;--line:#e5e9f0;--primary:#3157d5;--primary-dark:#2646b5;--green:#169c62;--red:#d64a4a;--orange:#e58a23;--blue:#3578e5;--shadow:0 12px 35px #16223a12}*{box-sizing:border-box}html,body{background:var(--bg);min-height:100%;color:var(--text);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh}.sidebar{color:#fff;z-index:20;background:#14203a;flex-direction:column;width:255px;padding:22px 18px;display:flex;position:fixed;inset:0 auto 0 0}.brand{align-items:center;gap:11px;padding:0 8px 24px;display:flex}.brand-mark{background:linear-gradient(145deg,#4b6ee8,#3157d5);border-radius:12px;place-items:center;width:40px;height:40px;display:grid;box-shadow:0 8px 22px #3157d559}.brand-mark.large{border-radius:15px;width:50px;height:50px}.brand strong{font-size:15px;display:block}.brand span{color:#98a7c5;margin-top:2px;font-size:12px;display:block}.nav-list{gap:5px;display:grid}.nav-link{color:#c6d0e4;border-radius:10px;align-items:center;gap:10px;padding:12px 13px;font-size:14px;font-weight:600;display:flex}.nav-link:hover{color:#fff;background:#ffffff14}.sidebar-user{border-top:1px solid #ffffff17;align-items:center;gap:10px;margin-top:auto;padding:14px 9px 0;display:flex}.avatar{width:38px;height:38px;color:var(--primary);background:#e8edff;border-radius:50%;flex:0 0 38px;place-items:center;font-weight:800;display:grid}.sidebar-user-text{flex:1;min-width:0}.sidebar-user-text strong{white-space:nowrap;text-overflow:ellipsis;font-size:13px;display:block;overflow:hidden}.sidebar-user-text span{color:#8fa0c1;font-size:11px}.icon-button{color:#98a7c5;background:0 0;border:0;border-radius:8px;padding:6px}.icon-button:hover{color:#fff;background:#ffffff14}.main-content{min-height:100vh;margin-left:255px}.page-wrap{max-width:1350px;margin:0 auto;padding:38px 40px 60px}.narrow-page{max-width:940px}.page-header{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:27px;display:flex}.page-header h1{letter-spacing:-.035em;margin:3px 0 7px;font-size:clamp(29px,3vw,40px);line-height:1.08}.page-header p{color:var(--muted);margin:0;font-size:15px}.eyebrow{color:var(--primary);letter-spacing:.09em;text-transform:uppercase;font-size:11px;font-weight:800}.button{border:0;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:11px 15px;font-size:14px;font-weight:750;transition:all .18s;display:inline-flex}.button:hover{transform:translateY(-1px)}.button-primary{background:var(--primary);color:#fff;box-shadow:0 8px 18px #3157d533}.button-primary:hover{background:var(--primary-dark)}.button-secondary{color:#2e4dc0;background:#e9eeff}.button-ghost{color:var(--muted);border:1px solid var(--line);background:0 0}.button-success{color:#fff;background:#159b61}.button-danger-soft{color:#c84040;background:#fff0ef}.button-large{width:100%;padding:14px 18px}.button-small{padding:7px 10px;font-size:12px}.stats-grid{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px;display:grid}.stat-card{background:var(--surface);border:1px solid var(--line);border-radius:15px;align-items:center;gap:13px;padding:17px;transition:all .18s;display:flex;box-shadow:0 3px 12px #16223a06}.stat-card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.stat-card strong{font-size:25px;line-height:1;display:block}.stat-card span:not(.stat-icon){color:var(--muted);margin-top:5px;font-size:13px;display:block}.stat-icon{border-radius:12px;place-items:center;width:42px;height:42px;display:grid}.red-bg{color:var(--red);background:#fff0f0}.blue-bg{color:var(--blue);background:#edf4ff}.orange-bg{color:var(--orange);background:#fff4e8}.green-bg{color:var(--green);background:#ebfaf2}.task-tabs{background:#e9eef8;border-radius:14px;gap:8px;width:max-content;max-width:100%;margin:4px 0 14px;padding:5px;display:flex}.task-tab{color:#64748b;border-radius:10px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:9px 18px;font-size:14px;font-weight:800;text-decoration:none;transition:all .18s;display:flex}.task-tab:hover{color:var(--primary)}.task-tab.active{background:var(--surface);color:var(--primary);box-shadow:0 3px 12px #0f172a14}.task-tab span{color:#52637f;background:#dce4f5;border-radius:999px;place-items:center;min-width:23px;height:23px;padding:0 6px;font-size:11px;display:grid}.task-tab.active span{color:var(--primary);background:#e8edff}@media (max-width:640px){.task-tabs{width:100%}.task-tab{flex:1;padding:9px 10px}}.filter-panel{background:var(--surface);border:1px solid var(--line);border-radius:14px;margin-bottom:26px;padding:12px}.filter-form{align-items:center;gap:10px;display:flex}.filter-form input,.filter-form select,.field-label input,.field-label select,textarea{color:var(--text);background:#fff;border:1px solid #d9dfe8;border-radius:10px;outline:none;padding:11px 12px}.filter-form input:focus,.filter-form select:focus,.field-label input:focus,.field-label select:focus,textarea:focus{border-color:#8fa5ef;box-shadow:0 0 0 3px #3157d514}.search-input{flex:1;min-width:260px}.section-heading{align-items:center;gap:9px;margin-bottom:12px;display:flex}.section-heading h2{align-items:center;gap:8px;margin:0;font-size:18px;display:flex}.section-heading>span{color:var(--primary);background:#e8edff;border-radius:20px;place-items:center;min-width:25px;height:25px;font-size:12px;font-weight:800;display:grid}.task-list{gap:11px;display:grid}.task-card{background:var(--surface);border:1px solid var(--line);border-radius:15px;padding:18px 20px;transition:all .18s}.task-card:hover{box-shadow:var(--shadow);border-color:#cfd8f7;transform:translateY(-1px)}.task-card-top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.task-badges{flex-wrap:wrap;gap:7px;display:flex}.badge{border-radius:999px;align-items:center;padding:5px 9px;font-size:11px;font-weight:800;line-height:1;display:inline-flex}.status-new{color:#c84242;background:#fff0f0}.status-in_progress{color:#2f6fce;background:#ebf3ff}.status-returned{color:#c47617;background:#fff3e5}.status-done{color:#158452;background:#eaf9f1}.priority-normal{color:#667085;background:#f2f4f7}.priority-urgent{color:#c47617;background:#fff3e5}.priority-critical{color:#c84242;background:#fff0f0}.badge-soft{color:#5f6878;background:#f2f4f7}.task-card h3{letter-spacing:-.01em;margin:13px 0 7px;font-size:17px}.task-card>p{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:14px;line-height:1.55;display:-webkit-box;overflow:hidden}.task-meta{color:#7b8494;flex-wrap:wrap;gap:16px;margin-top:15px;font-size:12px;display:flex}.task-meta span,.detail-meta span{align-items:center;gap:6px;display:inline-flex}.muted-icon{color:#9aa4b4}.empty-state{text-align:center;color:var(--muted);background:#ffffff8c;border:1px dashed #cfd6e2;border-radius:16px;padding:46px 20px}.empty-state h3{color:var(--text);margin:10px 0 5px}.empty-state p{margin:0}.empty-icon{width:50px;height:50px;color:var(--primary);background:#e8edff;border-radius:15px;place-items:center;margin:0 auto;font-size:24px;font-weight:900;display:grid}.back-link{color:var(--muted);align-items:center;gap:6px;margin-bottom:22px;font-size:13px;font-weight:700;display:inline-flex}.form-card,.task-detail-card,.team-list-card{background:var(--surface);border:1px solid var(--line);border-radius:17px;padding:24px;box-shadow:0 8px 30px #16223a09}.form-card{gap:18px;display:grid}.field-label{color:#3f4858;gap:8px;font-size:13px;font-weight:750;display:grid}.field-label input,.field-label select,.field-label textarea,textarea{width:100%;font-weight:500}.optional{color:#9aa4b4;font-weight:500}.input-with-icon,.select-with-icon{align-items:center;display:flex;position:relative}.input-with-icon svg,.select-with-icon svg{color:#8a94a5;pointer-events:none;position:absolute;left:12px}.input-with-icon input,.select-with-icon select{width:100%;padding-left:39px}.two-columns{grid-template-columns:1fr 1fr;gap:14px;display:grid}.form-actions{justify-content:flex-end;align-items:center;gap:10px;margin-top:2px;display:flex}.alert{border-radius:10px;margin-bottom:14px;padding:11px 13px;font-size:13px}.alert-error{color:#b73b3b;background:#fff0f0;border:1px solid #f5d0d0}.alert-success{color:#137548;background:#eaf9f1;border:1px solid #ccebdc}.task-detail-card h1{letter-spacing:-.025em;margin:16px 0 10px;font-size:28px;line-height:1.2}.detail-meta{color:var(--muted);flex-wrap:wrap;gap:16px;font-size:13px;display:flex}.description-box{background:#f8fafc;border:1px solid #edf0f5;border-radius:12px;margin-top:20px;padding:17px}.description-box p{white-space:pre-wrap;margin:0;font-size:15px;line-height:1.65}.action-zone{flex-wrap:wrap;gap:10px;margin-top:20px;display:flex}.compact-card{margin-top:14px;padding:19px}.card-title{align-items:flex-start;gap:10px;margin-bottom:15px;display:flex}.card-title>svg{color:var(--primary);margin-top:2px}.card-title h3{margin:0 0 3px;font-size:16px}.card-title p{color:var(--muted);margin:0;font-size:12px}.compact-card form textarea{margin-bottom:10px}.comments-section{margin-top:26px}.comments-list{gap:10px;display:grid}.comment{border:1px solid var(--line);background:#fff;border-radius:13px;max-width:88%;padding:14px 16px}.comment-mine{background:#f1f5ff;border-color:#dce4ff;margin-left:auto}.comment-head{justify-content:space-between;gap:14px;margin-bottom:7px;display:flex}.comment-head strong{font-size:13px}.comment-head span{color:#929bad;font-size:11px}.comment p{white-space:pre-wrap;margin:0;font-size:14px;line-height:1.55}.empty-comments{color:var(--muted);text-align:center;padding:25px 10px}.comment-form{border:1px solid var(--line);background:#fff;border-radius:14px;align-items:flex-end;gap:10px;margin-top:14px;padding:12px;display:flex}.comment-form textarea{resize:vertical;background:#f8fafc;border:0;min-height:70px}.team-grid{grid-template-columns:minmax(300px,420px) 1fr;align-items:start;gap:18px;display:grid}.stack-form{gap:14px;display:grid}.employee-list{display:grid}.employee-row{border-top:1px solid #eef1f5;grid-template-columns:auto 1fr auto auto;align-items:center;gap:12px;padding:13px 0;display:grid}.employee-info{min-width:0}.employee-info strong{font-size:14px;display:block}.employee-info span{color:var(--muted);font-size:12px}.account-status{border-radius:999px;padding:5px 8px;font-size:11px;font-weight:800}.account-status.active{color:#158452;background:#eaf9f1}.account-status.inactive{color:#7b8494;background:#f2f4f7}.login-page{background:#fff;grid-template-columns:1.1fr .9fr;min-height:100vh;display:grid}.login-visual{color:#fff;background:radial-gradient(circle at 20% 20%,#3157d5 0,#223c99 42%,#13203e 100%);flex-direction:column;min-height:100vh;padding:52px clamp(38px,6vw,90px);display:flex}.login-brand{align-items:center;gap:12px;font-size:17px;display:flex}.login-copy{max-width:680px;margin:auto 0}.login-copy .eyebrow{color:#a9bbff}.login-copy h1{letter-spacing:-.055em;margin:15px 0 20px;font-size:clamp(42px,5vw,72px);line-height:.98}.login-copy p{color:#cbd5ee;max-width:580px;font-size:17px;line-height:1.6}.login-mini-board{grid-template-columns:repeat(3,1fr);gap:10px;max-width:540px;display:grid}.login-mini-board>div{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff14;border:1px solid #ffffff1a;border-radius:14px;grid-template-rows:auto auto;grid-template-columns:auto 1fr;column-gap:9px;padding:14px;display:grid}.login-mini-board .dot{border-radius:50%;grid-row:1/3;width:9px;height:9px;margin-top:6px}.dot.red{background:#ff6e6e}.dot.blue{background:#63a0ff}.dot.green{background:#59d696}.login-mini-board strong{font-size:20px}.login-mini-board small{color:#b9c5df}.login-panel{background:#f8fafc;place-items:center;padding:35px;display:grid}.login-card{border:1px solid var(--line);width:min(430px,100%);box-shadow:var(--shadow);background:#fff;border-radius:20px;gap:18px;padding:32px;display:grid}.login-card h2{letter-spacing:-.03em;margin:5px 0;font-size:30px}.login-card>div>p{color:var(--muted);margin:0}@media (max-width:1000px){.sidebar{width:78px;padding:18px 12px}.brand{padding:0 7px 22px}.brand>div:not(.brand-mark),.nav-link{font-size:0}.nav-link{justify-content:center;padding:12px}.sidebar-user-text,.sidebar-user .avatar{display:none}.sidebar-user{justify-content:center}.main-content{margin-left:78px}.stats-grid{grid-template-columns:repeat(2,1fr)}.team-grid,.login-page{grid-template-columns:1fr}.login-visual{display:none}}@media (max-width:700px){.sidebar{flex-direction:row;align-items:center;width:auto;height:66px;padding:8px 12px;position:fixed;inset:auto 0 0}.brand{display:none}.nav-list{flex:1;justify-content:center;display:flex}.nav-link{width:54px}.sidebar-user{border:0;margin:0;padding:0}.main-content{margin-left:0;padding-bottom:78px}.page-wrap{padding:25px 16px 35px}.page-header{flex-direction:column}.page-header h1{font-size:30px}.stats-grid{grid-template-columns:1fr 1fr;gap:9px}.stat-card{padding:13px}.filter-form{flex-wrap:wrap}.filter-form input,.filter-form select{flex:100%;min-width:0}.two-columns{grid-template-columns:1fr}.form-card,.task-detail-card,.team-list-card{padding:18px}.task-card{padding:16px}.comment{max-width:100%}.comment-form{flex-direction:column;align-items:stretch}.employee-row{grid-template-columns:auto 1fr}.employee-row .account-status,.employee-row form{grid-column:2}.login-panel{padding:18px}.login-card{padding:24px 20px}}.button:disabled{cursor:wait;opacity:.72;transform:none}.button-spinner{border:2px solid;border-right-color:#0000;border-radius:50%;width:15px;height:15px;animation:.7s linear infinite spin}.spin{animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.notification-center{position:relative}.notification-trigger{text-align:left;background:0 0;border:0;width:100%;position:relative}.notification-trigger-text{display:inline}.notification-badge{color:#fff;background:#ff5d5d;border-radius:999px;place-items:center;min-width:22px;height:22px;margin-left:auto;padding:0 6px;font-size:10px;font-weight:900;display:grid;box-shadow:0 4px 12px #ff5d5d47}.notification-panel{width:min(410px,100vw - 300px);max-height:calc(100vh - 110px);color:var(--text);border:1px solid var(--line);z-index:80;background:#fff;border-radius:18px;flex-direction:column;display:flex;position:fixed;top:78px;left:270px;overflow:hidden;box-shadow:0 24px 70px #121f3933}.notification-panel-head{border-bottom:1px solid #edf0f5;justify-content:space-between;align-items:flex-start;gap:14px;padding:18px 18px 14px;display:flex}.notification-panel-head strong{font-size:17px;display:block}.notification-panel-head span{color:var(--muted);margin-top:3px;font-size:12px;display:block}.panel-close{color:#667085;background:#f2f4f7;border:0;border-radius:9px;place-items:center;width:32px;height:32px;display:grid}.push-control{background:#f7f9fc;border:1px solid #edf0f5;border-radius:13px;align-items:center;gap:10px;margin:12px;padding:12px;display:flex}.push-status{color:#667085;flex:1;align-items:flex-start;gap:9px;min-width:0;display:flex}.push-status>svg{flex:none;margin-top:2px}.push-status span{min-width:0}.push-status strong,.push-status small{display:block}.push-status strong{color:#344054;font-size:12px}.push-status small{color:#8a94a5;margin-top:2px;font-size:10.5px;line-height:1.35}.push-status.enabled{color:var(--green)}.push-status.denied{color:var(--red)}.notification-toolbar{color:#8a94a5;justify-content:space-between;align-items:center;gap:10px;padding:8px 14px 9px;font-size:11px;font-weight:750;display:flex}.notification-toolbar button{color:var(--primary);background:0 0;border:0;align-items:center;gap:5px;padding:4px;font-size:11px;font-weight:800;display:inline-flex}.notification-list{border-top:1px solid #f0f2f6;max-height:440px;overflow:auto}.notification-item{border-bottom:1px solid #f2f4f7;gap:10px;padding:13px 15px;transition:all .15s;display:flex}.notification-item:hover{background:#f8fafc}.notification-item.unread{background:#f3f6ff}.notification-dot{background:#c9d0dc;border-radius:50%;flex:0 0 8px;width:8px;height:8px;margin-top:5px}.notification-item.unread .notification-dot{background:var(--primary);box-shadow:0 0 0 4px #3157d51a}.notification-copy{min-width:0;display:block}.notification-copy strong{font-size:12.5px;line-height:1.35;display:block}.notification-copy>span{-webkit-line-clamp:2;color:#667085;-webkit-box-orient:vertical;margin-top:3px;font-size:11.5px;line-height:1.45;display:-webkit-box;overflow:hidden}.notification-copy small{color:#9aa4b4;margin-top:5px;font-size:10px;display:block}.notification-empty{text-align:center;color:#8a94a5;padding:34px 18px;font-size:12px}.loading-page{max-width:1350px;margin:0 auto;padding:38px 40px 60px}.loading-block{background:linear-gradient(90deg,#eef1f5 25%,#f8fafc 42%,#eef1f5 62%) 0 0/320% 100%;border-radius:15px;animation:1.3s ease-in-out infinite loading-shimmer}.loading-title{width:280px;height:52px;margin-bottom:28px}.loading-stats{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px;display:grid}.loading-stats .loading-block{height:72px}.loading-filter{height:62px;margin-bottom:26px}.loading-task{height:142px;margin-bottom:11px}@keyframes loading-shimmer{0%{background-position:100% 0}to{background-position:0 0}}@media (max-width:1000px){.notification-trigger-text{display:none}.notification-trigger{justify-content:center;padding:12px}.notification-badge{min-width:18px;height:18px;padding:0 4px;font-size:9px;position:absolute;top:3px;right:5px}.notification-panel{width:min(410px,100vw - 108px);left:88px}.loading-stats{grid-template-columns:repeat(2,1fr)}}@media (max-width:700px){.notification-center{align-items:center;display:flex}.notification-trigger{width:54px}.notification-panel{width:auto;max-height:72vh;inset:auto 12px 78px}.push-control{flex-wrap:wrap;align-items:flex-start}.push-control .button{width:100%}.loading-page{padding:25px 16px 90px}.loading-stats{grid-template-columns:1fr 1fr;gap:9px}}.brand-with-logo{gap:10px;padding-left:0}.brand-with-logo img{object-fit:contain;flex:0 0 46px;width:46px;height:46px}.logo-brand{align-items:center}.logo-brand img{object-fit:contain;filter:drop-shadow(0 8px 18px #00000029)}.logo-brand>div{gap:3px;display:grid}.logo-brand>div span{color:#b9c5df;font-size:11px}.login-card-logo{text-align:center;display:none}.login-card-logo img{object-fit:contain}.auth-switch{color:var(--muted);text-align:center;margin:0;font-size:13px}.auth-switch a{color:var(--primary);font-weight:800}.register-page{background:radial-gradient(circle at 10% 10%,#eef3ff 0,#f8fafc 42%,#eef2f8 100%);place-items:center;min-height:100vh;padding:35px 18px;display:grid}.register-panel{width:min(760px,100%)}.register-brand{justify-content:center;align-items:center;gap:22px;margin-bottom:18px;display:flex}.register-brand img{object-fit:contain}.register-brand h1{letter-spacing:-.035em;margin:5px 0 6px;font-size:32px}.register-brand p{color:var(--muted);margin:0}.register-card,.registration-success-card{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:22px;padding:28px}.register-card{gap:16px;display:grid}.register-password-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.optional-label{color:#98a2b3;margin-left:4px;font-size:10px;font-weight:650}.registration-success-card{text-align:center;justify-items:center;gap:12px;padding:42px 32px;display:grid}.registration-success-card h2{margin:0;font-size:30px}.registration-success-card p{max-width:520px;color:var(--muted);margin:0 0 8px;line-height:1.6}.success-icon{color:#158452;background:#eaf9f1;border-radius:50%;place-items:center;width:62px;height:62px;font-size:30px;font-weight:900;display:grid}.pending-section{border:1px solid var(--line);background:#fff;border-radius:18px;margin-bottom:18px;padding:20px;box-shadow:0 8px 25px #121f390d}.section-title-row{justify-content:space-between;align-items:center;gap:14px;display:flex}.pending-count{color:#d92d20;background:#fff1f0;border-radius:999px;place-items:center;min-width:30px;height:30px;font-weight:900;display:grid}.pending-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:15px;display:grid}.pending-card{border:1px solid #e7ebf2;border-radius:15px;gap:12px;padding:15px;display:grid}.pending-person{align-items:center;gap:11px;display:flex}.pending-person strong,.pending-person span{display:block}.pending-person span{color:var(--muted);margin-top:3px;font-size:12px}.pending-contacts{color:#667085;gap:6px;font-size:12px;display:grid}.pending-contacts span{overflow-wrap:anywhere;align-items:center;gap:7px;min-width:0;display:flex}.pending-actions{gap:8px;display:flex}.pending-actions form{flex:1}.pending-actions .button{width:100%}.button-success{color:#fff;background:#169b62;border-color:#169b62}.button-danger-ghost{color:#d92d20;background:#fff;border-color:#f4c7c3}.employee-info small{color:#98a2b3;margin-top:3px;font-size:10.5px;display:block}.rejected-list{border:1px solid var(--line);color:#667085;background:#fff;border-radius:14px;margin-top:18px;padding:14px 16px}.rejected-list summary{cursor:pointer;color:#475467;font-weight:800}.rejected-list>div{gap:7px;margin-top:12px;display:grid}.rejected-list span{align-items:center;gap:7px;font-size:12px;display:flex}@media (max-width:1000px){.brand-with-logo img{width:50px;height:50px}}@media (max-width:700px){.login-card-logo{display:block}.register-page{align-items:start;padding:18px 12px}.register-brand{text-align:center;flex-direction:column;gap:10px;margin-bottom:12px}.register-brand img{width:88px;height:88px}.register-brand h1{font-size:26px}.register-card,.registration-success-card{border-radius:18px;padding:20px 16px}.register-password-grid{grid-template-columns:1fr;gap:16px}.pending-grid{grid-template-columns:1fr}.pending-actions{flex-direction:column}}.task-tabs{flex-wrap:wrap;gap:8px;margin:18px 0;display:flex}.task-tab{border:1px solid var(--border);color:var(--muted);background:#fff;border-radius:12px;padding:10px 14px;font-weight:700;text-decoration:none}.task-tab.active{color:#fff;background:#172d4d;border-color:#172d4d}.task-people{color:#42546a;flex-wrap:wrap;gap:18px;margin-top:14px;font-size:14px;display:flex}.task-people span,.assignment-grid strong{align-items:center;gap:6px;display:flex}.task-critical{background:linear-gradient(90deg,#fff5f5 0,#fff 25%);border-left:5px solid #dc2626}.deadline-overdue{color:#b91c1c;background:#fee2e2}.deadline-today{color:#c2410c;background:#ffedd5}.deadline-soon{color:#92400e;background:#fef3c7}.file-input{border:1px dashed var(--border);background:#f8fafc;border-radius:12px;align-items:center;gap:10px;padding:13px;display:flex}.detail-grid{grid-template-columns:minmax(0,1fr) 340px;gap:20px;display:grid}.side-stack{flex-direction:column;gap:16px;display:flex}.panel-card,.analytics-card{border:1px solid var(--border);background:#fff;border-radius:18px;padding:20px}.assignment-grid{grid-template-columns:repeat(3,1fr);gap:12px;margin:22px 0;display:grid}.assignment-grid>div{background:#f8fafc;border-radius:14px;padding:14px}.assignment-grid span,.assignment-grid small{color:var(--muted);font-size:12px;display:block}.attachment-list{flex-direction:column;gap:8px;margin:14px 0;display:flex}.attachment-row{color:inherit;background:#f8fafc;border-radius:11px;align-items:center;gap:9px;padding:10px;text-decoration:none;display:flex}.attachment-row span{text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.attachment-row small{color:var(--muted);display:block}.compact-upload{gap:8px}.timeline{margin-top:14px}.timeline-item{grid-template-columns:14px 1fr;gap:10px;padding-bottom:16px;display:grid;position:relative}.timeline-item>span{background:#2f7d68;border-radius:50%;width:10px;height:10px;margin-top:5px}.timeline-item:not(:last-child):before{content:"";background:#dbe7e3;width:2px;position:absolute;top:15px;bottom:0;left:4px}.timeline-item p,.timeline-item small{color:var(--muted);margin:3px 0;font-size:12px}.approval-form,.role-form{align-items:center;gap:8px;display:flex}.approval-form select,.role-form select{min-width:150px}.analytics-table-wrap{margin-top:18px;overflow:auto}.analytics-table{border-collapse:collapse;width:100%;min-width:650px}.analytics-table th,.analytics-table td{border-bottom:1px solid var(--border);text-align:left;padding:14px}.analytics-table td small{color:var(--muted);margin-top:3px;display:block}.overdue-cell{color:#b91c1c;font-weight:800}@media (max-width:900px){.detail-grid,.assignment-grid{grid-template-columns:1fr}.task-tabs{flex-wrap:nowrap;padding-bottom:4px;overflow-x:auto}.task-tab{white-space:nowrap}.employee-row{flex-wrap:wrap;align-items:flex-start}.role-form{width:100%}}
