@import"https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,100..1000;1,9..40,100..1000&family=Fira+Code:wght@300..700&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap";:root{--color-primary: #e11d48;--color-secondary: #2563eb;--color-tertiary: #facc15;--surface-base: #ffffff;--surface-glass: rgba(255, 255, 255, .65);--color-success: #16a34a;--color-warning: #d97706;--color-error: #dc2626;--color-info: #2563eb;--color-text: #1f2937;--color-text-secondary: #6b7280;--color-border: #e5e7eb;--font-headline: "Poppins", sans-serif;--font-body: "DM Sans", sans-serif;--font-mono: "Fira Code", monospace;--space-1: 4px;--space-2: 8px;--space-3: 16px;--space-4: 24px;--space-5: 32px;--space-6: 48px;--space-8: 64px;--space-10: 80px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 16px;--radius-xl: 24px;--radius-pill: 9999px;--shadow-glass: 0 8px 32px 0 rgba(0, 0, 0, .08);--shadow-md: 0 4px 16px 0 rgba(0, 0, 0, .1);--shadow-lg: 0 12px 40px 0 rgba(0, 0, 0, .15);--shadow-color: 0 8px 24px 0 rgba(225, 29, 72, .25);--shadow-focus: 0 0 0 3px rgba(37, 99, 235, .35)}[data-theme=dark]{--surface-base: #0f172a;--surface-glass: rgba(15, 23, 42, .75);--color-text: #f1f5f9;--color-text-secondary: #94a3b8;--color-border: #334155;--shadow-glass: 0 8px 32px 0 rgba(0, 0, 0, .3);--shadow-md: 0 4px 16px 0 rgba(0, 0, 0, .4);--shadow-lg: 0 12px 40px 0 rgba(0, 0, 0, .5)}html,body,#app{height:100vh;max-height:100vh;overflow:hidden;margin:0;padding:0}body{font-family:var(--font-body);background-color:var(--surface-base);color:var(--color-text);min-height:100vh;transition:background-color .3s ease,color .3s ease}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#9ca3af40;border-radius:var(--radius-pill)}::-webkit-scrollbar-thumb:hover{background:#e11d4866}*{scrollbar-width:thin;scrollbar-color:rgba(156,163,175,.25) transparent}.app-layout{display:flex;height:100vh;max-height:100vh;width:100%;overflow:hidden}.app-layout.has-sidebar{flex-direction:row}.app-sidebar{width:280px;height:100vh;position:fixed;top:0;left:0;background-color:var(--surface-glass);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-right:1px solid var(--color-border);box-shadow:var(--shadow-glass);display:flex;flex-direction:column;box-sizing:border-box;padding:var(--space-4) 14px;z-index:100;flex-shrink:0;transition:width .2s cubic-bezier(.4,0,.2,1),padding .2s ease,box-shadow .2s ease}.form-page{width:100%;max-width:clamp(600px,74vw,1040px);margin-inline:auto;text-align:left}.settings-card{background:var(--surface-glass);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);width:100%;box-sizing:border-box;box-shadow:var(--shadow-glass)}@media(max-width:640px){.settings-card{padding:var(--space-4) var(--space-3)}}.filter-card{background:var(--surface-glass);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:12px 16px;width:100%;box-shadow:var(--shadow-glass);transition:none;display:flex;flex-direction:row;gap:12px;align-items:flex-end;flex-wrap:wrap;box-sizing:border-box}.filter-card .form-group{margin-bottom:0;flex:1 1 140px;display:flex;flex-direction:column;text-align:left}.filter-card .form-group label{font-size:11px;margin-bottom:4px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary)}.filter-card input,.filter-card select{height:32px!important;padding:4px 8px!important;font-size:13px!important;border-radius:var(--radius-sm)!important;width:100%!important;box-sizing:border-box!important}.filter-card button,.filter-card .btn-ghost{height:32px;font-size:13px;padding:0 16px;border-radius:var(--radius-sm);width:auto;flex:0 0 auto}.sidebar-header{display:flex;flex-direction:column;align-items:center;text-align:center;padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border);margin-bottom:var(--space-3)}.sidebar-logo-full{height:40px;width:auto;object-fit:contain;margin-bottom:var(--space-2)}.sidebar-logo-favicon{display:none}.sidebar-title{font-family:var(--font-headline);font-weight:800;font-size:16px;color:var(--color-text);line-height:1.2}.sidebar-subtitle{font-size:11px;color:var(--color-text-secondary);font-weight:500}.sidebar-user{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3);background-color:#00000005;border-radius:var(--radius-lg);margin-bottom:var(--space-3);margin-top:auto}[data-theme=dark] .sidebar-user{background-color:#ffffff08}.user-avatar{width:40px;height:40px;border-radius:50%;background-color:var(--color-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--font-headline);font-weight:800;font-size:16px;flex-shrink:0}.user-info{display:flex;flex-direction:column;overflow:hidden;min-width:0}.user-name{font-family:var(--font-headline);font-weight:700;font-size:14px;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-role{font-size:12px;color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-nav{display:flex;flex-direction:column;gap:var(--space-2);overflow-y:auto}.sidebar-nav .nav-link{font-family:var(--font-headline);font-weight:600;text-decoration:none;color:var(--color-text);padding:var(--space-2) 12px;border-radius:var(--radius-md);display:flex;align-items:center;gap:var(--space-2);transition:all .15s ease;font-size:14px}.sidebar-nav .nav-link:hover{background-color:#0000000d;color:var(--color-primary)}[data-theme=dark] .sidebar-nav .nav-link:hover{background-color:#ffffff0d;color:var(--color-primary)}.sidebar-nav .nav-link.active{background-color:var(--color-primary);color:#fff;box-shadow:var(--shadow-color)}.sidebar-nav button.nav-link{background:transparent;border:none;cursor:pointer;width:100%;text-align:left;display:flex;align-items:center;justify-content:space-between;box-shadow:none}.sidebar-nav .nav-link svg{flex-shrink:0;stroke:currentColor}.sidebar-nav .nav-dropdown{display:flex;flex-direction:column;gap:var(--space-1);padding-left:calc(var(--space-4) + 8px);margin-top:calc(-1 * var(--space-1));margin-bottom:var(--space-1)}.sidebar-nav .nav-sub-link{font-family:var(--font-headline);font-weight:500;text-decoration:none;color:var(--color-text-secondary);padding:6px 12px;border-radius:var(--radius-md);display:flex;align-items:center;gap:var(--space-2);transition:all .15s ease;font-size:13px}.sidebar-nav .nav-sub-link:hover{background-color:#0000000d;color:var(--color-primary)}[data-theme=dark] .sidebar-nav .nav-sub-link:hover{background-color:#ffffff0d;color:var(--color-primary)}.sidebar-nav .nav-sub-link.active{background-color:#e11d4814;color:var(--color-primary);font-weight:600}[data-theme=dark] .sidebar-nav .nav-sub-link.active{background-color:#e11d4826;color:var(--color-primary)}.sidebar-toggle-btn{display:flex;align-items:center;justify-content:center;transition:background-color .15s ease}.sidebar-toggle-btn:hover{background-color:#0000000d}[data-theme=dark] .sidebar-toggle-btn:hover{background-color:#ffffff0d}.nav-icon{font-size:16px}.sidebar-footer{display:flex;align-items:center;justify-content:center;padding:0}.theme-toggle{border:none;background:transparent;cursor:pointer;font-size:20px;color:var(--color-text);display:flex;align-items:center;justify-content:center;padding:var(--space-1);border-radius:var(--radius-sm);transition:color .15s ease}.theme-toggle:hover{color:var(--color-primary)}.btn-logout-sidebar{background:transparent;color:var(--color-error);border:1.5px solid var(--color-error);font-family:var(--font-headline);font-weight:700;font-size:14px;padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);cursor:pointer;transition:all .15s ease;display:flex;align-items:center;justify-content:center;gap:var(--space-2);width:100%;box-sizing:border-box}.btn-logout-sidebar:hover{background-color:var(--color-error);color:#fff;box-shadow:0 4px 12px #dc262626}.app-main-content{flex-grow:1;box-sizing:border-box;height:100vh;max-height:100vh;overflow-y:auto;padding:0;width:auto}.content-topbar{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;min-height:64px;padding:var(--space-2) var(--space-5);background:var(--surface-base);border-bottom:1px solid var(--color-border)}.content-topbar-lead{display:flex;align-items:center;gap:var(--space-2);min-width:0}.content-topbar .hamburger-btn{display:none}.content-topbar-title{margin:0;font-family:var(--font-headline);font-weight:800;font-size:22px;color:var(--color-text);text-align:left}.content-topbar-actions,.content-topbar-actions>div{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap}.content-topbar-actions{margin-left:auto}.app-content-body{padding:var(--space-5)}.app-layout.has-sidebar .app-main-content{margin-left:280px;transition:margin-left .2s cubic-bezier(.4,0,.2,1)}.app-layout.has-sidebar.sidebar-collapsed .app-main-content{margin-left:70px}main{width:100%;box-sizing:border-box}h1{font-family:var(--font-headline);font-weight:800;font-size:3rem;line-height:1.1;color:var(--color-text);margin-top:0;margin-bottom:var(--space-4)}.page-title{font-family:var(--font-headline);font-weight:800;font-size:2.25rem;line-height:1.2;color:var(--color-text);margin-top:0;margin-bottom:var(--space-4)}h2{font-family:var(--font-headline);font-weight:700;font-size:2rem;line-height:1.2;color:var(--color-text)}.login-container{display:flex;justify-content:center;align-items:center;min-height:calc(100vh - 200px)}.login-card,.form-card{background:var(--surface-glass);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);width:100%;max-width:440px;box-shadow:var(--shadow-glass);transition:transform .15s ease,box-shadow .15s ease}.login-card:hover{transform:none;box-shadow:var(--shadow-glass)}.form-card:hover{transform:translateY(-2px) scale(1.01);box-shadow:var(--shadow-md)}.form-group{margin-bottom:var(--space-4);text-align:left}.form-group label{display:block;font-family:var(--font-headline);font-weight:600;font-size:14px;color:var(--color-text);margin-bottom:var(--space-2)}input[type=text],input[type=password],input[type=email],input[type=date],select,textarea,input:not([type=radio]):not([type=checkbox]){width:100%;height:40px;padding:10px 14px;font-family:var(--font-body);font-size:14px;color:var(--color-text);background-color:var(--surface-base);border:1.5px solid var(--color-border);border-radius:var(--radius-md);box-sizing:border-box;transition:all .15s ease}textarea{height:auto;min-height:80px}input[type=text]:hover,input[type=password]:hover,input[type=email]:hover,input[type=date]:hover,select:hover,textarea:hover{border-color:var(--color-text-secondary)}input[type=text]:focus,input[type=password]:focus,input[type=email]:focus,input[type=date]:focus,select:focus,textarea:focus{outline:none;border-color:var(--color-secondary);box-shadow:var(--shadow-focus)}fieldset{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);margin-bottom:var(--space-4);background-color:#ffffff0d}legend{font-family:var(--font-headline);font-weight:600;font-size:13px;color:var(--color-text-secondary);padding:0 var(--space-2)}.radio-group{display:flex;gap:var(--space-4);margin-top:var(--space-1)}.radio-label{display:flex;align-items:center;gap:var(--space-2);font-size:14px;font-weight:500;color:var(--color-text);cursor:pointer}input[type=radio]{appearance:none;-webkit-appearance:none;width:20px;height:20px;border:1.5px solid var(--color-border);border-radius:50%;outline:none;background-color:var(--surface-base);display:grid;place-content:center;cursor:pointer;transition:.15s ease all}input[type=radio]:before{content:"";width:10px;height:10px;border-radius:50%;transform:scale(0);transition:.12s transform ease-in-out;background-color:var(--color-secondary)}input[type=radio]:checked{border-color:var(--color-secondary)}input[type=radio]:checked:before{transform:scale(1)}input[type=radio]:focus-visible{box-shadow:var(--shadow-focus)}button[type=submit],.btn-primary{width:100%;height:40px;font-family:var(--font-headline);font-weight:700;font-size:14px;color:#fff;background-color:var(--color-primary);border:none;border-radius:var(--radius-md);cursor:pointer;transition:all .15s ease;box-shadow:var(--shadow-color);display:flex;align-items:center;justify-content:center}button[type=submit]:hover,.btn-primary:hover{background-color:#be123c;transform:translateY(-1px);box-shadow:0 10px 28px #e11d4859}button[type=submit]:active,.btn-primary:active{transform:translateY(0)}button[type=submit]:disabled{opacity:.4;cursor:not-allowed;transform:none;box-shadow:none}.btn-secondary{width:100%;height:40px;font-family:var(--font-headline);font-weight:700;font-size:14px;color:#fff;background-color:var(--color-secondary);border:none;border-radius:var(--radius-md);cursor:pointer;transition:all .15s ease;display:flex;align-items:center;justify-content:center}.btn-secondary:hover{background-color:#1d4ed8;transform:translateY(-1px)}.btn-ghost{width:100%;height:40px;font-family:var(--font-headline);font-weight:600;font-size:14px;color:var(--color-text);background-color:transparent;border:1.5px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:all .15s ease;display:flex;align-items:center;justify-content:center}.btn-ghost:hover{background-color:#0000000d}[data-theme=dark] .btn-ghost:hover{background-color:#ffffff0d}.btn-danger{width:100%;height:40px;font-family:var(--font-headline);font-weight:700;font-size:14px;color:#fff;background-color:var(--color-error);border:none;border-radius:var(--radius-md);cursor:pointer;transition:all .15s ease;display:flex;align-items:center;justify-content:center}.btn-danger:hover{background-color:#b91c1c;transform:translateY(-1px)}.alert-error{margin-top:var(--space-3);padding:var(--space-3);background-color:#dc26261a;border:1.5px solid var(--color-error);border-radius:var(--radius-md);color:var(--color-error);font-size:13px;font-weight:500;text-align:left}.stat-card{background:var(--surface-glass);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-glass);display:flex;flex-direction:column;gap:var(--space-1)}.stat-value{font-family:var(--font-headline);font-weight:800;font-size:2rem;color:var(--color-text);line-height:1}.stat-label{font-size:14px;color:var(--color-text-secondary);font-weight:500}.data-table{width:100%;border-collapse:collapse;margin-top:var(--space-4);background:var(--surface-glass);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--color-border)}.data-table th{font-family:var(--font-headline);font-weight:700;text-align:left;padding:var(--space-3) var(--space-4);background-color:#00000005;border-bottom:2px solid var(--color-border);color:var(--color-text)}[data-theme=dark] .data-table th{background-color:#ffffff05}.data-table td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);color:var(--color-text)}.data-table tr:last-child td{border-bottom:none}.data-table tr:nth-child(2n) td{background-color:#00000003}[data-theme=dark] .data-table tr:nth-child(2n) td{background-color:#ffffff03}.badge{display:inline-flex;align-items:center;padding:4px 8px;border-radius:var(--radius-pill);font-size:12px;font-weight:600;text-transform:uppercase}.badge-hadir{background-color:#16a34a26;color:var(--color-success)}.badge-telat{background-color:#d9770626;color:var(--color-warning)}.badge-alpha{background-color:#dc262626;color:var(--color-error)}.badge-izin{background-color:#2563eb26;color:var(--color-info)}.badge-pending{background-color:#d9770626;color:var(--color-warning)}.badge-approved{background-color:#16a34a26;color:var(--color-success)}.badge-rejected{background-color:#dc262626;color:var(--color-error)}.modal-overlay{position:fixed;inset:0;width:100vw;height:100vh;background-color:#0006;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;justify-content:center;align-items:center;z-index:1000;animation:fadeInOverlay .35s cubic-bezier(.16,1,.3,1) forwards}.modal{background-color:var(--surface-base);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);width:90%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-lg);box-sizing:border-box}.modal-animate{animation:modalScaleUp .35s cubic-bezier(.16,1,.3,1) forwards}@keyframes fadeInOverlay{0%{background-color:#0000;backdrop-filter:blur(0px);-webkit-backdrop-filter:blur(0px)}to{background-color:#0006;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}}@keyframes modalScaleUp{0%{transform:scale(.96) translateY(10px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.fade-in{animation:fadeIn .45s cubic-bezier(.4,0,.2,1) forwards}@keyframes slideIn{0%{transform:translateY(-20px) scale(.95);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}@keyframes fadeIn{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.password-input-container{position:relative;width:100%}.password-toggle-btn{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:transparent;border:none;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary)}.password-toggle-btn:hover{color:var(--color-primary)}.password-input-container input{padding-right:40px!important}.login-card,.form-card,.stat-card{transition:transform .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1)}input,select,textarea,button,a{transition:all .15s cubic-bezier(.4,0,.2,1)}.loading-screen{display:flex;justify-content:center;align-items:center;width:100vw;height:100vh;background-color:var(--surface-base);color:var(--color-text);font-family:var(--font-headline);font-size:1.5rem;font-weight:700}.mobile-sidebar-backdrop{display:none}.pagination-container{display:flex;justify-content:space-between;align-items:center;margin-top:var(--space-4);padding:var(--space-3) 0;gap:var(--space-3);flex-wrap:wrap}.pagination-info{font-size:14px;color:var(--color-text-secondary)}.pagination-buttons{display:flex;gap:var(--space-2)}.btn-pagination{width:auto;height:34px;padding:0 var(--space-3);font-size:13px;font-family:var(--font-headline);font-weight:600;border-radius:var(--radius-md);cursor:pointer;background-color:var(--surface-glass);border:1px solid var(--color-border);color:var(--color-text);display:flex;align-items:center;justify-content:center;transition:all .15s ease}.btn-pagination:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary);background-color:var(--surface-glass);transform:none;box-shadow:none}.btn-pagination:disabled{opacity:.4;cursor:not-allowed}.btn-pagination.active{background-color:var(--color-primary);color:#fff;border-color:var(--color-primary)}.loading-bar-container{position:fixed;top:0;left:0;right:0;height:4px;z-index:9999;background-color:transparent;pointer-events:none;opacity:0;transition:opacity .25s ease-in-out}.loading-bar-container.visible{opacity:1}.loading-bar{height:100%;background-color:var(--color-primary);transition:width .3s cubic-bezier(.4,0,.2,1);transform-origin:left center}@media(max-width:768px){html{height:auto;max-height:none;overflow-x:hidden;overflow-y:visible}body,#app,.app-layout{height:auto;max-height:none;overflow-x:clip;overflow-y:visible}.app-layout.has-sidebar{flex-direction:column}.content-topbar .hamburger-btn{display:flex}.hamburger-btn{font-size:24px;background:transparent;border:none;cursor:pointer;color:var(--color-text);padding:4px 8px;display:flex;align-items:center;justify-content:center}.mobile-sidebar-backdrop{display:block;position:fixed;inset:0;background:#0006;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:995}.app-sidebar{position:fixed!important;top:0!important;left:0!important;bottom:0!important;width:260px!important;height:100vh!important;z-index:1000!important;transform:translate(-100%)!important;transition:transform .3s cubic-bezier(.4,0,.2,1)!important;background-color:var(--surface-base)!important;border-right:1px solid var(--color-border)!important;display:flex!important;flex-direction:column!important;padding:var(--space-4)!important;box-shadow:var(--shadow-lg)!important;box-sizing:border-box!important}.app-sidebar.open{transform:translate(0)!important}.sidebar-header{flex-direction:column!important;align-items:center!important;text-align:center!important;border-bottom:1px solid var(--color-border)!important;padding-bottom:var(--space-3)!important;margin-bottom:var(--space-3)!important}.sidebar-logo-full{height:40px!important;margin-bottom:var(--space-2)!important;display:block!important}.sidebar-logo-favicon{display:none!important}.sidebar-user{padding:var(--space-3)!important;border-top:none!important;border-bottom:none!important;margin-bottom:var(--space-3)!important;margin-top:auto!important}.sidebar-nav{flex-direction:column!important;flex-wrap:nowrap!important;gap:var(--space-2)!important;margin-bottom:var(--space-3)!important;overflow-y:auto!important;width:100%!important;padding-bottom:0!important}.sidebar-nav .nav-link{font-size:14px!important;padding:var(--space-2) var(--space-3)!important;white-space:normal!important}.sidebar-nav .nav-link:hover{transform:none}.sidebar-footer{border-top:none!important;padding-top:0!important}.app-layout.has-sidebar .app-main-content{margin-left:0!important;padding:0!important;height:auto!important;max-height:none!important;overflow-x:clip!important;overflow-y:visible!important}.content-topbar{top:0;min-height:54px;padding:var(--space-2) var(--space-3)}.content-topbar-title{font-size:18px}.app-content-body{padding:var(--space-4) var(--space-3)}.modal-overlay{position:fixed!important;top:0!important;left:0!important;width:100vw!important;height:100vh!important;margin:0!important;padding:0!important;z-index:1000!important;background-color:#0006!important;display:block!important}.modal{position:fixed!important;top:50%!important;left:50%!important;transform:translate(-50%,-50%)!important;width:90%!important;max-width:500px!important;max-height:85vh!important;overflow-y:auto!important;border-radius:var(--radius-lg)!important;padding:var(--space-5)!important;box-sizing:border-box!important;background-color:var(--surface-base)!important;border:1px solid var(--color-border)!important;box-shadow:var(--shadow-lg)!important;z-index:1001!important}.modal-animate{animation:modalMobileScaleUp .35s cubic-bezier(.16,1,.3,1) forwards!important}@keyframes modalMobileScaleUp{0%{transform:translate(-50%,-50%) scale(.96) translateY(10px);opacity:0}to{transform:translate(-50%,-50%) scale(1) translateY(0);opacity:1}}.data-table{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.login-card,.form-card{padding:var(--space-4)}.page-title{font-size:1.75rem}.sidebar-toggle-btn{display:none!important}}.stagger-1{animation-delay:.05s}.stagger-2{animation-delay:.1s}.stagger-3{animation-delay:.15s}.stagger-4{animation-delay:.2s}.stagger-5{animation-delay:.25s}.stagger-6{animation-delay:.3s}.stagger-7{animation-delay:.35s}.stagger-8{animation-delay:.4s}.fade-in-up{opacity:0;transform:translateY(16px);animation:fadeInUp .5s cubic-bezier(.4,0,.2,1) forwards}@keyframes fadeInUp{to{opacity:1;transform:translateY(0)}}.chart-line-anim{stroke-dasharray:600;stroke-dashoffset:600;animation:drawLine 1.5s cubic-bezier(.4,0,.2,1) .3s forwards}@keyframes drawLine{to{stroke-dashoffset:0}}.chart-area-anim{opacity:0;animation:fadeInArea .8s ease-out .8s forwards}@keyframes fadeInArea{to{opacity:1}}.donut-svg-anim{animation:donutEntrance 1s cubic-bezier(.34,1.56,.64,1) forwards}@keyframes donutEntrance{0%{transform:rotate(-180deg) scale(.5);opacity:0}to{transform:rotate(-90deg) scale(1);opacity:1}}@keyframes shimmer{0%{opacity:.55}50%{opacity:.25}to{opacity:.55}}.skeleton{background-color:var(--color-border);border-radius:var(--radius-sm);animation:shimmer 1.4s ease-in-out infinite}.skeleton-table-row{display:flex;gap:var(--space-3);padding:14px 16px;border-bottom:1px solid var(--color-border)}.skeleton-table-row>span{display:inline-block;height:15px;border-radius:var(--radius-sm);background-color:var(--color-border);animation:shimmer 1.4s ease-in-out infinite}.skeleton-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4);background:var(--surface-base)}.skeleton-form-field{display:flex;flex-direction:column;gap:8px;margin-bottom:var(--space-3)}@media(min-width:769px){.app-sidebar{transition:width .25s cubic-bezier(.4,0,.2,1),padding .25s cubic-bezier(.4,0,.2,1),box-shadow .25s ease}.sidebar-nav .nav-link,.btn-logout-sidebar,.sidebar-user{transition:all .25s cubic-bezier(.4,0,.2,1)}.app-sidebar.collapsed{width:70px;overflow:visible}.app-sidebar.collapsed.sidebar-hovered{width:280px;box-shadow:4px 0 24px #00000026;z-index:110}.sidebar-nav .nav-link span,.sidebar-nav button.nav-link>span:last-child{transition:opacity .2s cubic-bezier(.4,0,.2,1),max-width .2s cubic-bezier(.4,0,.2,1),margin .2s ease;opacity:1;max-width:150px;display:inline-block;white-space:nowrap;overflow:hidden}.app-sidebar.collapsed:not(.sidebar-hovered) .sidebar-nav .nav-link span,.app-sidebar.collapsed:not(.sidebar-hovered) .sidebar-nav button.nav-link>span:last-child{opacity:0;max-width:0;margin:0;pointer-events:none}.sidebar-nav .nav-link{gap:var(--space-2)}.app-sidebar.collapsed:not(.sidebar-hovered) .sidebar-nav .nav-dropdown{display:none}.sidebar-user .user-info{transition:opacity .2s ease,max-width .2s ease;opacity:1;max-width:150px;overflow:hidden}.app-sidebar.collapsed:not(.sidebar-hovered) .sidebar-user .user-info{display:none!important}.sidebar-user .user-avatar{transition:all .25s cubic-bezier(.4,0,.2,1)}.app-sidebar.collapsed:not(.sidebar-hovered) .sidebar-user .user-avatar{display:none!important}.sidebar-user .theme-toggle{transition:opacity .25s ease;opacity:1}.app-sidebar.collapsed:not(.sidebar-hovered) .sidebar-user .theme-toggle{opacity:1!important;display:flex!important;width:auto!important;overflow:visible!important}.app-sidebar.collapsed:not(.sidebar-hovered) .sidebar-user{background:transparent!important;border:none!important;padding:0!important;justify-content:center!important;margin-bottom:var(--space-3)!important}.btn-logout-sidebar span{transition:opacity .2s ease,max-width .2s ease;opacity:1;max-width:100px;overflow:hidden;white-space:nowrap}.app-sidebar.collapsed:not(.sidebar-hovered) .btn-logout-sidebar span{opacity:0;max-width:0;pointer-events:none}.app-sidebar.collapsed:not(.sidebar-hovered) .btn-logout-sidebar{padding:0!important;width:42px!important;height:42px!important;display:flex!important;align-items:center!important;justify-content:center!important;margin:0 auto!important;border-radius:var(--radius-md)!important}.sidebar-header{display:flex;flex-direction:row;align-items:center;justify-content:center;width:100%;padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border);margin-bottom:var(--space-3);transition:all .25s cubic-bezier(.4,0,.2,1)}.sidebar-logo-link{transition:all .25s cubic-bezier(.4,0,.2,1);flex-shrink:0;display:flex;align-items:center;justify-content:center;width:100%}.sidebar-logo-full{display:block;height:40px;width:auto;object-fit:contain;transition:all .25s cubic-bezier(.4,0,.2,1)}.sidebar-logo-favicon{display:none;width:32px;height:32px;object-fit:contain;transition:all .25s cubic-bezier(.4,0,.2,1)}.app-sidebar.collapsed:not(.sidebar-hovered) .sidebar-logo-full{display:none!important}.app-sidebar.collapsed:not(.sidebar-hovered) .sidebar-logo-favicon{display:block!important}.app-sidebar.collapsed:not(.sidebar-hovered) .sidebar-logo-link{max-width:32px}.sidebar-toggle-btn{position:absolute;right:-14px;top:44px;transform:translateY(-50%);width:28px;height:28px;border-radius:6px;border:1px solid var(--color-border);background:var(--surface-base);color:var(--color-text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s ease,color .15s ease;padding:0;box-shadow:0 2px 8px #0000000d;flex-shrink:0;z-index:1000}.sidebar-toggle-btn:hover{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}}@media(min-width:769px){html.sidebar-is-collapsed .app-sidebar{width:70px!important}html.sidebar-is-collapsed .sidebar-logo-full{display:none!important}html.sidebar-is-collapsed .sidebar-logo-favicon{display:block!important}html.sidebar-is-collapsed .app-layout.has-sidebar .app-main-content{margin-left:70px!important}}@media(max-width:768px){.sidebar-toggle-btn{display:none!important}.app-sidebar.collapsed{width:260px!important;transform:translate(-100%)!important;overflow:hidden!important}.app-sidebar.collapsed.open{transform:translate(0)!important}.app-layout.has-sidebar.sidebar-collapsed .app-main-content{margin-left:0!important}}.landing-page{--landing-max-width: 1000px;--landing-hero-gradient: radial-gradient( 1100px 640px at 50% -120px, rgba(225, 29, 72, .1) 0%, rgba(225, 29, 72, .05) 45%, rgba(225, 29, 72, .02) 70%, transparent 100% );--landing-footer-gradient: radial-gradient( 1100px 520px at 50% calc(100% + 160px) , rgba(225, 29, 72, .07) 0%, rgba(225, 29, 72, .03) 55%, transparent 100% );--landing-card-radius: var(--radius-lg);--landing-header-h: 56px;--landing-grid-min: 320px;width:auto;margin:calc(var(--space-5) * -1);min-height:100vh;background-color:var(--surface-base);background-image:var(--landing-hero-gradient),var(--landing-footer-gradient);background-repeat:no-repeat;color:var(--color-text);text-align:left}.app-content-body:has(.landing-page){padding:0}.app-content-body:has(.landing-page) .landing-page{margin:0}[data-theme=dark] .landing-page{--landing-hero-gradient: radial-gradient( 1100px 640px at 50% -120px, rgba(251, 113, 133, .14) 0%, rgba(251, 113, 133, .07) 45%, rgba(225, 29, 72, .03) 70%, transparent 100% );--landing-footer-gradient: radial-gradient( 1100px 520px at 50% calc(100% + 160px) , rgba(225, 29, 72, .12) 0%, rgba(225, 29, 72, .05) 55%, transparent 100% )}.landing-shell{max-width:var(--landing-max-width);margin-inline:auto;min-height:calc(100vh - var(--landing-header-h))}.landing-header{position:sticky;top:0;z-index:20;background:var(--surface-base);border-bottom:1px solid var(--color-border)}.landing-header-inner{max-width:var(--landing-max-width);margin-inline:auto;display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) var(--space-5)}.landing-header-actions{display:flex;align-items:center;gap:var(--space-3)}.landing-header-divider{width:1px;height:20px;background-color:var(--color-border)}.landing-header-logo{display:flex;align-items:center;gap:var(--space-2);font-family:var(--font-headline);font-weight:700}.landing-nav{display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap}.landing-nav a{position:relative;display:inline-flex;align-items:center;min-height:32px;color:var(--color-text-secondary);text-decoration:none;font-size:14px;font-weight:600}.landing-nav a:after{content:"";position:absolute;left:0;right:0;bottom:2px;height:2px;border-radius:var(--radius-pill);background-color:var(--color-primary);transform:scaleX(0);transform-origin:left center;transition:transform .15s ease}.landing-nav a:hover,.landing-nav a:focus-visible,.landing-nav a.active,.landing-nav a[aria-current]:not([aria-current=false]){color:var(--color-primary)}.landing-nav a:hover:after,.landing-nav a:focus-visible:after,.landing-nav a.active:after,.landing-nav a[aria-current]:not([aria-current=false]):after{transform:scaleX(1)}.landing-nav a:focus-visible{outline:none;border-radius:var(--radius-sm);box-shadow:var(--shadow-focus)}.landing-hero{padding:var(--space-8) var(--space-5);text-align:center}.landing-hero h1{font-family:var(--font-headline);font-weight:800;font-size:clamp(32px,5.5vw,52px);line-height:1.1;margin:0 0 var(--space-3)}.landing-hero p{color:var(--color-text-secondary);font-size:clamp(15px,2vw,18px);max-width:640px;margin:0 auto var(--space-4)}.landing-hero-actions{display:flex;align-items:center;justify-content:center;gap:var(--space-3);flex-wrap:wrap;margin-top:var(--space-2)}.landing-cta{width:auto;min-width:140px;height:48px;padding:0 28px;font-size:16px;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);text-decoration:none}.landing-cta svg{flex-shrink:0;transition:transform .2s ease}.landing-cta:hover svg{transform:translate(4px)}.landing-ghost-cta{width:auto;min-width:140px;height:40px;padding:0 var(--space-4);display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);color:var(--color-primary);border-color:var(--color-primary);text-decoration:none}.landing-ghost-cta-lg{height:48px;padding:0 24px;font-size:15px}.landing-ghost-cta:hover{background-color:#e11d4814;color:var(--color-primary)}[data-theme=dark] .landing-ghost-cta:hover{background-color:#e11d482e;color:var(--color-primary)}.landing-cta:focus-visible,.landing-ghost-cta:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.landing-section{padding:var(--space-8) var(--space-5);scroll-margin-top:calc(var(--landing-header-h) + var(--space-3))}.landing-eyebrow{display:flex;align-items:center;justify-content:center;gap:var(--space-2);font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--color-primary);margin-bottom:var(--space-2)}.landing-eyebrow:before,.landing-eyebrow:after{content:"";width:24px;height:1px;background-color:currentColor;opacity:.5}[data-theme=dark] .landing-eyebrow,[data-theme=dark] .landing-alur-cta a{color:#fb7185}.landing-section-title{font-family:var(--font-headline);font-weight:700;font-size:clamp(22px,3vw,28px);margin:0 0 var(--space-4);text-align:center}.landing-section-sub{color:var(--color-text-secondary);text-align:center;font-size:15px;line-height:1.6;max-width:560px;margin:calc(var(--space-2) * -1) auto var(--space-5)}.landing-empty{display:flex;flex-direction:column;align-items:center;gap:var(--space-3)}.landing-batch-grid{display:grid;grid-template-columns:1fr;gap:var(--space-4)}.landing-batch-grid>*{min-width:0}.landing-batch-grid>.landing-batch-card{margin-bottom:0}@media(min-width:768px){.landing-batch-grid.is-multi{grid-template-columns:repeat(auto-fill,minmax(var(--landing-grid-min),1fr))}}.landing-batch-card{border:1px solid var(--color-border);border-radius:var(--landing-card-radius);padding:var(--space-4);margin-bottom:var(--space-4);background:var(--surface-glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:var(--shadow-glass)}.landing-batch-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-2);flex-wrap:wrap;margin-bottom:var(--space-1)}.landing-batch-card h3{font-family:var(--font-headline);margin:0;min-width:0;overflow-wrap:anywhere}.landing-batch-status{font-size:12px;font-weight:600;padding:3px 10px;border-radius:var(--radius-pill);white-space:nowrap;flex-shrink:0;background-color:#16a34a1f;color:#166534}.landing-batch-status.is-upcoming{background-color:#3b82f61f;color:#1d4ed8}[data-theme=dark] .landing-batch-status{background-color:#16a34a33;color:var(--color-success)}[data-theme=dark] .landing-batch-status.is-upcoming{background-color:#3b82f633;color:#93c5fd}.landing-batch-meta{color:var(--color-text-secondary);font-size:13px;margin-bottom:var(--space-3)}.landing-batch-total{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-md);background:#e11d480d;margin-bottom:var(--space-3);font-size:14px}[data-theme=dark] .landing-batch-total{background:#e11d481a}.landing-batch-total-label{font-weight:700;font-family:var(--font-headline)}.landing-batch-total-meta{color:var(--color-text-secondary);font-size:13px}.landing-batch-divisi-label{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-secondary);margin:0 0 var(--space-2)}.landing-divisi-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--space-2)}.landing-divisi-row{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:14px;min-width:0}.landing-divisi-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.landing-divisi-name{min-width:0;font-weight:500;overflow-wrap:anywhere}.landing-divisi-row .badge,.landing-batch-total .badge{font-size:13px;font-weight:600;text-transform:none;padding:4px 10px;white-space:nowrap;flex-shrink:0}.landing-divisi-row .badge-approved,.landing-batch-total .badge-approved{color:#166534}.landing-divisi-row .badge-rejected,.landing-batch-total .badge-rejected{color:#991b1b}[data-theme=dark] .landing-divisi-row .badge-approved,[data-theme=dark] .landing-batch-total .badge-approved{color:var(--color-success)}[data-theme=dark] .landing-divisi-row .badge-rejected,[data-theme=dark] .landing-batch-total .badge-rejected{color:#f87171}.landing-divisi-bar{height:4px;border-radius:var(--radius-pill);overflow:hidden;background-color:#0f172a1a}[data-theme=dark] .landing-divisi-bar{background-color:#ffffff1f}.landing-divisi-bar-fill{display:block;height:100%;max-width:100%;border-radius:inherit;background-color:var(--color-success);transition:width .3s ease}.landing-divisi-row.is-full .landing-divisi-bar-fill,.landing-batch-total.is-full .landing-divisi-bar-fill{background-color:var(--color-error)}.landing-batch-skeleton{display:flex;flex-direction:column}.landing-batch-skeleton-rows{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--space-2)}.landing-batch-skeleton-rows>.skeleton{height:58px;border-radius:var(--radius-md)}.landing-batch-skeleton-rows>.skeleton:nth-child(2){animation-delay:.12s}.landing-batch-skeleton-rows>.skeleton:nth-child(3){animation-delay:.24s}.landing-batch-skeleton-rows>.skeleton:nth-child(4){animation-delay:.36s}.landing-faq-item{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-2)}.landing-faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);min-height:40px;padding:var(--space-1) 0;cursor:pointer;font-weight:600;font-family:var(--font-headline);list-style:none}.landing-faq-item summary::-webkit-details-marker{display:none}.landing-faq-item summary::marker{content:""}.landing-faq-item summary:focus-visible{outline:none;border-radius:var(--radius-sm);box-shadow:var(--shadow-focus)}.landing-faq-item summary svg{flex-shrink:0;color:var(--color-text-secondary);transition:transform .2s ease}.landing-faq-item[open] summary svg{transform:rotate(180deg)}.landing-faq-item p{color:var(--color-text-secondary);margin:var(--space-2) 0 0;line-height:1.6}.landing-syarat-list{list-style:none;padding-left:0;margin:0 auto;max-width:720px;display:grid;gap:var(--space-2);line-height:1.8}.landing-syarat-list li{display:flex;align-items:flex-start;gap:var(--space-2);line-height:1.8}.landing-syarat-list li svg{width:16px;height:16px;flex-shrink:0;color:var(--color-primary);margin-top:calc((1.8em - 16px)/2)}.landing-alur{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-4)}.landing-alur-step{position:relative;display:grid;grid-template-columns:44px 1fr;column-gap:var(--space-3);min-width:0}.landing-alur-step:not(:last-child):before{content:"";position:absolute;left:21px;top:48px;bottom:calc(var(--space-4) * -1);width:2px;background-color:var(--color-border)}.landing-alur-num{grid-row:1 / span 2;width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--font-headline);font-weight:700;font-size:16px;background-color:#e11d481a;color:#be123c;border:1px solid rgba(225,29,72,.25);position:relative;z-index:1}[data-theme=dark] .landing-alur-num{background-color:#e11d4838;color:#fb7185;border-color:#fb718559}.landing-alur-step h3{margin:0;align-self:center;font-family:var(--font-headline);font-weight:700;font-size:16px;overflow-wrap:anywhere}.landing-alur-step p{grid-column:2;margin:var(--space-1) 0 0;color:var(--color-text-secondary);font-size:14px;line-height:1.6}.landing-alur-cta{text-align:center;margin:var(--space-5) 0 0;color:var(--color-text-secondary);font-size:14px}.landing-alur-cta a{color:var(--color-primary);font-weight:600;text-decoration:none}.landing-alur-cta a:hover,.landing-alur-cta a:focus-visible{text-decoration:underline}@media(min-width:900px){.landing-alur{grid-template-columns:repeat(5,1fr);gap:var(--space-3);align-items:start}.landing-alur-step{display:flex;flex-direction:column;align-items:center;text-align:center}.landing-alur-step:not(:last-child):before{top:21px;bottom:auto;left:calc(50% + 28px);width:calc(100% + var(--space-3) - 56px);height:2px}.landing-alur-step h3{margin-top:var(--space-3);font-size:15px}.landing-alur-step p{font-size:13px}}.landing-testimoni-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--space-3)}.landing-testimoni-grid>*{min-width:0}.landing-testimoni-grid:has(>:only-child){max-width:460px;margin-inline:auto}.landing-testimoni-card{position:relative;overflow:hidden;border:1px solid var(--color-border);border-radius:var(--landing-card-radius);padding:var(--space-4);background:var(--surface-glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:var(--shadow-glass)}.landing-testimoni-card:before{content:"“";position:absolute;top:4px;right:16px;font-family:var(--font-headline);font-size:64px;line-height:1;color:#e11d481f;pointer-events:none}[data-theme=dark] .landing-testimoni-card:before{color:#fb718529}.landing-testimoni-msg{margin:0;line-height:1.6}.landing-testimoni-head{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3)}.landing-testimoni-head>div{min-width:0}.landing-testimoni-card .user-avatar{width:40px;height:40px;font-size:15px;background-color:#e11d481f;color:#be123c}[data-theme=dark] .landing-testimoni-card .user-avatar{background-color:#e11d4838;color:#fb7185}.landing-testimoni-marquee{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}.landing-testimoni-track{display:flex;gap:var(--space-3);width:max-content;animation:landing-marquee 42s linear infinite}.landing-testimoni-track .landing-testimoni-card{width:min(340px,78vw);flex-shrink:0}.landing-testimoni-marquee:hover .landing-testimoni-track,.landing-testimoni-marquee:focus-within .landing-testimoni-track{animation-play-state:paused}@keyframes landing-marquee{to{transform:translate(calc(-50% - var(--space-3) / 2))}}.landing-testimoni-card .name{font-weight:700;font-family:var(--font-headline);overflow-wrap:anywhere}.landing-testimoni-card .role{color:var(--color-text-secondary);font-size:13px;overflow-wrap:anywhere}.landing-footer{width:100%;margin-top:var(--space-8);padding:var(--space-8) 0 var(--space-6);background:var(--surface-glass);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-top:1px solid var(--color-border);color:var(--color-text-secondary);scroll-margin-top:calc(var(--landing-header-h) + var(--space-3))}.landing-footer-inner{max-width:var(--landing-max-width);margin-inline:auto;padding-inline:var(--space-5)}.landing-footer-top{display:flex;flex-direction:column;gap:var(--space-6);padding-bottom:var(--space-6);border-bottom:1px solid var(--color-border)}@media(min-width:768px){.landing-footer-top{flex-direction:row;justify-content:space-between;align-items:flex-start}}.landing-footer-brand{max-width:320px}.landing-footer-brand img{display:block}.landing-footer-brand p{margin:0;font-size:13px;line-height:1.6;color:var(--color-text-secondary)}.landing-footer-nav{display:flex;gap:var(--space-8);flex-wrap:wrap}.landing-footer-col{display:flex;flex-direction:column;gap:var(--space-2);min-width:120px}.landing-footer-col h4{margin:0 0 var(--space-2);font-family:var(--font-headline);font-size:14px;font-weight:700;color:var(--color-text)}.landing-footer-col a{color:var(--color-text-secondary);font-size:13px;text-decoration:none;transition:color .15s ease}.landing-footer-col a:hover{color:var(--color-primary)}.landing-footer-address{font-size:13px;color:var(--color-text-secondary);max-width:200px;line-height:1.5}.landing-footer-bottom{padding-top:var(--space-5);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--space-3);font-size:13px}.landing-footer-bottom p{margin:0}.landing-wa-fab{position:fixed;right:calc(var(--space-4) + env(safe-area-inset-right,0px));bottom:calc(var(--space-4) + env(safe-area-inset-bottom,0px));z-index:30;width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;background-color:#25d366;color:#fff;border:none;text-decoration:none;box-shadow:var(--shadow-lg);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}[data-theme=dark] .landing-wa-fab{box-shadow:var(--shadow-lg),0 0 0 1px #ffffff14}.landing-wa-fab svg{width:28px;height:28px;flex-shrink:0}.landing-wa-fab:active{transform:scale(.96)}.landing-wa-fab:focus-visible{outline:none;box-shadow:var(--shadow-lg),var(--shadow-focus)}@media(hover:hover){.landing-batch-card,.landing-testimoni-card{transition:transform .2s ease,box-shadow .2s ease}.landing-batch-card:hover,.landing-testimoni-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.landing-wa-fab:hover{transform:translateY(-2px);box-shadow:0 16px 44px #00000038}}@media(min-width:1024px){.landing-hero{padding:var(--space-10) var(--space-5)}.landing-wa-fab{display:none}}@media(max-width:1023.98px){.landing-footer{padding-bottom:calc(var(--space-10) + env(safe-area-inset-bottom,0px))}}@media(max-width:768px){.landing-section{padding:var(--space-6) var(--space-4)}}@media(max-width:640px){.landing-page{--landing-header-h: 104px}.landing-header-inner{flex-wrap:wrap;row-gap:var(--space-2);padding:var(--space-2) var(--space-4)}.landing-nav{order:3;width:100%;gap:var(--space-3);flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.landing-nav::-webkit-scrollbar{display:none}.landing-nav a{min-height:40px;white-space:nowrap}.landing-hero{padding:var(--space-6) var(--space-4)}.landing-cta,.landing-ghost-cta-lg{width:100%;max-width:320px}}@media(prefers-reduced-motion:reduce){.landing-nav a:after,.landing-cta svg,.landing-faq-item summary svg,.landing-divisi-bar-fill,.landing-batch-card,.landing-testimoni-card,.landing-wa-fab{transition:none}.landing-cta:hover,.landing-cta:hover svg,.landing-ghost-cta:hover,.landing-batch-card:hover,.landing-testimoni-card:hover,.landing-wa-fab:hover,.landing-wa-fab:active{transform:none}.landing-page .skeleton,.landing-batch-skeleton .skeleton,.landing-testimoni-track{animation:none}.landing-testimoni-marquee{overflow-x:auto;-webkit-mask-image:none;mask-image:none}.landing-testimoni-track .landing-testimoni-card[aria-hidden=true]{display:none}}@media(prefers-reduced-motion:no-preference){.landing-page.reveal-ready [data-reveal]:not(.is-revealed){opacity:0}.landing-page.reveal-ready [data-reveal].is-revealed{animation:landing-reveal .55s cubic-bezier(.22,.61,.36,1) backwards;animation-delay:var(--reveal-delay, 0ms)}}@keyframes landing-reveal{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@media print{.landing-wa-fab{display:none}}[data-start-icon-button]{display:flex;padding:.25rem;border-radius:9999px;border-width:0px;align-items:center;justify-content:center;cursor:pointer;color:#f9fafb;background:none;transition-property:color,background-color,border-color,box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}[data-start-icon-button]:hover{color:#e5e7eb;background-color:#374151}[data-start-icon-button]:focus{outline:2px solid transparent;outline-color:#f9fafb;outline-offset:2px}[data-start-icon-button]:focus-visible{box-shadow:0 0 0 3px #111827bf}[data-start-icon-button]:active{color:#f3f4f6;background-color:#1f2937}[data-start-icon-button]>svg{height:1.25rem;width:1.25rem}[data-start-text-size=xs]{font-size:.75rem;line-height:calc(1 / .75)}[data-start-text-size=sm]{font-size:.875rem;line-height:calc(1.25 / .875)}[data-start-text-size=base]{font-size:1rem;line-height:1.5}[data-start-text-size=lg]{font-size:1.125rem;line-height:calc(1.75 / 1.125)}[data-start-text-size=xl]{font-size:1.25rem;line-height:calc(1.75 / 1.25)}[data-start-text-size="2xl"]{font-size:1.5rem;line-height:calc(2 / 1.5)}[data-start-text-font=sans]{font-family:system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji"}[data-start-text-font=serif]{font-family:ui-serif,Georgia,Cambria,Times New Roman,Times,serif}[data-start-text-font=mono]{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}[data-start-text-weight=thin]{font-weight:100}[data-start-text-weight=extralight]{font-weight:200}[data-start-text-weight=light]{font-weight:300}[data-start-text-weight=normal]{font-weight:400}[data-start-text-weight=medium]{font-weight:500}[data-start-text-weight=semibold]{font-weight:600}[data-start-text-weight=bold]{font-weight:700}[data-start-text-weight=extrabold]{font-weight:800}[data-start-text-weight=black]{font-weight:900}[data-start-text-wrap=wrap]{white-space:wrap}[data-start-text-wrap=nowrap]{white-space:nowrap}[data-start-badge]{display:inline-flex;align-items:center;justify-content:center;gap:.25rem;border-radius:.375rem;padding:.125rem .25rem;background-color:var(--background);border:1px var(--foreground) solid;color:var(--foreground)}[data-start-badge=success]{--background: oklch(98.2% .018 155.826);--foreground: oklch(52.7% .154 150.069)}[data-start-badge=failure]{--background: oklch(97.1% .013 17.38);--foreground: oklch(50.5% .213 27.518)}[data-start-badge=warning]{--background: oklch(98.7% .026 102.212);--foreground: oklch(47.6% .114 61.907)}[data-start-badge=info]{--background: oklch(97% .014 254.604);--foreground: oklch(48.8% .243 264.376)}[data-start-placeholder]{display:flex;align-items:center;justify-content:center;width:100%;height:100%}[data-start-placeholder]>span{text-align:center}[data-start-section]{display:flex;flex-direction:column}[data-start-section-title]{text-transform:uppercase}[data-start-section-content]{margin-left:.5rem;padding-left:.5rem;border-left:1px oklch(87% .065 274.039) solid;width:calc(100% - 2rem);overflow:auto}[data-start-select]{display:flex;flex-direction:column;margin:0;margin-block:0;list-style-type:none;padding-inline:0}[data-start-select]>*+*{border-top:1px oklch(87% .065 274.039) solid}[data-start-select-option]{color:#f9fafb;padding:.5rem 1rem;font-size:.875rem;line-height:1.25rem;outline:none;cursor:pointer;transition-property:color,background-color,border-color,box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;white-space:nowrap}[data-start-select-option][tc-active],[data-start-select-option][tc-selected],[data-start-select-option]:focus{color:#e5e7eb;background-color:#374151}[data-start-tab]{display:flex;align-items:center;justify-content:center;border-radius:.5rem;cursor:pointer;padding:.5rem 1rem;font-size:.875rem;line-height:1.25rem;border:none;outline:none;transition-property:color,background-color,border-color,box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}[data-start-tab][tc-active],[data-start-tab][tc-selected],[data-start-tab]:hover,[data-start-tab]:focus{color:#e5e7eb;background-color:#374151}[data-start-tab-list]{display:flex;gap:.5rem;margin:.5rem}[data-start-tab-panel]{height:100%;overflow:auto;display:flex;flex-direction:column;gap:.5rem;padding:.5rem;border-top:oklch(87% .065 274.039) 1px solid}[data-start-button]{display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:.5rem;color:#eff6ff;background-color:#111827;padding:.25rem .5rem;font-size:.875rem;line-height:1.25rem;border:none;outline:none;transition-property:color,background-color,border-color,box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;white-space:nowrap}[data-start-button][tc-active],[data-start-button][tc-selected],[data-start-button]:hover,[data-start-button]:focus{color:#dbeafe;background-color:#1e3a8a}[data-start-blob-viewer] svg{width:1rem;height:1rem}[data-start-seroval-value]{display:flex;gap:.25rem;align-items:center}[data-start-headers-viewer]{font-size:.75rem;line-height:1rem}[data-start-headers-viewer]>[data-start-property]>*:first-child{text-transform:capitalize}[data-start-hex-viewer]{display:flex;border:1px oklch(87% .065 274.039) solid;overflow:auto}[data-start-hex-viewer-bytes]{flex:1;display:flex;flex-direction:column;gap:.5rem;padding:.5rem}[data-start-hex-viewer-text]{flex:1;display:flex;flex-direction:column;gap:.5rem;padding:.5rem;border-left:1px oklch(87% .065 274.039) solid}[data-start-hex-row]{display:flex;align-items:center;gap:1rem}[data-start-hex-text]{display:flex;align-items:center;justify-content:start}[data-start-cascade]{display:flex;flex-direction:column;margin:0;margin-block:0;list-style-type:none;padding-inline:0}[data-start-cascade-option]{border-radius:.25rem;font-size:.875rem;line-height:1.25rem;outline:none;cursor:pointer;transition-property:color,background-color,border-color,box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;white-space:nowrap}[data-start-cascade-option][tc-active],[data-start-cascade-option][tc-selected],[data-start-cascade-option]:focus{background-color:#dbeafe;color:#1e3a8a}[data-start-seroval-viewer]{display:grid;grid-template-columns:1fr 2fr}[data-start-seroval-promise]{display:flex;gap:.5rem;align-items:center}[data-start-seroval-renderer]{display:flex;border-top:1px oklch(87% .065 274.039) solid;border-bottom:1px oklch(87% .065 274.039) solid}[data-start-seroval-renderer]>*{border-left:1px oklch(87% .065 274.039) solid}[data-start-seroval-renderer]:last-child{border-right:1px oklch(87% .065 274.039) solid}[data-start-seroval-node]{display:flex;flex-direction:column;gap:.25rem;padding:.25rem;width:100%;max-width:16rem}[data-start-seroval-node-header]{position:sticky;top:0;display:flex;align-items:center;justify-content:space-between;color:#f9fafb}[data-start-seroval-node-content]{display:flex;flex-direction:column;gap:.25rem}[data-start-seroval-value]{color:#f9fafb}[data-start-seroval-value-wrapper],[data-start-seroval-link]{display:inline-flex;gap:.25rem;align-items:center}[data-start-seroval-link]>svg{width:1rem;height:1rem}[data-start-functions-instance-detail]{display:flex;align-items:center;gap:.5rem}[data-start-functions-viewer]{color:#f9fafb;display:flex;flex-direction:column;min-height:100%}[data-start-functions-instances-container]{color:#f9fafb;width:100%;min-height:100%;overflow:auto}[data-start-functions-instances]{list-style:none;display:flex;flex-direction:column;padding:0}[data-start-functions-instances]>[data-start-select-option]{display:flex;align-items:center;justify-content:space-between;padding:.5rem;color:#f9fafb}[data-start-headers]{display:flex;flex-direction:column;gap:.5rem}[data-start-headers-title]{font-weight:500}[data-start-properties]{display:flex;flex-direction:column;gap:.25rem}[data-start-property]{display:flex;flex-direction:row;align-items:center;flex-wrap:nowrap;gap:.25rem}[data-start-function-instance-viewer]{display:flex;flex-direction:column;width:100%}[data-start-function-instance-viewer-nav],[data-start-functions-nav]{padding:.5rem;display:flex;align-items:center;gap:.5rem;justify-content:space-between;position:sticky;top:0;border-bottom:oklch(87% .065 274.039) 1px solid;background:#1e1a4d}[data-start-functions-nav] svg{padding:.25rem}[data-start-function-instance-viewer-nav-left]{display:flex;align-items:center;gap:.5rem}[data-start-function-instance-viewer-nav-left]>div{display:flex;align-items:center;gap:.5rem}[data-start-function-instance-viewer-content]{height:100%}[data-start-function-instance-viewer-content]>[tc-tab-group]{height:100%}[data-start-dev-toolbar]{position:fixed;bottom:0;left:0;display:flex;flex-direction:column-reverse;align-items:flex-start;cursor:grab}[data-start-dev-toolbar]:active{cursor:grabbing}[data-start-dev-toolbar]>[tc-toolbar]{position:relative;background:#1e1a4d;margin:1rem;padding:.25rem .5rem;overflow:hidden;border-radius:9999px;display:flex;flex-direction:row;align-items:center;gap:.5rem;border:oklch(87% .065 274.039) 1px solid}[data-start-dev-toolbar]>[tc-toolbar]>div{display:flex;flex-direction:row;align-items:center;justify-content:center}[data-start-dev-toolbar]>[tc-toolbar]>div:last-child{border-left:rgb(249 250 251) 1px solid;padding-left:.5rem;gap:.5rem}[data-start-dev-toolbar-version]{border-radius:9999px;color:#f9fafb;padding:.125rem .5rem;font-size:.875rem;line-height:1.25rem;font-weight:600;border:oklch(87% .065 274.039) 1px solid}[data-start-dev-toolbar-version]>div{height:1.5rem;width:1.5rem}[data-start-dev-toolbar] svg{height:1.25rem;width:1.25rem}[data-start-dev-toolbar-panel]{border:oklch(87% .065 274.039) 1px solid;background:#1e1a4d;margin:0rem 1rem;overflow:auto;width:50rem;height:30rem;max-width:calc(100vw - 10rem);max-height:calc(100vh - 2rem);border-radius:1rem}
