/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.relative{position:relative}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.block{display:block}.contents{display:contents}.hidden{display:none}.table{display:table}}:root{--ink:#171719;--muted:#6f7076;--line:#e8e8eb;--surface:#fff;--canvas:#f5f5f6;--red:#ed1c24;--red-dark:#c81219;--green:#17a673;--amber:#d98614;--blue:#2f6fe4;--purple:#7b50d6;--shadow:0 18px 50px #10101414}*{box-sizing:border-box}html{background:var(--canvas)}body{color:var(--ink);background:var(--canvas);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}.brand{align-items:center;gap:10px;min-width:0;display:flex}.brand-logo{object-fit:contain;object-position:left center;background:#fff;border-radius:10px;width:165px;height:49px;padding:3px 7px;display:block}.brand-affiliation{color:#88888e;letter-spacing:.25px;text-transform:uppercase;max-width:84px;font-size:8px;font-weight:750;line-height:1.25}.brand-affiliation b{color:var(--ink);letter-spacing:0;text-transform:lowercase;margin:2px 0;font-size:10px;line-height:1.1;display:block}.eyebrow{color:#99999f;letter-spacing:1.2px;margin:0 0 8px;font-size:11px;font-weight:800}.avatar{color:#fff;background:linear-gradient(145deg,#303034,#111);border-radius:14px;flex:none;place-items:center;width:40px;height:40px;font-size:12px;font-weight:800;display:grid}.icon-button{width:40px;height:40px;color:var(--ink);border:1px solid var(--line);background:#fff;border-radius:12px;place-items:center;padding:0;display:grid}.primary-button,.secondary-button,.text-button{border-radius:11px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 17px;font-weight:750;display:inline-flex}.primary-button{color:#fff;background:var(--red);border:0;box-shadow:0 8px 20px #ed1c242e}.primary-button:hover{background:var(--red-dark)}.secondary-button{color:var(--ink);border:1px solid var(--line);background:#fff}.secondary-button.danger{color:var(--red);background:#fff7f7;border-color:#ffd5d7}.text-button{min-height:auto;color:var(--red);background:0 0;border:0;padding:0}.full-button{width:100%;min-height:49px}.splash{align-content:center;place-items:center;gap:24px;min-height:100svh;display:grid}.splash p{color:var(--muted);margin:0}.loader{border:3px solid #ddd;border-top-color:var(--red);border-radius:50%;width:28px;height:28px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.login-page{background:#fff;grid-template-columns:minmax(330px,.9fr) 1.1fr;min-height:100svh;display:grid}.login-story{color:#fff;background:radial-gradient(circle at 80% 18%,#ed1c2447,#0000 35%),#151517;flex-direction:column;justify-content:space-between;min-height:100svh;padding:clamp(30px,5vw,72px);display:flex;position:relative;overflow:hidden}.login-story:after{content:"";border:80px solid #ffffff06;border-radius:50%;width:440px;height:440px;position:absolute;bottom:-180px;right:-120px}.login-story .brand{z-index:1;position:relative}.login-story .brand-affiliation{color:#b9b9bf}.login-story .brand-affiliation b{color:#fff}.login-story>div:nth-child(2){z-index:1;max-width:570px;position:relative}.login-story h1{letter-spacing:-3px;max-width:560px;margin:0;font-size:clamp(38px,5vw,66px);line-height:.98}.login-story>div:nth-child(2)>p:last-child{color:#c4c4ca;max-width:500px;margin:24px 0 0;font-size:17px;line-height:1.7}.security-note{z-index:1;color:#cdced2;background:#ffffff0a;border:1px solid #35353a;border-radius:14px;gap:12px;max-width:520px;padding:16px 18px;font-size:13px;line-height:1.5;display:flex;position:relative}.security-note svg{color:#52d2a2;flex:none}.login-panel{background:#fafafa;place-items:center;padding:32px;display:grid}.login-card{border:1px solid var(--line);width:min(100%,440px);box-shadow:var(--shadow);background:#fff;border-radius:24px;padding:clamp(28px,5vw,46px)}.login-icon{width:50px;height:50px;color:var(--red);background:#fff0f1;border-radius:15px;place-items:center;margin-bottom:23px;display:grid}.login-card h2{letter-spacing:-.8px;margin:0;font-size:28px}.login-card>p{color:var(--muted);margin:9px 0 24px}.role-tabs{background:#f1f1f3;border-radius:13px;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:24px;padding:5px;display:grid}.role-tabs button{color:#77777d;background:0 0;border:0;border-radius:9px;justify-content:center;align-items:center;gap:8px;min-height:42px;font-weight:750;display:flex}.role-tabs button.active{color:var(--ink);background:#fff;box-shadow:0 3px 12px #00000014}.form-stack{gap:17px;display:grid}.form-stack label,.form-grid label{color:#45454a;gap:7px;font-size:12px;font-weight:750;display:grid}input,select,textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #dfe0e3;border-radius:10px;outline:none}input,select{height:44px;padding:0 12px}textarea{resize:vertical;padding:12px}input:focus,select:focus,textarea:focus{border-color:var(--red);box-shadow:0 0 0 3px #ed1c2414}.form-error,.rejection{color:#a40f15;background:#fff3f3;border:1px solid #ffd1d3;border-radius:9px;padding:11px 13px;font-size:12px;line-height:1.5}.admin-layout{grid-template-columns:265px minmax(0,1fr);min-height:100svh;display:grid}.sidebar{z-index:20;color:#fff;background:#18181a;flex-direction:column;width:265px;padding:25px 18px 20px;display:flex;position:fixed;inset:0 auto 0 0}.sidebar-heading{justify-content:space-between;align-items:center;padding:0 7px 28px;display:flex}.sidebar .brand-affiliation{color:#9b9ba2}.sidebar .brand-affiliation b{color:#fff}.mobile-close{color:#fff;background:0 0;border:0;display:none}.side-nav{gap:5px;display:grid}.side-nav small{color:#707075;letter-spacing:1.2px;padding:8px 13px 9px;font-size:9px;font-weight:800}.side-nav button{color:#a9a9ae;text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:12px;width:100%;min-height:45px;padding:0 13px;font-weight:650;display:flex}.side-nav button:hover{color:#fff;background:#252528}.side-nav button.active{color:#fff;box-shadow:inset 3px 0 var(--red);background:#2c2c2f}.side-nav button span{flex:1}.nav-badge{background:var(--red);border-radius:10px;place-items:center;min-width:21px;height:21px;padding:0 5px;font-size:10px;display:grid}.sidebar-security{color:#aaaab0;background:#202023;border:1px solid #303034;border-radius:13px;gap:11px;margin:auto 0 17px;padding:15px;display:flex}.sidebar-security svg{color:#52d2a2;flex:none}.sidebar-security b{color:#eee;font-size:12px;display:block}.sidebar-security p{margin:5px 0 0;font-size:10px;line-height:1.5}.sidebar-user{border-top:1px solid #303034;align-items:center;gap:10px;padding:10px 4px 0;display:flex}.sidebar-user>span:nth-child(2){flex:1;min-width:0}.sidebar-user b,.sidebar-user small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.sidebar-user b{font-size:12px}.sidebar-user small{color:#818187;margin-top:3px;font-size:9px}.sidebar-user button{color:#97979d;background:0 0;border:0;border-radius:9px;place-items:center;width:35px;height:35px;display:grid}.sidebar-user button:hover{color:#fff;background:#2c2c2f}.sidebar-backdrop{display:none}.admin-main{grid-column:2;min-width:0}.topbar{z-index:10;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffed;align-items:center;gap:16px;height:69px;padding:0 clamp(20px,4vw,48px);display:flex;position:sticky;top:0}.menu-button{color:var(--ink);background:0 0;border:0;display:none}.topbar-title{font-weight:800}.server-state{color:var(--muted);align-items:center;gap:7px;margin-left:auto;font-size:12px;font-weight:700;display:flex}.server-state i{background:var(--green);border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 4px #17a6731f}.admin-content{width:min(100%,1500px);margin:0 auto;padding:35px clamp(20px,4vw,48px) 60px}.page-heading,.section-actions{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:27px;display:flex}.page-heading h1,.section-actions h1,.employee-welcome h1{letter-spacing:-1.3px;margin:0;font-size:clamp(28px,4vw,38px)}.page-heading>div>p:last-child,.section-actions p,.employee-welcome>p:last-child{color:var(--muted);margin:8px 0 0}.metric-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-bottom:20px;display:grid}.metric-card{border:1px solid var(--line);background:#fff;border-radius:16px;min-width:0;padding:20px;box-shadow:0 8px 26px #14141809}.metric-icon{border-radius:12px;place-items:center;width:39px;height:39px;margin-bottom:24px;display:grid}.tone-black{color:#fff;background:#202023}.tone-blue{color:var(--blue);background:#edf3ff}.tone-green{color:var(--green);background:#e9f9f3}.tone-purple{color:var(--purple);background:#f3efff}.tone-amber{color:var(--amber);background:#fff5e8}.metric-card strong{letter-spacing:-1px;font-size:30px;display:block}.metric-card p{color:var(--muted);margin:7px 0 0;font-size:12px;font-weight:650}.panel{border:1px solid var(--line);background:#fff;border-radius:17px;overflow:hidden;box-shadow:0 8px 28px #14141809}.panel-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;padding:21px 23px;display:flex}.panel-heading h2{margin:0;font-size:17px}.panel-heading p{color:var(--muted);margin:5px 0 0;font-size:12px}.table-scroll{overflow-x:auto}table{border-collapse:collapse;white-space:nowrap;width:100%}th{color:#909096;letter-spacing:.5px;text-align:left;text-transform:uppercase;background:#fafafa;padding:13px 18px;font-size:10px}td{border-top:1px solid #f0f0f2;padding:15px 18px;font-size:12px}td b{font-size:12px}.table-sub{color:var(--muted);margin-top:4px;font-size:10px;display:block}.person-cell{align-items:center;gap:10px;display:flex}.person-cell small{color:var(--muted);margin-top:3px;font-size:10px;line-height:1.35;display:block}.status{border-radius:8px;align-items:center;min-height:25px;padding:0 9px;font-size:10px;font-weight:800;display:inline-flex}.status-green{color:#087c55;background:#e8f8f2}.status-red{color:#b51017;background:#fff0f1}.status-amber{color:#9d5d08;background:#fff4df}.status-dark{color:#fff;background:#2b2b2e}.empty-state{text-align:center;background:#ffffffad;border:1px dashed #d8d8dc;border-radius:17px;place-items:center;min-height:290px;padding:50px 24px;display:grid}.empty-state>span{color:#77777d;background:#ededf0;border-radius:18px;place-items:center;width:58px;height:58px;display:grid}.empty-state h3{margin:18px 0 6px;font-size:18px}.empty-state p{max-width:430px;color:var(--muted);margin:0;line-height:1.55}.card-list{gap:13px;display:grid}.request-card{border:1px solid var(--line);background:#fff;border-radius:15px;grid-template-columns:minmax(170px,1.1fr) 1fr 1.25fr 2fr auto auto;align-items:center;gap:18px;padding:18px 20px;display:grid}.request-card small,.request-card b{display:block}.request-card small{color:var(--muted);margin-bottom:5px;font-size:10px}.request-card b{font-size:12px}.request-card p{color:#535359;margin:0;font-size:12px;line-height:1.5}.request-person{align-items:center;gap:10px;display:flex}.request-actions{gap:8px;display:flex}.branch-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.branch-card{border:1px solid var(--line);background:#fff;border-radius:17px;padding:23px}.branch-icon{width:45px;height:45px;color:var(--red);background:#fff0f1;border-radius:13px;place-items:center;display:grid}.branch-card h3{margin:20px 0 7px}.branch-card p{color:var(--muted);margin:0}.branch-card small{color:#99999f;margin:7px 0 20px;display:block}.modal-backdrop{z-index:50;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0c0c0e9e;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.modal-card{background:#fff;border-radius:20px;width:min(100%,620px);max-height:calc(100svh - 36px);overflow:auto;box-shadow:0 35px 100px #0000004d}.modal-card>header{z-index:2;border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;padding:19px 22px;display:flex;position:sticky;top:0}.modal-card>header h2{margin:0;font-size:19px}.form-grid{grid-template-columns:1fr 1fr;gap:17px;padding:23px;display:grid}.form-grid label small{color:var(--muted);font-size:10px;font-weight:500}.span-2{grid-column:span 2}.modal-actions{justify-content:flex-end;gap:9px;padding-top:5px;display:flex}.qr-content{text-align:center;place-items:center;padding:26px;display:grid}.qr-content img{border:1px solid var(--line);border-radius:15px;width:min(100%,340px)}.qr-content p{max-width:470px;color:var(--muted);margin:18px 0;font-size:13px;line-height:1.6}.toast{z-index:80;color:#fff;background:#1e7b5d;border-radius:13px;align-items:center;gap:10px;max-width:min(430px,100vw - 32px);padding:14px 15px;font-size:13px;display:flex;position:fixed;bottom:22px;right:22px;box-shadow:0 18px 50px #00000038}.toast-error{background:#a9141a}.toast span{flex:1}.toast button{color:#fff;background:0 0;border:0;place-items:center;padding:0;display:grid}.employee-shell{background:#f5f5f6;min-height:100svh;padding-bottom:88px}.employee-header{border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;gap:20px;min-height:76px;padding:12px clamp(18px,5vw,38px);display:flex}.employee-user{align-items:center;gap:11px;display:flex}.employee-user>span{text-align:right}.employee-user b,.employee-user small{display:block}.employee-user b{font-size:12px}.employee-user small{color:var(--muted);margin-top:3px;font-size:10px}.employee-content{width:min(100% - 32px,920px);margin:0 auto;padding:38px 0}.employee-welcome{margin-bottom:24px}.today-card{color:#fff;box-shadow:var(--shadow);background:radial-gradient(circle at 90% 0,#ed1c2447,#0000 35%),#18181a;border-radius:21px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:25px;padding:27px;display:grid}.today-card>div:first-child{align-items:center;gap:16px;display:flex}.today-icon{color:#fff;background:var(--red);border-radius:16px;flex:none;place-items:center;width:55px;height:55px;display:grid}.today-card small{color:#8e8e94;letter-spacing:.8px;font-size:9px;font-weight:800}.today-card h2{margin:6px 0 4px;font-size:23px}.today-card p{color:#aaaab0;margin:0;font-size:12px}.time-pair{gap:8px;display:flex}.time-pair span{text-align:center;background:#232326;border:1px solid #353539;border-radius:13px;min-width:86px;padding:13px}.time-pair b{margin-top:5px;font-size:21px;display:block}.scan-guide{background:#eef8f4;border:1px solid #dce9e4;border-radius:18px;align-items:center;gap:19px;margin-top:16px;padding:24px;display:flex}.scan-guide svg{color:var(--green);flex:none}.scan-guide h2{margin:0 0 7px;font-size:17px}.scan-guide p{color:#547065;margin:0;font-size:12px;line-height:1.55}.bottom-nav{z-index:18;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#18181af5;border:1px solid #323237;border-radius:18px;width:min(100% - 28px,620px);padding:7px;display:flex;position:fixed;bottom:16px;left:50%;transform:translate(-50%);box-shadow:0 16px 48px #00000040}.bottom-nav button{color:#85858b;background:0 0;border:0;border-radius:12px;flex:1;place-items:center;gap:4px;min-height:54px;padding:4px;font-size:9px;font-weight:700;display:grid}.bottom-nav button.active{color:#fff;background:#303034}.bottom-nav button.active svg{color:#ff4a50}.profile-card{border:1px solid var(--line);text-align:center;background:#fff;border-radius:20px;max-width:600px;margin:0 auto;padding:32px}.profile-card>.avatar{border-radius:22px;width:72px;height:72px;margin:0 auto;font-size:20px}.profile-card h1{margin:17px 0 5px}.profile-card>p{color:var(--muted);margin:0}.profile-card dl{text-align:left;grid-template-columns:1fr 1fr;gap:10px;margin:25px 0 0;display:grid}.profile-card dl div{background:#f6f6f7;border-radius:12px;padding:14px}.profile-card dt{color:var(--muted);font-size:10px}.profile-card dd{margin:5px 0 0;font-size:12px;font-weight:750}@media (width<=1100px){.metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.request-card{grid-template-columns:1fr 1fr 1fr}.request-card>p{grid-column:span 2}.branch-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=820px){.login-page{grid-template-columns:1fr}.login-story{min-height:auto;padding:30px 24px}.login-story>div:nth-child(2){margin:70px 0 60px}.login-story h1{font-size:clamp(36px,11vw,54px)}.login-panel{padding:24px 16px 40px}.admin-layout{display:block}.sidebar{transition:transform .22s;transform:translate(-102%);box-shadow:24px 0 60px #0000004d}.sidebar-open{transform:translate(0)}.mobile-close,.menu-button{place-items:center;display:grid}.sidebar-backdrop{z-index:15;background:#00000073;border:0;display:block;position:fixed;inset:0}.admin-main{min-width:0}.topbar{height:62px;padding:0 18px}.topbar-title{font-size:13px}.admin-content{padding:25px 16px 48px}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.page-heading{align-items:flex-start}.request-card{grid-template-columns:1fr 1fr}.request-person,.request-card>p,.request-actions{grid-column:span 2}.branch-grid{grid-template-columns:1fr}.employee-content{padding-top:26px}}@media (width<=560px){.login-story .security-note{display:none}.brand-logo{width:145px;height:45px}.login-story>div:nth-child(2){margin:55px 0 8px}.login-story h1{letter-spacing:-2px}.login-story>div:nth-child(2)>p:last-child{font-size:14px}.login-card{border-radius:20px;padding:28px 20px}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.metric-card{padding:16px}.metric-icon{margin-bottom:17px}.metric-card strong{font-size:26px}.page-heading,.section-actions{align-items:stretch;display:grid}.page-heading .primary-button,.section-actions .primary-button{width:100%}.server-state{font-size:10px}.table-panel{border-left:0;border-right:0;border-radius:0;margin:0 -16px}.attendance-table .table-scroll{overflow:visible}.attendance-table table,.attendance-table tbody,.attendance-table tr{width:100%;display:block}.attendance-table thead{display:none}.attendance-table tbody{padding:10px}.attendance-table tr{border:1px solid var(--line);background:#fff;border-radius:14px;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:10px;display:grid;overflow:hidden;box-shadow:0 5px 16px #1414180a}.attendance-table tr:last-child{margin-bottom:0}.attendance-table td{white-space:normal;border:0;min-width:0;padding:11px 13px}.attendance-table td:first-child{background:#fafafa;border-bottom:1px solid #f0f0f2;grid-column:1/-1;padding:14px 13px}.attendance-table td:before{color:#909096;letter-spacing:.45px;text-transform:uppercase;content:attr(data-label);margin-bottom:5px;font-size:9px;font-weight:800;display:block}.attendance-table td:last-child{grid-column:1/-1}.attendance-table .status-actions{justify-content:space-between}.form-grid{grid-template-columns:1fr;padding:19px}.span-2{grid-column:span 1}.modal-actions{grid-template-columns:1fr 1fr;display:grid}.employee-header{padding:12px 16px}.employee-header .brand span:last-child,.employee-user>span{display:none}.employee-content{width:min(100% - 24px,920px)}.today-card{grid-template-columns:1fr;padding:21px}.time-pair{width:100%}.time-pair span{flex:1}.scan-guide{align-items:flex-start;padding:19px}.request-card{grid-template-columns:1fr}.request-person,.request-card>p,.request-actions{grid-column:span 1}.request-actions{grid-template-columns:1fr 1fr;display:grid}.profile-card{padding:25px 17px}.profile-card dl{grid-template-columns:1fr}.toast{bottom:88px;right:16px}}@media print{body *{visibility:hidden}.modal-card,.modal-card *{visibility:visible}.modal-backdrop{background:#fff;padding:0;display:block;position:static}.modal-card{width:100%;box-shadow:none}.modal-card>header,.qr-content p,.qr-content button{display:none}.qr-content img{width:520px;max-width:100%}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation-duration:.01ms!important}}.brand-logo{background:0 0;border-radius:0;width:176px;height:56px;padding:0}.splash .brand,.employee-header .brand{background:#2c2c2f;border-radius:12px;padding:4px 9px}.side-nav button.active{background:#3b1115}.topbar-search{color:#88888e;border:1px solid var(--line);background:#f8f8f9;border-radius:11px;align-items:center;gap:9px;width:min(400px,45vw);height:42px;padding:0 13px;display:flex}.topbar-search input{height:auto;box-shadow:none;background:0 0;border:0;padding:0}.topbar-actions{align-items:center;gap:10px;margin-left:auto;display:flex}.install-icon{color:var(--red)}.install-button{color:#fff;background:#2c2c2f;border:0;border-radius:11px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 16px;font-weight:750;display:inline-flex}.notification-wrap,.notification-button{position:relative}.notification-button>b{color:#fff;background:var(--red);border:2px solid #fff;border-radius:10px;place-items:center;min-width:19px;height:19px;padding:0 4px;font-size:9px;display:grid;position:absolute;top:-6px;right:-5px}.notification-panel{z-index:35;border:1px solid var(--line);background:#fff;border-radius:16px;width:min(380px,100vw - 32px);position:absolute;top:50px;right:0;overflow:hidden;box-shadow:0 24px 70px #0f0f122e}.notification-panel header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:16px;display:flex}.notification-panel header small{color:var(--muted);margin-top:3px;display:block}.notification-enable{color:#fff;background:#2c2c2f;border:0;border-radius:10px;align-items:center;gap:8px;width:calc(100% - 24px);min-height:38px;margin:12px;padding:0 11px;font-size:12px;font-weight:750;display:flex}.notification-test{color:#9f1118;background:#fff5f5;border:1px solid #ffd2d4;border-radius:10px;align-items:center;gap:8px;width:calc(100% - 24px);min-height:38px;margin:-4px 12px 12px;padding:0 11px;font-size:12px;font-weight:800;display:flex}.notification-list{max-height:330px;overflow:auto}.notification-list>button{text-align:left;background:#fff;border:0;border-top:1px solid #f1f1f2;align-items:flex-start;gap:10px;width:100%;padding:13px 16px;display:flex}.notification-list>button:hover{background:#fafafa}.notification-list b,.notification-list small{display:block}.notification-list b{font-size:12px}.notification-list small{color:var(--muted);margin-top:4px;font-size:10px}.notification-list p{color:var(--muted);text-align:center;margin:0;padding:24px 16px}.notification-dot{background:var(--red);border-radius:50%;flex:none;width:8px;height:8px;margin-top:4px}.metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.metric-card{min-height:148px}.tone-gray{color:#68686e;background:#eeeeef}.tone-red{color:var(--red);background:#fff0f1}.tone-redStrong{color:#fff;background:var(--red)}.branch-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.branch-card{min-height:260px;padding:26px;box-shadow:0 15px 40px #1414180e}.branch-card .secondary-button{color:#fff;border-color:var(--red);background:var(--red);width:100%;margin-top:4px}.report-totals{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.report-totals article{border:1px solid var(--line);background:#fff;border-radius:16px;padding:22px}.report-totals small,.report-totals b,.report-totals span{display:block}.report-totals small{color:var(--muted);font-weight:700}.report-totals b{margin:13px 0 5px;font-size:27px}.report-totals span{color:#a0a0a5;font-size:10px}.report-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;padding:21px;display:grid}.report-actions>button{border:1px solid var(--line);text-align:left;background:#fafafa;border-radius:13px;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;min-height:84px;padding:15px;display:grid}.report-actions>button:hover{background:#fff7f7;border-color:#efb9bc}.report-actions>button>span{width:42px;height:42px;color:var(--red);background:#fff0f1;border-radius:12px;place-items:center;display:grid}.report-actions b,.report-actions small{display:block}.report-actions small{color:var(--muted);margin-top:5px;font-size:10px}.settings-layout{grid-template-columns:1fr 1fr;gap:16px;display:grid}.settings-card{padding:23px}.company-management{gap:18px;display:grid}.company-toolbar{justify-content:space-between;align-items:center;gap:16px;display:flex}.company-toolbar p{color:var(--muted);margin:0}.company-editor{max-width:820px}.company-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.company-card{gap:20px;padding:24px;display:grid}.company-card>header{align-items:center;gap:13px;display:flex}.company-card h2,.company-card p{margin:0}.company-card header p{color:var(--muted);margin-top:4px;font-size:12px}.company-card dl{grid-template-columns:1fr 1fr;gap:13px;margin:0;display:grid}.company-card dl div{background:#f7f7f8;border-radius:11px;min-width:0;padding:12px}.company-card dt{color:var(--muted);text-transform:uppercase;font-size:10px;font-weight:750}.company-card dd{overflow-wrap:anywhere;margin:5px 0 0;font-size:13px;font-weight:700}.company-stamp{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:15px;padding-top:16px;display:flex}.company-stamp img{object-fit:contain;object-position:left center;width:150px;height:70px}.company-stamp>span{color:var(--muted);align-items:center;gap:9px;font-size:12px;display:flex}.company-card>footer{justify-content:space-between;align-items:center;gap:10px;display:flex}.settings-section-title{border-bottom:1px solid var(--line);align-items:flex-start;gap:12px;margin-bottom:20px;padding-bottom:19px;display:flex}.settings-section-title>svg{color:var(--red)}.settings-section-title h2{margin:0;font-size:16px}.settings-section-title p{color:var(--muted);margin:5px 0 0;font-size:11px}.settings-fields{grid-template-columns:1fr 1fr;gap:15px;display:grid}.settings-fields label{color:#45454a;gap:7px;font-size:11px;font-weight:750;display:grid}.settings-fields .wide{grid-column:span 2}.settings-tools{flex-direction:column;gap:11px;display:flex}.settings-tools .settings-section-title{width:100%}.settings-save{grid-column:span 2;justify-content:flex-end;display:flex}@media (width<=980px){.report-actions,.settings-layout{grid-template-columns:1fr}.settings-save{grid-column:span 1}.company-grid{grid-template-columns:1fr}}@media (width<=820px){.topbar{gap:8px}.topbar-search{width:min(100%,310px)}.server-state{display:none}.report-totals{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.brand-logo{width:142px;height:46px}.topbar-search{flex:1;width:auto}.topbar-actions{gap:6px}.topbar-actions .install-icon{display:none}.metric-grid,.report-totals{grid-template-columns:1fr 1fr}.metric-card{min-height:126px}.company-toolbar,.company-stamp{flex-direction:column;align-items:stretch}.company-toolbar .primary-button{width:100%}.company-card dl{grid-template-columns:1fr}.company-stamp img{object-position:center;width:100%}.report-actions{padding:14px}.settings-fields{grid-template-columns:1fr}.settings-fields .wide{grid-column:span 1}.settings-save .primary-button{width:100%}.notification-panel{width:auto;position:fixed;top:69px;left:12px;right:12px}}.status-actions{align-items:center;gap:8px;display:flex}.row-action{color:var(--red);white-space:nowrap;background:#fff7f7;border:1px solid #ffd2d4;border-radius:8px;padding:6px 9px;font-size:10px;font-weight:800}.modal-wide{width:min(100%,1040px)}.split-actions{justify-content:space-between}.scanner-content{padding:20px}.camera-frame{aspect-ratio:4/3;background:#111;border-radius:18px;max-height:62svh;position:relative;overflow:hidden}.camera-frame video{object-fit:cover;width:100%;height:100%}.scan-corners{border:3px solid #ffffffe6;border-radius:18px;position:absolute;inset:18%;box-shadow:0 0 0 999px #00000047}.scanner-note{color:#285f4b;background:#eef8f4;border-radius:13px;gap:12px;margin-top:14px;padding:16px;display:flex}.scanner-note b{display:block}.scanner-note p{margin:5px 0 0;font-size:12px;line-height:1.5}.scan-button{margin-top:14px}.employee-reminder{background:#fff5f5;border:1px solid #ffd2d4;border-radius:17px;align-items:center;gap:15px;margin-top:16px;padding:18px 20px;display:flex}.employee-reminder>svg{color:var(--red);flex:none}.employee-reminder>div{flex:1}.employee-reminder h2{margin:0 0 5px;font-size:16px}.employee-reminder p{color:#7b4548;margin:0;font-size:12px;line-height:1.5}.employee-reminder.reminder-exit{background:#fff9e8;border-color:#f1dfac}.employee-reminder.reminder-exit>svg{color:#ad7500}.employee-reminder.reminder-exit p{color:#765c25}.late-employees-panel{margin-bottom:18px;overflow:hidden}.late-employees-panel .panel-heading h2{color:#a70e15;align-items:center;gap:8px;display:flex}.late-employee-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:0 20px 20px;display:grid}.late-employee-list article{background:#fff7f7;border:1px solid #ffd9db;border-radius:13px;align-items:center;gap:11px;min-width:0;padding:13px;display:flex}.late-employee-list article>span:not(.avatar){flex:1;min-width:0}.late-employee-list b,.late-employee-list small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.late-employee-list small{color:var(--muted);margin-top:4px;font-size:10px}.late-employee-list strong{color:var(--red);flex:none;font-size:13px}.manager-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;padding:20px;display:grid}.manager-grid article{border:1px solid var(--line);background:#fafafa;border-radius:13px;align-items:center;gap:12px;padding:16px;display:flex}.manager-grid article>span{width:42px;height:42px;color:var(--red);background:#fff0f1;border-radius:12px;place-items:center;display:grid}.manager-grid b,.manager-grid small{display:block}.manager-grid small{color:var(--muted);margin-top:4px;font-size:10px}.manager-grid small svg{vertical-align:-2px}.manager-grid .row-action{margin-top:9px}.branch-actions{gap:8px;margin-top:auto;display:grid}.branch-actions .secondary-button,.branch-actions .row-action{justify-content:center;width:100%}.branch-multi-select{border:1px solid var(--line);background:#fafafa;border-radius:12px;min-width:0;margin:0;padding:14px}.branch-multi-select legend{color:#45454a;padding:0 7px;font-size:12px;font-weight:800}.branch-multi-select>p{color:var(--muted);margin:0 0 11px;font-size:11px}.branch-multi-select>div{grid-template-columns:1fr 1fr;gap:8px;max-height:210px;display:grid;overflow-y:auto}.form-grid .branch-multi-select label{cursor:pointer;background:#fff;border:1px solid #e5e5e7;border-radius:10px;align-items:center;gap:9px;padding:10px 11px;display:flex}.form-grid .branch-multi-select label:has(input:checked){color:#8d0c18;background:#fff5f6;border-color:#e7a6ad}.branch-multi-select input{width:17px;height:17px;accent-color:var(--red);margin:0}.empty-inline{color:var(--muted);text-align:center;margin:0;padding:28px}.document-button{white-space:nowrap}.leave-document-print{color:#202126;background:#fff;padding:36px 28px 26px;position:relative;overflow:hidden}.document-accent{background:linear-gradient(90deg,#cf1020 0 32%,#202126 32% 100%);height:7px;position:absolute;inset:0 0 auto}.document-brand{border-bottom:1px solid #dedee1;align-items:center;gap:24px;padding:10px 0 22px;display:flex}.document-brand img{object-fit:contain;background:0 0;border-radius:0;width:190px;height:68px;padding:0}.document-brand>div{text-align:right;max-width:390px;margin-left:auto}.document-brand b,.document-brand small{display:block}.document-brand b{color:#202126;font-size:15px}.document-brand small{color:#707078;margin-top:4px;font-size:10px;line-height:1.35}.document-title{padding:28px 0 24px;position:relative}.document-title h1{color:#17181c;letter-spacing:-.8px;max-width:620px;margin:10px 0 0;font-size:33px;line-height:1.12}.document-type{color:#c70e1d;letter-spacing:1.8px;justify-content:space-between;align-items:center;gap:16px;font-size:9px;font-weight:900;display:flex}.document-type b{color:#55555c;letter-spacing:.2px;background:#fafafa;border:1px solid #e1e1e4;border-radius:6px;padding:6px 9px;font-size:8px}.document-details,.document-approval{margin-top:3px}.document-approval{margin-top:24px}.document-section-heading{align-items:center;gap:11px;margin-bottom:11px;display:flex}.document-section-heading>span{color:#fff;background:#202126;border-radius:8px;place-items:center;width:31px;height:31px;font-size:10px;font-weight:900;display:grid}.document-section-heading>b{font-size:14px}.document-grid{background:0 0;grid-template-columns:1fr 1fr;gap:8px;margin:0;padding:0;display:grid}.document-grid div{background:#fafafa;border:1px solid #e2e2e5;border-radius:9px;min-height:51px;padding:13px 15px}.document-grid dt{color:#77777f;letter-spacing:.5px;text-transform:uppercase;font-size:9px;font-weight:900}.document-grid dd{color:#26272c;margin:6px 0 0;font-size:13px;font-weight:750;line-height:1.35}.document-grid .document-wide{grid-column:span 2}.document-grid .document-reason{background:#fff;min-height:54px}.document-grid .document-duration{background:#fff;padding:14px 16px}.document-duration>dd{grid-template-columns:1fr auto 1fr auto;align-items:center;gap:14px;display:grid}.document-duration dd>span{gap:4px;display:grid}.document-duration dd small{color:#8a8a91;letter-spacing:.6px;text-transform:uppercase;font-size:8px;font-style:normal;font-weight:900}.document-duration dd b{font-size:12px}.document-duration dd i{color:#c70e1d;font-size:18px;font-style:normal}.document-duration dd strong{color:#97101a;white-space:nowrap;background:#fff0f1;border-radius:7px;padding:8px 10px;font-size:11px}.document-signatures{grid-template-columns:1fr 1fr;gap:14px;margin-top:0;display:grid}.document-signatures section{text-align:left;background:#fff;border:1px solid #dedee2;border-radius:10px;min-height:155px;padding:15px 17px;position:relative}.document-signatures section:before{content:"";background:#cf1020;border-radius:10px 0 0 10px;width:3px;position:absolute;inset:0 auto 0 0}.document-signatures section>b{color:#202126;border:0;padding:0;font-size:13px;display:block}.document-signatures section>p{margin:6px 0 0;font-size:11px;font-weight:700}.document-signatures img{object-fit:contain;max-width:180px;max-height:86px;margin:7px auto 0;display:block}.signature-space{border-bottom:1px solid #a9a9af;height:74px;margin:9px 10px 0}.document-footer{border-top:1px solid #e3e3e5;justify-content:flex-end;margin-top:18px;padding-top:11px;display:flex}.document-footer b{color:#77777d;font-size:9px}.document-actions{border-top:1px solid var(--line);background:#fafafa;justify-content:flex-end;align-items:flex-end;gap:12px;padding:18px 25px;display:flex}.document-actions form{align-items:flex-end;gap:10px;margin-right:auto;display:flex}.document-actions label{gap:5px;min-width:260px;font-size:11px;font-weight:700;display:grid}.employee-signature-upload{border-bottom:1px solid var(--line);background:#fafafa;grid-template-columns:150px minmax(0,1fr) auto;align-items:end;gap:12px;padding:16px 22px;display:grid}.employee-signature-upload>label{gap:6px;font-size:11px;font-weight:800;display:grid}.employee-signature-upload>small{color:var(--muted);grid-column:2/-1}.signature-preview{background:#fff;border:1px dashed #ccc;border-radius:10px;grid-row:span 2;place-items:center;min-height:92px;padding:8px;display:grid}.signature-preview img{object-fit:contain;width:132px;height:72px}.signature-preview span{color:var(--muted);text-align:center;justify-items:center;gap:7px;font-size:10px;display:grid}.person-report-panel{margin:18px 0}.person-report-panel .panel-heading select{width:min(330px,100%)}.person-report-body{padding:20px}.person-report-head{justify-content:space-between;align-items:center;gap:15px;display:flex}.person-report-head b,.person-report-head small{display:block}.person-report-head b{font-size:18px}.person-report-head small{color:var(--muted);margin-top:5px}.person-report-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:18px 0;display:grid}.person-report-metrics span{background:#f6f6f7;border-radius:12px;padding:14px}.person-report-metrics small,.person-report-metrics b{display:block}.person-report-metrics small{color:var(--muted)}.person-report-metrics b{margin-top:7px}.person-report-tables{grid-template-columns:1.15fr 1fr;gap:14px;display:grid}.person-report-tables section{border:1px solid var(--line);border-radius:12px;overflow:hidden}.person-report-tables h3{border-bottom:1px solid var(--line);margin:0;padding:14px;font-size:13px}.stamp-preview{background:#fafafa;border:1px dashed #d4d4d8;border-radius:13px;place-items:center;min-height:150px;margin-bottom:12px;padding:15px;display:grid}.stamp-preview img{object-fit:contain;max-width:230px;max-height:110px}.stamp-preview b{margin-top:9px;font-size:12px}.stamp-upload{width:100%}.stamp-upload input{display:none}@media (width<=900px){.manager-grid{grid-template-columns:1fr 1fr}.person-report-tables{grid-template-columns:1fr}}@media (width<=560px){.manager-grid{grid-template-columns:1fr;padding:14px}.branch-multi-select>div{grid-template-columns:1fr}.manager-panel .panel-heading,.person-report-panel .panel-heading,.person-report-head{flex-direction:column;align-items:stretch}.person-report-metrics{grid-template-columns:1fr 1fr}.person-report-head .primary-button{width:100%}.document-grid,.document-signatures{grid-template-columns:1fr}.document-grid .document-wide{grid-column:span 1}.leave-document-print{padding:20px 15px}.document-type{align-items:flex-start}.document-duration>dd{grid-template-columns:1fr}.document-duration dd i{display:none}.document-brand{flex-direction:column;align-items:flex-start}.document-brand>div{text-align:left;margin-left:0}.document-actions,.document-actions form{flex-direction:column;align-items:stretch}.document-actions form,.document-actions label{width:100%;min-width:0}.employee-signature-upload{grid-template-columns:1fr;align-items:stretch}.employee-signature-upload>small{grid-column:auto}.signature-preview{grid-row:auto}.camera-frame{aspect-ratio:3/4}.employee-reminder{flex-wrap:wrap;align-items:flex-start}.employee-reminder .secondary-button{width:100%}.late-employee-list{grid-template-columns:1fr;padding:0 14px 14px}}@page{size:A4 portrait;margin:10mm}@media print{body:has(.leave-document-print){background:#fff!important;margin:0!important;padding:0!important;overflow:visible!important}body:has(.leave-document-print) *{visibility:hidden!important}body:has(.leave-document-print) main{width:auto!important;min-height:0!important;margin:0!important;padding:0!important;display:block!important}body:has(.leave-document-print) main>:not(.modal-backdrop){display:none!important}body:has(.leave-document-print) .modal-backdrop{-webkit-backdrop-filter:none!important;backdrop-filter:none!important;background:0 0!important;width:auto!important;min-height:0!important;margin:0!important;padding:0!important;display:block!important;position:static!important;inset:auto!important}body:has(.leave-document-print) .modal-card{width:auto!important;max-height:none!important;box-shadow:none!important;border:0!important;border-radius:0!important;margin:0!important;padding:0!important;position:static!important;overflow:visible!important}body:has(.leave-document-print) .modal-card>header{display:none!important}body:has(.leave-document-print) .document-actions{display:none!important}:is(body:has(.leave-document-print) .leave-document-print,body:has(.leave-document-print) .leave-document-print *){visibility:visible!important}body:has(.leave-document-print) .leave-document-print{box-sizing:border-box;break-inside:avoid-page;page-break-inside:avoid;width:100%!important;max-width:none!important;min-height:0!important;margin:0!important;padding:0!important;position:static!important;inset:auto!important}:is(body:has(.leave-document-print) .document-brand,body:has(.leave-document-print) .document-title,body:has(.leave-document-print) .document-details,body:has(.leave-document-print) .document-approval,body:has(.leave-document-print) .document-footer,body:has(.leave-document-print) .document-grid,body:has(.leave-document-print) .document-signatures){break-inside:avoid-page;page-break-inside:avoid}}
