:root{color:#183452;background:#f3f6f9;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;--navy: #102d4f;--navy-2: #183e6a;--blue: #2878c8;--blue-soft: #e8f2fc;--line: #dce4ec;--muted: #6a7888;--surface: #ffffff;--canvas: #f3f6f9;--green: #267a56;--green-soft: #e8f6ef;--amber: #a26412;--amber-soft: #fff4dc;--red: #b53b45;--red-soft: #fdecef;--shadow: 0 16px 42px rgba(19, 48, 78, .08)}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{min-width:320px}button,input,select{font:inherit}button,select{cursor:pointer}button:disabled,input:disabled,select:disabled{cursor:not-allowed;opacity:.58}h1,h2,h3,p{margin-top:0}h1{margin-bottom:10px;color:var(--navy);font-size:clamp(28px,3vw,42px);line-height:1.05;letter-spacing:-.035em}h2{margin-bottom:8px;color:var(--navy);font-size:20px;line-height:1.25}h3{margin-bottom:12px;color:var(--navy);font-size:14px}p{color:var(--muted);line-height:1.55}small{color:var(--muted)}.eyebrow{display:block;margin-bottom:10px;color:var(--blue);font-size:11px;font-weight:800;letter-spacing:.14em}.shell{min-height:100vh;background:var(--canvas)}.sidebar{position:fixed;inset:0 auto 0 0;z-index:20;display:flex;width:272px;flex-direction:column;overflow-y:auto;background:linear-gradient(175deg,#102f53,#0e2745);color:#fff;box-shadow:8px 0 34px #061b301f}.brand{display:flex;align-items:center;gap:12px}.brand>span{display:grid;width:48px;height:48px;place-items:center;border-radius:14px;background:var(--navy);color:#fff;font-size:15px;font-weight:800;letter-spacing:.04em}.brand>div{display:flex;min-width:0;flex-direction:column;gap:2px}.brand strong{color:inherit;font-size:14px}.brand small{font-size:11px}.brand.inverse{padding:26px 24px;border-bottom:1px solid rgba(255,255,255,.1)}.brand.inverse>span{background:#fff;color:var(--navy)}.brand.inverse small{color:#ffffff8f}.workspace-label{display:flex;flex-direction:column;gap:4px;padding:24px 24px 16px}.workspace-label small{color:#ffffff7a;font-size:10px;text-transform:uppercase;letter-spacing:.08em}.workspace-label strong{font-size:15px}.sidebar nav{display:flex;flex-direction:column;gap:5px;padding:2px 14px}.sidebar nav button{display:flex;align-items:center;gap:11px;width:100%;min-height:48px;padding:8px 12px;border:0;border-radius:12px;background:transparent;color:#ffffffbd;text-align:left;font-size:13px;font-weight:600;transition:.16s ease}.sidebar nav button>span{display:grid;width:29px;height:29px;flex:0 0 auto;place-items:center;border:1px solid rgba(255,255,255,.16);border-radius:9px;font-size:11px;font-weight:800}.sidebar nav button:hover{background:#ffffff12;color:#fff}.sidebar nav button.active{background:#fff;color:var(--navy);box-shadow:0 10px 26px #05182b3d}.sidebar nav button.active>span{border-color:#d9e7f5;background:var(--blue-soft);color:var(--blue)}.sidebar-foot{margin-top:auto;padding:18px 20px 22px;border-top:1px solid rgba(255,255,255,.1)}.user{display:flex;align-items:center;gap:10px;margin-bottom:12px}.user>div:last-child{display:flex;min-width:0;flex-direction:column}.user strong{overflow-wrap:anywhere;font-size:12px}.user small{color:#ffffff75;font-size:10px}.content{min-height:100vh;margin-left:272px}.page{width:min(1540px,100%);margin:0 auto;padding:38px clamp(24px,3vw,48px) 64px}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:28px}.page-head p{max-width:760px;margin-bottom:0;font-size:13px}.head-actions,.form-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:10px}.button{min-height:42px;padding:9px 15px;border:1px solid #cfdbe7;border-radius:10px;background:#fff;color:var(--navy);font-size:12px;font-weight:700;transition:.15s ease}.button:hover:not(:disabled){border-color:#9eb9d3;transform:translateY(-1px);box-shadow:0 7px 18px #13304e17}.button.primary{border-color:var(--blue);background:var(--blue);color:#fff}.button.ghost{width:100%;border-color:#ffffff24;background:transparent;color:#ffffffbd}.button.small{min-height:38px;padding:7px 12px}.link-button{padding:5px;border:0;background:transparent;color:var(--blue);font-size:11px;font-weight:700}.icon-button{display:grid;width:38px;height:38px;place-items:center;border:1px solid var(--line);border-radius:11px;background:#fff;color:var(--navy);font-size:24px;line-height:1}.metrics{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:12px;margin-bottom:16px}.metrics>div{display:flex;min-height:92px;flex-direction:column;justify-content:center;padding:18px 20px;border:1px solid var(--line);border-radius:15px;background:#ffffffb8}.metrics span{color:var(--muted);font-size:11px;font-weight:600}.metrics strong{margin-top:4px;color:var(--navy);font-size:27px}.card,.detail-card{border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:var(--shadow)}.employees-layout{display:grid;grid-template-columns:minmax(340px,.78fr) minmax(540px,1.5fr);gap:16px;align-items:start}.list-card{position:sticky;top:18px;overflow:hidden}.list-tools{display:flex;gap:8px;padding:15px;border-bottom:1px solid var(--line)}.list-tools input{min-width:0;flex:1}input,select{width:100%;min-height:42px;padding:9px 11px;border:1px solid #ccd8e4;border-radius:9px;outline:none;background:#fff;color:var(--navy);font-size:12px;transition:border .12s ease,box-shadow .12s ease}input:focus,select:focus{border-color:var(--blue);box-shadow:0 0 0 3px #2878c81f}label{display:flex;min-width:0;flex-direction:column;gap:7px;color:#42566b;font-size:11px;font-weight:700}label small{margin-left:4px;font-weight:500}.employee-list{max-height:calc(100vh - 292px);min-height:390px;overflow-y:auto;padding:7px}.employee-list>button{display:grid;grid-template-columns:39px minmax(0,1fr) auto;gap:10px;align-items:center;width:100%;padding:12px 10px;border:1px solid transparent;border-radius:12px;background:transparent;color:inherit;text-align:left}.employee-list>button:hover{background:#f6f9fc}.employee-list>button.selected{border-color:#cde0f2;background:var(--blue-soft)}.employee-list>button>div:nth-child(2){display:flex;min-width:0;flex-direction:column;gap:2px}.employee-list strong,.employee-list span,.employee-list small{overflow-wrap:anywhere}.employee-list strong{color:var(--navy);font-size:12px}.employee-list span{color:#50667c;font-size:10px}.employee-list small{font-size:9px}.avatar{display:grid;width:39px;height:39px;flex:0 0 auto;place-items:center;border-radius:12px;background:#dceaf7;color:var(--navy-2);font-size:11px;font-weight:800;text-transform:uppercase}.avatar.large{width:58px;height:58px;border-radius:17px;font-size:15px}.detail-card{overflow:hidden}.detail-head{display:flex;align-items:center;gap:16px;padding:22px 24px;border-bottom:1px solid var(--line)}.detail-head h2{margin-bottom:6px;font-size:24px;overflow-wrap:anywhere}.detail-head .eyebrow{margin-bottom:5px}.badge-row,.preview-summary{display:flex;flex-wrap:wrap;align-items:center;gap:7px}.badge{display:inline-flex;max-width:100%;align-items:center;padding:5px 8px;border-radius:999px;background:#edf1f5;color:#5f6d7b;font-size:9px;font-weight:800;line-height:1.15;white-space:normal}.badge.green{background:var(--green-soft);color:var(--green)}.badge.amber{background:var(--amber-soft);color:var(--amber)}.badge.red{background:var(--red-soft);color:var(--red)}.badge.blue{background:var(--blue-soft);color:var(--blue)}.saving{color:var(--blue);font-size:10px;font-weight:700}.tabs{display:flex;gap:24px;overflow-x:auto;padding:0 24px;border-bottom:1px solid var(--line)}.tabs button{min-height:51px;padding:0;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--muted);font-size:11px;font-weight:700;white-space:nowrap}.tabs button.active{border-bottom-color:var(--blue);color:var(--navy)}.detail-body{padding:24px}.detail-body>section{padding-top:20px;border-top:1px solid var(--line)}.stack{display:flex;flex-direction:column;gap:18px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.choice-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:7px}.check{display:flex;min-height:40px;flex-direction:row;align-items:center;gap:9px;padding:8px 10px;border:1px solid var(--line);border-radius:9px;background:#fbfcfd;line-height:1.3}.check input{width:16px;min-height:16px;flex:0 0 auto;accent-color:var(--blue)}.check span{overflow-wrap:anywhere}fieldset{min-width:0;margin:0;padding:16px;border:1px solid var(--line);border-radius:12px}legend{padding:0 7px;color:var(--navy);font-size:11px;font-weight:800}.message{padding:12px 14px;border-radius:10px;font-size:11px;line-height:1.55}.message.info{border:1px solid #cde1f5;background:var(--blue-soft);color:#315a7f}.message.error{border:1px solid #f2c7cd;background:var(--red-soft);color:#8f303a}.competency-list{display:grid;gap:0;margin-top:16px;border:1px solid var(--line);border-radius:12px;overflow:hidden}.competency-list label{display:grid;grid-template-columns:minmax(0,1fr) minmax(200px,250px);align-items:center;gap:16px;padding:12px 14px;border-bottom:1px solid var(--line);background:#fff}.competency-list label:last-child{border-bottom:0}.competency-list label>span{display:flex;min-width:0;flex-direction:column;gap:2px}.competency-list strong,.competency-list small{overflow-wrap:anywhere}.absence-form{display:grid;grid-template-columns:1fr 1fr 1.3fr;gap:12px;padding:15px;border:1px solid var(--line);border-radius:12px;background:#f8fafc}.absence-form .wide{grid-column:span 2}.absence-form button{align-self:end}.timeline-list{display:flex;flex-direction:column}.timeline-row{display:grid;grid-template-columns:18px minmax(0,1fr) auto;gap:9px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}.timeline-row:last-child{border-bottom:0}.timeline-row strong{font-size:12px}.timeline-row p{margin:2px 0 0;font-size:10px}.dot{width:9px;height:9px;border-radius:50%;background:var(--blue);box-shadow:0 0 0 4px var(--blue-soft)}.dot.muted{background:#9ba7b3;box-shadow:0 0 0 4px #edf1f5}.role-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:14px}.role-card{padding:20px}.role-card header,.card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.role-card p,.card-head p{margin-bottom:14px;font-size:11px}.tag-list{display:flex;flex-wrap:wrap;gap:6px}.tag-list span{padding:6px 8px;border:1px solid var(--line);border-radius:7px;color:#526578;font-size:9px;font-weight:600;line-height:1.3}.grid-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}.grid-two>.card,.create-delegation{overflow:hidden}.card-head{padding:19px 20px 5px}.table-scroll{max-width:100%;overflow:auto}table{width:100%;border-collapse:collapse;font-size:10px}th{padding:10px 12px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#f5f8fb;color:#607286;text-align:left;font-size:9px;letter-spacing:.02em;white-space:nowrap}td{padding:11px 12px;border-bottom:1px solid var(--line);color:#43586d;vertical-align:top}td strong,td small{display:block}td small{margin-top:3px}.delegation-list{padding:4px 18px 18px}.delegation{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:15px 2px;border-bottom:1px solid var(--line)}.delegation:last-child{border-bottom:0}.delegation>div{display:flex;min-width:0;flex-direction:column;align-items:flex-start;gap:3px}.delegation strong,.delegation span,.delegation small,.delegation p{overflow-wrap:anywhere}.delegation strong{color:var(--navy);font-size:12px}.delegation span,.delegation small,.delegation p{font-size:10px}.delegation p{margin:5px 0 0}.create-delegation{margin-top:16px}.create-delegation form{padding:14px 20px 20px}.blocked-panel{padding:20px}.blocked-panel p{font-size:11px}.audit-list{padding:8px 20px 20px}.audit-row{display:grid;grid-template-columns:12px 145px minmax(0,1fr);gap:12px;align-items:start;padding:15px 0;border-bottom:1px solid var(--line)}.audit-row:last-child{border-bottom:0}.audit-row time,.audit-row strong,.audit-row p,.audit-row small{font-size:10px}.audit-row time{color:var(--muted)}.audit-row strong{color:var(--navy);overflow-wrap:anywhere}.audit-row p{margin:3px 0}.audit-mark{width:8px;height:8px;margin-top:3px;border-radius:50%;background:var(--blue);box-shadow:0 0 0 4px var(--blue-soft)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;padding:20px;background:#0516279e;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal{width:min(920px,100%);max-height:calc(100vh - 40px);overflow:hidden;border-radius:18px;background:#fff;box-shadow:0 28px 85px #0516274d}.modal>header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:20px 22px 14px;border-bottom:1px solid var(--line)}.modal>header h2,.modal>header .eyebrow{margin-bottom:2px}.modal-content{max-height:calc(100vh - 135px);overflow:auto;padding:20px 22px 24px}.inline-form{display:flex;align-items:flex-end;gap:10px}.inline-form>input,.inline-form>label{min-width:0;flex:1}.preview-summary{padding:13px;border:1px solid var(--line);border-radius:11px;background:#f8fafc;color:#53687c;font-size:10px}.row-error,.row-warning{margin-bottom:3px;font-size:9px;line-height:1.35}.row-error{color:var(--red)}.row-warning{color:var(--amber)}.account-link,.account-password{padding:14px;border:1px solid var(--line);border-radius:12px;background:#f8fafc}.account-link .button{margin-top:12px}.hint{margin:0;color:var(--muted);font-size:10px;line-height:1.5}.empty{padding:28px;color:var(--muted);text-align:center;font-size:11px}.toast{position:fixed;right:24px;bottom:24px;z-index:200;width:min(420px,calc(100vw - 48px));padding:14px 16px;border-radius:12px;color:#fff;font-size:11px;font-weight:700;box-shadow:0 15px 44px #0f263d40}.toast.good{background:#237653}.toast.bad{background:#ad3943}.login-page{display:grid;min-height:100vh;grid-template-columns:minmax(400px,.92fr) minmax(480px,1.08fr);background:#fff}.login-panel{display:flex;width:min(520px,100%);margin:0 auto;flex-direction:column;justify-content:center;padding:48px clamp(32px,6vw,76px)}.login-panel>.brand{position:absolute;top:34px}.login-copy{margin-bottom:34px}.login-copy h1{font-size:clamp(38px,5vw,58px)}.login-copy p{max-width:430px;font-size:13px}.login-visual{position:relative;display:flex;flex-direction:column;justify-content:center;gap:14px;overflow:hidden;padding:clamp(34px,6vw,90px);background:linear-gradient(155deg,#173e69,#0e2949 70%)}.login-visual:before,.login-visual:after{position:absolute;border:1px solid rgba(255,255,255,.08);border-radius:50%;content:""}.login-visual:before{top:-16vw;right:-12vw;width:40vw;height:40vw}.login-visual:after{right:12vw;bottom:-24vw;width:54vw;height:54vw}.visual-card{position:relative;z-index:1;width:min(490px,100%);padding:20px 22px;border:1px solid rgba(255,255,255,.13);border-radius:15px;background:#ffffff0f;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.visual-card>span{display:block;margin-bottom:8px;color:#7db8ef;font-size:10px;font-weight:800}.visual-card strong{color:#fff;font-size:15px}.visual-card p{margin:5px 0 0;color:#fff9;font-size:11px}.center-page{display:grid;min-height:100vh;place-items:center;padding:24px;background:var(--canvas);text-align:center}.auth-card{width:min(470px,100%);padding:34px;border:1px solid var(--line);border-radius:19px;background:#fff;box-shadow:var(--shadow);text-align:left}.loader{width:34px;height:34px;border:3px solid #dbe7f2;border-top-color:var(--blue);border-radius:50%;animation:spin .8s linear infinite}.mobile-head{display:none}.mobile-actions{display:flex;gap:8px}.mobile-actions select{min-width:0;flex:1}.no-access{width:min(620px,calc(100% - 40px));margin:15vh auto 0;padding:36px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:var(--shadow)}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width: 1180px){.sidebar{width:236px}.content{margin-left:236px}.employees-layout{grid-template-columns:minmax(300px,.72fr) minmax(460px,1.3fr)}.grid-two{grid-template-columns:1fr}}@media (max-width: 900px){.sidebar{display:none}.content{margin-left:0}.mobile-head{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 20px;border-bottom:1px solid var(--line);background:#fffffff0;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px)}.mobile-head strong{color:var(--navy);font-size:12px}.mobile-head select{width:auto;min-width:200px}.page{padding:26px 20px 48px}.employees-layout{grid-template-columns:1fr}.list-card{position:static}.employee-list{max-height:390px;min-height:0}.login-page{grid-template-columns:1fr}.login-visual{display:none}}@media (max-width: 660px){.page-head{align-items:stretch;flex-direction:column}.head-actions{justify-content:flex-start}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid,.form-grid.three,.absence-form{grid-template-columns:1fr}.absence-form .wide{grid-column:auto}.competency-list label{grid-template-columns:1fr}.inline-form{align-items:stretch;flex-direction:column}.inline-form>input,.inline-form>label,.inline-form>button{width:100%}.detail-head{align-items:flex-start;padding:18px}.detail-body,.modal-content{padding:18px}.tabs{gap:18px;padding:0 18px}.audit-row{grid-template-columns:12px minmax(0,1fr)}.audit-row time{grid-column:2}.mobile-head{align-items:stretch;flex-direction:column}.mobile-actions,.mobile-head select{width:100%}}
