@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&display=swap";:root{font-family:Inter,Segoe UI,Arial,sans-serif;color:#24243b;background:#f6f7fb;font-synthesis:none;--ink: #24243b;--muted: #3f4251;--subtle: #515565;--line: #e7e8ef;--surface: #ffffff;--canvas: #f6f7fb;--primary: #6f68b3;--primary-dark: #575099;--primary-soft: #efedf9;--lavender: #e8e4f6;--mint: #deeee8;--sand: #fbefcd;--blush: #f6e1e6;--blue: #dfeaf7;--shadow: 0 2px 4px rgba(29, 32, 53, .03), 0 12px 32px rgba(29, 32, 53, .055);--radius: 16px}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{min-width:1120px}button,input,select,textarea{font:inherit}button{color:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}h1,h2,h3,h4,p{margin:0}button{border:0;background:none;cursor:pointer}input,select,textarea{color:var(--ink)}input::placeholder,textarea::placeholder{color:#adb1bf}.app-loader{min-height:100vh;display:flex;align-items:center;justify-content:center;gap:14px;color:var(--muted);background:var(--canvas)}.brand-mark{width:38px;height:38px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(145deg,#7b74bf,#5f579f);color:#fff;box-shadow:0 7px 18px #5b539d40;flex:0 0 auto}.eyebrow{display:block;color:var(--primary);font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;margin-bottom:7px}.eyebrow.light{color:#d9d5f4}.login-page{min-height:100vh;display:grid;grid-template-columns:1.08fr .92fr;background:#fff}.login-showcase{position:relative;min-height:100vh;overflow:hidden;color:#fff;padding:40px 64px;background:radial-gradient(circle at 18% 12%,rgba(255,255,255,.09),transparent 30%),linear-gradient(145deg,#38345f,#5d5796 56%,#817ab9);display:flex;flex-direction:column}.login-showcase:before,.login-showcase:after{content:"";position:absolute;border:1px solid rgba(255,255,255,.08);border-radius:50%}.login-showcase:before{width:470px;height:470px;left:-260px;bottom:-160px}.login-showcase:after{width:610px;height:610px;right:-390px;top:-260px}.login-brand{display:flex;align-items:center;gap:12px;font-size:19px;position:relative;z-index:2}.login-brand .brand-mark{background:#ffffff29;box-shadow:none}.showcase-copy{max-width:640px;margin-top:11vh;position:relative;z-index:2}.showcase-copy h1{font-size:clamp(38px,4vw,58px);line-height:1.12;letter-spacing:-.04em;font-weight:500;max-width:620px}.showcase-copy>p{max-width:560px;font-size:16px;line-height:1.75;color:#ffffffb8;margin-top:22px}.showcase-points{display:flex;flex-wrap:wrap;gap:11px 25px;margin-top:26px;color:#ffffffe0;font-size:13px}.showcase-points span{display:inline-flex;align-items:center;gap:7px}.showcase-points svg{color:#c9e9dc}.login-visual{width:min(620px,90%);margin:auto auto 25px;position:relative;z-index:2;perspective:800px}.visual-window{background:#fffffffa;border:1px solid rgba(255,255,255,.3);border-radius:17px;box-shadow:0 28px 60px #18143740;transform:rotateX(1deg) rotateY(-2deg);padding-bottom:13px}.visual-top{height:37px;display:flex;align-items:center;gap:5px;padding:0 14px;color:#56586a;font-size:9px;border-bottom:1px solid #efeff4}.visual-top i{width:6px;height:6px;border-radius:50%;background:#e5d7dc}.visual-top i:nth-child(2){background:#f2e6b5}.visual-top i:nth-child(3){background:#d0e4dd}.visual-top span{margin-left:9px;font-weight:600}.visual-grid{display:grid;grid-template-columns:140px 1fr;grid-template-rows:92px 125px;gap:10px;padding:12px;background:#f8f8fb}.visual-stat{background:#fff;border:1px solid #eeeef3;border-radius:11px;padding:14px;display:flex;flex-direction:column;color:var(--ink);grid-row:1/3}.visual-stat small{color:var(--muted);font-size:8px}.visual-stat strong{font-size:19px;margin-top:8px}.visual-stat span{color:#40806d;background:#e8f4ef;font-size:7px;width:max-content;padding:3px 6px;border-radius:6px;margin-top:7px}.visual-chart{background:#fff;border:1px solid #eeeef3;border-radius:11px;padding:14px;display:flex;align-items:flex-end;gap:13px}.visual-chart div{width:10%;border-radius:4px 4px 0 0;background:linear-gradient(#8f87c9,#d9d5ee)}.visual-board{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.visual-board>div{border-radius:8px;padding:8px;background:#f1e5e8}.visual-board>div:nth-child(2){background:#fbf0ce}.visual-board>div:nth-child(3){background:#e2ddf2}.visual-board strong{display:block;color:#454458;font-size:7px;margin-bottom:8px}.visual-board span{display:block;background:#fff;height:30px;border-radius:5px;margin-bottom:6px;box-shadow:0 1px 2px #0000000d}.visual-board span.short{height:20px}.login-footnote{color:#ffffff73;position:relative;z-index:2}.login-panel{display:flex;align-items:center;justify-content:center;padding:50px}.login-form-wrap{width:min(410px,100%)}.mobile-login-brand{display:none}.login-form-wrap h2{font-size:31px;font-weight:500;letter-spacing:-.035em}.login-intro{color:var(--muted);font-size:14px;margin:10px 0 30px}.field-label{display:flex;flex-direction:column;gap:8px;font-size:12px;font-weight:500;color:#54566a;position:relative}.login-form-wrap form{display:flex;flex-direction:column;gap:18px}.field-label input,.field-label select,.field-label textarea{width:100%;min-height:43px;border:1px solid #dddfe8;border-radius:9px;background:#fff;padding:10px 12px;outline:none;transition:.2s}.field-label textarea{resize:vertical}.field-label input:focus,.field-label select:focus,.field-label textarea:focus,.input-with-icon:focus-within{border-color:#918acb;box-shadow:0 0 0 3px #6f68b317}.field-label>small{color:var(--subtle);font-size:10px;position:absolute;right:10px;bottom:12px}.input-with-icon{height:46px;border:1px solid #dddfe8;border-radius:10px;display:flex;align-items:center;gap:10px;padding:0 13px;transition:.2s}.input-with-icon input{border:0;box-shadow:none!important;padding:0;min-height:0}.input-with-icon>button{padding:4px;color:var(--muted)}.input-with-icon>svg{color:#8a8ea0;flex:none}.user-input-icon{width:21px;height:21px;border-radius:7px;background:var(--primary-soft);color:var(--primary);font-size:10px;display:grid;place-items:center;font-weight:600}.login-options{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:12px}.login-options label{display:flex;align-items:center;gap:7px}.login-options input{accent-color:var(--primary)}.login-options button{color:var(--primary);font-size:12px}.primary-button,.secondary-button{min-height:40px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 16px;font-size:12px;font-weight:600;transition:.2s;white-space:nowrap}.primary-button{color:#fff;background:var(--primary);box-shadow:0 4px 12px #6f68b333}.primary-button:hover{background:var(--primary-dark);transform:translateY(-1px)}.primary-button:disabled{opacity:.55;cursor:not-allowed;transform:none}.secondary-button{color:#555769;background:#fff;border:1px solid #dedfe7}.secondary-button:hover{border-color:#bebacd;color:var(--primary)}.primary-button.compact{min-height:35px;padding:0 12px;font-size:11px}.login-submit{width:100%;height:47px;margin-top:2px}.form-error{background:#fff0f1;color:#a9434c;border-radius:8px;padding:10px 12px;font-size:12px}.demo-credentials{margin-top:25px;padding:13px 15px;border:1px dashed #d8d6e8;border-radius:9px;display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:11px;background:#fafafe}.demo-credentials p{display:flex;align-items:center;gap:8px}.demo-credentials code{font-family:inherit;color:var(--primary);font-weight:600}.demo-credentials i{font-style:normal;color:#c7c7d0}.login-help{display:block;text-align:center;color:#a0a3b0;margin-top:22px;font-size:10px}.app-shell{min-height:100vh;display:grid;grid-template-columns:230px minmax(0,1fr);transition:grid-template-columns .2s}.app-shell.sidebar-collapsed{grid-template-columns:72px minmax(0,1fr)}.sidebar{position:fixed;left:0;top:0;bottom:0;width:230px;background:#fbfbfd;border-right:1px solid var(--line);padding:20px 14px 14px;display:flex;flex-direction:column;z-index:30;transition:width .2s}.sidebar-collapsed .sidebar{width:72px;padding-inline:10px}.sidebar-brand{display:flex;align-items:center;gap:11px;padding:0 8px 22px;white-space:nowrap}.sidebar-brand .brand-mark{width:35px;height:35px;border-radius:11px}.sidebar-brand div{display:flex;flex-direction:column}.sidebar-brand strong{font-size:15px;font-weight:600}.sidebar-brand small{font-size:9px;letter-spacing:.09em;color:var(--subtle);text-transform:uppercase;margin-top:2px}.sidebar-nav{display:flex;flex-direction:column;gap:4px}.nav-heading{font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:#aaadba;font-weight:600;padding:5px 12px 7px}.nav-heading-spaced{margin-top:18px}.nav-item{height:42px;border-radius:10px;padding:0 11px;display:flex;align-items:center;gap:11px;color:#6f7282;font-size:12px;font-weight:500;white-space:nowrap}.nav-item:hover{background:#f1f1f7;color:#4c4c64}.nav-item.active{color:var(--primary);background:var(--primary-soft);font-weight:600}.sidebar-collapsed .nav-item{justify-content:center;padding:0}.sidebar-collapsed .nav-item svg{width:20px;height:20px}.sidebar-insight{margin-top:auto;background:linear-gradient(145deg,#f0eef9,#f8f7fc);border:1px solid #e6e3f4;border-radius:13px;padding:14px;display:flex;gap:9px}.insight-icon{width:27px;height:27px;border-radius:8px;background:#fff;color:var(--primary);display:grid;place-items:center;flex:none}.sidebar-insight strong{font-size:10px;font-weight:600}.sidebar-insight p{font-size:9px;line-height:1.5;color:#858798;margin:4px 0 8px}.sidebar-insight button{font-size:9px;color:var(--primary);font-weight:600;padding:0}.sidebar-toggle{height:37px;border-top:1px solid var(--line);margin-top:13px;padding-top:12px;color:#9396a5;display:flex;align-items:center;gap:6px;font-size:10px;justify-content:center}.main-area{grid-column:2;min-width:0}.topbar{height:70px;position:sticky;top:0;z-index:20;background:#fffffff0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 28px}.topbar-title{display:flex;align-items:center;gap:10px}.topbar-title>div{display:flex;flex-direction:column}.topbar-title span{font-size:9px;text-transform:uppercase;letter-spacing:.11em;color:#a2a4b2}.topbar-title h1{font-size:18px;font-weight:500;letter-spacing:-.02em;margin-top:2px}.mobile-menu{display:none}.topbar-actions{display:flex;align-items:center;gap:10px}.global-search{width:245px;height:35px;border:1px solid #e1e2ea;border-radius:9px;display:flex;align-items:center;padding:0 10px;gap:8px;color:#9195a4;background:#fafafd}.global-search input{border:0;background:transparent;outline:0;width:100%;font-size:10px}.global-search kbd{border:1px solid #dddde5;background:#fff;border-radius:5px;padding:2px 5px;font-size:8px;color:#a1a2af}.icon-button{width:36px;height:36px;border:1px solid #e1e2e9;border-radius:9px;display:inline-grid;place-items:center;color:#757888;background:#fff;transition:.2s}.icon-button:hover{border-color:#c4c2d6;color:var(--primary)}.icon-button.tiny{width:28px;height:28px;border-radius:7px}.notification-button{position:relative}.notification-button>span{position:absolute;right:7px;top:7px;width:6px;height:6px;border-radius:50%;background:#d87b83;border:2px solid #fff}.profile-button{height:39px;border-left:1px solid var(--line);margin-left:2px;padding-left:12px;display:flex;align-items:center;gap:8px;text-align:left}.profile-copy{display:flex;flex-direction:column;min-width:90px}.profile-copy strong{font-size:10px;font-weight:600}.profile-copy small{font-size:8px;color:var(--subtle);margin-top:2px}.avatar{display:inline-grid;place-items:center;color:#fff;font-weight:600;letter-spacing:.02em;flex:none;border:2px solid #fff;box-shadow:0 0 0 1px #1e1e320f}.avatar-sm{width:27px;height:27px;border-radius:9px;font-size:8px}.avatar-md{width:34px;height:34px;border-radius:10px;font-size:9px}.avatar-lg{width:44px;height:44px;border-radius:13px;font-size:12px}.profile-wrap,.quick-wrap{position:relative}.popover{position:absolute;right:0;top:calc(100% + 9px);background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:12px;z-index:50;padding:7px;min-width:220px}.popover button{width:100%;display:flex;align-items:center;gap:9px;padding:9px;border-radius:8px;text-align:left;font-size:11px}.popover button:hover{background:#f6f5fb}.popover button>span{display:flex;flex-direction:column;gap:2px}.popover button small{font-size:8px;color:var(--subtle);font-weight:400}.quick-popover{min-width:245px}.profile-popover-head{display:flex;gap:10px;align-items:center;padding:8px 8px 12px;border-bottom:1px solid var(--line);margin-bottom:5px}.profile-popover-head>div{display:flex;flex-direction:column}.profile-popover-head strong{font-size:11px}.profile-popover-head span{font-size:8px;color:var(--subtle);margin-top:3px}.danger-text{color:#b7555d}.page-content{padding:25px 28px 38px;max-width:1600px;margin:0 auto}.page-intro{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:20px}.page-intro h2{font-size:26px;font-weight:500;letter-spacing:-.035em}.page-intro p{color:var(--muted);font-size:11px;margin-top:7px}.compact-intro{align-items:center}.panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 1px 2px #1f213605}.panel-header{display:flex;align-items:flex-start;justify-content:space-between}.panel-header h3{font-size:14px;font-weight:600}.panel-header p{font-size:9px;color:var(--muted);margin-top:4px}.panel-header>a{font-size:9px;color:var(--primary);display:flex;align-items:center;gap:4px;font-weight:600}.soft-badge{background:#f2f1f7;color:#747689;padding:5px 8px;border-radius:7px;font-size:8px}.count-badge{min-width:23px;height:23px;display:grid;place-items:center;border-radius:8px;background:var(--primary-soft);color:var(--primary);font-size:9px;font-weight:600}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:17px}.metric-card{min-height:105px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:17px;display:flex;align-items:flex-start;gap:13px;box-shadow:0 1px 2px #1f213605}.metric-icon{width:37px;height:37px;border-radius:11px;display:grid;place-items:center;flex:none}.metric-icon.lavender{background:var(--lavender);color:#6e63ad}.metric-icon.mint{background:var(--mint);color:#4c8a76}.metric-icon.sand{background:var(--sand);color:#a87e37}.metric-icon.blush{background:var(--blush);color:#ad6275}.metric-icon.blue{background:var(--blue);color:#557fa7}.metric-card>div{display:flex;flex-direction:column}.metric-card small{font-size:9px;color:var(--muted)}.metric-card strong{font-size:23px;font-weight:500;letter-spacing:-.03em;margin:6px 0 4px}.metric-card p{font-size:8px;color:#999baa;display:flex;align-items:center;gap:3px}.metric-card p em{font-style:normal;color:#4c9079;font-weight:600}.linear-progress,.mini-progress{height:5px;border-radius:6px;background:#ececf2;overflow:hidden}.linear-progress i,.mini-progress i{display:block;height:100%;border-radius:inherit;background:var(--primary)}.progress-ring{position:relative;flex:none}.progress-ring svg{transform:rotate(-90deg);width:100%;height:100%}.progress-ring circle{fill:none;stroke-width:3.5}.progress-ring-track{stroke:#ececf2}.progress-ring-value{stroke:var(--primary);stroke-linecap:round;transition:.4s}.progress-ring span{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-size:8px;font-weight:600}.status-pill{font-style:normal;display:inline-flex;align-items:center;gap:5px;width:max-content;border-radius:8px;padding:4px 7px;font-size:8px;font-weight:500}.status-pill i{width:5px;height:5px;border-radius:50%;background:currentColor}.status-pill.active{color:#44806e;background:#e6f2ee}.priority-label{display:inline-flex;align-items:center;gap:5px;font-size:8px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#84714e}.priority-label i,.priority-dot{width:6px;height:6px;border-radius:50%;background:#d3a654}.priority-label.low{color:#588778}.priority-label.low i,.priority-dot.low{background:#6faa94}.priority-label.medium{color:#9a773a}.priority-label.medium i,.priority-dot.medium{background:#dda84d}.priority-label.high{color:#ad6575}.priority-label.high i,.priority-dot.high{background:#d37588}.priority-label.critical{color:#b34f58}.priority-label.critical i,.priority-dot.critical{background:#cc515b}.toolbar{display:flex;gap:9px;align-items:center;margin-bottom:17px}.search-box{height:38px;display:flex;align-items:center;gap:8px;border:1px solid #e0e1e8;border-radius:9px;background:#fff;padding:0 11px;color:#8d90a1;min-width:300px}.search-box input{border:0;outline:0;width:100%;font-size:10px;background:transparent}.filter-button{height:38px;display:inline-flex;align-items:center;gap:7px;padding:0 11px;border:1px solid #e0e1e8;border-radius:9px;background:#fff;color:#727586;font-size:10px}.filter-button span{background:#f0eff7;color:var(--primary);padding:2px 5px;border-radius:5px;font-size:8px}.view-toggle{margin-left:auto;display:flex;border:1px solid #e0e1e8;border-radius:9px;background:#fff;padding:3px}.view-toggle button{width:31px;height:29px;display:grid;place-items:center;border-radius:6px;color:#999baa}.view-toggle button.active{background:var(--primary-soft);color:var(--primary)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid .full{grid-column:1/-1}.modal-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;border-top:1px solid var(--line);padding-top:16px;margin-top:18px}.empty-state{text-align:center;padding:35px 15px;color:var(--muted)}.empty-state>span{width:42px;height:42px;border-radius:13px;background:var(--primary-soft);color:var(--primary);display:grid;place-items:center;margin:0 auto 10px}.empty-state h3{font-size:12px;color:var(--ink)}.empty-state p{font-size:9px;margin-top:5px}.calm-state{display:flex;align-items:center;justify-content:center;gap:9px;color:#5f907e;background:#f2f9f6;border-radius:10px;padding:16px}.calm-state>span{display:flex;flex-direction:column}.calm-state strong{font-size:10px}.calm-state small{font-size:8px;color:#82a698;margin-top:2px}.calm-state.wide{margin:18px}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,.8fr);gap:15px}.project-health-panel,.hours-panel,.attention-panel,.milestone-panel{padding:18px}.project-health-list{margin-top:12px}.health-row{display:grid;grid-template-columns:37px minmax(190px,1.5fr) minmax(120px,.9fr) 70px 46px 16px;align-items:center;gap:10px;padding:12px 4px;border-top:1px solid #f0f0f4;transition:.2s}.health-row:hover{background:#fafafd;padding-inline:8px;margin-inline:-4px}.project-badge,.project-logo{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;font-size:9px;font-weight:600;flex:none}.health-main,.health-owner,.health-hours{display:flex;flex-direction:column;min-width:0}.health-main strong{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.health-main span,.health-owner span,.health-hours span{font-size:8px;color:var(--muted);margin-top:4px}.health-owner{flex-direction:row;align-items:center;gap:7px}.health-owner span{margin:0;white-space:nowrap}.health-hours strong{font-size:10px}.row-arrow{color:#bbbcc7}.hours-summary{display:flex;gap:28px;margin:19px 0 11px}.hours-summary>div{display:flex;flex-direction:column}.hours-summary strong{font-size:19px;font-weight:500}.hours-summary span{font-size:8px;color:var(--muted);margin-top:3px}.hours-chart{height:150px;display:flex;align-items:flex-end;justify-content:space-around;border-bottom:1px solid var(--line);padding:14px 5px 0;background:repeating-linear-gradient(to bottom,transparent 0,transparent 36px,#f1f1f5 37px)}.bar-wrap{width:11%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;position:relative}.bar{width:19px;min-height:6px;border-radius:5px 5px 2px 2px;background:linear-gradient(#827ac0,#bcb7df)}.bar-value{font-size:7px;color:#7e8190;margin-bottom:4px;height:9px}.bar-wrap small{font-size:7px;color:#999baa;margin:5px 0 -16px}.panel-footer-link{display:flex;align-items:center;gap:6px;color:var(--primary);font-size:9px;font-weight:600;margin-top:26px}.panel-footer-link svg:last-child{margin-left:auto}.attention-row{display:grid;grid-template-columns:8px minmax(0,1fr) auto;gap:8px;align-items:center;padding:12px 2px;border-top:1px solid #f0f0f4}.attention-row:first-of-type{margin-top:10px}.attention-row>div{display:flex;flex-direction:column;min-width:0}.attention-row strong{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.attention-row div span{font-size:7px;color:var(--muted);margin-top:3px}.overdue-date{display:flex;align-items:center;gap:4px;color:#b65a62;font-size:8px}.milestone-row{display:grid;grid-template-columns:32px 1px 1fr;gap:9px;align-items:center;padding:10px 2px;border-top:1px solid #f0f0f4}.milestone-row:first-of-type{margin-top:10px}.milestone-date{width:31px;height:34px;border-radius:8px;background:#f3f2f8;display:flex;flex-direction:column;align-items:center;justify-content:center}.milestone-date strong{font-size:10px}.milestone-date small{font-size:6px;text-transform:uppercase;color:var(--muted)}.milestone-row>i{height:26px;background:#e4e4ec}.milestone-row>div{display:flex;flex-direction:column}.milestone-row>div strong{font-size:9px}.milestone-row>div span{font-size:7px;color:var(--muted);margin-top:3px}.loading-page{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.loading-page>div,.loading-page>section,.board-loading>*{background:linear-gradient(90deg,#eeeef3,#f8f8fa,#eeeef3);background-size:200%;animation:pulse 1.5s infinite;border-radius:14px;height:105px}.loading-page>section{grid-column:1/-1;height:360px}@keyframes pulse{to{background-position:-200%}}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.project-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:18px;box-shadow:0 1px 2px #1f213605;transition:.2s}.project-card:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:#dcd9eb}.project-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.project-card-icon{width:38px;height:38px;border-radius:11px;display:grid;place-items:center}.project-code{font-size:8px;color:var(--primary);font-weight:600;letter-spacing:.08em}.project-card h3{font-size:14px;font-weight:600;margin:5px 0}.project-card>p{font-size:9px;color:var(--muted)}.project-progress-head{display:flex;justify-content:space-between;margin:18px 0 6px;font-size:8px;color:var(--muted)}.project-progress-head strong{color:var(--ink)}.project-card-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;border-top:1px solid #f0f0f4;border-bottom:1px solid #f0f0f4;margin-top:15px;padding:12px 0}.project-card-stats span{display:flex;flex-direction:column;color:var(--muted);font-size:7px}.project-card-stats strong{font-size:9px;color:#4f5161;margin-bottom:3px}.project-card-foot{display:flex;align-items:center;justify-content:space-between;margin-top:12px}.project-card-foot>span{display:flex;align-items:center;gap:6px;font-size:8px;color:var(--muted)}.project-card-foot>svg{color:var(--primary)}.data-table{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden}.table-row{display:grid;align-items:center;border-top:1px solid #eeeef3;padding:11px 15px;font-size:9px}.table-row:first-child{border:0}.project-list-table .table-row{grid-template-columns:1.8fr 1fr 1fr .7fr .8fr 24px}.table-head{background:#f8f8fb;color:var(--muted);font-size:8px;text-transform:uppercase;letter-spacing:.05em}.table-row>span{display:flex;flex-direction:column}.table-row small{color:var(--muted);font-size:7px;margin-top:3px}.person-cell{display:flex!important;flex-direction:row!important;align-items:center;gap:7px}.template-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;max-height:470px;overflow:auto;padding:2px}.template-option{text-align:left;border:1px solid var(--line);border-radius:13px;padding:15px;background:#fff;transition:.2s}.template-option:hover,.template-option.selected{border-color:#8c85c5;box-shadow:0 0 0 2px #6f68b314}.template-option>div:first-child{display:flex;flex-direction:column}.template-option>div span{font-size:7px;color:var(--primary);text-transform:uppercase;letter-spacing:.07em}.template-option strong{font-size:12px;margin:4px 0}.template-option p{font-size:8px;color:var(--muted);line-height:1.5}.template-preview{height:77px;display:flex;gap:5px;margin:13px 0}.template-preview i{flex:1;border-radius:6px;position:relative}.template-preview i:after{content:"";position:absolute;left:6px;right:6px;top:13px;height:22px;background:#ffffffdb;border-radius:4px}.template-option>small{font-size:7px;color:var(--muted)}.selected-template-strip{display:flex;align-items:center;gap:10px;background:#f5f4fa;border-radius:10px;padding:10px 12px;margin-bottom:16px;color:var(--primary)}.selected-template-strip>span{display:flex;flex-direction:column}.selected-template-strip small{font-size:7px;color:var(--muted)}.selected-template-strip strong{font-size:10px;margin-top:2px}.selected-template-strip button{margin-left:auto;color:var(--primary);font-size:9px;font-weight:600}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#1d1c3061;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:100;display:flex;align-items:center;justify-content:center;padding:22px}.modal{background:#fff;border-radius:17px;box-shadow:0 30px 80px #18172a38;width:min(580px,calc(100vw - 44px));max-height:calc(100vh - 44px);overflow:hidden;display:flex;flex-direction:column;animation:modal-in .18s ease-out}.modal-sm{width:430px}.modal-lg{width:800px}.modal-xl{width:1060px}@keyframes modal-in{0%{opacity:0;transform:translateY(8px) scale(.985)}}.modal-header{padding:19px 21px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:flex-start}.modal-header h2{font-size:18px;font-weight:500;letter-spacing:-.025em}.modal-header p{font-size:9px;color:var(--muted);margin-top:4px}.modal-body{padding:19px 21px;overflow:auto}.toast{position:fixed;right:24px;bottom:24px;z-index:150;display:flex;align-items:center;gap:9px;color:#376c5c;background:#fff;border:1px solid #cce3db;border-left:4px solid #60a58e;border-radius:11px;box-shadow:var(--shadow);padding:12px 14px;font-size:10px;animation:modal-in .2s}.toast>button{color:#8c9d97;margin-left:8px}.board-page{margin:-25px -28px -38px;min-height:calc(100vh - 70px);display:flex;flex-direction:column}.board-toolbar{height:67px;background:#fff;border-bottom:1px solid var(--line);padding:0 24px;display:flex;align-items:center;justify-content:space-between}.project-switcher{display:flex;align-items:center;gap:10px}.back-button{width:31px;height:31px;border:1px solid var(--line);border-radius:8px;display:grid;place-items:center;color:var(--muted)}.project-switcher>div{display:flex;flex-direction:column}.project-switcher select{border:0;background:transparent;font-size:13px;font-weight:600;outline:0;padding:0 24px 0 0;max-width:410px}.project-switcher div span{font-size:8px;color:var(--muted);margin-top:3px}.board-actions{display:flex;align-items:center;gap:7px}.project-summary-strip{min-height:65px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 24px}.project-summary-strip>div{padding:0 22px;border-right:1px solid var(--line);display:flex;align-items:center;gap:8px;min-height:36px}.project-summary-strip>div:first-child{padding-left:0;min-width:210px;display:grid;grid-template-columns:1fr auto}.project-summary-strip>div:last-child{border:0}.project-summary-strip small{font-size:7px;color:var(--muted);display:block}.project-summary-strip strong{font-size:9px;font-weight:600;display:flex;align-items:center;gap:5px}.project-summary-strip .mini-progress{grid-column:1/-1}.board-viewbar{height:51px;display:flex;align-items:center;justify-content:space-between;padding:0 24px;background:#f9f9fb;border-bottom:1px solid var(--line)}.view-tabs,.detail-tabs{display:flex;align-items:center;gap:3px}.view-tabs button,.detail-tabs button{height:31px;padding:0 10px;display:flex;align-items:center;gap:6px;color:#7c7f8e;font-size:9px;border-radius:7px}.view-tabs button.active,.detail-tabs button.active{background:#fff;color:var(--primary);box-shadow:0 1px 3px #14162814;font-weight:600}.detail-tabs button span{background:var(--primary-soft);padding:2px 4px;border-radius:4px;font-size:7px}.board-filters{display:flex;gap:6px}.board-filters button,.board-filters label{height:30px;border:1px solid #e1e2e9;border-radius:7px;background:#fff;display:flex;align-items:center;gap:5px;padding:0 9px;font-size:8px;color:#77798a}.board-filters select{border:0;background:transparent;outline:0;font-size:8px;color:inherit}.kanban-board{display:flex;gap:12px;overflow-x:auto;align-items:stretch;flex:1;padding:17px 24px 27px;background:#f5f6f9}.kanban-column{width:270px;min-width:270px;border-radius:14px;padding:11px;display:flex;flex-direction:column;min-height:570px;border:1px solid rgba(85,85,110,.035)}.archive-column{opacity:.82}.column-header{display:grid;grid-template-columns:1fr 26px 26px;align-items:center;gap:2px;margin:1px 2px 10px}.column-header>div{display:flex;align-items:center;gap:6px;min-width:0}.column-header strong{font-size:10px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.column-header span{width:19px;height:19px;border-radius:6px;background:#ffffffbf;display:grid;place-items:center;font-size:7px}.column-header button{width:26px;height:26px;display:grid;place-items:center;border-radius:7px;color:#6a6b7e}.column-header button:hover{background:#ffffff8c}.column-tasks{display:flex;flex-direction:column;gap:9px;min-height:100%}.task-card{background:#fff;border:1px solid rgba(77,77,102,.05);border-radius:11px;padding:11px;box-shadow:0 2px 6px #23243a0d;cursor:pointer;transition:.18s}.task-card:hover{transform:translateY(-1px);box-shadow:0 6px 15px #23243a14}.task-card-top{display:flex;justify-content:space-between;align-items:center;color:#b2b3be}.task-card h4{font-size:10px;font-weight:600;line-height:1.4;margin:8px 0 5px}.task-card>p{font-size:8px;line-height:1.45;color:var(--muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.task-meta{display:flex;align-items:center;gap:11px;margin-top:11px}.task-meta span{display:flex;align-items:center;gap:4px;font-size:7px;color:#858899}.task-meta span.overdue{color:#b95560}.task-card footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #f0f0f4;margin-top:10px;padding-top:8px}.task-card footer>div{display:flex;gap:9px}.task-card footer div span{display:flex;align-items:center;gap:3px;font-size:7px;color:#9496a5}.empty-avatar{width:25px;height:25px;border:1px dashed #c6c7d1;border-radius:8px;display:grid;place-items:center;color:#9d9fac}.subtask-progress{display:grid;grid-template-columns:13px auto 1fr;align-items:center;gap:5px;margin-top:9px;color:#7d7f8e}.subtask-progress span{font-size:7px}.subtask-progress>i{height:3px;background:#ececf1;border-radius:3px}.subtask-progress b{display:block;height:100%;background:var(--primary);border-radius:inherit}.add-task-button{height:31px;border:1px dashed rgba(80,80,100,.2);border-radius:8px;color:#747586;display:flex;align-items:center;justify-content:center;gap:5px;font-size:8px;background:#ffffff6b}.add-task-button:hover{background:#ffffffbf}.column-empty{height:70px;border:1px dashed rgba(80,80,100,.15);display:grid;place-items:center;border-radius:9px;font-size:8px;color:#9b9ca6}.board-loading{display:flex;gap:12px}.board-loading-head{position:absolute;width:80%;height:60px}.board-loading-col{width:250px;height:550px;margin-top:80px}.detail-tabs{border-bottom:1px solid var(--line);padding-bottom:10px;margin-bottom:16px}.detail-tabs button.active{background:var(--primary-soft);box-shadow:none}.task-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:24px}.task-detail-layout h4{font-size:10px;margin-bottom:8px}.task-description{font-size:10px;line-height:1.7;color:#686b7b;background:#fafafd;border-radius:9px;padding:12px;margin-bottom:20px}.task-properties{background:#f8f8fb;border-radius:11px;padding:12px}.task-properties label{display:flex;justify-content:space-between;align-items:center;padding:9px 2px;border-bottom:1px solid #eaeaef;font-size:8px}.task-properties label>span{color:var(--muted)}.task-properties label>strong{font-size:8px;display:flex;align-items:center;gap:5px}.full-button{width:100%;margin-top:13px}.subtask-list>div{display:grid;grid-template-columns:25px 1fr auto;align-items:center;padding:8px 0;border-bottom:1px solid #efeff3}.subtask-list>div>button{color:#a7a9b6}.subtask-list>div>span:nth-child(2){display:flex;flex-direction:column}.subtask-list strong{font-size:9px}.subtask-list small{font-size:7px;color:var(--muted);margin-top:2px}.subtask-list>div>span:last-child{font-size:8px;color:var(--muted)}.inline-add{font-size:8px;color:var(--primary);display:flex;align-items:center;gap:5px;padding:10px 0}.subtask-list>.subtask-creator{display:grid;grid-template-columns:1fr 1fr;gap:12px;background:#fafafd;border:1px solid #e7e6ee;border-radius:10px;padding:13px;margin-top:8px}.subtask-creator .full{grid-column:1/-1}.subtask-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:8px}.subtask-actions .primary-button,.subtask-actions .secondary-button{min-height:36px}.task-delete-zone{border-top:1px solid #e4e3ea;margin-top:14px;padding-top:13px}.task-delete-zone>p{font-size:10px;color:#8f4a51;line-height:1.4;margin-bottom:9px}.task-delete-zone>div{display:flex;gap:7px}.danger-button{width:100%;min-height:38px;border:1px solid #e4c4c7;border-radius:9px;color:#a54f57;background:#fff;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:11px;font-weight:600}.danger-button:hover{background:#fff5f5;border-color:#dca9ae}.danger-button.solid{background:#b7555d;color:#fff;border-color:#b7555d}.danger-button:disabled{opacity:.6;cursor:not-allowed}.discussion-layout{min-height:360px}.comment-composer{border:1px solid #dddee7;border-radius:11px;overflow:hidden}.comment-composer textarea{border:0;outline:0;resize:none;width:100%;padding:12px;font-size:10px}.comment-composer footer{display:flex;align-items:center;justify-content:space-between;background:#fafafd;border-top:1px solid #eeeef3;padding:7px 9px}.attach-button{display:flex;align-items:center;gap:5px;font-size:8px;color:var(--muted)}.pending-file{margin:0 9px 8px;padding:7px 8px;background:var(--primary-soft);border-radius:7px;display:flex;align-items:center;gap:7px;color:var(--primary);font-size:8px}.pending-file button{margin-left:auto;color:var(--muted)}.comment-list{margin-top:13px;max-height:330px;overflow:auto}.comment{display:grid;grid-template-columns:36px 1fr;gap:9px;padding:12px 2px;border-bottom:1px solid #efeff3}.comment header{display:flex;justify-content:space-between}.comment header strong{font-size:9px}.comment header span{font-size:7px;color:var(--subtle)}.comment p{font-size:9px;line-height:1.55;color:#5f6272;margin-top:5px}.attachment-card{display:inline-flex;align-items:center;gap:7px;border:1px solid #e1e2e9;border-radius:8px;padding:7px 9px;margin-top:8px;color:var(--primary)}.attachment-card>span{display:flex;flex-direction:column}.attachment-card strong{font-size:8px}.attachment-card small{font-size:6px;color:var(--muted);margin-top:2px}.timesheet-controls{min-height:66px;padding:11px 14px;display:flex;align-items:center;gap:20px;margin-bottom:13px}.person-selector{display:flex;align-items:center;gap:7px;position:relative;border-right:1px solid var(--line);padding-right:20px}.person-selector select{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;outline:0;background:transparent;font-size:10px;font-weight:600;padding-right:18px}.person-selector>svg{position:absolute;right:22px;pointer-events:none;color:var(--muted)}.week-selector{display:flex;align-items:center}.week-selector>button{height:31px;border:1px solid #e0e1e8;display:grid;place-items:center;color:#7c7f8e}.week-selector>button:first-child{width:31px;border-radius:8px 0 0 8px}.week-selector>button:nth-child(3){width:31px;border-radius:0 8px 8px 0;border-left:0}.week-selector .week-label{width:auto;display:flex;flex-direction:row;gap:7px;padding:0 12px;border-left:0;font-size:9px}.week-selector .today-button{border-radius:8px;width:auto;padding:0 10px;margin-left:8px;font-size:8px}.week-summary{margin-left:auto;display:flex;align-items:center;gap:19px}.week-summary>div{display:flex;flex-direction:column}.week-summary strong{font-size:13px}.week-summary span{font-size:7px;color:var(--muted)}.week-status{padding:6px 8px;border-radius:7px;display:flex;align-items:center;gap:5px!important}.week-status i{width:5px;height:5px;border-radius:50%}.week-status.draft{background:#f2f1f6;color:#747688}.week-status.draft i{background:#9294a0}.week-status.submitted{background:#fbf0d3;color:#9b7734}.week-status.submitted i{background:#c6953f}.quick-time-panel{background:linear-gradient(135deg,#f4f2fb,#fbfafd);border:1px solid #dedbeb;border-radius:14px;padding:13px 15px;margin-bottom:13px}.quick-time-panel>header{display:flex;justify-content:space-between;align-items:flex-start}.quick-time-panel>header>div{display:flex;gap:9px;align-items:center}.quick-time-panel h3{font-size:12px}.quick-time-panel p{font-size:8px;color:var(--muted);margin-top:2px}.quick-time-panel .metric-icon{width:33px;height:33px}.quick-time-grid{display:grid;grid-template-columns:1.15fr 1.25fr 1.55fr auto;gap:8px;align-items:end;margin-top:11px}.quick-time-grid>label:not(.billable-check){display:flex;flex-direction:column;gap:5px;font-size:7px;color:var(--muted)}.quick-time-grid select,.quick-time-grid input{height:34px;border:1px solid #dddde6;border-radius:8px;background:#fff;padding:0 9px;outline:0;font-size:8px}.billable-check{height:34px;display:flex;align-items:center}.billable-check input{display:none}.billable-check span{height:34px;border:1px solid #d8e6e1;background:#edf7f3;color:#4b806f;border-radius:8px;padding:0 9px;display:flex;align-items:center;gap:5px;font-size:8px}.quick-day-inputs{grid-column:1/4;display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.quick-day-inputs label{display:flex;flex-direction:column;gap:4px;font-size:7px;color:var(--muted);text-align:center}.quick-day-inputs input{text-align:center;padding:0}.quick-total{height:34px;background:#fff;border:1px solid #dedfe7;border-radius:8px;display:flex;align-items:center;justify-content:space-between;padding:0 9px}.quick-total span{font-size:7px;color:var(--muted)}.quick-total strong{font-size:10px}.save-row{grid-column:4;grid-row:3}.timesheet-grid-panel{overflow:hidden}.timesheet-panel-head{padding:15px 17px;border-bottom:1px solid var(--line)}.time-legend{display:flex;gap:10px}.time-legend span{display:flex;align-items:center;gap:4px;font-size:7px;color:var(--muted)}.time-legend i{width:6px;height:6px;border-radius:50%}.time-legend .approved{background:#66a58f}.time-legend .submitted{background:#d6a14b}.time-legend .draft{background:#9a9cab}.timesheet-table-wrap{overflow:auto}.timesheet-table{border-collapse:collapse;width:100%;min-width:1000px}.timesheet-table th,.timesheet-table td{border-right:1px solid #efeff3;border-bottom:1px solid #efeff3}.timesheet-table th{height:51px;background:#fafafd;color:var(--muted);font-size:7px;font-weight:500;text-align:center}.timesheet-table th:first-child{text-align:left;padding-left:16px;min-width:280px}.timesheet-table th span,.timesheet-table th strong{display:block}.timesheet-table th strong{color:#555768;font-size:10px;margin-top:3px}.timesheet-table th.weekend,.timesheet-table td.weekend{background:#fcfbf8}.timesheet-table tbody td{height:63px;text-align:center;font-size:9px}.timesheet-table tbody td:first-child{text-align:left;padding:8px 14px;display:flex;align-items:center;gap:8px}.row-project-dot{width:6px;height:34px;border-radius:5px;flex:none}.timesheet-table td:first-child>div{display:flex;flex-direction:column}.timesheet-table td:first-child strong{font-size:9px}.timesheet-table td:first-child span{font-size:7px;color:var(--muted);margin-top:2px}.timesheet-table td:first-child small{font-size:6px;color:#a4a6b2;margin-top:3px;max-width:280px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hours-value{width:34px;height:28px;border-radius:7px;background:#f1f0f7;color:var(--primary);display:inline-grid;place-items:center;font-weight:600}.hours-empty{color:#c5c6ce}.entry-status{display:inline-flex;align-items:center;gap:4px;padding:5px 7px;border-radius:7px;font-size:7px}.entry-status i{width:5px;height:5px;border-radius:50%;background:currentColor}.entry-status.approved{background:#e7f3ef;color:#4c8874}.entry-status.submitted{background:#fcf0d1;color:#9d7939}.entry-status.draft{background:#f0f0f5;color:#7e808f}.timesheet-table tfoot td{height:49px;background:#fafafd;text-align:center;font-size:8px}.timesheet-table tfoot td:first-child{text-align:right;padding-right:14px;color:var(--muted);font-weight:600}.timesheet-table tfoot td strong{display:block}.timesheet-table tfoot td span{font-size:6px;color:var(--subtle)}.timesheet-table tfoot td.on-target{background:#eef7f3;color:#4e8673}.timesheet-table tfoot td.over-target{background:#fff2f2;color:#b35660}.empty-time{display:flex;flex-direction:column;align-items:center;padding:25px;color:var(--muted)}.empty-time strong{font-size:10px;margin-top:7px}.empty-time span{font-size:8px;margin-top:3px}.timesheet-actions{min-height:58px;display:flex;align-items:center;justify-content:space-between;padding:9px 14px}.timesheet-actions>span{display:flex;align-items:center;gap:6px;font-size:7px;color:var(--muted)}.timesheet-actions>div{display:flex;gap:8px}.approval-panel{margin-top:14px}.approval-panel>.panel-header{padding:15px 17px}.approval-row{display:grid;grid-template-columns:37px minmax(200px,1fr) 90px 60px 100px 83px;align-items:center;gap:8px;border-top:1px solid #efeff3;padding:9px 17px;font-size:9px}.approval-row>div{display:flex;flex-direction:column}.approval-row div span{font-size:7px;color:var(--muted);margin-top:3px}.approve-button{height:29px;border-radius:7px;color:#4d846f;background:#e8f3ef;display:flex;align-items:center;justify-content:center;gap:4px;font-size:8px}.timesheet-skeleton>div,.timesheet-skeleton>section,.report-loading>div{background:linear-gradient(90deg,#eeeef3,#f8f8fa,#eeeef3);background-size:200%;animation:pulse 1.5s infinite;border-radius:14px}.timesheet-skeleton>div{height:70px}.timesheet-skeleton>section{height:400px;margin-top:14px}.report-filterbar{display:flex;align-items:end;gap:12px;padding:12px 15px;margin-bottom:14px}.report-filterbar label{display:flex;flex-direction:column;gap:5px;font-size:7px;color:var(--muted)}.report-filterbar label:first-child{min-width:300px}.report-filterbar select,.report-filterbar input{height:34px;border:1px solid #dedfe7;border-radius:8px;padding:0 9px;background:#fff;outline:0;font-size:8px}.report-filterbar label>div{height:34px;border:1px solid #dedfe7;border-radius:8px;display:flex;align-items:center;padding:0 8px;gap:5px}.report-filterbar label>div input{border:0;padding:0;height:31px}.approved-only{margin-left:auto;display:flex;align-items:center;gap:6px;background:#eaf5f1;color:#4b8370;border-radius:8px;padding:8px 10px;font-size:8px}.approved-only i{width:6px;height:6px;border-radius:50%;background:#62a58e}.cost-metrics{margin-bottom:14px}.good-change{color:#4b8a74!important}.bad-change{color:#b95862!important}.cost-overview-grid{display:grid;grid-template-columns:1.5fr .8fr;gap:14px;margin-bottom:14px}.cost-trend-panel,.utilization-panel{padding:17px}.trend-chart{height:230px;position:relative;padding:22px 8px 22px 42px}.trend-chart svg{width:100%;height:175px;overflow:visible}.trend-chart line{stroke:#eeeef3;stroke-width:.4}.chart-axis{position:absolute;left:0;top:31px;bottom:30px;display:flex;flex-direction:column;justify-content:space-between;font-size:7px;color:var(--muted)}.chart-labels{display:flex;justify-content:space-between;font-size:7px;color:var(--muted);margin-top:3px}.utilization-visual{display:flex;align-items:center;justify-content:center;gap:25px;padding:24px 0 16px}.cost-donut{--progress:0deg;width:125px;height:125px;border-radius:50%;background:conic-gradient(var(--primary) 0 var(--progress),#eeedf3 var(--progress) 360deg);display:grid;place-items:center;position:relative}.cost-donut:after{content:"";position:absolute;top:16px;right:16px;bottom:16px;left:16px;background:#fff;border-radius:50%}.cost-donut>span{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center}.cost-donut strong{font-size:18px;font-weight:500}.cost-donut small{font-size:7px;color:var(--muted);margin-top:3px}.cost-legend{display:flex;flex-direction:column;gap:13px}.cost-legend span{display:grid;grid-template-columns:7px 1fr;gap:0 6px}.cost-legend i{width:7px;height:7px;border-radius:3px;grid-row:1/3;margin-top:2px}.cost-legend .actual{background:var(--primary)}.cost-legend .remaining{background:#dedde7}.cost-legend small{font-size:7px;color:var(--muted)}.cost-legend strong{font-size:10px;margin-top:2px}.formula-note{display:flex;align-items:flex-start;gap:7px;background:#f6f5fa;border-radius:9px;padding:9px;color:var(--primary)}.formula-note>span{display:flex;flex-direction:column;font-size:7px;color:var(--muted);line-height:1.4}.formula-note strong{font-size:8px;color:#5f5c86;margin-bottom:2px}.breakdown-panel{overflow:hidden}.breakdown-head{display:flex;align-items:center;justify-content:space-between;padding:16px 17px;border-bottom:1px solid var(--line)}.breakdown-head h3{font-size:14px}.breakdown-head p{font-size:8px;color:var(--muted);margin-top:3px}.cost-row{display:grid;grid-template-columns:1.3fr 1fr .7fr .8fr .8fr .8fr;gap:10px;align-items:center;min-height:49px;border-top:1px solid #efeff3;padding:8px 17px;font-size:8px}.cost-row:first-child{border:0}.cost-head{background:#fafafd;min-height:36px;color:var(--muted);font-size:7px;text-transform:uppercase;letter-spacing:.04em}.cost-row>span{min-width:0}.share-cell{display:flex;align-items:center;gap:7px}.share-cell>i{width:55px;height:5px;border-radius:4px;background:#ececf2;overflow:hidden}.share-cell b{display:block;height:100%;background:var(--primary);border-radius:inherit}.task-cost-row,.project-cost-row{grid-template-columns:1.8fr .7fr .7fr .8fr .8fr}.project-cost-row>span:first-child{display:flex;flex-direction:column}.project-cost-row small{font-size:6px;color:var(--muted);margin-top:3px}.project-code-chip{font-style:normal;background:var(--primary-soft);color:var(--primary);padding:4px 6px;border-radius:6px;font-size:7px}.report-loading{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.report-loading>div{height:105px}.settings-layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:14px}.settings-nav{padding:8px;height:max-content}.settings-nav button{width:100%;height:42px;display:grid;grid-template-columns:22px 1fr 15px;align-items:center;gap:7px;padding:0 10px;border-radius:8px;text-align:left;color:#737687;font-size:9px}.settings-nav button svg:last-child{opacity:.35}.settings-nav button.active{color:var(--primary);background:var(--primary-soft);font-weight:600}.settings-nav button.active svg:last-child{opacity:1}.settings-content{min-height:590px;padding:18px}.settings-section-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:15px}.settings-section-head h3{font-size:16px;font-weight:500}.settings-section-head p{font-size:8px;color:var(--muted);margin-top:4px}.settings-toolbar{display:flex;align-items:center;justify-content:space-between;padding:12px 0}.settings-toolbar>span{display:flex;align-items:center;gap:5px;color:#858899;font-size:7px}.settings-toolbar .search-box{min-width:260px;height:35px}.users-table{border:1px solid var(--line);border-radius:11px;overflow:hidden}.users-row{display:grid;grid-template-columns:1.6fr .8fr .55fr .8fr .45fr;gap:10px;align-items:center;min-height:55px;border-top:1px solid #efeff3;padding:8px 12px;font-size:8px}.users-row:first-child{border:0}.users-head{min-height:35px;background:#fafafd;color:var(--muted);font-size:7px;text-transform:uppercase}.users-row .person-cell>span{display:flex;flex-direction:column}.users-row .person-cell strong{font-size:9px}.users-row .person-cell small{font-size:7px;color:var(--muted);margin-top:3px}.role-chip{font-style:normal;padding:4px 6px;border-radius:6px;background:#f1f0f6;color:#686a7b;font-size:7px}.rate-cell>button{display:flex;align-items:center;gap:4px;color:#525469;font-size:8px}.rate-cell small{color:var(--muted);font-size:6px}.rate-cell input{width:75px;height:28px;border:1px solid #d9d9e3;border-radius:7px;padding:0 7px;font-size:8px}.rate-cell>button:last-child{display:inline-grid;width:28px;height:28px;background:#e8f3ef;color:#4e8774;border-radius:7px;margin-left:4px}.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:15px}.team-card{border:1px solid var(--line);border-radius:12px;padding:14px}.team-card header{display:flex;justify-content:space-between}.team-card header>span{width:36px;height:36px;border-radius:10px;display:grid;place-items:center}.team-card header button{color:var(--muted)}.team-card h4{font-size:11px;margin-top:12px}.team-card p{font-size:8px;color:var(--muted);line-height:1.5;margin:5px 0 16px;min-height:24px}.avatar-stack{display:flex;align-items:center}.avatar-stack .avatar{margin-right:-5px}.avatar-stack>span{font-size:7px;color:var(--muted);margin-left:10px}.settings-project-list{margin-top:14px;border:1px solid var(--line);border-radius:11px;overflow:hidden}.settings-project-list>div{display:grid;grid-template-columns:36px minmax(220px,1.4fr) 1fr .6fr .8fr 22px;gap:9px;align-items:center;padding:11px;border-top:1px solid #efeff3;font-size:8px}.settings-project-list>div:first-child{border:0}.settings-project-list>div>span{display:flex;flex-direction:column}.settings-project-list>div>span:nth-child(2) strong{font-size:9px}.settings-project-list small{font-size:7px;color:var(--muted);margin-bottom:3px}.settings-project-list button{color:var(--muted)}.category-tabs{display:flex;gap:5px;margin:13px 0}.category-tabs button{height:29px;border-radius:7px;padding:0 10px;background:#f4f4f7;color:#777989;font-size:8px}.category-tabs button.active{background:var(--primary-soft);color:var(--primary);font-weight:600}.workflow-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.workflow-card{border:1px solid var(--line);border-radius:12px;padding:14px}.workflow-card header{display:flex;align-items:center;justify-content:space-between}.workflow-card header>span:last-child{font-size:7px;color:var(--muted);background:#f3f3f7;padding:4px 6px;border-radius:6px}.workflow-icon{width:34px;height:34px;border-radius:10px;background:var(--primary-soft);color:var(--primary);display:grid;place-items:center}.workflow-card h4{font-size:11px;margin-top:11px}.workflow-card>p{font-size:8px;color:var(--muted);line-height:1.45;margin-top:4px;height:24px}.workflow-preview{height:92px;display:flex;gap:4px;margin:12px 0}.workflow-preview>span{flex:1;border-radius:6px;padding:5px;min-width:0}.workflow-preview i{font-style:normal;width:13px;height:13px;border-radius:5px;background:#fffc;display:grid;place-items:center;font-size:6px}.workflow-preview small{display:block;font-size:6px;margin-top:7px;line-height:1.15;overflow:hidden}.workflow-card footer{display:flex;align-items:center;justify-content:space-between;font-size:7px;color:var(--muted)}.workflow-card footer button{display:flex;align-items:center;gap:3px;color:var(--primary);font-size:7px}.general-settings{margin-top:5px}.general-settings>label{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #efeff3;padding:13px 2px}.general-settings label>span{display:flex;flex-direction:column}.general-settings strong{font-size:9px}.general-settings small{font-size:7px;color:var(--muted);margin-top:3px}.general-settings input,.general-settings select,.color-setting{width:260px;height:35px;border:1px solid #dedfe7;border-radius:8px;padding:0 10px;background:#fff;font-size:8px;text-align:left}.color-setting{display:flex;align-items:center;gap:7px}.color-setting i{width:15px;height:15px;border-radius:5px;background:var(--primary)}.new-template-preview{display:flex;gap:6px;overflow:auto;background:#f8f8fb;border-radius:10px;padding:10px;margin-top:14px}.new-template-preview span{min-width:105px;height:72px;border-radius:8px;padding:9px;font-size:8px}@media(max-width:1250px){.global-search{display:none}.metric-grid,.project-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.team-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:900px){body{min-width:0}.login-page{grid-template-columns:1fr}.login-showcase{display:none}.login-panel{min-height:100vh}.mobile-login-brand{display:flex;align-items:center;gap:9px;font-weight:600;margin-bottom:50px}.app-shell,.app-shell.sidebar-collapsed{grid-template-columns:1fr}.sidebar{display:none}.main-area{grid-column:1}.topbar{padding:0 15px}.page-content{padding:18px 15px}.profile-copy,.profile-button>svg,.quick-wrap span{display:none}.mobile-menu{display:grid}.metric-grid,.project-grid,.cost-overview-grid,.settings-layout,.workflow-grid,.team-grid{grid-template-columns:1fr}.project-summary-strip{overflow:auto}.board-page{margin:-18px -15px}.settings-nav{display:flex;overflow:auto}.settings-nav button{min-width:140px}.quick-time-grid{grid-template-columns:1fr 1fr}.quick-day-inputs{grid-column:1/-1}.save-row{grid-column:auto;grid-row:auto}}.project-switcher select{font-size:15px}.project-switcher div span{font-size:11px}.project-summary-strip{min-height:72px}.project-summary-strip small{font-size:11px}.project-summary-strip strong{font-size:13px}.board-viewbar{height:56px}.view-tabs button,.detail-tabs button{font-size:12px}.detail-tabs button span{font-size:10px}.board-filters button,.board-filters label,.board-filters select{font-size:11px}.kanban-board{gap:16px;padding-top:20px}.kanban-column{width:320px;min-width:320px;padding:15px;border-radius:16px}.column-header{grid-template-columns:1fr 30px 30px;margin-bottom:13px}.column-header strong{font-size:14px;line-height:1.3}.column-header span{width:23px;height:23px;font-size:11px}.column-header button{width:30px;height:30px}.column-tasks{gap:12px}.task-card{padding:15px;border-radius:13px}.board-page .priority-label{font-size:10px}.task-card h4{font-size:15px;line-height:1.4;margin:10px 0 7px}.task-card>p{font-size:12px;line-height:1.55;-webkit-line-clamp:3}.task-meta{gap:14px;margin-top:13px}.task-meta span{font-size:11px}.task-card footer{margin-top:12px;padding-top:10px}.task-card footer div span{font-size:11px}.task-card .avatar-sm{width:30px;height:30px;font-size:10px}.subtask-progress{grid-template-columns:15px auto 1fr;gap:7px;margin-top:11px}.subtask-progress span{font-size:11px}.subtask-progress>i{height:4px}.add-task-button{height:38px;font-size:11px}.column-empty{font-size:11px}.task-detail-layout h4{font-size:13px}.task-description{font-size:13px;line-height:1.65}.task-properties label{font-size:11px;padding:11px 2px}.task-properties label>strong{font-size:11px}.subtask-list strong{font-size:12px}.subtask-list small{font-size:10px}.subtask-list>div>span:last-child{font-size:11px}.inline-add{font-size:11px}.comment-composer textarea{font-size:13px}.attach-button,.pending-file{font-size:11px}.comment header strong{font-size:12px}.comment header span{font-size:10px}.comment p{font-size:12px;line-height:1.6}.attachment-card strong{font-size:11px}.attachment-card small{font-size:9px}.topbar-title span{font-size:11px}.topbar-title h1{font-size:21px}.global-search input{font-size:12px}.global-search kbd{font-size:10px}.profile-copy strong{font-size:12px}.profile-copy small{font-size:10px}.page-intro h2{font-size:30px}.page-intro p{font-size:13px;line-height:1.5}.compact-intro .primary-button{min-height:44px;font-size:13px;padding-inline:18px}.toolbar{gap:11px;margin-bottom:20px}.search-box{height:44px;min-width:340px;padding-inline:14px}.search-box input{font-size:13px}.filter-button{height:44px;font-size:13px;padding-inline:14px}.filter-button span{font-size:11px}.view-toggle{padding:4px}.view-toggle button{width:36px;height:34px}.project-grid{gap:18px}.project-card{padding:24px;border-radius:17px}.project-card-top{margin-bottom:17px}.project-card-icon{width:46px;height:46px}.project-card .status-pill{font-size:11px;padding:6px 9px}.project-code{font-size:11px}.project-card h3{font-size:17px;line-height:1.4;margin:7px 0 4px}.project-card>p{font-size:12px}.project-progress-head{font-size:11px;margin:22px 0 8px}.project-card-stats{margin-top:18px;padding:16px 0}.project-card-stats span{font-size:10px;gap:2px}.project-card-stats strong{font-size:13px}.project-card-foot{margin-top:16px}.project-card-foot>span{font-size:11px;gap:8px}.project-card-foot .avatar-sm{width:31px;height:31px;font-size:10px}.project-list-table .table-row{min-height:58px;font-size:12px}.project-list-table .table-head,.project-list-table .table-row small{font-size:10px}.template-option>div span{font-size:10px}.template-option strong{font-size:14px}.template-option p{font-size:11px}.template-option>small{font-size:10px}.person-selector select{font-size:12px}.week-selector .week-label{font-size:11px;padding-inline:14px}.week-selector .today-button{font-size:11px;padding-inline:13px}.week-summary strong{font-size:15px}.week-summary span{font-size:10px}.week-status{padding:7px 10px}.quick-time-panel{padding:17px 18px}.quick-time-panel h3{font-size:15px}.quick-time-panel p{font-size:11px;line-height:1.45}.quick-time-panel .metric-icon{width:38px;height:38px}.quick-time-grid{gap:10px;margin-top:14px}.quick-time-grid>label:not(.billable-check){gap:7px;font-size:10px}.quick-time-grid select,.quick-time-grid input{height:42px;padding-inline:11px;font-size:12px}.billable-check{height:42px}.billable-check span{height:42px;padding-inline:11px;font-size:11px}.quick-day-inputs{gap:8px}.quick-day-inputs label{gap:6px;font-size:10px}.quick-total{height:42px;padding-inline:11px}.quick-total span{font-size:10px}.quick-total strong{font-size:13px}.timesheet-panel-head{padding:18px 20px}.timesheet-panel-head h3{font-size:16px}.timesheet-panel-head p{font-size:11px;line-height:1.45}.time-legend{gap:14px}.time-legend span{gap:6px;font-size:10px}.time-legend i{width:7px;height:7px}.timesheet-table{min-width:1180px}.timesheet-table th{height:61px;font-size:10px}.timesheet-table th:first-child{padding-left:20px;min-width:360px}.timesheet-table th strong{font-size:13px;margin-top:4px}.timesheet-table tbody td{height:78px;font-size:12px}.timesheet-table tbody td:first-child{padding:11px 18px;gap:10px}.row-project-dot{width:7px;height:44px}.timesheet-table td:first-child strong{font-size:12px}.timesheet-table td:first-child span{font-size:10px;margin-top:3px}.timesheet-table td:first-child small{font-size:9px;margin-top:4px;max-width:360px}.hours-value{width:42px;height:34px;font-size:12px}.entry-status{gap:5px;padding:6px 9px;font-size:10px}.entry-status i{width:6px;height:6px}.timesheet-table tfoot td{height:57px;font-size:11px}.timesheet-table tfoot td:first-child{padding-right:18px}.timesheet-table tfoot td span{font-size:9px}.empty-time strong{font-size:13px}.empty-time span{font-size:11px}.timesheet-actions{min-height:68px;padding:11px 18px}.timesheet-actions>span{gap:7px;font-size:10px;line-height:1.45}.approval-panel>.panel-header{padding:18px 20px}.approval-row{grid-template-columns:40px minmax(240px,1fr) 100px 70px 115px 94px;gap:10px;padding:12px 20px;font-size:11px}.approval-row div span{font-size:10px}.approve-button{height:34px;font-size:10px}.report-filterbar{gap:14px;padding:15px 18px}.report-filterbar label{gap:7px;font-size:10px}.report-filterbar label:first-child{min-width:340px}.report-filterbar select,.report-filterbar input{height:42px;padding-inline:11px;font-size:12px}.report-filterbar label>div{height:42px;padding-inline:10px;gap:7px}.report-filterbar label>div input{height:39px}.approved-only{gap:7px;padding:10px 12px;font-size:10px}.metric-card small{font-size:11px}.metric-card strong{font-size:25px}.metric-card p{font-size:10px}.cost-overview-grid .panel-header h3{font-size:16px}.cost-overview-grid .panel-header p{font-size:11px;line-height:1.45}.cost-overview-grid .soft-badge{font-size:10px}.trend-chart{padding-left:52px}.chart-axis,.chart-labels{font-size:10px}.cost-donut strong{font-size:21px}.cost-donut small,.cost-legend small{font-size:10px}.cost-legend strong{font-size:13px}.formula-note{gap:9px;padding:12px}.formula-note>span{font-size:10px;line-height:1.5}.formula-note strong{font-size:12px;margin-bottom:3px}.breakdown-head{padding:19px 20px}.breakdown-head h3{font-size:17px}.breakdown-head p{font-size:11px;line-height:1.45;margin-top:4px}.breakdown-head .detail-tabs{gap:5px;padding-bottom:11px;margin-bottom:0}.breakdown-head .detail-tabs button{height:38px;padding-inline:12px;font-size:12px}.cost-row{gap:12px;min-height:62px;padding:11px 20px;font-size:12px}.cost-head{min-height:44px;font-size:10px}.cost-row .person-cell{gap:10px}.share-cell{gap:9px}.share-cell>i{width:70px;height:6px}.project-cost-row small{font-size:10px}.project-code-chip{padding:5px 7px;font-size:10px}.settings-layout{grid-template-columns:230px minmax(0,1fr);gap:16px}.settings-nav{padding:10px}.settings-nav button{height:50px;grid-template-columns:24px 1fr 16px;gap:9px;padding-inline:12px;font-size:12px}.settings-content{padding:22px}.settings-section-head{padding-bottom:18px}.settings-section-head h3{font-size:18px}.settings-section-head p{font-size:11px;line-height:1.45}.settings-toolbar{padding:15px 0}.settings-toolbar>span{gap:7px;font-size:10px}.settings-toolbar .search-box{min-width:300px;height:42px}.users-table{overflow:auto}.users-row{grid-template-columns:1.7fr .9fr .55fr .85fr .5fr;gap:12px;min-width:840px;min-height:68px;padding:10px 16px;font-size:11px}.users-head{min-height:44px;font-size:10px}.users-row .person-cell{gap:10px}.users-row .person-cell strong{font-size:12px}.users-row .person-cell small{font-size:9px;line-height:1.4;margin-top:3px}.role-chip{padding:5px 8px;font-size:10px}.rate-cell>button{gap:6px;font-size:11px}.rate-cell small{font-size:9px}.rate-cell input{width:90px;height:34px;padding-inline:9px;font-size:11px}.users-table .status-pill{padding:6px 9px;font-size:10px}.team-card{padding:17px}.team-card h4{font-size:14px}.team-card p{font-size:11px;min-height:34px}.avatar-stack>span{font-size:10px}.settings-project-list>div{grid-template-columns:42px minmax(240px,1.4fr) 1fr .6fr .8fr 22px;gap:11px;padding:14px;font-size:11px}.settings-project-list>div>.project-logo{display:grid;place-items:center;line-height:1;text-align:center}.settings-project-list>div>span:nth-child(2) strong{font-size:12px}.settings-project-list small{font-size:10px}.category-tabs{gap:7px;margin:16px 0}.category-tabs button{height:36px;padding-inline:12px;font-size:11px}.workflow-card{padding:17px}.workflow-card header>span:last-child{font-size:10px}.workflow-card h4{font-size:14px}.workflow-card>p{font-size:11px;height:34px}.workflow-preview small{font-size:9px}.workflow-card footer,.workflow-card footer button{font-size:10px}.general-settings>label{padding:16px 2px}.general-settings strong{font-size:12px}.general-settings small{font-size:10px}.general-settings input,.general-settings select,.color-setting{height:42px;font-size:12px}.new-template-preview span{font-size:11px}.board-list-view{flex:1;overflow:auto;background:#f5f6f9;padding:20px 24px 28px}.board-task-list{min-width:1340px;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 1px 3px #1f213608}.board-list-head,.board-list-row{display:grid;grid-template-columns:minmax(330px,2fr) 165px 180px 110px 155px 130px 95px 42px;gap:14px;align-items:center;padding-inline:18px}.board-list-head{min-height:48px;background:#fafafd;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.045em}.board-list-row{min-height:82px;border-top:1px solid #eeeef3;font-size:11px;transition:background .16s}.board-list-row:hover{background:#fcfcfe}.board-list-task{min-width:0;text-align:left;display:flex;flex-direction:column;align-items:flex-start;padding-block:12px}.board-list-task strong{max-width:100%;font-size:14px;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.board-list-task span{max-width:100%;font-size:11px;color:var(--muted);line-height:1.4;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.board-list-task small{font-size:10px;color:var(--primary);margin-top:4px}.board-list-status{height:36px;border-radius:9px;display:flex;align-items:center;gap:4px;padding:0 9px}.board-list-status select{min-width:0;flex:1;border:0;outline:0;background:transparent;color:#505264;font-size:11px;font-weight:600;-webkit-appearance:none;-moz-appearance:none;appearance:none}.board-list-status svg{color:#737587;flex:none;pointer-events:none}.board-list-assignee{min-width:0;display:flex;align-items:center;gap:8px}.board-list-assignee strong{font-size:11px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.board-list-assignee .avatar-sm{width:30px;height:30px;font-size:10px}.board-list-row .priority-label{font-size:10px}.board-list-dates{display:flex;flex-direction:column;gap:4px}.board-list-dates small{font-size:10px;color:var(--muted)}.board-list-dates strong{font-size:11px;font-weight:600}.board-list-effort{display:flex;flex-direction:column;gap:7px}.board-list-effort strong{font-size:11px}.board-list-effort>i{width:92px;height:5px;border-radius:4px;background:#ececf2;overflow:hidden}.board-list-effort b{display:block;height:100%;background:var(--primary);border-radius:inherit}.board-list-activity{display:flex;align-items:center;gap:11px;color:var(--muted)}.board-list-activity span{display:flex;align-items:center;gap:4px;font-size:11px}.board-list-empty{min-height:220px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--muted)}.board-list-empty strong{font-size:14px;color:var(--ink);margin-top:9px}.board-list-empty span{font-size:11px;margin-top:4px}.users-row .person-cell>.avatar{display:inline-grid;place-items:center;align-items:center;justify-items:center;line-height:1;text-align:center}.rate-cell>button:only-child{display:inline-flex;width:auto;min-width:116px;height:38px;margin:0;padding:0 11px;align-items:center;justify-content:flex-start;gap:7px;white-space:nowrap;border:1px solid #d6e9e2;border-radius:9px;background:#edf7f3;color:#3f7f6c}.rate-cell>button:only-child small{font-size:10px;color:#6f8f85}.sidebar-nav{overflow-y:auto;min-height:0;padding-bottom:12px}.sidebar-insight{flex:none}.hr-page{max-width:1660px;margin:0 auto;padding-bottom:30px}.hr-intro{align-items:flex-end}.module-kicker{display:inline-flex;align-items:center;gap:6px;color:#4d8a78;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}.ksa-chip{display:flex;align-items:center;gap:9px;padding:9px 12px;border:1px solid #dfe1e9;border-radius:9px;background:#fff;color:#676a7a;font-size:10px;font-weight:600}.ksa-chip i{width:5px;height:5px;border-radius:50%;background:#4e9a7e}.hr-tabs{display:flex;gap:4px;padding:5px;margin-bottom:18px;overflow:auto}.hr-tabs button{height:38px;padding:0 14px;border-radius:8px;color:#727688;font-size:11px;white-space:nowrap}.hr-tabs button.active{background:var(--primary-soft);color:var(--primary);font-weight:600}.hr-metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:16px}.hr-metric{min-height:116px;padding:18px}.hr-metric .metric-icon{width:42px;height:42px}.hr-metric .metric-icon svg{width:19px}.hr-metric small{font-size:10px}.hr-metric strong{font-size:23px;margin:4px 0}.hr-metric p{font-size:10px;line-height:1.4}.hr-overview-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:16px;margin-bottom:16px}.hr-control-card,.department-cost{padding:20px}.hr-control-card>header,.department-cost>header,.payroll-checks>header,.journal-balance>header,.dimension-control>header{display:flex;align-items:center;justify-content:space-between}.hr-control-card>header>div,.payroll-checks>header,.journal-balance>header{display:flex;align-items:center;gap:11px}.hr-control-card h3,.department-cost h3,.finance-bridge h3,.payroll-checks h3,.journal-balance h3,.dimension-control h3{font-size:15px}.hr-control-card p,.department-cost p,.finance-bridge p,.payroll-checks p,.journal-balance p{font-size:10px;color:var(--muted);margin-top:3px;line-height:1.45}.close-steps{display:grid;grid-template-columns:repeat(4,1fr);position:relative;margin:25px 0 20px}.close-steps:before{content:"";position:absolute;left:16px;right:16px;top:14px;height:2px;background:#ececf2}.close-step{position:relative;display:flex;flex-direction:column;gap:8px;z-index:1}.close-step>i{width:29px;height:29px;border-radius:50%;display:grid;place-items:center;background:#f0f1f5;border:3px solid #fff;box-shadow:0 0 0 1px #e5e6ec;color:#999cab;font-size:9px;font-style:normal}.close-step.done>i{background:#dcefe8;color:#3f8770}.close-step.current>i{background:var(--primary);color:#fff;box-shadow:0 0 0 4px var(--primary-soft)}.close-step span{display:flex;flex-direction:column;padding-right:8px}.close-step strong{font-size:10px}.close-step small{font-size:8px;color:var(--muted);line-height:1.4;margin-top:3px}.hr-control-card>.primary-button{height:38px;font-size:10px}.department-cost>header>span{font-size:9px;color:var(--muted);background:#f4f4f7;padding:5px 8px;border-radius:6px}.department-cost>div{margin:20px 0}.cost-bar-row{margin:13px 0}.cost-bar-row>span{display:flex;justify-content:space-between;align-items:center;margin-bottom:7px}.cost-bar-row strong{font-size:10px}.cost-bar-row small{font-size:9px;color:var(--muted)}.cost-bar-row>i{display:block;height:7px;background:#f0f0f4;border-radius:5px;overflow:hidden}.cost-bar-row b{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#6f68b3,#8e88c7)}.department-cost>footer{display:flex;align-items:center;gap:9px;padding:12px;background:#f6f4fb;border-radius:9px;color:var(--primary)}.department-cost>footer>span{display:flex;flex-direction:column}.department-cost>footer strong{font-size:12px}.department-cost>footer small{font-size:8px;color:var(--muted);margin-top:2px}.finance-bridge{display:flex;align-items:center;justify-content:space-between;padding:17px 20px}.finance-bridge>div{display:flex;align-items:center;gap:12px}.finance-bridge .secondary-button{height:38px;font-size:10px}.hr-section-head{display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:17px;border-bottom:1px solid var(--line)}.hr-section-head h3{font-size:16px}.hr-section-head p{font-size:10px;color:var(--muted);margin-top:4px;line-height:1.45}.confidential-chip,.source-chip{display:flex;align-items:center;gap:6px;background:#f4f3fa;color:#6861aa;border-radius:7px;padding:7px 9px;font-size:9px}.source-chip{background:#f3f5f8;color:#6d7181}.hr-table-panel{padding:20px;overflow:hidden}.hr-toolbar{display:flex;align-items:center;justify-content:space-between;padding:14px 0}.hr-toolbar>div{display:flex;gap:6px}.soft-badge{font-size:9px}.hr-people-table,.attendance-table,.payroll-table,.journal-table{border:1px solid var(--line);border-radius:11px;overflow:auto}.hr-people-row{display:grid;grid-template-columns:minmax(240px,1.55fr) .8fr .9fr .85fr .95fr .65fr 38px;gap:14px;align-items:center;min-width:1220px;min-height:76px;padding:10px 15px;border-top:1px solid #ececf1;font-size:10px}.hr-people-row:first-child{border:0}.hr-table-head{min-height:42px!important;background:#fafafd;color:#858999;text-transform:uppercase;letter-spacing:.04em;font-size:8px!important}.hr-people-row>span{min-width:0;display:flex;flex-direction:column}.hr-people-row strong{font-size:10px}.hr-people-row small{font-size:8px;color:var(--muted);margin-top:3px;line-height:1.35}.hr-people-row .person-cell{flex-direction:row;align-items:center;gap:9px}.hr-people-row .person-cell>span{display:flex;flex-direction:column}.scheme-chip{align-self:flex-start;background:#f0eef8;color:#5e579c;padding:5px 7px;border-radius:6px;font-size:9px;font-style:normal;font-weight:600}.hr-people-row .status-pill{align-self:flex-start}.hr-people-row .avatar{flex:none}.attendance-metrics{margin-top:0}.attendance-row{display:grid;grid-template-columns:minmax(220px,1.4fr) .55fr .7fr .55fr .5fr .55fr 1fr .65fr;gap:12px;align-items:center;min-width:1110px;min-height:66px;padding:9px 14px;border-top:1px solid #ececf1;font-size:10px}.attendance-row:first-child{border:0}.attendance-row>span{display:flex;flex-direction:column}.attendance-row small{font-size:8px;color:var(--muted);margin-top:3px}.attendance-row .person-cell{flex-direction:row;align-items:center;gap:8px}.approval-toggle{justify-self:start;height:30px;padding:0 10px;border-radius:7px;background:#f2f2f6;color:#737687;font-size:9px}.approval-toggle.approved{display:flex;align-items:center;gap:5px;background:#e4f2ed;color:#3d816c}.warning-text{color:#b46e55}.payroll-command{display:flex;justify-content:space-between;align-items:center;padding:18px 20px;margin-bottom:14px}.payroll-command h3{font-size:17px;margin-top:7px}.payroll-command p{font-size:9px;color:var(--muted);margin-top:4px}.payroll-period{display:flex;align-items:center;gap:6px;font-size:9px;color:var(--primary);font-weight:600;text-transform:uppercase;letter-spacing:.06em}.payroll-command-actions{display:flex;align-items:center;gap:8px}.payroll-command-actions button{height:38px;font-size:10px}.run-status{display:flex;align-items:center;gap:6px;padding:8px 10px;border-radius:8px;background:#fff4d9;color:#997329;font-size:9px;font-weight:600;font-style:normal}.run-status i{width:6px;height:6px;border-radius:50%;background:currentColor}.run-status.approved{background:#e1f1eb;color:#3d836e}.payroll-workspace{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:15px}.payroll-lines{padding:20px;overflow:hidden}.payroll-row{display:grid;grid-template-columns:minmax(210px,1.3fr) .65fr .7fr .65fr .72fr .75fr .75fr;gap:12px;align-items:center;min-width:1020px;min-height:64px;padding:9px 13px;border-top:1px solid #ececf1;font-size:9px}.payroll-row:first-child{border:0}.payroll-row .person-cell{display:flex;align-items:center;gap:8px}.payroll-row .person-cell>span{display:flex;flex-direction:column}.payroll-row small{font-size:8px;color:var(--muted);margin-top:3px}.green-text{color:#39806a}.payroll-checks{padding:18px}.payroll-checks>header{justify-content:flex-start;margin-bottom:16px}.payroll-checks>div>span{display:flex;align-items:flex-start;gap:8px;padding:10px 0;border-top:1px solid #eeeef2}.payroll-checks>div>span:first-child{border:0}.payroll-checks>div>span>i{width:22px;height:22px;display:grid;place-items:center;border-radius:7px;background:#f8e8e6;color:#af655d;font-style:normal}.payroll-checks>div>span>i.passed{background:#dff0ea;color:#3c826d}.payroll-checks>div>span>span{display:flex;flex-direction:column}.payroll-checks strong{font-size:9px}.payroll-checks small{font-size:8px;color:var(--muted);line-height:1.35;margin-top:3px}.payroll-checks>footer{display:flex;gap:8px;background:#f3f2fa;color:var(--primary);border-radius:9px;padding:11px;margin-top:10px}.payroll-checks>footer>span{display:flex;flex-direction:column}.text-button{display:flex;align-items:center;gap:5px;color:var(--primary);font-size:9px}.dynamics-hero{display:flex;align-items:center;justify-content:space-between;padding:20px;margin-bottom:15px}.dynamics-flow{display:flex;align-items:center;gap:10px}.dynamics-flow>svg{color:#b4b6c1}.flow-node{min-width:150px;display:grid;grid-template-columns:35px 1fr 16px;gap:8px;align-items:center;padding:10px;background:#fafafd;border:1px solid var(--line);border-radius:9px}.flow-node>span{width:35px;height:35px;display:grid;place-items:center;border-radius:8px;background:#f0eff7;color:var(--primary)}.flow-node strong{font-size:9px}.flow-node small{display:block;font-size:7px;color:var(--muted);margin-top:3px}.flow-node>svg{color:#429177}.dynamics-actions{display:flex;gap:8px}.dynamics-actions button{height:38px;font-size:9px}.journal-summary-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:15px;margin-bottom:15px}.journal-balance,.dimension-control{padding:18px}.journal-balance>header{justify-content:flex-start}.journal-balance>div{display:flex;align-items:center;gap:14px;margin-top:17px}.journal-balance>div>span{display:flex;flex-direction:column}.journal-balance small{font-size:8px;color:var(--muted)}.journal-balance>div strong{font-size:15px;margin-top:3px}.journal-balance>div>i{width:25px;height:2px;background:#d4d6df}.journal-balance>div>em{font-size:8px;color:#3e856f;background:#e2f1ec;padding:6px 8px;border-radius:6px;font-style:normal}.dimension-control>header .status-pill{font-size:8px}.dimension-control>div{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:15px}.dimension-control>div>span{display:flex;align-items:center;gap:6px;font-size:8px;color:#676a7b}.dimension-control>div svg{color:#438a74}.dimension-control strong{font-size:8px;color:var(--ink)}.journal-row{display:grid;grid-template-columns:44px .65fr 1.25fr .7fr .7fr .75fr .75fr;gap:12px;align-items:center;min-width:950px;min-height:52px;padding:8px 13px;border-top:1px solid #ececf1;font-size:9px}.journal-row:first-child{border:0}.journal-row>span:first-child{color:var(--muted)}.journal-row>strong:nth-last-child(-n+2){text-align:right}.hr-disclaimer{display:flex;align-items:flex-start;gap:7px;color:#848795;font-size:8px;line-height:1.45;margin:12px 3px}.hr-disclaimer svg{flex:none;color:#ba7b55}.hr-loading{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.hr-loading>div{height:115px;background:linear-gradient(90deg,#f4f4f8,#fafafd,#f4f4f8);background-size:200% 100%;border-radius:12px;animation:skeleton 1.3s infinite}@media(max-width:1400px){.hr-metric-grid{grid-template-columns:repeat(2,1fr)}.dynamics-hero{align-items:flex-start;flex-direction:column;gap:15px}.dynamics-flow{width:100%;overflow:auto;padding-bottom:5px}}@media(max-width:1000px){.hr-overview-grid,.payroll-workspace,.journal-summary-grid{grid-template-columns:1fr}.close-steps{grid-template-columns:repeat(2,1fr);gap:16px}.close-steps:before{display:none}.payroll-command{align-items:flex-start;flex-direction:column;gap:14px}.hr-metric-grid{grid-template-columns:1fr}.finance-bridge{align-items:flex-start;flex-direction:column;gap:12px}}.hr-tabs button{font-size:12px}.hr-metric small,.hr-metric p{font-size:11px}.hr-metric strong{font-size:25px}.hr-control-card h3,.department-cost h3,.finance-bridge h3,.payroll-checks h3,.journal-balance h3,.dimension-control h3{font-size:16px}.hr-control-card p,.department-cost p,.finance-bridge p,.payroll-checks p,.journal-balance p,.close-step strong{font-size:11px}.close-step small{font-size:10px}.cost-bar-row strong{font-size:11px}.cost-bar-row small{font-size:10px}.hr-section-head h3{font-size:17px}.hr-section-head p{font-size:11px}.confidential-chip,.source-chip,.soft-badge{font-size:10px}.hr-table-head{font-size:10px!important}.hr-people-row,.attendance-row{font-size:11px}.hr-people-row strong,.attendance-row strong{font-size:12px}.hr-people-row small,.attendance-row small,.scheme-chip,.approval-toggle{font-size:10px}.payroll-command p{font-size:11px}.payroll-period,.run-status{font-size:10px}.payroll-row{font-size:11px}.payroll-row strong{font-size:12px}.payroll-row small{font-size:10px}.payroll-checks strong{font-size:11px}.payroll-checks small{font-size:10px}.text-button,.flow-node strong{font-size:11px}.flow-node small{font-size:9px}.dimension-control>div>span,.dimension-control strong{font-size:10px}.journal-row{font-size:11px}.journal-row strong{font-size:12px}.hr-disclaimer{font-size:10px}input::placeholder,textarea::placeholder{color:#555968;opacity:1}.nav-heading{color:#4b4f5f}.nav-item{color:#353847}.sidebar-brand small,.topbar-title span{color:#454958}.sidebar-insight p{color:#3f4251}.sidebar-toggle{color:#494d5c}.global-search{color:#484c5b}.global-search input{color:var(--ink)}.profile-copy small,.popover button small,.profile-popover-head span,.metric-card p{color:var(--muted)}.soft-badge,.filter-button,.settings-nav button{color:#3f4251}.view-toggle button{color:#484b5a}.table-head,.cost-head,.users-head,.board-list-head,.hr-table-head{color:#3b3e4d;font-weight:600}.timesheet-table td:first-child small{color:#424554}.hours-empty{color:#555968}.settings-toolbar>span{color:#3f4251}.row-arrow,.dynamics-flow>svg{color:#555968}.hr-disclaimer{color:#3f4251}.page-intro p,.panel-header p,.metric-card p,.settings-section-head p,.hr-section-head p,.hr-control-card p,.department-cost p,.finance-bridge p,.payroll-checks p,.journal-balance p,.payroll-command p{font-weight:500}.page-content small,.sidebar small,.topbar small{opacity:1}.avatar,.users-row .person-cell>.avatar,.hr-people-row .person-cell>.avatar,.attendance-row .person-cell>.avatar,.payroll-row .person-cell>.avatar{display:inline-flex!important;align-items:center!important;justify-content:center!important;padding:0!important;line-height:1!important;text-align:center!important;vertical-align:middle}.project-badge,.project-logo,.project-card-icon{align-items:center;justify-items:center;line-height:1;text-align:center;padding:0}.employee-master-actions{display:flex;align-items:center;gap:9px}.employee-master-actions .primary-button{height:38px;font-size:11px}.master-edit-button{width:32px;height:32px;border:1px solid #d9dbe4;border-radius:8px;display:grid;place-items:center;color:#505464;background:#fff}.master-edit-button:hover{color:var(--primary);border-color:#bcb8d8;background:var(--primary-soft)}.employee-master-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.employee-master-form fieldset{min-width:0;border:1px solid #dfe1e8;border-radius:12px;padding:16px;background:#fcfcfe}.employee-master-form fieldset:first-child,.employee-master-form fieldset.expatriate-documents{grid-column:1/-1}.employee-master-form legend{display:flex;align-items:center;gap:8px;padding:0 8px;color:var(--primary)}.employee-master-form legend>span{display:flex;flex-direction:column}.employee-master-form legend strong{font-size:13px;color:var(--ink)}.employee-master-form legend small{font-size:10px;color:var(--muted);margin-top:2px}.employee-master-form .field-label{font-size:11px;color:#3f4251;font-weight:600}.employee-master-form .field-label input,.employee-master-form .field-label select{height:40px;font-size:12px;color:var(--ink)}.employee-master-form .field-label input:disabled,.employee-master-form .field-label select:disabled{background:#f0f1f5;color:#555968}.employee-check{display:flex;align-items:center;gap:9px;min-height:40px;padding:9px 11px;border:1px solid #dddfe7;border-radius:8px;background:#fff}.employee-check input{width:16px;height:16px;accent-color:var(--primary)}.employee-check>span{display:flex;flex-direction:column}.employee-check strong{font-size:11px}.employee-check small{font-size:9px;color:var(--muted);margin-top:2px}.package-total{display:flex;align-items:center;justify-content:space-between;background:#eeecf8;color:var(--primary);border-radius:9px;padding:11px 12px;margin-top:13px}.package-total>span{display:flex;align-items:center;gap:7px}.package-total strong{font-size:12px}.form-error{display:flex;align-items:center;gap:7px;color:#9c3f49;background:#fff0f1;border:1px solid #efcbd0;border-radius:8px;padding:10px 12px;font-size:11px;margin-top:13px}.expat-guidance{display:flex;align-items:flex-start;gap:8px;background:#fff7df;border:1px solid #eedca7;color:#6d5424;border-radius:9px;padding:10px 11px;margin-bottom:13px}.expat-guidance svg{flex:none;margin-top:1px}.expat-guidance span{font-size:10px;line-height:1.45}.expat-guidance strong{font-size:10px;margin-right:5px}.document-chip{font-style:normal;display:inline-flex;align-items:center;gap:5px;width:max-content;border-radius:8px;padding:5px 7px;font-size:10px;font-weight:600}.document-chip i{width:5px;height:5px;border-radius:50%;background:currentColor}.document-chip.warning{background:#fff1c9;color:#795a18}.document-chip.danger{background:#fae0e3;color:#973c46}@media(max-width:900px){.employee-master-form{grid-template-columns:1fr}.employee-master-form fieldset:first-child{grid-column:auto}.employee-master-actions{align-items:flex-end;flex-direction:column}}
