/*! tailwindcss v4.2.1 | 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-border-style:solid;--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:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,::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,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;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{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{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.fixed{position:fixed}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.isolate{isolation:isolate}.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}}.contents{display:contents}.flex{display:flex}.hidden{display:none}.table{display:table}.border{border-style:var(--tw-border-style);border-width:1px}.lowercase{text-transform:lowercase}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.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,)}}.auth-page{background:radial-gradient(ellipse at 25% 20%,var(--palette-e7f1e9),transparent 60%),var(--surface);flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:28px;display:flex}.auth-card{background:var(--card);border:1px solid var(--line);border-radius:20px;width:100%;max-width:420px;padding:38px;box-shadow:0 20px 60px #1e382709}.auth-brand{letter-spacing:-2px;margin-bottom:30px;font-size:36px;font-weight:750;line-height:1}.auth-brand span{color:var(--green)}.auth-card .eyebrow{color:var(--muted);letter-spacing:1.8px;margin-bottom:12px;font-size:9px}.auth-card h1{letter-spacing:-.8px;font-size:28px;font-weight:650}.auth-intro{color:var(--muted);margin-top:8px}.auth-form{gap:18px;margin-top:28px;display:grid}.auth-form label{gap:8px;font-size:12px;font-weight:550;display:grid}.auth-form input{width:100%}.auth-form .button{justify-content:center;width:100%;margin-top:4px}.auth-error{color:var(--text-a64441,var(--palette-a64441));background:var(--palette-fbefee);border-radius:8px;align-items:flex-start;gap:9px;padding:11px;font-size:12px;display:flex}.auth-error svg{flex-shrink:0}.auth-help{color:var(--muted);margin-top:25px;font-size:11px;line-height:1.7}.auth-help strong{color:var(--text-5b7164,var(--palette-5b7164));font-weight:550}.auth-footer{color:var(--muted);margin-top:24px;font-size:11px}@media (max-width:480px){.auth-page{padding:18px}.auth-card{padding:30px 24px}}:root{--green:var(--palette-247a5b);--green-dark:var(--palette-185840);--ink:var(--palette-202e2a);--muted:var(--palette-7d8983);--line:var(--palette-e8ece9);--surface:var(--palette-f7f9f7);--soft-green:var(--palette-e8f3ed);--amber:var(--palette-c18b3e);--rose:var(--palette-c26a68)}*{box-sizing:border-box}body{color:var(--ink);background:var(--surface);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px;line-height:1.5}button,input,select,textarea{font:inherit}a,button,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit;text-decoration:none}button,input,select{outline:none}a:focus-visible,button:focus-visible{outline:3px solid var(--palette-80baa1);outline-offset:3px}input:focus,select:focus{box-shadow:0 0 0 3px var(--palette-e8f3ed);border-color:var(--palette-79aa93)!important}h1,h2,h3,p{margin:0}button{background:0 0;border:0}input,select{border:1px solid var(--line);color:var(--ink);background:var(--card);border-radius:8px;min-width:0;padding:10px 12px}input[type=date],input[type=month],input[type=time]{font-variant-numeric:tabular-nums}input::placeholder{color:var(--text-a1aaa4,var(--palette-a1aaa4))}select{padding-right:30px}code{background:var(--palette-f0f3f0);border-radius:4px;padding:2px 4px;font-size:12px}.muted{color:var(--muted)}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-shell{min-height:100vh;display:flex}.sidebar{z-index:30;background:var(--card);border-right:1px solid var(--line);flex-direction:column;width:236px;padding:30px 18px 0;display:flex;position:fixed;inset:0 auto 0 0}.brand{align-items:center;gap:11px;margin-bottom:34px;padding:0 10px;display:flex}.brand-mark{background:var(--green);color:#fff;border-radius:13px;place-items:center;width:42px;height:43px;display:grid;box-shadow:0 4px 10px #247a5b20}.brand>span:last-child{letter-spacing:-1.4px;font-size:30px;font-weight:740;line-height:1.15}.brand-dot{color:var(--text-64a889,var(--palette-64a889))}.brand small{letter-spacing:1.45px;color:var(--muted);margin-top:7px;font-size:8px;font-weight:600;display:block}.workspace-select{border:1px solid var(--line);background:var(--palette-fafbf9);text-align:left;border-radius:10px;align-items:center;gap:10px;width:100%;margin-bottom:27px;padding:12px 10px;display:flex}.workspace-initial{background:var(--palette-e9ede5);width:31px;height:32px;color:var(--text-5e7565,var(--palette-5e7565));border-radius:7px;place-items:center;font-size:11px;font-weight:700;display:grid}.workspace-select>span:nth-child(2){flex:1;min-width:0}.workspace-select strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;display:block;overflow:hidden}.workspace-select small{color:var(--muted);margin-top:2px;font-size:10px;display:block}.workspace-select>svg{color:var(--text-91a097,var(--palette-91a097))}.nav-caption{letter-spacing:1.4px;color:var(--text-97a29b,var(--palette-97a29b));margin-bottom:10px;padding:0 15px;font-size:9px;font-weight:600}.nav-item{text-align:left;width:100%;color:var(--text-79857e,var(--palette-79857e));border-radius:8px;align-items:center;gap:12px;margin:4px 0;padding:12px 14px;font-size:13px;font-weight:500;transition:background .15s,color .15s;display:flex}.nav-item.selected{background:var(--soft-green);color:var(--green);font-weight:650}.nav-item:hover{background:var(--palette-f1f6f1);color:var(--green)}.nav-item small{background:var(--palette-eef1ef);color:var(--text-8a968e,var(--palette-8a968e));border-radius:5px;place-items:center;min-width:23px;height:20px;margin-left:auto;font-size:10px;display:grid}.nav-item.selected small{background:var(--palette-d7eadf);color:var(--green)}.sidebar-bottom{margin-top:auto;padding-top:25px}.mode-card{background:var(--palette-f4f7f2);border-radius:12px;margin-bottom:16px;padding:17px 16px}.mode-symbol{background:var(--card);border:1px solid var(--palette-e6ebe2);width:34px;height:34px;color:var(--text-6c8c75,var(--palette-6c8c75));border-radius:9px;place-items:center;margin-bottom:12px;display:grid}.mode-card strong{font-size:12px;font-weight:600}.mode-card p{color:var(--text-8c9a8e,var(--palette-8c9a8e));margin:6px 0 12px;font-size:11px;line-height:1.7}.mode-card button{color:var(--green);padding:0;font-size:11px;font-weight:600}.mode-card button,.sidebar-profile{align-items:center;gap:9px;display:flex}.sidebar-profile{border-top:1px solid var(--line);margin-top:16px;padding:18px 2px}.sidebar-profile>div{flex:1;min-width:0}.sidebar-profile strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;display:block;overflow:hidden}.sidebar-profile div>span{color:var(--muted);font-size:9px}.sidebar-profile .icon-button{width:26px;height:29px}.main-shell{flex-direction:column;flex:1;min-width:0;margin-left:236px;display:flex}.topbar{background:var(--card);border-bottom:1px solid var(--line);justify-content:space-between;height:77px;padding:0 36px}.breadcrumb,.topbar{align-items:center;display:flex}.breadcrumb{color:var(--text-98a29d,var(--palette-98a29d));gap:12px;font-size:12px}.breadcrumb strong{color:var(--text-48594d,var(--palette-48594d));font-weight:500}.topbar-right{gap:15px}.timezone-label,.topbar-right{align-items:center;display:flex}.timezone-label{color:var(--text-808e83,var(--palette-808e83));gap:6px;font-size:11px}.gmt{border:1px solid var(--line);border-radius:5px;margin-left:4px;padding:2px 5px;font-size:9px}.topbar-divider{background:var(--line);width:1px;height:24px}.menu-toggle{display:none!important}.main-content{flex:1;width:100%;max-width:1680px;margin:0 auto;padding:34px 36px 22px}.page-header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:29px;display:flex}.eyebrow{letter-spacing:1.6px;color:var(--text-8a9b8e,var(--palette-8a9b8e));margin-bottom:9px;font-size:9px;font-weight:650}.page-header h1{letter-spacing:-1px;font-size:28px;font-weight:620;line-height:1.25}.page-header p{color:var(--muted);margin-top:7px;font-size:12px}.page-actions{flex-shrink:0;gap:10px;display:flex}.button{white-space:nowrap;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:11px 15px;font-size:12px;font-weight:600;transition:background .18s,transform .18s;display:inline-flex}.button:hover:not(:disabled){transform:translateY(-1px)}.primary{background:var(--green);color:#fff;box-shadow:0 2px 3px #14453010}.primary:hover:not(:disabled){background:var(--green-dark)}.secondary{background:var(--card);border-color:var(--palette-dfe6e0);color:var(--text-54675a,var(--palette-54675a))}.secondary:hover:not(:disabled){background:var(--palette-f6f9f6)}.ghost{color:var(--green);background:0 0}.danger{background:var(--palette-b75954);color:#fff}.danger-outline{border-color:var(--palette-ead5d3);color:var(--text-b36662,var(--palette-b36662));background:var(--card)}.small-button{min-height:36px;padding:8px 12px;font-size:11px}.text-button{color:var(--green);gap:6px;padding:3px 0;font-size:11px;font-weight:600}.icon-button,.text-button{justify-content:center;align-items:center;display:inline-flex}.icon-button{color:var(--text-8c9a90,var(--palette-8c9a90));border-radius:7px;min-width:31px;height:31px;padding:5px}.icon-button:hover:not(:disabled){background:var(--palette-f1f5f1);color:var(--green)}.avatar{letter-spacing:.3px;border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;width:35px;height:35px;font-size:11px;font-weight:600;display:inline-flex}.avatar.small{border-radius:10px;width:32px;height:32px;font-size:10px}.mint{background:var(--palette-e1efe4);color:var(--text-6a8c6b,var(--palette-6a8c6b))}.peach{background:var(--palette-f6e7dc);color:var(--text-ac8065,var(--palette-ac8065))}.lavender{background:var(--palette-ece8f6);color:var(--text-9582b8,var(--palette-9582b8))}.blue{background:var(--palette-e5edf6);color:var(--text-7290b0,var(--palette-7290b0))}.section-toolbar{justify-content:space-between;align-items:center;margin:25px 0 16px;display:flex}.card-heading h2,.section-toolbar h2{letter-spacing:-.2px;font-size:14px;font-weight:620}.section-toolbar>div>.muted{margin-top:3px;font-size:10px;display:block}.date-control{border:1px solid var(--line);background:var(--card);color:var(--text-718576,var(--palette-718576));border-radius:8px;align-items:center;gap:9px;padding-left:11px;display:flex}.date-control input{background:0 0;border:0;width:128px;padding:9px 9px 9px 0;font-size:11px}.stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:22px;display:grid}.stat-card{background:var(--card);border:1px solid var(--line);border-radius:11px;padding:19px 20px}.stat-heading{color:var(--text-7a897f,var(--palette-7a897f));justify-content:space-between;align-items:center;gap:9px;min-height:26px;font-size:10px;display:flex}.stat-heading>svg{color:var(--text-9aaba0,var(--palette-9aaba0))}.stat-icon{border-radius:8px;place-items:center;width:31px;height:31px;display:grid}.stat-icon.neutral{background:var(--palette-f3f5f1);color:var(--text-8d9a84,var(--palette-8d9a84))}.stat-icon.green{background:var(--palette-eaf4ec);color:var(--text-609771,var(--palette-609771))}.stat-icon.amber{background:var(--palette-fdf5e8);color:var(--text-c89b59,var(--palette-c89b59))}.stat-icon.rose{background:var(--palette-fcf0ed);color:var(--text-c48c81,var(--palette-c48c81))}.stat-card>strong{letter-spacing:-1px;margin:10px 0 7px;font-size:33px;font-weight:620;line-height:1.45;display:block}.stat-card>strong>span{color:var(--text-9aaba0,var(--palette-9aaba0));letter-spacing:0;margin-left:8px;font-size:10px;font-weight:400}.stat-card>p{color:var(--text-9aa69d,var(--palette-9aa69d));align-items:center;gap:5px;font-size:9px;display:flex}.tiny-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px;display:inline-block}.green-dot{background:var(--palette-57a47c)}.amber-dot{background:var(--palette-d4ac68)}.rose-dot{background:var(--palette-c78380)}.neutral-dot{background:var(--palette-b7c5bb)}.card{background:var(--card);border:1px solid var(--line);border-radius:11px;overflow:hidden}.card-heading{justify-content:space-between;align-items:center;gap:10px;padding:21px 21px 14px;display:flex}.card-heading p{color:var(--text-9aa59d,var(--palette-9aa59d));margin-top:4px;font-size:10px}.soft-label{border:1px solid var(--line);color:var(--text-8b9b90,var(--palette-8b9b90));white-space:nowrap;border-radius:5px;padding:5px 8px;font-size:9px}.overview-middle{grid-template-columns:minmax(0,1fr) 285px;gap:20px;margin-bottom:22px;display:grid}.chart-legend{color:var(--text-96a497,var(--palette-96a497));align-items:center;gap:19px;padding:2px 21px 0;font-size:9px;display:flex}.chart-legend span{align-items:center;gap:6px;display:flex}.legend-square{border-radius:2px;width:7px;height:7px;display:inline-block}.bar-chart{justify-content:space-around;align-items:flex-end;gap:18px;height:210px;margin:13px 22px 10px;display:flex;position:relative}.chart-gridline{background:var(--palette-f0f3ef);pointer-events:none;height:1px;position:absolute;left:0;right:0}.chart-day{z-index:1;flex-direction:column;flex:1;justify-content:flex-end;align-items:center;max-width:46px;height:200px;display:flex;position:relative}.bar-total{color:var(--text-9aaca0,var(--palette-9aaca0));margin-bottom:7px;font-size:9px}.bar-stack{background:var(--palette-e8eee8);border-radius:5px 5px 2px 2px;flex-direction:column-reverse;width:100%;min-height:4px;display:flex;overflow:hidden}.bar-ontime{background:var(--palette-94bc9e);min-height:0}.bar-late{background:var(--palette-e1c597);min-height:0}.selected-day .bar-ontime{background:var(--palette-438662)}.selected-day .bar-total{color:var(--green);font-weight:600}.bar-label{color:var(--text-9aa89d,var(--palette-9aa89d));min-height:15px;margin-top:12px;font-size:9px}.selected-day .bar-label{color:var(--green);font-weight:600}.rate-ring{border-radius:50%;place-items:center;width:152px;height:152px;margin:9px auto 20px;padding:11px;display:grid;transform:rotate(0)}.rate-ring>div{background:var(--card);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;display:flex}.rate-ring strong{letter-spacing:-1px;font-size:34px;font-weight:600}.rate-ring strong>span{color:var(--text-84958a,var(--palette-84958a));letter-spacing:-.5px;font-size:17px}.rate-ring small{color:var(--text-9aaaa0,var(--palette-9aaaa0));margin-top:0;font-size:10px}.rate-breakdown{padding:0 24px 20px}.rate-breakdown>div{color:var(--text-93a098,var(--palette-93a098));justify-content:space-between;padding:5px 0;font-size:10px;display:flex}.rate-breakdown span{align-items:center;gap:7px;display:flex}.rate-breakdown strong{color:var(--text-5a7261,var(--palette-5a7261));font-weight:500}.overview-bottom{grid-template-columns:minmax(0,1fr) 285px;gap:20px;display:grid}.table-scroll{width:100%;overflow-x:auto}table{border-collapse:collapse;text-align:left;white-space:nowrap;width:100%}th{color:var(--text-8d9c91,var(--palette-8d9c91));background:var(--palette-fafcf9);border-top:1px solid var(--palette-f0f3ef);border-bottom:1px solid var(--line);padding:13px 20px;font-size:9px;font-weight:500}td{border-bottom:1px solid var(--palette-f0f3ef);vertical-align:middle;padding:15px 20px;font-size:11px}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:var(--palette-fdfefc)}.overview-bottom th{padding:12px 16px;font-size:8px}.overview-bottom td{padding:13px 16px;font-size:10px}.overview-bottom .person{gap:9px}.overview-bottom .avatar{border-radius:9px;width:30px;height:30px;font-size:9px}.person{align-items:center;gap:10px;display:flex}.person strong{text-overflow:ellipsis;max-width:200px;font-size:11px;font-weight:550;display:block;overflow:hidden}.person>div>span{color:var(--text-a4afa7,var(--palette-a4afa7));align-items:center;gap:6px;margin-top:3px;font-size:9px;display:flex}.person em{background:var(--palette-f1f5ee);color:var(--text-93a188,var(--palette-93a188));border-radius:3px;padding:0 4px;font-size:8px;font-style:normal}.time-value{color:var(--text-5c6a5f,var(--palette-5c6a5f))}.late-time,.time-value{font-variant-numeric:tabular-nums}.late-time{color:var(--text-b78a49,var(--palette-b78a49))}.late-note{color:var(--text-c9a66d,var(--palette-c9a66d));margin-top:2px;font-size:8px;display:block}.attention-value{color:var(--text-bd7470,var(--palette-bd7470))}.badge{background:var(--palette-f2f4f2);color:var(--text-8e9c92,var(--palette-8e9c92));white-space:nowrap;border-radius:5px;align-items:center;gap:5px;padding:4px 8px;font-size:9px;display:inline-flex}.badge>span{background:currentColor;border-radius:50%;width:4px;height:4px}.badge.active,.badge.present{background:var(--palette-eaf5ed);color:var(--text-6b9875,var(--palette-6b9875))}.badge.on-duty{background:var(--palette-edf5f1);color:var(--text-568973,var(--palette-568973))}.badge.late{background:var(--palette-fdf5e7);color:var(--text-bc965d,var(--palette-bc965d))}.badge.absent,.badge.missing-punch{background:var(--palette-fcf0ed);color:var(--text-c18279,var(--palette-c18279))}.badge.integration-pending{background:var(--palette-fbf4e9);color:var(--text-ba975b,var(--palette-ba975b))}.activity-list{padding:0 20px 6px}.activity-item{border-bottom:1px solid var(--palette-f0f3ef);align-items:flex-start;gap:10px;padding:14px 0;display:flex}.activity-item:last-child{border-bottom:0}.activity-icon{border-radius:9px;flex-shrink:0;place-items:center;width:30px;height:30px;display:grid}.activity-icon.in{color:var(--text-719c80,var(--palette-719c80));background:var(--palette-edf5ee)}.activity-icon.out{color:var(--text-9da88b,var(--palette-9da88b));background:var(--palette-f3f5ee)}.activity-item>div{flex:1;min-width:0}.activity-item strong{font-size:10px;font-weight:550}.activity-item p{color:var(--text-9fa99d,var(--palette-9fa99d));margin:3px 0 4px;font-size:9px}.activity-item p>span{font-size:8px}.activity-item small{color:var(--text-b4bdb4,var(--palette-b4bdb4));font-size:8px}.activity-item time{color:var(--text-819486,var(--palette-819486));font-variant-numeric:tabular-nums;padding-top:3px;font-size:9px}.footnote{color:var(--text-a5b1a7,var(--palette-a5b1a7));justify-content:center;gap:6px;margin-top:26px}.app-footer,.footnote{align-items:center;font-size:9px;display:flex}.app-footer{border-top:1px solid var(--palette-eaf0e7);width:100%;max-width:1680px;color:var(--text-99a69b,var(--palette-99a69b));justify-content:space-between;margin:0 auto;padding:18px 36px}.app-footer>span:first-child{font-size:15px;font-weight:600}.app-footer>span:first-child>span:last-child{margin-left:10px;font-size:9px;font-weight:400}.app-footer>span:last-child{align-items:center;gap:6px;display:flex}.sample-banner{background:var(--palette-eff4e8);border:1px solid var(--palette-e2ead8);color:var(--text-84936e,var(--palette-84936e));border-radius:8px;align-items:center;gap:9px;margin:-7px 0 21px;padding:11px 14px;font-size:10px;display:flex}.sample-banner>span{flex:1}.sample-banner button{color:var(--text-6d815b,var(--palette-6d815b));flex-shrink:0;align-items:center;gap:4px;padding:0;font-size:9px;font-weight:600;display:flex}.welcome-banner{border:1px solid var(--palette-dce9df);background:var(--palette-edf5ee);border-radius:13px;align-items:center;gap:21px;margin-bottom:29px;padding:24px 26px;display:flex}.welcome-icon{background:var(--palette-dfeddf);width:66px;height:66px;color:var(--text-79a184,var(--palette-79a184));border-radius:19px;flex-shrink:0;place-items:center;display:grid}.welcome-banner>div:nth-child(2){flex:1}.welcome-banner .eyebrow{color:var(--text-87a088,var(--palette-87a088));margin-bottom:5px;font-size:8px}.welcome-banner h2{letter-spacing:-.6px;font-size:21px;font-weight:600}.welcome-banner p{color:var(--text-8a9e8c,var(--palette-8a9e8c));max-width:400px;margin-top:6px;font-size:11px}.welcome-banner>div:last-child{flex-direction:column;gap:4px;display:flex}.welcome-banner .button{min-height:34px;padding:9px 12px;font-size:10px}.loading-state{min-height:500px;color:var(--text-89a18d,var(--palette-89a18d));flex-direction:column;justify-content:center;align-items:center;gap:15px;display:flex}.error-banner,.loading-state p{font-size:12px}.error-banner{background:var(--palette-fcf0ed);border:1px solid var(--palette-f0d9d2);color:var(--text-bb7c70,var(--palette-bb7c70));border-radius:8px;align-items:center;gap:10px;margin-bottom:20px;padding:15px;display:flex}.error-banner>span{flex:1}.mini-summary{color:var(--text-8b9c90,var(--palette-8b9c90));flex-wrap:wrap;gap:30px;margin:0 0 23px;font-size:11px;display:flex}.mini-summary>span{align-items:center;gap:7px;display:flex}.mini-summary strong{color:var(--text-536b5b,var(--palette-536b5b));font-weight:600}.table-toolbar{flex-wrap:wrap;align-items:center;gap:12px;padding:19px 20px;display:flex}.table-toolbar .search-field{flex:1;max-width:330px;margin-right:auto}.search-field{background:var(--palette-fafcf9);border:1px solid var(--line);color:var(--text-9ba89e,var(--palette-9ba89e));border-radius:8px;align-items:center;gap:9px;padding-left:11px;display:flex}.search-field input{background:0 0;width:100%;padding:9px 11px 9px 0;font-size:11px;box-shadow:none!important;border:0!important}.search-field:focus-within{border-color:var(--palette-9bbea4)}.table-toolbar select{padding:9px 27px 9px 12px;font-size:11px}.table-toolbar h2{margin-right:auto;font-size:14px;font-weight:600}.table-toolbar h2+.search-field{flex:initial;width:290px;margin-right:0}.table-footer{border-top:1px solid var(--line);color:var(--text-a0aca3,var(--palette-a0aca3));justify-content:space-between;align-items:center;gap:20px;padding:13px 20px;font-size:10px;display:flex}.table-empty{text-align:center;color:var(--text-a1afa4,var(--palette-a1afa4));padding:40px;font-size:12px}.info-note{color:var(--text-8c9c91,var(--palette-8c9c91));align-items:flex-start;gap:10px;padding:19px 3px;font-size:10px;line-height:1.8;display:flex}.info-note>svg{color:var(--text-94a997,var(--palette-94a997));flex-shrink:0;margin-top:1px}.info-note.compact{border:1px solid var(--palette-e6ede5);background:var(--palette-f6f9f4);border-radius:8px;margin:16px 0 0;padding:12px;font-size:11px}.info-note.compact p{line-height:1.65}.schedule-chip{background:var(--palette-f6f8f3);color:var(--text-8d9a82,var(--palette-8d9a82));border:1px solid var(--palette-edf1e8);border-radius:5px;align-items:center;gap:5px;padding:4px 7px;font-size:10px;display:inline-flex}.schedule-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.schedule-card{padding:24px}.schedule-card-top{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.schedule-icon{background:var(--palette-edf4eb);width:45px;height:45px;color:var(--text-87a485,var(--palette-87a485));border-radius:12px;place-items:center;display:grid}.schedule-card h2{font-size:16px;font-weight:600}.schedule-time{letter-spacing:-.7px;align-items:center;gap:12px;margin:15px 0 19px;font-size:24px;font-weight:550;display:flex}.schedule-time>span{color:var(--text-a6b2a8,var(--palette-a6b2a8));letter-spacing:0;font-size:11px;font-weight:400}.schedule-time>small{background:var(--palette-f3f5ed);color:var(--text-92a384,var(--palette-92a384));letter-spacing:0;border-radius:4px;padding:3px;font-size:8px}.weekday-row{gap:5px;margin-bottom:22px;display:flex}.weekday-row>span{background:var(--palette-f7f8f5);color:var(--text-bdc4b9,var(--palette-bdc4b9));border-radius:5px;flex:1;place-items:center;padding:7px 3px;font-size:9px;display:grid}.weekday-row>span.working{background:var(--palette-e8f1e6);color:var(--text-7d9879,var(--palette-7d9879))}.schedule-details{border-top:1px solid var(--line);padding-top:15px}.schedule-details>div{color:var(--text-9aa69b,var(--palette-9aa69b));justify-content:space-between;padding:5px 0;font-size:10px;display:flex}.schedule-details strong{color:var(--text-718675,var(--palette-718675));font-weight:500}.schedule-assigned{border-top:1px solid var(--line);color:var(--text-94a28f,var(--palette-94a28f));align-items:center;gap:7px;margin-top:16px;padding-top:16px;font-size:9px;display:flex}.report-banner{background:var(--palette-eaf2eb);border:1px solid var(--palette-dce8df);border-radius:11px;justify-content:space-between;align-items:center;gap:25px;margin-bottom:23px;padding:26px 29px;display:flex}.report-banner .eyebrow{color:var(--text-85a38c,var(--palette-85a38c));font-size:8px}.report-banner h2{letter-spacing:-.7px;font-size:23px;font-weight:600}.report-banner p{margin-top:7px;font-size:11px}.report-banner label,.report-banner p{color:var(--text-90a491,var(--palette-90a491))}.report-banner label{flex-direction:column;gap:6px;font-size:9px;display:flex}.report-banner input{border-color:var(--palette-d2e0d2);font-size:12px}.hours-stat{white-space:nowrap;padding-top:5px;letter-spacing:-.5px!important;font-size:26px!important}.device-hero{background:var(--palette-edf3ec);border:1px solid var(--palette-dfe9dc);border-radius:12px;align-items:center;gap:50px;margin-bottom:24px;padding:39px 46px;display:flex}.device-hero>div:last-child{max-width:560px}.device-hero .eyebrow{color:var(--text-88a483,var(--palette-88a483));font-size:9px}.device-hero h2{letter-spacing:-.8px;font-size:28px;font-weight:600;line-height:1.3}.device-hero p{color:var(--text-91a18b,var(--palette-91a18b));margin:15px 0 20px;font-size:12px;line-height:1.9}.device-illustration{background:radial-gradient(circle,var(--palette-dce7d8) 30%,transparent 66%);flex-shrink:0;place-items:center;width:240px;height:218px;display:grid;position:relative}.illustration-device{background:linear-gradient(150deg,var(--palette-476451),var(--palette-254232));width:124px;height:180px;box-shadow:9px 14px 0 var(--palette-d5e3d1),0 12px 25px #39583b16;border:4px solid var(--palette-5d7864);color:var(--text-a8c9a8,var(--palette-a8c9a8));border-radius:17px;flex-direction:column;align-items:center;gap:14px;padding:17px;display:flex;transform:rotate(-6deg)}.illustration-device>span{background:var(--palette-a7cbb1);border:4px solid var(--palette-1e3b2b);border-radius:6px;width:62px;height:28px}.illustration-device>div{background:var(--palette-3d6247);border-radius:4px;width:54px;height:9px;margin-top:0}.illustration-device>i{background:var(--palette-99ca9d);border-radius:8px;width:18px;height:4px;display:block}.illustration-chip{background:var(--card);border:1px solid var(--palette-e2ebde);color:var(--text-73916d,var(--palette-73916d));border-radius:8px;align-items:center;gap:6px;padding:9px 12px;font-size:10px;display:flex;position:absolute;bottom:9px;right:0;box-shadow:0 5px 17px #45634310}.count-label{color:var(--text-91a08c,var(--palette-91a08c));background:var(--palette-f3f6ef);border-radius:5px;padding:5px 9px;font-size:10px}.empty-state{text-align:center;flex-direction:column;align-items:center;padding:32px 20px 39px;display:flex}.empty-icon{background:var(--palette-f2f6ef);width:47px;height:47px;color:var(--text-9bb194,var(--palette-9bb194));border-radius:14px;place-items:center;margin-bottom:14px;display:grid}.empty-state h3{color:var(--text-70866f,var(--palette-70866f));font-size:14px;font-weight:600}.empty-state p{color:var(--text-a1af9b,var(--palette-a1af9b));max-width:390px;margin-top:6px;font-size:11px;line-height:1.8}.empty-state .text-button{margin-top:14px}.device-list{padding:0 21px 7px}.device-item{border-top:1px solid var(--line);align-items:center;gap:15px;padding:17px 0;display:flex}.device-item>div{flex:1}.device-item strong{font-size:12px;font-weight:600}.device-item p{color:var(--text-91a18b,var(--palette-91a18b));margin:4px 0;font-size:10px}.device-item small{color:var(--text-a9b5a1,var(--palette-a9b5a1));font-size:9px}.device-icon{background:var(--palette-f2f6ee);width:44px;height:48px;color:var(--text-8eaa86,var(--palette-8eaa86));border-radius:10px;place-items:center;display:grid}.integration-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:22px;display:grid}.integration-card{padding:22px}.integration-card>span{color:var(--text-9bb191,var(--palette-9bb191));letter-spacing:1px;border:1px solid var(--palette-e5eddf);border-radius:5px;padding:4px 7px;font-size:10px}.integration-card h3{margin:17px 0 7px;font-size:13px;font-weight:600}.integration-card p{color:var(--text-99a68f,var(--palette-99a68f));font-size:11px;line-height:1.9}.settings-grid{grid-template-columns:1fr 1fr;align-items:start;gap:22px;display:grid}.settings-card{padding:24px}.settings-card .card-heading{padding:0 0 24px}.settings-card .card-heading>svg{color:var(--text-90a78a,var(--palette-90a78a))}.settings-card form>label{color:var(--text-889e84,var(--palette-889e84));font-size:11px;display:block}.settings-card form>label input{width:100%;margin-top:7px;font-size:12px;display:block}.setting-static{color:var(--text-93a48c,var(--palette-93a48c));flex-direction:column;gap:6px;margin:25px 0;font-size:11px;display:flex}.setting-static strong{color:var(--text-617a5a,var(--palette-617a5a));font-weight:500}.setting-static small{color:var(--text-a1af98,var(--palette-a1af98));font-size:10px}.settings-copy{color:var(--text-93a38b,var(--palette-93a38b));margin-bottom:23px;font-size:11px;line-height:1.9}.sample-summary{color:var(--text-8a9e83,var(--palette-8a9e83));flex-direction:column;gap:5px;margin-bottom:20px;font-size:11px;display:flex}.sample-summary strong{color:var(--text-68875d,var(--palette-68875d));font-weight:500}.account-detail{align-items:center;gap:12px;margin-bottom:16px;display:flex}.account-detail strong{font-size:12px;font-weight:500}.account-detail p{color:var(--text-9eaf95,var(--palette-9eaf95));margin-top:4px;font-size:10px}.dialog{overscroll-behavior:contain;border:1px solid var(--palette-e2ebe0);width:540px;max-width:calc(100vw - 30px);color:var(--ink);background:var(--card);border-radius:16px;max-height:90vh;margin:auto;padding:0;position:fixed;inset:0;overflow-y:auto;box-shadow:0 20px 100px #11241630}.dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#1d32254d}.dialog-inner{padding:26px}.dialog header{justify-content:space-between;gap:12px;padding-bottom:24px;display:flex}.dialog h2{letter-spacing:-.5px;font-size:20px;font-weight:600}.dialog header p{color:var(--text-95a58c,var(--palette-95a58c));margin-top:6px;font-size:11px;line-height:1.7}.dialog form>label,.form-row>label{color:var(--text-7a9270,var(--palette-7a9270));margin-bottom:17px;font-size:11px;font-weight:500;display:block}.dialog label input,.dialog label select{width:100%;color:var(--text-3e5637,var(--palette-3e5637));margin-top:6px;padding:10px 12px;font-size:12px;display:block}.dialog label small{color:var(--text-a3b198,var(--palette-a3b198));margin-top:5px;font-size:9px;font-weight:400;line-height:1.6;display:block}.optional{color:var(--text-b0bba7,var(--palette-b0bba7));margin-left:6px;font-size:9px;font-weight:400}.form-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.form-help{color:var(--text-a3b294,var(--palette-a3b294));margin:-7px 0 18px;font-size:10px;display:block}.dialog fieldset{border:0;margin:0 0 18px;padding:0}.dialog legend{color:var(--text-7a9270,var(--palette-7a9270));margin-bottom:9px;font-size:11px;font-weight:500}.day-selector{gap:7px;display:flex}.day-selector button{border:1px solid var(--palette-e4ebdc);background:var(--palette-f8faf4);color:var(--text-a2b091,var(--palette-a2b091));border-radius:7px;flex:1;padding:10px 0;font-size:10px}.day-selector button.chosen{background:var(--palette-e4efdf);border-color:var(--palette-c3d8b8);color:var(--text-648854,var(--palette-648854));font-weight:600}.dialog-actions{border-top:1px solid var(--line);justify-content:flex-end;gap:10px;margin-top:23px;padding-top:20px;display:flex}.error-box{background:var(--palette-fcf0ed);border:1px solid var(--palette-efd6cf);color:var(--text-bb786b,var(--palette-bb786b));border-radius:7px;align-items:flex-start;gap:8px;margin:14px 0;padding:12px;font-size:11px;line-height:1.7;display:flex}.error-box>svg{flex-shrink:0;margin-top:2px}.error-box p+p{margin-top:5px}.detail-person{align-items:center;margin-bottom:19px}.detail-person,.detail-summary{justify-content:space-between;display:flex}.detail-summary{background:var(--palette-f5f8f0);color:var(--text-99aa8a,var(--palette-99aa8a));border-radius:8px;margin-bottom:18px;padding:12px;font-size:10px}.detail-summary strong{color:var(--text-7d9a6a,var(--palette-7d9a6a));font-weight:500}.punch-list>div{border-bottom:1px solid var(--palette-eef2e8);align-items:center;gap:12px;padding:14px 0;display:flex}.punch-list>div:last-child{border-bottom:0}.punch-list>div>div{flex:1}.punch-list strong{font-size:13px;font-weight:500}.punch-list small{color:var(--text-a2b193,var(--palette-a2b193));white-space:normal;word-break:break-word;max-width:280px;margin-top:3px;font-size:9px;display:block}.punch-event{background:var(--palette-f0f6ea);color:var(--text-829f6e,var(--palette-829f6e));border-radius:6px;align-items:center;gap:4px;min-width:56px;padding:6px;font-size:9px;display:flex}.punch-event.out{background:var(--palette-f6f5e8);color:var(--text-ada06d,var(--palette-ada06d))}.confirm-note{background:var(--palette-fbf5ee);color:var(--text-b09876,var(--palette-b09876));border-radius:9px;align-items:center;gap:12px;padding:16px;font-size:11px;display:flex}.confirm-note>svg{flex-shrink:0}.upload-area{border:1px dashed var(--palette-c8daba);background:var(--palette-f5f9ef);border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:9px;padding:23px 16px;color:var(--text-8eac75,var(--palette-8eac75))!important;display:flex!important}.upload-area strong{text-overflow:ellipsis;max-width:100%;font-size:12px;font-weight:500;overflow:hidden}.upload-area span{color:var(--text-afbc9c,var(--palette-afbc9c));font-size:9px}.upload-area input{max-width:270px;color:var(--text-819966,var(--palette-819966))!important;padding:7px!important;font-size:10px!important}.csv-template{margin:4px auto 13px;font-size:10px;display:flex}.import-preview{border:1px solid var(--line);border-radius:8px;margin-top:18px;overflow:hidden}.import-preview h3{color:var(--text-7f996a,var(--palette-7f996a));padding:12px;font-size:11px;font-weight:500}.import-preview td,.import-preview th{padding:10px 12px;font-size:9px}.import-preview>small{color:var(--text-a6b399,var(--palette-a6b399));padding:10px;font-size:9px;display:block}.toast{z-index:100;background:var(--palette-244830);color:var(--text-d8ebd8,var(--palette-d8ebd8));border-radius:10px;align-items:center;gap:10px;min-width:240px;max-width:calc(100vw - 35px);padding:12px 13px;font-size:12px;display:flex;position:fixed;bottom:26px;left:calc(50% + 110px);transform:translate(-50%);box-shadow:0 7px 28px #1f352a20}.toast>svg{color:var(--text-95c08b,var(--palette-95c08b));flex-shrink:0}.toast>span{flex:1}.toast .icon-button{color:var(--text-a7c7a2,var(--palette-a7c7a2))}.spin{animation:spin 1.1s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.mobile-backdrop{display:none}@media (min-width:1500px){.main-content{padding-left:50px;padding-right:50px}.overview-bottom,.overview-middle{grid-template-columns:minmax(0,1fr) 340px}.rate-ring{width:164px;height:164px;margin-top:7px}.stat-card{padding:22px}.bar-chart{gap:24px;margin-left:33px;margin-right:33px}.chart-day{max-width:58px}.overview-bottom td{padding:16px 22px}}@media (max-width:1250px){.sidebar{width:213px;padding-left:14px;padding-right:14px}.main-shell{margin-left:213px}.main-content{padding:30px 24px 20px}.topbar{padding:0 24px}.overview-bottom,.overview-middle{grid-template-columns:minmax(0,1fr) 260px;gap:16px}.stat-grid{gap:12px}.stat-card{padding:16px 14px}.stat-heading{font-size:9px}.stat-card p{font-size:8px}.overview-bottom td,.overview-bottom th{padding:12px 11px}.overview-bottom .person strong{font-size:10px}.overview-bottom .person span{font-size:8px}.card-heading{padding-left:17px;padding-right:17px}.schedule-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.device-hero{gap:25px;padding:30px}.device-illustration{width:190px}.page-header h1{font-size:26px}.welcome-banner{gap:15px;padding:21px}.welcome-icon{display:none}.toast{left:calc(50% + 100px)}}@media (max-width:1050px){.sidebar{width:198px}.brand{gap:9px;padding:0 7px}.brand small{letter-spacing:1px;font-size:7px}.main-shell{margin-left:198px}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-card p{font-size:9px}.overview-bottom{grid-template-columns:1fr}.overview-middle{grid-template-columns:minmax(0,1fr) 245px}.activity-list{grid-template-columns:1fr 1fr;gap:0 25px;display:grid}.page-header{align-items:flex-start}.page-actions{gap:7px}.page-actions .button{padding:10px 11px;font-size:10px}.settings-grid{grid-template-columns:1fr}.integration-grid{gap:12px}.integration-card{padding:17px}.integration-card h3{font-size:12px}.device-hero h2{font-size:25px}.device-hero p{font-size:11px}.hours-stat{font-size:28px!important}.sample-banner{flex-wrap:wrap}.sample-banner button{margin-left:auto}.welcome-banner{align-items:flex-start}.welcome-banner>div:last-child{flex-shrink:0}.chart-legend{gap:12px;font-size:8px}.soft-label{font-size:8px}.table-toolbar{padding:16px}.table-toolbar .search-field{min-width:170px;max-width:100%}.table-toolbar select{max-width:170px}.activity-list .empty-state{grid-column:1/-1}.device-item{flex-wrap:wrap}}@media (max-width:800px){.sidebar{width:236px;transition:transform .2s;transform:translate(-100%)}.sidebar.open{transform:translate(0)}.main-shell{margin-left:0}.menu-toggle{display:inline-flex!important}.topbar{height:66px;padding:0 20px}.breadcrumb{gap:9px}.gmt{display:none}.topbar-right{gap:10px}.timezone-label{font-size:10px}.main-content{padding:27px 20px 20px}.page-header h1{font-size:25px}.page-header .eyebrow{font-size:8px}.app-footer{padding:18px 20px}.mobile-backdrop{z-index:29;background:#1e382744;display:block;position:fixed;inset:0}.toast{left:50%}.device-hero{gap:25px;padding:27px}.device-illustration{width:170px}.table-toolbar{gap:9px}.stat-card{padding:18px}.stat-heading{font-size:10px}.report-banner h2{font-size:21px}.welcome-banner h2{font-size:20px}}@media (max-width:560px){.topbar{padding:0 15px}.topbar-right>.timezone-label{display:none}.main-content{padding:23px 15px 15px}.page-header{flex-direction:column;gap:16px;margin-bottom:25px}.page-header h1{font-size:25px}.page-header p{font-size:11px}.page-actions{width:100%}.page-actions .button{padding:10px 13px;font-size:11px}.page-actions .button.primary{margin-left:auto}.stat-grid{gap:10px;margin-bottom:17px}.stat-card{padding:15px}.stat-card>strong{margin-top:5px;font-size:29px}.stat-icon{width:26px;height:26px}.stat-heading{gap:4px;font-size:9px}.stat-card p{font-size:8px}.stat-card>strong>span{margin-left:5px;font-size:8px}.overview-middle{grid-template-columns:1fr}.rate-card{display:none}.overview-bottom{gap:17px}.bar-chart{gap:14px;height:195px;margin-left:18px;margin-right:18px}.chart-day{max-width:38px;height:190px}.soft-label{text-overflow:ellipsis;max-width:135px;font-size:8px;overflow:hidden}.card-heading{padding:18px 16px 13px}.section-toolbar h2{font-size:13px}.section-toolbar .muted{font-size:9px}.date-control input{width:121px;font-size:10px}.date-control{gap:7px}.section-toolbar{gap:10px}.activity-list{display:block}.sample-banner{align-items:flex-start;gap:7px;padding:10px;font-size:9px}.sample-banner>span{flex-basis:80%}.sample-banner button{font-size:8px}.welcome-banner{flex-direction:column;gap:15px;padding:21px}.welcome-banner p{font-size:11px}.welcome-banner>div:last-child{flex-flow:wrap;gap:5px}.welcome-banner .button{font-size:9px}.table-toolbar{padding:14px}.table-toolbar .search-field{flex-basis:100%;width:100%;max-width:100%;margin-right:0}.table-toolbar select{flex:1;max-width:100%}.table-toolbar .date-control{flex:1}.mini-summary{gap:15px;margin-bottom:18px;font-size:10px}.table-footer{flex-direction:column;align-items:flex-start;gap:7px}.schedule-grid{grid-template-columns:1fr}.schedule-card{padding:23px}.report-banner{flex-direction:column;align-items:flex-start;gap:18px;padding:21px}.report-banner h2{font-size:22px}.report-banner input,.report-banner label{width:100%}.hours-stat{font-size:25px!important}.device-hero{flex-direction:column;align-items:flex-start;gap:8px;padding:25px}.device-illustration{align-self:center;width:220px;height:190px;margin-top:-8px}.illustration-device{gap:10px;width:110px;height:155px}.illustration-device>svg{width:42px;height:42px}.illustration-chip{bottom:0}.device-hero h2{font-size:26px}.device-hero .eyebrow{font-size:8px}.device-hero p{font-size:11px}.integration-grid{grid-template-columns:1fr}.integration-card{padding:20px}.device-item{gap:11px}.device-item>div{flex-basis:calc(100% - 60px)}.device-item .badge{margin-left:55px}.device-item>.icon-button{margin-left:auto}.settings-card{padding:21px}.dialog-inner{padding:22px 19px}.dialog h2{font-size:19px}.form-row{gap:11px}.day-selector{gap:5px}.day-selector button{padding:9px 0;font-size:9px}.dialog-actions .button{font-size:11px}.detail-summary{flex-direction:column;gap:5px}.detail-person{flex-wrap:wrap;gap:8px}.toast{width:calc(100% - 35px);min-width:0;font-size:11px;bottom:20px}.app-footer{padding:16px}.app-footer>span:first-child>span:last-child{display:none}.footnote{padding:0 12px;font-size:8px}.info-note{gap:8px;font-size:9px}.overview-bottom .badge{font-size:8px}.dialog .upload-area input{font-size:9px!important}.dialog .import-preview td{font-size:8px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}:root{color-scheme:light;--card:#fff;--palette-185840:#185840;--palette-1e3b2b:#1e3b2b;--palette-202e2a:#202e2a;--palette-244830:#244830;--palette-247a5b:#247a5b;--palette-254232:#254232;--palette-3d6247:#3d6247;--palette-3e5637:#3e5637;--palette-438662:#438662;--palette-476451:#476451;--palette-48594d:#48594d;--palette-536b5b:#536b5b;--palette-54675a:#54675a;--palette-568973:#568973;--palette-57a47c:#57a47c;--palette-5a7261:#5a7261;--palette-5b7164:#5b7164;--palette-5c6a5f:#5c6a5f;--palette-5d7864:#5d7864;--palette-5e7565:#5e7565;--palette-609771:#609771;--palette-617a5a:#617a5a;--palette-648854:#648854;--palette-64a889:#64a889;--palette-68875d:#68875d;--palette-6a8c6b:#6a8c6b;--palette-6b9875:#6b9875;--palette-6c8c75:#6c8c75;--palette-6d815b:#6d815b;--palette-70866f:#70866f;--palette-718576:#718576;--palette-718675:#718675;--palette-719c80:#719c80;--palette-7290b0:#7290b0;--palette-73916d:#73916d;--palette-79857e:#79857e;--palette-79a184:#79a184;--palette-79aa93:#79aa93;--palette-7a897f:#7a897f;--palette-7a9270:#7a9270;--palette-7d8983:#7d8983;--palette-7d9879:#7d9879;--palette-7d9a6a:#7d9a6a;--palette-7f996a:#7f996a;--palette-808e83:#808e83;--palette-80baa1:#80baa1;--palette-819486:#819486;--palette-819966:#819966;--palette-829f6e:#829f6e;--palette-84936e:#84936e;--palette-84958a:#84958a;--palette-85a38c:#85a38c;--palette-87a088:#87a088;--palette-87a485:#87a485;--palette-889e84:#889e84;--palette-88a483:#88a483;--palette-89a18d:#89a18d;--palette-8a968e:#8a968e;--palette-8a9b8e:#8a9b8e;--palette-8a9e83:#8a9e83;--palette-8a9e8c:#8a9e8c;--palette-8b9b90:#8b9b90;--palette-8b9c90:#8b9c90;--palette-8c9a8e:#8c9a8e;--palette-8c9a90:#8c9a90;--palette-8c9c91:#8c9c91;--palette-8d9a82:#8d9a82;--palette-8d9a84:#8d9a84;--palette-8d9c91:#8d9c91;--palette-8e9c92:#8e9c92;--palette-8eaa86:#8eaa86;--palette-8eac75:#8eac75;--palette-90a491:#90a491;--palette-90a78a:#90a78a;--palette-91a08c:#91a08c;--palette-91a097:#91a097;--palette-91a18b:#91a18b;--palette-92a384:#92a384;--palette-93a098:#93a098;--palette-93a188:#93a188;--palette-93a38b:#93a38b;--palette-93a48c:#93a48c;--palette-94a28f:#94a28f;--palette-94a997:#94a997;--palette-94bc9e:#94bc9e;--palette-9582b8:#9582b8;--palette-95a58c:#95a58c;--palette-95c08b:#95c08b;--palette-96a497:#96a497;--palette-97a29b:#97a29b;--palette-98a29d:#98a29d;--palette-99a68f:#99a68f;--palette-99a69b:#99a69b;--palette-99aa8a:#99aa8a;--palette-99ca9d:#99ca9d;--palette-9aa59d:#9aa59d;--palette-9aa69b:#9aa69b;--palette-9aa69d:#9aa69d;--palette-9aa89d:#9aa89d;--palette-9aaaa0:#9aaaa0;--palette-9aaba0:#9aaba0;--palette-9aaca0:#9aaca0;--palette-9ba89e:#9ba89e;--palette-9bb191:#9bb191;--palette-9bb194:#9bb194;--palette-9bbea4:#9bbea4;--palette-9da88b:#9da88b;--palette-9eaf95:#9eaf95;--palette-9fa99d:#9fa99d;--palette-a0aca3:#a0aca3;--palette-a1aaa4:#a1aaa4;--palette-a1af98:#a1af98;--palette-a1af9b:#a1af9b;--palette-a1afa4:#a1afa4;--palette-a2b091:#a2b091;--palette-a2b193:#a2b193;--palette-a3b198:#a3b198;--palette-a3b294:#a3b294;--palette-a4afa7:#a4afa7;--palette-a5b1a7:#a5b1a7;--palette-a64441:#a64441;--palette-a6b2a8:#a6b2a8;--palette-a6b399:#a6b399;--palette-a7c7a2:#a7c7a2;--palette-a7cbb1:#a7cbb1;--palette-a8c9a8:#a8c9a8;--palette-a9b5a1:#a9b5a1;--palette-ac8065:#ac8065;--palette-ada06d:#ada06d;--palette-afbc9c:#afbc9c;--palette-b09876:#b09876;--palette-b0bba7:#b0bba7;--palette-b36662:#b36662;--palette-b4bdb4:#b4bdb4;--palette-b75954:#b75954;--palette-b78a49:#b78a49;--palette-b7c5bb:#b7c5bb;--palette-ba975b:#ba975b;--palette-bb786b:#bb786b;--palette-bb7c70:#bb7c70;--palette-bc965d:#bc965d;--palette-bd7470:#bd7470;--palette-bdc4b9:#bdc4b9;--palette-c18279:#c18279;--palette-c18b3e:#c18b3e;--palette-c26a68:#c26a68;--palette-c3d8b8:#c3d8b8;--palette-c48c81:#c48c81;--palette-c78380:#c78380;--palette-c89b59:#c89b59;--palette-c8daba:#c8daba;--palette-c9a66d:#c9a66d;--palette-d2e0d2:#d2e0d2;--palette-d4ac68:#d4ac68;--palette-d5e3d1:#d5e3d1;--palette-d7eadf:#d7eadf;--palette-d8ebd8:#d8ebd8;--palette-dce7d8:#dce7d8;--palette-dce8df:#dce8df;--palette-dce9df:#dce9df;--palette-dfe6e0:#dfe6e0;--palette-dfe9dc:#dfe9dc;--palette-dfeddf:#dfeddf;--palette-e1c597:#e1c597;--palette-e1efe4:#e1efe4;--palette-e2ead8:#e2ead8;--palette-e2ebde:#e2ebde;--palette-e2ebe0:#e2ebe0;--palette-e4ebdc:#e4ebdc;--palette-e4efdf:#e4efdf;--palette-e5eddf:#e5eddf;--palette-e5edf6:#e5edf6;--palette-e6ebe2:#e6ebe2;--palette-e6ede5:#e6ede5;--palette-e7f1e9:#e7f1e9;--palette-e8ece9:#e8ece9;--palette-e8eee8:#e8eee8;--palette-e8f1e6:#e8f1e6;--palette-e8f3ed:#e8f3ed;--palette-e9ede5:#e9ede5;--palette-ead5d3:#ead5d3;--palette-eaf0e7:#eaf0e7;--palette-eaf2eb:#eaf2eb;--palette-eaf4ec:#eaf4ec;--palette-eaf5ed:#eaf5ed;--palette-ece8f6:#ece8f6;--palette-edf1e8:#edf1e8;--palette-edf3ec:#edf3ec;--palette-edf4eb:#edf4eb;--palette-edf5ee:#edf5ee;--palette-edf5f1:#edf5f1;--palette-eef1ef:#eef1ef;--palette-eef2e8:#eef2e8;--palette-efd6cf:#efd6cf;--palette-eff4e8:#eff4e8;--palette-f0d9d2:#f0d9d2;--palette-f0f3ef:#f0f3ef;--palette-f0f3f0:#f0f3f0;--palette-f0f6ea:#f0f6ea;--palette-f1f5ee:#f1f5ee;--palette-f1f5f1:#f1f5f1;--palette-f1f6f1:#f1f6f1;--palette-f2f4f2:#f2f4f2;--palette-f2f6ee:#f2f6ee;--palette-f2f6ef:#f2f6ef;--palette-f3f5ed:#f3f5ed;--palette-f3f5ee:#f3f5ee;--palette-f3f5f1:#f3f5f1;--palette-f3f6ef:#f3f6ef;--palette-f4f7f2:#f4f7f2;--palette-f5f8f0:#f5f8f0;--palette-f5f9ef:#f5f9ef;--palette-f6e7dc:#f6e7dc;--palette-f6f5e8:#f6f5e8;--palette-f6f8f3:#f6f8f3;--palette-f6f9f4:#f6f9f4;--palette-f6f9f6:#f6f9f6;--palette-f7f8f5:#f7f8f5;--palette-f7f9f7:#f7f9f7;--palette-f8faf4:#f8faf4;--palette-fafbf9:#fafbf9;--palette-fafcf9:#fafcf9;--palette-fbefee:#fbefee;--palette-fbf4e9:#fbf4e9;--palette-fbf5ee:#fbf5ee;--palette-fcf0ed:#fcf0ed;--palette-fdf5e7:#fdf5e7;--palette-fdf5e8:#fdf5e8;--palette-fdfefc:#fdfefc}:root[data-theme=dark]{color-scheme:dark;--card:#1b2723;--palette-185840:#97d8c0;--palette-1e3b2b:#a0cfb5;--palette-202e2a:#abc4bd;--palette-244830:#a0cfb0;--palette-247a5b:#97d8c1;--palette-254232:#a3ccb6;--palette-3d6247:#a7c8b0;--palette-3e5637:#afc7a8;--palette-438662:#88c4a4;--palette-476451:#abc4b4;--palette-48594d:#b0bfb4;--palette-536b5b:#afc1b5;--palette-54675a:#b0bfb5;--palette-568973:#91baa9;--palette-57a47c:#8ac1a5;--palette-5a7261:#9bb0a1;--palette-5b7164:#9cafa4;--palette-5c6a5f:#9faca2;--palette-5d7864:#9ab1a0;--palette-5e7565:#9cafa2;--palette-609771:#92ba9e;--palette-617a5a:#9eb398;--palette-648854:#9ebb91;--palette-64a889:#8dbfa8;--palette-68875d:#9eb695;--palette-6a8c6b:#99b29a;--palette-6b9875:#96b69d;--palette-6c8c75:#9ab1a1;--palette-6d815b:#a5b596;--palette-70866f:#9eae9d;--palette-718576:#9eada2;--palette-718675:#9eada1;--palette-719c80:#96b6a1;--palette-7290b0:#8da5bf;--palette-73916d:#9db299;--palette-79857e:#a2aaa5;--palette-79a184:#96b59f;--palette-79aa93:#92baa7;--palette-7a897f:#a0aba4;--palette-7a9270:#a1b29a;--palette-7d8983:#a1aaa6;--palette-7d9879:#9db19a;--palette-7d9a6a:#a2b795;--palette-7f996a:#a4b695;--palette-808e83:#a1aba3;--palette-80baa1:#8bc0a9;--palette-819486:#9eada2;--palette-819966:#a7b894;--palette-829f6e:#a2b894;--palette-84936e:#a8b399;--palette-84958a:#9faca4;--palette-85a38c:#99b29f;--palette-87a088:#9bb09c;--palette-87a485:#9ab399;--palette-889e84:#9eb09b;--palette-88a483:#9cb398;--palette-89a18d:#9cb09f;--palette-8a968e:#a1aba4;--palette-8a9b8e:#9fada2;--palette-8a9e83:#a0b19b;--palette-8a9e8c:#9dae9f;--palette-8b9b90:#9faca3;--palette-8b9c90:#9fada3;--palette-8c9a8e:#a0aca2;--palette-8c9a90:#a0aca3;--palette-8c9c91:#9faca3;--palette-8d9a82:#a5af9c;--palette-8d9a84:#a4af9d;--palette-8d9c91:#9faca3;--palette-8e9c92:#a0aca3;--palette-8eaa86:#9db596;--palette-8eac75:#a4bc90;--palette-90a491:#9daf9e;--palette-90a78a:#9eb299;--palette-91a08c:#a2ae9d;--palette-91a097:#9faca4;--palette-91a18b:#a2af9c;--palette-92a384:#a5b399;--palette-93a098:#a0aba4;--palette-93a188:#a4b09b;--palette-93a38b:#a2b09b;--palette-93a48c:#a1b09b;--palette-94a28f:#a2ae9d;--palette-94a997:#9caf9f;--palette-94bc9e:#91ba9b;--palette-9582b8:#9e8dbe;--palette-95a58c:#a3b19b;--palette-95c08b:#95c08b;--palette-96a497:#9faca0;--palette-97a29b:#a1aba4;--palette-98a29d:#a1aaa6;--palette-99a68f:#a4b09c;--palette-99a69b:#a0aca2;--palette-99aa8a:#a5b498;--palette-99ca9d:#8ac28e;--palette-9aa59d:#a1aba3;--palette-9aa69b:#a0aba1;--palette-9aa69d:#a0aba3;--palette-9aa89d:#9faca2;--palette-9aaaa0:#9eada4;--palette-9aaba0:#9eaea3;--palette-9aaca0:#9daea3;--palette-9ba89e:#a0aca2;--palette-9bb191:#a0b597;--palette-9bb194:#9fb498;--palette-9bbea4:#93b99d;--palette-9da88b:#a9b399;--palette-9eaf95:#a2b299;--palette-9fa99d:#a2aca0;--palette-a0aca3:#a0aca3;--palette-a1aaa4:#a1aaa4;--palette-a1af98:#a3b19b;--palette-a1af9b:#a2b09c;--palette-a1afa4:#9fada2;--palette-a2b091:#a7b497;--palette-a2b193:#a6b497;--palette-a3b198:#a4b299;--palette-a3b294:#a6b497;--palette-a4afa7:#a0aba3;--palette-a5b1a7:#9faca2;--palette-a64441:#cd817f;--palette-a6b2a8:#9faca1;--palette-a6b399:#a6b399;--palette-a7c7a2:#96bc90;--palette-a7cbb1:#8fbd9c;--palette-a8c9a8:#91bb91;--palette-a9b5a1:#a4b09b;--palette-ac8065:#c09f8b;--palette-ada06d:#bfb58d;--palette-afbc9c:#a9b795;--palette-b09876:#beaa8e;--palette-b0bba7:#a5b19a;--palette-b36662:#c58a87;--palette-b4bdb4:#a0aba0;--palette-b75954:#ca8581;--palette-b78a49:#ccad7f;--palette-b7c5bb:#9cafa2;--palette-ba975b:#caaf81;--palette-bb786b:#c78f85;--palette-bb7c70:#c59086;--palette-bc965d:#cbad81;--palette-bd7470:#c78885;--palette-bdc4b9:#a4ad9e;--palette-c18279:#c78d85;--palette-c18b3e:#cead7e;--palette-c26a68:#cc8280;--palette-c3d8b8:#374e2b;--palette-c48c81:#c69085;--palette-c78380:#c88683;--palette-c89b59:#cead7e;--palette-c8daba:#394e2a;--palette-c9a66d:#ceaf7e;--palette-d2e0d2:#2b3f2b;--palette-d4ac68:#ceb07e;--palette-d5e3d1:#2d4128;--palette-d7eadf:#22412f;--palette-d8ebd8:#214121;--palette-dce7d8:#2c3e26;--palette-dce8df:#273b2c;--palette-dce9df:#253c2b;--palette-dfe6e0:#2b362c;--palette-dfe9dc:#2b3c25;--palette-dfeddf:#223c22;--palette-e1c597:#ceb07e;--palette-e1efe4:#203c26;--palette-e2ead8:#334022;--palette-e2ebde:#2b3b24;--palette-e2ebe0:#293925;--palette-e4ebdc:#313d23;--palette-e4efdf:#293e1f;--palette-e5eddf:#2d3c22;--palette-e5edf6:#182a3f;--palette-e6ebe2:#2e3726;--palette-e6ede5:#273625;--palette-e7f1e9:#213825;--palette-e8ece9:#29312b;--palette-e8eee8:#263326;--palette-e8f1e6:#243920;--palette-e8f3ed:#1e392a;--palette-e9ede5:#2e3625;--palette-ead5d3:#442421;--palette-eaf0e7:#293722;--palette-eaf2eb:#213624;--palette-eaf4ec:#1d3823;--palette-eaf5ed:#1c3a24;--palette-ece8f6:#23183e;--palette-edf1e8:#2d3721;--palette-edf3ec:#243421;--palette-edf4eb:#24371e;--palette-edf5ee:#1e3621;--palette-edf5f1:#1e362a;--palette-eef1ef:#272f29;--palette-eef2e8:#2e3820;--palette-efd6cf:#49251c;--palette-eff4e8:#2e3b1c;--palette-f0d9d2:#47251b;--palette-f0f3ef:#273024;--palette-f0f3f0:#252e25;--palette-f0f6ea:#2a3b19;--palette-f1f5ee:#28351f;--palette-f1f5f1:#223022;--palette-f1f6f1:#203220;--palette-f2f4f2:#262d26;--palette-f2f6ee:#2a361d;--palette-f2f6ef:#28351e;--palette-f3f5ed:#30361e;--palette-f3f5ee:#2e351f;--palette-f3f5f1:#293022;--palette-f3f6ef:#2b351e;--palette-f4f7f2:#27321f;--palette-f5f8f0:#2c371a;--palette-f5f9ef:#2c3b16;--palette-f6e7dc:#422a19;--palette-f6f5e8:#3e3b18;--palette-f6f8f3:#2a321d;--palette-f6f9f4:#25331c;--palette-f6f9f6:#1f2f1f;--palette-f7f8f5:#2a2e21;--palette-f7f9f7:#212c21;--palette-f8faf4:#2c3619;--palette-fafbf9:#262e1e;--palette-fafcf9:#223219;--palette-fbefee:#3b1916;--palette-fbf4e9:#3c2e17;--palette-fbf5ee:#3b2a16;--palette-fcf0ed:#3b1e16;--palette-fdf5e7:#3c2f17;--palette-fdf5e8:#3c2e17;--palette-fdfefc:#253514;--green:#55b78d;--green-dark:#32825f;--ink:#e6eee9;--muted:#a1b3a9;--line:#33443b;--surface:#111b17;--soft-green:#203b2f}:root[data-theme=dark] .primary{color:#fff;background:#287657}:root[data-theme=dark] .primary:hover:not(:disabled){background:#205f46}:root[data-theme=dark] .brand-mark{background:#287657}:root[data-theme=dark] .danger{background:#a54440}:root[data-theme=dark] .auth-page{background:radial-gradient(ellipse at 25% 20%,#21382b,transparent 60%),var(--surface)}.theme-toggle{border:1px solid var(--line);background:var(--card);color:var(--ink);white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;gap:7px;min-height:36px;padding:8px 10px;font-size:11px;display:inline-flex}.theme-toggle:hover{background:var(--soft-green)}.auth-theme{position:absolute;right:20px}@media (max-width:600px){.theme-toggle-label{display:none}.theme-toggle{padding:8px}.topbar-right{gap:8px}}.kiosk-screen{background:var(--surface);flex-direction:column;min-height:100vh;padding:28px 36px;display:flex}.kiosk-header{justify-content:space-between;align-items:center;gap:20px;width:100%;max-width:1200px;margin:0 auto 24px;display:flex}.kiosk-header .auth-brand{margin:0;font-size:30px}.kiosk-header>div:last-child{align-items:center;gap:16px;display:flex}.kiosk-workspace{color:var(--muted);font-size:12px}.kiosk-card{background:var(--card);border:1px solid var(--line);border-radius:22px;width:100%;max-width:480px;margin:auto;padding:30px;box-shadow:0 16px 60px #10231910}.kiosk-clock{text-align:center;border-bottom:1px solid var(--line);margin-bottom:24px;padding-bottom:21px}.kiosk-clock>span{color:var(--muted);justify-content:center;align-items:center;gap:7px;font-size:11px;display:flex}.kiosk-clock>strong{letter-spacing:-2px;font-variant-numeric:tabular-nums;font-size:48px;font-weight:650;line-height:1.3;display:block}.kiosk-clock p{color:var(--muted);font-size:12px}.kiosk-heading{text-align:center;margin-bottom:23px}.kiosk-heading h1,.kiosk-state h1{letter-spacing:-.7px;font-size:26px;font-weight:650}.kiosk-heading p{color:var(--muted);margin-top:7px;font-size:12px}.kiosk-form,.kiosk-pin-form{gap:16px;display:grid}.kiosk-form label,.kiosk-pin-form label{gap:7px;font-size:12px;font-weight:550;display:grid}.kiosk-form input,.kiosk-form select{width:100%;min-height:48px}.kiosk-form input{text-align:center;letter-spacing:6px;font-size:20px}.kiosk-form input::placeholder{letter-spacing:0;font-size:13px}.kiosk-keypad{grid-template-columns:repeat(3,1fr);gap:9px;display:grid}.kiosk-keypad button{border:1px solid var(--line);background:var(--surface);min-height:54px;color:var(--ink);font-variant-numeric:tabular-nums;border-radius:10px;justify-content:center;align-items:center;font-size:22px;display:flex}.kiosk-keypad button:hover:not(:disabled){background:var(--soft-green);border-color:var(--green)}.kiosk-keypad button:nth-child(10){font-size:12px}.kiosk-hint{color:var(--muted);font-size:11px;line-height:1.7}.kiosk-submit{width:100%;min-height:50px;font-size:14px}.kiosk-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:220px;padding:18px 0;display:flex}.kiosk-state>svg{color:var(--green)}.kiosk-state>p{color:var(--muted);font-size:13px;line-height:1.7}.kiosk-success>strong{font-size:18px}.kiosk-footer,.kiosk-success>span{color:var(--muted);font-size:11px}.kiosk-footer{width:100%;max-width:1200px;justify-content:space-between;gap:16px;margin:24px auto 0;display:flex}.kiosk-footer a:hover{color:var(--green)}.kiosk-settings .settings-copy{line-height:1.8}.kiosk-settings .info-note{margin:20px 0}.kiosk-pin-form input,.kiosk-pin-form select{width:100%}.kiosk-pin-form .form-row{margin-bottom:0}.kiosk-admin-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.kiosk-settings>div[role]{grid-column:1/-1}.kiosk-settings .kiosk-admin-actions{margin-top:10px}@media (max-width:600px){.kiosk-screen{padding:18px 14px}.kiosk-header{margin-bottom:18px}.kiosk-workspace{display:none}.kiosk-card{padding:25px 22px}.kiosk-clock>strong{font-size:43px}.kiosk-keypad button{min-height:50px}.kiosk-pin-form .form-row{grid-template-columns:1fr}}.face-settings{grid-column:1/-1}.face-employee-label{gap:8px;max-width:480px;margin-top:20px;font-size:12px;font-weight:550;display:grid}.face-consent{align-items:center;gap:10px;margin:18px 0;font-size:12px;line-height:1.7;display:flex}.face-consent input{width:18px;height:18px;accent-color:var(--green)}.face-capture{gap:13px;max-width:520px;margin-top:16px;display:grid}.face-preview{aspect-ratio:4/3;border:1px solid var(--line);background:#17231d;border-radius:14px;position:relative;overflow:hidden}.face-preview video{object-fit:cover;width:100%;height:100%;transform:scaleX(-1)}.face-guide{pointer-events:none;border:2px solid #78bf9c;border-radius:48%;position:absolute;inset:12% 24%}.face-camera-placeholder{color:#a7b9ad;background:#17231d;flex-direction:column;justify-content:center;align-items:center;gap:10px;display:flex;position:absolute;inset:0}.face-camera-placeholder span{font-size:12px}.face-instruction{color:var(--ink);text-align:center;justify-content:center;align-items:center;min-height:40px;font-size:13px;font-weight:550;display:flex}.face-capture>label{gap:7px;font-size:12px;display:grid}.face-capture .kiosk-admin-actions{justify-content:center}.kiosk-methods{border:1px solid var(--line);background:var(--surface);border-radius:10px;gap:8px;padding:5px;display:flex}.kiosk-methods button{color:var(--muted);border-radius:7px;flex:1;padding:10px;font-size:12px;font-weight:600}.kiosk-methods button[aria-pressed=true]{background:var(--soft-green);color:var(--green)}.kiosk-form .face-capture{margin-top:0}:root[data-appearance] .brand-mark,:root[data-appearance] .primary{background:var(--appearance-accent);color:var(--appearance-action-ink)}:root[data-appearance] .primary:hover:not(:disabled){background:var(--appearance-action-hover)}:root[data-appearance] .auth-page{background:radial-gradient(ellipse at 25% 20%,var(--soft-green),transparent 60%),var(--surface)}.appearance-settings{grid-column:1/-1;padding:28px;overflow:visible}.appearance-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;display:flex}.appearance-heading h2{letter-spacing:-.7px;margin:9px 0 7px;font-size:24px;font-weight:650;line-height:1.25}.appearance-heading p{color:var(--muted);font-size:12px}.appearance-eyebrow{color:var(--green);letter-spacing:1.3px;align-items:center;gap:7px;font-size:9px;font-weight:650;display:flex}.appearance-section-title{margin-bottom:13px;font-size:12px;font-weight:650}.appearance-mode-row{border:1px solid var(--line);border-radius:14px;justify-content:space-between;align-items:center;gap:22px;margin-bottom:16px;padding:18px 20px;display:flex}.appearance-row-label strong{color:var(--ink);font-size:13px;font-weight:600;display:block}.appearance-row-label p,.appearance-row-label>span{color:var(--muted);margin-top:4px;font-size:11px;font-weight:400;display:block}.appearance-modes{grid-template-columns:repeat(3,96px);gap:13px;display:grid}.appearance-mode{text-align:center;color:var(--muted);border-radius:10px;padding:0}.appearance-miniature{width:100%;height:65px;box-shadow:0 0 0 1px var(--line);background:#f5f5f6;border:2px solid #0000;border-radius:9px;gap:5px;padding:7px;transition:border-color .15s,box-shadow .15s;display:flex;position:relative;overflow:hidden}.appearance-mode:hover:not(:disabled) .appearance-miniature{box-shadow:0 0 0 2px var(--muted)}.appearance-mode.is-selected .appearance-miniature{border-color:var(--appearance-accent);box-shadow:0 0 0 2px var(--soft-green)}.appearance-mode.is-selected .appearance-mode-label{color:var(--green);font-weight:650}.miniature-sidebar{background:#e4e5e8;border-radius:3px;flex-direction:column;gap:4px;width:20%;padding:5px 3px;display:flex}.miniature-sidebar i{background:#b8bbc1;border-radius:4px;height:2px;display:block}.miniature-content{background:#fff;border-radius:4px;flex-direction:column;flex:1;align-items:flex-start;gap:5px;padding:7px 6px;display:flex}.miniature-content>i{background:#dfe1e6;border-radius:4px;width:70%;height:2px}.miniature-content>i:first-child{background:var(--appearance-accent);width:82%}.miniature-content>span{background:#f1f2f5;border-radius:3px;width:100%;height:10px;margin-top:1px}.miniature-content>i:last-child{background:var(--appearance-accent);align-self:flex-end;width:40%}.miniature-dark{background:#27282d}.miniature-dark .miniature-sidebar{background:#34353c}.miniature-dark .miniature-content{background:#1c1d22}.miniature-dark .miniature-content>i{background:#5e616b}.miniature-dark .miniature-content>i:first-child,.miniature-dark .miniature-content>i:last-child{background:var(--appearance-accent)}.miniature-dark .miniature-content>span{background:#35363e}.miniature-system{background:linear-gradient(90deg,#f5f5f6 50%,#27282d 0)}.miniature-system .miniature-content{background:linear-gradient(90deg,#fff 43%,#1c1d22 0)}.miniature-system .miniature-content>span{background:linear-gradient(90deg,#f1f2f5 43%,#35363e 0)}.appearance-mode-check{background:var(--appearance-accent);width:15px;height:15px;color:var(--appearance-action-ink);border-radius:50%;place-items:center;display:grid;position:absolute;bottom:4px;right:4px}.appearance-mode-label{justify-content:center;align-items:center;gap:5px;margin-top:10px;font-size:11px;display:flex}.appearance-controls{border:1px solid var(--line);border-radius:14px;padding:0 20px}.appearance-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;min-height:75px;padding:13px 0;display:flex}.appearance-row:last-child{border-bottom:0}.appearance-row select{background-color:var(--surface);border-radius:9px;min-width:180px;font-size:12px}.appearance-color-choice{align-items:center;gap:9px;display:flex}.appearance-accent-picker{border:1px solid var(--line);background:var(--surface);border-radius:9px;justify-content:center;align-items:center;width:37px;height:37px;display:flex;overflow:hidden}.appearance-settings input[type=color]{cursor:pointer;width:25px;min-width:25px;height:25px;box-shadow:none;background:0 0;border:0;border-radius:50%;padding:0;overflow:hidden}.appearance-settings input[type=color]::-webkit-color-swatch-wrapper{padding:2px}.appearance-settings input[type=color]::-webkit-color-swatch{border:1px solid var(--line);border-radius:50%}.appearance-settings input[type=color]::-moz-color-swatch{border:1px solid var(--line);border-radius:50%}.appearance-color-field{border:1px solid var(--line);background:var(--surface);border-radius:20px;align-items:center;gap:7px;min-height:36px;padding:5px 10px;display:flex}.appearance-color-field input:not([type=color]){text-transform:uppercase;width:83px;box-shadow:none;background:0 0;border:0;border-radius:4px;padding:2px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12px}.appearance-color-field:focus-within{outline:2px solid var(--green);outline-offset:2px}.appearance-color-actions{justify-content:space-between;align-items:center;gap:20px;margin:15px 1px 22px;display:flex}.appearance-color-actions p{color:var(--muted);max-width:390px;font-size:10px;line-height:1.7}.appearance-color-actions>div{flex-shrink:0;align-items:center;gap:15px;display:flex}.appearance-live-preview{border:1px solid var(--line);border-radius:12px;justify-content:space-between;align-items:center;gap:20px;min-height:110px;padding:22px;display:flex}.appearance-preview-label{letter-spacing:1.5px;opacity:.72;margin-bottom:7px;font-size:8px;display:block}.appearance-live-preview strong{letter-spacing:-.35px;font-size:17px;font-weight:600;display:block}.appearance-live-preview p{opacity:.75;margin-top:5px;font-size:11px}.appearance-preview-action{white-space:nowrap;border-radius:8px;align-items:center;gap:6px;padding:9px 13px;font-size:11px;font-weight:600;display:flex}.appearance-save-note{color:var(--muted);margin:17px 1px 0;font-size:10px;line-height:1.6}.appearance-save-note.save-unavailable{color:var(--amber)}@media (max-width:720px){.appearance-settings{padding:22px}.appearance-heading{flex-wrap:wrap;align-items:flex-start}.appearance-mode-row{flex-direction:column;align-items:flex-start;padding:18px}.appearance-modes{grid-template-columns:repeat(3,minmax(0,1fr));width:100%;max-width:370px}.appearance-controls{padding:0 17px}.appearance-row-label>span{max-width:200px}.appearance-color-actions{flex-direction:column;align-items:flex-start;gap:12px}.appearance-color-actions>div{align-self:flex-end}.appearance-live-preview{padding:18px}}@media (max-width:480px){.appearance-settings{padding:18px}.appearance-heading h2{font-size:22px}.appearance-row{flex-wrap:wrap;gap:12px;min-height:83px}.appearance-row-label{flex:1;min-width:95px}.appearance-row-label>span{font-size:10px}.appearance-row select{min-width:120px;max-width:145px}.appearance-color-choice{gap:6px}.appearance-color-choice select{width:112px;min-width:110px}.appearance-live-preview{flex-direction:column;align-items:flex-start;gap:15px}.appearance-preview-action{align-self:flex-start}}.auth-link{color:var(--green);text-underline-offset:3px;font-weight:600;text-decoration:underline}.account-card{max-width:580px}.account-notice{border:1px solid var(--line);background:var(--soft-green);color:var(--ink);border-radius:10px;align-items:flex-start;gap:10px;margin:0 0 22px;padding:13px 14px;font-size:12px;line-height:1.7;display:flex}.account-notice>svg{color:var(--green);flex-shrink:0;margin-top:2px}.account-fields{border:0;gap:18px;min-width:0;margin:0;padding:0;display:grid}.account-fields:disabled{opacity:.6}.account-fields small,.account-hint{color:var(--muted);font-size:11px;font-weight:400;line-height:1.6}.account-fields small{margin-top:1px}.account-passwords{grid-template-columns:1fr 1fr;gap:14px;min-width:0;display:grid}.account-passwords label{min-width:0}.account-hint{margin-top:-10px}.account-authorization{border-top:1px solid var(--line);padding-top:18px}.account-back{align-items:center;gap:6px;margin-top:20px;font-size:12px;display:inline-flex}.account-success{gap:16px;font-size:13px;line-height:1.8;display:grid}.account-success>svg{color:var(--green)}.account-success h2{letter-spacing:-.5px;font-size:23px;font-weight:650}.account-success p{color:var(--muted)}.account-success p strong{color:var(--ink)}.account-success .button{margin-top:8px}.account-actions{flex-wrap:wrap;gap:10px;display:flex}@media (max-width:520px){.account-passwords{grid-template-columns:1fr}.account-card{padding:28px 23px}.account-notice{font-size:11px}}html{scroll-padding-top:16px}.app-shell,.auth-page,.kiosk-screen{min-height:100dvh}.sidebar{overscroll-behavior:contain;padding-bottom:env(safe-area-inset-bottom,0);overflow-y:auto}.sidebar>*{flex-shrink:0}.sidebar-close{display:none}.auth-form label,.card-heading>div,.face-capture,.form-row>*,.kiosk-form,.main-content>*,.page-header>div,.settings-grid>*{min-width:0}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.app-footer,.appearance-color-actions>div,.card-heading,.dialog-actions,.kiosk-footer,.mini-summary,.page-actions,.section-toolbar{flex-wrap:wrap}.page-actions{flex-shrink:1}.button{white-space:normal;overflow-wrap:anywhere;max-width:100%}.button>svg,.icon-button>svg{flex-shrink:0}.table-scroll{overscroll-behavior-x:contain;max-width:100%}.table-scroll:focus-visible{outline:2px solid var(--green);outline-offset:-2px}.account-notice,.auth-error,.device-item,.error-box,.info-note,.kiosk-state,.kiosk-workspace,.setting-static,.settings-copy,.toast{overflow-wrap:anywhere}.auth-page{padding-top:76px;padding-bottom:28px}.auth-theme{top:20px}.dialog{max-height:calc(100dvh - 24px)}.device-item>div,.dialog header>div,.punch-list>div>div{min-width:0}.face-capture,.face-preview{width:100%;min-width:0}.face-consent input{flex-shrink:0}.kiosk-header>div:last-child{min-width:0}@media (max-width:1050px){.settings-grid{grid-template-columns:minmax(0,1fr)}.appearance-live-preview,.appearance-mode-row,.page-header{flex-wrap:wrap}}@media (max-width:800px){.sidebar{visibility:hidden;width:min(280px,100vw - 48px)}.sidebar.open{visibility:visible}.sidebar-close{align-self:flex-end;margin-bottom:12px;display:inline-flex}.topbar{flex-wrap:wrap;gap:8px;height:auto;min-height:66px;padding-top:10px;padding-bottom:10px}.breadcrumb{flex-wrap:wrap;min-width:0}.topbar-right{margin-left:auto}.overview-middle{grid-template-columns:minmax(0,1fr)}.rate-card{display:block}.section-toolbar{align-items:flex-start}.appearance-row{flex-wrap:wrap}.appearance-row select{max-width:100%}.icon-button,.sidebar-profile .icon-button{width:44px;min-width:44px;height:44px}.button,.kiosk-methods button,.nav-item,.theme-toggle{min-height:44px}}@media (max-width:560px){.appearance-row select,.date-control input,.dialog label input,.dialog label select,.search-field input,.settings-card form>label input,input:not([type=color]):not([type=checkbox]),select,textarea{font-size:16px}input:not([type=color]):not([type=checkbox]),select{max-width:100%;min-height:44px}.form-row{grid-template-columns:minmax(0,1fr)}.page-actions .button{flex:140px;margin-left:0}.table-toolbar{flex-wrap:wrap}.table-toolbar .search-field{min-width:0}.table-toolbar select{flex:160px;width:100%}.date-control input{flex:1;width:auto;min-width:0}.table-toolbar .date-control{flex-basis:100%;min-width:0}.section-toolbar .date-control{max-width:100%}.dialog-actions .button{flex:120px}.dialog fieldset{min-width:0}.day-selector{flex-wrap:wrap}.day-selector button{flex:36px;min-width:36px;min-height:44px}.appearance-color-actions>div{flex-shrink:1;align-self:stretch}.appearance-color-choice{flex-wrap:wrap;max-width:100%}.appearance-row-label{flex-basis:100%}.appearance-color-choice select,.appearance-row select{width:100%;max-width:100%}.appearance-color-choice{width:100%}.appearance-color-choice select{flex:1;min-width:0}.appearance-accent-picker{flex-shrink:0}.kiosk-card{padding:22px 16px}.kiosk-footer{text-align:center;justify-content:center}.kiosk-footer a{padding:10px}.toast{bottom:max(16px,env(safe-area-inset-bottom,0px))}}@media (max-width:360px){.stat-grid{grid-template-columns:minmax(0,1fr)}.topbar-divider,.topbar-right>.avatar{display:none}.account-card,.auth-card{padding:24px 16px}}@media (max-height:600px){.sidebar{padding-top:12px}.sidebar .brand,.sidebar .workspace-select{margin-bottom:16px}.sidebar-bottom{padding-top:12px}.sidebar .mode-card{display:none}}.employee-photo{object-fit:cover}.profile-photo-field{align-items:flex-start;gap:16px;margin-bottom:22px;display:flex}.profile-photo-preview{background:var(--soft-green);border:1px solid var(--line);width:88px;height:88px;color:var(--muted);border-radius:50%;flex-shrink:0;place-items:center;font-size:12px;display:grid;overflow:hidden}.profile-photo-preview img{object-fit:cover;width:100%;height:100%}.profile-photo-controls{flex:1;gap:8px;min-width:0;display:grid}.profile-photo-controls small{color:var(--muted);font-size:11px}.profile-photo-controls .text-button{justify-self:start}.profile-photo-controls input[type=file]{max-width:100%}@media (max-width:480px){.profile-photo-field{flex-direction:column}.profile-photo-controls{width:100%}}.live-attendance-status{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:20px;font-size:12px;display:flex}.live-attendance-status time{margin-left:auto}.live-dot{background:#16a34a;border-radius:50%;flex-shrink:0;width:8px;height:8px}.live-dot.offline{background:#d97706}.kiosk-welcome-photo{width:112px;height:112px;margin:0 auto 20px;position:relative}.kiosk-welcome-photo img,.kiosk-welcome-photo>span{object-fit:cover;border-radius:50%;width:100%;height:100%}.kiosk-welcome-photo>span{background:var(--surface);color:var(--ink);place-items:center;font-size:36px;font-weight:700;display:grid}.kiosk-welcome-photo>svg{color:#16a34a;background:var(--surface);border-radius:50%;position:absolute;bottom:0;right:0}.kiosk-success{animation:kiosk-welcome-in .35s ease-out both}.kiosk-success .kiosk-greeting{margin-bottom:8px;font-size:16px}@keyframes kiosk-welcome-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (max-width:480px){.live-attendance-status time{width:100%;margin-left:16px}}@media (prefers-reduced-motion:reduce){.kiosk-success{animation:none}}.member-page{max-width:1200px;margin:0 auto;padding:28px}.member-actions,.member-header{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.member-header{justify-content:space-between;margin-bottom:32px}.access-role-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:20px 0;display:grid}.access-role-grid .card{padding:24px}.access-role-grid p,.staff-welcome p{color:var(--muted);margin-top:8px}.access-form{margin-bottom:24px;padding:24px}.access-form fieldset{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;min-width:0;margin:20px 0 0;padding:0;display:grid}.access-form label,.member-page .page-header label{gap:8px;min-width:0;display:grid}.access-form small{color:var(--muted)}.access-form input,.access-form select{width:100%;min-width:0}.access-form .member-actions{grid-column:1/-1}.member-page .table-scroll{overflow-x:auto}.member-page table{width:100%;min-width:620px}.member-page td,.member-page th{text-align:left;padding:16px}.staff-welcome{align-items:center;gap:24px;margin-bottom:28px;padding:28px;display:flex}.staff-photo{object-fit:cover;border-radius:50%;flex-shrink:0;width:88px;height:88px}.staff-initials{background:var(--surface);color:var(--ink);place-items:center;font-size:28px;display:grid}a.nav-item{text-decoration:none}@media (max-width:640px){.member-page{padding:16px}.access-role-grid{grid-template-columns:1fr;gap:10px}.access-role-grid .card{padding:18px}.access-form fieldset{grid-template-columns:1fr}.staff-welcome{flex-direction:column;align-items:flex-start;padding:20px}.staff-welcome h1{overflow-wrap:anywhere;font-size:24px}}.topbar{isolation:isolate;position:relative}.topbar>.breadcrumb,.topbar>.topbar-right{z-index:1;position:relative}.topbar-wave{z-index:0;pointer-events:none;color:var(--appearance-accent,var(--green));position:absolute;inset:0;overflow:hidden}.topbar-wave svg{width:200%;max-width:none;height:100%;animation:topbar-wave-drift 8s linear infinite;display:block}.topbar-wave-back{fill:currentColor;opacity:.08}.topbar-wave-front{fill:currentColor;opacity:.14;stroke:currentColor;stroke-width:.6px}.sidebar nav .nav-item{transition:background-color .22s,color .22s,box-shadow .22s;position:relative}.sidebar nav .nav-item>svg{flex-shrink:0;transition:transform .22s}.sidebar nav .nav-item:before{content:"";background:var(--appearance-accent,var(--green));opacity:0;border-radius:4px;width:3px;height:20px;transition:opacity .22s,transform .22s;position:absolute;top:50%;left:0;transform:translateY(-50%)scaleY(.3)}.sidebar nav .nav-item.selected:before{opacity:1;transform:translateY(-50%)scaleY(1)}.sidebar nav .nav-item:focus-visible{outline:2px solid var(--green);outline-offset:2px}@media (hover:hover) and (pointer:fine){.sidebar nav .nav-item:hover>svg{transform:translateY(-2px)scale(1.08)}}@keyframes topbar-wave-drift{0%{transform:translate(0)}to{transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.topbar-wave svg{animation:none;transform:none}.sidebar nav .nav-item,.sidebar nav .nav-item:before,.sidebar nav .nav-item>svg{transition:none}.sidebar nav .nav-item:hover>svg{transform:none}}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@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}