:root{--canvas:#f7f8fc;--surface:#ffffff;--surface-soft:#fbfbfe;--ink:#172033;--ink-strong:#0d1526;--muted:#718096;--muted-strong:#506078;--line:#e8ebf3;--line-strong:#d9deea;--sidebar:#10172a;--sidebar-muted:#8e9ab4;--purple:#675cf6;--purple-dark:#5148df;--blue:#3d8bfd;--mint:#2ab99a;--orange:#f39b5f;--red:#e45a6d;--shadow:0 12px 34px rgba(18,31,58,.06);--shadow-soft:0 3px 12px rgba(18,31,58,.04);--radius:16px}*{box-sizing:border-box}html{scroll-behavior:smooth}body,html{overflow-x:hidden}body{min-width:320px;margin:0;background:var(--canvas);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{min-width:0;font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.62}a{color:inherit;text-decoration:none}h1,h2,h3,p{overflow-wrap:anywhere;margin-top:0}.app-shell{position:relative;display:block;width:100%}.app-shell,.sidebar{height:100vh;min-width:0;overflow:hidden}.sidebar{position:fixed;inset:0 auto 0 0;z-index:30;display:flex;flex-direction:column;width:260px;min-height:100vh;padding:24px 16px 18px;background:var(--sidebar);color:#fff}.sidebar-brand{display:flex;align-items:center;gap:10px;padding:0 10px 25px;font-size:18px;font-weight:750;letter-spacing:-.02em}.sidebar-brand-link{display:inline-flex;align-items:center;gap:10px;color:inherit;transition:color .18s ease}.sidebar-brand-link:hover{color:#fff}.mobile-brand:focus-visible,.sidebar-brand-link:focus-visible{border-radius:10px;outline:2px solid rgba(155,148,255,.7);outline-offset:3px}.mobile-brand{transition:color .18s ease}.mobile-brand:hover{color:var(--purple-dark)}.brand-mark{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:10px;background:linear-gradient(135deg,#8c83ff,#534be7);color:#fff;box-shadow:0 7px 16px rgba(103,92,246,.32)}.brand-mark-large{width:38px;height:38px;border-radius:12px}.sidebar-close{display:none;margin-left:auto;padding:6px;border:0;background:transparent;color:#fff}.workspace-switcher{display:flex;align-items:center;gap:9px;margin:0 0 26px;padding:11px 10px;border:1px solid rgba(255,255,255,.1);border-radius:11px;background:rgba(255,255,255,.05);color:#fff}.workspace-switcher>span:not(.workspace-dot){display:flex;flex:1 1;flex-direction:column;min-width:0}.workspace-switcher strong{overflow:hidden;font-size:12px;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.workspace-switcher small{margin-top:2px;color:var(--sidebar-muted);font-size:10px}.workspace-dot{width:8px;height:8px;border-radius:50%;background:#63dfba;box-shadow:0 0 0 4px rgba(99,223,186,.12)}.sidebar-nav{flex:1 1 auto;min-width:0;min-height:0;overflow:hidden}.nav-section{margin-bottom:24px}.nav-section-label{padding:0 12px 8px;color:#667391;font-size:10px;font-weight:750;letter-spacing:.12em;text-transform:uppercase}.nav-link{display:flex;align-items:center;gap:12px;margin:3px 0;padding:11px 12px;border-radius:10px;color:#aab4ca;font-size:13px;font-weight:560;transition:.18s ease}.nav-link svg{color:#7c89a7}.nav-link:focus-visible,.nav-link:hover{background:rgba(255,255,255,.06);color:#fff;outline:none}.nav-link.active{background:linear-gradient(90deg,rgba(108,96,246,.26),rgba(108,96,246,.08));color:#fff;box-shadow:inset 3px 0 0 #776dfb}.nav-link.active svg{color:#9b94ff}.button-count,.nav-count{display:inline-flex;align-items:center;justify-content:center;min-width:19px;height:19px;margin-left:auto;padding:0 5px;border-radius:999px;background:#ef6e80;color:#fff;font-size:10px;font-weight:750}.sidebar-footer{flex:0 0 auto;min-width:0;margin-top:14px}.sidebar-help{display:flex;align-items:center;gap:9px;margin-bottom:15px;padding:11px 10px;border-radius:11px;background:rgba(255,255,255,.05);color:#c4cbe0}.help-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;background:rgba(107,95,247,.22);color:#aaa4ff}.sidebar-help div,.user-menu span{display:flex;flex:1 1;flex-direction:column;min-width:0}.sidebar-help strong,.user-menu strong{font-size:11px;font-weight:650}.sidebar-help small,.user-menu small{margin-top:3px;color:#8490aa;font-size:10px;text-transform:capitalize}.user-menu{gap:9px;padding:9px 7px;border:0;border-top:1px solid rgba(255,255,255,.08);background:transparent;color:#fff;text-align:left}.signout-button,.user-menu{display:flex;align-items:center;width:100%}.signout-button{justify-content:center;gap:8px;min-height:36px;margin-top:9px;padding:8px 10px;border:1px solid rgba(255,255,255,.12);border-radius:9px;background:rgba(255,255,255,.05);color:#cbd2e3;font-size:11px;font-weight:700}.signout-button:focus-visible,.signout-button:hover{border-color:rgba(155,148,255,.55);background:rgba(108,96,246,.18);color:#fff;outline:none}.signout-button:disabled{cursor:wait;opacity:.65}.sidebar-error{display:flex;align-items:flex-start;gap:6px;margin-top:9px;padding:8px 9px;border:1px solid rgba(255,126,145,.32);border-radius:8px;background:rgba(229,90,109,.12);color:#ffb1bd;font-size:10px;line-height:1.35}.auth-loading-shell{display:grid;min-height:100vh;place-items:center;background:var(--canvas);color:var(--muted);font-size:12px}.main-content{width:calc(100% - 260px);height:100vh;min-width:0;max-width:none;margin-left:260px;overflow-x:clip;overflow-y:auto}.mobile-topbar{display:none}.page-container{width:100%;max-width:1440px;min-width:0;margin:0 auto;padding:36px 40px 64px}.page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:28px}.page-heading{flex:1 1 auto;min-width:0}.eyebrow{margin-bottom:8px;color:var(--purple);font-size:10px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.page-heading h1{margin-bottom:7px;color:var(--ink-strong);font-size:clamp(1.8rem,3vw,2.4rem);line-height:1.05;letter-spacing:-.055em}.page-heading p{margin:0;color:var(--muted);font-size:13px}.page-actions{display:flex;flex:0 1 auto;flex-wrap:wrap;justify-content:flex-end;gap:9px;min-width:0}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 15px;border:1px solid transparent;border-radius:10px;font-size:12px;font-weight:680;line-height:1;transition:.18s ease}.button-primary{background:var(--purple);color:#fff;box-shadow:0 8px 18px rgba(103,92,246,.2)}.button-primary:focus-visible,.button-primary:hover{background:var(--purple-dark);box-shadow:0 10px 22px rgba(103,92,246,.28);outline:none}.button-ghost{border-color:var(--line-strong);background:var(--surface);color:var(--muted-strong);box-shadow:var(--shadow-soft)}.button-ghost:focus-visible,.button-ghost:hover{border-color:#c9c5ff;color:var(--purple-dark);outline:none}.button-small{min-height:36px;padding:0 11px;font-size:11px}.button-full{width:100%}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--muted-strong)}.icon-button:focus-visible,.icon-button:hover{border-color:#c9c5ff;color:var(--purple);outline:none}.nav-backdrop{display:none}.hero-strip{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-bottom:20px;padding:24px 26px;overflow:hidden;border:1px solid #dfdcff;border-radius:var(--radius);background:radial-gradient(circle at 88% 10%,rgba(172,165,255,.32),transparent 35%),linear-gradient(110deg,#f1efff,#f8f8ff 70%)}.hero-kicker{display:inline-flex;align-items:center;gap:6px;color:var(--purple-dark);font-size:10px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.hero-strip h2{margin:9px 0 5px;color:var(--ink-strong);font-size:clamp(1.35rem,2.5vw,1.85rem);letter-spacing:-.04em}.hero-strip p{margin:0;color:#6b6a89;font-size:12px}.hero-progress{width:min(260px,100%);padding:13px 15px;border:1px solid rgba(103,92,246,.12);border-radius:12px;background:rgba(255,255,255,.62)}.hero-progress-top{display:flex;justify-content:space-between;margin-bottom:9px;color:var(--muted-strong);font-size:11px}.hero-progress-top strong{color:var(--purple-dark);font-size:16px}.hero-progress small{display:block;margin-top:8px;color:var(--muted);font-size:10px}.progress-track{width:100%;height:6px;overflow:hidden;border-radius:999px;background:#ebedf5}.progress-fill{display:block;height:100%;border-radius:inherit}.progress-blue,.progress-fill{background:var(--blue)}.progress-purple{background:var(--purple)}.progress-mint{background:var(--mint)}.progress-orange{background:var(--orange)}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:14px;gap:14px;margin-bottom:20px}.metric-card-link{display:block;min-width:0;cursor:pointer}.metric-card{min-width:0;min-height:137px;padding:17px 18px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-soft)}.metric-card-link:hover .metric-card{transform:translateY(-2px);box-shadow:var(--shadow)}.metric-card-link:focus-visible{outline:3px solid rgba(103,92,246,.28);outline-offset:3px;border-radius:var(--radius)}.metric-card-top{display:flex;align-items:center;justify-content:space-between}.metric-icon{display:inline-flex;align-items:center;justify-content:center;width:35px;height:35px;border-radius:11px}.inline-stat-icon.blue,.metric-blue .metric-icon{background:#e9f2ff;color:var(--blue)}.inline-stat-icon.orange,.metric-orange .metric-icon{background:#fff0e4;color:var(--orange)}.inline-stat-icon.purple,.metric-purple .metric-icon{background:#f0edff;color:var(--purple)}.inline-stat-icon.mint,.metric-green .metric-icon,.metric-mint .metric-icon{background:#e4f8f2;color:var(--mint)}.metric-change{color:var(--mint);font-size:10px;font-weight:700}.metric-change.negative{color:var(--red)}.metric-value{margin-top:17px;color:var(--ink-strong);font-size:28px;font-weight:780;letter-spacing:-.05em}.metric-label{margin-top:3px;color:var(--muted);font-size:11px}.panel{min-width:0;padding:21px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-soft)}.section-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:17px}.section-header h2{margin:0;color:var(--ink-strong);font-size:16px;letter-spacing:-.03em}.section-header p{margin:5px 0 0;color:var(--muted);font-size:11px;line-height:1.45}.dashboard-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(330px,.75fr);grid-gap:20px;gap:20px;margin-bottom:20px}.task-list,.task-row{min-width:0}.task-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;border-top:1px solid #f0f1f6}.task-row:first-child{border-top:0;padding-top:2px}.task-row-main{display:flex;align-items:flex-start;gap:10px;min-width:0}.task-check{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;width:29px;height:29px;border-radius:9px;background:#f1f3fa;color:#8490a9}.task-copy{min-width:0}.task-title{display:block;overflow:hidden;color:var(--ink-strong);font-size:12px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.task-title:hover{color:var(--purple-dark)}.task-subline{display:flex;align-items:center;gap:7px;margin-top:5px;overflow:hidden;color:var(--muted);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.dot-separator{width:3px;height:3px;border-radius:50%;background:#bdc4d1}.task-row-meta{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:7px;flex-shrink:0}.due-date{display:inline-flex;align-items:center;gap:4px;color:var(--muted);font-size:10px;white-space:nowrap}.due-date.overdue{color:var(--red);font-weight:700}.status-select{min-height:31px;padding:0 25px 0 8px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--muted-strong);font-size:10px}.pulse-chart{margin-top:8px}.pulse-chart svg{display:block;width:100%;height:auto}.chart-axis{display:flex;justify-content:space-between;margin-top:-7px;color:#a1aabc;font-size:9px}.pulse-stats{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px;gap:8px;margin-top:17px;padding-top:15px;border-top:1px solid #f0f1f6}.pulse-stats>div{min-width:0}.stat-label{display:block;color:var(--muted);font-size:9px}.pulse-stats strong{display:block;margin-top:4px;color:var(--ink-strong);font-size:18px}.pulse-stats small{display:block;margin-top:2px;color:#9ba5b6;font-size:9px}.activity-panel{margin-bottom:20px}.activity-item,.activity-list{position:relative}.activity-item{display:flex;align-items:flex-start;gap:11px;min-width:0;padding:12px 0}.activity-line{position:absolute;top:35px;bottom:-12px;left:14px;width:1px;background:#eceef5}.activity-item:last-child .activity-line{display:none}.activity-icon{z-index:1;display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;width:29px;height:29px;border:4px solid #fff;border-radius:50%;background:#efefff;color:var(--purple)}.activity-item>div{min-width:0;flex:1 1}.activity-item p{margin:2px 0 4px;color:var(--muted-strong);font-size:11px;line-height:1.5}.activity-item p strong{color:var(--ink-strong)}.activity-item p a{color:var(--purple-dark);font-weight:650}.activity-item small{color:#a0aaba;font-size:9px}.badge{display:inline-flex;align-items:center;gap:5px;width:max-content;max-width:100%;padding:6px 8px;border-radius:999px;font-size:10px;font-weight:700;white-space:nowrap}.badge-compact{padding:5px 7px;font-size:9px}.badge-slate{background:#f0f2f6;color:#718096}.badge-blue{background:#eaf3ff;color:#347edb}.badge-purple{background:#f0edff;color:#6559e6}.badge-green{background:#e5f8f2;color:#1b9d7f}.badge-orange{background:#fff0e4;color:#d77c35}.badge-red{background:#ffebef;color:#d54b61}.priority-dot{width:5px;height:5px;border-radius:50%;background:currentColor}.non-working-day-form{display:grid;grid-gap:14px;gap:14px}.non-working-day-conditions{display:flex;flex-wrap:wrap;gap:7px}.non-working-day-condition{display:inline-flex;padding:6px 8px;border-radius:999px;background:#fff0e4;color:#c16b2b;font-size:9px;font-weight:800}.non-working-day-condition.holiday{background:#f0edff;color:var(--purple-dark)}.non-working-day-condition.leave{background:#eaf3ff;color:#347edb}.non-working-day-condition.normal{background:#e5f8f2;color:#1b9d7f}.non-working-day-holiday-note{color:var(--muted);font-size:10px}.non-working-day-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:8px;gap:8px}.non-working-day-summary>div{display:flex;flex-direction:column;gap:4px;min-width:0;padding:10px;border:1px solid var(--line);border-radius:10px;background:var(--surface-soft)}.non-working-day-summary span{color:var(--muted);font-size:9px}.non-working-day-summary strong{color:var(--ink-strong);font-size:12px}.non-working-day-leave-count{color:var(--muted);font-size:10px}.non-working-day-leave-count strong{color:var(--ink-strong)}.non-working-day-confirmation{padding:14px;border:1px solid #e4e1ff;border-radius:10px;background:#f7f5ff;color:var(--ink-strong);font-size:12px;line-height:1.5}.non-working-day-preview-list{display:grid;max-height:270px;overflow-y:auto;border-top:1px solid #f0f1f6}.non-working-day-preview-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #f0f1f6}.non-working-day-preview-item>div{display:flex;flex-direction:column;gap:3px;min-width:0}.non-working-day-preview-item span,.non-working-day-preview-item strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.non-working-day-preview-item strong{color:var(--ink-strong);font-size:11px}.non-working-day-preview-item small,.non-working-day-preview-item span{color:var(--muted);font-size:10px}.non-working-day-preview-item>div:last-child{align-items:flex-end;flex:0 0 auto}.non-working-day-preview-item small:last-child{color:var(--purple);font-weight:700}.non-working-day-loading{min-height:110px}.holiday-list{display:grid}.holiday-row{display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--line)}.holiday-row:first-child{padding-top:0;border-top:0}.holiday-row>div:first-child{display:flex;flex:1 1;min-width:0;flex-direction:column;gap:4px}.holiday-row strong{overflow:hidden;color:var(--ink-strong);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.holiday-row>div:first-child span{color:var(--muted);font-size:10px}.holiday-actions{display:flex;flex:0 0 auto;gap:6px}.non-working-day-config{display:grid;grid-gap:12px;gap:12px;padding:13px;border:1px solid var(--line);border-radius:11px;background:var(--surface-soft)}.non-working-day-add-date{display:flex;align-items:center;gap:8px}.non-working-day-add-date .input{flex:1 1}.non-working-day-date-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.non-working-day-date-chip{display:inline-flex;align-items:center;gap:5px;padding:6px 8px;border-radius:999px;background:#f0edff;color:var(--purple-dark);font-size:10px;font-weight:700}.non-working-day-date-chip button{display:inline-flex;align-items:center;justify-content:center;width:15px;height:15px;padding:0;border:0;border-radius:50%;background:transparent;color:inherit;cursor:pointer}.non-working-day-divider{height:1px;background:var(--line)}.non-working-day-preview-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:14px}.non-working-day-preview-heading>div:first-child{display:flex;flex-direction:column;gap:4px}.non-working-day-preview-heading strong{color:var(--ink-strong);font-size:13px}.non-working-day-preview-heading small{color:var(--muted);font-size:10px}.non-working-day-preview-heading .field{flex:0 0 170px}.non-working-day-settings-actions{display:flex;flex-wrap:wrap;gap:6px}.configured-non-working-days{display:grid}.configured-non-working-day-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 0;border-top:1px solid var(--line)}.configured-non-working-day-row>div:first-child{display:flex;min-width:0;flex-direction:column;gap:4px}.configured-non-working-day-row strong{color:var(--ink-strong);font-size:11px}.configured-non-working-day-row span{color:var(--muted);font-size:10px}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:260px;padding:24px;text-align:center}.empty-compact{min-height:175px}.empty-icon{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;margin-bottom:13px;border-radius:14px;background:#f1efff;color:var(--purple)}.empty-state h3{margin-bottom:6px;color:var(--ink-strong);font-size:14px}.empty-state p{max-width:340px;margin-bottom:16px;color:var(--muted);font-size:11px;line-height:1.5}.task-summary-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:12px;gap:12px;margin-bottom:18px}.inline-stat{display:flex;align-items:center;gap:10px;min-width:0;padding:13px 14px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.inline-stat-icon{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;width:31px;height:31px;border-radius:9px}.inline-stat div{display:flex;flex-direction:column;min-width:0}.inline-stat strong{color:var(--ink-strong);font-size:17px}.inline-stat span:not(.inline-stat-icon){color:var(--muted);font-size:10px}.inline-alert{display:flex;align-items:center;gap:8px;margin-bottom:16px;padding:10px 13px;border-radius:10px;font-size:11px}.inline-alert.success{background:#e8f8f2;color:#178b70}.form-error,.inline-alert.error{background:#fff0f2;color:#c94159}.people-panel,.report-panel,.task-panel{margin-bottom:20px}.filter-bar{display:flex;align-items:flex-end;flex-wrap:wrap;gap:9px;margin-bottom:18px;padding:12px;border:1px solid #eff1f6;border-radius:12px;background:var(--surface-soft)}.search-box{display:flex;align-items:center;flex:1 1 240px;gap:8px;min-height:38px;padding:0 11px;border:1px solid var(--line);border-radius:9px;background:#fff;color:#9aa5b6}.search-box input{width:100%;padding:0;border:0;outline:0;background:transparent;color:var(--ink);font-size:11px}.filter-control{display:flex;flex:0 1 145px;flex-direction:column;gap:5px;color:var(--muted);font-size:9px;font-weight:700}.filter-control input,.filter-control select{width:100%;min-height:38px;padding:0 9px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--muted-strong);font-size:10px}.filter-button{flex:0 0 auto}.people-table-heading,.task-table-heading{display:grid;grid-gap:12px;gap:12px;padding:0 12px 10px 47px;color:#a0aabc;font-size:9px;font-weight:750;letter-spacing:.05em;text-transform:uppercase}.task-list-desktop .task-row-grid,.task-table-heading{grid-template-columns:minmax(180px,1.5fr) minmax(110px,.85fr) minmax(80px,.75fr) minmax(90px,.95fr) minmax(70px,.85fr) 22px}.task-list-desktop .task-row-grid{display:grid}.task-row-grid{padding:15px 0}.task-owner{display:flex;align-items:center;gap:6px;min-width:0;overflow:hidden;color:var(--muted-strong);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.task-row-grid .task-row-meta{display:contents}.task-row-grid .task-row-main{min-width:0}.row-action{display:inline-flex;align-items:center;justify-content:center;color:#a6afc0}.row-action:hover{color:var(--purple)}.task-list-mobile{display:none}.mobile-task-card{padding:15px;border:1px solid var(--line);border-radius:13px;background:#fff}.mobile-task-card+.mobile-task-card{margin-top:10px}.mobile-task-card-footer,.mobile-task-card-meta,.mobile-task-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.mobile-task-card-meta{justify-content:flex-start;flex-wrap:wrap;margin-top:10px;color:var(--muted);font-size:10px}.mobile-task-card-meta span{display:inline-flex;align-items:center;gap:4px}.mobile-task-card p{margin:11px 0;color:var(--muted);font-size:11px;line-height:1.45}.mobile-task-card-footer{padding-top:11px;border-top:1px solid #f0f1f6;color:var(--muted);font-size:10px}.mobile-task-card-footer .status-select{min-height:34px}.loading-list{display:grid;grid-gap:10px;gap:10px}.loading-list span{display:block;height:49px;border-radius:10px;background:linear-gradient(90deg,#f3f4f8 25%,#fafbfc 45%,#f3f4f8 65%);background-size:300% 100%;animation:shimmer 1.4s infinite}.loading-list span:nth-child(2){width:88%}.loading-list span:nth-child(3){width:72%}@keyframes shimmer{to{background-position:-300% 0}}.people-table-heading{grid-template-columns:minmax(200px,1.5fr) minmax(120px,.8fr) minmax(150px,1fr) minmax(100px,.7fr) minmax(215px,1.1fr);padding-left:12px}.people-list{min-width:0}.person-row{display:grid;grid-template-columns:minmax(200px,1.5fr) minmax(120px,.8fr) minmax(150px,1fr) minmax(100px,.7fr) minmax(215px,1.1fr);align-items:center;grid-gap:12px;gap:12px;padding:14px 0;border-top:1px solid #f0f1f6}.person-main{display:flex;align-items:center;gap:10px;min-width:0}.person-contact,.person-main>div{display:flex;flex-direction:column;min-width:0}.person-main strong{overflow:hidden;color:var(--ink-strong);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.person-contact small,.person-main small{margin-top:4px;color:var(--muted);font-size:9px}.person-contact{overflow:hidden;color:var(--muted-strong);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.access-pill,.role-pill{display:inline-flex;align-items:center;gap:6px;width:max-content;max-width:100%;padding:6px 8px;border-radius:999px;font-size:9px;font-weight:700}.role-pill{background:#f1efff;color:#655be2}.access-pill{background:#e9f8f2;color:#1c9d7e}.access-pill.inactive{background:#f0f2f5;color:#8a94a5}.access-pill span{width:5px;height:5px;border-radius:50%;background:currentColor}.person-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:7px;min-width:0}.person-actions .button{flex:0 0 auto;white-space:nowrap}.avatar{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;width:34px;height:34px;border-radius:11px;background:#e8e6ff;color:var(--purple-dark);font-size:11px;font-weight:800}.avatar-sm{width:31px;height:31px;border-radius:10px;font-size:10px}.avatar-xs{width:22px;height:22px;border-radius:7px;font-size:8px}.avatar-lg{width:54px;height:54px;border-radius:17px;font-size:15px}.report-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);grid-gap:20px;gap:20px}.breakdown-panel,.report-table-panel{min-width:0}.report-table-scroll{width:100%;overflow-x:auto}.report-table{width:100%;min-width:650px;border-collapse:collapse}.report-table td,.report-table th{padding:12px 10px;border-bottom:1px solid #f0f1f6;text-align:left;font-size:10px;white-space:nowrap}.report-table th{color:#99a3b5;font-size:9px;text-transform:uppercase}.report-table td{color:var(--muted-strong)}.report-table td strong{color:var(--ink-strong)}.table-progress{display:flex;align-items:center;gap:8px}.table-progress .progress-track{width:52px;height:5px}.breakdown-list{display:grid;grid-gap:18px;gap:18px}.breakdown-item>div{display:flex;align-items:center;gap:7px;margin-bottom:7px;color:var(--muted-strong);font-size:11px}.breakdown-item strong{margin-left:auto;color:var(--ink-strong)}.breakdown-dot{width:7px;height:7px;border-radius:50%}.breakdown-dot.blue{background:var(--blue)}.breakdown-dot.purple{background:var(--purple)}.breakdown-dot.orange{background:var(--orange)}.breakdown-dot.violet{background:#9677e8}.breakdown-dot.mint{background:var(--mint)}.report-insight{display:flex;gap:10px;margin-top:28px;padding:12px;border-radius:11px;background:#f2f1ff}.insight-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:28px;height:28px;border-radius:9px;background:#e6e3ff;color:var(--purple)}.report-insight strong{color:var(--ink-strong);font-size:11px}.report-insight p{margin:4px 0 0;color:#77749b;font-size:10px;line-height:1.45}.modal-backdrop{position:fixed;z-index:100;inset:0;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(15,23,42,.5);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.modal{width:min(100%,510px);max-height:min(92vh,740px);overflow-y:auto;padding:22px;border:1px solid rgba(255,255,255,.5);border-radius:18px;background:var(--surface);box-shadow:0 24px 70px rgba(15,23,42,.24)}.modal-wide{width:min(100%,690px)}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:20px}.modal-header h2{margin:0;color:var(--ink-strong);font-size:20px;letter-spacing:-.04em}.modal-header p{margin:6px 0 0;color:var(--muted);font-size:11px;line-height:1.45}.modal-form,.settings-form{min-width:0}.form-grid{display:grid;grid-gap:13px;gap:13px}.form-grid-two{grid-template-columns:repeat(2,minmax(0,1fr))}.field{min-width:0}.field-wide{grid-column:1/-1}.auth-form>label,.field label,.settings-form label{display:block;margin-bottom:6px;color:var(--muted-strong);font-size:10px;font-weight:700}.auth-form label span,.field label span{color:var(--red)}.input{display:block;width:100%;min-height:42px;padding:0 11px;border:1px solid var(--line-strong);border-radius:9px;outline:0;background:#fff;color:var(--ink-strong);font-size:11px}.input-with-icon:focus-within,.input:focus{border-color:#a9a2ff;box-shadow:0 0 0 3px rgba(103,92,246,.11)}.field textarea.input,textarea.input{min-height:96px;padding:11px;resize:vertical}.checkbox-field{display:flex;align-items:flex-start;gap:9px;margin-top:2px;cursor:pointer}.checkbox-field input{width:16px;height:16px;margin-top:1px;accent-color:var(--purple)}.checkbox-field span{display:flex;flex-direction:column;gap:3px}.checkbox-field strong{color:var(--muted-strong);font-size:11px}.checkbox-field small{color:var(--muted);font-size:10px}.form-error{display:flex;align-items:flex-start;gap:7px;margin-top:13px;padding:10px 11px;border-radius:9px;font-size:10px;line-height:1.4}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:20px;padding-top:15px;border-top:1px solid #f0f1f6}.detail-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(310px,.7fr);grid-gap:20px;gap:20px}.detail-topline{display:flex;align-items:center;justify-content:space-between;gap:12px}.detail-tags{display:flex;flex-wrap:wrap;gap:7px}.detail-updated{color:var(--muted);font-size:10px}.detail-title{margin:20px 0 9px;color:var(--ink-strong);font-size:clamp(1.5rem,3vw,2.1rem);line-height:1.12;letter-spacing:-.05em}.detail-description{max-width:720px;margin-bottom:26px;color:var(--muted-strong);font-size:12px;line-height:1.7}.workflow{position:relative;margin:22px 0 30px;padding:0 8px}.workflow-line{position:absolute;top:15px;right:9%;left:9%;height:2px;background:#e6e9f1}.workflow-steps{position:relative;display:flex;justify-content:space-between}.workflow-step{display:flex;flex-direction:column;align-items:center;gap:8px;width:95px;padding:0;border:0;background:transparent;color:#9aa5b6}.workflow-step>span{display:inline-flex;align-items:center;justify-content:center;width:31px;height:31px;border:2px solid #e6e9f1;border-radius:50%;background:var(--surface)}.workflow-step.complete{color:var(--purple)}.workflow-step.complete>span{border-color:#b8b2ff;background:#efedff}.workflow-step.current>span{border-color:var(--purple);background:var(--purple);color:#fff;box-shadow:0 0 0 5px #e9e7ff}.workflow-step small{font-size:9px;font-weight:700;text-align:center}.detail-metadata{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:13px;gap:13px;padding:19px 0;border-top:1px solid #f0f1f6;border-bottom:1px solid #f0f1f6}.detail-metadata>div{display:flex;align-items:center;gap:9px;min-width:0}.metadata-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:31px;height:31px;border-radius:9px;background:#f3f4f8;color:var(--muted-strong)}.detail-metadata span:last-child{display:flex;flex-direction:column;min-width:0}.detail-metadata small{color:var(--muted);font-size:9px}.detail-metadata strong{margin-top:3px;overflow:hidden;color:var(--ink-strong);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.detail-notes{margin-top:24px}.detail-notes .section-header{margin-bottom:10px}.detail-notes p{margin:0;color:var(--muted-strong);font-size:11px;line-height:1.65}.muted-copy{color:var(--muted)!important}.detail-sidebar{display:grid;align-content:start;grid-gap:20px;gap:20px}.update-panel .input{margin-bottom:11px}.timeline{position:relative;margin-left:6px}.timeline-item{position:relative;display:flex;gap:12px;padding:0 0 22px 17px}.timeline-item:before{position:absolute;top:10px;bottom:0;left:3px;width:1px;background:#e9ebf3;content:""}.timeline-item:last-child:before{display:none}.timeline-dot{position:absolute;z-index:1;top:2px;left:-1px;width:9px;height:9px;border:2px solid var(--purple);border-radius:50%;background:#fff}.timeline-item>div{flex:1 1;min-width:0}.timeline-meta{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.timeline-meta strong{color:var(--ink-strong);font-size:10px}.timeline-meta small{color:var(--muted);font-size:9px}.timeline-item p{margin:6px 0 0;color:var(--muted-strong);font-size:10px;line-height:1.5}.timeline-item a{display:inline-block;margin-top:7px;color:var(--purple);font-size:9px;font-weight:700}.detail-loading{min-height:300px}.notification-summary{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px;padding:15px 17px;border:1px solid #dfdcff;border-radius:13px;background:#f3f1ff}.notification-summary>div{display:flex;align-items:center;gap:11px}.notification-summary-icon{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:12px;background:#e5e2ff;color:var(--purple)}.notification-summary strong{display:block;color:var(--ink-strong);font-size:12px}.notification-summary span:not(.notification-summary-icon){display:block;margin-top:3px;color:#77749b;font-size:10px}.notification-summary-date{color:#8b89ac;font-size:10px}.notifications-panel{padding:0}.notification-tabs{display:flex;gap:22px;padding:0 20px;border-bottom:1px solid #f0f1f6}.notification-tabs button{position:relative;padding:17px 0 13px;border:0;background:transparent;color:var(--muted);font-size:11px;font-weight:700}.notification-tabs button.active{color:var(--purple)}.notification-tabs button.active:after{position:absolute;right:0;bottom:-1px;left:0;height:2px;background:var(--purple);content:""}.notification-list{padding:3px 20px 8px}.notification-item{display:flex;align-items:flex-start;gap:12px;min-width:0;padding:17px 0}.notification-item:last-child{border-bottom:0}.notification-item.unread{background:linear-gradient(90deg,#fff,#faf9ff)}.notification-icon{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;width:34px;height:34px;border-radius:11px}.notification-update{background:#eaf3ff;color:var(--blue)}.notification-overdue{background:#fff0e4;color:var(--orange)}.notification-deadline{background:#f0edff;color:var(--purple)}.notification-copy strong{color:var(--ink-strong);font-size:11px}.notification-copy small{color:var(--muted);font-size:9px}.unread-dot{width:5px;height:5px;border-radius:50%;background:var(--purple)}.settings-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(270px,.8fr);grid-gap:20px;gap:20px}.settings-profile{min-width:0}.profile-preview{display:flex;align-items:center;gap:11px;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid #f0f1f6}.profile-preview>div{display:flex;flex:1 1;flex-direction:column;min-width:0}.profile-preview strong{color:var(--ink-strong);font-size:13px}.profile-preview span:not(.avatar){margin-top:4px;color:var(--muted);font-size:10px;text-transform:capitalize}.settings-side{display:grid;align-content:start;grid-gap:14px;gap:14px}.setting-card{position:relative}.setting-card-icon{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;margin-bottom:13px;border-radius:11px}.setting-card-icon.purple{background:#f0edff;color:var(--purple)}.setting-card-icon.blue{background:#eaf3ff;color:var(--blue)}.setting-card-icon.mint{background:#e4f8f2;color:var(--mint)}.setting-card h3{margin-bottom:5px;color:var(--ink-strong);font-size:13px}.setting-card p{margin-bottom:12px;color:var(--muted);font-size:10px;line-height:1.55}.setting-status{gap:5px;color:var(--mint)}.setting-status,.text-link{display:inline-flex;align-items:center;font-size:10px;font-weight:700}.text-link{gap:6px;color:var(--purple)}.login-page{display:grid;grid-template-columns:1.1fr .9fr;min-height:100vh;background:var(--canvas)}.login-brand-panel{position:relative;display:flex;flex-direction:column;justify-content:space-between;min-height:100vh;padding:35px clamp(34px,6vw,100px);overflow:hidden;background:radial-gradient(circle at 70% 22%,rgba(128,118,255,.25),transparent 27%),radial-gradient(circle at 15% 80%,rgba(42,185,154,.13),transparent 25%),var(--sidebar);color:#fff}.login-brand{display:flex;align-items:center;gap:11px;font-size:18px;font-weight:750}.login-pitch{position:relative;z-index:1;max-width:500px}.login-pitch h1{margin:15px 0 13px;font-size:clamp(2.2rem,5vw,4.1rem);line-height:.99;letter-spacing:-.07em}.login-pitch>p{max-width:440px;margin-bottom:32px;color:#aab4ca;font-size:14px;line-height:1.65}.login-feature-list{display:grid;grid-gap:15px;gap:15px}.login-feature-list>div{display:flex;align-items:center;gap:10px}.login-feature-list>div>span{display:inline-flex;align-items:center;justify-content:center;width:29px;height:29px;border-radius:9px;background:rgba(103,92,246,.25);color:#b6b0ff}.login-feature-list p{display:flex;flex-direction:column;gap:3px;margin:0}.login-feature-list strong{font-size:11px}.login-feature-list small{color:#8591aa;font-size:10px}.login-panel-footer{display:flex;justify-content:space-between;color:#667391;font-size:9px;letter-spacing:.07em;text-transform:uppercase}.login-form-panel{display:flex;flex-direction:column;justify-content:center;min-width:0;padding:40px clamp(28px,6vw,110px);background:#fff}.login-form-wrap{width:min(100%,360px);margin:0 auto}.login-mobile-footer,.mobile-login-logo{display:none}.login-heading{margin-bottom:26px}.login-heading h2{margin:0 0 7px;color:var(--ink-strong);font-size:25px;letter-spacing:-.05em}.login-heading p{margin:0;color:var(--muted);font-size:12px}.auth-form{display:grid;grid-gap:8px;gap:8px}.auth-form>label{margin-top:8px}.input-with-icon{display:flex;align-items:center;gap:9px;min-height:46px;padding:0 12px;border:1px solid var(--line-strong);border-radius:10px;color:#9aa5b7}.input-with-icon input{width:100%;padding:0;border:0;outline:0;color:var(--ink-strong);font-size:12px}.input-with-icon input::placeholder{color:#adb6c4}.auth-form .button{margin-top:15px;min-height:47px}.login-note{display:flex;align-items:center;justify-content:center;gap:5px;margin:21px 0 0;color:#9ba5b6;font-size:9px;text-align:center}.login-note svg{color:var(--mint)}.form-error{margin-top:9px}@media (max-width:1180px){.page-container{padding-right:28px;padding-left:28px}.task-list-desktop .task-row-grid,.task-table-heading{grid-template-columns:minmax(170px,1.4fr) minmax(100px,.8fr) 80px 90px 75px 20px}.dashboard-layout,.detail-layout,.report-layout{grid-template-columns:minmax(0,1fr)}.detail-sidebar{grid-template-columns:repeat(2,minmax(0,1fr))}.report-layout .breakdown-panel{order:-1}}@media (max-width:1024px) and (min-width:961px){.sidebar{width:240px;padding-right:14px;padding-left:14px}.main-content{width:calc(100% - 240px);margin-left:240px}.page-container{padding-right:24px;padding-left:24px}}@media (max-width:960px){.app-shell{display:block;width:100%;min-width:0}.sidebar{width:min(84vw,285px);max-width:calc(100vw - 24px);height:100vh;min-height:100vh;max-height:100dvh;overflow:hidden;padding:22px 16px;transform:translateX(-105%);visibility:hidden;transition:transform .2s ease,visibility .2s ease}.sidebar.is-open{transform:translateX(0);visibility:visible}.sidebar-close{display:inline-flex}.nav-backdrop{position:fixed;z-index:20;inset:0;display:block;border:0;background:rgba(15,23,42,.5)}.main-content{width:100%;height:100vh;margin-left:0;overflow-x:clip;overflow-y:auto}.mobile-topbar{position:-webkit-sticky;position:sticky;z-index:10;top:0;display:flex;align-items:center;justify-content:space-between;width:100%;min-width:0;height:62px;padding:0 20px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.menu-toggle,.mobile-bell{display:inline-flex;align-items:center;justify-content:center;position:relative;flex:0 0 auto;width:38px;height:38px;padding:0;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--muted-strong)}.mobile-bell{border:0;background:transparent}.mobile-bell span{position:absolute;top:1px;right:0;justify-content:center;width:15px;height:15px;border-radius:999px;background:var(--red);color:#fff;font-size:8px;font-weight:800}.mobile-bell span,.mobile-brand{display:inline-flex;align-items:center}.mobile-brand{gap:7px;min-width:0;color:var(--ink-strong);font-size:14px;font-weight:750}.mobile-brand .brand-mark{width:25px;height:25px;border-radius:8px}.page-container{padding:26px 20px 48px}.metric-grid,.task-summary-row{grid-template-columns:repeat(2,minmax(0,1fr))}.page-header{align-items:flex-start}.page-actions{padding-top:10px}.hero-strip{align-items:flex-start;flex-direction:column}.hero-progress{width:100%}.people-list,.people-table-heading{overflow-x:auto}.people-table-heading,.person-row{min-width:850px}.settings-layout{grid-template-columns:minmax(0,1fr)}.settings-side{grid-template-columns:repeat(3,minmax(0,1fr))}.login-page{grid-template-columns:1fr}.login-brand-panel{display:none}.login-form-panel{min-height:100vh}.mobile-login-logo{display:inline-flex;align-items:center;gap:8px;margin-bottom:55px;color:var(--ink-strong);font-size:17px;font-weight:750}.login-mobile-footer{display:block;margin-top:auto;padding-top:30px;color:#9ba5b6;font-size:9px;text-align:center}}@media (max-width:720px){.page-container{padding-right:16px;padding-left:16px}.page-header{display:block}.page-actions{justify-content:flex-start;padding-top:16px}.page-heading h1{font-size:30px}.panel{padding:16px}.task-list-desktop,.task-table-heading{display:none}.task-list-mobile{display:grid}.filter-bar{align-items:stretch}.search-box{flex-basis:100%}.filter-control{flex:1 1 125px}.filter-button{flex:0 0 auto}.report-filters .filter-control{flex-basis:110px}.detail-sidebar{grid-template-columns:minmax(0,1fr)}.detail-metadata{grid-template-columns:repeat(2,minmax(0,1fr))}.workflow{overflow-x:auto;padding-bottom:10px}.workflow-steps{min-width:560px}.workflow-line{min-width:500px}.notification-summary{align-items:flex-start;flex-direction:column}.notification-summary-date{padding-left:49px}.notification-action{align-self:flex-start;margin-top:2px}.notification-copy p{white-space:normal}.form-grid-two,.settings-side{grid-template-columns:minmax(0,1fr)}.field-wide{grid-column:auto}.modal-backdrop{align-items:flex-end;padding:0}.modal{max-height:92vh;border-radius:19px 19px 0 0;padding:18px 16px 24px}.modal-actions{position:-webkit-sticky;position:sticky;bottom:-24px;margin-right:-16px;margin-left:-16px;padding:15px 16px 0;background:#fff}.dashboard-task-row{display:block;padding:16px 0}.dashboard-task-row:first-child{padding-top:10px}.dashboard-task-meta{justify-content:flex-start;gap:9px 10px;margin-top:12px}.dashboard-task-assignee,.dashboard-task-due{flex:0 0 100%}.task-row{align-items:flex-start;flex-direction:column}.task-row-meta{justify-content:flex-start;padding-left:39px}.task-title{white-space:normal}.activity-item{align-items:flex-start}.login-form-panel{justify-content:flex-start;padding:25px 22px}.mobile-login-logo{margin-bottom:75px}.login-heading h2{font-size:23px}.non-working-day-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.non-working-day-preview-item{align-items:flex-start;flex-direction:column}.non-working-day-preview-item>div:last-child{align-items:flex-start}.non-working-day-preview-heading{align-items:stretch;flex-direction:column}.non-working-day-preview-heading .field{flex-basis:auto}.holiday-row{align-items:flex-start;flex-wrap:wrap}.holiday-row>div:first-child{flex-basis:calc(100% - 12px)}.holiday-actions{margin-left:auto}.configured-non-working-day-row{align-items:flex-start;flex-direction:column}.configured-non-working-day-row .holiday-actions{margin-left:0}}@media (max-width:440px){.metric-grid,.task-summary-row{grid-template-columns:minmax(0,1fr)}.metric-card{min-height:115px}.metric-value{margin-top:12px}.hero-strip{padding:20px}.page-actions .button{flex:1 1 auto}.section-header{display:block}.section-header>.button{margin-top:12px}.detail-topline{align-items:flex-start;flex-direction:column}.detail-metadata{grid-template-columns:minmax(0,1fr)}.modal-actions .button{flex:1 1}.profile-preview{align-items:flex-start;flex-wrap:wrap}.profile-preview .button{width:100%;margin-left:65px}.notification-item{gap:9px}.notification-action{display:none}.notification-list,.notification-tabs{padding-right:14px;padding-left:14px}.pulse-stats{gap:5px}.pulse-stats strong{font-size:16px}}@media print{.button,.filter-bar,.mobile-topbar,.page-actions,.sidebar{display:none!important}.app-shell{display:block}.app-shell,.main-content{height:auto;overflow:visible}.main-content{width:100%;margin-left:0}.page-container{padding:20px}.metric-card,.panel{box-shadow:none}}@media (max-width:720px){.overview-metrics{gap:12px}.overview-metrics .metric-card{min-height:124px;padding:14px}.overview-metrics .metric-icon{width:32px;height:32px;border-radius:10px}.overview-metrics .metric-value{margin-top:12px;font-size:30px}.overview-metrics .metric-label{margin-top:2px;font-size:12px}.metric-grid-four{gap:12px}.metric-grid-four .metric-card{min-height:124px;padding:14px}.metric-grid-four .metric-icon{width:32px;height:32px;border-radius:10px}.metric-grid-four .metric-value{margin-top:12px;font-size:30px}.metric-grid-four .metric-label{margin-top:2px;font-size:12px}.checklist-summary{gap:12px}.checklist-summary .inline-stat{min-height:74px;padding:12px}.checklist-summary .inline-stat-icon{width:30px;height:30px}.checklist-summary .inline-stat strong{font-size:20px}.checklist-summary .inline-stat span:not(.inline-stat-icon){font-size:10px}}@media (max-width:440px){.checklist-summary,.metric-grid-four,.overview-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}.work-type-control{flex:0 1 auto}.work-type-toggle{display:inline-flex;min-height:38px;padding:3px;border:1px solid var(--line);border-radius:9px;background:#fff}.work-type-toggle button{min-height:30px;padding:0 10px;border:0;border-radius:6px;background:transparent;color:var(--muted-strong);font-size:10px;font-weight:680;white-space:nowrap}.work-type-toggle button:hover{color:var(--purple-dark)}.work-type-toggle button.active{background:#eeedff;color:var(--purple-dark);box-shadow:0 1px 3px rgba(18,31,58,.08)}.work-type-toggle button:focus-visible{outline:2px solid rgba(103,92,246,.38);outline-offset:1px}@media (max-width:720px){.work-type-control{flex-basis:100%}.work-type-toggle{display:flex}.work-type-toggle button{flex:1 1}}.task-source-badge{display:inline-flex;align-items:center;gap:3px;color:var(--purple-dark);font-weight:700}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.non-working-day-header-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}.non-working-day-header-actions .button-count{min-width:18px;height:18px;margin-left:1px;background:#f0edff;color:var(--purple-dark)}.today-leave-count{min-height:21px;padding:0 8px;border-radius:999px;background:#f0edff;color:var(--purple-dark)!important;font-size:10px!important;font-weight:750}.today-leave-count,.today-leave-date{display:inline-flex;align-items:center}.today-leave-date{gap:6px;color:var(--muted);font-size:10px;white-space:nowrap}.today-leave-date svg{color:var(--purple)}.employee-leave-person{display:flex;align-items:center;gap:10px;min-width:0}.employee-leave-avatar{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid #ddd9ff;border-radius:50%;background:#f0edff;color:var(--purple-dark);font-size:10px;font-weight:800;letter-spacing:.02em}.employee-leave-today-row .employee-leave-copy{gap:3px}.employee-leave-today-row .employee-leave-copy strong{font-size:11px}.employee-leave-today-row .employee-leave-copy span{font-size:9px}.employee-leave-type{justify-self:end;padding:5px 8px;font-size:9px}.employee-leave-today-row .employee-leave-actions{justify-content:flex-end}.employee-leave-empty{display:flex;align-items:center;gap:11px;min-height:70px;padding:14px;border:1px dashed #d9d6ed;border-radius:11px;background:#fbfaff}.employee-leave-empty-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:32px;height:32px;border-radius:10px;background:#f0edff;color:var(--purple)}.employee-leave-empty>div{display:flex;flex-direction:column;gap:3px;min-width:0}.employee-leave-empty strong{color:var(--ink-strong);font-size:11px}.employee-leave-empty span:not(.employee-leave-empty-icon){color:var(--muted);font-size:10px}.earlier-leave-toolbar{display:grid;grid-gap:10px;gap:10px;margin-bottom:18px;padding:12px;border:1px solid #eff1f6;border-radius:12px;background:var(--surface-soft)}.earlier-leave-search{display:flex;align-items:center;gap:8px;min-height:38px;padding:0 11px;border:1px solid var(--line);border-radius:9px;background:#fff;color:#9aa5b6}.earlier-leave-search input{width:100%;padding:0;border:0;outline:0;background:transparent;color:var(--ink-strong);font-size:11px}.earlier-leave-search:focus-within{border-color:#a9a2ff;box-shadow:0 0 0 3px rgba(103,92,246,.11)}.earlier-leave-date-filter{display:flex;align-items:flex-end;flex-wrap:wrap;gap:8px}.earlier-leave-date-filter label{display:flex;flex:1 1 145px;flex-direction:column;gap:5px;color:var(--muted);font-size:9px;font-weight:700}.earlier-leave-date-filter .input{min-height:36px;font-size:10px}.earlier-leave-date-filter .button{flex:0 0 auto}.earlier-leave-summary{display:flex;align-items:baseline;gap:8px;margin-bottom:10px}.earlier-leave-summary strong{color:var(--ink-strong);font-size:13px}.earlier-leave-summary strong span{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;margin-left:4px;padding:0 6px;border-radius:999px;background:#f0edff;color:var(--purple-dark);font-size:10px}.earlier-leave-summary small{color:var(--muted);font-size:9px}.earlier-leave-table{min-width:0}.earlier-leave-row,.earlier-leave-table-heading{display:grid;grid-template-columns:minmax(130px,1.45fr) minmax(84px,1fr) minmax(84px,1fr) 42px minmax(90px,1fr) auto;align-items:center;grid-gap:10px;gap:10px}.earlier-leave-table-heading{padding:0 11px 9px;color:#a0aabc;font-size:9px;font-weight:750;letter-spacing:.05em;text-transform:uppercase}.earlier-leave-table-body{display:grid;grid-gap:7px;gap:7px}.earlier-leave-row{min-height:55px;padding:9px 11px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--muted-strong);font-size:10px}.earlier-leave-row>span{min-width:0}.earlier-leave-row:hover{border-color:#c9c4ff;box-shadow:0 6px 16px rgba(55,45,145,.06)}.earlier-leave-employee{display:flex;align-items:center;gap:8px;min-width:0}.earlier-leave-employee strong{min-width:0;overflow:hidden;color:var(--ink-strong);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.earlier-leave-employee .employee-leave-avatar{width:27px;height:27px;font-size:9px}.earlier-leave-type{color:var(--blue)!important;font-size:9px;font-weight:700}.earlier-leave-actions{display:flex;justify-content:flex-end;gap:5px;min-width:max-content}.earlier-leave-actions .button{min-height:31px;padding:0 8px;font-size:10px}.earlier-leave-view-all{display:flex;margin:13px auto 0}.earlier-leave-view-all span{color:var(--muted)}.earlier-leave-empty{display:flex;align-items:center;flex-direction:column;gap:5px;min-height:130px;padding:28px 12px;border:1px dashed #d9d6ed;border-radius:11px;background:#fbfaff;text-align:center}.earlier-leave-empty svg{margin-bottom:2px;color:var(--purple)}.earlier-leave-empty strong{color:var(--ink-strong);font-size:11px}.earlier-leave-empty span{color:var(--muted);font-size:10px}@media (max-width:720px){.non-working-day-header-actions{justify-content:flex-start}.employee-leave-today-row{grid-template-columns:minmax(0,1fr) auto}.employee-leave-today-row .employee-leave-actions{grid-column:1/-1;justify-content:flex-end;padding-top:2px}.earlier-leave-table-heading{display:none}.earlier-leave-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 12px;padding:12px}.earlier-leave-row>span{display:flex;flex-direction:column;gap:3px}.earlier-leave-row>span:before{color:#a0aabc;content:attr(data-label);font-size:8px;font-weight:750;letter-spacing:.05em;text-transform:uppercase}.earlier-leave-employee{grid-column:1/-1}.earlier-leave-type{align-items:flex-start}.earlier-leave-actions{grid-column:1/-1;justify-content:flex-start;padding-top:2px}}@media (max-width:440px){.non-working-day-header-actions .button{flex:1 1 auto}.employee-leave-list-header{align-items:flex-start;flex-direction:column;gap:8px}.employee-leave-today-row{grid-template-columns:minmax(0,1fr)}.employee-leave-today-row .employee-leave-type{grid-column:1;justify-self:start}.employee-leave-today-row .employee-leave-actions{grid-column:1;justify-content:flex-start}.earlier-leave-date-filter label{flex-basis:100%}.earlier-leave-date-filter .button{width:100%}}.task-list-desktop .task-row-grid,.task-table-heading{grid-template-columns:minmax(180px,1.5fr) minmax(110px,.85fr) minmax(80px,.75fr) minmax(90px,.95fr) minmax(70px,.85fr) minmax(84px,.75fr)}.task-row-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:7px;min-width:0}.row-action-delete{padding:2px;border:0;background:transparent;cursor:pointer}.row-action-delete:focus-visible,.row-action-delete:hover{color:var(--red);outline:none}.mobile-task-card-footer .button{flex:0 0 auto}@media (max-width:1180px){.task-list-desktop .task-row-grid,.task-table-heading{grid-template-columns:minmax(170px,1.4fr) minmax(100px,.8fr) 80px 90px 75px minmax(84px,.75fr)}}.task-check-button{padding:0;border:0;cursor:pointer}.task-check-button:disabled{cursor:wait;opacity:.6}.checklist-days>span{display:inline-flex;flex-direction:column;gap:2px}.checklist-days small{color:var(--muted);font-size:9px}.notification-assignment{background:#e4f8f2;color:var(--mint)}.notification-checklist{background:#f0edff;color:var(--purple)}.notification-completed{background:#e4f8f2;color:var(--mint)}.notification-summary-actions{display:flex;align-items:center;gap:12px}.notification-pagination{display:flex;align-items:center;justify-content:center;gap:14px;padding:16px 20px 19px;border-top:1px solid #f0f1f6;color:var(--muted);font-size:10px}.notification-action{display:inline-flex;align-items:center;color:#a6afc0}.page-header-tools{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex:0 1 auto;min-width:0}.notification-bell{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:36px;height:36px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--muted-strong);box-shadow:var(--shadow-soft)}.notification-bell:focus-visible,.notification-bell:hover{border-color:#c9c5ff;color:var(--purple-dark);outline:none}.notification-bell-mobile{display:none}.notification-dot{position:absolute;top:5px;right:5px;width:7px;height:7px;border:2px solid var(--surface);border-radius:50%;background:var(--red)}.notification-item{width:100%;border:0;border-bottom:1px solid #f0f1f6;border-radius:0;background:transparent;color:inherit;text-align:left;cursor:pointer;transition:background .18s ease,box-shadow .18s ease}.notification-item:focus-visible,.notification-item:hover{background:#f8f7ff;outline:none}.notification-item:focus-visible{box-shadow:inset 0 0 0 2px rgba(103,92,246,.24)}.notification-item:disabled{cursor:wait;opacity:1}.notification-copy{display:flex;flex-direction:column;flex:1 1;min-width:0}.notification-copy>span:first-child{display:flex;align-items:center;gap:6px}.notification-copy>span:nth-child(2){margin:5px 0 4px;overflow:hidden;color:var(--muted-strong);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.checklist-loading{display:grid;grid-gap:12px;gap:12px;min-height:260px;align-content:center}.checklist-loading span{display:block;height:48px;border-radius:10px}.checklist-panel{margin-bottom:20px}.checklist-table-scroll{overflow-x:auto}.checklist-table-heading,.checklist-template-row{display:grid;grid-template-columns:28px minmax(125px,.8fr) minmax(140px,1fr) minmax(220px,1.5fr) minmax(125px,1fr) 80px 32px;align-items:center;grid-gap:12px;gap:12px;min-width:825px}.checklist-table-heading{padding:0 12px 10px;color:#a0aabc;font-size:9px;font-weight:750;letter-spacing:.05em;text-transform:uppercase}.checklist-template-row{position:relative;padding:14px 0;border-top:1px solid #f0f1f6}.checklist-employee-id,.checklist-employee-name{min-width:0}.checklist-employee-id,.checklist-employee-id small{display:flex;flex-direction:column}.checklist-employee-id strong,.checklist-employee-name{overflow:hidden;color:var(--ink-strong);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.checklist-employee-id small{margin-top:4px;color:var(--muted);font-size:9px}.checklist-employee-id small,.checklist-task-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.checklist-task-name{color:var(--ink-strong);font-size:11px;font-weight:650}.task-tooltip-trigger{min-width:0}.task-tooltip-trigger:focus-visible{outline:2px solid rgba(103,92,246,.35);outline-offset:3px;border-radius:3px}.task-title-tooltip{display:block;flex:1 1 auto;min-width:0;overflow:hidden}.task-tooltip{position:fixed;z-index:1000;width:max-content;padding:9px 11px;border:1px solid #343c52;border-radius:9px;background:var(--ink-strong);box-shadow:0 12px 30px rgba(13,21,38,.2);color:#fff;font-size:11px;font-weight:500;line-height:1.45;overflow-wrap:anywhere;pointer-events:none;white-space:normal}.task-tooltip-above{transform:translateY(-100%)}.checklist-days{display:inline-flex;align-items:center;gap:5px;color:var(--muted-strong);font-size:10px;white-space:nowrap}.checklist-actions{position:relative;justify-self:end}.checklist-actions summary{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;color:var(--muted);cursor:pointer;list-style:none}.checklist-actions summary::-webkit-details-marker{display:none}.checklist-actions summary:hover,.checklist-actions[open] summary{background:#f1efff;color:var(--purple)}.checklist-actions-menu{position:absolute;z-index:5;top:32px;right:0;display:grid;width:142px;padding:5px;border:1px solid var(--line);border-radius:10px;background:#fff;box-shadow:var(--shadow)}.checklist-actions-menu button{display:flex;align-items:center;gap:8px;padding:8px 9px;border:0;border-radius:7px;background:transparent;color:var(--muted-strong);font-size:10px;text-align:left}.checklist-actions-menu button:hover{background:#f5f4ff;color:var(--purple-dark)}.checklist-selection,.checklist-selection-header{display:flex;align-items:center;justify-content:center}.checklist-selection input,.checklist-selection-header input{width:15px;height:15px;accent-color:var(--purple)}.checklist-bulk-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:14px;padding:10px 12px;border:1px solid #e4e0ff;border-radius:10px;background:#f7f5ff;color:var(--muted-strong);font-size:11px}.checklist-bulk-toolbar strong{margin-right:auto;color:var(--ink-strong)}.import-summary{display:flex;flex-wrap:wrap;gap:12px;margin:14px 0;padding:11px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface-soft);color:var(--muted);font-size:10px}.import-summary strong{color:var(--ink-strong)}.import-preview-table{max-height:310px;overflow:auto;border:1px solid var(--line);border-radius:10px}.import-preview-row{display:grid;grid-template-columns:1.1fr 1.2fr 2fr 1fr 70px 1fr;grid-gap:10px;gap:10px;min-width:760px;padding:9px 10px;border-top:1px solid #f0f1f6;color:var(--muted-strong);font-size:10px}.import-preview-row:first-child{border-top:0}.import-preview-row>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.import-preview-header{position:-webkit-sticky;position:sticky;top:0;z-index:1;border-top:0;background:var(--surface-soft);color:#a0aabc;font-size:9px;font-weight:750;letter-spacing:.05em;text-transform:uppercase}.import-status{font-weight:700}.import-status-ready{color:#178b70}.import-status-duplicate{color:#b77b19}.import-status-employee-not-found,.import-status-invalid-task,.import-status-invalid-time,.import-status-missing-task,.import-status-unsupported-recurrence{color:#c94159}.import-result{display:grid;grid-gap:10px;gap:10px}.import-result-stat{display:flex;justify-content:space-between;gap:10px;padding:12px;border:1px solid var(--line);border-radius:10px}.import-result-stat strong{color:var(--ink-strong);font-size:18px}.import-result-stat span{color:var(--muted);font-size:10px;align-self:center}.import-error-list{padding:10px 12px;border:1px solid #ffd9df;border-radius:9px;color:#c94159;font-size:10px;line-height:1.6}.import-error-list summary{margin-bottom:5px;cursor:pointer;font-weight:700}.bulk-field-list{display:grid;grid-gap:10px;gap:10px}.bulk-field-list>.input,.bulk-frequency-fields{margin-left:25px;width:calc(100% - 25px)}.bulk-frequency-fields{display:grid;grid-gap:9px;gap:9px}.bulk-field-list select[multiple]{min-height:110px;padding:8px 10px}.bulk-review{display:grid;grid-gap:14px;gap:14px;color:var(--ink-strong);font-size:12px}.bulk-review-list{display:grid;grid-gap:7px;gap:7px}.bulk-review-list div{display:flex;justify-content:space-between;gap:10px;padding:9px 10px;border-radius:8px;background:var(--surface-soft);color:var(--muted);font-size:10px}.bulk-review-list strong{color:var(--ink-strong);text-align:right}.checklist-items-table{overflow-x:auto}.checklist-item-row{display:grid;grid-template-columns:110px 170px minmax(220px,1fr) 90px;align-items:center;grid-gap:12px;gap:12px;min-width:620px;padding:13px 0;border-top:1px solid #f0f1f6;color:var(--muted-strong);font-size:10px}.checklist-item-header{padding:0 0 10px;border-top:0;color:#a0aabc;font-size:9px;font-weight:750;letter-spacing:.05em;text-transform:uppercase}.checklist-item-row strong{overflow:hidden;color:var(--ink-strong);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.checklist-doer-panel{margin-bottom:20px}.checklist-item-list{display:grid;grid-gap:9px;gap:9px}.checklist-item-card{display:flex;align-items:center;gap:11px;min-width:0;padding:14px;border:1px solid var(--line);border-radius:12px;background:#fff;cursor:pointer;transition:border-color .18s ease,background .18s ease}.checklist-item-card:hover{border-color:#c8c3ff;background:#fcfbff}.checklist-item-card>input{position:absolute;width:1px;height:1px;opacity:0}.checklist-item-check{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid #d9ddea;border-radius:10px;color:#99a4b7}.checklist-item-card.is-complete{background:#f4fbf8;border-color:#d8f0e7}.checklist-item-card.is-complete .checklist-item-check{border-color:#9cdec9;background:#e5f8f2;color:var(--mint)}.checklist-item-card.is-overdue .checklist-item-check{border-color:#f1c5ce;color:var(--red)}.checklist-item-copy{display:flex;flex:1 1;flex-direction:column;min-width:0}.checklist-item-copy strong{overflow:hidden;color:var(--ink-strong);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.checklist-item-copy small{margin-top:4px;color:var(--muted);font-size:10px}.checklist-item-card.is-complete .checklist-item-copy strong{text-decoration:line-through;color:var(--muted-strong)}@media (max-width:720px){.checklist-item-card{align-items:flex-start}.checklist-item-card .badge{margin-left:auto}}@media (max-width:960px){.notification-bell-mobile{display:inline-flex;width:38px;height:38px;border-color:transparent;background:transparent;box-shadow:none}.page-header-tools>.notification-bell{display:none}.mobile-brand{margin-right:auto;margin-left:12px}}@media (max-width:720px){.notification-copy>span:nth-child(2){overflow:visible;white-space:normal}}.attachment-list{display:grid;grid-gap:8px;gap:8px}.attachment-item{display:flex;align-items:center;gap:8px;min-width:0;color:var(--muted-strong);font-size:11px}.attachment-item svg{flex:0 0 auto;color:var(--purple)}.attachment-item a,.attachment-item span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-item a{color:var(--purple);font-weight:700}.completion-panel .inline-alert{margin-top:10px}.access-note{display:block;margin-top:5px;color:var(--muted);font-size:9px}.password-input-wrap{position:relative;display:flex;align-items:center}.password-input-wrap .input{padding-right:54px}.password-toggle{position:absolute;right:8px;min-height:28px;padding:0 6px;border:0;border-radius:6px;background:transparent;color:var(--purple);font-size:10px;font-weight:750}.password-toggle:focus-visible,.password-toggle:hover{background:#f1efff;outline:none}.field-help{display:block;margin-top:5px;color:var(--muted);font-size:9px;line-height:1.45}.password-change-page{display:grid;min-height:100vh;place-items:center;padding:24px;background:radial-gradient(circle at 20% 15%,rgba(109,98,246,.12),transparent 30%),var(--canvas)}.password-change-card{width:min(100%,430px);padding:36px;border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:var(--shadow)}.password-change-card .mobile-login-logo{display:inline-flex;align-items:center;gap:8px;margin-bottom:48px;color:var(--ink-strong);font-size:17px;font-weight:750}.password-change-icon{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;margin-bottom:18px;border-radius:12px;background:#efedff;color:var(--purple)}.password-change-card h1{margin:8px 0 9px;color:var(--ink-strong);font-size:28px;letter-spacing:-.05em}.password-change-intro{margin:0 0 24px;color:var(--muted);font-size:12px;line-height:1.65}@media (max-width:520px){.password-change-page{align-items:start;padding:16px}.password-change-card{padding:24px 18px}.password-change-card .mobile-login-logo{margin-bottom:38px}}.login-simple{grid-template-columns:minmax(0,1fr);min-height:100svh;min-height:100dvh}.login-simple .login-form-panel{display:grid;min-height:100svh;min-height:100dvh;place-items:center;padding:24px;background:transparent}.login-simple .login-form-wrap{width:min(100%,420px);margin:0 auto;padding:32px;border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:var(--shadow)}.login-simple .login-brand{margin-bottom:48px;color:var(--ink-strong)}.login-simple .login-brand .brand-mark{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:9px;background:var(--purple);color:#fff;font-size:14px;font-weight:800}.login-simple .login-heading{margin-bottom:24px}.login-simple .login-heading h1{margin:0 0 8px;color:var(--ink-strong);font-size:25px;line-height:1.1;letter-spacing:-.045em}.login-simple .login-heading p{display:block;margin:0;color:var(--muted);font-size:12px}.login-simple .auth-form{display:grid;grid-gap:8px;gap:8px}.login-simple .auth-form>label{margin-top:8px;color:var(--muted-strong);font-size:10px;font-weight:700}.login-simple .auth-form .input{min-height:44px}.login-simple .auth-form .button{min-height:44px;margin-top:14px}@media (max-width:520px){.login-simple .login-form-panel{padding:16px}.login-simple .login-form-wrap{padding:24px 20px}.login-simple .login-brand{margin-bottom:40px}}.skeleton-shimmer{background:linear-gradient(90deg,#f1f3f8 25%,#fafbfc 45%,#f1f3f8 65%);background-size:300% 100%;animation:shimmer 1.4s infinite}.metric-card-loading .metric-icon{background:#f1f3f8}.metric-value-placeholder{display:block;width:48px;height:29px;border-radius:6px}.metric-label-placeholder{display:block;width:96px;height:12px;border-radius:4px}.overview-intro-loading{min-height:58px}.overview-greeting-placeholder{display:block;width:170px;height:18px;border-radius:5px}.overview-subtitle-placeholder{display:block;width:260px;height:16px;border-radius:5px}.overview-loading-list{display:grid;align-content:center;grid-gap:12px;gap:12px;min-height:175px}.overview-loading-list span{display:block;height:49px;border-radius:10px}.dashboard-task-list{margin:4px 0 0;padding:0;list-style:none}.dashboard-task-row{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:center;grid-gap:24px;gap:24px;min-width:0;padding:17px 0;border-top:1px solid #f0f1f6}.dashboard-task-row:first-child{padding-top:10px;border-top:0}.dashboard-task-meta,.dashboard-task-primary{min-width:0}.dashboard-task-title{display:block;color:var(--ink-strong);font-size:13px;font-weight:750;line-height:1.4;overflow-wrap:anywhere}.dashboard-task-title:hover{color:var(--purple-dark)}.dashboard-task-category{display:block;margin-top:6px;color:var(--muted);font-size:10px;line-height:1.35}.dashboard-task-meta{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:9px 12px}.dashboard-task-assignee{display:inline-flex;align-items:baseline;gap:5px;min-width:0;color:var(--muted);font-size:10px}.dashboard-task-assignee strong{max-width:120px;overflow:hidden;font-weight:700;text-overflow:ellipsis}.dashboard-task-assignee strong,.dashboard-task-due{color:var(--muted-strong);font-size:10px;white-space:nowrap}.dashboard-task-due{font-weight:650}.dashboard-task-due.overdue{color:var(--red);font-weight:750}.automatic-status-panel{display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin:22px 0 30px;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:var(--surface-soft)}.automatic-status-label{color:var(--muted);font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.automatic-status-panel p{flex:1 1 100%;margin:0;color:var(--muted);font-size:10px;line-height:1.45}.inline-stat-loading .inline-stat-icon{background:#f1f3f8}.summary-value-placeholder{display:block;width:38px;height:19px;border-radius:5px}.summary-label-placeholder{display:block;width:76px;height:10px;margin-top:4px;border-radius:4px}.data-error-state,.task-loading-list{min-height:260px;align-content:center}.data-error-state{display:grid;place-items:center;grid-gap:8px;gap:8px;color:var(--muted);font-size:11px;text-align:center}.data-error-state svg{color:var(--red)}.data-error-state strong{color:var(--ink-strong);font-size:14px}.login-form-link a,.login-note a{color:var(--purple-dark);font-weight:700}.login-form-link{margin-top:3px;text-align:right;font-size:10px}.password-reset-confirmation{display:grid;grid-gap:5px;gap:5px;margin-bottom:16px;padding:11px 12px;border:1px solid #e4e1ff;border-radius:10px;background:#f7f5ff;color:var(--muted-strong);font-size:10px;line-height:1.45}.password-reset-confirmation strong{color:var(--ink-strong);font-size:11px}.mis-report,.report-side-stack{display:grid;grid-gap:20px;gap:20px}.report-side-stack{align-content:start;min-width:0}.report-detail-panel{min-width:0}.report-detail-table{min-width:980px}.report-detail-link{color:var(--ink-strong);font-weight:700}.report-detail-link:hover{color:var(--purple-dark)}.report-type-badge{display:inline-flex;align-items:center;min-height:22px;padding:0 7px;border-radius:7px;font-size:9px;font-weight:750}.report-type-badge.task{background:#eef4ff;color:#4f78b8}.report-type-badge.checklist{background:#f1efff;color:var(--purple-dark)}.work-type-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:8px;gap:8px}.work-type-grid>div{display:grid;grid-gap:7px;gap:7px;padding:12px 10px;border:1px solid var(--line);border-radius:10px;background:var(--surface-soft)}.overall-performance-list span,.work-type-grid span{color:var(--muted);font-size:10px}.work-type-grid strong{color:var(--ink-strong);font-size:20px}.overall-performance-list{display:grid;grid-gap:11px;gap:11px}.overall-performance-list>div{display:flex;align-items:center;justify-content:space-between;gap:12px}.overall-performance-list strong{color:var(--ink-strong);font-size:12px}.report-print-summary,.report-print-title{display:none}.employee-performance-row{cursor:pointer;transition:background .18s ease}.employee-performance-row:hover td{background:#faf9ff}.employee-performance-row:focus-visible td{outline:2px solid rgba(103,92,246,.32);outline-offset:-2px}.employee-performance-row.is-selected td{background:#f2f0ff;border-bottom-color:#ded9ff}.employee-performance-row.is-selected td strong{color:var(--purple-dark)}.selected-employee-context{display:inline-flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:9px;color:var(--muted-strong);font-size:10px;font-weight:600}.selected-employee-context strong{color:var(--ink-strong)}.selected-employee-context.muted{color:var(--muted);font-weight:500}@media (max-width:720px){.work-type-grid{grid-template-columns:repeat(3,minmax(82px,1fr))}.report-detail-table{min-width:980px}.selected-employee-context{justify-content:flex-start;margin-top:10px}}.employee-leave-reason{display:flex;align-items:center}.employee-leave-list-header{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:2px 0 12px}.employee-leave-list-header>div{display:flex;align-items:baseline;gap:8px}.employee-leave-list-header h3{margin:0;color:var(--ink-strong);font-size:13px;letter-spacing:-.02em}.employee-leave-list-header span{color:var(--muted);font-size:10px}.employee-leave-list{display:grid;grid-gap:9px;gap:9px}.employee-leave-row{display:grid;grid-template-columns:78px minmax(0,1fr) auto;align-items:center;grid-gap:14px;gap:14px;padding:11px;border:1px solid var(--line);border-radius:12px;background:#fff;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.employee-leave-row:hover{border-color:#c9c4ff;box-shadow:0 8px 18px rgba(55,45,145,.07);transform:translateY(-1px)}.employee-leave-date-badge{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:66px;padding:7px 6px;border:1px solid #e2defd;border-radius:10px;background:#f7f5ff;color:var(--purple-dark);text-align:center}.employee-leave-date-badge strong{color:var(--ink-strong);font-size:21px;line-height:1;letter-spacing:-.04em}.employee-leave-date-badge span{margin-top:3px;color:var(--purple);font-size:9px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.employee-leave-date-badge small{margin-top:5px;color:var(--muted);font-size:8px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.employee-leave-copy{display:flex;min-width:0;flex-direction:column;gap:4px}.employee-leave-copy strong{overflow:hidden;color:var(--ink-strong);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.employee-leave-copy span{color:var(--muted);font-size:10px}.employee-leave-actions{display:flex;flex:0 0 auto;gap:6px}@media (max-width:720px){.employee-leave-row{grid-template-columns:68px minmax(0,1fr);gap:11px}.employee-leave-actions{grid-column:2;flex-wrap:wrap}.employee-leave-date-badge{min-height:62px}}@media print{.report-print-title{display:block;color:#111827;font-size:22px;font-weight:800;letter-spacing:.04em}.report-print-summary{display:flex;flex-wrap:wrap;gap:8px 18px;color:#4b5563;font-size:10px}.mis-report{gap:14px}.report-layout{grid-template-columns:minmax(0,1.35fr) minmax(230px,.65fr);gap:14px}.report-side-stack{gap:14px}.report-detail-panel{page-break-before:auto;break-before:auto}.report-table td,.report-table th{padding:7px 6px;font-size:9px}}@media (max-width:720px){.page-header-tools{justify-content:flex-start}}.employee-leave-list-header{align-items:center;margin:4px 0 12px}.employee-leave-list-header>div{gap:9px}.employee-leave-list-header h3{font-size:14px}.employee-leave-today-list{gap:7px}.employee-leave-today-row{grid-template-columns:minmax(0,1fr) auto auto;min-height:62px;padding:10px 12px;border-radius:11px}.employee-leave-today-row:hover{transform:none}@media (max-width:720px){.employee-leave-today-row{grid-template-columns:minmax(0,1fr) auto}.employee-leave-today-row .employee-leave-actions{grid-column:1/-1;justify-content:flex-end;padding-top:2px}}@media (max-width:440px){.employee-leave-list-header{align-items:flex-start;flex-direction:column;gap:8px}.employee-leave-today-row{grid-template-columns:minmax(0,1fr)}.employee-leave-today-row .employee-leave-type{grid-column:1;justify-self:start}.employee-leave-today-row .employee-leave-actions{grid-column:1;justify-content:flex-start}}