*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--ph-blue-lighter:#0038a80d;--ph-blue-dark:#002c7f;--ph-red-dark:#a60f1e;--ph-yellow-dark:#e67e22;--ph-gradient:linear-gradient(135deg,var(--ph-blue) 0%,var(--ph-red) 100%);--ph-gradient-subtle:linear-gradient(135deg,var(--ph-blue-light) 0%,var(--ph-red-light) 100%);--ph-gradient-flag:linear-gradient(135deg,var(--ph-blue) 0%,var(--ph-yellow) 50%,var(--ph-red) 100%);--gray-400:#9ca3af;--gray-800:#1f2937;--success:#10b981;--success-light:#d1fae5;--warning:#f59e0b;--warning-light:#fef3c7;--error:#ef4444;--error-light:#fee2e2;--info:#3b82f6;--info-light:#dbeafe;--font-family-primary:"Inter",-apple-system,BlinkMacSystemFont,sans-serif;--font-family-mono:"JetBrains Mono","Courier New",monospace;--text-xs:0.75rem;--text-sm:0.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--text-5xl:3rem;--font-normal:400;--font-medium:500;--font-semibold:600;--font-bold:700;--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--radius-sm:0.25rem;--radius-md:0.375rem;--radius-lg:0.5rem;--radius-xl:0.75rem;--radius-2xl:1rem;--radius-3xl:1.5rem;--shadow-md:0 1px 3px #0000001a;--shadow-lg:0 4px 6px #0000000d;--shadow-xl:0 10px 15px #0000001a;--shadow-2xl:0 25px 50px #00000040;--shadow-ph-blue:0 4px 12px #0038a826;--shadow-ph-red:0 4px 12px #ce112626;--shadow-ph-gold:0 4px 12px #f39c1226;--transition-fast:0.15s ease;--transition-base:0.2s ease;--transition-slow:0.3s ease;--breakpoint-sm:640px;--breakpoint-md:768px;--breakpoint-lg:1024px;--breakpoint-xl:1280px;--breakpoint-2xl:1536px}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font-family-primary);line-height:1.6}body{background-color:#f9fafb;background-color:var(--gray-50);color:var(--gray-900);font-size:1rem;font-size:var(--text-base);min-height:100vh}.text-xs{font-size:.75rem;font-size:var(--text-xs)}.text-sm{font-size:.875rem;font-size:var(--text-sm)}.text-base{font-size:1rem;font-size:var(--text-base)}.text-lg{font-size:1.125rem;font-size:var(--text-lg)}.text-xl{font-size:1.25rem;font-size:var(--text-xl)}.text-2xl{font-size:1.5rem;font-size:var(--text-2xl)}.text-3xl{font-size:1.875rem;font-size:var(--text-3xl)}.text-4xl{font-size:2.25rem;font-size:var(--text-4xl)}.text-5xl{font-size:3rem;font-size:var(--text-5xl)}.font-normal{font-weight:400;font-weight:var(--font-normal)}.font-medium{font-weight:500;font-weight:var(--font-medium)}.font-semibold{font-weight:600;font-weight:var(--font-semibold)}.font-bold{font-weight:700;font-weight:var(--font-bold)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-gray-50{color:#f9fafb;color:var(--gray-50)}.text-gray-100{color:#f3f4f6;color:var(--gray-100)}.text-gray-200{color:#e5e7eb;color:var(--gray-200)}.text-gray-300{color:#d1d5db;color:var(--gray-300)}.text-gray-400{color:#9ca3af;color:var(--gray-400)}.text-gray-500{color:#6b7280;color:var(--gray-500)}.text-gray-600{color:#4b5563;color:var(--gray-600)}.text-gray-700{color:#374151;color:var(--gray-700)}.text-gray-800{color:#1f2937;color:var(--gray-800)}.text-gray-900{color:#111827;color:var(--gray-900)}.text-ph-blue{color:#0038a8;color:var(--ph-blue)}.text-ph-red{color:#ce1126;color:var(--ph-red)}.text-ph-gold{color:#f39c12;color:var(--ph-gold)}.text-success{color:#10b981;color:var(--success)}.text-warning{color:#f59e0b;color:var(--warning)}.text-error{color:#ef4444;color:var(--error)}.text-info{color:#3b82f6;color:var(--info)}.text-white{color:#fff}.bg-white{background-color:#fff}.bg-gray-50{background-color:#f9fafb;background-color:var(--gray-50)}.bg-gray-100{background-color:#f3f4f6;background-color:var(--gray-100)}.bg-gray-200{background-color:#e5e7eb;background-color:var(--gray-200)}.bg-gray-300{background-color:#d1d5db;background-color:var(--gray-300)}.bg-gray-400{background-color:#9ca3af;background-color:var(--gray-400)}.bg-gray-500{background-color:#6b7280;background-color:var(--gray-500)}.bg-gray-600{background-color:#4b5563;background-color:var(--gray-600)}.bg-gray-700{background-color:#374151;background-color:var(--gray-700)}.bg-gray-800{background-color:#1f2937;background-color:var(--gray-800)}.bg-gray-900{background-color:#111827;background-color:var(--gray-900)}.bg-ph-blue{background-color:#0038a8;background-color:var(--ph-blue)}.bg-ph-red{background-color:#ce1126;background-color:var(--ph-red)}.bg-ph-gold{background-color:#f39c12;background-color:var(--ph-gold)}.bg-ph-gradient{background:linear-gradient(135deg,#0038a8,#ce1126);background:var(--ph-gradient)}.bg-ph-gradient-flag{background:linear-gradient(135deg,#0038a8,#feca57 50%,#ce1126);background:var(--ph-gradient-flag)}.bg-success{background-color:#10b981;background-color:var(--success)}.bg-success-light{background-color:#d1fae5;background-color:var(--success-light)}.bg-warning{background-color:#f59e0b;background-color:var(--warning)}.bg-warning-light{background-color:#fef3c7;background-color:var(--warning-light)}.bg-error{background-color:#ef4444;background-color:var(--error)}.bg-error-light{background-color:#fee2e2;background-color:var(--error-light)}.bg-info{background-color:#3b82f6;background-color:var(--info)}.bg-info-light{background-color:#dbeafe;background-color:var(--info-light)}.m-0{margin:0}.m-1{margin:.25rem;margin:var(--space-1)}.m-2{margin:.5rem;margin:var(--space-2)}.m-3{margin:.75rem;margin:var(--space-3)}.m-4{margin:1rem;margin:var(--space-4)}.m-5{margin:1.25rem;margin:var(--space-5)}.m-6{margin:1.5rem;margin:var(--space-6)}.m-8{margin:2rem;margin:var(--space-8)}.m-10{margin:2.5rem;margin:var(--space-10)}.m-12{margin:3rem;margin:var(--space-12)}.m-16{margin:4rem;margin:var(--space-16)}.m-20{margin:5rem;margin:var(--space-20)}.mt-0{margin-top:0}.mt-1{margin-top:.25rem;margin-top:var(--space-1)}.mt-2{margin-top:.5rem;margin-top:var(--space-2)}.mt-3{margin-top:.75rem;margin-top:var(--space-3)}.mt-4{margin-top:1rem;margin-top:var(--space-4)}.mt-5{margin-top:1.25rem;margin-top:var(--space-5)}.mt-6{margin-top:1.5rem;margin-top:var(--space-6)}.mt-8{margin-top:2rem;margin-top:var(--space-8)}.mt-10{margin-top:2.5rem;margin-top:var(--space-10)}.mt-12{margin-top:3rem;margin-top:var(--space-12)}.mt-16{margin-top:4rem;margin-top:var(--space-16)}.mt-20{margin-top:5rem;margin-top:var(--space-20)}.mb-0{margin-bottom:0}.mb-1{margin-bottom:.25rem;margin-bottom:var(--space-1)}.mb-2{margin-bottom:.5rem;margin-bottom:var(--space-2)}.mb-3{margin-bottom:.75rem;margin-bottom:var(--space-3)}.mb-4{margin-bottom:1rem;margin-bottom:var(--space-4)}.mb-5{margin-bottom:1.25rem;margin-bottom:var(--space-5)}.mb-6{margin-bottom:1.5rem;margin-bottom:var(--space-6)}.mb-8{margin-bottom:2rem;margin-bottom:var(--space-8)}.mb-10{margin-bottom:2.5rem;margin-bottom:var(--space-10)}.mb-12{margin-bottom:3rem;margin-bottom:var(--space-12)}.mb-16{margin-bottom:4rem;margin-bottom:var(--space-16)}.mb-20{margin-bottom:5rem;margin-bottom:var(--space-20)}.p-0{padding:0}.p-1{padding:.25rem;padding:var(--space-1)}.p-2{padding:.5rem;padding:var(--space-2)}.p-3{padding:.75rem;padding:var(--space-3)}.p-4{padding:1rem;padding:var(--space-4)}.p-5{padding:1.25rem;padding:var(--space-5)}.p-6{padding:1.5rem;padding:var(--space-6)}.p-8{padding:2rem;padding:var(--space-8)}.p-10{padding:2.5rem;padding:var(--space-10)}.p-12{padding:3rem;padding:var(--space-12)}.p-16{padding:4rem;padding:var(--space-16)}.p-20{padding:5rem;padding:var(--space-20)}.px-1{padding-left:.25rem;padding-left:var(--space-1);padding-right:.25rem;padding-right:var(--space-1)}.px-2{padding-left:.5rem;padding-left:var(--space-2);padding-right:.5rem;padding-right:var(--space-2)}.px-3{padding-left:.75rem;padding-left:var(--space-3);padding-right:.75rem;padding-right:var(--space-3)}.px-4{padding-left:1rem;padding-left:var(--space-4);padding-right:1rem;padding-right:var(--space-4)}.px-5{padding-left:1.25rem;padding-left:var(--space-5);padding-right:1.25rem;padding-right:var(--space-5)}.px-6{padding-left:1.5rem;padding-left:var(--space-6);padding-right:1.5rem;padding-right:var(--space-6)}.px-8{padding-left:2rem;padding-left:var(--space-8);padding-right:2rem;padding-right:var(--space-8)}.py-1{padding-bottom:.25rem;padding-bottom:var(--space-1);padding-top:.25rem;padding-top:var(--space-1)}.py-2{padding-bottom:.5rem;padding-bottom:var(--space-2);padding-top:.5rem;padding-top:var(--space-2)}.py-3{padding-bottom:.75rem;padding-bottom:var(--space-3);padding-top:.75rem;padding-top:var(--space-3)}.py-4{padding-bottom:1rem;padding-bottom:var(--space-4);padding-top:1rem;padding-top:var(--space-4)}.py-5{padding-bottom:1.25rem;padding-bottom:var(--space-5);padding-top:1.25rem;padding-top:var(--space-5)}.py-6{padding-bottom:1.5rem;padding-bottom:var(--space-6);padding-top:1.5rem;padding-top:var(--space-6)}.py-8{padding-bottom:2rem;padding-bottom:var(--space-8);padding-top:2rem;padding-top:var(--space-8)}.py-12{padding-bottom:3rem;padding-bottom:var(--space-12);padding-top:3rem;padding-top:var(--space-12)}.container{max-width:1024px}.container,.container-sm{margin:0 auto;padding:0 1.5rem;padding:0 var(--space-6)}.container-sm{max-width:448px}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.flex-wrap{flex-wrap:wrap}.gap-1{gap:.25rem;gap:var(--space-1)}.gap-2{gap:.5rem;gap:var(--space-2)}.gap-3{gap:.75rem;gap:var(--space-3)}.gap-4{gap:1rem;gap:var(--space-4)}.gap-5{gap:1.25rem;gap:var(--space-5)}.gap-6{gap:1.5rem;gap:var(--space-6)}.gap-8{gap:2rem;gap:var(--space-8)}.w-full{width:100%}.h-full{height:100%}.min-h-screen{min-height:100vh}.rounded-sm{border-radius:.25rem;border-radius:var(--radius-sm)}.rounded,.rounded-md{border-radius:.375rem;border-radius:var(--radius-md)}.rounded-lg{border-radius:.5rem;border-radius:var(--radius-lg)}.rounded-xl{border-radius:.75rem;border-radius:var(--radius-xl)}.rounded-2xl{border-radius:1rem;border-radius:var(--radius-2xl)}.rounded-3xl{border-radius:1.5rem;border-radius:var(--radius-3xl)}.shadow-sm{box-shadow:0 1px 2px #0000000d;box-shadow:var(--shadow-sm)}.shadow,.shadow-md{box-shadow:0 1px 3px #0000001a;box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:0 4px 6px #0000000d;box-shadow:var(--shadow-lg)}.shadow-xl{box-shadow:0 10px 15px #0000001a;box-shadow:var(--shadow-xl)}.shadow-2xl{box-shadow:0 25px 50px #00000040;box-shadow:var(--shadow-2xl)}.shadow-ph-blue{box-shadow:0 4px 12px #0038a826;box-shadow:var(--shadow-ph-blue)}.shadow-ph-red{box-shadow:0 4px 12px #ce112626;box-shadow:var(--shadow-ph-red)}.shadow-ph-gold{box-shadow:0 4px 12px #f39c1226;box-shadow:var(--shadow-ph-gold)}.transition{transition:all .2s ease;transition:all var(--transition-base)}.transition-fast{transition:all .15s ease;transition:all var(--transition-fast)}.transition-slow{transition:all .3s ease;transition:all var(--transition-slow)}.hover-lift:hover{box-shadow:0 4px 6px #0000000d;box-shadow:var(--shadow-lg);transform:translateY(-2px)}.hover-lift-sm:hover{box-shadow:0 1px 3px #0000001a;box-shadow:var(--shadow-md);transform:translateY(-1px)}.focus-ring:focus{border-color:#0038a8;border-color:var(--ph-blue);box-shadow:0 0 0 3px #3b82f61a;outline:none}.ph-flag-stripe{background:linear-gradient(135deg,#0038a8,#feca57 50%,#ce1126);background:var(--ph-gradient-flag);border-radius:2px;height:4px}.ph-accent-border{border-left:4px solid #0038a8;border-left:4px solid var(--ph-blue)}.ph-accent-border-red{border-left:4px solid #ce1126;border-left:4px solid var(--ph-red)}.ph-accent-border-gold{border-left:4px solid #f39c12;border-left:4px solid var(--ph-gold)}@media (max-width:640px){.container,.container-sm{padding:0 1rem;padding:0 var(--space-4)}.sm-text-center{text-align:center}.sm-flex-col{flex-direction:column}}@media (max-width:768px){.md-hidden{display:none}.md-text-center{text-align:center}}@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.btn{border-radius:var(--radius-md);font-family:inherit;font-size:var(--text-sm);font-weight:var(--font-medium);gap:var(--space-2);line-height:1.5;overflow:hidden;padding:var(--space-2) var(--space-4);position:relative;text-decoration:none;transition:all var(--transition-base);white-space:nowrap}.btn:focus{box-shadow:0 0 0 3px #3b82f61a;outline:none}.btn--xs{font-size:var(--text-xs);padding:var(--space-1) var(--space-2)}.btn--sm{padding:var(--space-2) var(--space-3)}.btn--md,.btn--sm{font-size:var(--text-sm)}.btn--md{padding:var(--space-2) var(--space-4)}.btn--lg{font-size:var(--text-lg);padding:var(--space-3) var(--space-6)}.btn--xl{font-size:var(--text-xl);font-weight:var(--font-semibold);padding:var(--space-4) var(--space-8)}.btn--full{width:100%}.btn--ph-primary{background-color:var(--ph-blue);border:2px solid var(--ph-blue);color:#fff}.btn--ph-primary:hover:not(:disabled){background-color:var(--ph-blue-dark);border-color:var(--ph-blue-dark);box-shadow:var(--shadow-ph-blue);transform:translateY(-1px)}.btn--ph-primary:active{transform:translateY(0)}.btn--ph-secondary{background-color:var(--ph-red);border:2px solid var(--ph-red);color:#fff}.btn--ph-secondary:hover:not(:disabled){background-color:var(--ph-red-dark);border-color:var(--ph-red-dark);box-shadow:var(--shadow-ph-red);transform:translateY(-1px)}.btn--ph-secondary:active{transform:translateY(0)}.btn--ph-gold{background-color:var(--ph-gold);border:2px solid var(--ph-gold);color:#fff}.btn--ph-gold:hover:not(:disabled){background-color:var(--ph-yellow-dark);border-color:var(--ph-yellow-dark);box-shadow:var(--shadow-ph-gold);transform:translateY(-1px)}.btn--ph-gold:active{transform:translateY(0)}.btn--ph-outline{background-color:initial;border:2px solid var(--ph-blue);color:var(--ph-blue)}.btn--ph-outline:hover:not(:disabled){background-color:var(--ph-blue);box-shadow:var(--shadow-ph-blue);color:#fff;transform:translateY(-1px)}.btn--white{background-color:#fff;border:2px solid #fff;color:var(--ph-blue)}.btn--white:hover:not(:disabled){background-color:var(--gray-100);border-color:var(--gray-100);box-shadow:var(--shadow-lg);transform:translateY(-1px)}.btn--success{background-color:var(--success);border:2px solid var(--success);color:#fff}.btn--success:hover:not(:disabled){background-color:#059669;border-color:#059669;box-shadow:0 4px 12px #10b98126;transform:translateY(-1px)}.btn--warning{background-color:var(--warning);border:2px solid var(--warning);color:#fff}.btn--warning:hover:not(:disabled){background-color:#d97706;border-color:#d97706;box-shadow:0 4px 12px #f59e0b26;transform:translateY(-1px)}.btn--error{background-color:var(--error);border:2px solid var(--error);color:#fff}.btn--error:hover:not(:disabled){background-color:#dc2626;border-color:#dc2626;box-shadow:0 4px 12px #ef444426;transform:translateY(-1px)}.btn--link{background-color:initial;border:2px solid #0000;color:var(--ph-blue);text-decoration:underline;text-underline-offset:2px}.btn--link:hover:not(:disabled){color:var(--ph-blue-dark);text-decoration:none}.btn--loading{color:#0000;position:relative}.btn--loading:after{animation:btn-spin 1s linear infinite;border:2px solid #0000;border-radius:50%;border-top-color:currentcolor;content:"";height:16px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:16px}@keyframes btn-spin{0%{transform:translate(-50%,-50%) rotate(0deg)}to{transform:translate(-50%,-50%) rotate(1turn)}}.btn--ph-cta{background:var(--ph-gradient);border:none;border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);color:#fff;font-size:var(--text-lg);font-weight:var(--font-semibold);overflow:hidden;padding:var(--space-4) var(--space-8);position:relative}.btn--ph-cta:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.btn--ph-cta:hover:not(:disabled):before{left:100%}.btn--ph-cta:hover:not(:disabled){box-shadow:0 12px 30px #0038a866;transform:translateY(-2px)}@media (prefers-reduced-motion:reduce){.btn{transition:none}.btn:hover{transform:none}.btn--ph-cta:before{display:none}}@media (prefers-contrast:high){.btn{border-width:3px}.btn--ph-gold,.btn--ph-primary,.btn--ph-secondary{border-color:currentColor}}.btn--primary{background-color:var(--ph-blue);border:2px solid var(--ph-blue)}.btn--primary:hover:not(:disabled){background-color:#002670;border-color:#002670;box-shadow:0 4px 12px #0038a826;transform:translateY(-1px)}.btn--primary:active{transform:translateY(0)}.btn--secondary{background-color:#fff;border:2px solid var(--gray-300);color:var(--gray-700)}.btn--secondary:hover:not(:disabled){background-color:var(--gray-50);border-color:var(--gray-400);color:var(--gray-900)}.btn--secondary:active{transform:translateY(0)}.btn--disabled,.btn:disabled{background-color:var(--gray-300);border-color:var(--gray-300);color:var(--gray-500);cursor:not-allowed;opacity:.7}.btn--disabled:hover,.btn:disabled:hover{background-color:var(--gray-300);box-shadow:none;color:var(--gray-500);transform:none}.form{width:100%}.form__section{margin-bottom:var(--space-6)}.form__section-title{border-bottom:1px solid var(--gray-200);color:var(--gray-900);font-size:var(--text-base);font-weight:var(--font-medium);margin-bottom:var(--space-4);padding-bottom:var(--space-2)}.form-section-header{align-items:center;border-bottom:2px solid var(--gray-100);display:flex;gap:var(--space-3);margin-bottom:var(--space-6);padding-bottom:var(--space-4)}.form-section-icon{align-items:center;background:var(--gray-100);border-radius:var(--radius-lg);display:flex;font-size:var(--text-2xl);height:48px;justify-content:center;width:48px}.form-section-title{color:var(--gray-900);font-size:var(--text-xl);font-weight:var(--font-semibold);margin:0}.form-group{margin-bottom:var(--space-4)}.form-group--inline{align-items:center;display:flex;gap:var(--space-2)}.form-group--horizontal{grid-gap:var(--space-4);align-items:start;display:grid;gap:var(--space-4);grid-template-columns:1fr 2fr}@media (max-width:640px){.form-group--horizontal{gap:var(--space-2);grid-template-columns:1fr}}.form-label{color:#1d1d1f;display:block;font-size:14px;font-weight:500;line-height:1.5;margin-bottom:8px}.form-label--required:after{color:var(--error);content:" *";font-weight:var(--font-normal)}.form-label--optional:after{color:var(--gray-500);content:" (optional)";font-size:var(--text-xs);font-weight:var(--font-normal)}.form-input{background-color:#fff;border:1px solid #d2d2d7;border-radius:8px;box-sizing:border-box;color:var(--gray-900);font-family:inherit;font-size:16px;line-height:1.5;padding:12px 16px;transition:all .3s;width:100%}.form-input::placeholder{color:var(--gray-400)}.form-input:focus{border-color:#007aff;box-shadow:0 0 0 3px #007aff1a;outline:none}.form-input:disabled{background-color:var(--gray-100);color:var(--gray-500);cursor:not-allowed}.form-input--sm{font-size:var(--text-xs);padding:var(--space-1) var(--space-2)}.form-input--lg{font-size:var(--text-base);padding:var(--space-3) var(--space-4)}.form-input--error{border-color:#ff3b30}.form-input--success{border-color:var(--success);box-shadow:0 0 0 3px #10b9811a}.form-input--warning{border-color:var(--warning);box-shadow:0 0 0 3px #f59e0b1a}.form-input--ph-focus:focus{border-color:var(--ph-blue);box-shadow:0 0 0 3px var(--ph-blue-light)}.input-group{border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.input-group .form-input{border-radius:0;border-right:none;box-shadow:none}.input-group .form-input:focus{border-right:1px solid var(--ph-blue);position:relative;z-index:10}.input-group__addon{background-color:var(--gray-100);color:var(--gray-500);font-size:var(--text-sm);min-width:-webkit-fit-content;min-width:fit-content;padding:var(--space-2) var(--space-3);white-space:nowrap}.input-group__addon--prepend{border-right:none}.input-group__addon--append{border-left:none}.form-textarea{font-family:inherit;min-height:120px;resize:vertical}.form-textarea--sm{min-height:80px}.form-textarea--lg{min-height:160px}.error-message,.form-error-text{color:#ff3b30;display:block;font-size:12px;line-height:1.4;margin-top:4px}.required{color:var(--error)}.form-select{-webkit-appearance:none;appearance:none;background-color:#fff;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none'%3E%3Cpath d='m5 7.5 5 5 5-5' stroke='%236B7280' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right var(--space-3) center;background-repeat:no-repeat;background-size:20px;border:1px solid #d2d2d7;border-radius:8px;color:var(--gray-900);cursor:pointer;font-family:inherit;font-size:16px;line-height:1.5;padding:12px 16px;padding-right:var(--space-10);transition:all var(--transition-base);width:100%}.form-select:hover{border-color:var(--gray-400)}.form-select:focus{border-color:#007aff;box-shadow:0 0 0 3px #007aff1a;outline:none}.form-select:disabled{background-color:var(--gray-100);color:var(--gray-500);cursor:not-allowed;opacity:.7}.form-select--error{border-color:#ff3b30}.form-select--error:focus{border-color:#ff3b30;box-shadow:0 0 0 3px #ff3b301a}.btn--disabled{border-color:var(--gray-300);cursor:not-allowed;opacity:.7}.btn--disabled,.btn--disabled:hover{background-color:var(--gray-300);color:var(--gray-500)}.btn--disabled:hover{box-shadow:none;transform:none}.form-checkbox,.form-radio{cursor:pointer;height:var(--space-4);margin:0;width:var(--space-4)}.form-checkbox{border-radius:var(--radius-sm)}.form-radio{border-radius:50%}.form-checkbox:checked,.form-radio:checked{background-color:var(--ph-blue);border-color:var(--ph-blue)}.form-checkbox:focus,.form-radio:focus{box-shadow:0 0 0 3px #0038a81a;outline:none}.form-message{font-size:var(--text-xs);line-height:1.4;margin-top:var(--space-1)}.form-message--error{color:var(--error)}.form-message--success{color:var(--success)}.form-message--warning{color:var(--warning)}.form-message--info{color:var(--info)}.form-help,.form-help-text{color:#6e6e73;font-size:12px;line-height:1.4;margin-top:4px}.form-help-text--success{color:#059669;font-weight:500}.form-help-text--error{color:#ff3b30;font-weight:500}.form-actions{gap:var(--space-3);margin-top:var(--space-8);padding-top:var(--space-6)}.form-actions--center{justify-content:center}.form-actions--start{justify-content:flex-start}.form-actions--between{justify-content:space-between}@media (max-width:640px){.form-actions{flex-direction:column;gap:var(--space-2)}.form-actions .btn{width:100%}}.form-input--loading{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='10' stroke='%236b7280' stroke-width='2'/%3E%3Cpath fill='%236b7280' d='M12 6v6h4'/%3E%3C/svg%3E");background-position:right var(--space-2) center;background-repeat:no-repeat;background-size:1rem 1rem;padding-right:var(--space-8)}.form-input--tin{font-family:var(--font-family-mono);letter-spacing:.1em}.form-input--pagibig,.form-input--philhealth,.form-input--sss{font-family:var(--font-family-mono);letter-spacing:.05em}.form-card{background-color:#fff;border-radius:var(--radius-xl);box-shadow:var(--shadow-md);margin:0 auto;max-width:448px;padding:var(--space-8) var(--space-4)}@media (min-width:640px){.form-card{padding:var(--space-8)}}.form-progress{display:flex;justify-content:space-between;margin-bottom:var(--space-8);position:relative}.form-progress:before{background-color:var(--gray-200);content:"";height:2px;left:0;position:absolute;right:0;top:50%;z-index:1}.form-progress__step{align-items:center;background-color:var(--gray-50);display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-1);position:relative;z-index:2}.form-progress__step-number{align-items:center;background-color:var(--gray-200);border-radius:50%;color:var(--gray-600);display:flex;font-size:var(--text-sm);font-weight:var(--font-medium);height:32px;justify-content:center;width:32px}.form-progress__step--active .form-progress__step-number{background-color:var(--ph-blue);color:#fff}.form-progress__step--completed .form-progress__step-number{background-color:var(--success);color:#fff}.form-progress__step-label{color:var(--gray-500);font-size:var(--text-xs);text-align:center}.form-progress__step--active .form-progress__step-label{color:var(--ph-blue);font-weight:var(--font-medium)}.form-input--peso{padding-left:var(--space-8)}.input-group--peso .input-group__addon--prepend{background-color:var(--ph-blue-light);border-color:var(--ph-blue);color:var(--ph-blue);font-weight:var(--font-semibold)}.form-divider{margin:var(--space-6) 0;position:relative}.form-divider:before{background-color:var(--gray-300);content:"";height:1px;left:0;position:absolute;right:0;top:50%}.form-divider__text{background-color:var(--gray-50);color:var(--gray-500);display:inline-block;font-size:var(--text-sm);left:50%;padding:0 var(--space-4);position:relative;transform:translateX(-50%)}.form-input:focus-visible{outline:2px solid var(--ph-blue);outline-offset:2px}@media (prefers-reduced-motion:reduce){.form-input{transition:none}}@media (prefers-contrast:high){.form-input{border-width:2px}.form-input:focus{border-width:3px}}.page{background-color:var(--gray-50);min-height:100vh}.page--auth{display:flex;flex-direction:column;justify-content:center;padding:var(--space-12) var(--space-6)}.page--landing{background:var(--gray-50)}.header{background-color:var(--ph-blue);box-shadow:var(--shadow-lg);color:#fff;padding:var(--space-6);z-index:100}.header--landing{background:var(--ph-gradient);overflow:hidden;position:relative}.header--landing:before{background:#ffffff1a;border-radius:50%;content:"";height:200px;position:absolute;right:0;top:0;transform:translate(50%,-50%);width:200px}.header__container{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1024px;position:relative;z-index:2}.header__brand{align-items:center;color:inherit;font-size:var(--text-2xl);font-weight:var(--font-bold);margin:0;text-decoration:none}.header__brand,.header__nav{display:flex;gap:var(--space-4)}@media (max-width:768px){.header{padding:var(--space-4)}.header__container{flex-direction:column;gap:var(--space-4)}.header__nav{justify-content:center;width:100%}}.main{flex:1 1;padding:var(--space-8)}.main--centered{margin:0 auto;max-width:1024px;text-align:center}.main--auth{margin:0 auto;max-width:448px;width:100%}.hero{background:var(--ph-gradient-flag);border-radius:var(--radius-3xl);color:#fff;margin-bottom:var(--space-12);overflow:hidden;padding:var(--space-16) var(--space-8);position:relative;text-align:center}.hero:before{background:#ffffff1a;border-radius:50%;content:"";height:300px;position:absolute;right:0;top:0;transform:translate(25%,-25%);width:300px}.hero__content{margin:0 auto;max-width:800px;position:relative;z-index:2}.hero__title{font-size:var(--text-5xl);font-weight:var(--font-bold);line-height:1.2;margin-bottom:var(--space-4)}.hero__subtitle{font-size:var(--text-xl);line-height:1.6;margin-bottom:var(--space-8);opacity:.95}.hero__actions{display:flex;flex-wrap:wrap;gap:var(--space-4);justify-content:center}@media (max-width:768px){.hero{padding:var(--space-12) var(--space-4)}.hero__title{font-size:var(--text-3xl)}.hero__subtitle{font-size:var(--text-lg)}.hero__actions{align-items:center;flex-direction:column}}.card{background-color:#fff;border-radius:var(--radius-xl);box-shadow:var(--shadow-md);overflow:hidden;transition:all var(--transition-base)}.card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.card__header{border-bottom:1px solid var(--gray-200);padding:var(--space-6)}.card__title{color:var(--gray-900);font-size:var(--text-xl);font-weight:var(--font-semibold);margin:0}.card__subtitle{color:var(--gray-500);font-size:var(--text-sm);margin-top:var(--space-1)}.card__body,.card__footer{padding:var(--space-6)}.card__footer{background-color:var(--gray-50);border-top:1px solid var(--gray-200)}.card--ph-blue{border-left:4px solid var(--ph-blue)}.card--ph-red{border-left:4px solid var(--ph-red)}.card--ph-gold{border-left:4px solid var(--ph-gold)}.card--feature{text-align:center;transition:all var(--transition-base)}.card--feature:hover{box-shadow:var(--shadow-xl);transform:translateY(-4px)}.grid{grid-gap:var(--space-6);display:grid;gap:var(--space-6)}.grid--1{grid-template-columns:1fr}.grid--2{grid-template-columns:repeat(2,1fr)}.grid--3{grid-template-columns:repeat(3,1fr)}.grid--4{grid-template-columns:repeat(4,1fr)}.grid--auto-fit{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.grid--auto-fill{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}@media (max-width:768px){.grid--2,.grid--3,.grid--4,.grid--auto-fit{grid-template-columns:1fr}}.section{padding:var(--space-16) 0}.section--sm{padding:var(--space-8) 0}.section--lg{padding:var(--space-20) 0}.section__header{margin-bottom:var(--space-12);text-align:center}.section__title{color:var(--gray-900);font-size:var(--text-4xl);font-weight:var(--font-bold);margin-bottom:var(--space-4)}.section__subtitle{color:var(--gray-600);font-size:var(--text-xl);line-height:1.6;margin:0 auto;max-width:600px}.section__divider{background:var(--ph-gradient-flag);border-radius:2px;height:4px;margin:var(--space-10) auto;max-width:120px}.sidebar-layout{display:flex;min-height:100vh}.sidebar{background-color:#fff;box-shadow:var(--shadow-sm);width:260px}.sidebar__content{background-color:var(--gray-50);flex:1 1;overflow-y:auto}@media (max-width:768px){.sidebar-layout{flex-direction:column}.sidebar{border-bottom:1px solid var(--gray-200);border-right:none;width:100%}}.nav-list{list-style:none;margin:0;padding:0}.nav-item{margin:0}.nav-link{align-items:center;border-left:3px solid #0000;color:var(--gray-700);display:flex;gap:var(--space-3);padding:var(--space-3) var(--space-5);text-decoration:none;transition:all var(--transition-base)}.nav-link:hover{background-color:var(--gray-50);color:var(--ph-blue)}.nav-link--active{background-color:var(--ph-blue-light);border-left-color:var(--ph-blue);color:var(--ph-blue);font-weight:var(--font-medium)}.nav-link__icon{flex-shrink:0;height:20px;width:20px}.nav-link__badge{background-color:var(--ph-red);border-radius:10px;color:#fff;font-size:var(--text-xs);font-weight:var(--font-semibold);margin-left:auto;min-width:20px;padding:2px var(--space-1);text-align:center}.alert{border:1px solid;border-radius:var(--radius-lg);margin-bottom:var(--space-6);padding:var(--space-4)}.alert__title{font-weight:var(--font-medium);margin-bottom:var(--space-2)}.alert__content{font-size:var(--text-sm);line-height:1.5}.alert--info{background-color:var(--info-light);border-color:var(--info);color:#1e3a8a}.alert--success{background-color:var(--success-light);border-color:var(--success);color:#065f46}.alert--warning{background-color:var(--warning-light);border-color:var(--warning);color:#92400e}.alert--error{background-color:var(--error-light);border-color:var(--error)}.alert--ph-pride{background:var(--ph-gradient-subtle);border:2px solid var(--ph-blue);color:var(--ph-blue-dark)}.loading{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:var(--space-16)}.loading__spinner{animation:spin 1s linear infinite;border-top:3px solid var(--gray-200);border:3px solid var(--gray-200);border-radius:50%;border-top-color:var(--ph-blue);height:48px;margin-bottom:var(--space-4);width:48px}.loading__text{color:var(--gray-600);font-weight:var(--font-medium);margin-bottom:var(--space-2)}.loading__subtext{color:var(--gray-400);font-size:var(--text-sm)}.loading__spinner--ph{animation:spin 1s linear infinite;border:3px solid #0000;border-bottom:3px solid var(--ph-red);border-radius:50%;border-right:3px solid var(--ph-yellow);border-top:3px solid var(--ph-blue);height:48px;width:48px}.footer{background-color:var(--gray-800);color:#fff;margin-top:var(--space-12);padding:var(--space-10) var(--space-6);position:relative}.footer,.footer:before{border-radius:var(--radius-2xl) var(--radius-2xl) 0 0}.footer:before{background:var(--ph-gradient-flag);content:"";height:4px;left:0;position:absolute;right:0;top:0}.footer__content{margin:0 auto;max-width:800px;text-align:center}.footer__title{font-size:var(--text-2xl);font-weight:var(--font-bold);margin-bottom:var(--space-2)}.footer__subtitle{margin-bottom:var(--space-6);opacity:.8}.footer__badge{align-items:center;background:#ffffff1a;border-radius:25px;display:inline-flex;font-size:var(--text-sm);gap:var(--space-2);padding:var(--space-2) var(--space-5)}.ph-flag-mini{display:inline-flex;gap:2px}.flag-stripe-mini{border-radius:1px;height:12px;width:8px}.stripe-blue{background:var(--ph-blue)}.stripe-yellow{background:var(--ph-yellow)}.stripe-red{background:var(--ph-red)}.stats{grid-gap:var(--space-6);display:grid;gap:var(--space-6);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin:var(--space-8) 0}.stat{background-color:#fff;border-radius:var(--radius-xl);box-shadow:var(--shadow-md);padding:var(--space-6);text-align:center;transition:all var(--transition-base)}.stat:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.stat__number{color:var(--ph-blue);font-size:var(--text-4xl);font-weight:var(--font-bold);line-height:1;margin-bottom:var(--space-1)}.stat__label{color:var(--gray-600);font-size:var(--text-base)}.stat__description{color:var(--gray-500);font-size:var(--text-sm);margin-top:var(--space-1)}.features{grid-gap:var(--space-8);display:grid;gap:var(--space-8);grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin:var(--space-12) 0}.feature{background-color:#fff;border-left:4px solid var(--ph-blue);border-radius:var(--radius-2xl);box-shadow:var(--shadow-md);padding:var(--space-8);text-align:center;transition:all var(--transition-base)}.feature:nth-child(2){border-left-color:var(--ph-red)}.feature:nth-child(3){border-left-color:var(--ph-gold)}.feature:nth-child(4){border-left-color:var(--ph-blue)}.feature:nth-child(5){border-left-color:var(--ph-red)}.feature:nth-child(6){border-left-color:var(--ph-gold)}.feature:hover{box-shadow:var(--shadow-xl);transform:translateY(-4px)}.feature__icon{align-items:center;border-radius:var(--radius-xl);display:flex;font-size:var(--text-2xl);height:60px;justify-content:center;margin:0 auto var(--space-5);width:60px}.feature:first-child .feature__icon{background:var(--ph-blue-light);color:var(--ph-blue)}.feature:nth-child(2) .feature__icon{background:var(--ph-red-light);color:var(--ph-red)}.feature:nth-child(3) .feature__icon{background:var(--ph-yellow-light);color:var(--ph-gold)}.feature:nth-child(4) .feature__icon{background:var(--ph-blue-light);color:var(--ph-blue)}.feature:nth-child(5) .feature__icon{background:var(--ph-red-light);color:var(--ph-red)}.feature:nth-child(6) .feature__icon{background:var(--ph-yellow-light);color:var(--ph-gold)}.feature__title{color:var(--gray-900);font-size:var(--text-xl);font-weight:var(--font-semibold);margin-bottom:var(--space-3)}.feature__description{color:var(--gray-600);line-height:1.6}.pricing{grid-gap:var(--space-8);display:grid;gap:var(--space-8);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin:var(--space-12) 0;margin-left:auto;margin-right:auto;max-width:900px}.pricing-card{background-color:#fff;border-radius:var(--radius-2xl);border-top:4px solid var(--ph-blue);box-shadow:var(--shadow-md);padding:var(--space-8);position:relative;text-align:center;transition:all var(--transition-base)}.pricing-card:nth-child(2){border-top-color:var(--ph-gold);box-shadow:var(--shadow-lg);transform:scale(1.05)}.pricing-card:nth-child(3){border-top-color:var(--ph-red)}.pricing-card:hover{box-shadow:var(--shadow-xl);transform:translateY(-4px)}.pricing-card:nth-child(2):hover{transform:scale(1.05) translateY(-4px)}.pricing-card__badge{background:var(--ph-gold);border-radius:20px;color:#fff;font-size:var(--text-xs);font-weight:var(--font-semibold);left:50%;padding:var(--space-1) var(--space-4);position:absolute;top:-10px;transform:translateX(-50%)}.pricing-card__name{color:var(--gray-900);font-size:var(--text-xl);font-weight:var(--font-semibold);margin-bottom:var(--space-2)}.pricing-card__price{font-size:var(--text-4xl);font-weight:var(--font-bold);margin-bottom:var(--space-1)}.pricing-card:first-child .pricing-card__price{color:var(--ph-blue)}.pricing-card:nth-child(2) .pricing-card__price{color:var(--ph-gold)}.pricing-card:nth-child(3) .pricing-card__price{color:var(--ph-red)}.pricing-card__period{color:var(--gray-500);margin-bottom:var(--space-6)}.pricing-card__features{list-style:none;margin:var(--space-6) 0;padding:0}.pricing-card__feature{color:var(--gray-600);font-size:var(--text-sm);padding:var(--space-2) 0}.status-badges{grid-gap:var(--space-5);display:grid;gap:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin:var(--space-8) 0}.status-badge{border:2px solid;border-radius:var(--radius-xl);font-weight:var(--font-semibold);padding:var(--space-4) var(--space-5);text-align:center;transition:all var(--transition-base)}.status-badge:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.status-badge--processed{background-color:var(--ph-blue-light);border-color:var(--ph-blue);color:var(--ph-blue-dark)}.status-badge--pending{background-color:var(--warning-light);border-color:var(--warning);color:#92400e}.status-badge--completed{background-color:var(--ph-red-light);border-color:var(--ph-red);color:var(--ph-red-dark)}.status-badge--active{background-color:var(--success-light);border-color:var(--success);color:#065f46}.cta{background:var(--ph-gradient);border-radius:var(--radius-3xl);color:#fff;margin:var(--space-16) 0;overflow:hidden;padding:var(--space-16) var(--space-8);position:relative;text-align:center}.cta:before{background:#ffffff1a;border-radius:50%;content:"";height:400px;position:absolute;right:0;top:0;transform:translate(25%,-25%);width:400px}.cta__content{margin:0 auto;max-width:600px;position:relative;z-index:2}.cta__title{font-size:var(--text-4xl);font-weight:var(--font-bold);margin-bottom:var(--space-5)}.cta__subtitle{font-size:var(--text-xl);line-height:1.6;margin-bottom:var(--space-8);opacity:.9}.cta__actions{display:flex;flex-wrap:wrap;gap:var(--space-4);justify-content:center}@media (max-width:640px){.page--auth{padding:var(--space-6) var(--space-4)}.main{padding:var(--space-4)}.section{padding:var(--space-8) 0}.section__title{font-size:var(--text-3xl)}.stats{grid-template-columns:repeat(2,1fr)}.features,.pricing{grid-template-columns:1fr}.pricing-card:nth-child(2){transform:none}.cta__title{font-size:var(--text-3xl)}.cta__actions{align-items:center;flex-direction:column}}@media print{.btn,.footer,.header,.nav-link{display:none!important}.page{background:#fff!important}.card{border:1px solid var(--gray-300)!important;box-shadow:none!important}}.rate-management{background:#fff;border-radius:8px;max-width:600px;width:100%}.rate-management-header{align-items:center;border-bottom:1px solid var(--gray-200);display:flex;justify-content:space-between;padding:1.5rem}.rate-management-header h2{color:var(--gray-900);font-size:1.5rem;font-weight:600;margin:0}.close-button{background:none;border:none;color:var(--gray-500);cursor:pointer;font-size:1.5rem;line-height:1;padding:.5rem;transition:color .2s}.close-button:hover{color:var(--gray-700)}.current-rates-section{background:var(--gray-50);border-bottom:1px solid var(--gray-200);padding:1.5rem}.current-rates-section h3{color:var(--gray-700);font-size:1rem;font-weight:600;margin:0 0 .5rem}.effective-since{color:var(--gray-600);font-size:.875rem}.rate-form{padding:1.5rem}.form-group{margin-bottom:1.5rem}.form-group label{color:var(--gray-700);margin-bottom:.5rem}.required{color:var(--error-color)}.form-group input[type=date],.form-group input[type=number],.form-group input[type=text]{border:1px solid var(--gray-300);border-radius:4px;font-size:1rem;padding:.5rem .75rem;transition:border-color .2s;width:100%}.form-group input:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #2563eb1a;outline:none}.form-group input.error{border-color:var(--error-color)}.error-message{color:var(--error-color);display:block;font-size:.75rem;margin-top:.25rem}.rates-section{margin-top:2rem}.rates-section h3{color:var(--gray-900);font-size:1.125rem;font-weight:600;margin-bottom:1rem}.rate-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.rate-item{background:var(--gray-50);border:1px solid var(--gray-200);padding:1rem}.rate-header{margin-bottom:.5rem}.rate-header label{color:var(--gray-900);font-size:.875rem;font-weight:600}.rate-description{font-size:.75rem;margin:.25rem 0 .75rem}.rate-input-group{align-items:center;display:flex;gap:.5rem}.rate-input-group input{flex:1 1;max-width:120px}.rate-suffix{color:var(--gray-600);font-size:.875rem;font-weight:500}.current-rate{color:var(--gray-500);font-size:.75rem;margin-left:auto}.form-actions{border-top:1px solid var(--gray-200);gap:1rem;margin-top:2rem;padding-top:1.5rem}.submit-error{background:var(--error-bg);border-radius:4px;color:var(--error-color);font-size:.875rem;margin-bottom:1rem;padding:.75rem 1rem}.rate-history-viewer{padding:1.5rem}.rate-history-error,.rate-history-loading{color:var(--gray-600);padding:3rem 1.5rem;text-align:center}.current-rates-card{background:#fff;border:2px solid var(--primary-color);border-radius:8px;margin-bottom:2rem;padding:1.5rem}.card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.card-header h3{color:var(--gray-900);font-size:1.25rem;font-weight:600;margin:0}.effective-badge{background:var(--primary-light);border-radius:20px;color:var(--primary-color);font-size:.75rem;font-weight:500;padding:.25rem .75rem}.rates-grid{grid-gap:1rem;gap:1rem}.rate-display{align-items:center;border-bottom:1px solid var(--gray-100);display:flex;justify-content:space-between;padding:.5rem 0}.rate-label{color:var(--gray-600);font-size:.875rem}.rate-value{color:var(--gray-900);font-weight:600}.upcoming-changes-section{margin-bottom:2rem}.upcoming-changes-section h3{color:var(--gray-900);font-size:1.125rem;font-weight:600;margin-bottom:1rem}.upcoming-change-card{background:var(--warning-light);border:1px solid var(--warning-color);border-radius:6px;margin-bottom:.75rem;padding:1rem}.change-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.75rem}.change-date{color:var(--warning-dark)}.change-reason{color:var(--gray-700);font-size:.875rem}.changed-rates{display:flex;flex-wrap:wrap;gap:1rem}.rate-change-item{align-items:center;display:flex;font-size:.875rem;gap:.5rem}.rate-change{color:var(--warning-dark);font-weight:600}.rate-history-section{margin-top:2rem}.rate-history-section h3{color:var(--gray-900);font-size:1.125rem;font-weight:600;margin-bottom:1rem}.no-history{color:var(--gray-500);padding:2rem}.history-timeline{padding-left:2rem;position:relative}.history-timeline:before{background:var(--gray-200);bottom:0;content:"";left:.5rem;position:absolute;top:0;width:2px}.history-entry{margin-bottom:2rem;position:relative}.history-entry.active .timeline-marker{background:var(--primary-color);box-shadow:0 0 0 4px #2563eb1a}.timeline-marker{background:var(--gray-400);border:2px solid #fff;border-radius:50%;height:1rem;left:-1.5rem;top:.5rem;width:1rem}.entry-content{background:#fff;border:1px solid var(--gray-200);border-radius:6px;padding:1rem}.entry-header{margin-bottom:1rem}.entry-dates{align-items:center;color:var(--gray-900);display:flex;font-size:.875rem;font-weight:600;gap:.5rem}.date-separator{color:var(--gray-400)}.active-badge{background:var(--primary-color);border-radius:12px;color:#fff;font-size:.75rem;font-weight:500;margin-left:.5rem;padding:.125rem .5rem}.entry-meta{color:var(--gray-600);display:flex;font-size:.75rem;gap:1rem;margin-top:.25rem}.entry-rates{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.rate-item{font-size:.8125rem;padding:.25rem 0}.rate-item.changed{font-weight:600}.rate-item.changed .rate-value{color:var(--primary-color)}.previous-value{color:var(--gray-500);font-size:.75rem;font-weight:400;margin-left:.25rem}.payroll-rates-settings{margin:0 auto;max-width:1200px}.payroll-rates-settings .settings-section-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:2rem}.payroll-rates-settings .settings-section-header h2{color:var(--gray-900);font-size:1.75rem;font-weight:700;margin:0 0 .5rem}.section-description{color:var(--gray-600);font-size:1rem}.header-actions{gap:1rem}.effective-date-banner{background:var(--primary-light);border:1px solid var(--primary-color);border-radius:6px;gap:.75rem;margin-bottom:1.5rem;padding:1rem 1.5rem}.banner-icon{font-size:1.25rem}.banner-text{color:var(--primary-dark);font-size:.875rem}.upcoming-changes-alert{background:var(--warning-light);border:1px solid var(--warning-color);border-radius:6px;gap:1rem;margin-bottom:1.5rem;padding:1rem 1.5rem}.alert-icon{font-size:1.5rem}.alert-content h4{color:var(--warning-dark);font-size:1rem;margin:0 0 .5rem}.upcoming-change{color:var(--gray-700);font-size:.875rem}.change-date{margin-right:.5rem}.payroll-rates-settings .rates-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:2rem}.rate-card{border-radius:8px;padding:1.5rem;transition:box-shadow .2s}.rate-card:hover{box-shadow:0 4px 6px #0000001a}.rate-card-header{gap:.75rem;margin-bottom:.75rem}.rate-icon{font-size:1.5rem}.rate-name{color:var(--gray-900);font-size:1rem}.rate-description{color:var(--gray-600);font-size:.875rem;margin:0 0 1rem}.rate-value-display{gap:.5rem}.current-value{color:var(--primary-color);font-size:1.5rem;font-weight:700}.future-value{color:var(--warning-color);font-size:1rem;font-weight:500}.compliance-note{background:var(--info-light);border:1px solid var(--info-color);border-radius:6px;gap:1rem;margin-top:2rem;padding:1rem 1.5rem}.note-icon{font-size:1.25rem}.note-content h4{color:var(--info-dark);font-size:.875rem;margin:0 0 .25rem}.note-content p{color:var(--gray-700);font-size:.8125rem}.modal-overlay{padding:2rem}.modal-content{border-radius:8px;box-shadow:0 20px 25px -5px #0000001a}.modal-content--large{max-width:800px;width:100%}.modal-overlay{animation:fadeIn .2s ease-in-out;background-color:#00000080}.modal-content{animation:slideUp .3s ease-out;box-shadow:0 10px 40px #0003;overflow:auto}.modal-content--medium{max-width:600px;width:90%}.modal-close{border-radius:8px;font-size:2rem;padding:0;transition:all .2s}.modal-footer{padding:20px 24px}.salary-change-info{grid-gap:20px;background-color:#f9fafb;border-radius:8px;display:grid;gap:20px;grid-template-columns:2fr 1fr;margin-bottom:24px;padding:20px}.salary-change-info__employee h3{color:#111827;font-size:1.25rem;margin:0 0 8px}.salary-change-info__employee p{color:#6b7280;font-size:.875rem;margin:0}.salary-change-info__current label{color:#6b7280;display:block;font-size:.75rem;letter-spacing:.05em;margin-bottom:4px;text-transform:uppercase}.salary-amount{color:#0038a8;font-size:1.5rem;font-weight:600;margin:0}.salary-change-form{display:flex;flex-direction:column;gap:20px}.salary-history-viewer{padding:20px}.salary-history-header{margin-bottom:24px}.salary-history-summary{grid-gap:16px;background:linear-gradient(135deg,#e6f0ff,#fff9e6);border-radius:12px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:20px;padding:20px}.summary-item label{color:#6b7280;display:block;font-size:.75rem;letter-spacing:.05em;margin-bottom:4px;text-transform:uppercase}.summary-value{color:#111827;font-size:1.25rem;font-weight:600}.view-mode-toggle{background-color:#f3f4f6;border-radius:8px;display:flex;gap:4px;margin-bottom:20px;padding:4px}.toggle-btn{background:#0000;border:none;border-radius:6px;color:#6b7280;cursor:pointer;font-size:.875rem;font-weight:500;padding:8px 16px;transition:all .2s}.toggle-btn.active{background-color:#fff;box-shadow:0 1px 3px #0000001a;color:#0038a8}.toggle-btn:hover:not(.active){color:#111827}.salary-timeline{padding-left:40px;position:relative}.salary-timeline:before{background:linear-gradient(180deg,#0038a8,#f39c12);bottom:0;content:"";left:16px;position:absolute;top:0;width:2px}.timeline-item{animation:slideInLeft .3s ease-out;margin-bottom:32px;position:relative}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}.timeline-marker{left:-32px;position:absolute;top:8px}.marker-icon{align-items:center;background-color:#fff;border:3px solid #0038a8;border-radius:50%;display:flex;font-size:1rem;font-weight:700;height:32px;justify-content:center;width:32px}.marker-icon.increase{border-color:#10b981;color:#10b981}.marker-icon.decrease{border-color:#ef4444;color:#ef4444}.marker-icon.no-change{border-color:#6b7280;color:#6b7280}.timeline-content{background-color:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 1px 3px #0000000d;padding:16px}.timeline-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.timeline-date{color:#111827;font-size:1rem;font-weight:600;margin:0}.change-badge{border-radius:4px;font-size:.875rem;font-weight:600;padding:4px 8px}.change-badge.increase{background-color:#d1fae5;color:#10b981}.change-badge.decrease{background-color:#fee2e2;color:#ef4444}.change-badge.no-change{background-color:#f3f4f6;color:#6b7280}.timeline-amounts{align-items:center;display:flex;font-size:1.125rem;gap:12px;margin-bottom:12px}.amount-previous{color:#6b7280;text-decoration:line-through}.amount-arrow{color:#9ca3af}.amount-new{color:#0038a8;font-weight:600}.timeline-details{display:flex;flex-direction:column;gap:8px}.detail-item{color:#374151;font-size:.875rem}.detail-item strong{color:#111827;margin-right:4px}.detail-meta{border-top:1px solid #f3f4f6;color:#9ca3af;font-size:.75rem;margin-top:8px;padding-top:8px}.salary-table{overflow-x:auto}.data-table{border-collapse:collapse;width:100%}.data-table thead{background-color:#f9fafb}.data-table th{border-bottom:1px solid #e5e7eb;color:#6b7280;font-size:.75rem;font-weight:600;letter-spacing:.05em;padding:12px;text-align:left;text-transform:uppercase}.data-table tbody tr{border-bottom:1px solid #f3f4f6;transition:background-color .2s}.data-table tbody tr:hover{background-color:#f9fafb}.data-table td{color:#374151;font-size:.875rem;padding:12px}.updated-by{display:flex;flex-direction:column}.updated-by small{color:#9ca3af;font-size:.75rem}.no-history{color:#6b7280;padding:40px;text-align:center}.salary-history{border-top:1px solid #e5e7eb;margin-top:24px;padding-top:24px}.salary-history__title{color:#111827;font-size:1rem;font-weight:600;margin:0 0 16px}.salary-history__list{display:flex;flex-direction:column;gap:12px}.salary-history__item{grid-gap:12px;align-items:center;background-color:#f9fafb;border-radius:8px;display:grid;gap:12px;grid-template-columns:100px 1fr auto;padding:12px}.salary-history__date{color:#6b7280;font-size:.875rem}.salary-history__details{display:flex;flex-direction:column;gap:4px}.salary-history__amount{color:#111827;font-size:.875rem;font-weight:500}.salary-history__reason{color:#6b7280;font-size:.75rem}.salary-history__change{background-color:#e6f0ff;border-radius:4px;color:#0038a8;font-size:.875rem;font-weight:600;padding:4px 8px}.loading-spinner{padding:40px;text-align:center}.alert{font-size:.875rem}.alert--error{background-color:#fee2e2;border:1px solid #fca5a5;color:#991b1b}@media (max-width:768px){.modal-content--medium{margin:10px;width:95%}.salary-change-info{grid-template-columns:1fr}.salary-history-summary{grid-template-columns:repeat(2,1fr)}.salary-history__item{gap:8px;grid-template-columns:1fr}.timeline-amounts{align-items:flex-start;flex-direction:column;gap:4px}.data-table{font-size:.75rem}.data-table td,.data-table th{padding:8px}}.auth-container{display:flex;min-height:100vh}.auth-branding{align-items:flex-start;background:linear-gradient(135deg,var(--ph-blue) 0,var(--ph-red) 100%);color:#fff;display:flex;flex:0 0 45%;flex-direction:column;justify-content:center;min-height:100%;overflow:hidden;padding:60px;position:relative}.auth-branding--sticky{align-self:flex-start;height:100vh;position:-webkit-sticky;position:sticky;top:0}.auth-branding__decoration{background:#ffffff14;border-radius:50%;pointer-events:none;position:absolute}.auth-branding__decoration--1{height:300px;right:-80px;top:-80px;width:300px}.auth-branding__decoration--2{bottom:-60px;height:200px;left:-60px;width:200px}.auth-branding__decoration--3{background:#ffffff0d;height:120px;right:15%;top:50%;width:120px}.auth-branding__content{position:relative;z-index:1}.auth-branding__logo{align-items:center;display:flex;font-size:28px;font-weight:700;gap:8px;margin-bottom:16px}.auth-branding__headline{font-size:36px;font-weight:700;line-height:1.2;margin-bottom:12px}.auth-branding__tagline{font-size:18px;line-height:1.5;margin-bottom:40px;opacity:.9}.auth-branding__features{list-style:none;margin:0 0 32px;padding:0}.auth-branding__feature{align-items:center;display:flex;font-size:16px;gap:12px;margin-bottom:16px;opacity:.95}.auth-branding__feature:last-child{margin-bottom:0}.auth-branding__check{align-items:center;background:#fff3;border-radius:50%;display:flex;flex-shrink:0;height:24px;justify-content:center;width:24px}.auth-branding__check svg{color:var(--ph-yellow);height:14px;width:14px}.auth-branding__badges{display:flex;gap:16px;margin-top:32px}.auth-branding__badge{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border-radius:8px;display:flex;font-size:12px;font-weight:500;gap:8px;padding:10px 16px}.auth-branding__badge-icon{font-size:16px}.auth-form-panel{align-items:center;background:#fff;display:flex;flex:1 1;justify-content:center;overflow-y:auto;padding:40px}.auth-form-container{max-width:400px;width:100%}.auth-form-container--wide{max-width:480px}.auth-mobile-header{display:none;margin-bottom:32px;text-align:center}.auth-mobile-logo{color:var(--ph-blue);font-size:24px;font-weight:700;margin-bottom:8px}.auth-form-header{margin-bottom:32px;text-align:center}.auth-form-title{color:var(--gray-900);font-size:28px;font-weight:600;margin:0 0 8px}.auth-form-subtitle{color:var(--gray-500);font-size:16px;margin:0}.auth-form-section{margin-bottom:28px}.auth-form-section-title{border-bottom:1px solid var(--gray-200);color:var(--gray-900);font-size:16px;font-weight:500;margin:0 0 20px;padding-bottom:8px}.auth-form-footer{text-align:center}.auth-form-panel .form-divider__text{background-color:#fff}@media (max-width:1024px){.auth-branding{flex:0 0 40%;padding:40px}.auth-branding__headline{font-size:28px}.auth-form-panel{padding:32px}}@media (max-width:768px){.auth-container{flex-direction:column}.auth-branding{display:none}.auth-form-panel{align-items:flex-start;min-height:100vh;padding:40px 24px 24px}.auth-mobile-header{display:block}.auth-form-header{margin-bottom:24px}.auth-form-title{font-size:24px}.auth-form-container,.auth-form-container--wide{max-width:100%}}@media (max-width:480px){.auth-form-panel{padding:32px 16px 16px}.auth-form-panel .input-group{flex-direction:column}.auth-form-panel .input-group__addon{border-bottom:none;border-radius:8px 8px 0 0;border-right:1px solid var(--gray-300)}.auth-form-panel .input-group .form-input{border-radius:0 0 8px 8px}}.employee-page{background:var(--gray-50);min-height:100vh}.employee-page-header{margin-bottom:var(--space-6)}.employee-page-header__title{color:#0038a8;font-size:1.5rem;font-weight:700;margin:0 0 .25rem}.employee-page-header__subtitle{color:var(--gray-500);font-size:.875rem;margin:0}.employee-controls{background:#fff;border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);margin-bottom:var(--space-6);padding:var(--space-6)}.employee-controls__header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--space-4)}.employee-controls__title{color:var(--gray-900);font-size:var(--text-xl);font-weight:var(--font-semibold);margin:0}.employee-controls__actions{display:flex;gap:var(--space-3)}.employee-filters{grid-gap:var(--space-4);display:grid;gap:var(--space-4);grid-template-columns:2fr 1fr 1fr auto}.employee-stats-grid{grid-gap:var(--space-6);display:grid;gap:var(--space-6);grid-template-columns:repeat(4,1fr);margin-bottom:var(--space-8)}.employee-stat-card{background:#fff;border-left:4px solid var(--ph-blue);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);padding:var(--space-6)}.employee-stat-card--red{border-left-color:var(--ph-red)}.employee-stat-card--gold{border-left-color:var(--ph-gold)}.employee-stat-card--info{border-left-color:var(--info)}.employee-stat-card__value{color:var(--gray-900);font-size:var(--text-3xl);font-weight:var(--font-bold);margin-bottom:var(--space-1)}.employee-stat-card__label{color:var(--gray-600);font-size:var(--text-sm)}.add-employee-container{margin:0 auto;max-width:1200px;padding:var(--space-8);width:100%}.add-employee-page-header{margin-bottom:var(--space-6)}.add-employee-page-title{color:#0038a8;font-size:1.5rem;font-weight:700;margin:0 0 .25rem}.add-employee-page-subtitle{color:var(--gray-500);font-size:.875rem;margin:0}.stepper-container{border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);margin-bottom:var(--space-8);overflow:hidden;padding:var(--space-6)}.progress-bar{background:var(--gray-200);left:0;right:0;top:0}.progress-bar-fill{width:20%}.progress-bar-fill--step-2{width:40%}.progress-bar-fill--step-3{width:60%}.progress-bar-fill--step-4{width:80%}.progress-bar-fill--step-5{width:100%}.progress-bar-fill:after{background:#ffffff4d;width:4px}.stepper{margin:0 var(--space-4);padding-top:var(--space-4)}.stepper-step__indicator{border:2px solid var(--gray-300);color:var(--gray-500);font-weight:var(--font-semibold);margin-bottom:var(--space-3)}.stepper-step--active .stepper-step__indicator{background:var(--ph-blue);border-color:var(--ph-blue);box-shadow:0 0 0 4px var(--ph-blue-light)}.stepper-step--completed .stepper-step__indicator{background:var(--success);border-color:var(--success)}.stepper-step__label{color:var(--gray-600);font-size:var(--text-sm);font-weight:var(--font-medium)}.stepper-step--active .stepper-step__label{color:var(--ph-blue);font-weight:var(--font-semibold)}.add-employee-content{width:100%}.add-employee-form-container{grid-gap:var(--space-8);display:grid;gap:var(--space-8);grid-template-columns:1fr 1fr;margin-bottom:var(--space-8)}.form-section{background:#fff;border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);padding:var(--space-6)}.id-type-toggle{grid-gap:var(--space-3);display:grid;gap:var(--space-3);grid-template-columns:1fr 1fr;margin-bottom:var(--space-6)}.toggle-option{cursor:pointer;position:relative}.toggle-option input{opacity:0;position:absolute}.toggle-label{border:2px solid var(--gray-200);border-radius:var(--radius-lg);display:block;padding:var(--space-4);text-align:center;transition:all .2s ease}.toggle-option input:checked+.toggle-label{background:var(--ph-blue-lighter);border-color:var(--ph-blue)}.toggle-label-title{color:var(--gray-900);display:block;font-weight:var(--font-semibold);margin-bottom:var(--space-1)}.toggle-label-desc{color:var(--gray-600);font-size:var(--text-sm)}.id-preview{background:var(--gray-50);border:2px dashed var(--ph-blue);border-radius:var(--radius-lg);padding:var(--space-4);text-align:center}.id-preview-label{color:var(--ph-blue);font-size:var(--text-2xl);font-weight:var(--font-bold);margin-bottom:var(--space-2)}.id-preview-note{color:var(--gray-600);font-size:var(--text-sm)}.form-grid{grid-gap:var(--space-4);display:grid;gap:var(--space-4);grid-template-columns:1fr 1fr}.add-employee-form-actions{align-items:center;background:#fff;border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);display:flex;justify-content:space-between;margin:0 auto;max-width:1200px;padding:var(--space-6);width:100%}.date-format-helper{color:var(--gray-600);font-size:var(--text-sm);margin-top:var(--space-1)}@media (max-width:1024px){.add-employee-form-container{grid-template-columns:1fr}}@media (max-width:768px){.employee-page-header__title{font-size:var(--text-2xl)}.employee-stats-grid{gap:var(--space-4);grid-template-columns:repeat(2,1fr)}.employee-filters{gap:var(--space-3);grid-template-columns:1fr}.add-employee-container{padding:var(--space-4)}.form-grid{grid-template-columns:1fr}.stepper{overflow-x:auto}.id-type-toggle{grid-template-columns:1fr}}@media (max-width:640px){.employee-stats-grid{grid-template-columns:1fr}.employee-controls__header{align-items:flex-start;flex-direction:column;gap:var(--space-3)}.add-employee-form-actions{flex-direction:column-reverse;gap:var(--space-3)}.add-employee-form-actions .btn{width:100%}}.employee-table-container{background:#fff;border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);overflow:hidden}.employee-table{border-collapse:collapse;width:100%}.employee-table th{border-bottom:1px solid var(--gray-200);color:var(--gray-700);font-size:var(--text-sm);font-weight:var(--font-semibold);padding:var(--space-3) var(--space-6);white-space:nowrap}.employee-table td{border-bottom:1px solid var(--gray-100);padding:var(--space-4) var(--space-6)}.employee-table tbody tr:hover{background:var(--gray-50)}.employee-table__name-cell{align-items:center;display:flex;gap:var(--space-3)}.employee-table__avatar{align-items:center;background:linear-gradient(135deg,var(--ph-blue) 0,var(--ph-red) 100%);border-radius:50%;color:#fff;display:flex;font-size:var(--text-sm);font-weight:var(--font-semibold);height:40px;justify-content:center;width:40px}.employee-table__name{color:var(--gray-900);font-weight:var(--font-medium);margin-bottom:var(--space-1)}.employee-table__email{color:var(--gray-600);font-size:var(--text-xs)}.empty-state{border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);min-height:400px;padding:var(--space-8)}.empty-state__icon{font-size:4rem;margin-bottom:var(--space-4)}.empty-state__title{color:var(--gray-900);font-size:var(--text-xl);font-weight:var(--font-semibold);margin-bottom:var(--space-3)}.empty-state__description{color:var(--gray-600);margin-bottom:var(--space-6);margin-left:auto;margin-right:auto;max-width:400px}.employment-details-container{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:2rem;padding:2rem}.employment-form-fields{display:flex;flex-direction:column;gap:1.5rem}.employment-form-row{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:1fr 1fr}.employment-salary-field{width:100%}.employment-dropdown-wrapper{position:relative}.employment-dropdown{background:#fff;border:1px solid var(--gray-300);border-radius:0 0 8px 8px;border-top:none;box-shadow:0 4px 6px #0000001a;left:0;margin-top:-1px;max-height:240px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:100}.employment-dropdown__item{border-bottom:1px solid var(--gray-100);color:var(--gray-700);cursor:pointer;font-size:.875rem;padding:.75rem 1rem;transition:background-color .2s ease}.employment-dropdown__item:last-child{border-bottom:none}.employment-dropdown__item:hover{background-color:var(--ph-blue-light);color:var(--ph-blue)}.employment-dropdown__no-results{color:var(--gray-500);font-size:.875rem;font-style:italic;padding:1rem;text-align:center}.form-date-label{color:var(--gray-600);font-size:.875rem;font-weight:500;margin:.25rem 0 0}.input-group{position:relative}.input-group__addon{background:var(--gray-100);border:1px solid var(--gray-300);border-radius:8px 0 0 8px;border-right:none;color:var(--gray-700);font-size:1.125rem;font-weight:600;padding:0 1rem}.input-group .form-input{border-left:none;border-radius:0 8px 8px 0;padding-left:.75rem}.form-group--full-width{grid-column:1/-1}.employment-compliance-box{background:#ebf5ff;border:1px solid #bdd9ff;border-radius:12px;margin:0 0 2rem;padding:1.5rem}.employment-compliance-box__header{align-items:center;display:flex;gap:.75rem;margin-bottom:1rem}.employment-compliance-box__flag{font-size:1.5rem}.employment-compliance-box__title{color:#1e40af;font-size:1rem;font-weight:600;margin:0}.employment-compliance-box__list{display:flex;flex-direction:column;gap:.5rem;list-style:none;margin:0;padding:0}.employment-compliance-box__list li{color:#1e40af;font-size:.875rem;line-height:1.5}.employment-compliance-box__list strong{color:#1e40af;font-weight:600}.add-employee-form-actions__step-indicator{color:var(--gray-500)}@media (max-width:768px){.employment-dropdown{max-height:180px}.employment-compliance-box{margin:1.5rem 0;padding:1rem}.employment-compliance-box__list li{font-size:.8125rem}.add-employee-form-actions__step-indicator{display:none}}.working-days-section{margin-bottom:2rem}.working-days-grid{display:flex;flex-wrap:wrap;gap:1rem;margin-top:.5rem}.day-checkbox-label{align-items:center;background:#fff;border:2px solid var(--gray-200);border-radius:8px;cursor:pointer;display:flex;gap:.5rem;padding:.5rem .75rem;transition:all .2s ease;-webkit-user-select:none;user-select:none}.day-checkbox-label:hover{background:#f0f7ff;border-color:var(--ph-blue)}.day-checkbox{accent-color:var(--ph-blue);cursor:pointer;height:18px;width:18px}.day-label{color:var(--gray-700);font-size:.875rem;font-weight:500}.day-checkbox:checked+.day-label{color:var(--ph-blue);font-weight:600}.day-checkbox-label:has(.day-checkbox:checked){background:#e6f4ff;border-color:var(--ph-blue)}.schedule-time-row{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:1fr 1fr 1fr;margin-top:2rem}.labor-standards-list{display:flex;flex-direction:column;gap:.75rem;list-style:none;margin:0;padding:0}.labor-standard-item{padding-left:0}.labor-standard-label{color:var(--gray-800);font-weight:600}.btn-disabled{cursor:not-allowed;opacity:.5}.btn-disabled:hover{box-shadow:none;transform:none}@media (max-width:768px){.working-days-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(4,1fr)}.day-checkbox-label{justify-content:center;padding:.5rem}.schedule-time-row{grid-template-columns:1fr}}@media (max-width:480px){.working-days-grid{gap:.5rem;grid-template-columns:repeat(3,1fr)}.day-checkbox-label{font-size:.8125rem;padding:.375rem}.day-label{font-size:.8125rem}}.work-schedule-header{align-items:center;display:flex;gap:.75rem;margin-bottom:2rem}.work-schedule-icon{align-items:center;background:linear-gradient(135deg,#8b5cf6,#6366f1);border-radius:12px;display:flex;font-size:1.5rem;height:48px;justify-content:center;width:48px}.work-schedule-title{color:var(--gray-900);font-size:1.5rem;font-weight:700;margin:0}.schedule-templates-section{margin-bottom:2rem}.schedule-templates-title{color:var(--gray-800);font-size:1.125rem;font-weight:600;margin-bottom:1rem}.schedule-templates-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(4,1fr)}.schedule-template-card{background:#fff;border:2px solid var(--gray-200);border-radius:12px;cursor:pointer;padding:1.25rem;text-align:center;transition:all .2s ease}.schedule-template-card:hover{border-color:var(--ph-blue);box-shadow:0 4px 12px #0038a826;transform:translateY(-2px)}.schedule-template-title{color:var(--gray-900);font-size:.9375rem;font-weight:600;margin-bottom:.5rem}.schedule-template-days{color:var(--gray-600);font-size:.875rem;margin-bottom:.25rem}.schedule-template-time{color:var(--gray-500);font-size:.8125rem}.schedule-config-row{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:1fr 1fr;margin-bottom:2rem}.time-input-wrapper{position:relative}.time-clock-icon{font-size:1.25rem;pointer-events:none;position:absolute;right:12px;top:50%;transform:translateY(-50%)}.time-display-label{color:var(--gray-600);font-size:.875rem;margin-top:.5rem}.schedule-summary-section{background:#e6f7ff;border:1px solid #bae7ff;border-radius:12px;margin-bottom:2rem;padding:1.5rem}.schedule-summary-header{align-items:center;display:flex;gap:.5rem;margin-bottom:1rem}.schedule-summary-icon{font-size:1.25rem}.schedule-summary-title{color:var(--gray-800);font-size:1rem;font-weight:600;margin:0}.schedule-summary-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(4,1fr)}.schedule-summary-item{text-align:left}.schedule-summary-label{color:var(--gray-600);font-size:.8125rem;margin-bottom:.25rem}.schedule-summary-value{color:var(--gray-900);font-size:1.125rem;font-weight:600}.labor-standards-section{background:#f0f4ff;border:1px solid #d6e4ff;border-radius:12px;margin-bottom:2rem;padding:1.5rem}.labor-standards-header{align-items:center;display:flex;gap:.5rem;margin-bottom:1rem}.labor-standards-icon{font-size:1.25rem}.labor-standards-title{color:var(--gray-800);font-size:1rem;font-weight:600;margin:0}.labor-standards-content{display:flex;flex-direction:column;gap:.75rem}.labor-standard-item{color:var(--gray-700);font-size:.875rem;line-height:1.5}@media (max-width:768px){.schedule-templates-grid{grid-template-columns:repeat(2,1fr)}.schedule-config-row{grid-template-columns:1fr}.schedule-summary-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.schedule-summary-grid,.schedule-templates-grid{grid-template-columns:1fr}}.government-ids-section{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:2rem;padding:2rem}.form-validation{display:block;font-weight:500;margin-top:.25rem}.form-validation--valid{color:#059669}.form-validation--invalid{color:#dc2626}.government-benefits-section{background:#f0f5ff;border-radius:12px;margin-bottom:2rem;padding:2rem}.government-benefits-header{align-items:center;display:flex;gap:.75rem;margin-bottom:1.5rem}.government-benefits-icon{font-size:1.5rem}.government-benefits-title{color:#1e40af;font-size:1.125rem;font-weight:600;margin:0}.government-benefits-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.government-benefits-item-title{color:#1e3a8a;font-size:.875rem;font-weight:600;margin-bottom:.5rem}.government-benefits-item-content{color:#1e3a8a;font-size:.875rem;line-height:1.6}.government-benefits-item-content div{margin:0 0 .25rem}.data-security-section{background:#fef2f2;border-radius:12px;margin-bottom:2rem;padding:2rem}.data-security-header{align-items:center;display:flex;gap:.75rem;margin-bottom:1rem}.data-security-icon{font-size:1.5rem}.data-security-title{color:#dc2626;font-size:1.125rem;font-weight:600;margin:0}.data-security-text{color:#991b1b;font-size:.875rem;line-height:1.6;margin:0}@media (max-width:768px){.government-benefits-grid{grid-template-columns:1fr}.data-security-section,.government-benefits-section,.government-ids-section{padding:1.5rem}}.banking-details-container{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:2rem;padding:2rem}.banking-deposit-info{background-color:#f0f9ff;border:1px solid #7dd3fc;border-radius:8px;margin-bottom:2rem;padding:1rem}.banking-deposit-info__title{color:#0c4a6e;font-size:.875rem;font-weight:600;margin:0 0 .5rem}.banking-deposit-info__text{color:#164e63;font-size:.75rem;line-height:1.5;margin:0}.banking-form-fields{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2rem}.form-help--success{color:#059669;font-weight:500}.form-help--error{color:#dc2626;font-weight:500}.form-input--monospace{font-family:monospace;letter-spacing:.05em}.form-input--disabled{background-color:#f9fafb;cursor:not-allowed}.form-section--disabled{background-color:#f9fafb;border:1px solid #e5e7eb;opacity:.6;pointer-events:none;position:relative}.form-section--disabled:before{background-color:#f9fafb4d;border-radius:var(--radius-xl);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0;z-index:1}.read-only-badge{align-items:center;background-color:#fef3c7;border:1px solid #fde68a;border-radius:12px;color:#92400e;display:inline-flex;font-size:.75rem;font-weight:500;gap:.25rem;margin-left:.75rem;padding:.25rem .75rem}.form-section--disabled .toggle-option,.form-section--disabled input[type=radio],.form-section--disabled input[type=text]{cursor:not-allowed}.form-section--disabled .id-preview{background-color:#f3f4f6}.banking-standards-box{background-color:#f0f5ff;border:1px solid #93c5fd;border-radius:8px;margin-bottom:2rem;padding:1rem}.banking-standards-box__title{color:#1e40af;font-size:.875rem;font-weight:600;margin:0 0 .75rem}.banking-standards-box__grid{grid-gap:1rem;color:#1e3a8a;display:grid;font-size:.75rem;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.banking-standards-box__item-title{font-weight:600;margin-bottom:.25rem}.banking-standards-box__item-content div{margin:0 0 .125rem}.employee-ready-box{background-color:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;margin-bottom:2rem;padding:1.5rem}.employee-ready-box__title{color:#15803d;font-size:1rem;font-weight:600;margin:0 0 1rem}.employee-ready-box__text{color:#166534;font-size:.875rem;line-height:1.5;margin:0 0 1rem}.employee-ready-box__summary{grid-gap:1rem;color:#166534;display:grid;font-size:.75rem;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.employee-ready-box__summary-title{font-weight:600;margin-bottom:.25rem}.employee-ready-box__summary-item>div:not(.employee-ready-box__summary-title){margin:0 0 .125rem}.add-employee-form-actions__step-indicator{color:#6b7280;font-size:.875rem;font-weight:500}.add-employee-form-actions__right{display:flex;gap:.75rem}@media (max-width:768px){.banking-standards-box__grid,.employee-ready-box__summary{grid-template-columns:1fr}.add-employee-form-actions{flex-direction:column;gap:1rem}.add-employee-form-actions__step-indicator{order:-1;text-align:center}.add-employee-form-actions__right{justify-content:space-between;width:100%}.add-employee-form-actions__right .btn{flex:1 1}}.time-tracking-container{margin:0 auto;max-width:1400px;padding:24px}.time-tracking-header-new{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:24px;padding:20px 24px}.header-top-row{align-items:center;display:flex;gap:24px;justify-content:space-between}.header-title-section{flex:1 1}.time-tracking-title{color:var(--gray-900);display:inline-block;font-size:1.5rem;font-weight:600;margin:0}.time-tracking-subtitle{color:var(--gray-600);display:inline-block;font-size:.875rem;margin:0 0 0 12px}.period-info-section{gap:0}.period-info-row{align-items:baseline;border-right:1px solid #e5e7eb;border-right:1px solid var(--gray-200,#e5e7eb);display:flex;gap:8px;padding:0 16px;white-space:nowrap}.period-info-row:first-child{padding-left:0}.period-info-row:last-child{border-right:none}.period-label{color:var(--gray-600);font-size:.875rem;font-weight:400}.period-value{color:var(--gray-900);font-size:.875rem;font-weight:600}.time-tracking-header{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:24px;padding:24px}.header-content{align-items:flex-start;display:flex;flex-wrap:wrap;gap:24px;justify-content:space-between}.header-text{flex:1 1;min-width:300px}.period-info{align-items:flex-start;gap:40px;padding:8px 0}.period-item{display:flex;flex-direction:column;gap:6px;min-width:100px}@media (max-width:1024px){.header-top-row{align-items:flex-start;flex-direction:column}.period-info-section{margin-top:12px}}@media (max-width:640px){.period-info-section{align-items:flex-start;flex-direction:column;gap:8px}.period-info-row{border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--gray-200,#e5e7eb);border-right:none;padding:8px 0}.period-info-row:last-child{border-bottom:none}.time-tracking-subtitle{display:block;margin-left:0;margin-top:4px}}.time-tracking-filters{align-items:center;background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;display:flex;gap:16px;margin-bottom:24px;padding:20px}.search-input-wrapper{flex:1 1;min-width:300px;position:relative}.search-input{border:1px solid var(--gray-300);font-size:1rem;padding:12px 16px 12px 44px;width:100%}.search-input::placeholder{color:var(--gray-400)}.search-input:focus{border-color:var(--ph-blue)}.search-icon{color:var(--gray-400);font-size:1.2rem;left:16px;position:absolute;top:50%;transform:translateY(-50%)}.filter-dropdown{background:#fff;border:1px solid var(--gray-300);border-radius:8px;color:var(--gray-900);cursor:pointer;font-size:1rem;min-width:200px;padding:12px 16px;transition:all .2s ease}.filter-dropdown:focus,.filter-dropdown:hover{border-color:var(--ph-blue)}.filter-dropdown:focus{box-shadow:0 0 0 3px #0038a81a;outline:none}.employee-time-list{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.employee-time-row{align-items:center;border-bottom:1px solid var(--gray-200);display:flex;gap:20px;padding:20px 24px;transition:background-color .2s ease}.employee-time-row:hover{background-color:var(--gray-50)}.employee-time-row:last-child{border-bottom:none}.employee-avatar{align-items:center;background:var(--ph-blue-light);border-radius:50%;display:flex;flex-shrink:0;font-size:1.5rem;height:48px;justify-content:center;width:48px}.employee-info{flex:1 1;min-width:0}.employee-primary{align-items:baseline;display:flex;gap:8px;margin-bottom:4px}.employee-name{font-size:1rem}.employee-id{color:var(--gray-500);font-size:.875rem}.employee-secondary{align-items:center;display:flex;gap:12px}.department-tag,.schedule-tag{background:var(--gray-100);border-radius:4px;color:var(--gray-600);font-size:.875rem;padding:2px 8px}.time-completion{display:flex;flex-direction:column;gap:8px;margin-right:20px;min-width:200px}.completion-text{color:var(--gray-600);font-size:.875rem;text-align:right}.completion-bar{background:var(--gray-200);border-radius:4px;height:8px;overflow:hidden;width:200px}.completion-fill{border-radius:4px;height:100%;transition:width .3s ease}.edit-time-btn{background:var(--ph-blue);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.9375rem;font-weight:500;padding:10px 20px;transition:all .2s ease;white-space:nowrap}.edit-time-btn:hover{background:var(--ph-blue-dark);transform:translateX(2px)}.employee-time-row.has-locked-records{background:linear-gradient(90deg,#0000 0,#0000 98%,#fef3c7 0,#f59e0b)}.lock-indicator{cursor:help;font-size:.875rem;margin-left:8px}.validation-warnings{display:flex;flex-direction:column;gap:4px;margin-top:8px}.validation-warning{align-items:center;border-radius:4px;font-size:.75rem;gap:6px;padding:4px 8px}.validation-warning.validation-error{background:#fee2e2;background:var(--error-light,#fee2e2);color:#991b1b;color:var(--error-dark,#991b1b)}.validation-warning.validation-warning{background:#fef3c7;background:var(--warning-light,#fef3c7);color:#92400e;color:var(--warning-dark,#92400e)}.validation-warning.validation-info{background:#dbeafe;background:var(--info-light,#dbeafe);color:#1e40af;color:var(--info-dark,#1e40af)}.warning-icon{font-size:.875rem}.payroll-info{margin-top:4px}.payroll-badge{background:#d1fae5;background:var(--success-light,#d1fae5);border-radius:4px;color:#065f46;color:var(--success-dark,#065f46);display:inline-block;font-size:.75rem;font-weight:500;padding:2px 8px}.time-editor-container{margin:0 auto;max-width:1400px;padding:24px}.time-editor-header{align-items:center;display:flex;gap:24px;margin-bottom:24px}.back-button{background:#fff;border:1px solid var(--gray-300);border-radius:8px;color:var(--gray-700);cursor:pointer;font-size:.9375rem;padding:10px 16px;transition:all .2s ease}.back-button:hover{background:var(--gray-50);border-color:var(--gray-400)}.editor-employee-info{flex:1 1}.editor-employee-name{color:var(--gray-900);font-size:1.75rem;font-weight:700;margin:0 0 4px}.editor-employee-details{color:var(--gray-600);font-size:.9375rem;margin:0}.period-info-bar{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;display:flex;gap:32px;margin-bottom:24px;padding:20px}.period-info-section{align-items:center;display:flex;gap:12px}.period-icon{font-size:1.5rem}.period-details{display:flex;flex-direction:column;gap:2px}.legend-container{align-items:stretch;display:flex;gap:24px;margin-bottom:24px}.day-type-section{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;flex:1 1;padding:20px}.day-type-title{color:#6b7280;font-size:11px;font-weight:600;letter-spacing:.5px;margin-bottom:16px;text-transform:uppercase}.day-type-items{display:flex;flex-wrap:wrap;gap:24px}.day-type-item{align-items:center;display:flex;font-size:13px;gap:8px}.day-type-indicator{align-items:center;border:2px solid;border-radius:4px;display:flex;flex-shrink:0;height:20px;justify-content:center;width:20px}.day-type-indicator.work{background:#e6f0ff;border-color:#0038a8}.day-type-indicator.holiday{background:#fff9e6;border-color:#f39c12}.day-type-indicator.rest{background:#f3f4f6;border-color:#6b7280}.day-type-label{color:#374151;font-size:13px}.data-source-section{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;flex:1.5 1;padding:20px}.data-source-title{color:#6b7280;font-size:11px;font-weight:600;letter-spacing:.5px;margin-bottom:16px;text-transform:uppercase}.data-source-items{display:flex;flex-wrap:wrap;gap:20px}.data-source-item{align-items:center;color:#374151;display:flex;font-size:13px;gap:8px}.data-source-indicator{align-items:center;border:2px solid;border-radius:4px;display:flex;font-size:10px;font-weight:600;height:24px;justify-content:center;width:40px}.data-source-indicator.kiosk{background:#f0fdf4;border-color:#10b981}.data-source-indicator.manual{background:#eff6ff;border-color:#3b82f6}.data-source-indicator.schedule{background:#fff;border-color:#e5e7eb}.data-source-indicator.incomplete{background:#fef3c7;border-color:#f59e0b}.data-source-label{color:#374151;font-size:13px}.time-records-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));margin-bottom:32px}.daily-time-record-compact{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden;transition:box-shadow .2s}.daily-time-record-compact:hover{box-shadow:0 4px 12px #00000026}.daily-time-record-compact.record--work-day .record-header{background:linear-gradient(135deg,#e6f0ff,#fff);border-left:4px solid #0038a8}.daily-time-record-compact.record--holiday .record-header{background:linear-gradient(135deg,#fff9e6,#fff);border-left:4px solid #f39c12}.daily-time-record-compact.record--rest-day .record-header,.daily-time-record-compact.record--weekend .record-header{background:linear-gradient(135deg,#f3f4f6,#fff);border-left:4px solid #6b7280}.record-header{align-items:center;display:flex;font-weight:600;justify-content:space-between;padding:16px 20px;position:relative}.record-date-info{align-items:baseline;display:flex;gap:12px}.record-day-name{color:#111827;font-size:18px;font-weight:600}.record-date-value{color:#6b7280;font-size:14px;font-weight:400}.holiday-indicator{background:#f39c121a;border-radius:4px;color:#f39c12;font-size:12px;padding:2px 8px}.schedule-badge{background:#0038a81a;border-radius:4px;color:#002c7f;font-size:12px;font-weight:500;padding:4px 8px}.daily-time-record-compact.record--rest-day .schedule-badge,.daily-time-record-compact.record--weekend .schedule-badge{background:#6b72801a;color:#6b7280}.daily-time-record-compact.record--holiday .schedule-badge{background:#f39c121a;color:#f39c12}.record-body{padding:20px}.time-entry-section{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr auto;margin-bottom:20px}.time-input-group{display:flex;flex-direction:column;gap:8px}.input-label{color:#6b7280;font-size:12px;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.time-input-field{transition:all .2s;width:100%}.break-input-field,.time-input-field{border:2px solid #e5e7eb;border-radius:8px;font-size:16px;font-weight:500;padding:10px 12px}.break-input-field{text-align:center;width:80px}.break-input-field:focus,.time-input-field:focus{border-color:#0038a8;box-shadow:0 0 0 3px #0038a81a;outline:none}.break-input-field.source-kiosk,.time-input-field.source-kiosk{background:#f0fdf4;border-color:#10b981}.break-input-field.source-manual,.time-input-field.source-manual{background:#eff6ff;border-color:#3b82f6}.break-input-field.source-schedule,.time-input-field.source-schedule{background:#fff;border-color:#e5e7eb}.break-input-field.source-incomplete{background:#fef3c7;border-color:#f59e0b}.midnight-badge{background:var(--ph-blue);border-radius:3px;color:#fff;font-size:10px;margin-left:4px;padding:2px 4px}.status-group{align-items:center;border-top:1px solid #e5e7eb;display:flex;gap:12px;grid-column:span 3;padding-top:16px}.status-select{background:#fff;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;flex:1 1;font-size:14px;padding:10px 12px}.status-select:focus{border-color:#0038a8;box-shadow:0 0 0 3px #0038a81a;outline:none}.tooltip-icon{align-items:center;background:#e6f0ff;border:1px solid #0038a8;border-radius:50%;color:#0038a8;cursor:pointer;display:flex;font-weight:400;height:20px;justify-content:center;transition:all .2s ease;width:20px}.tooltip-icon:hover{background:#0038a8;color:#fff}.hours-display{background:#f9fafb;border-radius:8px;display:flex;gap:16px;margin-top:12px;padding:12px}.hours-item{display:flex;flex-direction:column;gap:4px}.hours-label{color:#6b7280;font-size:11px;font-weight:500;text-transform:uppercase}.hours-value{color:#111827;font-size:16px;font-weight:600}.hours-item.hours-ot .hours-value{color:#f39c12}.hours-item.hours-nd .hours-value{color:#0038a8}.time-summary{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:24px;padding:24px}.time-summary__title{color:var(--gray-900);font-size:1.25rem;font-weight:600;margin-bottom:20px}.summary-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.summary-item{gap:8px}.summary-label{color:var(--gray-600);font-size:.875rem}.summary-value{color:var(--gray-900);font-size:1.75rem;font-weight:700}.summary-value--overtime{color:#f39c12}.summary-value--night{color:#0038a8}.time-editor-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.btn-cancel,.btn-reset,.btn-save{border-radius:8px;cursor:pointer;font-size:1rem;font-weight:500;padding:12px 24px;transition:all .2s ease}.btn-cancel{border:1px solid var(--gray-300);color:var(--gray-700)}.btn-cancel:hover{background:var(--gray-50);border-color:var(--gray-400)}.btn-reset{background:#fff;border:1px solid #0038a8;color:#0038a8}.btn-reset:hover{background:#e6f0ff}.btn-save{background:#0038a8;border:none;color:#fff}.btn-save:hover{background:#002c7f}.btn-reset:disabled,.btn-save:disabled{cursor:not-allowed;opacity:.5}.modal-content{border-radius:12px;box-shadow:0 20px 60px #0000004d;max-height:80vh;width:90%}.modal-header{padding:24px 24px 16px}.modal-header h2{color:#111827;font-size:20px;font-weight:600;margin:0}.modal-close{border-radius:4px}.modal-close:hover{background:var(--gray-100)}.modal-description{color:#6b7280;font-size:14px;margin-bottom:20px}.status-list{display:flex;flex-direction:column;gap:12px}.status-item{align-items:flex-start;background:#f9fafb;border-radius:8px;display:flex;gap:12px;padding:12px}.status-icon{align-items:center;background:#dbeafe;border-radius:50%;color:#3b82f6;display:flex;flex-shrink:0;height:24px;justify-content:center;width:24px}.status-info{flex:1 1}.status-info strong{color:var(--gray-900);display:block;font-size:14px;margin-bottom:4px}.status-info p{color:var(--gray-600);font-size:14px;line-height:1.5;margin:0}.modal-footer{padding:16px 24px}.modal-footer .btn-primary{background:#0038a8;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s ease;width:100%}.modal-footer .btn-primary:hover{background:#002c7f}.record--not-employed{background:#f9fafb;opacity:.6;position:relative}.record--not-employed .record-header{background:linear-gradient(135deg,#e5e7eb,#f3f4f6);border-left:4px solid #6b7280}.record--not-employed .break-input-field,.record--not-employed .status-select,.record--not-employed .time-input-field{background:#f3f4f6;color:#9ca3af;cursor:not-allowed}.record--not-employed .break-input-field:disabled,.record--not-employed .status-select:disabled,.record--not-employed .time-input-field:disabled{opacity:.8}.record--not-employed .record-date-value,.record--not-employed .record-day-name{color:#6b7280}.record--not-employed .input-label{color:#9ca3af}.record--locked{background:linear-gradient(90deg,#0000 0,#0000 98%,#fef3c7 0,#f59e0b);opacity:.85;position:relative}.record--locked .break-input-field,.record--locked .status-select,.record--locked .time-input-field{background:#f9fafb;cursor:not-allowed}.record--locked .break-input-field:disabled,.record--locked .status-select:disabled,.record--locked .time-input-field:disabled{opacity:.7}.lock-status-indicator{align-items:center;background:#fef3c7;border-radius:4px;color:#92400e;cursor:help;display:inline-flex;font-size:.75rem;font-weight:500;gap:4px;margin-left:8px;padding:2px 8px}.alert{align-items:center;border-radius:8px;display:flex;font-size:.9375rem;gap:8px;margin-bottom:16px;padding:12px 16px}.alert-success{background:#d1fae5;border:1px solid #10b981;color:#065f46}.alert-error{background:#fee2e2;border:1px solid #ef4444;color:#991b1b}.time-loading-spinner{border:4px solid var(--gray-200);height:48px;width:48px}.time-empty-state{border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:60px 20px}.time-empty-icon{margin-bottom:16px}.time-empty-title{font-size:1.5rem;font-weight:600;margin-bottom:8px}.time-empty-text{font-size:1rem;margin-bottom:24px}@media (max-width:768px){.time-editor-container,.time-tracking-container{padding:16px}.header-content,.period-info{flex-direction:column}.period-info{align-items:flex-start;gap:16px}.time-tracking-filters{flex-direction:column}.search-input-wrapper{min-width:0;min-width:auto;width:100%}.filter-dropdown{width:100%}.employee-time-row{align-items:flex-start;flex-direction:column;gap:12px}.completion-bar,.edit-time-btn,.time-completion{width:100%}.time-records-grid{gap:16px;grid-template-columns:1fr}.time-entry-section{gap:12px;grid-template-columns:1fr}.break-input-field{width:100%}.legend-container{flex-direction:column;gap:16px}.data-source-section,.day-type-section{flex:1 1;width:100%}.data-source-items,.day-type-items{flex-direction:column;gap:12px}.hours-display{gap:8px}.hours-display,.time-editor-actions{flex-direction:column}.btn-cancel,.btn-reset,.btn-save{width:100%}}@media (max-width:480px){.time-tracking-title{font-size:1.5rem}.period-item{width:100%}.employee-secondary{align-items:flex-start;flex-direction:column;gap:4px}.record-day-name{font-size:16px}.schedule-badge{display:none}.status-group{align-items:stretch;flex-direction:column}.status-select{width:100%}}.settings-container{margin:0 auto;max-width:1200px;padding:20px}.settings-header{align-items:center;display:flex;gap:16px;margin-bottom:32px}.settings-back-button{align-items:center;background:#f5f5f7;border:none;border-radius:50%;cursor:pointer;display:flex;height:40px;justify-content:center;transition:all .3s;width:40px}.settings-back-button:hover{background:#e8e8ea;transform:translateX(-2px)}.settings-header-content h1{color:#1d1d1f;font-size:32px;font-weight:600;margin:0}.settings-header-content p{color:#6e6e73;font-size:16px;margin:4px 0 0}.settings-progress{margin-bottom:40px;padding:24px}.settings-content,.settings-progress{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a}.settings-content{margin-bottom:24px;padding:32px}.settings-form-section{margin-bottom:48px}.settings-form-section:last-child{margin-bottom:0}.settings-section-header{align-items:center;border-bottom:1px solid #e8e8ea;gap:12px;padding-bottom:16px}.settings-section-icon{align-items:center;background:#f5f5f7;border-radius:8px;display:flex;font-size:20px;height:40px;justify-content:center;width:40px}.settings-section-title{color:#1d1d1f;font-size:20px;margin:0}.settings-section-description{color:#6e6e73;font-size:14px;margin-bottom:20px}.settings-form-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:20px}.required{color:#ff3b30}.optional{color:#6e6e73;font-size:12px;font-weight:400}.settings-info-box{background:#f5f5f7;gap:16px;margin-bottom:24px;padding:16px}.settings-info-icon{flex-shrink:0;font-size:24px}.settings-info-content h4{color:#1d1d1f;font-size:14px;font-weight:600;margin:0 0 4px}.settings-info-content p{color:#6e6e73;font-size:13px;line-height:1.5;margin:0}.settings-work-days{display:flex;flex-wrap:wrap;gap:8px}.settings-work-day{align-items:center;border:1px solid #d2d2d7;border-radius:6px;cursor:pointer;display:flex;justify-content:center;padding:8px 12px;transition:all .3s}.settings-work-day:hover{border-color:#007aff}.settings-work-day input[type=checkbox]{margin-right:6px}.settings-work-day-label{font-size:14px;font-weight:500;-webkit-user-select:none;user-select:none}.settings-rate-cards{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.settings-rate-card{border:1px solid #d2d2d7;border-radius:8px;padding:20px;transition:all .3s}.settings-rate-card:hover{border-color:#007aff;box-shadow:0 4px 12px #00000014}.settings-rate-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.settings-rate-name{color:#1d1d1f;font-size:16px;font-weight:600;margin:0}.settings-rate-minimum{color:#6e6e73;font-size:12px;font-weight:500}.settings-rate-description{color:#6e6e73;font-size:13px;margin:0 0 12px}.settings-rate-input-group{align-items:center;display:flex;gap:8px}.settings-rate-input{border:1px solid #d2d2d7;border-radius:6px;flex:1 1;font-size:16px;font-weight:500;padding:10px 12px;text-align:center;transition:border-color .3s}.settings-rate-input:focus{border-color:#007aff;outline:none}.settings-rate-input.error{border-color:#ff3b30}.settings-rate-suffix{color:#6e6e73;font-size:16px;font-weight:500}.settings-export-options{display:flex;flex-direction:column;gap:16px;margin-bottom:24px}.settings-checkbox-label{align-items:flex-start;border:1px solid #e8e8ea;border-radius:8px;cursor:pointer;display:flex;gap:12px;padding:12px;transition:all .3s}.settings-checkbox-label:hover{background:#f5f5f7}.settings-checkbox-label input[type=checkbox]{cursor:pointer;height:18px;margin-top:2px;width:18px}.settings-checkbox-text{flex:1 1}.settings-checkbox-text strong{color:#1d1d1f;display:block;font-size:14px;margin-bottom:2px}.settings-checkbox-description{color:#6e6e73;font-size:12px}.settings-bank-formats{background:#f5f5f7;border-radius:8px;padding:16px}.settings-bank-formats h4{color:#1d1d1f;font-size:14px;font-weight:600;margin:0 0 12px}.settings-bank-format-list{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.settings-bank-format{color:#6e6e73;font-size:13px}.settings-bank-format strong{color:#1d1d1f}.settings-actions{border-top:1px solid #e8e8ea;display:flex;justify-content:space-between;margin-top:40px;padding-top:24px}.settings-actions-right{display:flex;gap:12px}.settings-btn{font-size:16px;padding:12px 24px;transition:all .3s}.settings-btn:disabled{cursor:not-allowed;opacity:.5}.settings-btn-primary{background:#007aff}.settings-btn-primary:hover:not(:disabled){background:#0051d5;box-shadow:0 4px 12px #007aff4d;transform:translateY(-1px)}.settings-btn-secondary{border:1px solid #007aff;color:#007aff}.settings-btn-secondary:hover:not(:disabled){background:#007aff08}.settings-spinner{animation:spin .8s linear infinite;border:2px solid #ffffff30;border-radius:50%;border-top-color:#fff;height:16px;width:16px}.cutoff-periods{display:flex;flex-direction:column;gap:20px}.cutoff-period-card{background:#f9f9fb;border:1px solid #e5e5e7;border-radius:12px;padding:20px}.cutoff-period-card h4{color:#1d1d1f;font-size:16px;font-weight:600;margin:0 0 16px}.deduction-distribution-integrated{border-top:1px solid #e5e5e7;margin-top:32px;padding-top:24px}.distribution-subtitle{color:#1d1d1f;font-size:16px;font-weight:600;margin:0 0 8px}.distribution-help{color:#86868b;font-size:14px;margin:0 0 20px}.deduction-distribution-simple{display:flex;flex-direction:column;gap:16px}.deduction-period-row{align-items:flex-start;background:#f9f9fb;border:1px solid #e5e5e7;border-radius:12px;display:flex;gap:20px;padding:16px}.period-info{flex:0 0 140px}.period-label{color:#1d1d1f;font-size:14px;font-weight:600}.period-dates{color:#86868b;font-size:12px}.period-deductions{display:flex;flex:1 1;flex-direction:column;gap:12px}.deductions-assigned{color:#86868b;font-size:14px;font-style:italic}.deduction-dropdown{position:relative}.deduction-select{background:#fff;border:1px solid #d1d1d6;border-radius:8px;color:#1d1d1f;cursor:pointer;font-size:14px;min-height:38px;padding:8px 12px;width:100%}.deduction-select:focus{border-color:#007aff;box-shadow:0 0 0 2px #007aff33;outline:none}.deduction-select option{padding:8px}.deduction-select option:disabled{color:#86868b;font-style:italic}.selected-deductions{display:flex;flex-wrap:wrap;gap:8px}.deduction-tag{align-items:center;background:#007aff;border-radius:20px;color:#fff;display:inline-flex;font-size:13px;font-weight:500;gap:6px;padding:6px 12px}.tag-icon{font-size:16px}.tag-name{color:#fff}.tag-remove{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:16px;height:20px;justify-content:center;line-height:1;margin-left:4px;padding:0;transition:background .2s;width:20px}.tag-remove:hover{background:#ffffff4d}.distribution-status{align-items:center;border-radius:8px;display:flex;font-size:14px;font-weight:500;gap:8px;padding:12px 16px}.distribution-status.valid{background:#e8f5e9;color:#2e7d32}.distribution-status.invalid{background:#fff3e0;color:#e65100}.status-icon{font-size:16px}.status-text{flex:1 1}.settings-loading{min-height:400px}.settings-loading .settings-spinner{border-color:#007aff #007aff30 #007aff30;height:32px;width:32px}.settings-error-message{background:#ff3b3010;border:1px solid #ff3b3030;border-radius:8px;color:#ff3b30;margin-top:16px;padding:12px 16px}.settings-subsection{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin-top:24px;padding:20px}.settings-subsection-title{color:#374151;font-size:16px;font-weight:600;margin:0 0 16px}@media (max-width:768px){.settings-container{padding:16px}.settings-header{margin-bottom:24px}.settings-header-content h1{font-size:24px}.settings-header-content p{font-size:14px}.settings-content{padding:20px}.settings-form-row{grid-template-columns:1fr}.settings-form-group input,.settings-form-group select{font-size:16px}.settings-progress{padding:16px}.settings-actions{flex-direction:column;gap:12px}.settings-actions-right{flex-direction:column-reverse;width:100%}.settings-btn{width:100%}.settings-rate-cards{grid-template-columns:1fr}.settings-rate-card{padding:16px}.settings-rate-name{font-size:14px}.settings-rate-input{font-size:16px;padding:8px 10px}.settings-work-days{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(4,1fr)}.settings-work-day{font-size:12px;padding:8px}.settings-work-day input[type=checkbox]{margin-right:4px}.settings-info-box{flex-direction:column;gap:8px}.settings-bank-format-list{grid-template-columns:1fr}.settings-section-header{align-items:flex-start;flex-direction:column;gap:8px}.settings-section-icon{font-size:16px;height:32px;width:32px}.settings-section-title{font-size:18px}.settings-form-section{margin-bottom:32px}.cutoff-periods{gap:16px}.cutoff-period-card{padding:16px}.deduction-distribution-integrated{margin-top:24px;padding-top:20px}.distribution-subtitle{font-size:15px}.distribution-help{font-size:13px;margin-bottom:16px}.deduction-period-row{flex-direction:column;gap:12px;padding:14px}.period-info{flex:none;width:100%}.deduction-select{font-size:16px}.selected-deductions{gap:6px}.deduction-tag{font-size:12px;padding:4px 10px}.tag-icon{font-size:14px}.distribution-status{font-size:13px;padding:10px 14px}}@media (min-width:769px) and (max-width:1024px){.settings-form-row,.settings-rate-cards{grid-template-columns:repeat(2,1fr)}}.settings-hidden{display:none}.settings-mt-4{margin-top:32px}.settings-mb-4{margin-bottom:32px}.compliance-indicator{align-items:center;border-radius:50%;cursor:help;display:inline-flex;font-size:14px;height:24px;justify-content:center;margin-left:auto;width:24px}.compliance-indicator--ok{background:#d1fae5;color:#10b981}.compliance-indicator--warning{background:#fef3c7;color:#f59e0b}.rate-card{transition:all .3s ease}.rate-card--non-compliant{background:#fffbf0;border-color:#f59e0b}.rate-card-header{gap:12px}.rate-icon{font-size:24px}.rate-name{color:#111827;flex:1 1;font-size:18px;font-weight:600;margin:0}.rate-description{color:#6b7280;font-size:14px;margin:0 0 16px}.rate-value-display{align-items:baseline;color:#0038a8;display:flex;font-size:32px;font-weight:700;gap:12px}.current-value{color:#0038a8}.future-value{color:#6b7280;font-size:18px;font-weight:400}.compliance-warning{align-items:flex-start;background:#fef3c7;border-radius:6px;color:#92400e;display:flex;font-size:12px;gap:8px;margin-top:12px;padding:8px 12px}.warning-icon{font-size:14px;line-height:1;margin-top:2px}.warning-text{flex:1 1;line-height:1.4}.rates-grid{grid-gap:20px;gap:20px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));margin:24px 0}.effective-date-banner{align-items:center;background:#e6f0ff;border-radius:12px;display:flex;gap:12px;margin-bottom:24px;padding:16px 20px}.effective-date-banner--future{background:#fff9e6}.banner-icon{font-size:20px}.banner-text{color:#374151;font-size:14px}.banner-text strong{color:#111827;font-weight:600}.upcoming-changes-alert{background:#fff9e6;border:1px solid #fcd34d;border-radius:8px;display:flex;gap:12px;margin-bottom:24px;padding:16px}.alert-icon{font-size:20px;line-height:1}.alert-content h4{color:#92400e;font-size:14px;font-weight:600;margin:0 0 8px}.upcoming-change{color:#78350f;font-size:13px;margin-top:4px}.change-date{font-weight:600;margin-right:8px}.compliance-note{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;display:flex;gap:12px;margin-top:24px;padding:16px}.note-icon{line-height:1}.note-content h4{color:#374151;font-size:14px;font-weight:600;margin:0 0 8px}.note-content p{color:#6b7280;font-size:13px;line-height:1.5;margin:0}.settings-section-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:24px}.settings-section-header h2{color:#111827;font-size:28px;font-weight:700;margin:0 0 8px}.section-description{color:#6b7280;font-size:14px;margin:0}.header-actions{display:flex;gap:12px}@media (max-width:768px){.rates-grid{grid-template-columns:1fr}.compliance-indicator{font-size:12px;height:20px;width:20px}.rate-value-display{font-size:24px}.settings-section-header{flex-direction:column;gap:16px}.header-actions{flex-direction:column;width:100%}.header-actions button{width:100%}}.ph-pride-text{-webkit-text-fill-color:#0000;background:var(--ph-gradient-flag);-webkit-background-clip:text;background-clip:text;font-weight:var(--font-bold)}html{scroll-behavior:smooth}:focus-visible{border-radius:var(--radius-sm);outline:2px solid var(--ph-blue);outline-offset:2px}::selection{background-color:var(--ph-blue-light);color:var(--ph-blue-dark)}::-moz-selection{background-color:var(--ph-blue-light);color:var(--ph-blue-dark)}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--gray-100)}::-webkit-scrollbar-thumb{background:var(--gray-400);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--ph-blue)}@media print{.alert--warning,.btn,.footer__badge,.loading,.nav-link{display:none!important}.text-gray-400,.text-gray-500{color:var(--gray-700)!important}*{background-image:none!important;box-shadow:none!important}.bg-ph-blue,.bg-ph-gold,.bg-ph-red{-webkit-print-color-adjust:exact;print-color-adjust:exact}}@media (prefers-contrast:high){:root{--gray-400:#666;--gray-500:#555;--gray-600:#444}.btn{font-weight:var(--font-semibold)}.btn,.form-input{border-width:2px}.card{border:2px solid var(--gray-300)}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.hover-lift-sm:hover,.hover-lift:hover{transform:none}}.landing{background-color:#fff;min-height:100vh}.landing-nav{background:#fff;border-bottom:1px solid var(--gray-200);box-shadow:var(--shadow-sm);position:-webkit-sticky;position:sticky;top:0;z-index:1000}.landing-nav__container{align-items:center;display:flex;height:72px;justify-content:space-between;margin:0 auto;max-width:1280px;padding:0 24px}.landing-nav__brand{align-items:center;display:flex;gap:12px;text-decoration:none}.landing-nav__logo{align-items:center;background:linear-gradient(135deg,var(--ph-blue) 0,var(--ph-blue-dark) 100%);border-radius:10px;color:#fff;display:flex;font-size:18px;font-weight:700;height:40px;justify-content:center;width:40px}.landing-nav__brand-text{color:var(--ph-blue);font-size:20px;font-weight:700}.landing-nav__links{align-items:center;display:flex;gap:32px}.landing-nav__link{color:var(--gray-600);font-size:15px;font-weight:500;text-decoration:none;transition:color .2s ease}.landing-nav__link:hover{color:var(--ph-blue)}.landing-nav__actions{align-items:center;display:flex;gap:12px}.landing-nav__mobile-toggle{background:none;border:none;cursor:pointer;display:none;flex-direction:column;gap:5px;padding:8px}.landing-nav__mobile-toggle span{background:var(--gray-700);display:block;height:2px;transition:.3s;width:24px}.landing-nav__mobile-menu{background:#fff;border-bottom:1px solid var(--gray-200);box-shadow:var(--shadow-lg);display:none;left:0;padding:16px 24px;position:absolute;right:0;top:100%}.landing-nav__mobile-menu.active{display:block}.landing-nav__mobile-links{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.landing-nav__mobile-actions{display:flex;flex-direction:column;gap:8px}.landing-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:8px;justify-content:center;padding:10px 20px;text-decoration:none;transition:all .2s ease}.landing-btn--outline{background:#0000;border:1px solid var(--gray-300);color:var(--gray-700)}.landing-btn--outline:hover{background:var(--ph-blue-light);border-color:var(--ph-blue);color:var(--ph-blue)}.landing-btn--primary{background:var(--ph-blue);color:#fff}.landing-btn--primary:hover{background:var(--ph-blue-dark);box-shadow:var(--shadow-lg);transform:translateY(-1px)}.landing-btn--white{background:#fff;border:2px solid #fff;color:var(--ph-blue)}.landing-btn--white:hover{background:var(--ph-blue-light);border-color:var(--ph-blue-light)}.landing-btn--ghost{background:#ffffff26;border:1px solid #ffffff4d;color:#fff}.landing-btn--ghost:hover{background:#ffffff40}.landing-btn--gold{background:var(--ph-gold);color:#fff}.landing-btn--gold:hover{background:#d68910;transform:translateY(-1px)}.landing-btn--red{background:var(--ph-red);color:#fff}.landing-btn--red:hover{background:#a60f1e}.landing-btn--lg{font-size:16px;padding:14px 28px}.landing-btn--full{width:100%}.landing-hero{background:linear-gradient(135deg,var(--ph-blue) 0,var(--ph-blue-dark) 40%,#1a1a6e 70%,var(--ph-red) 100%);overflow:hidden;padding:80px 0 100px;position:relative}.landing-hero__decoration{background:#ffffff0d;border-radius:50%;pointer-events:none;position:absolute}.landing-hero__decoration--1{height:400px;right:-100px;top:-100px;width:400px}.landing-hero__decoration--2{bottom:-50px;height:300px;left:-50px;width:300px}.landing-hero__container{grid-gap:60px;align-items:center;display:grid;gap:60px;grid-template-columns:1fr 1fr;margin:0 auto;max-width:1280px;padding:0 24px;position:relative;z-index:1}.landing-hero__content{color:#fff}.landing-hero__badge{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border:1px solid #fff3;border-radius:50px;display:inline-flex;font-size:14px;font-weight:500;gap:8px;margin-bottom:24px;padding:8px 16px}.landing-hero__title{font-size:48px;font-weight:700;line-height:1.15;margin-bottom:20px}.landing-hero__subtitle{font-size:18px;line-height:1.7;margin-bottom:32px;max-width:520px;opacity:.9}.landing-hero__actions{display:flex;gap:16px;margin-bottom:40px}.landing-hero__trust{display:flex;flex-wrap:wrap;gap:24px}.landing-hero__trust-item{align-items:center;display:flex;font-size:13px;gap:8px;opacity:.85}.landing-hero__trust-icon{align-items:center;background:#fff3;border-radius:50%;display:flex;font-size:10px;height:20px;justify-content:center;width:20px}.landing-hero__preview{position:relative}.dashboard-preview{background:#fff;border-radius:16px;box-shadow:0 25px 50px #0000004d;overflow:hidden;transform:perspective(1000px) rotateY(-5deg) rotateX(2deg)}.dashboard-preview__header{align-items:center;background:var(--gray-100);border-bottom:1px solid var(--gray-200);display:flex;gap:8px;padding:12px 16px}.dashboard-preview__dot{border-radius:50%;height:12px;width:12px}.dashboard-preview__dot--red{background:#ff5f57}.dashboard-preview__dot--yellow{background:#febc2e}.dashboard-preview__dot--green{background:#28c840}.dashboard-preview__body{padding:20px}.pulse-mini{background:linear-gradient(135deg,var(--ph-blue) 0,var(--ph-blue-dark) 100%);border-radius:12px;margin-bottom:16px;padding:16px 20px}.pulse-mini__title{color:#ffffffb3;font-size:10px;letter-spacing:1px;margin-bottom:12px;text-transform:uppercase}.pulse-mini__stats{display:flex;gap:12px}.pulse-mini__stat{background:#ffffff1a;border-radius:8px;flex:1 1;padding:10px 14px;text-align:center}.pulse-mini__value{color:#fff;font-family:var(--font-family-mono);font-size:16px;font-weight:700}.pulse-mini__value--gold{color:var(--ph-yellow)}.pulse-mini__label{color:#fff9;font-size:9px;text-transform:uppercase}.mini-cards{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(3,1fr)}.mini-card{background:var(--gray-50);border:1px solid var(--gray-200);border-radius:8px;padding:14px}.mini-card__header{color:var(--gray-500);font-size:9px;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.mini-card__value{color:var(--ph-blue);font-family:var(--font-family-mono);font-size:20px;font-weight:700}.mini-card__value--success{color:var(--success)}.mini-card__value--gold{color:var(--ph-gold)}.mini-card__label{color:var(--gray-500);font-size:11px}.floating-badge{align-items:center;background:#fff;border-radius:8px;box-shadow:var(--shadow-xl);display:flex;font-size:12px;font-weight:500;gap:8px;padding:10px 14px;position:absolute}.floating-badge--1{animation:float 3s ease-in-out infinite;right:-20px;top:20px}.floating-badge--2{animation:float 3s ease-in-out .5s infinite;bottom:60px;left:-30px}.floating-badge__icon{align-items:center;border-radius:6px;display:flex;font-size:14px;height:28px;justify-content:center;width:28px}.floating-badge__icon--blue{background:var(--ph-blue-light)}.floating-badge__icon--gold{background:var(--ph-gold-light)}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.landing-trust-bar{background:#fff;border-bottom:1px solid var(--gray-200);padding:48px 0}.landing-trust-bar__container{margin:0 auto;max-width:1280px;padding:0 24px}.landing-trust-bar__title{color:var(--gray-500);font-size:14px;font-weight:500;letter-spacing:1px;margin-bottom:32px;text-align:center;text-transform:uppercase}.landing-stats-grid{grid-gap:40px;display:grid;gap:40px;grid-template-columns:repeat(4,1fr)}.landing-stat{text-align:center}.landing-stat__number{color:var(--ph-blue);font-family:var(--font-family-mono);font-size:42px;font-weight:700;line-height:1;margin-bottom:8px}.landing-stat__label{color:var(--gray-500);font-size:14px;font-weight:500}.landing-section{padding:96px 0}.landing-section--gray{background:var(--gray-50)}.landing-section--gradient{background:linear-gradient(180deg,var(--ph-blue-light) 0,#fff 100%)}.landing-section--pricing{background:linear-gradient(180deg,var(--gray-50) 0,#fff 100%)}.landing-section-header{margin-bottom:64px;text-align:center}.landing-section-header__title{color:var(--gray-900);font-size:36px;font-weight:700;margin-bottom:16px}.landing-section-header__divider{background:linear-gradient(90deg,var(--ph-blue) 0,var(--ph-yellow) 50%,var(--ph-red) 100%);border-radius:2px;height:4px;margin:0 auto 16px;width:80px}.landing-section-header__subtitle{color:var(--gray-600);font-size:18px;margin:0 auto;max-width:600px}.landing-features-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(3,1fr);margin:0 auto;max-width:1200px;padding:0 24px}.landing-feature-card{background:#fff;border:1px solid var(--gray-200);border-left:4px solid var(--ph-blue);border-radius:12px;padding:32px;transition:all .3s ease}.landing-feature-card:hover{box-shadow:var(--shadow-xl);transform:translateY(-4px)}.landing-feature-card:nth-child(2){border-left-color:var(--ph-red)}.landing-feature-card:nth-child(3){border-left-color:var(--ph-gold)}.landing-feature-card:nth-child(4){border-left-color:var(--ph-blue)}.landing-feature-card:nth-child(5){border-left-color:var(--ph-red)}.landing-feature-card:nth-child(6){border-left-color:var(--ph-gold)}.landing-feature-card__icon{align-items:center;background:var(--ph-blue-light);border-radius:12px;display:flex;font-size:24px;height:56px;justify-content:center;margin-bottom:20px;width:56px}.landing-feature-card:nth-child(2) .landing-feature-card__icon{background:var(--ph-red-light)}.landing-feature-card:nth-child(3) .landing-feature-card__icon{background:var(--ph-gold-light)}.landing-feature-card:nth-child(4) .landing-feature-card__icon{background:var(--ph-blue-light)}.landing-feature-card:nth-child(5) .landing-feature-card__icon{background:var(--ph-red-light)}.landing-feature-card:nth-child(6) .landing-feature-card__icon{background:var(--ph-gold-light)}.landing-feature-card__title{color:var(--gray-900);font-size:18px;font-weight:600;margin-bottom:12px}.landing-feature-card__description{color:var(--gray-600);font-size:14px;line-height:1.6}.landing-compliance__container{grid-gap:80px;align-items:center;display:grid;gap:80px;grid-template-columns:1fr 1fr;margin:0 auto;max-width:1200px;padding:0 24px}.landing-compliance__badge{align-items:center;background:var(--success-light);border-radius:50px;color:var(--success);display:inline-flex;font-size:13px;font-weight:600;gap:8px;margin-bottom:20px;padding:6px 14px}.landing-compliance__title{color:var(--gray-900);font-size:36px;font-weight:700;margin-bottom:16px}.landing-compliance__description{color:var(--gray-600);font-size:16px;line-height:1.7;margin-bottom:32px}.landing-compliance__list{list-style:none;margin:0;padding:0}.landing-compliance__item{align-items:flex-start;border-bottom:1px solid var(--gray-200);display:flex;gap:12px;padding:12px 0}.landing-compliance__item:last-child{border-bottom:none}.landing-compliance__check{align-items:center;background:var(--success-light);border-radius:50%;color:var(--success);display:flex;flex-shrink:0;font-size:12px;height:24px;justify-content:center;margin-top:2px;width:24px}.landing-compliance__item-text{color:var(--gray-700);font-size:15px}.landing-compliance__cta{margin-top:32px}.landing-agency-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(2,1fr)}.landing-agency-card{background:#fff;border:1px solid var(--gray-200);border-radius:12px;box-shadow:var(--shadow-md);padding:24px;text-align:center;transition:all .3s ease}.landing-agency-card:hover{box-shadow:var(--shadow-xl);transform:translateY(-4px)}.landing-agency-card__logo{align-items:center;background:var(--gray-100);border-radius:12px;color:var(--gray-600);display:flex;font-size:12px;font-weight:700;height:60px;justify-content:center;margin:0 auto 12px;width:60px}.landing-agency-card__name{color:var(--gray-900);font-size:14px;font-weight:600;margin-bottom:4px}.landing-agency-card__status{color:var(--success);font-size:11px;font-weight:500}.landing-dpa-badge{background:#fff;border:2px solid var(--ph-blue);border-radius:12px;box-shadow:var(--shadow-md);margin-top:20px;padding:20px;text-align:center}.landing-dpa-badge__icon{font-size:32px;margin-bottom:8px}.landing-dpa-badge__title{color:var(--ph-blue);font-size:14px;font-weight:600}.landing-dpa-badge__subtitle{color:var(--gray-500);font-size:12px}.landing-steps{align-items:flex-start;display:flex;justify-content:space-between;margin:0 auto;max-width:1000px;padding:0 24px;position:relative}.landing-steps:before{background:var(--gray-200);content:"";height:4px;left:80px;position:absolute;right:80px;top:40px;z-index:0}.landing-step{flex:1 1;max-width:200px;position:relative;text-align:center;z-index:1}.landing-step__number{align-items:center;border-radius:50%;display:flex;font-size:28px;height:80px;justify-content:center;margin:0 auto 20px;position:relative;width:80px}.landing-step:first-child .landing-step__number{background:var(--ph-blue);color:#fff}.landing-step:nth-child(2) .landing-step__number{background:var(--ph-yellow);color:var(--gray-800)}.landing-step:nth-child(3) .landing-step__number{background:var(--ph-red);color:#fff}.landing-step:nth-child(4) .landing-step__number{background:var(--ph-gold);color:#fff}.landing-step__title{color:var(--gray-900);font-size:18px;font-weight:600;margin-bottom:8px}.landing-step__description{color:var(--gray-500);font-size:14px;line-height:1.5}.landing-pricing__toggle{align-items:center;display:flex;gap:16px;justify-content:center;margin-bottom:48px}.landing-pricing__toggle-label{color:var(--gray-600);font-size:15px;font-weight:500}.landing-pricing__toggle-label--active{color:var(--ph-blue)}.landing-toggle-switch{background:var(--gray-300);border:none;border-radius:14px;cursor:pointer;height:28px;position:relative;transition:background .3s ease;width:56px}.landing-toggle-switch:after{background:#fff;border-radius:50%;box-shadow:var(--shadow-sm);content:"";height:24px;left:2px;position:absolute;top:2px;transition:transform .3s ease;width:24px}.landing-toggle-switch.active{background:var(--ph-blue)}.landing-toggle-switch.active:after{transform:translateX(28px)}.landing-pricing__save-badge{background:var(--success-light);border-radius:50px;color:var(--success);font-size:12px;font-weight:600;padding:4px 10px}.landing-pricing-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(3,1fr);margin:0 auto 64px;max-width:1100px;padding:0 24px}.landing-pricing-card{background:#fff;border:2px solid var(--gray-200);border-radius:16px;padding:32px;position:relative;transition:all .3s ease}.landing-pricing-card:hover{border-color:var(--ph-blue);box-shadow:var(--shadow-xl)}.landing-pricing-card--popular{border-color:var(--ph-gold);box-shadow:var(--shadow-xl);transform:scale(1.05)}.landing-pricing-card__badge{background:var(--ph-gold);border-radius:50px;color:#fff;font-size:12px;font-weight:600;left:50%;padding:6px 16px;position:absolute;top:-12px;transform:translateX(-50%)}.landing-pricing-card__name{color:var(--gray-900);font-size:20px;font-weight:600}.landing-pricing-card__name,.landing-pricing-card__price{margin-bottom:8px;text-align:center}.landing-pricing-card__amount{color:var(--ph-blue);font-family:var(--font-family-mono);font-size:48px;font-weight:700}.landing-pricing-card--popular .landing-pricing-card__amount{color:var(--ph-gold)}.landing-pricing-card:last-child .landing-pricing-card__amount{color:var(--ph-red)}.landing-pricing-card__period{color:var(--gray-500);font-size:14px;margin-bottom:24px;text-align:center}.landing-pricing-card__features{list-style:none;margin:0 0 24px;padding:0}.landing-pricing-card__feature{align-items:center;border-bottom:1px solid var(--gray-100);color:var(--gray-600);display:flex;font-size:14px;gap:10px;padding:10px 0}.landing-pricing-card__feature:last-child{border-bottom:none}.landing-pricing-card__feature-check{color:var(--success);font-size:16px}.landing-pricing-card__feature--disabled{color:var(--gray-400)}.landing-pricing-card__feature--disabled .landing-pricing-card__feature-check{color:var(--gray-300)}.landing-comparison{margin:0 auto;max-width:900px;padding:0 24px}.landing-comparison__title{color:var(--gray-900);font-size:24px;font-weight:600;margin-bottom:32px;text-align:center}.landing-comparison-table{background:#fff;border-collapse:collapse;border-radius:12px;box-shadow:var(--shadow-md);overflow:hidden;width:100%}.landing-comparison-table td,.landing-comparison-table th{border-bottom:1px solid var(--gray-100);padding:16px 20px;text-align:center}.landing-comparison-table th{background:var(--gray-50);color:var(--gray-700);font-size:14px;font-weight:600}.landing-comparison-table th:first-child{text-align:left}.landing-comparison-table td:first-child{color:var(--gray-700);font-size:14px;text-align:left}.landing-comparison-table tr:last-child td{border-bottom:none}.landing-check-icon{color:var(--success);font-size:18px}.landing-dash-icon{color:var(--gray-300)}.landing-status-section{background:#fff;border-top:1px solid var(--gray-200);padding:64px 0}.landing-status-section .landing-section-header{margin-bottom:40px}.landing-status-badges{display:flex;flex-wrap:wrap;gap:16px;justify-content:center;margin:0 auto;max-width:900px;padding:0 24px}.landing-status-badge{align-items:center;border-radius:50px;display:inline-flex;font-size:14px;font-weight:500;gap:8px;padding:12px 20px}.landing-status-badge--processed{background:var(--success-light);color:var(--success)}.landing-status-badge--pending{background:var(--warning-light);color:var(--warning)}.landing-status-badge--completed{background:var(--ph-gold-light);color:var(--ph-gold)}.landing-status-badge--active{background:var(--ph-blue-light);color:var(--ph-blue)}.landing-faq-list{margin:0 auto;max-width:800px;padding:0 24px}.landing-faq-item{background:#fff;border:1px solid var(--gray-200);border-radius:12px;margin-bottom:12px;overflow:hidden}.landing-faq-item__question{align-items:center;background:none;border:none;color:var(--gray-900);cursor:pointer;display:flex;font-family:inherit;font-size:16px;font-weight:600;justify-content:space-between;padding:20px 24px;text-align:left;transition:background .2s ease;width:100%}.landing-faq-item__question:hover{background:var(--gray-50)}.landing-faq-item__icon{align-items:center;background:var(--ph-blue-light);border-radius:50%;color:var(--ph-blue);display:flex;flex-shrink:0;font-size:14px;height:24px;justify-content:center;transition:transform .3s ease;width:24px}.landing-faq-item.active .landing-faq-item__icon{transform:rotate(180deg)}.landing-faq-item__answer{max-height:0;overflow:hidden;transition:max-height .3s ease}.landing-faq-item.active .landing-faq-item__answer{max-height:500px}.landing-faq-item__answer-content{color:var(--gray-600);font-size:15px;line-height:1.7;padding:0 24px 20px}.landing-final-cta{background:linear-gradient(135deg,var(--ph-blue) 0,var(--ph-blue-dark) 40%,var(--ph-red) 100%);overflow:hidden;padding:80px 0;position:relative}.landing-final-cta__decoration{background:#ffffff0d;border-radius:50%;pointer-events:none;position:absolute}.landing-final-cta__decoration--1{height:300px;left:-100px;top:-100px;width:300px}.landing-final-cta__decoration--2{bottom:-150px;height:400px;right:-150px;width:400px}.landing-final-cta__container{margin:0 auto;max-width:800px;padding:0 24px;position:relative;text-align:center;z-index:1}.landing-final-cta__title{color:#fff;font-size:40px;font-weight:700;margin-bottom:16px}.landing-final-cta__subtitle{color:#ffffffe6;font-size:18px;margin-bottom:32px}.landing-final-cta__actions{display:flex;gap:16px;justify-content:center}.landing-footer{background:var(--gray-900);padding-top:0}.landing-footer__flag-stripe{background:linear-gradient(90deg,var(--ph-blue) 0,var(--ph-blue) 33%,var(--ph-yellow) 33%,var(--ph-yellow) 66%,var(--ph-red) 66%,var(--ph-red) 100%);height:4px}.landing-footer__container{margin:0 auto;max-width:1200px;padding:64px 24px 32px}.landing-footer__grid{grid-gap:48px;display:grid;gap:48px;grid-template-columns:2fr 1fr 1fr 1fr;margin-bottom:48px}.landing-footer__brand-section{max-width:280px}.landing-footer__brand{align-items:center;display:flex;gap:12px;margin-bottom:16px}.landing-footer__logo{align-items:center;background:linear-gradient(135deg,var(--ph-blue) 0,var(--ph-gold) 100%);border-radius:8px;color:#fff;display:flex;font-size:16px;font-weight:700;height:36px;justify-content:center;width:36px}.landing-footer__brand-name{color:#fff;font-size:18px;font-weight:700}.landing-footer__brand-tagline{color:var(--gray-400);font-size:14px;margin-bottom:20px}.landing-footer__social{display:flex;gap:12px}.landing-footer__social-link{align-items:center;background:var(--gray-800);border-radius:8px;color:var(--gray-400);display:flex;font-size:14px;font-weight:600;height:36px;justify-content:center;text-decoration:none;transition:all .2s ease;width:36px}.landing-footer__social-link:hover{background:var(--ph-blue);color:#fff}.landing-footer__column-title{color:#fff;font-size:14px;font-weight:600;letter-spacing:1px;margin-bottom:20px;text-transform:uppercase}.landing-footer__links{list-style:none;margin:0;padding:0}.landing-footer__link{color:var(--gray-400);display:block;font-size:14px;padding:8px 0;text-decoration:none;transition:color .2s ease}.landing-footer__link:hover{color:#fff}.landing-footer__bottom{align-items:center;border-top:1px solid var(--gray-800);display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;padding-top:32px}.landing-footer__copyright{color:var(--gray-500);font-size:14px}.landing-footer__made-in{align-items:center;color:var(--gray-400);display:flex;font-size:14px;gap:8px}@media (max-width:1024px){.landing-hero__container{gap:40px;grid-template-columns:1fr}.landing-hero__content{text-align:center}.landing-hero__title{font-size:40px}.landing-hero__subtitle{margin:0 auto 32px}.landing-hero__actions,.landing-hero__trust{justify-content:center}.landing-hero__preview{margin:0 auto;max-width:500px}.dashboard-preview{transform:none}.floating-badge{display:none}.landing-features-grid{grid-template-columns:repeat(2,1fr)}.landing-compliance__container{gap:48px;grid-template-columns:1fr}.landing-steps{align-items:center;flex-direction:column;gap:40px}.landing-steps:before{display:none}.landing-step{max-width:300px}.landing-pricing-grid{grid-template-columns:1fr;max-width:400px}.landing-pricing-card--popular{order:-1;transform:none}.landing-footer__grid{grid-template-columns:1fr 1fr}}@media (max-width:768px){.landing-nav__links{display:none}.landing-nav__mobile-toggle{display:flex}.landing-hero{padding:60px 0 80px}.landing-hero__title{font-size:32px}.landing-hero__subtitle{font-size:16px}.landing-hero__actions{align-items:center;flex-direction:column}.pulse-mini__stats{display:grid;grid-template-columns:repeat(2,1fr)}.mini-cards{grid-template-columns:1fr}.landing-stats-grid{gap:24px;grid-template-columns:repeat(2,1fr)}.landing-stat__number{font-size:32px}.landing-features-grid{grid-template-columns:1fr}.landing-section-header__title{font-size:28px}.landing-section{padding:64px 0}.landing-agency-grid{grid-template-columns:1fr}.landing-comparison-table{font-size:12px}.landing-comparison-table td,.landing-comparison-table th{padding:12px 8px}.landing-status-badges{align-items:center;flex-direction:column}.landing-final-cta__title{font-size:28px}.landing-final-cta__actions{align-items:center;flex-direction:column}.landing-footer__grid{gap:32px;grid-template-columns:1fr}.landing-footer__bottom{flex-direction:column;text-align:center}}.dashboard{margin:0 auto;max-width:1400px}.pulse-banner{background:linear-gradient(135deg,var(--ph-blue) 0,var(--ph-blue-dark) 40%,#b8860b 85%,var(--ph-gold) 100%);border-radius:16px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f,0 4px 20px #0038a826;margin-bottom:24px;overflow:hidden;padding:28px 32px;position:relative}.pulse-banner__decoration{background:#ffffff14;border-radius:50%;height:250px;pointer-events:none;position:absolute;right:-5%;top:-30%;width:250px}.pulse-banner__title{color:#ffffffd9;font-size:14px;font-weight:500;letter-spacing:1px;margin-bottom:16px;position:relative;text-transform:uppercase}.pulse-stats{display:flex;gap:16px;position:relative}.pulse-stat{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #ffffff26;border-radius:12px;min-width:140px;padding:16px 24px;text-align:center}.pulse-stat__value{color:#fff;font-size:28px;font-weight:700;line-height:1.2}.pulse-stat__value--gold{color:var(--ph-yellow)}.pulse-stat__label{color:#ffffffbf;font-size:12px;font-weight:500;letter-spacing:.5px;margin-top:4px;text-transform:uppercase}.dashboard-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(3,1fr);margin-bottom:24px}.dashboard-card{background:#fff;border:1px solid var(--gray-100);border-radius:12px;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f;padding:24px}.dashboard-card--full{grid-column:1/-1}.dashboard-card__header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.dashboard-card__title{color:var(--gray-500);font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.dashboard-card__subtitle{color:var(--gray-400);font-size:12px}.dashboard-card__link{color:var(--ph-blue);font-size:13px;font-weight:500;text-decoration:none}.dashboard-card__link:hover{text-decoration:underline}.dashboard-card__footer{margin-top:16px;text-align:right}.dashboard-card__loading{color:var(--gray-500);font-size:14px;padding:20px 0;text-align:center}.time-records__date{color:var(--gray-600);font-size:14px;margin-bottom:16px}.time-records__list{display:flex;flex-direction:column;gap:12px}.time-record-item{align-items:center;background:var(--gray-50);border-radius:8px;display:flex;gap:10px;padding:10px 12px}.time-record-item__icon{align-items:center;border-radius:50%;display:flex;font-size:12px;height:24px;justify-content:center;width:24px}.time-record-item__icon--success{background:var(--success-light);color:var(--success)}.time-record-item__icon--warning{background:var(--warning-light);color:var(--warning)}.time-record-item__icon--info{background:var(--ph-blue-light);color:var(--ph-blue)}.time-record-item__text{color:var(--gray-700);font-size:14px}.time-record-item__count{font-weight:600;margin-left:auto}.workforce__hero{margin-bottom:20px;text-align:center}.workforce__count{color:var(--ph-blue);font-size:48px;font-weight:700;line-height:1}.workforce__label{color:var(--gray-500);font-size:14px;margin-top:4px}.workforce__chart{display:flex;justify-content:center;margin-bottom:16px}.donut-chart{border-radius:50%;height:120px;position:relative;width:120px}.donut-chart:before{background:#fff;border-radius:50%;content:"";height:70px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:70px}.workforce__legend{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr 1fr}.legend-item{color:var(--gray-600)}.legend-dot{border-radius:50%;flex-shrink:0;height:10px;width:10px}.last-payroll__period{border-bottom:1px solid var(--gray-100);color:var(--gray-900);font-size:16px;font-weight:600;margin-bottom:16px;padding-bottom:12px}.last-payroll__stats{display:flex;flex-direction:column;gap:10px}.last-payroll__stat{align-items:center;display:flex;justify-content:space-between;padding:6px 0}.last-payroll__stat--highlight{background:var(--gray-50);border-radius:8px;margin:8px -12px 0;padding:12px}.last-payroll__stat-label{color:var(--gray-500);font-size:13px}.last-payroll__stat-value{color:var(--gray-900);font-family:JetBrains Mono,monospace;font-size:14px;font-weight:600}.last-payroll__stat-value--gross{color:var(--ph-blue)}.last-payroll__stat-value--deductions{color:var(--ph-red)}.last-payroll__stat-value--adjustments-positive{color:var(--success)}.last-payroll__stat-value--adjustments-negative{color:var(--ph-red)}.last-payroll__stat-value--net{color:var(--success);font-size:16px}.last-payroll__stat--highlight .last-payroll__stat-label{color:var(--gray-700);font-weight:600}.empty-state{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:200px;padding:40px 24px}.empty-state__icon{font-size:48px;margin-bottom:16px;opacity:.5}.empty-state__title{color:var(--gray-700);font-size:15px;font-weight:600;margin-bottom:8px}.empty-state__text{color:var(--gray-500);font-size:13px;line-height:1.6;margin-bottom:16px;max-width:280px}.payroll-table th{background:var(--gray-50);border-bottom:1px solid var(--gray-200);color:var(--gray-500);padding:12px 16px}.payroll-table td{border-bottom:1px solid var(--gray-100);color:var(--gray-700)}.payroll-table tr:last-child td{border-bottom:none}.payroll-table__period{color:var(--gray-900);font-weight:600}.payroll-table__amount{font-family:JetBrains Mono,monospace;font-weight:600}.payroll-table__amount--gross{color:var(--ph-blue)}.payroll-table__amount--deductions{color:var(--ph-red)}.payroll-table__amount--adjustments-positive{color:var(--success)}.payroll-table__amount--adjustments-negative{color:var(--ph-red)}.payroll-table__amount--net{color:var(--success)}.payroll-table__date{color:var(--gray-500);font-size:13px}.breakdown-list{gap:16px}.breakdown-item{grid-gap:16px;gap:16px;grid-template-columns:120px 100px 1fr 60px}.breakdown-item__dept{color:var(--gray-700);font-size:14px;font-weight:500}.breakdown-item__dept span{color:var(--gray-400);font-weight:400}.breakdown-item__amount{color:var(--gray-900);font-family:JetBrains Mono,monospace;font-size:14px;font-weight:600}.breakdown-bar{background:var(--gray-100);border-radius:6px;height:12px;overflow:hidden}.breakdown-bar__fill{border-radius:6px;height:100%}.breakdown-item__percent{color:var(--gray-500);font-size:13px;font-weight:600;text-align:right}@media (max-width:1024px){.dashboard-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid .dashboard-card:last-child{grid-column:span 2}.pulse-stats{flex-wrap:wrap}.pulse-stat{flex:1 1;min-width:100px}.breakdown-item{gap:12px;grid-template-columns:100px 90px 1fr 50px}}@media (max-width:768px){.dashboard{padding:0}.pulse-banner{border-radius:12px;padding:20px}.pulse-stats{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,1fr)}.pulse-stat{min-width:0;min-width:auto;padding:12px 16px}.pulse-stat__value{font-size:22px}.dashboard-grid{grid-template-columns:1fr}.dashboard-grid .dashboard-card:last-child{grid-column:span 1}.dashboard-card{padding:20px}.breakdown-item{gap:8px;grid-template-columns:1fr}.breakdown-item__amount,.breakdown-item__dept{display:inline}.payroll-table{font-size:12px}.payroll-table td,.payroll-table th{padding:10px 8px}.payroll-table td:nth-child(4),.payroll-table th:nth-child(4){display:none}}@media (max-width:480px){.pulse-banner{padding:16px}.pulse-stat__value{font-size:18px}.pulse-stat__label{font-size:10px}.workforce__count{font-size:36px}.donut-chart{height:100px;width:100px}.donut-chart:before{height:60px;width:60px}.workforce__legend{grid-template-columns:1fr}.payroll-table td:nth-child(2),.payroll-table td:nth-child(6),.payroll-table th:nth-child(2),.payroll-table th:nth-child(6){display:none}}.modal-overlay{animation:modalFadeIn .2s ease-out;background-color:#0009;padding:20px}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.modal-container{animation:modalSlideIn .3s ease-out;background:var(--color-white,#fff);max-width:600px;width:100%}.modal-container--large{max-width:900px}.modal-container--small{max-width:400px}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.modal-header{border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--color-gray-200,#e5e7eb);flex-shrink:0;padding:24px}.modal-title{color:#111827;color:var(--color-gray-900,#111827);font-size:1.5rem;font-weight:600}.modal-close{background:#0000;border-radius:50%;color:#6b7280;color:var(--color-gray-500,#6b7280);font-size:1.5rem;height:32px;transition:all .2s ease;width:32px}.modal-close:hover{background-color:#f3f4f6;background-color:var(--color-gray-100,#f3f4f6);color:#111827;color:var(--color-gray-900,#111827)}.modal-close:disabled{cursor:not-allowed;opacity:.5}.modal-body{padding:24px}.modal-footer{align-items:center;border-top:1px solid var(--color-gray-200,#e5e7eb);flex-shrink:0;padding:24px}@media (max-width:768px){.modal-overlay{padding:0}.modal-container{border-radius:0;max-height:100vh;max-width:100%}.modal-body,.modal-footer,.modal-header{padding:16px}}.scheduled-changes-loading{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.scheduled-changes-loading .spinner{animation:spin 1s linear infinite;border:3px solid #e5e7eb;border-top-color:#0038a8;border:3px solid var(--color-gray-200,#e5e7eb);border-radius:50%;border-top-color:var(--color-ph-blue,#0038a8);height:40px;margin-bottom:16px;width:40px}.scheduled-changes-empty{color:#374151;color:var(--color-gray-700,#374151);padding:60px 20px;text-align:center}.scheduled-changes-empty p{font-size:1rem;margin:0 0 8px}.scheduled-changes-empty__hint{color:#6b7280;color:var(--color-gray-500,#6b7280);font-size:.875rem}.scheduled-changes-list{display:flex;flex-direction:column;gap:16px}.scheduled-change-card{background:#fff;background:var(--color-white,#fff);border:1px solid #e5e7eb;border:1px solid var(--color-gray-200,#e5e7eb);border-radius:8px;padding:20px;transition:all .2s ease}.scheduled-change-card:hover{box-shadow:0 2px 8px #0000001a}.scheduled-change-card--editing{border-color:#0038a8;border-color:var(--color-ph-blue,#0038a8);box-shadow:0 0 0 3px #0038a81a}.scheduled-change-header{align-items:center;border-bottom:1px solid #f3f4f6;border-bottom:1px solid var(--color-gray-100,#f3f4f6);display:flex;justify-content:space-between;margin-bottom:16px;padding-bottom:12px}.scheduled-change-date{align-items:center;display:flex;gap:8px}.scheduled-change-label{color:#6b7280;color:var(--color-gray-500,#6b7280);font-size:.875rem;font-weight:500}.scheduled-change-value{color:#111827;color:var(--color-gray-900,#111827);font-size:.875rem;font-weight:600}.scheduled-change-status .status-badge{border-radius:12px;font-size:.75rem;font-weight:600;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.status-badge--pending{background-color:#fff9e6;background-color:var(--color-ph-yellow-light,#fff9e6);color:#f39c12;color:var(--color-ph-gold,#f39c12)}.status-badge--applied{background-color:#d1fae5;background-color:var(--color-success-light,#d1fae5);color:#10b981;color:var(--color-success,#10b981)}.status-badge--cancelled{background-color:#f3f4f6;background-color:var(--color-gray-100,#f3f4f6);color:#6b7280;color:var(--color-gray-500,#6b7280)}.scheduled-change-details{margin-bottom:16px}.scheduled-change-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr;margin-bottom:12px}.scheduled-change-item{align-items:center;display:flex;gap:8px}.scheduled-change-reason{gap:8px;margin-top:12px}.scheduled-change-actions,.scheduled-change-reason{border-top:1px solid #f3f4f6;border-top:1px solid var(--color-gray-100,#f3f4f6);display:flex;padding-top:12px}.scheduled-change-actions{gap:12px;justify-content:flex-end}.scheduled-change-edit{display:flex;flex-direction:column;gap:16px}.scheduled-change-edit__row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.scheduled-change-edit__actions{border-top:1px solid #f3f4f6;border-top:1px solid var(--color-gray-100,#f3f4f6);display:flex;gap:12px;justify-content:flex-end;margin-top:16px;padding-top:16px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{color:var(--color-gray-700,#374151);font-size:.875rem}.form-group input,.form-group select{border:1px solid #e5e7eb;border:1px solid var(--color-gray-200,#e5e7eb);border-radius:6px;font-size:.875rem;padding:8px 12px;transition:all .2s ease}.form-group input:focus,.form-group select:focus{border-color:#0038a8;border-color:var(--color-ph-blue,#0038a8);box-shadow:0 0 0 3px #0038a81a;outline:none}.form-group input.error,.form-group select.error{border-color:#ef4444;border-color:var(--color-error,#ef4444)}.form-group .error-message{color:#ef4444;color:var(--color-error,#ef4444);font-size:.75rem}.input-group{align-items:stretch;border:1px solid #e5e7eb;border:1px solid var(--color-gray-200,#e5e7eb);border-radius:6px;display:flex;overflow:hidden;transition:all .2s ease}.input-group:focus-within{border-color:#0038a8;border-color:var(--color-ph-blue,#0038a8);box-shadow:0 0 0 3px #0038a81a}.input-group__addon{align-items:center;background-color:#f9fafb;background-color:var(--color-gray-50,#f9fafb);border-right:1px solid #e5e7eb;border-right:1px solid var(--color-gray-200,#e5e7eb);color:#6b7280;color:var(--color-gray-500,#6b7280);display:flex;font-size:.875rem;padding:8px 12px}.input-group input{border:none;flex:1 1;font-size:.875rem;padding:8px 12px}.input-group input:focus{box-shadow:none;outline:none}.btn{align-items:center;border:none;border-radius:6px;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;gap:8px;justify-content:center;padding:8px 16px;transition:all .2s ease}.btn--primary{background-color:#0038a8;background-color:var(--color-ph-blue,#0038a8);color:#fff;color:var(--color-white,#fff)}.btn--primary:hover{background-color:#002c7f;background-color:var(--color-ph-blue-dark,#002c7f)}.btn--secondary{background-color:#f3f4f6;background-color:var(--color-gray-100,#f3f4f6);color:#374151;color:var(--color-gray-700,#374151)}.btn--secondary:hover{background-color:#e5e7eb;background-color:var(--color-gray-200,#e5e7eb)}.btn--danger{background-color:#ce1126;background-color:var(--color-ph-red,#ce1126);color:#fff;color:var(--color-white,#fff)}.btn--danger:hover{background-color:#a50e1f}.btn--small{font-size:.8125rem;padding:6px 12px}.btn:disabled{cursor:not-allowed;opacity:.5}@media (max-width:768px){.scheduled-change-edit__row,.scheduled-change-row{grid-template-columns:1fr}.scheduled-change-actions,.scheduled-change-edit__actions{flex-direction:column}.btn{width:100%}}.time-tracking-container{background:var(--gray-50);min-height:100vh;padding:var(--space-8)}.time-tracking-page-header{margin-bottom:var(--space-6)}.time-tracking-page-title{color:var(--gray-900);font-size:var(--text-3xl);font-weight:var(--font-bold);margin-bottom:var(--space-2)}.time-tracking-page-subtitle{color:var(--gray-600);font-size:var(--text-lg)}.time-tracking-nav-bar{align-items:center;background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:flex;justify-content:space-between;margin-bottom:var(--space-4);padding:var(--space-4)}.date-navigation{align-items:center;display:flex;gap:var(--space-2)}.date-nav-btn{background:#fff;border:1px solid var(--gray-300);border-radius:var(--radius-md);color:var(--gray-700);cursor:pointer;font-size:var(--text-base);font-weight:var(--font-medium);min-width:40px;padding:var(--space-2) var(--space-3);transition:all .2s ease}.date-nav-btn:hover:not(:disabled){background:var(--gray-50);border-color:var(--gray-400)}.date-nav-btn:active:not(:disabled){background:var(--gray-100)}.date-nav-btn.disabled{background:var(--gray-50);color:var(--gray-400);cursor:not-allowed;opacity:.5}.today-btn{background:var(--ph-blue)!important;border:1px solid var(--ph-blue)!important;color:#fff!important;padding:var(--space-2) var(--space-4)}.today-btn:hover{border-color:var(--ph-blue-dark)!important}.today-btn:active,.today-btn:hover{background:var(--ph-blue-dark)!important;color:#fff!important}.today-btn:active{transform:translateY(1px)}.date-label{color:var(--gray-700);font-size:var(--text-lg);font-weight:var(--font-medium);margin-left:var(--space-3)}.add-time-record-btn{min-width:-webkit-fit-content;min-width:fit-content;padding:var(--space-2) var(--space-4);width:auto}.time-records-cards{display:none}.employee-card{background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin-bottom:var(--space-3);padding:var(--space-4)}.card-header{margin-bottom:var(--space-2)}.employee-name{color:var(--gray-900);font-size:var(--text-base);font-weight:var(--font-semibold)}.card-details{align-items:center;display:flex;font-size:var(--text-sm);margin-bottom:var(--space-3)}.card-details,.detail-item{color:var(--gray-600)}.detail-separator{color:var(--gray-400);margin:0 var(--space-2)}.card-times{border-top:1px solid var(--gray-200);font-size:var(--text-sm);padding-top:var(--space-3)}.card-times,.time-item{align-items:center;display:flex}.time-item{flex:1 1}.time-label{color:var(--gray-600);margin-right:var(--space-1)}.time-value{color:var(--gray-900);font-weight:var(--font-medium)}.time-separator{color:var(--gray-400);margin:0 var(--space-3)}.time-loading{align-items:center;display:flex;justify-content:center;min-height:400px}.time-loading-spinner{animation:spin 1s linear infinite;border-top:3px solid var(--gray-300);border:3px solid var(--gray-300);border-radius:50%;border-top-color:var(--ph-blue);height:40px;width:40px}.time-empty-state{background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--space-12) var(--space-4);text-align:center}.time-empty-icon{font-size:3rem;margin-bottom:var(--space-4)}.time-empty-title{color:var(--gray-900);font-size:var(--text-xl);font-weight:var(--font-semibold);margin-bottom:var(--space-2)}.time-empty-text{color:var(--gray-600);font-size:var(--text-base);margin-bottom:var(--space-6)}@media (max-width:1023px){.time-tracking-container{padding:var(--space-6)}}@media (max-width:767px){.time-tracking-container{padding:var(--space-4)}.time-tracking-page-title{font-size:var(--text-2xl)}.time-tracking-page-subtitle{font-size:var(--text-base)}.time-tracking-nav-bar{flex-direction:column;gap:var(--space-3)}.date-navigation{justify-content:center;width:100%}.date-label{flex:1 1;text-align:center}.add-time-record-btn{width:100%}}.employee-time-records-container{background:var(--gray-50);min-height:100vh;padding:var(--space-8)}.etr-page-header{margin-bottom:var(--space-6)}.etr-page-title{color:var(--gray-900);font-size:var(--text-3xl);font-weight:var(--font-bold);margin-bottom:var(--space-2)}.etr-page-subtitle{color:var(--gray-600);font-size:var(--text-lg)}.etr-employee-card{align-items:center;background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:flex;justify-content:space-between;margin-bottom:var(--space-6);padding:var(--space-6)}.etr-employee-details{align-items:center;display:flex;gap:var(--space-4)}.etr-employee-avatar{align-items:center;background:linear-gradient(135deg,var(--ph-blue) 0,var(--ph-red) 100%);border-radius:50%;color:#fff;display:flex;font-size:var(--text-2xl);font-weight:var(--font-semibold);height:64px;justify-content:center;width:64px}.etr-employee-info{display:flex;flex-direction:column;gap:var(--space-1)}.etr-employee-name{color:var(--gray-900);font-size:var(--text-2xl);font-weight:var(--font-semibold)}.etr-employee-meta{align-items:center;display:flex;gap:var(--space-3)}.etr-employee-id{background:var(--gray-100);border-radius:var(--radius-sm);color:var(--gray-700);font-family:JetBrains Mono,monospace;font-size:var(--text-sm);padding:var(--space-1) var(--space-2)}.etr-department-badge{background:var(--ph-blue-light);border-radius:20px;color:var(--ph-blue);font-size:var(--text-sm);font-weight:var(--font-medium);padding:var(--space-1) var(--space-3)}.etr-nav-bar{background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);justify-content:space-between;margin-bottom:var(--space-6);padding:var(--space-4) var(--space-6)}.etr-nav-bar,.etr-nav-left{align-items:center;display:flex}.etr-nav-left{gap:var(--space-4)}.etr-nav-right{display:flex;gap:var(--space-3)}.btn-back{align-items:center;background:#fff;border:1px solid var(--gray-300);border-radius:var(--radius-md);color:var(--gray-700);cursor:pointer;display:flex;font-size:var(--text-base);font-weight:var(--font-medium);gap:var(--space-2);padding:var(--space-2) var(--space-4);transition:all .2s ease}.btn-back:hover{background:var(--gray-50);border-color:var(--gray-400)}.btn-back:active{background:var(--gray-100);transform:translateY(1px)}.etr-month-navigation{align-items:center;display:flex;gap:var(--space-2)}.etr-month-nav-btn{align-items:center;background:#fff;border:1px solid var(--gray-300);border-radius:var(--radius-md);color:var(--gray-700);cursor:pointer;display:flex;font-size:var(--text-base);font-weight:var(--font-medium);height:40px;justify-content:center;min-width:40px;padding:var(--space-2);transition:all .2s ease}.etr-month-nav-btn:hover:not(:disabled){background:var(--gray-50);border-color:var(--gray-400)}.etr-month-nav-btn:active:not(:disabled){background:var(--gray-100)}.etr-month-nav-btn.disabled{background:var(--gray-50);color:var(--gray-400);cursor:not-allowed;opacity:.5}.etr-month-label{color:var(--gray-700);font-size:var(--text-xl);font-weight:var(--font-semibold);min-width:180px;text-align:center}.etr-table-container{background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:block;overflow:hidden}.etr-table{border-collapse:collapse;width:100%}.etr-table thead{background:var(--gray-50)}.etr-table th{border-bottom:1px solid var(--gray-200);color:var(--gray-700);font-size:var(--text-sm);font-weight:var(--font-semibold);padding:var(--space-4) var(--space-6);text-align:left}.etr-table th.etr-th-sortable{cursor:pointer;transition:background-color .2s ease;-webkit-user-select:none;user-select:none}.etr-table th.etr-th-sortable:hover{background-color:var(--gray-100)}.etr-table th.etr-th-sortable:active{background-color:var(--gray-200)}.etr-table tbody tr{border-bottom:1px solid var(--gray-100);transition:background-color .2s}.etr-table tbody tr:hover{background:#f0f7ff}.etr-clickable-row{cursor:pointer;transition:background-color .2s ease}.etr-clickable-row:hover{background:#e6f0ff!important}.etr-clickable-row:active{background:#d1e5ff!important;transform:scale(.995)}.etr-table tbody tr:last-child{border-bottom:none}.etr-table td{font-size:var(--text-sm);padding:var(--space-4) var(--space-6)}.etr-date-cell{color:var(--gray-900);font-weight:var(--font-medium)}.etr-time-cell{color:var(--gray-700)}.etr-hours-cell{color:var(--gray-900);font-family:JetBrains Mono,monospace;font-weight:var(--font-medium)}.etr-empty-cell{color:var(--gray-300)}.etr-empty-row{opacity:.6}.etr-cards-container{display:none;flex-direction:column;gap:var(--space-3)}.etr-record-card{background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--space-4)}.etr-record-card.empty{opacity:.5}.etr-card-header{align-items:center;border-bottom:1px solid var(--gray-200);display:flex;justify-content:space-between;margin-bottom:var(--space-3);padding-bottom:var(--space-3)}.etr-record-date{color:var(--gray-900);font-size:var(--text-base);font-weight:var(--font-semibold)}.etr-record-day{color:var(--gray-500);font-size:var(--text-xs);margin-top:var(--space-1)}.etr-card-grid{grid-gap:var(--space-3);display:grid;gap:var(--space-3);grid-template-columns:1fr 1fr}.etr-clickable-card{border-radius:var(--radius-md);cursor:pointer;padding:var(--space-3);transition:all .2s ease}.etr-clickable-card:hover{background:#f9fafb;box-shadow:0 4px 12px #0038a826;transform:translateY(-2px)}.etr-clickable-card:active{box-shadow:0 2px 6px #0038a81a;transform:translateY(0)}.etr-shift-label{border-bottom:1px dashed var(--gray-200);color:var(--gray-600);font-size:var(--text-sm);font-weight:var(--font-medium);grid-column:1/-1;margin-bottom:var(--space-2);padding-bottom:var(--space-2)}.etr-record-field{display:flex;flex-direction:column;gap:var(--space-1)}.etr-field-label{color:var(--gray-500);font-size:var(--text-xs);font-weight:var(--font-medium)}.etr-field-value{color:var(--gray-900);font-size:var(--text-sm);font-weight:var(--font-medium)}.etr-field-value.monospace{font-family:JetBrains Mono,monospace}.etr-field-value.empty{color:var(--gray-300)}.etr-loading,.etr-loading-records{align-items:center;display:flex;justify-content:center;min-height:400px}.etr-loading-spinner{animation:spin 1s linear infinite;border-top:3px solid var(--gray-300);border:3px solid var(--gray-300);border-radius:50%;border-top-color:var(--ph-blue);height:40px;width:40px}.etr-empty-state{background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--space-12) var(--space-4);text-align:center}.etr-empty-icon{font-size:3rem;margin-bottom:var(--space-4)}.etr-empty-title{color:var(--gray-900);font-size:var(--text-xl);font-weight:var(--font-semibold);margin-bottom:var(--space-2)}.etr-empty-text{color:var(--gray-600);font-size:var(--text-base);margin-bottom:var(--space-6)}@media (max-width:1023px){.employee-time-records-container{padding:var(--space-6)}.etr-nav-bar{flex-direction:column;gap:var(--space-3);padding:var(--space-4)}.etr-nav-left,.etr-nav-right{justify-content:center;width:100%}.etr-nav-left{flex-direction:column;gap:var(--space-3)}.btn-back,.btn-primary{width:100%}}@media (max-width:767px){.employee-time-records-container{padding:var(--space-4)}.etr-page-title{font-size:var(--text-2xl)}.etr-page-subtitle{font-size:var(--text-base)}.etr-employee-card{padding:var(--space-4)}.etr-employee-avatar{height:48px;width:48px}.etr-employee-avatar,.etr-employee-name{font-size:var(--text-lg)}.etr-employee-meta{flex-wrap:wrap;gap:var(--space-2)}.etr-department-badge,.etr-employee-id{font-size:var(--text-xs)}.etr-table-container{display:none}.etr-cards-container{display:flex}.etr-month-label{flex:1 1;font-size:var(--text-base);min-width:0;min-width:auto}.etr-month-navigation{justify-content:space-between;width:100%}}.btn-primary{background:var(--ph-blue);border-radius:var(--radius-md);font-size:var(--text-base);font-weight:var(--font-medium);padding:var(--space-2) var(--space-4);transition:background .2s ease}.btn-primary:hover{background:var(--ph-blue-dark)}.btn-primary:active{transform:translateY(1px)}.etr-processed-row{background:#fff9e6!important;opacity:.85}.etr-processed-row:hover{background:#fff3cd!important;opacity:1}.etr-processed-row:active{background:#ffeaa7!important}.etr-lock-icon{font-size:12px;margin-right:4px;opacity:.8}.etr-processed-card{background:#fff9e6!important;border:1px solid #f39c12;opacity:.9}.etr-processed-card:hover{background:#fff3cd!important;border-color:#e67e22;opacity:1}.etr-processed-badge{align-items:center;background:#f39c12;border-radius:var(--radius-sm);color:#fff;display:flex;font-size:var(--text-xs);font-weight:var(--font-semibold);gap:var(--space-1);grid-column:1/-1;justify-content:center;margin-bottom:var(--space-2);padding:var(--space-1) var(--space-2);text-align:center}*{box-sizing:border-box;margin:0;padding:0}body{background:#f9fafb;color:#111827;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;line-height:1.6;overflow-x:hidden}body.mobile-menu-open{overflow:hidden}:root{--ph-blue:#0038a8;--ph-red:#ce1126;--ph-yellow:#feca57;--ph-gold:#f39c12;--ph-blue-light:#e6f0ff;--ph-red-light:#fff2f2;--ph-yellow-light:#fff9e6;--ph-gradient:linear-gradient(135deg,#0038a8,#f39c12);--gray-50:#f9fafb;--gray-100:#f3f4f6;--gray-200:#e5e7eb;--gray-300:#d1d5db;--gray-500:#6b7280;--gray-600:#4b5563;--gray-700:#374151;--gray-900:#111827;--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 4px 6px #0000001a;--shadow-lg:0 10px 15px #0000001a}.app-layout{display:flex;min-height:100vh;position:relative}.mobile-overlay{background:#00000080;height:100%;left:0;opacity:0;pointer-events:none;position:fixed;top:0;transition:all .3s ease;visibility:hidden;width:100%;z-index:45}.mobile-overlay.active{opacity:1;pointer-events:all;visibility:visible}.sidebar{background:#fff;border-right:1px solid #e5e7eb;border-right:1px solid var(--gray-200);height:100vh;left:0;overflow-y:auto;position:fixed;top:0;transition:transform .3s ease;width:280px;z-index:50}.sidebar.mobile-hidden{transform:translateX(-100%)}.sidebar.mobile-open{transform:translateX(0)!important}.saas-header{border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--gray-200);height:64px;padding:0 20px}.saas-brand,.saas-header{align-items:center;display:flex}.saas-brand{gap:10px}.saas-logo{align-items:center;background:linear-gradient(135deg,#0038a8,#f39c12);background:var(--ph-gradient);border-radius:8px;color:#fff;display:flex;font-size:16px;font-weight:700;height:36px;justify-content:center;width:36px}.saas-name h1{color:#111827;color:var(--gray-900);font-size:1.125rem;font-weight:600;margin:0}.sidebar-nav{padding:14px 0}.nav-section{margin-bottom:20px}.nav-title{color:#6b7280;color:var(--gray-500);font-size:.7rem;font-weight:600;letter-spacing:.05em;margin-bottom:6px;padding:0 18px;text-transform:uppercase}.nav-item{align-items:center;border-left:3px solid #0000;color:#374151;color:var(--gray-700);display:flex;font-size:.875rem;gap:10px;padding:8px 18px;position:relative;text-decoration:none;transition:all .2s ease}.nav-item:hover{background:#f9fafb;background:var(--gray-50)}.nav-item.active,.nav-item:hover{color:#0038a8;color:var(--ph-blue)}.nav-item.active{background:#e6f0ff;background:var(--ph-blue-light);border-left-color:#0038a8;border-left-color:var(--ph-blue);font-weight:500}.nav-item.priority{background:#fff2f2;background:var(--ph-red-light);color:#ce1126;color:var(--ph-red);font-weight:600}.nav-item.priority:hover{background:#fee2e2}.nav-icon{flex-shrink:0;font-size:16px}.nav-badge{background:#ce1126;background:var(--ph-red);min-width:16px;padding:1px 5px}.nav-badge,.setup-badge{border-radius:8px;color:#fff;font-size:.7rem;font-weight:600;margin-left:auto;text-align:center}.setup-badge{background:#f39c12;background:var(--ph-gold);min-width:40px;padding:1px 6px}.nav-item.disabled{color:#9ca3af;color:var(--gray-400,#9ca3af);cursor:not-allowed;opacity:.6}.nav-item.disabled:hover{background:#0000;color:#9ca3af;color:var(--gray-400,#9ca3af)}.nav-item.disabled .nav-icon{opacity:.5}.coming-soon-badge{background:#e5e7eb;background:var(--gray-200,#e5e7eb);border-radius:4px;color:#6b7280;color:var(--gray-500,#6b7280);font-size:.65rem;font-weight:600;margin-left:auto;padding:2px 6px;text-transform:uppercase}.main-content{display:flex;flex:1 1;flex-direction:column;margin-left:280px;min-height:100vh;transition:margin-left .3s ease}.main-content.sidebar-hidden{margin-left:0}.header{align-items:center;background:#fff;border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--gray-200);box-shadow:0 1px 2px #0000000d;box-shadow:var(--shadow-sm);display:flex;height:64px;justify-content:space-between;min-height:64px;padding:8px 24px;position:-webkit-sticky;position:sticky;top:0;z-index:40}.header-left,.header-right{align-items:center;display:flex;gap:16px}.mobile-menu-btn{background:none;border:none;border-radius:6px;color:#4b5563;color:var(--gray-600);cursor:pointer;display:none;padding:8px;transition:background .2s}.mobile-menu-btn:hover{background:#f3f4f6;background:var(--gray-100)}.hamburger{display:flex;flex-direction:column;height:20px;justify-content:space-between;width:20px}.hamburger-line{background:currentColor;height:2px;transition:all .3s ease;width:100%}.mobile-menu-btn.active .hamburger-line:first-child{transform:rotate(45deg) translate(6px,6px)}.mobile-menu-btn.active .hamburger-line:nth-child(2){opacity:0}.mobile-menu-btn.active .hamburger-line:nth-child(3){transform:rotate(-45deg) translate(6px,-6px)}.header-brand{align-items:center;display:flex;gap:10px}.header-brand-logo{align-items:center;background:linear-gradient(135deg,#0038a8,#f39c12);background:var(--ph-gradient);border-radius:8px;color:#fff;display:flex;font-size:16px;font-weight:700;height:36px;justify-content:center;width:36px}.header-brand-text{color:#0038a8;color:var(--ph-blue);font-size:1.25rem;font-weight:700;white-space:nowrap}.user-menu{align-items:center;border:1px solid #0000;border-radius:8px;cursor:pointer;display:flex;gap:10px;padding:8px 12px;position:relative;transition:background .2s}.user-menu:hover{background:#f3f4f6;background:var(--gray-100);border-color:#e5e7eb;border-color:var(--gray-200)}.user-avatar{align-items:center;background:#0038a8;background:var(--ph-blue);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:13px;font-weight:600;height:32px;justify-content:center;width:32px}.user-info{display:flex;flex-direction:column;min-width:0}.user-name{color:#111827;color:var(--gray-900);font-size:.875rem;font-weight:500}.user-name,.user-role{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-role{font-size:.75rem}.dropdown-arrow,.user-role{color:#6b7280;color:var(--gray-500)}.dropdown-arrow{flex-shrink:0;font-size:12px;transition:transform .2s}.user-menu.dropdown-open .dropdown-arrow,.user-menu.open .dropdown-arrow{transform:rotate(180deg)}.dropdown-menu{background:#fff;border:1px solid #e5e7eb;border:1px solid var(--gray-200);border-radius:8px;box-shadow:0 10px 15px #0000001a;box-shadow:var(--shadow-lg);margin-top:8px;min-width:160px;opacity:0;pointer-events:none;position:absolute;right:0;top:100%;transform:translateY(-10px);transition:all .2s ease;visibility:hidden;z-index:1000}.dropdown-menu.dropdown-open,.dropdown-menu.show{opacity:1;pointer-events:all;transform:translateY(0);visibility:visible}.dropdown-item{align-items:center;background:none;border:none;color:#374151;color:var(--gray-700);cursor:pointer;display:flex;font-family:inherit;font-size:.875rem;gap:10px;padding:12px 16px;text-align:left;text-decoration:none;transition:background .2s;width:100%}.dropdown-item:hover{background:#f9fafb;background:var(--gray-50)}.dropdown-item:first-child{border-radius:8px 8px 0 0}.dropdown-item:last-child{border-radius:0 0 8px 8px;border-top:1px solid #f3f4f6;border-top:1px solid var(--gray-100);color:#ce1126;color:var(--ph-red)}.dropdown-item:last-child:hover{background:#fef2f2}.dropdown-icon{flex-shrink:0;font-size:16px}.content-area{flex:1 1;margin:0 auto;max-width:1400px;padding:24px 32px;width:100%}@media (max-width:1024px){.sidebar{width:280px}.main-content{margin-left:260px}.content-area{padding:24px}}@media (max-width:768px){.mobile-menu-btn{display:flex!important}.sidebar{transform:translateX(-100%);width:280px}.sidebar.mobile-open{transform:translateX(0)}.main-content{margin-left:0}.header{padding:8px 16px}.header-brand-text{font-size:1.125rem}.content-area{padding:16px}.user-role{display:none}.user-info{min-width:auto}}@media (max-width:480px){.header{padding:8px 12px}.header-brand{gap:8px}.header-brand-logo{font-size:14px;height:32px;width:32px}.header-brand-text{font-size:1rem}.user-menu{gap:8px;padding:6px 8px}.user-avatar{font-size:12px;height:28px;width:28px}.user-info{display:none}.content-area{padding:12px}}.kiosk-activation-page{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:20px}.activation-container{max-width:600px;width:100%}.activation-card{background:#fff;border-radius:20px;box-shadow:0 20px 60px #0003;overflow:hidden}.activation-header{background:linear-gradient(135deg,#0038a8,#002c7f);color:#fff;padding:40px 20px 30px;text-align:center}.activation-logo{align-items:center;background:#fff;border-radius:20px;color:#0038a8;display:flex;font-size:48px;font-weight:700;height:80px;justify-content:center;margin:0 auto 20px;width:80px}.activation-header h1{font-size:32px;margin:0 0 10px}.activation-header p{font-size:16px;margin:0;opacity:.9}.activation-form{padding:40px 30px}.code-input-group{display:flex;gap:10px;justify-content:center;margin-bottom:30px}.code-input{background:#f9fafb;border:3px solid #e5e7eb;border-radius:12px;color:#111827;font-size:32px;font-weight:700;height:70px;text-align:center;text-transform:uppercase;transition:all .3s ease;width:60px}.code-input:focus{background:#fff;border-color:#0038a8;box-shadow:0 0 0 3px #0038a81a;outline:none;transform:scale(1.05)}.code-input:disabled{cursor:not-allowed;opacity:.5}.activation-error{align-items:center;background:#fee2e2;border-radius:8px;color:#dc2626;display:flex;font-size:14px;gap:8px;margin-bottom:20px;padding:12px 16px}.activation-actions{display:flex;gap:12px}.btn-activation{align-items:center;border:none;border-radius:10px;cursor:pointer;display:flex;flex:1 1;font-size:16px;font-weight:600;gap:8px;justify-content:center;padding:16px 24px;transition:all .3s ease}.btn-clear{background:#f3f4f6;color:#6b7280}.btn-clear:hover:not(:disabled){background:#e5e7eb}.btn-activate{background:linear-gradient(135deg,#0038a8,#002c7f);color:#fff}.btn-activate:hover:not(:disabled){box-shadow:0 10px 20px #0038a84d;transform:translateY(-2px)}.btn-activation:disabled{cursor:not-allowed;opacity:.5;transform:none!important}.spinner{animation:spin .8s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:16px;width:16px}.activation-help{background:#f9fafb;border-top:1px solid #e5e7eb;padding:30px}.activation-help h3{color:#374151;font-size:16px;margin:0 0 15px}.activation-help ol{color:#6b7280;font-size:14px;line-height:1.8;margin:0;padding-left:20px}.activation-footer{border-top:1px solid #e5e7eb;color:#6b7280;font-size:14px;padding:20px 30px;text-align:center}.activation-footer a{color:#0038a8;font-weight:500;text-decoration:none}.activation-footer a:hover{text-decoration:underline}.footer-brand{color:#9ca3af;font-size:12px;margin-top:10px}.activation-success-screen{padding:60px 30px;text-align:center}.success-icon{animation:scaleIn .5s ease;font-size:80px;margin-bottom:20px}@keyframes scaleIn{0%{transform:scale(0)}to{transform:scale(1)}}.activation-success-screen h1{color:#10b981;font-size:28px;margin:0 0 30px}.success-details{background:#f9fafb;border-radius:10px;margin-bottom:30px;padding:20px}.success-details p{color:#374151;font-size:16px;margin:8px 0}.redirect-message{color:#6b7280;margin-bottom:20px}.loading-bar{background:#e5e7eb;border-radius:2px;height:4px;margin:0 auto;overflow:hidden;width:200px}.loading-bar-fill{animation:loadingBar 3s linear forwards;background:linear-gradient(90deg,#0038a8,#002c7f);height:100%}@keyframes loadingBar{0%{width:0}to{width:100%}}.kiosk-instructions-card{background:#e6f0ff;border:1px solid #0038a8;border-radius:12px;margin-bottom:30px;padding:20px}.kiosk-instructions-card h3{color:#002c7f;font-size:18px;margin:0 0 15px}.kiosk-instructions-card ol{color:#374151;line-height:1.8;margin:0;padding-left:20px}.kiosk-instructions-card strong{color:#0038a8;font-weight:600}.kiosk-code{align-items:center;background:#e6f0ff;border-radius:4px;color:#0038a8;display:inline-flex;font-family:JetBrains Mono,Courier New,monospace;font-size:18px;font-weight:700;gap:8px;padding:4px 8px}.btn-copy{background:#0000;border:none;cursor:pointer;font-size:16px;padding:2px;transition:transform .2s}.btn-copy:hover{transform:scale(1.2)}.btn-copy:active{transform:scale(.9)}.activation-modal{max-width:500px}.activation-success{margin-bottom:30px;text-align:center}.activation-icon{font-size:60px;margin-bottom:15px}.activation-code-display{background:#f9fafb;border-radius:12px;margin-bottom:30px;padding:30px;text-align:center}.activation-label{color:#6b7280;font-size:14px;letter-spacing:1px;margin-bottom:10px;text-transform:uppercase}.activation-code-large{color:#0038a8;font-family:JetBrains Mono,Courier New,monospace;font-size:48px;font-weight:700;letter-spacing:8px;margin-bottom:20px}.btn-copy-large{font-size:16px;padding:12px 24px}.activation-instructions{margin-bottom:20px}.activation-instructions h3{color:#374151;font-size:16px;margin:0 0 15px}.activation-instructions ol{color:#6b7280;font-size:14px;line-height:1.8;margin:0;padding-left:20px}.activation-instructions strong{color:#0038a8;font-weight:600}.activation-expiry{background:#fef3c7;border-radius:8px;color:#92400e;font-size:14px;margin-bottom:20px;padding:12px;text-align:center}.form-section{border-top:1px solid #e5e7eb;margin-top:30px;padding-top:20px}.form-section h3{color:#374151;font-size:16px;font-weight:600;margin:0 0 15px}.form-row{grid-gap:15px;display:grid;gap:15px;grid-template-columns:1fr 1fr}.kiosk-interface{background:linear-gradient(135deg,#f3f4f6,#e5e7eb);display:flex;flex-direction:column;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;min-height:100vh}.kiosk-header{background:linear-gradient(135deg,#0038a8,#002c7f);box-shadow:0 4px 12px #00000026;color:#fff;padding:24px 32px}.kiosk-header-content{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1200px}.kiosk-company-info{flex:1 1}.kiosk-company-name{font-size:36px;font-weight:700;letter-spacing:-.5px;margin:0 0 8px}.kiosk-location{font-size:20px;font-weight:400;margin:0;opacity:.9}.kiosk-datetime-container{text-align:right}.kiosk-time-display{font-family:JetBrains Mono,Courier New,monospace;font-size:32px;font-weight:700;letter-spacing:-1px;margin-bottom:4px}.kiosk-date-display{font-size:18px;font-weight:400;opacity:.9}.kiosk-test-mode-indicator{color:#fcd116;font-size:11px;font-weight:600;letter-spacing:1px;margin-top:6px;text-transform:uppercase}.kiosk-main{align-items:center;display:flex;flex:1 1;justify-content:center;padding:40px 20px}.kiosk-card{background:#fff;border-radius:24px;box-shadow:0 20px 60px #0000001a;max-width:600px;padding:48px;width:100%}.kiosk-card-header{margin-bottom:40px;text-align:center}.kiosk-icon-container{margin-bottom:24px}.kiosk-icon{align-items:center;background:linear-gradient(135deg,#fcd116,#f39c12);border-radius:24px;box-shadow:0 8px 24px #fcd1164d;display:inline-flex;height:100px;justify-content:center;width:100px}.kiosk-icon-symbol{color:#fff;font-size:48px}.kiosk-title{color:#111827;font-size:32px;font-weight:700;letter-spacing:-.5px;margin:0}.kiosk-input-container{margin-bottom:24px}.kiosk-input-display{background:#f9fafb;border:3px solid #e5e7eb;border-radius:16px;color:#111827;font-family:JetBrains Mono,Courier New,monospace;font-size:48px;font-weight:700;letter-spacing:12px;padding:24px;text-align:center;transition:all .3s ease;width:100%}.kiosk-input-display:focus{background:#fff;border-color:#0038a8;outline:none}.kiosk-error-message{align-items:center;animation:slideIn .3s ease;background:#fee2e2;border-radius:8px;color:#ce1126;display:flex;font-size:14px;font-weight:500;gap:8px;margin-bottom:24px;padding:12px 16px}.kiosk-error-icon{font-size:16px}.kiosk-numpad-container{margin-bottom:32px}.kiosk-numpad-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(3,1fr)}.kiosk-numpad-button{background:#fff;border:2px solid #e5e7eb;border-radius:12px;color:#111827;cursor:pointer;font-family:JetBrains Mono,Courier New,monospace;font-size:28px;font-weight:600;padding:24px;transition:all .2s ease}.kiosk-numpad-button:hover{background:#0038a8;border-color:#0038a8;box-shadow:0 4px 12px #0038a833;color:#fff;transform:translateY(-2px)}.kiosk-numpad-button:active{box-shadow:0 2px 4px #0038a833;transform:translateY(0)}.kiosk-numpad-backspace,.kiosk-numpad-clear{background:#f3f4f6;font-size:18px}.kiosk-numpad-backspace:hover,.kiosk-numpad-clear:hover{background:#ce1126;border-color:#ce1126;color:#fff}.kiosk-action-buttons{display:flex;gap:12px}.kiosk-button{align-items:center;border:none;border-radius:12px;cursor:pointer;display:flex;flex:1 1;font-size:20px;font-weight:600;gap:8px;justify-content:center;padding:20px 32px;transition:all .3s ease}.kiosk-button-primary{background:linear-gradient(135deg,#0038a8,#002c7f);color:#fff}.kiosk-button-primary:hover:not(:disabled){box-shadow:0 8px 24px #0038a84d;transform:translateY(-2px)}.kiosk-button-primary:disabled{cursor:not-allowed;opacity:.5;transform:none!important}.kiosk-button-back{background:#f3f4f6;color:#6b7280}.kiosk-button-back:hover{background:#e5e7eb;color:#374151}.kiosk-footer{background:#fff;border-top:2px solid #e5e7eb;padding:16px 32px}.kiosk-footer-content{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1200px}.kiosk-break-policy{align-items:center;display:flex;font-size:16px;gap:12px}.kiosk-policy-label{color:#6b7280;font-weight:500}.kiosk-policy-value{color:#0038a8;font-weight:600}.kiosk-admin-controls{display:flex;gap:8px}.kiosk-admin-button{background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;color:#6b7280;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .2s ease}.kiosk-admin-button:hover{background:#e5e7eb;color:#374151}@media (max-width:768px){.kiosk-header{padding:20px}.kiosk-company-name{font-size:28px}.kiosk-location{font-size:16px}.kiosk-time-display{font-size:24px}.kiosk-date-display{font-size:14px}.kiosk-card{padding:32px 24px}.kiosk-title{font-size:24px}.kiosk-input-display{font-size:36px;letter-spacing:8px;padding:20px}.kiosk-numpad-button{font-size:24px;padding:20px}.kiosk-button{font-size:18px;padding:16px 24px}.code-input{font-size:24px;height:60px;width:50px}.activation-code-large{font-size:32px;letter-spacing:4px}.form-row{grid-template-columns:1fr}}@media (max-width:480px){.kiosk-header-content{flex-direction:column;gap:16px;text-align:center}.kiosk-datetime-container{text-align:center}.kiosk-footer-content{flex-direction:column;gap:16px}.kiosk-break-policy{text-align:center}.code-input-group{gap:5px}.code-input{font-size:20px;height:55px;width:45px}.activation-header h1{font-size:24px}.activation-code-large{font-size:24px;letter-spacing:2px}}:root{--ma-blue:#0038a8;--ma-blue-light:#e6f0ff;--ma-blue-dark:#002c7f;--ma-red:#ce1126;--ma-red-light:#fff2f2;--ma-gold:#f39c12;--ma-gold-light:#fff9e6;--ma-success:#10b981;--ma-success-light:#d1fae5}.manual-adjustments{padding:20px}.ma-header{align-items:flex-start;border-bottom:2px solid #e6f0ff;border-bottom:2px solid var(--ma-blue-light);display:flex;justify-content:space-between;margin-bottom:30px;padding-bottom:20px}.ma-header-content{flex:1 1}.ma-title{color:#0038a8;color:var(--ma-blue);font-size:28px;font-weight:600;margin:0 0 8px}.ma-subtitle{color:#6b7280;font-size:14px;margin:0}.ma-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:8px;padding:10px 20px;transition:all .3s ease}.ma-btn:disabled{cursor:not-allowed;opacity:.5}.ma-btn-primary{background:linear-gradient(135deg,#0038a8,#002c7f);background:linear-gradient(135deg,var(--ma-blue) 0,var(--ma-blue-dark) 100%);color:#fff}.ma-btn-primary:hover:not(:disabled){box-shadow:0 4px 12px #0038a84d;transform:translateY(-2px)}.ma-btn-secondary{background:#fff;border:2px solid #0038a8;border:2px solid var(--ma-blue);color:#0038a8;color:var(--ma-blue)}.ma-btn-secondary:hover{background:#e6f0ff;background:var(--ma-blue-light)}.ma-btn-add .btn-icon{font-size:20px;font-weight:700}.ma-summary{margin-bottom:30px}.ma-summary-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(4,1fr)}.ma-summary-card{align-items:center;background:#fff;border:2px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000001a;display:flex;gap:16px;padding:20px;transition:all .3s ease}.ma-summary-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.ma-summary-card.earnings{background:linear-gradient(135deg,#fff,#fff9e6);background:linear-gradient(135deg,#fff 0,var(--ma-gold-light) 100%);border-color:#f39c12;border-color:var(--ma-gold)}.ma-summary-card.deductions{background:linear-gradient(135deg,#fff,#fff2f2);background:linear-gradient(135deg,#fff 0,var(--ma-red-light) 100%);border-color:#ce1126;border-color:var(--ma-red)}.ma-summary-card.net{background:linear-gradient(135deg,#fff,#e6f0ff);background:linear-gradient(135deg,#fff 0,var(--ma-blue-light) 100%);border-color:#0038a8;border-color:var(--ma-blue)}.ma-summary-icon{align-items:center;background:#fff;border-radius:50%;box-shadow:0 2px 8px #0000001a;display:flex;font-size:32px;height:48px;justify-content:center;width:48px}.ma-summary-content{display:flex;flex:1 1;flex-direction:column;gap:4px}.ma-summary-value{color:#111827;font-family:JetBrains Mono,monospace;font-size:24px;font-weight:700}.ma-summary-card.earnings .ma-summary-value{color:#f39c12;color:var(--ma-gold)}.ma-summary-card.deductions .ma-summary-value{color:#ce1126;color:var(--ma-red)}.ma-summary-card.net .ma-summary-value{color:#0038a8;color:var(--ma-blue)}.ma-summary-label{color:#6b7280;font-size:13px;letter-spacing:.5px;text-transform:uppercase}.ma-modal-overlay{align-items:center;animation:fadeIn .2s ease;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:9999}.ma-modal{animation:slideUp .3s ease;background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:600px;overflow:hidden;width:90%}.ma-modal-header{align-items:center;background:linear-gradient(135deg,#e6f0ff,#fff9e6);background:linear-gradient(135deg,var(--ma-blue-light) 0,var(--ma-gold-light) 100%);border-bottom:2px solid #0038a8;border-bottom:2px solid var(--ma-blue);border-top-left-radius:12px;border-top-right-radius:12px;display:flex;justify-content:space-between;padding:20px 24px}.ma-modal-title{align-items:center;display:flex;gap:12px}.ma-modal-icon{font-size:24px}.ma-modal-title h3{color:#0038a8;color:var(--ma-blue);font-size:20px;font-weight:600;margin:0}.ma-close-btn{align-items:center;background:none;border:none;border-radius:8px;color:#6b7280;cursor:pointer;display:flex;font-size:32px;height:36px;justify-content:center;transition:all .2s;width:36px}.ma-close-btn:hover{background:#fff;color:#ce1126;color:var(--ma-red)}.ma-modal-body{flex:1 1;overflow-y:auto;padding:24px}.ma-form-group{margin-bottom:24px}.ma-form-group label{color:#374151;display:block;font-size:14px;font-weight:500;margin-bottom:8px}.ma-selected-employee{margin-top:8px}.ma-employee-badge{align-items:center;animation:slideIn .3s ease;background:linear-gradient(135deg,#e6f0ff,#fff);background:linear-gradient(135deg,var(--ma-blue-light) 0,#fff 100%);border:2px solid #0038a8;border:2px solid var(--ma-blue);border-radius:8px;display:flex;justify-content:space-between;padding:12px 16px}@keyframes slideIn{0%{opacity:0;transform:translateX(-10px)}to{opacity:1;transform:translateX(0)}}.ma-badge-content{display:flex;flex-direction:column;gap:4px}.ma-employee-name{color:#0038a8;color:var(--ma-blue);font-size:16px}.ma-employee-id{color:#6b7280;font-family:JetBrains Mono,monospace;font-size:12px}.ma-clear-btn{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:50%;color:#6b7280;cursor:pointer;display:flex;font-size:20px;height:28px;justify-content:center;transition:all .2s;width:28px}.ma-clear-btn:hover{background:#fff2f2;background:var(--ma-red-light);border-color:#ce1126;border-color:var(--ma-red);color:#ce1126;color:var(--ma-red);transform:scale(1.1)}.ma-employee-search{position:relative}.ma-search-input-wrapper{align-items:center;display:flex;position:relative}.ma-search-input{border:2px solid #e5e7eb;border-radius:8px;font-size:14px;padding:10px 40px 10px 12px;transition:all .2s;width:100%}.ma-search-input:focus{border-color:#0038a8;border-color:var(--ma-blue);box-shadow:0 0 0 3px #0038a81a;outline:none}.ma-search-clear{align-items:center;background:none;border:none;border-radius:50%;color:#6b7280;cursor:pointer;display:flex;font-size:20px;height:28px;justify-content:center;position:absolute;right:8px;transition:all .2s;width:28px}.ma-search-clear:hover{background:#f3f4f6;color:#ce1126;color:var(--ma-red)}.ma-dropdown{animation:dropIn .2s ease;background:#fff;border:2px solid #0038a8;border:2px solid var(--ma-blue);border-radius:8px;box-shadow:0 10px 40px #00000026;left:0;max-height:280px;overflow:hidden;position:absolute;right:0;top:calc(100% + 4px);z-index:1000}@keyframes dropIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.ma-dropdown-loading{align-items:center;color:#6b7280;display:flex;font-size:14px;gap:12px;justify-content:center;padding:20px}.ma-spinner{animation:spin .8s linear infinite;border:2px solid #e6f0ff;border-top-color:#0038a8;border:2px solid var(--ma-blue-light);border-radius:50%;border-top-color:var(--ma-blue);height:16px;width:16px}.ma-dropdown-results{max-height:280px;overflow-y:auto}.ma-dropdown-item{border-bottom:1px solid #f3f4f6;cursor:pointer;padding:12px 16px;transition:all .2s}.ma-dropdown-item:hover{background:#e6f0ff;background:var(--ma-blue-light);padding-left:20px}.ma-dropdown-item:last-child{border-bottom:none}.ma-item-main{align-items:center;display:flex;justify-content:space-between}.ma-item-name{color:#111827;font-size:14px;font-weight:600}.ma-item-code{background:#fff9e6;background:var(--ma-gold-light);border-radius:4px;color:#f39c12;color:var(--ma-gold);font-family:JetBrains Mono,monospace;font-size:11px;font-weight:600;padding:2px 8px}.ma-dropdown-footer{background:#f9fafb;border-top:1px solid #e5e7eb;padding:8px 16px;text-align:center}.ma-more-results{color:#6b7280;font-size:12px;font-style:italic}.ma-dropdown-empty{padding:30px 20px;text-align:center}.ma-empty-icon{display:block;font-size:48px;margin-bottom:12px}.ma-dropdown-empty p{color:#374151;font-weight:600;margin:0 0 8px}.ma-empty-hint{color:#6b7280;font-size:12px}.ma-radio-group{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.ma-radio-option{border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;padding:16px;position:relative;transition:all .2s}.ma-radio-option input[type=radio]{opacity:0;position:absolute}.ma-radio-option:hover{background:#f9fafb;border-color:#d1d5db}.ma-radio-option.selected{background:#e6f0ff;background:var(--ma-blue-light);border-color:#0038a8;border-color:var(--ma-blue)}.ma-radio-content{align-items:center;display:flex;gap:12px}.ma-radio-icon{align-items:center;border-radius:50%;display:flex;font-size:20px;font-weight:700;height:32px;justify-content:center;width:32px}.ma-radio-icon.earning{background:#fff9e6;background:var(--ma-gold-light);color:#f39c12;color:var(--ma-gold)}.ma-radio-icon.deduction{background:#fff2f2;background:var(--ma-red-light);color:#ce1126;color:var(--ma-red)}.ma-radio-text{display:flex;flex-direction:column;gap:2px}.ma-radio-label{color:#111827;font-size:14px;font-weight:600}.ma-radio-desc{color:#6b7280;font-size:12px}.ma-select{background:#fff;border:2px solid #e5e7eb;border-radius:8px;font-size:14px;padding:10px 12px;transition:all .2s;width:100%}.ma-select:focus{border-color:#0038a8;border-color:var(--ma-blue);box-shadow:0 0 0 3px #0038a81a;outline:none}.ma-amount-input{align-items:center;display:flex;position:relative}.ma-currency{color:#f39c12;color:var(--ma-gold);font-size:16px;font-weight:600;left:12px;position:absolute}.ma-input{border:2px solid #e5e7eb;border-radius:8px;font-family:JetBrains Mono,monospace;font-size:14px;padding:10px 12px 10px 32px;transition:all .2s;width:100%}.ma-input:focus{border-color:#0038a8;border-color:var(--ma-blue);box-shadow:0 0 0 3px #0038a81a;outline:none}.ma-textarea{border:2px solid #e5e7eb;border-radius:8px;font-family:inherit;font-size:14px;padding:10px 12px;resize:vertical;transition:all .2s;width:100%}.ma-textarea:focus{border-color:#0038a8;border-color:var(--ma-blue);box-shadow:0 0 0 3px #0038a81a;outline:none}.ma-form-actions{border-top:1px solid #e5e7eb;display:flex;gap:12px;justify-content:flex-end;margin-top:30px;padding-top:20px}.ma-list-section{margin-bottom:30px}.ma-list-header{align-items:center;display:flex;gap:12px;margin-bottom:20px}.ma-list-header h3{color:#0038a8;color:var(--ma-blue);font-size:20px;margin:0}.ma-count-badge{background:#0038a8;background:var(--ma-blue);border-radius:20px;color:#fff;font-size:12px;font-weight:600;padding:4px 12px}.ma-empty-state{background:#f9fafb;border:2px dashed #d1d5db;border-radius:12px;padding:60px 20px;text-align:center}.ma-empty-state .ma-empty-icon{font-size:64px;margin-bottom:16px}.ma-empty-state h4{color:#374151;font-size:18px;margin:0 0 8px}.ma-empty-state p{color:#6b7280;font-size:14px;margin:0 0 20px}.ma-table-container{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow-x:auto}.ma-table{border-collapse:initial;border-spacing:0;width:100%}.ma-table thead{background:linear-gradient(180deg,#e6f0ff,#f9fafb);background:linear-gradient(180deg,var(--ma-blue-light) 0,#f9fafb 100%)}.ma-table th{border-bottom:2px solid #0038a8;border-bottom:2px solid var(--ma-blue);color:#0038a8;color:var(--ma-blue);font-size:12px;font-weight:600;letter-spacing:.5px;padding:14px 16px;text-align:left;text-transform:uppercase}.ma-table th:first-child{border-top-left-radius:12px}.ma-table th:last-child{border-top-right-radius:12px}.ma-table th.amount-col{text-align:right}.ma-table th.actions-col{text-align:center;width:80px}.ma-table tbody tr{transition:all .2s}.ma-table tbody tr:hover{background:#f9fafb}.ma-table-row{border-bottom:1px solid #e5e7eb}.ma-table-row:last-child{border-bottom:none}.ma-table td{font-size:14px;padding:14px 16px}.ma-employee-cell{display:flex;flex-direction:column;gap:2px}.ma-emp-name{color:#111827;font-weight:600}.ma-emp-code{color:#6b7280;font-family:JetBrains Mono,monospace;font-size:12px}.ma-badge{align-items:center;border-radius:20px;display:inline-flex;font-size:12px;font-weight:600;padding:4px 12px}.ma-badge-earning{background:#fff9e6;background:var(--ma-gold-light);color:#f39c12;color:var(--ma-gold)}.ma-badge-deduction{background:#fff2f2;background:var(--ma-red-light);color:#ce1126;color:var(--ma-red)}.ma-category{color:#374151}.ma-description{color:#6b7280;font-size:13px}.ma-amount{text-align:right}.ma-amount-value{font-family:JetBrains Mono,monospace;font-size:15px;font-weight:600}.ma-amount-value.earning{color:#f39c12;color:var(--ma-gold)}.ma-amount-value.deduction{color:#ce1126;color:var(--ma-red)}.ma-actions{text-align:center}.ma-btn-icon{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:6px;cursor:pointer;display:inline-flex;height:32px;justify-content:center;transition:all .2s;width:32px}.ma-btn-delete{color:#6b7280}.ma-btn-delete:hover{background:#fff2f2;background:var(--ma-red-light);border-color:#ce1126;border-color:var(--ma-red);color:#ce1126;color:var(--ma-red);transform:scale(1.1)}.ma-btn-delete span{font-size:20px;font-weight:700}.ma-templates{background:linear-gradient(135deg,#f9fafb,#fff);border:1px solid #e5e7eb;border-radius:12px;padding:30px}.ma-templates-header{margin-bottom:24px}.ma-templates-header h3{color:#0038a8;color:var(--ma-blue);font-size:20px;margin:0 0 8px}.ma-templates-desc{color:#6b7280;font-size:14px;margin:0}.ma-templates-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(4,1fr)}.ma-template-card{align-items:center;background:#fff;border:2px solid #e5e7eb;border-radius:12px;cursor:pointer;display:flex;flex-direction:column;gap:8px;padding:20px;text-align:center;transition:all .3s ease}.ma-template-card:hover{box-shadow:0 8px 20px #0000001a;transform:translateY(-4px)}.ma-template-card.earning,.ma-template-card.earning:hover{border-color:#f39c12;border-color:var(--ma-gold)}.ma-template-card.earning:hover{background:#fff9e6;background:var(--ma-gold-light)}.ma-template-card.deduction,.ma-template-card.deduction:hover{border-color:#ce1126;border-color:var(--ma-red)}.ma-template-card.deduction:hover{background:#fff2f2;background:var(--ma-red-light)}.ma-template-icon{font-size:32px;margin-bottom:4px}.ma-template-name{color:#111827;font-size:14px;font-weight:600}.ma-template-type{color:#6b7280;font-size:12px}.ma-employee-groups{display:flex;flex-direction:column;gap:24px}.ma-employee-group{background:#fff;border:2px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden;transition:all .3s ease}.ma-employee-group:hover{box-shadow:0 4px 12px #0000001a}.ma-employee-group.negative-balance{border-color:#ce1126;border-color:var(--ma-red)}.ma-employee-group-header{align-items:center;background:linear-gradient(135deg,#e6f0ff,#f9fafb);background:linear-gradient(135deg,var(--ma-blue-light) 0,#f9fafb 100%);border-bottom:1px solid #e5e7eb;display:flex;gap:20px;justify-content:space-between;padding:16px 20px}.ma-employee-group-header.negative-balance{background:linear-gradient(135deg,#fff2f2,#fff0f0);background:linear-gradient(135deg,var(--ma-red-light) 0,#fff0f0 100%)}.ma-employee-info{gap:12px}.ma-employee-avatar,.ma-employee-info{align-items:center;display:flex;flex-shrink:0}.ma-employee-avatar{background:linear-gradient(135deg,#0038a8,#002c7f);background:linear-gradient(135deg,var(--ma-blue) 0,var(--ma-blue-dark) 100%);border-radius:50%;color:#fff;font-size:14px;font-weight:600;height:44px;justify-content:center;width:44px}.ma-employee-avatar.negative-balance{background:linear-gradient(135deg,#ce1126,#a00d1e);background:linear-gradient(135deg,var(--ma-red) 0,#a00d1e 100%)}.ma-employee-details{display:flex;flex-direction:column;gap:2px}.ma-employee-name{color:#111827;font-size:15px;font-weight:600}.ma-employee-meta{align-items:center;display:flex;font-size:12px;gap:8px}.ma-employee-code{color:#0038a8;color:var(--ma-blue);font-family:JetBrains Mono,monospace;font-weight:500}.ma-employee-dept{color:#6b7280}.ma-employee-dept:before{color:#d1d5db;content:"•";margin-right:8px}.ma-employee-financial{display:flex;flex-wrap:wrap;gap:16px}.ma-financial-item{align-items:flex-end;display:flex;flex-direction:column;gap:2px;min-width:100px}.ma-financial-label{color:#6b7280;font-size:11px;letter-spacing:.5px;text-transform:uppercase}.ma-financial-value{font-family:JetBrains Mono,monospace;font-size:14px;font-weight:600}.ma-financial-value.gross{color:#f39c12;color:var(--ma-gold)}.ma-financial-value.deductions{color:#ce1126;color:var(--ma-red)}.ma-financial-value.net{color:#0038a8;color:var(--ma-blue)}.ma-financial-value.net.negative{color:#ce1126;color:var(--ma-red)}.ma-financial-value.available{color:#10b981;color:var(--ma-success)}.ma-financial-value.available.negative{color:#ce1126;color:var(--ma-red)}.ma-adjustments-table{border-collapse:initial;border-spacing:0;width:100%}.ma-adjustments-table thead{background:#f9fafb}.ma-adjustments-table th{border-bottom:1px solid #e5e7eb;color:#6b7280;font-size:11px;font-weight:600;letter-spacing:.5px;padding:10px 16px;text-align:left;text-transform:uppercase}.ma-adjustments-table th.amount-col{text-align:right}.ma-adjustments-table th.actions-col{text-align:center;width:100px}.ma-adjustments-table td{border-bottom:1px solid #f3f4f6;font-size:14px;padding:12px 16px}.ma-adjustments-table tbody tr:last-child td{border-bottom:none}.ma-adjustments-table tbody tr:hover{background:#f9fafb}.ma-actions-cell{display:flex;gap:8px;justify-content:center}.ma-btn-edit{background:#fff;border:1px solid #e5e7eb;color:#6b7280;font-size:16px}.ma-btn-edit:hover{background:#e6f0ff;background:var(--ma-blue-light);border-color:#0038a8;border-color:var(--ma-blue);color:#0038a8;color:var(--ma-blue);transform:scale(1.1)}.ma-group-totals{align-items:center;background:#f9fafb;border-top:1px solid #e5e7eb;display:flex;gap:24px;justify-content:flex-end;padding:12px 16px}.ma-group-total-item{align-items:center;display:flex;gap:8px}.ma-group-total-label{color:#6b7280;font-size:12px}.ma-group-total-value{font-family:JetBrains Mono,monospace;font-size:14px;font-weight:600}.ma-group-total-value.earning{color:#f39c12;color:var(--ma-gold)}.ma-group-total-value.deduction{color:#ce1126;color:var(--ma-red)}.ma-group-total-value.net{color:#0038a8;color:var(--ma-blue)}.ma-group-total-value.net.negative{color:#ce1126;color:var(--ma-red)}.ma-negative-warning{align-items:center;background:linear-gradient(135deg,#fff2f2,#ffecec);background:linear-gradient(135deg,var(--ma-red-light) 0,#ffecec 100%);border-top:2px solid #ce1126;border-top:2px solid var(--ma-red);display:flex;gap:12px;padding:12px 16px}.ma-warning-icon{font-size:18px}.ma-warning-text{color:#ce1126;color:var(--ma-red);font-size:13px;font-weight:500}.ma-selected-employee-card{animation:slideIn .3s ease;background:linear-gradient(135deg,#e6f0ff,#fff);background:linear-gradient(135deg,var(--ma-blue-light) 0,#fff 100%);border:2px solid #0038a8;border:2px solid var(--ma-blue);border-radius:12px;padding:16px}.ma-selected-employee-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.ma-selected-employee-info{align-items:center;display:flex;gap:12px}.ma-selected-avatar{align-items:center;background:linear-gradient(135deg,#0038a8,#002c7f);background:linear-gradient(135deg,var(--ma-blue) 0,var(--ma-blue-dark) 100%);border-radius:50%;color:#fff;display:flex;font-size:14px;font-weight:600;height:40px;justify-content:center;width:40px}.ma-selected-details{display:flex;flex-direction:column;gap:2px}.ma-selected-name{color:#0038a8;color:var(--ma-blue);font-size:15px;font-weight:600}.ma-selected-code{color:#6b7280;font-size:12px}.ma-clear-selection{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:50%;color:#6b7280;cursor:pointer;display:flex;font-size:20px;height:28px;justify-content:center;transition:all .2s;width:28px}.ma-clear-selection:hover{background:#fff2f2;background:var(--ma-red-light);border-color:#ce1126;border-color:var(--ma-red);color:#ce1126;color:var(--ma-red);transform:scale(1.1)}.ma-financial-summary{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(4,1fr)}.ma-financial-box{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:12px;text-align:center}.ma-financial-box-label{color:#6b7280;font-size:10px;letter-spacing:.5px;margin-bottom:4px;text-transform:uppercase}.ma-financial-box-value{font-family:JetBrains Mono,monospace;font-size:13px;font-weight:600}.ma-financial-box-value.gross{color:#f39c12;color:var(--ma-gold)}.ma-financial-box-value.deductions{color:#ce1126;color:var(--ma-red)}.ma-financial-box-value.net{color:#0038a8;color:var(--ma-blue)}.ma-financial-box-value.net.negative{color:#ce1126;color:var(--ma-red)}.ma-financial-box-value.available{color:#10b981;color:var(--ma-success)}.ma-financial-box-value.available.negative{color:#ce1126;color:var(--ma-red)}.ma-confirm-dialog{animation:slideUp .3s ease;background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;max-width:420px;padding:32px;text-align:center;width:90%}.ma-confirm-icon{font-size:48px;margin-bottom:16px}.ma-confirm-title{color:#111827;font-size:20px;font-weight:600;margin-bottom:12px}.ma-confirm-message{color:#6b7280;font-size:14px;line-height:1.5;margin-bottom:24px}.ma-confirm-message strong{color:#374151}.ma-confirm-actions{display:flex;gap:12px;justify-content:center}.ma-btn-danger{background:linear-gradient(135deg,#ce1126,#a00d1e);background:linear-gradient(135deg,var(--ma-red) 0,#a00d1e 100%);color:#fff}.ma-btn-danger:hover:not(:disabled){box-shadow:0 4px 12px #ce11264d;transform:translateY(-2px)}.ma-navigation{align-items:center;border-top:2px solid #e6f0ff;border-top:2px solid var(--ma-blue-light);display:flex;justify-content:space-between;margin-top:30px;padding:20px 0}.ma-nav-info{display:flex;flex-direction:column;gap:8px}.ma-nav-info>span:first-child{color:#6b7280;font-size:13px}.ma-nav-warning{align-items:center;background:#fff2f2;background:var(--ma-red-light);border-radius:20px;color:#ce1126;color:var(--ma-red);display:inline-flex;font-size:12px;font-weight:500;gap:6px;padding:6px 12px}.ma-nav-buttons{display:flex;gap:12px}@media (max-width:1024px){.ma-summary-grid,.ma-templates-grid{grid-template-columns:repeat(2,1fr)}.ma-employee-group-header{align-items:flex-start;flex-direction:column;gap:16px}.ma-employee-financial{justify-content:space-between;width:100%}.ma-financial-item{align-items:center}.ma-financial-summary{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.ma-header{flex-direction:column;gap:16px}.ma-summary-grid{grid-template-columns:1fr}.ma-modal{max-width:none;width:95%}.ma-radio-group{grid-template-columns:1fr}.ma-templates-grid{grid-template-columns:repeat(2,1fr)}.ma-table-container{border-radius:0;margin:0 -20px}.ma-table{font-size:12px}.ma-table td,.ma-table th{padding:10px 12px}.ma-adjustments-table{font-size:12px}.ma-adjustments-table td,.ma-adjustments-table th{padding:10px 12px}.ma-employee-financial{gap:12px}.ma-financial-item{flex:1 1;min-width:auto}.ma-group-totals{flex-wrap:wrap;gap:16px;justify-content:center}.ma-navigation{flex-direction:column;gap:16px;text-align:center}.ma-nav-info{align-items:center}.ma-confirm-dialog{padding:24px}.ma-confirm-actions{flex-direction:column}}@media (max-width:480px){.manual-adjustments{padding:12px}.ma-title{font-size:24px}.ma-summary-card{flex-direction:column;text-align:center}.ma-modal{border-radius:0;height:100%;max-height:100%;width:100%}.ma-btn{justify-content:center;width:100%}.ma-form-actions{flex-direction:column}.ma-template-card{padding:16px}.ma-templates-grid{grid-template-columns:1fr}.ma-employee-group{border-left:none;border-radius:0;border-right:none;margin:0 -12px}.ma-employee-group-header{padding:12px}.ma-employee-financial{flex-direction:column;gap:8px}.ma-financial-item{border-bottom:1px solid #f3f4f6;flex-direction:row;justify-content:space-between;padding:6px 0;width:100%}.ma-financial-item:last-child{border-bottom:none}.ma-adjustments-table{display:block;overflow-x:auto}.ma-group-totals{align-items:stretch;flex-direction:column;gap:8px}.ma-group-total-item{border-bottom:1px solid #f3f4f6;justify-content:space-between;padding:6px 0}.ma-group-total-item:last-child{border-bottom:none}.ma-financial-summary{gap:8px;grid-template-columns:repeat(2,1fr)}.ma-financial-box{padding:8px}.ma-financial-box-label{font-size:9px}.ma-financial-box-value{font-size:12px}.ma-selected-employee-header{align-items:flex-start;flex-direction:column;gap:12px}.ma-clear-selection{align-self:flex-end}}.modal-overlay{animation:fadeIn .2s ease;z-index:9999}.modal-overtime{animation:slideUp .3s ease;background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;display:flex;flex-direction:column;max-height:90vh;overflow:hidden;width:500px}.modal-overtime .modal-header{align-items:center;background:linear-gradient(135deg,#e6f0ff,#fff9e6);border-bottom:2px solid #e6f0ff;display:flex;justify-content:space-between;padding:20px 24px}.modal-overtime .modal-header h3{color:#0038a8;font-size:20px;font-weight:600;margin:0}.modal-overtime .modal-close{align-items:center;background:none;border:none;border-radius:6px;color:#6b7280;cursor:pointer;display:flex;font-size:28px;height:32px;justify-content:center;transition:all .2s;width:32px}.modal-overtime .modal-close:hover{background:#fff;color:#ce1126}.modal-overtime .modal-body{flex:1 1;overflow-y:auto;padding:24px}.modal-overtime .employee-context{grid-gap:12px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;display:grid;gap:12px;grid-template-columns:1fr 1fr;margin-bottom:24px;padding:16px}.modal-overtime .context-item{display:flex;flex-direction:column;gap:4px}.modal-overtime .context-label{color:#6b7280;font-size:12px;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.modal-overtime .context-value{color:#111827;font-size:14px;font-weight:600}.modal-overtime .form-group{margin-bottom:20px}.modal-overtime .form-group label{color:#374151;display:block;font-size:14px;font-weight:500;margin-bottom:8px}.modal-overtime .form-group input,.modal-overtime .form-group textarea{border:2px solid #e5e7eb;border-radius:6px;font-family:inherit;font-size:14px;padding:10px 12px;transition:all .2s;width:100%}.modal-overtime .form-group input:focus,.modal-overtime .form-group textarea:focus{border-color:#0038a8;box-shadow:0 0 0 3px #0038a81a;outline:none}.modal-overtime .form-help{color:#6b7280;display:block;font-size:12px;margin-top:6px}.modal-overtime .rate-input-group{align-items:center;display:flex;gap:8px}.modal-overtime .rate-input-group input{width:120px}.modal-overtime .rate-suffix{color:#0038a8;font-size:18px;font-weight:600}.modal-overtime .calculation-preview{background:linear-gradient(135deg,#e6f0ff,#fff9e6);border:1px solid #0038a8;border-radius:8px;margin-bottom:24px;padding:16px}.modal-overtime .calculation-preview h4{color:#0038a8;font-size:16px;font-weight:600;margin:0 0 12px}.modal-overtime .calc-row{display:flex;font-size:14px;justify-content:space-between;padding:6px 0}.modal-overtime .calc-row.total{border-top:2px solid #0038a8;color:#0038a8;font-size:16px;font-weight:600;margin-top:8px;padding-top:12px}.modal-overtime .modal-actions{border-top:1px solid #e5e7eb;display:flex;gap:12px;justify-content:flex-end;margin-top:24px;padding-top:20px}.modal-overtime .btn-primary{background:linear-gradient(135deg,#0038a8,#002c7f);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 24px;transition:all .2s}.modal-overtime .btn-primary:hover{box-shadow:0 4px 12px #0038a84d;transform:translateY(-1px)}.modal-overtime .btn-secondary{background:#fff;border:2px solid #e5e7eb;border-radius:6px;color:#6b7280;cursor:pointer;font-size:14px;font-weight:500;padding:10px 24px;transition:all .2s}.modal-overtime .btn-secondary:hover{background:#f9fafb;border-color:#6b7280;color:#374151}@media (max-width:640px){.modal-overtime{width:95%}.modal-overtime .employee-context{grid-template-columns:1fr}}.modal-backdrop{align-items:center;animation:fadeIn .2s ease;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-container{animation:slideUp .3s ease;background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:90vw;overflow:hidden}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-header{background:linear-gradient(135deg,var(--philippine-blue-light) 0,#fff 100%);border-bottom:2px solid var(--philippine-blue);padding:20px 30px}.modal-title{align-items:center;color:var(--philippine-blue);display:flex;font-size:24px;gap:12px;margin:0}.modal-icon{font-size:28px}.modal-close-btn{align-items:center;background:none;border:none;border-radius:6px;color:var(--gray-500);cursor:pointer;display:flex;font-size:32px;height:36px;justify-content:center;padding:0;transition:all .2s ease;width:36px}.modal-close-btn:hover{background:var(--gray-100);color:var(--philippine-blue)}.modal-body{flex:1 1;overflow-y:auto;padding:0}.modal-description{background:var(--gray-50);border-bottom:1px solid var(--gray-200);padding:20px 30px}.modal-description p{color:var(--gray-700);font-size:14px;line-height:1.6;margin:0}.modal-description .info-badge{align-items:flex-start;background:var(--philippine-blue-light);border-left:4px solid var(--philippine-blue);border-radius:6px;display:flex;gap:10px;margin-top:15px;padding:12px}.modal-description .badge-icon{flex-shrink:0;font-size:18px}.modal-description .badge-text{color:var(--philippine-blue-dark);font-size:13px;line-height:1.5}.modal-content{max-height:calc(85vh - 250px);overflow-y:auto;padding:30px}.modal-footer{background:var(--gray-50);border-top:1px solid var(--gray-200);padding:20px 30px}.modal-btn{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;padding:10px 24px;transition:all .3s ease}.modal-btn-primary{background:var(--philippine-blue);color:#fff}.modal-btn-primary:hover{background:var(--philippine-blue-dark);box-shadow:0 4px 12px #0038a84d;transform:translateY(-1px)}.modal-btn-secondary{background:#fff;border:2px solid var(--philippine-blue);color:var(--philippine-blue)}.modal-btn-secondary:hover{background:var(--philippine-blue-light)}.modal-complete-payroll{animation:slideUp .3s ease;background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:600px;min-width:480px}.modal-complete-payroll .modal-header{align-items:center;background:linear-gradient(135deg,#e6f0ff,#fff9e6);border-bottom:2px solid #e6f0ff;display:flex;justify-content:space-between;padding:20px 24px}.modal-complete-payroll .modal-header h3{color:#0038a8;font-size:20px;font-weight:600;margin:0}.modal-complete-payroll .modal-close{align-items:center;background:none;border:none;border-radius:6px;color:#6b7280;cursor:pointer;display:flex;font-size:28px;height:32px;justify-content:center;transition:all .2s;width:32px}.modal-complete-payroll .modal-close:hover{background:#fff;color:#ce1126}.complete-payroll-message{padding:20px;text-align:center}.complete-payroll-message .message-icon{display:flex;justify-content:center;margin-bottom:20px}.complete-payroll-message p{color:#374151;font-size:16px;font-weight:500;margin-bottom:20px}.payroll-summary-info{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;display:flex;gap:20px;justify-content:space-around;margin-top:20px;padding:15px}.payroll-summary-info .info-item{align-items:center;display:flex;flex-direction:column;gap:5px}.payroll-summary-info .info-label{color:#6b7280;font-size:12px;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.payroll-summary-info .info-value{color:#0038a8;font-size:16px;font-weight:600}.modal-complete-payroll .modal-footer{align-items:center;background:#fafafa;border-top:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:20px 24px}.btn-generate-csv{background:#10b981;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s ease}.btn-generate-csv:hover:not(:disabled){background:#0fa968;box-shadow:0 4px 12px #10b98133;transform:translateY(-1px)}.btn-generate-csv:disabled{cursor:not-allowed;opacity:.6}.modal-complete-payroll .modal-actions{display:flex;gap:12px}.btn-cancel{background:#fff;border:1px solid #d1d5db;border-radius:8px;color:#374151;cursor:pointer;font-size:14px;font-weight:500;padding:10px 24px;transition:all .2s ease}.btn-cancel:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.btn-confirm{background:#0038a8;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 24px;transition:all .2s ease}.btn-confirm:hover:not(:disabled){background:#002c7f;box-shadow:0 4px 12px #0038a833;transform:translateY(-1px)}.btn-cancel:disabled,.btn-confirm:disabled{cursor:not-allowed;opacity:.6}.status-message{border-radius:6px;font-size:14px;margin:10px 20px;padding:10px 15px;text-align:center}.status-message.success{background:#d1fae5;border:1px solid #10b981;color:#10b981}.status-message.error{background:#fee2e2;border:1px solid #ef4444;color:#ef4444}@media screen and (max-width:768px){.modal-complete-payroll{margin:20px;min-width:95%;width:95%}.payroll-summary-info{flex-direction:column;gap:10px}.modal-complete-payroll .modal-footer{flex-direction:column-reverse;gap:10px}.btn-generate-csv,.modal-complete-payroll .modal-actions{width:100%}.modal-complete-payroll .modal-actions{justify-content:space-between}.modal-backdrop{align-items:flex-start!important;padding:0!important}.modal-container{border-radius:0!important;height:100vh!important;margin:0!important;max-height:100vh!important;max-width:100%!important;width:100%!important}.modal-header{background:#fff;box-shadow:0 2px 4px #0000001a;padding:12px 16px;position:-webkit-sticky;position:sticky;top:0;z-index:10}.modal-title{flex-wrap:wrap;font-size:18px}.modal-icon{font-size:20px}.modal-close-btn{font-size:28px;height:32px;width:32px}.modal-footer{background:#fff;bottom:0;box-shadow:0 -2px 4px #0000001a;padding:12px 16px;position:-webkit-sticky;position:sticky;z-index:10}.modal-btn{font-size:14px;padding:12px 20px;width:100%}}.basic-pay-calculation{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:24px}.calculation-header{align-items:center;border-bottom:2px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.calculation-header h2{color:#111827;font-size:24px;font-weight:600;margin:0}.period-display{align-items:center;display:flex;gap:12px}.period-dates-badge{background:#e6f0ff;border:1px solid #0038a8;border-radius:8px;color:#0038a8;font-size:14px;font-weight:500;padding:8px 16px}.test-mode-badge{background:#fff9e6;border:1px solid #f39c12;border-radius:6px;color:#92400e;font-size:12px;font-weight:500;padding:6px 12px}.controls-row{align-items:center;display:flex;gap:16px;justify-content:space-between;margin-bottom:20px}.search-controls{display:flex;flex:1 1;gap:12px;max-width:600px}.search-input{border:1px solid #d1d5db;border-radius:8px;flex:1 1;font-size:14px;padding:10px 16px;transition:all .2s ease}.search-input:focus{border-color:#0038a8;box-shadow:0 0 0 3px #0038a81a;outline:none}.department-select{background:#fff;border:1px solid #d1d5db;border-radius:8px;cursor:pointer;font-size:14px;min-width:180px;padding:10px 16px;transition:all .2s ease}.department-select:focus{border-color:#0038a8;box-shadow:0 0 0 3px #0038a81a;outline:none}.table-container{border-radius:8px;box-shadow:0 1px 3px #0000001a;margin-bottom:24px;overflow-x:auto}.basic-pay-table{background:#fff;border-collapse:collapse;width:100%}.basic-pay-table thead{background:#e6f0ff;border-bottom:3px solid #0038a8}.basic-pay-table .main-header th{border-right:1px solid #d1d5db;color:#0038a8;font-size:13px;font-weight:600;letter-spacing:.5px;padding:14px 8px;text-align:left;vertical-align:middle}.basic-pay-table th:last-child{border-right:none}.th-id{text-align:center;width:60px}.th-name{min-width:180px;padding-left:12px!important;width:180px}.th-date{min-width:50px;padding:8px 4px!important;text-align:center!important;width:50px}.th-date.th-empty{background:#f9fafb}.date-header{align-items:center;display:flex;flex-direction:column;gap:2px;line-height:1.2}.date-day{color:#6b7280;font-size:10px;font-weight:500}.date-number{color:#0038a8;font-size:13px;font-weight:600}.th-basic-salary,.th-piece-rate,.th-total-days{text-align:center!important;width:110px}.week-navigation{align-items:center;display:flex;gap:12px}.week-nav-btn{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;font-size:13px;font-weight:500;padding:8px 16px;transition:all .2s ease}.week-nav-btn:hover:not(:disabled){background:#0038a8;border-color:#0038a8;color:#fff}.week-nav-btn:disabled{cursor:not-allowed;opacity:.5}.week-indicator{color:#6b7280;font-size:13px;font-weight:500;padding:0 8px}.basic-pay-table tbody tr{border-bottom:1px solid #e5e7eb;transition:background .2s ease}.basic-pay-table tbody tr:hover{background:#f9fafb}.basic-pay-table td{color:#374151;font-size:14px;padding:12px 8px}.td-id{color:#6b7280;font-family:JetBrains Mono,monospace;font-weight:500;text-align:center}.td-name{color:#111827;font-weight:500}.td-status{padding:8px 4px;text-align:center}.status-badge{cursor:help;display:inline-block;font-size:16px}.td-total-days{color:#111827;font-weight:600;text-align:center}.td-basic-salary{color:#111827;font-family:JetBrains Mono,monospace;font-weight:500;text-align:right}.td-piece-rate{padding:4px}.piece-rate-input{border:1px solid #d1d5db;border-radius:6px;font-family:JetBrains Mono,monospace;font-size:14px;padding:6px 10px;text-align:right;transition:all .2s ease;width:100%}.piece-rate-input::-webkit-inner-spin-button,.piece-rate-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.piece-rate-input[type=number]{-moz-appearance:textfield}.piece-rate-input:hover{border-color:#f39c12}.piece-rate-input:focus{background:#fff9e6;border-color:#f39c12;box-shadow:0 0 0 3px #f39c121a;outline:none}.summary-footer{background:linear-gradient(135deg,#f9fafb,#f3f4f6);border-radius:8px;margin-top:24px;padding:16px 20px}.summary-stats{align-items:center;display:flex;gap:24px;justify-content:space-between}.summary-stats .stat{display:flex;flex-direction:column;gap:4px}.summary-stats .stat label{color:#6b7280;font-size:12px;letter-spacing:.5px;text-transform:uppercase}.summary-stats .stat span{color:#111827;font-size:18px;font-weight:600}.summary-stats .total-amount{color:#0038a8;font-family:JetBrains Mono,monospace}.basic-pay-calculation .empty-state{color:#6b7280;font-size:16px;padding:60px 20px;text-align:center}@media (max-width:768px){.calculation-header{gap:12px}.calculation-header,.period-display{align-items:flex-start;flex-direction:column}.period-display{width:100%}.controls-row{flex-direction:column}.search-controls{max-width:none;width:100%}.summary-stats{align-items:flex-start;flex-direction:column}.th-name{min-width:150px}}.draft-auto-loaded-banner{animation:slideDown .3s ease-out;background:linear-gradient(135deg,#e6f0ff,#fff9e6);border:1px solid #0038a8;border-radius:8px;margin:16px 0;padding:12px 16px;position:relative}.draft-auto-loaded-banner .banner-content{align-items:center;display:flex;gap:12px}.draft-auto-loaded-banner .banner-icon{flex-shrink:0;font-size:20px}.draft-auto-loaded-banner .banner-text{color:#002c7f;flex:1 1;font-size:14px;font-weight:500}.draft-auto-loaded-banner .btn-start-fresh{background:#fff;border:1px solid #0038a8;border-radius:6px;color:#0038a8;cursor:pointer;font-size:13px;font-weight:500;padding:6px 16px;transition:all .2s ease}.draft-auto-loaded-banner .btn-start-fresh:hover{background:#0038a8;color:#fff}.draft-auto-loaded-banner .banner-close{align-items:center;background:#0000;border:none;border-radius:4px;color:#6b7280;cursor:pointer;display:flex;font-size:20px;height:24px;justify-content:center;line-height:1;margin-left:8px;padding:0;transition:all .2s ease;width:24px}.draft-auto-loaded-banner .banner-close:hover{background:#0000001a;color:#374151}.validation-warning{background:#fff9e6;border:1px solid #f39c12;border-radius:8px;display:flex;gap:12px;margin:16px 0;padding:16px}.validation-warning .warning-icon{flex-shrink:0;font-size:24px}.validation-warning .warning-content{flex:1 1}.validation-warning strong{color:#f39c12;display:block;font-size:16px;margin-bottom:8px}.validation-warning p{color:#6b7280;font-size:14px;margin:8px 0}.missing-records-details{border-top:1px solid #f39c1233;margin-top:12px;padding-top:12px}.missing-records-details summary{color:#f39c12;cursor:pointer;font-size:14px;font-weight:500}.missing-records-details ul{color:#6b7280;font-size:13px;margin-top:8px;padding-left:20px}.missing-records-details li{margin:4px 0}.payroll-summary-card{border:1px solid #e5e7eb;border-radius:12px;margin-bottom:24px;padding:24px}.empty-state-container,.payroll-summary-card{background:#fff;box-shadow:0 1px 3px #0000001a}.empty-state-container{border-radius:12px;padding:60px 20px;text-align:center}.empty-state-icon{font-size:64px;margin-bottom:20px;opacity:.5}.empty-state-container h3{color:#374151;font-size:24px;margin-bottom:12px}.empty-state-container p{color:#6b7280;font-size:16px;margin-bottom:30px}.period-info-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin:0 auto;max-width:400px;padding:20px}.info-row{border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:8px 0}.info-row:last-child{border-bottom:none}.info-label{color:#6b7280;font-weight:500}.info-value{color:#111827;font-weight:600}.payroll-summary-card .summary-header{align-items:center;border-bottom:2px solid #e6f0ff;display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.payroll-summary-card .summary-header h2{color:#0038a8;font-size:20px;font-weight:600;margin:0}.payroll-summary-card .period-badge{background:linear-gradient(135deg,#0038a8,#002c7f);border-radius:20px;color:#fff;font-size:14px;font-weight:500;padding:6px 16px}.payroll-summary-card .summary-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(3,1fr)}@media (max-width:1024px){.payroll-summary-card .summary-grid{grid-template-columns:1fr}}.payroll-summary-card .summary-section{background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px;padding:20px}.payroll-summary-card .section-title{align-items:center;color:#374151;display:flex;font-size:16px;font-weight:600;gap:8px;margin:0 0 16px}.payroll-summary-card .section-icon{font-size:20px}.payroll-summary-card .metric-cards{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.payroll-summary-card .metric-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:16px;text-align:center;transition:all .2s ease}.payroll-summary-card .metric-card:hover{box-shadow:0 4px 8px #0000001a;transform:translateY(-2px)}.payroll-summary-card .metric-value{align-items:baseline;color:#111827;display:flex;font-size:28px;font-weight:700;gap:6px;justify-content:center;margin-bottom:4px}.payroll-summary-card .metric-percent{color:#6b7280;font-size:14px;font-weight:500}.payroll-summary-card .metric-label{color:#6b7280;font-size:13px;font-weight:500}.payroll-summary-card .metric-card.status-present{background:linear-gradient(135deg,#f0fdf4,#d1fae5);border-color:#10b981}.payroll-summary-card .metric-card.status-present .metric-value{color:#065f46}.payroll-summary-card .metric-card.status-pending{background:linear-gradient(135deg,#fff9e6,#fef3c7);border-color:#f59e0b}.payroll-summary-card .metric-card.status-pending .metric-value{color:#92400e}.payroll-summary-card .metric-card.status-absent{background:linear-gradient(135deg,#fee2e2,#fecaca);border-color:#ef4444}.payroll-summary-card .metric-card.status-absent .metric-value{color:#991b1b}.payroll-summary-card .metric-card.status-holiday{background:linear-gradient(135deg,#fff9e6,#fef3c7);border-color:#f39c12}.payroll-summary-card .metric-card.status-holiday .metric-value{color:#92400e}.payroll-summary-card .metric-card.status-rest{background:linear-gradient(135deg,#f3f4f6,#e5e7eb);border-color:#6b7280}.payroll-summary-card .metric-card.status-rest .metric-value{color:#374151}.payroll-summary-card .metric-card.status-late{background:linear-gradient(135deg,#fff2f2,#ffe4e4);border-color:#ce1126}.payroll-summary-card .metric-card.status-late .metric-value{color:#ce1126}.payroll-summary-card .metric-card.status-undertime{background:linear-gradient(135deg,#fff2f2,#ffe4e4);border-color:#ce1126}.payroll-summary-card .metric-card.status-undertime .metric-value{color:#ce1126}.payroll-summary-card .metric-sublabel{color:#9ca3af;display:block;font-size:11px;font-weight:400;margin-top:2px}.payroll-summary-card .metric-card.highlight-new{background:linear-gradient(135deg,#e6f0ff,#dbeafe);border-color:#3b82f6}.payroll-summary-card .metric-card.highlight-new .metric-value{color:#1e40af}.payroll-summary-card .metric-card.highlight-partial{background:linear-gradient(135deg,#fef3c7,#fde68a);border-color:#f59e0b}.payroll-summary-card .metric-card.highlight-partial .metric-value{color:#92400e}.payroll-summary-card .completion-overview{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:20px}.payroll-summary-card .completion-stat{text-align:center}.payroll-summary-card .stat-label{color:#6b7280;font-size:14px;margin-bottom:8px}.payroll-summary-card .stat-value{color:#111827;font-size:20px;font-weight:600;margin-bottom:16px}.payroll-summary-card .progress-bar{background:#e5e7eb;border-radius:6px;height:12px;margin-bottom:8px;overflow:hidden;width:100%}.payroll-summary-card .progress-fill{background:linear-gradient(90deg,#0038a8,#f39c12);border-radius:6px;height:100%;transition:width .3s ease}.payroll-summary-card .progress-label{color:#374151;font-size:14px;font-weight:600}.payroll-summary-card .coverage-list{display:flex;flex-direction:column;gap:12px}.payroll-summary-card .coverage-item{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:8px;display:flex;justify-content:space-between;padding:12px 16px;transition:all .2s ease}.payroll-summary-card .coverage-item:hover{background:#f9fafb;border-color:#0038a8}.payroll-summary-card .coverage-employee{align-items:center;display:flex;flex:1 1;gap:8px}.payroll-summary-card .employee-name{color:#111827;font-size:14px;font-weight:600}.payroll-summary-card .employee-id{color:#6b7280;font-size:13px}.payroll-summary-card .partial-badge{background:#fef3c7;border-radius:12px;color:#92400e;font-size:11px;font-weight:600;padding:2px 8px;text-transform:uppercase}.payroll-summary-card .missing-badge{background:#fee2e2;border-radius:12px;color:#991b1b;font-size:11px;font-weight:600;padding:2px 8px}.payroll-summary-card .coverage-stats{align-items:center;display:flex;gap:12px}.payroll-summary-card .coverage-days{color:#374151;font-size:13px;font-weight:500;min-width:180px}.payroll-summary-card .coverage-bar{background:#e5e7eb;border-radius:3px;height:6px;overflow:hidden;width:100px}.payroll-summary-card .coverage-fill{border-radius:3px;height:100%;transition:width .3s ease}.payroll-summary-card .coverage-percent{color:#374151;font-size:13px;font-weight:600;min-width:40px;text-align:right}.payroll-summary-card .summary-footer{border-top:1px solid #e5e7eb;margin-top:24px;padding-top:16px}.payroll-summary-card .footer-info,.payroll-summary-card .info-item{align-items:center;display:flex;gap:8px}.payroll-summary-card .info-item{color:#6b7280;font-size:13px}.payroll-summary-card .info-icon{font-size:16px}.payroll-summary-card .warning-note{align-items:center;background:#fff9e6;border-radius:6px;color:#f39c12;display:flex;font-size:13px;font-weight:500;gap:8px;margin-top:12px;padding:8px 12px}@media (max-width:768px){.payroll-summary-card{margin-bottom:20px;padding:20px}.payroll-summary-card .summary-header{align-items:flex-start;flex-direction:column;gap:12px;margin-bottom:20px;padding-bottom:12px}.payroll-summary-card .summary-header h2{font-size:18px}.payroll-summary-card .period-badge{font-size:13px;padding:5px 12px}.payroll-summary-card .summary-grid{gap:16px}.payroll-summary-card .summary-section{padding:16px}.payroll-summary-card .section-title{font-size:15px;margin-bottom:12px}.payroll-summary-card .section-icon{font-size:18px}.payroll-summary-card .metric-cards{gap:10px;grid-template-columns:repeat(2,1fr)}.payroll-summary-card .metric-card{padding:12px}.payroll-summary-card .metric-value{font-size:24px}.payroll-summary-card .metric-sublabel{font-size:10px}.payroll-summary-card .metric-label,.payroll-summary-card .metric-percent{font-size:12px}.payroll-summary-card .progress-bar{height:5px}.payroll-summary-card .warning-note{font-size:12px;padding:6px 10px}.payroll-summary-card .coverage-item{align-items:flex-start;flex-direction:column;gap:8px}.payroll-summary-card .coverage-stats{justify-content:space-between;width:100%}}@media (max-width:640px){.payroll-summary-card .metric-cards{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.payroll-summary-card{border-radius:8px;padding:16px}.payroll-summary-card .summary-header h2{font-size:16px}.payroll-summary-card .period-badge{font-size:12px;max-width:100%;overflow:hidden;padding:4px 10px;text-overflow:ellipsis;white-space:nowrap}.payroll-summary-card .summary-grid{gap:12px}.payroll-summary-card .summary-section{border-radius:8px;padding:14px}.payroll-summary-card .section-title{font-size:14px;margin-bottom:10px}.payroll-summary-card .section-icon{font-size:16px}.payroll-summary-card .metric-cards{gap:8px;grid-template-columns:1fr}.payroll-summary-card .metric-card{align-items:center;display:flex;flex-direction:row;justify-content:space-between;padding:10px;text-align:left}.payroll-summary-card .metric-value{align-items:flex-end;flex-direction:column;font-size:20px}.payroll-summary-card .metric-sublabel{display:block;font-size:9px;margin-top:2px}.payroll-summary-card .metric-percent{font-size:11px}.payroll-summary-card .metric-label{font-size:11px;order:-1}.payroll-summary-card .completion-stat{padding:12px}.payroll-summary-card .stat-label{font-size:12px}.payroll-summary-card .stat-value{font-size:16px}.payroll-summary-card .progress-bar{height:4px}.payroll-summary-card .progress-label{font-size:11px}.payroll-summary-card .warning-note{font-size:11px;padding:5px 8px}.payroll-summary-card .coverage-employee{flex-wrap:wrap}.payroll-summary-card .coverage-days{font-size:11px;min-width:auto}.payroll-summary-card .coverage-bar{height:5px;width:80px}.payroll-summary-card .coverage-percent{font-size:11px}}@media (max-width:375px){.payroll-summary-card{padding:12px}.payroll-summary-card .summary-header{gap:8px;margin-bottom:16px;padding-bottom:10px}.payroll-summary-card .summary-header h2{font-size:15px}.payroll-summary-card .period-badge{font-size:11px;padding:3px 8px}.payroll-summary-card .summary-grid{gap:10px}.payroll-summary-card .summary-section{padding:12px}.payroll-summary-card .section-title{font-size:13px}.payroll-summary-card .metric-card{padding:8px}.payroll-summary-card .metric-value{font-size:18px}.payroll-summary-card .metric-label{font-size:10px}.payroll-summary-card .footer-info{font-size:11px}.payroll-summary-card .info-icon{font-size:14px}}@media (max-width:320px){.payroll-summary-card{padding:10px}.payroll-summary-card .summary-header h2{font-size:14px}.payroll-summary-card .metric-value{font-size:16px}.payroll-summary-card .section-icon{display:none}}.payroll-process-container{margin:0 auto;max-width:1400px;padding:20px}.payroll-header{align-items:center;border-bottom:2px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:30px;padding-bottom:20px}.payroll-header h1{color:#0038a8;font-size:28px;margin:0}.payroll-header-info{align-items:center;display:flex;gap:20px}.company-name{color:#374151;font-weight:600}.run-id{background:#e6f0ff;border-radius:6px;color:#0038a8;font-family:JetBrains Mono,monospace;font-size:14px;padding:5px 12px}.stepper-container{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:30px;padding:30px 40px;position:relative}.progress-bar{background:#e5e7eb;border-radius:4px;height:8px;left:40px;overflow:hidden;position:absolute;right:40px;top:65px}.progress-bar-fill{background:linear-gradient(135deg,#0038a8,#f39c12);border-radius:4px;height:100%;position:relative;transition:width .3s ease}.progress-bar-fill:after{animation:shimmer 2s infinite;background:linear-gradient(90deg,#0000,#ffffff4d);bottom:0;content:"";position:absolute;right:0;top:0;width:20px}@keyframes shimmer{0%{transform:translateX(-20px)}to{transform:translateX(20px)}}.stepper{align-items:flex-start;justify-content:space-between}.stepper,.stepper-step{display:flex;position:relative;z-index:1}.stepper-step{align-items:center;flex:1 1;flex-direction:column;gap:12px}.stepper-step__indicator{align-items:center;background:#fff;border:2px solid #d1d5db;border-radius:50%;color:#6b7280;display:flex;font-size:16px;font-weight:600;height:48px;justify-content:center;margin-bottom:8px;transition:all .3s ease;width:48px}.stepper-step--active .stepper-step__indicator{background:#0038a8;border-color:#0038a8;box-shadow:0 0 0 4px #0038a81a;color:#fff}.stepper-step--completed .stepper-step__indicator{background:#10b981;border-color:#10b981;color:#fff}.stepper-step__label{color:#6b7280;font-size:13px;font-weight:500;max-width:100px;text-align:center}.stepper-step--active .stepper-step__label{color:#0038a8;font-weight:600}.stepper-step--completed .stepper-step__label{color:#10b981}.error-banner,.processing-status{margin-bottom:20px;padding:12px 20px}.processing-status{align-items:center;background:#dbeafe;border-radius:8px;color:#3b82f6;display:flex;gap:10px}.processing-status .spinner{animation:spin 1s linear infinite;border:2px solid #3b82f6;border-radius:50%;border-top-color:#0000;height:16px;width:16px}.payroll-content{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;min-height:400px;padding:30px}.payroll-navigation{align-items:center;display:flex;justify-content:space-between;margin-top:30px;padding-top:20px}.payroll-period-selector{width:100%}.selector-header{margin-bottom:20px}.frequency-info{color:#6b7280;margin-top:10px}.last-processed-info{background:#fff9e6;border-radius:8px;color:#f39c12;margin-bottom:20px;padding:10px 15px}.period-options{grid-gap:30px;display:grid;gap:30px;grid-template-columns:2fr 1fr}.period-list{max-height:400px;overflow-y:auto}.period-item{border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;margin-bottom:10px;padding:15px;transition:all .2s}.period-item:hover{background:#f9fafb;border-color:#0038a8}.period-item.selected{background:#e6f0ff;border-color:#0038a8}.period-item.current{border-color:#10b981}.period-item.processed{background:#f3f4f6;opacity:.7}.period-item.unprocessed{border-color:#f59e0b}.period-meta{align-items:center;display:flex;gap:10px;margin-top:8px}.badge{padding:2px 8px}.badge.current{background:#d1fae5;color:#10b981}.badge.processed{background:#e5e7eb;color:#6b7280}.badge.warning{background:#fef3c7;color:#f59e0b}.badge.success{background:#d1fae5;color:#10b981}.badge.error{background:#fee2e2;color:#ef4444}.badge.pending{background:#fef3c7;color:#f59e0b}.custom-period{background:#f9fafb;border-radius:8px;padding:20px}.custom-controls{display:flex;flex-direction:column;gap:15px}.period-summary{background:#e6f0ff;border:2px solid #0038a8;border-radius:8px;margin-top:30px;padding:20px}.summary-details{grid-gap:15px;display:grid;gap:15px;grid-template-columns:1fr 1fr;margin:20px 0}.detail-item{display:flex;justify-content:space-between}.detail-item label{font-weight:500}.payroll-validation{width:100%}.validation-summary{margin:30px 0}.summary-card{border-radius:8px;display:flex;justify-content:space-around;margin-bottom:20px}.summary-stat{text-align:center}.stat-value{color:#374151;display:block;font-size:32px;font-weight:600}.stat-label{color:#6b7280;display:block;font-size:14px;margin-top:5px}.summary-stat.success .stat-value{color:#10b981}.summary-stat.error .stat-value{color:#ef4444}.issue-breakdown{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:20px}.breakdown-list{display:flex;flex-direction:column;gap:12px;margin-top:15px}.breakdown-item{display:flex;gap:10px}.breakdown-item .count{font-size:24px;font-weight:600}.breakdown-item.error .count{color:#ef4444}.breakdown-item.warning .count{color:#f59e0b}.employee-payroll-list{width:100%}.list-controls{background:#f9fafb;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:20px;padding:15px}.filter-controls{display:flex;gap:15px}.search-box input{width:250px}.department-filter select,.search-box input{border:1px solid #d1d5db;border-radius:6px;padding:8px 12px}.employee-table{overflow-x:auto}.employee-table table{border-collapse:collapse;width:100%}.employee-table th{background:#f9fafb;border-bottom:2px solid #e5e7eb;color:#374151;font-weight:600;padding:12px;text-align:left}.employee-table th.sortable{cursor:pointer}.employee-table th.sortable:hover{background:#f3f4f6}.employee-table td{border-bottom:1px solid #e5e7eb;padding:12px}.employee-table tr.selected{background:#e6f0ff}.employee-table .numeric{font-family:JetBrains Mono,monospace;text-align:right}.employee-table .currency{color:#374151;font-weight:500}.employee-table .net-pay{color:#10b981;font-weight:600}.employee-details{background:#f9fafb;padding:20px}.details-section{margin-bottom:20px}.details-section h4{color:#0038a8;margin-bottom:15px}.details-grid{grid-gap:15px;gap:15px;grid-template-columns:repeat(3,1fr)}.overtime-approval{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:24px;width:100%}.overtime-approval .approval-header{align-items:center;border-bottom:2px solid #e6f0ff;display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.overtime-approval .approval-header h2{color:#0038a8;font-size:24px;font-weight:600;margin:0}.overtime-approval .period-info{background:linear-gradient(135deg,#0038a8,#002c7f);border-radius:20px;color:#fff;font-size:14px;font-weight:500;padding:6px 16px}.overtime-approval .approval-summary{margin-bottom:24px}.overtime-approval .summary-card{align-items:center;background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px;display:flex;justify-content:space-around;padding:20px}.overtime-approval .summary-stat{text-align:center}.overtime-approval .stat-value{color:#0038a8;display:block;font-size:32px;font-weight:700;margin-bottom:4px}.overtime-approval .stat-label{color:#6b7280;font-size:13px;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.approval-controls{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:20px;padding:16px}.filter-tabs{gap:10px}.tab{background:#fff;border:2px solid #e5e7eb;border-radius:8px;color:#6b7280;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s}.tab:hover{background:#e6f0ff;border-color:#0038a8;color:#0038a8}.tab.active{background:linear-gradient(135deg,#0038a8,#002c7f);border-color:#0038a8;box-shadow:0 2px 8px #0038a833;color:#fff}.bulk-actions{align-items:center}.bulk-actions span{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#374151;font-weight:600;padding:6px 12px}.overtime-table{background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 1px 3px #0000000d;overflow-x:auto}.overtime-table table{border-collapse:initial;border-spacing:0;width:100%}.overtime-table th{background:linear-gradient(180deg,#e6f0ff,#dbeafe);border-bottom:2px solid #0038a8;color:#0038a8;font-size:13px;font-weight:600;letter-spacing:.5px;padding:14px 16px;position:-webkit-sticky;position:sticky;text-align:left;text-transform:uppercase;top:0;z-index:10}.overtime-table th:first-child{border-top-left-radius:10px}.overtime-table th:last-child{border-top-right-radius:10px}.overtime-table td{border-bottom:1px solid #e5e7eb;font-size:14px;padding:14px 16px}.overtime-table tbody tr{transition:all .2s}.overtime-table tbody tr:hover{background:#f9fafb}.overtime-table tbody tr:last-child td{border-bottom:none}.overtime-table .numeric{font-family:JetBrains Mono,monospace;font-weight:500;text-align:right}.overtime-table .hourly-rate{color:#6b7280;font-size:13px}.overtime-table .currency{color:#10b981;font-size:15px;font-weight:600}.employee-info{gap:2px}.employee-name{color:#111827;font-size:14px;font-weight:600}.employee-code{color:#6b7280;font-family:JetBrains Mono,monospace;font-size:12px}.overtime-table .reason{max-width:200px}.overtime-table .no-reason{color:#9ca3af;font-size:13px;font-style:italic}.add-reason-btn{background:linear-gradient(135deg,#e6f0ff,#fff9e6);border:1px solid #0038a8;border-radius:4px;color:#0038a8;cursor:pointer;font-size:12px;font-weight:500;padding:4px 12px;transition:all .2s}.add-reason-btn:hover{background:#0038a8;color:#fff;transform:scale(1.05)}.action-buttons{gap:6px;justify-content:center}.btn-icon{align-items:center;background:#fff;border:1px solid #0000;border-radius:6px;display:flex;height:32px;justify-content:center;width:32px}.btn-icon.approve{border-color:#10b981}.btn-icon.approve:hover{background:#10b981;box-shadow:0 2px 8px #10b9814d;color:#fff;transform:scale(1.1)}.btn-icon.reject{border-color:#ce1126;color:#ce1126}.btn-icon.reject:hover{background:#ce1126;box-shadow:0 2px 8px #ce11264d;color:#fff;transform:scale(1.1)}.btn-icon.edit{border-color:#0038a8;color:#0038a8}.btn-icon.edit:hover{background:#0038a8;box-shadow:0 2px 8px #0038a84d;color:#fff;transform:scale(1.1)}.overtime-rates-info{background:linear-gradient(135deg,#e6f0ff,#fff9e6);border:1px solid #0038a8;border-radius:10px;margin-top:30px;padding:20px}.overtime-rates-info h3{color:#0038a8;font-size:18px;font-weight:600;margin:0 0 16px}.rates-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.rate-item{align-items:center;background:#fff;border:1px solid #d1d5db;border-radius:6px;display:flex;justify-content:space-between;padding:12px;transition:all .2s}.rate-item:hover{border-color:#0038a8;box-shadow:0 2px 4px #0038a81a}.rate-item label{color:#374151;font-size:14px;font-weight:500}.rate-item span{color:#0038a8;font-family:JetBrains Mono,monospace;font-size:16px;font-weight:600}.overtime-table .empty-state{color:#6b7280;padding:40px;text-align:center}.overtime-table .empty-state p{font-size:16px;margin:0}.manual-adjustments{width:100%}.adjustment-form-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.adjustment-form{background:#fff;border-radius:12px;max-height:90vh;max-width:600px;overflow-y:auto;width:90%}.form-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:20px}.close-btn{background:none;border:none;color:#6b7280;cursor:pointer;font-size:24px}.form-content{padding:20px}.form-group{margin-bottom:20px}.form-group label{color:#374151;display:block;font-weight:500;margin-bottom:8px}.form-group input,.form-group select,.form-group textarea{border:1px solid #d1d5db;border-radius:6px;padding:8px 12px;width:100%}.radio-group{display:flex;gap:20px}.radio-label{align-items:center;cursor:pointer;display:flex;gap:8px}.employee-dropdown{background:#fff;border:1px solid #d1d5db;border-radius:6px;box-shadow:0 4px 6px #0000001a;left:0;margin-top:4px;position:absolute;right:0;top:100%;z-index:10}.employee-option{cursor:pointer;padding:10px}.employee-option:hover{background:#f9fafb}.form-actions{display:flex;gap:10px;justify-content:flex-end}.adjustment-templates,.form-actions{margin-top:30px}.templates-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(3,1fr);margin-top:15px}.template-btn{background:#f9fafb;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;padding:10px;transition:all .2s}.template-btn:hover{background:#e6f0ff;border-color:#0038a8}.view-tabs{display:flex;gap:10px;margin-bottom:30px}.overview-section{width:100%}.summary-cards-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(3,1fr);margin-bottom:24px}.payroll-summary .summary-card{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000000d;display:flex;gap:16px;padding:20px;transition:all .3s ease}.payroll-summary .summary-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.payroll-summary .summary-card.earnings-card{border-left:4px solid #10b981}.payroll-summary .summary-card.deductions-card{border-left:4px solid #ef4444}.payroll-summary .summary-card.net-pay-card{background:linear-gradient(135deg,#e6f0ff,#fff9e6);border-left:4px solid #0038a8}.payroll-summary .card-icon{font-size:32px;opacity:.8}.payroll-summary .card-details{display:flex;flex:1 1;flex-direction:column;gap:4px}.payroll-summary .card-label{color:#6b7280;font-size:13px;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.payroll-summary .card-value{color:#111827;font-family:JetBrains Mono,monospace;font-size:24px;font-weight:700}.payroll-summary .card-value.negative{color:#ef4444}.payroll-summary .card-value.highlight{color:#0038a8}.payroll-summary .employee-stats-bar{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:12px;display:flex;justify-content:space-around;margin-bottom:30px;padding:20px}.payroll-summary .stats-item{align-items:center;display:flex;gap:12px}.payroll-summary .stats-icon{font-size:28px;opacity:.7}.payroll-summary .stats-details{display:flex;flex-direction:column;gap:4px}.payroll-summary .stats-value{color:#111827;font-size:20px;font-weight:600}.payroll-summary .stats-label{color:#6b7280;font-size:13px;letter-spacing:.5px;text-transform:uppercase}.payroll-summary .stats-divider{background:#e5e7eb;height:40px;width:1px}.card-header h3{font-size:16px;margin:0 0 15px;opacity:.9;text-transform:uppercase}.main-stat{margin-bottom:20px}.stat-value.large{font-size:42px}.sub-stats{grid-gap:15px;border-top:1px solid #fff3;display:grid;gap:15px;grid-template-columns:1fr 1fr;padding-top:15px}.sub-stat{display:flex;flex-direction:column}.sub-stat .label{font-size:12px;margin-bottom:4px;opacity:.8}.sub-stat .value{font-size:18px;font-weight:600}.sub-stat .value.negative{color:#fca5a5}.breakdown-section{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr}.breakdown-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:20px}.breakdown-card h3{color:#374151;margin-bottom:20px}.payroll-summary .breakdown-header{align-items:center;border-bottom:2px solid #e6f0ff;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:12px}.payroll-summary .breakdown-header h3{align-items:center;color:#0038a8;display:flex;font-size:18px;font-weight:600;gap:8px;margin:0}.payroll-summary .section-icon{font-size:20px}.payroll-summary .total-amount{color:#111827;font-family:JetBrains Mono,monospace;font-size:18px;font-weight:600}.payroll-summary .total-amount.negative{color:#ef4444}.breakdown-item{align-items:center;display:grid;grid-template-columns:150px 1fr 100px;margin-bottom:15px}.item-bar{background:#f3f4f6;border-radius:4px;height:24px;overflow:hidden}.bar-fill{height:100%;transition:width .3s}.bar-fill.earnings{background:linear-gradient(90deg,#10b981,#059669)}.bar-fill.deductions{background:linear-gradient(90deg,#ef4444,#dc2626)}.item-value{font-family:JetBrains Mono,monospace;font-weight:500;text-align:right}.department-table{width:100%}.department-table table{border-collapse:collapse;width:100%}.department-table td,.department-table th{padding:12px;text-align:left}.department-table th{background:#f9fafb;border-bottom:2px solid #e5e7eb;color:#374151;font-weight:600}.department-table tfoot{background:#f9fafb;border-top:2px solid #e5e7eb;font-weight:600}.percentage{color:#6b7280}.employee-highlights{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr}.highlight-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:20px}.employee-list{margin-top:15px}.employee-item{align-items:center;background:#f9fafb;border-radius:6px;display:flex;justify-content:space-between;margin-bottom:8px;padding:10px}.employee-item.issue{background:#fef3c7}.rank{color:#0038a8;font-size:18px;font-weight:600;margin-right:15px}.employee-amount{color:#10b981;font-family:JetBrains Mono,monospace;font-weight:600}.issue-type{color:#f59e0b;font-size:14px}.no-issues{color:#10b981;padding:30px;text-align:center}.payroll-actions{width:100%}.pre-process-checklist{background:#f9fafb;border-radius:8px;margin-bottom:30px;padding:20px}.checklist-items{grid-gap:15px;display:grid;gap:15px;grid-template-columns:1fr 1fr;margin-top:15px}.checklist-item{align-items:center;display:flex;gap:10px}.checklist-item.completed .check-label{color:#10b981}.payroll-totals{background:#fff;border:2px solid #e5e7eb;border-radius:8px;margin-bottom:30px;padding:20px}.totals-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(2,1fr);margin-top:15px}.total-item{background:#f9fafb;border-radius:6px;display:flex;justify-content:space-between;padding:10px}.total-item.highlight{background:#e6f0ff;border:2px solid #0038a8}.total-item .value{font-family:JetBrains Mono,monospace;font-weight:600}.total-item .value.large{color:#0038a8;font-size:24px}.total-item .value.negative{color:#ef4444}.action-buttons{flex-direction:column;gap:30px}.primary-actions{display:flex;gap:20px;justify-content:center}.export-actions{background:#f9fafb;border-radius:8px;padding:20px}.export-buttons{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(4,1fr);margin-top:15px}.export-btn{align-items:center;background:#fff;border:1px solid #d1d5db;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;gap:8px;padding:15px;transition:all .2s}.export-btn:hover{background:#e6f0ff;border-color:#0038a8}.export-btn:disabled{cursor:not-allowed;opacity:.5}.export-btn .icon{font-size:24px}.confirm-dialog-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.confirm-dialog{background:#fff;border-radius:12px;max-height:90vh;max-width:600px;overflow-y:auto;width:90%}.dialog-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:20px}.dialog-content{padding:20px}.warning-message{background:#fef3c7;border-radius:8px;display:flex;gap:15px;margin-bottom:20px;padding:15px}.warning-icon{font-size:24px}.confirmation-details{background:#f9fafb;border-radius:8px;margin-bottom:20px;padding:15px}.detail-list{margin-top:10px}.important-notes{margin-bottom:20px}.important-notes ul{margin-left:20px;margin-top:10px}.dialog-actions{border-top:1px solid #e5e7eb;display:flex;gap:10px;justify-content:flex-end;padding:20px}.payroll-audit-log{border:1px solid #e5e7eb;border-radius:8px;margin-top:30px;overflow:hidden}.audit-header{background:#f9fafb;border-bottom:1px solid #e5e7eb;justify-content:space-between;padding:15px 20px}.audit-header,.expand-toggle{align-items:center;display:flex}.expand-toggle{background:none;border:none;color:#374151;cursor:pointer;font-size:16px;font-weight:500;gap:10px}.toggle-icon{transition:transform .2s}.audit-controls{display:flex;gap:10px}.filter-select{border:1px solid #d1d5db;border-radius:6px;padding:6px 12px}.audit-content{padding:20px}.audit-entries{margin-bottom:20px;max-height:400px;overflow-y:auto}.audit-entry{background:#f9fafb;border-radius:6px;cursor:pointer;margin-bottom:10px;padding:15px;transition:all .2s}.audit-entry:hover{background:#f3f4f6}.audit-entry.selected{background:#e6f0ff;border:1px solid #0038a8}.entry-header{align-items:center;display:flex;gap:10px;margin-bottom:5px}.entry-icon{font-size:18px}.entry-action{color:#374151;font-weight:500}.entry-timestamp{margin-left:auto}.entry-meta,.entry-timestamp{color:#6b7280;font-size:14px}.entry-details{background:#fff;border-radius:4px;margin-top:10px;padding:10px}.entry-details pre{word-wrap:break-word;font-size:12px;margin:0;white-space:pre-wrap}.audit-summary{background:#fff;border:1px solid #e5e7eb;border-radius:6px;display:flex;justify-content:space-between;padding:15px}.summary-item{display:flex;flex-direction:column}.summary-item .label{color:#6b7280;font-size:12px;margin-bottom:4px}.summary-item .value{color:#374151;font-weight:500}.help-section{background:#f9fafb;border-radius:8px;margin-top:30px;padding:20px}.help-links{display:flex;gap:20px;margin-top:10px}.help-link{align-items:center;color:#0038a8;display:flex;gap:8px;text-decoration:none}.help-link:hover{text-decoration:underline}.nav-right-buttons{align-items:center;display:flex;gap:12px}.btn-primary{background:#0038a8;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:500;padding:10px 20px;transition:all .2s}.btn-primary:hover{background:#002c7f}.btn-primary.disabled,.btn-primary:disabled{background:#d1d5db;cursor:not-allowed}.btn-primary.with-warning{background:#f59e0b}.btn-primary.with-warning:hover{background:#d97706}.btn-outline,.btn-secondary{padding:10px 20px}.btn-outline{background:#fff;border:2px solid #0038a8;border-radius:8px;color:#0038a8;cursor:pointer;font-weight:500;transition:all .3s ease}.btn-outline:hover{background:#e6f0ff}.btn-outline:disabled{cursor:not-allowed;opacity:.5}.btn-success{background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:500;padding:10px 24px;transition:all .3s ease}.btn-success:hover{box-shadow:0 4px 12px #10b9814d;transform:translateY(-2px)}.btn-success:disabled{cursor:not-allowed;opacity:.5;transform:none}.btn-danger{background:#ef4444;border:none;border-radius:6px;color:#fff;cursor:pointer;padding:8px 16px}.btn-danger:hover{background:#dc2626}.btn-icon{background:none;border:none;cursor:pointer;font-size:16px;padding:4px 8px;transition:all .2s}.btn-icon:hover{background:#f3f4f6;border-radius:4px}.btn-icon.approve{color:#10b981}.btn-icon.reject{color:#ef4444}.btn-icon.edit{color:#3b82f6}.btn-icon.delete{color:#ef4444}.loading{color:#6b7280;padding:40px;text-align:center}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #e5e7eb;border-radius:50%;border-top-color:#0038a8;display:inline-block;height:40px;margin:40px auto;width:40px}.empty-state{color:#6b7280;padding:40px}.empty-state p{margin-bottom:20px}.status-wrapper{align-items:center;display:inline-flex;gap:8px;position:relative}.status-tooltip{display:inline-block;position:relative}.tooltip-icon{cursor:help;font-size:14px;opacity:.7;transition:opacity .2s ease}.status-tooltip:hover .tooltip-icon{opacity:1}.tooltip-content{background:var(--gray-900);border-radius:8px;bottom:100%;box-shadow:0 4px 12px #0003;color:#fff;font-size:13px;left:50%;line-height:1.4;opacity:0;padding:12px;pointer-events:none;position:absolute;transform:translateX(-50%) translateY(-8px);transition:opacity .3s ease,visibility .3s ease;visibility:hidden;width:280px;z-index:1000}.status-tooltip:hover .tooltip-content{opacity:1;visibility:visible}.tooltip-content:after{border-left:6px solid #0000;border-right:6px solid #0000;border-top:6px solid var(--gray-900);content:"";height:0;left:50%;position:absolute;top:100%;transform:translateX(-50%);width:0}.tooltip-header{border-bottom:1px solid #fff3;font-weight:600;margin-bottom:4px;padding-bottom:4px}.tooltip-header:not(:first-child){margin-top:8px}.tooltip-item{margin-left:8px;margin-top:2px;opacity:.9}.badge{border-radius:4px;font-size:12px;font-weight:500;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.badge.ready,.badge.success{background:var(--success-light);border:1px solid var(--success);color:var(--success)}.badge.warning{background:var(--warning-light);border:1px solid var(--warning);color:var(--warning)}.badge.pending{background:var(--gray-100);border:1px solid var(--gray-300);color:var(--gray-600)}.badge.error{background:var(--error-light);border:1px solid var(--error);color:var(--error)}.calculation-display-section{border-top:2px solid var(--gray-200);margin-top:30px;padding-top:30px}.toggle-calculations-btn{align-items:center;background:var(--philippine-blue);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;margin:0 auto;padding:12px 24px;transition:all .3s ease}.toggle-calculations-btn:hover{background:var(--philippine-blue-dark);box-shadow:0 4px 12px #0038a833;transform:translateY(-1px)}.btn-icon{font-size:18px}.calculations-panel{animation:slideDown .3s ease;background:#f9fafb;border-radius:12px;margin-top:30px;padding:30px}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.panel-title{color:var(--philippine-blue-dark);font-size:20px;margin:0 0 25px;text-align:center}.formula-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-bottom:30px}.formula-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:20px;transition:all .3s ease}.formula-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.formula-card.highlight{background:var(--philippine-blue-light);border-color:var(--philippine-blue)}.formula-card h4{color:var(--philippine-blue-dark);font-size:16px;font-weight:600;margin:0 0 12px}.formula{background:#f3f4f6;border-radius:6px;margin-bottom:12px;padding:12px}.formula code{color:var(--gray-800);display:block;font-family:JetBrains Mono,Courier New,monospace;font-size:13px;line-height:1.5}.formula-example{color:var(--gray-600);display:flex;flex-direction:column;font-size:13px;gap:4px;margin-bottom:12px}.example-label{color:var(--gray-700);font-weight:600}.formula-note{background:var(--philippine-yellow-light);border-left:3px solid var(--philippine-yellow);border-radius:4px;color:var(--gray-700);font-size:12px;line-height:1.4;padding:8px}.formula-footer{border-top:1px solid #e5e7eb;padding-top:20px}.info-note{align-items:flex-start;background:#fff;border:1px solid var(--philippine-blue);border-radius:8px;display:flex;gap:10px;padding:15px}.note-icon{flex-shrink:0;font-size:20px}.info-note span:last-child{color:var(--gray-700);font-size:14px;line-height:1.5}@media (max-width:1024px){.payroll-summary .summary-cards-grid{grid-template-columns:1fr}.payroll-summary .employee-stats-bar{align-items:stretch;flex-direction:column;gap:16px}.payroll-summary .stats-divider{height:1px;width:100%}.payroll-summary .stats-item{justify-content:center}}@media (max-width:768px){.stepper-container{padding:20px}.stepper{flex-direction:column;gap:20px}.stepper-step{flex-direction:row;gap:15px;width:100%}.stepper-step__indicator{font-size:14px;height:40px;margin-bottom:0;width:40px}.stepper-step__label{flex:1 1;max-width:none;text-align:left}.progress-bar{display:none}.period-options,.summary-details{grid-template-columns:1fr}.filter-controls{flex-direction:column}.search-box input{width:100%}.checklist-items,.details-grid,.totals-grid{grid-template-columns:1fr}.export-buttons{grid-template-columns:repeat(2,1fr)}.breakdown-section,.employee-highlights,.templates-grid{grid-template-columns:1fr}}.payroll-summary .summary-info-badges{align-items:center;display:flex;gap:12px}.payroll-summary .info-badge{align-items:center;background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;color:#6b7280;display:inline-flex;font-size:13px;font-weight:500;gap:6px;padding:6px 12px}.payroll-summary .badge-icon{font-size:14px}.payroll-summary .td-adjustments .positive{color:#10b981}.payroll-summary .td-adjustments .negative{color:#ef4444}.overtime-calculation{width:100%}.overtime-calculation .th-holiday,.overtime-calculation .th-night-diff,.overtime-calculation .th-overtime{text-align:center!important;width:120px}.overtime-calculation .td-hours{min-height:60px;padding:8px 4px;text-align:center;vertical-align:middle}.overtime-calculation .td-hours.td-empty{background:#f9fafb}.overtime-calculation .td-holiday,.overtime-calculation .td-night-diff,.overtime-calculation .td-overtime{font-family:JetBrains Mono,monospace;font-size:13px;font-weight:500;text-align:center}.hours-badges-container{align-items:center;display:flex;flex-direction:column;gap:2px}.hours-badge{border-radius:4px;cursor:default;display:inline-block;font-size:10px;font-weight:600;padding:2px 6px;white-space:nowrap}.hours-badge.overtime{background:#dbeafe;border:1px solid #93c5fd;color:#1e40af}.hours-badge.night-diff{background:#ede9fe;border:1px solid #c4b5fd;color:#6b21a8}.hours-badge.holiday-regular{background:#fef3c7;border:1px solid #fcd34d;color:#92400e}.hours-badge.holiday-special{background:#fed7aa;border:1px solid #fb923c;color:#9a3412}.overtime-legend{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin-top:24px;padding:16px}.overtime-legend h4{color:#374151;font-size:14px;font-weight:600;letter-spacing:.5px;margin:0 0 12px;text-transform:uppercase}.legend-items{display:flex;flex-wrap:wrap;gap:16px}.legend-item{align-items:center;color:#6b7280;display:flex;font-size:13px;gap:8px}.deductions-calculation{width:100%}.deductions-calculation .th-deduction{text-align:center!important;width:120px}.deductions-calculation .th-total{background:linear-gradient(135deg,#e6f0ff,#dbeafe);text-align:center!important;width:140px}.deductions-calculation .td-deduction{color:#374151;font-family:JetBrains Mono,monospace;font-size:13px;font-weight:500;text-align:center}.deductions-calculation .td-total{background:#f9fafb;color:#0038a8;font-family:JetBrains Mono,monospace;font-size:14px;font-weight:600;text-align:center}.legend-item .hours-badge{margin-right:4px}.overtime-calculation .rates-note{align-items:center;color:#10b981;display:flex;font-size:12px;gap:4px;margin-top:8px}.payroll-list-container{margin:0 auto;max-width:1400px;padding:24px}.payroll-list-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:32px}.payroll-list-header h1{color:#111827;font-size:32px;font-weight:600;margin:0 0 8px}.payroll-list-header .subtitle{color:#6b7280;font-size:14px;margin:0}.payroll-filters{margin-bottom:24px}.filter-tabs{border-bottom:2px solid #e5e7eb;display:flex;gap:0}.filter-tab{background:none;border:none;border-bottom:3px solid #0000;color:#6b7280;cursor:pointer;font-size:14px;font-weight:500;margin-bottom:-2px;padding:12px 24px;position:relative;transition:all .2s}.filter-tab:hover{color:#0038a8}.filter-tab.active{border-bottom-color:#0038a8;color:#0038a8}.payroll-list{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.payroll-table{border-collapse:collapse;width:100%}.payroll-table thead{background:#f9fafb;border-bottom:2px solid #e5e7eb}.payroll-table th{color:#6b7280;font-size:12px;font-weight:600;letter-spacing:.5px;padding:16px;text-align:left;text-transform:uppercase}.payroll-table tbody tr{border-bottom:1px solid #f3f4f6;transition:background-color .2s}.payroll-table tbody tr:hover{background:#f9fafb}.td-period,.th-period{width:25%}.td-frequency,.th-frequency{width:12%}.td-status,.th-status{width:13%}.td-employees,.th-employees{text-align:center;width:10%}.td-net-pay,.th-net-pay{text-align:right;width:15%}.td-modified,.th-modified{width:15%}.td-actions,.th-actions{text-align:right;width:10%}.payroll-table td{color:#374151;font-size:14px;padding:16px}.period-info{display:flex;flex-direction:column;gap:4px}.period-info .period-dates{color:#111827;font-size:14px;font-weight:600}.period-info .run-id{color:#0038a8;font-family:JetBrains Mono,monospace;font-size:12px}.frequency-value{color:#374151;font-size:14px;text-transform:capitalize}.status-badge{align-items:center;border:2px solid #0000;border-radius:20px;display:inline-flex;font-size:13px;font-weight:500;gap:6px;padding:6px 12px}.status-badge.status-completed{background:#d1fae5;border-color:#10b981;color:#10b981}.status-badge.status-draft{background:#fff9e6;border-color:#f39c12;color:#f39c12}.status-icon{font-size:14px}.status-text{font-weight:500}.td-employees,.td-net-pay{color:#111827;font-weight:600}.td-net-pay{font-size:15px}.td-modified{color:#6b7280;font-size:13px}.action-buttons{display:flex;gap:8px;justify-content:flex-end}.btn-action{border:1px solid;padding:6px 16px;transition:all .2s}.btn-view{border-color:#0038a8}.btn-view:hover{background:#e6f0ff}.btn-resume{background:#fff;border-color:#d1d5db;color:#0038a8}.btn-resume:hover{background:#e6f0ff;border-color:#0038a8}.btn-delete{background:#fff;border-color:#d1d5db;color:#ef4444}.btn-delete:hover{background:#fee2e2;border-color:#ef4444}.empty-state{background:#fff;border-radius:12px;padding:60px 20px;text-align:center}.empty-state .empty-icon{font-size:48px;margin-bottom:16px}.empty-state h3{color:#111827;font-size:20px;margin:0 0 8px}.empty-state p{color:#6b7280;margin:0 0 24px}.loading-state{background:#fff;border-radius:12px;padding:60px;text-align:center}.error-banner{background:#fee2e2;border:1px solid #ef4444;border-radius:8px;justify-content:space-between;margin-bottom:24px;padding:12px 16px}.error-banner,.error-banner button{align-items:center;color:#ef4444;display:flex}.error-banner button{background:none;border:none;cursor:pointer;font-size:20px;height:24px;justify-content:center;padding:0;width:24px}.payroll-detail-container{margin:0 auto;max-width:1400px;padding:24px}.payroll-detail-header{margin-bottom:32px}.breadcrumb-link{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:8px;color:#6b7280;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:8px;margin-bottom:24px;padding:8px 16px;text-decoration:none;transition:all .2s}.breadcrumb-link:hover{background:#f9fafb;border-color:#0038a8;color:#0038a8}.payroll-detail-header h1{color:#111827;font-size:32px;font-weight:600;margin:0 0 16px}.header-status-info{align-items:center;display:flex;gap:24px}.status-badge-large{align-items:center;border:2px solid;border-radius:24px;display:inline-flex;font-size:16px;font-weight:600;gap:8px;padding:10px 20px}.status-badge-large.status-completed{background:#d1fae5;border-color:#10b981;color:#10b981}.status-badge-large.status-draft{background:#fff9e6;border-color:#f39c12;color:#f39c12}.period-info-large{align-items:center;display:flex;gap:16px}.period-dates{border:2px solid #0038a8;border-radius:8px;color:#111827;font-weight:600}.frequency-label,.period-dates{background:#e6f0ff;font-size:16px;padding:10px 20px}.frequency-label{border:1px solid #d1d5db;border-radius:8px;color:#0038a8;font-weight:500;text-transform:capitalize}.detail-tabs{border-bottom:2px solid #e5e7eb;display:flex;gap:0;margin-bottom:24px}.tab-button{background:none;border:none;border-bottom:3px solid #0000;color:#6b7280;cursor:pointer;font-size:14px;font-weight:500;margin-bottom:-2px;padding:12px 24px;position:relative;transition:all .2s}.tab-button:hover{color:#0038a8}.tab-button.active{border-bottom-color:#0038a8;color:#0038a8}.detail-content{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:24px}.summary-section{padding:0}.summary-cards{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:32px}.summary-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;padding:20px}.summary-card h3{color:#6b7280;font-size:14px;font-weight:500;letter-spacing:.5px;margin:0 0 12px;text-transform:uppercase}.summary-card .summary-value{color:#111827;font-size:28px;font-weight:700;margin:0}.summary-card.highlight{background:linear-gradient(135deg,#e6f0ff,#fff9e6);border-color:#0038a8}.summary-card .summary-value.negative{color:#ef4444}.deduction-breakdown{background:#fafafa;border-radius:12px;padding:20px}.deduction-breakdown h3{color:#111827;font-size:18px;font-weight:600;margin:0 0 16px}.breakdown-table{border-collapse:collapse;width:100%}.breakdown-table th{background:#f3f4f6;color:#6b7280;font-size:12px;font-weight:600;letter-spacing:.5px;padding:12px;text-align:left;text-transform:uppercase}.breakdown-table td{border-bottom:1px solid #e5e7eb;color:#374151;font-size:14px;padding:12px}.breakdown-table .total-row td{border-bottom:none;border-top:2px solid #0038a8;color:#111827;font-size:16px;padding-top:16px}.employees-section{padding:0}.employees-table{border-collapse:collapse;width:100%}.employees-table thead{background:#f9fafb;border-bottom:2px solid #e5e7eb}.employees-table th{color:#6b7280;font-size:12px;font-weight:600;letter-spacing:.5px;padding:16px;text-align:left;text-transform:uppercase}.employees-table td.text-right,.employees-table th.text-right{text-align:right}.employees-table td.text-center,.employees-table th.text-center{text-align:center}.employees-table tbody tr{border-bottom:1px solid #f3f4f6}.employees-table tbody tr:hover{background:#f9fafb}.employees-table td{color:#374151;font-size:14px;padding:16px}.employee-info{display:flex;flex-direction:column;gap:4px}.employee-info strong{color:#111827;font-weight:600}.employee-info small{color:#0038a8;font-family:JetBrains Mono,monospace;font-size:12px}.employees-table td.negative{color:#ef4444}.employees-table tfoot tr{background:#f9fafb;border-top:2px solid #0038a8}.employees-table tfoot td{color:#111827;font-weight:600;padding:16px}.deductions-section{padding:0}.deductions-section h3{color:#111827;font-size:18px;font-weight:600;margin:0 0 20px}.deductions-table thead{background:#f9fafb;border-bottom:2px solid #e5e7eb}.deductions-table th{color:#6b7280;padding:16px}.deductions-table tbody tr{border-bottom:1px solid #f3f4f6}.deductions-table tbody tr:hover{background:#f9fafb}.deductions-table td{color:#374151;padding:16px}.details-section{padding:0}.details-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.detail-item{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:16px}.detail-item label{color:#6b7280;display:block;font-size:12px;font-weight:600;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.detail-item p{color:#111827;font-size:16px;font-weight:500;margin:0}.status-text.completed{color:#10b981}.status-text.draft{color:#f39c12}.loading-spinner{align-items:center;color:#6b7280;display:flex;font-size:16px;justify-content:center;padding:60px}.error-container{background:#fff;border-radius:12px;margin:24px;padding:60px 20px;text-align:center}.error-container h2{color:#ef4444;font-size:24px;margin:0 0 12px}.error-container p{color:#6b7280;margin:0 0 24px}.period-selection-container-v2{margin:0 auto;max-width:1200px;width:100%}.period-selection-header-v2{margin-bottom:30px}.period-selection-header-v2 h2{color:#111827;font-size:24px;font-weight:600;margin:0}.period-content-layout-v2{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1.2fr 1fr;margin-bottom:30px}.period-date-card-v2{background:#fff;border:2px solid #e5e7eb;border-radius:12px;padding:24px}.period-card-title-v2{align-items:center;color:#0038a8;display:flex;font-size:18px;font-weight:600;gap:10px;margin-bottom:24px}.period-date-inputs-vertical{display:flex;flex-direction:column;gap:16px}.period-date-input-group{display:flex;flex-direction:column;gap:8px}.period-date-label{color:#374151;font-size:14px;font-weight:600}.period-required{color:#ce1126;font-weight:700;margin-left:2px}.period-date-wrapper{position:relative}.period-date-input{background:#fff;border:2px solid #0038a8;border-radius:8px;color:#374151;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:15px;font-weight:500;padding:14px 40px 14px 16px;transition:all .2s ease;width:100%}.period-date-input:focus{border-color:#002c7f;box-shadow:0 0 0 4px #0038a826;outline:none}.period-date-input:disabled{background:#f3f4f6;cursor:not-allowed;opacity:.6}.period-date-input.error{border-color:#ef4444}.period-calendar-icon{font-size:20px;pointer-events:none;position:absolute;right:14px;top:50%;transform:translateY(-50%)}.period-date-arrow{color:#0038a8;font-size:24px;font-weight:700;margin:4px 0;text-align:center}.period-input-error{color:#ef4444;font-size:12px;margin-top:4px}.period-summary-panel-v2{display:flex;flex-direction:column;gap:20px}.period-summary-card-v2{background:#fff;border:2px solid #e5e7eb;border-radius:12px;padding:24px}.period-summary-title-v2{border-bottom:2px solid #e5e7eb;color:#111827;font-size:16px;font-weight:600;margin-bottom:16px;padding-bottom:10px}.period-summary-stat{align-items:center;border-bottom:1px solid #f3f4f6;display:flex;justify-content:space-between;padding:12px 0}.period-summary-stat:last-child{border-bottom:none}.period-summary-stat--editable{background:#f9fafb;border:1px dashed #d1d5db;border-radius:8px;padding:12px}.period-summary-stat--error{background:#fee2e2;border:1px solid #ef4444;border-radius:8px;padding:12px}.period-stat-label{align-items:center;color:#6b7280;display:flex;font-size:14px;gap:10px}.period-stat-icon{font-size:20px}.period-stat-value{color:#111827;font-size:18px;font-weight:700}.period-stat-placeholder{color:#d1d5db;font-weight:400}.period-stat-input-wrapper{align-items:flex-end;display:flex;flex-direction:column}.period-work-days-input{background:#fff;border:2px solid #0038a8;border-radius:8px;color:#111827;font-size:16px;font-weight:600;padding:8px 12px;text-align:center;transition:all .2s ease;width:100px}.period-work-days-input:focus{border-color:#002c7f;box-shadow:0 0 0 3px #0038a826;outline:none}.period-work-days-input:disabled{background:#f3f4f6;cursor:not-allowed;opacity:.6}.period-work-days-input.error{background:#fee2e2;border-color:#ef4444}.period-input-error-inline{color:#ef4444;font-size:12px;margin-top:4px;white-space:nowrap}.period-helper-text{background:#dbeafe;border-radius:8px;color:#1e40af;font-size:13px;line-height:1.5;padding:16px}.period-helper-title{font-weight:600;margin-bottom:6px}.period-helper-content{line-height:1.6}.period-navigation-v2{display:flex;justify-content:flex-end;margin-top:30px;padding-top:20px}.period-btn-primary{align-items:center;background:#0038a8;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:15px;font-weight:600;gap:8px;padding:14px 40px;transition:all .2s ease}.period-btn-primary:hover:not(:disabled){background:#002c7f;box-shadow:0 4px 12px #0038a84d;transform:translateY(-1px)}.period-btn-primary:disabled{background:#d1d5db;box-shadow:none;cursor:not-allowed;transform:none}@media (max-width:968px){.period-content-layout-v2{grid-template-columns:1fr}}@media (max-width:768px){.period-date-card-v2,.period-summary-card-v2{padding:20px}.period-selection-header-v2 h2{font-size:20px}}.gross-income-breakdown{width:100%}.gross-income-stats{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(5,1fr);margin-bottom:24px}.gross-income-stats .stat-card{background:#fff;border-left:4px solid #0038a8;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:16px 20px}.gross-income-stats .stat-card--gross{border-left-color:#f39c12}.gross-income-stats .stat-card--days{border-left-color:#3b82f6}.gross-income-stats .stat-card--leave-p{border-left-color:#10b981}.gross-income-stats .stat-card--leave-u{border-left-color:#ef4444}.gross-income-stats .stat-card__label{color:#6b7280;font-size:13px;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.gross-income-stats .stat-card__value{color:#111827;font-family:JetBrains Mono,monospace;font-size:28px;font-weight:700}.gross-income-stats .stat-card__value--currency{color:#0038a8}.gross-income-content{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:30px}.gross-income-content .content-header{align-items:center;border-bottom:2px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.gross-income-content .content-header h2{color:#111827;font-size:20px;font-weight:600;margin:0}.gross-income-content .rates-info{display:flex;gap:16px}.gross-income-content .rate-badge{align-items:center;background:#f9fafb;border-radius:6px;color:#374151;display:flex;font-size:12px;gap:6px;padding:6px 12px}.gross-income-content .rate-badge strong{color:#0038a8}.gross-income-table{border-collapse:collapse;width:100%}.gross-income-table thead{background:#e6f0ff}.gross-income-table th{border-bottom:3px solid #0038a8;color:#0038a8;font-size:13px;font-weight:600;letter-spacing:.5px;padding:14px 16px;text-align:left;text-transform:uppercase}.gross-income-table td.text-right,.gross-income-table td:last-child,.gross-income-table th.text-right,.gross-income-table th:last-child{text-align:right}.gross-income-table tbody tr.employee-row{cursor:pointer;transition:background .2s ease}.gross-income-table tbody tr.employee-row:hover{background:#f9fafb}.gross-income-table tbody tr.employee-row.expanded{background:#e6f0ff}.gross-income-table td{border-bottom:1px solid #e5e7eb;font-size:14px;padding:16px}.gross-income-table .employee-info{align-items:center;display:flex;gap:12px}.gross-income-table .employee-avatar{align-items:center;background:linear-gradient(135deg,#0038a8,#f39c12);border-radius:50%;color:#fff;display:flex;font-size:14px;font-weight:600;height:40px;justify-content:center;width:40px}.gross-income-table .employee-details{display:flex;flex-direction:column}.gross-income-table .employee-name{color:#111827;font-weight:600}.gross-income-table .employee-id{color:#6b7280;font-family:JetBrains Mono,monospace;font-size:12px}.gross-income-table .department-badge{background:#f3f4f6;border-radius:12px;color:#374151;display:inline-block;font-size:12px;padding:4px 10px}.gross-income-table .amount{font-family:JetBrains Mono,monospace;font-weight:500}.gross-income-table .amount--highlight{color:#0038a8;font-weight:700}.gross-income-table .amount--zero{color:#9ca3af}.gross-income-table .expand-icon{display:inline-block;font-size:10px;margin-left:8px;transition:transform .2s ease}.gross-income-table .expand-icon.expanded{transform:rotate(180deg)}.gross-income-table .expansion-row{background:#f9fafb}.gross-income-table .expansion-row td{border-bottom:2px solid #0038a8;padding:0}.gross-income-table .expansion-content{padding:24px}.gross-income-table .expansion-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:1fr 2fr 1fr}.gross-income-table .expansion-section{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:16px}.gross-income-table .expansion-section--wide{grid-column:span 1}.gross-income-table .expansion-section__title{align-items:center;border-bottom:1px solid #e5e7eb;color:#374151;display:flex;font-size:13px;font-weight:600;gap:8px;margin-bottom:12px;padding-bottom:8px}.gross-income-table .expansion-section__title .icon{font-size:16px}.gross-income-table .breakdown-list{list-style:none;margin:0;padding:0}.gross-income-table .breakdown-item{border-bottom:1px dashed #e5e7eb;display:flex;font-size:13px;justify-content:space-between;padding:8px 0}.gross-income-table .breakdown-item:last-child{border-bottom:none}.gross-income-table .breakdown-item__label{color:#6b7280}.gross-income-table .breakdown-item__value{color:#111827;font-family:JetBrains Mono,monospace;font-weight:500}.gross-income-table .breakdown-item--total{background:#e6f0ff;border-radius:0 0 8px 8px;margin:8px -16px -16px;padding:12px 16px}.gross-income-table .breakdown-item--total .breakdown-item__label{color:#0038a8;font-weight:600}.gross-income-table .breakdown-item--total .breakdown-item__value{color:#0038a8;font-weight:700}.gross-income-table .pay-summary{display:flex;flex-direction:column;gap:8px}.gross-income-table .pay-row{align-items:center;display:flex;font-size:13px;justify-content:space-between;padding:6px 0}.gross-income-table .pay-row--sub{border-left:2px solid #e5e7eb;font-size:12px;padding-left:12px}.gross-income-table .pay-row__label{align-items:center;color:#6b7280;display:flex;gap:6px}.gross-income-table .pay-row__value{color:#111827;font-family:JetBrains Mono,monospace;font-weight:500}.gross-income-table .pay-divider{border-top:1px dashed #e5e7eb;margin:4px 0}.gross-income-table .daily-scroll{max-height:300px;overflow-y:auto}.gross-income-table .daily-table{border-collapse:collapse;font-size:12px;width:100%}.gross-income-table .daily-table th{background:#e6f0ff;border-bottom:2px solid #0038a8;color:#0038a8;font-size:11px;font-weight:600;letter-spacing:.3px;padding:10px 8px;text-align:left;text-transform:uppercase}.gross-income-table .daily-table td.text-center,.gross-income-table .daily-table th.text-center{text-align:center}.gross-income-table .daily-table td.text-right,.gross-income-table .daily-table th.text-right{text-align:right}.gross-income-table .daily-table td{border-bottom:1px solid #e5e7eb;padding:8px;vertical-align:middle}.gross-income-table .daily-table tbody tr:hover{background:#f9fafb}.gross-income-table .daily-table tbody tr.piece-rate-row{background:#fff9e6}.gross-income-table .daily-table tbody tr.piece-rate-row:hover{background:#fef3c7}.gross-income-table .daily-table tbody tr.piece-rate-row td{border-bottom-color:#f39c12}.gross-income-table .date-cell{display:flex;flex-direction:column}.gross-income-table .date-day{color:#111827;font-weight:600}.gross-income-table .date-full{color:#6b7280;font-size:10px}.gross-income-table .type-badge{border-radius:10px;display:inline-block;font-size:10px;font-weight:600;letter-spacing:.3px;padding:3px 8px;text-transform:uppercase}.gross-income-table .type-badge--daily{background:#e6f0ff;color:#0038a8}.gross-income-table .type-badge--piece{background:#fef3c7;color:#92400e}.gross-income-table .type-badge--leave-p{background:#d1fae5;color:#065f46}.gross-income-table .type-badge--leave-u{background:#fee2e2;color:#991b1b}.gross-income-table .earnings-cell{color:#111827}.gross-income-table .earnings-cell,.gross-income-table .hours-cell{font-family:JetBrains Mono,monospace;font-weight:500}.gross-income-table .hours-cell--zero{color:#d1d5db}.gross-income-table .hours-cell--has-value{color:#111827}.gross-income-table .amount-cell{font-family:JetBrains Mono,monospace;font-weight:500}.gross-income-table .amount-cell--zero{color:#d1d5db}.gross-income-table .amount-cell--has-value{color:#0038a8}.gross-income-table .cell-disabled{background:repeating-linear-gradient(45deg,#0000,#0000 3px,#f9fafb 0,#f9fafb 6px);color:#d1d5db!important;font-size:10px;font-style:italic;text-align:center}.gross-income-table .daily-table tfoot{background:linear-gradient(135deg,#e6f0ff,#dbeafe)}.gross-income-table .daily-table tfoot td{border-top:2px solid #0038a8;font-weight:600;padding:10px 8px}.gross-income-table .table-legend{border-top:1px dashed #e5e7eb;color:#6b7280;display:flex;font-size:11px;gap:16px;margin-top:12px;padding-top:12px}.gross-income-table .legend-item{align-items:center;display:flex;gap:6px}.gross-income-table .legend-swatch{border-radius:3px;height:12px;width:16px}.gross-income-table .legend-swatch--daily{background:#e6f0ff;border:1px solid #0038a8}.gross-income-table .legend-swatch--piece{background:#fef3c7;border:1px solid #f39c12}.gross-income-table .legend-swatch--leave-p{background:#d1fae5;border:1px solid #065f46}.gross-income-table .legend-swatch--leave-u{background:#fee2e2;border:1px solid #991b1b}.gross-income-table .legend-swatch--disabled{background:repeating-linear-gradient(45deg,#e5e7eb,#e5e7eb 2px,#f9fafb 0,#f9fafb 4px);border:1px solid #d1d5db}.gross-income-table .holiday-item{align-items:flex-start;border-bottom:1px dashed #e5e7eb;display:flex;justify-content:space-between;padding:8px 0}.gross-income-table .holiday-item:last-child{border-bottom:none}.gross-income-table .holiday-info{display:flex;flex-direction:column}.gross-income-table .holiday-name{color:#374151;font-size:13px;font-weight:500}.gross-income-table .holiday-date{color:#6b7280;font-size:11px}.gross-income-table .holiday-type{border-radius:10px;font-size:11px;padding:2px 8px}.gross-income-table .holiday-type--regular{background:#fee2e2;color:#ce1126}.gross-income-table .holiday-type--special{background:#fef3c7;color:#92400e}.gross-income-table .no-data{color:#9ca3af;font-style:italic;padding:16px;text-align:center}.gross-income-content .table-footer{align-items:center;background:linear-gradient(135deg,#f9fafb,#f3f4f6);border-radius:0 0 12px 12px;display:flex;justify-content:space-between;margin:0 -30px -30px;padding:16px}.gross-income-content .footer-stats{display:flex;gap:32px}.gross-income-content .footer-stat{display:flex;flex-direction:column}.gross-income-content .footer-stat__label{color:#6b7280;font-size:11px;letter-spacing:.5px;text-transform:uppercase}.gross-income-content .footer-stat__value{color:#0038a8;font-family:JetBrains Mono,monospace;font-size:18px;font-weight:700}.gross-income-content .click-hint{color:#6b7280;font-size:12px;font-style:italic}.gross-income-empty{color:#6b7280;padding:60px 20px;text-align:center}@media (max-width:1200px){.gross-income-table .expansion-grid{grid-template-columns:1fr 1fr}.gross-income-table .expansion-section--wide{grid-column:span 2}}@media (max-width:1024px){.gross-income-stats{grid-template-columns:repeat(3,1fr)}}@media (max-width:768px){.gross-income-stats,.gross-income-table .expansion-grid{grid-template-columns:1fr}.gross-income-table .expansion-section--wide{grid-column:span 1}.gross-income-content .rates-info{display:none}.gross-income-content .table-footer{flex-direction:column;gap:16px}.gross-income-content .footer-stats{flex-wrap:wrap;gap:16px}}.deductions-step{width:100%}.deductions-stats{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(5,1fr);margin-bottom:24px}.deductions-stats .stat-card{background:#fff;border-left:4px solid #0038a8;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:16px 20px}.deductions-stats .stat-card--sss{border-left-color:#0038a8}.deductions-stats .stat-card--philhealth{border-left-color:#10b981}.deductions-stats .stat-card--pagibig{border-left-color:#f59e0b}.deductions-stats .stat-card--tax{border-left-color:#ce1126}.deductions-stats .stat-card--grand{background:linear-gradient(135deg,#0038a8,#002c7f)}.deductions-stats .stat-card--grand .stat-card__label{color:#fffc}.deductions-stats .stat-card--grand .stat-card__value{color:#fff}.deductions-stats .stat-card__label{color:#6b7280;font-size:12px;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.deductions-stats .stat-card__value{color:#111827;font-family:JetBrains Mono,monospace;font-size:24px;font-weight:700}.bulk-selection-panel{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:24px;padding:24px}.bulk-selection__title{color:#374151;font-size:14px;font-weight:600;margin-bottom:16px}.bulk-selection__grid{align-items:center;display:flex;flex-wrap:wrap;gap:16px}.deduction-checkbox{align-items:center;background:#fff;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;display:flex;gap:12px;padding:12px 16px;transition:all .2s}.deduction-checkbox:hover{background:#f0f7ff;border-color:#0038a8}.deduction-checkbox.selected{background:#e6f0ff;border-color:#0038a8}.deduction-checkbox input[type=checkbox]{accent-color:#0038a8;height:18px;width:18px}.deduction-checkbox__icon{align-items:center;border-radius:8px;color:#fff;display:flex;font-size:11px;font-weight:700;height:32px;justify-content:center;width:32px}.deduction-checkbox__icon--sss{background:#0038a8}.deduction-checkbox__icon--philhealth{background:#10b981}.deduction-checkbox__icon--pagibig{background:#f59e0b}.deduction-checkbox__icon--tax{background:#ce1126}.deduction-checkbox__label{color:#374151;font-weight:600}.bulk-actions{display:flex;gap:12px;margin-left:auto}.bulk-actions .btn{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .2s}.bulk-actions .btn-primary{background:#0038a8;color:#fff}.bulk-actions .btn-primary:hover{background:#002c7f}.bulk-actions .btn-secondary{background:#fff;border:1px solid #d1d5db;color:#374151}.bulk-actions .btn-secondary:hover{background:#f9fafb}.deductions-content{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:30px}.deductions-content .content-header{align-items:center;border-bottom:2px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.deductions-content .content-header h2{color:#111827;font-size:20px;font-weight:600;margin:0}.deductions-content .header-badges{align-items:center;display:flex;gap:12px}.deductions-content .period-badge{background:#e6f0ff;border-radius:20px;color:#0038a8;font-size:13px;font-weight:500;padding:6px 12px}.deductions-content .cross-month-badge{align-items:center;background:#fef3c7;border-radius:8px;color:#92400e;display:flex;font-size:13px;font-weight:500;gap:8px;padding:8px 16px}.deductions-table-container{overflow-x:auto}.deductions-table{border-collapse:collapse;min-width:900px;width:100%}.deductions-table thead{background:#e6f0ff}.deductions-table th{border-bottom:3px solid #0038a8;color:#0038a8;font-size:12px;font-weight:600;letter-spacing:.5px;padding:14px 12px;text-align:left;text-transform:uppercase}.deductions-table th.th-employee{width:200px}.deductions-table th.th-id{width:70px}.deductions-table th.th-deduction{text-align:center;width:140px}.deductions-table th.th-total{width:160px}.deductions-table th.th-expand{width:40px}.deductions-table .month-header{display:flex;gap:4px;margin-top:6px}.deductions-table .month-header span{background:#fff9;border-radius:4px;flex:1 1;font-size:10px;font-weight:600;padding:3px 6px;text-align:center}.deductions-table tbody tr.employee-row{cursor:pointer;transition:background .2s ease}.deductions-table tbody tr.employee-row:hover{background:#f9fafb}.deductions-table tbody tr.employee-row.expanded{background:#e6f0ff}.deductions-table tbody tr.employee-row.error-row{background:#fef2f2}.deductions-table td{border-bottom:1px solid #e5e7eb;font-size:14px;padding:12px;vertical-align:middle}.deductions-table .employee-info{align-items:center;display:flex;gap:12px}.deductions-table .employee-avatar{align-items:center;background:linear-gradient(135deg,#0038a8,#f39c12);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:14px;font-weight:600;height:40px;justify-content:center;width:40px}.deductions-table .employee-details{display:flex;flex-direction:column}.deductions-table .employee-name{color:#111827;font-weight:600}.deductions-table .employee-dept{color:#6b7280;font-size:12px}.deductions-table .employee-id{background:#f3f4f6;border-radius:4px;color:#374151;font-family:JetBrains Mono,monospace;font-size:13px;padding:4px 8px}.deductions-table .td-deduction{text-align:center}.deductions-table .deduction-inputs{display:flex;gap:4px;justify-content:center}.deductions-table .deduction-input{border:1px solid #d1d5db;border-radius:6px;font-family:JetBrains Mono,monospace;font-size:13px;padding:8px 6px;text-align:right;width:65px}.deductions-table .deduction-input:focus{border-color:#0038a8;box-shadow:0 0 0 3px #0038a81a;outline:none}.deductions-table .deduction-disabled{color:#9ca3af;font-size:14px}.deductions-table .td-total-gross{padding:8px 12px}.total-gross-cell{min-width:130px}.total-gross-cell__total{align-items:center;color:#111827;display:flex;font-size:14px;font-weight:700;gap:8px;margin-bottom:6px}.total-gross-cell__total.error{color:#ef4444}.percentage-badge{border-radius:10px;font-size:11px;font-weight:600;padding:2px 6px}.percentage-badge--green{background:#d1fae5;color:#065f46}.percentage-badge--yellow{background:#fef3c7;color:#92400e}.percentage-badge--red{background:#fee2e2;color:#991b1b}.total-gross-cell__bar{background:#e5e7eb;border-radius:3px;height:6px;margin-bottom:6px;overflow:hidden}.total-gross-cell__bar-fill{border-radius:3px;height:100%;transition:width .3s}.total-gross-cell__bar-fill--green{background:linear-gradient(90deg,#10b981,#34d399)}.total-gross-cell__bar-fill--yellow{background:linear-gradient(90deg,#f59e0b,#fbbf24)}.total-gross-cell__bar-fill--red{background:linear-gradient(90deg,#ef4444,#f87171)}.total-gross-cell__gross{color:#6b7280;font-size:12px}.total-gross-cell__error{color:#ef4444;font-size:11px;font-weight:600;margin-top:4px}.deductions-table .td-expand{text-align:center}.deductions-table .expand-icon{color:#9ca3af;display:inline-block;font-size:12px;transition:transform .2s}.deductions-table .expand-icon.expanded{transform:rotate(180deg)}.deductions-table .expansion-row{background:#f8fafc}.deductions-table .expansion-row td{border-bottom:2px solid #0038a8;padding:0}.deductions-table .expansion-content{padding:24px}.deductions-table .expansion-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:16px}.deductions-table .expansion-header h3{color:#111827;font-size:16px;font-weight:600;margin:0}.deductions-table .expansion-gross-badge{background:#e6f0ff;border-radius:8px;color:#0038a8;font-size:14px;padding:8px 16px}.deductions-table .expansion-gross-badge strong{font-weight:700}.deductions-table .expansion-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(4,1fr);margin-bottom:20px}.deduction-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:16px}.deduction-card.disabled{background:#f9fafb;opacity:.7}.deduction-card__header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;gap:12px;margin-bottom:16px;padding-bottom:12px}.deduction-card__icon{align-items:center;border-radius:8px;color:#fff;display:flex;font-size:11px;font-weight:700;height:36px;justify-content:center;width:36px}.deduction-card__icon--sss{background:#0038a8}.deduction-card__icon--philhealth{background:#10b981}.deduction-card__icon--pagibig{background:#f59e0b}.deduction-card__icon--tax{background:#ce1126}.deduction-card__info{display:flex;flex-direction:column}.deduction-card__title{color:#111827;font-size:14px;font-weight:600}.deduction-card__monthly{color:#6b7280;font-size:12px}.deduction-card .disabled-message{color:#9ca3af;font-size:13px;padding:32px 16px;text-align:center}.month-section{margin-bottom:16px}.month-section:last-child{margin-bottom:0}.month-section__label{color:#374151;font-size:12px;font-weight:600;margin-bottom:6px}.month-section__balance{color:#6b7280;font-size:12px;margin-bottom:8px}.month-section__balance .remaining{color:#10b981;font-weight:600}.month-section__balance .remaining.depleted{color:#ef4444}.month-section .input-group{align-items:center;display:flex;gap:6px}.month-section .input-group input{border:1px solid #d1d5db;border-radius:6px;flex:1 1;font-family:JetBrains Mono,monospace;font-size:13px;padding:8px 10px}.month-section .input-group input:focus{border-color:#0038a8;box-shadow:0 0 0 3px #0038a81a;outline:none}.month-section .quick-btn{background:#fff;border:1px solid #d1d5db;border-radius:4px;color:#374151;cursor:pointer;font-size:11px;font-weight:600;padding:6px 10px;transition:all .2s}.month-section .quick-btn:hover{background:#f3f4f6;border-color:#0038a8;color:#0038a8}.employee-summary{background:#fff;border:2px solid #e5e7eb;border-radius:12px;padding:20px}.employee-summary__row{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.employee-summary__row:last-of-type{margin-bottom:0}.employee-summary__label{color:#6b7280;font-size:14px}.employee-summary__value{color:#111827;font-family:JetBrains Mono,monospace;font-size:16px;font-weight:700}.employee-summary__value--primary{color:#0038a8;font-size:20px}.employee-summary__value.error{color:#ef4444}.employee-summary__bar{border-top:1px solid #e5e7eb;margin-top:16px;padding-top:16px}.employee-summary__bar-label{display:flex;font-size:13px;justify-content:space-between;margin-bottom:8px}.percentage-text--green{color:#10b981;font-weight:600}.percentage-text--yellow{color:#f59e0b;font-weight:600}.percentage-text--red{color:#ef4444;font-weight:600}.employee-summary__bar-track{background:#e5e7eb;border-radius:6px;height:12px;overflow:hidden}.employee-summary__bar-fill{border-radius:6px;height:100%;transition:width .3s}.employee-summary__bar-fill--green{background:linear-gradient(90deg,#10b981,#34d399)}.employee-summary__bar-fill--yellow{background:linear-gradient(90deg,#f59e0b,#fbbf24)}.employee-summary__bar-fill--red{background:linear-gradient(90deg,#ef4444,#f87171)}.employee-summary__remaining{color:#374151;font-size:14px;margin-top:12px}.employee-summary__remaining strong{color:#10b981;font-weight:700}.employee-summary__remaining.error,.employee-summary__remaining.error strong{color:#ef4444}.deductions-content .table-footer{align-items:center;background:linear-gradient(135deg,#f9fafb,#f3f4f6);border-radius:0 0 12px 12px;display:flex;justify-content:space-between;margin:0 -30px -30px;padding:16px}.deductions-content .footer-stats{display:flex;gap:24px}.deductions-content .footer-stat{display:flex;flex-direction:column}.deductions-content .footer-stat--total .footer-stat__value{color:#0038a8;font-size:22px}.deductions-content .footer-stat__label{color:#6b7280;font-size:11px;letter-spacing:.5px;text-transform:uppercase}.deductions-content .footer-stat__value{color:#111827;font-family:JetBrains Mono,monospace;font-size:16px;font-weight:700}.deductions-content .click-hint{color:#6b7280;font-size:12px;font-style:italic}.deductions-step .loading-state{font-size:16px}.deductions-empty,.deductions-step .loading-state{color:#6b7280;padding:60px 20px;text-align:center}@media (max-width:1400px){.deductions-table .expansion-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:1024px){.deductions-stats{grid-template-columns:repeat(3,1fr)}.bulk-selection__grid{align-items:flex-start;flex-direction:column}.bulk-actions{justify-content:flex-start;margin-left:0;width:100%}}@media (max-width:768px){.deductions-stats{grid-template-columns:1fr 1fr}.deductions-table .expansion-grid{grid-template-columns:1fr}.deductions-content .header-badges{align-items:flex-start;flex-direction:column}.deductions-content .table-footer{flex-direction:column;gap:16px}.deductions-content .footer-stats{flex-wrap:wrap;gap:16px}}.payroll-summary{margin:0 auto;max-width:1400px;width:100%}.ps-header{align-items:center;border-bottom:2px solid #e6f0ff;display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.ps-header-content h2{color:#0038a8;font-size:28px;font-weight:600;margin:0 0 8px}.ps-period-badge{align-items:center;background:#e6f0ff;border-radius:20px;color:#0038a8;display:inline-flex;font-size:14px;font-weight:500;gap:8px;padding:6px 14px}.ps-stats{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(5,1fr);margin-bottom:24px}.ps-stat-card{background:#fff;border-left:4px solid #0038a8;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:20px}.ps-stat-card__label{color:#6b7280;font-size:12px;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.ps-stat-card__value{color:#111827;font-family:JetBrains Mono,monospace;font-size:24px;font-weight:700}.ps-stat-card--employees{border-left-color:#0038a8}.ps-stat-card--gross{border-left-color:#10b981}.ps-stat-card--deductions{border-left-color:#ce1126}.ps-stat-card--adjustments{border-left-color:#f39c12}.ps-stat-card--net{background:linear-gradient(135deg,#0038a8,#002c7f);border-left-color:#0000}.ps-stat-card--net .ps-stat-card__label{color:#fffc}.ps-stat-card--net .ps-stat-card__value{color:#fff}.ps-controls{align-items:center;display:flex;gap:16px;justify-content:space-between;margin-bottom:20px}.ps-search-controls{display:flex;flex:1 1;gap:12px}.ps-search-input{border:1px solid #e5e7eb;border-radius:8px;font-size:14px;padding:10px 16px;transition:border-color .2s,box-shadow .2s;width:280px}.ps-search-input:focus{border-color:#0038a8;box-shadow:0 0 0 3px #e6f0ff;outline:none}.ps-department-select{background:#fff;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;font-size:14px;min-width:180px;padding:10px 16px}.ps-department-select:focus{border-color:#0038a8;box-shadow:0 0 0 3px #e6f0ff;outline:none}.ps-results-count{color:#6b7280;font-size:14px}.ps-table-container{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.ps-table{border-collapse:collapse;width:100%}.ps-table thead{background:linear-gradient(135deg,#0038a8,#002c7f)}.ps-table th{color:#fff;cursor:pointer;font-size:12px;font-weight:600;letter-spacing:.5px;padding:14px 16px;text-align:left;text-transform:uppercase;transition:background-color .2s;-webkit-user-select:none;user-select:none;white-space:nowrap}.ps-table th:hover{background:#ffffff1a}.ps-table th .sort-icon{margin-left:6px;opacity:.7}.ps-table th.th-employee{width:22%}.ps-table th.th-id{width:8%}.ps-table th.th-department{width:14%}.ps-table th.th-adjustments,.ps-table th.th-deductions,.ps-table th.th-gross,.ps-table th.th-net{text-align:right;width:14%}.ps-table tbody tr{border-bottom:1px solid #f3f4f6;cursor:pointer;transition:background-color .2s}.ps-table tbody tr.expanded,.ps-table tbody tr:hover{background-color:#e6f0ff}.ps-table td{color:#374151;font-size:14px;padding:16px}.ps-table td.td-employee{align-items:center;display:flex;gap:12px}.ps-employee-avatar{align-items:center;background:linear-gradient(135deg,#e6f0ff,#d1e3ff);border-radius:50%;color:#0038a8;display:flex;flex-shrink:0;font-size:13px;font-weight:600;height:36px;justify-content:center;width:36px}.ps-employee-name{color:#111827;font-weight:500}.ps-table td.td-id{color:#6b7280;font-family:JetBrains Mono,monospace}.ps-table td.td-department{color:#6b7280}.ps-table td.td-currency{font-family:JetBrains Mono,monospace;text-align:right}.ps-table td.td-adjustments .positive{color:#10b981}.ps-table td.td-adjustments .negative{color:#ce1126}.ps-table td.td-net{color:#0038a8;font-weight:600}.ps-expand-icon{color:#d1d5db;font-size:10px;margin-left:auto;transition:transform .2s}.ps-expand-icon.expanded{transform:rotate(180deg)}.ps-expansion-row{background:#f9fafb}.ps-expansion-row td{padding:0!important}.ps-expansion-content{border-top:2px solid #e6f0ff;padding:20px 24px}.ps-expansion-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(4,1fr)}.ps-breakdown-card{background:#fff;border-radius:10px;box-shadow:0 1px 2px #0000000d;padding:16px}.ps-breakdown-card__header{align-items:center;border-bottom:1px solid #f3f4f6;display:flex;gap:10px;margin-bottom:12px;padding-bottom:10px}.ps-breakdown-card__icon{align-items:center;border-radius:8px;display:flex;font-size:14px;font-weight:600;height:32px;justify-content:center;width:32px}.ps-breakdown-card__icon--gross{background:#d1fae5;color:#10b981}.ps-breakdown-card__icon--deductions{background:#fff2f2;color:#ce1126}.ps-breakdown-card__icon--adjustments{background:#fff9e6;color:#f39c12}.ps-breakdown-card__icon--net{background:#e6f0ff;color:#0038a8}.ps-breakdown-card__title{color:#111827;font-size:14px;font-weight:600}.ps-breakdown-item{display:flex;font-size:13px;justify-content:space-between;padding:6px 0}.ps-breakdown-item__label{color:#6b7280}.ps-breakdown-item__value{color:#374151;font-family:JetBrains Mono,monospace}.ps-breakdown-item__value.positive{color:#10b981}.ps-breakdown-item__value.negative{color:#ce1126}.ps-breakdown-item--total{border-top:1px solid #e5e7eb;font-weight:600;margin-top:8px;padding-top:10px}.ps-breakdown-item--total .ps-breakdown-item__value{color:#111827}.ps-breakdown-card--net .ps-breakdown-item--total .ps-breakdown-item__value,.ps-net-pay-value{color:#0038a8;font-size:18px}.ps-footer{align-items:center;background:linear-gradient(135deg,#f9fafb,#f3f4f6);border-radius:0 0 12px 12px;border-top:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:16px 20px}.ps-footer-stats{display:flex;gap:32px}.ps-footer-stat{display:flex;flex-direction:column;gap:2px}.ps-footer-stat__label{color:#6b7280;font-size:11px;letter-spacing:.5px;text-transform:uppercase}.ps-footer-stat__value{color:#111827;font-family:JetBrains Mono,monospace;font-size:16px;font-weight:600}.ps-footer-stat--total .ps-footer-stat__value{color:#0038a8;font-size:20px}.ps-footer-hint{color:#6b7280;font-size:13px}.ps-no-results{color:#6b7280;padding:40px 20px;text-align:center}.ps-empty-state{padding:60px 20px;text-align:center}.ps-empty-state__icon{font-size:48px;margin-bottom:16px}.ps-empty-state__title{color:#111827;font-size:18px;font-weight:600;margin-bottom:8px}.ps-empty-state__message{color:#6b7280;font-size:14px}@media (max-width:1200px){.ps-stats{grid-template-columns:repeat(3,1fr)}.ps-expansion-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.ps-stats{grid-template-columns:repeat(2,1fr)}.ps-controls{align-items:stretch}.ps-controls,.ps-search-controls{flex-direction:column}.ps-department-select,.ps-search-input{width:100%}.ps-expansion-grid{grid-template-columns:1fr}.ps-footer{flex-direction:column;gap:16px}.ps-footer-stats{flex-wrap:wrap;justify-content:center}.ps-table td,.ps-table th{font-size:12px;padding:12px 8px}.ps-employee-avatar{font-size:11px;height:28px;width:28px}}.payroll-list{margin:0 auto;max-width:1400px;padding:24px;width:100%}.pl-header{align-items:center;border-bottom:2px solid #e6f0ff;display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.pl-header-content h1{color:#0038a8;font-size:28px;font-weight:600;margin:0 0 4px}.pl-header-content p{color:#6b7280;font-size:14px;margin:0}.pl-stats{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(4,1fr);margin-bottom:24px}.pl-stat-card{background:#fff;border-left:4px solid #0038a8;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:20px}.pl-stat-card__label{color:#6b7280;font-size:12px;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.pl-stat-card__value{color:#111827;font-family:JetBrains Mono,monospace;font-size:24px;font-weight:700}.pl-stat-card--runs{border-left-color:#0038a8}.pl-stat-card--employees{border-left-color:#10b981}.pl-stat-card--gross{border-left-color:#f39c12}.pl-stat-card--net{background:linear-gradient(135deg,#0038a8,#002c7f);border-left-color:#0000}.pl-stat-card--net .pl-stat-card__label{color:#fffc}.pl-stat-card--net .pl-stat-card__value{color:#fff}.pl-error-banner{align-items:center;background:#fee2e2;border-radius:8px;color:#991b1b;display:flex;justify-content:space-between;margin-bottom:16px;padding:12px 16px}.pl-error-banner button{background:none;border:none;color:#991b1b;cursor:pointer;font-size:20px}.pl-table-container{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.pl-table{border-collapse:collapse;width:100%}.pl-table thead{background:linear-gradient(135deg,#0038a8,#002c7f)}.pl-table th{color:#fff;font-size:12px;font-weight:600;letter-spacing:.5px;padding:14px 16px;text-align:left;text-transform:uppercase;white-space:nowrap}.pl-table th.th-period{width:22%}.pl-table th.th-run-id{width:12%}.pl-table th.th-days{text-align:center;width:8%}.pl-table th.th-employees{text-align:center;width:10%}.pl-table th.th-net-pay{text-align:right;width:16%}.pl-table th.th-completed{width:17%}.pl-table th.th-actions{text-align:center;width:15%}.pl-table tbody tr.pl-row{border-bottom:1px solid #f3f4f6;cursor:pointer;transition:background-color .2s}.pl-table tbody tr.pl-row.expanded,.pl-table tbody tr.pl-row:hover{background-color:#e6f0ff}.pl-table td{color:#374151;font-size:14px;padding:16px}.pl-table td.td-period{color:#111827;font-weight:500}.pl-table td.td-run-id{color:#6b7280;font-family:JetBrains Mono,monospace;font-size:13px}.pl-table td.td-days,.pl-table td.td-employees{font-family:JetBrains Mono,monospace;text-align:center}.pl-table td.td-net-pay{color:#0038a8;font-family:JetBrains Mono,monospace;font-weight:600;text-align:right}.pl-table td.td-completed{color:#6b7280;font-size:13px}.pl-table td.td-actions{text-align:center}.expand-icon{color:#9ca3af;display:inline-block;font-size:10px;margin-right:8px;transition:transform .2s}.pl-row.expanded .expand-icon{transform:rotate(90deg)}.pl-table .action-buttons{display:flex;gap:8px;justify-content:center}.btn-action{border:none;border-radius:6px;cursor:pointer;font-size:13px;font-weight:500;padding:8px 14px;transition:transform .2s,box-shadow .2s}.btn-action:hover{transform:translateY(-1px)}.btn-action:disabled{cursor:not-allowed;opacity:.6;transform:none}.btn-view{background:#fff;border:1px solid #0038a8;color:#0038a8}.btn-view:hover:not(:disabled){background:#0038a8;box-shadow:0 2px 8px #0038a84d;color:#fff}.btn-csv{background:#10b981;color:#fff}.btn-csv:hover:not(:disabled){box-shadow:0 2px 8px #10b9814d}.pl-expansion-row{background:#f9fafb}.pl-expansion-row td{padding:0!important}.pl-expansion-content{border-top:2px solid #e6f0ff;padding:20px 24px}.pl-expansion-layout{grid-gap:24px;display:grid;gap:24px;grid-template-columns:280px 1fr}.pl-expansion-summary{background:#fff;border-radius:10px;box-shadow:0 1px 2px #0000000d;padding:16px}.pl-expansion-summary__title{border-bottom:1px solid #f3f4f6;color:#111827;font-size:13px;font-weight:600;margin-bottom:12px;padding-bottom:8px}.pl-summary-item{display:flex;font-size:13px;justify-content:space-between;padding:8px 0}.pl-summary-item__label{color:#6b7280}.pl-summary-item__value{color:#374151;font-family:JetBrains Mono,monospace}.pl-summary-item--gross .pl-summary-item__value{color:#f39c12}.pl-summary-item--deductions .pl-summary-item__value{color:#ce1126}.pl-summary-item--net{border-top:1px solid #e5e7eb;font-weight:600;margin-top:8px;padding-top:12px}.pl-summary-item--net .pl-summary-item__value{color:#0038a8;font-size:16px}.pl-summary-item--adjustments.pl-summary-item--positive .pl-summary-item__value{color:#10b981}.pl-summary-item--adjustments.pl-summary-item--negative .pl-summary-item__value{color:#ce1126}.pl-expansion-employees{background:#fff;border-radius:10px;box-shadow:0 1px 2px #0000000d;max-height:400px;overflow-y:auto;padding:16px}.pl-expansion-employees__header{align-items:center;border-bottom:1px solid #f3f4f6;display:flex;justify-content:space-between;margin-bottom:12px;padding-bottom:8px}.pl-expansion-employees__title{color:#111827;font-size:13px;font-weight:600}.pl-expansion-employees__count{color:#6b7280;font-size:12px}.pl-mini-table{border-collapse:collapse;font-size:13px;width:100%}.pl-mini-table th{background:#f9fafb;border-bottom:1px solid #e5e7eb;color:#6b7280;font-size:11px;font-weight:600;letter-spacing:.5px;padding:8px 12px;text-align:left;text-transform:uppercase}.pl-mini-table th.th-currency{text-align:right}.pl-mini-table td{border-bottom:1px solid #f3f4f6;color:#374151;padding:10px 12px}.pl-mini-table tr:last-child td{border-bottom:none}.pl-mini-table td.td-employee{align-items:center;display:flex;gap:10px}.pl-mini-avatar{align-items:center;background:linear-gradient(135deg,#e6f0ff,#d1e3ff);border-radius:50%;color:#0038a8;display:flex;flex-shrink:0;font-size:10px;font-weight:600;height:28px;justify-content:center;width:28px}.pl-mini-table td.td-id{color:#6b7280;font-family:JetBrains Mono,monospace;font-size:12px}.pl-mini-table td.td-dept{color:#6b7280}.pl-mini-table td.td-currency{font-family:JetBrains Mono,monospace;font-size:12px;text-align:right}.pl-mini-table td.td-deduction{color:#ce1126}.pl-mini-table td.td-adjustment-positive{color:#10b981}.pl-mini-table td.td-adjustment-negative{color:#ce1126}.pl-mini-table td.td-net{color:#0038a8;font-weight:600}.pl-mini-table-more{color:#6b7280;font-size:13px;font-style:italic;padding:12px;text-align:center}.pl-footer{align-items:center;background:linear-gradient(135deg,#f9fafb,#f3f4f6);border-radius:0 0 12px 12px;border-top:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:16px 20px}.pl-footer-stats{display:flex;gap:32px}.pl-footer-stat{display:flex;flex-direction:column;gap:2px}.pl-footer-stat__label{color:#6b7280;font-size:11px;letter-spacing:.5px;text-transform:uppercase}.pl-footer-stat__value{color:#111827;font-family:JetBrains Mono,monospace;font-size:16px;font-weight:600}.pl-footer-stat--total .pl-footer-stat__value{color:#0038a8;font-size:20px}.pl-footer-info{color:#6b7280;font-size:13px}.pl-empty-state{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:80px 20px;text-align:center}.pl-empty-state__icon{font-size:64px;margin-bottom:20px}.pl-empty-state__title{color:#111827;font-size:20px;font-weight:600;margin-bottom:8px}.pl-empty-state__message{color:#6b7280;font-size:14px;margin-bottom:24px}.pl-loading{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:60px 20px;text-align:center}.pl-loading__spinner{animation:pl-spin 1s linear infinite;border:3px solid #e5e7eb;border-radius:50%;border-top-color:#0038a8;height:40px;margin:0 auto 16px;width:40px}@keyframes pl-spin{to{transform:rotate(1turn)}}.pl-loading__text{color:#6b7280;font-size:14px}.modal-overlay{inset:0}.modal{background:#fff;border-radius:12px;box-shadow:0 20px 40px #0003;max-width:520px;overflow:hidden;width:100%}.modal-header{background:linear-gradient(135deg,#10b981,#059669);color:#fff;padding:16px 20px}.modal-header__title{align-items:center;display:flex;font-size:16px;font-weight:600;gap:10px}.modal-header__icon{align-items:center;background:#fff3;border-radius:6px;display:flex;font-size:14px;height:24px;justify-content:center;width:24px}.modal-close{background:none;color:#fff;font-size:24px;line-height:1;opacity:.8;padding:4px;transition:opacity .2s}.modal-close:hover{opacity:1}.modal-body{padding:20px}.modal-section{margin-bottom:20px}.modal-section:last-child{margin-bottom:0}.modal-section__label{color:#6b7280;font-size:12px;font-weight:600;letter-spacing:.5px;margin-bottom:12px;text-transform:uppercase}.csv-columns{display:flex;flex-wrap:wrap;gap:8px}.csv-column-badge{align-items:center;background:#f3f4f6;border-radius:6px;color:#374151;display:inline-flex;font-size:13px;gap:6px;padding:8px 12px}.csv-column-badge__number{align-items:center;background:#0038a8;border-radius:4px;color:#fff;display:flex;font-size:10px;font-weight:600;height:18px;justify-content:center;width:18px}.csv-preview-info{align-items:flex-start;background:#e6f0ff;border-radius:8px;display:flex;gap:12px;padding:14px}.csv-preview-info__icon{color:#0038a8;flex-shrink:0;font-size:18px}.csv-preview-info__content{color:#374151;font-size:13px;line-height:1.5}.csv-preview-info__content strong{color:#111827}.modal-footer{background:#f9fafb;border-top:1px solid #e5e7eb;display:flex;gap:12px;justify-content:flex-end;padding:16px 20px}.btn-secondary{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;font-size:14px;font-weight:500;padding:10px 18px;transition:all .2s}.btn-secondary:hover{background:#f9fafb;border-color:#9ca3af}.btn-download{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:6px;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:8px;padding:10px 18px;transition:all .2s}.btn-download:hover:not(:disabled){box-shadow:0 4px 12px #10b9814d;transform:translateY(-1px)}.btn-download:disabled{cursor:not-allowed;opacity:.6}.payroll-details-row{align-items:center;background:#f9fafb;border-radius:8px;display:flex;gap:16px;padding:12px 16px}.payroll-detail-item{display:flex;flex-direction:column;gap:2px}.payroll-detail-item__label{color:#6b7280;font-size:10px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.payroll-detail-item__value{color:#111827;font-size:14px;font-weight:600}.payroll-detail-item__value--mono{color:#0038a8;font-family:JetBrains Mono,monospace}.payroll-detail-item__value--highlight{color:#10b981;font-family:JetBrains Mono,monospace}.payroll-detail-divider{background:#d1d5db;height:32px;width:1px}@media (max-width:1200px){.pl-stats{grid-template-columns:repeat(2,1fr)}.pl-expansion-layout{grid-template-columns:1fr}}@media (max-width:768px){.pl-header{align-items:flex-start;flex-direction:column;gap:16px}.pl-stats{grid-template-columns:1fr 1fr}.pl-table-container{overflow-x:auto}.pl-table{min-width:800px}.pl-footer{flex-direction:column;gap:16px}.pl-footer-stats{flex-wrap:wrap;justify-content:center}.payroll-details-row{flex-wrap:wrap}}.settings-page{margin:0 auto;max-width:1400px;padding:20px}.settings-page-header{border-bottom:2px solid #e5e7eb;display:flex;flex-direction:column;margin-bottom:30px;padding-bottom:20px}.settings-page-title{color:#0038a8;font-size:28px;font-weight:600;margin:0 0 4px}.settings-page-subtitle{color:#6b7280;font-size:14px;margin:0}.settings-card{background:#fff;border:1px solid var(--gray-200);border-radius:12px;margin-bottom:24px}.settings-card-header{align-items:center;border-bottom:1px solid var(--gray-200);display:flex;justify-content:space-between;padding:20px 24px}.settings-card-header-left{align-items:center;display:flex;gap:12px}.settings-card-icon{align-items:center;background:var(--ph-blue-light);border-radius:10px;color:var(--ph-blue);display:flex;font-size:20px;height:40px;justify-content:center;width:40px}.settings-card-icon.gold{background:#fef3c7;color:var(--ph-gold)}.settings-card-title{color:var(--gray-900);font-size:16px;font-weight:600;margin:0}.settings-card-description{color:var(--gray-500);font-size:13px;margin:0}.settings-card-body{padding:24px}.settings-card-footer{align-items:center;background:var(--gray-50);border-radius:0 0 12px 12px;border-top:1px solid var(--gray-200);display:flex;gap:12px;justify-content:flex-end;padding:16px 24px}.compliance-badge{align-items:center;background:var(--success-light);border-radius:20px;color:var(--success);display:flex;font-size:12px;font-weight:500;gap:6px;padding:6px 12px}.compliance-badge.warning{background:var(--warning-light);color:var(--warning)}.settings-info-box{align-items:flex-start;background:var(--ph-blue-light);border-radius:8px;display:flex;gap:12px;margin-bottom:20px;padding:14px 16px}.settings-info-box-icon{color:var(--ph-blue);flex-shrink:0;font-size:18px;margin-top:1px}.settings-info-box-text{color:var(--ph-blue-dark);font-size:13px;line-height:1.5}.settings-form-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(3,1fr)}.settings-form-grid-2{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(2,1fr)}.rate-card{background:#fff;border:1px solid var(--gray-200);border-radius:10px;cursor:pointer;padding:16px;position:relative;transition:all .15s}.rate-card:hover{border-color:var(--ph-blue);box-shadow:0 0 0 2px var(--ph-blue-light)}.rate-card:focus-within{border-color:var(--ph-blue);box-shadow:0 0 0 3px var(--ph-blue-light)}.rate-card.error{background:var(--error-light);border-color:var(--error)}.rate-card.error:hover{border-color:var(--error);box-shadow:0 0 0 2px var(--error-light)}.rate-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.rate-card-label{color:var(--gray-700);font-size:13px;font-weight:500}.rate-card-badges{align-items:center;display:flex;gap:6px}.rate-card-edit{align-items:center;color:var(--gray-400);display:flex;font-size:12px;height:20px;justify-content:center;opacity:0;transition:opacity .15s;width:20px}.rate-card:hover .rate-card-edit{opacity:1}.rate-card-check{align-items:center;background:var(--success);border-radius:50%;color:#fff;display:flex;font-size:12px;height:20px;justify-content:center;width:20px}.rate-card-check.warning{background:var(--warning)}.rate-card-value{align-items:center;display:flex;gap:4px;margin-bottom:8px}.rate-card-input{background:#0000;border:2px dashed #0000;border-radius:6px;color:var(--ph-blue);cursor:pointer;font-size:28px;font-weight:700;padding:4px 8px;text-align:right;transition:all .15s;width:90px}.rate-card:hover .rate-card-input{background:var(--gray-50);border-color:var(--gray-300)}.rate-card-input:focus{background:#fff;border-color:var(--ph-blue);border-style:solid;cursor:text;outline:none}.rate-card-input.error{border-color:var(--error);color:var(--error)}.rate-card-input.error:focus{border-color:var(--error);box-shadow:0 0 0 3px var(--error-light)}.rate-card-suffix{color:var(--gray-500);font-size:18px;font-weight:600}.rate-card-description{color:var(--gray-500);font-size:12px}.rate-card-min{color:var(--gray-400);font-size:11px;margin-top:4px}.rate-card-min.error{color:var(--error)}.settings-section-title{align-items:center;color:var(--gray-700);display:flex;font-size:14px;font-weight:600;gap:8px;margin-bottom:16px}.settings-section-title-icon{color:var(--ph-gold)}.settings-divider{background:var(--gray-200);height:1px;margin:24px 0}.settings-input-group{margin-bottom:20px}.settings-input-label{color:var(--gray-700);display:block;font-size:13px;font-weight:500;margin-bottom:6px}.settings-input-field{border:1px solid var(--gray-300);border-radius:8px;color:var(--gray-900);font-family:inherit;font-size:14px;padding:10px 14px;transition:all .15s;width:100%}.settings-input-field:focus{border-color:var(--ph-blue);box-shadow:0 0 0 3px var(--ph-blue-light);outline:none}.settings-input-hint{color:var(--gray-500);font-size:12px;margin-top:4px}.settings-input-with-suffix{align-items:center;display:flex}.settings-input-with-suffix .settings-input-field{border-bottom-right-radius:0;border-top-right-radius:0}.settings-input-suffix{background:var(--gray-100);border:1px solid var(--gray-300);border-left:none;border-radius:0 8px 8px 0;color:var(--gray-600);font-size:14px;padding:10px 14px}.settings-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-family:inherit;font-size:14px;font-weight:500;gap:8px;justify-content:center;padding:10px 20px;transition:all .15s}.settings-btn-primary{background:var(--ph-blue);color:#fff}.settings-btn-primary:hover:not(:disabled){background:var(--ph-blue-dark)}.settings-btn-primary:disabled{background:var(--gray-300);color:var(--gray-500);cursor:not-allowed}.settings-btn-secondary{background:#fff;border:1px solid var(--gray-300);color:var(--gray-700)}.settings-btn-secondary:hover{background:var(--gray-50)}.settings-btn-sm{font-size:13px;padding:8px 14px}.settings-loading{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.settings-loading-spinner{animation:spin 1s linear infinite;border:3px solid var(--gray-200);border-radius:50%;border-top-color:var(--ph-blue);height:40px;margin-bottom:16px;width:40px}@keyframes spin{to{transform:rotate(1turn)}}.settings-loading-text{color:var(--gray-500);font-size:14px}.settings-error{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.settings-error-icon{font-size:48px;margin-bottom:16px}.settings-error-title{color:var(--gray-900);font-size:18px;font-weight:600;margin-bottom:8px}.settings-error-message{color:var(--gray-500);font-size:14px;margin-bottom:20px}@media (max-width:1024px){.settings-form-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.settings-page{max-width:100%;padding:16px}.settings-form-grid,.settings-form-grid-2{grid-template-columns:1fr}.settings-card-header{align-items:flex-start;flex-direction:column;gap:12px}.settings-card-footer{flex-direction:column}.settings-btn{width:100%}}.holiday-calendar-container{width:100%}.settings-section-description{color:var(--gray-600);font-size:var(--text-sm);margin-bottom:var(--space-6);margin-top:var(--space-2)}.holiday-controls{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-4);justify-content:space-between;margin-bottom:var(--space-6)}.holiday-year-selector{align-items:center;display:flex;gap:var(--space-2)}.holiday-year-selector label{color:var(--gray-700);font-weight:var(--font-medium)}.holiday-year-selector select{background-color:#fff;border:1px solid var(--gray-300);border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-sm);padding:var(--space-2) var(--space-3)}.holiday-actions{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-3)}.holiday-calendar{background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);margin-bottom:var(--space-6);padding:var(--space-6)}.calendar-navigation{align-items:center;border-bottom:2px solid var(--gray-100);display:flex;justify-content:space-between;margin-bottom:var(--space-6);padding-bottom:var(--space-4)}.calendar-nav-button{align-items:center;background:#fff;border:1px solid var(--gray-300);border-radius:var(--radius-md);color:var(--gray-700);cursor:pointer;display:flex;font-size:var(--text-lg);height:36px;justify-content:center;transition:all var(--transition-base);width:36px}.calendar-nav-button:hover{background:var(--gray-50);border-color:var(--ph-blue);color:var(--ph-blue)}.calendar-month-title{color:var(--gray-900);font-size:var(--text-xl);font-weight:var(--font-semibold);margin:0}.calendar-grid{grid-gap:1px;background:var(--gray-200);border:1px solid var(--gray-200);border-radius:var(--radius-lg);display:grid;gap:1px;grid-template-columns:repeat(7,1fr);overflow:hidden}.calendar-day-header{background:var(--gray-50);color:var(--gray-700);font-size:var(--text-sm);font-weight:var(--font-semibold);padding:var(--space-3);text-align:center}.calendar-date{background:#fff;cursor:pointer;min-height:80px;padding:var(--space-2);position:relative;transition:all var(--transition-base)}.calendar-date-empty,.calendar-date:hover:not(.calendar-date-empty){background:var(--gray-50)}.calendar-date-empty{cursor:default}.calendar-date-number{color:var(--gray-700);display:block;font-size:var(--text-sm);font-weight:var(--font-medium);margin-bottom:var(--space-1)}.calendar-date-holiday{cursor:default}.calendar-date-regular{background:var(--ph-blue-lighter);border:2px solid var(--ph-blue-light)}.calendar-date-regular:hover{background:var(--ph-blue-light)}.calendar-date-special{background:var(--ph-yellow-lighter);border:2px solid var(--ph-yellow-light)}.calendar-date-special:hover{background:var(--ph-yellow-light)}.calendar-date-company{background:var(--success-light);border:2px solid var(--success)}.calendar-date-company:hover{background:#10b98133}.calendar-holiday-info{border-radius:var(--radius-sm);cursor:pointer;padding:var(--space-1);transition:all var(--transition-base)}.calendar-holiday-info:hover{background:#0000000d}.calendar-holiday-name{color:var(--gray-900);display:block;font-size:var(--text-xs);font-weight:var(--font-medium);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.holiday-legend{border-top:1px solid var(--gray-200);display:flex;flex-wrap:wrap;gap:var(--space-6);margin-top:var(--space-4);padding-top:var(--space-4)}.holiday-legend-item{align-items:center;color:var(--gray-600);display:flex;font-size:var(--text-sm);gap:var(--space-2)}.holiday-legend-color{border:2px solid #0000;border-radius:var(--radius-sm);height:16px;width:16px}.holiday-legend-regular{background:var(--ph-blue-lighter);border-color:var(--ph-blue-light)}.holiday-legend-special{background:var(--ph-yellow-lighter);border-color:var(--ph-yellow-light)}.holiday-legend-company{background:var(--success-light);border-color:var(--success)}.holiday-list{background:var(--gray-50);border-radius:var(--radius-xl);margin-top:var(--space-6);padding:var(--space-6)}.holiday-list h3{color:var(--gray-900);font-size:var(--text-lg);font-weight:var(--font-semibold);margin:0 0 var(--space-4) 0}.holiday-list-items{display:flex;flex-direction:column;gap:var(--space-2)}.holiday-list-item{align-items:center;background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-lg);display:flex;justify-content:space-between;padding:var(--space-3) var(--space-4);transition:all var(--transition-base)}.holiday-list-item:hover{box-shadow:var(--shadow-sm)}.holiday-list-info{align-items:center;display:flex;gap:var(--space-4)}.holiday-list-date{color:var(--gray-700);font-weight:var(--font-medium);min-width:60px}.holiday-list-name{color:var(--gray-900);font-weight:var(--font-medium)}.holiday-list-type{border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:var(--font-medium);padding:var(--space-1) var(--space-2);text-transform:uppercase}.holiday-type-badge-regular{background:var(--ph-blue-lighter);color:var(--ph-blue-dark)}.holiday-type-badge-special{background:var(--ph-yellow-lighter);color:var(--ph-yellow-dark)}.holiday-type-badge-company{background:var(--success-light);color:var(--success-dark)}.holiday-list-delete{align-items:center;background:#fff;border:1px solid var(--error-light);border-radius:var(--radius-md);color:var(--error);cursor:pointer;display:flex;font-size:var(--text-xl);height:32px;justify-content:center;transition:all var(--transition-base);width:32px}.holiday-list-delete:hover{background:var(--error);border-color:var(--error);color:#fff}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:var(--space-4);position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;border-radius:var(--radius-xl);box-shadow:var(--shadow-2xl);display:flex;flex-direction:column;max-height:90vh;max-width:500px;overflow:hidden;width:100%}.holiday-modal{max-width:400px}.presets-modal{max-width:600px}.modal-header{align-items:center;border-bottom:1px solid var(--gray-200);display:flex;justify-content:space-between;padding:var(--space-6)}.modal-header h3{color:var(--gray-900);font-size:var(--text-xl);font-weight:var(--font-semibold);margin:0}.modal-close{align-items:center;background:var(--gray-100);border:none;border-radius:var(--radius-md);color:var(--gray-500);cursor:pointer;display:flex;font-size:var(--text-2xl);height:36px;justify-content:center;transition:all var(--transition-base);width:36px}.modal-close:hover{background:var(--gray-200);color:var(--gray-700)}.modal-actions,.modal-content form{padding:var(--space-6)}.modal-actions{display:flex;gap:var(--space-3);justify-content:flex-end;margin-top:var(--space-6);padding-top:0}.presets-content{flex:1 1;overflow-y:auto;padding:var(--space-6)}.presets-description{color:var(--gray-600)}.presets-description,.presets-section{margin-bottom:var(--space-6)}.presets-section h4{color:var(--gray-900);font-size:var(--text-base);font-weight:var(--font-semibold);margin:0 0 var(--space-3) 0}.presets-list{grid-gap:var(--space-2);display:grid;gap:var(--space-2)}.preset-item{align-items:center;border-radius:var(--radius-md);cursor:pointer;display:flex;gap:var(--space-3);padding:var(--space-2);transition:all var(--transition-base)}.preset-item:hover{background:var(--gray-50)}.preset-item input[type=checkbox]{cursor:pointer;height:16px;width:16px}.presets-note{color:var(--gray-600);font-size:var(--text-sm);margin-bottom:var(--space-2)}.presets-moveable{grid-gap:var(--space-1);display:grid;gap:var(--space-1);list-style:none;margin:0;padding:0}.presets-moveable li{background:var(--gray-100);border-radius:var(--radius-md);color:var(--gray-700);font-size:var(--text-sm);padding:var(--space-2)}@media (max-width:768px){.holiday-controls{align-items:stretch;flex-direction:column}.holiday-actions{justify-content:center}.holiday-calendar{padding:var(--space-4)}.calendar-grid{gap:0}.calendar-date{min-height:60px;padding:var(--space-1)}.calendar-date-number{font-size:var(--text-xs)}.calendar-holiday-name{font-size:10px}.holiday-legend{font-size:var(--text-xs);gap:var(--space-3)}.holiday-list-info{flex-wrap:wrap;gap:var(--space-2)}.modal-content{margin:var(--space-2)}}@media (max-width:480px){.calendar-day-header{font-size:var(--text-xs);padding:var(--space-2)}.holiday-list-date{min-width:auto}.holiday-list-name{font-size:var(--text-sm)}}
/*# sourceMappingURL=main.3625e71e.css.map*/