:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#162033;background:#f3f6fa;font-synthesis:none;--navy: #07111f;--navy-2: #0d1b2d;--blue: #0b7cff;--blue-dark: #055dc4;--green: #0ea878;--red: #e44d61;--amber: #e99b16;--ink: #162033;--muted: #718096;--line: #e3eaf2;--panel: #fff;--shadow: 0 12px 35px rgba(26, 44, 71, .065)}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{min-width:320px}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}.boot{min-height:100vh;display:grid;place-content:center;gap:25px;background:var(--navy);color:#fff;text-align:center}.boot-mark{letter-spacing:.35em;font-weight:900;font-size:1.35rem}.spinner{width:28px;height:28px;border-radius:50%;border:3px solid rgba(11,124,255,.18);border-top-color:var(--blue);animation:spin .75s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.login-page{min-height:100vh;display:grid;grid-template-columns:minmax(480px,1.1fr) minmax(420px,.9fr);background:#fff}.login-story{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;padding:48px clamp(45px,6vw,100px) 62px;background:radial-gradient(circle at 80% 18%,#123e70 0,transparent 32%),linear-gradient(145deg,#06101d,#0a1b2e 58%,#0d2d4e);color:#fff}.login-story:after{content:"";position:absolute;inset:auto -120px -200px auto;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(11,124,255,.3),transparent 68%)}.brand-lockup,.sidebar-brand{display:flex;align-items:center;gap:13px;letter-spacing:.16em;font-weight:800;font-size:.88rem;z-index:2}.brand-cube{width:35px;height:35px;border-radius:10px;display:inline-grid;place-items:center;background:linear-gradient(145deg,#298eff,#0061d4);color:#fff;font-weight:900;box-shadow:0 8px 22px #0b7cff59;letter-spacing:0}.story-copy{position:relative;z-index:2;max-width:720px;margin:auto 0;padding:80px 0 45px}.story-copy h1{font-size:clamp(2.75rem,5vw,5.25rem);line-height:1.02;letter-spacing:-.06em;margin:18px 0 28px;max-width:850px}.story-copy>p{max-width:680px;font-size:1.1rem;line-height:1.75;color:#b8c8dc}.eyebrow{color:var(--blue);text-transform:uppercase;letter-spacing:.16em;font-weight:800;font-size:.69rem}.eyebrow.light{color:#6bb2ff}.login-benefits{display:flex;gap:12px;flex-wrap:wrap;margin-top:35px}.login-benefits span{display:flex;align-items:center;gap:9px;border:1px solid rgba(255,255,255,.12);background:#ffffff0e;padding:10px 14px;border-radius:12px;color:#d7e4f2;font-size:.83rem;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.story-orbit{position:absolute;border:1px solid rgba(125,190,255,.13);border-radius:50%}.orbit-one{width:520px;height:520px;right:-210px;top:-190px}.orbit-two{width:340px;height:340px;right:-125px;top:-100px}.login-form-wrap{display:grid;place-items:center;padding:45px;background:linear-gradient(180deg,#fff,#f8fafc)}.login-card{width:min(420px,100%)}.login-card h2{font-size:2.35rem;margin:12px 0 8px;letter-spacing:-.045em}.muted{color:var(--muted);line-height:1.6}label{display:grid;gap:8px;color:#40506a;font-size:.78rem;font-weight:720;margin-top:20px}input,select,textarea{width:100%;border:1px solid #d9e2ec;border-radius:10px;padding:11px 13px;color:var(--ink);background:#fff;outline:none;transition:border .18s,box-shadow .18s}input:focus,select:focus,textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #0b7cff1c}textarea{resize:vertical}.check-row{display:flex;align-items:center;gap:10px;font-weight:500;color:var(--muted)}.check-row input{width:17px;height:17px;accent-color:var(--blue)}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:0;padding:11px 17px;border-radius:10px;font-weight:760;font-size:.8rem;transition:transform .15s,background .15s,box-shadow .15s}.button:hover:not(:disabled){transform:translateY(-1px)}.button:disabled{opacity:.55;cursor:wait}.button.primary{color:#fff;background:linear-gradient(135deg,#0b7cff,#0664d4);box-shadow:0 8px 20px #0b7cff38}.button.secondary{color:#fff;background:var(--navy-2)}.button.ghost{color:#3e4e65;background:#fff;border:1px solid var(--line);box-shadow:0 4px 12px #1327440a}.button.wide{width:100%;margin-top:20px}.form-error,.form-success,.form-notice{padding:11px 13px;border-radius:9px;margin-top:15px;font-size:.8rem;line-height:1.5}.form-error{color:#a9293b;background:#fff0f2;border:1px solid #ffd6dc}.form-success{display:flex;align-items:center;gap:8px;color:#087151;background:#ebfbf5;border:1px solid #c6f1df}.form-notice{color:#334155;background:#f1f5f9;border:1px solid #e2e8f0}.security-note{display:flex;align-items:center;justify-content:center;gap:7px;color:#8592a4;font-size:.7rem;margin-top:18px}.app-shell{min-height:100vh;display:grid;grid-template-columns:258px minmax(0,1fr);background:#f3f6fa}.sidebar{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;padding:28px 18px 20px;color:#fff;background:linear-gradient(180deg,#07111f,#0a1727 74%,#0b1c30);box-shadow:8px 0 24px #0000000f;z-index:30}.sidebar-brand{padding:0 9px 36px}.sidebar-brand>div{display:grid;gap:0}.sidebar-brand strong{letter-spacing:.16em}.sidebar-brand small{font-size:.58rem;letter-spacing:.28em;color:#7f94ad}.sidebar nav{flex:1}.nav-label{display:block;margin:0 12px 10px;color:#63758b;text-transform:uppercase;letter-spacing:.16em;font-size:.62rem;font-weight:800}.sidebar nav a{display:flex;gap:13px;align-items:center;color:#8fa2b8;text-decoration:none;padding:13px 14px;margin-bottom:6px;border-radius:11px;transition:color .15s,background .15s}.sidebar nav a:hover{color:#fff;background:#ffffff0b}.sidebar nav a.active{color:#fff;background:linear-gradient(135deg,#0b7cff3b,#0b7cff14);box-shadow:inset 3px 0 #258dff}.sidebar nav a>span{display:grid;gap:2px}.sidebar nav strong{font-size:.82rem}.sidebar nav small{color:#71849a;font-size:.66rem}.sidebar nav a.active small{color:#9bb5d1}.sidebar-user{display:grid;grid-template-columns:38px minmax(0,1fr) 30px;gap:10px;align-items:center;padding:14px 10px 0;border-top:1px solid rgba(255,255,255,.08)}.avatar{width:36px;height:36px;display:grid;place-items:center;border-radius:10px;color:#baddff;background:#0b7cff2e;font-size:.7rem;font-weight:850}.sidebar-user>div:nth-child(2){display:grid;min-width:0}.sidebar-user strong{overflow:hidden;text-overflow:ellipsis;font-size:.7rem}.sidebar-user small{color:#6f8299;font-size:.61rem}.sidebar-user button,.mobile-close,.menu-button{border:0;background:transparent;color:#8296ad;padding:5px}.mobile-close,.menu-button{display:none}.workspace{min-width:0}.topbar{height:90px;display:flex;align-items:center;gap:14px;padding:0 clamp(24px,4vw,58px);border-bottom:1px solid #e6ecf3;background:#ffffffdb;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);position:sticky;top:0;z-index:20}.topbar>div:nth-of-type(1){flex:1}.topbar h1{margin:3px 0 0;font-size:1.28rem;letter-spacing:-.03em}.live-pill{display:inline-flex;align-items:center;gap:8px;padding:8px 11px;border-radius:99px;border:1px solid #dfe8f1;color:#607087;font-size:.7rem;font-weight:700;background:#fff}.live-pill>span{width:7px;height:7px;background:var(--green);border-radius:50%;box-shadow:0 0 0 4px #0ea8781f}.workspace-content{padding:36px clamp(22px,4vw,58px) 70px;max-width:1780px;margin:0 auto}.dashboard-stack{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;min-width:0}.page-intro{display:flex;justify-content:space-between;align-items:flex-end;gap:25px}.page-intro h2,.section-title h2{font-size:clamp(1.6rem,2.5vw,2.35rem);line-height:1.13;letter-spacing:-.045em;margin:8px 0}.page-intro p{color:var(--muted);margin:0;font-size:.85rem;line-height:1.6;max-width:750px}.toolbar{display:flex;gap:9px;align-items:center}.toolbar select{min-width:120px;padding:10px 12px}.panel{background:var(--panel);border:1px solid rgba(220,229,239,.82);border-radius:16px;box-shadow:var(--shadow)}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;padding:23px 25px 7px}.panel-head h3{margin:0 0 5px;font-size:.98rem;letter-spacing:-.02em}.panel-head p{margin:0;color:var(--muted);font-size:.72rem;line-height:1.45}.panel-head>svg{color:#9aaabd}.kpi-grid{display:grid;gap:16px}.kpi-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.kpi-card{position:relative;overflow:hidden;min-height:165px;display:flex;flex-direction:column;padding:20px 21px;border:1px solid rgba(220,229,239,.82);border-radius:15px;background:#fff;box-shadow:var(--shadow)}.kpi-card:after{content:"";position:absolute;width:120px;height:120px;border-radius:50%;right:-55px;top:-55px;background:#0b7cff0b}.kpi-icon{width:34px;height:34px;display:grid;place-items:center;color:var(--blue);background:#eaf4ff;border-radius:9px;margin-bottom:18px}.kpi-icon svg{width:18px}.kpi-card>span{color:var(--muted);font-size:.7rem;font-weight:720}.kpi-card>strong{margin:5px 0 4px;font-size:clamp(1.3rem,2vw,1.85rem);letter-spacing:-.045em}.kpi-card>small{display:flex;align-items:center;gap:4px;color:#8896a8;font-size:.65rem;margin-top:auto;line-height:1.4}.kpi-card.green .kpi-icon{color:var(--green);background:#e8faf4}.kpi-card.red .kpi-icon{color:var(--red);background:#fff0f2}.kpi-card.green>strong{color:#087b5a}.kpi-card.red>strong{color:#c93a4e}.dashboard-grid{display:grid;gap:18px}.dashboard-grid.wide-main{grid-template-columns:minmax(0,2.05fr) minmax(300px,.95fr)}.chart-panel{padding-bottom:6px;min-width:0}.risk-panel{padding-bottom:17px}.risk-row{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:8px 20px;padding:11px 9px;border-bottom:1px solid #eef2f6;font-size:.73rem}.risk-row span{display:flex;align-items:center;gap:8px;color:#607087}.risk-row svg{color:#a2afbf}.risk-row strong{min-width:32px;text-align:center;padding:4px 7px;border-radius:7px;font-size:.72rem}.risk-row strong.danger{color:#b93649;background:#fff0f2}.risk-row strong.ok{color:#087253;background:#e9faf4}.table-wrap{width:100%;overflow:auto;padding:8px 22px 22px}table{width:100%;border-collapse:collapse;white-space:nowrap;font-size:.72rem}th{padding:11px 12px;color:#8492a4;text-transform:uppercase;letter-spacing:.07em;font-size:.59rem;text-align:left;border-bottom:1px solid #dde6ef}td{padding:12px;color:#516075;border-bottom:1px solid #edf1f5}tbody tr:hover{background:#f8fafc}td strong{color:#28364b}.positive{color:#07815d;font-weight:800}.negative{color:#cf4054;font-weight:800}.loading-panel{min-height:350px;display:grid;place-content:center;justify-items:center;gap:14px;color:var(--muted);font-size:.78rem}.empty-state{min-height:340px;display:grid;place-content:center;text-align:center;justify-items:center;padding:40px}.empty-state h2{margin:10px 0}.empty-state p{color:var(--muted);max-width:560px;line-height:1.6}.empty-inline{padding:28px 25px 35px;color:var(--muted);font-size:.78rem}.attendance-layout{display:grid;grid-template-columns:minmax(460px,1.55fr) minmax(300px,.85fr);gap:18px;align-items:start}.attendance-form{padding:0 25px 22px}.attendance-form .panel-head{padding-inline:0}.type-picker{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:15px 0 8px}.type-picker button{border:1px solid #dfe7ef;background:#f8fafc;color:#64748b;padding:10px 8px;border-radius:9px;font-size:.7rem;font-weight:700}.type-picker button.active{color:#0766cf;border-color:#78b7fb;background:#edf6ff;box-shadow:inset 0 0 0 1px #0b7cff1f}.form-grid{display:grid;gap:11px}.form-grid.two{grid-template-columns:repeat(2,1fr)}.form-grid.three{grid-template-columns:repeat(3,1fr)}.worked-preview{display:grid;grid-template-columns:28px 1fr auto;gap:10px;align-items:center;margin-top:18px;padding:13px;border-radius:11px;background:#f2f7fc;color:#506078;font-size:.72rem}.worked-preview svg{color:var(--blue);width:19px}.worked-preview strong{color:#203047}.side-stack{display:grid;gap:18px}.attendance-kpi{min-height:180px;background:linear-gradient(145deg,#0a1727,#0d2948);border:0;color:#fff}.attendance-kpi:after{background:#489fff1f;width:190px;height:190px}.attendance-kpi .kpi-icon{background:#489fff2b;color:#8fc5ff}.attendance-kpi>span,.attendance-kpi>small{color:#8fa5bc}.mini-timeline{padding-bottom:12px}.timeline-row{display:grid;grid-template-columns:12px 1fr auto;gap:10px;align-items:center;margin:0 20px;padding:10px 4px;border-bottom:1px solid #edf2f6}.entry-dot{width:8px;height:8px;border-radius:50%;background:var(--blue)}.entry-dot.vacation{background:#8b5cf6}.entry-dot.medical{background:var(--red)}.timeline-row>div{display:grid;gap:2px}.timeline-row strong{font-size:.7rem}.timeline-row small{color:#8794a6;font-size:.62rem}.timeline-row b{font-size:.65rem;color:#55647a}.manager-section{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;min-width:0;margin-top:8px;padding-top:28px;border-top:1px solid #dfe7ef}.section-title{display:flex;align-items:center;justify-content:space-between}.section-title svg{color:#a4b1c1;width:32px;height:32px}.manager-grid{grid-template-columns:minmax(0,1.4fr) minmax(360px,.8fr);align-items:start}.table-wrap.compact{max-height:540px}.correction-form{padding:0 23px 23px}.correction-form .panel-head{padding-inline:0}.performance-section{display:grid;gap:18px;min-width:0;margin-top:8px;padding-top:28px;border-top:1px solid #dfe7ef}.section-description{max-width:760px;margin:5px 0 0;color:var(--muted);font-size:.74rem;line-height:1.55}.performance-kpis{margin:0}.performance-chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;min-width:0}.performance-chart-wide{grid-column:1 / -1}.performance-empty{min-height:250px}.performance-empty>svg{color:#91a3b8}.source-card{padding-bottom:15px}.source-status{display:flex;gap:12px;align-items:center;margin:13px 20px 18px;padding:15px;border-radius:11px;background:#f4f8fc}.source-status svg{color:#8da0b5}.source-status.success{background:#eafaf5}.source-status.success svg{color:var(--green)}.source-status.failed{background:#fff1f3}.source-status.failed svg{color:var(--red)}.source-status>div{display:grid;gap:3px}.source-status strong{font-size:.73rem}.source-status span{color:#78879a;font-size:.62rem}.sync-row{display:grid;grid-template-columns:9px 1fr auto;gap:9px;align-items:center;margin:0 22px;padding:10px 1px;border-bottom:1px solid #eef2f6}.status-dot{width:7px;height:7px;border-radius:50%;background:#a3afbd}.status-dot.success{background:var(--green)}.status-dot.failed{background:var(--red)}.sync-row>div{display:grid}.sync-row strong{font-size:.65rem}.sync-row small{color:#8c99a9;font-size:.58rem}.sync-row b{color:#67768a;font-size:.6rem}.shop-pill{display:inline-flex;padding:4px 8px;border-radius:7px;color:#0765ce;background:#edf6ff;font-size:.63rem;font-weight:800}.reason-cell{max-width:390px;overflow:hidden;text-overflow:ellipsis}.marketing-room{gap:20px}.marketing-intro{margin-bottom:2px}.marketing-tabs{display:flex;gap:5px;padding:6px;overflow-x:auto;border:1px solid var(--line);border-radius:14px;background:#ffffffd1;box-shadow:0 8px 25px #1a2c470b;scrollbar-width:none}.marketing-tabs::-webkit-scrollbar{display:none}.marketing-tabs button{position:relative;display:inline-flex;flex:1 0 auto;align-items:center;justify-content:center;gap:8px;min-height:43px;padding:9px 14px;border:0;border-radius:10px;color:#69788d;background:transparent;font-size:.72rem;font-weight:780;transition:.18s ease}.marketing-tabs button:hover{color:#26384f;background:#f4f8fc}.marketing-tabs button.active{color:#0568d9;background:#eaf4ff;box-shadow:inset 0 0 0 1px #0b7cff14}.marketing-tabs svg{width:16px;height:16px}.marketing-tabs button>i{position:absolute;right:7px;top:7px;width:6px;height:6px;border-radius:50%;background:var(--red);box-shadow:0 0 0 3px #fff}.marketing-filters{display:flex;align-items:center;gap:10px;padding:10px;box-shadow:none}.marketing-filters select{width:220px;min-width:180px;margin:0}.search-box{position:relative;flex:1;min-width:180px}.search-box svg{position:absolute;left:13px;top:50%;width:16px;color:#91a0b2;transform:translateY(-50%);pointer-events:none}.search-box input{padding-left:39px}.clear-filter{display:inline-flex;align-items:center;gap:5px;flex:0 0 auto;border:0;padding:8px;color:#637287;background:transparent;font-size:.68rem;font-weight:750}.clear-filter svg{width:14px}.view-intro{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;padding:7px 1px 2px}.view-intro h3{margin:6px 0 5px;color:#17243a;font-size:clamp(1.35rem,2vw,1.9rem);letter-spacing:-.035em}.view-intro p{max-width:850px;margin:0;color:var(--muted);font-size:.77rem;line-height:1.55}.data-stamp{display:inline-flex;align-items:center;gap:7px;flex:0 0 auto;padding:8px 11px;border:1px solid #dfe8f1;border-radius:999px;color:#718096;background:#fff;font-size:.64rem;font-weight:720}.data-stamp i{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px #0ea87817}.source-link{display:grid;grid-template-columns:9px 1fr auto 15px;gap:9px;align-items:center;width:calc(100% - 38px);margin:0 19px;padding:11px 4px;border:0;border-bottom:1px solid #eef2f6;color:inherit;background:transparent;text-align:left}.source-link:hover{background:#f8fafc}.source-link>div{display:grid;gap:2px}.source-link strong{color:#29384d;font-size:.67rem}.source-link small{color:#8c99a9;font-size:.58rem}.source-link b{color:#68778b;font-size:.6rem}.source-link svg{width:14px;color:#a3afbd}.dashboard-grid.two-equal{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.dashboard-grid.label-layout{grid-template-columns:minmax(0,2.25fr) minmax(270px,.75fr);align-items:stretch}.label-panel{min-width:0}.label-list{display:grid;padding:10px 22px 20px}.label-list>div{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:10px;padding:10px 0;border-bottom:1px solid #eef2f6}.label-list span{display:flex;align-items:center;gap:8px;min-width:0;overflow:hidden;color:#36465b;font-size:.68rem;font-weight:790;text-overflow:ellipsis}.label-list span i{flex:0 0 auto;width:8px;height:8px;border-radius:50%}.label-list strong{color:#1b2b40;font-size:.72rem}.label-list small{grid-column:1 / -1;margin:3px 0 0 16px;color:#8b98a8;font-size:.57rem}.click-row{cursor:pointer}.report-status{display:inline-flex;max-width:170px;overflow:hidden;padding:5px 8px;border-radius:7px;color:#08785a;background:#eafaf5;font-size:.59rem;font-weight:780;text-overflow:ellipsis}.report-status.risk{color:#bc3448;background:#fff0f2}.risk-list-panel{overflow:hidden}.risk-list{display:grid;padding:7px 20px 20px}.risk-list button{display:grid;grid-template-columns:24px minmax(0,1fr) auto;gap:10px;align-items:center;width:100%;padding:11px 3px;border:0;border-bottom:1px solid #eef2f6;color:inherit;background:transparent;text-align:left}.risk-list button:hover{background:#fafbfc}.risk-list button>b{display:grid;place-items:center;width:22px;height:22px;border-radius:7px;color:#d63d53;background:#fff0f2;font-size:.61rem}.risk-list button>span{display:grid;gap:3px;min-width:0}.risk-list strong{overflow:hidden;color:#2a394d;font-size:.67rem;text-overflow:ellipsis;white-space:nowrap}.risk-list small{overflow:hidden;color:#8996a6;font-size:.57rem;text-overflow:ellipsis;white-space:nowrap}.risk-list em{color:#d33f54;font-size:.65rem;font-style:normal;font-weight:800}.quiet{color:#8a97a8;font-size:.64rem}.metric-switch{display:flex;gap:3px;padding:3px;border-radius:9px;background:#eff4f8}.metric-switch button{border:0;padding:7px 10px;border-radius:7px;color:#6b798d;background:transparent;font-size:.62rem;font-weight:780}.metric-switch button.active{color:#0868d6;background:#fff;box-shadow:0 2px 8px #1d314e17}.empty-module{display:flex;align-items:center;gap:14px;min-height:120px;padding:24px;color:#8190a4}.empty-module>svg{width:32px;color:#9badc0}.empty-module strong{color:#39495e;font-size:.8rem}.empty-module p{margin:5px 0 0;font-size:.68rem}.campaign-panel .table-wrap{max-height:680px}.cell-note{display:block;max-width:280px;margin-top:3px;overflow:hidden;color:#8b98a8;font-size:.57rem;text-overflow:ellipsis}.controlled-value{color:#bd6c06;font-weight:820}.controlled-value small{display:block;color:#d18a28;font-size:.52rem;font-weight:700}.automation-pill{display:inline-flex;padding:5px 8px;border-radius:7px;color:#08785a;background:#eafaf5;font-size:.59rem;font-weight:780}.automation-pill.paused{color:#b9364a;background:#fff0f2}.icon-button{display:inline-grid;place-items:center;width:34px;height:34px;border:1px solid #dfe7f0;border-radius:9px;color:#5d6d82;background:#fff}.icon-button:hover{color:var(--blue);border-color:#bcd8f7;background:#f2f8ff}.icon-button svg{width:15px;height:15px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;padding:24px;background:#040d199e;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.campaign-modal{width:min(710px,100%);max-height:calc(100vh - 48px);overflow:auto;border-radius:18px;background:#fff;box-shadow:0 30px 80px #00000047}.campaign-modal>header{position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;gap:20px;padding:24px 26px 18px;border-bottom:1px solid #edf2f6;background:#fffffff5;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.campaign-modal h3{max-width:590px;margin:5px 0 2px;overflow:hidden;color:#1c2b40;font-size:1.15rem;text-overflow:ellipsis;white-space:nowrap}.campaign-modal header p{margin:0;color:#7b899c;font-size:.68rem}.campaign-modal form{padding:20px 26px 26px}.campaign-modal label small{color:#8b98aa;font-size:.58rem;font-weight:500;line-height:1.35}.control-explainer{display:flex;gap:12px;padding:14px;border:1px solid #dceafb;border-radius:11px;color:#43617e;background:#f3f8ff}.control-explainer svg{flex:0 0 auto;width:20px;color:var(--blue)}.control-explainer strong{color:#24415f;font-size:.7rem}.control-explainer p{margin:4px 0 0;font-size:.64rem;line-height:1.5}.campaign-modal footer{display:flex;justify-content:flex-end;gap:9px;margin-top:22px}.settings-panel{overflow:hidden}.settings-panel summary{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 25px;cursor:pointer;list-style:none}.settings-panel summary::-webkit-details-marker{display:none}.settings-panel summary>span:first-child{display:flex;align-items:center;gap:12px}.settings-panel summary svg{color:var(--blue)}.settings-panel summary strong,.settings-panel summary small{display:block}.settings-panel summary strong{font-size:.85rem}.settings-panel summary small{color:var(--muted);font-size:.66rem;margin-top:3px}.settings-panel summary>span:last-child{color:var(--blue);font-size:.7rem;font-weight:800}.settings-content{display:grid;gap:18px;padding:2px 25px 25px;border-top:1px solid #edf2f6}.settings-content>label{max-width:360px}.reserve-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.reserve-rule{padding:15px;border:1px solid #e3eaf2;border-radius:12px;background:#f8fafc}.reserve-rule label{margin-top:12px;font-size:.68rem}.reserve-rule-head{display:flex;align-items:center;justify-content:space-between}.reserve-rule-head label{margin:0}.reserve-rule-head code{color:#6e7d90;font-size:.58rem}.sidebar-backdrop{display:none}.absence-box,.medical-upload{display:grid;gap:13px;padding:15px;border:1px solid #dbe8f5;border-radius:12px;background:#f6faff}.absence-box{grid-template-columns:minmax(0,1fr) 150px;align-items:end}.absence-box>div,.medical-upload>div:first-child{display:flex;gap:11px;align-items:flex-start}.absence-box svg,.medical-upload svg{flex:0 0 auto;width:20px;color:var(--blue)}.absence-box span,.medical-upload span{display:grid;gap:3px}.absence-box strong,.medical-upload strong{color:#2a415b;font-size:.71rem}.absence-box small,.medical-upload small{color:#718298;font-size:.61rem;line-height:1.45}.absence-box label{margin:0}.range-absence{grid-template-columns:minmax(0,1fr);align-items:stretch}.absence-dates{padding:14px;border:1px solid #dce7f2;border-radius:12px;background:#f9fbfd}.duration-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;padding:4px;border-radius:10px;background:#eaf1f7}.duration-switch button{min-height:38px;border:0;border-radius:8px;color:#64758a;background:transparent;font-size:.65rem;font-weight:800}.duration-switch button.active{color:#086bdc;background:#fff;box-shadow:0 3px 10px #17345317}.absence-preview{display:grid;gap:3px;padding:11px 12px;border-radius:9px;color:#18664f;background:#eaf9f4}.absence-preview strong{color:#0a6d50}.absence-preview.invalid{color:#a73b4d;background:#fff0f2}.absence-preview.invalid strong{color:#a52f43}.medical-upload{border-color:#f0d9a8;background:#fffaf0}.medical-upload>div:first-child svg{color:#b87506}.file-picker{position:relative;display:flex;align-items:center;justify-content:center;gap:9px;min-height:45px;padding:10px 14px;overflow:hidden;border:1px dashed #b9cbe0;border-radius:10px;color:#41617f;background:#fff;cursor:pointer}.file-picker:hover{border-color:var(--blue);background:#f7fbff}.file-picker input{position:absolute;width:1px;height:1px;opacity:0}.file-picker span{display:block;max-width:100%;overflow:hidden;font-size:.67rem;font-weight:780;text-overflow:ellipsis;white-space:nowrap}.compact-button{justify-self:start;padding:8px 11px}.vacation-kpi{border:1px solid #cfe9df;color:#075d49;background:linear-gradient(145deg,#fff,#f0fbf7)}.vacation-kpi:after{background:#10b98114}.vacation-kpi .kpi-icon{color:#078765;background:#e1f7ef}.vacation-kpi>span,.vacation-kpi>small{color:#668c81}.negative-value{color:var(--red)}.hr-room{gap:20px}.hr-people{overflow:hidden}.hr-people .table-wrap{max-height:650px}.schedule-editor{display:grid;gap:12px;margin-top:18px;padding:15px;border:1px solid #dfe8f1;border-radius:12px;background:#f8fafc}.schedule-editor>div:first-child{display:grid;gap:4px}.schedule-editor strong{color:#30445b;font-size:.73rem}.schedule-editor small{color:#748397;font-size:.6rem;line-height:1.45}.schedule-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.schedule-grid label{margin:0;font-size:.61rem}.upcoming-absences{overflow:hidden}.absence-request-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;padding:0 24px 18px}.absence-request-list article{display:grid;grid-template-columns:12px minmax(0,1fr) auto;gap:11px;align-items:center;min-width:0;padding:13px 2px;border-bottom:1px solid #edf2f6}.absence-request-list article>div{display:grid;min-width:0;gap:3px}.absence-request-list article strong{color:#31445b;font-size:.7rem}.absence-request-list article small{overflow:hidden;color:#7d8b9d;font-size:.59rem;text-overflow:ellipsis;white-space:nowrap}.payroll-room{gap:20px}.payroll-intro .toolbar input{width:155px;min-height:41px;margin:0}.payroll-tabs{display:flex;gap:5px;padding:6px;overflow-x:auto;border:1px solid var(--line);border-radius:14px;background:#ffffffdb;box-shadow:0 8px 25px #1a2c470b;scrollbar-width:none}.payroll-tabs::-webkit-scrollbar{display:none}.payroll-tabs button{display:inline-flex;flex:1 0 auto;align-items:center;justify-content:center;gap:8px;min-height:43px;padding:9px 14px;border:0;border-radius:10px;color:#69788d;background:transparent;font-size:.72rem;font-weight:780;white-space:nowrap}.payroll-tabs button:hover{color:#26384f;background:#f4f8fc}.payroll-tabs button.active{color:#0568d9;background:#eaf4ff;box-shadow:inset 0 0 0 1px #0b7cff14}.payroll-tabs svg{width:16px;height:16px}.payroll-tabs b{display:inline-grid;min-width:19px;height:19px;place-items:center;padding:0 5px;border-radius:99px;color:#5f7086;background:#e8eef5;font-size:.57rem}.payroll-tabs button.active b{color:#0568d9;background:#d7eaff}.payroll-banner{display:flex;align-items:center;gap:8px;margin:0}.payroll-workflow{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 20px}.workflow-steps{display:grid;flex:1;grid-template-columns:repeat(4,minmax(125px,1fr));min-width:0}.workflow-steps>div{position:relative;display:grid;grid-template-columns:30px minmax(0,1fr);gap:9px;align-items:center;min-width:0;padding-right:22px}.workflow-steps>div:not(:last-child):after{content:"";position:absolute;top:15px;right:8px;left:39px;height:1px;background:#dfe7ef}.workflow-steps>div>span{z-index:1;display:grid;width:30px;height:30px;place-items:center;border:1px solid #d7e1eb;border-radius:50%;color:#8a99ab;background:#fff;font-size:.66rem;font-weight:850}.workflow-steps>div.done>span{color:#fff;border-color:#0ea878;background:#0ea878}.workflow-steps>div.current>span{box-shadow:0 0 0 5px #0ea8781c}.workflow-steps svg{width:14px}.workflow-steps>div>div{z-index:1;display:grid;min-width:0;background:#fff}.workflow-steps strong{color:#35455b;font-size:.69rem}.workflow-steps small{overflow:hidden;color:#8a98a9;font-size:.56rem;text-overflow:ellipsis;white-space:nowrap}.workflow-actions{display:flex;flex:0 0 auto;gap:8px;flex-wrap:wrap;justify-content:flex-end}.payroll-main-grid{grid-template-columns:minmax(0,1.7fr) minmax(330px,.7fr);align-items:stretch}.payroll-table-panel{min-width:0}.payroll-table-panel .table-wrap{max-height:560px}.payroll-table-panel td:last-child{color:#9aabba}.status-pill{display:inline-flex;align-items:center;gap:5px;max-width:170px;padding:5px 8px;border-radius:7px;font-size:.59rem;font-weight:790;white-space:nowrap}.status-pill.ready{color:#08785a;background:#eafaf5}.status-pill.missing{color:#b9364a;background:#fff0f2}.payroll-history{min-width:0;overflow:hidden}.payroll-empty{min-height:205px}.people-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.person-card{min-width:0;padding:19px}.person-card.inactive{opacity:.62}.person-card>header{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:11px;align-items:center}.person-card h3{overflow:hidden;margin:0 0 3px;color:#25354a;font-size:.82rem;text-overflow:ellipsis;white-space:nowrap}.person-card header p{overflow:hidden;margin:0;color:#8694a5;font-size:.61rem;text-overflow:ellipsis;white-space:nowrap}.person-avatar{display:inline-grid;flex:0 0 auto;width:40px;height:40px;place-items:center;border-radius:11px;color:#1464b6;background:#e7f2ff;font-size:.66rem;font-weight:850}.person-card dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:19px 0;padding:14px 0;border-block:1px solid #edf2f6}.person-card dl div{min-width:0}.person-card dt{margin-bottom:4px;color:#8a98a9;font-size:.56rem;text-transform:uppercase;letter-spacing:.06em}.person-card dd{overflow:hidden;margin:0;color:#36465b;font-size:.68rem;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.person-card footer{display:flex;gap:8px}.person-card footer .button{flex:1;padding-inline:10px}.candidate-panel{overflow:hidden}.candidate-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;padding:8px 22px 22px}.candidate-list button{display:grid;grid-template-columns:40px minmax(0,1fr) 18px;gap:10px;align-items:center;min-width:0;padding:12px 3px;border:0;border-bottom:1px solid #edf2f6;color:inherit;background:transparent;text-align:left}.candidate-list button:hover{background:#f8fafc}.candidate-list button>span:nth-child(2){display:grid;min-width:0;gap:3px}.candidate-list strong,.candidate-list small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.candidate-list strong{color:#34445a;font-size:.69rem}.candidate-list small{color:#8b98a8;font-size:.58rem}.candidate-list>button>svg{width:15px;color:var(--blue)}.payroll-modal{width:min(860px,100%)}.payroll-modal.small{width:min(620px,100%)}.payroll-modal .modal-body{padding:20px 26px 26px}.payroll-modal .modal-body>form{padding:0}.payroll-modal h4.form-section-title{margin:25px 0 0;padding-top:18px;border-top:1px solid #edf2f6;color:#35455a;font-size:.74rem}.band-editor{display:grid;gap:9px;margin-top:18px;padding:14px;border:1px solid #dfe8f1;border-radius:12px;background:#f8fafc}.band-head{display:flex;align-items:center;justify-content:space-between}.band-head>div{display:grid;gap:3px}.band-head strong{color:#35455b;font-size:.7rem}.band-head small{color:#7b899a;font-size:.58rem;line-height:1.45}.band-row{display:grid;grid-template-columns:115px 125px minmax(0,1fr) 36px;gap:8px;align-items:end}.band-row.exact-rate{grid-template-columns:100px 150px 135px minmax(0,1fr) 36px}.band-row label{margin:0;font-size:.61rem}.band-row .icon-button{margin-bottom:1px}.payroll-modal form>footer{display:flex;justify-content:flex-end;gap:9px;margin-top:23px}.line-explainer{display:grid;gap:15px}.line-explainer dl,.statement-breakdown dl{display:grid;margin:0}.line-explainer dl>div,.statement-breakdown dl>div{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:11px 2px;border-bottom:1px solid #edf2f6}.line-explainer dt,.statement-breakdown dt{color:#6f7e91;font-size:.7rem}.line-explainer dd,.statement-breakdown dd{margin:0;color:#26364b;font-size:.76rem;font-weight:800}.line-explainer .total,.statement-breakdown .total{margin-top:5px;padding:15px 12px;border:0;border-radius:10px;background:#edf7ff}.line-explainer .total dd,.statement-breakdown .total dd{color:#0569d8;font-size:1rem}.notification-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.notification-card{position:relative;display:grid;min-height:150px;padding:19px;overflow:hidden}.notification-card>svg{width:19px;color:#8a9aad}.notification-card>span{margin-top:16px;color:#748398;font-size:.67rem;font-weight:750}.notification-card>strong{margin:3px 0;color:#213248;font-size:1.8rem}.notification-card>small{color:#8c99aa;font-size:.59rem}.notification-card.sent>svg{color:var(--green)}.notification-card.failed>svg{color:var(--red)}.max-contract{display:grid;grid-template-columns:minmax(280px,.9fr) minmax(430px,1.1fr);gap:30px;align-items:center;padding:27px}.max-contract h3{margin:7px 0;color:#22334a;font-size:1.15rem}.max-contract p{margin:0;color:#758398;font-size:.7rem;line-height:1.6}.max-contract>small{grid-column:1 / -1;color:#8c99aa;font-size:.59rem}.max-flow{display:flex;align-items:center;justify-content:center;gap:8px;min-width:0}.max-flow span{flex:0 1 auto;min-width:0;padding:9px 11px;overflow:hidden;border:1px solid #dce7f1;border-radius:9px;color:#4e6076;background:#f7fafc;font-size:.61rem;font-weight:760;text-overflow:ellipsis;white-space:nowrap}.max-flow svg{flex:0 0 auto;width:14px;color:#9eacbb}.statement-breakdown{padding-bottom:20px}.statement-breakdown dl{padding:6px 25px}@media(max-width:1220px){.kpi-grid.four{grid-template-columns:repeat(2,1fr)}.dashboard-grid.wide-main,.manager-grid,.performance-chart-grid{grid-template-columns:minmax(0,1fr)}.performance-chart-wide{grid-column:auto}.attendance-layout{grid-template-columns:minmax(420px,1.35fr) minmax(280px,.75fr)}.reserve-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid.label-layout,.dashboard-grid.two-equal,.payroll-main-grid{grid-template-columns:minmax(0,1fr)}.people-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.payroll-workflow{align-items:stretch;flex-direction:column}}@media(max-width:900px){.login-page{grid-template-columns:1fr}.login-story{min-height:390px;padding:34px 35px}.story-copy{padding:55px 0 10px}.story-copy h1{font-size:2.8rem}.login-benefits{display:none}.login-form-wrap{padding:50px 28px 70px}.app-shell{display:block}.sidebar{position:fixed;left:0;transform:translate(-105%);width:278px;transition:transform .2s ease}.sidebar.open{transform:translate(0)}.mobile-close{display:block;margin-left:auto}.menu-button{display:inline-flex;margin-left:-7px}.sidebar-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:25;border:0;background:#030a138c;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.attendance-layout{grid-template-columns:minmax(0,1fr)}.workflow-steps{grid-template-columns:repeat(2,minmax(145px,1fr));row-gap:15px}.workflow-steps>div:nth-child(2):after{display:none}.notification-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.max-contract{grid-template-columns:minmax(0,1fr)}.max-contract>small{grid-column:auto}.schedule-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.login-story{min-height:330px}.story-copy h1{font-size:2.15rem}.story-copy>p{font-size:.9rem}.topbar{height:78px;padding-inline:18px}.live-pill{font-size:0;padding:9px}.workspace-content{padding:25px 15px 50px}.page-intro{align-items:flex-start;flex-direction:column}.toolbar{width:100%}.toolbar select,.toolbar .button{flex:1}.kpi-grid.four{grid-template-columns:1fr}.kpi-card{min-height:145px}.form-grid.two,.form-grid.three{grid-template-columns:1fr}.type-picker{grid-template-columns:repeat(2,1fr)}.attendance-form{padding-inline:17px}.absence-box{grid-template-columns:1fr}.absence-request-list,.schedule-grid{grid-template-columns:minmax(0,1fr)}.absence-request-list article{grid-template-columns:12px minmax(0,1fr)}.absence-request-list article>:last-child{grid-column:2;justify-self:start}.panel-head{padding-inline:17px}.table-wrap{padding-inline:12px}.login-form-wrap{padding-inline:20px}.reserve-grid{grid-template-columns:1fr}.marketing-tabs{justify-content:flex-start}.marketing-tabs button{flex:0 0 auto}.marketing-filters{align-items:stretch;flex-direction:column}.marketing-filters select{width:100%}.view-intro{align-items:flex-start;flex-direction:column}.data-stamp{align-self:flex-start}.panel-head{gap:12px;flex-direction:column}.metric-switch{align-self:stretch}.metric-switch button{flex:1}.modal-backdrop{align-items:end;padding:0}.campaign-modal{max-height:94vh;border-radius:18px 18px 0 0}.campaign-modal>header,.campaign-modal form{padding-left:18px;padding-right:18px}.payroll-intro .toolbar input{flex:1;width:auto}.payroll-tabs{justify-content:flex-start}.payroll-tabs button{flex:0 0 auto}.workflow-steps{grid-template-columns:minmax(0,1fr)}.workflow-steps>div:after{display:none}.workflow-actions{justify-content:stretch}.workflow-actions .button{flex:1}.people-grid,.candidate-list,.notification-grid{grid-template-columns:minmax(0,1fr)}.person-card>header{grid-template-columns:40px minmax(0,1fr)}.person-card>header .status-pill{grid-column:1 / -1;justify-self:start}.person-card footer{flex-direction:column}.band-row,.band-row.exact-rate{grid-template-columns:repeat(2,minmax(0,1fr))}.band-row label:last-of-type{grid-column:1 / -1}.band-row .icon-button{grid-column:2;justify-self:end}.max-flow{align-items:stretch;flex-direction:column}.max-flow svg{align-self:center;transform:rotate(90deg)}.payroll-modal .modal-body{padding-left:18px;padding-right:18px}}
