/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:host,:root{--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,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;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,::backdrop,:after,:before{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}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{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:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,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,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-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,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden}.absolute,.sr-only{position:absolute}.fixed{position:fixed}.static{position:static}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.grow{flex-grow:1}.resize{resize:both}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--ui-bg:#f8f7f5;--ui-surface:#fff;--ui-surface-soft:#fffaf7;--ui-text:#1f2937;--ui-text-muted:#65615d;--ui-brand:#913b2c;--ui-brand-hover:#7c3024;--ui-brand-soft:#f6e7e2;--ui-border:#e5e1dc;--ui-danger:#b4233c;--ui-success:#267443;--ui-focus:0 0 0 3px #913b2c2e;--ui-shadow-sm:0 6px 18px #5835270e;--ui-shadow-md:0 16px 38px #58352716;--ui-radius-sm:8px;--ui-radius-md:12px;--ui-radius-lg:16px;--ui-control-height:42px;--ui-icon-control:38px;--font-body:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;--ink:var(--ui-text);--muted:var(--ui-text-muted);--green:var(--ui-brand);--green-dark:var(--ui-brand-hover);--mint:var(--ui-brand-soft);--cream:var(--ui-bg);--line:var(--ui-border);--white:var(--ui-surface);--font-display:var(--font-body);--brand:var(--ui-brand);--surface-soft:var(--ui-surface-soft)}*{box-sizing:border-box}body,html{background:var(--cream)}body{color:var(--ink);font-family:var(--font-body),sans-serif;-webkit-font-smoothing:antialiased;margin:0}a,button,input,select,textarea{touch-action:manipulation}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.route-loading{background:var(--ui-bg);min-height:100dvh;color:var(--ui-text);opacity:1;place-items:center;padding:24px;display:grid}.route-loading-within-app{background:linear-gradient(145deg,var(--ui-bg),var(--ui-surface-soft));min-height:calc(100dvh - 62px)}.route-loading-overlay{z-index:90;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#f8f7f5e0;min-height:0;animation-delay:80ms;position:fixed;inset:64px 0 0 264px}.route-loading-overlay .route-loading-card{border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);width:min(360px,100% - 32px);box-shadow:var(--ui-shadow-md);background:#fffffff5;padding:28px}.route-loading-overlay .route-loading-card .brand-loader{width:80px;height:80px}.route-loading-card{text-align:center;justify-items:center;min-width:min(360px,100%);padding:32px;display:grid}.brand-loader-frame{flex:none;display:inline-flex}.brand-loader{object-fit:contain;display:block}.route-loading-card .brand-loader{width:96px;height:96px;margin-bottom:14px}.route-loading-card strong{letter-spacing:-.01em;font-size:15px}.route-loading-copy{color:var(--ui-text-muted);margin-top:6px;font-size:12px}@keyframes loading-reveal{to{opacity:1}}@media (max-width:760px){.route-loading-overlay .route-loading-card{padding:24px}.route-loading-overlay .route-loading-card .brand-loader{width:72px;height:72px}}button,input{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible{box-shadow:var(--ui-focus);outline:2px solid #0000}.logo-mark{border-radius:var(--ui-radius-sm);background:var(--ui-surface);width:36px;height:36px;box-shadow:none;flex:none;place-items:center;display:inline-grid;overflow:hidden}.logo-mark img{width:34px;height:32px}.full-logo,.logo-mark img{object-fit:contain;display:block}.full-logo{width:176px;height:auto}.brand,.mobile-login-brand,.story-brand{color:inherit;font:750 16px var(--font-display);letter-spacing:-.02em;align-items:center;gap:11px;text-decoration:none;display:flex}.eyebrow{color:var(--green);letter-spacing:.15em;margin:0 0 12px;font-size:12px;font-weight:800}.login-page{background:#fff;grid-template-columns:minmax(360px,44%) 1fr;min-height:100dvh;display:grid}.login-story{background:linear-gradient(150deg,var(--ui-brand-soft) 0,var(--ui-bg) 58%,var(--ui-surface-soft) 100%);flex-direction:column;min-height:100dvh;padding:42px 8vw 48px 4vw;display:flex;position:relative;overflow:hidden}.login-story:after{content:"";border:1px solid #913b2c1f;border-radius:50%;width:440px;height:440px;position:absolute;bottom:-160px;right:-220px;box-shadow:0 0 0 70px #fff3,0 0 0 140px #fff2}.story-copy{z-index:1;max-width:480px;margin:auto 0;position:relative}.story-copy h1{font:750 clamp(42px,5vw,70px)/1.04 var(--font-display);letter-spacing:-.055em;margin:0}.story-copy>p:last-child{color:#52625a;max-width:390px;margin:24px 0 0;font-size:17px;line-height:1.7}.trust-note{color:var(--green-dark);z-index:1;align-items:center;gap:12px;display:flex;position:relative}.trust-note div{flex-direction:column;gap:2px;display:flex}.trust-note strong{font-size:13px}.trust-note span{color:var(--muted);font-size:12px}.login-panel{flex-direction:column;justify-content:center;align-items:center;padding:42px 8vw;display:flex}.login-card{width:100%;max-width:440px}.mobile-login-brand{display:none}.login-card h2{font:750 34px/1.15 var(--font-display);letter-spacing:-.04em;margin:0}.login-intro{color:var(--muted);margin:12px 0 30px;line-height:1.6}.login-actions{display:grid}.google-button,.secondary-button{cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:10px;min-height:50px;font-weight:700;transition:all .18s;display:flex}.google-button{border:1px solid var(--green);background:var(--green);color:#fff;justify-content:space-between;padding:0 17px;box-shadow:0 7px 20px #1f6a4528}.google-button:hover{background:var(--green-dark);transform:translateY(-1px)}button:disabled{cursor:wait;opacity:.7}.domain-note{text-align:center;color:var(--muted);margin:9px 0 0;font-size:12px}.divider{color:#89938d;align-items:center;gap:12px;margin:24px 0;font-size:12px;display:flex}.divider:after,.divider:before{content:"";background:var(--line);flex:1;height:1px}.password-form{gap:8px;display:grid}.password-form label{margin-top:5px;font-size:12px;font-weight:750}.password-form input{height:46px;color:var(--ink);background:#fbfcfb;border:1px solid #cdd6cf;border-radius:9px;padding:0 13px}.password-form input:focus{border-color:var(--green);background:#fff}.password-field{position:relative}.password-field input{width:100%;padding-right:48px}.password-field button{width:36px;height:36px;color:var(--muted);cursor:pointer;background:0 0;border:0;place-items:center;display:grid;position:absolute;top:5px;right:5px}.secondary-button{color:var(--green-dark);background:#fff;border:1px solid #bcc9c0;margin-top:10px}.secondary-button:hover{border-color:var(--green);background:var(--mint)}.access-note,.support-copy{color:#7a867f;text-align:center;font-size:12px;line-height:1.55}.access-note{margin:18px 20px 0}.support-copy{margin:30px 0 0}.form-error{color:#8e2f2f;background:#fff0f0;border-radius:8px;margin:2px 0;padding:8px 10px;font-size:12px;line-height:1.45}.spin{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.app-flash{z-index:200;color:#166534;background:#f2faf5;border:1px solid #cce4d3;border-radius:9px;grid-template-columns:20px minmax(0,1fr) 28px;align-items:start;gap:10px;width:min(420px,100vw - 32px);padding:13px 12px 13px 14px;font-size:12px;font-weight:700;line-height:1.45;display:grid;position:fixed;top:76px;right:24px;box-shadow:0 16px 42px #1c19172e}.app-flash-error{color:#a52a20;background:#fff5f3;border-color:#f1c8c4}.app-flash-info{color:#6f5146;background:#fffaf7;border-color:#d8d2cd}.app-flash>svg{width:18px;height:18px}.app-flash button{width:28px;height:28px;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;margin-top:-5px;display:grid}.app-flash button:hover{background:#0000000d}.app-flash button svg{width:15px}.inline-message{color:#a52a20;align-items:flex-start;gap:7px;width:fit-content;max-width:100%;margin:6px 0;padding:0;font-size:12px;line-height:1.45;display:flex}.inline-message svg{flex:none;width:15px;height:15px;margin-top:1px}.inline-message-success{color:#166534}.inline-message-info{color:var(--ui-text-muted)}@media (max-width:700px){.app-flash{top:70px;right:16px}}.page-wrap{width:min(980px,100% - 80px);margin:0 auto;padding:72px 0 80px}.page-heading{margin-bottom:38px}.page-heading h1{font:750 clamp(30px,4vw,45px)/1.12 var(--font-display);letter-spacing:-.045em;margin:0}.page-heading>p:last-child{color:var(--muted);margin:12px 0 0}.context-card,.profile-card{border:1px solid var(--line);background:#fff;border-radius:16px;box-shadow:0 12px 35px #213d2a09}.context-card{grid-template-columns:1.2fr 1fr;gap:30px;padding:28px;display:grid}.context-card>div:first-child{align-items:center;gap:16px;display:flex}.card-icon{background:var(--mint);width:46px;height:46px;color:var(--green);border-radius:12px;flex:none;place-items:center;display:grid}.context-card p{color:var(--muted);margin:0 0 5px;font-size:12px}.context-card h2{font:700 20px var(--font-display);margin:0}.context-card dl{grid-template-columns:1fr 1fr;gap:12px;margin:0;display:grid}.context-card dl div{border-left:1px solid var(--line);padding:10px 14px}dt{color:var(--muted);align-items:center;gap:7px;font-size:12px;display:flex}dd{margin:6px 0 0;font-size:13px;font-weight:700}.simple-section{margin-top:44px}.simple-section>div h2{font:700 24px var(--font-display);margin:0 0 18px}.action-card{border:1px solid var(--line);max-width:470px;color:inherit;background:#fff;border-radius:14px;grid-template-columns:46px 1fr 22px;align-items:center;gap:14px;padding:18px;text-decoration:none;display:grid}.action-card:hover{border-color:#aabeb0;box-shadow:0 12px 30px #213d2a0d}.action-card div{flex-direction:column;gap:4px;display:flex}.action-card strong{font-size:14px}.action-card div span{color:var(--muted);font-size:12px}.profile-card{overflow:hidden}.profile-hero{border-bottom:1px solid var(--line);background:linear-gradient(100deg,#fff,#f4f8f5);align-items:center;gap:15px;padding:28px;display:flex}.profile-avatar{background:var(--green);color:#fff;width:54px;height:54px;font:750 21px var(--font-display);border-radius:50%;place-items:center;display:grid}.profile-hero div{flex:1}.profile-hero h2{font:700 20px var(--font-display);margin:0}.profile-hero p{color:var(--muted);margin:5px 0 0;font-size:12px}.read-only{letter-spacing:.08em;text-transform:uppercase;color:var(--green);background:var(--mint);border-radius:99px;padding:6px 9px;font-size:12px;font-weight:800}.profile-grid{grid-template-columns:1fr 1fr;margin:0;padding:12px 28px 28px;display:grid}.profile-grid>div{border-bottom:1px solid #edf0ed;padding:20px 0}.profile-grid>div:nth-child(odd){padding-right:30px}.profile-grid>div:nth-child(2n){border-left:1px solid #edf0ed;padding-left:30px}.status-page{background:linear-gradient(145deg,#edf5ef,#f7f6f1);place-items:center;min-height:100dvh;padding:24px;display:grid}.status-card{text-align:center;border:1px solid var(--line);background:#fff;border-radius:18px;width:min(470px,100%);padding:38px;box-shadow:0 20px 60px #173d2612}.status-card>.logo-mark{margin-bottom:30px}.status-icon{background:var(--mint);width:54px;height:54px;color:var(--green);border-radius:50%;place-items:center;margin:0 auto 20px;display:grid}.status-card h1{font:750 27px var(--font-display);letter-spacing:-.035em;margin:0}.status-card>p:not(.eyebrow){color:var(--muted);font-size:14px;line-height:1.65}.primary-link{background:var(--green);color:#fff;border-radius:9px;margin-top:15px;padding:12px 18px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}@media (max-width:760px){.login-page{display:block}.login-story{display:none}.login-panel{min-height:100dvh;padding:28px 22px}.mobile-login-brand{margin-bottom:56px;display:flex}.login-card h2{font-size:30px}.page-wrap{width:calc(100% - 36px);padding:38px 0 60px}.page-heading{margin-bottom:26px}.context-card{padding:20px}.context-card,.context-card dl{grid-template-columns:1fr}.context-card dl div{border-left:0;border-top:1px solid var(--line);padding:14px 0 4px}.profile-grid{grid-template-columns:1fr;padding:8px 20px 22px}.profile-grid>div:nth-child(n){border-left:0;padding:18px 0}.profile-hero{flex-wrap:wrap;padding:22px}.read-only{margin-left:69px}.status-card{padding:30px 22px}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition:none!important;animation-duration:.01ms!important}.route-loading{opacity:1}}.attendance-workspace{max-width:1180px}.review-heading{justify-content:space-between;gap:24px;display:flex}.review-date,.review-toolbar button{border:1px solid var(--line);color:var(--muted);background:#fff;border-radius:8px;align-items:center;gap:8px;padding:10px 14px;font-weight:700;display:flex}.review-metrics{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px;display:grid}.review-metrics article{border:1px solid var(--line);background:#fff;border-radius:10px;padding:18px}.review-metrics small,.review-metrics span{color:var(--muted);font-size:12px;display:block}.review-metrics strong{margin:8px 0;font-size:28px;display:block}.review-toolbar{gap:10px;margin-bottom:16px;display:flex}.review-toolbar label{border:1px solid var(--line);background:#fff;border-radius:8px;flex:1;align-items:center;gap:8px;padding:0 12px;display:flex}.review-toolbar input{border:0;outline:0;width:100%;padding:12px 0}.review-empty{text-align:center;border:1px dashed var(--line);background:#fff;border-radius:10px;justify-items:center;padding:54px 24px;display:grid}.review-empty>span{color:#277b4b;background:#edf7f0;border-radius:50%;place-items:center;width:50px;height:50px;display:grid}.review-empty h2{margin:14px 0 6px}.review-empty p{max-width:520px;color:var(--muted);margin:0}.evidence-preview{border:1px solid var(--line);background:#fff;border-radius:10px;margin-top:18px;padding:20px}.evidence-preview h2{margin:4px 0 18px}.evidence-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.evidence-grid span{background:var(--surface-soft);color:var(--muted);border-radius:8px;align-items:center;gap:10px;padding:16px;display:flex}.review-actions{justify-content:flex-end;gap:10px;margin-top:18px;display:flex}.review-actions button{border:1px solid var(--line);border-radius:8px;padding:11px 18px;font-weight:700}.review-actions button:last-child{background:var(--brand);color:#fff}.history-summary{grid-template-columns:repeat(3,1fr);gap:14px;margin:24px 0;display:grid}.history-summary article{border:1px solid var(--line);background:#fff;border-radius:10px;align-items:center;gap:12px;padding:18px;display:flex}.history-summary small,.history-summary strong{display:block}.history-summary small{color:var(--muted);margin-bottom:5px}.history-panel{border:1px solid var(--line);background:#fff;border-radius:10px;overflow:hidden}.history-panel>header{border-bottom:1px solid var(--line);justify-content:space-between;padding:20px;display:flex}.history-panel h2,.history-panel p{margin:0}.history-panel p{color:var(--muted)}.history-panel button{border:1px solid var(--line);background:#fff;border-radius:8px;align-items:center;gap:8px;padding:9px 12px;display:flex}@media (max-width:800px){.review-metrics{grid-template-columns:1fr 1fr}.evidence-grid,.history-summary{grid-template-columns:1fr}.review-toolbar{flex-wrap:wrap}.review-toolbar label{flex-basis:100%}.review-heading{display:block}.review-date{margin-top:14px;display:inline-flex}}.attendance-view-page{max-width:1320px}.attendance-view-heading{justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.attendance-view-switch{border:1px solid var(--line);background:#f7f5f3;border-radius:8px;padding:4px;display:flex}.attendance-view-switch a{color:var(--muted);border-radius:5px;align-items:center;gap:7px;padding:9px 13px;font-size:13px;font-weight:750;display:flex}.attendance-view-switch a.active{color:var(--brand);background:#fff}.attendance-view-switch svg,.attendance-view-toolbar svg{width:16px;height:16px}.attendance-view-toolbar{gap:8px;margin:20px 0;display:flex}.attendance-view-toolbar>label{border:1px solid var(--line);background:#fff;border-radius:6px;flex:1;align-items:center;gap:7px;min-width:220px;padding:0 11px;display:flex}.attendance-view-toolbar input{border:0;outline:0;width:100%;padding:10px 0}.attendance-view-toolbar button,.month-control{border:1px solid var(--line);min-height:38px;color:var(--muted);background:#fff;border-radius:6px;align-items:center;gap:7px;padding:0 11px;font-weight:700;display:flex}.month-control{padding:0}.month-control button{border:0}.attendance-overview-strip{border:1px solid var(--line);background:#fff;border-radius:7px;grid-template-columns:repeat(4,1fr);margin-bottom:14px;display:grid}.attendance-overview-strip div{border-left:1px solid var(--line);padding:13px 16px}.attendance-overview-strip div:first-child{border-left:0}.attendance-overview-strip span,.audit-counter-row span{color:var(--muted);font-size:12px;display:block}.attendance-matrix-shell{border:1px solid var(--line);background:#fff;border-radius:7px;overflow:hidden}.attendance-matrix-scroll{overflow:auto}.attendance-matrix-shell table{border-collapse:separate;border-spacing:0;width:100%;min-width:1550px;font-size:12px}.attendance-matrix-shell td,.attendance-matrix-shell th{border-right:1px solid var(--line);border-bottom:1px solid var(--line);text-align:center;height:44px;padding:0 8px}.attendance-matrix-shell th{color:var(--muted);background:#faf9f8;font-size:12px}.sticky-select{width:42px;left:0}.sticky-employee,.sticky-select{z-index:2;position:sticky;background:#fff!important}.sticky-employee{min-width:230px;left:42px;text-align:left!important}.matrix-empty-row .sticky-employee{align-items:center;gap:9px;display:flex}.matrix-empty-row small{color:var(--muted);display:block}.attendance-matrix-shell footer{color:var(--muted);justify-content:space-between;padding:11px 14px;font-size:12px;display:flex}.audit-workspace-layout{grid-template-columns:290px minmax(0,1fr);gap:14px;min-height:590px;display:grid}.audit-detail-panel,.audit-employee-panel{border:1px solid var(--line);background:#fff;border-radius:7px}.audit-detail-panel>header,.audit-employee-panel header{border-bottom:1px solid var(--line);padding:14px}.audit-employee-panel header span{color:var(--muted);font-size:12px;display:block}.audit-calendar-placeholder,.audit-panel-empty{text-align:center;color:var(--muted);justify-items:center;padding:55px 20px;display:grid}.audit-counter-row{border-bottom:1px solid var(--line);grid-template-columns:repeat(8,minmax(0,1fr));display:grid}.audit-counter-row div{border-left:1px solid var(--line);padding:12px}.audit-counter-row div:first-child{border-left:0}.audit-counter-row strong{font-size:18px}@media (max-width:850px){.attendance-view-heading{display:block}.attendance-view-switch{width:max-content;margin-top:18px}.attendance-view-toolbar{flex-wrap:wrap}.attendance-view-toolbar>label{flex-basis:100%;order:5}.attendance-overview-strip{grid-template-columns:1fr 1fr}.audit-workspace-layout{grid-template-columns:1fr}.audit-counter-row{grid-template-columns:repeat(3,1fr)}}.attendance-page{max-width:760px}.attendance-card{background:var(--ui-surface);border:1px solid var(--ui-border);border-radius:var(--ui-radius-md);overflow:hidden}.attendance-status{border-bottom:1px solid var(--ui-border);background:var(--ui-surface-soft);align-items:center;gap:14px;padding:20px;display:flex}.attendance-status>div>span{color:var(--ui-text-muted);font-size:12px}.attendance-status h2{margin:3px 0 0;font-size:21px}.status-symbol{background:var(--ui-brand-soft);width:44px;height:44px;color:var(--ui-brand);border-radius:50%;place-items:center;display:grid}.status-symbol.done{color:var(--ui-success);background:#e8f4ec}.attendance-details{grid-template-columns:1fr 1fr;padding:4px 20px;display:grid}.attendance-details>div{border-bottom:1px solid var(--ui-border);align-items:flex-start;gap:10px;padding:16px 0;display:flex}.attendance-details>div:nth-child(odd){padding-right:18px}.attendance-details>div:nth-child(2n){border-left:1px solid var(--ui-border);padding-left:18px}.attendance-details svg{width:18px;color:var(--ui-brand);flex:none}.attendance-details span{flex-direction:column;gap:4px;display:flex}.attendance-details small{color:var(--ui-text-muted)}.attendance-details strong{font-size:13px}.location-note{background:var(--ui-brand-soft);border-radius:var(--ui-radius-sm);color:var(--ui-brand);gap:10px;margin:18px 20px;padding:12px;display:flex}.location-note svg{flex:none;width:19px}.location-note p{color:var(--ui-text);margin:0;font-size:12px;line-height:1.55}.attendance-error{color:var(--ui-danger);border-radius:var(--ui-radius-sm);background:#fff0f1;margin:0 20px 16px;padding:10px 12px;font-size:13px}.attendance-action{border-radius:var(--ui-radius-sm);background:var(--ui-brand);color:#fff;cursor:pointer;border:0;width:calc(100% - 40px);min-height:46px;margin:0 20px 20px;font-weight:750}.attendance-action:hover{background:var(--ui-brand-hover)}.attendance-action:disabled{cursor:wait}.attendance-loading{padding:28px}@media (max-width:600px){.attendance-details{grid-template-columns:1fr}.attendance-details>div:nth-child(n){border-left:0;padding:15px 0}.attendance-page .page-heading h1{font-size:31px}}.attendance-modal-backdrop{z-index:80;background:#1c19178c;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.attendance-modal{border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);background:#fff;width:min(420px,100%);max-height:calc(100dvh - 36px);overflow:auto;box-shadow:0 24px 70px #1c19173d}.attendance-modal>header{z-index:2;border-bottom:1px solid var(--ui-border);background:#fff;justify-content:space-between;align-items:center;padding:16px 18px;display:flex;position:sticky;top:0}.attendance-modal>header p{color:var(--ui-brand);letter-spacing:.12em;text-transform:uppercase;margin:0 0 3px;font-size:12px;font-weight:800}.attendance-modal>header h2{margin:0;font-size:20px}.attendance-modal>header button{border-radius:var(--ui-radius-sm);color:#57534e;cursor:pointer;background:#f5f5f4;border:0;place-items:center;width:34px;height:34px;display:grid}.attendance-capture{aspect-ratio:4/3;border-radius:var(--ui-radius-md);background:#292524;margin:16px 18px 12px;position:relative;overflow:hidden}.attendance-capture video{object-fit:cover;width:100%;height:100%;display:block;transform:scaleX(-1)}.attendance-capture>span{color:#fff;background:#000a;border-radius:99px;align-items:center;gap:5px;padding:6px 8px;font-size:12px;font-weight:700;display:flex;position:absolute;bottom:10px;left:10px}.attendance-location{border-radius:var(--ui-radius-md);color:var(--ui-success);background:#f2faf5;border:1px solid #d8eadf;align-items:center;gap:10px;margin:0 18px 12px;padding:11px 12px;display:flex}.attendance-location.outside{color:#9a4b1f;background:#fff8f1;border-color:#f0d7c4}.attendance-location>div{flex-direction:column;gap:2px;display:flex}.attendance-location strong{font-size:12px}.attendance-location span{color:#6b7280;font-size:12px}.attendance-outside-fields{gap:10px;margin:0 18px 12px;display:grid}.attendance-outside-fields label{color:#44403c;gap:5px;font-size:12px;font-weight:700;display:grid}.attendance-outside-fields select,.attendance-outside-fields textarea{border:1px solid var(--ui-border);border-radius:var(--ui-radius-sm);width:100%;color:var(--ui-text);background:#fff;padding:9px 10px}.attendance-outside-fields textarea{resize:vertical;min-height:66px}.attendance-modal .attendance-action{justify-content:center;align-items:center;gap:8px;display:flex}.attendance-privacy{text-align:center;color:var(--ui-text-muted);margin:0 20px 18px;font-size:12px;line-height:1.5}.attendance-complete{text-align:center;flex-direction:column;align-items:center;padding:40px 24px;display:flex}.attendance-complete svg{width:48px;height:48px;color:var(--ui-success)}.attendance-complete strong{margin-top:12px}.attendance-complete span{color:var(--ui-text-muted);margin-top:6px;font-size:12px}@media (max-width:760px){.attendance-modal-backdrop{align-items:end;padding:0}.attendance-modal{border-bottom:0;border-radius:16px 16px 0 0;width:100%;max-height:92dvh}.attendance-capture{margin-top:12px}.attendance-modal>header{padding-top:14px}}.action-card,.google-button,.password-form input,.primary-link,.secondary-button{border-radius:var(--ui-radius-sm)}.google-button{min-height:var(--ui-control-height);box-shadow:none}.google-button:hover{transform:none}.password-form input{height:var(--ui-control-height);border-color:var(--ui-border);background:var(--ui-surface)}.form-error{border-radius:var(--ui-radius-md)}.action-card,.context-card,.profile-card,.status-card{border-radius:var(--ui-radius-sm);box-shadow:none}.profile-hero{background:var(--ui-surface);border-top:3px solid var(--ui-brand)}.attendance-view-heading-actions{align-items:center;gap:8px;display:flex}.attendance-close-month-button{background:var(--ui-brand);color:#fff;border:0;border-radius:7px;align-items:center;gap:7px;min-height:38px;padding:0 13px;font-weight:800;display:flex}.attendance-close-month-button svg{width:16px}.month-close-dialog{border:1px solid var(--ui-border);background:#fff;border-radius:12px;width:min(680px,100%);max-height:calc(100dvh - 36px);overflow:auto;box-shadow:0 26px 80px #1c191740}.month-close-dialog>header{border-bottom:1px solid var(--ui-border);justify-content:space-between;align-items:center;padding:17px 19px;display:flex}.month-close-dialog>header h2{margin:3px 0;font-size:22px}.month-close-dialog>header span{color:var(--ui-text-muted);font-size:12px}.month-close-dialog>header button{border:0;border-radius:7px;place-items:center;width:34px;height:34px;display:grid}.month-close-company{border-bottom:1px solid var(--ui-border);grid-template-columns:90px 1fr;gap:3px 12px;padding:14px 19px;display:grid}.month-close-company>span{text-transform:uppercase;grid-row:1/3;font-size:12px}.month-close-company small,.month-close-company>span{color:var(--ui-text-muted)}.month-close-summary{grid-template-columns:repeat(3,1fr);gap:8px;padding:14px 19px;display:grid}.month-close-summary article{border:1px solid var(--ui-border);border-radius:7px;align-items:center;gap:9px;padding:11px;display:flex}.month-close-summary svg{color:#a15c00;width:18px}.month-close-summary span,.month-close-summary strong{display:block}.month-close-issues{padding:0 19px 14px}.month-close-issues h3{margin:3px 0 8px;font-size:14px}.month-close-issues article{border-radius:7px;gap:10px;margin-top:7px;padding:11px;display:flex}.month-close-issues article svg{flex:none;width:17px}.month-close-issues article span,.month-close-issues article strong{display:block}.month-close-issues article span{margin-top:2px;font-size:12px}.month-close-issues .critical{color:#b42318;background:#fff1f2}.month-close-issues .warning{color:#92400e;background:#fffbeb}.month-close-issues .clear{color:#166534;background:#f0fdf4}.month-close-ack{background:#fffbeb;border:1px solid #f4d38a;border-radius:7px;align-items:flex-start;gap:9px;margin:0 19px 14px;padding:11px;font-size:12px;display:flex}.month-close-dialog>footer{border-top:1px solid var(--ui-border);justify-content:flex-end;gap:8px;padding:13px 19px;display:flex}.month-close-dialog>footer button{border:1px solid var(--ui-border);background:#fff;border-radius:6px;min-height:36px;padding:0 13px;font-weight:750}.month-close-dialog>footer button:last-child{border-color:var(--ui-brand);background:var(--ui-brand);color:#fff}.month-close-dialog>footer button:disabled{opacity:.5}.month-close-empty{text-align:center;justify-items:center;padding:40px;display:grid}.month-close-empty p{color:var(--ui-text-muted)}@media (max-width:850px){.attendance-view-heading-actions{flex-wrap:wrap;align-items:flex-start;margin-top:12px}.month-close-summary{grid-template-columns:1fr}}.employee-month-close{width:min(820px,100%)}.employee-month-list{padding:0 19px 14px}.employee-month-list>header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.employee-month-list h3,.employee-month-list p{margin:0}.employee-month-list header p{color:var(--ui-text-muted);margin-top:3px;font-size:12px}.employee-month-list article>button,.employee-month-list header button{border:1px solid var(--ui-border);background:#fff;border-radius:6px;align-items:center;gap:5px;min-height:30px;padding:0 9px;font-size:12px;font-weight:750;display:flex}.employee-month-list header svg{width:13px}.employee-month-list>article{border-top:1px solid var(--ui-border);grid-template-columns:minmax(180px,1.4fr) 90px minmax(150px,1fr) 72px;align-items:center;gap:9px;min-height:50px;padding:7px 9px;display:grid}.employee-month-list article div span,.employee-month-list article small{color:var(--ui-text-muted);font-size:12px;display:block}.employee-month-list article>span{border-radius:99px;width:max-content;padding:4px 7px;font-size:12px;font-weight:800}.employee-month-list article>span.finalised{color:#166534;background:#dcfce7}.employee-month-list article>span.open{color:#9a5800;background:#fff7ed}.employee-month-list article>button:disabled{opacity:.45}@media (max-width:650px){.employee-month-list>article{grid-template-columns:1fr auto}.employee-month-list article>small{grid-column:1/2}.employee-month-list article>button{grid-area:2/2}}.employee-leave-review-modal{width:min(920px,100%)}.employee-leave-review-modal>.leave-month-review{border:0;border-radius:0;padding:18px 19px}.employee-leave-review-modal>.leave-month-review>header{padding-bottom:10px}.employee-leave-review-modal>footer{background:#fff;position:sticky;bottom:0}.filter-count{background:var(--ui-brand);color:#fff;border-radius:99px;place-items:center;min-width:18px;height:18px;font-size:12px;display:grid}.attendance-filter-backdrop{z-index:100;background:#1c191766;position:fixed;inset:0}.attendance-filter-drawer{background:#fff;flex-direction:column;width:min(420px,100%);display:flex;position:absolute;inset:0 0 0 auto;box-shadow:-18px 0 50px #1c19172b}.attendance-filter-drawer>header{border-bottom:1px solid var(--ui-border);justify-content:space-between;align-items:center;padding:18px 20px;display:flex}.attendance-filter-drawer>header h2{align-items:center;gap:8px;margin:3px 0 0;display:flex}.attendance-filter-drawer>header h2 svg{width:18px}.attendance-filter-drawer>header button{border:0;border-radius:7px;place-items:center;width:34px;height:34px;display:grid}.attendance-filter-fields{flex:1;padding:18px 20px;overflow:auto}.attendance-filter-fields>label,.attendance-filter-range label{color:var(--ui-text-muted);gap:5px;margin-bottom:14px;font-size:12px;font-weight:750;display:grid}.attendance-filter-fields input,.attendance-filter-fields select{border:1px solid var(--ui-border);width:100%;min-height:40px;color:var(--ui-text);background:#fff;border-radius:7px;padding:0 10px}.attendance-filter-range{grid-template-columns:1fr 1fr;gap:9px;display:grid}.attendance-filter-drawer>footer{border-top:1px solid var(--ui-border);justify-content:flex-end;gap:8px;padding:14px 20px;display:flex}.attendance-filter-drawer>footer button{border:1px solid var(--ui-border);background:#fff;border-radius:7px;min-height:38px;padding:0 14px;font-weight:750}.attendance-filter-drawer>footer button:last-child{border-color:var(--ui-brand);background:var(--ui-brand);color:#fff}.audit-month-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:7px;display:flex}.audit-month-actions button{border:1px solid var(--ui-border);min-height:34px;color:var(--ui-text);white-space:nowrap;cursor:pointer;background:#fff;border-radius:6px;align-items:center;gap:6px;padding:0 11px;font-size:12px;font-weight:800;display:flex}.audit-day-actions button svg,.audit-month-actions button svg{width:14px;height:14px}.audit-month-actions button:hover{border-color:var(--ui-brand);color:var(--ui-brand)}.audit-month-actions button.primary{border-color:var(--ui-brand);background:var(--ui-brand);color:#fff}.audit-month-actions button.primary:hover{background:#8f3022}.audit-month-actions button:focus-visible{outline:2px solid var(--ui-brand);outline-offset:2px}@media (max-width:1000px){.audit-detail-panel>header{align-items:flex-start;gap:10px}.audit-month-actions{max-width:330px}}@media (max-width:700px){.audit-detail-panel>header{display:block}.audit-month-actions{justify-content:flex-start;max-width:none;margin-top:10px}}.audit-employee-panel>header{justify-content:space-between;align-items:center;gap:8px;display:flex}.audit-employee-panel>header button{border:1px solid var(--ui-border);width:30px;height:30px;color:var(--ui-text-muted);background:#fff;border-radius:6px;place-items:center;display:grid}.audit-employee-panel>header button svg{width:15px}.audit-branch-group{border-bottom:1px solid #eee9e6}.audit-branch-group>summary{min-height:34px;color:var(--ui-text-muted);cursor:pointer;background:#faf9f8;justify-content:space-between;align-items:center;padding:0 10px;list-style:none;display:flex}.audit-branch-group>summary::-webkit-details-marker{display:none}.audit-branch-group>summary span{align-items:center;gap:6px;display:flex}.audit-branch-group>summary svg{width:13px;transition:transform .15s}.audit-branch-group[open]>summary svg{transform:rotate(180deg)}.audit-branch-group>summary strong{text-transform:uppercase;letter-spacing:.04em;font-size:12px}.audit-branch-group>summary b{background:#ece8e5;border-radius:99px;place-items:center;min-width:21px;height:19px;font-size:12px;display:grid}.audit-branch-group .audit-employee-list a,.audit-branch-group>a{padding-left:14px}.audit-workspace-layout.employee-bar-collapsed{grid-template-columns:44px minmax(0,1fr)}.employee-bar-collapsed>.audit-employee-panel{display:none}.audit-employee-expand{writing-mode:vertical-rl;border:1px solid var(--ui-border);min-height:150px;color:var(--ui-text-muted);background:#fff;border-radius:7px;justify-content:flex-start;align-items:center;gap:8px;padding:11px 9px;font-size:12px;font-weight:800;display:flex}.audit-employee-expand svg{width:17px;transform:rotate(90deg)}@media (max-width:850px){.audit-workspace-layout.employee-bar-collapsed{grid-template-columns:1fr}.audit-employee-expand{writing-mode:horizontal-tb;min-height:38px}.audit-employee-expand svg{transform:none}}.attendance-audit-results article{border-radius:6px;flex:260px;gap:4px;padding:9px 10px;display:grid}.attendance-audit-results article small,.attendance-audit-results article span{font-size:12px}.attendance-audit-results article small{opacity:.82}.attendance-audit-results .warn{color:#854d0e;background:#fff7d6}.dashboard-wrap{width:min(1180px,100% - 48px);margin:0 auto;padding:34px 0 64px}.dashboard-heading{margin-bottom:24px}.dashboard-date,.section-kicker{color:var(--ui-brand);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:7px;margin:0;font-size:12px;font-weight:800;display:flex}.dashboard-heading h1{font:750 clamp(28px,3vw,38px)/1.12 var(--font-display);letter-spacing:-.04em;margin:9px 0 0}.dashboard-heading>p:last-child{color:var(--ui-text-muted);margin:8px 0 0;font-size:13px}.attendance-summary,.dashboard-section{background:var(--ui-surface);border-radius:var(--ui-radius-md);border:1px solid #e7e5e4}.attendance-summary{grid-template-columns:minmax(190px,1fr) minmax(310px,1.1fr);align-items:center;gap:22px;padding:20px;display:grid}.attendance-title-row{align-items:flex-start;gap:14px;display:flex}.attendance-title-row>div{flex:1}.attendance-title-row h2{margin:8px 0 0;font-size:19px}.status-chip{color:#57534e;white-space:nowrap;background:#f5f5f4;border-radius:99px;align-items:center;gap:6px;padding:5px 8px;font-size:12px;font-weight:700;display:inline-flex}.status-chip>span{background:#a8a29e;border-radius:50%;width:7px;height:7px}.attendance-stats{text-align:center;grid-template-columns:repeat(3,1fr);margin:0;display:grid}.attendance-stats>div+div{border-left:1px solid #e7e5e4}.attendance-stats dt{color:#78716c;letter-spacing:.1em;text-transform:uppercase;font-size:12px;font-weight:800;display:block}.attendance-stats dd{margin:7px 0 0;font-size:14px}.attendance-stats>div:nth-child(2) dd{color:var(--ui-brand)}.outline-action{border:1px solid var(--ui-border);border-radius:var(--ui-radius-sm);color:#78716c;background:#fff;grid-column:1/3;justify-content:center;align-items:center;gap:8px;min-height:40px;font-size:12px;font-weight:700;display:flex}.outline-action:disabled,.quick-links button:disabled{cursor:not-allowed;opacity:1}.dashboard-section{margin-top:20px;padding:18px}.section-heading{justify-content:space-between;align-items:end;gap:16px;margin-bottom:15px;display:flex}.section-heading h2{margin:7px 0 0;font-size:18px}.section-heading>span{color:#78716c;font-size:12px}.overview-grid{border-top:1px solid #e7e5e4;grid-template-columns:repeat(3,1fr);display:grid}.overview-card{padding:18px 14px 4px}.overview-card+.overview-card{border-left:1px solid #e7e5e4}.overview-card p{color:#57534e;margin:0;font-size:12px;font-weight:700}.overview-card strong{margin:10px 0 8px;font-size:24px;display:block}.overview-card span{color:#78716c;font-size:12px}.dashboard-columns{grid-template-columns:1.1fr .9fr;gap:20px;display:grid}.dashboard-columns .dashboard-section{min-width:0}.quick-links{gap:8px;display:grid}.quick-links>a,.quick-links>button{border-radius:var(--ui-radius-sm);width:100%;min-height:62px;color:inherit;text-align:left;background:#fff;border:1px solid #e7e5e4;grid-template-columns:36px 1fr 18px;align-items:center;gap:11px;padding:9px 11px;text-decoration:none;display:grid}.quick-links>a:hover{background:#fafafa;border-color:#d6d3d1}.quick-icon{border-radius:var(--ui-radius-sm);background:var(--ui-brand-soft);width:36px;height:36px;color:var(--ui-brand);place-items:center;display:grid}.quick-icon svg{width:17px}.quick-links small,.quick-links strong{display:block}.quick-links strong{font-size:12px}.quick-links small{color:#78716c;margin-top:3px;font-size:12px}.quick-links>a>svg,.quick-links>button>svg{color:#a8a29e;width:16px}.employment-panel dl{margin:0}.employment-panel dl>div{border-top:1px solid #e7e5e4;padding:11px 0}.employment-panel dt{font-size:12px}.employment-panel dd{margin-top:5px;font-size:12px}@media (max-width:760px){.dashboard-wrap{width:calc(100% - 24px);padding:24px 0 36px}.dashboard-heading{margin-bottom:18px}.dashboard-heading h1{font-size:28px}.dashboard-heading>p:last-child{line-height:1.5}.attendance-summary{padding:17px 15px;display:block}.attendance-title-row{display:block}.status-chip{margin-top:10px}.attendance-stats{margin:22px 0 18px}.outline-action{width:100%}.dashboard-section{margin-top:12px;padding:15px}.section-heading{align-items:flex-start}.overview-grid{grid-template-columns:1fr}.overview-card{padding:14px 5px}.overview-card+.overview-card{border-top:1px solid #e7e5e4;border-left:0}.dashboard-columns{display:block}.quick-links>a,.quick-links>button{min-height:60px}}.attendance-status-legend i.absent,.attendance-status-legend i.absent-sandwich{color:#b25a6e!important;background:#f9e1e6!important}.attendance-status-legend i.half-day,.attendance-status-legend i.late,.attendance-status-legend i.short-leave{color:#a47a10!important;background:#fff1bf!important}.attendance-cell.present span,.audit-calendar-grid>button.present,.status-present{color:#1f2937!important;background:#e4f6e1!important}.attendance-cell.absent span,.attendance-cell.absent-sandwich span,.audit-calendar-grid>button.absent,.audit-calendar-grid>button.absent-sandwich,.status-absent,.status-absent-sandwich{color:#1f2937!important;background:#f9e1e6!important}.attendance-cell.half-day span,.attendance-cell.late span,.attendance-cell.short-leave span,.audit-calendar-grid>button.half-day,.audit-calendar-grid>button.late,.audit-calendar-grid>button.short-leave,.status-half-day,.status-late,.status-short-leave{color:#1f2937!important;background:#fff1bf!important}.attendance-cell.pending-review span,.audit-calendar-grid>button.pending-review,.status-pending-review{color:#a47a10!important;background:#fff!important}.attendance-cell.pending-review span{font-size:18px}.attendance-status-legend i.pending-review{color:#a47a10;background:#fff7ed}.attendance-cell.leave span,.audit-calendar-grid>button.leave,.status-leave{color:#a21caf;background:#fae8ff}.attendance-cell.late span,.audit-calendar-grid>button.late,.status-late{color:#a16207;background:#fef9c3}.attendance-cell.short-leave span,.audit-calendar-grid>button.short-leave,.status-short-leave{color:#92400e;background:#fef3c7}.attendance-cell.half-day span,.audit-calendar-grid>button.half-day,.status-half-day{color:#c2410c;background:#ffedd5}.attendance-cell.absent-sandwich span,.audit-calendar-grid>button.absent-sandwich,.status-absent-sandwich{color:#9f1239;background:#ffe4e6}.attendance-cell.paid-leave span,.audit-calendar-grid>button.paid-leave,.status-paid-leave{color:#6d28d9;background:#ede9fe}.attendance-cell.unpaid-leave span,.audit-calendar-grid>button.unpaid-leave,.status-unpaid-leave{color:#7e22ce;background:#f3e8ff}.attendance-cell.weekly-off span,.audit-calendar-grid>button.weekly-off,.status-weekly-off{color:#0e7490;background:#cffafe}.attendance-cell.holiday span,.audit-calendar-grid>button.holiday,.status-holiday{color:#1d4ed8;background:#dbeafe}.attendance-cell.out-of-office span,.audit-calendar-grid>button.out-of-office,.status-out-of-office{color:#0f766e;background:#ccfbf1}.attendance-cell.on-tour span,.audit-calendar-grid>button.on-tour,.status-on-tour{color:#4338ca;background:#e0e7ff}.attendance-cell.on-duty span,.audit-calendar-grid>button.on-duty,.status-on-duty{color:#be185d;background:#fce7f3}.attendance-cell.not-applicable span,.audit-calendar-grid>button.not-applicable,.status-not-applicable{color:#475569;background:#e2e8f0}.attendance-cell.before-joining span,.audit-calendar-grid>button.before-joining,.status-before-joining{color:#64748b;background:#f1f5f9}.attendance-cell.pending span,.audit-calendar-grid>button.pending,.status-pending{color:#b45309;background:#fff7ed}.attendance-cell.unmarked span,.audit-calendar-grid>button.unmarked,.status-unmarked{color:#a8a29e;background:#f5f5f4}.attendance-cell.unknown span,.audit-calendar-grid>button.unknown,.status-unknown{color:#334155;background:#f1f5f9}.attendance-status-legend{gap:5px;max-width:80%;display:flex;overflow-x:auto}.attendance-status-legend i{white-space:nowrap;border-radius:5px;align-items:center;gap:3px;padding:3px 6px;font-size:12px;font-style:normal;display:inline-flex}.attendance-status-legend i.present{color:#247348;background:#e8f5ec}.attendance-status-legend i.absent{color:#b42318;background:#fdeaea}.attendance-status-legend i.short-leave{color:#92400e;background:#fef3c7}.attendance-status-legend i.half-day{color:#c2410c;background:#ffedd5}.attendance-status-legend i.absent-sandwich{color:#9f1239;background:#ffe4e6}.attendance-status-legend i.paid-leave{color:#6d28d9;background:#ede9fe}.attendance-status-legend i.unpaid-leave{color:#7e22ce;background:#f3e8ff}.attendance-status-legend i.weekly-off{color:#0e7490;background:#cffafe}.attendance-status-legend i.holiday{color:#1d4ed8;background:#dbeafe}.attendance-status-legend i.out-of-office{color:#0f766e;background:#ccfbf1}.attendance-status-legend i.on-tour{color:#4338ca;background:#e0e7ff}.attendance-status-legend i.on-duty{color:#be185d;background:#fce7f3}.attendance-status-legend i.not-applicable{color:#475569;background:#e2e8f0}.attendance-status-legend i.pending{color:#b45309;background:#fff7ed}.attendance-status-legend i.unmarked{color:#78716c;background:#f5f5f4}.attendance-filter-select{border:1px solid var(--ui-border);background:#fff;border-radius:6px;align-items:center;gap:7px;padding:0 10px;display:flex}.attendance-filter-select select{min-height:34px;color:var(--ui-text);background:0 0;border:0;outline:0;font-weight:700}.attendance-toolbar-note{color:var(--ui-text-muted);align-self:center;font-size:12px}.attendance-review-source-list{grid-template-columns:repeat(2,1fr);gap:8px;padding:12px 18px;display:grid}.attendance-review-source-list>button{border:1px solid var(--ui-border);text-align:left;background:#fff;border-radius:7px;justify-content:space-between;align-items:center;padding:10px;display:flex}.attendance-review-source-list>button.selected{border-color:var(--ui-brand);background:var(--ui-brand-soft)}.attendance-review-source-list small,.attendance-review-source-list strong{display:block}.attendance-review-source-list small{color:var(--ui-text-muted);margin-top:3px;font-size:12px}.attendance-review-source-list b{color:var(--ui-brand);font-size:12px}.attendance-evidence-panel{border:1px solid var(--ui-border);background:#fafaf9;border-radius:7px;margin:0 18px 12px;padding:11px}.evidence-buttons{gap:7px;margin-top:10px;display:flex}.evidence-buttons button{border:1px solid var(--ui-brand);color:var(--ui-brand);background:#fff;border-radius:6px;padding:7px 10px;font-weight:750}.evidence-buttons span{color:var(--ui-text-muted);font-size:12px}.attendance-action-message{background:#f0fdf4;padding:9px 11px}.attendance-action-form{border-top:1px solid var(--ui-border);background:#fffaf7;grid-template-columns:repeat(3,1fr);gap:8px;padding:12px 18px;display:grid}.attendance-action-form label{color:var(--ui-text-muted);gap:4px;font-size:12px;font-weight:750;display:grid}.attendance-action-form input,.attendance-action-form select,.attendance-action-form textarea{border:1px solid var(--ui-border);background:#fff;border-radius:6px;padding:8px}.attendance-action-form .reason-field{grid-column:1/-1}.attendance-action-form textarea{resize:vertical;min-height:58px}.attendance-action-form>button{border:1px solid var(--ui-border);background:#fff;border-radius:6px;padding:8px;font-weight:750}.attendance-action-form>button:last-child{background:var(--ui-brand);color:#fff}@media (max-width:700px){.attendance-action-form,.attendance-review-source-list{grid-template-columns:1fr}}.attendance-detail-modal{width:min(1040px,100%)}.attendance-detail-modal>header{background:linear-gradient(100deg,#fff9df,#fff);justify-content:flex-start}.attendance-detail-modal>header>div{flex:1}.attendance-detail-modal>header .attendance-modal-state{border-radius:999px;padding:6px 12px;font-size:12px;font-weight:800}.attendance-modal-state.active{color:#166534;background:#dcfce7}.attendance-modal-state.locked{color:#4b5563;background:#f3f4f6}.attendance-detail-modal>.attendance-record-nav{grid-template-columns:repeat(4,1fr)}.attendance-detail-modal>.attendance-modal-tabs{background:#fff;padding:0 18px;display:flex;overflow:auto}.attendance-detail-modal>.attendance-modal-tabs button{background:#fff;border-bottom:2px solid #0000;border-right:0;flex:none;min-height:46px;padding:0 16px;font-size:12px}.attendance-detail-modal>.attendance-modal-tabs button.active{border-bottom-color:var(--ui-brand);color:var(--ui-brand)}.attendance-modal-content{background:#fff;min-height:420px;padding:16px 18px}.attendance-loading{text-align:center;color:var(--ui-text-muted);padding:60px}.attendance-approval-head,.attendance-correction-list>header{border:1px solid var(--ui-border);border-radius:8px;justify-content:space-between;align-items:center;gap:16px;padding:13px 15px;display:flex}.attendance-approval-head h3,.attendance-approval-head p,.attendance-correction-list h3,.attendance-correction-list header p{margin:0}.attendance-approval-head p,.attendance-correction-list header p{color:var(--ui-text-muted);margin-top:3px;font-size:12px}.attendance-approval-head button,.attendance-correction-list header button,.secondary-action{border:1px solid var(--ui-border);background:#fff;border-radius:7px;align-items:center;gap:6px;padding:9px 12px;font-weight:750;display:flex}.attendance-approval-head svg{width:16px}.attendance-audit-results{background:#fafaf9;border-radius:7px;flex-wrap:wrap;gap:7px;margin-top:10px;padding:10px;display:flex}.attendance-audit-results span{border-radius:5px;padding:5px 8px;font-size:12px;font-weight:750}.attendance-audit-results .pass{color:#166534;background:#dcfce7}.attendance-audit-results .fail{color:#991b1b;background:#fee2e2}.attendance-three-sources{grid-template-columns:repeat(3,1fr);gap:10px;margin-top:12px;display:grid}.attendance-source-panel{border:1px solid var(--ui-border);background:#fff;border-radius:8px;min-height:160px;padding:13px}.attendance-source-panel.selected{border-color:var(--ui-brand);box-shadow:0 0 0 2px #913b2c18}.attendance-source-panel header{justify-content:space-between;gap:8px;display:flex}.attendance-source-panel header span{color:var(--ui-brand);text-transform:uppercase;font-size:12px;font-weight:850}.attendance-source-panel>b{margin-top:18px;font-size:16px;display:block}.attendance-source-panel p{margin:6px 0}.attendance-source-panel small{min-height:30px;color:var(--ui-text-muted);display:block}.attendance-source-panel button{border:1px solid var(--ui-brand);color:var(--ui-brand);background:#fff;border-radius:6px;margin-top:10px;padding:7px 9px;font-weight:750}.attendance-day-actions{border-top:1px solid var(--ui-border);justify-content:flex-end;align-items:center;gap:7px;margin-top:12px;padding-top:12px;display:flex}.attendance-day-actions>div{margin-right:auto}.attendance-day-actions small,.attendance-day-actions strong{display:block}.attendance-day-actions small{color:var(--ui-text-muted)}.attendance-day-actions button{border:1px solid var(--ui-border);background:#fff;border-radius:7px;padding:9px 12px;font-weight:750}.attendance-day-actions button.primary{background:var(--ui-brand);color:#fff}.attendance-summary-grid{border:1px solid var(--ui-border);border-radius:8px;grid-template-columns:repeat(6,1fr);display:grid;overflow:hidden}.attendance-summary-grid>div{border-right:1px solid var(--ui-border);padding:14px}.attendance-summary-grid span,.attendance-summary-grid strong{display:block}.attendance-summary-grid span{color:var(--ui-text-muted);font-size:12px}.attendance-summary-grid strong{margin-top:7px;font-size:22px}.attendance-proof-grid,.attendance-summary-columns{grid-template-columns:1fr 1fr;gap:12px;margin-top:12px;display:grid}.attendance-history,.attendance-proof-grid>article,.attendance-summary-columns>article{border:1px solid var(--ui-border);border-radius:8px;padding:14px}.attendance-history h3,.attendance-proof-grid h3,.attendance-summary-columns h3{margin:0 0 12px}.attendance-proof-grid dl,.attendance-summary-columns dl{justify-content:space-between;gap:10px;margin:8px 0;display:flex}.attendance-proof-grid dd,.attendance-summary-columns dd{text-align:right;margin:0;font-weight:700}.attendance-proof-grid dt,.attendance-summary-columns dt{color:var(--ui-text-muted)}.attendance-correction-list>article{border:1px solid var(--ui-border);border-radius:8px;margin-top:10px;padding:13px}.attendance-correction-list dl,.attendance-correction-list>article>div{justify-content:space-between;display:flex}.attendance-correction-list article p{margin:8px 0}.attendance-correction-list dl{border-top:1px solid var(--ui-border);padding:7px 0}.attendance-correction-list dd{margin:0}.attendance-empty-state{color:var(--ui-text-muted);justify-items:center;gap:6px;padding:60px;display:grid}.attendance-empty-state svg{width:30px}.attendance-history{margin-top:12px}.attendance-history h3{align-items:center;gap:7px;display:flex}.attendance-history h3 svg{width:18px}.attendance-history>div{border-top:1px solid var(--ui-border);grid-template-columns:180px 1fr;gap:12px;padding:8px 0;display:grid}.attendance-history>div span{color:var(--ui-text-muted)}@media (max-width:760px){.attendance-proof-grid,.attendance-summary-columns,.attendance-three-sources{grid-template-columns:1fr}.attendance-summary-grid{grid-template-columns:repeat(2,1fr)}.attendance-detail-modal>.attendance-record-nav{display:none}.attendance-modal-content{padding:12px}.attendance-day-actions{flex-wrap:wrap}.attendance-day-actions>div{width:100%}}.attendance-cell{padding:0!important}.attendance-cell>button{cursor:pointer;background:0 0;border:0;width:100%;height:38px;position:relative}.attendance-cell>button:hover{outline:2px solid var(--ui-brand);outline-offset:-2px}.attendance-cell>button i{background:#d97706;border-radius:50%;width:5px;height:5px;position:absolute;top:5px;right:4px}.attendance-detail-backdrop{z-index:90;background:#1c191794;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.attendance-detail-modal{border:1px solid var(--ui-border);background:#fff;border-radius:12px;width:min(820px,100%);max-height:calc(100dvh - 36px);overflow:auto;box-shadow:0 26px 80px #1c191740}.attendance-detail-modal>header{border-bottom:1px solid var(--ui-border);justify-content:space-between;align-items:center;padding:16px 18px;display:flex}.attendance-detail-modal>header h2{margin:3px 0 1px;font-size:21px}.attendance-detail-modal>header span{color:var(--ui-text-muted);font-size:12px}.attendance-detail-modal>header button{background:#f5f5f4;border:0;border-radius:7px;place-items:center;width:34px;height:34px;display:grid}.attendance-detail-modal>nav{border-bottom:1px solid var(--ui-border);grid-template-columns:repeat(4,1fr);display:grid}.attendance-detail-modal>nav button{border:0;border-right:1px solid var(--ui-border);color:#57534e;background:#fafaf9;justify-content:center;align-items:center;gap:4px;min-height:35px;font-size:12px;font-weight:750;display:flex}.attendance-detail-modal>nav svg{width:14px}.attendance-detail-status{background:#fffaf7;justify-content:space-between;align-items:center;padding:11px 18px;display:flex}.attendance-detail-status>span:last-child{color:var(--ui-text-muted);font-size:12px}.attendance-detail-sources{grid-template-columns:repeat(3,1fr);gap:10px;padding:14px 18px;display:grid}.attendance-detail-sources>article{border:1px solid var(--ui-border);border-radius:8px;min-height:145px;padding:12px}.attendance-detail-sources article>header{justify-content:space-between;gap:8px;display:flex}.attendance-detail-sources article>header span{color:var(--ui-brand);text-transform:uppercase;font-size:12px;font-weight:800}.attendance-detail-sources article>p{margin:15px 0;font-size:18px;font-weight:750}.attendance-detail-modal>footer{border-top:1px solid var(--ui-border);justify-content:flex-end;gap:7px;padding:12px 18px;display:flex}.attendance-detail-modal>footer button,.audit-day-actions button{border:1px solid var(--ui-border);color:#78716c;background:#fff;border-radius:6px;min-height:34px;padding:0 12px;font-size:12px;font-weight:750}.attendance-detail-modal>footer button:last-child,.audit-day-actions button:last-child{background:var(--ui-brand);color:#fff}.attendance-detail-modal button:disabled,.audit-day-actions button:disabled{opacity:.5}.attendance-detail-sources dl,.audit-source-card dl{justify-content:space-between;gap:8px;margin:7px 0;font-size:12px;display:flex}.attendance-detail-sources dt,.audit-source-card dt{color:var(--ui-text-muted)}.attendance-detail-sources dd,.audit-source-card dd{text-align:right;margin:0;font-weight:650}.audit-calendar-detail{grid-template-columns:minmax(360px,.85fr) minmax(390px,1.15fr);gap:10px;padding:10px;display:grid}.audit-day-panel,.audit-month-calendar{border:1px solid var(--ui-border);background:#fff;border-radius:8px;overflow:hidden}.audit-day-panel>header,.audit-month-calendar>header{border-bottom:1px solid var(--ui-border);justify-content:space-between;align-items:center;padding:11px 12px;display:flex}.audit-month-calendar>header>div{align-items:center;gap:7px;display:flex}.audit-month-calendar>header svg{width:16px;color:var(--ui-brand)}.audit-month-calendar>header small{color:var(--ui-text-muted)}.audit-calendar-grid,.audit-weekdays{grid-template-columns:repeat(7,1fr);display:grid}.audit-weekdays{color:var(--ui-text-muted);text-align:center;text-transform:uppercase;padding:7px 8px 3px;font-size:12px;font-weight:800}.audit-calendar-grid{gap:4px;padding:4px 8px 10px}.audit-calendar-grid>.calendar-spacer,.audit-calendar-grid>button{aspect-ratio:1;background:#f5f5f4;border:1px solid #0000;border-radius:7px;position:relative}.audit-calendar-grid>button{cursor:pointer;place-items:center;padding:3px;display:grid}.audit-calendar-grid>button b{font-size:12px;position:absolute;top:4px;left:5px}.audit-calendar-grid>button span{font-size:12px;font-weight:850}.audit-calendar-grid>button.present{color:#247348;background:#e8f5ec}.audit-calendar-grid>button.absent{color:#b42318;background:#fdeaea}.audit-calendar-grid>button.half{color:#a15c00;background:#fff2d8}.audit-calendar-grid>button.leave{color:#315ca8;background:#eaf1ff}.audit-calendar-grid>button.pending{color:#9a5800;background:#fff7e6}.audit-calendar-grid>button.selected{border-color:var(--ui-brand);box-shadow:0 0 0 2px #913b2c22}.audit-calendar-grid>button i{background:#d97706;border-radius:50%;width:5px;height:5px;position:absolute;top:4px;right:4px}.audit-day-panel>header h3{margin:3px 0 0;font-size:16px}.audit-source-card{border-bottom:1px solid var(--ui-border)}.audit-source-card>button{text-align:left;background:#fff;border:0;justify-content:space-between;align-items:center;width:100%;padding:10px 12px;display:flex}.audit-source-card>button small,.audit-source-card>button span,.audit-source-card>button strong{display:block}.audit-source-card>button small{color:var(--ui-text-muted);margin-top:2px;font-size:12px}.audit-source-card>button svg{width:15px;transition:transform .15s}.audit-source-card>button svg.open{transform:rotate(180deg)}.audit-source-card>div{background:#fafaf9;padding:0 12px 9px}.audit-day-actions{justify-content:flex-end;gap:7px;padding:11px 12px;display:flex}.status-pending{color:#9a5800;background:#fff2d8}.status-unmarked{color:#78716c}@media (max-width:900px){.attendance-detail-sources,.audit-calendar-detail{grid-template-columns:1fr}.attendance-detail-modal>nav{grid-template-columns:1fr 1fr}}.audit-calendar-grid>button.is-late{color:#9a3412;background:#fff7ed;border:2px solid #f97316}.audit-calendar-day-status{justify-items:center;gap:3px;display:grid}.audit-calendar-late-label{color:#9a3412;background:#ffedd5;border-radius:4px;align-items:center;gap:3px;padding:2px 5px;font-size:10px;font-weight:800;line-height:1.2;display:inline-flex}.audit-calendar-late-label svg{width:11px;height:11px}.audit-calendar-grid>button.is-late.selected{border-color:#f97316;box-shadow:0 0 0 2px #913b2c55}.audit-calendar-grid>button .calendar-audit-warning{background:#fff;border-radius:50%;place-items:center;width:15px;height:15px;display:grid;position:absolute;top:3px;right:3px;box-shadow:0 1px 3px #0002}.audit-calendar-grid>button .calendar-audit-warning svg{width:11px;height:11px}.calendar-audit-warning.severity-critical{color:#b42318}.calendar-audit-warning.severity-warning{color:#d97706}.calendar-audit-warning.severity-info{color:#2563eb}.audit-day-problems{border-bottom:1px solid var(--ui-border);background:#fffaf7;padding:10px 12px}.audit-day-problems>header{justify-content:space-between;margin-bottom:7px;display:flex}.audit-day-problems>header span{color:var(--ui-text-muted);font-size:12px}.audit-day-problems article{background:#fff;border-left:3px solid;border-radius:5px;grid-template-columns:20px 1fr;gap:8px;margin-top:6px;padding:8px;display:grid}.audit-day-problems article>svg{width:16px;height:16px}.audit-day-problems article small,.audit-day-problems article strong{display:block}.audit-day-problems article p{margin:2px 0;font-size:12px}.audit-day-problems article small{color:var(--ui-text-muted);font-size:12px}.audit-day-problems .severity-critical{color:#991b1b;border-color:#dc2626}.audit-day-problems .severity-warning{color:#92400e;border-color:#f59e0b}.audit-day-problems .severity-info{color:#1d4ed8;border-color:#3b82f6}.attendance-view-page{width:100%;max-width:none;padding:18px 22px 36px}.attendance-view-heading{align-items:center;margin:0 0 12px}.attendance-view-heading h1{margin:3px 0 1px;font-size:30px}.attendance-view-heading>div>p:last-child{color:var(--ui-text-muted);margin:0;font-size:12px}.attendance-view-toolbar{margin:0 0 9px}.attendance-view-toolbar button,.attendance-view-toolbar>label,.month-control{min-height:36px}.month-control a{width:34px;height:34px;color:var(--ui-text-muted);place-items:center;display:grid}.month-control strong{text-align:center;min-width:82px;font-size:12px}.attendance-overview-strip{margin-bottom:9px}.attendance-overview-strip div{padding:8px 13px;position:relative}.attendance-overview-strip div:before{content:"";background:#a8a29e;width:3px;position:absolute;inset:0 auto 0 0}.attendance-overview-strip .metric-amber:before{background:#d97706}.attendance-overview-strip .metric-blue:before{background:#2563eb}.attendance-overview-strip .metric-red:before{background:#dc2626}.attendance-overview-strip strong{font-size:18px}.attendance-matrix-shell td,.attendance-matrix-shell th{height:38px;padding:0 6px}.attendance-matrix-shell tbody tr:hover td{background:#fffaf7}.employee-cell{align-items:center;gap:8px;display:flex}.audit-employee-list small,.employee-cell small{color:var(--ui-text-muted);font-size:12px;display:block}.employee-initial{background:var(--ui-brand-soft);width:26px;height:26px;color:var(--ui-brand);border-radius:7px;flex:none;place-items:center;font-weight:800;display:grid}.attendance-cell{font-weight:800;position:relative}.attendance-cell span{border-radius:6px;place-items:center;width:24px;height:24px;margin:auto;display:grid}.attendance-cell.present span{color:#247348;background:#e8f5ec}.attendance-cell.absent span{color:#b42318;background:#fdeaea}.attendance-cell.half span{color:#a15c00;background:#fff2d8}.attendance-cell.leave span{color:#315ca8;background:#eaf1ff}.attendance-cell.empty{color:#d6d3d1}.attendance-cell i{background:#d97706;border-radius:50%;width:5px;height:5px;position:absolute;top:5px;right:4px}.attendance-data-error{background:#fff1f2;border-left:3px solid #dc2626;padding:9px 12px}.audit-workspace-layout{grid-template-columns:250px minmax(0,1fr);gap:9px;min-height:calc(100dvh - 210px)}.audit-detail-panel,.audit-employee-panel{overflow:hidden}.audit-employee-list{max-height:calc(100dvh - 270px);overflow:auto}.audit-employee-list a{color:inherit;border-bottom:1px solid #eee9e6;align-items:center;gap:8px;padding:8px 10px;display:flex}.audit-employee-list a.active{background:var(--ui-brand-soft);box-shadow:inset 3px 0 var(--ui-brand)}.audit-detail-panel>header{justify-content:space-between;align-items:center;padding:11px 14px;display:flex}.audit-detail-panel>header h2{margin:3px 0 1px;font-size:20px}.audit-detail-panel>header p:last-child{color:var(--ui-text-muted);margin:0;font-size:12px}.review-count{color:#9a5800;background:#fff2d8;border-radius:99px;padding:5px 9px;font-size:12px;font-weight:800}.audit-counter-row div{padding:8px 10px}.audit-counter-row .metric-amber{background:#fffbeb}.audit-counter-row .metric-red{background:#fff1f2}.audit-counter-row .metric-blue{background:#eff6ff}.audit-calendar{padding:9px}.audit-calendar-head,.audit-calendar-row{border-bottom:1px solid #eee9e6;grid-template-columns:70px 120px 1fr 1fr 90px;align-items:center;gap:8px;min-height:37px;padding:0 10px;font-size:12px;display:grid}.audit-calendar-head{min-height:31px;color:var(--ui-text-muted);text-transform:uppercase;background:#f7f5f3;font-weight:800}.audit-calendar-row:hover{background:#fffaf7}.audit-status{background:#f1f0ef;border-radius:5px;width:max-content;padding:4px 7px;font-weight:800}.status-present{color:#247348;background:#e8f5ec}.status-absent{color:#b42318;background:#fdeaea}.status-half-day{color:#a15c00;background:#fff2d8}.approved{color:#247348;font-weight:700}.needs-review{color:#a15c00;font-weight:800}@media (max-width:850px){.attendance-view-page{padding:12px}.attendance-view-heading h1{font-size:26px}.audit-workspace-layout{grid-template-columns:1fr}.audit-employee-list{max-height:220px}.audit-calendar{overflow:auto}.audit-calendar-head,.audit-calendar-row{min-width:650px}}.attendance-matrix-shell th.attendance-day-heading{text-align:center;min-width:38px;height:48px;padding:4px 3px}.attendance-day-heading b,.attendance-day-heading span{display:block}.attendance-day-heading span{color:var(--ui-text-muted);text-transform:uppercase;margin-bottom:2px;font-size:12px}.attendance-day-heading b{font-size:12px}.employee-month-review-row>article{border-top:1px solid var(--ui-border);grid-template-columns:minmax(180px,1.4fr) 90px minmax(130px,1fr) auto;align-items:center;gap:9px;min-height:54px;padding:7px 9px;display:grid}.employee-month-actions{gap:6px;display:flex!important}.employee-month-actions button,.leave-fy-card button,.leave-month-review button,.leave-request-list button{border:1px solid var(--ui-border);background:#fff;border-radius:6px;min-height:30px;padding:0 9px;font-size:12px;font-weight:750}.leave-month-review{border:1px solid var(--ui-border);background:#fffaf7;border-radius:8px;margin:0 9px 12px;padding:12px}.leave-month-review>header{justify-content:space-between;align-items:center;display:flex}.leave-month-review h3,.leave-month-review p{margin:0}.leave-month-review header p{color:var(--ui-text-muted);margin-top:3px;font-size:12px}.leave-review-balances{gap:8px;margin:10px 0;display:flex}.leave-review-balances span{background:#fff;border-radius:6px;padding:7px 9px;font-size:12px}.leave-month-review>article{border-top:1px solid var(--ui-border);grid-template-columns:1fr repeat(3,80px) 70px;align-items:end;gap:8px;padding:8px 0;display:grid}.leave-month-review article small{color:var(--ui-text-muted);display:block}.leave-month-review label{color:var(--ui-text-muted);gap:3px;font-size:12px;font-weight:800;display:grid}.leave-month-review input{border:1px solid var(--ui-border);border-radius:5px;width:100%;padding:6px}.leave-month-review .balanced{color:var(--ui-success)}.leave-month-review .unbalanced{color:var(--ui-danger)}.leave-confirm-button{color:#fff;background:var(--ui-brand)!important;margin-top:10px!important}.leave-review-clear{color:var(--ui-success);align-items:center;gap:7px;padding:16px;display:flex}.leave-request-list{gap:8px;display:grid}.leave-request-list>article{border:1px solid var(--ui-border);background:#fff;border-radius:8px;grid-template-columns:minmax(180px,1fr) 80px minmax(180px,1fr) 95px auto;align-items:center;gap:12px;padding:13px;display:grid}.leave-request-list article span{color:var(--ui-text-muted);font-size:12px;display:block}.leave-request-list article p{margin:0;font-size:12px}.leave-request-list article>div:last-child{gap:6px;display:flex}.leave-request-list article>div:last-child button:last-child{background:var(--ui-brand);color:#fff}.leave-request-status{background:#fff2d8;border-radius:99px;padding:5px 7px;font-weight:800;color:#9a5800!important}.leave-fy-card{border:1px solid var(--ui-border);background:#fff;border-radius:8px;max-width:760px;padding:18px}.leave-fy-card label{gap:5px;margin-top:10px;font-size:12px;font-weight:750;display:grid}.leave-fy-card input{border:1px solid var(--ui-border);border-radius:6px;padding:10px}.leave-fy-card>div{gap:7px;margin-top:12px;display:flex}.leave-fy-card>div button:last-child{background:var(--ui-brand);color:#fff}.leave-fy-card pre{background:#fafaf9;border-radius:6px;padding:12px;font-size:12px;overflow:auto}@media (max-width:760px){.employee-month-review-row>article,.leave-request-list>article{grid-template-columns:1fr auto}.leave-month-review>article{grid-template-columns:1fr repeat(3,60px)}.leave-month-review>article>strong{grid-column:1/-1}}.leave-fy-card select{border:1px solid var(--ui-border);background:#fff;border-radius:6px;padding:10px}.leave-request-form{border:1px solid var(--ui-border);background:#fff;border-radius:8px;grid-template-columns:repeat(3,minmax(150px,1fr));gap:10px;margin-bottom:12px;padding:14px;display:grid}.leave-request-form label{color:var(--ui-text-muted);gap:4px;font-size:12px;font-weight:750;display:grid}.leave-request-form input,.leave-request-form select{border:1px solid var(--ui-border);background:#fff;border-radius:6px;padding:9px}.leave-request-form button{background:var(--ui-brand);color:#fff;border:0;border-radius:6px;align-self:end;min-height:34px;font-weight:750}.leave-request-list>article{display:block}.leave-request-summary{text-align:left;grid-template-columns:minmax(180px,1fr) 80px minmax(180px,1fr) 110px;align-items:center;gap:12px;width:100%;padding:0;display:grid;color:inherit!important;background:0 0!important;border:0!important}.leave-request-summary small,.leave-request-summary span{display:block}.leave-request-summary em{font-style:normal}.leave-request-detail{border-top:1px solid var(--ui-border);margin-top:12px;padding-top:10px}.leave-request-detail p{margin:4px 0!important}.leave-request-detail>div{gap:6px;margin-top:8px;display:flex}.leave-request-detail>div button:last-child{background:var(--ui-brand);color:#fff}@media (max-width:760px){.leave-request-form{grid-template-columns:1fr}.leave-request-summary{grid-template-columns:1fr auto}.leave-request-summary>span:nth-child(3){grid-column:1/-1}}.outline-action{text-decoration:none}.status-checked_in{color:#166534;background:#ecfdf3}.status-checked_in>span{background:#16a34a}.status-checked_out{color:#1d4ed8;background:#eff6ff}.status-checked_out>span{background:#2563eb}.attendance-preflight{text-align:center;padding:28px 22px 12px}.attendance-preflight>svg{width:42px;height:42px;color:var(--ui-brand)}.attendance-preflight h3{margin:12px 0 6px;font-size:19px}.attendance-preflight p{color:var(--ui-text-muted);font-size:14px;line-height:1.55}.attendance-preflight ul{text-align:left;color:#57534e;margin:16px 0 22px;padding-left:22px;font-size:13px;line-height:1.7}.attendance-preview img{object-fit:cover;width:100%;height:100%;transform:scaleX(-1)}.attendance-retake{border:1px solid var(--ui-border);border-radius:var(--ui-radius-sm);width:calc(100% - 40px);min-height:42px;color:var(--ui-brand);background:#fff;justify-content:center;align-items:center;gap:7px;margin:0 20px 10px;font-weight:750;display:flex}.attendance-error button svg,.attendance-retake svg{width:16px}.attendance-error p{margin:0}.attendance-error button{color:inherit;background:0 0;border:1px solid;border-radius:5px;align-items:center;gap:6px;margin-top:8px;padding:7px 9px;font-weight:750;display:flex}.decision-backdrop{z-index:120;background:#1c191799;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.decision-dialog{background:#fff;border-radius:12px;width:min(500px,100%);padding:22px;box-shadow:0 24px 70px #1c191744}.decision-dialog h2{margin:0;font-size:22px}.decision-dialog>p{color:var(--ui-text-muted);line-height:1.55}.decision-dialog label{gap:6px;font-size:13px;font-weight:750;display:grid}.decision-dialog textarea{border:1px solid var(--ui-border);resize:vertical;border-radius:7px;min-height:100px;padding:10px}.decision-dialog>div{justify-content:flex-end;gap:8px;margin-top:16px;display:flex}.decision-dialog button,.workspace-empty button{border:1px solid var(--ui-border);background:#fff;border-radius:7px;min-height:42px;padding:0 14px;font-weight:750}.decision-dialog button.primary{border-color:var(--ui-brand);background:var(--ui-brand);color:#fff}.decision-dialog button.danger{border-color:var(--ui-danger);background:var(--ui-danger);color:#fff}.workspace-empty{text-align:center;border:1px dashed var(--ui-border);background:#fff;border-radius:8px;padding:34px}.workspace-empty p{color:var(--ui-text-muted)}.workspace-empty button{color:var(--ui-brand)}.attendance-detail-modal>header span,.attendance-detail-sources dl,.attendance-detail-status>span:last-child,.attendance-settings-page label,.audit-calendar-head,.audit-calendar-row,.audit-day-problems article p,.audit-day-problems article small,.audit-source-card dl,.audit-source-card>button small,.employee-month-list article div span,.employee-month-list article small,.leave-request-form label,.leave-request-list article p,.leave-request-list article span{font-size:max(12px,1em)}.attendance-detail-modal button,.audit-day-actions button,.employee-month-actions button,.leave-fy-card button,.leave-month-review button,.leave-request-list button{min-height:40px;font-size:12px}@media (max-width:760px){.decision-backdrop{align-items:end;padding:0}.decision-dialog{border-radius:16px 16px 0 0}.decision-dialog>div{flex-direction:column-reverse}.decision-dialog button{width:100%}.settings-list>header{display:none}.settings-list>article,.settings-months article{grid-template-columns:1fr 1fr;min-width:0}.branch-attendance-table table{min-width:780px}.leave-request-summary{gap:8px}}.attendance-matrix-shell tbody td{height:56px}.sticky-employee{min-width:275px}.employee-identity>span{min-width:0}.employee-shift{white-space:nowrap;align-items:center;gap:4px;margin-top:2px;font-weight:700;color:#8a5a4c!important;font-size:11px!important;display:flex!important}.employee-shift svg{flex:none;width:12px;height:12px}.audit-employee-shift{margin-top:4px}.modal-employee-shift{background:#fff3ed;border-radius:5px;width:max-content;margin-top:5px;padding:4px 7px}.attendance-detail-modal>header .modal-employee-shift{color:#7c2d22;font-size:12px}.employee-leave-details{gap:18px;display:grid}.leave-balance-line{justify-content:space-between;gap:24px;margin:0;padding:8px 0;display:flex}.employee-leave-details .employee-month-actions{flex-wrap:wrap}.leave-control-page{background:#f7f5f3;min-height:100%}.leave-control-period{border-bottom:1px solid var(--ui-border);background:#fff;justify-content:space-between;align-items:flex-end;gap:20px;padding:24px 28px 18px;display:flex}.leave-control-period h1{letter-spacing:-.035em;margin:4px 0;font-size:28px}.leave-control-period>div>p:last-child{color:var(--ui-text-muted);margin:0;font-size:12px}.leave-control-period nav{border:1px solid var(--ui-border);background:#fff;border-radius:8px;align-items:center;display:flex;overflow:hidden}.leave-control-period nav a{width:40px;height:40px;color:var(--ui-text);place-items:center;display:grid}.leave-control-period nav a:hover{background:var(--ui-brand-soft)}.leave-control-period nav svg{width:16px}.leave-control-period nav strong{text-align:center;min-width:150px;padding:0 12px;font-size:13px}.leave-control-layout{grid-template-columns:280px minmax(0,1fr);min-height:calc(100dvh - 178px);display:grid}.leave-employee-panel{border-right:1px solid var(--ui-border);background:#fff;flex-direction:column;min-height:0;display:flex}.leave-employee-panel>header{padding:15px 17px 9px}.leave-employee-panel>header span,.leave-employee-panel>header strong{display:block}.leave-employee-panel>header strong{font-size:14px}.leave-employee-panel>header span{color:var(--ui-text-muted);margin-top:2px;font-size:11px}.leave-employee-search{border:1px solid var(--ui-border);background:#fff;border-radius:7px;align-items:center;gap:7px;margin:0 12px 10px;padding:0 9px;display:flex}.leave-employee-search svg{width:15px;color:var(--ui-text-muted)}.leave-employee-search input{border:0;outline:0;width:100%;height:38px}.leave-employee-list{padding:0 8px 18px;overflow:auto}.leave-employee-list section h3{color:var(--ui-text-muted);text-transform:uppercase;letter-spacing:.06em;justify-content:space-between;margin:10px 8px 4px;font-size:10px;display:flex}.leave-employee-list section h3 span{font-weight:600}.leave-employee-list a{color:var(--ui-text);border-radius:7px;grid-template-columns:32px 1fr;align-items:center;gap:9px;padding:8px;text-decoration:none;display:grid}.leave-employee-list a:hover{background:#f7f5f3}.leave-employee-list a.active{background:var(--ui-brand-soft);color:var(--ui-brand)}.leave-employee-list a>i{background:#eee9e6;border-radius:7px;place-items:center;width:30px;height:30px;font-size:12px;font-style:normal;font-weight:850;display:grid}.leave-employee-list a.active>i{background:#fff}.leave-employee-list a small,.leave-employee-list a strong{display:block}.leave-employee-list a strong{font-size:12px}.leave-employee-list a small{color:var(--ui-text-muted);margin-top:2px;font-size:10px}.leave-employee-empty{color:var(--ui-text-muted);text-align:center;padding:24px 12px;font-size:12px}.leave-control-layout>main{min-width:0;padding:0 22px 42px}.leave-selected-context{border-bottom:1px solid var(--ui-border);background:#fff;margin:0 -22px;padding:12px 22px}.leave-selected-context span,.leave-selected-context strong{display:block}.leave-selected-context strong{font-size:14px}.leave-selected-context span{color:var(--ui-text-muted);margin-top:2px;font-size:11px}.leave-control-detail{gap:14px;max-width:1250px;margin:0 auto;padding-top:20px;display:grid}.leave-control-heading{justify-content:space-between;gap:16px;display:flex}.leave-control-heading h1{margin:4px 0;font-size:24px}.leave-control-heading>div>p:last-child{color:var(--ui-text-muted);margin:0;font-size:12px}.leave-control-actions{gap:8px;display:flex}.leave-control-actions>button{border:1px solid var(--ui-border);background:#fff;border-radius:6px;align-items:center;gap:6px;min-height:36px;padding:0 11px;font-size:12px;font-weight:800;display:flex}.leave-control-actions svg{width:14px}.attendance-loading,.leave-control-loading{flex-direction:column;align-items:center;gap:10px;display:flex}.leave-control-loading,.leave-control-no-selection{border:1px dashed var(--ui-border);color:var(--ui-text-muted);text-align:center;background:#fff;border-radius:9px;padding:48px}.leave-control-kpis{grid-template-columns:repeat(4,1fr);gap:9px;display:grid}.leave-control-kpis article{border:1px solid var(--ui-border);background:#fff;border-radius:9px;padding:14px 15px;position:relative;overflow:hidden}.leave-control-kpis article:before{content:"";background:#a8a29e;width:3px;position:absolute;inset:0 auto 0 0}.leave-control-kpis article.good:before{background:var(--ui-success)}.leave-control-kpis article.attention:before{background:#d97706}.leave-control-kpis small,.leave-control-kpis span{color:var(--ui-text-muted);font-size:11px;display:block}.leave-control-kpis strong{margin:7px 0 5px;font-size:25px;display:block}.leave-control-grid{grid-template-columns:minmax(0,1fr) 285px;gap:12px;display:grid}.leave-control-balances,.leave-control-status,.leave-ledger-panel{border:1px solid var(--ui-border);background:#fff;border-radius:10px}.leave-control-balances{padding:16px}.leave-control-balances>header,.leave-ledger-panel>header{justify-content:space-between;align-items:flex-end;gap:14px;display:flex}.leave-control-balances h2,.leave-control-status h2,.leave-ledger-panel h2{margin:4px 0 0;font-size:17px}.leave-control-balances>header>span{color:var(--ui-text-muted);font-size:11px}.leave-control-balances .leave-balance-cards{margin-top:13px}.leave-control-balances .leave-balance-cards>article{grid-template-columns:82px 1fr;padding:13px}.leave-control-balances .leave-balance-visual{width:72px;height:72px}.leave-control-balances .leave-balance-visual:after{inset:9px}.leave-control-balances .leave-balance-visual strong{font-size:19px}.leave-control-balances .leave-balance-line{padding:4px 0;font-size:11px}.leave-control-status{padding:17px}.leave-control-status>p:not(.section-kicker){color:var(--ui-text-muted);font-size:12px;line-height:1.5}.leave-control-status>small{color:#9a5800;margin-top:7px;display:block}.leave-control-status>button{background:var(--ui-brand);color:#fff;border:0;border-radius:7px;width:100%;min-height:38px;margin-top:16px;font-size:12px;font-weight:800}.leave-control-status>button:disabled{background:#d6d3d1}.leave-control-clear{color:#166534;background:#ecfdf3;border-radius:7px;align-items:flex-start;gap:8px;margin-top:14px;padding:11px;font-size:12px;display:flex}.leave-control-clear svg{flex:none;width:17px}.leave-ledger-panel{overflow:hidden}.leave-ledger-panel>header{border-bottom:1px solid var(--ui-border);padding:15px 17px}.leave-ledger-panel nav{background:#f3f1ef;border-radius:7px;gap:4px;padding:3px;display:flex}.leave-ledger-panel nav button{min-height:30px;color:var(--ui-text-muted);background:0 0;border:0;border-radius:5px;padding:0 9px;font-size:11px;font-weight:750}.leave-ledger-panel nav button.active{color:var(--ui-brand);background:#fff;box-shadow:0 1px 3px #1c19171f}.leave-ledger-table{overflow:auto}.leave-ledger-row{border-bottom:1px solid #eee9e6;grid-template-columns:105px 145px 110px 110px 65px minmax(180px,1fr);align-items:center;gap:10px;min-width:790px;min-height:47px;padding:7px 17px;font-size:11px;display:grid}.leave-ledger-row:last-child{border-bottom:0}.leave-ledger-row small{color:var(--ui-text-muted)}.leave-ledger-row .credit{color:#167345}.leave-ledger-row .debit{color:#b42318}.leave-ledger-table-head{min-height:35px;color:var(--ui-text-muted);text-transform:uppercase;letter-spacing:.04em;background:#faf9f8;font-size:10px}.leave-ledger-empty{color:var(--ui-text-muted);text-align:center;padding:32px;font-size:12px}.leave-grant-dialog{width:min(620px,100%)}.leave-grant-dialog form{grid-template-columns:1fr 1fr;gap:13px;padding:18px;display:grid}.leave-grant-dialog form label{gap:6px;font-size:12px;font-weight:750;display:grid}.leave-grant-dialog form :is(input,select,textarea){border:1px solid var(--ui-border);min-height:42px;font:inherit;background:#fff;border-radius:7px;padding:8px 10px}.leave-grant-dialog form textarea{resize:vertical;min-height:90px}.leave-grant-dialog form .wide,.leave-grant-dialog form footer{grid-column:1/-1}.leave-grant-dialog form footer{justify-content:flex-end;gap:8px;display:flex}.leave-grant-dialog form footer button{border:1px solid var(--ui-border);background:#fff;border-radius:7px;min-height:40px;padding:0 14px;font-weight:800}.leave-grant-dialog form footer .primary{border-color:var(--ui-brand);background:var(--ui-brand);color:#fff}@media (max-width:1000px){.leave-control-layout{grid-template-columns:230px minmax(0,1fr)}.leave-control-grid{grid-template-columns:1fr}.leave-control-kpis{grid-template-columns:1fr 1fr}.leave-control-balances .leave-balance-cards{grid-template-columns:1fr}}@media (max-width:760px){.leave-control-period{align-items:flex-start;padding:18px 14px}.leave-control-period>div>p:last-child{display:none}.leave-control-period nav strong{min-width:105px}.leave-control-layout{display:block}.leave-employee-panel{border-right:0;border-bottom:1px solid var(--ui-border);max-height:260px}.leave-control-layout>main{padding:0 12px 28px}.leave-selected-context{margin:0 -12px;padding:10px 12px}.leave-control-heading{align-items:flex-start}.leave-control-actions>button span,.leave-control-heading>div>p:last-child{display:none}.leave-control-kpis{grid-template-columns:1fr 1fr}.leave-control-kpis article{padding:12px}.leave-control-balances{padding:13px}.leave-control-grid .leave-balance-cards{grid-template-columns:1fr}.leave-ledger-panel>header{flex-direction:column;align-items:flex-start}.leave-ledger-panel nav{width:100%}.leave-ledger-panel nav button{flex:1}.leave-grant-dialog form{grid-template-columns:1fr}.leave-grant-dialog form .wide,.leave-grant-dialog form footer{grid-column:auto}}.leave-control-page>.feedback-inline{margin:12px}.leave-control-layout{min-height:calc(100dvh - 74px)}.leave-selected-context{justify-content:flex-end;align-items:center;display:flex}.leave-selected-context nav{border:1px solid var(--ui-border);background:#fff;border-radius:7px;align-items:center;display:flex;overflow:hidden}.leave-selected-context nav a{width:36px;height:34px;color:var(--ui-text);place-items:center;display:grid}.leave-selected-context nav a:hover{background:var(--ui-brand-soft)}.leave-selected-context nav svg{width:15px}.leave-selected-context nav strong{text-align:center;min-width:145px;padding:0 10px;font-size:12px}.leave-fy-panel{border:1px solid var(--ui-border);background:#fff;border-radius:10px;overflow:hidden}.leave-fy-panel>header{border-bottom:1px solid var(--ui-border);padding:15px 17px}.leave-fy-panel h2{margin:4px 0 2px;font-size:17px}.leave-fy-panel header span{color:var(--ui-text-muted);font-size:11px}.leave-fy-table{overflow:auto}.leave-fy-row{text-align:right;border-bottom:1px solid #eee9e6;grid-template-columns:90px repeat(8,minmax(78px,1fr));align-items:center;gap:8px;min-width:790px;min-height:43px;padding:6px 17px;font-size:11px;display:grid}.leave-fy-row>:first-child{text-align:left}.leave-fy-row:last-child{border-bottom:0}.leave-fy-row .credit{color:#167345}.leave-fy-row .debit{color:#b42318}.leave-fy-head{min-height:35px;color:var(--ui-text-muted);text-transform:uppercase;letter-spacing:.035em;background:#faf9f8;font-size:10px}.leave-fy-row:not(.leave-fy-head):hover{background:#fffaf7}@media (max-width:760px){.leave-control-layout{min-height:calc(100dvh - 112px)}.leave-selected-context nav{width:100%}.leave-selected-context nav strong{flex:1}.leave-control-heading h1{font-size:21px}.leave-control-heading>div>p:last-child{display:block}.leave-fy-panel>header{padding:13px}}.employee-leave-review-modal{width:min(790px,100%);padding:0;overflow:hidden}.employee-leave-review-modal>header{border-bottom:1px solid var(--ui-border);padding:20px 24px 17px}.employee-leave-review-person{align-items:baseline;gap:8px;display:flex;margin:6px 0 0!important}.employee-leave-review-person strong{color:var(--ui-text);font-size:15px}.employee-leave-review-person span{color:var(--ui-text-muted);font-size:13px}.employee-leave-review-modal>.leave-month-review{background:#fff;margin:0;padding:18px 24px 0;overflow:auto}.employee-leave-review-modal>.leave-month-review>header{display:none}.employee-leave-review-modal .leave-balance-summary{grid-template-columns:1fr;gap:9px;margin:0 0 18px}.employee-leave-review-modal .leave-balance-summary>section{background:#fcfbfa;border-radius:9px;grid-template-columns:38px repeat(4,minmax(54px,1fr));min-height:66px;padding:10px 12px}.employee-leave-review-modal .leave-balance-summary>section>strong{font-size:14px}.employee-leave-review-modal .leave-balance-summary small{font-size:9px}.employee-leave-review-modal .leave-balance-summary b{font-size:13px}.leave-review-columns,.leave-review-rows>article{grid-template-columns:minmax(210px,1.2fr) minmax(220px,1fr) 76px;align-items:center;gap:18px;display:grid}.leave-review-columns{min-height:32px;color:var(--ui-text-muted);text-transform:uppercase;letter-spacing:.045em;background:#f7f5f3;border-radius:7px 7px 0 0;padding:0 12px;font-size:10px;font-weight:800}.leave-review-columns span:last-child{text-align:right}.leave-review-rows{border:1px solid var(--ui-border);border-top:0;border-radius:0 0 9px 9px;overflow:hidden}.leave-review-rows>article{border-top:1px solid #eee9e6;min-height:76px;padding:11px 12px}.leave-review-rows>article:first-child{border-top:0}.leave-review-rows>article:hover{background:#fffaf7}.leave-review-date>span{align-items:center;gap:7px;display:flex}.leave-review-date b{font-size:13px}.leave-review-date small{color:var(--ui-text-muted);margin-top:5px;font-size:11px;display:block}.leave-review-date .leave-day-status{margin:0;padding:3px 7px;font-size:10px;font-style:normal}.leave-review-rows .attendance-leave-choice{display:block}.leave-review-rows .attendance-leave-choice select{border-color:#d9d4cf;border-radius:7px;width:100%;min-height:42px;margin:0;padding:0 34px 0 11px;font-size:12px;font-weight:750}.leave-review-rows>article>strong{color:var(--ui-success);justify-items:end;font-size:15px;display:grid}.leave-review-rows>article>strong.unbalanced{color:#a15c00}.leave-review-rows>article>strong small{color:var(--ui-text-muted);text-transform:uppercase;margin-top:2px;font-size:9px;font-weight:700}.leave-review-footer{z-index:2;border-top:1px solid var(--ui-border);background:#fff;justify-content:space-between;align-items:center;position:sticky;bottom:0;box-shadow:0 -8px 18px #fff;margin:18px -24px 0!important;padding:13px 24px!important;display:flex!important}.leave-review-footer>span{color:var(--ui-text-muted);font-size:11px}.leave-review-footer .leave-confirm-button{border:0;border-radius:7px;min-height:40px;padding:0 16px;margin:0!important}.employee-leave-review-modal .attendance-action-message{margin:12px 0 0}@media (max-width:700px){.employee-leave-review-modal{border-radius:16px 16px 0 0;max-height:88dvh}.employee-leave-review-modal>header{padding:16px}.employee-leave-review-modal>.leave-month-review{padding:14px 16px 0}.employee-leave-review-modal .leave-balance-summary{grid-template-columns:1fr}.leave-review-columns{display:none}.leave-review-rows{border-top:1px solid var(--ui-border);border-radius:9px}.leave-review-rows>article{grid-template-columns:1fr 70px;gap:10px;min-height:0;padding:13px}.leave-review-rows .attendance-leave-choice{grid-area:2/1/auto/-1}.leave-review-rows>article>strong{grid-area:1/2}.leave-review-footer{margin:14px -16px 0!important;padding:12px 16px!important}}.leave-control-heading{align-items:flex-end}.leave-control-identity{text-align:left;min-width:0}.leave-control-actions{justify-content:flex-end;align-items:center;margin-left:auto}.leave-month-navigation{border:1px solid var(--ui-border);background:#fff;border-radius:7px;align-items:center;height:36px;display:flex;overflow:hidden}.leave-month-navigation a{width:34px;height:34px;color:var(--ui-text);place-items:center;display:grid}.leave-month-navigation a:hover{background:var(--ui-brand-soft)}.leave-month-navigation svg{width:14px}.leave-month-navigation strong{text-align:center;white-space:nowrap;min-width:124px;padding:0 8px;font-size:11px}@media (max-width:760px){.leave-control-heading{flex-wrap:wrap;align-items:flex-start;display:flex}.leave-control-identity{flex:100%}.leave-control-actions{justify-content:flex-end;width:100%;margin-left:0}.leave-month-navigation{margin-right:auto}.leave-month-navigation strong{min-width:105px}}.leave-control-layout{transition:grid-template-columns .18s}.leave-control-layout.employee-panel-collapsed{grid-template-columns:52px minmax(0,1fr)}.leave-employee-panel>header{justify-content:space-between;align-items:center;gap:8px;display:flex}.leave-employee-panel>header>button{border:1px solid var(--ui-border);width:30px;height:30px;color:var(--ui-text-muted);cursor:pointer;background:#fff;border-radius:6px;flex:none;place-items:center;padding:0;display:grid}.leave-employee-panel>header>button:hover{border-color:var(--ui-brand);color:var(--ui-brand)}.leave-employee-panel>header>button svg{width:15px}.leave-employee-expand{width:100%;height:100%;min-height:180px;color:var(--ui-brand);cursor:pointer;background:#fff;border:0;justify-content:center;align-items:center;gap:8px;padding:14px 0;display:flex}.leave-employee-expand svg{flex:none;width:18px}.leave-employee-expand span{letter-spacing:.04em;writing-mode:vertical-rl;font-size:11px;font-weight:800;transform:rotate(180deg)}.employee-panel-collapsed .leave-employee-panel{overflow:hidden}.employee-panel-collapsed .leave-control-detail{max-width:1370px}@media (max-width:760px){.leave-control-layout.employee-panel-collapsed{grid-template-columns:44px minmax(0,1fr);display:grid}.employee-panel-collapsed .leave-employee-panel{border-right:1px solid var(--ui-border);border-bottom:0;max-height:none}.leave-employee-expand{min-height:140px}.employee-panel-collapsed .leave-control-layout>main{min-width:0}}.leave-adjustment-shell{outline:0;align-items:stretch;gap:16px;width:min(790px,100vw - 36px);max-height:calc(100dvh - 48px);transition:width .18s;display:flex}.leave-adjustment-shell.calendar-open{width:min(1320px,100vw - 36px)}.leave-adjustment-shell .employee-leave-review-modal{flex:790px;min-width:0;max-height:calc(100dvh - 48px)}.employee-leave-review-header-actions{align-items:center;gap:7px;display:flex}.employee-leave-review-header-actions>button{border:1px solid var(--ui-border);min-height:36px;color:var(--ui-text);background:#fff;border-radius:7px;justify-content:center;align-items:center;gap:6px;padding:0 10px;font-size:11px;font-weight:800;display:flex}.employee-leave-review-header-actions>button:last-child{background:var(--ui-surface-soft);border:0;width:36px;padding:0}.employee-leave-review-header-actions svg{width:15px}.leave-calendar-panel{background:#fff;border-radius:14px;flex-direction:column;flex:0 0 490px;min-width:0;max-height:calc(100dvh - 48px);display:flex;overflow:hidden;box-shadow:0 24px 90px #0003}.leave-calendar-panel>header{border-bottom:1px solid var(--ui-border);justify-content:space-between;align-items:center;padding:18px 19px;display:flex}.leave-calendar-panel h2{margin:0;font-size:20px}.leave-calendar-panel header p{color:var(--ui-text-muted);margin:4px 0 0;font-size:12px}.leave-calendar-panel header button{background:var(--ui-surface-soft);border:0;border-radius:7px;place-items:center;width:34px;height:34px;display:grid}.leave-calendar-panel header svg{width:16px}.leave-calendar-table{border:1px solid var(--ui-border);border-radius:9px;margin:14px;overflow:auto}.leave-calendar-row{border-bottom:1px solid #eee9e6;grid-template-columns:72px 58px minmax(84px,1fr) 42px minmax(120px,1.25fr);align-items:center;gap:7px;min-width:440px;min-height:43px;padding:6px 10px;font-size:11px;display:grid}.leave-calendar-row:last-child{border-bottom:0}.leave-calendar-head{z-index:1;min-height:36px;color:var(--ui-text-muted);text-transform:uppercase;letter-spacing:.035em;background:#f7f5f3;font-size:9px;position:sticky;top:0}.leave-calendar-status{color:#57534e;background:#f1f0ef;border-radius:99px;place-items:center;width:32px;min-height:25px;padding:0 5px;font-size:10px;font-weight:850;display:grid}.leave-calendar-status.status-present{color:#167345;background:#dcfce7}.leave-calendar-status.status-absent,.leave-calendar-status.status-absent-sandwich,.leave-calendar-status.status-unpaid-leave{color:#b42318;background:#fee2e2}.leave-calendar-status.status-half-day,.leave-calendar-status.status-short-leave{color:#9a5800;background:#fef3c7}.leave-calendar-status.status-holiday{color:#1d4ed8;background:#dbeafe}.leave-calendar-row>span:last-child{white-space:nowrap}.leave-calendar-loading{color:var(--ui-text-muted);text-align:center;padding:30px}@media (max-width:1050px){.leave-adjustment-shell.calendar-open{width:min(540px,100vw - 24px)}.leave-adjustment-shell.calendar-open .employee-leave-review-modal{display:none}.leave-calendar-panel{flex-basis:100%;max-height:88dvh}}.attendance-summary-visuals{grid-template-columns:1fr 1.25fr;gap:14px;margin:12px 0 18px;display:grid}.attendance-summary-visuals>article{border:1px solid var(--ui-border);background:linear-gradient(145deg,#fff,#faf8f6);border-radius:10px;justify-content:center;align-items:center;gap:22px;min-height:190px;padding:20px;display:flex}.attendance-donut,.leave-balance-visual{text-align:center;border-radius:50%;place-content:center;display:grid;position:relative}.attendance-donut{background:conic-gradient(#2f855a 0 calc(var(--present)/var(--total)*100%),#d97706 0 calc((var(--present) + var(--half))/var(--total)*100%),#c24135 0 calc((var(--present) + var(--half) + var(--absent))/var(--total)*100%),#ebe7e4 0);width:132px;height:132px}.attendance-donut:after,.leave-balance-visual:after{content:"";background:#fff;border-radius:50%;position:absolute;inset:13px}.attendance-donut span,.attendance-donut strong,.leave-balance-visual span,.leave-balance-visual strong{z-index:1;position:relative}.attendance-donut strong{font-size:27px}.attendance-donut span,.leave-balance-visual span{color:var(--ui-text-muted);font-size:11px}.chart-legend{gap:9px;display:grid}.chart-legend span{grid-template-columns:10px 1fr auto;align-items:center;gap:8px;min-width:130px;font-size:12px;display:grid}.chart-legend i{border-radius:50%;width:9px;height:9px}.chart-legend i.present{background:#2f855a}.chart-legend i.half{background:#d97706}.chart-legend i.absent{background:#c24135}.approval-progress{width:100%}.approval-progress strong{font-size:25px;display:block}.approval-progress>span{color:var(--ui-text-muted);font-size:12px}.approval-progress>div,.leave-usage-track{background:#ebe7e4;border-radius:99px;height:8px;margin:14px 0;overflow:hidden}.approval-progress i,.leave-usage-track i{border-radius:inherit;background:linear-gradient(90deg,#2f855a,#56a676);height:100%;display:block}.visual-stat-row{grid-template-columns:repeat(3,1fr);gap:8px;width:100%;display:grid}.visual-stat-row span{color:var(--ui-text-muted);background:#fff;border-radius:7px;padding:9px;font-size:11px}.visual-stat-row b{color:var(--ui-text);margin-top:4px;font-size:17px;display:block}.pending-indicator{color:#9a5800;align-items:center;gap:6px;display:flex!important}.pending-indicator i{background:#d97706;border-radius:50%;width:7px;height:7px}.all-approved-indicator{color:var(--ui-success);align-items:center;gap:8px;display:flex}.leave-balance-cards{grid-template-columns:1fr 1fr;gap:12px;display:grid}.leave-balance-cards>article{border:1px solid var(--ui-border);background:#fff;border-radius:10px;grid-template-columns:115px 1fr;align-items:center;gap:18px;padding:18px;display:grid}.leave-balance-visual{background:conic-gradient(var(--ui-brand) 0 var(--leave-percent),#ebe7e4 0);width:104px;height:104px}.leave-balance-visual strong{font-size:24px}.leave-balance-cards h3{margin:0 0 6px}.leave-balance-cards small{color:var(--ui-text-muted)}.leave-day-status{color:#b42318;background:#fdeaea;border-radius:99px;margin:5px 0;padding:3px 7px;font-size:11px;font-weight:800;display:inline-flex}.leave-day-status.status-half-day{color:#9a5800;background:#fff2d8}.selected-leave-day-status{border-left:4px solid var(--ui-brand);background:var(--ui-brand-soft);border-radius:7px;grid-template-columns:auto 1fr;align-items:center;gap:3px 10px;padding:12px 14px;display:grid}.selected-leave-day-status span{color:var(--ui-text-muted);text-transform:uppercase;font-size:11px;font-weight:800}.selected-leave-day-status strong{font-size:15px}.selected-leave-day-status small{color:var(--ui-text-muted);grid-column:1/-1}.audit-action-menu{position:relative}.audit-action-menu>summary{border:1px solid var(--ui-brand);background:var(--ui-brand);color:#fff;cursor:pointer;border-radius:6px;align-items:center;gap:6px;min-height:34px;padding:0 11px;font-size:12px;font-weight:800;list-style:none;display:flex}.audit-action-menu>summary::-webkit-details-marker{display:none}.audit-action-menu>summary svg{width:14px}.audit-action-menu[open]>summary svg{transform:rotate(180deg)}.audit-action-menu>div{z-index:20;border:1px solid var(--ui-border);background:#fff;border-radius:8px;min-width:220px;padding:6px;display:grid;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 10px 28px #1c191729}.audit-action-menu>div button{background:#fff;border:0;justify-content:flex-start}.audit-action-menu>div button:hover{background:var(--ui-brand-soft)}.audit-month-leave-panel{border:1px solid var(--ui-border);background:#fffaf7;border-radius:9px;margin:10px 14px;padding:12px}.audit-month-leave-panel>header{justify-content:space-between;align-items:center;display:flex}.audit-month-leave-panel>header h3,.audit-month-leave-panel>header p{margin:0}.audit-month-leave-panel>header p{color:var(--ui-text-muted);font-size:12px}.audit-month-leave-panel>header button{border:1px solid var(--ui-border);background:#fff;border-radius:6px;place-items:center;width:30px;height:30px;display:grid}.audit-month-leave-panel>header svg{width:15px}.leave-balance-summary{gap:7px;margin:10px 0;display:grid}.leave-balance-summary>section{border:1px solid var(--ui-border);background:#fff;border-radius:7px;grid-template-columns:48px repeat(4,minmax(64px,1fr));align-items:center;gap:7px;padding:8px 9px;display:grid}.leave-balance-summary>section>strong{color:var(--ui-brand);font-size:13px}.leave-balance-summary span{gap:2px;display:grid}.leave-balance-summary small{color:var(--ui-text-muted);text-transform:uppercase;letter-spacing:.03em;font-size:10px;font-weight:700}.leave-balance-summary b{font-size:14px}.leave-balance-summary .remaining{border-left:1px solid var(--ui-border);padding-left:8px}.leave-balance-summary .remaining b{color:var(--ui-success)}.leave-month-review>article{grid-template-columns:1fr minmax(230px,.8fr) 70px}.leave-month-review .attendance-leave-choice select{width:100%}@media (max-width:760px){.attendance-summary-visuals,.leave-balance-cards{grid-template-columns:1fr}.attendance-summary-visuals>article{min-height:160px}.leave-balance-cards>article{grid-template-columns:90px 1fr}.leave-balance-visual{width:82px;height:82px}.leave-balance-summary>section{grid-template-columns:42px repeat(2,1fr)}.leave-balance-summary .remaining{border-left:0;padding-left:0}.leave-month-review>article{grid-template-columns:1fr}.leave-month-review>article>strong{grid-column:auto}}.attendance-dashboard-page{width:min(1240px,100% - 48px);margin:0 auto;padding:30px 0 60px}.attendance-dashboard-heading{justify-content:space-between;align-items:end;gap:20px;margin-bottom:20px;display:flex}.attendance-dashboard-heading h1{letter-spacing:-.035em;margin:5px 0 4px;font-size:32px}.attendance-dashboard-heading>div>p:last-child{color:var(--ui-text-muted);margin:0;font-size:12px}.attendance-dashboard-heading>a{background:var(--ui-brand);color:#fff;border-radius:7px;align-items:center;gap:7px;min-height:38px;padding:0 12px;font-size:12px;font-weight:800;text-decoration:none;display:flex}.attendance-dashboard-heading>a svg,.attendance-dashboard-panel .section-kicker svg,.attendance-yesterday .section-kicker svg{width:15px}.attendance-live-kpis{grid-template-columns:repeat(5,1fr);gap:10px;display:grid}.attendance-live-kpis article{border:1px solid var(--ui-border);background:#fff;border-radius:10px;min-width:0;padding:16px;position:relative;overflow:hidden}.attendance-live-kpis article:before{content:"";background:#94a3b8;width:3px;position:absolute;inset:0 auto 0 0}.attendance-live-kpis article.good:before{background:#2f855a}.attendance-live-kpis article.attention:before{background:#d97706}.attendance-live-kpis article>span{color:#57534e;background:#f5f5f4;border-radius:7px;place-items:center;width:30px;height:30px;display:grid}.attendance-live-kpis article>span svg{width:16px}.attendance-live-kpis p{color:var(--ui-text-muted);margin:12px 0 5px;font-size:12px;font-weight:750}.attendance-live-kpis strong{font-size:27px;line-height:1;display:block}.attendance-live-kpis small{color:#78716c;margin-top:7px;font-size:11px;display:block}.attendance-dashboard-grid{grid-template-columns:1.1fr .9fr;gap:14px;margin-top:14px;display:grid}.attendance-dashboard-panel,.attendance-yesterday{border:1px solid var(--ui-border);background:#fff;border-radius:10px}.attendance-dashboard-panel{padding:17px}.attendance-dashboard-panel>header,.attendance-yesterday>header{justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.attendance-dashboard-panel h2,.attendance-yesterday h2{margin:5px 0 0;font-size:18px}.attendance-dashboard-panel>header>a,.attendance-dashboard-panel>header>span{color:var(--ui-text-muted);font-size:12px}.attendance-dashboard-panel>header>a{color:var(--ui-brand);font-weight:800;text-decoration:none}.attendance-mix-grid{grid-template-columns:repeat(3,1fr);gap:7px;margin-top:14px;display:grid}.attendance-mix-grid>div{background:#f7f5f3;border-radius:7px;padding:10px}.attendance-mix-grid span,.attendance-mix-grid strong{display:block}.attendance-mix-grid strong{font-size:18px}.attendance-mix-grid span{color:var(--ui-text-muted);margin-top:4px;font-size:11px}.attendance-mix-grid .mix-present{color:#267443;background:#edf8f0}.attendance-mix-grid .mix-absent{color:#b4233c;background:#fff1f2}.attendance-mix-grid .mix-notMarked{color:#9a5800;background:#fff8e8}.attendance-people-list{margin:12px 0 0;padding:0;list-style:none}.attendance-people-list li{border-top:1px solid #eee9e6;align-items:center;gap:9px;min-height:45px;padding:6px 2px;display:flex}.attendance-person-avatar{background:var(--ui-brand-soft);width:28px;height:28px;color:var(--ui-brand);border-radius:7px;flex:none;place-items:center;font-size:12px;font-weight:850;display:grid}.attendance-people-list small,.attendance-people-list strong{display:block}.attendance-people-list strong{font-size:12px}.attendance-people-list small{color:var(--ui-text-muted);margin-top:2px;font-size:11px}.attendance-clear{color:#166534;background:#f0fdf4;border-radius:8px;align-items:center;gap:10px;min-height:90px;margin-top:12px;padding:14px;display:flex}.attendance-clear>svg{flex:none;width:20px}.attendance-clear span,.attendance-clear strong{display:block}.attendance-clear span{margin-top:3px;font-size:11px}.attendance-yesterday{margin-top:14px;padding:18px}.attendance-yesterday>header{border-bottom:1px solid var(--ui-border);padding-bottom:14px}.attendance-yesterday>header>span{border-radius:99px;padding:5px 8px;font-size:11px;font-weight:800}.yesterday-open{color:#9a5800;background:#fff2d8}.yesterday-clear{color:#166534;background:#dcfce7}.yesterday-layout{grid-template-columns:minmax(360px,.85fr) 1.15fr;gap:24px;padding-top:14px;display:grid}.yesterday-stats{grid-template-columns:repeat(5,1fr);align-self:start;margin:0;display:grid}.yesterday-stats>div{text-align:center;border-left:1px solid var(--ui-border);padding:9px}.yesterday-stats>div:first-child{border-left:0}.yesterday-stats dt{color:var(--ui-text-muted);font-size:11px}.yesterday-stats dd{margin:7px 0 0;font-size:20px;font-weight:800}.yesterday-missing{border-left:1px solid var(--ui-border);padding-left:20px}.yesterday-missing h3{margin:0;font-size:13px}@media (max-width:1000px){.attendance-live-kpis{grid-template-columns:repeat(3,1fr)}.attendance-dashboard-grid,.yesterday-layout{grid-template-columns:1fr}.yesterday-missing{border-left:0;border-top:1px solid var(--ui-border);padding:14px 0 0}}@media (max-width:760px){.attendance-dashboard-page{width:calc(100% - 24px);padding:22px 0 34px}.attendance-dashboard-heading{align-items:flex-start}.attendance-dashboard-heading h1{font-size:27px}.attendance-dashboard-heading>a{padding:0 10px}.attendance-live-kpis{grid-template-columns:1fr 1fr}.attendance-live-kpis article{padding:13px}.attendance-live-kpis article:last-child{grid-column:1/-1}.attendance-mix-grid{grid-template-columns:1fr 1fr}.yesterday-stats{grid-template-columns:repeat(3,1fr);gap:8px}.yesterday-stats>div{background:#f7f5f3;border:0;border-radius:7px}.attendance-yesterday{padding:15px}}.attendance-live-kpis>button{border:1px solid var(--ui-border);min-width:0;color:inherit;text-align:left;cursor:pointer;background:#fff;border-radius:10px;padding:16px;transition:border-color .15s,box-shadow .15s,transform .15s;position:relative;overflow:hidden}.attendance-live-kpis>button:hover{box-shadow:var(--ui-shadow-sm);border-color:#cfc8c2;transform:translateY(-1px)}.attendance-live-kpis>button:before{content:"";background:#94a3b8;width:3px;position:absolute;inset:0 auto 0 0}.attendance-live-kpis>button.good:before{background:#2f855a}.attendance-live-kpis>button.attention:before{background:#d97706}.attendance-live-kpis>button>span{color:#57534e;background:#f5f5f4;border-radius:7px;place-items:center;width:30px;height:30px;display:grid}.attendance-live-kpis>button>span svg{width:16px}.attendance-live-kpis>button p{color:var(--ui-text-muted);margin:12px 0 5px;font-size:12px;font-weight:750}.attendance-live-kpis>button strong{font-size:27px;line-height:1;display:block}.attendance-live-kpis>button small{color:#78716c;margin-top:7px;font-size:11px;display:block}.attendance-live-kpis>button em{color:var(--ui-brand);opacity:0;font-size:10px;font-style:normal;font-weight:800;position:absolute;bottom:12px;right:12px}.attendance-live-kpis>button:focus-visible em,.attendance-live-kpis>button:hover em{opacity:1}.attendance-kpi-backdrop{z-index:120;background:#1c191799;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.attendance-kpi-dialog{background:#fff;border-radius:12px;flex-direction:column;width:min(620px,100%);max-height:min(720px,100dvh - 36px);display:flex;overflow:hidden;box-shadow:0 24px 70px #1c191744}.attendance-kpi-dialog>header{border-bottom:1px solid var(--ui-border);justify-content:space-between;align-items:center;padding:17px 19px;display:flex}.attendance-kpi-dialog>header span{color:var(--ui-text-muted);font-size:11px}.attendance-kpi-dialog h2{margin:3px 0 0;font-size:20px}.attendance-kpi-dialog>header button{color:#57534e;background:#f5f5f4;border:0;border-radius:7px;place-items:center;width:34px;height:34px;display:grid}.attendance-kpi-dialog>header button svg{width:17px}.attendance-kpi-dialog>ul{margin:0;padding:5px 19px;list-style:none;overflow:auto}.attendance-kpi-dialog>ul li{border-bottom:1px solid #eee9e6;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:58px;display:grid}.attendance-kpi-dialog>ul li>span:nth-child(2){min-width:0}.attendance-kpi-dialog>ul small,.attendance-kpi-dialog>ul strong{display:block}.attendance-kpi-dialog>ul strong{font-size:12px}.attendance-kpi-dialog>ul small{color:var(--ui-text-muted);margin-top:3px;font-size:11px}.attendance-kpi-dialog>ul b{color:#57534e;text-align:right;max-width:150px;font-size:11px}.attendance-kpi-dialog>footer{border-top:1px solid var(--ui-border);justify-content:flex-end;padding:12px 19px;display:flex}.attendance-kpi-dialog>footer a{background:var(--ui-brand);color:#fff;border-radius:7px;padding:9px 12px;font-size:12px;font-weight:800;text-decoration:none}.attendance-kpi-empty{text-align:center;color:var(--ui-success);justify-items:center;padding:48px 20px;display:grid}.attendance-kpi-empty svg{width:28px}.attendance-kpi-empty strong{margin-top:10px}.attendance-kpi-empty span{color:var(--ui-text-muted);margin-top:4px;font-size:12px}@media (max-width:760px){.attendance-live-kpis>button{padding:13px}.attendance-live-kpis>button:last-child{grid-column:1/-1}.attendance-live-kpis>button em{display:none}.attendance-kpi-backdrop{align-items:end;padding:0}.attendance-kpi-dialog{border-radius:16px 16px 0 0;max-height:82dvh}.attendance-kpi-dialog>ul li{grid-template-columns:30px minmax(0,1fr)}.attendance-kpi-dialog>ul b{text-align:left;grid-column:2;margin-top:-7px}}.attendance-action-message{color:#166534;background:0 0;width:fit-content;margin:0 18px 10px;padding:0;font-size:12px;display:inline-flex}.attendance-action-message.error,.attendance-data-error{color:#b42318;background:0 0}.attendance-data-error{border:0;width:fit-content;max-width:100%;margin:0 0 9px;padding:0;font-size:12px;display:inline-flex}.attendance-dashboard-heading>p{color:var(--ui-text-muted);margin:0;font-size:12px}.day-leave-control{gap:14px;padding:2px 0 4px;display:grid}.day-leave-control .leave-balance-cards>article{grid-template-columns:84px 1fr;padding:14px}.day-leave-control .leave-balance-visual{width:74px;height:74px}.day-leave-control .leave-balance-visual:after{inset:9px}.day-leave-control .leave-balance-visual strong{font-size:19px}.day-leave-control .leave-balance-line{padding:3px 0;font-size:11px}.day-leave-adjust-button{border:1px solid var(--ui-brand);background:var(--ui-brand);color:#fff;cursor:pointer;border-radius:7px;justify-self:end;align-items:center;gap:7px;min-height:38px;padding:0 14px;font-size:12px;font-weight:800;display:flex}.day-leave-adjust-button svg{width:15px}.day-leave-adjust-button:disabled{cursor:not-allowed;background:#d6d3d1;border-color:#d6d3d1}@media (max-width:760px){.day-leave-control .leave-balance-cards{grid-template-columns:1fr}.day-leave-adjust-button{justify-content:center;width:100%}}.month-close-issues>header{justify-content:space-between;align-items:center;gap:16px;display:flex}.month-close-issues a{color:var(--accent,#315ec9);text-underline-offset:3px;text-decoration:underline}.month-close-note{gap:8px;margin:16px 0;font-size:13px;font-weight:600;display:grid}.month-close-note textarea{resize:vertical;border:1px solid var(--border,#d9dfe8);background:var(--surface,#fff);width:100%;min-height:70px;color:inherit;font:inherit;border-radius:8px;padding:10px;font-weight:400}.audit-employee-month-control{border:1px solid var(--border,#d9dfe8);background:var(--surface,#fff);border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:12px 0;padding:14px 16px;display:flex}.audit-employee-month-control>div:first-child{flex:1;gap:5px;min-width:200px;display:grid}.audit-employee-month-control small{color:var(--muted,#64748b);line-height:1.5}.audit-employee-month-control>button{align-items:center;gap:7px;display:inline-flex}.audit-employee-month-control>button svg{width:16px;height:16px}.month-close-issues>header>button{border:1px solid var(--border,#d9dfe8);color:inherit;font:inherit;white-space:nowrap;background:0 0;border-radius:7px;align-items:center;gap:6px;padding:7px 10px;font-size:12px;display:inline-flex}.month-close-issues>header>button svg{width:15px;height:15px}.attendance-day-leave-summary{border:1px solid var(--border,#ddd);background:var(--surface,#fff);border-radius:12px;margin-top:18px;padding:18px}.attendance-day-leave-summary>header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.attendance-day-leave-summary h3{margin:0;font-size:15px}.day-adjustment-state{color:#27643e;background:#edf5ee;border-radius:999px;padding:5px 10px;font-size:12px}.day-adjustment-state.pending{color:#805414;background:#fff2d8}.attendance-day-leave-summary dl{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:16px 0;display:grid}.attendance-day-leave-summary dl>div{background:var(--ui-bg-subtle,#f7f7f7);border-radius:8px;padding:12px}.attendance-day-leave-summary dt{color:var(--muted,#666);font-size:12px}.attendance-day-leave-summary dd{margin:5px 0 0;font-size:20px;font-weight:650}.attendance-day-leave-summary dd small{margin-left:5px;font-size:11px;font-weight:400}.attendance-day-leave-summary p,.leave-frozen-note{color:var(--muted,#666);align-items:center;gap:6px;margin:0;font-size:12px;display:flex}@media (max-width:640px){.attendance-day-leave-summary dl{grid-template-columns:repeat(2,minmax(0,1fr))}}.month-close-v2{width:min(700px,100%);color:var(--ui-text);background:var(--ui-surface,#fff);border-radius:18px;flex-direction:column;display:flex;overflow:hidden}.month-close-v2>.close-header{border-bottom:1px solid var(--ui-border);align-items:flex-start;padding:26px 28px 23px}.month-close-v2 .close-header .eyebrow{letter-spacing:1.5px;color:var(--ui-text-muted);margin:0 0 9px;font-size:10px}.month-close-v2>.close-header h2{letter-spacing:-.7px;margin:0 0 5px;font-size:28px;font-weight:650;line-height:1.2}.month-close-v2>.close-header span{font-size:13px}.month-close-v2>.close-header .close-dismiss{color:var(--ui-text-muted);background:0 0;border-radius:8px}.month-close-v2 .close-dismiss:hover{background:var(--ui-bg-subtle,#f5f4f2)}.close-body{min-height:0;padding:24px 28px;overflow:auto}.close-status{align-items:flex-start;gap:14px;padding:0 0 22px;display:flex}.close-status-icon{border-radius:13px;flex:none;place-items:center;width:46px;height:46px;display:grid}.close-status.is-clear .close-status-icon{color:#36744d;background:#edf5ef}.close-status.is-pending .close-status-icon{color:#946724;background:#fbf2e2}.close-status h3{letter-spacing:-.2px;margin:0 0 6px;font-size:18px;font-weight:650}.close-status p{color:var(--ui-text-muted);max-width:470px;margin:0;font-size:13px;line-height:1.65}.close-counts{border-top:1px solid var(--ui-border);border-bottom:1px solid var(--ui-border);grid-template-columns:repeat(3,1fr);margin-bottom:23px;padding:19px 0;display:grid}.close-counts>div{border-left:1px solid var(--ui-border);gap:9px;padding:0 19px;display:grid}.close-counts>div:first-child{border-left:0;padding-left:0}.close-counts strong{letter-spacing:-.5px;font-size:26px;font-weight:600;line-height:1}.close-counts span{color:var(--ui-text-muted);align-items:center;gap:6px;font-size:11px;display:flex}.close-counts i{background:#b6b4af;border-radius:50%;flex:none;width:6px;height:6px}.close-counts i.ready{background:#4f8861}.close-counts i.attention{background:#bd8a3b}.close-checks>header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:9px;display:flex}.close-checks h3{color:var(--ui-text-muted);margin:0;font-size:12px;font-weight:650}.close-refresh{color:var(--ui-text-muted);cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;padding:6px;font-size:11px;display:flex}.close-check-row{border-bottom:1px solid var(--ui-border);color:inherit;align-items:center;gap:10px;padding:14px 0;text-decoration:none;display:flex}.close-check-row>div:not(.close-check-symbol){flex:1;min-width:0}.close-check-row strong{font-size:12px;font-weight:600;line-height:1.5}.close-check-row p{color:var(--ui-text-muted);margin:3px 0 0;font-size:11px;line-height:1.6}.close-check-symbol{color:#ab7a34;flex:none;place-items:center;display:grid}.close-issue-link:hover{background:var(--ui-bg-subtle,#faf9f7)}.close-issue-link>svg{color:var(--ui-text-muted);flex:none}.close-issue-count{white-space:nowrap;color:var(--ui-text-muted);background:#f4f2ee;border-radius:5px;padding:4px 7px;font-size:10px}.close-check-passed{border-bottom:0;padding-top:8px}.close-check-passed>svg{color:#4f8861;flex:none}.close-audit-link{color:var(--ui-brand);justify-content:space-between;align-items:center;gap:12px;padding:15px 0;font-size:12px;font-weight:550;text-decoration:none;display:flex}.close-audit-link:hover span{text-underline-offset:3px;text-decoration:underline}.close-note{margin:6px 0 18px;font-size:12px}.close-note summary{cursor:pointer;color:var(--ui-text-muted);padding:7px 0;list-style-position:inside}.close-note summary>span{color:var(--ui-text-muted);margin-left:7px;font-size:10px}.close-note textarea,.close-reopen textarea{resize:vertical;border:1px solid var(--ui-border);width:100%;min-height:76px;font:inherit;color:var(--ui-text);background:#fff;border-radius:8px;margin-top:9px;padding:10px;line-height:1.5;display:block}.close-note small,.close-reopen>small{color:var(--ui-text-muted);margin-top:6px;font-size:11px;display:block}.close-confirmation{border:1px solid var(--ui-border);background:var(--ui-bg-subtle,#faf9f7);cursor:pointer;border-radius:10px;align-items:flex-start;gap:10px;padding:16px;display:flex}.close-confirmation input{accent-color:var(--ui-brand);flex:none;width:16px;height:16px;margin:2px 0 0}.close-confirmation strong{font-size:12px;font-weight:600;display:block}.close-confirmation small{color:var(--ui-text-muted);margin-top:4px;font-size:11px;line-height:1.6;display:block}.close-receipt{background:var(--ui-bg-subtle,#faf9f7);border:1px solid var(--ui-border);border-radius:11px;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:7px;padding:19px;display:grid}.close-receipt>div{align-content:start;gap:10px;display:grid}.close-receipt>div+div{border-left:1px solid var(--ui-border);padding-left:22px}.close-receipt span{color:var(--ui-text-muted);font-size:11px}.close-receipt strong{font-size:23px;font-weight:600}.close-receipt small{color:var(--ui-text-muted);font-size:11px;font-weight:400}.close-receipt .close-receipt-date{padding-top:6px;font-size:14px;font-weight:550}.close-reopen{border:1px solid var(--ui-border);border-radius:10px;margin-top:12px;padding:16px}.close-reopen h3{margin:0 0 7px;font-size:14px}.close-reopen p{color:var(--ui-text-muted);margin:0 0 14px;font-size:12px;line-height:1.6}.close-reopen label{font-size:12px;font-weight:550}.month-close-v2>.close-footer{background:var(--ui-bg-subtle,#faf9f7);flex-shrink:0;align-items:center;gap:9px;padding:17px 28px}.close-empty button,.month-close-v2>.close-footer button{cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:7px;min-height:38px;padding:0 13px;font-size:12px;font-weight:600;display:inline-flex}.close-empty .close-secondary,.month-close-v2>.close-footer .close-secondary{border:1px solid var(--ui-border);color:var(--ui-text);background:#fff}.month-close-v2>.close-footer .close-primary{background:var(--ui-brand);border:1px solid var(--ui-brand);color:#fff}.month-close-v2>.close-footer .close-reopen-trigger{color:var(--ui-text-muted);background:0 0;border:0;margin-right:auto;padding-left:0;font-weight:450}.month-close-v2>.close-footer button:disabled{opacity:.45;cursor:not-allowed}.close-footer-hint{color:var(--ui-text-muted);align-items:center;gap:5px;margin-right:auto;font-size:10px;display:flex}.close-empty,.close-loading{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:210px;padding:35px 10px;display:flex}.close-loading>svg{color:var(--ui-brand);animation:close-spin 1.2s linear infinite}.close-loading strong{font-size:14px}.close-empty p,.close-explanation,.close-loading span{color:var(--ui-text-muted);font-size:12px;line-height:1.6}.close-empty h3{margin:0;font-size:16px}.close-empty p{margin:0}@keyframes close-spin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.close-loading>svg{animation:none}}@media (max-width:600px){.month-close-v2>.close-header{padding:22px 20px}.close-body{padding:20px}.month-close-v2>.close-footer{flex-wrap:wrap;padding:15px 20px}.close-footer-hint{display:none}.close-counts>div{padding:0 10px}.close-counts span{font-size:10px}.close-issue-count{display:none}.close-receipt{padding:14px}.close-receipt>div+div{padding-left:14px}.month-close-v2>.close-header h2{font-size:25px}}.attendance-sync-shortcut{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.attendance-view-toolbar .attendance-sync-shortcut-button{border:1px solid var(--ui-brand);background:var(--ui-brand-soft);min-height:36px;color:var(--ui-brand);white-space:nowrap;border-radius:8px;align-items:center;gap:7px;padding:7px 12px;font-size:13px;font-weight:700;display:inline-flex}.attendance-sync-shortcut-button svg{width:16px;height:16px}.attendance-sync-shortcut-button:disabled{opacity:.6;cursor:not-allowed}.attendance-sync-shortcut-details{color:var(--ui-text-muted);text-underline-offset:3px;font-size:12px;text-decoration:underline}.attendance-sync-spinning{animation:attendance-sync-spin 1s linear infinite}@keyframes attendance-sync-spin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.attendance-sync-spinning{animation:none}}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}