.login-container{display:flex;height:100vh;width:100%;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;position:relative;overflow:hidden;background:linear-gradient(180deg,#f0f4ff,#e0e7ff)}.geometric-bg{position:absolute;width:100%;height:100%;z-index:0;pointer-events:none}.shape{position:absolute;background:linear-gradient(135deg,#16a34a,#9333ea,#2563eb);opacity:.8;transition:transform .5s ease,opacity .5s ease;pointer-events:auto;box-shadow:0 8px 20px #0000004d,0 4px 10px #0003}.shape:hover{opacity:.45;transform:scale(1.2) rotate(15deg)}.shape-1{width:250px;height:250px;border-radius:50%;top:5%;left:5%;animation:float 7s infinite ease-in-out}.shape-2{width:180px;height:180px;clip-path:polygon(50% 0%,100% 50%,50% 100%,0% 50%);bottom:5%;left:95%;animation:float 11s infinite ease-in-out 1s}.shape-3{width:160px;height:160px;clip-path:polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%);top:30%;left:90%;animation:float 13s infinite ease-in-out 3s}.shape-4{width:200px;height:200px;border-radius:25px;transform:rotate(30deg);bottom:15%;left:10%;animation:float 15s infinite ease-in-out 5s}.shape-5{width:140px;height:140px;border-radius:50%;top:45%;left:20%;animation:float 10s infinite ease-in-out 2s}.shape-6{width:170px;height:170px;clip-path:polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%);bottom:30%;left:30%;animation:float 12s infinite ease-in-out 4s}.shape-7{width:150px;height:150px;clip-path:polygon(50% 0%,100% 50%,50% 100%,0% 50%);top:60%;left:40%;animation:float 14s infinite ease-in-out 6s}.shape-8{width:190px;height:190px;border-radius:50%;bottom:10%;left:50%;animation:float 16s infinite ease-in-out 8s}.shape-9{width:120px;height:120px;clip-path:polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%);top:50%;left:60%;animation:float-horizontal 11s infinite ease-in-out 0s}.shape-10{width:160px;height:160px;border-radius:25px;transform:rotate(30deg);top:70%;left:70%;animation:float-horizontal 13s infinite ease-in-out 2s}.shape-11{width:130px;height:130px;clip-path:polygon(50% 0%,83% 12%,100% 43%,94% 78%,68% 100%,32% 100%,6% 78%,0% 43%,17% 12%);top:20%;left:80%;animation:float 9s infinite ease-in-out 4s}.shape-12{width:110px;height:110px;border-radius:50% 20%/10% 40%;bottom:20%;left:85%;animation:float-horizontal 15s infinite ease-in-out 6s}@keyframes float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-30px) rotate(15deg)}}@keyframes float-horizontal{0%,to{transform:translate(0) rotate(0)}50%{transform:translate(-25px) rotate(15deg)}}.login-left-panel{flex:1;background:linear-gradient(135deg,#1e3a8a,#3b82f6);color:#fff;padding:2rem;display:flex;flex-direction:column;justify-content:space-between;position:relative;z-index:1;min-width:0}.login-left-panel:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 30% 20%,rgba(255,255,255,.2) 0%,transparent 30%);z-index:-1}.login-brand{margin-bottom:1.5rem}.logo-container{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.logo-icon{width:56px;height:56px;background:#ffffff40;border-radius:12px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #0003}.login-brand h1{font-size:2rem;font-weight:800;margin-bottom:.5rem}.login-brand h2{font-size:1.4rem;font-weight:600;margin-bottom:.8rem;opacity:.95}.login-brand p{font-size:1rem;opacity:.9}.login-features{display:flex;flex-direction:column;gap:1.2rem;margin-bottom:1.5rem}.feature-item{display:flex;align-items:center;gap:1rem;padding:.8rem;background:#ffffff26;border-radius:10px;border:1px solid rgba(255,255,255,.2);transition:transform .3s ease,background .3s ease}.feature-item:hover{transform:translateY(-3px);background:#fff3}.feature-icon{width:44px;height:44px;background:#fff3;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.feature-text h4{font-size:1rem;font-weight:600;margin-bottom:.2rem}.feature-text p{font-size:.9rem;opacity:.9}.management-badge{display:flex;align-items:center;gap:.75rem;padding:.6rem 1rem;background:#ffffff26;border-radius:8px;border:1px solid rgba(255,255,255,.2);font-size:.9rem;width:fit-content;margin-top:auto;margin-bottom:0}.login-form-container{flex:1;display:flex;align-items:center;justify-content:center;background:#fffc;padding:1.5rem;position:relative;z-index:1;min-width:0}.form-pattern{position:absolute;inset:0;z-index:0;opacity:.15}.pattern-circle{width:130px;height:130px;border-radius:50%;background:linear-gradient(135deg,#16a34a,#6433ea);top:5%;left:5%;animation:float 10s infinite ease-in-out 1s;box-shadow:0 6px 15px #00000040,0 3px 8px #00000026}.pattern-square{width:100px;height:100px;transform:rotate(30deg);background:linear-gradient(135deg,#2563eb,#9333ea);bottom:5%;left:95%;animation:float 12s infinite ease-in-out 3s;box-shadow:0 6px 15px #00000040,0 3px 8px #00000026}.pattern-triangle{width:0;height:0;border-left:70px solid transparent;border-right:70px solid transparent;border-bottom:110px solid #3b82f6;top:25%;left:90%;animation:float 14s infinite ease-in-out 5s}.pattern-hexagon{width:110px;height:110px;clip-path:polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%);top:15%;left:10%;animation:float 11s infinite ease-in-out 2s}.pattern-diamond{width:90px;height:90px;clip-path:polygon(50% 0%,100% 50%,50% 100%,0% 50%);bottom:15%;left:15%;animation:float 13s infinite ease-in-out 4s}.pattern-circle-2{width:150px;height:150px;border-radius:50%;top:35%;left:25%;animation:float-horizontal 9s infinite ease-in-out 0s}.pattern-triangle-2{width:0;height:0;border-left:60px solid transparent;border-right:60px solid transparent;border-bottom:90px solid #22c55e;bottom:5%;left:35%;animation:float-horizontal 15s infinite ease-in-out 6s}.pattern-hexagon-2{width:120px;height:120px;clip-path:polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%);top:45%;left:45%;animation:float 12s infinite ease-in-out 3s}.pattern-square-2{width:110px;height:110px;transform:rotate(30deg);bottom:25%;left:55%;animation:float-horizontal 14s infinite ease-in-out 5s}.pattern-diamond-2{width:80px;height:80px;clip-path:polygon(50% 0%,100% 50%,50% 100%,0% 50%);top:55%;left:65%;animation:float 16s infinite ease-in-out 7s}.pattern-star{width:100px;height:100px;clip-path:polygon(50% 0%,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%);top:20%;left:75%;animation:float 10s infinite ease-in-out 4s}.pattern-ellipse{width:140px;height:80px;border-radius:50%;bottom:30%;left:85%;animation:float-horizontal 12s infinite ease-in-out 6s}.login-form{width:100%;max-width:420px;background:#fff;padding:2.5rem;border-radius:16px;box-shadow:0 15px 40px #0000001f;position:relative;z-index:2}.form-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}.form-logo{width:50px;height:50px;background:linear-gradient(135deg,#047fbb,#ee2346);border-radius:12px;display:flex;align-items:center;justify-content:center}.login-header h2{font-size:1.8rem;font-weight:700;color:#1e293b;margin-bottom:.3rem}.login-header p{color:#475569;font-size:.95rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:#374151;font-size:.9rem}.input-with-icon{position:relative}.input-with-icon svg{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:#475569;width:22px;height:22px}.input-with-icon input{width:100%;padding:.8rem 3rem .8rem 2.8rem;border:1px solid #d1d5db;border-radius:10px;font-size:1rem;transition:all .3s ease}.input-with-icon input:focus{outline:none;border-color:#6b21a8;box-shadow:0 0 0 3px #6b21a81a}.password-toggle{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:#475569;padding:.5rem;display:flex;align-items:center;justify-content:center;transition:color .3s ease;z-index:10;height:2.5rem;width:2.5rem}.password-toggle:hover{color:#6b21a8}.password-toggle:focus{outline:none;color:#6b21a8}.password-toggle svg{flex-shrink:0}.form-options{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.remember-me{display:flex;align-items:center;gap:.5rem}.remember-me label{font-size:.9rem;color:#475569}.forgot-password{color:#6b21a8;text-decoration:none;font-size:.9rem}.forgot-password:hover{text-decoration:underline;color:#4c1d95}.login-button{width:100%;padding:.9rem;background:linear-gradient(to right,#047fbb,#ee2346);color:#fff;border:none;border-radius:10px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:.5rem}.login-button:hover{transform:translateY(-2px);box-shadow:0 8px 20px #6b21a840}.login-button:disabled{opacity:.65;cursor:not-allowed;transform:none}.login-button svg{width:22px;height:22px}.spinner{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.security-notice{display:flex;align-items:center;gap:.5rem;margin-top:1.5rem;padding:.8rem;background:#f8fafc;border-radius:8px;font-size:.85rem;color:#475569}.security-notice svg{width:18px;height:18px;color:#6b21a8}.error-message{background-color:#fee2e2;color:#dc2626;padding:.8rem;border-radius:8px;margin-bottom:1.5rem;font-size:.9rem;border-left:4px solid #dc2626;display:flex;align-items:center;gap:.5rem}.error-message svg{width:20px;height:20px}@media (max-width: 968px){.login-container{flex-direction:column;height:auto;min-height:100vh}.login-left-panel{padding:1.5rem;flex:0 0 auto}.login-form-container{padding:1rem;flex:0 0 auto}.shape-1,.shape-2,.shape-3,.shape-4,.shape-5,.shape-6,.shape-7,.shape-8,.shape-9,.shape-10,.shape-11,.shape-12{transform:scale(.8);opacity:.2}.pattern-circle,.pattern-square,.pattern-triangle,.pattern-hexagon,.pattern-diamond,.pattern-circle-2,.pattern-triangle-2,.pattern-hexagon-2,.pattern-square-2,.pattern-diamond-2,.pattern-star,.pattern-ellipse{transform:scale(.8)}.management-badge{margin-bottom:.5rem}}@media (max-width: 640px){.login-brand h1{font-size:1.6rem}.login-brand h2{font-size:1.2rem}.login-form{padding:2rem}.form-options{flex-direction:column;align-items:flex-start;gap:.75rem}.feature-item{flex-direction:column;text-align:center;padding:.75rem}.shape-5,.shape-6,.shape-7,.shape-8,.shape-9,.shape-10,.shape-11,.shape-12,.pattern-hexagon-2,.pattern-square-2,.pattern-diamond-2,.pattern-star,.pattern-ellipse{display:none}.shape-1,.shape-2,.shape-3,.shape-4,.pattern-circle,.pattern-square,.pattern-triangle,.pattern-hexagon,.pattern-diamond,.pattern-circle-2,.pattern-triangle-2{transform:scale(.6)}.management-badge{font-size:.85rem;padding:.5rem .8rem}}.login-with-bg{background-image:url(https://images.unsplash.com/photo-1517245386807-bb43f82c33c4?ixlib=rb-4.0.3&auto=format&fit=crop&w=2070&q=80);background-size:cover;background-position:center}.login-with-bg .login-left-panel{background:#047fbb}.login-with-bg .login-form-container{background:#fffffff2}.pattern-circle:hover,.pattern-square:hover,.pattern-triangle:hover,.pattern-hexagon:hover,.pattern-diamond:hover,.pattern-circle-2:hover,.pattern-triangle-2:hover,.pattern-hexagon-2:hover,.pattern-square-2:hover,.pattern-diamond-2:hover,.pattern-star:hover,.pattern-ellipse:hover{opacity:.6;transform:scale(1.15) rotate(10deg);box-shadow:0 10px 20px #00000059,0 5px 10px #00000040}.public-page{min-height:100vh;background:linear-gradient(135deg,#f5f7fa,#e9ecef);padding:2rem 1rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.public-container{max-width:900px;margin:0 auto;background:#fff;border-radius:16px;box-shadow:0 4px 6px #00000012,0 10px 20px #0000000d;overflow:hidden}.public-header{background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff;padding:3rem 2rem;text-align:center;border-bottom:4px solid #4338ca}.company-logo{margin-bottom:1.5rem}.company-name{font-size:1.75rem;font-weight:700;letter-spacing:1px;margin:0;text-transform:uppercase;color:#fff}.public-header h1{font-size:2.5rem;font-weight:700;margin:0 0 .75rem;line-height:1.2;letter-spacing:-.025em}.last-updated{font-size:.9375rem;opacity:.9;margin:0;font-weight:500}.public-content{padding:3rem 2.5rem;line-height:1.7;color:#374151}.public-content section{margin-bottom:2.5rem}.public-content section:last-child{margin-bottom:0}.public-content h2{font-size:1.75rem;font-weight:700;color:#1f2937;margin:0 0 1rem;padding-bottom:.5rem;border-bottom:3px solid #e5e7eb;letter-spacing:-.025em}.public-content h3{font-size:1.25rem;font-weight:600;color:#374151;margin:1.5rem 0 .75rem}.public-content p{margin:0 0 1rem;font-size:1rem}.public-content ul,.public-content ol{margin:1rem 0;padding-left:1.5rem}.public-content li{margin-bottom:.625rem;line-height:1.6}.public-content strong{font-weight:600;color:#1f2937}.public-content a{color:#6366f1;text-decoration:none;font-weight:500;transition:color .2s ease}.public-content a:hover{color:#4f46e5;text-decoration:underline}.contact-info{background:#f9fafb;border:2px solid #e5e7eb;border-radius:12px;padding:1.5rem;margin:1.5rem 0}.contact-info p{margin:.5rem 0}.contact-info a{font-weight:600}.contact-card{background:#fff;border:2px solid #e5e7eb;border-radius:12px;padding:1.5rem;margin-bottom:1.25rem}.contact-card:last-child{margin-bottom:0}.contact-card h3{color:#6366f1;font-size:1.125rem;font-weight:600;margin:0 0 1rem}.contact-card p{margin:.375rem 0;font-size:.9375rem}.contact-detail{font-weight:500}.response-time{font-style:italic;color:#6b7280;font-size:.875rem;margin-top:.75rem!important}.faq-item{background:#f9fafb;border-left:4px solid #6366f1;padding:1.25rem;margin-bottom:1.25rem;border-radius:8px}.faq-item h3{color:#1f2937;font-size:1.125rem;margin:0 0 .75rem}.faq-item p,.faq-item ul{margin-bottom:.75rem}.faq-item p:last-child,.faq-item ul:last-child{margin-bottom:0}.acknowledgment{background:linear-gradient(135deg,#fef3c7,#fde68a);border:2px solid #fbbf24;border-radius:12px;padding:1.5rem;margin-top:2rem;text-align:center}.acknowledgment p{margin:0;color:#92400e;font-size:1rem}.public-footer{background:#f9fafb;border-top:1px solid #e5e7eb;padding:2rem;text-align:center;color:#6b7280;font-size:.875rem}.public-footer p{margin:.5rem 0}.public-footer a{color:#6366f1;text-decoration:none;font-weight:500}.public-footer a:hover{text-decoration:underline}@media (max-width: 768px){.public-page{padding:1rem .5rem}.public-container{border-radius:8px}.public-header{padding:2rem 1.5rem}.company-name{font-size:1.25rem}.public-header h1{font-size:1.75rem}.last-updated{font-size:.875rem}.public-content{padding:2rem 1.5rem}.public-content h2{font-size:1.5rem}.public-content h3{font-size:1.125rem}.contact-info,.contact-card,.faq-item{padding:1rem}}@media (max-width: 480px){.public-header{padding:1.5rem 1rem}.public-header h1{font-size:1.5rem}.public-content{padding:1.5rem 1rem}.public-content h2{font-size:1.25rem}.public-content h3{font-size:1rem}}@media print{.public-page{background:#fff;padding:0}.public-container{box-shadow:none}.public-header{background:#fff;color:#000;border-bottom:2px solid black}.company-name{color:#000}.public-footer{border-top:2px solid black}.public-content a{color:#000;text-decoration:underline}}:root{--color-primary: #6366f1;--color-primary-light: #818cf8;--color-primary-dark: #4f46e5;--color-success: #10b981;--color-success-light: #34d399;--color-success-bg: #ecfdf5;--color-danger: #ef4444;--color-danger-light: #f87171;--color-danger-bg: #fef2f2;--color-warning: #f59e0b;--color-warning-light: #fbbf24;--color-neutral-50: #fafafa;--color-neutral-100: #f5f5f5;--color-neutral-200: #e5e5e5;--color-neutral-300: #d4d4d4;--color-neutral-400: #a3a3a3;--color-neutral-500: #737373;--color-neutral-600: #525252;--color-neutral-700: #404040;--color-neutral-800: #262626;--color-neutral-900: #171717;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 9999px;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .25s cubic-bezier(.4, 0, .2, 1);--transition-slow: .35s cubic-bezier(.4, 0, .2, 1)}.life-container{padding:0;max-width:100%;margin:0}.life-header{text-align:left;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--color-neutral-200)}.life-header h1{font-size:2rem;font-weight:700;color:var(--color-neutral-900);margin:0 0 .5rem;letter-spacing:-.025em}.life-header p{color:var(--color-neutral-600);font-size:.95rem;margin:0;font-weight:400}.life-content{display:flex;flex-direction:column;gap:1.5rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.25rem;margin-bottom:0}.stat-card{background:#fff;padding:1.5rem;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--color-neutral-200);display:flex;align-items:flex-start;gap:1rem;transition:all var(--transition-base);position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--color-primary),var(--color-primary-light));opacity:0;transition:opacity var(--transition-base)}.stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px);border-color:var(--color-neutral-300)}.stat-card:hover:before{opacity:1}.stat-icon{width:48px;height:48px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0;background:linear-gradient(135deg,var(--color-primary-light),var(--color-primary));color:#fff;box-shadow:var(--shadow-sm)}.stat-card:nth-child(2) .stat-icon{background:linear-gradient(135deg,var(--color-warning-light),var(--color-warning))}.stat-card:nth-child(3) .stat-icon{background:linear-gradient(135deg,var(--color-success-light),var(--color-success))}.stat-card:nth-child(4) .stat-icon{background:linear-gradient(135deg,var(--color-danger-light),var(--color-danger))}.stat-info{flex:1;display:flex;flex-direction:column;gap:.25rem}.stat-info h3{margin:0;font-size:2rem;font-weight:700;color:var(--color-neutral-900);line-height:1;letter-spacing:-.025em}.stat-info p{margin:0;color:var(--color-neutral-600);font-size:.875rem;font-weight:500;letter-spacing:.01em}.filters-container{background:#fff;padding:1.5rem;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--color-neutral-200);margin-bottom:0}.filters-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem}.filters-header h3{font-size:1.125rem;font-weight:600;color:var(--color-neutral-900);margin:0}.search-box{margin-bottom:1rem;padding:0;background:none;border-radius:0}.search-box input{width:100%;padding:.75rem 1rem;border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);font-size:.9375rem;font-family:inherit;transition:all var(--transition-fast);background:var(--color-neutral-50);color:var(--color-neutral-900)}.search-box input:focus{outline:none;border-color:var(--color-primary);background:#fff;box-shadow:0 0 0 3px #6366f11a}.search-box input::placeholder{color:var(--color-neutral-400)}.filter-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.filter-group{display:flex;flex-direction:column;gap:.5rem}.filter-group label{display:block;margin-bottom:0;font-weight:600;color:var(--color-neutral-700);font-size:.875rem;letter-spacing:.01em}.filter-group select{width:100%;padding:.625rem 2.5rem .625rem .875rem;border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);background:var(--color-neutral-50);font-size:.9375rem;color:var(--color-neutral-900);cursor:pointer;transition:all var(--transition-fast);appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23737373' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center}.filter-group select:hover{border-color:var(--color-neutral-400);background-color:#fff}.filter-group select:focus{outline:none;border-color:var(--color-primary);background:#fff;box-shadow:0 0 0 3px #6366f11a}.clear-filters{background:transparent;color:var(--color-neutral-600);border:1px solid var(--color-neutral-300);padding:.5rem 1rem;border-radius:var(--radius-md);cursor:pointer;font-weight:500;font-size:.875rem;transition:all var(--transition-fast)}.clear-filters:hover{background:var(--color-neutral-100);border-color:var(--color-neutral-400);color:var(--color-neutral-700)}.clear-filters:active{transform:scale(.98)}.main-content{display:grid;grid-template-columns:1fr 380px;gap:1.5rem}.employee-list-container{background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--color-neutral-200);overflow:hidden;display:flex;flex-direction:column}.section-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid var(--color-neutral-200);background:var(--color-neutral-50)}.section-header h2{margin:0;color:var(--color-neutral-900);font-size:1.125rem;font-weight:600;letter-spacing:-.01em}.count-badge{background:var(--color-primary);color:#fff;padding:.25rem .75rem;border-radius:var(--radius-full);font-size:.8125rem;font-weight:600;letter-spacing:.01em}.employee-scroll-container{flex:1;overflow-y:auto;padding:1rem;max-height:65vh}.employee-scroll-container::-webkit-scrollbar{width:6px}.employee-scroll-container::-webkit-scrollbar-track{background:var(--color-neutral-100)}.employee-scroll-container::-webkit-scrollbar-thumb{background:var(--color-neutral-300);border-radius:var(--radius-full)}.employee-scroll-container::-webkit-scrollbar-thumb:hover{background:var(--color-neutral-400)}.employee-card{display:flex;align-items:center;padding:1rem;border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);margin-bottom:.75rem;cursor:pointer;transition:all var(--transition-base);background:#fff;gap:1rem}.employee-card:hover{background:var(--color-neutral-50);transform:translate(4px);box-shadow:var(--shadow-sm);border-color:var(--color-neutral-300)}.employee-card.selected{border-color:var(--color-primary);background:#6366f10d;box-shadow:0 0 0 1px var(--color-primary)}.employee-avatar{width:52px;height:52px;border-radius:var(--radius-full);background:linear-gradient(135deg,var(--color-primary),var(--color-primary-light));display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:1.25rem;flex-shrink:0;box-shadow:var(--shadow-sm);letter-spacing:-.02em}.employee-info{flex:1;min-width:0}.employee-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.375rem}.employee-info h4{margin:0;color:var(--color-neutral-900);font-size:1rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:-.01em}.employee-details{margin:0 0 .25rem;font-size:.8125rem;color:var(--color-neutral-600);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500}.employee-id{margin:0;font-size:.75rem;color:var(--color-neutral-400);font-weight:500;font-family:SF Mono,Monaco,Consolas,monospace;letter-spacing:.02em}.history-icon{background:none;border:none;font-size:1.125rem;cursor:pointer;padding:.25rem .375rem;border-radius:var(--radius-sm);transition:all var(--transition-fast);color:var(--color-neutral-400);line-height:1}.history-icon:hover{background:var(--color-neutral-100);color:var(--color-neutral-600);transform:scale(1.1)}.history-icon:active{transform:scale(.95)}.points-section{display:flex;flex-direction:column;gap:.625rem;min-width:220px}.points-group{display:flex;align-items:center;justify-content:space-between;padding:.625rem .75rem;border-radius:var(--radius-md);border:1px solid;transition:all var(--transition-fast)}.points-group.red-points{background:var(--color-danger-bg);border-color:#ef444433}.points-group.green-points{background:var(--color-success-bg);border-color:#10b98133}.points-display{display:flex;flex-direction:column;align-items:flex-start;gap:.125rem}.points-label{font-size:.6875rem;font-weight:700;color:var(--color-neutral-600);text-transform:uppercase;letter-spacing:.05em}.points-value{font-size:1.25rem;font-weight:700;padding:0;border-radius:0;transition:all var(--transition-fast);letter-spacing:-.02em}.red-points .points-value{color:var(--color-danger)}.green-points .points-value{color:var(--color-success)}.points-value.pending{background:transparent;color:var(--color-warning);border:none;animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.points-controls{display:flex;gap:.375rem}.points-btn{width:36px;height:36px;border:none;border-radius:var(--radius-md);font-size:1.125rem;font-weight:700;cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-sm)}.points-btn:disabled{opacity:.4;cursor:not-allowed;transform:none;box-shadow:none}.points-btn.decrease{background:#fff;color:var(--color-danger);border:1.5px solid var(--color-danger)}.points-btn.decrease:hover:not(:disabled){background:var(--color-danger);color:#fff;transform:scale(1.08);box-shadow:var(--shadow-md)}.points-btn.increase{background:#fff;color:var(--color-success);border:1.5px solid var(--color-success)}.points-btn.increase:hover:not(:disabled){background:var(--color-success);color:#fff;transform:scale(1.08);box-shadow:var(--shadow-md)}.points-btn:active:not(:disabled){transform:scale(.95)}.adjustment-modal-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn var(--transition-base)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.adjustment-modal{background:#fff;padding:2rem;border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);width:90%;max-width:480px;max-height:85vh;overflow-y:auto;animation:slideUp var(--transition-slow)}@keyframes slideUp{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.adjustment-modal h3{margin:0 0 .75rem;color:var(--color-neutral-900);font-size:1.5rem;font-weight:700;letter-spacing:-.02em}.adjustment-modal p{margin:0 0 .375rem;color:var(--color-neutral-600);font-weight:500;font-size:.9375rem}.modal-form{margin-top:1.5rem}.form-group{margin-bottom:1.25rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:var(--color-neutral-700);font-size:.875rem;letter-spacing:.01em}.points-input{width:100%;padding:.75rem 1rem;border:1.5px solid var(--color-neutral-300);border-radius:var(--radius-md);font-size:1rem;font-weight:600;transition:all var(--transition-fast);background:var(--color-neutral-50)}.points-input:focus{outline:none;border-color:var(--color-primary);background:#fff;box-shadow:0 0 0 3px #6366f11a}.reason-textarea{width:100%;padding:.75rem 1rem;border:1.5px solid var(--color-neutral-300);border-radius:var(--radius-md);font-size:.9375rem;font-family:inherit;resize:vertical;min-height:90px;transition:all var(--transition-fast);background:var(--color-neutral-50)}.reason-textarea:focus{outline:none;border-color:var(--color-primary);background:#fff;box-shadow:0 0 0 3px #6366f11a}.preview{background:var(--color-neutral-100);padding:.875rem 1rem;border-radius:var(--radius-md);border:1px solid var(--color-neutral-200);margin-bottom:1.5rem;color:var(--color-neutral-700);font-size:.875rem;line-height:1.5}.preview strong{color:var(--color-neutral-900);font-weight:600}.modal-actions{display:flex;gap:.75rem;justify-content:flex-end}.cancel-btn{padding:.625rem 1.25rem;border:1.5px solid var(--color-neutral-300);border-radius:var(--radius-md);background:#fff;color:var(--color-neutral-700);font-weight:600;font-size:.9375rem;cursor:pointer;transition:all var(--transition-fast)}.cancel-btn:hover{background:var(--color-neutral-100);border-color:var(--color-neutral-400);color:var(--color-neutral-900)}.cancel-btn:active{transform:scale(.98)}.save-btn{padding:.625rem 1.5rem;border:none;border-radius:var(--radius-md);background:var(--color-primary);color:#fff;font-weight:600;font-size:.9375rem;cursor:pointer;transition:all var(--transition-fast);box-shadow:var(--shadow-sm)}.save-btn:hover:not(:disabled){background:var(--color-primary-dark);transform:translateY(-1px);box-shadow:var(--shadow-md)}.save-btn:active:not(:disabled){transform:translateY(0)}.save-btn:disabled{background:var(--color-neutral-400);cursor:not-allowed;transform:none;box-shadow:none}.history-modal-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1001;animation:fadeIn var(--transition-base)}.history-modal{background:#fff;padding:0;border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);width:90%;max-width:640px;max-height:85vh;overflow:hidden;animation:slideUp var(--transition-slow)}.history-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--color-neutral-200);background:var(--color-neutral-50)}.history-header h3{margin:0;color:var(--color-neutral-900);font-size:1.25rem;font-weight:700;letter-spacing:-.02em}.close-btn{background:none;border:none;font-size:1.75rem;cursor:pointer;padding:.25rem .5rem;border-radius:var(--radius-sm);transition:all var(--transition-fast);color:var(--color-neutral-400);line-height:1}.close-btn:hover{background:var(--color-neutral-200);color:var(--color-neutral-700)}.close-btn:active{transform:scale(.95)}.history-content{padding:1.5rem;max-height:60vh;overflow-y:auto}.history-content::-webkit-scrollbar{width:6px}.history-content::-webkit-scrollbar-track{background:var(--color-neutral-100)}.history-content::-webkit-scrollbar-thumb{background:var(--color-neutral-300);border-radius:var(--radius-full)}.history-content::-webkit-scrollbar-thumb:hover{background:var(--color-neutral-400)}.loading-history{text-align:center;padding:3rem 2rem;color:var(--color-neutral-500)}.loading-history .spinner{width:40px;height:40px;border:3px solid var(--color-neutral-200);border-left:3px solid var(--color-primary);border-radius:var(--radius-full);animation:spin 1s linear infinite;margin:0 auto 1rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.history-list{display:flex;flex-direction:column;gap:.875rem}.history-item{display:flex;gap:1rem;padding:1rem;border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);background:var(--color-neutral-50);transition:all var(--transition-fast)}.history-item:hover{background:#fff;box-shadow:var(--shadow-sm);border-color:var(--color-neutral-300)}.history-points{flex-shrink:0}.point-change{font-weight:700;padding:.5rem .75rem;border-radius:var(--radius-full);font-size:.875rem;letter-spacing:.01em;box-shadow:var(--shadow-sm)}.point-change.red{background:var(--color-danger-bg);color:var(--color-danger);border:1px solid rgba(239,68,68,.2)}.point-change.green{background:var(--color-success-bg);color:var(--color-success);border:1px solid rgba(16,185,129,.2)}.history-details{flex:1}.history-reason{margin:0 0 .5rem;color:var(--color-neutral-800);font-weight:600;font-size:.9375rem;line-height:1.4}.history-date{margin:0 0 .25rem;font-size:.8125rem;color:var(--color-neutral-500);font-weight:500}.history-changed-by{margin:0;font-size:.8125rem;color:var(--color-neutral-500);font-style:italic}.no-history{text-align:center;padding:3rem 2rem;color:var(--color-neutral-500)}.promo-manager{background:#fff;border-radius:var(--radius-lg);padding:1.5rem;box-shadow:var(--shadow-sm);border:1px solid var(--color-neutral-200);height:fit-content;display:flex;flex-direction:column;position:sticky;top:1.5rem}.promo-manager .section-header{padding:0;border:none;margin-bottom:1.5rem;background:none}.promo-manager .section-header h2{margin:0;color:var(--color-neutral-900);font-size:1.125rem;font-weight:600;letter-spacing:-.01em}.promo-controls{display:flex;flex-direction:column;gap:1.25rem;margin-bottom:1.5rem}.cutoff-section{display:flex;flex-direction:column;gap:.625rem}.cutoff-section label{font-weight:600;color:var(--color-neutral-700);font-size:.875rem;letter-spacing:.01em}.cutoff-control{display:flex;align-items:center;gap:1rem}.cutoff-slider{flex:1;height:6px;border-radius:var(--radius-full);background:var(--color-neutral-200);outline:none;appearance:none}.cutoff-slider::-webkit-slider-thumb{appearance:none;width:20px;height:20px;border-radius:var(--radius-full);background:var(--color-success);cursor:pointer;box-shadow:var(--shadow-md);transition:all var(--transition-fast)}.cutoff-slider::-webkit-slider-thumb:hover{transform:scale(1.15);box-shadow:var(--shadow-lg)}.cutoff-slider::-moz-range-thumb{width:20px;height:20px;border-radius:var(--radius-full);background:var(--color-success);cursor:pointer;border:none;box-shadow:var(--shadow-md);transition:all var(--transition-fast)}.cutoff-slider::-moz-range-thumb:hover{transform:scale(1.15);box-shadow:var(--shadow-lg)}.cutoff-value{font-weight:700;color:var(--color-success);min-width:90px;font-size:1rem;letter-spacing:-.01em}.cutoff-section small{color:var(--color-neutral-500);font-size:.8125rem;line-height:1.4}.scope-selector{display:flex;flex-direction:column;gap:.625rem}.radio-label{display:flex;align-items:center;gap:.625rem;cursor:pointer;padding:.75rem;border-radius:var(--radius-md);transition:all var(--transition-fast);border:1px solid var(--color-neutral-200);background:var(--color-neutral-50)}.radio-label:hover{background:#fff;border-color:var(--color-neutral-300)}.radio-label input[type=radio]{margin:0;width:18px;height:18px;cursor:pointer;accent-color:var(--color-primary)}.radio-text{font-weight:500;color:var(--color-neutral-700);font-size:.9375rem}.generate-btn{padding:.875rem 1.5rem;border:none;border-radius:var(--radius-md);background:linear-gradient(135deg,var(--color-success),var(--color-success-light));color:#fff;font-size:1rem;font-weight:600;cursor:pointer;transition:all var(--transition-base);box-shadow:var(--shadow-sm);letter-spacing:.01em}.generate-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-lg)}.generate-btn:active:not(:disabled){transform:translateY(0)}.generate-btn:disabled{background:var(--color-neutral-400);cursor:not-allowed;transform:none;box-shadow:none}.promo-result{background:linear-gradient(135deg,#10b9810d,#34d3990d);border:1px solid rgba(16,185,129,.2);border-radius:var(--radius-md);padding:1.5rem;margin-bottom:1.5rem;animation:slideUp var(--transition-slow)}.promo-result h3{margin:0 0 1rem;color:var(--color-success);font-size:1rem;font-weight:600;letter-spacing:.01em}.promo-code-display{font-size:1.75rem;font-weight:700;text-align:center;color:var(--color-success);background:#fff;padding:1.25rem;border-radius:var(--radius-md);border:2px dashed var(--color-success);margin-bottom:1rem;font-family:SF Mono,Monaco,Consolas,monospace;letter-spacing:.1em;box-shadow:var(--shadow-sm)}.promo-info{margin:0;color:var(--color-success);text-align:center;font-size:.875rem;line-height:1.6}.promo-info small{color:var(--color-neutral-600);font-size:.8125rem}.eligible-list{flex:1;display:flex;flex-direction:column}.eligible-list h4{margin:0 0 .875rem;color:var(--color-neutral-700);font-size:.9375rem;font-weight:600;letter-spacing:.01em}.eligible-scroll{flex:1;overflow-y:auto;border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);padding:.5rem;background:var(--color-neutral-50);max-height:320px}.eligible-scroll::-webkit-scrollbar{width:6px}.eligible-scroll::-webkit-scrollbar-track{background:transparent}.eligible-scroll::-webkit-scrollbar-thumb{background:var(--color-neutral-300);border-radius:var(--radius-full)}.eligible-scroll::-webkit-scrollbar-thumb:hover{background:var(--color-neutral-400)}.eligible-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;border-bottom:1px solid var(--color-neutral-200);transition:all var(--transition-fast);background:#fff;border-radius:var(--radius-sm);margin-bottom:.375rem}.eligible-item:hover{background:var(--color-neutral-50);transform:translate(2px)}.eligible-item:last-child{border-bottom:none;margin-bottom:0}.eligible-item .employee-info{display:flex;flex-direction:column;gap:.25rem}.employee-name{font-weight:600;color:var(--color-neutral-800);font-size:.875rem}.eligible-item .employee-details{font-size:.75rem;color:var(--color-neutral-500);margin:0}.points-badge{background:var(--color-success-bg);color:var(--color-success);padding:.375rem .625rem;border-radius:var(--radius-full);font-weight:700;font-size:.8125rem;border:1px solid rgba(16,185,129,.2);letter-spacing:.01em}.no-eligible{text-align:center;padding:2rem;color:var(--color-neutral-500);font-style:italic;font-size:.875rem}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;height:400px}.loading-container .spinner{border:4px solid var(--color-neutral-200);border-top:4px solid var(--color-primary);border-radius:var(--radius-full);width:48px;height:48px;animation:spin 1s linear infinite;margin-bottom:1rem}.loading-container p{color:var(--color-neutral-600);font-weight:500}@media (max-width: 1200px){.main-content{grid-template-columns:1fr 340px}.points-section{min-width:200px}}@media (max-width: 1024px){.main-content{grid-template-columns:1fr}.promo-manager{position:static}}@media (max-width: 768px){.stats-grid{grid-template-columns:repeat(2,1fr)}.filter-grid{grid-template-columns:1fr}.employee-card{flex-direction:column;text-align:center;gap:1rem;align-items:stretch}.employee-info{text-align:center}.employee-header{justify-content:center;gap:.5rem}.points-section{width:100%;min-width:auto}.adjustment-modal,.history-modal{width:95%;padding:1.5rem}}@media (max-width: 640px){.stats-grid{grid-template-columns:1fr}.life-header h1{font-size:1.5rem}.modal-actions{flex-direction:column}.cancel-btn,.save-btn{width:100%}}*:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (prefers-contrast: high){.stat-card,.filters-container,.employee-list-container,.promo-manager,.points-btn{border-width:2px}}.App{min-height:100vh;width:100%}:root{font-family:Inter,sans-serif;line-height:1.5;font-weight:400;color-scheme:light;color:#1e293b;background-color:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,sans-serif;background-color:#f8fafc;color:#1e293b;margin:0;min-height:100vh}#root{width:100%;min-height:100vh}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#f1f5f9}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}
